@auronui/vue 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +440 -37
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/components/autocomplete/Autocomplete.context.js.map +1 -1
- package/dist/components/autocomplete/Autocomplete.js.map +1 -1
- package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +24 -3
- package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/autocomplete/AutocompleteContent.js.map +1 -1
- package/dist/components/autocomplete/AutocompleteContent.vue_vue_type_script_setup_true_lang.js +39 -1
- package/dist/components/autocomplete/AutocompleteContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/autocomplete/AutocompleteItem.js.map +1 -1
- package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js +24 -4
- package/dist/components/autocomplete/AutocompleteItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/combo-box/ComboBox.context.js.map +1 -1
- package/dist/components/combo-box/ComboBox.js.map +1 -1
- package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js +46 -11
- package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/combo-box/ComboBoxContent.js.map +1 -1
- package/dist/components/combo-box/ComboBoxContent.vue_vue_type_script_setup_true_lang.js +35 -1
- package/dist/components/combo-box/ComboBoxContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/combo-box/ComboBoxItem.js.map +1 -1
- package/dist/components/combo-box/ComboBoxItem.vue_vue_type_script_setup_true_lang.js +27 -5
- package/dist/components/combo-box/ComboBoxItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/date-time-picker/DateTimePicker.js.map +1 -1
- package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/components/date-time-picker/DateTimePicker.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/form/Form.js +7 -0
- package/dist/components/form/Form.js.map +1 -0
- package/dist/components/form/Form.vue_vue_type_script_setup_true_lang.js +97 -0
- package/dist/components/form/Form.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/form/FormField.js +7 -0
- package/dist/components/form/FormField.js.map +1 -0
- package/dist/components/form/FormField.vue_vue_type_script_setup_true_lang.js +75 -0
- package/dist/components/form/FormField.vue_vue_type_script_setup_true_lang.js.map +1 -0
- package/dist/components/form/form.context.js +15 -0
- package/dist/components/form/form.context.js.map +1 -0
- package/dist/components/form/validation.js +71 -0
- package/dist/components/form/validation.js.map +1 -0
- package/dist/components/select/SelectContent.js.map +1 -1
- package/dist/components/select/SelectContent.vue_vue_type_script_setup_true_lang.js +7 -14
- package/dist/components/select/SelectContent.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/select/SelectItem.js.map +1 -1
- package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js +3 -1
- package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/select/SelectValue.js.map +1 -1
- package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/index.js +3 -1
- package/package.json +2 -2
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
//#region src/components/form/validation.ts
|
|
2
|
+
var EMAIL_REGEX = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
3
|
+
function isEmpty(value) {
|
|
4
|
+
if (value === void 0 || value === null || value === "" || value === false) return true;
|
|
5
|
+
if (Array.isArray(value) && value.length === 0) return true;
|
|
6
|
+
return false;
|
|
7
|
+
}
|
|
8
|
+
function resolveSimpleRule(rule) {
|
|
9
|
+
if (typeof rule === "string") return {
|
|
10
|
+
enabled: true,
|
|
11
|
+
message: rule
|
|
12
|
+
};
|
|
13
|
+
return {
|
|
14
|
+
enabled: rule,
|
|
15
|
+
message: void 0
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
function resolveNumericRule(rule) {
|
|
19
|
+
if (typeof rule === "number") return {
|
|
20
|
+
value: rule,
|
|
21
|
+
message: void 0
|
|
22
|
+
};
|
|
23
|
+
return rule;
|
|
24
|
+
}
|
|
25
|
+
function resolvePatternRule(rule) {
|
|
26
|
+
if (rule instanceof RegExp) return {
|
|
27
|
+
value: rule,
|
|
28
|
+
message: void 0
|
|
29
|
+
};
|
|
30
|
+
return rule;
|
|
31
|
+
}
|
|
32
|
+
async function runValidation(value, rules, validate) {
|
|
33
|
+
if (!rules && !validate) return void 0;
|
|
34
|
+
if (rules?.required !== void 0) {
|
|
35
|
+
const { enabled, message } = resolveSimpleRule(rules.required);
|
|
36
|
+
if (enabled && isEmpty(value)) return message ?? "This field is required";
|
|
37
|
+
}
|
|
38
|
+
if (isEmpty(value)) {
|
|
39
|
+
if (validate) return await validate(value);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (rules?.email !== void 0) {
|
|
43
|
+
const { enabled, message } = resolveSimpleRule(rules.email);
|
|
44
|
+
if (enabled && !EMAIL_REGEX.test(String(value))) return message ?? "Enter a valid email address";
|
|
45
|
+
}
|
|
46
|
+
if (rules?.pattern !== void 0) {
|
|
47
|
+
const { value: regex, message } = resolvePatternRule(rules.pattern);
|
|
48
|
+
if (!regex.test(String(value))) return message ?? "Invalid format";
|
|
49
|
+
}
|
|
50
|
+
if (rules?.minLength !== void 0) {
|
|
51
|
+
const { value: min, message } = resolveNumericRule(rules.minLength);
|
|
52
|
+
if ((Array.isArray(value) ? value.length : String(value).length) < min) return message ?? `Must be at least ${min} characters`;
|
|
53
|
+
}
|
|
54
|
+
if (rules?.maxLength !== void 0) {
|
|
55
|
+
const { value: max, message } = resolveNumericRule(rules.maxLength);
|
|
56
|
+
if ((Array.isArray(value) ? value.length : String(value).length) > max) return message ?? `Must be at most ${max} characters`;
|
|
57
|
+
}
|
|
58
|
+
if (rules?.min !== void 0) {
|
|
59
|
+
const { value: minVal, message } = resolveNumericRule(rules.min);
|
|
60
|
+
if (Number(value) < minVal) return message ?? `Must be at least ${minVal}`;
|
|
61
|
+
}
|
|
62
|
+
if (rules?.max !== void 0) {
|
|
63
|
+
const { value: maxVal, message } = resolveNumericRule(rules.max);
|
|
64
|
+
if (Number(value) > maxVal) return message ?? `Must be at most ${maxVal}`;
|
|
65
|
+
}
|
|
66
|
+
if (validate) return await validate(value);
|
|
67
|
+
}
|
|
68
|
+
//#endregion
|
|
69
|
+
export { runValidation };
|
|
70
|
+
|
|
71
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","names":[],"sources":["../../../src/components/form/validation.ts"],"sourcesContent":["type RuleWithMessage<T> = T | { value: T; message: string }\n\nexport interface FieldRules {\n required?: boolean | string\n email?: boolean | string\n pattern?: RuleWithMessage<RegExp>\n minLength?: RuleWithMessage<number>\n maxLength?: RuleWithMessage<number>\n min?: RuleWithMessage<number>\n max?: RuleWithMessage<number>\n}\n\nexport type CustomValidator = (value: unknown) => string | undefined | Promise<string | undefined>\n\nconst EMAIL_REGEX = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/\n\nfunction isEmpty(value: unknown): boolean {\n if (value === undefined || value === null || value === '' || value === false) return true\n if (Array.isArray(value) && value.length === 0) return true\n return false\n}\n\nfunction resolveSimpleRule(rule: boolean | string): { enabled: boolean; message: string | undefined } {\n if (typeof rule === 'string') return { enabled: true, message: rule }\n return { enabled: rule, message: undefined }\n}\n\nfunction resolveNumericRule(rule: number | { value: number; message: string }): { value: number; message: string | undefined } {\n if (typeof rule === 'number') return { value: rule, message: undefined }\n return rule\n}\n\nfunction resolvePatternRule(rule: RegExp | { value: RegExp; message: string }): { value: RegExp; message: string | undefined } {\n if (rule instanceof RegExp) return { value: rule, message: undefined }\n return rule\n}\n\nexport async function runValidation(\n value: unknown,\n rules?: FieldRules,\n validate?: CustomValidator,\n): Promise<string | undefined> {\n if (!rules && !validate) return undefined\n\n if (rules?.required !== undefined) {\n const { enabled, message } = resolveSimpleRule(rules.required)\n if (enabled && isEmpty(value)) return message ?? 'This field is required'\n }\n\n if (isEmpty(value)) {\n if (validate) return await validate(value)\n return undefined\n }\n\n if (rules?.email !== undefined) {\n const { enabled, message } = resolveSimpleRule(rules.email)\n if (enabled && !EMAIL_REGEX.test(String(value))) return message ?? 'Enter a valid email address'\n }\n\n if (rules?.pattern !== undefined) {\n const { value: regex, message } = resolvePatternRule(rules.pattern)\n if (!regex.test(String(value))) return message ?? 'Invalid format'\n }\n\n if (rules?.minLength !== undefined) {\n const { value: min, message } = resolveNumericRule(rules.minLength)\n const len = Array.isArray(value) ? value.length : String(value).length\n if (len < min) return message ?? `Must be at least ${min} characters`\n }\n\n if (rules?.maxLength !== undefined) {\n const { value: max, message } = resolveNumericRule(rules.maxLength)\n const len = Array.isArray(value) ? value.length : String(value).length\n if (len > max) return message ?? `Must be at most ${max} characters`\n }\n\n if (rules?.min !== undefined) {\n const { value: minVal, message } = resolveNumericRule(rules.min)\n if (Number(value) < minVal) return message ?? `Must be at least ${minVal}`\n }\n\n if (rules?.max !== undefined) {\n const { value: maxVal, message } = resolveNumericRule(rules.max)\n if (Number(value) > maxVal) return message ?? `Must be at most ${maxVal}`\n }\n\n if (validate) return await validate(value)\n\n return undefined\n}\n"],"mappings":";AAcA,IAAM,cAAc;AAEpB,SAAS,QAAQ,OAAyB;AACxC,KAAI,UAAU,KAAA,KAAa,UAAU,QAAQ,UAAU,MAAM,UAAU,MAAO,QAAO;AACrF,KAAI,MAAM,QAAQ,MAAM,IAAI,MAAM,WAAW,EAAG,QAAO;AACvD,QAAO;;AAGT,SAAS,kBAAkB,MAA2E;AACpG,KAAI,OAAO,SAAS,SAAU,QAAO;EAAE,SAAS;EAAM,SAAS;EAAM;AACrE,QAAO;EAAE,SAAS;EAAM,SAAS,KAAA;EAAW;;AAG9C,SAAS,mBAAmB,MAAmG;AAC7H,KAAI,OAAO,SAAS,SAAU,QAAO;EAAE,OAAO;EAAM,SAAS,KAAA;EAAW;AACxE,QAAO;;AAGT,SAAS,mBAAmB,MAAmG;AAC7H,KAAI,gBAAgB,OAAQ,QAAO;EAAE,OAAO;EAAM,SAAS,KAAA;EAAW;AACtE,QAAO;;AAGT,eAAsB,cACpB,OACA,OACA,UAC6B;AAC7B,KAAI,CAAC,SAAS,CAAC,SAAU,QAAO,KAAA;AAEhC,KAAI,OAAO,aAAa,KAAA,GAAW;EACjC,MAAM,EAAE,SAAS,YAAY,kBAAkB,MAAM,SAAS;AAC9D,MAAI,WAAW,QAAQ,MAAM,CAAE,QAAO,WAAW;;AAGnD,KAAI,QAAQ,MAAM,EAAE;AAClB,MAAI,SAAU,QAAO,MAAM,SAAS,MAAM;AAC1C;;AAGF,KAAI,OAAO,UAAU,KAAA,GAAW;EAC9B,MAAM,EAAE,SAAS,YAAY,kBAAkB,MAAM,MAAM;AAC3D,MAAI,WAAW,CAAC,YAAY,KAAK,OAAO,MAAM,CAAC,CAAE,QAAO,WAAW;;AAGrE,KAAI,OAAO,YAAY,KAAA,GAAW;EAChC,MAAM,EAAE,OAAO,OAAO,YAAY,mBAAmB,MAAM,QAAQ;AACnE,MAAI,CAAC,MAAM,KAAK,OAAO,MAAM,CAAC,CAAE,QAAO,WAAW;;AAGpD,KAAI,OAAO,cAAc,KAAA,GAAW;EAClC,MAAM,EAAE,OAAO,KAAK,YAAY,mBAAmB,MAAM,UAAU;AAEnE,OADY,MAAM,QAAQ,MAAM,GAAG,MAAM,SAAS,OAAO,MAAM,CAAC,UACtD,IAAK,QAAO,WAAW,oBAAoB,IAAI;;AAG3D,KAAI,OAAO,cAAc,KAAA,GAAW;EAClC,MAAM,EAAE,OAAO,KAAK,YAAY,mBAAmB,MAAM,UAAU;AAEnE,OADY,MAAM,QAAQ,MAAM,GAAG,MAAM,SAAS,OAAO,MAAM,CAAC,UACtD,IAAK,QAAO,WAAW,mBAAmB,IAAI;;AAG1D,KAAI,OAAO,QAAQ,KAAA,GAAW;EAC5B,MAAM,EAAE,OAAO,QAAQ,YAAY,mBAAmB,MAAM,IAAI;AAChE,MAAI,OAAO,MAAM,GAAG,OAAQ,QAAO,WAAW,oBAAoB;;AAGpE,KAAI,OAAO,QAAQ,KAAA,GAAW;EAC5B,MAAM,EAAE,OAAO,QAAQ,YAAY,mBAAmB,MAAM,IAAI;AAChE,MAAI,OAAO,MAAM,GAAG,OAAQ,QAAO,WAAW,mBAAmB;;AAGnE,KAAI,SAAU,QAAO,MAAM,SAAS,MAAM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectContent.js","names":[],"sources":["../../../src/components/select/SelectContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n SelectContent,\n SelectViewport,\n SelectPortal,\n injectSelectRootContext,\n} from 'reka-ui'\nimport { motion, AnimatePresence } from 'motion-v'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n position?: 'item-aligned' | 'popper'\n sideOffset?: number\n class?: string\n}>(), {\n position: 'popper',\n sideOffset: 8,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst rootContext = injectSelectRootContext()\n</script>\n\n<template>\n <SelectPortal>\n <AnimatePresence>\n
|
|
1
|
+
{"version":3,"file":"SelectContent.js","names":[],"sources":["../../../src/components/select/SelectContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n SelectContent,\n SelectViewport,\n SelectPortal,\n injectSelectRootContext,\n} from 'reka-ui'\nimport { motion, AnimatePresence } from 'motion-v'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n position?: 'item-aligned' | 'popper'\n sideOffset?: number\n class?: string\n}>(), {\n position: 'popper',\n sideOffset: 8,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst rootContext = injectSelectRootContext()\n</script>\n\n<template>\n <SelectPortal>\n <AnimatePresence>\n <!--\n No force-mount on SelectContent. With force-mount=true, Reka's\n SelectContentImpl (which contains DismissableLayer with\n disableOutsidePointerEvents=true) would mount immediately on page load and\n block all pointer events — including clicks on the trigger button.\n\n Without force-mount, when open=false, Reka teleports slot content into a\n DocumentFragment (after SelectContent's own onMounted). Components inside\n the slot (SelectItem) still get created and their setup() runs, so\n textValue-based registrations fire at setup time.\n\n v-show (not v-if) on the visual wrapper ensures SelectItem components are\n always instantiated when inside the DocumentFragment — their setup() fires\n and populates itemRegistry. The animated chrome is visually hidden via\n v-show when closed; enter/exit animation runs via motion.div bindings.\n -->\n <SelectContent\n :position=\"props.position\"\n :side-offset=\"props.sideOffset\"\n data-slot=\"popover\"\n >\n <motion.div\n v-show=\"rootContext.open.value\"\n :class=\"ctx.slots.value.popover()\"\n :animate=\"rootContext.open.value ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.95 }\"\n :transition=\"{ duration: 0.15 }\"\n >\n <SelectViewport data-slot=\"list-box\">\n <slot />\n </SelectViewport>\n </motion.div>\n </SelectContent>\n </AnimatePresence>\n </SelectPortal>\n</template>\n"],"mappings":""}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { motion } from "../../node_modules/.pnpm/motion-v@2.2.1_@vueuse_core@14.2.1_vue@3.5.32_typescript@6.0.2___react-dom@19.2.5_react_8b28b23614a2152514812dba6ef76a55/node_modules/motion-v/dist/es/components/motion/index.js";
|
|
2
2
|
import { AnimatePresence_default } from "../../node_modules/.pnpm/motion-v@2.2.1_@vueuse_core@14.2.1_vue@3.5.32_typescript@6.0.2___react-dom@19.2.5_react_8b28b23614a2152514812dba6ef76a55/node_modules/motion-v/dist/es/components/animate-presence/AnimatePresence.js";
|
|
3
3
|
import { useSelectInject } from "./Select.context.js";
|
|
4
|
-
import { createBlock,
|
|
4
|
+
import { createBlock, createVNode, defineComponent, normalizeClass, openBlock, renderSlot, unref, vShow, withCtx, withDirectives } from "vue";
|
|
5
5
|
import { SelectContent, SelectPortal, SelectViewport, injectSelectRootContext } from "reka-ui";
|
|
6
6
|
//#region src/components/select/SelectContent.vue?vue&type=script&setup=true&lang.ts
|
|
7
7
|
var SelectContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({
|
|
@@ -18,24 +18,17 @@ var SelectContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
18
18
|
return (_ctx, _cache) => {
|
|
19
19
|
return openBlock(), createBlock(unref(SelectPortal), null, {
|
|
20
20
|
default: withCtx(() => [createVNode(unref(AnimatePresence_default), null, {
|
|
21
|
-
default: withCtx(() => [
|
|
22
|
-
key: 0,
|
|
21
|
+
default: withCtx(() => [createVNode(unref(SelectContent), {
|
|
23
22
|
position: props.position,
|
|
24
23
|
"side-offset": props.sideOffset,
|
|
25
|
-
"as-child": "",
|
|
26
24
|
"data-slot": "popover"
|
|
27
25
|
}, {
|
|
28
|
-
default: withCtx(() => [createVNode(unref(motion).div, {
|
|
26
|
+
default: withCtx(() => [withDirectives(createVNode(unref(motion).div, {
|
|
29
27
|
class: normalizeClass(unref(ctx).slots.value.popover()),
|
|
30
|
-
|
|
31
|
-
opacity: 0,
|
|
32
|
-
scale: .95
|
|
33
|
-
},
|
|
34
|
-
animate: {
|
|
28
|
+
animate: unref(rootContext).open.value ? {
|
|
35
29
|
opacity: 1,
|
|
36
30
|
scale: 1
|
|
37
|
-
}
|
|
38
|
-
exit: {
|
|
31
|
+
} : {
|
|
39
32
|
opacity: 0,
|
|
40
33
|
scale: .95
|
|
41
34
|
},
|
|
@@ -46,9 +39,9 @@ var SelectContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */
|
|
|
46
39
|
_: 3
|
|
47
40
|
})]),
|
|
48
41
|
_: 3
|
|
49
|
-
}, 8, ["class"])]),
|
|
42
|
+
}, 8, ["class", "animate"]), [[vShow, unref(rootContext).open.value]])]),
|
|
50
43
|
_: 3
|
|
51
|
-
}, 8, ["position", "side-offset"])
|
|
44
|
+
}, 8, ["position", "side-offset"])]),
|
|
52
45
|
_: 3
|
|
53
46
|
})]),
|
|
54
47
|
_: 3
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectContent.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n SelectContent,\n SelectViewport,\n SelectPortal,\n injectSelectRootContext,\n} from 'reka-ui'\nimport { motion, AnimatePresence } from 'motion-v'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n position?: 'item-aligned' | 'popper'\n sideOffset?: number\n class?: string\n}>(), {\n position: 'popper',\n sideOffset: 8,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst rootContext = injectSelectRootContext()\n</script>\n\n<template>\n <SelectPortal>\n <AnimatePresence>\n
|
|
1
|
+
{"version":3,"file":"SelectContent.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport {\n SelectContent,\n SelectViewport,\n SelectPortal,\n injectSelectRootContext,\n} from 'reka-ui'\nimport { motion, AnimatePresence } from 'motion-v'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n position?: 'item-aligned' | 'popper'\n sideOffset?: number\n class?: string\n}>(), {\n position: 'popper',\n sideOffset: 8,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst rootContext = injectSelectRootContext()\n</script>\n\n<template>\n <SelectPortal>\n <AnimatePresence>\n <!--\n No force-mount on SelectContent. With force-mount=true, Reka's\n SelectContentImpl (which contains DismissableLayer with\n disableOutsidePointerEvents=true) would mount immediately on page load and\n block all pointer events — including clicks on the trigger button.\n\n Without force-mount, when open=false, Reka teleports slot content into a\n DocumentFragment (after SelectContent's own onMounted). Components inside\n the slot (SelectItem) still get created and their setup() runs, so\n textValue-based registrations fire at setup time.\n\n v-show (not v-if) on the visual wrapper ensures SelectItem components are\n always instantiated when inside the DocumentFragment — their setup() fires\n and populates itemRegistry. The animated chrome is visually hidden via\n v-show when closed; enter/exit animation runs via motion.div bindings.\n -->\n <SelectContent\n :position=\"props.position\"\n :side-offset=\"props.sideOffset\"\n data-slot=\"popover\"\n >\n <motion.div\n v-show=\"rootContext.open.value\"\n :class=\"ctx.slots.value.popover()\"\n :animate=\"rootContext.open.value ? { opacity: 1, scale: 1 } : { opacity: 0, scale: 0.95 }\"\n :transition=\"{ duration: 0.15 }\"\n >\n <SelectViewport data-slot=\"list-box\">\n <slot />\n </SelectViewport>\n </motion.div>\n </SelectContent>\n </AnimatePresence>\n </SelectPortal>\n</template>\n"],"mappings":";;;;;;;;;;;;;;EAUA,MAAM,QAAQ;EAUd,MAAM,MAAM,iBAAgB;EAC5B,MAAM,cAAc,yBAAwB;;uBAI1C,YAmCe,MAAA,aAAA,EAAA,MAAA;2BADK,CAjClB,YAiCkB,MAAA,wBAAA,EAAA,MAAA;4BADA,CAfhB,YAegB,MAAA,cAAA,EAAA;MAdb,UAAU,MAAM;MAChB,eAAa,MAAM;MACpB,aAAU;;6BAWG,CAAA,eATb,YASa,MAAA,OAAA,CAAA,KAAA;OAPV,OAAK,eAAE,MAAA,IAAG,CAAC,MAAM,MAAM,SAAO,CAAA;OAC9B,SAAS,MAAA,YAAW,CAAC,KAAK,QAAK;QAAA,SAAA;QAAA,OAAA;QAAA,GAAA;QAAA,SAAA;QAAA,OAAA;QAAA;OAC/B,YAAY,EAAA,UAAA,KAAkB;;8BAId,CAFjB,YAEiB,MAAA,eAAA,EAAA,EAFD,aAAU,YAAU,EAAA;+BAC1B,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA;;;;4CANF,MAAA,YAAW,CAAC,KAAK,MAAK,CAAA,CAAA,CAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItem.js","names":[],"sources":["../../../src/components/select/SelectItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted, useTemplateRef } from 'vue'\nimport { SelectItem, SelectItemText, SelectItemIndicator } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n value: string\n textValue?: string\n isDisabled?: boolean\n class?: string\n}>(), {\n textValue: undefined,\n isDisabled: false,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst textRef = useTemplateRef<HTMLElement>('textRef')\n\nonMounted(() => {\n const label = props.textValue ??
|
|
1
|
+
{"version":3,"file":"SelectItem.js","names":[],"sources":["../../../src/components/select/SelectItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted, useTemplateRef } from 'vue'\nimport { SelectItem, SelectItemText, SelectItemIndicator } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n value: string\n /**\n * Explicit human-readable label for this item. When provided, the registry is\n * populated immediately at setup time (before the dropdown is ever opened),\n * so SelectValue can display the correct label for a pre-set modelValue.\n * When omitted, the label is read from slot DOM text on first mount.\n */\n textValue?: string\n isDisabled?: boolean\n class?: string\n}>(), {\n textValue: undefined,\n isDisabled: false,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst textRef = useTemplateRef<HTMLElement>('textRef')\n\n// Register immediately with textValue if provided — this runs at setup time,\n// before mount, so SelectValue shows the correct label for a pre-set modelValue\n// even before the dropdown has ever been opened.\nif (props.textValue !== undefined) {\n ctx.registerItem(props.value, props.textValue)\n}\n\nonMounted(() => {\n // textRef points to the SelectItemText component instance (not a DOM element).\n // Access $el to get the underlying span element and read its text content.\n // This refines the registry entry with actual DOM text (handles slot-text items\n // that don't have an explicit textValue prop).\n const el = (textRef.value as { $el?: HTMLElement } | null)?.$el\n const label = props.textValue ?? el?.textContent?.trim() ?? props.value\n ctx.registerItem(props.value, label)\n})\n</script>\n\n<template>\n <SelectItem\n :value=\"props.value\"\n :disabled=\"props.isDisabled\"\n :text-value=\"props.textValue ?? props.value\"\n class=\"list-box-item list-box-item--default\"\n data-slot=\"list-box-item\"\n >\n <slot name=\"startContent\" />\n <SelectItemText ref=\"textRef\">\n <slot />\n </SelectItemText>\n <SelectItemIndicator\n class=\"list-box-item__indicator\"\n data-slot=\"list-box-item-indicator\"\n >\n <slot name=\"selectedIcon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n data-slot=\"list-box-item-indicator--checkmark\"\n aria-hidden=\"true\"\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n </slot>\n </SelectItemIndicator>\n <slot name=\"endContent\" />\n </SelectItem>\n</template>\n"],"mappings":""}
|
|
@@ -17,8 +17,10 @@ var SelectItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ def
|
|
|
17
17
|
const props = __props;
|
|
18
18
|
const ctx = useSelectInject();
|
|
19
19
|
const textRef = useTemplateRef("textRef");
|
|
20
|
+
if (props.textValue !== void 0) ctx.registerItem(props.value, props.textValue);
|
|
20
21
|
onMounted(() => {
|
|
21
|
-
const
|
|
22
|
+
const el = textRef.value?.$el;
|
|
23
|
+
const label = props.textValue ?? el?.textContent?.trim() ?? props.value;
|
|
22
24
|
ctx.registerItem(props.value, label);
|
|
23
25
|
});
|
|
24
26
|
return (_ctx, _cache) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItem.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted, useTemplateRef } from 'vue'\nimport { SelectItem, SelectItemText, SelectItemIndicator } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n value: string\n textValue?: string\n isDisabled?: boolean\n class?: string\n}>(), {\n textValue: undefined,\n isDisabled: false,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst textRef = useTemplateRef<HTMLElement>('textRef')\n\nonMounted(() => {\n const label = props.textValue ??
|
|
1
|
+
{"version":3,"file":"SelectItem.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectItem.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { onMounted, useTemplateRef } from 'vue'\nimport { SelectItem, SelectItemText, SelectItemIndicator } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n value: string\n /**\n * Explicit human-readable label for this item. When provided, the registry is\n * populated immediately at setup time (before the dropdown is ever opened),\n * so SelectValue can display the correct label for a pre-set modelValue.\n * When omitted, the label is read from slot DOM text on first mount.\n */\n textValue?: string\n isDisabled?: boolean\n class?: string\n}>(), {\n textValue: undefined,\n isDisabled: false,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\nconst textRef = useTemplateRef<HTMLElement>('textRef')\n\n// Register immediately with textValue if provided — this runs at setup time,\n// before mount, so SelectValue shows the correct label for a pre-set modelValue\n// even before the dropdown has ever been opened.\nif (props.textValue !== undefined) {\n ctx.registerItem(props.value, props.textValue)\n}\n\nonMounted(() => {\n // textRef points to the SelectItemText component instance (not a DOM element).\n // Access $el to get the underlying span element and read its text content.\n // This refines the registry entry with actual DOM text (handles slot-text items\n // that don't have an explicit textValue prop).\n const el = (textRef.value as { $el?: HTMLElement } | null)?.$el\n const label = props.textValue ?? el?.textContent?.trim() ?? props.value\n ctx.registerItem(props.value, label)\n})\n</script>\n\n<template>\n <SelectItem\n :value=\"props.value\"\n :disabled=\"props.isDisabled\"\n :text-value=\"props.textValue ?? props.value\"\n class=\"list-box-item list-box-item--default\"\n data-slot=\"list-box-item\"\n >\n <slot name=\"startContent\" />\n <SelectItemText ref=\"textRef\">\n <slot />\n </SelectItemText>\n <SelectItemIndicator\n class=\"list-box-item__indicator\"\n data-slot=\"list-box-item-indicator\"\n >\n <slot name=\"selectedIcon\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"12\"\n height=\"12\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n stroke-width=\"3\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n data-slot=\"list-box-item-indicator--checkmark\"\n aria-hidden=\"true\"\n >\n <polyline points=\"20 6 9 17 4 12\" />\n </svg>\n </slot>\n </SelectItemIndicator>\n <slot name=\"endContent\" />\n </SelectItem>\n</template>\n"],"mappings":";;;;;;;;;;;;;;;;EAKA,MAAM,QAAQ;EAiBd,MAAM,MAAM,iBAAgB;EAC5B,MAAM,UAAU,eAA4B,UAAS;AAKrD,MAAI,MAAM,cAAc,KAAA,EACtB,KAAI,aAAa,MAAM,OAAO,MAAM,UAAS;AAG/C,kBAAgB;GAKd,MAAM,KAAM,QAAQ,OAAwC;GAC5D,MAAM,QAAQ,MAAM,aAAa,IAAI,aAAa,MAAM,IAAI,MAAM;AAClE,OAAI,aAAa,MAAM,OAAO,MAAK;IACpC;;uBAIC,YAkCa,MAAA,WAAA,EAAA;IAjCV,OAAO,MAAM;IACb,UAAU,MAAM;IAChB,cAAY,MAAM,aAAa,MAAM;IACtC,OAAM;IACN,aAAU;;2BAEkB;KAA5B,WAA4B,KAAA,QAAA,eAAA;KAC5B,YAEiB,MAAA,eAAA,EAAA;eAFG;MAAJ,KAAI;;6BACV,CAAR,WAAQ,KAAA,QAAA,UAAA,CAAA,CAAA;;;KAEV,YAqBsB,MAAA,oBAAA,EAAA;MApBpB,OAAM;MACN,aAAU;;6BAkBH,CAhBP,WAgBO,KAAA,QAAA,gBAAA,EAAA,QAAA,CAAA,OAAA,OAAA,OAAA,KAfL,mBAcM,OAAA;OAbJ,OAAM;OACN,OAAM;OACN,QAAO;OACP,SAAQ;OACR,MAAK;OACL,QAAO;OACP,gBAAa;OACb,kBAAe;OACf,mBAAgB;OAChB,aAAU;OACV,eAAY;UAEZ,mBAAoC,YAAA,EAA1B,QAAO,kBAAgB,CAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA;;;KAIvC,WAA0B,KAAA,QAAA,aAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectValue.js","names":[],"sources":["../../../src/components/select/SelectValue.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { SelectValue } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n placeholder?: string\n class?: string\n}>(), {\n placeholder: undefined,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\n</script>\n\n<template>\n <SelectValue\n :class=\"ctx.slots.value.value()\"\n :placeholder=\"props.placeholder\"\n data-slot=\"value\"\n >\n <template #default=\"{ modelValue }\">\n <template v-if=\"modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== '')\">\n {{ ctx.itemLabel(modelValue.toString()) }}\n </template>\n <template v-else>\n {{ props.placeholder }}\n </template>\n </template>\n </SelectValue>\n</template>\n"],"mappings":""}
|
|
1
|
+
{"version":3,"file":"SelectValue.js","names":[],"sources":["../../../src/components/select/SelectValue.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { SelectValue } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n placeholder?: string\n class?: string\n}>(), {\n placeholder: undefined,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\n</script>\n\n<template>\n <SelectValue\n :class=\"ctx.slots.value.value()\"\n :placeholder=\"props.placeholder\"\n data-slot=\"value\"\n >\n <template #default=\"{ selectedLabel, modelValue }\">\n <!--\n Label resolution order:\n 1. Reka's native selectedLabel — populated via optionsSet once items mount\n (works after first open, and in real browsers via DocumentFragment path)\n 2. itemRegistry label — populated at setup time for items with explicit\n textValue prop, or at onMounted for slot-text items after first open\n 3. Placeholder when no value is selected\n -->\n <template v-if=\"selectedLabel && selectedLabel.length > 0\">\n {{ selectedLabel.join(', ') }}\n </template>\n <template v-else-if=\"modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== '')\">\n {{ ctx.itemLabel(Array.isArray(modelValue) ? modelValue : modelValue.toString()) }}\n </template>\n <template v-else>\n {{ props.placeholder }}\n </template>\n </template>\n </SelectValue>\n</template>\n"],"mappings":""}
|
|
@@ -17,7 +17,7 @@ var SelectValue_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ de
|
|
|
17
17
|
placeholder: props.placeholder,
|
|
18
18
|
"data-slot": "value"
|
|
19
19
|
}, {
|
|
20
|
-
default: withCtx(({ modelValue }) => [modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== "") ? (openBlock(), createElementBlock(Fragment, { key:
|
|
20
|
+
default: withCtx(({ selectedLabel, modelValue }) => [selectedLabel && selectedLabel.length > 0 ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [createTextVNode(toDisplayString(selectedLabel.join(", ")), 1)], 64)) : modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== "") ? (openBlock(), createElementBlock(Fragment, { key: 1 }, [createTextVNode(toDisplayString(unref(ctx).itemLabel(Array.isArray(modelValue) ? modelValue : modelValue.toString())), 1)], 64)) : (openBlock(), createElementBlock(Fragment, { key: 2 }, [createTextVNode(toDisplayString(props.placeholder), 1)], 64))]),
|
|
21
21
|
_: 1
|
|
22
22
|
}, 8, ["class", "placeholder"]);
|
|
23
23
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectValue.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectValue.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { SelectValue } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n placeholder?: string\n class?: string\n}>(), {\n placeholder: undefined,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\n</script>\n\n<template>\n <SelectValue\n :class=\"ctx.slots.value.value()\"\n :placeholder=\"props.placeholder\"\n data-slot=\"value\"\n >\n <template #default=\"{ modelValue }\">\n <template v-if=\"modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== '')\">\n {{ ctx.itemLabel(modelValue.toString()) }}\n </template>\n <template v-else>\n {{ props.placeholder }}\n </template>\n </template>\n </SelectValue>\n</template>\n"],"mappings":";;;;;;;;;;;EAIA,MAAM,QAAQ;EAQd,MAAM,MAAM,iBAAgB;;uBAI1B,
|
|
1
|
+
{"version":3,"file":"SelectValue.vue_vue_type_script_setup_true_lang.js","names":[],"sources":["../../../src/components/select/SelectValue.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { SelectValue } from 'reka-ui'\nimport { useSelectInject } from './Select.context'\n\nconst props = withDefaults(defineProps<{\n placeholder?: string\n class?: string\n}>(), {\n placeholder: undefined,\n class: undefined,\n})\n\nconst ctx = useSelectInject()\n</script>\n\n<template>\n <SelectValue\n :class=\"ctx.slots.value.value()\"\n :placeholder=\"props.placeholder\"\n data-slot=\"value\"\n >\n <template #default=\"{ selectedLabel, modelValue }\">\n <!--\n Label resolution order:\n 1. Reka's native selectedLabel — populated via optionsSet once items mount\n (works after first open, and in real browsers via DocumentFragment path)\n 2. itemRegistry label — populated at setup time for items with explicit\n textValue prop, or at onMounted for slot-text items after first open\n 3. Placeholder when no value is selected\n -->\n <template v-if=\"selectedLabel && selectedLabel.length > 0\">\n {{ selectedLabel.join(', ') }}\n </template>\n <template v-else-if=\"modelValue != null && (Array.isArray(modelValue) ? modelValue.length > 0 : modelValue !== '')\">\n {{ ctx.itemLabel(Array.isArray(modelValue) ? modelValue : modelValue.toString()) }}\n </template>\n <template v-else>\n {{ props.placeholder }}\n </template>\n </template>\n </SelectValue>\n</template>\n"],"mappings":";;;;;;;;;;;EAIA,MAAM,QAAQ;EAQd,MAAM,MAAM,iBAAgB;;uBAI1B,YAwBc,MAAA,YAAA,EAAA;IAvBX,OAAK,eAAE,MAAA,IAAG,CAAC,MAAM,MAAM,OAAK,CAAA;IAC5B,aAAa,MAAM;IACpB,aAAU;;IAEC,SAAO,SAWL,EAXS,eAAe,iBAAU,CAS7B,iBAAiB,cAAc,SAAM,KAAA,WAAA,EAArD,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,cAAc,KAAI,KAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,IAEF,cAAU,SAAa,MAAM,QAAQ,WAAU,GAAI,WAAW,SAAM,IAAO,eAAU,OAAA,WAAA,EAA1G,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAA,IAAG,CAAC,UAAU,MAAM,QAAQ,WAAU,GAAI,aAAa,WAAW,UAAQ,CAAA,CAAA,EAAA,EAAA,CAAA,EAAA,GAAA,KAAA,WAAA,EAE/E,mBAEW,UAAA,EAAA,KAAA,GAAA,EAAA,CAAA,gBAAA,gBADN,MAAM,YAAW,EAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -34,6 +34,8 @@ import CloseButton_default from "./components/button/CloseButton.js";
|
|
|
34
34
|
import ToggleButton_default from "./components/button/ToggleButton.js";
|
|
35
35
|
import ToggleButtonGroup_default from "./components/button/ToggleButtonGroup.js";
|
|
36
36
|
import Link_default from "./components/link/Link.js";
|
|
37
|
+
import Form_default from "./components/form/Form.js";
|
|
38
|
+
import FormField_default from "./components/form/FormField.js";
|
|
37
39
|
import Input_default from "./components/input/Input.js";
|
|
38
40
|
import Textarea_default from "./components/textarea/Textarea.js";
|
|
39
41
|
import NumberField_default from "./components/number-field/NumberField.js";
|
|
@@ -221,4 +223,4 @@ import ColorSwatch_default from "./components/color-swatch/ColorSwatch.js";
|
|
|
221
223
|
import ColorSwatchPicker_default from "./components/color-swatch-picker/ColorSwatchPicker.js";
|
|
222
224
|
import ColorInputGroup_default from "./components/color-input-group/ColorInputGroup.js";
|
|
223
225
|
import ColorPicker_default from "./components/color-picker/ColorPicker.js";
|
|
224
|
-
export { Accordion_default as Accordion, AccordionContent_default as AccordionContent, AccordionHeader_default as AccordionHeader, AccordionItem_default as AccordionItem, AccordionTrigger_default as AccordionTrigger, Alert_default as Alert, AlertDescription_default as AlertDescription, AlertDialog_default as AlertDialog, AlertDialogAction_default as AlertDialogAction, AlertDialogBody_default as AlertDialogBody, AlertDialogCancel_default as AlertDialogCancel, AlertDialogContent_default as AlertDialogContent, AlertDialogDescription_default as AlertDialogDescription, AlertDialogFooter_default as AlertDialogFooter, AlertDialogHeader_default as AlertDialogHeader, AlertDialogIcon_default as AlertDialogIcon, AlertDialogOverlay_default as AlertDialogOverlay, AlertDialogTitle_default as AlertDialogTitle, AlertDialogTrigger_default as AlertDialogTrigger, AlertIcon_default as AlertIcon, AlertTitle_default as AlertTitle, AspectRatio_default as AspectRatio, Autocomplete_default as Autocomplete, AutocompleteContent_default as AutocompleteContent, AutocompleteInput_default as AutocompleteInput, AutocompleteItem_default as AutocompleteItem, Avatar_default as Avatar, AvatarGroup_default as AvatarGroup, Badge_default as Badge, BreadcrumbItem_default as BreadcrumbItem, Breadcrumbs_default as Breadcrumbs, Button_default as Button, ButtonGroup_default as ButtonGroup, Calendar_default as Calendar, CalendarYearPicker_default as CalendarYearPicker, Card_default as Card, CardBody_default as CardBody, CardFooter_default as CardFooter, CardHeader_default as CardHeader, Checkbox_default as Checkbox, CheckboxGroup_default as CheckboxGroup, Chip_default as Chip, CloseButton_default as CloseButton, Collapsible_default as Collapsible, CollapsibleContent_default as CollapsibleContent, CollapsibleGroup_default as CollapsibleGroup, CollapsibleTrigger_default as CollapsibleTrigger, ColorArea_default as ColorArea, ColorField_default as ColorField, ColorInputGroup_default as ColorInputGroup, ColorPicker_default as ColorPicker, ColorSlider_default as ColorSlider, ColorSwatch_default as ColorSwatch, ColorSwatchPicker_default as ColorSwatchPicker, ComboBox_default as ComboBox, ComboBoxContent_default as ComboBoxContent, ComboBoxEmpty_default as ComboBoxEmpty, ComboBoxInput_default as ComboBoxInput, ComboBoxItem_default as ComboBoxItem, DateInput_default as DateInput, DatePicker_default as DatePicker, DateRangeField_default as DateRangeField, DateRangePicker_default as DateRangePicker, DateTimePicker_default as DateTimePicker, Description_default as Description, Drawer_default as Drawer, DrawerBody_default as DrawerBody, DrawerClose_default as DrawerClose, DrawerContent_default as DrawerContent, DrawerFooter_default as DrawerFooter, DrawerHeader_default as DrawerHeader, DrawerOverlay_default as DrawerOverlay, DrawerTitle_default as DrawerTitle, DrawerTrigger_default as DrawerTrigger, Dropdown_default as Dropdown, DropdownCheckboxItem_default as DropdownCheckboxItem, DropdownItem_default as DropdownItem, DropdownMenu_default as DropdownMenu, DropdownRadioGroup_default as DropdownRadioGroup, DropdownRadioItem_default as DropdownRadioItem, DropdownSection_default as DropdownSection, DropdownSub_default as DropdownSub, DropdownSubContent_default as DropdownSubContent, DropdownSubTrigger_default as DropdownSubTrigger, DropdownTrigger_default as DropdownTrigger, EmptyState_default as EmptyState, EmptyStateContent_default as EmptyStateContent, Fieldset_default as Fieldset, Header_default as Header, Input_default as Input, InputOTP_default as InputOTP, Kbd_default as Kbd, Label_default as Label, Link_default as Link, ListBox_default as ListBox, ListBoxItem_default as ListBoxItem, ListBoxSection_default as ListBoxSection, Meter_default as Meter, Modal_default as Modal, ModalBody_default as ModalBody, ModalClose_default as ModalClose, ModalContent_default as ModalContent, ModalDescription_default as ModalDescription, ModalFooter_default as ModalFooter, ModalHeader_default as ModalHeader, ModalOverlay_default as ModalOverlay, ModalTitle_default as ModalTitle, ModalTrigger_default as ModalTrigger, NumberField_default as NumberField, Pagination_default as Pagination, PaginationContent_default as PaginationContent, PaginationEllipsis_default as PaginationEllipsis, PaginationFirst_default as PaginationFirst, PaginationItem_default as PaginationItem, PaginationLast_default as PaginationLast, PaginationNext_default as PaginationNext, PaginationPrev_default as PaginationPrev, Popover_default as Popover, PopoverAnchor_default as PopoverAnchor, PopoverArrow_default as PopoverArrow, PopoverClose_default as PopoverClose, PopoverContent_default as PopoverContent, PopoverTrigger_default as PopoverTrigger, ProgressBar_default as ProgressBar, ProgressCircle_default as ProgressCircle, Radio_default as Radio, RadioGroup_default as RadioGroup, RangeCalendar_default as RangeCalendar, ScrollArea_default as ScrollArea, ScrollShadow_default as ScrollShadow, Select_default as Select, SelectContent_default as SelectContent, SelectItem_default as SelectItem, SelectTrigger_default as SelectTrigger, SelectValue_default as SelectValue, Separator_default as Separator, Skeleton_default as Skeleton, Slider_default as Slider, Spinner_default as Spinner, SplitterGroup_default as SplitterGroup, SplitterPanel_default as SplitterPanel, SplitterResizeHandle_default as SplitterResizeHandle, Stepper_default as Stepper, StepperContent_default as StepperContent, StepperDescription_default as StepperDescription, StepperIndicator_default as StepperIndicator, StepperItem_default as StepperItem, StepperSeparator_default as StepperSeparator, StepperTitle_default as StepperTitle, Surface_default as Surface, Switch_default as Switch, SwitchGroup_default as SwitchGroup, Tab_default as Tab, TabIndicator_default as TabIndicator, TabList_default as TabList, TabPanel_default as TabPanel, Table_default as Table, TableBody_default as TableBody, TableCell_default as TableCell, TableFooter_default as TableFooter, TableHeader_default as TableHeader, TableHeaderCell_default as TableHeaderCell, TableRow_default as TableRow, Tabs_default as Tabs, Tag_default as Tag, TagDelete_default as TagDelete, TagGroup_default as TagGroup, TagGroupInput_default as TagGroupInput, TagText_default as TagText, Text_default as Text, Textarea_default as Textarea, TimeField_default as TimeField, Toast_default as Toast, ToastAction_default as ToastAction, ToastClose_default as ToastClose, ToastDescription_default as ToastDescription, ToastProvider_default as ToastProvider, ToastTitle_default as ToastTitle, ToastViewport_default as ToastViewport, ToggleButton_default as ToggleButton, ToggleButtonGroup_default as ToggleButtonGroup, Toolbar_default as Toolbar, ToolbarButton_default as ToolbarButton, ToolbarLink_default as ToolbarLink, ToolbarSeparator_default as ToolbarSeparator, ToolbarToggleGroup_default as ToolbarToggleGroup, ToolbarToggleItem_default as ToolbarToggleItem, Tooltip_default as Tooltip, TooltipArrow_default as TooltipArrow, TooltipContent_default as TooltipContent, TooltipProvider_default as TooltipProvider, TooltipTrigger_default as TooltipTrigger, Tree_default as Tree, TreeItem_default as TreeItem, TreeItemToggle_default as TreeItemToggle, autocompleteContextKey, checkboxGroupContextKey, comboBoxContextKey, composeClassName, composeSlotClassName, createContext, createPaginationContext, cx, dataAttr, dropdownContextKey, mapPropsVariants, paginationContextKey, radioGroupContextKey, splitterContextKey, stepperContextKey, surfaceContextKey, switchGroupContextKey, tableContextKey, tagGroupContextKey, treeContextKey, useAutocompleteInject, useAutocompleteProvide, useCSSVariable, useCheckboxGroupInject, useCheckboxGroupProvide, useColorState, useComboBoxInject, useComboBoxProvide, useDropdownInject, useDropdownProvide, useIsHydrated, useIsMounted, useListData, useMeasuredHeight, useMediaQuery, useOverlayState, usePaginationInject, usePaginationProvide, useRadioGroupInject, useRadioGroupProvide, useSurfaceInject, useSwitchGroupInject, useSwitchGroupProvide, useTableInject, useTableKeyboardNav, useTableProvide, useTagGroupInject, useTagGroupProvide, useToast };
|
|
226
|
+
export { Accordion_default as Accordion, AccordionContent_default as AccordionContent, AccordionHeader_default as AccordionHeader, AccordionItem_default as AccordionItem, AccordionTrigger_default as AccordionTrigger, Alert_default as Alert, AlertDescription_default as AlertDescription, AlertDialog_default as AlertDialog, AlertDialogAction_default as AlertDialogAction, AlertDialogBody_default as AlertDialogBody, AlertDialogCancel_default as AlertDialogCancel, AlertDialogContent_default as AlertDialogContent, AlertDialogDescription_default as AlertDialogDescription, AlertDialogFooter_default as AlertDialogFooter, AlertDialogHeader_default as AlertDialogHeader, AlertDialogIcon_default as AlertDialogIcon, AlertDialogOverlay_default as AlertDialogOverlay, AlertDialogTitle_default as AlertDialogTitle, AlertDialogTrigger_default as AlertDialogTrigger, AlertIcon_default as AlertIcon, AlertTitle_default as AlertTitle, AspectRatio_default as AspectRatio, Autocomplete_default as Autocomplete, AutocompleteContent_default as AutocompleteContent, AutocompleteInput_default as AutocompleteInput, AutocompleteItem_default as AutocompleteItem, Avatar_default as Avatar, AvatarGroup_default as AvatarGroup, Badge_default as Badge, BreadcrumbItem_default as BreadcrumbItem, Breadcrumbs_default as Breadcrumbs, Button_default as Button, ButtonGroup_default as ButtonGroup, Calendar_default as Calendar, CalendarYearPicker_default as CalendarYearPicker, Card_default as Card, CardBody_default as CardBody, CardFooter_default as CardFooter, CardHeader_default as CardHeader, Checkbox_default as Checkbox, CheckboxGroup_default as CheckboxGroup, Chip_default as Chip, CloseButton_default as CloseButton, Collapsible_default as Collapsible, CollapsibleContent_default as CollapsibleContent, CollapsibleGroup_default as CollapsibleGroup, CollapsibleTrigger_default as CollapsibleTrigger, ColorArea_default as ColorArea, ColorField_default as ColorField, ColorInputGroup_default as ColorInputGroup, ColorPicker_default as ColorPicker, ColorSlider_default as ColorSlider, ColorSwatch_default as ColorSwatch, ColorSwatchPicker_default as ColorSwatchPicker, ComboBox_default as ComboBox, ComboBoxContent_default as ComboBoxContent, ComboBoxEmpty_default as ComboBoxEmpty, ComboBoxInput_default as ComboBoxInput, ComboBoxItem_default as ComboBoxItem, DateInput_default as DateInput, DatePicker_default as DatePicker, DateRangeField_default as DateRangeField, DateRangePicker_default as DateRangePicker, DateTimePicker_default as DateTimePicker, Description_default as Description, Drawer_default as Drawer, DrawerBody_default as DrawerBody, DrawerClose_default as DrawerClose, DrawerContent_default as DrawerContent, DrawerFooter_default as DrawerFooter, DrawerHeader_default as DrawerHeader, DrawerOverlay_default as DrawerOverlay, DrawerTitle_default as DrawerTitle, DrawerTrigger_default as DrawerTrigger, Dropdown_default as Dropdown, DropdownCheckboxItem_default as DropdownCheckboxItem, DropdownItem_default as DropdownItem, DropdownMenu_default as DropdownMenu, DropdownRadioGroup_default as DropdownRadioGroup, DropdownRadioItem_default as DropdownRadioItem, DropdownSection_default as DropdownSection, DropdownSub_default as DropdownSub, DropdownSubContent_default as DropdownSubContent, DropdownSubTrigger_default as DropdownSubTrigger, DropdownTrigger_default as DropdownTrigger, EmptyState_default as EmptyState, EmptyStateContent_default as EmptyStateContent, Fieldset_default as Fieldset, Form_default as Form, FormField_default as FormField, Header_default as Header, Input_default as Input, InputOTP_default as InputOTP, Kbd_default as Kbd, Label_default as Label, Link_default as Link, ListBox_default as ListBox, ListBoxItem_default as ListBoxItem, ListBoxSection_default as ListBoxSection, Meter_default as Meter, Modal_default as Modal, ModalBody_default as ModalBody, ModalClose_default as ModalClose, ModalContent_default as ModalContent, ModalDescription_default as ModalDescription, ModalFooter_default as ModalFooter, ModalHeader_default as ModalHeader, ModalOverlay_default as ModalOverlay, ModalTitle_default as ModalTitle, ModalTrigger_default as ModalTrigger, NumberField_default as NumberField, Pagination_default as Pagination, PaginationContent_default as PaginationContent, PaginationEllipsis_default as PaginationEllipsis, PaginationFirst_default as PaginationFirst, PaginationItem_default as PaginationItem, PaginationLast_default as PaginationLast, PaginationNext_default as PaginationNext, PaginationPrev_default as PaginationPrev, Popover_default as Popover, PopoverAnchor_default as PopoverAnchor, PopoverArrow_default as PopoverArrow, PopoverClose_default as PopoverClose, PopoverContent_default as PopoverContent, PopoverTrigger_default as PopoverTrigger, ProgressBar_default as ProgressBar, ProgressCircle_default as ProgressCircle, Radio_default as Radio, RadioGroup_default as RadioGroup, RangeCalendar_default as RangeCalendar, ScrollArea_default as ScrollArea, ScrollShadow_default as ScrollShadow, Select_default as Select, SelectContent_default as SelectContent, SelectItem_default as SelectItem, SelectTrigger_default as SelectTrigger, SelectValue_default as SelectValue, Separator_default as Separator, Skeleton_default as Skeleton, Slider_default as Slider, Spinner_default as Spinner, SplitterGroup_default as SplitterGroup, SplitterPanel_default as SplitterPanel, SplitterResizeHandle_default as SplitterResizeHandle, Stepper_default as Stepper, StepperContent_default as StepperContent, StepperDescription_default as StepperDescription, StepperIndicator_default as StepperIndicator, StepperItem_default as StepperItem, StepperSeparator_default as StepperSeparator, StepperTitle_default as StepperTitle, Surface_default as Surface, Switch_default as Switch, SwitchGroup_default as SwitchGroup, Tab_default as Tab, TabIndicator_default as TabIndicator, TabList_default as TabList, TabPanel_default as TabPanel, Table_default as Table, TableBody_default as TableBody, TableCell_default as TableCell, TableFooter_default as TableFooter, TableHeader_default as TableHeader, TableHeaderCell_default as TableHeaderCell, TableRow_default as TableRow, Tabs_default as Tabs, Tag_default as Tag, TagDelete_default as TagDelete, TagGroup_default as TagGroup, TagGroupInput_default as TagGroupInput, TagText_default as TagText, Text_default as Text, Textarea_default as Textarea, TimeField_default as TimeField, Toast_default as Toast, ToastAction_default as ToastAction, ToastClose_default as ToastClose, ToastDescription_default as ToastDescription, ToastProvider_default as ToastProvider, ToastTitle_default as ToastTitle, ToastViewport_default as ToastViewport, ToggleButton_default as ToggleButton, ToggleButtonGroup_default as ToggleButtonGroup, Toolbar_default as Toolbar, ToolbarButton_default as ToolbarButton, ToolbarLink_default as ToolbarLink, ToolbarSeparator_default as ToolbarSeparator, ToolbarToggleGroup_default as ToolbarToggleGroup, ToolbarToggleItem_default as ToolbarToggleItem, Tooltip_default as Tooltip, TooltipArrow_default as TooltipArrow, TooltipContent_default as TooltipContent, TooltipProvider_default as TooltipProvider, TooltipTrigger_default as TooltipTrigger, Tree_default as Tree, TreeItem_default as TreeItem, TreeItemToggle_default as TreeItemToggle, autocompleteContextKey, checkboxGroupContextKey, comboBoxContextKey, composeClassName, composeSlotClassName, createContext, createPaginationContext, cx, dataAttr, dropdownContextKey, mapPropsVariants, paginationContextKey, radioGroupContextKey, splitterContextKey, stepperContextKey, surfaceContextKey, switchGroupContextKey, tableContextKey, tagGroupContextKey, treeContextKey, useAutocompleteInject, useAutocompleteProvide, useCSSVariable, useCheckboxGroupInject, useCheckboxGroupProvide, useColorState, useComboBoxInject, useComboBoxProvide, useDropdownInject, useDropdownProvide, useIsHydrated, useIsMounted, useListData, useMeasuredHeight, useMediaQuery, useOverlayState, usePaginationInject, usePaginationProvide, useRadioGroupInject, useRadioGroupProvide, useSurfaceInject, useSwitchGroupInject, useSwitchGroupProvide, useTableInject, useTableKeyboardNav, useTableProvide, useTagGroupInject, useTagGroupProvide, useToast };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@auronui/vue",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Vue 3 85 components with full visual and functional parity",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"tailwind-merge": "3.5.0",
|
|
76
76
|
"tailwind-variants": "3.2.2",
|
|
77
77
|
"vee-validate": "^4.15.1",
|
|
78
|
-
"@auronui/styles": "1.0.
|
|
78
|
+
"@auronui/styles": "1.0.4"
|
|
79
79
|
},
|
|
80
80
|
"devDependencies": {
|
|
81
81
|
"@chialab/vitest-axe": "0.19.1",
|