@ark-ui/react 1.0.1 → 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 (183) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +67 -61
  3. package/accordion/accordion.stories.d.ts +0 -1
  4. package/color-picker/color-picker-format-select.cjs +21 -0
  5. package/color-picker/color-picker-format-select.d.ts +6 -0
  6. package/color-picker/color-picker-format-select.mjs +17 -0
  7. package/color-picker/color-picker-format-trigger.cjs +19 -0
  8. package/color-picker/color-picker-format-trigger.d.ts +6 -0
  9. package/color-picker/color-picker-format-trigger.mjs +15 -0
  10. package/color-picker/color-picker-swatch-context.cjs +15 -0
  11. package/color-picker/color-picker-swatch-context.d.ts +6 -0
  12. package/color-picker/color-picker-swatch-context.mjs +10 -0
  13. package/color-picker/color-picker-swatch-indicator.cjs +21 -0
  14. package/color-picker/color-picker-swatch-indicator.d.ts +6 -0
  15. package/color-picker/color-picker-swatch-indicator.mjs +17 -0
  16. package/color-picker/color-picker-swatch-trigger.cjs +4 -1
  17. package/color-picker/color-picker-swatch-trigger.d.ts +1 -5
  18. package/color-picker/color-picker-swatch-trigger.mjs +4 -1
  19. package/color-picker/color-picker-swatch.cjs +4 -3
  20. package/color-picker/color-picker-swatch.mjs +4 -3
  21. package/color-picker/color-picker-transparency-grid.d.ts +2 -5
  22. package/color-picker/color-picker.cjs +4 -2
  23. package/color-picker/color-picker.mjs +4 -2
  24. package/color-picker/index.cjs +10 -0
  25. package/color-picker/index.d.ts +10 -3
  26. package/color-picker/index.mjs +7 -1
  27. package/color-picker/use-color-picker.cjs +1 -1
  28. package/color-picker/use-color-picker.d.ts +4 -1
  29. package/color-picker/use-color-picker.mjs +1 -1
  30. package/combobox/combobox.cjs +1 -1
  31. package/combobox/combobox.d.ts +1 -1
  32. package/combobox/combobox.mjs +1 -1
  33. package/date-picker/date-picker.cjs +2 -2
  34. package/date-picker/date-picker.mjs +2 -2
  35. package/date-picker/date-picker.stories.d.ts +1 -0
  36. package/dialog/dialog-backdrop.cjs +1 -1
  37. package/dialog/dialog-backdrop.mjs +1 -1
  38. package/dialog/dialog.cjs +2 -1
  39. package/dialog/dialog.mjs +2 -1
  40. package/editable/editable.cjs +2 -2
  41. package/editable/editable.mjs +2 -2
  42. package/factory.cjs +1 -2
  43. package/factory.d.ts +1 -1
  44. package/factory.mjs +2 -3
  45. package/factory.test.d.ts +1 -0
  46. package/file-upload/file-upload-context.cjs +15 -0
  47. package/file-upload/file-upload-context.d.ts +6 -0
  48. package/file-upload/file-upload-context.mjs +10 -0
  49. package/file-upload/file-upload-dropzone.cjs +24 -0
  50. package/file-upload/file-upload-dropzone.d.ts +6 -0
  51. package/file-upload/file-upload-dropzone.mjs +20 -0
  52. package/file-upload/file-upload-item-context.cjs +15 -0
  53. package/file-upload/file-upload-item-context.d.ts +6 -0
  54. package/file-upload/file-upload-item-context.mjs +10 -0
  55. package/file-upload/file-upload-item-delete-trigger.cjs +21 -0
  56. package/file-upload/file-upload-item-delete-trigger.d.ts +6 -0
  57. package/file-upload/file-upload-item-delete-trigger.mjs +17 -0
  58. package/file-upload/file-upload-item-group.cjs +24 -0
  59. package/file-upload/file-upload-item-group.d.ts +8 -0
  60. package/file-upload/file-upload-item-group.mjs +20 -0
  61. package/file-upload/file-upload-item-name.cjs +24 -0
  62. package/file-upload/file-upload-item-name.d.ts +6 -0
  63. package/file-upload/file-upload-item-name.mjs +20 -0
  64. package/file-upload/file-upload-item-preview-image.cjs +25 -0
  65. package/file-upload/file-upload-item-preview-image.d.ts +6 -0
  66. package/file-upload/file-upload-item-preview-image.mjs +21 -0
  67. package/file-upload/file-upload-item-preview.cjs +25 -0
  68. package/file-upload/file-upload-item-preview.d.ts +11 -0
  69. package/file-upload/file-upload-item-preview.mjs +21 -0
  70. package/file-upload/file-upload-item-size-text.cjs +24 -0
  71. package/file-upload/file-upload-item-size-text.d.ts +6 -0
  72. package/file-upload/file-upload-item-size-text.mjs +20 -0
  73. package/file-upload/file-upload-item.cjs +24 -0
  74. package/file-upload/file-upload-item.d.ts +8 -0
  75. package/file-upload/file-upload-item.mjs +20 -0
  76. package/file-upload/file-upload-label.cjs +19 -0
  77. package/file-upload/file-upload-label.d.ts +6 -0
  78. package/file-upload/file-upload-label.mjs +15 -0
  79. package/file-upload/file-upload-trigger.cjs +21 -0
  80. package/file-upload/file-upload-trigger.d.ts +6 -0
  81. package/file-upload/file-upload-trigger.mjs +17 -0
  82. package/file-upload/file-upload.cjs +46 -0
  83. package/file-upload/file-upload.d.ts +9 -0
  84. package/file-upload/file-upload.mjs +42 -0
  85. package/file-upload/file-upload.stories.d.ts +7 -0
  86. package/file-upload/file-upload.test.d.ts +1 -0
  87. package/file-upload/index.cjs +43 -0
  88. package/file-upload/index.d.ts +29 -0
  89. package/file-upload/index.mjs +29 -0
  90. package/file-upload/use-file-upload.cjs +48 -0
  91. package/file-upload/use-file-upload.d.ts +8 -0
  92. package/file-upload/use-file-upload.mjs +25 -0
  93. package/hover-card/hover-card.cjs +2 -1
  94. package/hover-card/hover-card.mjs +2 -1
  95. package/index.cjs +74 -42
  96. package/index.d.ts +1 -0
  97. package/index.mjs +18 -2
  98. package/menu/menu.cjs +4 -3
  99. package/menu/menu.mjs +2 -1
  100. package/number-input/index.cjs +3 -3
  101. package/number-input/index.d.ts +1 -1
  102. package/number-input/index.mjs +1 -1
  103. package/number-input/number-input.cjs +5 -3
  104. package/number-input/number-input.d.ts +5 -4
  105. package/number-input/number-input.mjs +5 -3
  106. package/number-input/number-input.stories.d.ts +1 -0
  107. package/package.json +72 -57
  108. package/pagination/pagination-item.cjs +1 -1
  109. package/pagination/pagination-item.mjs +1 -1
  110. package/pagination/pagination.cjs +2 -2
  111. package/pagination/pagination.mjs +2 -2
  112. package/pin-input/index.cjs +3 -3
  113. package/pin-input/index.d.ts +1 -1
  114. package/pin-input/index.mjs +1 -1
  115. package/pin-input/pin-input.cjs +2 -2
  116. package/pin-input/pin-input.mjs +2 -2
  117. package/popover/popover.cjs +2 -1
  118. package/popover/popover.mjs +2 -1
  119. package/portal.cjs +2 -1
  120. package/portal.d.ts +2 -2
  121. package/portal.mjs +2 -1
  122. package/radio-group/radio-group-indicator.cjs +1 -2
  123. package/radio-group/radio-group-indicator.mjs +1 -2
  124. package/radio-group/radio-group-item.d.ts +1 -1
  125. package/radio-group/radio-group.cjs +2 -2
  126. package/radio-group/radio-group.mjs +2 -2
  127. package/radio-group/radio-group.stories.d.ts +1 -1
  128. package/rating-group/rating-group-control.cjs +2 -2
  129. package/rating-group/rating-group-control.mjs +2 -2
  130. package/rating-group/rating-group-item-context.d.ts +2 -2
  131. package/rating-group/rating-group-item.cjs +5 -4
  132. package/rating-group/rating-group-item.mjs +5 -4
  133. package/rating-group/rating-group.cjs +2 -2
  134. package/rating-group/rating-group.mjs +2 -2
  135. package/rating-group/use-rating-group.cjs +4 -4
  136. package/rating-group/use-rating-group.d.ts +4 -4
  137. package/rating-group/use-rating-group.mjs +3 -3
  138. package/segment-group/segment-group-indicator.cjs +2 -2
  139. package/segment-group/segment-group-indicator.mjs +2 -2
  140. package/segment-group/segment-group-item-context.d.ts +1 -13
  141. package/segment-group/segment-group-item-control.cjs +2 -2
  142. package/segment-group/segment-group-item-control.mjs +2 -2
  143. package/segment-group/segment-group-item-text.cjs +2 -2
  144. package/segment-group/segment-group-item-text.mjs +2 -2
  145. package/segment-group/segment-group-item.cjs +3 -3
  146. package/segment-group/segment-group-item.d.ts +3 -2
  147. package/segment-group/segment-group-item.mjs +3 -3
  148. package/segment-group/segment-group-label.cjs +2 -2
  149. package/segment-group/segment-group-label.mjs +2 -2
  150. package/segment-group/segment-group.cjs +4 -4
  151. package/segment-group/segment-group.mjs +4 -4
  152. package/select/select-item-group.cjs +2 -2
  153. package/select/select-item-group.mjs +2 -2
  154. package/select/select.cjs +1 -1
  155. package/select/select.d.ts +1 -1
  156. package/select/select.mjs +1 -1
  157. package/select/select.stories.d.ts +1 -0
  158. package/slider/slider.stories.d.ts +1 -1
  159. package/switch/switch.cjs +2 -2
  160. package/switch/switch.mjs +2 -2
  161. package/toast/create-toaster.cjs +2 -2
  162. package/toast/create-toaster.d.ts +1 -1
  163. package/toast/create-toaster.mjs +2 -2
  164. package/toast/index.cjs +5 -2
  165. package/toast/index.d.ts +6 -4
  166. package/toast/index.mjs +5 -3
  167. package/toast/toast-group.cjs +15 -0
  168. package/toast/toast-group.d.ts +6 -0
  169. package/toast/toast-group.mjs +11 -0
  170. package/tooltip/tooltip.cjs +2 -1
  171. package/tooltip/tooltip.mjs +2 -1
  172. package/use-is-server.cjs +16 -0
  173. package/use-is-server.d.ts +1 -0
  174. package/use-is-server.mjs +12 -0
  175. package/segment-group/segment-group.anatomy.cjs +0 -10
  176. package/segment-group/segment-group.anatomy.d.ts +0 -2
  177. package/segment-group/segment-group.anatomy.mjs +0 -6
  178. /package/number-input/{number-input-field.cjs → number-input-input.cjs} +0 -0
  179. /package/number-input/{number-input-field.d.ts → number-input-input.d.ts} +0 -0
  180. /package/number-input/{number-input-field.mjs → number-input-input.mjs} +0 -0
  181. /package/pin-input/{pin-input-field.cjs → pin-input-input.cjs} +0 -0
  182. /package/pin-input/{pin-input-field.d.ts → pin-input-input.d.ts} +0 -0
  183. /package/pin-input/{pin-input-field.mjs → pin-input-input.mjs} +0 -0
