@ark-ui/react 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 (89) hide show
  1. package/dist/components/collection/examples/async-list/dependencies.d.cts +1 -0
  2. package/dist/components/collection/examples/async-list/dependencies.d.ts +1 -0
  3. package/dist/components/collection/examples/async-list/filter.d.cts +1 -0
  4. package/dist/components/collection/examples/async-list/filter.d.ts +1 -0
  5. package/dist/components/collection/examples/async-list/infinite-loading.d.cts +1 -0
  6. package/dist/components/collection/examples/async-list/infinite-loading.d.ts +1 -0
  7. package/dist/components/collection/examples/async-list/reload.d.cts +1 -0
  8. package/dist/components/collection/examples/async-list/reload.d.ts +1 -0
  9. package/dist/components/collection/examples/async-list/sort-client-side.d.cts +1 -0
  10. package/dist/components/collection/examples/async-list/sort-client-side.d.ts +1 -0
  11. package/dist/components/collection/examples/async-list/sort-server-side.d.cts +1 -0
  12. package/dist/components/collection/examples/async-list/sort-server-side.d.ts +1 -0
  13. package/dist/components/collection/examples/list-selection/basic.d.cts +1 -0
  14. package/dist/components/collection/examples/list-selection/basic.d.ts +1 -0
  15. package/dist/components/collection/examples/list-selection/multiple.d.cts +1 -0
  16. package/dist/components/collection/examples/list-selection/multiple.d.ts +1 -0
  17. package/dist/components/collection/examples/list-selection/range.d.cts +1 -0
  18. package/dist/components/collection/examples/list-selection/range.d.ts +1 -0
  19. package/dist/components/collection/index.cjs +2 -0
  20. package/dist/components/collection/index.d.cts +1 -0
  21. package/dist/components/collection/index.d.ts +1 -0
  22. package/dist/components/collection/index.js +1 -0
  23. package/dist/components/collection/use-async-list.cjs +33 -0
  24. package/dist/components/collection/use-async-list.d.cts +6 -0
  25. package/dist/components/collection/use-async-list.d.ts +6 -0
  26. package/dist/components/collection/use-async-list.js +10 -0
  27. package/dist/components/combobox/combobox-empty.cjs +22 -0
  28. package/dist/components/combobox/combobox-empty.d.cts +7 -0
  29. package/dist/components/combobox/combobox-empty.d.ts +7 -0
  30. package/dist/components/combobox/combobox-empty.js +18 -0
  31. package/dist/components/combobox/combobox.anatomy.cjs +10 -0
  32. package/dist/components/combobox/combobox.anatomy.d.cts +2 -1
  33. package/dist/components/combobox/combobox.anatomy.d.ts +2 -1
  34. package/dist/components/combobox/combobox.anatomy.js +6 -0
  35. package/dist/components/combobox/combobox.cjs +2 -0
  36. package/dist/components/combobox/combobox.d.cts +1 -0
  37. package/dist/components/combobox/combobox.d.ts +1 -0
  38. package/dist/components/combobox/combobox.js +1 -0
  39. package/dist/components/combobox/index.cjs +6 -7
  40. package/dist/components/combobox/index.d.cts +1 -0
  41. package/dist/components/combobox/index.d.ts +1 -0
  42. package/dist/components/combobox/index.js +2 -1
  43. package/dist/components/fieldset/fieldset-legend.cjs +1 -1
  44. package/dist/components/fieldset/fieldset-legend.d.cts +2 -2
  45. package/dist/components/fieldset/fieldset-legend.d.ts +2 -2
  46. package/dist/components/fieldset/fieldset-legend.js +1 -1
  47. package/dist/components/fieldset/use-fieldset.cjs +5 -2
  48. package/dist/components/fieldset/use-fieldset.js +5 -2
  49. package/dist/components/index.cjs +12 -14
  50. package/dist/components/index.js +4 -2
  51. package/dist/components/listbox/index.cjs +6 -7
  52. package/dist/components/listbox/index.d.cts +1 -0
  53. package/dist/components/listbox/index.d.ts +1 -0
  54. package/dist/components/listbox/index.js +2 -1
  55. package/dist/components/listbox/listbox-empty.cjs +22 -0
  56. package/dist/components/listbox/listbox-empty.d.cts +7 -0
  57. package/dist/components/listbox/listbox-empty.d.ts +7 -0
  58. package/dist/components/listbox/listbox-empty.js +18 -0
  59. package/dist/components/listbox/listbox.anatomy.cjs +10 -0
  60. package/dist/components/listbox/listbox.anatomy.d.cts +2 -1
  61. package/dist/components/listbox/listbox.anatomy.d.ts +2 -1
  62. package/dist/components/listbox/listbox.anatomy.js +6 -0
  63. package/dist/components/listbox/listbox.cjs +2 -0
  64. package/dist/components/listbox/listbox.d.cts +1 -0
  65. package/dist/components/listbox/listbox.d.ts +1 -0
  66. package/dist/components/listbox/listbox.js +1 -0
  67. package/dist/components/menu/menu-root.cjs +1 -0
  68. package/dist/components/menu/menu-root.js +1 -0
  69. package/dist/components/segment-group/segment-group.anatomy.d.cts +2 -2
  70. package/dist/components/segment-group/segment-group.anatomy.d.ts +2 -2
  71. package/dist/components/tabs/tab-content.cjs +1 -2
  72. package/dist/components/tabs/tab-content.js +1 -2
  73. package/dist/components/toast/index.d.cts +1 -0
  74. package/dist/components/toast/index.d.ts +1 -0
  75. package/dist/index.cjs +14 -14
  76. package/dist/index.js +5 -2
  77. package/dist/providers/index.cjs +2 -0
  78. package/dist/providers/index.js +1 -0
  79. package/dist/providers/locale/index.cjs +2 -0
  80. package/dist/providers/locale/index.d.cts +1 -0
  81. package/dist/providers/locale/index.d.ts +1 -0
  82. package/dist/providers/locale/index.js +1 -0
  83. package/dist/providers/locale/use-collator.cjs +19 -0
  84. package/dist/providers/locale/use-collator.d.cts +4 -0
  85. package/dist/providers/locale/use-collator.d.ts +4 -0
  86. package/dist/providers/locale/use-collator.js +15 -0
  87. package/package.json +70 -69
  88. package/dist/utils/use-debounce.cjs +0 -21
  89. package/dist/utils/use-debounce.js +0 -17
