@ark-ui/solid 3.13.0 → 4.1.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 (117) hide show
  1. package/dist/cjs/index.js +237 -97
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/index.js +221 -98
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/source/components/accordion/index.js +1 -1
  6. package/dist/source/components/carousel/index.js +1 -1
  7. package/dist/source/components/checkbox/index.js +1 -1
  8. package/dist/source/components/clipboard/index.js +1 -1
  9. package/dist/source/components/collapsible/index.js +1 -1
  10. package/dist/source/components/collection.js +3 -0
  11. package/dist/source/components/color-picker/index.js +2 -1
  12. package/dist/source/components/color-picker/use-color-picker.js +1 -5
  13. package/dist/source/components/combobox/combobox-root.jsx +1 -4
  14. package/dist/source/components/combobox/index.js +2 -1
  15. package/dist/source/components/combobox/use-combobox.js +11 -13
  16. package/dist/source/components/date-picker/index.js +2 -1
  17. package/dist/source/components/date-picker/use-date-picker.js +2 -9
  18. package/dist/source/components/dialog/index.js +1 -1
  19. package/dist/source/components/editable/index.js +1 -2
  20. package/dist/source/components/field/index.js +2 -2
  21. package/dist/source/components/fieldset/index.js +1 -1
  22. package/dist/source/components/file-upload/file-upload-item-preview-image.jsx +5 -2
  23. package/dist/source/components/hover-card/index.js +1 -1
  24. package/dist/source/components/index.js +1 -0
  25. package/dist/source/components/menu/index.js +1 -1
  26. package/dist/source/components/number-input/index.js +1 -1
  27. package/dist/source/components/pagination/index.js +1 -1
  28. package/dist/source/components/pin-input/index.js +1 -1
  29. package/dist/source/components/popover/index.js +1 -1
  30. package/dist/source/components/progress/index.js +1 -1
  31. package/dist/source/components/qr-code/index.js +1 -1
  32. package/dist/source/components/qr-code/qr-code.js +1 -1
  33. package/dist/source/components/radio-group/index.js +1 -1
  34. package/dist/source/components/rating-group/index.js +1 -1
  35. package/dist/source/components/segment-group/index.js +1 -1
  36. package/dist/source/components/select/index.js +2 -1
  37. package/dist/source/components/select/select-root.jsx +1 -4
  38. package/dist/source/components/select/use-select.js +4 -14
  39. package/dist/source/components/signature-pad/index.js +2 -2
  40. package/dist/source/components/slider/index.js +1 -1
  41. package/dist/source/components/splitter/index.js +1 -1
  42. package/dist/source/components/switch/index.js +1 -1
  43. package/dist/source/components/tabs/index.js +1 -1
  44. package/dist/source/components/tags-input/index.js +1 -1
  45. package/dist/source/components/timer/index.js +3 -2
  46. package/dist/source/components/timer/timer.anatomy.js +1 -0
  47. package/dist/source/components/toast/index.js +1 -1
  48. package/dist/source/components/toggle/index.js +7 -0
  49. package/dist/source/components/toggle/toggle-context.jsx +2 -0
  50. package/dist/source/components/toggle/toggle-indicator.jsx +15 -0
  51. package/dist/source/components/toggle/toggle-root.jsx +17 -0
  52. package/dist/source/components/toggle/toggle.anatomy.js +3 -0
  53. package/dist/source/components/toggle/toggle.js +4 -0
  54. package/dist/source/components/toggle/use-toggle-context.js +5 -0
  55. package/dist/source/components/toggle/use-toggle.js +43 -0
  56. package/dist/source/components/toggle-group/index.js +1 -1
  57. package/dist/source/components/tooltip/index.js +1 -1
  58. package/dist/source/components/tree-view/index.js +1 -1
  59. package/dist/types/components/accordion/index.d.ts +1 -1
  60. package/dist/types/components/carousel/index.d.ts +11 -11
  61. package/dist/types/components/checkbox/index.d.ts +8 -8
  62. package/dist/types/components/clipboard/index.d.ts +8 -8
  63. package/dist/types/components/collapsible/index.d.ts +5 -5
  64. package/dist/types/components/collection.d.ts +3 -0
  65. package/dist/types/components/color-picker/color-picker.d.ts +1 -1
  66. package/dist/types/components/color-picker/index.d.ts +3 -2
  67. package/dist/types/components/color-picker/use-color-picker.d.ts +2 -6
  68. package/dist/types/components/combobox/combobox.d.ts +1 -1
  69. package/dist/types/components/combobox/index.d.ts +17 -17
  70. package/dist/types/components/combobox/use-combobox.d.ts +6 -2
  71. package/dist/types/components/date-picker/date-picker.d.ts +26 -26
  72. package/dist/types/components/date-picker/index.d.ts +28 -27
  73. package/dist/types/components/date-picker/use-date-picker.d.ts +2 -18
  74. package/dist/types/components/dialog/dialog.d.ts +9 -9
  75. package/dist/types/components/dialog/index.d.ts +10 -10
  76. package/dist/types/components/editable/index.d.ts +12 -15
  77. package/dist/types/components/field/index.d.ts +2 -2
  78. package/dist/types/components/fieldset/index.d.ts +1 -1
  79. package/dist/types/components/hover-card/index.d.ts +8 -8
  80. package/dist/types/components/index.d.ts +1 -0
  81. package/dist/types/components/menu/index.d.ts +20 -20
  82. package/dist/types/components/number-input/index.d.ts +1 -1
  83. package/dist/types/components/pagination/index.d.ts +7 -7
  84. package/dist/types/components/pin-input/index.d.ts +7 -7
  85. package/dist/types/components/popover/index.d.ts +13 -13
  86. package/dist/types/components/progress/index.d.ts +11 -11
  87. package/dist/types/components/qr-code/index.d.ts +6 -6
  88. package/dist/types/components/qr-code/qr-code.d.ts +1 -1
  89. package/dist/types/components/radio-group/index.d.ts +9 -9
  90. package/dist/types/components/rating-group/index.d.ts +7 -7
  91. package/dist/types/components/segment-group/index.d.ts +9 -9
  92. package/dist/types/components/select/index.d.ts +19 -19
  93. package/dist/types/components/select/select.d.ts +1 -1
  94. package/dist/types/components/select/use-select.d.ts +6 -2
  95. package/dist/types/components/signature-pad/index.d.ts +9 -9
  96. package/dist/types/components/slider/index.d.ts +12 -12
  97. package/dist/types/components/splitter/index.d.ts +5 -5
  98. package/dist/types/components/switch/index.d.ts +7 -7
  99. package/dist/types/components/tabs/index.d.ts +7 -7
  100. package/dist/types/components/tags-input/index.d.ts +13 -13
  101. package/dist/types/components/timer/index.d.ts +3 -2
  102. package/dist/types/components/timer/timer.anatomy.d.ts +1 -0
  103. package/dist/types/components/timer/timer.d.ts +1 -0
  104. package/dist/types/components/toast/index.d.ts +7 -7
  105. package/dist/types/components/toggle/index.d.ts +7 -0
  106. package/dist/types/components/toggle/toggle-context.d.ts +6 -0
  107. package/dist/types/components/toggle/toggle-indicator.d.ts +8 -0
  108. package/dist/types/components/toggle/toggle-root.d.ts +7 -0
  109. package/dist/types/components/toggle/toggle.anatomy.d.ts +2 -0
  110. package/dist/types/components/toggle/toggle.d.ts +4 -0
  111. package/dist/types/components/toggle/use-toggle-context.d.ts +4 -0
  112. package/dist/types/components/toggle/use-toggle.d.ts +36 -0
  113. package/dist/types/components/toggle-group/index.d.ts +4 -4
  114. package/dist/types/components/tooltip/index.d.ts +8 -8
  115. package/dist/types/components/tree-view/index.d.ts +14 -14
  116. package/package.json +56 -55
  117. /package/dist/source/components/fieldset/{fieldset.jsx → fieldset.js} +0 -0