@@ -1,5 +1,6 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
+ import { mergeProps } from '@zag-js/react';
3
4
  import 'react';
4
5
  import '../presence/index.mjs';
5
6
  import { splitPresenceProps } from '../presence/split-presence-props.mjs';
@@ -12,7 +13,7 @@ import { PresenceProvider } from '../presence/presence-context.mjs';
12
13
  const HoverCard = (props) => {
13
14
  const [presenceProps, { children, ...localProps }] = splitPresenceProps(props);
14
15
  const api = useHoverCard(localProps);
15
- const presenceApi = usePresence({ ...presenceProps, present: api.isOpen });
16
+ const presenceApi = usePresence(mergeProps({ present: api.isOpen }, presenceProps));
16
17
  const view = runIfFn(children, api);
17
18
  return /* @__PURE__ */ jsx(HoverCardProvider, { value: api, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presenceApi, children: view }) });
18
19
  };
package/index.cjs CHANGED
@@ -13,26 +13,27 @@ const index$7 = require('./dialog/index.cjs');
13
13
  const index$8 = require('./editable/index.cjs');
14
14
  const index$9 = require('./environment/index.cjs');
15
15
  const factory = require('./factory.cjs');
16
- const index$a = require('./hover-card/index.cjs');
17
- const index$b = require('./menu/index.cjs');
18
- const index$c = require('./number-input/index.cjs');
19
- const index$d = require('./pagination/index.cjs');
20
- const index$e = require('./pin-input/index.cjs');
21
- const index$f = require('./popover/index.cjs');
16
+ const index$a = require('./file-upload/index.cjs');
17
+ const index$b = require('./hover-card/index.cjs');
18
+ const index$c = require('./menu/index.cjs');
19
+ const index$d = require('./number-input/index.cjs');
20
+ const index$e = require('./pagination/index.cjs');
21
+ const index$f = require('./pin-input/index.cjs');
22
+ const index$g = require('./popover/index.cjs');
22
23
  const portal = require('./portal.cjs');
