Vulture/VApp/node_modules/.vite/deps/chunk-IFUDBK56.js

135 lines
3.4 KiB
JavaScript

import {
useTextColor
} from "./chunk-ZZ55KHRR.js";
import {
IconValue,
useIcon
} from "./chunk-472DNWSX.js";
import {
makeTagProps
} from "./chunk-DJRL4NAD.js";
import {
makeThemeProps,
provideTheme
} from "./chunk-CYOEVGGH.js";
import {
convertToUnit,
destructComputed,
flattenFragments,
genericComponent,
getCurrentInstanceName,
includes,
makeComponentProps,
propsFactory,
useRender
} from "./chunk-I4KGD5X4.js";
import {
Text,
computed,
createVNode,
ref,
toRef
} from "./chunk-PD2AWGJV.js";
// node_modules/vuetify/lib/components/VIcon/VIcon.mjs
import "C:/Users/Jeremy/Documents/Dev/Projects.cloudsucks.net/Vulture/VApp/node_modules/vuetify/lib/components/VIcon/VIcon.css";
// node_modules/vuetify/lib/composables/size.mjs
var predefinedSizes = ["x-small", "small", "default", "large", "x-large"];
var makeSizeProps = propsFactory({
size: {
type: [String, Number],
default: "default"
}
}, "size");
function useSize(props) {
let name = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : getCurrentInstanceName();
return destructComputed(() => {
let sizeClasses;
let sizeStyles;
if (includes(predefinedSizes, props.size)) {
sizeClasses = `${name}--size-${props.size}`;
} else if (props.size) {
sizeStyles = {
width: convertToUnit(props.size),
height: convertToUnit(props.size)
};
}
return {
sizeClasses,
sizeStyles
};
});
}
// node_modules/vuetify/lib/components/VIcon/VIcon.mjs
var makeVIconProps = propsFactory({
color: String,
start: Boolean,
end: Boolean,
icon: IconValue,
...makeComponentProps(),
...makeSizeProps(),
...makeTagProps({
tag: "i"
}),
...makeThemeProps()
}, "VIcon");
var VIcon = genericComponent()({
name: "VIcon",
props: makeVIconProps(),
setup(props, _ref) {
let {
attrs,
slots
} = _ref;
const slotIcon = ref();
const {
themeClasses
} = provideTheme(props);
const {
iconData
} = useIcon(computed(() => slotIcon.value || props.icon));
const {
sizeClasses
} = useSize(props);
const {
textColorClasses,
textColorStyles
} = useTextColor(toRef(props, "color"));
useRender(() => {
var _a, _b;
const slotValue = (_a = slots.default) == null ? void 0 : _a.call(slots);
if (slotValue) {
slotIcon.value = (_b = flattenFragments(slotValue).filter((node) => node.type === Text && node.children && typeof node.children === "string")[0]) == null ? void 0 : _b.children;
}
return createVNode(iconData.value.component, {
"tag": props.tag,
"icon": iconData.value.icon,
"class": ["v-icon", "notranslate", themeClasses.value, sizeClasses.value, textColorClasses.value, {
"v-icon--clickable": !!attrs.onClick,
"v-icon--start": props.start,
"v-icon--end": props.end
}, props.class],
"style": [!sizeClasses.value ? {
fontSize: convertToUnit(props.size),
height: convertToUnit(props.size),
width: convertToUnit(props.size)
} : void 0, textColorStyles.value, props.style],
"role": attrs.onClick ? "button" : void 0,
"aria-hidden": !attrs.onClick
}, {
default: () => [slotValue]
});
});
return {};
}
});
export {
makeSizeProps,
useSize,
VIcon
};
//# sourceMappingURL=chunk-IFUDBK56.js.map