@ark-ui/vue 5.20.0 → 5.22.0

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 (102) hide show
  1. package/dist/components/collection/index.cjs +2 -0
  2. package/dist/components/collection/index.d.cts +1 -0
  3. package/dist/components/collection/index.d.ts +1 -0
  4. package/dist/components/collection/index.js +1 -0
  5. package/dist/components/collection/tree-collection.js +1 -1
  6. package/dist/components/collection/use-async-list.cjs +35 -0
  7. package/dist/components/collection/use-async-list.d.cts +7 -0
  8. package/dist/components/collection/use-async-list.d.ts +7 -0
  9. package/dist/components/collection/use-async-list.js +12 -0
  10. package/dist/components/combobox/combobox-empty.vue.cjs +35 -0
  11. package/dist/components/combobox/combobox-empty.vue.d.cts +19 -0
  12. package/dist/components/combobox/combobox-empty.vue.d.ts +19 -0
  13. package/dist/components/combobox/combobox-empty.vue.js +31 -0
  14. package/dist/components/combobox/combobox-empty.vue2.cjs +9 -0
  15. package/dist/components/combobox/combobox-empty.vue2.js +5 -0
  16. package/dist/components/combobox/combobox.anatomy.cjs +9 -0
  17. package/dist/components/combobox/combobox.anatomy.d.cts +2 -1
  18. package/dist/components/combobox/combobox.anatomy.d.ts +2 -1
  19. package/dist/components/combobox/combobox.anatomy.js +5 -0
  20. package/dist/components/combobox/combobox.cjs +2 -0
  21. package/dist/components/combobox/combobox.d.cts +1 -0
  22. package/dist/components/combobox/combobox.d.ts +1 -0
  23. package/dist/components/combobox/combobox.js +1 -0
  24. package/dist/components/combobox/index.cjs +6 -7
  25. package/dist/components/combobox/index.d.cts +1 -0
  26. package/dist/components/combobox/index.d.ts +1 -0
  27. package/dist/components/combobox/index.js +2 -1
  28. package/dist/components/dialog/dialog-root.vue.cjs +1 -1
  29. package/dist/components/dialog/dialog-root.vue.d.cts +12 -0
  30. package/dist/components/dialog/dialog-root.vue.d.ts +12 -0
  31. package/dist/components/dialog/dialog-root.vue.js +1 -1
  32. package/dist/components/dialog/dialog.types.d.cts +11 -0
  33. package/dist/components/dialog/dialog.types.d.ts +11 -0
  34. package/dist/components/dialog/use-dialog.cjs +4 -0
  35. package/dist/components/dialog/use-dialog.js +4 -0
  36. package/dist/components/field/use-field.d.cts +16 -16
  37. package/dist/components/field/use-field.d.ts +16 -16
  38. package/dist/components/fieldset/fieldset-legend.vue.cjs +1 -1
  39. package/dist/components/fieldset/fieldset-legend.vue.js +1 -1
  40. package/dist/components/fieldset/use-fieldset.cjs +2 -1
  41. package/dist/components/fieldset/use-fieldset.d.cts +3 -3
  42. package/dist/components/fieldset/use-fieldset.d.ts +3 -3
  43. package/dist/components/fieldset/use-fieldset.js +2 -1
  44. package/dist/components/hover-card/hover-card-root.vue.cjs +2 -0
  45. package/dist/components/hover-card/hover-card-root.vue.d.cts +1 -0
  46. package/dist/components/hover-card/hover-card-root.vue.d.ts +1 -0
  47. package/dist/components/hover-card/hover-card-root.vue.js +2 -0
  48. package/dist/components/hover-card/hover-card.types.d.cts +4 -0
  49. package/dist/components/hover-card/hover-card.types.d.ts +4 -0
  50. package/dist/components/index.cjs +25 -21
  51. package/dist/components/index.d.cts +1 -0
  52. package/dist/components/index.d.ts +1 -0
  53. package/dist/components/index.js +10 -5
  54. package/dist/components/listbox/index.cjs +6 -7
  55. package/dist/components/listbox/index.d.cts +1 -0
  56. package/dist/components/listbox/index.d.ts +1 -0
  57. package/dist/components/listbox/index.js +2 -1
  58. package/dist/components/listbox/listbox-empty.vue.cjs +35 -0
  59. package/dist/components/listbox/listbox-empty.vue.d.cts +19 -0
  60. package/dist/components/listbox/listbox-empty.vue.d.ts +19 -0
  61. package/dist/components/listbox/listbox-empty.vue.js +31 -0
  62. package/dist/components/listbox/listbox-empty.vue2.cjs +9 -0
  63. package/dist/components/listbox/listbox-empty.vue2.js +5 -0
  64. package/dist/components/listbox/listbox.anatomy.cjs +9 -0
  65. package/dist/components/listbox/listbox.anatomy.d.cts +2 -1
  66. package/dist/components/listbox/listbox.anatomy.d.ts +2 -1
  67. package/dist/components/listbox/listbox.anatomy.js +5 -0
  68. package/dist/components/listbox/listbox.cjs +2 -0
  69. package/dist/components/listbox/listbox.d.cts +1 -0
  70. package/dist/components/listbox/listbox.d.ts +1 -0
  71. package/dist/components/listbox/listbox.js +1 -0
  72. package/dist/components/menu/menu-root.vue.cjs +1 -1
  73. package/dist/components/menu/menu-root.vue.d.cts +12 -0
  74. package/dist/components/menu/menu-root.vue.d.ts +12 -0
  75. package/dist/components/menu/menu-root.vue.js +1 -1
  76. package/dist/components/menu/menu.types.d.cts +11 -0
  77. package/dist/components/menu/menu.types.d.ts +11 -0
  78. package/dist/components/popover/popover-root.vue.cjs +1 -1
  79. package/dist/components/popover/popover-root.vue.d.cts +12 -0
  80. package/dist/components/popover/popover-root.vue.d.ts +12 -0
  81. package/dist/components/popover/popover-root.vue.js +1 -1
  82. package/dist/components/popover/popover.types.d.cts +11 -0
  83. package/dist/components/popover/popover.types.d.ts +11 -0
  84. package/dist/components/segment-group/segment-group.anatomy.d.cts +2 -2
  85. package/dist/components/segment-group/segment-group.anatomy.d.ts +2 -2
  86. package/dist/components/signature-pad/signature-pad-segment.vue.cjs +1 -2
  87. package/dist/components/signature-pad/signature-pad-segment.vue.js +1 -2
  88. package/dist/components/toast/index.d.cts +1 -0
  89. package/dist/components/toast/index.d.ts +1 -0
  90. package/dist/index.cjs +27 -21
  91. package/dist/index.js +11 -5
  92. package/dist/providers/index.cjs +2 -0
  93. package/dist/providers/index.js +1 -0
  94. package/dist/providers/locale/index.cjs +2 -0
  95. package/dist/providers/locale/index.d.cts +1 -0
  96. package/dist/providers/locale/index.d.ts +1 -0
  97. package/dist/providers/locale/index.js +1 -0
  98. package/dist/providers/locale/use-collator.cjs +19 -0
  99. package/dist/providers/locale/use-collator.d.cts +7 -0
  100. package/dist/providers/locale/use-collator.d.ts +7 -0
  101. package/dist/providers/locale/use-collator.js +15 -0
  102. package/package.json +68 -67
