@ariakit/react-core 0.3.1 → 0.3.3

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 (485) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/cjs/__chunks/{ZPTFLDSU.cjs → 2FBFVNEX.cjs} +7 -7
  3. package/cjs/__chunks/{OX7M6AXH.cjs → 2U6ETSVZ.cjs} +2 -2
  4. package/cjs/__chunks/{7F6H5HXC.cjs → 32BSJR36.cjs} +2 -2
  5. package/cjs/__chunks/{BPMML63M.cjs → 3MYGLY4O.cjs} +4 -4
  6. package/cjs/__chunks/{J63NAJOO.cjs → 45OYD4CU.cjs} +4 -4
  7. package/cjs/__chunks/{BPPAZUXP.cjs → 4WUYORFX.cjs} +2 -2
  8. package/cjs/__chunks/{4HKELPDA.cjs → 64S5KX7F.cjs} +6 -6
  9. package/cjs/__chunks/{EQEXTQQ6.cjs → 6G334OGZ.cjs} +5 -5
  10. package/cjs/__chunks/{V37GXOUJ.cjs → BMAPXRQV.cjs} +4 -4
  11. package/cjs/__chunks/{HYYXXXEK.cjs → BSOHJE7R.cjs} +2 -2
  12. package/cjs/__chunks/{INDMFBTS.cjs → COHI5HTS.cjs} +17 -16
  13. package/cjs/__chunks/{G33PRHOG.cjs → D3SPQ2OY.cjs} +10 -10
  14. package/cjs/__chunks/{DPLHWKRP.cjs → DFFFHQVQ.cjs} +3 -3
  15. package/cjs/__chunks/{NBCR3CLP.cjs → F4RJLWZG.cjs} +3 -3
  16. package/cjs/__chunks/{NPDPNCSD.cjs → FXRXBA2Y.cjs} +2 -2
  17. package/cjs/__chunks/{2C7LUQOS.cjs → G2U3D7Y6.cjs} +2 -2
  18. package/cjs/__chunks/{GBOZYA5C.cjs → H562FOJ4.cjs} +4 -4
  19. package/cjs/__chunks/{X3UARAKT.cjs → HADU3YYR.cjs} +2 -2
  20. package/cjs/__chunks/{C47ZNHA6.cjs → HIGZ476M.cjs} +7 -7
  21. package/cjs/__chunks/{6MLKTO2T.cjs → HRUFFILM.cjs} +7 -7
  22. package/cjs/__chunks/{2VQBXUAI.cjs → IK6X277S.cjs} +2 -2
  23. package/cjs/__chunks/{OAQQQ7LS.cjs → J72SOT4S.cjs} +8 -7
  24. package/cjs/__chunks/{FWCQCCG3.cjs → JDIVO6OK.cjs} +12 -12
  25. package/cjs/__chunks/{U33H4JTD.cjs → JQKZHT3K.cjs} +6 -6
  26. package/cjs/__chunks/{GCTYF2Y6.cjs → K5M7LOPE.cjs} +3 -3
  27. package/cjs/__chunks/{ZQTMT453.cjs → KMOIJMBF.cjs} +2 -2
  28. package/cjs/__chunks/{ZJ4ICN62.cjs → L4TB7MRW.cjs} +4 -4
  29. package/cjs/__chunks/{B4KDFSF3.cjs → LQZ6USCZ.cjs} +2 -2
  30. package/cjs/__chunks/{SL7OXEFQ.cjs → MITXZOVW.cjs} +8 -8
  31. package/cjs/__chunks/{B3TGB2C3.cjs → NPP6EMNE.cjs} +7 -7
  32. package/cjs/__chunks/{SKVJLFWS.cjs → O7UGQ5NR.cjs} +7 -7
  33. package/cjs/__chunks/{HDYD5S2P.cjs → ORDLD4QX.cjs} +3 -3
  34. package/cjs/__chunks/{ZEASCR4B.cjs → PQU457XU.cjs} +49 -23
  35. package/cjs/__chunks/{JKMBJCXA.cjs → QK4GI6B3.cjs} +7 -12
  36. package/cjs/__chunks/{WRVKUV4V.cjs → RSJXW4HU.cjs} +7 -7
  37. package/cjs/__chunks/{6BAHKJ5K.cjs → RWS2MAR2.cjs} +0 -7
  38. package/cjs/__chunks/{JNVNPB37.cjs → RXP7Z4XR.cjs} +2 -2
  39. package/cjs/__chunks/{6G5GJF5Q.cjs → SELCJFCB.cjs} +2 -2
  40. package/cjs/__chunks/TLA46MN6.cjs +79 -0
  41. package/cjs/__chunks/{I63PYP2U.cjs → UHRHLHM2.cjs} +4 -3
  42. package/cjs/__chunks/{LCKU3TYW.cjs → VI6T32XI.cjs} +12 -2
  43. package/cjs/__chunks/{PHDU6PLM.cjs → WUQKDMC4.cjs} +2 -2
  44. package/cjs/__chunks/{J77SNKFZ.cjs → Y66YQJ4L.cjs} +4 -4
  45. package/cjs/__chunks/{P2EILHN6.cjs → Z6EBOLR5.cjs} +5 -5
  46. package/cjs/__chunks/{27A4YAUB.cjs → ZA36X7UQ.cjs} +4 -4
  47. package/cjs/__chunks/{DNFCOHE4.cjs → ZKEGT5BQ.cjs} +2 -2
  48. package/cjs/__chunks/{2FEEKOTF.cjs → ZL7HIJU2.cjs} +2 -2
  49. package/cjs/__chunks/{S4UMINQJ.cjs → ZZHSM37C.cjs} +2 -2
  50. package/cjs/button/button.cjs +4 -4
  51. package/cjs/checkbox/checkbox-provider.cjs +3 -3
  52. package/cjs/checkbox/checkbox-store.cjs +3 -3
  53. package/cjs/checkbox/checkbox.cjs +5 -5
  54. package/cjs/checkbox/checkbox.d.ts +12 -9
  55. package/cjs/collection/collection-provider.cjs +3 -3
  56. package/cjs/collection/collection-renderer.cjs +3 -3
  57. package/cjs/collection/collection-store.cjs +3 -3
  58. package/cjs/collection/collection.d.ts +5 -1
  59. package/cjs/combobox/combobox-cancel.cjs +4 -4
  60. package/cjs/combobox/combobox-cancel.d.ts +14 -9
  61. package/cjs/combobox/combobox-disclosure.cjs +6 -6
  62. package/cjs/combobox/combobox-disclosure.d.ts +14 -9
  63. package/cjs/combobox/combobox-group-label.d.ts +16 -11
  64. package/cjs/combobox/combobox-group.d.ts +16 -11
  65. package/cjs/combobox/combobox-item-value.d.ts +14 -10
  66. package/cjs/combobox/combobox-item.cjs +5 -5
  67. package/cjs/combobox/combobox-item.d.ts +45 -20
  68. package/cjs/combobox/combobox-list.cjs +3 -3
  69. package/cjs/combobox/combobox-list.d.ts +17 -10
  70. package/cjs/combobox/combobox-popover.cjs +15 -15
  71. package/cjs/combobox/combobox-popover.d.ts +8 -7
  72. package/cjs/combobox/combobox-provider.cjs +8 -8
  73. package/cjs/combobox/combobox-row.d.ts +21 -16
  74. package/cjs/combobox/combobox-separator.d.ts +15 -10
  75. package/cjs/combobox/combobox-store.cjs +8 -8
  76. package/cjs/combobox/combobox-store.d.ts +9 -4
  77. package/cjs/combobox/combobox.cjs +3 -3
  78. package/cjs/combobox/combobox.d.ts +55 -36
  79. package/cjs/command/command.cjs +3 -3
  80. package/cjs/composite/composite-container.cjs +3 -3
  81. package/cjs/composite/composite-item.cjs +5 -5
  82. package/cjs/composite/composite-overflow-disclosure.cjs +10 -10
  83. package/cjs/composite/composite-overflow-store.cjs +6 -6
  84. package/cjs/composite/composite-overflow.cjs +13 -13
  85. package/cjs/composite/composite-provider.cjs +4 -4
  86. package/cjs/composite/composite-renderer.cjs +4 -4
  87. package/cjs/composite/composite-store.cjs +4 -4
  88. package/cjs/composite/composite-typeahead.d.ts +0 -4
  89. package/cjs/composite/composite.cjs +3 -3
  90. package/cjs/dialog/dialog-backdrop.cjs +6 -6
  91. package/cjs/dialog/dialog-disclosure.cjs +6 -6
  92. package/cjs/dialog/dialog-dismiss.cjs +5 -5
  93. package/cjs/dialog/dialog-provider.cjs +4 -4
  94. package/cjs/dialog/dialog-store.cjs +4 -4
  95. package/cjs/dialog/dialog.cjs +12 -12
  96. package/cjs/dialog/dialog.d.ts +25 -11
  97. package/cjs/dialog/utils/disable-accessibility-tree-outside.cjs +3 -3
  98. package/cjs/dialog/utils/disable-accessibility-tree-outside.d.ts +1 -1
  99. package/cjs/dialog/utils/disable-tree.cjs +14 -0
  100. package/cjs/dialog/utils/disable-tree.d.ts +5 -0
  101. package/cjs/dialog/utils/mark-tree-outside.cjs +3 -3
  102. package/cjs/dialog/utils/mark-tree-outside.d.ts +1 -1
  103. package/cjs/dialog/utils/use-hide-on-interact-outside.cjs +4 -4
  104. package/cjs/dialog/utils/use-nested-dialogs.cjs +2 -2
  105. package/cjs/dialog/utils/walk-tree-outside.cjs +5 -2
  106. package/cjs/dialog/utils/walk-tree-outside.d.ts +3 -2
  107. package/cjs/disclosure/disclosure-content.d.ts +9 -4
  108. package/cjs/disclosure/disclosure-provider.cjs +3 -3
  109. package/cjs/disclosure/disclosure-store.cjs +3 -3
  110. package/cjs/disclosure/disclosure-store.d.ts +1 -2
  111. package/cjs/disclosure/disclosure.cjs +5 -5
  112. package/cjs/disclosure/disclosure.d.ts +13 -6
  113. package/cjs/focusable/focusable.cjs +2 -2
  114. package/cjs/form/form-checkbox.cjs +7 -7
  115. package/cjs/form/form-checkbox.d.ts +5 -1
  116. package/cjs/form/form-description.d.ts +10 -3
  117. package/cjs/form/form-error.d.ts +10 -3
  118. package/cjs/form/form-field.d.ts +17 -9
  119. package/cjs/form/form-group-label.d.ts +7 -4
  120. package/cjs/form/form-group.d.ts +5 -2
  121. package/cjs/form/form-input.cjs +2 -2
  122. package/cjs/form/form-input.d.ts +9 -4
  123. package/cjs/form/form-label.d.ts +10 -3
  124. package/cjs/form/form-provider.cjs +4 -4
  125. package/cjs/form/form-push.cjs +4 -4
  126. package/cjs/form/form-push.d.ts +5 -2
  127. package/cjs/form/form-radio-group.d.ts +5 -1
  128. package/cjs/form/form-radio.cjs +6 -6
  129. package/cjs/form/form-radio.d.ts +5 -1
  130. package/cjs/form/form-remove.cjs +4 -4
  131. package/cjs/form/form-remove.d.ts +5 -2
  132. package/cjs/form/form-reset.cjs +4 -4
  133. package/cjs/form/form-reset.d.ts +6 -2
  134. package/cjs/form/form-store.cjs +4 -4
  135. package/cjs/form/form-store.d.ts +5 -1
  136. package/cjs/form/form-submit.cjs +4 -4
  137. package/cjs/form/form-submit.d.ts +5 -2
  138. package/cjs/form/form.d.ts +5 -1
  139. package/cjs/hovercard/hovercard-anchor.cjs +3 -3
  140. package/cjs/hovercard/hovercard-anchor.d.ts +11 -5
  141. package/cjs/hovercard/hovercard-arrow.d.ts +13 -8
  142. package/cjs/hovercard/hovercard-description.d.ts +14 -9
  143. package/cjs/hovercard/hovercard-disclosure.cjs +6 -6
  144. package/cjs/hovercard/hovercard-disclosure.d.ts +14 -8
  145. package/cjs/hovercard/hovercard-dismiss.cjs +7 -7
  146. package/cjs/hovercard/hovercard-dismiss.d.ts +11 -6
  147. package/cjs/hovercard/hovercard-heading.d.ts +14 -9
  148. package/cjs/hovercard/hovercard-provider.cjs +6 -6
  149. package/cjs/hovercard/hovercard-store.cjs +6 -6
  150. package/cjs/hovercard/hovercard-store.d.ts +1 -0
  151. package/cjs/hovercard/hovercard.cjs +14 -14
  152. package/cjs/hovercard/hovercard.d.ts +11 -5
  153. package/cjs/menu/menu-arrow.d.ts +11 -7
  154. package/cjs/menu/menu-bar-provider.cjs +5 -5
  155. package/cjs/menu/menu-bar-store.cjs +5 -5
  156. package/cjs/menu/menu-bar.cjs +3 -3
  157. package/cjs/menu/menu-bar.d.ts +23 -22
  158. package/cjs/menu/menu-button-arrow.d.ts +16 -11
  159. package/cjs/menu/menu-button.cjs +14 -12
  160. package/cjs/menu/menu-button.d.ts +19 -11
  161. package/cjs/menu/menu-description.d.ts +13 -8
  162. package/cjs/menu/menu-dismiss.cjs +7 -7
  163. package/cjs/menu/menu-dismiss.d.ts +10 -6
  164. package/cjs/menu/menu-group-label.d.ts +15 -10
  165. package/cjs/menu/menu-group.d.ts +15 -10
  166. package/cjs/menu/menu-heading.d.ts +10 -6
  167. package/cjs/menu/menu-item-check.d.ts +15 -15
  168. package/cjs/menu/menu-item-checkbox.cjs +10 -10
  169. package/cjs/menu/menu-item-checkbox.d.ts +13 -8
  170. package/cjs/menu/menu-item-radio.cjs +8 -8
  171. package/cjs/menu/menu-item-radio.d.ts +18 -13
  172. package/cjs/menu/menu-item.cjs +6 -6
  173. package/cjs/menu/menu-item.d.ts +16 -9
  174. package/cjs/menu/menu-list.cjs +5 -5
  175. package/cjs/menu/menu-list.d.ts +12 -7
  176. package/cjs/menu/menu-provider.cjs +9 -9
  177. package/cjs/menu/menu-separator.d.ts +14 -10
  178. package/cjs/menu/menu-store.cjs +9 -9
  179. package/cjs/menu/menu-store.d.ts +15 -15
  180. package/cjs/menu/menu.cjs +34 -46
  181. package/cjs/menu/menu.d.ts +7 -6
  182. package/cjs/popover/popover-anchor.d.ts +9 -4
  183. package/cjs/popover/popover-arrow.d.ts +14 -8
  184. package/cjs/popover/popover-description.d.ts +13 -8
  185. package/cjs/popover/popover-disclosure-arrow.d.ts +18 -10
  186. package/cjs/popover/popover-disclosure.cjs +7 -7
  187. package/cjs/popover/popover-disclosure.d.ts +4 -3
  188. package/cjs/popover/popover-dismiss.cjs +6 -6
  189. package/cjs/popover/popover-dismiss.d.ts +13 -7
  190. package/cjs/popover/popover-heading.d.ts +14 -8
  191. package/cjs/popover/popover-provider.cjs +5 -5
  192. package/cjs/popover/popover-store.cjs +5 -5
  193. package/cjs/popover/popover.cjs +13 -13
  194. package/cjs/popover/popover.d.ts +13 -9
  195. package/cjs/portal/portal.d.ts +17 -6
  196. package/cjs/radio/radio-group.cjs +3 -3
  197. package/cjs/radio/radio-group.d.ts +5 -1
  198. package/cjs/radio/radio-provider.cjs +5 -5
  199. package/cjs/radio/radio-store.cjs +5 -5
  200. package/cjs/radio/radio-store.d.ts +0 -5
  201. package/cjs/radio/radio.cjs +6 -6
  202. package/cjs/radio/radio.d.ts +6 -2
  203. package/cjs/select/select-arrow.d.ts +17 -12
  204. package/cjs/select/select-group-label.d.ts +21 -16
  205. package/cjs/select/select-group.d.ts +16 -11
  206. package/cjs/select/select-item-check.d.ts +22 -16
  207. package/cjs/select/select-item.cjs +5 -5
  208. package/cjs/select/select-item.d.ts +51 -24
  209. package/cjs/select/select-label.d.ts +18 -14
  210. package/cjs/select/select-list.cjs +4 -4
  211. package/cjs/select/select-list.d.ts +26 -16
  212. package/cjs/select/select-popover.cjs +16 -16
  213. package/cjs/select/select-popover.d.ts +11 -10
  214. package/cjs/select/select-provider.cjs +8 -8
  215. package/cjs/select/select-renderer.cjs +7 -7
  216. package/cjs/select/select-row.d.ts +20 -15
  217. package/cjs/select/select-separator.d.ts +16 -11
  218. package/cjs/select/select-store.cjs +8 -8
  219. package/cjs/select/select-store.d.ts +2 -6
  220. package/cjs/select/select.cjs +7 -7
  221. package/cjs/select/select.d.ts +39 -17
  222. package/cjs/tab/tab-list.cjs +3 -3
  223. package/cjs/tab/tab-panel.cjs +5 -5
  224. package/cjs/tab/tab-provider.cjs +5 -5
  225. package/cjs/tab/tab-store.cjs +5 -5
  226. package/cjs/tab/tab.cjs +5 -5
  227. package/cjs/toolbar/toolbar-container.cjs +8 -8
  228. package/cjs/toolbar/toolbar-input.cjs +6 -6
  229. package/cjs/toolbar/toolbar-item.cjs +6 -6
  230. package/cjs/toolbar/toolbar-provider.cjs +5 -5
  231. package/cjs/toolbar/toolbar-store.cjs +5 -5
  232. package/cjs/toolbar/toolbar.cjs +8 -8
  233. package/cjs/tooltip/tooltip-anchor.cjs +3 -3
  234. package/cjs/tooltip/tooltip-provider.cjs +7 -7
  235. package/cjs/tooltip/tooltip-store.cjs +7 -7
  236. package/cjs/tooltip/tooltip.cjs +14 -14
  237. package/cjs/tsconfig.build.tsbuildinfo +1 -1
  238. package/cjs/utils/store.cjs +2 -2
  239. package/dialog/utils/disable-tree/package.json +8 -0
  240. package/esm/__chunks/{EKIHOHWR.js → 26JVBZKI.js} +2 -2
  241. package/esm/__chunks/{3HFOFZP4.js → 2EIZAZYB.js} +1 -1
  242. package/esm/__chunks/{TQ2YQL6O.js → 3HY5ZQT3.js} +11 -1
  243. package/esm/__chunks/{FBTQUSIH.js → 3T4UFIWO.js} +2 -2
  244. package/esm/__chunks/{XXO3VVQU.js → 4LP74VAP.js} +4 -3
  245. package/esm/__chunks/{IZ6ZARCP.js → 4LQJSTB3.js} +1 -1
  246. package/esm/__chunks/{YJPXO6F5.js → 4VQSZLZX.js} +1 -1
  247. package/esm/__chunks/{72OJKUSZ.js → 54J7EHCU.js} +2 -2
  248. package/esm/__chunks/{HYNMOU7J.js → 56TAEBRJ.js} +1 -1
  249. package/esm/__chunks/{AYWP3ZW6.js → 5QIDAYL3.js} +1 -1
  250. package/esm/__chunks/{HJHTMRDC.js → 727IWAR7.js} +2 -2
  251. package/esm/__chunks/{HAVCR65N.js → 7LB47D2O.js} +1 -1
  252. package/esm/__chunks/{X5VV5CBA.js → 7VWXICM7.js} +3 -3
  253. package/esm/__chunks/{E6GADH6Y.js → BWOZSOC7.js} +3 -3
  254. package/esm/__chunks/{NWDF5QDV.js → C6MBVGZ2.js} +1 -1
  255. package/esm/__chunks/{R3N4R7UZ.js → CSCFKBRS.js} +3 -3
  256. package/esm/__chunks/{QPWEKAWF.js → D2BRO4YW.js} +1 -1
  257. package/esm/__chunks/{KZMKUBQH.js → D6CHFQY5.js} +1 -1
  258. package/esm/__chunks/{VDTDCNMP.js → DA5VDN5G.js} +2 -2
  259. package/esm/__chunks/{VPTWELSR.js → DHSMOVCA.js} +2 -2
  260. package/esm/__chunks/{HCTAKPNS.js → DJUMA466.js} +2 -2
  261. package/esm/__chunks/{XEZV3AK4.js → DO6GQUCF.js} +2 -2
  262. package/esm/__chunks/{QJMIKN5O.js → DX7BNVVX.js} +1 -1
  263. package/esm/__chunks/{XASENZA4.js → EGOOWJGN.js} +16 -15
  264. package/esm/__chunks/{WGAKICTY.js → EZ23JQKA.js} +2 -2
  265. package/esm/__chunks/{KGDYSCOM.js → FRKOFFMT.js} +6 -11
  266. package/esm/__chunks/{HGW6FZYU.js → G4QRTAYK.js} +2 -2
  267. package/esm/__chunks/{D5TF3EQR.js → GD5ZDP5D.js} +1 -1
  268. package/esm/__chunks/{PLOINBVB.js → HWJ7DGMR.js} +0 -7
  269. package/esm/__chunks/{NRLOAE2I.js → IAA7Y45N.js} +2 -2
  270. package/esm/__chunks/{MA5WD4CD.js → JE342XIS.js} +2 -2
  271. package/esm/__chunks/{35WVCYXU.js → KIYX5CLX.js} +2 -2
  272. package/esm/__chunks/{54DCICBS.js → KXTLHNBI.js} +1 -1
  273. package/esm/__chunks/{RVGVDX6B.js → MNVQ65E5.js} +1 -1
  274. package/esm/__chunks/{C5JX5C3O.js → NQQVRTV2.js} +2 -2
  275. package/esm/__chunks/{6LKB3PXM.js → O2VZZF7T.js} +3 -3
  276. package/esm/__chunks/{R4FKKQYI.js → OJDCQDIL.js} +2 -2
  277. package/esm/__chunks/{7AFOF5E7.js → R6PKH666.js} +1 -1
  278. package/esm/__chunks/{MXSIXS3C.js → SUD3LBWB.js} +1 -1
  279. package/esm/__chunks/{4JNX5L5C.js → T5VBGHBO.js} +1 -1
  280. package/esm/__chunks/{RJEKIG5Y.js → TWMREEKC.js} +1 -1
  281. package/esm/__chunks/VRCYQ6JX.js +79 -0
  282. package/esm/__chunks/{HMYMEP6U.js → W5ZMSHVN.js} +1 -1
  283. package/esm/__chunks/{RA2AAYOC.js → X6F6ND2A.js} +4 -3
  284. package/esm/__chunks/{LND6SMHN.js → XBIFFFUN.js} +1 -1
  285. package/esm/__chunks/{4WK6LN27.js → XQCQJGZ3.js} +2 -2
  286. package/esm/__chunks/{CJPLAYFB.js → YGEFENKI.js} +44 -18
  287. package/esm/__chunks/{K6BB6DTS.js → YI522MHJ.js} +2 -2
  288. package/esm/button/button.js +3 -3
  289. package/esm/checkbox/checkbox-provider.js +2 -2
  290. package/esm/checkbox/checkbox-store.js +2 -2
  291. package/esm/checkbox/checkbox.d.ts +12 -9
  292. package/esm/checkbox/checkbox.js +4 -4
  293. package/esm/collection/collection-provider.js +2 -2
  294. package/esm/collection/collection-renderer.js +2 -2
  295. package/esm/collection/collection-store.js +2 -2
  296. package/esm/collection/collection.d.ts +5 -1
  297. package/esm/combobox/combobox-cancel.d.ts +14 -9
  298. package/esm/combobox/combobox-cancel.js +3 -3
  299. package/esm/combobox/combobox-disclosure.d.ts +14 -9
  300. package/esm/combobox/combobox-disclosure.js +5 -5
  301. package/esm/combobox/combobox-group-label.d.ts +16 -11
  302. package/esm/combobox/combobox-group.d.ts +16 -11
  303. package/esm/combobox/combobox-item-value.d.ts +14 -10
  304. package/esm/combobox/combobox-item.d.ts +45 -20
  305. package/esm/combobox/combobox-item.js +4 -4
  306. package/esm/combobox/combobox-list.d.ts +17 -10
  307. package/esm/combobox/combobox-list.js +2 -2
  308. package/esm/combobox/combobox-popover.d.ts +8 -7
  309. package/esm/combobox/combobox-popover.js +13 -13
  310. package/esm/combobox/combobox-provider.js +7 -7
  311. package/esm/combobox/combobox-row.d.ts +21 -16
  312. package/esm/combobox/combobox-separator.d.ts +15 -10
  313. package/esm/combobox/combobox-store.d.ts +9 -4
  314. package/esm/combobox/combobox-store.js +7 -7
  315. package/esm/combobox/combobox.d.ts +55 -36
  316. package/esm/combobox/combobox.js +2 -2
  317. package/esm/command/command.js +2 -2
  318. package/esm/composite/composite-container.js +2 -2
  319. package/esm/composite/composite-item.js +4 -4
  320. package/esm/composite/composite-overflow-disclosure.js +8 -8
  321. package/esm/composite/composite-overflow-store.js +4 -4
  322. package/esm/composite/composite-overflow.js +12 -12
  323. package/esm/composite/composite-provider.js +3 -3
  324. package/esm/composite/composite-renderer.js +3 -3
  325. package/esm/composite/composite-store.js +3 -3
  326. package/esm/composite/composite-typeahead.d.ts +0 -4
  327. package/esm/composite/composite.js +2 -2
  328. package/esm/dialog/dialog-backdrop.js +5 -5
  329. package/esm/dialog/dialog-disclosure.js +5 -5
  330. package/esm/dialog/dialog-dismiss.js +4 -4
  331. package/esm/dialog/dialog-provider.js +3 -3
  332. package/esm/dialog/dialog-store.js +3 -3
  333. package/esm/dialog/dialog.d.ts +25 -11
  334. package/esm/dialog/dialog.js +11 -11
  335. package/esm/dialog/utils/disable-accessibility-tree-outside.d.ts +1 -1
  336. package/esm/dialog/utils/disable-accessibility-tree-outside.js +2 -2
  337. package/esm/dialog/utils/disable-tree.d.ts +5 -0
  338. package/esm/dialog/utils/{disable-tree-outside.js → disable-tree.js} +5 -3
  339. package/esm/dialog/utils/mark-tree-outside.d.ts +1 -1
  340. package/esm/dialog/utils/mark-tree-outside.js +2 -2
  341. package/esm/dialog/utils/use-hide-on-interact-outside.js +3 -3
  342. package/esm/dialog/utils/use-nested-dialogs.js +1 -1
  343. package/esm/dialog/utils/walk-tree-outside.d.ts +3 -2
  344. package/esm/dialog/utils/walk-tree-outside.js +4 -1
  345. package/esm/disclosure/disclosure-content.d.ts +9 -4
  346. package/esm/disclosure/disclosure-provider.js +2 -2
  347. package/esm/disclosure/disclosure-store.d.ts +1 -2
  348. package/esm/disclosure/disclosure-store.js +2 -2
  349. package/esm/disclosure/disclosure.d.ts +13 -6
  350. package/esm/disclosure/disclosure.js +4 -4
  351. package/esm/focusable/focusable.js +1 -1
  352. package/esm/form/form-checkbox.d.ts +5 -1
  353. package/esm/form/form-checkbox.js +5 -5
  354. package/esm/form/form-description.d.ts +10 -3
  355. package/esm/form/form-error.d.ts +10 -3
  356. package/esm/form/form-field.d.ts +17 -9
  357. package/esm/form/form-group-label.d.ts +7 -4
  358. package/esm/form/form-group.d.ts +5 -2
  359. package/esm/form/form-input.d.ts +9 -4
  360. package/esm/form/form-input.js +1 -1
  361. package/esm/form/form-label.d.ts +10 -3
  362. package/esm/form/form-provider.js +3 -3
  363. package/esm/form/form-push.d.ts +5 -2
  364. package/esm/form/form-push.js +3 -3
  365. package/esm/form/form-radio-group.d.ts +5 -1
  366. package/esm/form/form-radio.d.ts +5 -1
  367. package/esm/form/form-radio.js +5 -5
  368. package/esm/form/form-remove.d.ts +5 -2
  369. package/esm/form/form-remove.js +3 -3
  370. package/esm/form/form-reset.d.ts +6 -2
  371. package/esm/form/form-reset.js +3 -3
  372. package/esm/form/form-store.d.ts +5 -1
  373. package/esm/form/form-store.js +3 -3
  374. package/esm/form/form-submit.d.ts +5 -2
  375. package/esm/form/form-submit.js +3 -3
  376. package/esm/form/form.d.ts +5 -1
  377. package/esm/hovercard/hovercard-anchor.d.ts +11 -5
  378. package/esm/hovercard/hovercard-anchor.js +2 -2
  379. package/esm/hovercard/hovercard-arrow.d.ts +13 -8
  380. package/esm/hovercard/hovercard-description.d.ts +14 -9
  381. package/esm/hovercard/hovercard-disclosure.d.ts +14 -8
  382. package/esm/hovercard/hovercard-disclosure.js +5 -5
  383. package/esm/hovercard/hovercard-dismiss.d.ts +11 -6
  384. package/esm/hovercard/hovercard-dismiss.js +6 -6
  385. package/esm/hovercard/hovercard-heading.d.ts +14 -9
  386. package/esm/hovercard/hovercard-provider.js +5 -5
  387. package/esm/hovercard/hovercard-store.d.ts +1 -0
  388. package/esm/hovercard/hovercard-store.js +5 -5
  389. package/esm/hovercard/hovercard.d.ts +11 -5
  390. package/esm/hovercard/hovercard.js +13 -13
  391. package/esm/menu/menu-arrow.d.ts +11 -7
  392. package/esm/menu/menu-bar-provider.js +4 -4
  393. package/esm/menu/menu-bar-store.js +4 -4
  394. package/esm/menu/menu-bar.d.ts +23 -22
  395. package/esm/menu/menu-bar.js +2 -2
  396. package/esm/menu/menu-button-arrow.d.ts +16 -11
  397. package/esm/menu/menu-button.d.ts +19 -11
  398. package/esm/menu/menu-button.js +11 -9
  399. package/esm/menu/menu-description.d.ts +13 -8
  400. package/esm/menu/menu-dismiss.d.ts +10 -6
  401. package/esm/menu/menu-dismiss.js +6 -6
  402. package/esm/menu/menu-group-label.d.ts +15 -10
  403. package/esm/menu/menu-group.d.ts +15 -10
  404. package/esm/menu/menu-heading.d.ts +10 -6
  405. package/esm/menu/menu-item-check.d.ts +15 -15
  406. package/esm/menu/menu-item-checkbox.d.ts +13 -8
  407. package/esm/menu/menu-item-checkbox.js +7 -7
  408. package/esm/menu/menu-item-radio.d.ts +18 -13
  409. package/esm/menu/menu-item-radio.js +6 -6
  410. package/esm/menu/menu-item.d.ts +16 -9
  411. package/esm/menu/menu-item.js +5 -5
  412. package/esm/menu/menu-list.d.ts +12 -7
  413. package/esm/menu/menu-list.js +4 -4
  414. package/esm/menu/menu-provider.js +8 -8
  415. package/esm/menu/menu-separator.d.ts +14 -10
  416. package/esm/menu/menu-store.d.ts +15 -15
  417. package/esm/menu/menu-store.js +8 -8
  418. package/esm/menu/menu.d.ts +7 -6
  419. package/esm/menu/menu.js +33 -45
  420. package/esm/popover/popover-anchor.d.ts +9 -4
  421. package/esm/popover/popover-arrow.d.ts +14 -8
  422. package/esm/popover/popover-description.d.ts +13 -8
  423. package/esm/popover/popover-disclosure-arrow.d.ts +18 -10
  424. package/esm/popover/popover-disclosure.d.ts +4 -3
  425. package/esm/popover/popover-disclosure.js +6 -6
  426. package/esm/popover/popover-dismiss.d.ts +13 -7
  427. package/esm/popover/popover-dismiss.js +5 -5
  428. package/esm/popover/popover-heading.d.ts +14 -8
  429. package/esm/popover/popover-provider.js +4 -4
  430. package/esm/popover/popover-store.js +4 -4
  431. package/esm/popover/popover.d.ts +13 -9
  432. package/esm/popover/popover.js +12 -12
  433. package/esm/portal/portal.d.ts +17 -6
  434. package/esm/radio/radio-group.d.ts +5 -1
  435. package/esm/radio/radio-group.js +2 -2
  436. package/esm/radio/radio-provider.js +4 -4
  437. package/esm/radio/radio-store.d.ts +0 -5
  438. package/esm/radio/radio-store.js +4 -4
  439. package/esm/radio/radio.d.ts +6 -2
  440. package/esm/radio/radio.js +5 -5
  441. package/esm/select/select-arrow.d.ts +17 -12
  442. package/esm/select/select-group-label.d.ts +21 -16
  443. package/esm/select/select-group.d.ts +16 -11
  444. package/esm/select/select-item-check.d.ts +22 -16
  445. package/esm/select/select-item.d.ts +51 -24
  446. package/esm/select/select-item.js +4 -4
  447. package/esm/select/select-label.d.ts +18 -14
  448. package/esm/select/select-list.d.ts +26 -16
  449. package/esm/select/select-list.js +3 -3
  450. package/esm/select/select-popover.d.ts +11 -10
  451. package/esm/select/select-popover.js +14 -14
  452. package/esm/select/select-provider.js +7 -7
  453. package/esm/select/select-renderer.js +3 -3
  454. package/esm/select/select-row.d.ts +20 -15
  455. package/esm/select/select-separator.d.ts +16 -11
  456. package/esm/select/select-store.d.ts +2 -6
  457. package/esm/select/select-store.js +7 -7
  458. package/esm/select/select.d.ts +39 -17
  459. package/esm/select/select.js +6 -6
  460. package/esm/tab/tab-list.js +2 -2
  461. package/esm/tab/tab-panel.js +3 -3
  462. package/esm/tab/tab-provider.js +4 -4
  463. package/esm/tab/tab-store.js +4 -4
  464. package/esm/tab/tab.js +4 -4
  465. package/esm/toolbar/toolbar-container.js +6 -6
  466. package/esm/toolbar/toolbar-input.js +5 -5
  467. package/esm/toolbar/toolbar-item.js +5 -5
  468. package/esm/toolbar/toolbar-provider.js +4 -4
  469. package/esm/toolbar/toolbar-store.js +4 -4
  470. package/esm/toolbar/toolbar.js +6 -6
  471. package/esm/tooltip/tooltip-anchor.js +2 -2
  472. package/esm/tooltip/tooltip-provider.js +6 -6
  473. package/esm/tooltip/tooltip-store.js +6 -6
  474. package/esm/tooltip/tooltip.js +13 -13
  475. package/esm/tsconfig.build.tsbuildinfo +1 -1
  476. package/esm/utils/store.js +1 -1
  477. package/package.json +5 -5
  478. package/cjs/__chunks/PD5YFDLO.cjs +0 -41
  479. package/cjs/dialog/utils/disable-tree-outside.cjs +0 -12
  480. package/cjs/dialog/utils/disable-tree-outside.d.ts +0 -3
  481. package/dialog/utils/disable-tree-outside/package.json +0 -8
  482. package/esm/__chunks/5M4ITSXL.js +0 -41
  483. package/esm/dialog/utils/disable-tree-outside.d.ts +0 -3
  484. package/cjs/__chunks/{BFLDQF3L.cjs → GQAB4M3B.cjs} +3 -3
  485. package/esm/__chunks/{M4OAD5XF.js → YTHH33BK.js} +3 -3