23
- const index$g = require('./presence/index.cjs');
24
- const index$h = require('./radio-group/index.cjs');
25
- const index$i = require('./rating-group/index.cjs');
26
- const index$j = require('./segment-group/index.cjs');
27
- const index$k = require('./select/index.cjs');
28
- const index$l = require('./slider/index.cjs');
29
- const index$m = require('./splitter/index.cjs');
30
- const index$n = require('./switch/index.cjs');
31
- const index$o = require('./tabs/index.cjs');
32
- const index$p = require('./tags-input/index.cjs');
33
- const index$q = require('./toast/index.cjs');
34
- const index$r = require('./toggle-group/index.cjs');
35
- const index$s = require('./tooltip/index.cjs');
24
+ const index$h = require('./presence/index.cjs');
25
+ const index$i = require('./radio-group/index.cjs');
26
+ const index$j = require('./rating-group/index.cjs');
27
+ const index$k = require('./segment-group/index.cjs');
28
+ const index$l = require('./select/index.cjs');
29
+ const index$m = require('./slider/index.cjs');
30
+ const index$n = require('./splitter/index.cjs');
31
+ const index$o = require('./switch/index.cjs');
32
+ const index$p = require('./tabs/index.cjs');
33
+ const index$q = require('./tags-input/index.cjs');
34
+ const index$r = require('./toast/index.cjs');
35
+ const index$s = require('./toggle-group/index.cjs');
36
+ const index$t = require('./tooltip/index.cjs');
36
37
  const accordionItem = require('./accordion/accordion-item.cjs');
37
38
  const accordionItemContent = require('./accordion/accordion-item-content.cjs');
38
39
  const accordionItemIndicator = require('./accordion/accordion-item-indicator.cjs');