@@ -0,0 +1,19 @@
1
+ import { HTMLAttributes, DefineComponent, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
2
+ import { PolymorphicProps } from '../factory';
3
+ export interface ListboxEmptyBaseProps extends PolymorphicProps {
4
+ }
5
+ export interface ListboxEmptyProps extends ListboxEmptyBaseProps,
6
+ /**
7
+ * @vue-ignore
8
+ */
9
+ HTMLAttributes {
10
+ }
11
+ declare const _default: __VLS_WithTemplateSlots< DefineComponent<ListboxEmptyProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ListboxEmptyProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
12
+ default?(_: {}): any;
13
+ }>;
14
+ export default _default;
15
+ type __VLS_WithTemplateSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
@@ -0,0 +1,31 @@
1
+ import { defineComponent, computed, createBlock, createCommentVNode, openBlock, unref, mergeProps, withCtx, renderSlot } from 'vue';
2
+ import { ark } from '../factory.js';
3
+ import { listboxAnatomy } from './listbox.anatomy.js';
4
+ import { useListboxContext } from './use-listbox-context.js';
5
+ import { useForwardExpose } from '../../utils/use-forward-expose.js';
6
+
7
+ const _sfc_main = /* @__PURE__ */ defineComponent({
8
+ __name: "listbox-empty",
9
+ props: {
10
+ asChild: { type: Boolean }
11
+ },
12
+ setup(__props) {
13
+ const parts = listboxAnatomy.build();
14
+ const listbox = useListboxContext();
15
+ const isEmpty = computed(() => listbox.value.collection.size === 0);
16
+ useForwardExpose();
17
+ return (_ctx, _cache) => {
18
+ return isEmpty.value ? (openBlock(), createBlock(unref(ark).div, mergeProps({ key: 0 }, unref(parts).empty.attrs, {
19
+ role: "presentation",
20
+ "as-child": _ctx.asChild
21
+ }), {
22
+ default: withCtx(() => [
23
+ renderSlot(_ctx.$slots, "default")
24
+ ]),
25
+ _: 3
26
+ }, 16, ["as-child"])) : createCommentVNode("", true);
27
+ };
28
+ }
29
+ });
30
+
31
+ export { _sfc_main as default };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
+
5
+ const listboxEmpty_vue_vue_type_script_setup_true_lang = require('./listbox-empty.vue.cjs');
6
+
7
+
8
+
9
+ exports.default = listboxEmpty_vue_vue_type_script_setup_true_lang.default;
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './listbox-empty.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
+
5
+ const listbox = require('@zag-js/listbox');
6
+
7
+ const listboxAnatomy = listbox.anatomy.extendWith("empty");
8
+
9
+ exports.listboxAnatomy = listboxAnatomy;
@@ -1 +1,2 @@
1
- export { anatomy as listboxAnatomy } from '@zag-js/listbox';
1
+ import { AnatomyInstance } from '@zag-js/anatomy';
2
+ export declare const listboxAnatomy: AnatomyInstance<"input" | "label" | "content" | "root" | "item" | "valueText" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "empty">;
@@ -1 +1,2 @@
1
- export { anatomy as listboxAnatomy } from '@zag-js/listbox';
1
+ import { AnatomyInstance } from '@zag-js/anatomy';
2
+ export declare const listboxAnatomy: AnatomyInstance<"input" | "label" | "content" | "root" | "item" | "valueText" | "itemGroup" | "itemGroupLabel" | "itemIndicator" | "itemText" | "empty">;
@@ -0,0 +1,5 @@
1
+ import { anatomy } from '@zag-js/listbox';
2
+
3
+ const listboxAnatomy = anatomy.extendWith("empty");
4
+
5
+ export { listboxAnatomy };
@@ -4,6 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const listboxContext_vue_vue_type_script_setup_true_lang = require('./listbox-context.vue.cjs');
6
6
  const listboxContent_vue_vue_type_script_setup_true_lang = require('./listbox-content.vue.cjs');