@@ -23,18 +23,23 @@ export declare const useMenuList: import("../utils/types.js").Hook<MenuListOptio
23
23
  * @see https://ariakit.org/components/menu
24
24
  * @example
25
25
  * ```jsx
26
- * const menu = useMenuStore();
27
- * <MenuButton store={menu}>Edit</MenuButton>
28
- * <MenuList store={menu}>
29
- * <MenuItem>Undo</MenuItem>
30
- * <MenuItem>Redo</MenuItem>
31
- * </MenuList>
26
+ * <MenuProvider>
27
+ * <MenuButton>Edit</MenuButton>
28
+ * <MenuList>
29
+ * <MenuItem>Undo</MenuItem>
30
+ * <MenuItem>Redo</MenuItem>
31
+ * </MenuList>
32
+ * </MenuProvider>
32
33
  * ```
33
34
  */
34
35
  export declare const MenuList: import("../utils/types.js").Component<MenuListOptions<"div">>;
35
36
  export interface MenuListOptions<T extends As = "div"> extends CompositeOptions<T>, CompositeTypeaheadOptions<T>, Pick<DisclosureContentOptions, "alwaysVisible"> {
36
37
  /**
37
- * Object returned by the `useMenuStore` hook.
38
+ * Object returned by the
39
+ * [`useMenuStore`](https://ariakit.org/reference/use-menu-store) hook. If not
40
+ * provided, the closest
41
+ * [`MenuProvider`](https://ariakit.org/reference/menu-provider) component's
42
+ * context will be used.
38
43
  */
39
44
  store?: MenuStore;
40
45
  }
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  MenuList,
3
3
  useMenuList
