@ariakit/react-core 0.3.9 → 0.3.10

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 (68) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/cjs/__chunks/{WK7AZPHS.cjs → 2GETDAIQ.cjs} +4 -4
  3. package/cjs/__chunks/{OT6DC3ML.cjs → 36QK2QLE.cjs} +2 -2
  4. package/cjs/__chunks/{S6WUBPBB.cjs → 65LGW5LY.cjs} +4 -2
  5. package/cjs/__chunks/{VIETWH5C.cjs → DHSZ2ZFJ.cjs} +2 -2
  6. package/cjs/__chunks/{WABPFCL3.cjs → NVHGMKAE.cjs} +7 -5
  7. package/cjs/__chunks/{HHZJ6KYW.cjs → PHZJAGWK.cjs} +2 -2
  8. package/cjs/__chunks/{KIGOGBFU.cjs → SANV4XBF.cjs} +2 -2
  9. package/cjs/__chunks/{PFQ3IPWT.cjs → TTMCZ7ZN.cjs} +1 -1
  10. package/cjs/collection/collection-renderer.d.cts +0 -1
  11. package/cjs/collection/collection-renderer.d.ts +0 -1
  12. package/cjs/combobox/combobox-item.cjs +5 -3
  13. package/cjs/combobox/combobox-popover.cjs +5 -5
  14. package/cjs/composite/composite-item.cjs +2 -2
  15. package/cjs/composite/composite-overflow-disclosure.cjs +2 -2
  16. package/cjs/composite/composite-overflow.cjs +4 -4
  17. package/cjs/composite/composite-renderer.d.cts +0 -1
  18. package/cjs/composite/composite-renderer.d.ts +0 -1
  19. package/cjs/dialog/dialog.cjs +3 -3
  20. package/cjs/form/form-radio.cjs +3 -3
  21. package/cjs/hovercard/hovercard.cjs +5 -5
  22. package/cjs/menu/menu-item-checkbox.cjs +3 -3
  23. package/cjs/menu/menu-item-radio.cjs +5 -5
  24. package/cjs/menu/menu-item.cjs +3 -3
  25. package/cjs/menu/menu.cjs +40 -12
  26. package/cjs/popover/popover.cjs +4 -4
  27. package/cjs/portal/portal.cjs +2 -2
  28. package/cjs/radio/radio.cjs +3 -3
  29. package/cjs/select/select-item.cjs +2 -2
  30. package/cjs/select/select-popover.cjs +5 -5
  31. package/cjs/tab/tab.cjs +2 -2
  32. package/cjs/toolbar/toolbar-container.cjs +3 -3
  33. package/cjs/toolbar/toolbar-input.cjs +3 -3
  34. package/cjs/toolbar/toolbar-item.cjs +3 -3
  35. package/cjs/tooltip/tooltip.cjs +6 -6
  36. package/esm/__chunks/{6HKEBMMA.js → GJYUMUMT.js} +1 -1
  37. package/esm/__chunks/{E3XM3D67.js → JPXNJYSO.js} +4 -2
  38. package/esm/__chunks/{YGCD7HIZ.js → P6VCQ6Q3.js} +1 -1
  39. package/esm/__chunks/{PFM7J2TR.js → PDVJHECS.js} +1 -1
  40. package/esm/__chunks/{BJR5BFSV.js → QEPSYGAQ.js} +1 -1
  41. package/esm/__chunks/{2WETNHXU.js → SXPADS2D.js} +5 -3
  42. package/esm/__chunks/{2ECHI3ER.js → UJUY6GAA.js} +1 -1
  43. package/esm/__chunks/{HQ7YVNMA.js → WEU2EOWJ.js} +2 -2
  44. package/esm/collection/collection-renderer.d.ts +0 -1
  45. package/esm/combobox/combobox-item.js +4 -2
  46. package/esm/combobox/combobox-popover.js +3 -3
  47. package/esm/composite/composite-item.js +1 -1
  48. package/esm/composite/composite-overflow-disclosure.js +1 -1
  49. package/esm/composite/composite-overflow.js +3 -3
  50. package/esm/composite/composite-renderer.d.ts +0 -1
  51. package/esm/dialog/dialog.js +2 -2
  52. package/esm/form/form-radio.js +2 -2
  53. package/esm/hovercard/hovercard.js +4 -4
  54. package/esm/menu/menu-item-checkbox.js +2 -2
  55. package/esm/menu/menu-item-radio.js +3 -3
  56. package/esm/menu/menu-item.js +2 -2
  57. package/esm/menu/menu.js +39 -11
  58. package/esm/popover/popover.js +3 -3
  59. package/esm/portal/portal.js +1 -1
  60. package/esm/radio/radio.js +2 -2
  61. package/esm/select/select-item.js +1 -1
  62. package/esm/select/select-popover.js +3 -3
  63. package/esm/tab/tab.js +1 -1
  64. package/esm/toolbar/toolbar-container.js +2 -2
  65. package/esm/toolbar/toolbar-input.js +2 -2
  66. package/esm/toolbar/toolbar-item.js +2 -2
  67. package/esm/tooltip/tooltip.js +4 -4
  68. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # @ariakit/react-core
2
2
 
