@auronui/vue 1.0.12 → 1.0.14

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.
Files changed (28) hide show
  1. package/dist/cjs/index.cjs +798 -723
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/components/autocomplete/Autocomplete.js.map +1 -1
  4. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js +22 -3
  5. package/dist/components/autocomplete/Autocomplete.vue_vue_type_script_setup_true_lang.js.map +1 -1
  6. package/dist/components/combo-box/ComboBox.js.map +1 -1
  7. package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js +20 -2
  8. package/dist/components/combo-box/ComboBox.vue_vue_type_script_setup_true_lang.js.map +1 -1
  9. package/dist/components/select/Select.context.js.map +1 -1
  10. package/dist/components/select/Select.js.map +1 -1
  11. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js +33 -5
  12. package/dist/components/select/Select.vue_vue_type_script_setup_true_lang.js.map +1 -1
  13. package/dist/components/select/SelectItem.js.map +1 -1
  14. package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js +2 -2
  15. package/dist/components/select/SelectItem.vue_vue_type_script_setup_true_lang.js.map +1 -1
  16. package/dist/components/select/SelectOverflowChips.js.map +1 -1
  17. package/dist/components/select/SelectOverflowChips.vue_vue_type_script_setup_true_lang.js.map +1 -1
  18. package/dist/components/select/SelectValue.js.map +1 -1
  19. package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js +1 -1
  20. package/dist/components/select/SelectValue.vue_vue_type_script_setup_true_lang.js.map +1 -1
  21. package/dist/components/tabs/TabList.js.map +1 -1
  22. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js +15 -14
  23. package/dist/components/tabs/TabList.vue_vue_type_script_setup_true_lang.js.map +1 -1
  24. package/dist/index.d.ts +49 -212
  25. package/dist/index.js +3 -3
  26. package/dist/utils/hasSlotComponent.js +26 -0
  27. package/dist/utils/hasSlotComponent.js.map +1 -0
  28. package/package.json +4 -4
package/dist/index.d.ts CHANGED
@@ -1523,102 +1523,6 @@ declare const __VLS_component_66: DefineComponent<__VLS_Props_74, {}, {}, {}, {}
1523
1523
  scrollWrapperEl: HTMLDivElement;
1524
1524
  containerEl: HTMLDivElement;
1525
1525
  dropdownEl: HTMLDivElement;