4
- } from "../__chunks/VDTDCNMP.js";
4
+ } from "../__chunks/DA5VDN5G.js";
5
5
  import "../__chunks/2GC3IEM7.js";
6
6
  import "../__chunks/YVYWIVKG.js";
7
- import "../__chunks/HYNMOU7J.js";
7
+ import "../__chunks/56TAEBRJ.js";
8
8
  import "../__chunks/OXPV2NBK.js";
9
9
  import "../__chunks/5C7J4IAS.js";
10
10
  import "../__chunks/74KKBFVP.js";
@@ -13,10 +13,10 @@ import "../__chunks/5DA3HK6G.js";
13
13
  import "../__chunks/547DFODS.js";
14
14
  import "../__chunks/5YYGDU4E.js";
15
15
  import "../__chunks/56KWVYDN.js";
16
- import "../__chunks/M4OAD5XF.js";
16
+ import "../__chunks/YTHH33BK.js";
17
17
  import "../__chunks/BMLNRUFQ.js";
18
18
  import "../__chunks/CFEUKV6C.js";
19
- import "../__chunks/XXO3VVQU.js";
19
+ import "../__chunks/4LP74VAP.js";
20
20
  import "../__chunks/J7Q2EO23.js";
21
21
  import "../__chunks/CP3U4HPL.js";