7
+ const listboxEmpty_vue_vue_type_script_setup_true_lang = require('./listbox-empty.vue.cjs');
7
8
  const listboxInput_vue_vue_type_script_setup_true_lang = require('./listbox-input.vue.cjs');
8
9
  const listboxItemContext_vue_vue_type_script_setup_true_lang = require('./listbox-item-context.vue.cjs');
9
10
  const listboxItemGroupLabel_vue_vue_type_script_setup_true_lang = require('./listbox-item-group-label.vue.cjs');
@@ -20,6 +21,7 @@ const listboxValueText_vue_vue_type_script_setup_true_lang = require('./listbox-
20
21
 
21
22
  exports.Context = listboxContext_vue_vue_type_script_setup_true_lang.default;
22
23
  exports.Content = listboxContent_vue_vue_type_script_setup_true_lang.default;
24
+ exports.Empty = listboxEmpty_vue_vue_type_script_setup_true_lang.default;
23
25
  exports.Input = listboxInput_vue_vue_type_script_setup_true_lang.default;
24
26
  exports.ItemContext = listboxItemContext_vue_vue_type_script_setup_true_lang.default;
25
27
  exports.ItemGroupLabel = listboxItemGroupLabel_vue_vue_type_script_setup_true_lang.default;
@@ -1,6 +1,7 @@
1
1
  export type { HighlightChangeDetails, ScrollToIndexDetails, SelectionDetails, SelectionMode, ValueChangeDetails, } from '@zag-js/listbox';
2
2
  export { default as Context, type ListboxContextProps as ContextProps } from './listbox-context.vue';
3
3
  export { default as Content, type ListboxContentBaseProps as ContentBaseProps, type ListboxContentProps as ContentProps, } from './listbox-content.vue';
4
+ export { default as Empty, type ListboxEmptyBaseProps as EmptyBaseProps, type ListboxEmptyProps as EmptyProps, } from './listbox-empty.vue';
4
5
  export { default as Input, type ListboxInputBaseProps as InputBaseProps, type ListboxInputProps as InputProps, } from './listbox-input.vue';
5
6
  export { default as ItemContext, type ListboxItemContextProps as ItemContextProps } from './listbox-item-context.vue';
6
7
  export { default as ItemGroupLabel, type ListboxItemGroupLabelBaseProps as ItemGroupLabelBaseProps, type ListboxItemGroupLabelProps as ItemGroupLabelProps, } from './listbox-item-group-label.vue';
@@ -1,6 +1,7 @@
1
1
  export type { HighlightChangeDetails, ScrollToIndexDetails, SelectionDetails, SelectionMode, ValueChangeDetails, } from '@zag-js/listbox';
2
2
  export { default as Context, type ListboxContextProps as ContextProps } from './listbox-context.vue';
3
3
  export { default as Content, type ListboxContentBaseProps as ContentBaseProps, type ListboxContentProps as ContentProps, } from './listbox-content.vue';
4
+ export { default as Empty, type ListboxEmptyBaseProps as EmptyBaseProps, type ListboxEmptyProps as EmptyProps, } from './listbox-empty.vue';
4
5
  export { default as Input, type ListboxInputBaseProps as InputBaseProps, type ListboxInputProps as InputProps, } from './listbox-input.vue';
5
6
  export { default as ItemContext, type ListboxItemContextProps as ItemContextProps } from './listbox-item-context.vue';
6
7
  export { default as ItemGroupLabel, type ListboxItemGroupLabelBaseProps as ItemGroupLabelBaseProps, type ListboxItemGroupLabelProps as ItemGroupLabelProps, } from './listbox-item-group-label.vue';
@@ -1,5 +1,6 @@
1
1
  export { default as Context } from './listbox-context.vue.js';
2
2
  export { default as Content } from './listbox-content.vue.js';
3
+ export { default as Empty } from './listbox-empty.vue.js';
3
4
  export { default as Input } from './listbox-input.vue.js';
4
5
  export { default as ItemContext } from './listbox-item-context.vue.js';
5
6
  export { default as ItemGroupLabel } from './listbox-item-group-label.vue.js';
@@ -38,7 +38,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
38
38
  open: void 0,
39
39
  typeahead: void 0
40
40
  }),