@@ -129,6 +129,7 @@ export { createFileTreeCollection, createTreeCollection } from './collection/tre
129
129
  export { useListCollection } from './collection/use-list-collection.js';
130
130
  export { ComboboxClearTrigger } from './combobox/combobox-clear-trigger.js';
131
131
  export { ComboboxContent } from './combobox/combobox-content.js';
132
+ export { ComboboxEmpty } from './combobox/combobox-empty.js';
132
133
  export { ComboboxContext } from './combobox/combobox-context.js';
133
134
  export { ComboboxControl } from './combobox/combobox-control.js';
134
135
  export { ComboboxInput } from './combobox/combobox-input.js';
@@ -144,6 +145,7 @@ export { ComboboxPositioner } from './combobox/combobox-positioner.js';
144
145
  export { ComboboxRoot } from './combobox/combobox-root.js';
145
146
  export { ComboboxRootProvider } from './combobox/combobox-root-provider.js';
146
147
  export { ComboboxTrigger } from './combobox/combobox-trigger.js';
148
+ export { comboboxAnatomy } from './combobox/combobox.anatomy.js';
147
149
  export { useCombobox } from './combobox/use-combobox.js';
148
150
  export { useComboboxContext } from './combobox/use-combobox-context.js';
149
151
  export { useComboboxItemContext } from './combobox/use-combobox-item-context.js';
@@ -304,6 +306,7 @@ import * as jsonTreeView from './json-tree-view/json-tree-view.js';
304
306
  export { jsonTreeView as JsonTreeView };
305
307
  export { ListboxContent } from './listbox/listbox-content.js';
306
308
  export { ListboxContext } from './listbox/listbox-context.js';
309
+ export { ListboxEmpty } from './listbox/listbox-empty.js';
307
310
  export { ListboxInput } from './listbox/listbox-input.js';
308
311
  export { ListboxItem } from './listbox/listbox-item.js';
309
312
  export { ListboxItemContext } from './listbox/listbox-item-context.js';
@@ -315,6 +318,7 @@ export { ListboxLabel } from './listbox/listbox-label.js';
315
318
  export { ListboxRoot } from './listbox/listbox-root.js';
316
319
  export { ListboxRootProvider } from './listbox/listbox-root-provider.js';
317
320
  export { ListboxValueText } from './listbox/listbox-value-text.js';
321
+ export { listboxAnatomy } from './listbox/listbox.anatomy.js';
318
322
  export { useListbox } from './listbox/use-listbox.js';
319
323
  export { useListboxContext } from './listbox/use-listbox-context.js';
320
324
  export { useListboxItemContext } from './listbox/use-listbox-item-context.js';
@@ -740,13 +744,11 @@ export { anatomy as avatarAnatomy } from '@zag-js/avatar';
740
744
  export { anatomy as carouselAnatomy } from '@zag-js/carousel';
741
745
  export { anatomy as clipboardAnatomy } from '@zag-js/clipboard';
742
746
  export { anatomy as collapsibleAnatomy } from '@zag-js/collapsible';
743
- export { anatomy as comboboxAnatomy } from '@zag-js/combobox';
744
747
  export { anatomy as dialogAnatomy } from '@zag-js/dialog';
745
748
  export { anatomy as editableAnatomy } from '@zag-js/editable';
746
749
  export { anatomy as fileUploadAnatomy } from '@zag-js/file-upload';
747
750
  export { anatomy as floatingPanelAnatomy } from '@zag-js/floating-panel';
748
751
  export { anatomy as hoverCardAnatomy } from '@zag-js/hover-card';
749
- export { anatomy as listboxAnatomy } from '@zag-js/listbox';
750
752
  export { anatomy as menuAnatomy } from '@zag-js/menu';
751
753
  export { anatomy as numberInputAnatomy } from '@zag-js/number-input';
752
754
  export { anatomy as paginationAnatomy } from '@zag-js/pagination';
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const listCollection = require('../collection/list-collection.cjs');
6
6
  const listboxContent = require('./listbox-content.cjs');
7
7
  const listboxContext = require('./listbox-context.cjs');
8
+ const listboxEmpty = require('./listbox-empty.cjs');
8
9
  const listboxInput = require('./listbox-input.cjs');
9
10
  const listboxItem = require('./listbox-item.cjs');
10
11
  const listboxItemContext = require('./listbox-item-context.cjs');
@@ -16,17 +17,18 @@ const listboxLabel = require('./listbox-label.cjs');
16
17
  const listboxRoot = require('./listbox-root.cjs');
17
18
  const listboxRootProvider = require('./listbox-root-provider.cjs');
18
19
  const listboxValueText = require('./listbox-value-text.cjs');
20
+ const listbox_anatomy = require('./listbox.anatomy.cjs');
19
21
  const useListbox = require('./use-listbox.cjs');
20
22
  const useListboxContext = require('./use-listbox-context.cjs');