package/dist/cjs/index.js CHANGED
@@ -11,6 +11,7 @@ var checkbox$1 = require('@zag-js/checkbox');
11
11
  var clipboard$1 = require('@zag-js/clipboard');
12
12
  var colorPicker$1 = require('@zag-js/color-picker');
13
13
  var presence = require('@zag-js/presence');
14
+ var collection = require('@zag-js/collection');
14
15
  var combobox$1 = require('@zag-js/combobox');
15
16
  var datePicker$1 = require('@zag-js/date-picker');
16
17
  var dialog$1 = require('@zag-js/dialog');
@@ -210,7 +211,7 @@ const [EnvironmentContextProvider, useEnvironmentContext] = createContext({
210
211
  })
211
212
  });
212
213
 
213
- var _tmpl$$7 = /*#__PURE__*/web.template(`<span hidden>`);
214
+ var _tmpl$$8 = /*#__PURE__*/web.template(`<span hidden>`);
214
215
  const EnvironmentProvider = props => {
215
216
  const [spanRef, setSpanRef] = solidJs.createSignal();
216
217
  const getRootNode = () => runIfFn(props.value) ?? spanRef()?.ownerDocument ?? document;
@@ -227,7 +228,7 @@ const EnvironmentProvider = props => {
227
228
  return !props.value;
228
229
  },
229
230
  get children() {
230
- var _el$ = _tmpl$$7();
231
+ var _el$ = _tmpl$$8();
231
232
  web.use(setSpanRef, _el$);
232
233
  return _el$;
233
234
  }
@@ -789,12 +790,6 @@ const FieldLabel = props => {
789
790
  return web.createComponent(ark.label, mergedProps);
790
791
  };
791
792
 
792
- const FieldSelect = props => {
793
- const field = useFieldContext();
794
- const mergedProps = solid.mergeProps(() => field?.().getSelectProps(), props);
795
- return web.createComponent(ark.select, mergedProps);
796
- };
797
-
798
793
  const [FieldsetProvider, useFieldsetContext] = createContext({
799
794
  hookName: 'useFieldsetContext',
800
795
  providerName: '<FieldsetProvider />',
@@ -822,8 +817,14 @@ const FieldsetHelperText = props => {
822
817
  return web.createComponent(ark.span, mergedProps);
823
818
  };
824
819
 
820
+ const FieldsetLegend = props => {
821
+ const fieldset = useFieldsetContext();
822
+ const mergedProps = solid.mergeProps(() => fieldset().getLegendProps(), props);
823
+ return web.createComponent(ark.legend, mergedProps);
824
+ };
825
+
825
826
  const fieldsetAnatomy = anatomy.createAnatomy('fieldset').parts('root', 'errorText', 'helperText', 'legend');
826
- const parts$2 = fieldsetAnatomy.build();
827
+ const parts$3 = fieldsetAnatomy.build();
827
828
 
828
829
  const useFieldset = props => {
829
830
  const {
@@ -843,24 +844,24 @@ const useFieldset = props => {
843
844
  if (hasErrorText() && invalid) labelIds.push(errorTextId);
844
845
  if (hasHelperText()) labelIds.push(helperTextId);
845
846
  const getRootProps = () => ({
846
- ...parts$2.root.attrs,
847
+ ...parts$3.root.attrs,
847
848
  disabled,
848
849
  'data-disabled': dataAttr(disabled),
849
850
  'data-invalid': dataAttr(invalid),
850
851
  'aria-describedby': labelIds.join(' ') || undefined
851
852
  });
852
853
  const getLegendProps = () => ({
853
- ...parts$2.legend.attrs,
854
+ ...parts$3.legend.attrs,
854
855
  'data-disabled': dataAttr(disabled),
855
856
  'data-invalid': dataAttr(invalid)
856
857
  });
857
858
  const getHelperTextProps = () => ({
858
859
  id: helperTextId,
859
- ...parts$2.helperText.attrs
860
+ ...parts$3.helperText.attrs
860
861
  });
861
862
  const getErrorTextProps = () => ({
862
863
  id: errorTextId,
863
- ...parts$2.errorText.attrs,
864
+ ...parts$3.errorText.attrs,
864
865
  'aria-live': 'polite'
865
866
  });
866
867
  return solidJs.createMemo(() => ({
@@ -903,12 +904,6 @@ const FieldsetRootProvider = props => {
903
904
  });
904
905
  };
905
906
 
906
- const FieldsetLegend = props => {
907
- const fieldset = useFieldsetContext();
908
- const mergedProps = solid.mergeProps(() => fieldset().getLegendProps(), props);
909
- return web.createComponent(ark.legend, mergedProps);
910
- };
911
-
912
907
  var fieldset = /*#__PURE__*/Object.freeze({
913
908
  __proto__: null,
914
909
  Context: FieldsetContext,
@@ -920,7 +915,7 @@ var fieldset = /*#__PURE__*/Object.freeze({
920
915
  });
921
916
 
922
917
  const fieldAnatomy = anatomy.createAnatomy('field').parts('root', 'errorText', 'helperText', 'input', 'label', 'select', 'textarea');
923
- const parts$1 = fieldAnatomy.build();
918
+ const parts$2 = fieldAnatomy.build();
924
919
 
925
920
  const useField = props => {
926
921
  const fieldset = useFieldsetContext();
@@ -943,7 +938,7 @@ const useField = props => {
943
938
  return;
944
939
  });
945
940
  const getRootProps = () => ({
946
- ...parts$1.root.attrs,
941
+ ...parts$2.root.attrs,
947
942
  id: rootId,
948
943
  role: 'group',
949
944
  'data-disabled': domQuery.dataAttr(disabled),
@@ -951,7 +946,7 @@ const useField = props => {
951
946
  'data-readonly': domQuery.dataAttr(readOnly)
952
947
  });
953
948
  const getLabelProps = () => ({
954
- ...parts$1.label.attrs,
949
+ ...parts$2.label.attrs,
955
950
  id: labelId,
956
951
  'data-disabled': domQuery.dataAttr(disabled),
957
952
  'data-invalid': domQuery.dataAttr(invalid),
@@ -974,23 +969,23 @@ const useField = props => {
974
969
  });
975
970
  const getInputProps = () => ({
976
971
  ...getControlProps(),
977
- ...parts$1.input.attrs
972
+ ...parts$2.input.attrs
978
973
  });
979
974
  const getTextareaProps = () => ({
980
975
  ...getControlProps(),
981
- ...parts$1.textarea.attrs
976
+ ...parts$2.textarea.attrs
982
977
  });
983
978
  const getSelectProps = () => ({
984
979
  ...getControlProps(),
985
- ...parts$1.select.attrs
980
+ ...parts$2.select.attrs
986
981
  });
987
982
  const getHelperTextProps = () => ({
988
983
  id: helperTextId,
989
- ...parts$1.helperText.attrs
984
+ ...parts$2.helperText.attrs
990
985
  });
991
986
  const getErrorTextProps = () => ({
992
987
  id: errorTextId,
993
- ...parts$1.errorText.attrs,
988
+ ...parts$2.errorText.attrs,
994
989
  'aria-live': 'polite'
995
990
  });
996
991
  return solidJs.createMemo(() => ({
@@ -1043,6 +1038,12 @@ const FieldRootProvider = props => {
1043
1038
  });
1044
1039
  };
1045
1040
 
1041
+ const FieldSelect = props => {
1042
+ const field = useFieldContext();
1043
+ const mergedProps = solid.mergeProps(() => field?.().getSelectProps(), props);
1044
+ return web.createComponent(ark.select, mergedProps);
1045
+ };
1046
+
1046
1047
  const FieldTextarea = props => {
1047
1048
  const field = useFieldContext();
1048
1049
  const mergedProps = solid.mergeProps(() => field?.().getTextareaProps(), props);
@@ -1519,8 +1520,8 @@ const useColorPicker = props => {
1519
1520
  getRootNode: environment().getRootNode,
1520
1521
  open: props.defaultOpen,
1521
1522
  'open.controlled': props.open !== undefined,
1522
- ...props,
1523
- value: props.value ? colorPicker__namespace.parse(props.value) : props.defaultValue ? colorPicker__namespace.parse(props.defaultValue) : undefined
1523
+ value: props.defaultValue,
1524
+ ...props
1524
1525
  }));
1525
1526
  const [state, send] = solid.useMachine(colorPicker__namespace.machine(context()), {
1526
1527
  context
@@ -1709,6 +1710,28 @@ var colorPicker = /*#__PURE__*/Object.freeze({
1709
1710
  View: ColorPickerView
1710
1711
  });
1711
1712
 
1713
+ // src/global.ts
1714
+ function getGlobal() {
1715
+ if (typeof globalThis !== "undefined") return globalThis;
1716
+ if (typeof self !== "undefined") return self;
1717
+ if (typeof window !== "undefined") return window;
1718
+ if (typeof global !== "undefined") return global;
1719
+ }
1720
+ function makeGlobal(key, value) {
1721
+ const g = getGlobal();
1722
+ if (!g) return value();
1723
+ g[key] || (g[key] = value());
1724
+ return g[key];
1725
+ }
1726
+ makeGlobal("__zag__proxyStateMap", () => /* @__PURE__ */ new WeakMap());
1727
+ var refSet = makeGlobal("__zag__refSet", () => /* @__PURE__ */ new WeakSet());
1728
+ function ref(obj) {
1729
+ refSet.add(obj);
1730
+ return obj;
1731
+ }
1732
+
1733
+ const createListCollection = options => ref(new collection.ListCollection(options));
1734
+
1712
1735
  // biome-ignore lint/suspicious/noExplicitAny: <explanation>
1713
1736
  const [ComboboxProvider, useComboboxContext] = createContext({
1714
1737
  hookName: 'useComboboxContext',
@@ -1854,15 +1877,11 @@ const ComboboxPositioner = props => {
1854
1877
  };
1855
1878
 
1856
1879
  const useCombobox = props => {
1857
- const [collectionOptions, comboboxProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
1858
- const collection = () => combobox__namespace.collection({
1859
- ...collectionOptions
1860
- });
1861
1880
  const locale = useLocaleContext();
1862
1881
  const environment = useEnvironmentContext();
1863
1882
  const id = solidJs.createUniqueId();
1864
1883
  const field = useFieldContext();
1865
- const context = solidJs.createMemo(() => ({
1884
+ const initialContext = solidJs.createMemo(() => ({
1866
1885
  id,
1867
1886
  ids: {
1868
1887
  label: field?.().ids.label,
@@ -1872,23 +1891,31 @@ const useCombobox = props => {
1872
1891
  readOnly: field?.().readOnly,
1873
1892
  required: field?.().required,
1874
1893
  invalid: field?.().invalid,
1875
- collection: collection(),
1876
1894
  dir: locale().dir,
1877
1895
  getRootNode: environment().getRootNode,
1878
1896
  open: props.defaultOpen,
1879
1897
  value: props.defaultValue,
1880
1898
  'open.controlled': props.open !== undefined,
1881
- ...comboboxProps
1899
+ ...props
1882
1900
  }));
1883
- const [state, send] = solid.useMachine(combobox__namespace.machine(context()), {
1901
+ const context = solidJs.createMemo(() => {
1902
+ const [, restProps] = solidJs.splitProps(initialContext(), ['collection']);
1903
+ return restProps;
1904
+ });
1905
+ const [state, send, service] = solid.useMachine(combobox__namespace.machine(initialContext()), {
1884
1906
  context
1885
1907
  });
1908
+ solidJs.createEffect(() => {
1909
+ service.setContext({
1910
+ collection: props.collection
1911
+ });
1912
+ });
1886
1913
  return solidJs.createMemo(() => combobox__namespace.connect(state, send, solid.normalizeProps));
1887
1914
  };
1888
1915
 
1889
1916
  const ComboboxRoot = props => {
1890
1917
  const [presenceProps, comboboxProps] = splitPresenceProps(props);
1891
- const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, ['allowCustomValue', 'autoFocus', 'closeOnSelect', 'composite', 'defaultOpen', 'defaultValue', 'disabled', 'disableLayer', 'form', 'getSelectionValue', 'highlightedValue', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onOpenChange', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'openOnChange', 'openOnClick', 'openOnKeyPress', 'placeholder', 'positioning', 'readOnly', 'required', 'scrollToIndexFn', 'selectionBehavior', 'translations', 'value']);
1918
+ const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, ['allowCustomValue', 'autoFocus', 'closeOnSelect', 'collection', 'composite', 'defaultOpen', 'defaultValue', 'disabled', 'disableLayer', 'form', 'getSelectionValue', 'highlightedValue', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onOpenChange', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'openOnChange', 'openOnClick', 'openOnKeyPress', 'placeholder', 'positioning', 'readOnly', 'required', 'scrollToIndexFn', 'selectionBehavior', 'translations', 'value']);
1892
1919
  const api = useCombobox(useComboboxProps);
1893
1920
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
1894
1921
  present: api().open
@@ -2003,7 +2030,7 @@ const DatePickerLabel = props => {
2003
2030
  return web.createComponent(ark.label, mergedProps);
2004
2031
  };
2005
2032
 
2006
- var _tmpl$$6 = /*#__PURE__*/web.template(`<option>`);
2033
+ var _tmpl$$7 = /*#__PURE__*/web.template(`<option>`);
2007
2034
  const DatePickerMonthSelect = props => {
2008
2035
  const api = useDatePickerContext();
2009
2036
  const mergedProps = solid.mergeProps(() => api().getMonthSelectProps(), props);
@@ -2014,7 +2041,7 @@ const DatePickerMonthSelect = props => {
2014
2041
  return api().getMonths();
2015
2042
  },
2016
2043
  children: month => (() => {
2017
- var _el$ = _tmpl$$6();
2044
+ var _el$ = _tmpl$$7();
2018
2045
  web.insert(_el$, () => month.label);
2019
2046
  web.effect(() => _el$.value = month.value);
2020
2047
  return _el$;
@@ -2086,13 +2113,10 @@ const useDatePicker = props => {
2086
2113
  id,
2087
2114
  dir: locale().dir,
2088
2115
  getRootNode: environment().getRootNode,
2089
- 'open.controlled': props.open !== undefined,
2090
2116
  open: props.defaultOpen,
2091
- ...props,
2092
- focusedValue: props.focusedValue ? datePicker__namespace.parse(props.focusedValue) : undefined,
2093
- value: props.value ? datePicker__namespace.parse(props.value) : props.defaultValue ? datePicker__namespace.parse(props.defaultValue) : undefined,
2094
- max: props.max ? datePicker__namespace.parse(props.max) : undefined,
2095
- min: props.min ? datePicker__namespace.parse(props.min) : undefined
2117
+ 'open.controlled': props.open !== undefined,
2118
+ value: props.defaultValue,
2119
+ ...props
2096
2120
  }));
2097
2121
  const [state, send] = solid.useMachine(datePicker__namespace.machine(context()), {
2098
2122
  context
@@ -2282,7 +2306,7 @@ const DatePickerViewTrigger = props => {
2282
2306
  return web.createComponent(ark.button, mergedProps);
2283
2307
  };
2284
2308
 
2285
- var _tmpl$$5 = /*#__PURE__*/web.template(`<option>`);
2309
+ var _tmpl$$6 = /*#__PURE__*/web.template(`<option>`);
2286
2310
  const DatePickerYearSelect = props => {
2287
2311
  const api = useDatePickerContext();
2288
2312
  const mergedProps = solid.mergeProps(() => api().getYearSelectProps(), props);
@@ -2293,7 +2317,7 @@ const DatePickerYearSelect = props => {
2293
2317
  return api().getYears();
2294
2318
  },
2295
2319
  children: year => (() => {
2296
- var _el$ = _tmpl$$5();
2320
+ var _el$ = _tmpl$$6();
2297
2321
  web.insert(_el$, () => year().label);
2298
2322
  web.effect(() => _el$.value = year().value);
2299
2323
  return _el$;
@@ -2707,7 +2731,10 @@ const FileUploadItemPreviewImage = props => {
2707
2731
  const fileUpload = useFileUploadContext();
2708
2732
  const itemProps = useFileUploadItemPropsContext();
2709
2733
  const [url, setUrl] = solidJs.createSignal('');
2710
- fileUpload().createFileUrl(itemProps.file, url => setUrl(url));
2734
+ solidJs.createEffect(() => {
2735
+ const cleanup = fileUpload().createFileUrl(itemProps.file, url => setUrl(url));
2736
+ solidJs.onCleanup(cleanup);
2737
+ });
2711
2738
  const mergedProps = solid.mergeProps(fileUpload().getItemPreviewImageProps({
2712
2739
  ...itemProps,
2713
2740
  url: url()
@@ -2855,7 +2882,7 @@ const FrameContent = props => {
2855
2882
  return children;
2856
2883
  };
2857
2884
 
2858
- var _tmpl$$4 = /*#__PURE__*/web.template(`<iframe>`);
2885
+ var _tmpl$$5 = /*#__PURE__*/web.template(`<iframe>`);
2859
2886
  const resetStyle = '<style>*,*::before,*::after { margin: 0; padding: 0; box-sizing: border-box; }</style>';
2860
2887
  const initialSrcDoc = `<html><head>${resetStyle}</head><body><div class="frame-root"></div></body></html>`;
2861
2888
  function getMountNode(frame) {
@@ -2903,7 +2930,7 @@ const Frame = props => {
2903
2930
  return web.createComponent(EnvironmentProvider, {
2904
2931
  value: () => frameRef()?.contentDocument ?? document,
2905
2932
  get children() {
2906
- var _el$ = _tmpl$$4();
2933
+ var _el$ = _tmpl$$5();
2907
2934
  var _ref$ = composeRefs(setFrameRef, localProps.ref);
2908
2935
  typeof _ref$ === "function" && web.use(_ref$, _el$);
2909
2936
  web.spread(_el$, localProps, false, true);
@@ -2954,7 +2981,7 @@ const useHighlight = props => {
2954
2981
  return solidJs.createMemo(() => highlightWord.highlightWord(props));
2955
2982
  };
2956
2983
 
2957
- var _tmpl$$3 = /*#__PURE__*/web.template(`<mark>`);
2984
+ var _tmpl$$4 = /*#__PURE__*/web.template(`<mark>`);
2958
2985
  const Highlight = props => {
2959
2986
  if (typeof props.text !== 'string') {
2960
2987
  throw new Error('[ark-ui/highlight] text must be a string');
@@ -2973,7 +3000,7 @@ const Highlight = props => {
2973
3000
  return chunk.text;
2974
3001
  },
2975
3002
  get children() {
2976
- var _el$ = _tmpl$$3();
3003
+ var _el$ = _tmpl$$4();
2977
3004
  web.spread(_el$, localProps, false, true);
2978
3005
  web.insert(_el$, () => chunk.text);
2979
3006
  return _el$;
@@ -4106,10 +4133,10 @@ const QrCodeRootProvider = props => {
4106
4133
 
4107
4134
  var qrCode = /*#__PURE__*/Object.freeze({
4108
4135
  __proto__: null,
4136
+ Context: QrCodeContext,
4109
4137
  Frame: QrCodeFrame,
4110
4138
  Overlay: QrCodeOverlay,
4111
4139
  Pattern: QrCodePattern,
4112
- QrCodeContext: QrCodeContext,
4113
4140
  Root: QrCodeRoot,
4114
4141
  RootProvider: QrCodeRootProvider
4115
4142
  });
@@ -4360,11 +4387,11 @@ const [SegmentGroupProvider, useSegmentGroupContext] = createContext({
4360
4387
  const SegmentGroupContext = props => props.children(useSegmentGroupContext());
4361
4388
 
4362
4389
  const segmentGroupAnatomy = radio.anatomy.rename('segment-group');
4363
- const parts = segmentGroupAnatomy.build();
4390
+ const parts$1 = segmentGroupAnatomy.build();
4364
4391
 
4365
4392
  const SegmentGroupIndicator = props => {
4366
4393
  const segmentGroup = useSegmentGroupContext();
4367
- const mergedProps = solid.mergeProps(() => segmentGroup().getIndicatorProps(), parts.indicator.attrs, props);
4394
+ const mergedProps = solid.mergeProps(() => segmentGroup().getIndicatorProps(), parts$1.indicator.attrs, props);
4368
4395
  return web.createComponent(ark.div, mergedProps);
4369
4396
  };
4370
4397
 
@@ -4381,7 +4408,7 @@ const [SegmentGroupItemPropsProvider, useSegmentGroupItemPropsContext] = createC
4381
4408
  const SegmentGroupItem = props => {
4382
4409
  const [itemProps, localProps] = createSplitProps()(props, ['value', 'disabled', 'invalid']);
4383
4410
  const segmentGroup = useSegmentGroupContext();
4384
- const mergedProps = solid.mergeProps(() => segmentGroup().getItemProps(itemProps), parts.item.attrs, localProps);
4411
+ const mergedProps = solid.mergeProps(() => segmentGroup().getItemProps(itemProps), parts$1.item.attrs, localProps);
4385
4412
  const itemState = solidJs.createMemo(() => segmentGroup().getItemState(itemProps));
4386
4413
  return web.createComponent(SegmentGroupItemPropsProvider, {
4387
4414
  value: itemProps,
@@ -4401,7 +4428,7 @@ const SegmentGroupItemContext = props => props.children(useSegmentGroupItemConte
4401
4428
  const SegmentGroupItemControl = props => {
4402
4429
  const segmentGroup = useSegmentGroupContext();
4403
4430
  const itemProps = useSegmentGroupItemPropsContext();
4404
- const mergedProps = solid.mergeProps(() => segmentGroup().getItemControlProps(itemProps), parts.itemControl.attrs, props);
4431
+ const mergedProps = solid.mergeProps(() => segmentGroup().getItemControlProps(itemProps), parts$1.itemControl.attrs, props);
4405
4432
  return web.createComponent(ark.div, mergedProps);
4406
4433
  };
4407
4434
 
@@ -4415,13 +4442,13 @@ const SegmentGroupItemHiddenInput = props => {
4415
4442
  const SegmentGroupItemText = props => {
4416
4443
  const segmentGroup = useSegmentGroupContext();
4417
4444
  const itemProps = useSegmentGroupItemPropsContext();
4418
- const mergedProps = solid.mergeProps(() => segmentGroup().getItemTextProps(itemProps), parts.itemText.attrs, props);
4445
+ const mergedProps = solid.mergeProps(() => segmentGroup().getItemTextProps(itemProps), parts$1.itemText.attrs, props);
4419
4446
  return web.createComponent(ark.span, mergedProps);
4420
4447
  };
4421
4448
 
4422
4449
  const SegmentGroupLabel = props => {
4423
4450
  const segmentGroup = useSegmentGroupContext();
4424
- const mergedProps = solid.mergeProps(() => segmentGroup().getLabelProps(), parts.label.attrs, props);
4451
+ const mergedProps = solid.mergeProps(() => segmentGroup().getLabelProps(), parts$1.label.attrs, props);
4425
4452
  return web.createComponent(ark.label, mergedProps);
4426
4453
  };
4427
4454
 
@@ -4445,7 +4472,7 @@ const useSegmentGroup = props => {
4445
4472
  const SegmentGroupRoot = props => {
4446
4473
  const [useSegmentGroupProps, localProps] = createSplitProps()(props, ['defaultValue', 'disabled', 'form', 'id', 'ids', 'name', 'onValueChange', 'orientation', 'readOnly', 'value']);
4447
4474
  const segmentGroup = useSegmentGroup(useSegmentGroupProps);
4448
- const mergedProps = solid.mergeProps(() => segmentGroup().getRootProps(), parts.root.attrs, localProps);
4475
+ const mergedProps = solid.mergeProps(() => segmentGroup().getRootProps(), parts$1.root.attrs, localProps);
4449
4476
  return web.createComponent(SegmentGroupProvider, {
4450
4477
  value: segmentGroup,
4451
4478
  get children() {
@@ -4458,7 +4485,7 @@ const SegmentGroupRootProvider = props => {
4458
4485
  const [{
4459
4486
  value: segmentGroup
4460
4487
  }, localProps] = createSplitProps()(props, ['value']);
4461
- const mergedProps = solid.mergeProps(() => segmentGroup().getRootProps(), parts.root.attrs, localProps);
4488
+ const mergedProps = solid.mergeProps(() => segmentGroup().getRootProps(), parts$1.root.attrs, localProps);
4462
4489
  return web.createComponent(SegmentGroupProvider, {
4463
4490
  value: segmentGroup,
4464
4491
  get children() {
@@ -4515,7 +4542,7 @@ const SelectControl = props => {
4515
4542
  return web.createComponent(ark.div, mergedProps);
4516
4543
  };
4517
4544
 
4518
- var _tmpl$$2 = /*#__PURE__*/web.template(`<option value="">`),
4545
+ var _tmpl$$3 = /*#__PURE__*/web.template(`<option value="">`),
4519
4546
  _tmpl$2$1 = /*#__PURE__*/web.template(`<option>`);
4520
4547
  const SelectHiddenSelect = props => {
4521
4548
  const select = useSelectContext();
@@ -4533,7 +4560,7 @@ const SelectHiddenSelect = props => {
4533
4560
  return isValueEmpty();
4534
4561
  },
4535
4562
  get children() {
4536
- return _tmpl$$2();
4563
+ return _tmpl$$3();
4537
4564
  }
4538
4565
  }), web.createComponent(solidJs.Index, {
4539
4566
  get each() {
@@ -4656,10 +4683,6 @@ const SelectPositioner = props => {
4656
4683
  };
4657
4684
 
4658
4685
  const useSelect = props => {
4659
- const [collectionOptions, selectProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
4660
- const collection = solidJs.createMemo(() => select__namespace.collection({
4661
- ...collectionOptions
4662
- }));
4663
4686
  const locale = useLocaleContext();
4664
4687
  const environment = useEnvironmentContext();
4665
4688
  const id = solidJs.createUniqueId();
@@ -4674,31 +4697,31 @@ const useSelect = props => {
4674
4697
  readOnly: field?.().readOnly,
4675
4698
  invalid: field?.().invalid,
4676
4699
  required: field?.().required,
4677
- collection: collection(),
4678
4700
  dir: locale().dir,
4679
4701
  getRootNode: environment().getRootNode,
4680
4702
  open: props.defaultOpen,
4681
4703
  value: props.defaultValue,
4682
4704
  'open.controlled': props.open !== undefined,
4683
- ...selectProps
4705
+ ...props
4684
4706
  }));
4685
4707
  const context = solidJs.createMemo(() => {
4686
4708
  const [, restProps] = solidJs.splitProps(initialContext(), ['collection']);
4687
4709
  return restProps;
4688
4710
  });
4689
- const [state, send] = solid.useMachine(select__namespace.machine(initialContext()), {
4711
+ const [state, send, service] = solid.useMachine(select__namespace.machine(initialContext()), {
4690
4712
  context
4691
4713
  });
4692
- const api = solidJs.createMemo(() => select__namespace.connect(state, send, solid.normalizeProps));
4693
4714
  solidJs.createEffect(() => {
4694
- api().setCollection(collection());
4715
+ service.setContext({
4716
+ collection: props.collection
4717
+ });
4695
4718
  });
4696
- return api;
4719
+ return solidJs.createMemo(() => select__namespace.connect(state, send, solid.normalizeProps));
4697
4720
  };
4698
4721
 
4699
4722
  const SelectRoot = props => {
4700
4723
  const [presenceProps, selectProps] = splitPresenceProps(props);
4701
- const [useSelectProps, localProps] = createSplitProps()(selectProps, ['closeOnSelect', 'composite', 'defaultOpen', 'defaultValue', 'deselectable', 'disabled', 'form', 'highlightedValue', 'id', 'ids', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'positioning', 'readOnly', 'required', 'scrollToIndexFn', 'value']);
4724
+ const [useSelectProps, localProps] = createSplitProps()(selectProps, ['closeOnSelect', 'composite', 'collection', 'defaultOpen', 'defaultValue', 'deselectable', 'disabled', 'form', 'highlightedValue', 'id', 'ids', 'invalid', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'positioning', 'readOnly', 'required', 'scrollToIndexFn', 'value']);
4702
4725
  const select = useSelect(useSelectProps);
4703
4726
  const presenceApi = usePresence(solid.mergeProps(() => ({
4704
4727
  present: select().open
@@ -4803,12 +4826,6 @@ const SignaturePadGuide = props => {
4803
4826
  return web.createComponent(ark.div, mergedProps);
4804
4827
  };
4805
4828
 
4806
- const SignaturePadLabel = props => {
4807
- const signaturePad = useSignaturePadContext();
4808
- const mergedProps = solid.mergeProps(() => signaturePad().getLabelProps(), props);
4809
- return web.createComponent(ark.label, mergedProps);
4810
- };
4811
-
4812
4829
  const SignaturePadHiddenInput = props => {
4813
4830
  const [hiddenInputProps, localProps] = createSplitProps()(props, ['value']);
4814
4831
  const signaturePad = useSignaturePadContext();
@@ -4821,6 +4838,12 @@ const SignaturePadHiddenInput = props => {
4821
4838
  }, mergedProps));
4822
4839
  };
4823
4840
 
4841
+ const SignaturePadLabel = props => {
4842
+ const signaturePad = useSignaturePadContext();
4843
+ const mergedProps = solid.mergeProps(() => signaturePad().getLabelProps(), props);
4844
+ return web.createComponent(ark.label, mergedProps);
4845
+ };
4846
+
4824
4847
  const useSignaturePad = props => {
4825
4848
  const locale = useLocaleContext();
4826
4849
  const environment = useEnvironmentContext();
@@ -4870,14 +4893,14 @@ const SignaturePadRootProvider = props => {
4870
4893
  });
4871
4894
  };
4872
4895
 
4873
- var _tmpl$$1 = /*#__PURE__*/web.template(`<title>Signature`),
4896
+ var _tmpl$$2 = /*#__PURE__*/web.template(`<title>Signature`),
4874
4897
  _tmpl$2 = /*#__PURE__*/web.template(`<svg><path></svg>`, false, true);
4875
4898
  const SignaturePadSegment = props => {
4876
4899
  const signaturePad = useSignaturePadContext();
4877
4900
  const mergedProps = solid.mergeProps(() => signaturePad().getSegmentProps(), props);
4878
4901
  return web.createComponent(ark.svg, web.mergeProps(mergedProps, {
4879
4902
  get children() {
4880
- return [_tmpl$$1(), web.createComponent(solidJs.For, {
4903
+ return [_tmpl$$2(), web.createComponent(solidJs.For, {
4881
4904
  get each() {
4882
4905
  return signaturePad().paths;
4883
4906
  },
@@ -5868,20 +5891,8 @@ const TimerActionTrigger = props => {
5868
5891
  return web.createComponent(ark.button, mergedProps);
5869
5892
  };
5870
5893
 
5871
- const TimerArea = props => {
5872
- const timer = useTimerContext();
5873
- const mergedProps = solid.mergeProps(() => timer().getAreaProps(), props);
5874
- return web.createComponent(ark.div, mergedProps);
5875
- };
5876
-
5877
5894
  const TimerContext = props => props.children(useTimerContext());
5878
5895
 
5879
- const TimerControl = props => {
5880
- const timer = useTimerContext();
5881
- const mergedProps = solid.mergeProps(() => timer().getControlProps(), props);
5882
- return web.createComponent(ark.div, mergedProps);
5883
- };
5884
-
5885
5896
  const TimerItem = props => {
5886
5897
  const [itemProps, localProps] = createSplitProps()(props, ['type']);
5887
5898
  const timer = useTimerContext();
@@ -5893,6 +5904,18 @@ const TimerItem = props => {
5893
5904
  }));
5894
5905
  };
5895
5906
 
5907
+ const TimerArea = props => {
5908
+ const timer = useTimerContext();
5909
+ const mergedProps = solid.mergeProps(() => timer().getAreaProps(), props);
5910
+ return web.createComponent(ark.div, mergedProps);
5911
+ };
5912
+
5913
+ const TimerControl = props => {
5914
+ const timer = useTimerContext();
5915
+ const mergedProps = solid.mergeProps(() => timer().getControlProps(), props);
5916
+ return web.createComponent(ark.div, mergedProps);
5917
+ };
5918
+
5896
5919
  const useTimer = props => {
5897
5920
  const env = useEnvironmentContext();
5898
5921
  const id = solidJs.createUniqueId();
@@ -5987,12 +6010,12 @@ const ToastDescription = props => {
5987
6010
  return web.createComponent(ark.div, mergedProps);
5988
6011
  };
5989
6012
 
5990
- var _tmpl$ = /*#__PURE__*/web.template(`<div><div></div><div>`);
6013
+ var _tmpl$$1 = /*#__PURE__*/web.template(`<div><div></div><div>`);
5991
6014
  const ToastRoot = props => {
5992
6015
  const toast = useToastContext();
5993
6016
  const mergedProps = solid.mergeProps(() => toast().getRootProps(), props);
5994
6017
  return (() => {
5995
- var _el$ = _tmpl$(),
6018
+ var _el$ = _tmpl$$1(),
5996
6019
  _el$2 = _el$.firstChild,
5997
6020
  _el$3 = _el$2.nextSibling;
5998
6021
  web.spread(_el$, mergedProps, false, true);
@@ -6054,6 +6077,103 @@ var toast = /*#__PURE__*/Object.freeze({
6054
6077
  Title: ToastTitle
6055
6078
  });
6056
6079
 
6080
+ const [ToggleProvider, useToggleContext] = createContext({
6081
+ hookName: 'useToggleContext',
6082
+ providerName: '<ToggleProvider />'
6083
+ });
6084
+
6085
+ const ToggleContext = props => props.children(useToggleContext());
6086
+
6087
+ const ToggleIndicator = props => {
6088
+ const {
6089
+ children,
6090
+ fallback,
6091
+ ...restProps
6092
+ } = props;
6093
+ const toggle = useToggleContext();
6094
+ const mergedProps = solid.mergeProps(() => toggle().getIndicatorProps(), restProps);
6095
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
6096
+ get children() {
6097
+ return web.createComponent(solidJs.Show, {
6098
+ get when() {
6099
+ return toggle().pressed;
6100
+ },
6101
+ fallback: fallback,
6102
+ children: children
6103
+ });
6104
+ }
6105
+ }));
6106
+ };
6107
+
6108
+ const toggleAnatomy = anatomy.createAnatomy('toggle', ['root', 'indicator']);
6109
+ const parts = toggleAnatomy.build();
6110
+
6111
+ function useToggle(props) {
6112
+ const {
6113
+ defaultPressed,
6114
+ pressed,
6115
+ onPressedChange,
6116
+ disabled
6117
+ } = props;
6118
+ const [pressedState, setPressedState] = useControllableState({
6119
+ defaultValue: !!defaultPressed,
6120
+ value: pressed,
6121
+ onChange: onPressedChange
6122
+ });
6123
+ return solidJs.createMemo(() => ({
6124
+ pressed: pressedState(),
6125
+ disabled: !!disabled,
6126
+ setPressed: setPressedState,
6127
+ getRootProps() {
6128
+ return {
6129
+ ...parts.root.attrs,
6130
+ type: 'button',
6131
+ disabled,
6132
+ 'aria-pressed': pressedState(),
6133
+ 'data-state': pressedState() ? 'on' : 'off',
6134
+ 'data-pressed': domQuery.dataAttr(pressedState()),
6135
+ 'data-disabled': domQuery.dataAttr(disabled),
6136
+ onClick(event) {
6137
+ if (event.defaultPrevented) return;
6138
+ if (disabled) return;
6139
+ setPressedState(!pressedState());
6140
+ }
6141
+ };
6142
+ },
6143
+ getIndicatorProps() {
6144
+ return {
6145
+ ...parts.indicator.attrs,
6146
+ 'data-disabled': domQuery.dataAttr(disabled),
6147
+ 'data-pressed': domQuery.dataAttr(pressedState()),
6148
+ 'data-state': pressedState() ? 'on' : 'off'
6149
+ };
6150
+ }
6151
+ }));
6152
+ }
6153
+
6154
+ var _tmpl$ = /*#__PURE__*/web.template(`<button>`);
6155
+ const ToggleRoot = props => {
6156
+ const [useToggleProps, localProps] = createSplitProps()(props, ['pressed', 'defaultPressed', 'disabled', 'onPressedChange']);
6157
+ const toggle = useToggle(useToggleProps);
6158
+ const mergedProps = solid.mergeProps(() => toggle().getRootProps(), localProps);
6159
+ return web.createComponent(ToggleProvider, {
6160
+ value: toggle,
6161
+ get children() {
6162
+ var _el$ = _tmpl$();
6163
+ web.spread(_el$, mergedProps, false, false);
6164
+ return _el$;
6165
+ }
6166
+ });
6167
+ };
6168
+
6169
+ var toggle = /*#__PURE__*/Object.freeze({
6170
+ __proto__: null,
6171
+ Context: ToggleContext,
6172
+ Indicator: ToggleIndicator,
6173
+ Root: ToggleRoot,
6174
+ toggleAnatomy: toggleAnatomy
6175
+ });
6176
+
6057
6177
  const [ToggleGroupProvider, useToggleGroupContext] = createContext({
6058
6178
  hookName: 'useToggleGroupContext',
6059
6179
  providerName: '<ToggleGroupProvider />'
@@ -6457,10 +6577,18 @@ Object.defineProperty(exports, "clipboardAnatomy", {
6457
6577
  enumerable: true,
6458
6578
  get: function () { return clipboard$1.anatomy; }
6459
6579
  });
6580
+ Object.defineProperty(exports, "parseColor", {
6581
+ enumerable: true,
6582
+ get: function () { return colorPicker$1.parse; }
6583
+ });
6460
6584
  Object.defineProperty(exports, "comboboxAnatomy", {
6461
6585
  enumerable: true,
6462
6586
  get: function () { return combobox$1.anatomy; }
6463
6587
  });
6588
+ Object.defineProperty(exports, "parseDate", {
6589
+ enumerable: true,
6590
+ get: function () { return datePicker$1.parse; }
6591
+ });
6464
6592
  Object.defineProperty(exports, "dialogAnatomy", {
6465
6593
  enumerable: true,
6466
6594
  get: function () { return dialog$1.anatomy; }
@@ -6545,6 +6673,10 @@ Object.defineProperty(exports, "tagsInputAnatomy", {
6545
6673
  enumerable: true,
6546
6674
  get: function () { return tagsInput$1.anatomy; }
6547
6675
  });
6676
+ Object.defineProperty(exports, "timerAnatomy", {
6677
+ enumerable: true,
6678
+ get: function () { return timer$1.anatomy; }
6679
+ });
6548
6680
  Object.defineProperty(exports, "toastAnatomy", {
6549
6681
  enumerable: true,
6550
6682
  get: function () { return toast$1.anatomy; }
@@ -7000,11 +7132,15 @@ exports.ToastDescription = ToastDescription;
7000
7132
  exports.ToastRoot = ToastRoot;
7001
7133
  exports.ToastTitle = ToastTitle;
7002
7134
  exports.Toaster = Toaster;
7135
+ exports.Toggle = toggle;
7136
+ exports.ToggleContext = ToggleContext;
7003
7137
  exports.ToggleGroup = toggleGroup;
7004
7138
  exports.ToggleGroupContext = ToggleGroupContext;
7005
7139
  exports.ToggleGroupItem = ToggleGroupItem;
7006
7140
  exports.ToggleGroupRoot = ToggleGroupRoot;
7007
7141
  exports.ToggleGroupRootProvider = ToggleGroupRootProvider;
7142
+ exports.ToggleIndicator = ToggleIndicator;
7143
+ exports.ToggleRoot = ToggleRoot;
7008
7144
  exports.Tooltip = tooltip;
7009
7145
  exports.TooltipArrow = TooltipArrow;
7010
7146
  exports.TooltipArrowTip = TooltipArrowTip;
@@ -7034,12 +7170,14 @@ exports.ark = ark;
7034
7170
  exports.carouselAnatomy = carouselAnatomy;
7035
7171
  exports.checkboxAnatomy = checkboxAnatomy;
7036
7172
  exports.colorPickerAnatomy = colorPickerAnatomy;
7173
+ exports.createListCollection = createListCollection;
7037
7174
  exports.createToaster = createToaster;
7038
7175
  exports.datePickerAnatomy = datePickerAnatomy;
7039
7176
  exports.fieldAnatomy = fieldAnatomy;
7040
7177
  exports.fieldsetAnatomy = fieldsetAnatomy;
7041
7178
  exports.segmentGroupAnatomy = segmentGroupAnatomy;
7042
7179
  exports.splitPresenceProps = splitPresenceProps;
7180
+ exports.toggleAnatomy = toggleAnatomy;
7043
7181
  exports.useAccordion = useAccordion;
7044
7182
  exports.useAccordionContext = useAccordionContext;
7045
7183
  exports.useAccordionItemContext = useAccordionItemContext;
@@ -7125,6 +7263,8 @@ exports.useTimePickerContext = useTimePickerContext;
7125
7263
  exports.useTimer = useTimer;
7126
7264
  exports.useTimerContext = useTimerContext;
7127
7265
  exports.useToastContext = useToastContext;
7266
+ exports.useToggle = useToggle;
7267
+ exports.useToggleContext = useToggleContext;
7128
7268
  exports.useToggleGroup = useToggleGroup;
7129
7269
  exports.useToggleGroupContext = useToggleGroupContext;
7130
7270
  exports.useTooltip = useTooltip;