3
+ ## 0.3.10
4
+
5
+ ### Overwriting `aria-selected` value on `ComboboxItem`
6
+
7
+ It's now possible to pass a custom `aria-selected` value to the [`ComboboxItem`](https://ariakit.org/reference/combobox-item) component, overwriting the internal behavior.
8
+
9
+ ### Limiting `slide` on popovers
10
+
11
+ When components like [Popover](https://ariakit.org/components/popover) and [Menu](https://ariakit.org/components/menu) with the [`slide`](https://ariakit.org/reference/popover#slide) prop are positioned to the right or left of the anchor element, they will now cease to slide across the screen, disengaged from the anchor element, upon reaching the edge of said element.
12
+
13
+ ### Other updates
14
+
15
+ - Fixed [`blurOnHoverEnd`](https://ariakit.org/reference/menu-item#bluronhoverend) set to `false` not keeping submenus open.
16
+ - Fixed scroll jump on Safari when selecting a [`CompositeItem`](https://ariakit.org/reference/composite-item).
17
+ - Fixed [`preserveTabOrderAnchor`](https://ariakit.org/reference/menu#preservetaborderanchor) on nested menus.
18
+ - Fixed focus behavior when using the [`preserveTabOrder`](https://ariakit.org/reference/portal#preservetaborder) prop.
19
+
3
20
  ## 0.3.9
4
21
 
5
22
  ### Automatic role on ComboboxGroup
@@ -6,10 +6,10 @@
6
6
  var _KXQOQQ5Bcjs = require('./KXQOQQ5B.cjs');
7
7
 
8
8
 
9
- var _WABPFCL3cjs = require('./WABPFCL3.cjs');
9
+ var _NVHGMKAEcjs = require('./NVHGMKAE.cjs');
10
10
 
11
11
 
12
- var _OT6DC3MLcjs = require('./OT6DC3ML.cjs');
12
+ var _36QK2QLEcjs = require('./36QK2QLE.cjs');
13
13
 
14
14
 
15
15
 
@@ -283,7 +283,7 @@ var useHovercard = _RNZNGEL4cjs.createHook.call(void 0,
283
283
  const autoFocusOnShow = store.useState(
284
284
  (state) => modal || state.autoFocusOnShow
285
285
  );
286
- props = _WABPFCL3cjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
286
+ props = _NVHGMKAEcjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
287
287
  store,
288
288
  modal,
289
289
  portal,
@@ -304,7 +304,7 @@ var useHovercard = _RNZNGEL4cjs.createHook.call(void 0,
304
304
  return props;
305
305
  }
306
306
  );
307
- var Hovercard = _OT6DC3MLcjs.createDialogComponent.call(void 0,
307
+ var Hovercard = _36QK2QLEcjs.createDialogComponent.call(void 0,
308
308
  _RNZNGEL4cjs.createComponent.call(void 0, (props) => {
309
309
  const htmlProps = useHovercard(props);
310
310
  return _RNZNGEL4cjs.createElement.call(void 0, "div", htmlProps);
@@ -33,7 +33,7 @@ var _7566TIRWcjs = require('./7566TIRW.cjs');
33
33
  var _J3OG6T3Bcjs = require('./J3OG6T3B.cjs');
34
34
 
35
35
 
36
- var _S6WUBPBBcjs = require('./S6WUBPBB.cjs');
36
+ var _65LGW5LYcjs = require('./65LGW5LY.cjs');
37
37
 
38
38
 
39
39
 
@@ -504,7 +504,7 @@ var useDialog = _RNZNGEL4cjs.createHook.call(void 0,
504
504
  }));
505
505
  props = _TD5MOASJcjs.useDisclosureContent.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store }, props));
506
506
  props = _Z3GCTNW4cjs.useFocusable.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), { focusable }));
507
- props = _S6WUBPBBcjs.usePortal.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { portal }, props), { portalRef, preserveTabOrder }));
507
+ props = _65LGW5LYcjs.usePortal.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { portal }, props), { portalRef, preserveTabOrder }));
508
508
  return props;
509
509
  }
510
510
  );
@@ -133,9 +133,10 @@ var usePortal = _RNZNGEL4cjs.createHook.call(void 0,
133
133
  if (!_events.isFocusEventOutside.call(void 0, event))
134
134
  return;
135
135
  const focusing = event.type === "focusin";
136
- if (focusing)
137
- return _focus.restoreFocusIn.call(void 0, portalNode);
138
136
  cancelAnimationFrame(raf);
137
+ if (focusing) {
138
+ return _focus.restoreFocusIn.call(void 0, portalNode);
139
+ }
139
140
  raf = requestAnimationFrame(() => {
140
141
  _focus.disableFocusIn.call(void 0, portalNode, true);
141
142
  });
@@ -143,6 +144,7 @@ var usePortal = _RNZNGEL4cjs.createHook.call(void 0,
143
144
  portalNode.addEventListener("focusin", onFocus, true);
144
145
  portalNode.addEventListener("focusout", onFocus, true);
145
146
  return () => {
147
+ cancelAnimationFrame(raf);
146
148
  portalNode.removeEventListener("focusin", onFocus, true);
147
149
  portalNode.removeEventListener("focusout", onFocus, true);
148
150
  };
@@ -10,7 +10,7 @@ var _7LBZXSLYcjs = require('./7LBZXSLY.cjs');
10
10
  var _IPYAEPOTcjs = require('./IPYAEPOT.cjs');
11
11
 
12
12
 
13
- var _PFQ3IPWTcjs = require('./PFQ3IPWT.cjs');
13
+ var _TTMCZ7ZNcjs = require('./TTMCZ7ZN.cjs');
14
14
 
15
15
 
16
16
 
@@ -110,7 +110,7 @@ var useMenuItem = _RNZNGEL4cjs.createHook.call(void 0,
110
110
  }, props), {
111
111
  onClick
112
112
  });
