@ark-ui/react 5.28.0 → 5.29.1

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 (295) hide show
  1. package/dist/components/accordion/accordion-item.cjs +3 -1
  2. package/dist/components/accordion/accordion-item.js +3 -1
  3. package/dist/components/accordion/accordion-root-provider.cjs +2 -1
  4. package/dist/components/accordion/accordion-root-provider.js +2 -1
  5. package/dist/components/accordion/accordion-root.cjs +2 -1
  6. package/dist/components/accordion/accordion-root.js +2 -1
  7. package/dist/components/angle-slider/angle-slider-marker.cjs +3 -2
  8. package/dist/components/angle-slider/angle-slider-marker.js +3 -2
  9. package/dist/components/angle-slider/angle-slider-root-provider.cjs +2 -1
  10. package/dist/components/angle-slider/angle-slider-root-provider.js +2 -1
  11. package/dist/components/angle-slider/angle-slider-root.cjs +2 -1
  12. package/dist/components/angle-slider/angle-slider-root.js +2 -1
  13. package/dist/components/avatar/avatar-root-provider.cjs +2 -1
  14. package/dist/components/avatar/avatar-root-provider.js +2 -1
  15. package/dist/components/avatar/avatar-root.cjs +2 -1
  16. package/dist/components/avatar/avatar-root.js +2 -1
  17. package/dist/components/bottom-sheet/bottom-sheet-content.cjs +2 -1
  18. package/dist/components/bottom-sheet/bottom-sheet-content.js +2 -1
  19. package/dist/components/carousel/carousel-indicator.cjs +2 -1
  20. package/dist/components/carousel/carousel-indicator.js +2 -1
  21. package/dist/components/carousel/carousel-item.cjs +2 -1
  22. package/dist/components/carousel/carousel-item.js +2 -1
  23. package/dist/components/carousel/carousel-root-provider.cjs +2 -1
  24. package/dist/components/carousel/carousel-root-provider.js +2 -1
  25. package/dist/components/carousel/carousel-root.cjs +3 -1
  26. package/dist/components/carousel/carousel-root.js +3 -1
  27. package/dist/components/checkbox/checkbox-group-provider.cjs +2 -1
  28. package/dist/components/checkbox/checkbox-group-provider.js +2 -1
  29. package/dist/components/checkbox/checkbox-group.cjs +2 -1
  30. package/dist/components/checkbox/checkbox-group.js +2 -1
  31. package/dist/components/checkbox/checkbox-root-provider.cjs +2 -1
  32. package/dist/components/checkbox/checkbox-root-provider.js +2 -1
  33. package/dist/components/checkbox/checkbox-root.cjs +2 -1
  34. package/dist/components/checkbox/checkbox-root.js +2 -1
  35. package/dist/components/clipboard/clipboard-root-provider.cjs +2 -1
  36. package/dist/components/clipboard/clipboard-root-provider.js +2 -1
  37. package/dist/components/clipboard/clipboard-root.cjs +2 -1
  38. package/dist/components/clipboard/clipboard-root.js +2 -1
  39. package/dist/components/collapsible/collapsible-root-provider.cjs +2 -1
  40. package/dist/components/collapsible/collapsible-root-provider.js +2 -1
  41. package/dist/components/color-picker/color-picker-area.cjs +2 -1
  42. package/dist/components/color-picker/color-picker-area.js +2 -1
  43. package/dist/components/color-picker/color-picker-channel-input.cjs +2 -1
  44. package/dist/components/color-picker/color-picker-channel-input.js +2 -1
  45. package/dist/components/color-picker/color-picker-channel-slider.cjs +2 -1
  46. package/dist/components/color-picker/color-picker-channel-slider.js +2 -1
  47. package/dist/components/color-picker/color-picker-root-provider.cjs +2 -1
  48. package/dist/components/color-picker/color-picker-root-provider.js +2 -1
  49. package/dist/components/color-picker/color-picker-root.cjs +2 -1
  50. package/dist/components/color-picker/color-picker-root.js +2 -1
  51. package/dist/components/color-picker/color-picker-swatch-trigger.cjs +2 -1
  52. package/dist/components/color-picker/color-picker-swatch-trigger.js +2 -1
  53. package/dist/components/color-picker/color-picker-swatch.cjs +2 -1
  54. package/dist/components/color-picker/color-picker-swatch.js +2 -1
  55. package/dist/components/color-picker/color-picker-transparency-grid.cjs +2 -1
  56. package/dist/components/color-picker/color-picker-transparency-grid.js +2 -1
  57. package/dist/components/color-picker/color-picker-value-swatch.cjs +2 -1
  58. package/dist/components/color-picker/color-picker-value-swatch.js +2 -1
  59. package/dist/components/color-picker/color-picker-view.cjs +2 -1
  60. package/dist/components/color-picker/color-picker-view.js +2 -1
  61. package/dist/components/combobox/combobox-item-group.cjs +2 -1
  62. package/dist/components/combobox/combobox-item-group.js +2 -1
  63. package/dist/components/combobox/combobox-item.cjs +2 -1
  64. package/dist/components/combobox/combobox-item.js +2 -1
  65. package/dist/components/combobox/combobox-trigger.cjs +2 -1
  66. package/dist/components/combobox/combobox-trigger.js +2 -1
  67. package/dist/components/date-picker/date-picker-input.cjs +2 -1
  68. package/dist/components/date-picker/date-picker-input.js +2 -1
  69. package/dist/components/date-picker/date-picker-preset-trigger.cjs +2 -1
  70. package/dist/components/date-picker/date-picker-preset-trigger.js +2 -1
  71. package/dist/components/date-picker/date-picker-root-provider.cjs +2 -1
  72. package/dist/components/date-picker/date-picker-root-provider.js +2 -1
  73. package/dist/components/date-picker/date-picker-root.cjs +2 -1
  74. package/dist/components/date-picker/date-picker-root.js +2 -1
  75. package/dist/components/date-picker/date-picker-table-cell.cjs +2 -6
  76. package/dist/components/date-picker/date-picker-table-cell.js +2 -6
  77. package/dist/components/date-picker/date-picker-table.cjs +2 -1
  78. package/dist/components/date-picker/date-picker-table.js +2 -1
  79. package/dist/components/date-picker/date-picker-view.cjs +2 -1
  80. package/dist/components/date-picker/date-picker-view.js +2 -1
  81. package/dist/components/editable/editable-root-provider.cjs +2 -1
  82. package/dist/components/editable/editable-root-provider.js +2 -1
  83. package/dist/components/editable/editable-root.cjs +2 -1
  84. package/dist/components/editable/editable-root.js +2 -1
  85. package/dist/components/field/field-root-provider.cjs +2 -1
  86. package/dist/components/field/field-root-provider.js +2 -1
  87. package/dist/components/field/field-root.cjs +2 -1
  88. package/dist/components/field/field-root.js +2 -1
  89. package/dist/components/fieldset/fieldset-root-provider.cjs +2 -1
  90. package/dist/components/fieldset/fieldset-root-provider.js +2 -1
  91. package/dist/components/fieldset/fieldset-root.cjs +2 -1
  92. package/dist/components/fieldset/fieldset-root.js +2 -1
  93. package/dist/components/fieldset/use-fieldset.cjs +32 -46
  94. package/dist/components/fieldset/use-fieldset.js +33 -47
  95. package/dist/components/file-upload/file-upload-dropzone.cjs +2 -1
  96. package/dist/components/file-upload/file-upload-dropzone.js +2 -1
  97. package/dist/components/file-upload/file-upload-item-group.cjs +2 -1
  98. package/dist/components/file-upload/file-upload-item-group.js +2 -1
  99. package/dist/components/file-upload/file-upload-item.cjs +2 -1
  100. package/dist/components/file-upload/file-upload-item.js +2 -1
  101. package/dist/components/file-upload/file-upload-root-provider.cjs +2 -1
  102. package/dist/components/file-upload/file-upload-root-provider.js +2 -1
  103. package/dist/components/file-upload/file-upload-root.cjs +2 -1
  104. package/dist/components/file-upload/file-upload-root.js +2 -1
  105. package/dist/components/floating-panel/floating-panel-resize-trigger.cjs +2 -1
  106. package/dist/components/floating-panel/floating-panel-resize-trigger.js +2 -1
  107. package/dist/components/floating-panel/floating-panel-root-provider.cjs +2 -1
  108. package/dist/components/floating-panel/floating-panel-root-provider.js +2 -1
  109. package/dist/components/floating-panel/floating-panel-root.cjs +2 -1
  110. package/dist/components/floating-panel/floating-panel-root.js +2 -1
  111. package/dist/components/floating-panel/floating-panel-stage-trigger.cjs +2 -1
  112. package/dist/components/floating-panel/floating-panel-stage-trigger.js +2 -1
  113. package/dist/components/focus-trap/focus-trap.cjs +2 -1
  114. package/dist/components/focus-trap/focus-trap.js +2 -1
  115. package/dist/components/highlight/highlight.cjs +2 -1
  116. package/dist/components/highlight/highlight.js +2 -1
  117. package/dist/components/image-cropper/image-cropper-root-provider.cjs +2 -1
  118. package/dist/components/image-cropper/image-cropper-root-provider.js +2 -1
  119. package/dist/components/image-cropper/image-cropper-root.cjs +2 -1
  120. package/dist/components/image-cropper/image-cropper-root.js +2 -1
  121. package/dist/components/index.cjs +11 -5
  122. package/dist/components/index.js +2 -1
  123. package/dist/components/listbox/listbox-input.cjs +2 -1
  124. package/dist/components/listbox/listbox-input.js +2 -1
  125. package/dist/components/listbox/listbox-item-group.cjs +2 -1
  126. package/dist/components/listbox/listbox-item-group.js +2 -1
  127. package/dist/components/listbox/listbox-item.cjs +2 -1
  128. package/dist/components/listbox/listbox-item.js +2 -1
  129. package/dist/components/marquee/marquee-edge.cjs +2 -1
  130. package/dist/components/marquee/marquee-edge.js +2 -1
  131. package/dist/components/marquee/marquee-root-provider.cjs +2 -1
  132. package/dist/components/marquee/marquee-root-provider.js +2 -1
  133. package/dist/components/marquee/marquee-root.cjs +2 -1
  134. package/dist/components/marquee/marquee-root.js +2 -1
  135. package/dist/components/menu/menu-checkbox-item.cjs +2 -1
  136. package/dist/components/menu/menu-checkbox-item.js +2 -1
  137. package/dist/components/menu/menu-item-group.cjs +2 -1
  138. package/dist/components/menu/menu-item-group.js +2 -1
  139. package/dist/components/menu/menu-item.cjs +2 -1
  140. package/dist/components/menu/menu-item.js +2 -1
  141. package/dist/components/menu/menu-radio-item-group.cjs +2 -5
  142. package/dist/components/menu/menu-radio-item-group.js +2 -5
  143. package/dist/components/menu/menu-radio-item.cjs +2 -1
  144. package/dist/components/menu/menu-radio-item.js +2 -1
  145. package/dist/components/menu/menu-root.cjs +2 -1
  146. package/dist/components/menu/menu-root.js +2 -1
  147. package/dist/components/number-input/number-input-root-provider.cjs +2 -1
  148. package/dist/components/number-input/number-input-root-provider.js +2 -1
  149. package/dist/components/number-input/number-input-root.cjs +2 -1
  150. package/dist/components/number-input/number-input-root.js +2 -1
  151. package/dist/components/pagination/pagination-ellipsis.cjs +2 -1
  152. package/dist/components/pagination/pagination-ellipsis.js +2 -1
  153. package/dist/components/pagination/pagination-item.cjs +2 -1
  154. package/dist/components/pagination/pagination-item.js +2 -1
  155. package/dist/components/pagination/pagination-root-provider.cjs +2 -1
  156. package/dist/components/pagination/pagination-root-provider.js +2 -1
  157. package/dist/components/pagination/pagination-root.cjs +2 -1
  158. package/dist/components/pagination/pagination-root.js +2 -1
  159. package/dist/components/password-input/password-input-root.cjs +2 -1
  160. package/dist/components/password-input/password-input-root.js +2 -1
  161. package/dist/components/pin-input/pin-input-input.cjs +2 -1
  162. package/dist/components/pin-input/pin-input-input.js +2 -1
  163. package/dist/components/pin-input/pin-input-root-provider.cjs +2 -1
  164. package/dist/components/pin-input/pin-input-root-provider.js +2 -1
  165. package/dist/components/pin-input/pin-input-root.cjs +2 -1
  166. package/dist/components/pin-input/pin-input-root.js +2 -1
  167. package/dist/components/progress/progress-root-provider.cjs +2 -1
  168. package/dist/components/progress/progress-root-provider.js +2 -1
  169. package/dist/components/progress/progress-root.cjs +2 -1
  170. package/dist/components/progress/progress-root.js +2 -1
  171. package/dist/components/progress/progress-view.cjs +2 -1
  172. package/dist/components/progress/progress-view.js +2 -1
  173. package/dist/components/qr-code/qr-code-download-trigger.cjs +2 -5
  174. package/dist/components/qr-code/qr-code-download-trigger.js +2 -5
  175. package/dist/components/qr-code/qr-code-root-provider.cjs +2 -1
  176. package/dist/components/qr-code/qr-code-root-provider.js +2 -1
  177. package/dist/components/qr-code/qr-code-root.cjs +2 -1
  178. package/dist/components/qr-code/qr-code-root.js +2 -1
  179. package/dist/components/radio-group/radio-group-item.cjs +2 -1
  180. package/dist/components/radio-group/radio-group-item.js +2 -1
  181. package/dist/components/radio-group/radio-group-root-provider.cjs +2 -1
  182. package/dist/components/radio-group/radio-group-root-provider.js +2 -1
  183. package/dist/components/radio-group/radio-group-root.cjs +2 -1
  184. package/dist/components/radio-group/radio-group-root.js +2 -1
  185. package/dist/components/rating-group/rating-group-item.cjs +2 -1
  186. package/dist/components/rating-group/rating-group-item.js +2 -1
  187. package/dist/components/rating-group/rating-group-root-provider.cjs +2 -1
  188. package/dist/components/rating-group/rating-group-root-provider.js +2 -1
  189. package/dist/components/rating-group/rating-group-root.cjs +2 -1
  190. package/dist/components/rating-group/rating-group-root.js +2 -1
  191. package/dist/components/scroll-area/scroll-area-root-provider.cjs +2 -1
  192. package/dist/components/scroll-area/scroll-area-root-provider.js +2 -1
  193. package/dist/components/scroll-area/scroll-area-root.cjs +2 -1
  194. package/dist/components/scroll-area/scroll-area-root.js +2 -1
  195. package/dist/components/scroll-area/scroll-area-scrollbar.cjs +2 -1
  196. package/dist/components/scroll-area/scroll-area-scrollbar.js +2 -1
  197. package/dist/components/segment-group/segment-group-item.cjs +2 -1
  198. package/dist/components/segment-group/segment-group-item.js +2 -1
  199. package/dist/components/segment-group/segment-group-root-provider.cjs +2 -1
  200. package/dist/components/segment-group/segment-group-root-provider.js +2 -1
  201. package/dist/components/segment-group/segment-group-root.cjs +2 -1
  202. package/dist/components/segment-group/segment-group-root.js +2 -1
  203. package/dist/components/select/select-item-group.cjs +2 -1
  204. package/dist/components/select/select-item-group.js +2 -1
  205. package/dist/components/select/select-item.cjs +2 -1
  206. package/dist/components/select/select-item.js +2 -1
  207. package/dist/components/signature-pad/signature-pad-hidden-input.cjs +2 -1
  208. package/dist/components/signature-pad/signature-pad-hidden-input.js +2 -1
  209. package/dist/components/signature-pad/signature-pad-root-provider.cjs +2 -1
  210. package/dist/components/signature-pad/signature-pad-root-provider.js +2 -1
  211. package/dist/components/signature-pad/signature-pad-root.cjs +2 -1
  212. package/dist/components/signature-pad/signature-pad-root.js +2 -1
  213. package/dist/components/slider/slider-marker.cjs +2 -1
  214. package/dist/components/slider/slider-marker.js +2 -1
  215. package/dist/components/slider/slider-root-provider.cjs +2 -1
  216. package/dist/components/slider/slider-root-provider.js +2 -1
  217. package/dist/components/slider/slider-root.cjs +2 -1
  218. package/dist/components/slider/slider-root.js +2 -1
  219. package/dist/components/slider/slider-thumb.cjs +2 -1
  220. package/dist/components/slider/slider-thumb.js +2 -1
  221. package/dist/components/splitter/index.cjs +11 -5
  222. package/dist/components/splitter/index.d.cts +2 -0
  223. package/dist/components/splitter/index.d.ts +2 -0
  224. package/dist/components/splitter/index.js +2 -1
  225. package/dist/components/splitter/splitter-panel.cjs +2 -1
  226. package/dist/components/splitter/splitter-panel.js +2 -1
  227. package/dist/components/splitter/splitter-resize-trigger-indicator.cjs +23 -0
  228. package/dist/components/splitter/splitter-resize-trigger-indicator.d.cts +7 -0
  229. package/dist/components/splitter/splitter-resize-trigger-indicator.d.ts +7 -0
  230. package/dist/components/splitter/splitter-resize-trigger-indicator.js +19 -0
  231. package/dist/components/splitter/splitter-resize-trigger.cjs +4 -2
  232. package/dist/components/splitter/splitter-resize-trigger.js +4 -2
  233. package/dist/components/splitter/splitter-root-provider.cjs +2 -1
  234. package/dist/components/splitter/splitter-root-provider.js +2 -1
  235. package/dist/components/splitter/splitter-root.cjs +2 -1
  236. package/dist/components/splitter/splitter-root.js +2 -1
  237. package/dist/components/splitter/splitter.cjs +7 -0
  238. package/dist/components/splitter/splitter.d.cts +2 -0
  239. package/dist/components/splitter/splitter.d.ts +2 -0
  240. package/dist/components/splitter/splitter.js +2 -0
  241. package/dist/components/splitter/use-splitter-resize-trigger-props-context.cjs +15 -0
  242. package/dist/components/splitter/use-splitter-resize-trigger-props-context.d.cts +3 -0
  243. package/dist/components/splitter/use-splitter-resize-trigger-props-context.d.ts +3 -0
  244. package/dist/components/splitter/use-splitter-resize-trigger-props-context.js +10 -0
  245. package/dist/components/steps/steps-content.cjs +2 -1
  246. package/dist/components/steps/steps-content.js +2 -1
  247. package/dist/components/steps/steps-item.cjs +2 -1
  248. package/dist/components/steps/steps-item.js +2 -1
  249. package/dist/components/steps/steps-root-provider.cjs +2 -1
  250. package/dist/components/steps/steps-root-provider.js +2 -1
  251. package/dist/components/steps/steps-root.cjs +2 -1
  252. package/dist/components/steps/steps-root.js +2 -1
  253. package/dist/components/switch/switch-root-provider.cjs +2 -1
  254. package/dist/components/switch/switch-root-provider.js +2 -1
  255. package/dist/components/switch/switch-root.cjs +3 -2
  256. package/dist/components/switch/switch-root.js +3 -2
  257. package/dist/components/tabs/tab-content.cjs +2 -1
  258. package/dist/components/tabs/tab-content.js +2 -1
  259. package/dist/components/tabs/tab-trigger.cjs +2 -1
  260. package/dist/components/tabs/tab-trigger.js +2 -1
  261. package/dist/components/tabs/tabs-root-provider.cjs +3 -2
  262. package/dist/components/tabs/tabs-root-provider.js +3 -2
  263. package/dist/components/tabs/tabs-root.cjs +3 -2
  264. package/dist/components/tabs/tabs-root.js +3 -2
  265. package/dist/components/tags-input/tags-input-item.cjs +2 -1
  266. package/dist/components/tags-input/tags-input-item.js +2 -1
  267. package/dist/components/tags-input/tags-input-root-provider.cjs +2 -1
  268. package/dist/components/tags-input/tags-input-root-provider.js +2 -1
  269. package/dist/components/tags-input/tags-input-root.cjs +2 -1
  270. package/dist/components/tags-input/tags-input-root.js +2 -1
  271. package/dist/components/timer/timer-action-trigger.cjs +2 -1
  272. package/dist/components/timer/timer-action-trigger.js +2 -1
  273. package/dist/components/timer/timer-item.cjs +2 -1
  274. package/dist/components/timer/timer-item.js +2 -1
  275. package/dist/components/timer/timer-root-provider.cjs +2 -1
  276. package/dist/components/timer/timer-root-provider.js +2 -1
  277. package/dist/components/timer/timer-root.cjs +2 -1
  278. package/dist/components/timer/timer-root.js +2 -1
  279. package/dist/components/toggle/toggle-root.cjs +2 -1
  280. package/dist/components/toggle/toggle-root.js +2 -1
  281. package/dist/components/toggle-group/toggle-group-item.cjs +2 -1
  282. package/dist/components/toggle-group/toggle-group-item.js +2 -1
  283. package/dist/components/toggle-group/toggle-group-root-provider.cjs +2 -1
  284. package/dist/components/toggle-group/toggle-group-root-provider.js +2 -1
  285. package/dist/components/toggle-group/toggle-group-root.cjs +2 -1
  286. package/dist/components/toggle-group/toggle-group-root.js +2 -1
  287. package/dist/components/tour/tour-action-trigger.cjs +2 -1
  288. package/dist/components/tour/tour-action-trigger.js +2 -1
  289. package/dist/components/tree-view/tree-view-node-provider.cjs +2 -1
  290. package/dist/components/tree-view/tree-view-node-provider.js +2 -1
  291. package/dist/index.cjs +11 -5
  292. package/dist/index.js +2 -1
  293. package/dist/utils/create-context.cjs +4 -1
  294. package/dist/utils/create-context.js +4 -1
  295. package/package.json +70 -70