22
22
  import "../__chunks/PNRLI7OV.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  useMenuStore
3
- } from "../__chunks/6LKB3PXM.js";
3
+ } from "../__chunks/O2VZZF7T.js";
4
4
  import {
5
5
  MenuContextProvider
6
6
  } from "../__chunks/2GC3IEM7.js";
7
7
  import "../__chunks/QP4RN5UY.js";
8
- import "../__chunks/WGAKICTY.js";
9
- import "../__chunks/NWDF5QDV.js";
8
+ import "../__chunks/EZ23JQKA.js";
9
+ import "../__chunks/C6MBVGZ2.js";
10
10
  import "../__chunks/5C7J4IAS.js";
11
11
  import "../__chunks/74KKBFVP.js";
12
12
  import "../__chunks/5DA3HK6G.js";
@@ -14,11 +14,11 @@ import "../__chunks/547DFODS.js";
14
14
  import "../__chunks/5YYGDU4E.js";
15
15
  import "../__chunks/56KWVYDN.js";
16
16
  import "../__chunks/CFEUKV6C.js";
17
- import "../__chunks/MA5WD4CD.js";
18
- import "../__chunks/XEZV3AK4.js";
19
- import "../__chunks/HCTAKPNS.js";
20
- import "../__chunks/E6GADH6Y.js";
21
- import "../__chunks/XXO3VVQU.js";
17
+ import "../__chunks/JE342XIS.js";
18
+ import "../__chunks/DO6GQUCF.js";
19
+ import "../__chunks/DJUMA466.js";
20
+ import "../__chunks/BWOZSOC7.js";
21
+ import "../__chunks/4LP74VAP.js";
22
22
  import "../__chunks/J7Q2EO23.js";