113
- props = _PFQ3IPWTcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, preventScrollOnKeyDown }, props));
113
+ props = _TTMCZ7ZNcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, preventScrollOnKeyDown }, props));
114
114
  props = _IPYAEPOTcjs.useCompositeHover.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
115
115
  store
116
116
  }, props), {
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _OT6DC3MLcjs = require('./OT6DC3ML.cjs');
5
+ var _36QK2QLEcjs = require('./36QK2QLE.cjs');
6
6
 
7
7
 
8
8
 
@@ -35,6 +35,7 @@ var _misc = require('@ariakit/core/utils/misc');
35
35
 
36
36
 
37
37
 
38
+
38
39
  var _dom = require('@floating-ui/dom');
39
40
  var _jsxruntime = require('react/jsx-runtime');
40
41
  function createDOMRect(x = 0, y = 0, width = 0, height = 0) {
@@ -112,7 +113,8 @@ function getShiftMiddleware(props) {
112
113
  return _dom.shift.call(void 0, {
113
114
  mainAxis: props.slide,
114
115
  crossAxis: props.overlap,
115
- padding: props.overflowPadding
116
+ padding: props.overflowPadding,
117
+ limiter: _dom.limitShift.call(void 0, )
116
118
  });
117
119
  }
118
120
  function getSizeMiddleware(props) {
@@ -227,7 +229,7 @@ var usePopover = _RNZNGEL4cjs.createHook.call(void 0,
227
229
  const middleware = [
228
230
  getOffsetMiddleware(arrowElement, { gutter, shift: shift2 }),
229
231
  getFlipMiddleware({ flip: flip2, overflowPadding }),
230
- getShiftMiddleware({ slide, overlap, overflowPadding }),
232
+ getShiftMiddleware({ slide, shift: shift2, overlap, overflowPadding }),
231
233
  getArrowMiddleware(arrowElement, { arrowPadding }),
232
234
  getSizeMiddleware({
233
235
  sameWidth,
@@ -354,7 +356,7 @@ var usePopover = _RNZNGEL4cjs.createHook.call(void 0,
354
356
  position: "relative"
355
357
  }, props.style)
356
358
  });
357
- props = _OT6DC3MLcjs.useDialog.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
359
+ props = _36QK2QLEcjs.useDialog.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
358
360
  store,
359
361
  modal,
360
362
  portal,
@@ -367,7 +369,7 @@ var usePopover = _RNZNGEL4cjs.createHook.call(void 0,
367
369
  return props;
368
370
  }
369
371
  );
370
- var Popover = _OT6DC3MLcjs.createDialogComponent.call(void 0,
372
+ var Popover = _36QK2QLEcjs.createDialogComponent.call(void 0,
371
373
  _RNZNGEL4cjs.createComponent.call(void 0, (props) => {
372
374
  const htmlProps = usePopover(props);
373
375
  return _RNZNGEL4cjs.createElement.call(void 0, "div", htmlProps);
@@ -4,7 +4,7 @@
4
4
  var _HEEQY4DZcjs = require('./HEEQY4DZ.cjs');
5
5
 
6
6
 
7
- var _PFQ3IPWTcjs = require('./PFQ3IPWT.cjs');
7
+ var _TTMCZ7ZNcjs = require('./TTMCZ7ZN.cjs');
8
8
 
9
9
 
10
10
 
@@ -133,7 +133,7 @@ var useRadio = _RNZNGEL4cjs.createHook.call(void 0,
133
133
  onClick,
134
134
  onFocus
135
135
  });
136
- props = _PFQ3IPWTcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, clickOnEnter: !nativeRadio }, props));
136
+ props = _TTMCZ7ZNcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, clickOnEnter: !nativeRadio }, props));
137
137
  return _AV6KTKLEcjs.__spreadValues.call(void 0, {
138
138
  name: nativeRadio ? name : void 0,
139
139
  value: nativeRadio ? value : void 0,
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _PFQ3IPWTcjs = require('./PFQ3IPWT.cjs');
4
+ var _TTMCZ7ZNcjs = require('./TTMCZ7ZN.cjs');
5
5
 
6
6
 
7
7
  var _LYIGAIJFcjs = require('./LYIGAIJF.cjs');
@@ -21,7 +21,7 @@ var useToolbarItem = _RNZNGEL4cjs.createHook.call(void 0,
21
21
  var _b = _a, { store } = _b, props = _AV6KTKLEcjs.__objRest.call(void 0, _b, ["store"]);
22
22
  const context = _LYIGAIJFcjs.useToolbarContext.call(void 0, );
23
23
  store = store || context;
24
- props = _PFQ3IPWTcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store }, props));
24
+ props = _TTMCZ7ZNcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store }, props));
25
25
  return props;