21
23
  const useListboxItemContext = require('./use-listbox-item-context.cjs');
22
- const listbox$1 = require('./listbox.cjs');
23
- const listbox = require('@zag-js/listbox');
24
+ const listbox = require('./listbox.cjs');
24
25
 
25
26
 
26
27
 
27
28
  exports.createListCollection = listCollection.createListCollection;
28
29
  exports.ListboxContent = listboxContent.ListboxContent;
29
30
  exports.ListboxContext = listboxContext.ListboxContext;
31
+ exports.ListboxEmpty = listboxEmpty.ListboxEmpty;
30
32
  exports.ListboxInput = listboxInput.ListboxInput;
31
33
  exports.ListboxItem = listboxItem.ListboxItem;
32
34
  exports.ListboxItemContext = listboxItemContext.ListboxItemContext;
@@ -38,11 +40,8 @@ exports.ListboxLabel = listboxLabel.ListboxLabel;
38
40
  exports.ListboxRoot = listboxRoot.ListboxRoot;
39
41
  exports.ListboxRootProvider = listboxRootProvider.ListboxRootProvider;
40
42
  exports.ListboxValueText = listboxValueText.ListboxValueText;
43
+ exports.listboxAnatomy = listbox_anatomy.listboxAnatomy;
41
44
  exports.useListbox = useListbox.useListbox;
42
45
  exports.useListboxContext = useListboxContext.useListboxContext;
43
46
  exports.useListboxItemContext = useListboxItemContext.useListboxItemContext;
44
- exports.Listbox = listbox$1;
45
- Object.defineProperty(exports, "listboxAnatomy", {
46
- enumerable: true,
47
- get: () => listbox.anatomy
48
- });
47
+ exports.Listbox = listbox;
@@ -2,6 +2,7 @@ export type { HighlightChangeDetails as ListboxHighlightChangeDetails, ScrollToI
2
2
  export { createListCollection, type CollectionItem, type ListCollection } from '../collection';
3
3
  export { ListboxContent, type ListboxContentBaseProps, type ListboxContentProps } from './listbox-content';
4
4
  export { ListboxContext, type ListboxContextProps } from './listbox-context';
5
+ export { ListboxEmpty, type ListboxEmptyBaseProps, type ListboxEmptyProps } from './listbox-empty';
5
6
  export { ListboxInput, type ListboxInputBaseProps, type ListboxInputProps } from './listbox-input';
6
7
  export { ListboxItem, type ListboxItemBaseProps, type ListboxItemProps } from './listbox-item';
7
8
  export { ListboxItemContext, type ListboxItemContextProps } from './listbox-item-context';
@@ -2,6 +2,7 @@ export type { HighlightChangeDetails as ListboxHighlightChangeDetails, ScrollToI
2
2
  export { createListCollection, type CollectionItem, type ListCollection } from '../collection';
3
3
  export { ListboxContent, type ListboxContentBaseProps, type ListboxContentProps } from './listbox-content';
4
4
  export { ListboxContext, type ListboxContextProps } from './listbox-context';
5
+ export { ListboxEmpty, type ListboxEmptyBaseProps, type ListboxEmptyProps } from './listbox-empty';
5
6
  export { ListboxInput, type ListboxInputBaseProps, type ListboxInputProps } from './listbox-input';
6
7
  export { ListboxItem, type ListboxItemBaseProps, type ListboxItemProps } from './listbox-item';
7
8
  export { ListboxItemContext, type ListboxItemContextProps } from './listbox-item-context';
@@ -1,6 +1,7 @@
1
1
  export { createListCollection } from '../collection/list-collection.js';
2
2
  export { ListboxContent } from './listbox-content.js';
3
3
  export { ListboxContext } from './listbox-context.js';
4
+ export { ListboxEmpty } from './listbox-empty.js';
4
5
  export { ListboxInput } from './listbox-input.js';
5
6
  export { ListboxItem } from './listbox-item.js';
6
7
  export { ListboxItemContext } from './listbox-item-context.js';
@@ -12,9 +13,9 @@ export { ListboxLabel } from './listbox-label.js';
12
13
  export { ListboxRoot } from './listbox-root.js';
13
14
  export { ListboxRootProvider } from './listbox-root-provider.js';
14
15
  export { ListboxValueText } from './listbox-value-text.js';
16
+ export { listboxAnatomy } from './listbox.anatomy.js';
15
17
  export { useListbox } from './use-listbox.js';
16
18
  export { useListboxContext } from './use-listbox-context.js';
17
19
  export { useListboxItemContext } from './use-listbox-item-context.js';
18
20
  import * as listbox from './listbox.js';
19
21
  export { listbox as Listbox };
20
- export { anatomy as listboxAnatomy } from '@zag-js/listbox';
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const jsxRuntime = require('react/jsx-runtime');
7
+ const react = require('react');
8
+ const factory = require('../factory.cjs');
9
+ const listbox_anatomy = require('./listbox.anatomy.cjs');
10
+ const useListboxContext = require('./use-listbox-context.cjs');
11
+
12
+ const parts = listbox_anatomy.listboxAnatomy.build();
13
+ const ListboxEmpty = react.forwardRef((props, ref) => {
14
+ const listbox = useListboxContext.useListboxContext();
15
+ if (listbox.collection.size !== 0) {
16
+ return null;
17
+ }
18
+ return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...parts.empty.attrs, ...props, role: "presentation", ref });
19
+ });
20
+ ListboxEmpty.displayName = "ListboxEmpty";
21
+
22
+ exports.ListboxEmpty = ListboxEmpty;
@@ -0,0 +1,7 @@
1
+ import { HTMLProps, PolymorphicProps } from '../factory';
2
+ import { ForwardRefExoticComponent, RefAttributes } from 'react';
3
+ export interface ListboxEmptyBaseProps extends PolymorphicProps {
4
+ }
5
+ export interface ListboxEmptyProps extends HTMLProps<'div'>, ListboxEmptyBaseProps {
6
+ }
7
+ export declare const ListboxEmpty: ForwardRefExoticComponent<ListboxEmptyProps & RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,7 @@
1
+ import { HTMLProps, PolymorphicProps } from '../factory';
2
+ import { ForwardRefExoticComponent, RefAttributes } from 'react';
3
+ export interface ListboxEmptyBaseProps extends PolymorphicProps {
4
+ }
5
+ export interface ListboxEmptyProps extends HTMLProps<'div'>, ListboxEmptyBaseProps {
6
+ }
7
+ export declare const ListboxEmpty: ForwardRefExoticComponent<ListboxEmptyProps & RefAttributes<HTMLDivElement>>;
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import { ark } from '../factory.js';
5
+ import { listboxAnatomy } from './listbox.anatomy.js';
6
+ import { useListboxContext } from './use-listbox-context.js';
7
+
8
+ const parts = listboxAnatomy.build();
9
+ const ListboxEmpty = forwardRef((props, ref) => {
10
+ const listbox = useListboxContext();
11
+ if (listbox.collection.size !== 0) {
12
+ return null;
13
+ }
14
+ return /* @__PURE__ */ jsx(ark.div, { ...parts.empty.attrs, ...props, role: "presentation", ref });
15
+ });
16
+ ListboxEmpty.displayName = "ListboxEmpty";
17
+
18
+ export { ListboxEmpty };
@@ -0,0 +1,10 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const listbox = require('@zag-js/listbox');
7
+
8
+ const listboxAnatomy = listbox.anatomy.extendWith("empty");
9
+
10
+ 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,6 @@
1
+ 'use client';
2
+ import { anatomy } from '@zag-js/listbox';
3
+
4
+ const listboxAnatomy = anatomy.extendWith("empty");
5
+
6
+ export { listboxAnatomy };
@@ -4,6 +4,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const listboxContext = require('./listbox-context.cjs');
6
6
  const listboxContent = require('./listbox-content.cjs');