41
- emits: ["escapeKeyDown", "focusOutside", "highlightChange", "interactOutside", "openChange", "pointerDownOutside", "select", "update:open", "update:highlightedValue"],
41
+ emits: ["escapeKeyDown", "focusOutside", "highlightChange", "interactOutside", "openChange", "pointerDownOutside", "requestDismiss", "select", "update:open", "update:highlightedValue"],
42
42
  setup(__props, { emit: __emit }) {
43
43
  const props = __props;
44
44
  const emits = __emit;
@@ -20,6 +20,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<MenuRootProps,
20
20
  highlightChange: (details: HighlightChangeDetails) => any;
21
21
  "update:highlightedValue": (highlightedValue: string | null) => any;
22
22
  escapeKeyDown: (event: KeyboardEvent) => any;
23
+ requestDismiss: (event: CustomEvent<{
24
+ originalLayer: HTMLElement;
25
+ targetLayer: HTMLElement | undefined;
26
+ originalIndex: number;
27
+ targetIndex: number;
28
+ }>) => any;
23
29
  }, string, PublicProps, Readonly<MenuRootProps> & Readonly<{
24
30
  onSelect?: ((details: SelectionDetails) => any) | undefined;
25
31
  onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
@@ -30,6 +36,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<MenuRootProps,
30
36
  onHighlightChange?: ((details: HighlightChangeDetails) => any) | undefined;
31
37
  "onUpdate:highlightedValue"?: ((highlightedValue: string | null) => any) | undefined;
32
38
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
39
+ onRequestDismiss?: ((event: CustomEvent<{
40
+ originalLayer: HTMLElement;
41
+ targetLayer: HTMLElement | undefined;
42
+ originalIndex: number;
43
+ targetIndex: number;
44
+ }>) => any) | undefined;
33
45
  }>, {
34
46
  open: boolean;
35
47
  defaultOpen: boolean;
@@ -20,6 +20,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<MenuRootProps,
20
20
  highlightChange: (details: HighlightChangeDetails) => any;
21
21
  "update:highlightedValue": (highlightedValue: string | null) => any;
22
22
  escapeKeyDown: (event: KeyboardEvent) => any;
23
+ requestDismiss: (event: CustomEvent<{
24
+ originalLayer: HTMLElement;
25
+ targetLayer: HTMLElement | undefined;
26
+ originalIndex: number;
27
+ targetIndex: number;
28
+ }>) => any;
23
29
  }, string, PublicProps, Readonly<MenuRootProps> & Readonly<{
24
30
  onSelect?: ((details: SelectionDetails) => any) | undefined;
25
31
  onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
@@ -30,6 +36,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<MenuRootProps,
30
36
  onHighlightChange?: ((details: HighlightChangeDetails) => any) | undefined;
31
37
  "onUpdate:highlightedValue"?: ((highlightedValue: string | null) => any) | undefined;
32
38
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
39
+ onRequestDismiss?: ((event: CustomEvent<{
40
+ originalLayer: HTMLElement;
41
+ targetLayer: HTMLElement | undefined;
42
+ originalIndex: number;
43
+ targetIndex: number;
44
+ }>) => any) | undefined;
33
45
  }>, {
34
46
  open: boolean;
35
47
  defaultOpen: boolean;
@@ -34,7 +34,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
34
34
  open: void 0,
35
35
  typeahead: void 0
36
36
  }),
37
- emits: ["escapeKeyDown", "focusOutside", "highlightChange", "interactOutside", "openChange", "pointerDownOutside", "select", "update:open", "update:highlightedValue"],
37
+ emits: ["escapeKeyDown", "focusOutside", "highlightChange", "interactOutside", "openChange", "pointerDownOutside", "requestDismiss", "select", "update:open", "update:highlightedValue"],
38
38
  setup(__props, { emit: __emit }) {
39
39
  const props = __props;
40
40
  const emits = __emit;
@@ -96,6 +96,17 @@ export type RootEmits = {
96
96
  * Function called when the pointer is pressed down outside the component
97
97
  */
98
98
  pointerDownOutside: [event: menu.PointerDownOutsideEvent];
99
+ /**
100
+ * Function called when this layer is closed due to a parent layer being closed
101
+ */
102
+ requestDismiss: [
103
+ event: CustomEvent<{
104
+ originalLayer: HTMLElement;
105
+ targetLayer: HTMLElement | undefined;
106
+ originalIndex: number;
107
+ targetIndex: number;
108
+ }>
109
+ ];
99
110
  /**
100
111
  * Function called when a menu item is selected.
101
112
  */
@@ -96,6 +96,17 @@ export type RootEmits = {
96
96
  * Function called when the pointer is pressed down outside the component
97
97
  */
98
98
  pointerDownOutside: [event: menu.PointerDownOutsideEvent];
99
+ /**
100
+ * Function called when this layer is closed due to a parent layer being closed
101
+ */
102
+ requestDismiss: [
103
+ event: CustomEvent<{
104
+ originalLayer: HTMLElement;
105
+ targetLayer: HTMLElement | undefined;
106
+ originalIndex: number;
107
+ targetIndex: number;
108
+ }>
109
+ ];
99
110
  /**
100
111
  * Function called when a menu item is selected.
101
112
  */
@@ -34,7 +34,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
34
34
  open: void 0,
35
35
  portalled: void 0
36
36
  }),
37
- emits: ["escapeKeyDown", "focusOutside", "interactOutside", "openChange", "pointerDownOutside", "update:open"],
37
+ emits: ["escapeKeyDown", "focusOutside", "interactOutside", "openChange", "pointerDownOutside", "requestDismiss", "update:open"],
38
38
  setup(__props, { emit: __emit }) {
39
39
  const props = __props;
40
40
  const emits = __emit;
@@ -16,6 +16,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<PopoverRootProp
16
16
  interactOutside: (event: InteractOutsideEvent) => any;
17
17
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
18
18
  escapeKeyDown: (event: KeyboardEvent) => any;
19
+ requestDismiss: (event: CustomEvent<{
20
+ originalLayer: HTMLElement;
21
+ targetLayer: HTMLElement | undefined;
22
+ originalIndex: number;
23
+ targetIndex: number;
24
+ }>) => any;
19
25
  }, string, PublicProps, Readonly<PopoverRootProps> & Readonly<{
20
26
  onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
21
27
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
@@ -23,6 +29,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<PopoverRootProp
23
29
  onInteractOutside?: ((event: InteractOutsideEvent) => any) | undefined;
24
30
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
25
31
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
32
+ onRequestDismiss?: ((event: CustomEvent<{
33
+ originalLayer: HTMLElement;
34
+ targetLayer: HTMLElement | undefined;
35
+ originalIndex: number;
36
+ targetIndex: number;
37
+ }>) => any) | undefined;
26
38
  }>, {
27
39
  open: boolean;
28
40
  autoFocus: boolean;
@@ -16,6 +16,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<PopoverRootProp
16
16
  interactOutside: (event: InteractOutsideEvent) => any;
17
17
  pointerDownOutside: (event: PointerDownOutsideEvent) => any;
18
18
  escapeKeyDown: (event: KeyboardEvent) => any;
19
+ requestDismiss: (event: CustomEvent<{
20
+ originalLayer: HTMLElement;
21
+ targetLayer: HTMLElement | undefined;
22
+ originalIndex: number;
23
+ targetIndex: number;
24
+ }>) => any;
19
25
  }, string, PublicProps, Readonly<PopoverRootProps> & Readonly<{
20
26
  onOpenChange?: ((details: OpenChangeDetails) => any) | undefined;
21
27
  "onUpdate:open"?: ((open: boolean) => any) | undefined;
@@ -23,6 +29,12 @@ declare const _default: __VLS_WithTemplateSlots< DefineComponent<PopoverRootProp
23
29
  onInteractOutside?: ((event: InteractOutsideEvent) => any) | undefined;
24
30
  onPointerDownOutside?: ((event: PointerDownOutsideEvent) => any) | undefined;
25
31
  onEscapeKeyDown?: ((event: KeyboardEvent) => any) | undefined;
32
+ onRequestDismiss?: ((event: CustomEvent<{
33
+ originalLayer: HTMLElement;
34
+ targetLayer: HTMLElement | undefined;
35
+ originalIndex: number;
36
+ targetIndex: number;
37
+ }>) => any) | undefined;
26
38
  }>, {
27
39
  open: boolean;
28
40
  autoFocus: boolean;
@@ -30,7 +30,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
30
30
  open: void 0,
31
31
  portalled: void 0
32
32
  }),