23
23
  import "../__chunks/CP3U4HPL.js";
24
24
  import "../__chunks/PNRLI7OV.js";
@@ -23,21 +23,25 @@ export declare const useMenuSeparator: import("../utils/types.js").Hook<MenuSepa
23
23
  * @see https://ariakit.org/components/menu
24
24
  * @example
25
25
  * ```jsx
26
- * const menu = useMenuStore();
27
- * <MenuButton store={menu}>Edit</MenuButton>
28
- * <Menu store={menu}>
29
- * <MenuItem>Undo</MenuItem>
30
- * <MenuItem>Redo</MenuItem>
31
- * <MenuSeparator />
32
- * <MenuItem>Cut</MenuItem>
33
- * </Menu>
26
+ * <MenuProvider>
27
+ * <MenuButton>Edit</MenuButton>
28
+ * <Menu>
29
+ * <MenuItem>Undo</MenuItem>
30
+ * <MenuItem>Redo</MenuItem>
31
+ * <MenuSeparator />
32
+ * <MenuItem>Cut</MenuItem>
33
+ * </Menu>
34
+ * </MenuProvider>
34
35
  * ```
35
36
  */
36
37
  export declare const MenuSeparator: import("../utils/types.js").Component<MenuSeparatorOptions<"hr">>;
37
38
  export interface MenuSeparatorOptions<T extends As = "hr"> extends CompositeSeparatorOptions<T> {
38
39
  /**
39
- * Object returned by the `useMenuStore` hook. If not provided, the parent
40
- * `Menu` component's context will be used.
40
+ * Object returned by the
41
+ * [`useMenuStore`](https://ariakit.org/reference/use-menu-store) hook. If not
42
+ * provided, the closest [`Menu`](https://ariakit.org/reference/menu) or
43
+ * [`MenuProvider`](https://ariakit.org/reference/menu-provider) components'
44
+ * context will be used.
41
45
  */
42
46
  store?: MenuStore;
43
47
  }