7
+ const listboxEmpty = require('./listbox-empty.cjs');
7
8
  const listboxInput = require('./listbox-input.cjs');
8
9
  const listboxItem = require('./listbox-item.cjs');
9
10
  const listboxItemContext = require('./listbox-item-context.cjs');
@@ -20,6 +21,7 @@ const listboxValueText = require('./listbox-value-text.cjs');
20
21
 
21
22
  exports.Context = listboxContext.ListboxContext;
22
23
  exports.Content = listboxContent.ListboxContent;
24
+ exports.Empty = listboxEmpty.ListboxEmpty;
23
25
  exports.Input = listboxInput.ListboxInput;
24
26
  exports.Item = listboxItem.ListboxItem;
25
27
  exports.ItemContext = listboxItemContext.ListboxItemContext;
@@ -1,6 +1,7 @@
1
1
  export type { HighlightChangeDetails, ScrollToIndexDetails, SelectionDetails, SelectionMode, ValueChangeDetails, } from '@zag-js/listbox';
2
2
  export { ListboxContext as Context, type ListboxContextProps as ContextProps } from './listbox-context';
3
3
  export { ListboxContent as Content, type ListboxContentBaseProps as ContentBaseProps, type ListboxContentProps as ContentProps, } from './listbox-content';
4
+ export { ListboxEmpty as Empty, type ListboxEmptyBaseProps as EmptyBaseProps, type ListboxEmptyProps as EmptyProps, } from './listbox-empty';
4
5
  export { ListboxInput as Input, type ListboxInputBaseProps as InputBaseProps, type ListboxInputProps as InputProps, } from './listbox-input';
5
6
  export { ListboxItem as Item, type ListboxItemBaseProps as ItemBaseProps, type ListboxItemProps as ItemProps, } from './listbox-item';
6
7
  export { ListboxItemContext as ItemContext, type ListboxItemContextProps as ItemContextProps, } from './listbox-item-context';
@@ -1,6 +1,7 @@
1
1
  export type { HighlightChangeDetails, ScrollToIndexDetails, SelectionDetails, SelectionMode, ValueChangeDetails, } from '@zag-js/listbox';
2
2
  export { ListboxContext as Context, type ListboxContextProps as ContextProps } from './listbox-context';
3
3
  export { ListboxContent as Content, type ListboxContentBaseProps as ContentBaseProps, type ListboxContentProps as ContentProps, } from './listbox-content';
4
+ export { ListboxEmpty as Empty, type ListboxEmptyBaseProps as EmptyBaseProps, type ListboxEmptyProps as EmptyProps, } from './listbox-empty';
4
5
  export { ListboxInput as Input, type ListboxInputBaseProps as InputBaseProps, type ListboxInputProps as InputProps, } from './listbox-input';
5
6
  export { ListboxItem as Item, type ListboxItemBaseProps as ItemBaseProps, type ListboxItemProps as ItemProps, } from './listbox-item';
6
7
  export { ListboxItemContext as ItemContext, type ListboxItemContextProps as ItemContextProps, } from './listbox-item-context';
@@ -1,5 +1,6 @@
1
1
  export { ListboxContext as Context } from './listbox-context.js';
2
2
  export { ListboxContent as Content } from './listbox-content.js';
3
+ export { ListboxEmpty as Empty } from './listbox-empty.js';
3
4
  export { ListboxInput as Input } from './listbox-input.js';
4
5
  export { ListboxItem as Item } from './listbox-item.js';
