@ark-ui/solid 1.1.0 → 1.2.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 (58) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/README.md +24 -21
  3. package/cjs/index.js +104 -84
  4. package/cjs/index.js.map +1 -1
  5. package/esm/index.js +103 -84
  6. package/esm/index.js.map +1 -1
  7. package/package.json +51 -49
  8. package/source/date-picker/date-picker.jsx +1 -1
  9. package/source/editable/editable-area.jsx +2 -2
  10. package/source/editable/editable-cancel-trigger.jsx +2 -2
  11. package/source/editable/editable-control.jsx +2 -2
  12. package/source/editable/editable-edit-trigger.jsx +2 -2
  13. package/source/editable/editable-input.jsx +2 -2
  14. package/source/editable/editable-label.jsx +2 -2
  15. package/source/editable/editable-preview.jsx +2 -2
  16. package/source/editable/editable-submit-trigger.jsx +2 -2
  17. package/source/editable/editable.jsx +5 -7
  18. package/source/file-upload/file-upload-item-preview-image.jsx +13 -0
  19. package/source/file-upload/file-upload-item-preview.jsx +3 -10
  20. package/source/file-upload/file-upload.jsx +5 -1
  21. package/source/file-upload/index.js +7 -5
  22. package/source/number-input/index.js +1 -1
  23. package/source/pagination/pagination-ellipsis.jsx +2 -2
  24. package/source/pagination/pagination.jsx +2 -4
  25. package/source/pin-input/index.js +1 -1
  26. package/source/pin-input/pin-input.jsx +2 -2
  27. package/source/radio-group/radio-group-item-context.js +2 -2
  28. package/source/radio-group/radio-group-item.jsx +9 -6
  29. package/source/rating-group/rating-group-control.jsx +1 -1
  30. package/source/rating-group/rating-group-item.jsx +2 -2
  31. package/source/rating-group/rating-group.jsx +2 -2
  32. package/source/segment-group/segment-group-item-context.js +2 -2
  33. package/source/segment-group/segment-group-item.jsx +9 -6
  34. package/source/select/select-indicator.jsx +1 -1
  35. package/source/select/select-item-group.jsx +2 -2
  36. package/source/select/select.jsx +2 -2
  37. package/source/switch/switch-label.jsx +2 -2
  38. package/source/switch/switch-thumb.jsx +2 -2
  39. package/source/switch/switch.jsx +2 -2
  40. package/source/toast/create-toaster.jsx +3 -3
  41. package/source/toast/index.js +5 -3
  42. package/source/toast/toast-group.jsx +4 -0
  43. package/types/file-upload/file-upload-item-preview-image.d.ts +4 -0
  44. package/types/file-upload/file-upload-item-preview.d.ts +6 -1
  45. package/types/file-upload/index.d.ts +9 -7
  46. package/types/number-input/index.d.ts +1 -1
  47. package/types/pin-input/index.d.ts +1 -1
  48. package/types/radio-group/radio-group-item-context.d.ts +1 -1
  49. package/types/radio-group/radio-group-item.d.ts +6 -3
  50. package/types/rating-group/rating-group-item-context.d.ts +2 -3
  51. package/types/segment-group/segment-group-item-context.d.ts +3 -14
  52. package/types/segment-group/segment-group-item.d.ts +6 -2
  53. package/types/toast/index.d.ts +6 -4
  54. package/types/toast/toast-group.d.ts +4 -0
  55. /package/source/number-input/{number-input-field.jsx → number-input-input.jsx} +0 -0
  56. /package/source/pin-input/{pin-input-field.jsx → pin-input-input.jsx} +0 -0
  57. /package/types/number-input/{number-input-field.d.ts → number-input-input.d.ts} +0 -0
  58. /package/types/pin-input/{pin-input-field.d.ts → pin-input-input.d.ts} +0 -0