@@ -13,7 +13,7 @@ export declare function useMenuStoreProps<T extends Core.MenuStore>(store: T, up
13
13
  <K extends keyof import("@ariakit/core/combobox/combobox-store").ComboboxStoreState>(key: K): import("@ariakit/core/combobox/combobox-store").ComboboxStoreState[K];
14
14
  <V>(selector: (state: import("@ariakit/core/combobox/combobox-store").ComboboxStoreState) => V): V;
15
15
  };
16
- }) | undefined;
16
+ }) | null | undefined;
17
17
  parent: (MenuStoreFunctions<Core.MenuStoreValues> & Core.MenuStoreFunctions<Core.MenuStoreValues> & import("@ariakit/core/utils/store").Store<Core.MenuStoreState<Core.MenuStoreValues>> & {
18
18
  useState: {
19
19
  (): Core.MenuStoreState<Core.MenuStoreValues>;
@@ -24,7 +24,7 @@ export declare function useMenuStoreProps<T extends Core.MenuStore>(store: T, up
24
24
  [x: string]: string | number | boolean | (string | number)[];
25
25
  }> & import("@ariakit/core/utils/store").Store<Core.MenuStoreState<{
26
26
  [x: string]: string | number | boolean | (string | number)[];
27
- }>>) | undefined;
27
+ }>>) | null | undefined;
28
28
  menubar: (import("./menu-bar-store.js").MenuBarStoreFunctions & import("@ariakit/core/composite/composite-store").CompositeStoreFunctions<{
29
29
  id: string;
30
30
  element?: HTMLElement | null | undefined;
@@ -73,7 +73,7 @@ export declare function useMenuStoreProps<T extends Core.MenuStore>(store: T, up
73
73
  children?: string | undefined;
74
74
  }>) => V_2): V_2;
75
75
  };
76
- }) | undefined;
76
+ }) | null | undefined;
77
77
  };
78
78
  /**
79
79
  * Creates a menu store.
@@ -98,32 +98,32 @@ export interface MenuStoreFunctions<T extends Values = Values> extends Pick<Menu
98
98
  export interface MenuStoreOptions<T extends Values = Values> extends Core.MenuStoreOptions<T>, CompositeStoreOptions, HovercardStoreOptions {
99
99
  /**
100
100
  * A callback that gets called when the `values` state changes.
101
- * @param values The new values.
102
- * @example
103
- * const [values, setValues] = useState({});
104
- * const menu = useMenuStore({ values, setValues });
101
+ *
102
+ * Live examples:
103
+ * - [MenuItemCheckbox](https://ariakit.org/examples/menu-item-checkbox)
105
104
  */
106
105
  setValues?: BivariantCallback<(values: MenuStoreState<T>["values"]) => void>;
107
106
  /**
108
107
  * A reference to a combobox store. This is used when combining the combobox
109
108
  * with a menu (e.g., dropdown menu with a search input). The stores will
110
109
  * share the same state.
111
- *
112
- * Live examples:
113
- * - [Menu with Combobox](https://ariakit.org/examples/menu-combobox)
114
110
  */
115
- combobox?: ComboboxStore;
111
+ combobox?: ComboboxStore | null;
116
112
  /**
117
113
  * A reference to a parent menu store. It's automatically set when nesting
118
- * menus in the React tree. You should manually set this if menus aren't nested
119
- * in the React tree.
114
+ * menus in the React tree. You should manually set this if menus aren't
115
+ * nested in the React tree.
116
+ *
117
+ * Live examples:
118
+ * - [MenuBar](https://ariakit.org/examples/menu-bar)
119
+ * - [Submenu](https://ariakit.org/examples/menu-nested)
120
120
  */
121
- parent?: MenuStore;
121
+ parent?: MenuStore | null;
122
122
  /**
123
123
  * A reference to a menu bar store. It's automatically set when rendering
124
124
  * menus inside a menu bar in the React tree.
125
125
  */
126
- menubar?: MenuBarStore;
126
+ menubar?: MenuBarStore | null;
127
127
  }
128
128
  export type MenuStoreProps<T extends Values = Values> = MenuStoreOptions<T> & Core.MenuStoreProps<T>;
129
129
  export type MenuStore<T extends Values = Values> = MenuStoreFunctions<T> & Store<Core.MenuStore<T>>;
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  useMenuStore,
3
3
  useMenuStoreProps
4
- } from "../__chunks/6LKB3PXM.js";
4
+ } from "../__chunks/O2VZZF7T.js";
5
5
  import "../__chunks/2GC3IEM7.js";
6
6
  import "../__chunks/QP4RN5UY.js";
7
- import "../__chunks/WGAKICTY.js";
8
- import "../__chunks/NWDF5QDV.js";
7
+ import "../__chunks/EZ23JQKA.js";
8
+ import "../__chunks/C6MBVGZ2.js";
9
9
  import "../__chunks/5C7J4IAS.js";
10
10
  import "../__chunks/74KKBFVP.js";
11
11
  import "../__chunks/5DA3HK6G.js";
@@ -13,11 +13,11 @@ import "../__chunks/547DFODS.js";
13
13
  import "../__chunks/5YYGDU4E.js";
14
14
  import "../__chunks/56KWVYDN.js";
15
15
  import "../__chunks/CFEUKV6C.js";
16
- import "../__chunks/MA5WD4CD.js";
17
- import "../__chunks/XEZV3AK4.js";
18
- import "../__chunks/HCTAKPNS.js";
19
- import "../__chunks/E6GADH6Y.js";
20
- import "../__chunks/XXO3VVQU.js";
16
+ import "../__chunks/JE342XIS.js";
17
+ import "../__chunks/DO6GQUCF.js";
18
+ import "../__chunks/DJUMA466.js";
19
+ import "../__chunks/BWOZSOC7.js";
20
+ import "../__chunks/4LP74VAP.js";
21
21
  import "../__chunks/J7Q2EO23.js";
22
22
  import "../__chunks/CP3U4HPL.js";
23
23
  import "../__chunks/PNRLI7OV.js";
@@ -21,12 +21,13 @@ export declare const useMenu: import("../utils/types.js").Hook<MenuOptions<"div"
21
21
  * @see https://ariakit.org/components/menu
22
22
  * @example
23
23
  * ```jsx
24
- * const menu = useMenuStore();
25
- * <MenuButton store={menu}>Edit</MenuButton>
26
- * <Menu store={menu}>
27
- * <MenuItem>Undo</MenuItem>
28
- * <MenuItem>Redo</MenuItem>
29
- * </Menu>
24
+ * <MenuProvider>
25
+ * <MenuButton>Edit</MenuButton>
26
+ * <Menu>
27
+ * <MenuItem>Undo</MenuItem>
28
+ * <MenuItem>Redo</MenuItem>
29
+ * </Menu>
30
+ * </MenuProvider>
30
31
  * ```
31
32
  */
32
33
  export declare const Menu: import("../utils/types.js").Component<MenuOptions<"div">>;
package/esm/menu/menu.js CHANGED
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  useMenuList
3
- } from "../__chunks/VDTDCNMP.js";
3
+ } from "../__chunks/DA5VDN5G.js";
4
4
  import {
5
5
  useMenuProviderContext
6
6
  } from "../__chunks/2GC3IEM7.js";
7
7
  import "../__chunks/YVYWIVKG.js";
8
- import "../__chunks/HYNMOU7J.js";
8
+ import "../__chunks/56TAEBRJ.js";
9
9
  import "../__chunks/OXPV2NBK.js";
10
10
  import "../__chunks/5C7J4IAS.js";
11
11
  import "../__chunks/74KKBFVP.js";
12
12
  import {
13
13
  useHovercard
14
- } from "../__chunks/YJPXO6F5.js";
14
+ } from "../__chunks/4VQSZLZX.js";
15
15
  import "../__chunks/X7FKJQME.js";
16
- import "../__chunks/RVGVDX6B.js";
17
- import "../__chunks/CJPLAYFB.js";
18
- import "../__chunks/NRLOAE2I.js";
19
- import "../__chunks/PLOINBVB.js";
20
- import "../__chunks/HAVCR65N.js";
16
+ import "../__chunks/MNVQ65E5.js";
17
+ import "../__chunks/YGEFENKI.js";
18
+ import "../__chunks/IAA7Y45N.js";
19
+ import "../__chunks/HWJ7DGMR.js";
20
+ import "../__chunks/7LB47D2O.js";
21
21
  import "../__chunks/62DFK33R.js";
