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

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 (98) hide show
  1. package/dist/cjs/index.js +290 -215
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/esm/index.js +292 -217
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/source/components/accordion/accordion-item-content.jsx +7 -2
  6. package/dist/source/components/accordion/accordion-root.jsx +1 -0
  7. package/dist/source/components/accordion/use-accordion.js +12 -3
  8. package/dist/source/components/avatar/use-avatar.js +9 -3
  9. package/dist/source/components/carousel/carousel-root.jsx +1 -0
  10. package/dist/source/components/carousel/use-carousel.js +10 -3
  11. package/dist/source/components/checkbox/checkbox-root.jsx +1 -0
  12. package/dist/source/components/checkbox/use-checkbox.js +10 -3
  13. package/dist/source/components/clipboard/use-clipboard.js +8 -3
  14. package/dist/source/components/collapsible/collapsible-root.jsx +1 -0
  15. package/dist/source/components/collapsible/use-collapsible.js +8 -5
  16. package/dist/source/components/color-picker/color-picker-root.jsx +2 -0
  17. package/dist/source/components/color-picker/use-color-picker.js +14 -8
  18. package/dist/source/components/combobox/combobox-root.jsx +4 -2
  19. package/dist/source/components/combobox/combobox-trigger.jsx +3 -1
  20. package/dist/source/components/combobox/use-combobox.js +12 -10
  21. package/dist/source/components/date-picker/date-picker-root.jsx +2 -0
  22. package/dist/source/components/date-picker/use-date-picker.js +17 -11
  23. package/dist/source/components/dialog/dialog-root.jsx +2 -0
  24. package/dist/source/components/dialog/use-dialog.js +8 -5
  25. package/dist/source/components/editable/editable-root.jsx +1 -0
  26. package/dist/source/components/editable/use-editable.js +10 -3
  27. package/dist/source/components/file-upload/use-file-upload.js +9 -3
  28. package/dist/source/components/hover-card/hover-card-root.jsx +1 -0
  29. package/dist/source/components/hover-card/use-hover-card.js +8 -5
  30. package/dist/source/components/menu/menu-root.jsx +2 -0
  31. package/dist/source/components/menu/use-menu.js +8 -5
  32. package/dist/source/components/number-input/number-input-root.jsx +1 -0
  33. package/dist/source/components/number-input/use-number-input.js +10 -3
  34. package/dist/source/components/pagination/pagination-root.jsx +1 -0
  35. package/dist/source/components/pagination/use-pagination.js +10 -3
  36. package/dist/source/components/pin-input/pin-input-root.jsx +1 -0
  37. package/dist/source/components/pin-input/use-pin-input.js +10 -3
  38. package/dist/source/components/popover/popover-root.jsx +3 -1
  39. package/dist/source/components/popover/use-popover.js +8 -5
  40. package/dist/source/components/progress/use-progress.js +9 -3
  41. package/dist/source/components/radio-group/radio-group-root.jsx +1 -0
  42. package/dist/source/components/radio-group/use-radio-group.js +10 -3
  43. package/dist/source/components/rating-group/rating-group-root.jsx +1 -0
  44. package/dist/source/components/rating-group/use-rating-group.js +10 -3
  45. package/dist/source/components/segment-group/segment-group-root.jsx +1 -0
  46. package/dist/source/components/segment-group/use-segment-group.js +12 -5
  47. package/dist/source/components/select/select-item.jsx +1 -1
  48. package/dist/source/components/select/select-root.jsx +3 -0
  49. package/dist/source/components/select/use-select.js +12 -10
  50. package/dist/source/components/slider/slider-root.jsx +1 -0
  51. package/dist/source/components/slider/use-slider.js +10 -3
  52. package/dist/source/components/splitter/splitter-root.jsx +1 -0
  53. package/dist/source/components/splitter/use-splitter.js +10 -3
  54. package/dist/source/components/switch/switch-root.jsx +1 -0
  55. package/dist/source/components/switch/use-switch.js +10 -3
  56. package/dist/source/components/tabs/tabs-root.jsx +2 -0
  57. package/dist/source/components/tabs/use-tabs.js +10 -3
  58. package/dist/source/components/tags-input/tags-input-root.jsx +1 -0
  59. package/dist/source/components/tags-input/use-tags-input.js +10 -3
  60. package/dist/source/components/toggle-group/toggle-group-root.jsx +1 -0
  61. package/dist/source/components/toggle-group/use-toggle-group.js +10 -3
  62. package/dist/source/components/tooltip/tooltip-root.jsx +2 -1
  63. package/dist/source/components/tooltip/use-tooltip.js +8 -5
  64. package/dist/source/components/tree-view/tree-view-root.jsx +3 -1
  65. package/dist/source/components/tree-view/use-tree-view.js +11 -3
  66. package/dist/source/providers/locale/locale-provider.jsx +5 -19
  67. package/dist/types/components/accordion/accordion-item.d.ts +1 -2
  68. package/dist/types/components/accordion/use-accordion.d.ts +5 -0
  69. package/dist/types/components/carousel/use-carousel.d.ts +5 -0
  70. package/dist/types/components/checkbox/use-checkbox.d.ts +5 -0
  71. package/dist/types/components/collapsible/use-collapsible.d.ts +5 -0
  72. package/dist/types/components/color-picker/use-color-picker.d.ts +10 -0
  73. package/dist/types/components/combobox/combobox-trigger.d.ts +3 -1
  74. package/dist/types/components/combobox/use-combobox.d.ts +10 -0
  75. package/dist/types/components/date-picker/use-date-picker.d.ts +14 -4
  76. package/dist/types/components/dialog/use-dialog.d.ts +5 -0
  77. package/dist/types/components/editable/use-editable.d.ts +5 -0
  78. package/dist/types/components/hover-card/use-hover-card.d.ts +5 -0
  79. package/dist/types/components/menu/use-menu.d.ts +5 -0
  80. package/dist/types/components/number-input/use-number-input.d.ts +5 -0
  81. package/dist/types/components/pagination/use-pagination.d.ts +5 -0
  82. package/dist/types/components/pin-input/use-pin-input.d.ts +5 -0
  83. package/dist/types/components/popover/use-popover.d.ts +5 -0
  84. package/dist/types/components/radio-group/use-radio-group.d.ts +5 -0
  85. package/dist/types/components/rating-group/use-rating-group.d.ts +5 -0
  86. package/dist/types/components/segment-group/use-segment-group.d.ts +8 -3
  87. package/dist/types/components/select/use-select.d.ts +10 -0
  88. package/dist/types/components/slider/use-slider.d.ts +5 -0
  89. package/dist/types/components/splitter/use-splitter.d.ts +5 -0
  90. package/dist/types/components/switch/use-switch.d.ts +5 -0
  91. package/dist/types/components/tabs/use-tabs.d.ts +5 -0
  92. package/dist/types/components/tags-input/use-tags-input.d.ts +5 -0
  93. package/dist/types/components/toggle-group/use-toggle-group.d.ts +5 -0
  94. package/dist/types/components/tooltip/use-tooltip.d.ts +5 -0
  95. package/dist/types/components/tree-view/use-tree-view.d.ts +10 -0
  96. package/dist/types/providers/locale/locale-provider.d.ts +3 -5
  97. package/package.json +46 -46
  98. /package/dist/source/providers/locale/{use-locale-context.jsx → use-locale-context.js} +0 -0
package/dist/cjs/index.js CHANGED
@@ -243,27 +243,14 @@ const [LocaleContextProvider, useLocaleContext] = createContext({
243
243
  });
244
244
 
245
245
  const LocaleProvider = props => {
246
- const [localeProps, restProps] = solidJs.splitProps(props, ['locale', 'defaultLocale']);
247
- const [locale, setLocale] = solidJs.createSignal(localeProps.defaultLocale || localeProps.locale || 'en-US');
248
- const environment = useEnvironmentContext();
249
- solidJs.createEffect(() => {
250
- const cleanup = i18nUtils.trackLocale({
251
- locale: localeProps.locale,
252
- getRootNode: environment().getRootNode,
253
- onLocaleChange(locale) {
254
- setLocale(locale.locale);
255
- }
256
- });
257
- solidJs.onCleanup(cleanup);
258
- });
259
246
  const context = solidJs.createMemo(() => ({
260
- locale: locale(),
261
- dir: i18nUtils.isRTL(locale()) ? 'rtl' : 'ltr'
247
+ locale: props.locale,
248
+ dir: i18nUtils.isRTL(props.locale) ? 'rtl' : 'ltr'
262
249
  }));
263
250
  return web.createComponent(LocaleContextProvider, {
264
251
  value: context,
265
252
  get children() {
266
- return restProps.children;
253
+ return props.children;
267
254
  }
268
255
  });
269
256
  };