26
26
  }
27
27
  );
@@ -220,7 +220,7 @@ var useCompositeItem = _RNZNGEL4cjs.createHook.call(void 0,
220
220
  return;
221
221
  if (isEditableElement(event.currentTarget))
222
222
  return;
223
- if (!baseElement2)
223
+ if (!(baseElement2 == null ? void 0 : baseElement2.isConnected))
224
224
  return;
225
225
  hasFocusedComposite.current = true;
226
226
  const fromComposite = event.relatedTarget === baseElement2 || _RV3PHHWMcjs.isItem.call(void 0, store, event.relatedTarget);
@@ -62,7 +62,6 @@ export declare function useCollectionRenderer<T extends Item = any>({ store, ite
62
62
  id?: string | undefined;
63
63
  lang?: string | undefined;
64
64
  nonce?: string | undefined;
65
- placeholder?: string | undefined;
66
65
  slot?: string | undefined;
67
66
  spellCheck?: (boolean | "false" | "true") | undefined;
68
67
  style?: CSSProperties | undefined;
@@ -62,7 +62,6 @@ export declare function useCollectionRenderer<T extends Item = any>({ store, ite
62
62
  id?: string | undefined;
63
63
  lang?: string | undefined;
64
64
  nonce?: string | undefined;
65
- placeholder?: string | undefined;
66
65
  slot?: string | undefined;
67
66
  spellCheck?: (boolean | "false" | "true") | undefined;
68
67
  style?: CSSProperties | undefined;
@@ -9,7 +9,7 @@ var _IPYAEPOTcjs = require('../__chunks/IPYAEPOT.cjs');
9
9
  var _3WCBE6SUcjs = require('../__chunks/3WCBE6SU.cjs');
10
10
 
11
11
 
12
- var _PFQ3IPWTcjs = require('../__chunks/PFQ3IPWT.cjs');
12
+ var _TTMCZ7ZNcjs = require('../__chunks/TTMCZ7ZN.cjs');
13
13
  require('../__chunks/DAJUUBUI.cjs');
14
14
  require('../__chunks/R5A2WTWB.cjs');
15
15
  require('../__chunks/RV3PHHWM.cjs');
@@ -151,7 +151,9 @@ var useComboboxItem = _RNZNGEL4cjs.createHook.call(void 0,
151
151
  (state) => isSelected(state.selectedValue, value)
152
152
  );
153
153
  if (multiSelectable && selected != null) {
154
- props["aria-selected"] = selected;
154
+ props = _AV6KTKLEcjs.__spreadValues.call(void 0, {
155
+ "aria-selected": selected
156
+ }, props);
155
157
  }
156
158
  props = _EO6LS72Hcjs.useWrapElement.call(void 0,
157
159
  props,
@@ -167,7 +169,7 @@ var useComboboxItem = _RNZNGEL4cjs.createHook.call(void 0,
167
169
  onKeyDown
168
170
  });
169
171
  const moveOnKeyPressProp = _EO6LS72Hcjs.useBooleanEvent.call(void 0, moveOnKeyPress);
170
- props = _PFQ3IPWTcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
172
+ props = _TTMCZ7ZNcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
171
173
  store
172
174
  }, props), {
173
175
  getItem,
@@ -9,10 +9,10 @@ require('../__chunks/UZNYSPKP.cjs');
9
9
  require('../__chunks/BZTDJIVT.cjs');
10
10
 
11
11
 
12
- var _WABPFCL3cjs = require('../__chunks/WABPFCL3.cjs');
12
+ var _NVHGMKAEcjs = require('../__chunks/NVHGMKAE.cjs');
13
13
 
14
14
 
15
- var _OT6DC3MLcjs = require('../__chunks/OT6DC3ML.cjs');
15
+ var _36QK2QLEcjs = require('../__chunks/36QK2QLE.cjs');
16
16
  require('../__chunks/RTT4XR27.cjs');
17
17
  require('../__chunks/NKR65BKC.cjs');
18
18
  require('../__chunks/PZL34OVO.cjs');
@@ -29,7 +29,7 @@ require('../__chunks/5GTNIPQ6.cjs');
29
29
  require('../__chunks/V24PR4PW.cjs');
30
30
  require('../__chunks/7566TIRW.cjs');
31
31
  require('../__chunks/J3OG6T3B.cjs');
32
- require('../__chunks/S6WUBPBB.cjs');
32
+ require('../__chunks/65LGW5LY.cjs');
33
33
  require('../__chunks/XB3G2EO2.cjs');
34
34
  require('../__chunks/CVD2AZE2.cjs');
35
35
  require('../__chunks/2BIO7R5N.cjs');
@@ -92,7 +92,7 @@ var useComboboxPopover = _RNZNGEL4cjs.createHook.call(void 0,
92
92
  );
93
93
  const baseElement = store.useState("baseElement");
94
94
  props = _LO3RECODcjs.useComboboxList.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, alwaysVisible }, props));
95
- props = _WABPFCL3cjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
95
+ props = _NVHGMKAEcjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
96
96
  store,
97
97
  alwaysVisible,
98
98
  autoFocusOnShow: false,
@@ -121,7 +121,7 @@ var useComboboxPopover = _RNZNGEL4cjs.createHook.call(void 0,
121
121
  return props;
122
122
  }
123
123
  );