33
- emits: ["escapeKeyDown", "focusOutside", "interactOutside", "openChange", "pointerDownOutside", "update:open"],
33
+ emits: ["escapeKeyDown", "focusOutside", "interactOutside", "openChange", "pointerDownOutside", "requestDismiss", "update:open"],
34
34
  setup(__props, { emit: __emit }) {
35
35
  const props = __props;
36
36
  const emits = __emit;
@@ -96,6 +96,17 @@ export type RootEmits = {
96
96
  * Function called when the pointer is pressed down outside the component
97
97
  */
98
98
  pointerDownOutside: [event: popover.PointerDownOutsideEvent];
99
+ /**
100
+ * Function called when this layer is closed due to a parent layer being closed
101
+ */
102
+ requestDismiss: [
103
+ event: CustomEvent<{
104
+ originalLayer: HTMLElement;
105
+ targetLayer: HTMLElement | undefined;
106
+ originalIndex: number;
107
+ targetIndex: number;
108
+ }>
109
+ ];
99
110
  /**
100
111
  * The callback fired when the open state changes.
101
112
  */
@@ -96,6 +96,17 @@ export type RootEmits = {
96
96
  * Function called when the pointer is pressed down outside the component
97
97
  */
98
98
  pointerDownOutside: [event: popover.PointerDownOutsideEvent];
99
+ /**
100
+ * Function called when this layer is closed due to a parent layer being closed
101
+ */
102
+ requestDismiss: [
103
+ event: CustomEvent<{
104
+ originalLayer: HTMLElement;
105
+ targetLayer: HTMLElement | undefined;
106
+ originalIndex: number;
107
+ targetIndex: number;
108
+ }>
109
+ ];
99
110
  /**
100
111
  * The callback fired when the open state changes.
101
112
  */
@@ -1,3 +1,3 @@
1
1
  import { Anatomy, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemControl" | "itemText">;
3
- export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemControl" | "itemText", AnatomyPart>;
2
+ export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl">;
3
+ export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl", AnatomyPart>;
@@ -1,3 +1,3 @@
1
1
  import { Anatomy, AnatomyPart } from '@zag-js/anatomy';
2
- export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemControl" | "itemText">;
3
- export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemControl" | "itemText", AnatomyPart>;
2
+ export declare const segmentGroupAnatomy: Anatomy<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl">;
3
+ export declare const parts: Record<"label" | "root" | "item" | "indicator" | "itemText" | "itemControl", AnatomyPart>;
@@ -24,8 +24,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
24
24
  }), 128)),
25
25
  vue.unref(signaturePad).currentPath ? (vue.openBlock(), vue.createElementBlock("path", vue.normalizeProps(vue.mergeProps({ key: 0 }, vue.unref(signaturePad).getSegmentPathProps({ path: vue.unref(signaturePad).currentPath }))), null, 16)) : vue.createCommentVNode("", true)
26
26
  ]),
27
- _: 1,
28
- __: [0]
27
+ _: 1
29
28
  }, 16, ["as-child"]);
30
29
  };
31
30
  }
@@ -20,8 +20,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
20
20
  }), 128)),
