@ark-ui/solid 2.1.1 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/cjs/index.js +113 -49
  3. package/cjs/index.js.map +1 -1
  4. package/esm/index.js +109 -49
  5. package/esm/index.js.map +1 -1
  6. package/package.json +53 -52
  7. package/source/accordion/accordion-item.jsx +4 -3
  8. package/source/accordion/accordion-root.jsx +4 -4
  9. package/source/collapsible/collapsible-content.jsx +11 -0
  10. package/source/collapsible/collapsible-context.js +5 -0
  11. package/source/collapsible/collapsible-root.jsx +24 -0
  12. package/source/collapsible/collapsible-trigger.jsx +8 -0
  13. package/source/collapsible/collapsible.jsx +4 -0
  14. package/source/collapsible/index.js +6 -0
  15. package/source/collapsible/use-collapsible.js +23 -0
  16. package/source/color-picker/use-color-picker.js +0 -1
  17. package/source/date-picker/use-date-picker.js +0 -1
  18. package/source/dialog/dialog-backdrop.jsx +4 -3
  19. package/source/dialog/dialog-root.jsx +5 -3
  20. package/source/dialog/use-dialog.js +1 -1
  21. package/source/hover-card/use-hover-card.js +1 -1
  22. package/source/index.jsx +1 -0
  23. package/source/menu/use-menu.js +1 -1
  24. package/source/popover/use-popover.js +1 -1
  25. package/source/presence/index.js +1 -2
  26. package/source/presence/split-presence-props.js +6 -8
  27. package/source/presence/use-presence.js +8 -7
  28. package/source/render-strategy.js +7 -0
  29. package/source/select/use-select.js +0 -1
  30. package/source/splitter/splitter-root.jsx +0 -1
  31. package/source/tabs/tab-content.jsx +4 -3
  32. package/source/tabs/tabs-root.jsx +4 -4
  33. package/source/tooltip/use-tooltip.js +1 -1
  34. package/source/tree-view/tree-view-branch-indicator.jsx +1 -4
  35. package/types/collapsible/collapsible-content.d.ts +4 -0
  36. package/types/collapsible/collapsible-context.d.ts +4 -0
  37. package/types/collapsible/collapsible-root.d.ts +6 -0
  38. package/types/collapsible/collapsible-trigger.d.ts +4 -0
  39. package/types/collapsible/collapsible.d.ts +4 -0
  40. package/types/collapsible/index.d.ts +8 -0
  41. package/types/collapsible/use-collapsible.d.ts +15 -0
  42. package/types/index.d.ts +1 -0
  43. package/types/menu/menu-item-group.d.ts +3 -5
  44. package/types/presence/index.d.ts +2 -3
  45. package/types/presence/split-presence-props.d.ts +1 -1
  46. package/types/presence/use-presence.d.ts +2 -11
  47. package/types/render-strategy.d.ts +14 -0
  48. package/types/tabs/tabs-root.d.ts +2 -2
  49. package/source/presence/presence-props-context.js +0 -5
  50. package/types/presence/presence-props-context.d.ts +0 -4
package/CHANGELOG.md CHANGED
@@ -6,6 +6,50 @@ description: All notable changes to this project will be documented in this file
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [2.2.0] - 2024-02-27
10
+
11
+ ### Added
12
+
13
+ - Added `Collapsible` component.
14
+
15
+ ### Changed
16
+
17
+ - Enhanced the performance of the Ark `factory` by utilizing `memo` to avoid unnecessary re-renders.
18
+ - Integrated `Collapsible` into `Accordion`, allowing the `Accordion` component to utilize `Collapsible` for animating the opening and closing of content.d
19
+
20
+ ```css
21
+ @keyframes slideDown {
22
+ from {
23
+ height: 0;
24
+ }
25
+ to {
26
+ height: var(--height);
27
+ }
28
+ }
29
+
30
+ @keyframes slideUp {
31
+ from {
32
+ height: var(--height);
33
+ }
34
+ to {
35
+ height: 0;
36
+ }
37
+ }
38
+
39
+ [data-scope='accordion'][data-part='item-content'][data-state='open'] {
40
+ animation: slideDown 250ms;
41
+ }
42
+
43
+ [data-scope='accordion'][data-part='item-content'][data-state='closed'] {
44
+ animation: slideUp 200ms;
45
+ }
46
+ ```
47
+
48
+ ### Fixed
49
+
50
+ - Fixed a bug where the disabled `Tooltip` would flash upon hovering and clicking the trigger.
51
+ - Fixed an issue where a disclosure components could not be initially set to an open state without being controlled.
52
+
9
53
  ## [2.1.1] - 2024-02-16