124
- var ComboboxPopover = _OT6DC3MLcjs.createDialogComponent.call(void 0,
124
+ var ComboboxPopover = _36QK2QLEcjs.createDialogComponent.call(void 0,
125
125
  _RNZNGEL4cjs.createComponent.call(void 0, (props) => {
126
126
  const htmlProps = useComboboxPopover(props);
127
127
  return _RNZNGEL4cjs.createElement.call(void 0, "div", htmlProps);
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _PFQ3IPWTcjs = require('../__chunks/PFQ3IPWT.cjs');
5
+ var _TTMCZ7ZNcjs = require('../__chunks/TTMCZ7ZN.cjs');
6
6
  require('../__chunks/DAJUUBUI.cjs');
7
7
  require('../__chunks/R5A2WTWB.cjs');
8
8
  require('../__chunks/RV3PHHWM.cjs');
@@ -18,4 +18,4 @@ require('../__chunks/AV6KTKLE.cjs');
18
18
 
19
19
 
20
20
 
21
- exports.CompositeItem = _PFQ3IPWTcjs.CompositeItem; exports.useCompositeItem = _PFQ3IPWTcjs.useCompositeItem;
21
+ exports.CompositeItem = _TTMCZ7ZNcjs.CompositeItem; exports.useCompositeItem = _TTMCZ7ZNcjs.useCompositeItem;
@@ -8,7 +8,7 @@ require('../__chunks/3QW6ELTG.cjs');
8
8
  require('../__chunks/5UTRYT6E.cjs');
9
9
 
10
10
 
11
- var _PFQ3IPWTcjs = require('../__chunks/PFQ3IPWT.cjs');
11
+ var _TTMCZ7ZNcjs = require('../__chunks/TTMCZ7ZN.cjs');
12
12
  require('../__chunks/DAJUUBUI.cjs');
13
13
  require('../__chunks/R5A2WTWB.cjs');
14
14
  require('../__chunks/RV3PHHWM.cjs');
@@ -69,7 +69,7 @@ var useCompositeOverflowDisclosure = _RNZNGEL4cjs.createHook.call(void 0, (_a) =
69
69
  onFocus,
70
70
  onBlur
71
71
  });
72
- props = _PFQ3IPWTcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), { shouldRegisterItem }));
72
+ props = _TTMCZ7ZNcjs.useCompositeItem.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), { shouldRegisterItem }));
73
73
  props = _LICANQTIcjs.usePopoverDisclosure.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store }, props));
74
74
  return props;
75
75
  });
@@ -1,8 +1,8 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _WABPFCL3cjs = require('../__chunks/WABPFCL3.cjs');
5
- require('../__chunks/OT6DC3ML.cjs');
4
+ var _NVHGMKAEcjs = require('../__chunks/NVHGMKAE.cjs');
5
+ require('../__chunks/36QK2QLE.cjs');
6
6
  require('../__chunks/RTT4XR27.cjs');
7
7
  require('../__chunks/NKR65BKC.cjs');
8
8
  require('../__chunks/PZL34OVO.cjs');
@@ -19,7 +19,7 @@ require('../__chunks/5GTNIPQ6.cjs');
19
19
  require('../__chunks/V24PR4PW.cjs');
20
20
  require('../__chunks/7566TIRW.cjs');
21
21
  require('../__chunks/J3OG6T3B.cjs');
22
- require('../__chunks/S6WUBPBB.cjs');
22
+ require('../__chunks/65LGW5LY.cjs');
23
23
  require('../__chunks/XB3G2EO2.cjs');
24
24
  require('../__chunks/CVD2AZE2.cjs');
25
25
  require('../__chunks/2BIO7R5N.cjs');
@@ -91,7 +91,7 @@ var useCompositeOverflow = _RNZNGEL4cjs.createHook.call(void 0,
91
91
  }, props), {
92
92
  onFocus
93
93
  });
94
- props = _WABPFCL3cjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
94
+ props = _NVHGMKAEcjs.usePopover.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
95
95
  store,
96
96
  backdropProps,
97
97
  wrapperProps,