22
- import "../__chunks/KGDYSCOM.js";
23
- import "../__chunks/XASENZA4.js";
24
- import "../__chunks/X5VV5CBA.js";
22
+ import "../__chunks/FRKOFFMT.js";
23
+ import "../__chunks/EGOOWJGN.js";
24
+ import "../__chunks/7VWXICM7.js";
25
25
  import "../__chunks/KOVUJERF.js";
26
26
  import "../__chunks/IXXFVVA2.js";
27
- import "../__chunks/5M4ITSXL.js";
27
+ import "../__chunks/VRCYQ6JX.js";
28
28
  import "../__chunks/7JNF6I52.js";
29
29
  import "../__chunks/3LGVTTHD.js";
30
30
  import "../__chunks/FW6QFGFT.js";
@@ -41,7 +41,7 @@ import "../__chunks/5DA3HK6G.js";
41
41
  import "../__chunks/547DFODS.js";
42
42
  import "../__chunks/5YYGDU4E.js";
43
43
  import "../__chunks/56KWVYDN.js";
44
- import "../__chunks/M4OAD5XF.js";
44
+ import "../__chunks/YTHH33BK.js";
45
45
  import "../__chunks/BMLNRUFQ.js";
46
46
  import "../__chunks/6XXSNRNX.js";