@@ -272,13 +259,16 @@ const useCollapsible = props => {
272
259
  const locale = useLocaleContext();
273
260
  const environment = useEnvironmentContext();
274
261
  const [renderStrategyProps, collapsibleProps] = splitRenderStrategyProps(props);
275
- const context = solid.mergeProps({
276
- id: solidJs.createUniqueId(),
262
+ const id = solidJs.createUniqueId();
263
+ const context = solidJs.createMemo(() => ({
264
+ id,
277
265
  dir: locale().dir,
278
266
  getRootNode: environment().getRootNode,
279
- 'open.controlled': props.open !== undefined
280
- }, collapsibleProps);
281
- const [state, send] = solid.useMachine(collapsible__namespace.machine(context), {
267
+ open: props.defaultOpen,
268
+ 'open.controlled': props.open !== undefined,
269
+ ...collapsibleProps
270
+ }));
271
+ const [state, send] = solid.useMachine(collapsible__namespace.machine(context()), {
282
272
  context
283
273
  });
284
274
  const [wasVisible, setWasVisible] = solidJs.createSignal(false);
@@ -294,7 +284,7 @@ const useCollapsible = props => {
294
284
  };
295
285
 
296
286
  const CollapsibleRoot = props => {
297
- const [useCollapsibleProps, localProps] = createSplitProps()(props, ['disabled', 'id', 'ids', 'lazyMount', 'onExitComplete', 'onOpenChange', 'open', 'unmountOnExit']);
287
+ const [useCollapsibleProps, localProps] = createSplitProps()(props, ['defaultOpen', 'disabled', 'id', 'ids', 'lazyMount', 'onExitComplete', 'onOpenChange', 'open', 'unmountOnExit']);
298
288
  const api = useCollapsible(useCollapsibleProps);
299
289
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
300
290
  return web.createComponent(CollapsibleProvider, {
@@ -358,12 +348,13 @@ const AccordionItem = props => {
358
348
  });
359
349
  };
360
350
 
351
+ const splitVisibilityProps = createSplitProps();
361
352
  const AccordionItemContent = props => {
362
353
  const accordion = useAccordionContext();
363
354
  const itemProps = useAccordionItemPropsContext();
364
355
  const itemContentProps = solidJs.createMemo(() => {
365
- const ownProps = accordion().getItemContentProps(itemProps);
366
- ownProps.hidden = undefined;
356
+ const contentProps = accordion().getItemContentProps(itemProps);
357
+ const [, ownProps] = splitVisibilityProps(contentProps, ['hidden', 'data-state']);
367
358
  return ownProps;
368
359
  });
369
360
  const mergedProps = solid.mergeProps(itemContentProps, props);
@@ -389,14 +380,17 @@ const AccordionItemTrigger = props => {
389
380
  };
390
381
 
391
382
  const useAccordion = props => {
383
+ const id = solidJs.createUniqueId();
392
384
  const locale = useLocaleContext();
393
385
  const environment = useEnvironmentContext();
394
- const context = solidJs.mergeProps({
395
- id: solidJs.createUniqueId(),
386
+ const context = solidJs.createMemo(() => ({
387
+ id,
396
388
  dir: locale().dir,
397
- getRootNode: environment().getRootNode
398
- }, props);
399
- const [state, send] = solid.useMachine(accordion__namespace.machine(context), {
389
+ value: props.defaultValue,
390
+ getRootNode: environment().getRootNode,
391
+ ...props
392
+ }));
393
+ const [state, send] = solid.useMachine(accordion__namespace.machine(context()), {
400
394
  context
401
395
  });
402
396
  return solidJs.createMemo(() => accordion__namespace.connect(state, send, solid.normalizeProps));
@@ -404,7 +398,7 @@ const useAccordion = props => {
404
398
 
405
399
  const AccordionRoot = props => {
406
400
  const [renderStrategyProps, accordionProps] = splitRenderStrategyProps(props);
407
- const [useAccordionProps, localProps] = createSplitProps()(accordionProps, ['collapsible', 'disabled', 'id', 'ids', 'multiple', 'onFocusChange', 'onValueChange', 'orientation', 'value']);
401
+ const [useAccordionProps, localProps] = createSplitProps()(accordionProps, ['collapsible', 'defaultValue', 'disabled', 'id', 'ids', 'multiple', 'onFocusChange', 'onValueChange', 'orientation', 'value']);
408
402
  const api = useAccordion(useAccordionProps);
409
403
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
410
404
  return web.createComponent(AccordionProvider, {
@@ -453,12 +447,14 @@ const AvatarImage = props => {
453
447
  const useAvatar = props => {
454
448
  const locale = useLocaleContext();
455
449
  const environment = useEnvironmentContext();
456
- const context = solid.mergeProps({
457
- id: solidJs.createUniqueId(),
450
+ const id = solidJs.createUniqueId();
451
+ const context = solidJs.createMemo(() => ({
452
+ id,
458
453
  dir: locale().dir,
459
- getRootNode: environment().getRootNode
460
- }, props);
461
- const [state, send] = solid.useMachine(avatar__namespace.machine(context), {
454
+ getRootNode: environment().getRootNode,
455
+ ...props
456
+ }));
457
+ const [state, send] = solid.useMachine(avatar__namespace.machine(context()), {
462
458
  context
463
459
  });
464
460
  return solidJs.createMemo(() => avatar__namespace.connect(state, send, solid.normalizeProps));
@@ -537,19 +533,22 @@ const CarouselPrevTrigger = props => {
537
533
  const useCarousel = props => {
538
534
  const locale = useLocaleContext();
539
535
  const environment = useEnvironmentContext();
540
- const context = solid.mergeProps({
541
- id: solidJs.createUniqueId(),
536
+ const id = solidJs.createUniqueId();
537
+ const context = solidJs.createMemo(() => ({
538
+ id,
542
539
  dir: locale().dir,
543
- getRootNode: environment().getRootNode
544
- }, props);
545
- const [state, send] = solid.useMachine(carousel__namespace.machine(context), {
540
+ getRootNode: environment().getRootNode,
541
+ index: props.defaultIndex,
542
+ ...props
543
+ }));
544
+ const [state, send] = solid.useMachine(carousel__namespace.machine(context()), {
546
545
  context
547
546
  });
548
547
  return solidJs.createMemo(() => carousel__namespace.connect(state, send, solid.normalizeProps));
549
548
  };
550
549
 
551
550
  const CarouselRoot = props => {
552
- const [useCarouselProps, localProps] = createSplitProps()(props, ['align', 'id', 'ids', 'index', 'loop', 'onIndexChange', 'orientation', 'slidesPerView', 'spacing']);
551
+ const [useCarouselProps, localProps] = createSplitProps()(props, ['align', 'defaultIndex', 'id', 'ids', 'index', 'loop', 'onIndexChange', 'orientation', 'slidesPerView', 'spacing']);
553
552
  const api = useCarousel(useCarouselProps);
554
553
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
555
554
  return web.createComponent(CarouselProvider, {
@@ -619,19 +618,22 @@ const CheckboxLabel = props => {
619
618
  const useCheckbox = props => {
620
619
  const locale = useLocaleContext();
621
620
  const environment = useEnvironmentContext();
622
- const context = solid.mergeProps({
623
- id: solidJs.createUniqueId(),
621
+ const id = solidJs.createUniqueId();
622
+ const context = solidJs.createMemo(() => ({
623
+ id,
624
624
  dir: locale().dir,
625
- getRootNode: environment().getRootNode
626
- }, props);
627
- const [state, send] = solid.useMachine(checkbox__namespace.machine(context), {
625
+ getRootNode: environment().getRootNode,
626
+ checked: props.defaultChecked,
627
+ ...props
628
+ }));
629
+ const [state, send] = solid.useMachine(checkbox__namespace.machine(context()), {
628
630
  context
629
631
  });
630
632
  return solidJs.createMemo(() => checkbox__namespace.connect(state, send, solid.normalizeProps));
631
633
  };
632
634
 
633
635
  const CheckboxRoot = props => {
634
- const [useCheckboxProps, labelprops] = createSplitProps()(props, ['checked', 'disabled', 'form', 'id', 'ids', 'invalid', 'name', 'onCheckedChange', 'readOnly', 'required', 'value']);
636
+ const [useCheckboxProps, labelprops] = createSplitProps()(props, ['checked', 'defaultChecked', 'disabled', 'form', 'id', 'ids', 'invalid', 'name', 'onCheckedChange', 'readOnly', 'required', 'value']);
635
637
  const checkbox = useCheckbox(useCheckboxProps);
636
638
  const mergedProps = solid.mergeProps(() => checkbox().rootProps, labelprops);
637
639
  return web.createComponent(CheckboxProvider, {
@@ -704,11 +706,13 @@ const ClipboardLabel = props => {
704
706
 
705
707
  const useClipboard = props => {
706
708
  const environment = useEnvironmentContext();
707
- const context = solid.mergeProps({
708
- id: solidJs.createUniqueId(),
709
- getRootNode: environment().getRootNode
710
- }, props);
711
- const [state, send] = solid.useMachine(clipboard__namespace.machine(context), {
709
+ const id = solidJs.createUniqueId();
710
+ const context = solidJs.createMemo(() => ({
711
+ id,
712
+ getRootNode: environment().getRootNode,
713
+ ...props
714
+ }));
715
+ const [state, send] = solid.useMachine(clipboard__namespace.machine(context()), {
712
716
  context
713
717
  });
714
718
  return solidJs.createMemo(() => clipboard__namespace.connect(state, send, solid.normalizeProps));
@@ -944,17 +948,19 @@ const ColorPickerPositioner = props => {
944
948
  };
945
949
 
946
950
  const useColorPicker = props => {
947
- const [local, rest] = solidJs.splitProps(props, ['value']);
948
951
  const locale = useLocaleContext();
949
952
  const environment = useEnvironmentContext();
950
- const context = solid.mergeProps(() => ({
951
- id: solidJs.createUniqueId(),
953
+ const id = solidJs.createUniqueId();
954
+ const context = solidJs.createMemo(() => ({
955
+ id,
952
956
  dir: locale().dir,
953
957
  getRootNode: environment().getRootNode,
958
+ open: props.defaultOpen,
954
959
  'open.controlled': props.open !== undefined,
955
- value: local.value ? colorPicker__namespace.parse(local.value) : undefined
956
- }), rest);
957
- const [state, send] = solid.useMachine(colorPicker__namespace.machine(context), {
960
+ ...props,
961
+ value: props.value ? colorPicker__namespace.parse(props.value) : props.defaultValue ? colorPicker__namespace.parse(props.defaultValue) : undefined
962
+ }));
963
+ const [state, send] = solid.useMachine(colorPicker__namespace.machine(context()), {
958
964
  context
959
965
  });
960
966
  return solidJs.createMemo(() => colorPicker__namespace.connect(state, send, solid.normalizeProps));
@@ -962,7 +968,7 @@ const useColorPicker = props => {
962
968
 
963
969
  const ColorPickerRoot = props => {
964
970
  const [presenceProps, colorPickerProps] = splitPresenceProps(props);
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']);
971
+ const [useColorPickerProps, localProps] = createSplitProps()(colorPickerProps, ['closeOnSelect', 'defaultOpen', 'defaultValue', 'disabled', 'format', 'id', 'ids', 'initialFocusEl', 'name', 'name', 'onFocusOutside', 'onFormatChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'onValueChangeEnd', 'open', 'positioning', 'readOnly', 'value']);
966
972
  const api = useColorPicker(useColorPickerProps);
967
973
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
968
974
  present: api().open
@@ -1223,20 +1229,22 @@ const ComboboxPositioner = props => {
1223
1229
  };
1224
1230
 
1225
1231
  const useCombobox = props => {
1226
- const [collectionOptions, rest] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
1227
- const collection = solidJs.createMemo(() => combobox__namespace.collection(collectionOptions));
1232
+ const [collectionOptions, comboboxProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
1233
+ const collection = () => combobox__namespace.collection(collectionOptions);
1228
1234
  const locale = useLocaleContext();
1229
1235
  const environment = useEnvironmentContext();
1230
- const context = solid.mergeProps({
1231
- id: solidJs.createUniqueId(),
1236
+ const id = solidJs.createUniqueId();
1237
+ const context = solidJs.createMemo(() => ({
1238
+ id,
1239
+ collection: collection(),
1232
1240
  dir: locale().dir,
1233
1241
  getRootNode: environment().getRootNode,
1242
+ open: props.defaultOpen,
1243
+ value: props.defaultValue,
1234
1244
  'open.controlled': props.open !== undefined,
1235
- get collection() {
1236
- return collection();
1237
- }
1238
- }, rest);
1239
- const [state, send] = solid.useMachine(combobox__namespace.machine(context), {
1245
+ ...comboboxProps
1246
+ }));
1247
+ const [state, send] = solid.useMachine(combobox__namespace.machine(context()), {
1240
1248
  context
1241
1249
  });
1242
1250
  return solidJs.createMemo(() => combobox__namespace.connect(state, send, solid.normalizeProps));
@@ -1244,7 +1252,7 @@ const useCombobox = props => {
1244
1252
 
1245
1253
  const ComboboxRoot = props => {
1246
1254
  const [presenceProps, comboboxProps] = splitPresenceProps(props);
1247
- const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, ['allowCustomValue', 'autoFocus', 'closeOnSelect', 'disabled', 'dismissable', 'form', 'getSelectionValue', 'highlightedValue', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onOpenChange', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'openOnChange', 'openOnClick', 'openOnKeyPress', 'placeholder', 'popup', 'positioning', 'readOnly', 'scrollToIndexFn', 'selectionBehavior', 'translations', 'value']);
1255
+ const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, ['allowCustomValue', 'autoFocus', 'closeOnSelect', 'composite', 'defaultOpen', 'defaultValue', 'disabled', 'disableLayer', 'form', 'getSelectionValue', 'highlightedValue', 'id', 'ids', 'inputBehavior', 'inputValue', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onOpenChange', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'openOnChange', 'openOnClick', 'openOnKeyPress', 'placeholder', 'positioning', 'readOnly', 'scrollToIndexFn', 'selectionBehavior', 'translations', 'value']);
1248
1256
  const api = useCombobox(useComboboxProps);
1249
1257
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
1250
1258
  present: api().open
@@ -1264,8 +1272,9 @@ const ComboboxRoot = props => {
1264
1272
  };
1265
1273
 
1266
1274
  const ComboboxTrigger = props => {
1275
+ const [triggerProps, localProps] = createSplitProps()(props, ['focusable']);
1267
1276
  const combobox = useComboboxContext();
1268
- const mergedProps = solid.mergeProps(() => combobox().triggerProps, props);
1277
+ const mergedProps = solid.mergeProps(() => combobox().getTriggerProps(triggerProps), localProps);
1269
1278
  return web.createComponent(ark.button, mergedProps);
1270
1279
  };
1271
1280
 
@@ -1403,18 +1412,20 @@ const DatePickerRangeText = props => {
1403
1412
  const useDatePicker = props => {
1404
1413
  const locale = useLocaleContext();
1405
1414
  const environment = useEnvironmentContext();
1406
- const [localProps, restProps] = solidJs.splitProps(props, ['value', 'focusedValue', 'min', 'max']);
1407
- const context = solid.mergeProps(() => ({
1408
- id: solidJs.createUniqueId(),
1415
+ const id = solidJs.createUniqueId();
1416
+ const context = solidJs.createMemo(() => ({
1417
+ id,
1409
1418
  dir: locale().dir,
1410
1419
  getRootNode: environment().getRootNode,
1411
1420
  'open.controlled': props.open !== undefined,
1412
- focusedValue: localProps.focusedValue ? datePicker__namespace.parse(localProps.focusedValue) : undefined,
1413
- value: localProps.value ? datePicker__namespace.parse(localProps.value) : undefined,
1414
- max: localProps.max ? datePicker__namespace.parse(localProps.max) : undefined,
1415
- min: localProps.min ? datePicker__namespace.parse(localProps.min) : undefined
1416
- }), restProps);
1417
- const [state, send] = solid.useMachine(datePicker__namespace.machine(context), {
1421
+ open: props.defaultOpen,
1422
+ ...props,
1423
+ focusedValue: props.focusedValue ? datePicker__namespace.parse(props.focusedValue) : undefined,
1424
+ value: props.value ? datePicker__namespace.parse(props.value) : props.defaultValue ? datePicker__namespace.parse(props.defaultValue) : undefined,
1425
+ max: props.max ? datePicker__namespace.parse(props.max) : undefined,
1426
+ min: props.min ? datePicker__namespace.parse(props.min) : undefined
1427
+ }));
1428
+ const [state, send] = solid.useMachine(datePicker__namespace.machine(context()), {
1418
1429
  context
1419
1430
  });
1420
1431
  return solidJs.createMemo(() => datePicker__namespace.connect(state, send, solid.normalizeProps));
@@ -1422,7 +1433,7 @@ const useDatePicker = props => {
1422
1433
 
1423
1434
  const DatePickerRoot = props => {
1424
1435
  const [presenceProps, datePickerProps] = splitPresenceProps(props);
1425
- const [useDatePickerProps, localProps] = createSplitProps()(datePickerProps, ['closeOnSelect', 'disabled', 'fixedWeeks', 'focusedValue', 'format', 'id', 'ids', 'isDateUnavailable', 'isDateUnavailable', 'locale', 'max', 'min', 'modal', 'name', 'numOfMonths', 'onFocusChange', 'onOpenChange', 'onValueChange', 'onViewChange', 'open', 'positioning', 'readOnly', 'selectionMode', 'startOfWeek', 'timeZone', 'translations', 'value', 'view']);
1436
+ const [useDatePickerProps, localProps] = createSplitProps()(datePickerProps, ['closeOnSelect', 'defaultOpen', 'defaultValue', 'disabled', 'fixedWeeks', 'focusedValue', 'format', 'id', 'ids', 'isDateUnavailable', 'isDateUnavailable', 'locale', 'max', 'min', 'modal', 'name', 'numOfMonths', 'onFocusChange', 'onOpenChange', 'onValueChange', 'onViewChange', 'open', 'positioning', 'readOnly', 'selectionMode', 'startOfWeek', 'timeZone', 'translations', 'value', 'view']);
1426
1437
  const api = useDatePicker(useDatePickerProps);
1427
1438
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
1428
1439
  present: api().open
@@ -1690,13 +1701,16 @@ const DialogPositioner = props => {
1690
1701
  const useDialog = props => {
1691
1702
  const locale = useLocaleContext();
1692
1703
  const environment = useEnvironmentContext();
1693
- const context = solid.mergeProps({
1694
- id: solidJs.createUniqueId(),
1704
+ const id = solidJs.createUniqueId();
1705
+ const context = solidJs.createMemo(() => ({
1706
+ id,
1695
1707
  dir: locale().dir,
1696
1708
  getRootNode: environment().getRootNode,
1697
- 'open.controlled': props.open !== undefined
1698
- }, props);
1699
- const [state, send] = solid.useMachine(dialog__namespace.machine(context), {
1709
+ open: props.defaultOpen,
1710
+ 'open.controlled': props.open !== undefined,
1711
+ ...props
1712
+ }));
1713
+ const [state, send] = solid.useMachine(dialog__namespace.machine(context()), {
1700
1714
  context
1701
1715
  });
1702
1716
  return solidJs.createMemo(() => dialog__namespace.connect(state, send, solid.normalizeProps));
@@ -1705,7 +1719,7 @@ const useDialog = props => {
1705
1719
  const DialogRoot = props => {
1706
1720
  const [presenceProps, dialogProps] = splitPresenceProps(props);
1707
1721
  const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
1708
- const [useDialogProps, localProps] = createSplitProps()(dialogProps, ['aria-label', 'closeOnEscape', 'closeOnInteractOutside', 'finalFocusEl', 'id', 'ids', 'initialFocusEl', 'modal', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'open', 'preventScroll', 'restoreFocus', 'role', 'trapFocus']);
1722
+ const [useDialogProps, localProps] = createSplitProps()(dialogProps, ['aria-label', 'closeOnEscape', 'closeOnInteractOutside', 'defaultOpen', 'finalFocusEl', 'id', 'ids', 'initialFocusEl', 'modal', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'open', 'persistentElements', 'preventScroll', 'restoreFocus', 'role', 'trapFocus']);
1709
1723
  const api = useDialog(useDialogProps);
1710
1724
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
1711
1725
  present: api().open
@@ -1808,19 +1822,22 @@ const EditablePreview = props => {
1808
1822
  const useEditable = props => {
1809
1823
  const locale = useLocaleContext();
1810
1824
  const environment = useEnvironmentContext();
1811
- const context = solid.mergeProps({
1812
- id: solidJs.createUniqueId(),
1825
+ const id = solidJs.createUniqueId();
1826
+ const context = solidJs.createMemo(() => ({
1827
+ id,
1813
1828
  dir: locale().dir,
1814
- getRootNode: environment().getRootNode
1815
- }, props);
1816
- const [state, send] = solid.useMachine(editable__namespace.machine(context), {
1829
+ getRootNode: environment().getRootNode,
1830
+ value: props.defaultValue,
1831
+ ...props
1832
+ }));
1833
+ const [state, send] = solid.useMachine(editable__namespace.machine(context()), {
1817
1834
  context
1818
1835
  });
1819
1836
  return solidJs.createMemo(() => editable__namespace.connect(state, send, solid.normalizeProps));
1820
1837
  };
1821
1838
 
1822
1839
  const EditableRoot = props => {
1823
- const [useEditableProps, localProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'disabled', 'finalFocusEl', 'form', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEdit', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'selectOnFocus', 'startWithEditView', 'submitMode', 'translations', 'value']);
1840
+ const [useEditableProps, localProps] = createSplitProps()(props, ['activationMode', 'autoResize', 'defaultValue', 'disabled', 'finalFocusEl', 'form', 'id', 'ids', 'invalid', 'maxLength', 'name', 'onEdit', 'onFocusOutside', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueCommit', 'onValueRevert', 'placeholder', 'readOnly', 'selectOnFocus', 'startWithEditView', 'submitMode', 'translations', 'value']);
1824
1841
  const api = useEditable(useEditableProps);
1825
1842
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
1826
1843
  return web.createComponent(EditableProvider, {
@@ -1945,12 +1962,14 @@ const FileUploadLabel = props => {
1945
1962
  const useFileUpload = props => {
1946
1963
  const locale = useLocaleContext();
1947
1964
  const environment = useEnvironmentContext();
1948
- const context = solid.mergeProps({
1949
- id: solidJs.createUniqueId(),
1965
+ const id = solidJs.createUniqueId();
1966
+ const context = solidJs.createMemo(() => ({
1967
+ id,
1950
1968
  dir: locale().dir,
1951
- getRootNode: environment().getRootNode
1952
- }, props);
1953
- const [state, send] = solid.useMachine(fileUpload__namespace.machine(context), {
1969
+ getRootNode: environment().getRootNode,
1970
+ ...props
1971
+ }));
1972
+ const [state, send] = solid.useMachine(fileUpload__namespace.machine(context()), {
1954
1973
  context
1955
1974
  });
1956
1975
  return solidJs.createMemo(() => fileUpload__namespace.connect(state, send, solid.normalizeProps));
@@ -2067,13 +2086,16 @@ const HoverCardPositioner = props => {
2067
2086
  const useHoverCard = props => {
2068
2087
  const locale = useLocaleContext();
2069
2088
  const environment = useEnvironmentContext();
2070
- const context = solid.mergeProps({
2071
- id: solidJs.createUniqueId(),
2089
+ const id = solidJs.createUniqueId();
2090
+ const context = solidJs.createMemo(() => ({
2091
+ id,
2072
2092
  dir: locale().dir,
2073
2093
  getRootNode: environment().getRootNode,
2074
- 'open.controlled': props.open !== undefined
2075
- }, props);
2076
- const [state, send] = solid.useMachine(hoverCard__namespace.machine(context), {
2094
+ open: props.defaultOpen,
2095
+ 'open.controlled': props.open !== undefined,
2096
+ ...props
2097
+ }));
2098
+ const [state, send] = solid.useMachine(hoverCard__namespace.machine(context()), {
2077
2099
  context
2078
2100
  });
2079
2101
  return solidJs.createMemo(() => hoverCard__namespace.connect(state, send, solid.normalizeProps));
@@ -2081,7 +2103,7 @@ const useHoverCard = props => {
2081
2103
 
2082
2104
  const HoverCardRoot = props => {
2083
2105
  const [presenceProps, hoverCardProps] = splitPresenceProps(props);
2084
- const [useHoverCardProps, localProps] = createSplitProps()(hoverCardProps, ['closeDelay', 'id', 'ids', 'onOpenChange', 'open', 'openDelay', 'positioning']);
2106
+ const [useHoverCardProps, localProps] = createSplitProps()(hoverCardProps, ['closeDelay', 'defaultOpen', 'id', 'ids', 'onOpenChange', 'open', 'openDelay', 'positioning']);
2085
2107
  const api = useHoverCard(useHoverCardProps);
2086
2108
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
2087
2109
  present: api().open
@@ -2309,13 +2331,16 @@ const MenuRadioItemGroup = props => {
2309
2331
  const useMenu = props => {
2310
2332
  const locale = useLocaleContext();
2311
2333
  const environment = useEnvironmentContext();
2312
- const context = solid.mergeProps({
2313
- id: solidJs.createUniqueId(),
2334
+ const id = solidJs.createUniqueId();
2335
+ const context = solidJs.createMemo(() => ({
2336
+ id,
2314
2337
  dir: locale().dir,
2315
2338
  getRootNode: environment().getRootNode,
2316
- 'open.controlled': props.open !== undefined
2317
- }, props);
2318
- const [state, send, machine] = solid.useMachine(menu__namespace.machine(context), {
2339
+ open: props.defaultOpen,
2340
+ 'open.controlled': props.open !== undefined,
2341
+ ...props
2342
+ }));
2343
+ const [state, send, machine] = solid.useMachine(menu__namespace.machine(context()), {
2319
2344
  context
2320
2345
  });
2321
2346
  const api = solidJs.createMemo(() => menu__namespace.connect(state, send, solid.normalizeProps));
@@ -2339,7 +2364,7 @@ const [MenuTriggerItemProvider, useMenuTriggerItemContext] = createContext({
2339
2364
 
2340
2365
  const MenuRoot = props => {
2341
2366
  const [presenceProps, menuProps] = splitPresenceProps(props);
2342
- const [useMenuProps, localProps] = createSplitProps()(menuProps, ['anchorPoint', 'aria-label', 'closeOnSelect', 'highlightedValue', 'id', 'ids', 'loopFocus', 'onEscapeKeyDown', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onSelect', 'open', 'positioning', 'typeahead']);
2367
+ const [useMenuProps, localProps] = createSplitProps()(menuProps, ['anchorPoint', 'aria-label', 'closeOnSelect', 'composite', 'defaultOpen', 'highlightedValue', 'id', 'ids', 'loopFocus', 'onEscapeKeyDown', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onSelect', 'open', 'positioning', 'typeahead']);
2343
2368
  const parentApi = useMenuContext();
2344
2369
  const parentMachine = useMenuMachineContext();
2345
2370
  const menu = useMenu(useMenuProps);
@@ -2464,19 +2489,22 @@ const NumberInputLabel = props => {
2464
2489
  const useNumberInput = props => {
2465
2490
  const locale = useLocaleContext();
2466
2491
  const environment = useEnvironmentContext();
2467
- const context = solid.mergeProps({
2468
- id: solidJs.createUniqueId(),
2492
+ const id = solidJs.createUniqueId();
2493
+ const context = solidJs.createMemo(() => ({
2494
+ id,
2469
2495
  dir: locale().dir,
2470
- getRootNode: environment().getRootNode
2471
- }, props);
2472
- const [state, send] = solid.useMachine(numberInput__namespace.machine(context), {
2496
+ getRootNode: environment().getRootNode,
2497
+ value: props.defaultValue,
2498
+ ...props
2499
+ }));
2500
+ const [state, send] = solid.useMachine(numberInput__namespace.machine(context()), {
2473
2501
  context
2474
2502
  });
2475
2503
  return solidJs.createMemo(() => numberInput__namespace.connect(state, send, solid.normalizeProps));
2476
2504
  };
2477
2505
 
2478
2506
  const NumberInputRoot = props => {
2479
- const [useNumberInputProps, localProps] = createSplitProps()(props, ['allowMouseWheel', 'allowOverflow', 'clampValueOnBlur', 'disabled', 'focusInputOnChange', 'form', 'formatOptions', 'id', 'ids', 'inputMode', 'invalid', 'locale', 'max', 'min', 'name', 'onFocusChange', 'onValueChange', 'onValueInvalid', 'pattern', 'readOnly', 'spinOnPress', 'step', 'translations', 'value']);
2507
+ const [useNumberInputProps, localProps] = createSplitProps()(props, ['allowMouseWheel', 'allowOverflow', 'clampValueOnBlur', 'defaultValue', 'disabled', 'focusInputOnChange', 'form', 'formatOptions', 'id', 'ids', 'inputMode', 'invalid', 'locale', 'max', 'min', 'name', 'onFocusChange', 'onValueChange', 'onValueInvalid', 'pattern', 'readOnly', 'spinOnPress', 'step', 'translations', 'value']);
2480
2508
  const api = useNumberInput(useNumberInputProps);
2481
2509
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
2482
2510
  return web.createComponent(NumberInputProvider, {
@@ -2541,19 +2569,22 @@ const PaginationPrevTrigger = props => {
2541
2569
  const usePagination = props => {
2542
2570
  const locale = useLocaleContext();
2543
2571
  const environment = useEnvironmentContext();
2544
- const context = solid.mergeProps({
2545
- id: solidJs.createUniqueId(),
2572
+ const id = solidJs.createUniqueId();
2573
+ const context = solidJs.createMemo(() => ({
2574
+ id,
2546
2575
  dir: locale().dir,
2547
- getRootNode: environment().getRootNode
2548
- }, props);
2549
- const [state, send] = solid.useMachine(pagination__namespace.machine(context), {
2576
+ getRootNode: environment().getRootNode,
2577
+ page: props.defaultPage,
2578
+ ...props
2579
+ }));
2580
+ const [state, send] = solid.useMachine(pagination__namespace.machine(context()), {
2550
2581
  context
2551
2582
  });
2552
2583
  return solidJs.createMemo(() => pagination__namespace.connect(state, send, solid.normalizeProps));
2553
2584
  };
2554
2585
 
2555
2586
  const PaginationRoot = props => {
2556
- const [usePaginationProps, localProps] = createSplitProps()(props, ['count', 'id', 'ids', 'onPageChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2587
+ const [usePaginationProps, localProps] = createSplitProps()(props, ['count', 'defaultPage', 'id', 'ids', 'onPageChange', 'page', 'pageSize', 'siblingCount', 'translations', 'type']);
2557
2588
  const api = usePagination(usePaginationProps);
2558
2589
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
2559
2590
  return web.createComponent(PaginationProvider, {
@@ -2603,19 +2634,22 @@ const PinInputLabel = props => {
2603
2634
  const usePinInput = props => {
2604
2635
  const locale = useLocaleContext();
2605
2636
  const environment = useEnvironmentContext();
2606
- const context = solid.mergeProps({
2607
- id: solidJs.createUniqueId(),
2637
+ const id = solidJs.createUniqueId();
2638
+ const context = solidJs.createMemo(() => ({
2639
+ id,
2608
2640
  dir: locale().dir,
2609
- getRootNode: environment().getRootNode
2610
- }, props);
2611
- const [state, send] = solid.useMachine(pinInput__namespace.machine(context), {
2641
+ getRootNode: environment().getRootNode,
2642
+ value: props.defaultValue,
2643
+ ...props
2644
+ }));
2645
+ const [state, send] = solid.useMachine(pinInput__namespace.machine(context()), {
2612
2646
  context
2613
2647
  });
2614
2648
  return solidJs.createMemo(() => pinInput__namespace.connect(state, send, solid.normalizeProps));
2615
2649
  };
2616
2650
 
2617
2651
  const PinInputRoot = props => {
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']);
2652
+ const [usePinInputProps, localProps] = createSplitProps()(props, ['autoFocus', 'blurOnComplete', 'defaultValue', 'disabled', 'form', 'id', 'ids', 'invalid', 'mask', 'name', 'onValueChange', 'onValueComplete', 'onValueInvalid', 'otp', 'pattern', 'placeholder', 'selectOnFocus', 'translations', 'type', 'value']);
2619
2653
  const pinInput = usePinInput(usePinInputProps);
2620
2654
  const mergedProps = solid.mergeProps(() => pinInput().rootProps, localProps);
2621
2655
  return web.createComponent(PinInputProvider, {
@@ -2716,13 +2750,16 @@ const PopoverPositioner = props => {
2716
2750
  const usePopover = props => {
2717
2751
  const locale = useLocaleContext();
2718
2752
  const environment = useEnvironmentContext();
2719
- const context = solid.mergeProps({
2720
- id: solidJs.createUniqueId(),
2753
+ const id = solidJs.createUniqueId();
2754
+ const context = solidJs.createMemo(() => ({
2755
+ id,
2721
2756
  dir: locale().dir,
2722
2757
  getRootNode: environment().getRootNode,
2723
- 'open.controlled': props.open !== undefined
2724
- }, props);
2725
- const [state, send] = solid.useMachine(popover__namespace.machine(context), {
2758
+ open: props.defaultOpen,
2759
+ 'open.controlled': props.open !== undefined,
2760
+ ...props
2761
+ }));
2762
+ const [state, send] = solid.useMachine(popover__namespace.machine(context()), {
2726
2763
  context
2727
2764
  });
2728
2765
  return solidJs.createMemo(() => popover__namespace.connect(state, send, solid.normalizeProps));
@@ -2730,7 +2767,7 @@ const usePopover = props => {
2730
2767
 
2731
2768
  const PopoverRoot = props => {
2732
2769
  const [presenceProps, popoverProps] = splitPresenceProps(props);
2733
- const [usePopoverProps, localProps] = createSplitProps()(popoverProps, ['autoFocus', 'closeOnEsc', 'closeOnInteractOutside', 'id', 'ids', 'initialFocusEl', 'modal', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'open', 'portalled', 'positioning']);
2770
+ const [usePopoverProps, localProps] = createSplitProps()(popoverProps, ['autoFocus', 'closeOnEscape', 'closeOnInteractOutside', 'defaultOpen', 'id', 'ids', 'initialFocusEl', 'modal', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'open', 'persistentElements', 'portalled', 'positioning']);
2734
2771
  const api = usePopover(usePopoverProps);
2735
2772
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
2736
2773
  present: api().open
@@ -2819,12 +2856,14 @@ const ProgressRange = props => {
2819
2856
  const useProgress = props => {
2820
2857
  const locale = useLocaleContext();
2821
2858
  const environment = useEnvironmentContext();
2822
- const context = solid.mergeProps({
2823
- id: solidJs.createUniqueId(),
2859
+ const id = solidJs.createUniqueId();
2860
+ const context = solidJs.createMemo(() => ({
2861
+ id,
2824
2862
  dir: locale().dir,
2825
- getRootNode: environment().getRootNode
2826
- }, props);
2827
- const [state, send] = solid.useMachine(progress__namespace.machine(context), {
2863
+ getRootNode: environment().getRootNode,
2864
+ ...props
2865
+ }));
2866
+ const [state, send] = solid.useMachine(progress__namespace.machine(context()), {
2828
2867
  context
2829
2868
  });
2830
2869
  return solidJs.createMemo(() => progress__namespace.connect(state, send, solid.normalizeProps));
@@ -2950,19 +2989,22 @@ const RadioGroupLabel = props => {
2950
2989
  const useRadioGroup = props => {
2951
2990
  const locale = useLocaleContext();
2952
2991
  const environment = useEnvironmentContext();
2953
- const context = solid.mergeProps({
2954
- id: solidJs.createUniqueId(),
2992
+ const id = solidJs.createUniqueId();
2993
+ const context = solidJs.createMemo(() => ({
2994
+ id,
2955
2995
  dir: locale().dir,
2956
- getRootNode: environment().getRootNode
2957
- }, props);
2958
- const [state, send] = solid.useMachine(radio__namespace.machine(context), {
2996
+ getRootNode: environment().getRootNode,
2997
+ value: props.defaultValue,
2998
+ ...props
2999
+ }));
3000
+ const [state, send] = solid.useMachine(radio__namespace.machine(context()), {
2959
3001
  context
2960
3002
  });
2961
3003
  return solidJs.createMemo(() => radio__namespace.connect(state, send, solid.normalizeProps));
2962
3004
  };
2963
3005
 
2964
3006
  const RadioGroupRoot = props => {
2965
- const [useRadioGroupProps, localProps] = createSplitProps()(props, ['disabled', 'form', 'id', 'ids', 'name', 'onValueChange', 'orientation', 'readOnly', 'value']);
3007
+ const [useRadioGroupProps, localProps] = createSplitProps()(props, ['defaultValue', 'disabled', 'form', 'id', 'ids', 'name', 'onValueChange', 'orientation', 'readOnly', 'value']);
2966
3008
  const radioGroup = useRadioGroup(useRadioGroupProps);
2967
3009
  const mergedProps = solid.mergeProps(() => radioGroup().rootProps, localProps);
2968
3010
  return web.createComponent(RadioGroupProvider, {
@@ -3027,19 +3069,22 @@ const RatingGroupLabel = props => {
3027
3069
  const useRatingGroup = props => {
3028
3070
  const locale = useLocaleContext();
3029
3071
  const environment = useEnvironmentContext();
3030
- const context = solid.mergeProps({
3031
- id: solidJs.createUniqueId(),
3072
+ const id = solidJs.createUniqueId();
3073
+ const context = solidJs.createMemo(() => ({
3074
+ id,
3032
3075
  dir: locale().dir,
3033
- getRootNode: environment().getRootNode
3034
- }, props);
3035
- const [state, send] = solid.useMachine(rating__namespace.machine(context), {
3076
+ getRootNode: environment().getRootNode,
3077
+ value: props.defaultValue,
3078
+ ...props
3079
+ }));
3080
+ const [state, send] = solid.useMachine(rating__namespace.machine(context()), {
3036
3081
  context
3037
3082
  });
3038
3083
  return solidJs.createMemo(() => rating__namespace.connect(state, send, solid.normalizeProps));
3039
3084
  };
3040
3085
 
3041
3086
  const RatingGroupRoot = props => {
3042
- const [useRatingProps, localProps] = createSplitProps()(props, ['allowHalf', 'autoFocus', 'count', 'disabled', 'form', 'id', 'ids', 'name', 'onHoverChange', 'onValueChange', 'readOnly', 'translations', 'value']);
3087
+ const [useRatingProps, localProps] = createSplitProps()(props, ['allowHalf', 'autoFocus', 'count', 'defaultValue', 'disabled', 'form', 'id', 'ids', 'name', 'onHoverChange', 'onValueChange', 'readOnly', 'translations', 'value']);
3043
3088
  const api = useRatingGroup(useRatingProps);
3044
3089
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
3045
3090
  return web.createComponent(RatingGroupProvider, {
@@ -3138,19 +3183,22 @@ const SegmentGroupLabel = props => {
3138
3183
  const useSegmentGroup = props => {
3139
3184
  const locale = useLocaleContext();
3140
3185
  const environment = useEnvironmentContext();
3141
- const context = solid.mergeProps({
3142
- id: solidJs.createUniqueId(),
3186
+ const id = solidJs.createUniqueId();
3187
+ const context = solidJs.createMemo(() => ({
3188
+ id,
3143
3189
  dir: locale().dir,
3144
- getRootNode: environment().getRootNode
3145
- }, props);
3146
- const [state, send] = solid.useMachine(radio__namespace.machine(context), {
3190
+ getRootNode: environment().getRootNode,
3191
+ value: props.defaultValue,
3192
+ ...props
3193
+ }));
3194
+ const [state, send] = solid.useMachine(radio__namespace.machine(context()), {
3147
3195
  context
3148
3196
  });
3149
3197
  return solidJs.createMemo(() => radio__namespace.connect(state, send, solid.normalizeProps));
3150
3198
  };
3151
3199
 
3152
3200
  const SegmentGroupRoot = props => {
3153
- const [useSegmentGroupProps, localProps] = createSplitProps()(props, ['disabled', 'form', 'id', 'ids', 'name', 'onValueChange', 'orientation', 'readOnly', 'value']);
3201
+ const [useSegmentGroupProps, localProps] = createSplitProps()(props, ['defaultValue', 'disabled', 'form', 'id', 'ids', 'name', 'onValueChange', 'orientation', 'readOnly', 'value']);
3154
3202
  const segmentGroup = useSegmentGroup(useSegmentGroupProps);
3155
3203
  const mergedProps = solid.mergeProps(() => segmentGroup().rootProps, anatomy.segmentGroupAnatomy.build().root.attrs, localProps);
3156
3204
  return web.createComponent(SegmentGroupProvider, {
@@ -3254,7 +3302,7 @@ const [SelectItemPropsProvider, useSelectItemPropsContext] = createContext({
3254
3302
  });
3255
3303
 
3256
3304
  const SelectItem = props => {
3257
- const [itemProps, localProps] = createSplitProps()(props, ['item']);
3305
+ const [itemProps, localProps] = createSplitProps()(props, ['item', 'persistFocus']);
3258
3306
  const select = useSelectContext();
3259
3307
  const mergedProps = solid.mergeProps(() => select().getItemProps(itemProps), localProps);
3260
3308
  const itemState = solidJs.createMemo(() => select().getItemState(itemProps));
@@ -3337,20 +3385,22 @@ const SelectPositioner = props => {
3337
3385
  };
3338
3386
 
3339
3387
  const useSelect = props => {
3340
- const [collectionOptions, localProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
3341
- const collection = solidJs.createMemo(() => select__namespace.collection(collectionOptions));
3388
+ const [collectionOptions, selectProps] = createSplitProps()(props, ['isItemDisabled', 'itemToValue', 'itemToString', 'items']);
3389
+ const collection = () => select__namespace.collection(collectionOptions);
3342
3390
  const locale = useLocaleContext();
3343
3391
  const environment = useEnvironmentContext();
3344
- const context = solid.mergeProps({
3345
- id: solidJs.createUniqueId(),
3392
+ const id = solidJs.createUniqueId();
3393
+ const context = solidJs.createMemo(() => ({
3394
+ id,
3395
+ collection: collection(),
3346
3396
  dir: locale().dir,
3347
3397
  getRootNode: environment().getRootNode,
3398
+ open: props.defaultOpen,
3399
+ value: props.defaultValue,
3348
3400
  'open.controlled': props.open !== undefined,
3349
- get collection() {
3350
- return collection();
3351
- }
3352
- }, localProps);
3353
- const [state, send] = solid.useMachine(select__namespace.machine(context), {
3401
+ ...selectProps
3402
+ }));
3403
+ const [state, send] = solid.useMachine(select__namespace.machine(context()), {
3354
3404
  context
3355
3405
  });
3356
3406
  return solidJs.createMemo(() => select__namespace.connect(state, send, solid.normalizeProps));
@@ -3358,7 +3408,7 @@ const useSelect = props => {
3358
3408
 
3359
3409
  const SelectRoot = props => {
3360
3410
  const [presenceProps, selectProps] = splitPresenceProps(props);
3361
- const [useSelectProps, localProps] = createSplitProps()(selectProps, ['closeOnSelect', 'disabled', 'form', 'highlightedValue', 'id', 'ids', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'positioning', 'readOnly', 'scrollToIndexFn', 'value']);
3411
+ const [useSelectProps, localProps] = createSplitProps()(selectProps, ['closeOnSelect', 'composite', 'defaultOpen', 'defaultValue', 'disabled', 'form', 'highlightedValue', 'id', 'ids', 'invalid', 'isItemDisabled', 'items', 'itemToString', 'itemToValue', 'loopFocus', 'multiple', 'name', 'onFocusOutside', 'onHighlightChange', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'onValueChange', 'open', 'positioning', 'readOnly', 'scrollToIndexFn', 'value']);
3362
3412
  const select = useSelect(useSelectProps);
3363
3413
  const presenceApi = usePresence(solid.mergeProps(() => ({
3364
3414
  present: select().open
@@ -3455,19 +3505,22 @@ const SliderRange = props => {
3455
3505
  const useSlider = props => {
3456
3506
  const locale = useLocaleContext();
3457
3507
  const environment = useEnvironmentContext();
3458
- const context = solid.mergeProps({
3459
- id: solidJs.createUniqueId(),
3508
+ const id = solidJs.createUniqueId();
3509
+ const context = solidJs.createMemo(() => ({
3510
+ id,
3460
3511
  dir: locale().dir,
3461
- getRootNode: environment().getRootNode
3462
- }, props);
3463
- const [state, send] = solid.useMachine(slider__namespace.machine(context), {
3512
+ getRootNode: environment().getRootNode,
3513
+ value: props.defaultValue,
3514
+ ...props
3515
+ }));
3516
+ const [state, send] = solid.useMachine(slider__namespace.machine(context()), {
3464
3517
  context
3465
3518
  });
3466
3519
  return solidJs.createMemo(() => slider__namespace.connect(state, send, solid.normalizeProps));
3467
3520
  };
3468
3521
 
3469
3522
  const SliderRoot = props => {
3470
- const [useSliderProps, localProps] = createSplitProps()(props, ['aria-label', 'aria-labelledby', 'disabled', 'form', 'getAriaValueText', 'id', 'ids', 'invalid', 'max', 'min', 'minStepsBetweenThumbs', 'name', 'onFocusChange', 'onValueChange', 'onValueChangeEnd', 'orientation', 'origin', 'readOnly', 'step', 'thumbAlignment', 'thumbAlignment', 'thumbSize', 'value']);
3523
+ const [useSliderProps, localProps] = createSplitProps()(props, ['aria-label', 'aria-labelledby', 'defaultValue', 'disabled', 'form', 'getAriaValueText', 'id', 'ids', 'invalid', 'max', 'min', 'minStepsBetweenThumbs', 'name', 'onFocusChange', 'onValueChange', 'onValueChangeEnd', 'orientation', 'origin', 'readOnly', 'step', 'thumbAlignment', 'thumbAlignment', 'thumbSize', 'value']);
3471
3524
  const api = useSlider(useSliderProps);
3472
3525
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
3473
3526
  return web.createComponent(SliderProvider, {
@@ -3539,19 +3592,22 @@ const SplitterResizeTrigger = props => {
3539
3592
  const useSplitter = props => {
3540
3593
  const locale = useLocaleContext();
3541
3594
  const environment = useEnvironmentContext();
3542
- const context = solid.mergeProps({
3543
- id: solidJs.createUniqueId(),
3595
+ const id = solidJs.createUniqueId();
3596
+ const context = solidJs.createMemo(() => ({
3597
+ id,
3544
3598
  dir: locale().dir,
3545
- getRootNode: environment().getRootNode
3546
- }, props);
3547
- const [state, send] = solid.useMachine(splitter__namespace.machine(context), {
3599
+ getRootNode: environment().getRootNode,
3600
+ size: props.defaultSize,
3601
+ ...props
3602
+ }));
3603
+ const [state, send] = solid.useMachine(splitter__namespace.machine(context()), {
3548
3604
  context
3549
3605
  });
3550
3606
  return solidJs.createMemo(() => splitter__namespace.connect(state, send, solid.normalizeProps));
3551
3607
  };
3552
3608
 
3553
3609
  const SplitterRoot = props => {
3554
- const [useSplitterProps, localProps] = createSplitProps()(props, ['id', 'ids', 'onSizeChange', 'onSizeChangeEnd', 'orientation', 'size']);
3610
+ const [useSplitterProps, localProps] = createSplitProps()(props, ['defaultSize', 'id', 'ids', 'onSizeChange', 'onSizeChangeEnd', 'orientation', 'size']);
3555
3611
  const api = useSplitter(useSplitterProps);
3556
3612
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
3557
3613
  return web.createComponent(SplitterProvider, {
@@ -3598,19 +3654,22 @@ const SwitchLabel = props => {
3598
3654
  const useSwitch = props => {
3599
3655
  const locale = useLocaleContext();
3600
3656
  const environment = useEnvironmentContext();
3601
- const context = solid.mergeProps({
3602
- id: solidJs.createUniqueId(),
3657
+ const id = solidJs.createUniqueId();
3658
+ const context = solidJs.createMemo(() => ({
3659
+ id,
3603
3660
  dir: locale().dir,
3604
- getRootNode: environment().getRootNode
3605
- }, props);
3606
- const [state, send] = solid.useMachine(zagSwitch__namespace.machine(context), {
3661
+ getRootNode: environment().getRootNode,
3662
+ checked: props.defaultChecked,
3663
+ ...props
3664
+ }));
3665
+ const [state, send] = solid.useMachine(zagSwitch__namespace.machine(context()), {
3607
3666
  context
3608
3667
  });
3609
3668
  return solidJs.createMemo(() => zagSwitch__namespace.connect(state, send, solid.normalizeProps));
3610
3669
  };
3611
3670
 
3612
3671
  const SwitchRoot = props => {
3613
- const [switchProps, localProps] = createSplitProps()(props, ['checked', 'disabled', 'form', 'id', 'ids', 'invalid', 'label', 'name', 'onCheckedChange', 'readOnly', 'required', 'value']);
3672
+ const [switchProps, localProps] = createSplitProps()(props, ['checked', 'defaultChecked', 'disabled', 'form', 'id', 'ids', 'invalid', 'label', 'name', 'onCheckedChange', 'readOnly', 'required', 'value']);
3614
3673
  const api = useSwitch(switchProps);
3615
3674
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
3616
3675
  return web.createComponent(SwitchProvider, {
@@ -3689,12 +3748,15 @@ const TabsContext = props => props.children(useTabsContext());
3689
3748
  const useTabs = props => {
3690
3749
  const locale = useLocaleContext();
3691
3750
  const environment = useEnvironmentContext();
3692
- const context = solid.mergeProps({
3693
- id: solidJs.createUniqueId(),
3751
+ const id = solidJs.createUniqueId();
3752
+ const context = solidJs.createMemo(() => ({
3753
+ id,
3694
3754
  dir: locale().dir,
3695
- getRootNode: environment().getRootNode
3696
- }, props);
3697
- const [state, send] = solid.useMachine(tabs__namespace.machine(context), {
3755
+ getRootNode: environment().getRootNode,
3756
+ value: props.defaultValue,
3757
+ ...props
3758
+ }));
3759
+ const [state, send] = solid.useMachine(tabs__namespace.machine(context()), {
3698
3760
  context
3699
3761
  });
3700
3762
  return solidJs.createMemo(() => tabs__namespace.connect(state, send, solid.normalizeProps));
@@ -3702,7 +3764,7 @@ const useTabs = props => {
3702
3764
 
3703
3765
  const TabsRoot = props => {
3704
3766
  const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);
3705
- const [useTabsProps, restProps] = createSplitProps()(tabsProps, ['activationMode', 'id', 'ids', 'loopFocus', 'onFocusChange', 'onValueChange', 'orientation', 'translations', 'value']);
3767
+ const [useTabsProps, restProps] = createSplitProps()(tabsProps, ['activationMode', 'composite', 'defaultValue', 'id', 'ids', 'loopFocus', 'onFocusChange', 'onValueChange', 'orientation', 'translations', 'value']);
3706
3768
  const api = useTabs(useTabsProps);
3707
3769
  const mergedProps = solid.mergeProps(() => api().rootProps, restProps);
3708
3770
  return web.createComponent(TabsProvider, {
@@ -3826,19 +3888,22 @@ const TagsInputLabel = props => {
3826
3888
  const useTagsInput = props => {
3827
3889
  const locale = useLocaleContext();
3828
3890
  const environment = useEnvironmentContext();
3829
- const context = solid.mergeProps({
3830
- id: solidJs.createUniqueId(),
3891
+ const id = solidJs.createUniqueId();
3892
+ const context = solidJs.createMemo(() => ({
3893
+ id,
3831
3894
  dir: locale().dir,
3832
- getRootNode: environment().getRootNode
3833
- }, props);
3834
- const [state, send] = solid.useMachine(tagsInput__namespace.machine(context), {
3895
+ getRootNode: environment().getRootNode,
3896
+ value: props.defaultValue,
3897
+ ...props
3898
+ }));
3899
+ const [state, send] = solid.useMachine(tagsInput__namespace.machine(context()), {
3835
3900
  context
3836
3901
  });
3837
3902
  return solidJs.createMemo(() => tagsInput__namespace.connect(state, send, solid.normalizeProps));
3838
3903
  };
3839
3904
 
3840
3905
  const TagsInputRoot = props => {
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']);
3906
+ const [useTagsInputProps, localProps] = createSplitProps()(props, ['addOnPaste', 'allowOverflow', 'autoFocus', 'blurBehavior', 'delimiter', 'defaultValue', 'disabled', 'editable', 'form', 'id', 'ids', 'inputValue', 'invalid', 'max', 'maxLength', 'name', 'onFocusOutside', 'onHighlightChange', 'onInputValueChange', 'onInteractOutside', 'onPointerDownOutside', 'onValueChange', 'onValueInvalid', 'readOnly', 'translations', 'validate', 'value']);
3842
3907
  const api = useTagsInput(useTagsInputProps);
3843
3908
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
3844
3909
  return web.createComponent(TagsInputProvider, {
@@ -3986,19 +4051,22 @@ const ToggleGroupItem = props => {
3986
4051
  const useToggleGroup = props => {
3987
4052
  const locale = useLocaleContext();
3988
4053
  const environment = useEnvironmentContext();
3989
- const context = solid.mergeProps({
3990
- id: solidJs.createUniqueId(),
4054
+ const id = solidJs.createUniqueId();
4055
+ const context = solidJs.createMemo(() => ({
4056
+ id,
3991
4057
  dir: locale().dir,
3992
- getRootNode: environment().getRootNode
3993
- }, props);
3994
- const [state, send] = solid.useMachine(toggleGroup__namespace.machine(context), {
4058
+ getRootNode: environment().getRootNode,
4059
+ value: props.defaultValue,
4060
+ ...props
4061
+ }));
4062
+ const [state, send] = solid.useMachine(toggleGroup__namespace.machine(context()), {
3995
4063
  context
3996
4064
  });
3997
4065
  return solidJs.createMemo(() => toggleGroup__namespace.connect(state, send, solid.normalizeProps));
3998
4066
  };
3999
4067
 
4000
4068
  const ToggleGroupRoot = props => {
4001
- const [useToggleGroupProps, restProps] = createSplitProps()(props, ['disabled', 'id', 'ids', 'loopFocus', 'multiple', 'onValueChange', 'orientation', 'rovingFocus', 'value']);
4069
+ const [useToggleGroupProps, restProps] = createSplitProps()(props, ['defaultValue', 'disabled', 'id', 'ids', 'loopFocus', 'multiple', 'onValueChange', 'orientation', 'rovingFocus', 'value']);
4002
4070
  const api = useToggleGroup(useToggleGroupProps);
4003
4071
  const mergedProps = solid.mergeProps(() => api().rootProps, restProps);
4004
4072
  return web.createComponent(ToggleGroupProvider, {
@@ -4066,13 +4134,16 @@ const TooltipPositioner = props => {
4066
4134
  const useTooltip = props => {
4067
4135
  const locale = useLocaleContext();
4068
4136
  const environment = useEnvironmentContext();
4069
- const context = solid.mergeProps({
4070
- id: solidJs.createUniqueId(),
4137
+ const id = solidJs.createUniqueId();
4138
+ const context = solidJs.createMemo(() => ({
4139
+ id,
4071
4140
  dir: locale().dir,
4072
4141
  getRootNode: environment().getRootNode,
4073
- 'open.controlled': props.open !== undefined
4074
- }, props);
4075
- const [state, send] = solid.useMachine(tooltip__namespace.machine(context), {
4142
+ open: props.defaultOpen,
4143
+ 'open.controlled': props.open !== undefined,
4144
+ ...props
4145
+ }));
4146
+ const [state, send] = solid.useMachine(tooltip__namespace.machine(context()), {
4076
4147
  context
4077
4148
  });
4078
4149
  return solidJs.createMemo(() => tooltip__namespace.connect(state, send, solid.normalizeProps));
@@ -4080,7 +4151,7 @@ const useTooltip = props => {
4080
4151
 
4081
4152
  const TooltipRoot = props => {
4082
4153
  const [presenceProps, tooltipProps] = splitPresenceProps(props);
4083
- const [useTooltipProps, localProps] = createSplitProps()(tooltipProps, ['aria-label', 'closeDelay', 'closeOnEsc', 'closeOnPointerDown', 'disabled', 'id', 'ids', 'interactive', 'onOpenChange', 'open', 'openDelay', 'positioning']);
4154
+ const [useTooltipProps, localProps] = createSplitProps()(tooltipProps, ['aria-label', 'closeDelay', 'closeOnEscape', 'closeOnPointerDown', 'defaultOpen', 'disabled', 'id', 'ids', 'interactive', 'onOpenChange', 'open', 'openDelay', 'positioning']);
4084
4155
  const api = useTooltip(useTooltipProps);
4085
4156
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
4086
4157
  present: api().open
@@ -4245,19 +4316,23 @@ const TreeViewLabel = props => {
4245
4316
  const useTreeView = props => {
4246
4317
  const locale = useLocaleContext();
4247
4318
  const environment = useEnvironmentContext();
4248
- const context = solid.mergeProps({
4249
- id: solidJs.createUniqueId(),
4319
+ const id = solidJs.createUniqueId();
4320
+ const context = solidJs.createMemo(() => ({
4321
+ id,
4250
4322
  dir: locale().dir,
4251
- getRootNode: environment().getRootNode
4252
- }, props);
4253
- const [state, send] = solid.useMachine(treeView__namespace.machine(context), {
4323
+ getRootNode: environment().getRootNode,
4324
+ selectedValue: props.defaultSelectedValue,
4325
+ expandedValue: props.defaultExpandedValue,
4326
+ ...props
4327
+ }));
4328
+ const [state, send] = solid.useMachine(treeView__namespace.machine(context()), {
4254
4329
  context
4255
4330
  });
4256
4331
  return solidJs.createMemo(() => treeView__namespace.connect(state, send, solid.normalizeProps));
4257
4332
  };
4258
4333
 
4259
4334
  const TreeViewRoot = props => {
4260
- const [useTreeViewProps, localProps] = createSplitProps()(props, ['expandedValue', 'focusedValue', 'id', 'ids', 'onExpandedChange', 'onFocusChange', 'onSelectionChange', 'openOnClick', 'selectedValue', 'selectionMode', 'typeahead']);
4335
+ const [useTreeViewProps, localProps] = createSplitProps()(props, ['defaultExpandedValue', 'defaultSelectedValue', 'expandedValue', 'expandOnClick', 'focusedValue', 'id', 'ids', 'onExpandedChange', 'onFocusChange', 'onSelectionChange', 'selectedValue', 'selectionMode', 'typeahead']);
4261
4336
  const api = useTreeView(useTreeViewProps);
4262
4337
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
4263
4338
  return web.createComponent(TreeViewProvider, {