@@ -30,7 +30,6 @@ export declare function useCompositeRenderer<T extends Item = any>({ store, orie
30
30
  id?: string | undefined;
31
31
  lang?: string | undefined;
32
32
  nonce?: string | undefined;
33
- placeholder?: string | undefined;
34
33
  slot?: string | undefined;
35
34
  spellCheck?: (boolean | "false" | "true") | undefined;
36
35
  style?: import("react").CSSProperties | undefined;
@@ -30,7 +30,6 @@ export declare function useCompositeRenderer<T extends Item = any>({ store, orie
30
30
  id?: string | undefined;
31
31
  lang?: string | undefined;
32
32
  nonce?: string | undefined;
33
- placeholder?: string | undefined;
34
33
  slot?: string | undefined;
35
34
  spellCheck?: (boolean | "false" | "true") | undefined;
36
35
  style?: import("react").CSSProperties | undefined;
@@ -3,7 +3,7 @@
3
3
 
4
4
 
5
5
 
6
- var _OT6DC3MLcjs = require('../__chunks/OT6DC3ML.cjs');
6
+ var _36QK2QLEcjs = require('../__chunks/36QK2QLE.cjs');
7
7
  require('../__chunks/RTT4XR27.cjs');
8
8
  require('../__chunks/NKR65BKC.cjs');
9
9
  require('../__chunks/PZL34OVO.cjs');
@@ -20,7 +20,7 @@ require('../__chunks/5GTNIPQ6.cjs');
20
20
  require('../__chunks/V24PR4PW.cjs');
21
21
  require('../__chunks/7566TIRW.cjs');
22
22
  require('../__chunks/J3OG6T3B.cjs');
23
- require('../__chunks/S6WUBPBB.cjs');
23
+ require('../__chunks/65LGW5LY.cjs');
24
24
  require('../__chunks/XB3G2EO2.cjs');
25
25
  require('../__chunks/CVD2AZE2.cjs');
26
26
  require('../__chunks/2BIO7R5N.cjs');
@@ -42,4 +42,4 @@ require('../__chunks/AV6KTKLE.cjs');
42
42
 
43
43
 
44
44
 
45
- exports.Dialog = _OT6DC3MLcjs.Dialog; exports.createDialogComponent = _OT6DC3MLcjs.createDialogComponent; exports.useDialog = _OT6DC3MLcjs.useDialog;
45
+ exports.Dialog = _36QK2QLEcjs.Dialog; exports.createDialogComponent = _36QK2QLEcjs.createDialogComponent; exports.useDialog = _36QK2QLEcjs.useDialog;
@@ -7,9 +7,9 @@ var _VCDQISP7cjs = require('../__chunks/VCDQISP7.cjs');
7
7
  var _FROYTN4Bcjs = require('../__chunks/FROYTN4B.cjs');
8
8
 
9
9
 
10
- var _HHZJ6KYWcjs = require('../__chunks/HHZJ6KYW.cjs');
10
+ var _PHZJAGWKcjs = require('../__chunks/PHZJAGWK.cjs');
11
11
  require('../__chunks/HEEQY4DZ.cjs');
12
- require('../__chunks/PFQ3IPWT.cjs');
12
+ require('../__chunks/TTMCZ7ZN.cjs');
13
13
  require('../__chunks/DAJUUBUI.cjs');
14
14
  require('../__chunks/R5A2WTWB.cjs');
15
15
  require('../__chunks/RV3PHHWM.cjs');
@@ -60,7 +60,7 @@ var useFormRadio = _RNZNGEL4cjs.createHook.call(void 0,
60
60
  checked,
61
61
  onChange
62
62
  });
63
- props = _HHZJ6KYWcjs.useRadio.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { value }, props));
63
+ props = _PHZJAGWKcjs.useRadio.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { value }, props));
64
64
  props = _VCDQISP7cjs.useFormField.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
65
65
  store,
66
66
  name,
@@ -2,10 +2,10 @@
2
2
 
3
3
 
4
4
 
5
- var _WK7AZPHScjs = require('../__chunks/WK7AZPHS.cjs');
5
+ var _2GETDAIQcjs = require('../__chunks/2GETDAIQ.cjs');
6
6
  require('../__chunks/KXQOQQ5B.cjs');
7
- require('../__chunks/WABPFCL3.cjs');
8
- require('../__chunks/OT6DC3ML.cjs');
7
+ require('../__chunks/NVHGMKAE.cjs');
8
+ require('../__chunks/36QK2QLE.cjs');
9
9
  require('../__chunks/RTT4XR27.cjs');
10
10
  require('../__chunks/NKR65BKC.cjs');
11
11
  require('../__chunks/PZL34OVO.cjs');
@@ -22,7 +22,7 @@ require('../__chunks/5GTNIPQ6.cjs');
22
22
  require('../__chunks/V24PR4PW.cjs');
23
23
  require('../__chunks/7566TIRW.cjs');
24
24
  require('../__chunks/J3OG6T3B.cjs');
25
- require('../__chunks/S6WUBPBB.cjs');
25
+ require('../__chunks/65LGW5LY.cjs');
26
26
  require('../__chunks/XB3G2EO2.cjs');
27
27
  require('../__chunks/CVD2AZE2.cjs');
28
28
  require('../__chunks/2BIO7R5N.cjs');
@@ -45,4 +45,4 @@ require('../__chunks/AV6KTKLE.cjs');
45
45
 
46
46
 
47
47
 
48
- exports.Hovercard = _WK7AZPHScjs.Hovercard; exports.useHovercard = _WK7AZPHScjs.useHovercard;
48
+ exports.Hovercard = _2GETDAIQcjs.Hovercard; exports.useHovercard = _2GETDAIQcjs.useHovercard;
@@ -8,14 +8,14 @@ require('../__chunks/63UPRTFZ.cjs');
8
8
  var _VSDH37LIcjs = require('../__chunks/VSDH37LI.cjs');
9
9
 
10
10
 
11
- var _VIETWH5Ccjs = require('../__chunks/VIETWH5C.cjs');
11
+ var _DHSZ2ZFJcjs = require('../__chunks/DHSZ2ZFJ.cjs');
12
12
 