5
6
  export { ListboxItemContext as ItemContext } from './listbox-item-context.js';
@@ -36,6 +36,7 @@ const MenuRoot = (props) => {
36
36
  "onInteractOutside",
37
37
  "onOpenChange",
38
38
  "onPointerDownOutside",
39
+ "onRequestDismiss",
39
40
  "onSelect",
40
41
  "open",
41
42
  "positioning",
@@ -32,6 +32,7 @@ const MenuRoot = (props) => {
32
32
  "onInteractOutside",
33
33
  "onOpenChange",
34
34
  "onPointerDownOutside",
35
+ "onRequestDismiss",
35
36
  "onSelect",
36
37
  "open",
37
38
  "positioning",
@@ -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>;
@@ -9,7 +9,6 @@ const react = require('react');
9
9
  const composeRefs = require('../../utils/compose-refs.cjs');
10
10
  const createSplitProps = require('../../utils/create-split-props.cjs');
11
11
  const renderStrategy = require('../../utils/render-strategy.cjs');
12
- const useDebounce = require('../../utils/use-debounce.cjs');
13
12
  const factory = require('../factory.cjs');
14
13
  const usePresence = require('../presence/use-presence.cjs');
15
14
  const usePresenceContext = require('../presence/use-presence-context.cjs');
@@ -21,7 +20,7 @@ const TabContent = react.forwardRef((props, ref) => {
21
20
  const renderStrategyProps = renderStrategy.useRenderStrategyPropsContext();
22
21
  const presence = usePresence.usePresence({
23
22
  ...renderStrategyProps,
24
- present: useDebounce.useDebounce(tabs.value === props.value, 0),
23
+ present: tabs.value === props.value,
25
24
  immediate: true
26
25
  });
27
26
  const mergedProps = react$1.mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);
@@ -5,7 +5,6 @@ import { forwardRef } from 'react';
5
5
  import { composeRefs } from '../../utils/compose-refs.js';
6
6
  import { createSplitProps } from '../../utils/create-split-props.js';
7
7
  import { useRenderStrategyPropsContext } from '../../utils/render-strategy.js';
8
- import { useDebounce } from '../../utils/use-debounce.js';
9
8
  import { ark } from '../factory.js';
10
9
  import { usePresence } from '../presence/use-presence.js';
11
10
  import { PresenceProvider } from '../presence/use-presence-context.js';
@@ -17,7 +16,7 @@ const TabContent = forwardRef((props, ref) => {
17
16
  const renderStrategyProps = useRenderStrategyPropsContext();
18
17
  const presence = usePresence({
19
18
  ...renderStrategyProps,
20
- present: useDebounce(tabs.value === props.value, 0),
19
+ present: tabs.value === props.value,
21
20
  immediate: true
22
21
  });
23
22
  const mergedProps = mergeProps(tabs.getContentProps(contentProps), presence.getPresenceProps(), localProps);
@@ -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 { ToastActionTrigger, type ToastActionTriggerBaseProps, type ToastActionTriggerProps, } from './toast-action-trigger';
3
4
  export { ToastCloseTrigger, type ToastCloseTriggerBaseProps, type ToastCloseTriggerProps } from './toast-close-trigger';
@@ -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 { ToastActionTrigger, type ToastActionTriggerBaseProps, type ToastActionTriggerProps, } from './toast-action-trigger';
3
4
  export { ToastCloseTrigger, type ToastCloseTriggerBaseProps, type ToastCloseTriggerProps } from './toast-close-trigger';
package/dist/index.cjs CHANGED
@@ -125,6 +125,7 @@ const treeCollection = require('./components/collection/tree-collection.cjs');
125
125
  const useListCollection = require('./components/collection/use-list-collection.cjs');
126
126
  const comboboxClearTrigger = require('./components/combobox/combobox-clear-trigger.cjs');
127
127
  const comboboxContent = require('./components/combobox/combobox-content.cjs');
128
+ const comboboxEmpty = require('./components/combobox/combobox-empty.cjs');
128
129
  const comboboxContext = require('./components/combobox/combobox-context.cjs');
129
130
  const comboboxControl = require('./components/combobox/combobox-control.cjs');
130
131
  const comboboxInput = require('./components/combobox/combobox-input.cjs');
@@ -140,10 +141,11 @@ const comboboxPositioner = require('./components/combobox/combobox-positioner.cj
140
141
  const comboboxRoot = require('./components/combobox/combobox-root.cjs');
141
142
  const comboboxRootProvider = require('./components/combobox/combobox-root-provider.cjs');
142
143
  const comboboxTrigger = require('./components/combobox/combobox-trigger.cjs');
144
+ const combobox_anatomy = require('./components/combobox/combobox.anatomy.cjs');
143
145
  const useCombobox = require('./components/combobox/use-combobox.cjs');
144
146
  const useComboboxContext = require('./components/combobox/use-combobox-context.cjs');
145
147
  const useComboboxItemContext = require('./components/combobox/use-combobox-item-context.cjs');
146
- const combobox$1 = require('./components/combobox/combobox.cjs');
148
+ const combobox = require('./components/combobox/combobox.cjs');
147
149
  const datePicker = require('@zag-js/date-picker');
148
150
  const datePickerClearTrigger = require('./components/date-picker/date-picker-clear-trigger.cjs');
149
151
  const datePickerContent = require('./components/date-picker/date-picker-content.cjs');
@@ -289,6 +291,7 @@ const useJsonTreeView = require('./components/json-tree-view/use-json-tree-view.
289
291
  const jsonTreeView = require('./components/json-tree-view/json-tree-view.cjs');
290
292
  const listboxContent = require('./components/listbox/listbox-content.cjs');
291
293
  const listboxContext = require('./components/listbox/listbox-context.cjs');
294
+ const listboxEmpty = require('./components/listbox/listbox-empty.cjs');
292
295
  const listboxInput = require('./components/listbox/listbox-input.cjs');
293
296
  const listboxItem = require('./components/listbox/listbox-item.cjs');
294
297
  const listboxItemContext = require('./components/listbox/listbox-item-context.cjs');
@@ -300,10 +303,11 @@ const listboxLabel = require('./components/listbox/listbox-label.cjs');
300
303
  const listboxRoot = require('./components/listbox/listbox-root.cjs');
301
304
  const listboxRootProvider = require('./components/listbox/listbox-root-provider.cjs');
302
305
  const listboxValueText = require('./components/listbox/listbox-value-text.cjs');
306
+ const listbox_anatomy = require('./components/listbox/listbox.anatomy.cjs');
303
307
  const useListbox = require('./components/listbox/use-listbox.cjs');
304
308
  const useListboxContext = require('./components/listbox/use-listbox-context.cjs');
305
309
  const useListboxItemContext = require('./components/listbox/use-listbox-item-context.cjs');
306
- const listbox$1 = require('./components/listbox/listbox.cjs');
310
+ const listbox = require('./components/listbox/listbox.cjs');
307
311
  const menuArrow = require('./components/menu/menu-arrow.cjs');
308
312
  const menuArrowTip = require('./components/menu/menu-arrow-tip.cjs');
309
313
  const menuCheckboxItem = require('./components/menu/menu-checkbox-item.cjs');
@@ -693,6 +697,7 @@ const treeView$1 = require('./components/tree-view/tree-view.cjs');
693
697
  const environmentProvider = require('./providers/environment/environment-provider.cjs');
694
698
  const useEnvironmentContext = require('./providers/environment/use-environment-context.cjs');
695
699
  const localeProvider = require('./providers/locale/locale-provider.cjs');
700
+ const useCollator = require('./providers/locale/use-collator.cjs');
696
701
  const useFilter = require('./providers/locale/use-filter.cjs');
697
702
  const useLocaleContext = require('./providers/locale/use-locale-context.cjs');
698
703
  const accordion = require('@zag-js/accordion');
@@ -701,13 +706,11 @@ const avatar = require('@zag-js/avatar');
701
706
  const carousel = require('@zag-js/carousel');
702
707
  const clipboard = require('@zag-js/clipboard');
703
708
  const collapsible = require('@zag-js/collapsible');
704
- const combobox = require('@zag-js/combobox');
705
709
  const dialog = require('@zag-js/dialog');
706
710
  const editable = require('@zag-js/editable');
707
711
  const fileUpload = require('@zag-js/file-upload');
708
712
  const floatingPanel = require('@zag-js/floating-panel');
709
713
  const hoverCard = require('@zag-js/hover-card');
710
- const listbox = require('@zag-js/listbox');
711
714
  const menu = require('@zag-js/menu');
712
715
  const numberInput = require('@zag-js/number-input');
713
716
  const pagination = require('@zag-js/pagination');
@@ -863,6 +866,7 @@ exports.createTreeCollection = treeCollection.createTreeCollection;
863
866
  exports.useListCollection = useListCollection.useListCollection;
864
867
  exports.ComboboxClearTrigger = comboboxClearTrigger.ComboboxClearTrigger;
865
868
  exports.ComboboxContent = comboboxContent.ComboboxContent;
869
+ exports.ComboboxEmpty = comboboxEmpty.ComboboxEmpty;
866
870
  exports.ComboboxContext = comboboxContext.ComboboxContext;
867
871
  exports.ComboboxControl = comboboxControl.ComboboxControl;
868
872
  exports.ComboboxInput = comboboxInput.ComboboxInput;
@@ -878,10 +882,11 @@ exports.ComboboxPositioner = comboboxPositioner.ComboboxPositioner;
878
882
  exports.ComboboxRoot = comboboxRoot.ComboboxRoot;
879
883
  exports.ComboboxRootProvider = comboboxRootProvider.ComboboxRootProvider;
880
884
  exports.ComboboxTrigger = comboboxTrigger.ComboboxTrigger;
885
+ exports.comboboxAnatomy = combobox_anatomy.comboboxAnatomy;
881
886
  exports.useCombobox = useCombobox.useCombobox;
882
887
  exports.useComboboxContext = useComboboxContext.useComboboxContext;
883
888
  exports.useComboboxItemContext = useComboboxItemContext.useComboboxItemContext;
884
- exports.Combobox = combobox$1;
889
+ exports.Combobox = combobox;
885
890
  Object.defineProperty(exports, "parseDate", {
886
891
  enumerable: true,
887
892
  get: () => datePicker.parse
@@ -1031,6 +1036,7 @@ exports.useJsonTreeView = useJsonTreeView.useJsonTreeView;
1031
1036
  exports.JsonTreeView = jsonTreeView;
1032
1037
  exports.ListboxContent = listboxContent.ListboxContent;
1033
1038
  exports.ListboxContext = listboxContext.ListboxContext;
1039
+ exports.ListboxEmpty = listboxEmpty.ListboxEmpty;
1034
1040
  exports.ListboxInput = listboxInput.ListboxInput;
1035
1041
  exports.ListboxItem = listboxItem.ListboxItem;
1036
1042
  exports.ListboxItemContext = listboxItemContext.ListboxItemContext;
@@ -1042,10 +1048,11 @@ exports.ListboxLabel = listboxLabel.ListboxLabel;
1042
1048
  exports.ListboxRoot = listboxRoot.ListboxRoot;
1043
1049
  exports.ListboxRootProvider = listboxRootProvider.ListboxRootProvider;
1044
1050
  exports.ListboxValueText = listboxValueText.ListboxValueText;
1051
+ exports.listboxAnatomy = listbox_anatomy.listboxAnatomy;
1045
1052
  exports.useListbox = useListbox.useListbox;
1046
1053
  exports.useListboxContext = useListboxContext.useListboxContext;
1047
1054
  exports.useListboxItemContext = useListboxItemContext.useListboxItemContext;
1048
- exports.Listbox = listbox$1;
1055
+ exports.Listbox = listbox;
1049
1056
  exports.MenuArrow = menuArrow.MenuArrow;
1050
1057
  exports.MenuArrowTip = menuArrowTip.MenuArrowTip;
1051
1058
  exports.MenuCheckboxItem = menuCheckboxItem.MenuCheckboxItem;
@@ -1439,6 +1446,7 @@ exports.TreeView = treeView$1;
1439
1446
  exports.EnvironmentProvider = environmentProvider.EnvironmentProvider;
1440
1447
  exports.useEnvironmentContext = useEnvironmentContext.useEnvironmentContext;
1441
1448
  exports.LocaleProvider = localeProvider.LocaleProvider;
1449
+ exports.useCollator = useCollator.useCollator;
1442
1450
  exports.useFilter = useFilter.useFilter;
1443
1451
  exports.useLocaleContext = useLocaleContext.useLocaleContext;
1444
1452
  Object.defineProperty(exports, "accordionAnatomy", {
@@ -1465,10 +1473,6 @@ Object.defineProperty(exports, "collapsibleAnatomy", {
1465
1473
  enumerable: true,
1466
1474
  get: () => collapsible.anatomy
1467
1475
  });
1468
- Object.defineProperty(exports, "comboboxAnatomy", {
1469
- enumerable: true,
1470
- get: () => combobox.anatomy
1471
- });
1472
1476
  Object.defineProperty(exports, "dialogAnatomy", {
1473
1477
  enumerable: true,
1474
1478
  get: () => dialog.anatomy
@@ -1489,10 +1493,6 @@ Object.defineProperty(exports, "hoverCardAnatomy", {
1489
1493
  enumerable: true,
1490
1494
  get: () => hoverCard.anatomy
1491
1495
  });
1492
- Object.defineProperty(exports, "listboxAnatomy", {
1493
- enumerable: true,
1494
- get: () => listbox.anatomy
1495
- });
1496
1496
  Object.defineProperty(exports, "menuAnatomy", {
1497
1497
  enumerable: true,
1498
1498
  get: () => menu.anatomy
package/dist/index.js CHANGED
@@ -129,6 +129,7 @@ export { createFileTreeCollection, createTreeCollection } from './components/col
129
129
  export { useListCollection } from './components/collection/use-list-collection.js';
130
130
  export { ComboboxClearTrigger } from './components/combobox/combobox-clear-trigger.js';
131
131
  export { ComboboxContent } from './components/combobox/combobox-content.js';
132
+ export { ComboboxEmpty } from './components/combobox/combobox-empty.js';
132
133
  export { ComboboxContext } from './components/combobox/combobox-context.js';
133
134
  export { ComboboxControl } from './components/combobox/combobox-control.js';
134
135
  export { ComboboxInput } from './components/combobox/combobox-input.js';
@@ -144,6 +145,7 @@ export { ComboboxPositioner } from './components/combobox/combobox-positioner.js
144
145
  export { ComboboxRoot } from './components/combobox/combobox-root.js';
145
146
  export { ComboboxRootProvider } from './components/combobox/combobox-root-provider.js';
146
147
  export { ComboboxTrigger } from './components/combobox/combobox-trigger.js';
148
+ export { comboboxAnatomy } from './components/combobox/combobox.anatomy.js';
147
149
  export { useCombobox } from './components/combobox/use-combobox.js';
148
150
  export { useComboboxContext } from './components/combobox/use-combobox-context.js';
149
151
  export { useComboboxItemContext } from './components/combobox/use-combobox-item-context.js';
@@ -304,6 +306,7 @@ import * as jsonTreeView from './components/json-tree-view/json-tree-view.js';
304
306
  export { jsonTreeView as JsonTreeView };
305
307
  export { ListboxContent } from './components/listbox/listbox-content.js';
306
308
  export { ListboxContext } from './components/listbox/listbox-context.js';
309
+ export { ListboxEmpty } from './components/listbox/listbox-empty.js';
307
310
  export { ListboxInput } from './components/listbox/listbox-input.js';
308
311
  export { ListboxItem } from './components/listbox/listbox-item.js';
309
312
  export { ListboxItemContext } from './components/listbox/listbox-item-context.js';
@@ -315,6 +318,7 @@ export { ListboxLabel } from './components/listbox/listbox-label.js';
315
318
  export { ListboxRoot } from './components/listbox/listbox-root.js';
316
319
  export { ListboxRootProvider } from './components/listbox/listbox-root-provider.js';
317
320
  export { ListboxValueText } from './components/listbox/listbox-value-text.js';
321
+ export { listboxAnatomy } from './components/listbox/listbox.anatomy.js';
318
322
  export { useListbox } from './components/listbox/use-listbox.js';
319
323
  export { useListboxContext } from './components/listbox/use-listbox-context.js';
320
324
  export { useListboxItemContext } from './components/listbox/use-listbox-item-context.js';
@@ -737,6 +741,7 @@ export { treeView as TreeView };
737
741
  export { EnvironmentProvider } from './providers/environment/environment-provider.js';
738
742
  export { useEnvironmentContext } from './providers/environment/use-environment-context.js';
739
743
  export { LocaleProvider } from './providers/locale/locale-provider.js';
744
+ export { useCollator } from './providers/locale/use-collator.js';
740
745
  export { useFilter } from './providers/locale/use-filter.js';
741
746
  export { useLocaleContext } from './providers/locale/use-locale-context.js';
742
747
  export { anatomy as accordionAnatomy } from '@zag-js/accordion';
@@ -745,13 +750,11 @@ export { anatomy as avatarAnatomy } from '@zag-js/avatar';
745
750
  export { anatomy as carouselAnatomy } from '@zag-js/carousel';
746
751
  export { anatomy as clipboardAnatomy } from '@zag-js/clipboard';
747
752
  export { anatomy as collapsibleAnatomy } from '@zag-js/collapsible';
748
- export { anatomy as comboboxAnatomy } from '@zag-js/combobox';
749
753
  export { anatomy as dialogAnatomy } from '@zag-js/dialog';
750
754
  export { anatomy as editableAnatomy } from '@zag-js/editable';
751
755
  export { anatomy as fileUploadAnatomy } from '@zag-js/file-upload';
752
756
  export { anatomy as floatingPanelAnatomy } from '@zag-js/floating-panel';
753
757
  export { anatomy as hoverCardAnatomy } from '@zag-js/hover-card';
754
- export { anatomy as listboxAnatomy } from '@zag-js/listbox';
755
758
  export { anatomy as menuAnatomy } from '@zag-js/menu';
756
759
  export { anatomy as numberInputAnatomy } from '@zag-js/number-input';
757
760
  export { anatomy as paginationAnatomy } from '@zag-js/pagination';
@@ -5,6 +5,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
  const environmentProvider = require('./environment/environment-provider.cjs');
6
6
  const useEnvironmentContext = require('./environment/use-environment-context.cjs');
7
7
  const localeProvider = require('./locale/locale-provider.cjs');
8
+ const useCollator = require('./locale/use-collator.cjs');
8
9
  const useFilter = require('./locale/use-filter.cjs');
9
10
  const useLocaleContext = require('./locale/use-locale-context.cjs');
10
11
 
@@ -13,5 +14,6 @@ const useLocaleContext = require('./locale/use-locale-context.cjs');
13
14
  exports.EnvironmentProvider = environmentProvider.EnvironmentProvider;
14
15
  exports.useEnvironmentContext = useEnvironmentContext.useEnvironmentContext;
15
16
  exports.LocaleProvider = localeProvider.LocaleProvider;
17
+ exports.useCollator = useCollator.useCollator;
16
18
  exports.useFilter = useFilter.useFilter;
17
19
  exports.useLocaleContext = useLocaleContext.useLocaleContext;
@@ -1,5 +1,6 @@
1
1
  export { EnvironmentProvider } from './environment/environment-provider.js';
2
2
  export { useEnvironmentContext } from './environment/use-environment-context.js';
3
3
  export { LocaleProvider } from './locale/locale-provider.js';
4
+ export { useCollator } from './locale/use-collator.js';
4
5
  export { useFilter } from './locale/use-filter.js';
5
6
  export { useLocaleContext } from './locale/use-locale-context.js';
@@ -3,11 +3,13 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const localeProvider = require('./locale-provider.cjs');
6
+ const useCollator = require('./use-collator.cjs');
6
7
  const useFilter = require('./use-filter.cjs');
7
8
  const useLocaleContext = require('./use-locale-context.cjs');
8
9
 
9
10
 
10
11
 
11
12
  exports.LocaleProvider = localeProvider.LocaleProvider;
13
+ exports.useCollator = useCollator.useCollator;
12
14
  exports.useFilter = useFilter.useFilter;
13
15
  exports.useLocaleContext = useLocaleContext.useLocaleContext;
@@ -1,3 +1,4 @@
1
1
  export { LocaleProvider, type LocaleProviderProps } from './locale-provider';
2
+ export { useCollator, type UseCollatorProps } from './use-collator';
2
3
  export { useFilter, type UseFilterProps, type UseFilterReturn } from './use-filter';
3
4
  export { useLocaleContext, type UseLocaleContext } from './use-locale-context';
@@ -1,3 +1,4 @@
1
1
  export { LocaleProvider, type LocaleProviderProps } from './locale-provider';
2
+ export { useCollator, type UseCollatorProps } from './use-collator';
2
3
  export { useFilter, type UseFilterProps, type UseFilterReturn } from './use-filter';
3
4
  export { useLocaleContext, type UseLocaleContext } from './use-locale-context';
@@ -1,3 +1,4 @@
1
1
  export { LocaleProvider } from './locale-provider.js';
2
+ export { useCollator } from './use-collator.js';
2
3
  export { useFilter } from './use-filter.js';
3
4
  export { useLocaleContext } from './use-locale-context.js';
@@ -0,0 +1,19 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
+
6
+ const i18nUtils = require('@zag-js/i18n-utils');
7
+ const useLocaleContext = require('./use-locale-context.cjs');
8
+ const react = require('react');
9
+
10
+ function useCollator(props = {}) {
11
+ const env = useLocaleContext.useLocaleContext();
12
+ const locale = props.locale ?? env.locale;
13
+ return react.useMemo(() => {
14
+ const { locale: _, ...options } = props;
15
+ return i18nUtils.createCollator(locale, options);
16
+ }, [locale, props]);
17
+ }
18
+
19
+ exports.useCollator = useCollator;
@@ -0,0 +1,4 @@
1
+ export interface UseCollatorProps extends Intl.CollatorOptions {
2
+ locale?: string;
3
+ }
4
+ export declare function useCollator(props?: UseCollatorProps): Intl.Collator;