@ark-ui/solid 3.0.0-2 → 3.0.0-4

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 (104) hide show
  1. package/dist/cjs/index.js +226 -176
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/index.js +221 -179
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/source/components/accordion/use-accordion.js +2 -2
  6. package/dist/source/components/avatar/use-avatar.js +2 -2
  7. package/dist/source/components/carousel/use-carousel.js +2 -2
  8. package/dist/source/components/checkbox/checkbox-control.jsx +3 -6
  9. package/dist/source/components/checkbox/checkbox-hidden-input.jsx +8 -0
  10. package/dist/source/components/checkbox/checkbox-indicator.jsx +5 -3
  11. package/dist/source/components/checkbox/checkbox-root.jsx +3 -3
  12. package/dist/source/components/checkbox/checkbox.js +1 -0
  13. package/dist/source/components/checkbox/index.js +1 -0
  14. package/dist/source/components/checkbox/use-checkbox.js +2 -2
  15. package/dist/source/components/clipboard/use-clipboard.js +2 -2
  16. package/dist/source/components/collapsible/use-collapsible.js +2 -2
  17. package/dist/source/components/color-picker/color-picker-hidden-input.jsx +8 -0
  18. package/dist/source/components/color-picker/color-picker-root.jsx +0 -1
  19. package/dist/source/components/color-picker/color-picker.js +1 -0
  20. package/dist/source/components/color-picker/index.js +1 -0
  21. package/dist/source/components/color-picker/use-color-picker.js +2 -2
  22. package/dist/source/components/combobox/use-combobox.js +6 -4
  23. package/dist/source/components/date-picker/use-date-picker.js +2 -2
  24. package/dist/source/components/dialog/use-dialog.js +2 -2
  25. package/dist/source/components/editable/use-editable.js +2 -2
  26. package/dist/source/components/file-upload/file-upload-dropzone.jsx +1 -4
  27. package/dist/source/components/file-upload/file-upload-hidden-input.jsx +8 -0
  28. package/dist/source/components/file-upload/file-upload.js +1 -0
  29. package/dist/source/components/file-upload/index.js +1 -0
  30. package/dist/source/components/file-upload/use-file-upload.js +2 -2
  31. package/dist/source/components/hover-card/use-hover-card.js +2 -2
  32. package/dist/source/components/menu/use-menu.js +2 -2
  33. package/dist/source/components/number-input/use-number-input.js +2 -2
  34. package/dist/source/components/pagination/use-pagination.js +2 -2
  35. package/dist/source/components/pin-input/index.js +1 -0
  36. package/dist/source/components/pin-input/pin-input-hidden-input.jsx +8 -0
  37. package/dist/source/components/pin-input/pin-input-root.jsx +3 -4
  38. package/dist/source/components/pin-input/pin-input.js +1 -0
  39. package/dist/source/components/pin-input/use-pin-input.js +2 -2
  40. package/dist/source/components/popover/use-popover.js +2 -2
  41. package/dist/source/components/progress/use-progress.js +2 -2
  42. package/dist/source/components/radio-group/use-radio-group.js +2 -2
  43. package/dist/source/components/rating-group/index.js +1 -0
  44. package/dist/source/components/rating-group/rating-group-control.jsx +3 -6
  45. package/dist/source/components/rating-group/rating-group-hidden-input.jsx +8 -0
  46. package/dist/source/components/rating-group/rating-group.js +1 -0
  47. package/dist/source/components/rating-group/use-rating-group.js +2 -2
  48. package/dist/source/components/segment-group/use-segment-group.js +2 -2
  49. package/dist/source/components/select/index.js +1 -0
  50. package/dist/source/components/select/select-control.jsx +1 -13
  51. package/dist/source/components/select/select-hidden-select.jsx +17 -0
  52. package/dist/source/components/select/select.js +1 -0
  53. package/dist/source/components/select/use-select.js +8 -6
  54. package/dist/source/components/slider/use-slider.js +2 -2
  55. package/dist/source/components/splitter/use-splitter.js +2 -2
  56. package/dist/source/components/switch/index.js +1 -0
  57. package/dist/source/components/switch/switch-control.jsx +1 -4
  58. package/dist/source/components/switch/switch-hidden-input.jsx +8 -0
  59. package/dist/source/components/switch/switch.js +1 -0
  60. package/dist/source/components/switch/use-switch.js +2 -2
  61. package/dist/source/components/tabs/use-tabs.js +2 -2
  62. package/dist/source/components/tags-input/index.js +1 -0
  63. package/dist/source/components/tags-input/tags-input-hidden-input.jsx +8 -0
  64. package/dist/source/components/tags-input/tags-input-root.jsx +0 -1
  65. package/dist/source/components/tags-input/tags-input.js +1 -0
  66. package/dist/source/components/tags-input/use-tags-input.js +2 -2
  67. package/dist/source/components/toggle-group/use-toggle-group.js +2 -2
  68. package/dist/source/components/tooltip/use-tooltip.js +2 -2
  69. package/dist/source/components/tree-view/use-tree-view.js +2 -2
  70. package/dist/source/providers/environment/environment.jsx +14 -6
  71. package/dist/source/providers/environment/index.js +2 -3
  72. package/dist/source/providers/environment/use-environment-context.js +5 -0
  73. package/dist/source/providers/locale/locale-provider.jsx +2 -2
  74. package/dist/source/utils/run-if-fn.js +4 -0
  75. package/dist/types/components/checkbox/checkbox-hidden-input.d.ts +4 -0
  76. package/dist/types/components/checkbox/checkbox-indicator.d.ts +6 -1
  77. package/dist/types/components/checkbox/checkbox.d.ts +1 -0
  78. package/dist/types/components/checkbox/index.d.ts +2 -1
  79. package/dist/types/components/color-picker/color-picker-hidden-input.d.ts +4 -0
  80. package/dist/types/components/color-picker/color-picker.d.ts +1 -0
  81. package/dist/types/components/color-picker/index.d.ts +2 -1
  82. package/dist/types/components/file-upload/file-upload-hidden-input.d.ts +4 -0
  83. package/dist/types/components/file-upload/file-upload.d.ts +1 -0
  84. package/dist/types/components/file-upload/index.d.ts +1 -0
  85. package/dist/types/components/pin-input/index.d.ts +1 -0
  86. package/dist/types/components/pin-input/pin-input-hidden-input.d.ts +4 -0
  87. package/dist/types/components/pin-input/pin-input.d.ts +1 -0
  88. package/dist/types/components/rating-group/index.d.ts +1 -0
  89. package/dist/types/components/rating-group/rating-group-hidden-input.d.ts +4 -0
  90. package/dist/types/components/rating-group/rating-group.d.ts +1 -0
  91. package/dist/types/components/select/index.d.ts +1 -0
  92. package/dist/types/components/select/select-hidden-select.d.ts +4 -0
  93. package/dist/types/components/select/select.d.ts +1 -0
  94. package/dist/types/components/switch/index.d.ts +2 -1
  95. package/dist/types/components/switch/switch-hidden-input.d.ts +4 -0
  96. package/dist/types/components/switch/switch.d.ts +1 -0
  97. package/dist/types/components/tags-input/index.d.ts +1 -0
  98. package/dist/types/components/tags-input/tags-input-hidden-input.d.ts +4 -0
  99. package/dist/types/components/tags-input/tags-input.d.ts +1 -0
  100. package/dist/types/providers/environment/environment.d.ts +2 -1
  101. package/dist/types/providers/environment/index.d.ts +2 -4
  102. package/dist/types/providers/environment/use-environment-context.d.ts +18 -3
  103. package/dist/types/utils/run-if-fn.d.ts +2 -0
  104. package/package.json +6 -5