13
13
 
14
14
  var _NGEKJJDHcjs = require('../__chunks/NGEKJJDH.cjs');
15
15
  require('../__chunks/7LBZXSLY.cjs');
16
16
  require('../__chunks/IPYAEPOT.cjs');
17
17
  require('../__chunks/ERFHNHON.cjs');
18
- require('../__chunks/PFQ3IPWT.cjs');
18
+ require('../__chunks/TTMCZ7ZN.cjs');
19
19
  require('../__chunks/DAJUUBUI.cjs');
20
20
  require('../__chunks/R5A2WTWB.cjs');
21
21
  require('../__chunks/RV3PHHWM.cjs');
@@ -136,7 +136,7 @@ var useMenuItemCheckbox = _RNZNGEL4cjs.createHook.call(void 0,
136
136
  value,
137
137
  checked
138
138
  }, props));
139
- props = _VIETWH5Ccjs.useMenuItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, hideOnClick }, props));
139
+ props = _DHSZ2ZFJcjs.useMenuItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, hideOnClick }, props));
140
140
  return props;
141
141
  }
142
142
  );
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _VIETWH5Ccjs = require('../__chunks/VIETWH5C.cjs');
4
+ var _DHSZ2ZFJcjs = require('../__chunks/DHSZ2ZFJ.cjs');
5
5
 
6
6
 
7
7
 
@@ -9,10 +9,10 @@ var _NGEKJJDHcjs = require('../__chunks/NGEKJJDH.cjs');
9
9
  require('../__chunks/7LBZXSLY.cjs');
10
10
 
11
11
 
12
- var _HHZJ6KYWcjs = require('../__chunks/HHZJ6KYW.cjs');
12
+ var _PHZJAGWKcjs = require('../__chunks/PHZJAGWK.cjs');
13
13
  require('../__chunks/HEEQY4DZ.cjs');
14
14
  require('../__chunks/IPYAEPOT.cjs');
15
- require('../__chunks/PFQ3IPWT.cjs');
15
+ require('../__chunks/TTMCZ7ZN.cjs');
16
16
  require('../__chunks/DAJUUBUI.cjs');
17
17
  require('../__chunks/R5A2WTWB.cjs');
18
18
  require('../__chunks/RV3PHHWM.cjs');
@@ -96,7 +96,7 @@ var useMenuItemRadio = _RNZNGEL4cjs.createHook.call(void 0,
96
96
  props = _AV6KTKLEcjs.__spreadValues.call(void 0, {
97
97
  role: "menuitemradio"
98
98
  }, props);
99
- props = _HHZJ6KYWcjs.useRadio.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
99
+ props = _PHZJAGWKcjs.useRadio.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
100
100
  name,
101
101
  value,
102
102
  checked: isChecked,
@@ -110,7 +110,7 @@ var useMenuItemRadio = _RNZNGEL4cjs.createHook.call(void 0,
110
110
  });
111
111
  }
112
112
  }, props));
113
- props = _VIETWH5Ccjs.useMenuItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, hideOnClick }, props));
113
+ props = _DHSZ2ZFJcjs.useMenuItem.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, { store, hideOnClick }, props));
114
114
  return props;
115
115
  }
116
116
  );
@@ -2,11 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- var _VIETWH5Ccjs = require('../__chunks/VIETWH5C.cjs');
5
+ var _DHSZ2ZFJcjs = require('../__chunks/DHSZ2ZFJ.cjs');
6
6
  require('../__chunks/NGEKJJDH.cjs');
7
7
  require('../__chunks/7LBZXSLY.cjs');
8
8
  require('../__chunks/IPYAEPOT.cjs');
9
- require('../__chunks/PFQ3IPWT.cjs');
9
+ require('../__chunks/TTMCZ7ZN.cjs');
10
10
  require('../__chunks/DAJUUBUI.cjs');
11
11
  require('../__chunks/R5A2WTWB.cjs');
12
12
  require('../__chunks/RV3PHHWM.cjs');
@@ -26,4 +26,4 @@ require('../__chunks/AV6KTKLE.cjs');
26
26
 
27
27
 
28
28
 
29
- exports.MenuItem = _VIETWH5Ccjs.MenuItem; exports.useMenuItem = _VIETWH5Ccjs.useMenuItem;
29
+ exports.MenuItem = _DHSZ2ZFJcjs.MenuItem; exports.useMenuItem = _DHSZ2ZFJcjs.useMenuItem;
package/cjs/menu/menu.cjs CHANGED
@@ -13,12 +13,12 @@ require('../__chunks/UZNYSPKP.cjs');
13
13
  require('../__chunks/BZTDJIVT.cjs');
14
14
 
15
15
 
16
- var _WK7AZPHScjs = require('../__chunks/WK7AZPHS.cjs');
16
+ var _2GETDAIQcjs = require('../__chunks/2GETDAIQ.cjs');
17
17
  require('../__chunks/KXQOQQ5B.cjs');
18
- require('../__chunks/WABPFCL3.cjs');
18
+ require('../__chunks/NVHGMKAE.cjs');
19
19
 
20
20
 