10
54
 
11
55
  ### Fixed
package/cjs/index.js CHANGED
@@ -10,6 +10,7 @@ var anatomy = require('@ark-ui/anatomy');
10
10
  var carousel$1 = require('@zag-js/carousel');
11
11
  var checkbox$1 = require('@zag-js/checkbox');
12
12
  var clipboard$1 = require('@zag-js/clipboard');
13
+ var collapsible$1 = require('@zag-js/collapsible');
13
14
  var colorPicker$1 = require('@zag-js/color-picker');
14
15
  var combobox$1 = require('@zag-js/combobox');
15
16
  var datePicker$1 = require('@zag-js/date-picker');
@@ -60,6 +61,7 @@ var avatar__namespace = /*#__PURE__*/_interopNamespaceDefault(avatar$1);
60
61
  var carousel__namespace = /*#__PURE__*/_interopNamespaceDefault(carousel$1);
61
62
  var checkbox__namespace = /*#__PURE__*/_interopNamespaceDefault(checkbox$1);
62
63
  var clipboard__namespace = /*#__PURE__*/_interopNamespaceDefault(clipboard$1);
64
+ var collapsible__namespace = /*#__PURE__*/_interopNamespaceDefault(collapsible$1);
63
65
  var colorPicker__namespace = /*#__PURE__*/_interopNamespaceDefault(colorPicker$1);
64
66
  var combobox__namespace = /*#__PURE__*/_interopNamespaceDefault(combobox$1);
65
67
  var datePicker__namespace = /*#__PURE__*/_interopNamespaceDefault(datePicker$1);
@@ -145,15 +147,19 @@ function jsxFactory() {
145
147
  }
146
148
  const ark = jsxFactory();
147
149
 
148
- function splitPresenceProps(props) {
149
- return createSplitProps()(props, ['lazyMount', 'onExitComplete', 'present', 'unmountOnExit']);
150
- }
150
+ const splitPresenceProps = props => createSplitProps()(props, ['lazyMount', 'onExitComplete', 'present', 'unmountOnExit']);
151
+
152
+ const [RenderStrategyProvider, useRenderStrategyContext] = createContext({
153
+ hookName: 'useRenderStrategyContext',
154
+ providerName: '<RenderStrategyProvider />'
155
+ });
156
+ const splitRenderStrategyProps = props => createSplitProps()(props, ['lazyMount', 'unmountOnExit']);
151
157
 