21
21
  unref(signaturePad).currentPath ? (openBlock(), createElementBlock("path", normalizeProps(mergeProps({ key: 0 }, unref(signaturePad).getSegmentPathProps({ path: unref(signaturePad).currentPath }))), null, 16)) : createCommentVNode("", true)
22
22
  ]),
23
- _: 1,
24
- __: [0]
23
+ _: 1
25
24
  }, 16, ["as-child"]);
26
25
  };
27
26
  }
@@ -1,3 +1,4 @@
1
+ export type { ActionOptions as ToastActionOptions, Placement as ToastPlacement, PromiseOptions as ToastPromiseOptions, Status as ToastStatus, StatusChangeDetails as ToastStatusChangeDetails, Type as ToastType, } from '@zag-js/toast';
1
2
  export { createToaster, type CreateToasterProps, type CreateToasterReturn } from './create-toaster';
2
3
  export { default as ToastActionTrigger, type ToastActionTriggerBaseProps, type ToastActionTriggerProps, } from './toast-action-trigger.vue';
3
4
  export { default as ToastCloseTrigger, type ToastCloseTriggerBaseProps, type ToastCloseTriggerProps, } from './toast-close-trigger.vue';
@@ -1,3 +1,4 @@
1
+ export type { ActionOptions as ToastActionOptions, Placement as ToastPlacement, PromiseOptions as ToastPromiseOptions, Status as ToastStatus, StatusChangeDetails as ToastStatusChangeDetails, Type as ToastType, } from '@zag-js/toast';
1
2
  export { createToaster, type CreateToasterProps, type CreateToasterReturn } from './create-toaster';
2
3
  export { default as ToastActionTrigger, type ToastActionTriggerBaseProps, type ToastActionTriggerProps, } from './toast-action-trigger.vue';
3
4
  export { default as ToastCloseTrigger, type ToastCloseTriggerBaseProps, type ToastCloseTriggerProps, } from './toast-close-trigger.vue';