1526
- moreBtnEl: ({
1527
- $: ComponentInternalInstance;
1528
- $data: {};
1529
- $props: {
1530
- readonly variant?: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft" | undefined;
1531
- readonly size?: "md" | "sm" | "lg" | "xs" | "xl" | undefined;
1532
- readonly radius?: "md" | "sm" | "lg" | "none" | "full" | undefined;
1533
- readonly isIconOnly?: boolean | undefined;
1534
- readonly fullWidth?: boolean | undefined;
1535
- readonly disabled?: boolean | undefined;
1536
- readonly isLoading?: boolean | undefined;
1537
- readonly as?: string | object | undefined;
1538
- readonly class?: string | undefined;
1539
- readonly value?: string | number | undefined;
1540
- } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
1541
- $attrs: Attrs;
1542
- $refs: {
1543
- [x: string]: unknown;
1544
- };
1545
- $slots: Readonly<{
1546
- [name: string]: Slot<any> | undefined;
1547
- }>;
1548
- $root: ComponentPublicInstance | null;
1549
- $parent: ComponentPublicInstance | null;
1550
- $host: Element | null;
1551
- $emit: (event: string, ...args: any[]) => void;
1552
- $el: any;
1553
- $options: ComponentOptionsBase<Readonly<{
1554
- variant?: ButtonVariants["variant"];
1555
- size?: ButtonVariants["size"];
1556
- radius?: ButtonVariants["radius"];
1557
- isIconOnly?: boolean;
1558
- fullWidth?: boolean;
1559
- disabled?: boolean;
1560
- isLoading?: boolean;
1561
- as?: string | object;
1562
- class?: string;
1563
- value?: string | number;
1564
- }> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
1565
- size: "md" | "sm" | "lg" | "xs" | "xl";
1566
- variant: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft";
1567
- fullWidth: boolean;
1568
- isIconOnly: boolean;
1569
- isLoading: boolean;
1570
- radius: "md" | "sm" | "lg" | "none" | "full";
1571
- value: string | number;
1572
- as: string | object;
1573
- disabled: boolean;
1574
- }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
1575
- beforeCreate?: (() => void) | (() => void)[];
1576
- created?: (() => void) | (() => void)[];
1577
- beforeMount?: (() => void) | (() => void)[];
1578
- mounted?: (() => void) | (() => void)[];
1579
- beforeUpdate?: (() => void) | (() => void)[];
1580
- updated?: (() => void) | (() => void)[];
1581
- activated?: (() => void) | (() => void)[];
1582
- deactivated?: (() => void) | (() => void)[];
1583
- beforeDestroy?: (() => void) | (() => void)[];
1584
- beforeUnmount?: (() => void) | (() => void)[];
1585
- destroyed?: (() => void) | (() => void)[];
1586
- unmounted?: (() => void) | (() => void)[];
1587
- renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
1588
- renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
1589
- errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
1590
- };
1591
- $forceUpdate: () => void;
1592
- $nextTick: typeof nextTick;
1593
- $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
1594
- } & Readonly<{
1595
- size: "md" | "sm" | "lg" | "xs" | "xl";
1596
- variant: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft";
1597
- fullWidth: boolean;
1598
- isIconOnly: boolean;
1599
- isLoading: boolean;
1600
- radius: "md" | "sm" | "lg" | "none" | "full";
1601
- value: string | number;
1602
- as: string | object;
1603
- disabled: boolean;
1604
- }> & Omit<Readonly<{
1605
- variant?: ButtonVariants["variant"];
1606
- size?: ButtonVariants["size"];
1607
- radius?: ButtonVariants["radius"];
1608
- isIconOnly?: boolean;
1609
- fullWidth?: boolean;
1610
- disabled?: boolean;
1611
- isLoading?: boolean;
1612
- as?: string | object;
1613
- class?: string;
1614
- value?: string | number;
1615
- }> & Readonly<{}>, "size" | "variant" | "fullWidth" | "isIconOnly" | "isLoading" | "radius" | "value" | "as" | "disabled"> & {} & ComponentCustomProperties & {} & {
1616
- $slots: {
1617
- startContent?(_: {}): any;
1618
- default?(_: {}): any;
1619
- endContent?(_: {}): any;
1620
- };
1621
- }) | null;
1622
1526
  }, any>;
1623
1527
 
1624
1528
  declare const __VLS_component_67: DefineComponent<__VLS_Props_75, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_75> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
@@ -1841,10 +1745,10 @@ showDivider: boolean;
1841
1745
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
1842
1746
 
1843
1747
  declare const __VLS_component_98: DefineComponent<Props_3, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
1844
- "update:modelValue": (value: string | string[]) => any;
1748
+ "update:modelValue": (value: SelectItemValue | SelectItemValue[]) => any;
1845
1749
  "update:open": (value: boolean) => any;