21
- var _OT6DC3MLcjs = require('../__chunks/OT6DC3ML.cjs');
21
+ var _36QK2QLEcjs = require('../__chunks/36QK2QLE.cjs');
22
22
  require('../__chunks/RTT4XR27.cjs');
23
23
  require('../__chunks/NKR65BKC.cjs');
24
24
  require('../__chunks/PZL34OVO.cjs');
@@ -35,7 +35,7 @@ require('../__chunks/5GTNIPQ6.cjs');
35
35
  require('../__chunks/V24PR4PW.cjs');
36
36
  require('../__chunks/7566TIRW.cjs');
37
37
  require('../__chunks/J3OG6T3B.cjs');
38
- require('../__chunks/S6WUBPBB.cjs');
38
+ require('../__chunks/65LGW5LY.cjs');
39
39
  require('../__chunks/XB3G2EO2.cjs');
40
40
  require('../__chunks/CVD2AZE2.cjs');
41
41
  require('../__chunks/2BIO7R5N.cjs');
@@ -55,7 +55,9 @@ require('../__chunks/R66IWXK6.cjs');
55
55
  var _RNZNGEL4cjs = require('../__chunks/RNZNGEL4.cjs');
56
56
  require('../__chunks/HRKRTCJC.cjs');
57
57
  require('../__chunks/EGAIDKB5.cjs');
58
- require('../__chunks/B233QVZE.cjs');
58
+
59
+
60
+ var _B233QVZEcjs = require('../__chunks/B233QVZE.cjs');
59
61
 
60
62
 
61
63
  var _EO6LS72Hcjs = require('../__chunks/EO6LS72H.cjs');
@@ -143,7 +145,32 @@ var useMenu = _RNZNGEL4cjs.createHook.call(void 0,
143
145
  const modal = hasParentMenu ? false : modalProp;
144
146
  const mayAutoFocusOnShow = !!autoFocusOnShow;
145
147
  const canAutoFocusOnShow = !!initialFocusRef || !!props.initialFocus || !!modal;
146
- props = _WK7AZPHScjs.useHovercard.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
148
+ const contentElement = _B233QVZEcjs.useStoreState.call(void 0,
149
+ store.combobox || store,
150
+ "contentElement"
151
+ );
152
+ const parentContentElement = _B233QVZEcjs.useStoreState.call(void 0,
153
+ (parentMenu == null ? void 0 : parentMenu.combobox) || parentMenu,
154
+ "contentElement"
155
+ );
156
+ const preserveTabOrderAnchor = _react.useMemo.call(void 0, () => {
157
+ if (!parentContentElement)
158
+ return;
159
+ if (!contentElement)
160
+ return;
161
+ const role = contentElement.getAttribute("role");
162
+ const parentRole = parentContentElement.getAttribute("role");
163
+ const parentIsMenuOrMenubar = parentRole === "menu" || parentRole === "menubar";
164
+ if (parentIsMenuOrMenubar && role === "menu")
165
+ return;
166
+ return parentContentElement;
167
+ }, [contentElement, parentContentElement]);
168
+ if (preserveTabOrderAnchor !== void 0) {
169
+ props = _AV6KTKLEcjs.__spreadValues.call(void 0, {
170
+ preserveTabOrderAnchor
171
+ }, props);
172
+ }
173
+ props = _2GETDAIQcjs.useHovercard.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {
147
174
  store,
148
175
  alwaysVisible,
149
176
  initialFocus: initialFocusRef,
@@ -156,9 +183,7 @@ var useMenu = _RNZNGEL4cjs.createHook.call(void 0,
156
183
  return true;
157
184
  },
158
185
  hideOnHoverOutside: (event) => {
159
- if (!store)
160
- return true;
161
- const { disclosureElement, activeId } = store.getState();
186
+ const disclosureElement = store == null ? void 0 : store.getState().disclosureElement;
162
187
  const getHideOnHoverOutside = () => {
163
188
  if (typeof hideOnHoverOutside === "function") {
164
189
  return hideOnHoverOutside(event);
@@ -186,8 +211,11 @@ var useMenu = _RNZNGEL4cjs.createHook.call(void 0,
186
211
  _events.fireEvent.call(void 0, disclosureElement, "mouseout", event);
187
212
  if (!_focus.hasFocusWithin.call(void 0, disclosureElement))
188
213
  return true;
189
- if (disclosureElement.id !== activeId)
190
- return true;
214
+ requestAnimationFrame(() => {
215
+ if (_focus.hasFocusWithin.call(void 0, disclosureElement))
216
+ return;
217
+ store == null ? void 0 : store.hide();
218
+ });
191
219
  return false;
192
220
  },
193
221
  modal,
@@ -200,7 +228,7 @@ var useMenu = _RNZNGEL4cjs.createHook.call(void 0,
200
228
  return props;
201
229
  }
202
230
  );
203
- var Menu = _OT6DC3MLcjs.createDialogComponent.call(void 0,
231
+ var Menu = _36QK2QLEcjs.createDialogComponent.call(void 0,
204
232
  _RNZNGEL4cjs.createComponent.call(void 0, (props) => {
205
233
  const htmlProps = useMenu(props);
206
234
  return _RNZNGEL4cjs.createElement.call(void 0, "div", htmlProps);