package/dist/cjs/index.js CHANGED
@@ -37,6 +37,7 @@ var toast$1 = require('@zag-js/toast');
37
37
  var toggleGroup$1 = require('@zag-js/toggle-group');
38
38
  var tooltip$1 = require('@zag-js/tooltip');
39
39
  var treeView$1 = require('@zag-js/tree-view');
40
+ var domQuery = require('@zag-js/dom-query');
40
41
 
41
42
  function _interopNamespaceDefault(e) {
42
43
  var n = Object.create(null);
@@ -191,28 +192,42 @@ const CollapsibleContent = props => {
191
192
 
192
193
  const CollapsibleContext = props => props.children(useCollapsibleContext());
193
194
 
195
+ const isFunction = value => typeof value === 'function';
196
+ const runIfFn = (valueOrFn, ...args) => isFunction(valueOrFn) ? valueOrFn(...args) : valueOrFn;
197
+
194
198
  const [EnvironmentProvider, useEnvironmentContext] = createContext({
195
199
  hookName: 'useEnvironmentContext',
196
200
  providerName: '<EnvironmentProvider />',
197
- strict: false
201
+ strict: false,
202
+ defaultValue: () => ({
203
+ getRootNode: () => document,
204
+ getDocument: () => document,
205
+ getWindow: () => window
206
+ })
198
207
  });
199
208
 
200
- var _tmpl$$d = /*#__PURE__*/web.template(`<span hidden>`);
209
+ var _tmpl$$6 = /*#__PURE__*/web.template(`<span hidden>`);
201
210
  const Environment = props => {
202
- const spanRef = undefined;
203
-
204
- // @ts-expect-error TODO fix
205
- const currentEnv = solidJs.createMemo(() => () => props.value ?? spanRef?.ownerDocument ?? document);
211
+ const [spanRef, setSpanRef] = solidJs.createSignal();
212
+ const getRootNode = () => runIfFn(props.value) ?? spanRef()?.ownerDocument ?? document;
213
+ const environment = solidJs.createMemo(() => ({
214
+ getRootNode,
215
+ getDocument: () => domQuery.getDocument(getRootNode()),
216
+ getWindow: () => domQuery.getWindow(getRootNode())
217
+ }));
206
218
  return web.createComponent(EnvironmentProvider, {
207
- get value() {
208
- return currentEnv();
209
- },
219
+ value: environment,
210
220
  get children() {
211
- return [web.memo(() => props.children), web.memo(() => web.memo(() => !!!props.value)() && (() => {
212
- var _el$ = _tmpl$$d();
213
- web.use(spanRef, _el$);
214
- return _el$;
215
- })())];
221
+ return [web.memo(() => props.children), web.createComponent(solidJs.Show, {
222
+ get when() {
223
+ return !props.value;
224
+ },
225
+ get children() {
226
+ var _el$ = _tmpl$$6();
227
+ web.use(setSpanRef, _el$);
228
+ return _el$;
229
+ }
230
+ })];
216
231
  }
217
232
  });
218
233
  };
@@ -230,11 +245,11 @@ const [LocaleContextProvider, useLocaleContext] = createContext({
230
245
  const LocaleProvider = props => {
231
246
  const [localeProps, restProps] = solidJs.splitProps(props, ['locale', 'defaultLocale']);
232
247
  const [locale, setLocale] = solidJs.createSignal(localeProps.defaultLocale || localeProps.locale || 'en-US');
233
- const getRootNode = useEnvironmentContext();
248
+ const environment = useEnvironmentContext();
234
249
  solidJs.createEffect(() => {
235
250
  const cleanup = i18nUtils.trackLocale({
236
251
  locale: localeProps.locale,
237
- getRootNode,
252
+ getRootNode: environment().getRootNode,
238
253
  onLocaleChange(locale) {
239
254
  setLocale(locale.locale);
240
255
  }
@@ -255,12 +270,12 @@ const LocaleProvider = props => {
255
270
 
256
271
  const useCollapsible = props => {
257
272
  const locale = useLocaleContext();
258
- const getRootNode = useEnvironmentContext();
273
+ const environment = useEnvironmentContext();
259
274
  const [renderStrategyProps, collapsibleProps] = splitRenderStrategyProps(props);
260
275
  const context = solid.mergeProps({
261
276
  id: solidJs.createUniqueId(),
262
277
  dir: locale().dir,
263
- getRootNode,
278
+ getRootNode: environment().getRootNode,
264
279
  'open.controlled': props.open !== undefined
265
280
  }, collapsibleProps);
266
281
  const [state, send] = solid.useMachine(collapsible__namespace.machine(context), {
@@ -375,11 +390,11 @@ const AccordionItemTrigger = props => {
375
390
 
376
391
  const useAccordion = props => {
377
392
  const locale = useLocaleContext();
378
- const getRootNode = useEnvironmentContext();
393
+ const environment = useEnvironmentContext();
379
394
  const context = solidJs.mergeProps({
380
395
  id: solidJs.createUniqueId(),
381
396
  dir: locale().dir,
382
- getRootNode
397
+ getRootNode: environment().getRootNode
383
398
  }, props);
384
399
  const [state, send] = solid.useMachine(accordion__namespace.machine(context), {
385
400
  context
@@ -437,11 +452,11 @@ const AvatarImage = props => {
437
452
 
438
453
  const useAvatar = props => {
439
454
  const locale = useLocaleContext();
440
- const getRootNode = useEnvironmentContext();
455
+ const environment = useEnvironmentContext();
441
456
  const context = solid.mergeProps({
442
457
  id: solidJs.createUniqueId(),
443
458
  dir: locale().dir,
444
- getRootNode
459
+ getRootNode: environment().getRootNode
445
460
  }, props);
446
461
  const [state, send] = solid.useMachine(avatar__namespace.machine(context), {
447
462
  context
@@ -521,11 +536,11 @@ const CarouselPrevTrigger = props => {
521
536
 
522
537
  const useCarousel = props => {
523
538
  const locale = useLocaleContext();
524
- const getRootNode = useEnvironmentContext();
539
+ const environment = useEnvironmentContext();
525
540
  const context = solid.mergeProps({
526
541
  id: solidJs.createUniqueId(),
527
542
  dir: locale().dir,
528
- getRootNode
543
+ getRootNode: environment().getRootNode
529
544
  }, props);
530
545
  const [state, send] = solid.useMachine(carousel__namespace.machine(context), {
531
546
  context
@@ -572,21 +587,27 @@ const [CheckboxProvider, useCheckboxContext] = createContext({
572
587
 
573
588
  const CheckboxContext = props => props.children(useCheckboxContext());
574
589
 
575
- var _tmpl$$c = /*#__PURE__*/web.template(`<input>`);
576
590
  const CheckboxControl = props => {
577
- const api = useCheckboxContext();
578
- const mergedProps = solid.mergeProps(() => api().controlProps, props);
579
- return [web.createComponent(ark.div, mergedProps), (() => {
580
- var _el$ = _tmpl$$c();
581
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
582
- return _el$;
583
- })()];
591
+ const checkbox = useCheckboxContext();
592
+ const mergedProps = solid.mergeProps(() => checkbox().controlProps, props);
593
+ return web.createComponent(ark.div, mergedProps);
594
+ };
595
+
596
+ const CheckboxHiddenInput = props => {
597
+ const checkbox = useCheckboxContext();
598
+ const mergedProps = solid.mergeProps(() => checkbox().hiddenInputProps, props);
599
+ return web.createComponent(ark.input, mergedProps);
584
600
  };
585
601
 
586
602
  const CheckboxIndicator = props => {
587
- const api = useCheckboxContext();
588
- const mergedProps = solid.mergeProps(() => api().indicatorProps, props);
589
- return web.createComponent(ark.div, mergedProps);
603
+ const [indicatorProps, localProps] = createSplitProps()(props, ['indeterminate']);
604
+ const checkbox = useCheckboxContext();
605
+ const mergedProps = solid.mergeProps(() => checkbox().indicatorProps, localProps);
606
+ return web.createComponent(ark.div, web.mergeProps(mergedProps, {
607
+ get hidden() {
608
+ return !(indicatorProps.indeterminate ? checkbox().indeterminate : checkbox().checked);
609
+ }
610
+ }));
590
611
  };
591
612
 
592
613
  const CheckboxLabel = props => {
@@ -597,11 +618,11 @@ const CheckboxLabel = props => {
597
618
 
598
619
  const useCheckbox = props => {
599
620
  const locale = useLocaleContext();
600
- const getRootNode = useEnvironmentContext();
621
+ const environment = useEnvironmentContext();
601
622
  const context = solid.mergeProps({
602
623
  id: solidJs.createUniqueId(),
603
624
  dir: locale().dir,
604
- getRootNode
625
+ getRootNode: environment().getRootNode
605
626
  }, props);
606
627
  const [state, send] = solid.useMachine(checkbox__namespace.machine(context), {
607
628
  context
@@ -611,10 +632,10 @@ const useCheckbox = props => {
611
632
 
612
633
  const CheckboxRoot = props => {
613
634
  const [useCheckboxProps, labelprops] = createSplitProps()(props, ['checked', 'disabled', 'form', 'id', 'ids', 'invalid', 'name', 'onCheckedChange', 'readOnly', 'required', 'value']);
614
- const api = useCheckbox(useCheckboxProps);
615
- const mergedProps = solid.mergeProps(() => api().rootProps, labelprops);
635
+ const checkbox = useCheckbox(useCheckboxProps);
636
+ const mergedProps = solid.mergeProps(() => checkbox().rootProps, labelprops);
616
637
  return web.createComponent(CheckboxProvider, {
617
- value: api,
638
+ value: checkbox,
618
639
  get children() {
619
640
  return web.createComponent(ark.label, mergedProps);
620
641
  }
@@ -625,6 +646,7 @@ var checkbox = /*#__PURE__*/Object.freeze({
625
646
  __proto__: null,
626
647
  Context: CheckboxContext,
627
648
  Control: CheckboxControl,
649
+ HiddenInput: CheckboxHiddenInput,
628
650
  Indicator: CheckboxIndicator,
629
651
  Label: CheckboxLabel,
630
652
  Root: CheckboxRoot
@@ -681,10 +703,10 @@ const ClipboardLabel = props => {
681
703
  };
682
704
 
683
705
  const useClipboard = props => {
684
- const getRootNode = useEnvironmentContext();
706
+ const environment = useEnvironmentContext();
685
707
  const context = solid.mergeProps({
686
708
  id: solidJs.createUniqueId(),
687
- getRootNode
709
+ getRootNode: environment().getRootNode
688
710
  }, props);
689
711
  const [state, send] = solid.useMachine(clipboard__namespace.machine(context), {
690
712
  context
@@ -895,6 +917,12 @@ const ColorPickerFormatTrigger = props => {
895
917
  return web.createComponent(ark.button, mergedProps);
896
918
  };
897
919
 
920
+ const ColorPickerHiddenInput = props => {
921
+ const colorPicker = useColorPickerContext();
922
+ const mergedProps = solid.mergeProps(() => colorPicker().hiddenInputProps, props);
923
+ return web.createComponent(ark.input, mergedProps);
924
+ };
925
+
898
926
  const ColorPickerLabel = props => {
899
927
  const api = useColorPickerContext();
900
928
  const mergedProps = solid.mergeProps(() => api().labelProps, props);
@@ -918,11 +946,11 @@ const ColorPickerPositioner = props => {
918
946
  const useColorPicker = props => {
919
947
  const [local, rest] = solidJs.splitProps(props, ['value']);
920
948
  const locale = useLocaleContext();
921
- const getRootNode = useEnvironmentContext();
949
+ const environment = useEnvironmentContext();
922
950
  const context = solid.mergeProps(() => ({
923
951
  id: solidJs.createUniqueId(),
924
952
  dir: locale().dir,
925
- getRootNode,
953
+ getRootNode: environment().getRootNode,
926
954
  'open.controlled': props.open !== undefined,
927
955
  value: local.value ? colorPicker__namespace.parse(local.value) : undefined
928
956
  }), rest);
@@ -932,7 +960,6 @@ const useColorPicker = props => {
932
960
  return solidJs.createMemo(() => colorPicker__namespace.connect(state, send, solid.normalizeProps));
933
961
  };
934
962
 
935
- var _tmpl$$b = /*#__PURE__*/web.template(`<input>`);
936
963
  const ColorPickerRoot = props => {
937
964
  const [presenceProps, colorPickerProps] = splitPresenceProps(props);
938
965
  const [useColorPickerProps, localProps] = createSplitProps()(colorPickerProps, ['closeOnSelect', 'disabled', 'format', 'id', 'ids', 'initialFocusEl', 'name', 'name', 'onFocusOutside', 'onFormatChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'onValueChangeEnd', 'open', 'positioning', 'readOnly', 'value']);
@@ -944,16 +971,12 @@ const ColorPickerRoot = props => {
944
971
  return web.createComponent(ColorPickerProvider, {
945
972
  value: api,
946
973
  get children() {
947
- return [web.createComponent(PresenceProvider, {
974
+ return web.createComponent(PresenceProvider, {
948
975
  value: apiPresence,
949
976
  get children() {
950
977
  return web.createComponent(ark.div, mergedProps);
951
978
  }
952
- }), (() => {
953
- var _el$ = _tmpl$$b();
954
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
955
- return _el$;
956
- })()];
979
+ });
957
980
  }
958
981
  });
959
982
  };
@@ -1052,6 +1075,7 @@ var colorPicker = /*#__PURE__*/Object.freeze({
1052
1075
  EyeDropperTrigger: ColorPickerEyeDropperTrigger,
1053
1076
  FormatSelect: ColorPickerFormatSelect,
1054
1077
  FormatTrigger: ColorPickerFormatTrigger,
1078
+ HiddenInput: ColorPickerHiddenInput,
1055
1079
  Label: ColorPickerLabel,
1056
1080
  Positioner: ColorPickerPositioner,
1057
1081
  Root: ColorPickerRoot,
@@ -1200,15 +1224,17 @@ const ComboboxPositioner = props => {
1200
1224
 
1201
1225
  const useCombobox = props => {
1202
1226
  const [collectionOptions, rest] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
1203
- const collection = () => combobox__namespace.collection(collectionOptions);
1227
+ const collection = solidJs.createMemo(() => combobox__namespace.collection(collectionOptions));
1204
1228
  const locale = useLocaleContext();
1205
- const getRootNode = useEnvironmentContext();
1229
+ const environment = useEnvironmentContext();
1206
1230
  const context = solid.mergeProps({
1207
1231
  id: solidJs.createUniqueId(),
1208
1232
  dir: locale().dir,
1209
- getRootNode,
1233
+ getRootNode: environment().getRootNode,
1210
1234
  'open.controlled': props.open !== undefined,
1211
- collection: collection()
1235
+ get collection() {
1236
+ return collection();
1237
+ }
1212
1238
  }, rest);
1213
1239
  const [state, send] = solid.useMachine(combobox__namespace.machine(context), {
1214
1240
  context
@@ -1308,14 +1334,14 @@ const DatePickerLabel = props => {
1308
1334
  return web.createComponent(ark.label, mergedProps);
1309
1335
  };
1310
1336
 
1311
- var _tmpl$$a = /*#__PURE__*/web.template(`<option>`);
1337
+ var _tmpl$$5 = /*#__PURE__*/web.template(`<option>`);
1312
1338
  const DatePickerMonthSelect = props => {
1313
1339
  const api = useDatePickerContext();
1314
1340
  const mergedProps = solid.mergeProps(() => api().monthSelectProps, props);
1315
1341
  return web.createComponent(ark.select, web.mergeProps(mergedProps, {
1316
1342
  get children() {
1317
1343
  return api().getMonths().map(month => (() => {
1318
- var _el$ = _tmpl$$a();
1344
+ var _el$ = _tmpl$$5();
1319
1345
  web.insert(_el$, () => month.label);
1320
1346
  web.effect(() => _el$.value = month.value);
1321
1347
  return _el$;
@@ -1376,12 +1402,12 @@ const DatePickerRangeText = props => {
1376
1402
 
1377
1403
  const useDatePicker = props => {
1378
1404
  const locale = useLocaleContext();
1379
- const getRootNode = useEnvironmentContext();
1405
+ const environment = useEnvironmentContext();
1380
1406
  const [localProps, restProps] = solidJs.splitProps(props, ['value', 'focusedValue', 'min', 'max']);
1381
1407
  const context = solid.mergeProps(() => ({
1382
1408
  id: solidJs.createUniqueId(),
1383
1409
  dir: locale().dir,
1384
- getRootNode,
1410
+ getRootNode: environment().getRootNode,
1385
1411
  'open.controlled': props.open !== undefined,
1386
1412
  focusedValue: localProps.focusedValue ? datePicker__namespace.parse(localProps.focusedValue) : undefined,
1387
1413
  value: localProps.value ? datePicker__namespace.parse(localProps.value) : undefined,
@@ -1542,7 +1568,7 @@ const DatePickerViewTrigger = props => {
1542
1568
  return web.createComponent(ark.button, mergedProps);
1543
1569
  };
1544
1570
 
1545
- var _tmpl$$9 = /*#__PURE__*/web.template(`<option>`);
1571
+ var _tmpl$$4 = /*#__PURE__*/web.template(`<option>`);
1546
1572
  const DatePickerYearSelect = props => {
1547
1573
  const api = useDatePickerContext();
1548
1574
  const mergedProps = solid.mergeProps(() => api().yearSelectProps, props);
@@ -1552,7 +1578,7 @@ const DatePickerYearSelect = props => {
1552
1578
  from: 1_000,
1553
1579
  to: 4_000
1554
1580
  }).map(year => (() => {
1555
- var _el$ = _tmpl$$9();
1581
+ var _el$ = _tmpl$$4();
1556
1582
  _el$.value = year;
1557
1583
  web.insert(_el$, year);
1558
1584
  return _el$;
@@ -1663,11 +1689,11 @@ const DialogPositioner = props => {
1663
1689
 
1664
1690
  const useDialog = props => {
1665
1691
  const locale = useLocaleContext();
1666
- const getRootNode = useEnvironmentContext();
1692
+ const environment = useEnvironmentContext();
1667
1693
  const context = solid.mergeProps({
1668
1694
  id: solidJs.createUniqueId(),
1669
1695
  dir: locale().dir,
1670
- getRootNode,
1696
+ getRootNode: environment().getRootNode,
1671
1697
  'open.controlled': props.open !== undefined
1672
1698
  }, props);
1673
1699
  const [state, send] = solid.useMachine(dialog__namespace.machine(context), {
@@ -1781,11 +1807,11 @@ const EditablePreview = props => {
1781
1807
 
1782
1808
  const useEditable = props => {
1783
1809
  const locale = useLocaleContext();
1784
- const getRootNode = useEnvironmentContext();
1810
+ const environment = useEnvironmentContext();
1785
1811
  const context = solid.mergeProps({
1786
1812
  id: solidJs.createUniqueId(),
1787
1813
  dir: locale().dir,
1788
- getRootNode
1814
+ getRootNode: environment().getRootNode
1789
1815
  }, props);
1790
1816
  const [state, send] = solid.useMachine(editable__namespace.machine(context), {
1791
1817
  context
@@ -1832,15 +1858,10 @@ const [FileUploadProvider, useFileUploadContext] = createContext({
1832
1858
 
1833
1859
  const FileUploadContext = props => props.children(useFileUploadContext());
1834
1860
 
1835
- var _tmpl$$8 = /*#__PURE__*/web.template(`<input>`);
1836
1861
  const FileUploadDropzone = props => {
1837
1862
  const fileUpload = useFileUploadContext();
1838
1863
  const mergedProps = solid.mergeProps(() => fileUpload().dropzoneProps, props);
1839
- return [web.createComponent(ark.div, mergedProps), (() => {
1840
- var _el$ = _tmpl$$8();
1841
- web.spread(_el$, web.mergeProps(() => fileUpload().hiddenInputProps), false, false);
1842
- return _el$;
1843
- })()];
1864
+ return web.createComponent(ark.div, mergedProps);
1844
1865
  };
1845
1866
 
1846
1867
  const [FileUploadItemPropsProvider, useFileUploadItemPropsContext] = createContext({
@@ -1923,11 +1944,11 @@ const FileUploadLabel = props => {
1923
1944
 
1924
1945
  const useFileUpload = props => {
1925
1946
  const locale = useLocaleContext();
1926
- const getRootNode = useEnvironmentContext();
1947
+ const environment = useEnvironmentContext();
1927
1948
  const context = solid.mergeProps({
1928
1949
  id: solidJs.createUniqueId(),
1929
1950
  dir: locale().dir,
1930
- getRootNode
1951
+ getRootNode: environment().getRootNode
1931
1952
  }, props);
1932
1953
  const [state, send] = solid.useMachine(fileUpload__namespace.machine(context), {
1933
1954
  context
@@ -1953,10 +1974,17 @@ const FileUploadTrigger = props => {
1953
1974
  return web.createComponent(ark.button, mergedProps);
1954
1975
  };
1955
1976
 
1977
+ const FileUploadHiddenInput = props => {
1978
+ const fileUpload = useFileUploadContext();
1979
+ const mergedProps = solid.mergeProps(() => fileUpload().hiddenInputProps, props);
1980
+ return web.createComponent(ark.input, mergedProps);
1981
+ };
1982
+
1956
1983
  var fileUpload = /*#__PURE__*/Object.freeze({
1957
1984
  __proto__: null,
1958
1985
  Context: FileUploadContext,
1959
1986
  Dropzone: FileUploadDropzone,
1987
+ HiddenInput: FileUploadHiddenInput,
1960
1988
  Item: FileUploadItem,
1961
1989
  ItemDeleteTrigger: FileUploadItemDeleteTrigger,
1962
1990
  ItemGroup: FileUploadItemGroup,
@@ -2038,11 +2066,11 @@ const HoverCardPositioner = props => {
2038
2066
 
2039
2067
  const useHoverCard = props => {
2040
2068
  const locale = useLocaleContext();
2041
- const getRootNode = useEnvironmentContext();
2069
+ const environment = useEnvironmentContext();
2042
2070
  const context = solid.mergeProps({
2043
2071
  id: solidJs.createUniqueId(),
2044
2072
  dir: locale().dir,
2045
- getRootNode,
2073
+ getRootNode: environment().getRootNode,
2046
2074
  'open.controlled': props.open !== undefined
2047
2075
  }, props);
2048
2076
  const [state, send] = solid.useMachine(hoverCard__namespace.machine(context), {
@@ -2280,11 +2308,11 @@ const MenuRadioItemGroup = props => {
2280
2308
 
2281
2309
  const useMenu = props => {
2282
2310
  const locale = useLocaleContext();
2283
- const getRootNode = useEnvironmentContext();
2311
+ const environment = useEnvironmentContext();
2284
2312
  const context = solid.mergeProps({
2285
2313
  id: solidJs.createUniqueId(),
2286
2314
  dir: locale().dir,
2287
- getRootNode,
2315
+ getRootNode: environment().getRootNode,
2288
2316
  'open.controlled': props.open !== undefined
2289
2317
  }, props);
2290
2318
  const [state, send, machine] = solid.useMachine(menu__namespace.machine(context), {
@@ -2435,11 +2463,11 @@ const NumberInputLabel = props => {
2435
2463
 
2436
2464
  const useNumberInput = props => {
2437
2465
  const locale = useLocaleContext();
2438
- const getRootNode = useEnvironmentContext();
2466
+ const environment = useEnvironmentContext();
2439
2467
  const context = solid.mergeProps({
2440
2468
  id: solidJs.createUniqueId(),
2441
2469
  dir: locale().dir,
2442
- getRootNode
2470
+ getRootNode: environment().getRootNode
2443
2471
  }, props);
2444
2472
  const [state, send] = solid.useMachine(numberInput__namespace.machine(context), {
2445
2473
  context
@@ -2512,11 +2540,11 @@ const PaginationPrevTrigger = props => {
2512
2540
 
2513
2541
  const usePagination = props => {
2514
2542
  const locale = useLocaleContext();
2515
- const getRootNode = useEnvironmentContext();
2543
+ const environment = useEnvironmentContext();
2516
2544
  const context = solid.mergeProps({
2517
2545
  id: solidJs.createUniqueId(),
2518
2546
  dir: locale().dir,
2519
- getRootNode
2547
+ getRootNode: environment().getRootNode
2520
2548
  }, props);
2521
2549
  const [state, send] = solid.useMachine(pagination__namespace.machine(context), {
2522
2550
  context
@@ -2574,11 +2602,11 @@ const PinInputLabel = props => {
2574
2602
 
2575
2603
  const usePinInput = props => {
2576
2604
  const locale = useLocaleContext();
2577
- const getRootNode = useEnvironmentContext();
2605
+ const environment = useEnvironmentContext();
2578
2606
  const context = solid.mergeProps({
2579
2607
  id: solidJs.createUniqueId(),
2580
2608
  dir: locale().dir,
2581
- getRootNode
2609
+ getRootNode: environment().getRootNode
2582
2610
  }, props);
2583
2611
  const [state, send] = solid.useMachine(pinInput__namespace.machine(context), {
2584
2612
  context
@@ -2586,27 +2614,29 @@ const usePinInput = props => {
2586
2614
  return solidJs.createMemo(() => pinInput__namespace.connect(state, send, solid.normalizeProps));
2587
2615
  };
2588
2616
 
2589
- var _tmpl$$7 = /*#__PURE__*/web.template(`<input>`);
2590
2617
  const PinInputRoot = props => {
2591
2618
  const [usePinInputProps, localProps] = createSplitProps()(props, ['autoFocus', 'blurOnComplete', 'disabled', 'form', 'id', 'ids', 'invalid', 'mask', 'name', 'onValueChange', 'onValueComplete', 'onValueInvalid', 'otp', 'pattern', 'placeholder', 'selectOnFocus', 'translations', 'type', 'value']);
2592
- const api = usePinInput(usePinInputProps);
2593
- const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
2619
+ const pinInput = usePinInput(usePinInputProps);
2620
+ const mergedProps = solid.mergeProps(() => pinInput().rootProps, localProps);
2594
2621
  return web.createComponent(PinInputProvider, {
2595
- value: api,
2622
+ value: pinInput,
2596
2623
  get children() {
2597
- return [web.createComponent(ark.div, mergedProps), (() => {
2598
- var _el$ = _tmpl$$7();
2599
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
2600
- return _el$;
2601
- })()];
2624
+ return web.createComponent(ark.div, mergedProps);
2602
2625
  }
2603
2626
  });
2604
2627
  };
2605
2628
 
2629
+ const PinInputHiddenInput = props => {
2630
+ const pinInput = usePinInputContext();
2631
+ const mergedProps = solid.mergeProps(() => pinInput().hiddenInputProps, props);
2632
+ return web.createComponent(ark.input, mergedProps);
2633
+ };
2634
+
2606
2635
  var pinInput = /*#__PURE__*/Object.freeze({
2607
2636
  __proto__: null,
2608
2637
  Context: PinInputContext,
2609
2638
  Control: PinInputControl,
2639
+ HiddenInput: PinInputHiddenInput,
2610
2640
  Input: PinInputInput,
2611
2641
  Label: PinInputLabel,
2612
2642
  Root: PinInputRoot
@@ -2685,11 +2715,11 @@ const PopoverPositioner = props => {
2685
2715
 
2686
2716
  const usePopover = props => {
2687
2717
  const locale = useLocaleContext();
2688
- const getRootNode = useEnvironmentContext();
2718
+ const environment = useEnvironmentContext();
2689
2719
  const context = solid.mergeProps({
2690
2720
  id: solidJs.createUniqueId(),
2691
2721
  dir: locale().dir,
2692
- getRootNode,
2722
+ getRootNode: environment().getRootNode,
2693
2723
  'open.controlled': props.open !== undefined
2694
2724
  }, props);
2695
2725
  const [state, send] = solid.useMachine(popover__namespace.machine(context), {
@@ -2788,11 +2818,11 @@ const ProgressRange = props => {
2788
2818
 
2789
2819
  const useProgress = props => {
2790
2820
  const locale = useLocaleContext();
2791
- const getRootNode = useEnvironmentContext();
2821
+ const environment = useEnvironmentContext();
2792
2822
  const context = solid.mergeProps({
2793
2823
  id: solidJs.createUniqueId(),
2794
2824
  dir: locale().dir,
2795
- getRootNode
2825
+ getRootNode: environment().getRootNode
2796
2826
  }, props);
2797
2827
  const [state, send] = solid.useMachine(progress__namespace.machine(context), {
2798
2828
  context
@@ -2892,13 +2922,13 @@ const RadioGroupItem = props => {
2892
2922
 
2893
2923
  const RadioGroupItemContext = props => props.children(useRadioGroupItemContext());
2894
2924
 
2895
- var _tmpl$$6 = /*#__PURE__*/web.template(`<input>`);
2925
+ var _tmpl$$3 = /*#__PURE__*/web.template(`<input>`);
2896
2926
  const RadioGroupItemControl = props => {
2897
2927
  const radioGroup = useRadioGroupContext();
2898
2928
  const itemProps = useRadioGroupItemPropsContext();
2899
2929
  const mergedProps = solid.mergeProps(() => radioGroup().getItemControlProps(itemProps), props);
2900
2930
  return [web.createComponent(ark.div, mergedProps), (() => {
2901
- var _el$ = _tmpl$$6();
2931
+ var _el$ = _tmpl$$3();
2902
2932
  web.spread(_el$, web.mergeProps(() => radioGroup().getItemHiddenInputProps(itemProps)), false, false);
2903
2933
  return _el$;
2904
2934
  })()];
@@ -2919,11 +2949,11 @@ const RadioGroupLabel = props => {
2919
2949
 
2920
2950
  const useRadioGroup = props => {
2921
2951
  const locale = useLocaleContext();
2922
- const getRootNode = useEnvironmentContext();
2952
+ const environment = useEnvironmentContext();
2923
2953
  const context = solid.mergeProps({
2924
2954
  id: solidJs.createUniqueId(),
2925
2955
  dir: locale().dir,
2926
- getRootNode
2956
+ getRootNode: environment().getRootNode
2927
2957
  }, props);
2928
2958
  const [state, send] = solid.useMachine(radio__namespace.machine(context), {
2929
2959
  context
@@ -2962,15 +2992,10 @@ const [RatingGroupProvider, useRatingGroupContext] = createContext({
2962
2992
 
2963
2993
  const RatingGroupContext = props => props.children(useRatingGroupContext());
2964
2994
 
2965
- var _tmpl$$5 = /*#__PURE__*/web.template(`<input>`);
2966
2995
  const RatingGroupControl = props => {
2967
- const api = useRatingGroupContext();
2968
- const mergedProps = solid.mergeProps(() => api().controlProps, props);
2969
- return [web.createComponent(ark.div, mergedProps), (() => {
2970
- var _el$ = _tmpl$$5();
2971
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
2972
- return _el$;
2973
- })()];
2996
+ const ratingGroup = useRatingGroupContext();
2997
+ const mergedProps = solid.mergeProps(() => ratingGroup().controlProps, props);
2998
+ return web.createComponent(ark.div, mergedProps);
2974
2999
  };
2975
3000
 
2976
3001
  const [RatingGroupItemProvider, useRatingGroupItemContext] = createContext({
@@ -3001,11 +3026,11 @@ const RatingGroupLabel = props => {
3001
3026
 
3002
3027
  const useRatingGroup = props => {
3003
3028
  const locale = useLocaleContext();
3004
- const getRootNode = useEnvironmentContext();
3029
+ const environment = useEnvironmentContext();
3005
3030
  const context = solid.mergeProps({
3006
3031
  id: solidJs.createUniqueId(),
3007
3032
  dir: locale().dir,
3008
- getRootNode
3033
+ getRootNode: environment().getRootNode
3009
3034
  }, props);
3010
3035
  const [state, send] = solid.useMachine(rating__namespace.machine(context), {
3011
3036
  context
@@ -3025,10 +3050,17 @@ const RatingGroupRoot = props => {
3025
3050
  });
3026
3051
  };
3027
3052
 
3053
+ const RatingGroupHiddenInput = props => {
3054
+ const ratingGroup = useRatingGroupContext();
3055
+ const mergedProps = solid.mergeProps(() => ratingGroup().hiddenInputProps, props);
3056
+ return web.createComponent(ark.input, mergedProps);
3057
+ };
3058
+
3028
3059
  var ratingGroup = /*#__PURE__*/Object.freeze({
3029
3060
  __proto__: null,
3030
3061
  Context: RatingGroupContext,
3031
3062
  Control: RatingGroupControl,
3063
+ HiddenInput: RatingGroupHiddenInput,
3032
3064
  Item: RatingGroupItem,
3033
3065
  ItemContext: RatingGroupItemContext,
3034
3066
  Label: RatingGroupLabel,
@@ -3078,13 +3110,13 @@ const SegmentGroupItem = props => {
3078
3110
 
3079
3111
  const SegmentGroupItemContext = props => props.children(useSegmentGroupItemContext());
3080
3112
 
3081
- var _tmpl$$4 = /*#__PURE__*/web.template(`<input>`);
3113
+ var _tmpl$$2 = /*#__PURE__*/web.template(`<input>`);
3082
3114
  const SegmentGroupItemControl = props => {
3083
3115
  const segmentGroup = useSegmentGroupContext();
3084
3116
  const itemProps = useSegmentGroupItemPropsContext();
3085
3117
  const mergedProps = solid.mergeProps(() => segmentGroup().getItemControlProps(itemProps), anatomy.segmentGroupAnatomy.build().itemControl.attrs, props);
3086
3118
  return [web.createComponent(ark.div, mergedProps), (() => {
3087
- var _el$ = _tmpl$$4();
3119
+ var _el$ = _tmpl$$2();
3088
3120
  web.spread(_el$, web.mergeProps(() => segmentGroup().getItemHiddenInputProps(itemProps)), false, false);
3089
3121
  return _el$;
3090
3122
  })()];
@@ -3105,11 +3137,11 @@ const SegmentGroupLabel = props => {
3105
3137
 
3106
3138
  const useSegmentGroup = props => {
3107
3139
  const locale = useLocaleContext();
3108
- const getRootNode = useEnvironmentContext();
3140
+ const environment = useEnvironmentContext();
3109
3141
  const context = solid.mergeProps({
3110
3142
  id: solidJs.createUniqueId(),
3111
3143
  dir: locale().dir,
3112
- getRootNode
3144
+ getRootNode: environment().getRootNode
3113
3145
  }, props);
3114
3146
  const [state, send] = solid.useMachine(radio__namespace.machine(context), {
3115
3147
  context
@@ -3169,37 +3201,40 @@ const SelectContent = props => {
3169
3201
 
3170
3202
  const SelectContext = props => props.children(useSelectContext());
3171
3203
 
3172
- var _tmpl$$3 = /*#__PURE__*/web.template(`<option value="">`),
3173
- _tmpl$2 = /*#__PURE__*/web.template(`<select>`),
3174
- _tmpl$3 = /*#__PURE__*/web.template(`<option>`);
3175
3204
  const SelectControl = props => {
3205
+ const select = useSelectContext();
3206
+ const mergedProps = solid.mergeProps(() => select().controlProps, props);
3207
+ return web.createComponent(ark.div, mergedProps);
3208
+ };
3209
+
3210
+ var _tmpl$$1 = /*#__PURE__*/web.template(`<option value="">`),
3211
+ _tmpl$2 = /*#__PURE__*/web.template(`<option>`);
3212
+ const SelectHiddenSelect = props => {
3176
3213
  const select = useSelectContext();
3177
3214
  const mergedProps = solid.mergeProps(() => select().controlProps, props);
3178
3215
  const isValueEmpty = solidJs.createMemo(() => select().value.length === 0);
3179
- return [web.createComponent(ark.div, mergedProps), (() => {
3180
- var _el$ = _tmpl$2();
3181
- web.spread(_el$, web.mergeProps(() => select().hiddenSelectProps), false, true);
3182
- web.insert(_el$, web.createComponent(solidJs.Show, {
3183
- get when() {
3184
- return isValueEmpty();
3185
- },
3186
- get children() {
3187
- return _tmpl$$3();
3188
- }
3189
- }), null);
3190
- web.insert(_el$, web.createComponent(solidJs.Index, {
3191
- get each() {
3192
- return select().collection.toArray();
3193
- },
3194
- children: option => (() => {
3195
- var _el$3 = _tmpl$3();
3196
- web.insert(_el$3, () => option().label);
3197
- web.effect(() => _el$3.value = option().value);
3198
- return _el$3;
3199
- })()
3200
- }), null);
3201
- return _el$;
3202
- })()];
3216
+ return web.createComponent(ark.select, web.mergeProps(mergedProps, {
3217
+ get children() {
3218
+ return [web.createComponent(solidJs.Show, {
3219
+ get when() {
3220
+ return isValueEmpty();
3221
+ },
3222
+ get children() {
3223
+ return _tmpl$$1();
3224
+ }
3225
+ }), web.createComponent(solidJs.Index, {
3226
+ get each() {
3227
+ return select().collection.toArray();
3228
+ },
3229
+ children: option => (() => {
3230
+ var _el$2 = _tmpl$2();
3231
+ web.insert(_el$2, () => option().label);
3232
+ web.effect(() => _el$2.value = option().value);
3233
+ return _el$2;
3234
+ })()
3235
+ })];
3236
+ }
3237
+ }));
3203
3238
  };
3204
3239
 
3205
3240
  const SelectIndicator = props => {
@@ -3302,17 +3337,19 @@ const SelectPositioner = props => {
3302
3337
  };
3303
3338
 
3304
3339
  const useSelect = props => {
3305
- const [collectionOptions, rest] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
3306
- const collection = () => select__namespace.collection(collectionOptions);
3340
+ const [collectionOptions, localProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
3341
+ const collection = solidJs.createMemo(() => select__namespace.collection(collectionOptions));
3307
3342
  const locale = useLocaleContext();
3308
- const getRootNode = useEnvironmentContext();
3343
+ const environment = useEnvironmentContext();
3309
3344
  const context = solid.mergeProps({
3310
3345
  id: solidJs.createUniqueId(),
3311
3346
  dir: locale().dir,
3312
- getRootNode,
3313
- collection: collection(),
3314
- 'open.controlled': props.open !== undefined
3315
- }, rest);
3347
+ getRootNode: environment().getRootNode,
3348
+ 'open.controlled': props.open !== undefined,
3349
+ get collection() {
3350
+ return collection();
3351
+ }
3352
+ }, localProps);
3316
3353
  const [state, send] = solid.useMachine(select__namespace.machine(context), {
3317
3354
  context
3318
3355
  });
@@ -3362,6 +3399,7 @@ var select = /*#__PURE__*/Object.freeze({
3362
3399
  Content: SelectContent,
3363
3400
  Context: SelectContext,
3364
3401
  Control: SelectControl,
3402
+ HiddenSelect: SelectHiddenSelect,
3365
3403
  Indicator: SelectIndicator,
3366
3404
  Item: SelectItem,
3367
3405
  ItemContext: SelectItemContext,
@@ -3416,11 +3454,11 @@ const SliderRange = props => {
3416
3454
 
3417
3455
  const useSlider = props => {
3418
3456
  const locale = useLocaleContext();
3419
- const getRootNode = useEnvironmentContext();
3457
+ const environment = useEnvironmentContext();
3420
3458
  const context = solid.mergeProps({
3421
3459
  id: solidJs.createUniqueId(),
3422
3460
  dir: locale().dir,
3423
- getRootNode
3461
+ getRootNode: environment().getRootNode
3424
3462
  }, props);
3425
3463
  const [state, send] = solid.useMachine(slider__namespace.machine(context), {
3426
3464
  context
@@ -3500,11 +3538,11 @@ const SplitterResizeTrigger = props => {
3500
3538
 
3501
3539
  const useSplitter = props => {
3502
3540
  const locale = useLocaleContext();
3503
- const getRootNode = useEnvironmentContext();
3541
+ const environment = useEnvironmentContext();
3504
3542
  const context = solid.mergeProps({
3505
3543
  id: solidJs.createUniqueId(),
3506
3544
  dir: locale().dir,
3507
- getRootNode
3545
+ getRootNode: environment().getRootNode
3508
3546
  }, props);
3509
3547
  const [state, send] = solid.useMachine(splitter__namespace.machine(context), {
3510
3548
  context
@@ -3539,15 +3577,16 @@ const [SwitchProvider, useSwitchContext] = createContext({
3539
3577
 
3540
3578
  const SwitchContext = props => props.children(useSwitchContext());
3541
3579
 
3542
- var _tmpl$$2 = /*#__PURE__*/web.template(`<input>`);
3543
3580
  const SwitchControl = props => {
3544
3581
  const api = useSwitchContext();
3545
3582
  const mergedProps = solid.mergeProps(() => api().controlProps, props);
3546
- return [web.createComponent(ark.span, mergedProps), (() => {
3547
- var _el$ = _tmpl$$2();
3548
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
3549
- return _el$;
3550
- })()];
3583
+ return web.createComponent(ark.span, mergedProps);
3584
+ };
3585
+
3586
+ const SwitchHiddenInput = props => {
3587
+ const api = useSwitchContext();
3588
+ const mergedProps = solid.mergeProps(() => api().hiddenInputProps, props);
3589
+ return web.createComponent(ark.input, mergedProps);
3551
3590
  };
3552
3591
 
3553
3592
  const SwitchLabel = props => {
@@ -3558,11 +3597,11 @@ const SwitchLabel = props => {
3558
3597
 
3559
3598
  const useSwitch = props => {
3560
3599
  const locale = useLocaleContext();
3561
- const getRootNode = useEnvironmentContext();
3600
+ const environment = useEnvironmentContext();
3562
3601
  const context = solid.mergeProps({
3563
3602
  id: solidJs.createUniqueId(),
3564
3603
  dir: locale().dir,
3565
- getRootNode
3604
+ getRootNode: environment().getRootNode
3566
3605
  }, props);
3567
3606
  const [state, send] = solid.useMachine(zagSwitch__namespace.machine(context), {
3568
3607
  context
@@ -3592,6 +3631,7 @@ var _switch = /*#__PURE__*/Object.freeze({
3592
3631
  __proto__: null,
3593
3632
  Context: SwitchContext,
3594
3633
  Control: SwitchControl,
3634
+ HiddenInput: SwitchHiddenInput,
3595
3635
  Label: SwitchLabel,
3596
3636
  Root: SwitchRoot,
3597
3637
  Thumb: SwitchThumb
@@ -3648,11 +3688,11 @@ const TabsContext = props => props.children(useTabsContext());
3648
3688
 
3649
3689
  const useTabs = props => {
3650
3690
  const locale = useLocaleContext();
3651
- const getRootNode = useEnvironmentContext();
3691
+ const environment = useEnvironmentContext();
3652
3692
  const context = solid.mergeProps({
3653
3693
  id: solidJs.createUniqueId(),
3654
3694
  dir: locale().dir,
3655
- getRootNode
3695
+ getRootNode: environment().getRootNode
3656
3696
  }, props);
3657
3697
  const [state, send] = solid.useMachine(tabs__namespace.machine(context), {
3658
3698
  context
@@ -3757,6 +3797,12 @@ const TagsInputItemInput = props => {
3757
3797
  return web.createComponent(ark.input, mergedProps);
3758
3798
  };
3759
3799
 
3800
+ const TagsInputHiddenInput = props => {
3801
+ const tagsInput = useTagsInputContext();
3802
+ const mergedProps = solid.mergeProps(() => tagsInput().hiddenInputProps, props);
3803
+ return web.createComponent(ark.input, mergedProps);
3804
+ };
3805
+
3760
3806
  const TagsInputItemPreview = props => {
3761
3807
  const api = useTagsInputContext();
3762
3808
  const itemProps = useTagsInputItemPropsContext();
@@ -3779,11 +3825,11 @@ const TagsInputLabel = props => {
3779
3825
 
3780
3826
  const useTagsInput = props => {
3781
3827
  const locale = useLocaleContext();
3782
- const getRootNode = useEnvironmentContext();
3828
+ const environment = useEnvironmentContext();
3783
3829
  const context = solid.mergeProps({
3784
3830
  id: solidJs.createUniqueId(),
3785
3831
  dir: locale().dir,
3786
- getRootNode
3832
+ getRootNode: environment().getRootNode
3787
3833
  }, props);
3788
3834
  const [state, send] = solid.useMachine(tagsInput__namespace.machine(context), {
3789
3835
  context
@@ -3791,7 +3837,6 @@ const useTagsInput = props => {
3791
3837
  return solidJs.createMemo(() => tagsInput__namespace.connect(state, send, solid.normalizeProps));
3792
3838
  };
3793
3839
 
3794
- var _tmpl$$1 = /*#__PURE__*/web.template(`<input>`);
3795
3840
  const TagsInputRoot = props => {
3796
3841
  const [useTagsInputProps, localProps] = createSplitProps()(props, ['addOnPaste', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'disabled', 'editable', 'form', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueInvalid', 'readOnly', 'translations', 'validate', 'value']);
3797
3842
  const api = useTagsInput(useTagsInputProps);
@@ -3799,11 +3844,7 @@ const TagsInputRoot = props => {
3799
3844
  return web.createComponent(TagsInputProvider, {
3800
3845
  value: api,
3801
3846
  get children() {
3802
- return [web.createComponent(ark.div, mergedProps), (() => {
3803
- var _el$ = _tmpl$$1();
3804
- web.spread(_el$, web.mergeProps(() => api().hiddenInputProps), false, false);
3805
- return _el$;
3806
- })()];
3847
+ return web.createComponent(ark.div, mergedProps);
3807
3848
  }
3808
3849
  });
3809
3850
  };
@@ -3813,6 +3854,7 @@ var tagsInput = /*#__PURE__*/Object.freeze({
3813
3854
  ClearTrigger: TagsInputClearTrigger,
3814
3855
  Context: TagsInputContext,
3815
3856
  Control: TagsInputControl,
3857
+ HiddenInput: TagsInputHiddenInput,
3816
3858
  Input: TagsInputInput,
3817
3859
  Item: TagsInputItem,
3818
3860
  ItemContext: TagsInputItemContext,
@@ -3943,11 +3985,11 @@ const ToggleGroupItem = props => {
3943
3985
 
3944
3986
  const useToggleGroup = props => {
3945
3987
  const locale = useLocaleContext();
3946
- const getRootNode = useEnvironmentContext();
3988
+ const environment = useEnvironmentContext();
3947
3989
  const context = solid.mergeProps({
3948
3990
  id: solidJs.createUniqueId(),
3949
3991
  dir: locale().dir,
3950
- getRootNode
3992
+ getRootNode: environment().getRootNode
3951
3993
  }, props);
3952
3994
  const [state, send] = solid.useMachine(toggleGroup__namespace.machine(context), {
3953
3995
  context
@@ -4023,11 +4065,11 @@ const TooltipPositioner = props => {
4023
4065
 
4024
4066
  const useTooltip = props => {
4025
4067
  const locale = useLocaleContext();
4026
- const getRootNode = useEnvironmentContext();
4068
+ const environment = useEnvironmentContext();
4027
4069
  const context = solid.mergeProps({
4028
4070
  id: solidJs.createUniqueId(),
4029
4071
  dir: locale().dir,
4030
- getRootNode,
4072
+ getRootNode: environment().getRootNode,
4031
4073
  'open.controlled': props.open !== undefined
4032
4074
  }, props);
4033
4075
  const [state, send] = solid.useMachine(tooltip__namespace.machine(context), {
@@ -4202,11 +4244,11 @@ const TreeViewLabel = props => {
4202
4244
 
4203
4245
  const useTreeView = props => {
4204
4246
  const locale = useLocaleContext();
4205
- const getRootNode = useEnvironmentContext();
4247
+ const environment = useEnvironmentContext();
4206
4248
  const context = solid.mergeProps({
4207
4249
  id: solidJs.createUniqueId(),
4208
4250
  dir: locale().dir,
4209
- getRootNode
4251
+ getRootNode: environment().getRootNode
4210
4252
  }, props);
4211
4253
  const [state, send] = solid.useMachine(treeView__namespace.machine(context), {
4212
4254
  context
@@ -4282,6 +4324,7 @@ exports.CarouselViewport = CarouselViewport;
4282
4324
  exports.Checkbox = checkbox;
4283
4325
  exports.CheckboxContext = CheckboxContext;
4284
4326
  exports.CheckboxControl = CheckboxControl;
4327
+ exports.CheckboxHiddenInput = CheckboxHiddenInput;
4285
4328
  exports.CheckboxIndicator = CheckboxIndicator;
4286
4329
  exports.CheckboxLabel = CheckboxLabel;
4287
4330
  exports.CheckboxRoot = CheckboxRoot;
@@ -4312,6 +4355,7 @@ exports.ColorPickerControl = ColorPickerControl;
4312
4355
  exports.ColorPickerEyeDropperTrigger = ColorPickerEyeDropperTrigger;
4313
4356
  exports.ColorPickerFormatSelect = ColorPickerFormatSelect;
4314
4357
  exports.ColorPickerFormatTrigger = ColorPickerFormatTrigger;
4358
+ exports.ColorPickerHiddenInput = ColorPickerHiddenInput;
4315
4359
  exports.ColorPickerLabel = ColorPickerLabel;
4316
4360
  exports.ColorPickerPositioner = ColorPickerPositioner;
4317
4361
  exports.ColorPickerRoot = ColorPickerRoot;
@@ -4390,6 +4434,7 @@ exports.Environment = Environment;
4390
4434
  exports.FileUpload = fileUpload;
4391
4435
  exports.FileUploadContext = FileUploadContext;
4392
4436
  exports.FileUploadDropzone = FileUploadDropzone;
4437
+ exports.FileUploadHiddenInput = FileUploadHiddenInput;
4393
4438
  exports.FileUploadItem = FileUploadItem;
4394
4439
  exports.FileUploadItemDeleteTrigger = FileUploadItemDeleteTrigger;
4395
4440
  exports.FileUploadItemGroup = FileUploadItemGroup;
@@ -4452,6 +4497,7 @@ exports.PaginationRoot = PaginationRoot;
4452
4497
  exports.PinInput = pinInput;
4453
4498
  exports.PinInputContext = PinInputContext;
4454
4499
  exports.PinInputControl = PinInputControl;
4500
+ exports.PinInputHiddenInput = PinInputHiddenInput;
4455
4501
  exports.PinInputInput = PinInputInput;
4456
4502
  exports.PinInputLabel = PinInputLabel;
4457
4503
  exports.PinInputRoot = PinInputRoot;
@@ -4493,6 +4539,7 @@ exports.RadioGroupRoot = RadioGroupRoot;
4493
4539
  exports.RatingGroup = ratingGroup;
4494
4540
  exports.RatingGroupContext = RatingGroupContext;
4495
4541
  exports.RatingGroupControl = RatingGroupControl;
4542
+ exports.RatingGroupHiddenInput = RatingGroupHiddenInput;
4496
4543
  exports.RatingGroupItem = RatingGroupItem;
4497
4544
  exports.RatingGroupItemContext = RatingGroupItemContext;
4498
4545
  exports.RatingGroupLabel = RatingGroupLabel;
@@ -4511,6 +4558,7 @@ exports.SelectClearTrigger = SelectClearTrigger;
4511
4558
  exports.SelectContent = SelectContent;
4512
4559
  exports.SelectContext = SelectContext;
4513
4560
  exports.SelectControl = SelectControl;
4561
+ exports.SelectHiddenSelect = SelectHiddenSelect;
4514
4562
  exports.SelectIndicator = SelectIndicator;
4515
4563
  exports.SelectItem = SelectItem;
4516
4564
  exports.SelectItemContext = SelectItemContext;
@@ -4542,6 +4590,7 @@ exports.SplitterRoot = SplitterRoot;
4542
4590
  exports.Switch = _switch;
4543
4591
  exports.SwitchContext = SwitchContext;
4544
4592
  exports.SwitchControl = SwitchControl;
4593
+ exports.SwitchHiddenInput = SwitchHiddenInput;
4545
4594
  exports.SwitchLabel = SwitchLabel;
4546
4595
  exports.SwitchRoot = SwitchRoot;
4547
4596
  exports.SwitchThumb = SwitchThumb;
@@ -4556,6 +4605,7 @@ exports.TagsInput = tagsInput;
4556
4605
  exports.TagsInputClearTrigger = TagsInputClearTrigger;
4557
4606
  exports.TagsInputContext = TagsInputContext;
4558
4607
  exports.TagsInputControl = TagsInputControl;
4608
+ exports.TagsInputHiddenInput = TagsInputHiddenInput;
4559
4609
  exports.TagsInputInput = TagsInputInput;
4560
4610
  exports.TagsInputItem = TagsInputItem;
4561
4611
  exports.TagsInputItemContext = TagsInputItemContext;