@@ -65,14 +66,18 @@ const colorPickerChannelSliderTrack = require('./color-picker/color-picker-chann
65
66
  const colorPickerContent = require('./color-picker/color-picker-content.cjs');
66
67
  const colorPickerControl = require('./color-picker/color-picker-control.cjs');
67
68
  const colorPickerEyeDropperTrigger = require('./color-picker/color-picker-eye-dropper-trigger.cjs');
69
+ const colorPickerFormatSelect = require('./color-picker/color-picker-format-select.cjs');
70
+ const colorPickerFormatTrigger = require('./color-picker/color-picker-format-trigger.cjs');
68
71
  const colorPickerLabel = require('./color-picker/color-picker-label.cjs');
69
72
  const colorPickerPositioner = require('./color-picker/color-picker-positioner.cjs');
70
73
  const colorPickerSwatch = require('./color-picker/color-picker-swatch.cjs');
71
74
  const colorPickerSwatchGroup = require('./color-picker/color-picker-swatch-group.cjs');
75
+ const colorPickerSwatchIndicator = require('./color-picker/color-picker-swatch-indicator.cjs');
72
76
  const colorPickerSwatchTrigger = require('./color-picker/color-picker-swatch-trigger.cjs');
73
77
  const colorPickerTransparencyGrid = require('./color-picker/color-picker-transparency-grid.cjs');
74
78
  const colorPickerTrigger = require('./color-picker/color-picker-trigger.cjs');
75
79
  const colorPickerValueText = require('./color-picker/color-picker-value-text.cjs');
80
+ const colorPickerView = require('./color-picker/color-picker-view.cjs');
76
81
  const colorPickerAreaContext = require('./color-picker/color-picker-area-context.cjs');
77
82
  const colorPickerChannelSliderContext = require('./color-picker/color-picker-channel-slider-context.cjs');
78
83
  const colorPickerContext = require('./color-picker/color-picker-context.cjs');
@@ -133,6 +138,16 @@ const editablePreview = require('./editable/editable-preview.cjs');
133
138
  const editableSubmitTrigger = require('./editable/editable-submit-trigger.cjs');
134
139
  const editableContext = require('./editable/editable-context.cjs');
135
140
  const environmentContext = require('./environment/environment-context.cjs');
141
+ const fileUploadDropzone = require('./file-upload/file-upload-dropzone.cjs');
142
+ const fileUploadItem = require('./file-upload/file-upload-item.cjs');
143
+ const fileUploadItemDeleteTrigger = require('./file-upload/file-upload-item-delete-trigger.cjs');
144
+ const fileUploadItemGroup = require('./file-upload/file-upload-item-group.cjs');
145
+ const fileUploadItemName = require('./file-upload/file-upload-item-name.cjs');
146
+ const fileUploadItemPreviewImage = require('./file-upload/file-upload-item-preview-image.cjs');
147
+ const fileUploadItemSizeText = require('./file-upload/file-upload-item-size-text.cjs');
148
+ const fileUploadLabel = require('./file-upload/file-upload-label.cjs');
149
+ const fileUploadTrigger = require('./file-upload/file-upload-trigger.cjs');
150
+ const fileUploadContext = require('./file-upload/file-upload-context.cjs');
136
151
  const hoverCardArrow = require('./hover-card/hover-card-arrow.cjs');
137
152
  const hoverCardArrowTip = require('./hover-card/hover-card-arrow-tip.cjs');
138
153
  const hoverCardContent = require('./hover-card/hover-card-content.cjs');
@@ -155,7 +170,7 @@ const menuContext = require('./menu/menu-context.cjs');
155
170
  const numberInputControl = require('./number-input/number-input-control.cjs');
156
171
  const numberInputDecrementTrigger = require('./number-input/number-input-decrement-trigger.cjs');
157
172
  const numberInputIncrementTrigger = require('./number-input/number-input-increment-trigger.cjs');
158
- const numberInputField = require('./number-input/number-input-field.cjs');
173
+ const numberInputInput = require('./number-input/number-input-input.cjs');
159
174
  const numberInputLabel = require('./number-input/number-input-label.cjs');
160
175
  const numberInputScrubber = require('./number-input/number-input-scrubber.cjs');
161
176
  const numberInputContext = require('./number-input/number-input-context.cjs');
@@ -165,7 +180,7 @@ const paginationNextTrigger = require('./pagination/pagination-next-trigger.cjs'
165
180
  const paginationPrevTrigger = require('./pagination/pagination-prev-trigger.cjs');
166
181
  const paginationContext = require('./pagination/pagination-context.cjs');
167
182
  const pinInputControl = require('./pin-input/pin-input-control.cjs');
168
- const pinInputField = require('./pin-input/pin-input-field.cjs');
183
+ const pinInputInput = require('./pin-input/pin-input-input.cjs');
169
184
  const pinInputLabel = require('./pin-input/pin-input-label.cjs');
170
185
  const pinInputContext = require('./pin-input/pin-input-context.cjs');
171
186
  const popoverAnchor = require('./popover/popover-anchor.cjs');
@@ -250,6 +265,7 @@ const tagsInputItemContext = require('./tags-input/tags-input-item-context.cjs')
250
265
  const createToaster = require('./toast/create-toaster.cjs');
251
266
  const toastCloseTrigger = require('./toast/toast-close-trigger.cjs');
252
267
  const toastDescription = require('./toast/toast-description.cjs');
268
+ const toastGroup = require('./toast/toast-group.cjs');
253
269
  const toastTitle = require('./toast/toast-title.cjs');
254
270
  const toggleGroupItem = require('./toggle-group/toggle-group-item.cjs');
255
271
  const toggleGroupContext = require('./toggle-group/toggle-group-context.cjs');
@@ -274,26 +290,27 @@ exports.Editable = index$8.Editable;
274
290
  exports.Environment = index$9.Environment;
275
291
  exports.ark = factory.ark;
276
292
  exports.jsxFactory = factory.jsxFactory;
277
- exports.HoverCard = index$a.HoverCard;
278
- exports.Menu = index$b.Menu;
279
- exports.NumberInput = index$c.NumberInput;
280
- exports.Pagination = index$d.Pagination;
281
- exports.PinInput = index$e.PinInput;
282
- exports.Popover = index$f.Popover;
293
+ exports.FileUpload = index$a.FileUpload;
294
+ exports.HoverCard = index$b.HoverCard;
295
+ exports.Menu = index$c.Menu;
296
+ exports.NumberInput = index$d.NumberInput;
297
+ exports.Pagination = index$e.Pagination;
298
+ exports.PinInput = index$f.PinInput;
299
+ exports.Popover = index$g.Popover;
283
300
  exports.Portal = portal.Portal;
284
- exports.Presence = index$g.Presence;
285
- exports.RadioGroup = index$h.RadioGroup;
286
- exports.RatingGroup = index$i.RatingGroup;
287
- exports.SegmentGroup = index$j.SegmentGroup;
288
- exports.Select = index$k.Select;
289
- exports.Slider = index$l.Slider;
290
- exports.Splitter = index$m.Splitter;
291
- exports.Switch = index$n.Switch;
292
- exports.Tabs = index$o.Tabs;
293
- exports.TagsInput = index$p.TagsInput;
294
- exports.Toast = index$q.Toast;
295
- exports.ToggleGroup = index$r.ToggleGroup;
296
- exports.Tooltip = index$s.Tooltip;
301
+ exports.Presence = index$h.Presence;
302
+ exports.RadioGroup = index$i.RadioGroup;
303
+ exports.RatingGroup = index$j.RatingGroup;
304
+ exports.SegmentGroup = index$k.SegmentGroup;
305
+ exports.Select = index$l.Select;
306
+ exports.Slider = index$m.Slider;
307
+ exports.Splitter = index$n.Splitter;
308
+ exports.Switch = index$o.Switch;
309
+ exports.Tabs = index$p.Tabs;
310
+ exports.TagsInput = index$q.TagsInput;
311
+ exports.Toast = index$r.Toast;
312
+ exports.ToggleGroup = index$s.ToggleGroup;
313
+ exports.Tooltip = index$t.Tooltip;
297
314
  exports.AccordionItem = accordionItem.AccordionItem;
298
315
  exports.AccordionItemContent = accordionItemContent.AccordionItemContent;
299
316
  exports.AccordionItemIndicator = accordionItemIndicator.AccordionItemIndicator;
@@ -326,14 +343,18 @@ exports.ColorPickerChannelSliderTrack = colorPickerChannelSliderTrack.ColorPicke
326
343
  exports.ColorPickerContent = colorPickerContent.ColorPickerContent;
327
344
  exports.ColorPickerControl = colorPickerControl.ColorPickerControl;
328
345
  exports.ColorPickerEyeDropperTrigger = colorPickerEyeDropperTrigger.ColorPickerEyeDropperTrigger;
346
+ exports.ColorPickerFormatSelect = colorPickerFormatSelect.ColorPickerFormatSelect;
347
+ exports.ColorPickerFormatTrigger = colorPickerFormatTrigger.ColorPickerFormatTrigger;
329
348
  exports.ColorPickerLabel = colorPickerLabel.ColorPickerLabel;
330
349
  exports.ColorPickerPositioner = colorPickerPositioner.ColorPickerPositioner;
331
350
  exports.ColorPickerSwatch = colorPickerSwatch.ColorPickerSwatch;
332
351
  exports.ColorPickerSwatchGroup = colorPickerSwatchGroup.ColorPickerSwatchGroup;
352
+ exports.ColorPickerSwatchIndicator = colorPickerSwatchIndicator.ColorPickerSwatchIndicator;
333
353
  exports.ColorPickerSwatchTrigger = colorPickerSwatchTrigger.ColorPickerSwatchTrigger;
334
354
  exports.ColorPickerTransparencyGrid = colorPickerTransparencyGrid.ColorPickerTransparencyGrid;
335
355
  exports.ColorPickerTrigger = colorPickerTrigger.ColorPickerTrigger;
336
356
  exports.ColorPickerValueText = colorPickerValueText.ColorPickerValueText;
357
+ exports.ColorPickerView = colorPickerView.ColorPickerView;
337
358
  exports.useColorPickerAreaContext = colorPickerAreaContext.useColorPickerAreaContext;
338
359
  exports.useColorPickerChannelSliderContext = colorPickerChannelSliderContext.useColorPickerChannelSliderContext;
339
360
  exports.useColorPickerContext = colorPickerContext.useColorPickerContext;
@@ -394,6 +415,16 @@ exports.EditablePreview = editablePreview.EditablePreview;
394
415
  exports.EditableSubmitTrigger = editableSubmitTrigger.EditableSubmitTrigger;
395
416
  exports.useEditableContext = editableContext.useEditableContext;
396
417
  exports.useEnvironmentContext = environmentContext.useEnvironmentContext;
418
+ exports.FileUploadDropzone = fileUploadDropzone.FileUploadDropzone;
419
+ exports.FileUploadItem = fileUploadItem.FileUploadItem;
420
+ exports.FileUploadItemDeleteTrigger = fileUploadItemDeleteTrigger.FileUploadItemDeleteTrigger;
421
+ exports.FileUploadItemGroup = fileUploadItemGroup.FileUploadItemGroup;
422
+ exports.FileUploadItemName = fileUploadItemName.FileUploadItemName;
423
+ exports.FileUploadItemPreviewImage = fileUploadItemPreviewImage.FileUploadItemPreviewImage;
424
+ exports.FileUploadItemSizeText = fileUploadItemSizeText.FileUploadItemSizeText;
425
+ exports.FileUploadLabel = fileUploadLabel.FileUploadLabel;
426
+ exports.FileUploadTrigger = fileUploadTrigger.FileUploadTrigger;
427
+ exports.useFileUploadContext = fileUploadContext.useFileUploadContext;
397
428
  exports.HoverCardArrow = hoverCardArrow.HoverCardArrow;
398
429
  exports.HoverCardArrowTip = hoverCardArrowTip.HoverCardArrowTip;
399
430
  exports.HoverCardContent = hoverCardContent.HoverCardContent;
@@ -416,7 +447,7 @@ exports.useMenuContext = menuContext.useMenuContext;
416
447
  exports.NumberInputControl = numberInputControl.NumberInputControl;
417
448
  exports.NumberInputDecrementTrigger = numberInputDecrementTrigger.NumberInputDecrementTrigger;
418
449
  exports.NumberInputIncrementTrigger = numberInputIncrementTrigger.NumberInputIncrementTrigger;
419
- exports.NumberInputInput = numberInputField.NumberInputInput;
450
+ exports.NumberInputInput = numberInputInput.NumberInputInput;
420
451
  exports.NumberInputLabel = numberInputLabel.NumberInputLabel;
421
452
  exports.NumberInputScrubber = numberInputScrubber.NumberInputScrubber;
422
453
  exports.useNumberInputContext = numberInputContext.useNumberInputContext;
@@ -426,7 +457,7 @@ exports.PaginationNextTrigger = paginationNextTrigger.PaginationNextTrigger;
426
457
  exports.PaginationPrevTrigger = paginationPrevTrigger.PaginationPrevTrigger;
427
458
  exports.usePaginationContext = paginationContext.usePaginationContext;
428
459
  exports.PinInputControl = pinInputControl.PinInputControl;
429
- exports.PinInputInput = pinInputField.PinInputInput;
460
+ exports.PinInputInput = pinInputInput.PinInputInput;
430
461
  exports.PinInputLabel = pinInputLabel.PinInputLabel;
431
462
  exports.usePinInputContext = pinInputContext.usePinInputContext;
432
463
  exports.PopoverAnchor = popoverAnchor.PopoverAnchor;
@@ -513,6 +544,7 @@ exports.useTagsInputItemContext = tagsInputItemContext.useTagsInputItemContext;
513
544
  exports.createToaster = createToaster.createToaster;
514
545
  exports.ToastCloseTrigger = toastCloseTrigger.ToastCloseTrigger;
515
546
  exports.ToastDescription = toastDescription.ToastDescription;
547
+ exports.ToastGroup = toastGroup.ToastGroup;
516
548
  exports.ToastTitle = toastTitle.ToastTitle;
517
549
  exports.ToggleGroupItem = toggleGroupItem.ToggleGroupItem;
518
550
  exports.useToggleGroupContext = toggleGroupContext.useToggleGroupContext;
package/index.d.ts CHANGED
@@ -9,6 +9,7 @@ export * from './dialog';
9
9
  export * from './editable';
10
10
  export * from './environment';
11
11
  export * from './factory';
12
+ export * from './file-upload';
12
13
  export * from './hover-card';
13
14
  export * from './menu';
14
15
  export * from './number-input';
package/index.mjs CHANGED
@@ -9,6 +9,7 @@ export { Dialog } from './dialog/index.mjs';
9
9
  export { Editable } from './editable/index.mjs';
10
10
  export { Environment } from './environment/index.mjs';
11
11
  export { ark, jsxFactory } from './factory.mjs';
12
+ export { FileUpload } from './file-upload/index.mjs';
12
13
  export { HoverCard } from './hover-card/index.mjs';
13
14
  export { Menu } from './menu/index.mjs';
14
15
  export { NumberInput } from './number-input/index.mjs';
@@ -61,14 +62,18 @@ export { ColorPickerChannelSliderTrack } from './color-picker/color-picker-chann
61
62
  export { ColorPickerContent } from './color-picker/color-picker-content.mjs';
62
63
  export { ColorPickerControl } from './color-picker/color-picker-control.mjs';
63
64
  export { ColorPickerEyeDropperTrigger } from './color-picker/color-picker-eye-dropper-trigger.mjs';
65
+ export { ColorPickerFormatSelect } from './color-picker/color-picker-format-select.mjs';
66
+ export { ColorPickerFormatTrigger } from './color-picker/color-picker-format-trigger.mjs';
64
67
  export { ColorPickerLabel } from './color-picker/color-picker-label.mjs';
65
68
  export { ColorPickerPositioner } from './color-picker/color-picker-positioner.mjs';
66
69
  export { ColorPickerSwatch } from './color-picker/color-picker-swatch.mjs';
67
70
  export { ColorPickerSwatchGroup } from './color-picker/color-picker-swatch-group.mjs';
71
+ export { ColorPickerSwatchIndicator } from './color-picker/color-picker-swatch-indicator.mjs';
68
72
  export { ColorPickerSwatchTrigger } from './color-picker/color-picker-swatch-trigger.mjs';
69
73
  export { ColorPickerTransparencyGrid } from './color-picker/color-picker-transparency-grid.mjs';
70
74
  export { ColorPickerTrigger } from './color-picker/color-picker-trigger.mjs';
71
75
  export { ColorPickerValueText } from './color-picker/color-picker-value-text.mjs';
76
+ export { ColorPickerView } from './color-picker/color-picker-view.mjs';
72
77
  export { useColorPickerAreaContext } from './color-picker/color-picker-area-context.mjs';
73
78
  export { useColorPickerChannelSliderContext } from './color-picker/color-picker-channel-slider-context.mjs';
74
79
  export { useColorPickerContext } from './color-picker/color-picker-context.mjs';
@@ -129,6 +134,16 @@ export { EditablePreview } from './editable/editable-preview.mjs';
129
134
  export { EditableSubmitTrigger } from './editable/editable-submit-trigger.mjs';
130
135
  export { useEditableContext } from './editable/editable-context.mjs';
131
136
  export { useEnvironmentContext } from './environment/environment-context.mjs';
137
+ export { FileUploadDropzone } from './file-upload/file-upload-dropzone.mjs';
138
+ export { FileUploadItem } from './file-upload/file-upload-item.mjs';
139
+ export { FileUploadItemDeleteTrigger } from './file-upload/file-upload-item-delete-trigger.mjs';
140
+ export { FileUploadItemGroup } from './file-upload/file-upload-item-group.mjs';
141
+ export { FileUploadItemName } from './file-upload/file-upload-item-name.mjs';
142
+ export { FileUploadItemPreviewImage } from './file-upload/file-upload-item-preview-image.mjs';
143
+ export { FileUploadItemSizeText } from './file-upload/file-upload-item-size-text.mjs';
144
+ export { FileUploadLabel } from './file-upload/file-upload-label.mjs';
145
+ export { FileUploadTrigger } from './file-upload/file-upload-trigger.mjs';
146
+ export { useFileUploadContext } from './file-upload/file-upload-context.mjs';
132
147
  export { HoverCardArrow } from './hover-card/hover-card-arrow.mjs';
133
148
  export { HoverCardArrowTip } from './hover-card/hover-card-arrow-tip.mjs';
134
149
  export { HoverCardContent } from './hover-card/hover-card-content.mjs';
@@ -151,7 +166,7 @@ export { useMenuContext } from './menu/menu-context.mjs';
151
166
  export { NumberInputControl } from './number-input/number-input-control.mjs';
152
167
  export { NumberInputDecrementTrigger } from './number-input/number-input-decrement-trigger.mjs';
153
168
  export { NumberInputIncrementTrigger } from './number-input/number-input-increment-trigger.mjs';
154
- export { NumberInputInput } from './number-input/number-input-field.mjs';
169
+ export { NumberInputInput } from './number-input/number-input-input.mjs';
155
170
  export { NumberInputLabel } from './number-input/number-input-label.mjs';
156
171
  export { NumberInputScrubber } from './number-input/number-input-scrubber.mjs';
157
172
  export { useNumberInputContext } from './number-input/number-input-context.mjs';
@@ -161,7 +176,7 @@ export { PaginationNextTrigger } from './pagination/pagination-next-trigger.mjs'
161
176
  export { PaginationPrevTrigger } from './pagination/pagination-prev-trigger.mjs';
162
177
  export { usePaginationContext } from './pagination/pagination-context.mjs';
163
178
  export { PinInputControl } from './pin-input/pin-input-control.mjs';
164
- export { PinInputInput } from './pin-input/pin-input-field.mjs';
179
+ export { PinInputInput } from './pin-input/pin-input-input.mjs';
165
180
  export { PinInputLabel } from './pin-input/pin-input-label.mjs';
166
181
  export { usePinInputContext } from './pin-input/pin-input-context.mjs';
167
182
  export { PopoverAnchor } from './popover/popover-anchor.mjs';
@@ -246,6 +261,7 @@ export { useTagsInputItemContext } from './tags-input/tags-input-item-context.mj
246
261
  export { createToaster } from './toast/create-toaster.mjs';
247
262
  export { ToastCloseTrigger } from './toast/toast-close-trigger.mjs';
248
263
  export { ToastDescription } from './toast/toast-description.mjs';
264
+ export { ToastGroup } from './toast/toast-group.mjs';
249
265
  export { ToastTitle } from './toast/toast-title.mjs';
250
266
  export { ToggleGroupItem } from './toggle-group/toggle-group-item.mjs';
251
267
  export { useToggleGroupContext } from './toggle-group/toggle-group-context.mjs';
package/menu/menu.cjs CHANGED
@@ -4,7 +4,8 @@
4
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
5
5
 
6
6
  const jsxRuntime = require('react/jsx-runtime');
7
- const react = require('react');
7
+ const react = require('@zag-js/react');
8
+ const react$1 = require('react');
8
9
  const createSplitProps = require('../create-split-props.cjs');
9
10
  require('../presence/index.cjs');
10
11
  const runIfFn = require('../run-if-fn.cjs');
@@ -40,7 +41,7 @@ const Menu = (props) => {
40
41
  const parentApi = menuContext.useMenuContext();
41
42
  const parentMachine = menuContext.useMenuMachineContext();
42
43
  const { api, machine } = useMenu.useMenu(useMenuProps);
43
- const presenceApi = usePresence.usePresence({ ...presenceProps, present: api.isOpen });
44
+ const presenceApi = usePresence.usePresence(react.mergeProps({ present: api.isOpen }, presenceProps));
44
45
  const view = runIfFn.runIfFn(localProps.children, api);
45
46
  useEffectOnce.useEffectOnce(() => {
46
47
  if (!parentMachine)
@@ -48,7 +49,7 @@ const Menu = (props) => {
48
49
  parentApi.setChild(machine);
49
50
  api.setParent(parentMachine);
50
51
  });
51
- const getTriggerItemProps = react.useCallback(
52
+ const getTriggerItemProps = react$1.useCallback(
52
53
  () => parentApi.getTriggerItemProps(api),
53
54
  [api, parentApi]
54
55
  );
package/menu/menu.mjs CHANGED
@@ -1,5 +1,6 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
+ import { mergeProps } from '@zag-js/react';
3
4
  import { useCallback } from 'react';
4
5
  import { createSplitProps } from '../create-split-props.mjs';
5
6
  import '../presence/index.mjs';
@@ -36,7 +37,7 @@ const Menu = (props) => {
36
37
  const parentApi = useMenuContext();
37
38
  const parentMachine = useMenuMachineContext();
38
39
  const { api, machine } = useMenu(useMenuProps);
39
- const presenceApi = usePresence({ ...presenceProps, present: api.isOpen });
40
+ const presenceApi = usePresence(mergeProps({ present: api.isOpen }, presenceProps));
40
41
  const view = runIfFn(localProps.children, api);
41
42
  useEffectOnce(() => {
42
43
  if (!parentMachine)
@@ -7,8 +7,8 @@ const numberInput = require('./number-input.cjs');
7
7
  const numberInputContext = require('./number-input-context.cjs');
8
8
  const numberInputControl = require('./number-input-control.cjs');
9
9
  const numberInputDecrementTrigger = require('./number-input-decrement-trigger.cjs');
10
- const numberInputField = require('./number-input-field.cjs');
11
10
  const numberInputIncrementTrigger = require('./number-input-increment-trigger.cjs');
11
+ const numberInputInput = require('./number-input-input.cjs');
12
12
  const numberInputLabel = require('./number-input-label.cjs');
13
13
  const numberInputScrubber = require('./number-input-scrubber.cjs');
14
14
 
@@ -16,7 +16,7 @@ const NumberInput = Object.assign(numberInput.NumberInput, {
16
16
  Root: numberInput.NumberInput,
17
17
  Control: numberInputControl.NumberInputControl,
18
18
  DecrementTrigger: numberInputDecrementTrigger.NumberInputDecrementTrigger,
19
- Input: numberInputField.NumberInputInput,
19
+ Input: numberInputInput.NumberInputInput,
20
20
  IncrementTrigger: numberInputIncrementTrigger.NumberInputIncrementTrigger,
21
21
  Label: numberInputLabel.NumberInputLabel,
22
22
  Scrubber: numberInputScrubber.NumberInputScrubber
@@ -25,8 +25,8 @@ const NumberInput = Object.assign(numberInput.NumberInput, {
25
25
  exports.useNumberInputContext = numberInputContext.useNumberInputContext;
26
26
  exports.NumberInputControl = numberInputControl.NumberInputControl;
27
27
  exports.NumberInputDecrementTrigger = numberInputDecrementTrigger.NumberInputDecrementTrigger;
28
- exports.NumberInputInput = numberInputField.NumberInputInput;
29
28
  exports.NumberInputIncrementTrigger = numberInputIncrementTrigger.NumberInputIncrementTrigger;
29
+ exports.NumberInputInput = numberInputInput.NumberInputInput;
30
30
  exports.NumberInputLabel = numberInputLabel.NumberInputLabel;
31
31
  exports.NumberInputScrubber = numberInputScrubber.NumberInputScrubber;
32
32
  exports.NumberInput = NumberInput;
@@ -4,8 +4,8 @@ import { type NumberInputProps } from './number-input';
4
4
  import { useNumberInputContext, type NumberInputContext } from './number-input-context';
5
5
  import { NumberInputControl, type NumberInputControlProps } from './number-input-control';
6
6
  import { NumberInputDecrementTrigger, type NumberInputDecrementTriggerProps } from './number-input-decrement-trigger';
7
- import { NumberInputInput, type NumberInputInputProps } from './number-input-field';
8
7
  import { NumberInputIncrementTrigger, type NumberInputIncrementTriggerProps } from './number-input-increment-trigger';
8
+ import { NumberInputInput, type NumberInputInputProps } from './number-input-input';
9
9
  import { NumberInputLabel, type NumberInputLabelProps } from './number-input-label';
10
10
  import { NumberInputScrubber, type NumberInputScrubberProps } from './number-input-scrubber';
11
11
  declare const NumberInput: ForwardRefExoticComponent<NumberInputProps & RefAttributes<HTMLDivElement>> & {
@@ -3,8 +3,8 @@ import { NumberInput as NumberInput$1 } from './number-input.mjs';
3
3
  export { useNumberInputContext } from './number-input-context.mjs';
4
4
  import { NumberInputControl } from './number-input-control.mjs';
5
5
  import { NumberInputDecrementTrigger } from './number-input-decrement-trigger.mjs';
6
- import { NumberInputInput } from './number-input-field.mjs';
7
6
  import { NumberInputIncrementTrigger } from './number-input-increment-trigger.mjs';
7
+ import { NumberInputInput } from './number-input-input.mjs';
8
8
  import { NumberInputLabel } from './number-input-label.mjs';
9
9
  import { NumberInputScrubber } from './number-input-scrubber.mjs';
10
10
 
@@ -8,11 +8,12 @@ const react$1 = require('@zag-js/react');
8
8
  const react = require('react');
9
9
  const createSplitProps = require('../create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
+ const runIfFn = require('../run-if-fn.cjs');
11
12
  const numberInputContext = require('./number-input-context.cjs');
12
13
  const useNumberInput = require('./use-number-input.cjs');
13
14
 
14
15
  const NumberInput = react.forwardRef((props, ref) => {
15
- const [useNumberInputProps, divProps] = createSplitProps.createSplitProps()(props, [
16
+ const [useNumberInputProps, { children, ...localProps }] = createSplitProps.createSplitProps()(props, [
16
17
  "allowMouseWheel",
17
18
  "allowOverflow",
18
19
  "clampValueOnBlur",
@@ -42,8 +43,9 @@ const NumberInput = react.forwardRef((props, ref) => {
42
43
  "value"
43
44
  ]);
44
45
  const api = useNumberInput.useNumberInput(useNumberInputProps);
45
- const mergedProps = react$1.mergeProps(api.rootProps, divProps);
46
- return /* @__PURE__ */ jsxRuntime.jsx(numberInputContext.NumberInputProvider, { value: api, children: /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref }) });
46
+ const mergedProps = react$1.mergeProps(api.rootProps, localProps);
47
+ const view = runIfFn.runIfFn(children, api);
48
+ return /* @__PURE__ */ jsxRuntime.jsx(numberInputContext.NumberInputProvider, { value: api, children: /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref, children: view }) });
47
49
  });
48
50
  NumberInput.displayName = "NumberInput";
49
51
 
@@ -1,8 +1,9 @@
1
- import { ForwardRefExoticComponent, RefAttributes } from 'react';
2
- /// <reference types="react" />
1
+ import { ForwardRefExoticComponent, RefAttributes, type ReactNode } from 'react';
3
2
  import { type HTMLArkProps } from '../factory';
4
3
  import { type Assign } from '../types';
5
- import { type UseNumberInputProps } from './use-number-input';
6
- export interface NumberInputProps extends Assign<HTMLArkProps<'div'>, UseNumberInputProps> {
4
+ import { type UseNumberInputProps, type UseNumberInputReturn } from './use-number-input';
5
+ export interface NumberInputProps extends Assign<Assign<HTMLArkProps<'div'>, {
6
+ children?: ReactNode | ((api: UseNumberInputReturn) => ReactNode);
7
+ }>, UseNumberInputProps> {
7
8
  }
8
9
  export declare const NumberInput: ForwardRefExoticComponent<NumberInputProps & RefAttributes<HTMLDivElement>>;
@@ -4,11 +4,12 @@ import { mergeProps } from '@zag-js/react';
4
4
  import { forwardRef } from 'react';
5
5
  import { createSplitProps } from '../create-split-props.mjs';
6
6
  import { ark } from '../factory.mjs';
7
+ import { runIfFn } from '../run-if-fn.mjs';
7
8
  import { NumberInputProvider } from './number-input-context.mjs';
8
9
  import { useNumberInput } from './use-number-input.mjs';
9
10
 
10
11
  const NumberInput = forwardRef((props, ref) => {
11
- const [useNumberInputProps, divProps] = createSplitProps()(props, [
12
+ const [useNumberInputProps, { children, ...localProps }] = createSplitProps()(props, [
12
13
  "allowMouseWheel",
13
14
  "allowOverflow",
14
15
  "clampValueOnBlur",
@@ -38,8 +39,9 @@ const NumberInput = forwardRef((props, ref) => {
38
39
  "value"
39
40
  ]);
40
41
  const api = useNumberInput(useNumberInputProps);
41
- const mergedProps = mergeProps(api.rootProps, divProps);
42
- return /* @__PURE__ */ jsx(NumberInputProvider, { value: api, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });
42
+ const mergedProps = mergeProps(api.rootProps, localProps);
43
+ const view = runIfFn(children, api);
44
+ return /* @__PURE__ */ jsx(NumberInputProvider, { value: api, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref, children: view }) });
43
45
  });
44
46
  NumberInput.displayName = "NumberInput";
45
47
 
@@ -12,3 +12,4 @@ export declare const MouseWheel: () => JSX.Element;
12
12
  export declare const NoClamp: () => JSX.Element;
13
13
  export declare const FormUsage: () => JSX.Element;
14
14
  export declare const Formatted: () => JSX.Element;
15
+ export declare const RenderFn: () => JSX.Element;