package/esm/index.js CHANGED
@@ -1314,7 +1314,7 @@ const useDatePicker = props => {
1314
1314
 
1315
1315
  const DatePicker$1 = props => {
1316
1316
  const [presenceProps, datePickerProps] = splitPresenceProps(props);
1317
- const [useDatePickerProps, localProps] = createSplitProps()(datePickerProps, ['closeOnSelect', 'dir', 'disabled', 'fixedWeeks', 'focusedValue', 'format', 'getRootNode', 'id', 'ids', 'isDateUnavailable', 'isDateUnavailable', 'locale', 'max', 'messages', 'min', 'modal', 'name', 'numOfMonths', 'onFocusChange', 'onOpenChange', 'onValueChange', 'onViewChange', 'open', 'parse', 'positioning', 'readOnly', 'selectionMode', 'startOfWeek', 'timeZone', 'value', 'view']);
1317
+ const [useDatePickerProps, localProps] = createSplitProps()(datePickerProps, ['closeOnSelect', 'dir', 'disabled', 'fixedWeeks', 'focusedValue', 'format', 'getRootNode', 'id', 'ids', 'isDateUnavailable', 'isDateUnavailable', 'locale', 'max', 'min', 'modal', 'name', 'numOfMonths', 'onFocusChange', 'onOpenChange', 'onValueChange', 'onViewChange', 'open', 'parse', 'positioning', 'readOnly', 'selectionMode', 'startOfWeek', 'timeZone', 'translations', 'value', 'view']);
1318
1318
  const api = useDatePicker(useDatePickerProps);
1319
1319
  const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({
1320
1320
  present: api().isOpen
@@ -1764,13 +1764,12 @@ const useEditable = props => {
1764
1764
  };
1765
1765
 
1766
1766
  const Editable$1 = props => {
1767
- const [useEditableProps, restProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'dir', 'disabled', 'finalFocusEl', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEdit', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'selectOnFocus', 'startWithEditView', 'submitMode', 'translations', 'value']);
1768
- const editable = useEditable(useEditableProps);
1769
- const [childrenProps, localProps] = splitProps(restProps, ['children']);
1770
- const mergedProps = mergeProps$2(() => editable().rootProps, localProps);
1771
- const getChildren = () => runIfFn(childrenProps.children, editable);
1767
+ const [useEditableProps, localProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'dir', 'disabled', 'finalFocusEl', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEdit', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'selectOnFocus', 'startWithEditView', 'submitMode', 'translations', 'value']);
1768
+ const api = useEditable(useEditableProps);
1769
+ const mergedProps = mergeProps$2(() => api().rootProps, localProps);
1770
+ const getChildren = () => runIfFn(localProps.children, api);
1772
1771
  return createComponent(EditableProvider, {
1773
- value: editable,
1772
+ value: api,
1774
1773
  get children() {
1775
1774
  return createComponent(ark.div, mergeProps$1(mergedProps, {
1776
1775
  get children() {
@@ -1782,50 +1781,50 @@ const Editable$1 = props => {
1782
1781
  };
1783
1782
 
1784
1783
  const EditableArea = props => {
1785
- const editable = useEditableContext();
1786
- const mergedProps = mergeProps$2(() => editable().areaProps, props);
1784
+ const api = useEditableContext();
1785
+ const mergedProps = mergeProps$2(() => api().areaProps, props);
1787
1786
  return createComponent(ark.div, mergedProps);
1788
1787
  };
1789
1788
 
1790
1789
  const EditableCancelTrigger = props => {
1791
- const editable = useEditableContext();
1792
- const mergedProps = mergeProps$2(() => editable().cancelTriggerProps, props);
1790
+ const api = useEditableContext();
1791
+ const mergedProps = mergeProps$2(() => api().cancelTriggerProps, props);
1793
1792
  return createComponent(ark.button, mergedProps);
1794
1793
  };
1795
1794
 
1796
1795
  const EditableControl = props => {
1797
- const editable = useEditableContext();
1798
- const mergedProps = mergeProps$2(() => editable().controlProps, props);
1796
+ const api = useEditableContext();
1797
+ const mergedProps = mergeProps$2(() => api().controlProps, props);
1799
1798
  return createComponent(ark.div, mergedProps);
1800
1799
  };
1801
1800
 
1802
1801
  const EditableEditTrigger = props => {
1803
- const editable = useEditableContext();
1804
- const mergedProps = mergeProps$2(() => editable().editTriggerProps, props);
1802
+ const api = useEditableContext();
1803
+ const mergedProps = mergeProps$2(() => api().editTriggerProps, props);
1805
1804
  return createComponent(ark.button, mergedProps);
1806
1805
  };
1807
1806
 
1808
1807
  const EditableInput = props => {
1809
- const editable = useEditableContext();
1810
- const mergedProps = mergeProps$2(() => editable().inputProps, props);
1808
+ const api = useEditableContext();
1809
+ const mergedProps = mergeProps$2(() => api().inputProps, props);
1811
1810
  return createComponent(ark.input, mergedProps);
1812
1811
  };
1813
1812
 
1814
1813
  const EditableLabel = props => {
1815
- const editable = useEditableContext();
1816
- const mergedProps = mergeProps$2(() => editable().labelProps, props);
1814
+ const api = useEditableContext();
1815
+ const mergedProps = mergeProps$2(() => api().labelProps, props);
1817
1816
  return createComponent(ark.label, mergedProps);
1818
1817
  };
1819
1818
 
1820
1819
  const EditablePreview = props => {
1821
- const editable = useEditableContext();
1822
- const mergedProps = mergeProps$2(() => editable().previewProps, props);
1820
+ const api = useEditableContext();
1821
+ const mergedProps = mergeProps$2(() => api().previewProps, props);
1823
1822
  return createComponent(ark.span, mergedProps);
1824
1823
  };
1825
1824
 
1826
1825
  const EditableSubmitTrigger = props => {
1827
- const dialog = useEditableContext();
1828
- const mergedProps = mergeProps$2(() => dialog().submitTriggerProps, props);
1826
+ const api = useEditableContext();
1827
+ const mergedProps = mergeProps$2(() => api().submitTriggerProps, props);
1829
1828
  return createComponent(ark.button, mergedProps);
1830
1829
  };
1831
1830
 
@@ -1859,7 +1858,7 @@ const useFileUpload = props => {
1859
1858
  };
1860
1859
 
1861
1860
  const FileUpload$1 = props => {
1862
- const [fileUploadProps, localProps] = createSplitProps()(props, ['accept', 'allowDrop', 'dir', 'disabled', 'files', 'getRootNode', 'id', 'isValidFile', 'locale', 'maxFiles', 'maxFileSize', 'minFileSize', 'name', 'onFilesChange']);
1861
+ const [fileUploadProps, localProps] = createSplitProps()(props, ['accept', 'allowDrop', 'dir', 'disabled', 'files', 'getRootNode', 'id', 'ids', 'locale', 'maxFiles', 'maxFileSize', 'minFileSize', 'name', 'onFileAccept', 'onFileReject', 'onFilesChange', 'translations', 'validate']);
1863
1862
  const api = useFileUpload(fileUploadProps);
1864
1863
  const mergedProps = mergeProps$2(() => api().rootProps, localProps);
1865
1864
  const getChildren = () => runIfFn(localProps.children, api);
@@ -1939,20 +1938,23 @@ const FileUploadItemName = props => {
1939
1938
  };
1940
1939
 
1941
1940
  const FileUploadItemPreview = props => {
1941
+ const api = useFileUploadContext();
1942
+ const item = useFileUploadItemContext();
1943
+ const mergedProps = mergeProps$2(() => api().getItemPreviewProps(item), props);
1944
+ if (!item.file.type.match(props.type ?? '.*')) return null;
1945
+ return createComponent(ark.div, mergedProps);
1946
+ };
1947
+
1948
+ const FileUploadItemPreviewImage = props => {
1942
1949
  const api = useFileUploadContext();
1943
1950
  const item = useFileUploadItemContext();
1944
1951
  const [url, setUrl] = createSignal('');
1945
1952
  api().createFileUrl(item.file, url => setUrl(url));
1946
- try {
1947
- const mergedProps = mergeProps$2(api().getItemPreviewProps({
1948
- ...item,
1949
- url: url()
1950
- }), props);
1951
- return createComponent(ark.img, mergedProps);
1952
- } catch (e) {
1953
- // TODO We could render a fallback component
1954
- return null;
1955
- }
1953
+ const mergedProps = mergeProps$2(api().getItemPreviewImageProps({
1954
+ ...item,
1955
+ url: url()
1956
+ }), props);
1957
+ return createComponent(ark.img, mergedProps);
1956
1958
  };
1957
1959
 
1958
1960
  const FileUploadItemSizeText = props => {
@@ -1982,14 +1984,15 @@ const FileUploadTrigger = props => {
1982
1984
  const FileUpload = Object.assign(FileUpload$1, {
1983
1985
  Root: FileUpload$1,
1984
1986
  Dropzone: FileUploadDropzone,
1985
- Label: FileUploadLabel,
1986
- Trigger: FileUploadTrigger,
1987
- ItemGroup: FileUploadItemGroup,
1988
1987
  Item: FileUploadItem,
1988
+ ItemDeleteTrigger: FileUploadItemDeleteTrigger,
1989
+ ItemGroup: FileUploadItemGroup,
1989
1990
  ItemName: FileUploadItemName,
1990
1991
  ItemPreview: FileUploadItemPreview,
1992
+ ItemPreviewImage: FileUploadItemPreviewImage,
1991
1993
  ItemSizeText: FileUploadItemSizeText,
1992
- ItemDeleteTrigger: FileUploadItemDeleteTrigger
1994
+ Label: FileUploadLabel,
1995
+ Trigger: FileUploadTrigger
1993
1996
  });
1994
1997
 
1995
1998
  const [HoverCardProvider, useHoverCardContext] = createContext({
@@ -2325,18 +2328,18 @@ const NumberInputDecrementTrigger = props => {
2325
2328
  return createComponent(ark.button, mergedProps);
2326
2329
  };
2327
2330
 
2328
- const NumberInputInput = props => {
2329
- const api = useNumberInputContext();
2330
- const mergedProps = mergeProps$2(() => api().inputProps, props);
2331
- return createComponent(ark.input, mergedProps);
2332
- };
2333
-
2334
2331
  const NumberInputIncrementTrigger = props => {
2335
2332
  const api = useNumberInputContext();
2336
2333
  const mergedProps = mergeProps$2(() => api().incrementTriggerProps, props);
2337
2334
  return createComponent(ark.button, mergedProps);
2338
2335
  };
2339
2336
 
2337
+ const NumberInputInput = props => {
2338
+ const api = useNumberInputContext();
2339
+ const mergedProps = mergeProps$2(() => api().inputProps, props);
2340
+ return createComponent(ark.input, mergedProps);
2341
+ };
2342
+
2340
2343
  const NumberInputLabel = props => {
2341
2344
  const api = useNumberInputContext();
2342
2345
  const mergedProps = mergeProps$2(() => api().labelProps, props);
@@ -2377,11 +2380,10 @@ const usePagination = props => {
2377
2380
  };
2378
2381
 
2379
2382
  const Pagination$1 = props => {
2380
- const [paginationParams, restProps] = createSplitProps()(props, ['count', 'dir', 'getRootNode', 'id', 'ids', 'onPageChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2381
- const [childrenProps, localProps] = splitProps(restProps, ['children']);
2383
+ const [paginationParams, localProps] = createSplitProps()(props, ['count', 'dir', 'getRootNode', 'id', 'ids', 'onPageChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2382
2384
  const api = usePagination(paginationParams);
2383
- const getChildren = () => runIfFn(childrenProps.children, api);
2384
2385
  const mergedProps = mergeProps$2(() => api().rootProps, localProps);
2386
+ const getChildren = () => runIfFn(localProps.children, api);
2385
2387
  return createComponent(PaginationProvider, {
2386
2388
  value: api,
2387
2389
  get children() {
@@ -2395,9 +2397,9 @@ const Pagination$1 = props => {
2395
2397
  };
2396
2398
 
2397
2399
  const PaginationEllipsis = props => {
2398
- const [ellipsisProps, restProps] = createSplitProps()(props, ['index']);
2400
+ const [ellipsisProps, localProps] = createSplitProps()(props, ['index']);
2399
2401
  const api = usePaginationContext();
2400
- const mergedProps = mergeProps$2(() => api().getEllipsisProps(ellipsisProps), restProps);
2402
+ const mergedProps = mergeProps$2(() => api().getEllipsisProps(ellipsisProps), localProps);
2401
2403
  return createComponent(ark.div, mergedProps);
2402
2404
  };
2403
2405
 
@@ -2447,8 +2449,8 @@ const usePinInput = props => {
2447
2449
 
2448
2450
  const _tmpl$$6 = /*#__PURE__*/template(`<input>`);
2449
2451
  const PinInput$1 = props => {
2450
- const [pinInputProps, localProps] = createSplitProps()(props, ['autoFocus', 'blurOnComplete', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'mask', 'name', 'onValueChange', 'onValueComplete', 'onValueInvalid', 'otp', 'pattern', 'placeholder', 'selectOnFocus', 'translations', 'type', 'value']);
2451
- const api = usePinInput(pinInputProps);
2452
+ const [usePinInputProps, localProps] = createSplitProps()(props, ['autoFocus', 'blurOnComplete', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'mask', 'name', 'onValueChange', 'onValueComplete', 'onValueInvalid', 'otp', 'pattern', 'placeholder', 'selectOnFocus', 'translations', 'type', 'value']);
2453
+ const api = usePinInput(usePinInputProps);
2452
2454
  const mergedProps = mergeProps$2(() => api().rootProps, localProps);
2453
2455
  return createComponent(PinInputProvider, {
2454
2456
  value: api,
@@ -2656,19 +2658,25 @@ const RadioGroupIndicator = props => {
2656
2658
  return createComponent(ark.div, mergedProps);
2657
2659
  };
2658
2660
 
2659
- const [RadioProvider, useRadioGroupItemContext] = createContext({
2661
+ const [RadioGroupItemProvider, useRadioGroupItemContext] = createContext({
2660
2662
  hookName: 'useRadioGroupItemContext',
2661
- providerName: '<RadioProvider />'
2663
+ providerName: '<RadioGroupItemProvider />'
2662
2664
  });
2663
2665
 
2664
2666
  const RadioGroupItem = props => {
2665
- const [itemProps, restProps] = createSplitProps()(props, ['value', 'disabled', 'invalid']);
2667
+ const [itemProps, localProps] = createSplitProps()(props, ['value', 'disabled', 'invalid']);
2666
2668
  const api = useRadioGroupContext();
2667
- const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), restProps);
2668
- return createComponent(RadioProvider, {
2669
+ const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), localProps);
2670
+ const itemState = api().getItemState(itemProps);
2671
+ const getChildren = () => runIfFn(localProps.children, itemState);
2672
+ return createComponent(RadioGroupItemProvider, {
2669
2673
  value: itemProps,
2670
2674
  get children() {
2671
- return createComponent(ark.label, mergedProps);
2675
+ return createComponent(ark.label, mergeProps$1(mergedProps, {
2676
+ get children() {
2677
+ return getChildren();
2678
+ }
2679
+ }));
2672
2680
  }
2673
2681
  });
2674
2682
  };
@@ -2725,8 +2733,8 @@ const useRatingGroup = props => {
2725
2733
  };
2726
2734
 
2727
2735
  const RatingGroup$1 = props => {
2728
- const [ratingParams, localProps] = createSplitProps()(props, ['allowHalf', 'autoFocus', 'count', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'name', 'onHoverChange', 'onValueChange', 'readOnly', 'translations', 'value']);
2729
- const api = useRatingGroup(ratingParams);
2736
+ const [useRatingProps, localProps] = createSplitProps()(props, ['allowHalf', 'autoFocus', 'count', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'name', 'onHoverChange', 'onValueChange', 'readOnly', 'translations', 'value']);
2737
+ const api = useRatingGroup(useRatingProps);
2730
2738
  const mergedProps = mergeProps$2(() => api().rootProps, localProps);
2731
2739
  return createComponent(RatingGroupProvider, {
2732
2740
  value: api,
@@ -2739,8 +2747,8 @@ const RatingGroup$1 = props => {
2739
2747
  const _tmpl$$4 = /*#__PURE__*/template(`<input>`);
2740
2748
  const RatingGroupControl = props => {
2741
2749
  const api = useRatingGroupContext();
2742
- const getChildren = () => runIfFn(props.children, api);
2743
2750
  const mergedProps = mergeProps$2(() => api().controlProps, props);
2751
+ const getChildren = () => runIfFn(props.children, api);
2744
2752
  return [createComponent(ark.div, mergeProps$1(mergedProps, {
2745
2753
  get children() {
2746
2754
  return getChildren();
@@ -2760,11 +2768,11 @@ const [RatingGroupItemProvider, useRatingGroupItemContext] = createContext({
2760
2768
  const RatingGroupItem = props => {
2761
2769
  const [itemProps, localProps] = createSplitProps()(props, ['index']);
2762
2770
  const api = useRatingGroupContext();
2771
+ const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), localProps);
2763
2772
  const itemState = createMemo(() => api().getItemState(itemProps));
2764
2773
  const getChildren = () => runIfFn(localProps.children, itemState);
2765
- const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), localProps);
2766
2774
  return createComponent(RatingGroupItemProvider, {
2767
- value: itemState,
2775
+ value: itemProps,
2768
2776
  get children() {
2769
2777
  return createComponent(ark.span, mergeProps$1(mergedProps, {
2770
2778
  get children() {
@@ -2823,19 +2831,25 @@ const SegmentGroupIndicator = props => {
2823
2831
  return createComponent(ark.div, mergedProps);
2824
2832
  };
2825
2833
 
2826
- const [SegmentProvider, useSegmentGroupItemContext] = createContext({
2834
+ const [SegmentGroupItemProvider, useSegmentGroupItemContext] = createContext({
2827
2835
  hookName: 'useSegmentGroupItemContext',
2828
- providerName: '<SegmentProvider />'
2836
+ providerName: '<SegmentGroupItemProvider />'
2829
2837
  });
2830
2838
 
2831
2839
  const SegmentGroupItem = props => {
2832
- const [itemProps, restProps] = createSplitProps()(props, ['value', 'disabled', 'invalid']);
2840
+ const [itemProps, localProps] = createSplitProps()(props, ['value', 'disabled', 'invalid']);
2833
2841
  const api = useSegmentGroupContext();
2834
- const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), segmentGroupAnatomy.build().item.attrs, restProps);
2835
- return createComponent(SegmentProvider, {
2842
+ const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), segmentGroupAnatomy.build().item.attrs, localProps);
2843
+ const itemState = api().getItemState(itemProps);
2844
+ const getChildren = () => runIfFn(localProps.children, itemState);
2845
+ return createComponent(SegmentGroupItemProvider, {
2836
2846
  value: itemProps,
2837
2847
  get children() {
2838
- return createComponent(ark.label, mergedProps);
2848
+ return createComponent(ark.label, mergeProps$1(mergedProps, {
2849
+ get children() {
2850
+ return getChildren();
2851
+ }
2852
+ }));
2839
2853
  }
2840
2854
  });
2841
2855
  };
@@ -2899,16 +2913,16 @@ const Select$1 = props => {
2899
2913
  const [presenceProps, selectProps] = splitPresenceProps(props);
2900
2914
  const [useSelectProps, localProps] = createSplitProps()(selectProps, ['closeOnSelect', 'dir', 'disabled', 'form', 'getRootNode', 'highlightedValue', 'id', 'ids', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loop', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'positioning', 'readOnly', 'selectOnBlur', 'value']);
2901
2915
  const api = useSelect(useSelectProps);
2902
- const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({
2916
+ const presenceApi = usePresence(mergeProps$2(() => ({
2903
2917
  present: api().isOpen
2904
- })));
2918
+ }), presenceProps));
2905
2919
  const mergedProps = mergeProps$2(() => api().rootProps, localProps);
2906
2920
  const getChildren = () => runIfFn(localProps.children, api);
2907
2921
  return createComponent(SelectProvider, {
2908
2922
  value: api,
2909
2923
  get children() {
2910
2924
  return createComponent(PresenceProvider, {
2911
- value: apiPresence,
2925
+ value: presenceApi,
2912
2926
  get children() {
2913
2927
  return createComponent(ark.div, mergeProps$1(mergedProps, {
2914
2928
  get children() {
@@ -2966,7 +2980,7 @@ const SelectControl = props => {
2966
2980
 
2967
2981
  const SelectIndicator = props => {
2968
2982
  const api = useSelectContext();
2969
- const mergedProps = mergeProps$2(() => api().controlProps, props);
2983
+ const mergedProps = mergeProps$2(() => api().indicatorProps, props);
2970
2984
  return createComponent(ark.div, mergedProps);
2971
2985
  };
2972
2986
 
@@ -2993,9 +3007,9 @@ const SelectItem = props => {
2993
3007
  };
2994
3008
 
2995
3009
  const SelectItemGroup = props => {
2996
- const [groupProps, localProps] = createSplitProps()(props, ['id']);
3010
+ const [itemGroupProps, localProps] = createSplitProps()(props, ['id']);
2997
3011
  const api = useSelectContext();
2998
- const mergedProps = mergeProps$2(() => api().getItemGroupProps(groupProps), localProps);
3012
+ const mergedProps = mergeProps$2(() => api().getItemGroupProps(itemGroupProps), localProps);
2999
3013
  return createComponent(ark.div, mergedProps);
3000
3014
  };
3001
3015
 
@@ -3248,9 +3262,9 @@ const useSwitch = props => {
3248
3262
  };
3249
3263
 
3250
3264
  const Switch$1 = props => {
3251
- const [switchProps, labelProps] = createSplitProps()(props, ['checked', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'label', 'name', 'onCheckedChange', 'required', 'value']);
3265
+ const [switchProps, localProps] = createSplitProps()(props, ['checked', 'dir', 'disabled', 'form', 'getRootNode', 'id', 'ids', 'invalid', 'label', 'name', 'onCheckedChange', 'required', 'value']);
3252
3266
  const api = useSwitch(switchProps);
3253
- const mergedProps = mergeProps$2(() => api().rootProps, labelProps);
3267
+ const mergedProps = mergeProps$2(() => api().rootProps, localProps);
3254
3268
  const getChildren = () => runIfFn(props.children, api);
3255
3269
  return createComponent(SwitchProvider, {
3256
3270
  value: api,
@@ -3276,14 +3290,14 @@ const SwitchControl = props => {
3276
3290
  };
3277
3291
 
3278
3292
  const SwitchLabel = props => {
3279
- const checkbox = useSwitchContext();
3280
- const mergedProps = mergeProps$2(() => checkbox().labelProps, props);
3293
+ const api = useSwitchContext();
3294
+ const mergedProps = mergeProps$2(() => api().labelProps, props);
3281
3295
  return createComponent(ark.span, mergedProps);
3282
3296
  };
3283
3297
 
3284
3298
  const SwitchThumb = props => {
3285
- const checkbox = useSwitchContext();
3286
- const mergedProps = mergeProps$2(() => checkbox().thumbProps, props);
3299
+ const api = useSwitchContext();
3300
+ const mergedProps = mergeProps$2(() => api().thumbProps, props);
3287
3301
  return createComponent(ark.span, mergedProps);
3288
3302
  };
3289
3303
 
@@ -3502,6 +3516,10 @@ const [ToastProvider, useToastContext] = createContext({
3502
3516
  providerName: '<ToastProvider />'
3503
3517
  });
3504
3518
 
3519
+ const ToastGroup = props => {
3520
+ return createComponent(ark.ol, props);
3521
+ };
3522
+
3505
3523
  const createToaster = props => {
3506
3524
  const service = toast.group.machine({
3507
3525
  id: '1',
@@ -3520,7 +3538,7 @@ const createToaster = props => {
3520
3538
  const mergedProps = mergeProps$2(() => api().getGroupProps({
3521
3539
  placement: props.placement
3522
3540
  }), toasterProps);
3523
- return createComponent(ark.ol, mergeProps$1(mergedProps, {
3541
+ return createComponent(ToastGroup, mergeProps$1(mergedProps, {
3524
3542
  get children() {
3525
3543
  return createComponent(Index, {
3526
3544
  get each() {
@@ -3574,9 +3592,10 @@ const ToastTitle = props => {
3574
3592
 
3575
3593
  const Toast = Object.assign(Toast$1, {
3576
3594
  Root: Toast$1,
3577
- Title: ToastTitle,
3595
+ CloseTrigger: ToastCloseTrigger,
3578
3596
  Description: ToastDescription,
3579
- CloseTrigger: ToastCloseTrigger
3597
+ Group: ToastGroup,
3598
+ Title: ToastTitle
3580
3599
  });
3581
3600
 
3582
3601
  const [ToggleGroupProvider, useToggleGroupContext] = createContext({
@@ -3713,5 +3732,5 @@ const Tooltip = Object.assign(Tooltip$1, {
3713
3732
  Trigger: TooltipTrigger
3714
3733
  });
3715
3734
 
3716
- export { Accordion, AccordionItem, AccordionItemContent, AccordionItemIndicator, AccordionItemTrigger, Avatar, AvatarFallback, AvatarImage, Carousel, CarouselControl, CarouselIndicator, CarouselIndicatorGroup, CarouselItem, CarouselItemGroup, CarouselNextTrigger, CarouselPrevTrigger, CarouselViewport, Checkbox, CheckboxControl, CheckboxIndicator, CheckboxLabel, ColorPicker, ColorPickerArea, ColorPickerAreaBackground, ColorPickerAreaThumb, ColorPickerChannelInput, ColorPickerChannelSlider, ColorPickerChannelSliderThumb, ColorPickerChannelSliderTrack, ColorPickerContent, ColorPickerControl, ColorPickerEyeDropperTrigger, ColorPickerFormatSelect, ColorPickerFormatTrigger, ColorPickerLabel, ColorPickerPositioner, ColorPickerSwatch, ColorPickerSwatchGroup, ColorPickerSwatchIndicator, ColorPickerSwatchTrigger, ColorPickerTransparencyGrid, ColorPickerTrigger, ColorPickerValueText, ColorPickerView, Combobox, ComboboxClearTrigger, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItem, ComboboxItemGroup, ComboboxItemGroupLabel, ComboboxItemIndicator, ComboboxItemText, ComboboxLabel, ComboboxPositioner, ComboboxTrigger, DatePicker, DatePickerClearTrigger, DatePickerContent, DatePickerControl, DatePickerInput, DatePickerLabel, DatePickerMonthSelect, DatePickerNextTrigger, DatePickerPositioner, DatePickerPrevTrigger, DatePickerRangeText, DatePickerTable, DatePickerTableBody, DatePickerTableCell, DatePickerTableCellTrigger, DatePickerTableHead, DatePickerTableHeader, DatePickerTableRow, DatePickerTrigger, DatePickerView, DatePickerViewControl, DatePickerViewTrigger, DatePickerYearSelect, Dialog, DialogBackdrop, DialogCloseTrigger, DialogContent, DialogDescription, DialogPositioner, DialogTitle, DialogTrigger, Editable, EditableArea, EditableCancelTrigger, EditableControl, EditableEditTrigger, EditableInput, EditableLabel, EditablePreview, EditableSubmitTrigger, Environment, FileUpload, FileUploadDropzone, FileUploadItem, FileUploadItemDeleteTrigger, FileUploadItemGroup, FileUploadItemName, FileUploadItemPreview, FileUploadItemSizeText, FileUploadLabel, FileUploadTrigger, HoverCard, HoverCardArrow, HoverCardArrowTip, HoverCardContent, HoverCardPositioner, HoverCardTrigger, Menu, MenuArrow, MenuArrowTip, MenuContent, MenuContextTrigger, MenuItem, MenuItemGroup, MenuItemGroupLabel, MenuOptionItem, MenuPositioner, MenuSeparator, MenuTrigger, MenuTriggerItem, NumberInput, NumberInputControl, NumberInputDecrementTrigger, NumberInputIncrementTrigger, NumberInputInput, NumberInputLabel, NumberInputScrubber, Pagination, PaginationEllipsis, PaginationItem, PaginationNextTrigger, PaginationPrevTrigger, PinInput, PinInputControl, PinInputInput, PinInputLabel, Popover, PopoverAnchor, PopoverArrow, PopoverArrowTip, PopoverCloseTrigger, PopoverContent, PopoverDescription, PopoverIndicator, PopoverPositioner, PopoverTitle, PopoverTrigger, Presence, PresencePropsProvider, PresenceProvider, RadioGroup, RadioGroupItem, RadioGroupItemControl, RadioGroupItemText, RadioGroupLabel, RatingGroup, RatingGroupControl, RatingGroupItem, RatingGroupLabel, SegmentGroup, SegmentGroupIndicator, SegmentGroupItem, SegmentGroupItemControl, SegmentGroupItemText, SegmentGroupLabel, Select, SelectClearTrigger, SelectContent, SelectControl, SelectIndicator, SelectItem, SelectItemGroup, SelectItemGroupLabel, SelectItemIndicator, SelectItemText, SelectLabel, SelectPositioner, SelectTrigger, SelectValueText, Slider, SliderControl, SliderLabel, SliderMarker, SliderMarkerGroup, SliderRange, SliderThumb, SliderTrack, SliderValueText, Splitter, SplitterPanel, SplitterResizeTrigger, Switch, SwitchControl, SwitchLabel, SwitchThumb, TabContent, TabIndicator, TabList, TabTrigger, Tabs, TagsInput, TagsInputClearTrigger, TagsInputControl, TagsInputInput, TagsInputItem, TagsInputItemDeleteTrigger, TagsInputItemInput, TagsInputItemText, TagsInputLabel, Toast, ToastCloseTrigger, ToastDescription, ToastTitle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipArrow, TooltipArrowTip, TooltipContent, TooltipPositioner, TooltipTrigger, ark, createToaster, splitPresenceProps, useAccordionContext, useAccordionItemContext, useAvatarContext, useCarouselContext, useCheckboxContext, useColorPickerAreaContext, useColorPickerChannelSliderContext, useColorPickerContext, useComboboxContext, useDatePickerContext, useDatePickerTableCellContext, useDatePickerTableContext, useDatePickerViewContext, useDialogContext, useEditableContext, useEnvironmentContext, useFileUploadContext, useHoverCardContext, useMenuContext, useNumberInputContext, usePaginationContext, usePinInputContext, usePopoverContext, usePresence, usePresenceContext, usePresencePropsContext, useRadioGroupContext, useRadioGroupItemContext, useRatingGroupContext, useRatingGroupItemContext, useSegmentGroupContext, useSegmentGroupItemContext, useSelectContext, useSelectItemContext, useSliderContext, useSplitterContext, useSwitchContext, useTabsContext, useTagsInputContext, useTagsInputItemContext, useToggleGroupContext, useTooltipContext };
3735
+ export { Accordion, AccordionItem, AccordionItemContent, AccordionItemIndicator, AccordionItemTrigger, Avatar, AvatarFallback, AvatarImage, Carousel, CarouselControl, CarouselIndicator, CarouselIndicatorGroup, CarouselItem, CarouselItemGroup, CarouselNextTrigger, CarouselPrevTrigger, CarouselViewport, Checkbox, CheckboxControl, CheckboxIndicator, CheckboxLabel, ColorPicker, ColorPickerArea, ColorPickerAreaBackground, ColorPickerAreaThumb, ColorPickerChannelInput, ColorPickerChannelSlider, ColorPickerChannelSliderThumb, ColorPickerChannelSliderTrack, ColorPickerContent, ColorPickerControl, ColorPickerEyeDropperTrigger, ColorPickerFormatSelect, ColorPickerFormatTrigger, ColorPickerLabel, ColorPickerPositioner, ColorPickerSwatch, ColorPickerSwatchGroup, ColorPickerSwatchIndicator, ColorPickerSwatchTrigger, ColorPickerTransparencyGrid, ColorPickerTrigger, ColorPickerValueText, ColorPickerView, Combobox, ComboboxClearTrigger, ComboboxContent, ComboboxControl, ComboboxInput, ComboboxItem, ComboboxItemGroup, ComboboxItemGroupLabel, ComboboxItemIndicator, ComboboxItemText, ComboboxLabel, ComboboxPositioner, ComboboxTrigger, DatePicker, DatePickerClearTrigger, DatePickerContent, DatePickerControl, DatePickerInput, DatePickerLabel, DatePickerMonthSelect, DatePickerNextTrigger, DatePickerPositioner, DatePickerPrevTrigger, DatePickerRangeText, DatePickerTable, DatePickerTableBody, DatePickerTableCell, DatePickerTableCellTrigger, DatePickerTableHead, DatePickerTableHeader, DatePickerTableRow, DatePickerTrigger, DatePickerView, DatePickerViewControl, DatePickerViewTrigger, DatePickerYearSelect, Dialog, DialogBackdrop, DialogCloseTrigger, DialogContent, DialogDescription, DialogPositioner, DialogTitle, DialogTrigger, Editable, EditableArea, EditableCancelTrigger, EditableControl, EditableEditTrigger, EditableInput, EditableLabel, EditablePreview, EditableSubmitTrigger, Environment, FileUpload, FileUploadDropzone, FileUploadItem, FileUploadItemDeleteTrigger, FileUploadItemGroup, FileUploadItemName, FileUploadItemPreviewImage, FileUploadItemSizeText, FileUploadLabel, FileUploadTrigger, HoverCard, HoverCardArrow, HoverCardArrowTip, HoverCardContent, HoverCardPositioner, HoverCardTrigger, Menu, MenuArrow, MenuArrowTip, MenuContent, MenuContextTrigger, MenuItem, MenuItemGroup, MenuItemGroupLabel, MenuOptionItem, MenuPositioner, MenuSeparator, MenuTrigger, MenuTriggerItem, NumberInput, NumberInputControl, NumberInputDecrementTrigger, NumberInputIncrementTrigger, NumberInputInput, NumberInputLabel, NumberInputScrubber, Pagination, PaginationEllipsis, PaginationItem, PaginationNextTrigger, PaginationPrevTrigger, PinInput, PinInputControl, PinInputInput, PinInputLabel, Popover, PopoverAnchor, PopoverArrow, PopoverArrowTip, PopoverCloseTrigger, PopoverContent, PopoverDescription, PopoverIndicator, PopoverPositioner, PopoverTitle, PopoverTrigger, Presence, PresencePropsProvider, PresenceProvider, RadioGroup, RadioGroupItem, RadioGroupItemControl, RadioGroupItemText, RadioGroupLabel, RatingGroup, RatingGroupControl, RatingGroupItem, RatingGroupLabel, SegmentGroup, SegmentGroupIndicator, SegmentGroupItem, SegmentGroupItemControl, SegmentGroupItemText, SegmentGroupLabel, Select, SelectClearTrigger, SelectContent, SelectControl, SelectIndicator, SelectItem, SelectItemGroup, SelectItemGroupLabel, SelectItemIndicator, SelectItemText, SelectLabel, SelectPositioner, SelectTrigger, SelectValueText, Slider, SliderControl, SliderLabel, SliderMarker, SliderMarkerGroup, SliderRange, SliderThumb, SliderTrack, SliderValueText, Splitter, SplitterPanel, SplitterResizeTrigger, Switch, SwitchControl, SwitchLabel, SwitchThumb, TabContent, TabIndicator, TabList, TabTrigger, Tabs, TagsInput, TagsInputClearTrigger, TagsInputControl, TagsInputInput, TagsInputItem, TagsInputItemDeleteTrigger, TagsInputItemInput, TagsInputItemText, TagsInputLabel, Toast, ToastCloseTrigger, ToastDescription, ToastGroup, ToastTitle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipArrow, TooltipArrowTip, TooltipContent, TooltipPositioner, TooltipTrigger, ark, createToaster, splitPresenceProps, useAccordionContext, useAccordionItemContext, useAvatarContext, useCarouselContext, useCheckboxContext, useColorPickerAreaContext, useColorPickerChannelSliderContext, useColorPickerContext, useComboboxContext, useDatePickerContext, useDatePickerTableCellContext, useDatePickerTableContext, useDatePickerViewContext, useDialogContext, useEditableContext, useEnvironmentContext, useFileUploadContext, useHoverCardContext, useMenuContext, useNumberInputContext, usePaginationContext, usePinInputContext, usePopoverContext, usePresence, usePresenceContext, usePresencePropsContext, useRadioGroupContext, useRadioGroupItemContext, useRatingGroupContext, useRatingGroupItemContext, useSegmentGroupContext, useSegmentGroupItemContext, useSelectContext, useSelectItemContext, useSliderContext, useSplitterContext, useSwitchContext, useTabsContext, useTagsInputContext, useTagsInputItemContext, useToggleGroupContext, useTooltipContext };
3717
3736
  //# sourceMappingURL=index.js.map