152
158
  const usePresence = props => {
153
- const [localProps, machineProps] = solidJs.splitProps(props, ['lazyMount', 'unmountOnExit']);
159
+ const [renderStrategyProps, context] = splitRenderStrategyProps(props);
154
160
  const [wasEverPresent, setWasEverPresent] = solidJs.createSignal(false);
155
- const [state, send] = solid.useMachine(presence__namespace.machine(machineProps), {
156
- context: machineProps
161
+ const [state, send] = solid.useMachine(presence__namespace.machine(context), {
162
+ context
157
163
  });
158
164
  const api = solidJs.createMemo(() => presence__namespace.connect(state, send, solid.normalizeProps));
159
165
  solidJs.createEffect(() => {
@@ -161,12 +167,12 @@ const usePresence = props => {
161
167
  if (isPresent) setWasEverPresent(true);
162
168
  });
163
169
  return solidJs.createMemo(() => ({
164
- isUnmounted: !api().isPresent && !wasEverPresent() && localProps.lazyMount || localProps.unmountOnExit && !api().isPresent && wasEverPresent(),
170
+ isUnmounted: !api().isPresent && !wasEverPresent() && renderStrategyProps.lazyMount || renderStrategyProps.unmountOnExit && !api().isPresent && wasEverPresent(),
165
171
  isPresent: api().isPresent,
166
172
  presenceProps: {
167
173
  ref: api().setNode,
168
174
  hidden: !api().isPresent,
169
- 'data-state': machineProps.present ? 'open' : 'closed'
175
+ 'data-state': context.present ? 'open' : 'closed'
170
176
  }
171
177
  }));
172
178
  };
@@ -193,11 +199,6 @@ const [PresenceProvider, usePresenceContext] = createContext({
193
199
  providerName: '<PresenceProvider />'
194
200
  });
195
201
 
196
- const [PresencePropsProvider, usePresencePropsContext] = createContext({
197
- hookName: 'usePresencePropsContext',
198
- providerName: '<PresencePropsProvider />'
199
- });
200
-
201
202
  const isFunction = value => typeof value === 'function';
202
203
  const runIfFn = (valueOrFn, ...args) => isFunction(valueOrFn) ? valueOrFn(...args) : valueOrFn;
203
204
 
@@ -209,8 +210,8 @@ const [AccordionItemProvider, useAccordionItemContext] = createContext({
209
210
  const AccordionItem = props => {
210
211
  const [itemProps, localProps] = createSplitProps()(props, ['value', 'disabled']);
211
212
  const api = useAccordionContext();
212
- const presenceProps = usePresencePropsContext();
213
- const presenceApi = usePresence(solid.mergeProps(presenceProps, () => ({
213
+ const renderStrategyProps = useRenderStrategyContext();
214
+ const presenceApi = usePresence(solid.mergeProps(renderStrategyProps, () => ({
214
215
  present: api().getItemState(itemProps).isOpen
215
216
  })));
216
217
  const mergedProps = solid.mergeProps(() => api().getItemProps(itemProps), localProps);
@@ -303,15 +304,15 @@ const useAccordion = props => {
303
304
  };
304
305
 
305
306
  const AccordionRoot = props => {
306
- const [presenceProps, accordionProps] = splitPresenceProps(props);
307
+ const [renderStrategyProps, accordionProps] = splitRenderStrategyProps(props);
307
308
  const [useAccordionProps, localProps] = createSplitProps()(accordionProps, ['collapsible', 'dir', 'disabled', 'getRootNode', 'id', 'ids', 'multiple', 'onFocusChange', 'onValueChange', 'orientation', 'value']);
308
309
  const api = useAccordion(useAccordionProps);
309
310
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
310
311
  return web.createComponent(AccordionProvider, {
311
312
  value: api,
312
313
  get children() {
313
- return web.createComponent(PresencePropsProvider, {
314
- value: presenceProps,
314
+ return web.createComponent(RenderStrategyProvider, {
315
+ value: renderStrategyProps,
315
316
  get children() {
316
317
  return web.createComponent(ark.div, mergedProps);
317
318
  }
@@ -630,6 +631,75 @@ var clipboard = /*#__PURE__*/Object.freeze({
630
631
  Trigger: ClipboardTrigger
631
632
  });
632
633
 
634
+ const [CollapsibleProvider, useCollapsibleContext] = createContext({
635
+ hookName: 'useCollapsibleContext',
636
+ providerName: '<CollapsibleProvider />'
637
+ });
638
+
639
+ const CollapsibleContent = props => {
640
+ const api = useCollapsibleContext();
641
+ const mergedProps = solid.mergeProps(() => api().contentProps, props);
642
+ return web.createComponent(solidJs.Show, {
643
+ get when() {
644
+ return !api().isUnmounted;
645
+ },
646
+ get children() {
647
+ return web.createComponent(ark.div, mergedProps);
648
+ }
649
+ });
650
+ };
651
+
652
+ const useCollapsible = props => {
653
+ const getRootNode = useEnvironmentContext();
654
+ const [renderStrategyProps, collapsibleProps] = splitRenderStrategyProps(props);
655
+ const context = solid.mergeProps({
656
+ id: solidJs.createUniqueId(),
657
+ getRootNode
658
+ }, collapsibleProps);
659
+ const [state, send] = solid.useMachine(collapsible__namespace.machine(context), {
660
+ context
661
+ });
662
+ const [wasVisible, setWasVisible] = solidJs.createSignal(false);
663
+ solidJs.createEffect(() => {
664
+ const isPresent = api().isVisible;
665
+ if (isPresent) setWasVisible(true);
666
+ });
667
+ const api = solidJs.createMemo(() => collapsible__namespace.connect(state, send, solid.normalizeProps));
668
+ return solidJs.createMemo(() => ({
669
+ ...api(),
670
+ isUnmounted: !api().isVisible && !wasVisible() && renderStrategyProps.lazyMount || renderStrategyProps.unmountOnExit && !api().isVisible && wasVisible()
671
+ }));
672
+ };
673
+
674
+ const CollapsibleRoot = props => {
675
+ const [params, localProps] = createSplitProps()(props, ['dir', 'disabled', 'getRootNode', 'id', 'ids', 'lazyMount', 'onExitComplete', 'onOpenChange', 'open', 'unmountOnExit']);
676
+ const api = useCollapsible(params);
677
+ const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
678
+ return web.createComponent(CollapsibleProvider, {
679
+ value: api,
680
+ get children() {
681
+ return web.createComponent(ark.div, mergedProps);
682
+ }
683
+ });
684
+ };
685
+
686
+ const CollapsibleTrigger = props => {
687
+ const api = useCollapsibleContext();
688
+ const mergedProps = () => solid.mergeProps(api().triggerProps, props);
689
+ return web.createComponent(ark.button, web.mergeProps(mergedProps, {
690
+ get children() {
691
+ return props.children;
692
+ }
693
+ }));
694
+ };
695
+
696
+ var collapsible = /*#__PURE__*/Object.freeze({
697
+ __proto__: null,
698
+ Content: CollapsibleContent,
699
+ Root: CollapsibleRoot,
700
+ Trigger: CollapsibleTrigger
701
+ });
702
+
633
703
  const [ColorPickerAreaProvider, useColorPickerAreaContext] = createContext({
634
704
  hookName: 'useColorPickerAreaContext',
635
705
  providerName: '<ColorPickerAreaProvider />'
@@ -782,8 +852,7 @@ const useColorPicker = props => {
782
852
  const context = solid.mergeProps(() => ({
783
853
  id: solidJs.createUniqueId(),
784
854
  getRootNode,
785
- value: local.value ? colorPicker__namespace.parse(local.value) : undefined,
786
- 'open.controlled': props.open !== undefined
855
+ value: local.value ? colorPicker__namespace.parse(local.value) : undefined
787
856
  }), rest);
788
857
  const [state, send] = solid.useMachine(colorPicker__namespace.machine(context), {
789
858
  context
@@ -1219,8 +1288,7 @@ const useDatePicker = props => {
1219
1288
  id: solidJs.createUniqueId(),
1220
1289
  getRootNode,
1221
1290
  focusedValue: local.focusedValue ? datePicker__namespace.parse(local.focusedValue) : undefined,
1222
- value: local.value ? datePicker__namespace.parse(local.value) : undefined,
1223
- 'open.controlled': props.open !== undefined
1291
+ value: local.value ? datePicker__namespace.parse(local.value) : undefined
1224
1292
  }), rest);
1225
1293
  const [state, send] = solid.useMachine(datePicker__namespace.machine(context), {
1226
1294
  context
@@ -1446,8 +1514,8 @@ const [DialogProvider, useDialogContext] = createContext({
1446
1514
 
1447
1515
  const DialogBackdrop = props => {
1448
1516
  const api = useDialogContext();
1449
- const presenceProps = usePresencePropsContext();
1450
- const presenceApi = usePresence(solid.mergeProps(presenceProps, () => ({
1517
+ const renderStrategyProps = useRenderStrategyContext();
1518
+ const presenceApi = usePresence(solid.mergeProps(renderStrategyProps, () => ({
1451
1519
  present: api().isOpen
1452
1520
  })));
1453
1521
  const mergedProps = solid.mergeProps(() => api().backdropProps, () => presenceApi().presenceProps, props);
@@ -1505,8 +1573,7 @@ const useDialog = props => {
1505
1573
  const getRootNode = useEnvironmentContext();
1506
1574
  const context = solid.mergeProps({
1507
1575
  id: solidJs.createUniqueId(),
1508
- getRootNode,
1509
- 'open.controlled': props.open !== undefined
1576
+ getRootNode
1510
1577
  }, props);
1511
1578
  const [state, send] = solid.useMachine(dialog__namespace.machine(context), {
1512
1579
  context
@@ -1516,6 +1583,7 @@ const useDialog = props => {
1516
1583
 
1517
1584
  const DialogRoot = props => {
1518
1585
  const [presenceProps, dialogProps] = splitPresenceProps(props);
1586
+ const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
1519
1587
  const [useDialogProps, localProps] = createSplitProps()(dialogProps, ['aria-label', 'closeOnEscapeKeyDown', 'closeOnInteractOutside', 'dir', 'finalFocusEl', 'getRootNode', 'id', 'ids', 'initialFocusEl', 'modal', 'onEscapeKeyDown', 'onFocusOutside', 'onInteractOutside', 'onOpenChange', 'onPointerDownOutside', 'open', 'preventScroll', 'restoreFocus', 'role', 'trapFocus']);
1520
1588
  const api = useDialog(useDialogProps);
1521
1589
  const apiPresence = usePresence(solid.mergeProps(presenceProps, () => ({
@@ -1525,8 +1593,8 @@ const DialogRoot = props => {
1525
1593
  return web.createComponent(DialogProvider, {
1526
1594
  value: api,
1527
1595
  get children() {
1528
- return web.createComponent(PresencePropsProvider, {
1529
- value: presenceProps,
1596
+ return web.createComponent(RenderStrategyProvider, {
1597
+ value: renderStrategyProps,
1530
1598
  get children() {
1531
1599
  return web.createComponent(PresenceProvider, {
1532
1600
  value: apiPresence,
@@ -1867,8 +1935,7 @@ const useHoverCard = props => {
1867
1935
  const getRootNode = useEnvironmentContext();
1868
1936
  const context = solid.mergeProps({
1869
1937
  id: solidJs.createUniqueId(),
1870
- getRootNode,
1871
- 'open.controlled': props.open !== undefined
1938
+ getRootNode
1872
1939
  }, props);
1873
1940
  const [state, send] = solid.useMachine(hoverCard__namespace.machine(context), {
1874
1941
  context
@@ -2051,8 +2118,7 @@ const useMenu = props => {
2051
2118
  const getRootNode = useEnvironmentContext();
2052
2119
  const context = solid.mergeProps({
2053
2120
  id: solidJs.createUniqueId(),
2054
- getRootNode,
2055
- 'open.controlled': props.open !== undefined
2121
+ getRootNode
2056
2122
  }, props);
2057
2123
  const [state, send, machine] = solid.useMachine(menu__namespace.machine(context), {
2058
2124
  context
@@ -2427,8 +2493,7 @@ const usePopover = props => {
2427
2493
  const getRootNode = useEnvironmentContext();
2428
2494
  const context = solid.mergeProps({
2429
2495
  id: solidJs.createUniqueId(),
2430
- getRootNode,
2431
- 'open.controlled': props.open !== undefined
2496
+ getRootNode
2432
2497
  }, props);
2433
2498
  const [state, send] = solid.useMachine(popover__namespace.machine(context), {
2434
2499
  context
@@ -3000,8 +3065,7 @@ const useSelect = props => {
3000
3065
  const context = () => solid.mergeProps({
3001
3066
  id: solidJs.createUniqueId(),
3002
3067
  getRootNode,
3003
- collection: collection(),
3004
- 'open.controlled': props.open !== undefined
3068
+ collection: collection()
3005
3069
  }, rest);
3006
3070
  const [state, send] = solid.useMachine(select__namespace.machine(context()), {
3007
3071
  context
@@ -3203,7 +3267,7 @@ const useSplitter = props => {
3203
3267
  };
3204
3268
 
3205
3269
  const SplitterRoot = props => {
3206
- const [splitterParams, localProps] = createSplitProps()(props, ['dir', 'getRootNode', 'id', 'ids', 'onSizeChange', 'onSizeChangeEnd', 'onSizeChangeStart', 'orientation', 'size']);
3270
+ const [splitterParams, localProps] = createSplitProps()(props, ['dir', 'getRootNode', 'id', 'ids', 'onSizeChange', 'onSizeChangeEnd', 'orientation', 'size']);
3207
3271
  const api = useSplitter(splitterParams);
3208
3272
  const getChildren = () => runIfFn(localProps.children, api);
3209
3273
  const mergedProps = solid.mergeProps(() => api().rootProps, localProps);
@@ -3299,8 +3363,8 @@ const [TabsProvider, useTabsContext] = createContext({
3299
3363
  const TabContent = props => {
3300
3364
  const [contentProps, localProps] = createSplitProps()(props, ['value']);
3301
3365
  const api = useTabsContext();
3302
- const presenceProps = usePresencePropsContext();
3303
- const presenceApi = usePresence(solid.mergeProps(presenceProps, () => ({
3366
+ const renderStrategyProps = useRenderStrategyContext();
3367
+ const presenceApi = usePresence(solid.mergeProps(renderStrategyProps, () => ({
3304
3368
  present: api().value === contentProps.value
3305
3369
  })));
3306
3370
  const mergedProps = solid.mergeProps(() => api().getContentProps(contentProps), () => presenceApi().presenceProps, localProps);
@@ -3351,15 +3415,15 @@ const useTabs = props => {
3351
3415
  };
3352
3416
 
3353
3417
  const TabsRoot = props => {
3354
- const [presenceProps, tabsProps] = splitPresenceProps(props);
3418
+ const [renderStrategyProps, tabsProps] = splitRenderStrategyProps(props);
3355
3419
  const [tabsParams, restProps] = createSplitProps()(tabsProps, ['activationMode', 'dir', 'getRootNode', 'id', 'ids', 'loop', 'onFocusChange', 'onValueChange', 'orientation', 'translations', 'value']);
3356
3420
  const api = useTabs(tabsParams);
3357
3421
  const mergedProps = solid.mergeProps(() => api().rootProps, restProps);
3358
3422
  return web.createComponent(TabsProvider, {
3359
3423
  value: api,
3360
3424
  get children() {
3361
- return web.createComponent(PresencePropsProvider, {
3362
- value: presenceProps,
3425
+ return web.createComponent(RenderStrategyProvider, {
3426
+ value: renderStrategyProps,
3363
3427
  get children() {
3364
3428
  return web.createComponent(ark.div, mergedProps);
3365
3429
  }
@@ -3683,8 +3747,7 @@ const useTooltip = props => {
3683
3747
  const getRootNode = useEnvironmentContext();
3684
3748
  const context = solid.mergeProps({
3685
3749
  id: solidJs.createUniqueId(),
3686
- getRootNode,
3687
- 'open.controlled': props.open !== undefined
3750
+ getRootNode
3688
3751
  }, props);
3689
3752
  const [state, send] = solid.useMachine(tooltip__namespace.machine(context), {
3690
3753
  context
@@ -3787,9 +3850,7 @@ const TreeViewBranchControl = props => {
3787
3850
  const TreeViewBranchIndicator = props => {
3788
3851
  const api = useTreeViewContext();
3789
3852
  const branchProps = useTreeViewBranchContext();
3790
- const mergedProps = solid.mergeProps(() => api().getBranchProps(branchProps),
3791
- // TODO use api.getBranchIndicatorProps() when available
3792
- anatomy.treeViewAnatomy.build().branchIndicator.attrs, props);
3853
+ const mergedProps = solid.mergeProps(() => api().getBranchIndicatorProps(branchProps), props);
3793
3854
  return web.createComponent(ark.div, mergedProps);
3794
3855
  };
3795
3856
 
@@ -3941,6 +4002,10 @@ exports.ClipboardInput = ClipboardInput;
3941
4002
  exports.ClipboardLabel = ClipboardLabel;
3942
4003
  exports.ClipboardRoot = ClipboardRoot;
3943
4004
  exports.ClipboardTrigger = ClipboardTrigger;
4005
+ exports.Collapsible = collapsible;
4006
+ exports.CollapsibleContent = CollapsibleContent;
4007
+ exports.CollapsibleRoot = CollapsibleRoot;
4008
+ exports.CollapsibleTrigger = CollapsibleTrigger;
3944
4009
  exports.ColorPicker = colorPicker;
3945
4010
  exports.ColorPickerArea = ColorPickerArea;
3946
4011
  exports.ColorPickerAreaBackground = ColorPickerAreaBackground;
@@ -4090,7 +4155,6 @@ exports.PopoverRoot = PopoverRoot;
4090
4155
  exports.PopoverTitle = PopoverTitle;
4091
4156
  exports.PopoverTrigger = PopoverTrigger;
4092
4157
  exports.Presence = Presence;
4093
- exports.PresencePropsProvider = PresencePropsProvider;
4094
4158
  exports.PresenceProvider = PresenceProvider;
4095
4159
  exports.Progress = progress;
4096
4160
  exports.ProgressCircle = ProgressCircle;
@@ -4210,6 +4274,7 @@ exports.useAvatarContext = useAvatarContext;
4210
4274
  exports.useCarouselContext = useCarouselContext;
4211
4275
  exports.useCheckboxContext = useCheckboxContext;
4212
4276
  exports.useClipboardContext = useClipboardContext;
4277
+ exports.useCollapsibleContext = useCollapsibleContext;
4213
4278
  exports.useColorPickerAreaContext = useColorPickerAreaContext;
4214
4279
  exports.useColorPickerChannelSliderContext = useColorPickerChannelSliderContext;
4215
4280
  exports.useColorPickerContext = useColorPickerContext;
@@ -4231,7 +4296,6 @@ exports.usePinInputContext = usePinInputContext;
4231
4296
  exports.usePopoverContext = usePopoverContext;
4232
4297
  exports.usePresence = usePresence;
4233
4298
  exports.usePresenceContext = usePresenceContext;
4234
- exports.usePresencePropsContext = usePresencePropsContext;
4235
4299
  exports.useProgressContext = useProgressContext;
4236
4300
  exports.useRadioGroupContext = useRadioGroupContext;
4237
4301
  exports.useRadioGroupItemContext = useRadioGroupItemContext;