package/dist/index.cjs CHANGED
@@ -86,6 +86,12 @@ const collapsibleIndicator_vue_vue_type_script_setup_true_lang = require('./comp
86
86
  const useCollapsible = require('./components/collapsible/use-collapsible.cjs');
87
87
  const useCollapsibleContext = require('./components/collapsible/use-collapsible-context.cjs');
88
88
  const collapsible$1 = require('./components/collapsible/collapsible.cjs');
89
+ const gridCollection = require('./components/collection/grid-collection.cjs');
90
+ const listCollection = require('./components/collection/list-collection.cjs');
91
+ const treeCollection = require('./components/collection/tree-collection.cjs');
92
+ const useAsyncList = require('./components/collection/use-async-list.cjs');
93
+ const useListCollection = require('./components/collection/use-list-collection.cjs');
94
+ const useListSelection = require('./components/collection/use-list-selection.cjs');
89
95
  const colorPicker = require('@zag-js/color-picker');
90
96
  const colorPickerAreaBackground_vue_vue_type_script_setup_true_lang = require('./components/color-picker/color-picker-area-background.vue.cjs');
91
97
  const colorPickerAreaThumb_vue_vue_type_script_setup_true_lang = require('./components/color-picker/color-picker-area-thumb.vue.cjs');
@@ -120,11 +126,9 @@ const colorPicker_anatomy = require('./components/color-picker/color-picker.anat
120
126
  const useColorPicker = require('./components/color-picker/use-color-picker.cjs');
121
127
  const useColorPickerContext = require('./components/color-picker/use-color-picker-context.cjs');
122
128
  const colorPicker$1 = require('./components/color-picker/color-picker.cjs');
123
- const listCollection = require('./components/collection/list-collection.cjs');
124
- const treeCollection = require('./components/collection/tree-collection.cjs');
125
- const useListCollection = require('./components/collection/use-list-collection.cjs');
126
129
  const comboboxClearTrigger_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-clear-trigger.vue.cjs');
127
130
  const comboboxContent_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-content.vue.cjs');
131
+ const comboboxEmpty_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-empty.vue.cjs');
128
132
  const comboboxContext_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-context.vue.cjs');
129
133
  const comboboxControl_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-control.vue.cjs');
130
134
  const comboboxInput_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-input.vue.cjs');
@@ -140,10 +144,11 @@ const comboboxPositioner_vue_vue_type_script_setup_true_lang = require('./compon
140
144
  const comboboxRootProvider_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-root-provider.vue.cjs');
141
145
  const comboboxRoot_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-root.vue.cjs');
142
146
  const comboboxTrigger_vue_vue_type_script_setup_true_lang = require('./components/combobox/combobox-trigger.vue.cjs');
147
+ const combobox_anatomy = require('./components/combobox/combobox.anatomy.cjs');
143
148
  const useCombobox = require('./components/combobox/use-combobox.cjs');
144
149
  const useComboboxContext = require('./components/combobox/use-combobox-context.cjs');
145
150
  const useComboboxItemContext = require('./components/combobox/use-combobox-item-context.cjs');
146
- const combobox$1 = require('./components/combobox/combobox.cjs');
151
+ const combobox = require('./components/combobox/combobox.cjs');
147
152
  const datePicker = require('@zag-js/date-picker');
148
153
  const datePickerClearTrigger_vue_vue_type_script_setup_true_lang = require('./components/date-picker/date-picker-clear-trigger.vue.cjs');
149
154
  const datePickerContent_vue_vue_type_script_setup_true_lang = require('./components/date-picker/date-picker-content.vue.cjs');
@@ -289,6 +294,7 @@ const useJsonTreeView = require('./components/json-tree-view/use-json-tree-view.
289
294
  const jsonTreeView = require('./components/json-tree-view/json-tree-view.cjs');
290
295
  const listboxContext_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-context.vue.cjs');
291
296
  const listboxContent_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-content.vue.cjs');
297
+ const listboxEmpty_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-empty.vue.cjs');
292
298
  const listboxInput_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-input.vue.cjs');
293
299
  const listboxItem_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-item.vue.cjs');
294
300
  const listboxItemContext_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-item-context.vue.cjs');
@@ -300,10 +306,11 @@ const listboxLabel_vue_vue_type_script_setup_true_lang = require('./components/l
300
306
  const listboxRoot_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-root.vue.cjs');
301
307
  const listboxRootProvider_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-root-provider.vue.cjs');
302
308
  const listboxValueText_vue_vue_type_script_setup_true_lang = require('./components/listbox/listbox-value-text.vue.cjs');
309
+ const listbox_anatomy = require('./components/listbox/listbox.anatomy.cjs');
303
310
  const useListbox = require('./components/listbox/use-listbox.cjs');
304
311
  const useListboxContext = require('./components/listbox/use-listbox-context.cjs');
305
312
  const useListboxItemContext = require('./components/listbox/use-listbox-item-context.cjs');
306
- const listbox$1 = require('./components/listbox/listbox.cjs');
313
+ const listbox = require('./components/listbox/listbox.cjs');
307
314
  const menuArrowTip_vue_vue_type_script_setup_true_lang = require('./components/menu/menu-arrow-tip.vue.cjs');
308
315
  const menuArrow_vue_vue_type_script_setup_true_lang = require('./components/menu/menu-arrow.vue.cjs');
309
316
  const menuCheckboxItem_vue_vue_type_script_setup_true_lang = require('./components/menu/menu-checkbox-item.vue.cjs');
@@ -691,6 +698,7 @@ const treeView$1 = require('./components/tree-view/tree-view.cjs');
691
698
  const environmentProvider_vue_vue_type_script_setup_true_lang = require('./providers/environment/environment-provider.vue.cjs');
692
699
  const useEnvironmentContext = require('./providers/environment/use-environment-context.cjs');
693
700
  const localeProvider_vue_vue_type_script_setup_true_lang = require('./providers/locale/locale-provider.vue.cjs');
701
+ const useCollator = require('./providers/locale/use-collator.cjs');
694
702
  const useFilter = require('./providers/locale/use-filter.cjs');
695
703
  const useLocaleContext = require('./providers/locale/use-locale-context.cjs');
696
704
  const useEmitsAsProps = require('./utils/use-emits-as-props.cjs');
@@ -703,13 +711,11 @@ const avatar = require('@zag-js/avatar');
703
711
  const carousel = require('@zag-js/carousel');
704
712
  const clipboard = require('@zag-js/clipboard');
705
713
  const collapsible = require('@zag-js/collapsible');
706
- const combobox = require('@zag-js/combobox');
707
714
  const dialog = require('@zag-js/dialog');
708
715
  const editable = require('@zag-js/editable');
709
716
  const fileUpload = require('@zag-js/file-upload');
710
717
  const floatingPanel = require('@zag-js/floating-panel');
711
718
  const hoverCard = require('@zag-js/hover-card');
712
- const listbox = require('@zag-js/listbox');
713
719
  const menu = require('@zag-js/menu');
714
720
  const numberInput = require('@zag-js/number-input');
715
721
  const pagination = require('@zag-js/pagination');
@@ -822,6 +828,13 @@ exports.CollapsibleIndicator = collapsibleIndicator_vue_vue_type_script_setup_tr
822
828
  exports.useCollapsible = useCollapsible.useCollapsible;
823
829
  exports.useCollapsibleContext = useCollapsibleContext.useCollapsibleContext;
824
830
  exports.Collapsible = collapsible$1;
831
+ exports.createGridCollection = gridCollection.createGridCollection;
832
+ exports.createListCollection = listCollection.createListCollection;
833
+ exports.createFileTreeCollection = treeCollection.createFileTreeCollection;
834
+ exports.createTreeCollection = treeCollection.createTreeCollection;
835
+ exports.useAsyncList = useAsyncList.useAsyncList;
836
+ exports.useListCollection = useListCollection.useListCollection;
837
+ exports.useListSelection = useListSelection.useListSelection;
825
838
  Object.defineProperty(exports, "parseColor", {
826
839
  enumerable: true,
827
840
  get: () => colorPicker.parse
@@ -859,12 +872,9 @@ exports.colorPickerAnatomy = colorPicker_anatomy.colorPickerAnatomy;
859
872
  exports.useColorPicker = useColorPicker.useColorPicker;
860
873
  exports.useColorPickerContext = useColorPickerContext.useColorPickerContext;
861
874
  exports.ColorPicker = colorPicker$1;
862
- exports.createListCollection = listCollection.createListCollection;
863
- exports.createFileTreeCollection = treeCollection.createFileTreeCollection;
864
- exports.createTreeCollection = treeCollection.createTreeCollection;
865
- exports.useListCollection = useListCollection.useListCollection;
866
875
  exports.ComboboxClearTrigger = comboboxClearTrigger_vue_vue_type_script_setup_true_lang.default;
867
876
  exports.ComboboxContent = comboboxContent_vue_vue_type_script_setup_true_lang.default;
877
+ exports.ComboboxEmpty = comboboxEmpty_vue_vue_type_script_setup_true_lang.default;
868
878
  exports.ComboboxContext = comboboxContext_vue_vue_type_script_setup_true_lang.default;
869
879
  exports.ComboboxControl = comboboxControl_vue_vue_type_script_setup_true_lang.default;
870
880
  exports.ComboboxInput = comboboxInput_vue_vue_type_script_setup_true_lang.default;
@@ -880,10 +890,11 @@ exports.ComboboxPositioner = comboboxPositioner_vue_vue_type_script_setup_true_l
880
890
  exports.ComboboxRootProvider = comboboxRootProvider_vue_vue_type_script_setup_true_lang.default;
881
891
  exports.ComboboxRoot = comboboxRoot_vue_vue_type_script_setup_true_lang.default;
882
892
  exports.ComboboxTrigger = comboboxTrigger_vue_vue_type_script_setup_true_lang.default;
893
+ exports.comboboxAnatomy = combobox_anatomy.comboboxAnatomy;
883
894
  exports.useCombobox = useCombobox.useCombobox;
884
895
  exports.useComboboxContext = useComboboxContext.useComboboxContext;
885
896
  exports.useComboboxItemContext = useComboboxItemContext.useComboboxItemContext;
886
- exports.Combobox = combobox$1;
897
+ exports.Combobox = combobox;
887
898
  Object.defineProperty(exports, "parseDate", {
888
899
  enumerable: true,
889
900
  get: () => datePicker.parse
@@ -1033,6 +1044,7 @@ exports.useJsonTreeView = useJsonTreeView.useJsonTreeView;
1033
1044
  exports.JsonTreeView = jsonTreeView;
1034
1045
  exports.ListboxContext = listboxContext_vue_vue_type_script_setup_true_lang.default;
1035
1046
  exports.ListboxContent = listboxContent_vue_vue_type_script_setup_true_lang.default;
1047
+ exports.ListboxEmpty = listboxEmpty_vue_vue_type_script_setup_true_lang.default;
1036
1048
  exports.ListboxInput = listboxInput_vue_vue_type_script_setup_true_lang.default;
1037
1049
  exports.ListboxItem = listboxItem_vue_vue_type_script_setup_true_lang.default;
1038
1050
  exports.ListboxItemContext = listboxItemContext_vue_vue_type_script_setup_true_lang.default;
@@ -1044,10 +1056,11 @@ exports.ListboxLabel = listboxLabel_vue_vue_type_script_setup_true_lang.default;
1044
1056
  exports.ListboxRoot = listboxRoot_vue_vue_type_script_setup_true_lang.default;
1045
1057
  exports.ListboxRootProvider = listboxRootProvider_vue_vue_type_script_setup_true_lang.default;
1046
1058
  exports.ListboxValueText = listboxValueText_vue_vue_type_script_setup_true_lang.default;
1059
+ exports.listboxAnatomy = listbox_anatomy.listboxAnatomy;
1047
1060
  exports.useListbox = useListbox.useListbox;
1048
1061
  exports.useListboxContext = useListboxContext.useListboxContext;
1049
1062
  exports.useListboxItemContext = useListboxItemContext.useListboxItemContext;
1050
- exports.Listbox = listbox$1;
1063
+ exports.Listbox = listbox;
1051
1064
  exports.MenuArrowTip = menuArrowTip_vue_vue_type_script_setup_true_lang.default;
1052
1065
  exports.MenuArrow = menuArrow_vue_vue_type_script_setup_true_lang.default;
1053
1066
  exports.MenuCheckboxItem = menuCheckboxItem_vue_vue_type_script_setup_true_lang.default;
@@ -1440,6 +1453,7 @@ exports.EnvironmentProvider = environmentProvider_vue_vue_type_script_setup_true
1440
1453
  exports.DEFAULT_ENVIRONMENT = useEnvironmentContext.DEFAULT_ENVIRONMENT;
1441
1454
  exports.useEnvironmentContext = useEnvironmentContext.useEnvironmentContext;
1442
1455
  exports.LocaleProvider = localeProvider_vue_vue_type_script_setup_true_lang.default;
1456
+ exports.useCollator = useCollator.useCollator;
1443
1457
  exports.useFilter = useFilter.useFilter;
1444
1458
  exports.DEFAULT_LOCALE = useLocaleContext.DEFAULT_LOCALE;
1445
1459
  exports.useLocaleContext = useLocaleContext.useLocaleContext;
@@ -1471,10 +1485,6 @@ Object.defineProperty(exports, "collapsibleAnatomy", {
1471
1485
  enumerable: true,
1472
1486
  get: () => collapsible.anatomy
1473
1487
  });
1474
- Object.defineProperty(exports, "comboboxAnatomy", {
1475
- enumerable: true,
1476
- get: () => combobox.anatomy
1477
- });
1478
1488
  Object.defineProperty(exports, "dialogAnatomy", {
1479
1489
  enumerable: true,
1480
1490
  get: () => dialog.anatomy
@@ -1495,10 +1505,6 @@ Object.defineProperty(exports, "hoverCardAnatomy", {
1495
1505
  enumerable: true,
1496
1506
  get: () => hoverCard.anatomy
1497
1507
  });
1498
- Object.defineProperty(exports, "listboxAnatomy", {
1499
- enumerable: true,
1500
- get: () => listbox.anatomy
1501
- });
1502
1508
  Object.defineProperty(exports, "menuAnatomy", {
1503
1509
  enumerable: true,
1504
1510
  get: () => menu.anatomy