47
47
  import {
@@ -49,11 +49,9 @@ import {
49
49
  createElement,
50
50
  createHook
51
51
  } from "../__chunks/CFEUKV6C.js";
52
- import "../__chunks/E6GADH6Y.js";
53
- import "../__chunks/XXO3VVQU.js";
52
+ import "../__chunks/BWOZSOC7.js";
53
+ import "../__chunks/4LP74VAP.js";
54
54
  import {
55
- useBooleanEvent,
56
- useEvent,
57
55
  useMergeRefs
58
56
  } from "../__chunks/J7Q2EO23.js";
59
57
  import "../__chunks/CP3U4HPL.js";
@@ -66,17 +64,21 @@ import {
66
64
  // src/menu/menu.ts
67
65
  import { createRef, useEffect, useRef, useState } from "react";
68
66
  import { hasFocusWithin } from "@ariakit/core/utils/focus";
69
- import { invariant } from "@ariakit/core/utils/misc";
67
+ import { invariant, isFalsyBooleanCallback } from "@ariakit/core/utils/misc";
70
68
  var useMenu = createHook(
71
69
  (_a) => {
72
70
  var _b = _a, {
73
71
  store,
72
+ modal: modalProp = false,
73
+ portal = !!modalProp,
74
74
  hideOnEscape = true,
75
75
  autoFocusOnShow = true,
76
76
  hideOnHoverOutside,
77
77
  alwaysVisible
78
78
  } = _b, props = __objRest(_b, [
79
79
  "store",
80
+ "modal",
81
+ "portal",
80
82
  "hideOnEscape",
81
83
  "autoFocusOnShow",
82
84
  "hideOnHoverOutside",
@@ -93,24 +95,8 @@ var useMenu = createHook(
93
95
  const parentMenuBar = store.menubar;
94
96
  const hasParentMenu = !!parentMenu;
95
97
  const parentIsMenuBar = !!parentMenuBar && !hasParentMenu;
96
- const onKeyDownProp = props.onKeyDown;
97
- const hideOnEscapeProp = useBooleanEvent(hideOnEscape);
98
- const onKeyDown = useEvent((event) => {
99
- onKeyDownProp == null ? void 0 : onKeyDownProp(event);
100
- if (event.defaultPrevented)
101
- return;
102
- if (event.key === "Escape") {
103
- if (!hideOnEscapeProp(event))
104
- return;
105
- if (!hasParentMenu) {
106
- event.stopPropagation();
107
- }
108
- return store == null ? void 0 : store.hide();
109
- }
110
- });
111
98
  props = __spreadProps(__spreadValues({}, props), {
112
- ref: useMergeRefs(ref, props.ref),
113
- onKeyDown
99
+ ref: useMergeRefs(ref, props.ref)
114
100
  });
115
101
  const _a2 = useMenuList(
116
102
  __spreadValues({ store, alwaysVisible }, props)
@@ -150,14 +136,21 @@ var useMenu = createHook(
150
136
  cleaning = true;
151
137
  };
152
138
  }, [store, autoFocusOnShowState, initialFocus, items, baseElement]);
139
+ const modal = hasParentMenu ? false : modalProp;
153
140
  const mayAutoFocusOnShow = !!autoFocusOnShow;
154
- const canAutoFocusOnShow = !!initialFocusRef || !!props.initialFocus || !!props.modal;
141
+ const canAutoFocusOnShow = !!initialFocusRef || !!props.initialFocus || !!modal;
155
142
  props = useHovercard(__spreadProps(__spreadValues({
156
143
  store,
157
144
  alwaysVisible,
158
145
  initialFocus: initialFocusRef,
159
- autoFocusOnShow: mayAutoFocusOnShow ? canAutoFocusOnShow && autoFocusOnShow : autoFocusOnShowState || !!props.modal
146
+ autoFocusOnShow: mayAutoFocusOnShow ? canAutoFocusOnShow && autoFocusOnShow : autoFocusOnShowState || !!modal
160
147
  }, props), {
148
+ hideOnEscape: (event) => {
149
+ if (isFalsyBooleanCallback(hideOnEscape, event))
150
+ return false;
151
+ store == null ? void 0 : store.hideAll();
152
+ return true;
153
+ },
161
154
  hideOnHoverOutside: (event) => {
162
155
  if (typeof hideOnHoverOutside === "function") {
163
156
  return hideOnHoverOutside(event);
@@ -177,14 +170,9 @@ var useMenu = createHook(
177
170
  return false;
178
171
  return true;
179
172
  },
180
- // If it's a submenu, it shouldn't behave like a modal dialog, nor display
181
- // a backdrop.
182
- modal: hasParentMenu ? false : props.modal,
183
- backdrop: hasParentMenu ? false : props.backdrop,
184
- // If it's a submenu, hide on esc will be handled differently. That is,
185
- // event.stopPropagation() won't be called, so the parent menus will also
186
- // be closed.
187
- hideOnEscape: hasParentMenu ? false : hideOnEscape
173
+ modal,
174
+ portal,
175
+ backdrop: hasParentMenu ? false : props.backdrop
188
176
  }));
189
177
  props = __spreadValues({
190
178
  "aria-labelledby": ariaLabelledBy
@@ -18,15 +18,20 @@ export declare const usePopoverAnchor: import("../utils/types.js").Hook<PopoverA
18
18
  * @see https://ariakit.org/components/popover
19
19
  * @example
20
20
  * ```jsx
21
- * const popover = usePopoverStore();
22
- * <PopoverAnchor store={popover}>Anchor</PopoverAnchor>
23
- * <Popover store={popover}>Popover</Popover>
21
+ * <PopoverProvider>
22
+ * <PopoverAnchor>Anchor</PopoverAnchor>
23
+ * <Popover>Popover</Popover>
24
+ * </PopoverProvider>
24
25
  * ```
25
26
  */
26
27
  export declare const PopoverAnchor: import("../utils/types.js").Component<PopoverAnchorOptions<"div">>;
27
28
  export interface PopoverAnchorOptions<T extends As = "div"> extends Options<T> {
28
29
  /**
29
- * Object returned by the `usePopoverStore` hook.
30
+ * Object returned by the
31
+ * [`usePopoverStore`](https://ariakit.org/reference/use-popover-store) hook.
32
+ * If not provided, the closest
33
+ * [`PopoverProvider`](https://ariakit.org/reference/popover-provider)
34
+ * component's context will be used.
30
35
  */
31
36
  store?: PopoverStore;
32
37
  }
@@ -15,22 +15,28 @@ import type { PopoverStore } from "./popover-store.js";
15
15
  */
16
16
  export declare const usePopoverArrow: import("../utils/types.js").Hook<PopoverArrowOptions<"div">>;
17
17
  /**
18
- * Renders an arrow inside a `Popover` component.
18
+ * Renders an arrow inside a [`Popover`](https://ariakit.org/reference/popover)
19
+ * component.
19
20
  * @see https://ariakit.org/components/popover
20
21
  * @example
21
22
  * ```jsx
22
- * const popover = usePopoverStore();
23
- * <Popover store={popover}>
24
- * <PopoverArrow />
25
- * Popover
26
- * </Popover>
23
+ * <PopoverProvider>
24
+ * <Popover>
25
+ * <PopoverArrow />
26
+ * Popover
27
+ * </Popover>
28
+ * </PopoverProvider>
27
29
  * ```
28
30
  */
29
31
  export declare const PopoverArrow: import("../utils/types.js").Component<PopoverArrowOptions<"div">>;
30
32
  export interface PopoverArrowOptions<T extends As = "div"> extends Options<T> {
31
33
  /**
32
- * Object returned by the `usePopoverStore` hook. If not provided, the parent
33
- * `Popover` component's context will be used.
34
+ * Object returned by the
35
+ * [`usePopoverStore`](https://ariakit.org/reference/use-popover-store) hook.
36
+ * If not provided, the closest
37
+ * [`Popover`](https://ariakit.org/reference/popover) or
38
+ * [`PopoverProvider`](https://ariakit.org/reference/popover-provider)
39
+ * components' context will be used.
34
40
  */
35
41
  store?: PopoverStore;
36
42
  /**
@@ -16,22 +16,27 @@ import type { PopoverStore } from "./popover-store.js";
16
16
  export declare const usePopoverDescription: import("../utils/types.js").Hook<PopoverDescriptionOptions<"p">>;
17
17
  /**
18
18
  * Renders a description in a popover. This component must be wrapped with
19
- * `Popover` so the `aria-describedby` prop is properly set on the popover
20
- * element.
19
+ * [`Popover`](https://ariakit.org/reference/popover) so the `aria-describedby`
20
+ * prop is properly set on the popover element.
21
21
  * @see https://ariakit.org/components/popover
22
22
  * @example
23
23
  * ```jsx
24
- * const popover = usePopoverStore();
25
- * <Popover store={popover}>
26
- * <PopoverDescription>Description</PopoverDescription>
27
- * </Popover>
24
+ * <PopoverProvider>
25
+ * <Popover>
26
+ * <PopoverDescription>Description</PopoverDescription>
27
+ * </Popover>
28
+ * </PopoverProvider>
28
29
  * ```
29
30
  */
30
31
  export declare const PopoverDescription: import("../utils/types.js").Component<PopoverDescriptionOptions<"p">>;
31
32
  export interface PopoverDescriptionOptions<T extends As = "p"> extends DialogDescriptionOptions<T> {
32
33
  /**
33
- * Object returned by the `usePopoverStore` hook. If not provided, the parent
34
- * `Popover` component's context will be used.
34
+ * Object returned by the
35
+ * [`usePopoverStore`](https://ariakit.org/reference/use-popover-store) hook.
36
+ * If not provided, the closest
37
+ * [`Popover`](https://ariakit.org/reference/popover) or
38
+ * [`PopoverProvider`](https://ariakit.org/reference/popover-provider)
39
+ * components' context will be used.
35
40
  */
36
41
  store?: PopoverStore;
37
42
  }
@@ -16,28 +16,36 @@ import type { PopoverStore, PopoverStoreState } from "./popover-store.js";
16
16
  export declare const usePopoverDisclosureArrow: import("../utils/types.js").Hook<PopoverDisclosureArrowOptions<"span">>;
17
17
  /**
18
18
  * Renders an arrow pointing to the popover position. It's usually rendered
19
- * inside the `PopoverDisclosure` component.
19
+ * inside the
20
+ * [`PopoverDisclosure`](https://ariakit.org/reference/popover-disclosure)
21
+ * component.
20
22
  * @see https://ariakit.org/components/popover
21
23
  * @example
22
24
  * ```jsx
23
- * const popover = usePopoverStore();
24
- * <PopoverDisclosure store={popover}>
25
- * Disclosure
26
- * <PopoverDisclosureArrow />
27
- * </PopoverDisclosure>
28
- * <Popover store={popover}>Popover</Popover>
25
+ * <PopoverProvider>
26
+ * <PopoverDisclosure>
27
+ * Disclosure
28
+ * <PopoverDisclosureArrow />
29
+ * </PopoverDisclosure>
30
+ * <Popover>Popover</Popover>
31
+ * </PopoverProvider>
29
32
  * ```
30
33
  */
31
34
  export declare const PopoverDisclosureArrow: import("../utils/types.js").Component<PopoverDisclosureArrowOptions<"span">>;
32
35
  export interface PopoverDisclosureArrowOptions<T extends As = "span"> extends Options<T> {
33
36
  /**
34
- * Object returned by the `usePopoverStore` hook. If not provided, the parent
35
- * `PopoverDisclosure` component's context will be used.
37
+ * Object returned by the
38
+ * [`usePopoverStore`](https://ariakit.org/reference/use-popover-store) hook.
39
+ * If not provided, the closest
40
+ * [`PopoverDisclosure`](https://ariakit.org/reference/popover-disclosure) or
41
+ * [`PopoverProvider`](https://ariakit.org/reference/popover-provider)
42
+ * components' context will be used.
36
43
  */
37
44
  store?: PopoverStore;
38
45
  /**
39
46
  * Placement to which the arrow should point. If not provided, the parent
40
- * `PopoverDisclosure` component's context will be used.
47
+ * [`PopoverDisclosure`](https://ariakit.org/reference/popover-disclosure)
48
+ * component's context will be used.
41
49
  */
42
50
  placement?: PopoverStoreState["placement"];
43
51
  }
@@ -18,9 +18,10 @@ export declare const usePopoverDisclosure: import("../utils/types.js").Hook<Popo
18
18
  * @see https://ariakit.org/components/popover
19
19
  * @example
20
20
  * ```jsx
21
- * const popover = usePopoverStore();
22
- * <PopoverDisclosure store={popover}>Disclosure</PopoverDisclosure>
23
- * <Popover store={popover}>Popover</Popover>
21
+ * <PopoverProvider>
22
+ * <PopoverDisclosure>Disclosure</PopoverDisclosure>
23
+ * <Popover>Popover</Popover>
24
+ * </PopoverProvider>
24
25
  * ```
25
26
  */
26
27
  export declare const PopoverDisclosure: import("../utils/types.js").Component<PopoverDisclosureOptions<"button">>;
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  PopoverDisclosure,
3
3
  usePopoverDisclosure
4
- } from "../__chunks/MXSIXS3C.js";
5
- import "../__chunks/TQ2YQL6O.js";
6
- import "../__chunks/7AFOF5E7.js";
4
+ } from "../__chunks/SUD3LBWB.js";
5
+ import "../__chunks/3HY5ZQT3.js";
6
+ import "../__chunks/R6PKH666.js";
7
7
  import "../__chunks/4FNI7F6H.js";
8
- import "../__chunks/QPWEKAWF.js";
9
- import "../__chunks/LND6SMHN.js";
8
+ import "../__chunks/D2BRO4YW.js";
9
+ import "../__chunks/XBIFFFUN.js";
10
10
  import "../__chunks/547DFODS.js";
11
11
  import "../__chunks/5YYGDU4E.js";
12
12
  import "../__chunks/56KWVYDN.js";
13
- import "../__chunks/M4OAD5XF.js";
13
+ import "../__chunks/YTHH33BK.js";
14
14
  import "../__chunks/BMLNRUFQ.js";
15
15
  import "../__chunks/CFEUKV6C.js";
16
16
  import "../__chunks/J7Q2EO23.js";
@@ -15,21 +15,27 @@ import type { PopoverStore } from "./popover-store.js";
15
15
  */
16
16
  export declare const usePopoverDismiss: import("../utils/types.js").Hook<PopoverDismissOptions<"button">>;
17
17
  /**
18
- * Renders a button that hides a popover.
18
+ * Renders a button that hides a
19
+ * [`Popover`](https://ariakit.org/reference/popover) component when clicked.
19
20
  * @see https://ariakit.org/components/popover
20
21
  * @example
21
22
  * ```jsx
22
- * const popover = usePopoverStore();
23
- * <Popover store={popover}>
24
- * <PopoverDismiss />
25
- * </Popover>
23
+ * <PopoverProvider>
24
+ * <Popover>
25
+ * <PopoverDismiss />
26
+ * </Popover>
27
+ * </PopoverProvider>
26
28
  * ```
27
29
  */
28
30
  export declare const PopoverDismiss: import("../utils/types.js").Component<PopoverDismissOptions<"button">>;
29
31
  export interface PopoverDismissOptions<T extends As = "button"> extends DialogDismissOptions<T> {
30
32
  /**
31
- * Object returned by the `usePopoverStore` hook. If not provided, the parent
32
- * `Popover` component's context will be used.
33
+ * Object returned by the
34
+ * [`usePopoverStore`](https://ariakit.org/reference/use-popover-store) hook.
35
+ * If not provided, the closest
36
+ * [`Popover`](https://ariakit.org/reference/popover) or
37
+ * [`PopoverProvider`](https://ariakit.org/reference/popover-provider)
38
+ * components' context will be used.
33
39
  */
34
40
  store?: PopoverStore;
35
41
  }