@@ -12,8 +12,7 @@ const fieldset_anatomy = require('./fieldset.anatomy.cjs');
12
12
  const useFieldset = (props = {}) => {
13
13
  const { disabled = false, invalid = false } = props;
14
14
  const env = useEnvironmentContext.useEnvironmentContext();
15
- const hasErrorText = react.useRef(false);
16
- const hasHelperText = react.useRef(false);
15
+ const [textElements, setTextElements] = react.useState({ hasErrorText: false, hasHelperText: false });
17
16
  const uid = react.useId();
18
17
  const id = props.id ?? uid;
19
18
  const rootRef = react.useRef(null);
@@ -25,8 +24,9 @@ const useFieldset = (props = {}) => {
25
24
  if (!rootNode) return;
26
25
  const checkTextElements = () => {
27
26
  const docOrShadowRoot = env.getRootNode();
28
- hasErrorText.current = !!docOrShadowRoot.getElementById(errorTextId);
29
- hasHelperText.current = !!docOrShadowRoot.getElementById(helperTextId);
27
+ const hasErrorText = !!docOrShadowRoot.getElementById(errorTextId);
28
+ const hasHelperText = !!docOrShadowRoot.getElementById(helperTextId);
29
+ setTextElements({ hasErrorText, hasHelperText });
30
30
  };
31
31
  checkTextElements();
32
32
  const win = env.getWindow();
@@ -34,48 +34,34 @@ const useFieldset = (props = {}) => {
34
34
  observer.observe(rootNode, { childList: true, subtree: true });
35
35
  return () => observer.disconnect();
36
36
  }, [env, errorTextId, helperTextId]);
37
- const labelIds = react.useMemo(() => {
38
- const ids = [];
39
- if (hasErrorText.current && invalid) ids.push(errorTextId);
40
- if (hasHelperText.current) ids.push(helperTextId);
41
- return ids.join(" ") || void 0;
42
- }, [invalid, errorTextId, helperTextId]);
43
- const getRootProps = react.useMemo(
44
- () => () => ({
45
- ...fieldset_anatomy.parts.root.attrs,
46
- ref: rootRef,
47
- disabled,
48
- "data-disabled": domQuery.dataAttr(disabled),
49
- "data-invalid": domQuery.dataAttr(invalid),
50
- "aria-labelledby": legendId,
51
- "aria-describedby": labelIds
52
- }),
53
- [disabled, invalid, legendId, labelIds]
54
- );
55
- const getLegendProps = react.useMemo(
56
- () => () => ({
57
- id: legendId,
58
- ...fieldset_anatomy.parts.legend.attrs,
59
- "data-disabled": domQuery.dataAttr(disabled),
60
- "data-invalid": domQuery.dataAttr(invalid)
61
- }),
62
- [legendId, disabled, invalid]
63
- );
64
- const getHelperTextProps = react.useMemo(
65
- () => () => ({
66
- id: helperTextId,
67
- ...fieldset_anatomy.parts.helperText.attrs
68
- }),
69
- [helperTextId]
70
- );
71
- const getErrorTextProps = react.useMemo(
72
- () => () => ({
73
- id: errorTextId,
74
- ...fieldset_anatomy.parts.errorText.attrs,
75
- "aria-live": "polite"
76
- }),
77
- [errorTextId]
78
- );
37
+ const ids = [];
38
+ if (textElements.hasErrorText && invalid) ids.push(errorTextId);
39
+ if (textElements.hasHelperText) ids.push(helperTextId);
40
+ const labelIds = ids.length > 0 ? ids.join(" ") : void 0;
41
+ const getRootProps = () => ({
42
+ ...fieldset_anatomy.parts.root.attrs,
43
+ ref: rootRef,
44
+ disabled,
45
+ "data-disabled": domQuery.dataAttr(disabled),
46
+ "data-invalid": domQuery.dataAttr(invalid),
47
+ "aria-labelledby": legendId,
48
+ "aria-describedby": labelIds
49
+ });
50
+ const getLegendProps = () => ({
51
+ id: legendId,
52
+ ...fieldset_anatomy.parts.legend.attrs,
53
+ "data-disabled": domQuery.dataAttr(disabled),
54
+ "data-invalid": domQuery.dataAttr(invalid)
55
+ });
56
+ const getHelperTextProps = () => ({
57
+ id: helperTextId,
58
+ ...fieldset_anatomy.parts.helperText.attrs
59
+ });
60
+ const getErrorTextProps = () => ({
61
+ id: errorTextId,
62
+ ...fieldset_anatomy.parts.errorText.attrs,
63
+ "aria-live": "polite"
64
+ });
79
65
  return {
80
66
  refs: {
81
67
  rootRef
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { dataAttr } from '@zag-js/dom-query';
3
- import { useRef, useId, useMemo } from 'react';
3
+ import { useState, useId, useRef } from 'react';
4
4
  import { useEnvironmentContext } from '../../providers/environment/use-environment-context.js';
5
5
  import { useSafeLayoutEffect } from '../../utils/use-safe-layout-effect.js';
6
6
  import { parts } from './fieldset.anatomy.js';
@@ -8,8 +8,7 @@ import { parts } from './fieldset.anatomy.js';
8
8
  const useFieldset = (props = {}) => {
9
9
  const { disabled = false, invalid = false } = props;
10
10
  const env = useEnvironmentContext();
11
- const hasErrorText = useRef(false);
12
- const hasHelperText = useRef(false);
11
+ const [textElements, setTextElements] = useState({ hasErrorText: false, hasHelperText: false });
13
12
  const uid = useId();
14
13
  const id = props.id ?? uid;
15
14
  const rootRef = useRef(null);
@@ -21,8 +20,9 @@ const useFieldset = (props = {}) => {
21
20
  if (!rootNode) return;
22
21
  const checkTextElements = () => {
23
22
  const docOrShadowRoot = env.getRootNode();
24
- hasErrorText.current = !!docOrShadowRoot.getElementById(errorTextId);
25
- hasHelperText.current = !!docOrShadowRoot.getElementById(helperTextId);
23
+ const hasErrorText = !!docOrShadowRoot.getElementById(errorTextId);
24
+ const hasHelperText = !!docOrShadowRoot.getElementById(helperTextId);
25
+ setTextElements({ hasErrorText, hasHelperText });
26
26
  };
27
27
  checkTextElements();
28
28
  const win = env.getWindow();
@@ -30,48 +30,34 @@ const useFieldset = (props = {}) => {
30
30
  observer.observe(rootNode, { childList: true, subtree: true });
31
31
  return () => observer.disconnect();
32
32
  }, [env, errorTextId, helperTextId]);
33
- const labelIds = useMemo(() => {
34
- const ids = [];
35
- if (hasErrorText.current && invalid) ids.push(errorTextId);
36
- if (hasHelperText.current) ids.push(helperTextId);
37
- return ids.join(" ") || void 0;
38
- }, [invalid, errorTextId, helperTextId]);
39
- const getRootProps = useMemo(
40
- () => () => ({
41
- ...parts.root.attrs,
42
- ref: rootRef,
43
- disabled,
44
- "data-disabled": dataAttr(disabled),
45
- "data-invalid": dataAttr(invalid),
46
- "aria-labelledby": legendId,
47
- "aria-describedby": labelIds
48
- }),
49
- [disabled, invalid, legendId, labelIds]
50
- );
51
- const getLegendProps = useMemo(
52
- () => () => ({
53
- id: legendId,
54
- ...parts.legend.attrs,
55
- "data-disabled": dataAttr(disabled),
56
- "data-invalid": dataAttr(invalid)
57
- }),
58
- [legendId, disabled, invalid]
59
- );
60
- const getHelperTextProps = useMemo(
61
- () => () => ({
62
- id: helperTextId,
63
- ...parts.helperText.attrs
64
- }),
65
- [helperTextId]
66
- );
67
- const getErrorTextProps = useMemo(
68
- () => () => ({
69
- id: errorTextId,
70
- ...parts.errorText.attrs,
71
- "aria-live": "polite"
72
- }),
73
- [errorTextId]
74
- );
33
+ const ids = [];
34
+ if (textElements.hasErrorText && invalid) ids.push(errorTextId);
35
+ if (textElements.hasHelperText) ids.push(helperTextId);
36
+ const labelIds = ids.length > 0 ? ids.join(" ") : void 0;
37
+ const getRootProps = () => ({
38
+ ...parts.root.attrs,
39
+ ref: rootRef,
40
+ disabled,
41
+ "data-disabled": dataAttr(disabled),
42
+ "data-invalid": dataAttr(invalid),
43
+ "aria-labelledby": legendId,
44
+ "aria-describedby": labelIds
45
+ });
46
+ const getLegendProps = () => ({
47
+ id: legendId,
48
+ ...parts.legend.attrs,
49
+ "data-disabled": dataAttr(disabled),
50
+ "data-invalid": dataAttr(invalid)
51
+ });
52
+ const getHelperTextProps = () => ({
53
+ id: helperTextId,
54
+ ...parts.helperText.attrs
55
+ });
56
+ const getErrorTextProps = () => ({
57
+ id: errorTextId,
58
+ ...parts.errorText.attrs,
59
+ "aria-live": "polite"
60
+ });
75
61
  return {
76
62
  refs: {
77
63
  rootRef
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useFileUploadContext = require('./use-file-upload-context.cjs');
12
12
 
13
+ const splitDropzoneProps = createSplitProps.createSplitProps();
13
14
  const FileUploadDropzone = react.forwardRef((props, ref) => {
14
- const [dropzoneProps, localProps] = createSplitProps.createSplitProps()(props, ["disableClick"]);
15
+ const [dropzoneProps, localProps] = splitDropzoneProps(props, ["disableClick"]);
15
16
  const fileUpload = useFileUploadContext.useFileUploadContext();
16
17
  const mergedProps = react$1.mergeProps(fileUpload.getDropzoneProps(dropzoneProps), localProps);
17
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref });
@@ -6,8 +6,9 @@ import { createSplitProps } from '../../utils/create-split-props.js';
6
6
  import { ark } from '../factory.js';
7
7
  import { useFileUploadContext } from './use-file-upload-context.js';
8
8
 
9
+ const splitDropzoneProps = createSplitProps();
9
10
  const FileUploadDropzone = forwardRef((props, ref) => {
10
- const [dropzoneProps, localProps] = createSplitProps()(props, ["disableClick"]);
11
+ const [dropzoneProps, localProps] = splitDropzoneProps(props, ["disableClick"]);
11
12
  const fileUpload = useFileUploadContext();
12
13
  const mergedProps = mergeProps(fileUpload.getDropzoneProps(dropzoneProps), localProps);
13
14
  return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });
@@ -11,8 +11,9 @@ const factory = require('../factory.cjs');
11
11
  const useFileUploadContext = require('./use-file-upload-context.cjs');
12
12
  const useFileUploadItemGroupPropsContext = require('./use-file-upload-item-group-props-context.cjs');
13
13
 
14
+ const splitItemGroupProps = createSplitProps.createSplitProps();
14
15
  const FileUploadItemGroup = react.forwardRef((props, ref) => {
15
- const [itemGroupProps, localProps] = createSplitProps.createSplitProps()(props, ["type"]);
16
+ const [itemGroupProps, localProps] = splitItemGroupProps(props, ["type"]);
16
17
  const fileUpload = useFileUploadContext.useFileUploadContext();
17
18
  const mergedProps = react$1.mergeProps(fileUpload.getItemGroupProps(itemGroupProps), localProps);
18
19
  return /* @__PURE__ */ jsxRuntime.jsx(useFileUploadItemGroupPropsContext.FileUploadItemGroupPropsProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsxRuntime.jsx(factory.ark.ul, { ...mergedProps, ref }) });
@@ -7,8 +7,9 @@ import { ark } from '../factory.js';
7
7
  import { useFileUploadContext } from './use-file-upload-context.js';
8
8
  import { FileUploadItemGroupPropsProvider } from './use-file-upload-item-group-props-context.js';
9
9
 
10
+ const splitItemGroupProps = createSplitProps();
10
11
  const FileUploadItemGroup = forwardRef((props, ref) => {
11
- const [itemGroupProps, localProps] = createSplitProps()(props, ["type"]);
12
+ const [itemGroupProps, localProps] = splitItemGroupProps(props, ["type"]);
12
13
  const fileUpload = useFileUploadContext();
13
14
  const mergedProps = mergeProps(fileUpload.getItemGroupProps(itemGroupProps), localProps);
14
15
  return /* @__PURE__ */ jsx(FileUploadItemGroupPropsProvider, { value: itemGroupProps, children: /* @__PURE__ */ jsx(ark.ul, { ...mergedProps, ref }) });
@@ -12,8 +12,9 @@ const useFileUploadContext = require('./use-file-upload-context.cjs');
12
12
  const useFileUploadItemGroupPropsContext = require('./use-file-upload-item-group-props-context.cjs');
13
13
  const useFileUploadItemPropsContext = require('./use-file-upload-item-props-context.cjs');
14
14
 
15
+ const splitItemBaseProps = createSplitProps.createSplitProps();
15
16
  const FileUploadItem = react.forwardRef((props, ref) => {
16
- const [itemProps, localProps] = createSplitProps.createSplitProps()(props, ["file"]);
17
+ const [itemProps, localProps] = splitItemBaseProps(props, ["file"]);
17
18
  const fileUpload = useFileUploadContext.useFileUploadContext();
18
19
  const itemGroupProps = useFileUploadItemGroupPropsContext.useFileUploadItemGroupPropsContext();
19
20
  const itemPropsWithType = { ...itemProps, type: itemGroupProps.type };
@@ -8,8 +8,9 @@ import { useFileUploadContext } from './use-file-upload-context.js';
8
8
  import { useFileUploadItemGroupPropsContext } from './use-file-upload-item-group-props-context.js';
9
9
  import { FileUploadItemPropsProvider } from './use-file-upload-item-props-context.js';
10
10
 
11
+ const splitItemBaseProps = createSplitProps();
11
12
  const FileUploadItem = forwardRef((props, ref) => {
12
- const [itemProps, localProps] = createSplitProps()(props, ["file"]);
13
+ const [itemProps, localProps] = splitItemBaseProps(props, ["file"]);
13
14
  const fileUpload = useFileUploadContext();
14
15
  const itemGroupProps = useFileUploadItemGroupPropsContext();
15
16
  const itemPropsWithType = { ...itemProps, type: itemGroupProps.type };
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useFileUploadContext = require('./use-file-upload-context.cjs');
12
12
 
13
+ const splitRootProviderProps = createSplitProps.createSplitProps();
13
14
  const FileUploadRootProvider = react.forwardRef((props, ref) => {
14
- const [{ value: fileUpload }, localProps] = createSplitProps.createSplitProps()(props, ["value"]);
15
+ const [{ value: fileUpload }, localProps] = splitRootProviderProps(props, ["value"]);
15
16
  const mergedProps = react$1.mergeProps(fileUpload.getRootProps(), localProps);
16
17
  return /* @__PURE__ */ jsxRuntime.jsx(useFileUploadContext.FileUploadProvider, { value: fileUpload, children: /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref }) });
17
18
  });
@@ -6,8 +6,9 @@ import { createSplitProps } from '../../utils/create-split-props.js';
6
6
  import { ark } from '../factory.js';
7
7
  import { FileUploadProvider } from './use-file-upload-context.js';
8
8
 
9
+ const splitRootProviderProps = createSplitProps();
9
10
  const FileUploadRootProvider = forwardRef((props, ref) => {
10
- const [{ value: fileUpload }, localProps] = createSplitProps()(props, ["value"]);
11
+ const [{ value: fileUpload }, localProps] = splitRootProviderProps(props, ["value"]);
11
12
  const mergedProps = mergeProps(fileUpload.getRootProps(), localProps);
12
13
  return /* @__PURE__ */ jsx(FileUploadProvider, { value: fileUpload, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });
13
14
  });
@@ -11,8 +11,9 @@ const factory = require('../factory.cjs');
11
11
  const useFileUpload = require('./use-file-upload.cjs');
12
12
  const useFileUploadContext = require('./use-file-upload-context.cjs');
13
13
 
14
+ const splitRootProps = createSplitProps.createSplitProps();
14
15
  const FileUploadRoot = react.forwardRef((props, ref) => {
15
- const [useFileUploadProps, localProps] = createSplitProps.createSplitProps()(props, [
16
+ const [useFileUploadProps, localProps] = splitRootProps(props, [
16
17
  "accept",
17
18
  "acceptedFiles",
18
19
  "allowDrop",
@@ -7,8 +7,9 @@ import { ark } from '../factory.js';
7
7
  import { useFileUpload } from './use-file-upload.js';
8
8
  import { FileUploadProvider } from './use-file-upload-context.js';
9
9
 
10
+ const splitRootProps = createSplitProps();
10
11
  const FileUploadRoot = forwardRef((props, ref) => {
11
- const [useFileUploadProps, localProps] = createSplitProps()(props, [
12
+ const [useFileUploadProps, localProps] = splitRootProps(props, [
12
13
  "accept",
13
14
  "acceptedFiles",
14
15
  "allowDrop",
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useFloatingPanelContext = require('./use-floating-panel-context.cjs');
12
12
 
13
+ const splitResizeTriggerProps = createSplitProps.createSplitProps();
13
14
  const FloatingPanelResizeTrigger = react.forwardRef((props, ref) => {
14
- const [resizeProps, localProps] = createSplitProps.createSplitProps()(props, ["axis"]);
15
+ const [resizeProps, localProps] = splitResizeTriggerProps(props, ["axis"]);
15
16
  const floatingPanel = useFloatingPanelContext.useFloatingPanelContext();
16
17
  const mergedProps = react$1.mergeProps(floatingPanel.getResizeTriggerProps(resizeProps), localProps);
17
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref });
@@ -6,8 +6,9 @@ import { createSplitProps } from '../../utils/create-split-props.js';
6
6
  import { ark } from '../factory.js';
7
7
  import { useFloatingPanelContext } from './use-floating-panel-context.js';
8
8
 
9
+ const splitResizeTriggerProps = createSplitProps();
9
10
  const FloatingPanelResizeTrigger = forwardRef((props, ref) => {
10
- const [resizeProps, localProps] = createSplitProps()(props, ["axis"]);
11
+ const [resizeProps, localProps] = splitResizeTriggerProps(props, ["axis"]);
11
12
  const floatingPanel = useFloatingPanelContext();
12
13
  const mergedProps = mergeProps(floatingPanel.getResizeTriggerProps(resizeProps), localProps);
13
14
  return /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref });
@@ -11,9 +11,10 @@ const usePresence = require('../presence/use-presence.cjs');
11
11
  const usePresenceContext = require('../presence/use-presence-context.cjs');
12
12
  const useFloatingPanelContext = require('./use-floating-panel-context.cjs');
13
13
 
14
+ const splitRootProviderProps = createSplitProps.createSplitProps();
14
15
  const FloatingPanelRootProvider = (props) => {
15
16
  const [presenceProps, baseProps] = splitPresenceProps.splitPresenceProps(props);
16
- const [{ value: floatingPanel }, localProps] = createSplitProps.createSplitProps()(baseProps, ["value"]);
17
+ const [{ value: floatingPanel }, localProps] = splitRootProviderProps(baseProps, ["value"]);
17
18
  const presence = usePresence.usePresence(react.mergeProps({ present: floatingPanel.open }, presenceProps));
18
19
  return /* @__PURE__ */ jsxRuntime.jsx(useFloatingPanelContext.FloatingPanelProvider, { value: floatingPanel, children: /* @__PURE__ */ jsxRuntime.jsx(usePresenceContext.PresenceProvider, { value: presence, children: localProps.children }) });
19
20
  };
@@ -7,9 +7,10 @@ import { usePresence } from '../presence/use-presence.js';
7
7
  import { PresenceProvider } from '../presence/use-presence-context.js';
8
8
  import { FloatingPanelProvider } from './use-floating-panel-context.js';
9
9
 
10
+ const splitRootProviderProps = createSplitProps();
10
11
  const FloatingPanelRootProvider = (props) => {
11
12
  const [presenceProps, baseProps] = splitPresenceProps(props);
12
- const [{ value: floatingPanel }, localProps] = createSplitProps()(baseProps, ["value"]);
13
+ const [{ value: floatingPanel }, localProps] = splitRootProviderProps(baseProps, ["value"]);
13
14
  const presence = usePresence(mergeProps({ present: floatingPanel.open }, presenceProps));
14
15
  return /* @__PURE__ */ jsx(FloatingPanelProvider, { value: floatingPanel, children: /* @__PURE__ */ jsx(PresenceProvider, { value: presence, children: localProps.children }) });
15
16
  };
@@ -12,9 +12,10 @@ const usePresenceContext = require('../presence/use-presence-context.cjs');
12
12
  const useFloatingPanel = require('./use-floating-panel.cjs');
13
13
  const useFloatingPanelContext = require('./use-floating-panel-context.cjs');
14
14
 
15
+ const splitRootProps = createSplitProps.createSplitProps();
15
16
  const FloatingPanelRoot = (props) => {
16
17
  const [presenceProps, otherProps] = splitPresenceProps.splitPresenceProps(props);
17
- const [useFloatingPanelProps, localProps] = createSplitProps.createSplitProps()(otherProps, [
18
+ const [useFloatingPanelProps, localProps] = splitRootProps(otherProps, [
18
19
  "allowOverflow",
19
20
  "closeOnEscape",
20
21
  "defaultOpen",
@@ -8,9 +8,10 @@ import { PresenceProvider } from '../presence/use-presence-context.js';
8
8
  import { useFloatingPanel } from './use-floating-panel.js';
9
9
  import { FloatingPanelProvider } from './use-floating-panel-context.js';
10
10
 
11
+ const splitRootProps = createSplitProps();
11
12
  const FloatingPanelRoot = (props) => {
12
13
  const [presenceProps, otherProps] = splitPresenceProps(props);
13
- const [useFloatingPanelProps, localProps] = createSplitProps()(otherProps, [
14
+ const [useFloatingPanelProps, localProps] = splitRootProps(otherProps, [
14
15
  "allowOverflow",
15
16
  "closeOnEscape",
16
17
  "defaultOpen",
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useFloatingPanelContext = require('./use-floating-panel-context.cjs');
12
12
 
13
+ const splitStageTriggerProps = createSplitProps.createSplitProps();
13
14
  const FloatingPanelStageTrigger = react.forwardRef((props, ref) => {
14
- const [stage, localProps] = createSplitProps.createSplitProps()(props, ["stage"]);
15
+ const [stage, localProps] = splitStageTriggerProps(props, ["stage"]);
15
16
  const floatingPanel = useFloatingPanelContext.useFloatingPanelContext();
16
17
  const mergedProps = react$1.mergeProps(floatingPanel.getStageTriggerProps(stage), localProps);
17
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.button, { ...mergedProps, ref });
@@ -6,8 +6,9 @@ import { createSplitProps } from '../../utils/create-split-props.js';
6
6
  import { ark } from '../factory.js';
7
7
  import { useFloatingPanelContext } from './use-floating-panel-context.js';
8
8
 
9
+ const splitStageTriggerProps = createSplitProps();
9
10
  const FloatingPanelStageTrigger = forwardRef((props, ref) => {
10
- const [stage, localProps] = createSplitProps()(props, ["stage"]);
11
+ const [stage, localProps] = splitStageTriggerProps(props, ["stage"]);
11
12
  const floatingPanel = useFloatingPanelContext();
12
13
  const mergedProps = mergeProps(floatingPanel.getStageTriggerProps(stage), localProps);
13
14
  return /* @__PURE__ */ jsx(ark.button, { ...mergedProps, ref });
@@ -11,9 +11,10 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
11
11
  const useSafeLayoutEffect = require('../../utils/use-safe-layout-effect.cjs');
12
12
  const factory = require('../factory.cjs');
13
13
 
14
+ const splitTrapProps = createSplitProps.createSplitProps();
14
15
  const FocusTrap = react.forwardRef((props, ref) => {
15
16
  const localRef = react.useRef(null);
16
- const [trapProps, localProps] = createSplitProps.createSplitProps()(props, [
17
+ const [trapProps, localProps] = splitTrapProps(props, [
17
18
  "disabled",
18
19
  "onActivate",
19
20
  "onDeactivate",
@@ -7,9 +7,10 @@ import { createSplitProps } from '../../utils/create-split-props.js';
7
7
  import { useSafeLayoutEffect } from '../../utils/use-safe-layout-effect.js';
8
8
  import { ark } from '../factory.js';
9
9
 
10
+ const splitTrapProps = createSplitProps();
10
11
  const FocusTrap = forwardRef((props, ref) => {
11
12
  const localRef = useRef(null);
12
- const [trapProps, localProps] = createSplitProps()(props, [
13
+ const [trapProps, localProps] = splitTrapProps(props, [
13
14
  "disabled",
14
15
  "onActivate",
15
16
  "onDeactivate",
@@ -7,11 +7,12 @@ const react = require('react');
7
7
  const createSplitProps = require('../../utils/create-split-props.cjs');
8
8
  const useHighlight = require('./use-highlight.cjs');
9
9
 
10
+ const splitHighlightBaseProps = createSplitProps.createSplitProps();
10
11
  const Highlight = (props) => {
11
12
  if (typeof props.text !== "string") {
12
13
  throw new Error("[ark-ui/highlight] text must be a string");
13
14
  }
14
- const [highlightProps, localProps] = createSplitProps.createSplitProps()(props, [
15
+ const [highlightProps, localProps] = splitHighlightBaseProps(props, [
15
16
  "query",
16
17
  "text",
17
18
  "ignoreCase",
@@ -3,11 +3,12 @@ import { Fragment } from 'react';
3
3
  import { createSplitProps } from '../../utils/create-split-props.js';
4
4
  import { useHighlight } from './use-highlight.js';
5
5
 
6
+ const splitHighlightBaseProps = createSplitProps();
6
7
  const Highlight = (props) => {
7
8
  if (typeof props.text !== "string") {
8
9
  throw new Error("[ark-ui/highlight] text must be a string");
9
10
  }
10
- const [highlightProps, localProps] = createSplitProps()(props, [
11
+ const [highlightProps, localProps] = splitHighlightBaseProps(props, [
11
12
  "query",
12
13
  "text",
13
14
  "ignoreCase",
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useImageCropperContext = require('./use-image-cropper-context.cjs');
12
12
 
13
+ const splitRootProviderProps = createSplitProps.createSplitProps();
13
14
  const ImageCropperRootProvider = react.forwardRef((props, ref) => {
14
- const [{ value: imageCropper }, localProps] = createSplitProps.createSplitProps()(props, ["value"]);
15
+ const [{ value: imageCropper }, localProps] = splitRootProviderProps(props, ["value"]);
15
16
  const mergedProps = react$1.mergeProps(imageCropper.getRootProps(), localProps);
16
17
  return /* @__PURE__ */ jsxRuntime.jsx(useImageCropperContext.ImageCropperProvider, { value: imageCropper, children: /* @__PURE__ */ jsxRuntime.jsx(factory.ark.div, { ...mergedProps, ref }) });
17
18
  });
@@ -6,8 +6,9 @@ import { createSplitProps } from '../../utils/create-split-props.js';
6
6
  import { ark } from '../factory.js';
7
7
  import { ImageCropperProvider } from './use-image-cropper-context.js';
8
8
 
9
+ const splitRootProviderProps = createSplitProps();
9
10
  const ImageCropperRootProvider = forwardRef((props, ref) => {
10
- const [{ value: imageCropper }, localProps] = createSplitProps()(props, ["value"]);
11
+ const [{ value: imageCropper }, localProps] = splitRootProviderProps(props, ["value"]);
11
12
  const mergedProps = mergeProps(imageCropper.getRootProps(), localProps);
12
13
  return /* @__PURE__ */ jsx(ImageCropperProvider, { value: imageCropper, children: /* @__PURE__ */ jsx(ark.div, { ...mergedProps, ref }) });
13
14
  });
@@ -11,8 +11,9 @@ const factory = require('../factory.cjs');
11
11
  const useImageCropper = require('./use-image-cropper.cjs');
12
12
  const useImageCropperContext = require('./use-image-cropper-context.cjs');
13
13
 
14
+ const splitRootProps = createSplitProps.createSplitProps();
14
15
  const ImageCropperRoot = react.forwardRef((props, ref) => {
15
- const [useImageCropperProps, localProps] = createSplitProps.createSplitProps()(props, [
16
+ const [useImageCropperProps, localProps] = splitRootProps(props, [
16
17
  "aspectRatio",
17
18
  "cropShape",
18
19
  "defaultFlip",
@@ -7,8 +7,9 @@ import { ark } from '../factory.js';
7
7
  import { useImageCropper } from './use-image-cropper.js';
8
8
  import { ImageCropperProvider } from './use-image-cropper-context.js';
9
9
 
10
+ const splitRootProps = createSplitProps();
10
11
  const ImageCropperRoot = forwardRef((props, ref) => {
11
- const [useImageCropperProps, localProps] = createSplitProps()(props, [
12
+ const [useImageCropperProps, localProps] = splitRootProps(props, [
12
13
  "aspectRatio",
13
14
  "cropShape",
14
15
  "defaultFlip",
@@ -562,9 +562,11 @@ const sliderValueText = require('./slider/slider-value-text.cjs');
562
562
  const useSlider = require('./slider/use-slider.cjs');
563
563
  const useSliderContext = require('./slider/use-slider-context.cjs');
564
564
  const slider$1 = require('./slider/slider.cjs');
565
+ const splitter = require('@zag-js/splitter');
565
566
  const splitterContext = require('./splitter/splitter-context.cjs');
566
567
  const splitterPanel = require('./splitter/splitter-panel.cjs');
567
568
  const splitterResizeTrigger = require('./splitter/splitter-resize-trigger.cjs');
569
+ const splitterResizeTriggerIndicator = require('./splitter/splitter-resize-trigger-indicator.cjs');
568
570
  const splitterRoot = require('./splitter/splitter-root.cjs');
569
571
  const splitterRootProvider = require('./splitter/splitter-root-provider.cjs');
570
572
  const useSplitter = require('./splitter/use-splitter.cjs');
@@ -742,7 +744,6 @@ const scrollArea = require('@zag-js/scroll-area');
742
744
  const select = require('@zag-js/select');
743
745
  const signaturePad = require('@zag-js/signature-pad');
744
746
  const slider = require('@zag-js/slider');
745
- const splitter = require('@zag-js/splitter');
746
747
  const steps = require('@zag-js/steps');
747
748
  const zagSwitch = require('@zag-js/switch');
748
749
  const tabs = require('@zag-js/tabs');
@@ -1324,9 +1325,18 @@ exports.SliderValueText = sliderValueText.SliderValueText;
1324
1325
  exports.useSlider = useSlider.useSlider;
1325
1326
  exports.useSliderContext = useSliderContext.useSliderContext;
1326
1327
  exports.Slider = slider$1;
1328
+ Object.defineProperty(exports, "getSplitterLayout", {
1329
+ enumerable: true,
1330
+ get: () => splitter.layout
1331
+ });
1332
+ Object.defineProperty(exports, "splitterAnatomy", {
1333
+ enumerable: true,
1334
+ get: () => splitter.anatomy
1335
+ });
1327
1336
  exports.SplitterContext = splitterContext.SplitterContext;
1328
1337
  exports.SplitterPanel = splitterPanel.SplitterPanel;
1329
1338
  exports.SplitterResizeTrigger = splitterResizeTrigger.SplitterResizeTrigger;
1339
+ exports.SplitterResizeTriggerIndicator = splitterResizeTriggerIndicator.SplitterResizeTriggerIndicator;
1330
1340
  exports.SplitterRoot = splitterRoot.SplitterRoot;
1331
1341
  exports.SplitterRootProvider = splitterRootProvider.SplitterRootProvider;
1332
1342
  exports.useSplitter = useSplitter.useSplitter;
@@ -1585,10 +1595,6 @@ Object.defineProperty(exports, "sliderAnatomy", {
1585
1595
  enumerable: true,
1586
1596
  get: () => slider.anatomy
1587
1597
  });
1588
- Object.defineProperty(exports, "splitterAnatomy", {
1589
- enumerable: true,
1590
- get: () => splitter.anatomy
1591
- });
1592
1598
  Object.defineProperty(exports, "stepsAnatomy", {
1593
1599
  enumerable: true,
1594
1600
  get: () => steps.anatomy
@@ -596,9 +596,11 @@ export { useSlider } from './slider/use-slider.js';
596
596
  export { useSliderContext } from './slider/use-slider-context.js';
597
597
  import * as slider from './slider/slider.js';
598
598
  export { slider as Slider };
599
+ export { layout as getSplitterLayout, anatomy as splitterAnatomy } from '@zag-js/splitter';
599
600
  export { SplitterContext } from './splitter/splitter-context.js';
600
601
  export { SplitterPanel } from './splitter/splitter-panel.js';
601
602
  export { SplitterResizeTrigger } from './splitter/splitter-resize-trigger.js';
603
+ export { SplitterResizeTriggerIndicator } from './splitter/splitter-resize-trigger-indicator.js';
602
604
  export { SplitterRoot } from './splitter/splitter-root.js';
603
605
  export { SplitterRootProvider } from './splitter/splitter-root-provider.js';
604
606
  export { useSplitter } from './splitter/use-splitter.js';
@@ -788,7 +790,6 @@ export { anatomy as scrollAreaAnatomy } from '@zag-js/scroll-area';
788
790
  export { anatomy as selectAnatomy } from '@zag-js/select';
789
791
  export { anatomy as signaturePadAnatomy } from '@zag-js/signature-pad';
790
792
  export { anatomy as sliderAnatomy } from '@zag-js/slider';
791
- export { anatomy as splitterAnatomy } from '@zag-js/splitter';
792
793
  export { anatomy as stepsAnatomy } from '@zag-js/steps';
793
794
  export { anatomy as switchAnatomy } from '@zag-js/switch';
794
795
  export { anatomy as tabsAnatomy } from '@zag-js/tabs';
@@ -10,8 +10,9 @@ const createSplitProps = require('../../utils/create-split-props.cjs');
10
10
  const factory = require('../factory.cjs');
11
11
  const useListboxContext = require('./use-listbox-context.cjs');
12
12
 
13
+ const splitInputProps = createSplitProps.createSplitProps();
13
14
  const ListboxInput = react.forwardRef((props, ref) => {
14
- const [inputProps, localProps] = createSplitProps.createSplitProps()(props, ["autoHighlight"]);
15
+ const [inputProps, localProps] = splitInputProps(props, ["autoHighlight"]);
15
16
  const listbox = useListboxContext.useListboxContext();
16
17
  const mergedProps = react$1.mergeProps(listbox.getInputProps(inputProps), localProps);
17
18
  return /* @__PURE__ */ jsxRuntime.jsx(factory.ark.input, { ...mergedProps, ref });