1846
1750
  }, string, PublicProps, Readonly<Props_3> & Readonly<{
1847
- "onUpdate:modelValue"?: ((value: string | string[]) => any) | undefined;
1751
+ "onUpdate:modelValue"?: ((value: SelectItemValue | SelectItemValue[]) => any) | undefined;
1848
1752
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
1849
1753
  }>, {
1850
1754
  size: "md" | "sm" | "lg";
@@ -1856,9 +1760,10 @@ isInvalid: boolean;
1856
1760
  isReadonly: boolean;
1857
1761
  labelPlacement: "inside" | "outside" | "outside-left";
1858
1762
  isRequired: boolean;
1763
+ items: SelectItemData[];
1859
1764
  multiple: boolean;
1860
- modelValue: string | string[];
1861
- defaultValue: string | string[];
1765
+ modelValue: SelectItemValue | SelectItemValue[];
1766
+ defaultValue: SelectItemValue | SelectItemValue[];
1862
1767
  defaultOpen: boolean;
1863
1768
  open: boolean;
1864
1769
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
@@ -1975,7 +1880,7 @@ declare type __VLS_Props_111 = {
1975
1880
  };
1976
1881
 
1977
1882
  declare type __VLS_Props_112 = {
1978
- value: string;
1883
+ value: SelectItemValue;
1979
1884
  /**
1980
1885
  * Explicit human-readable label for this item. When provided, the registry is
1981
1886
  * populated immediately at setup time (before the dropdown is ever opened),
@@ -3594,6 +3499,9 @@ declare function __VLS_template_113(): {
3594
3499
  attrs: Partial<{}>;
3595
3500
  slots: {
3596
3501
  default?(_: {}): any;
3502
+ item?(_: {
3503
+ item: ComboBoxItemData;
3504
+ }): any;
3597
3505
  };
3598
3506
  refs: {};
3599
3507
  rootEl: HTMLDivElement;
@@ -3643,14 +3551,9 @@ declare function __VLS_template_117(): {
3643
3551
  declare function __VLS_template_118(): {
3644
3552
  attrs: Partial<{}>;
3645
3553
  slots: {
3646
- default?(_: {
3647
- isLoading: boolean;
3648
- items: {
3649
- value: string;
3650
- label?: string | undefined;
3651
- textValue?: string | undefined;
3652
- isDisabled?: boolean | undefined;
3653
- }[];
3554
+ default?(_: any): any;
3555
+ item?(_: {
3556
+ item: any;
3654
3557
  }): any;
3655
3558
  };
3656
3559
  refs: {};
@@ -5005,102 +4908,6 @@ declare function __VLS_template_66(): {
5005
4908
  scrollWrapperEl: HTMLDivElement;
5006
4909
  containerEl: HTMLDivElement;
5007
4910
  dropdownEl: HTMLDivElement;
5008
- moreBtnEl: ({
5009
- $: ComponentInternalInstance;
5010
- $data: {};
5011
- $props: {
5012
- readonly variant?: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft" | undefined;
5013
- readonly size?: "md" | "sm" | "lg" | "xs" | "xl" | undefined;
5014
- readonly radius?: "md" | "sm" | "lg" | "none" | "full" | undefined;
5015
- readonly isIconOnly?: boolean | undefined;
5016
- readonly fullWidth?: boolean | undefined;
5017
- readonly disabled?: boolean | undefined;
5018
- readonly isLoading?: boolean | undefined;
5019
- readonly as?: string | object | undefined;
5020
- readonly class?: string | undefined;
5021
- readonly value?: string | number | undefined;
5022
- } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
5023
- $attrs: Attrs;
5024
- $refs: {
5025
- [x: string]: unknown;
5026
- };
5027
- $slots: Readonly<{
5028
- [name: string]: Slot<any> | undefined;
5029
- }>;
5030
- $root: ComponentPublicInstance | null;
5031
- $parent: ComponentPublicInstance | null;
5032
- $host: Element | null;
5033
- $emit: (event: string, ...args: any[]) => void;
5034
- $el: any;
5035
- $options: ComponentOptionsBase<Readonly<{
5036
- variant?: ButtonVariants["variant"];
5037
- size?: ButtonVariants["size"];
5038
- radius?: ButtonVariants["radius"];
5039
- isIconOnly?: boolean;
5040
- fullWidth?: boolean;
5041
- disabled?: boolean;
5042
- isLoading?: boolean;
5043
- as?: string | object;
5044
- class?: string;
5045
- value?: string | number;
5046
- }> & Readonly<{}>, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, {
5047
- size: "md" | "sm" | "lg" | "xs" | "xl";
5048
- variant: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft";
5049
- fullWidth: boolean;
5050
- isIconOnly: boolean;
5051
- isLoading: boolean;
5052
- radius: "md" | "sm" | "lg" | "none" | "full";
5053
- value: string | number;
5054
- as: string | object;
5055
- disabled: boolean;
5056
- }, {}, string, {}, GlobalComponents, GlobalDirectives, string, ComponentProvideOptions> & {
5057
- beforeCreate?: (() => void) | (() => void)[];
5058
- created?: (() => void) | (() => void)[];
5059
- beforeMount?: (() => void) | (() => void)[];
5060
- mounted?: (() => void) | (() => void)[];
5061
- beforeUpdate?: (() => void) | (() => void)[];
5062
- updated?: (() => void) | (() => void)[];
5063
- activated?: (() => void) | (() => void)[];
5064
- deactivated?: (() => void) | (() => void)[];
5065
- beforeDestroy?: (() => void) | (() => void)[];
5066
- beforeUnmount?: (() => void) | (() => void)[];
5067
- destroyed?: (() => void) | (() => void)[];
5068
- unmounted?: (() => void) | (() => void)[];
5069
- renderTracked?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
5070
- renderTriggered?: ((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[];
5071
- errorCaptured?: ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance | null, info: string) => boolean | void)[];
5072
- };
5073
- $forceUpdate: () => void;
5074
- $nextTick: typeof nextTick;
5075
- $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
5076
- } & Readonly<{
5077
- size: "md" | "sm" | "lg" | "xs" | "xl";
5078
- variant: "danger" | "success" | "warning" | "primary" | "secondary" | "danger-soft" | "ghost" | "outline" | "success-soft" | "tertiary" | "warning-soft";
5079
- fullWidth: boolean;
5080
- isIconOnly: boolean;
5081
- isLoading: boolean;
5082
- radius: "md" | "sm" | "lg" | "none" | "full";
5083
- value: string | number;
5084
- as: string | object;
5085
- disabled: boolean;
5086
- }> & Omit<Readonly<{
5087
- variant?: ButtonVariants["variant"];
5088
- size?: ButtonVariants["size"];
5089
- radius?: ButtonVariants["radius"];
5090
- isIconOnly?: boolean;
5091
- fullWidth?: boolean;
5092
- disabled?: boolean;
5093
- isLoading?: boolean;
5094
- as?: string | object;
5095
- class?: string;
5096
- value?: string | number;
5097
- }> & Readonly<{}>, "size" | "variant" | "fullWidth" | "isIconOnly" | "isLoading" | "radius" | "value" | "as" | "disabled"> & {} & ComponentCustomProperties & {} & {
5098
- $slots: {
5099
- startContent?(_: {}): any;
5100
- default?(_: {}): any;
5101
- endContent?(_: {}): any;
5102
- };
5103
- }) | null;
5104
4911
  };
5105
4912
  rootEl: any;
5106
4913
  };
@@ -5487,6 +5294,10 @@ declare function __VLS_template_98(): {
5487
5294
  attrs: Partial<{}>;
5488
5295
  slots: {
5489
5296
  default?(_: {}): any;
5297
+ default?(_: {}): any;
5298
+ item?(_: {
5299
+ item: SelectItemData;
5300
+ }): any;
5490
5301
  };
5491
5302
  refs: {};
5492
5303
  rootEl: any;
@@ -7954,16 +7765,22 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
7954
7765
  errorMessage?: string;
7955
7766
  /** Extra classes merged onto the root wrapper via `composeClassName`. */
7956
7767
  class?: string;
7957
- /** Two-way bound selected value. */
7958
- modelValue?: string | string[];
7959
- /** Initial selected value (uncontrolled). */
7960
- defaultValue?: string | string[];
7768
+ /** Two-way bound selected value. Accepts string or numeric keys. */
7769
+ modelValue?: SelectItemValue | SelectItemValue[];
7770
+ /** Initial selected value (uncontrolled). Accepts string or numeric keys. */
7771
+ defaultValue?: SelectItemValue | SelectItemValue[];
7961
7772
  /** Allow selecting multiple values. modelValue becomes string[]. @default false */
7962
7773
  multiple?: boolean;
7963
7774
  /** Controls open state of the dropdown. */
7964
7775
  open?: boolean;
7965
7776
  /** Initial open state of the dropdown (uncontrolled). */
7966
7777
  defaultOpen?: boolean;
7778
+ /**
7779
+ * Data-driven items for the terse API. When provided (and no SelectTrigger /
7780
+ * SelectContent is passed as a child), the trigger, value, and popover are
7781
+ * rendered internally. Use the `#item` slot to customize per-item rendering.
7782
+ */
7783
+ items?: SelectItemData[];
7967
7784
  };
7968
7785
 
7969
7786
  declare type Props_4 = {
@@ -8222,15 +8039,35 @@ export declare function composeSlotClassName<V extends Record<string, unknown>>(
8222
8039
  * unmount so SelectValue can show the selected label while the popover
8223
8040
  * is closed (Reka clears its own optionsSet on unmount).
8224
8041
  */
8225
- registerItem: (value: string, label: string) => void;
8226
- itemLabel: (value: string | string[] | undefined | null) => string;
8227
- removeValue: (value: string) => void;
8042
+ registerItem: (value: SelectItemValue, label: string) => void;
8043
+ itemLabel: (value: SelectItemValue | SelectItemValue[] | undefined | null) => string;
8044
+ removeValue: (value: SelectItemValue) => void;
8228
8045
  }
8229
8046
 
8230
8047
  declare type SelectionMode_2 = 'none' | 'single' | 'multiple';
8231
8048
 
8232
8049
  export declare const SelectItem: __VLS_WithTemplateSlots_101<typeof __VLS_component_101, __VLS_TemplateResult_101["slots"]>;
8233
8050
 
8051
+ /**
8052
+ * Data-driven item shape for the terse `items` prop. `value` accepts numeric
8053
+ * keys (see SelectItemValue). `label` is the display text (falls back to
8054
+ * String(value)); `textValue` overrides the type-ahead / pre-set label.
8055
+ */
8056
+ declare interface SelectItemData {
8057
+ value: SelectItemValue;
8058
+ label?: string;
8059
+ textValue?: string;
8060
+ isDisabled?: boolean;
8061
+ }
8062
+
8063
+ /**
8064
+ * Acceptable value for a Select item / model. Numeric values are legitimate
8065
+ * (e.g. entity IDs) and are preserved end-to-end — they are only coerced to a
8066
+ * string where the underlying contract requires one (Reka `text-value`,
8067
+ * registry display labels).
8068
+ */
8069
+ declare type SelectItemValue = string | number;
8070
+
8234
8071
  export declare const SelectTrigger: __VLS_WithTemplateSlots_99<typeof __VLS_component_99, __VLS_TemplateResult_99["slots"]>;
8235
8072
 
8236
8073
  export declare const SelectValue: DefineComponent<__VLS_Props_110, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<__VLS_Props_110> & Readonly<{}>, {
package/dist/index.js CHANGED
@@ -130,11 +130,11 @@ import ToastViewport_default from "./components/toast/ToastViewport.js";
130
130
  import ListBox_default from "./components/list-box/ListBox.js";
131
131
  import ListBoxItem_default from "./components/list-box/ListBoxItem.js";
132
132
  import ListBoxSection_default from "./components/list-box/ListBoxSection.js";
133
- import Select_default from "./components/select/Select.js";
134
133
  import SelectTrigger_default from "./components/select/SelectTrigger.js";
135
134
  import SelectValue_default from "./components/select/SelectValue.js";
136
135
  import SelectContent_default from "./components/select/SelectContent.js";
137
136
  import SelectItem_default from "./components/select/SelectItem.js";
137
+ import Select_default from "./components/select/Select.js";
138
138
  import { dropdownContextKey, useDropdownInject, useDropdownProvide } from "./components/dropdown/Dropdown.context.js";
139
139
  import Dropdown_default from "./components/dropdown/Dropdown.js";
140
140
  import DropdownTrigger_default from "./components/dropdown/DropdownTrigger.js";
@@ -148,16 +148,16 @@ import DropdownSub_default from "./components/dropdown/DropdownSub.js";
148
148
  import DropdownSubTrigger_default from "./components/dropdown/DropdownSubTrigger.js";
149
149
  import DropdownSubContent_default from "./components/dropdown/DropdownSubContent.js";
150
150
  import { comboBoxContextKey, useComboBoxInject, useComboBoxProvide } from "./components/combo-box/ComboBox.context.js";
151
- import ComboBox_default from "./components/combo-box/ComboBox.js";
152
151
  import ComboBoxInput_default from "./components/combo-box/ComboBoxInput.js";
153
152
  import ComboBoxContent_default from "./components/combo-box/ComboBoxContent.js";
154
153
  import ComboBoxItem_default from "./components/combo-box/ComboBoxItem.js";
154
+ import ComboBox_default from "./components/combo-box/ComboBox.js";
155
155
  import ComboBoxEmpty_default from "./components/combo-box/ComboBoxEmpty.js";
156
156
  import { autocompleteContextKey, useAutocompleteInject, useAutocompleteProvide } from "./components/autocomplete/Autocomplete.context.js";
157
- import Autocomplete_default from "./components/autocomplete/Autocomplete.js";
158
157
  import AutocompleteInput_default from "./components/autocomplete/AutocompleteInput.js";
159
158
  import AutocompleteContent_default from "./components/autocomplete/AutocompleteContent.js";
160
159
  import AutocompleteItem_default from "./components/autocomplete/AutocompleteItem.js";
160
+ import Autocomplete_default from "./components/autocomplete/Autocomplete.js";
161
161
  import AutocompleteCreateItem_default from "./components/autocomplete/AutocompleteCreateItem.js";
162
162
  import { createPaginationContext, paginationContextKey, usePaginationInject, usePaginationProvide } from "./components/pagination/pagination.context.js";
163
163
  import Pagination_default from "./components/pagination/Pagination.js";
@@ -0,0 +1,26 @@
1
+ import { Fragment } from "vue";
2
+ //#region src/utils/hasSlotComponent.ts
3
+ /**
4
+ * Returns true if any vnode in `nodes` has a `type` referentially equal to one
5
+ * of `components`, recursively flattening `Fragment` (v-for / template) children.
6
+ *
7
+ * Dropdown form controls (Select, Autocomplete, ComboBox) use this to detect
8
+ * whether the consumer supplied explicit compound chrome (e.g. SelectTrigger /
9
+ * SelectContent) versus terse `*Item` children or an `items` prop. When chrome
10
+ * is present the control passes the slot through unchanged; otherwise it renders
11
+ * the trigger/value/content internally.
12
+ */
13
+ function hasSlotComponent(nodes, components) {
14
+ if (!nodes) return false;
15
+ for (const node of nodes) {
16
+ if (components.includes(node.type)) return true;
17
+ if (node.type === Fragment && Array.isArray(node.children)) {
18
+ if (hasSlotComponent(node.children, components)) return true;
19
+ }
20
+ }
21
+ return false;
22
+ }
23
+ //#endregion
24
+ export { hasSlotComponent };
25
+
26
+ //# sourceMappingURL=hasSlotComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hasSlotComponent.js","names":[],"sources":["../../src/utils/hasSlotComponent.ts"],"sourcesContent":["import { Fragment, type VNode } from 'vue'\n\n/**\n * Returns true if any vnode in `nodes` has a `type` referentially equal to one\n * of `components`, recursively flattening `Fragment` (v-for / template) children.\n *\n * Dropdown form controls (Select, Autocomplete, ComboBox) use this to detect\n * whether the consumer supplied explicit compound chrome (e.g. SelectTrigger /\n * SelectContent) versus terse `*Item` children or an `items` prop. When chrome\n * is present the control passes the slot through unchanged; otherwise it renders\n * the trigger/value/content internally.\n */\nexport function hasSlotComponent(\n nodes: VNode[] | undefined,\n components: unknown[],\n): boolean {\n if (!nodes) return false\n for (const node of nodes) {\n if (components.includes(node.type)) return true\n if (node.type === Fragment && Array.isArray(node.children)) {\n if (hasSlotComponent(node.children as VNode[], components)) return true\n }\n }\n return false\n}\n"],"mappings":";;;;;;;;;;;;AAYA,SAAgB,iBACd,OACA,YACS;AACT,KAAI,CAAC,MAAO,QAAO;AACnB,MAAK,MAAM,QAAQ,OAAO;AACxB,MAAI,WAAW,SAAS,KAAK,KAAK,CAAE,QAAO;AAC3C,MAAI,KAAK,SAAS,YAAY,MAAM,QAAQ,KAAK,SAAS;OACpD,iBAAiB,KAAK,UAAqB,WAAW,CAAE,QAAO;;;AAGvE,QAAO"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@auronui/vue",
3
- "version": "1.0.12",
3
+ "version": "1.0.14",
4
4
  "description": "Vue 3 85 components with full visual and functional parity",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -69,7 +69,7 @@
69
69
  "tailwind-merge": "3.5.0",
70
70
  "tailwind-variants": "3.2.2",
71
71
  "vee-validate": "^4.15.1",
72
- "@auronui/styles": "1.0.12"
72
+ "@auronui/styles": "1.0.14"
73
73
  },
74
74
  "devDependencies": {
75
75
  "@chialab/vitest-axe": "0.19.1",
@@ -88,8 +88,8 @@
88
88
  "vitest": "4.1.4",
89
89
  "vue": "^3.5.32",
90
90
  "vue-tsc": "^3.2.6",
91
- "@auronui/standard": "0.0.0",
92
- "@auronui/vitest": "0.0.0"
91
+ "@auronui/vitest": "0.0.0",
92
+ "@auronui/standard": "0.0.0"
93
93
  },
94
94
  "scripts": {
95
95
  "build": "vite build",