@ariakit/react-core 0.3.12 → 0.3.14

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 (484) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/cjs/__chunks/{7HJPL3H2.cjs → I2KHXDVL.cjs} +4 -4
  3. package/cjs/__chunks/{VCDQISP7.cjs → N3XK7EAH.cjs} +7 -7
  4. package/cjs/__chunks/{KDG57VZV.cjs → OUEE5HOS.cjs} +3 -3
  5. package/cjs/__chunks/{EKB76T2U.cjs → ZL5DC555.cjs} +5 -5
  6. package/cjs/button/button.d.cts +1 -1
  7. package/cjs/button/button.d.ts +1 -1
  8. package/cjs/checkbox/checkbox-check.d.cts +17 -9
  9. package/cjs/checkbox/checkbox-check.d.ts +17 -9
  10. package/cjs/checkbox/checkbox-provider.cjs +2 -2
  11. package/cjs/checkbox/checkbox-provider.d.cts +4 -2
  12. package/cjs/checkbox/checkbox-provider.d.ts +4 -2
  13. package/cjs/checkbox/checkbox-store.d.cts +5 -3
  14. package/cjs/checkbox/checkbox-store.d.ts +5 -3
  15. package/cjs/checkbox/checkbox.d.cts +14 -9
  16. package/cjs/checkbox/checkbox.d.ts +14 -9
  17. package/cjs/collection/collection-item.d.cts +23 -9
  18. package/cjs/collection/collection-item.d.ts +23 -9
  19. package/cjs/collection/collection-provider.d.cts +2 -1
  20. package/cjs/collection/collection-provider.d.ts +2 -1
  21. package/cjs/collection/collection-renderer.d.cts +1 -1
  22. package/cjs/collection/collection-renderer.d.ts +1 -1
  23. package/cjs/collection/collection-store.d.cts +6 -3
  24. package/cjs/collection/collection-store.d.ts +6 -3
  25. package/cjs/collection/collection.d.cts +4 -3
  26. package/cjs/collection/collection.d.ts +4 -3
  27. package/cjs/combobox/combobox-cancel.d.cts +3 -2
  28. package/cjs/combobox/combobox-cancel.d.ts +3 -2
  29. package/cjs/combobox/combobox-disclosure.d.cts +7 -2
  30. package/cjs/combobox/combobox-disclosure.d.ts +7 -2
  31. package/cjs/combobox/combobox-group-label.d.cts +4 -4
  32. package/cjs/combobox/combobox-group-label.d.ts +4 -4
  33. package/cjs/combobox/combobox-group.d.cts +7 -3
  34. package/cjs/combobox/combobox-group.d.ts +7 -3
  35. package/cjs/combobox/combobox-item-check.d.cts +9 -16
  36. package/cjs/combobox/combobox-item-check.d.ts +9 -16
  37. package/cjs/combobox/combobox-item-value.d.cts +13 -8
  38. package/cjs/combobox/combobox-item-value.d.ts +13 -8
  39. package/cjs/combobox/combobox-item.d.cts +11 -9
  40. package/cjs/combobox/combobox-item.d.ts +11 -9
  41. package/cjs/combobox/combobox-list.d.cts +1 -4
  42. package/cjs/combobox/combobox-list.d.ts +1 -4
  43. package/cjs/combobox/combobox-popover.cjs +7 -7
  44. package/cjs/combobox/combobox-popover.d.cts +2 -3
  45. package/cjs/combobox/combobox-popover.d.ts +2 -3
  46. package/cjs/combobox/combobox-provider.d.cts +2 -1
  47. package/cjs/combobox/combobox-provider.d.ts +2 -1
  48. package/cjs/combobox/combobox-row.d.cts +6 -3
  49. package/cjs/combobox/combobox-row.d.ts +6 -3
  50. package/cjs/combobox/combobox-separator.d.cts +4 -3
  51. package/cjs/combobox/combobox-separator.d.ts +4 -3
  52. package/cjs/combobox/combobox-store.d.cts +11 -7
  53. package/cjs/combobox/combobox-store.d.ts +11 -7
  54. package/cjs/combobox/combobox.d.cts +45 -33
  55. package/cjs/combobox/combobox.d.ts +45 -33
  56. package/cjs/command/command.d.cts +1 -1
  57. package/cjs/command/command.d.ts +1 -1
  58. package/cjs/composite/composite-container.d.cts +18 -11
  59. package/cjs/composite/composite-container.d.ts +18 -11
  60. package/cjs/composite/composite-group-label.d.cts +18 -13
  61. package/cjs/composite/composite-group-label.d.ts +18 -13
  62. package/cjs/composite/composite-group.d.cts +20 -12
  63. package/cjs/composite/composite-group.d.ts +20 -12
  64. package/cjs/composite/composite-hover.d.cts +17 -8
  65. package/cjs/composite/composite-hover.d.ts +17 -8
  66. package/cjs/composite/composite-input.d.cts +15 -9
  67. package/cjs/composite/composite-input.d.ts +15 -9
  68. package/cjs/composite/composite-item.d.cts +49 -9
  69. package/cjs/composite/composite-item.d.ts +49 -9
  70. package/cjs/composite/composite-overflow.cjs +6 -6
  71. package/cjs/composite/composite-provider.d.cts +2 -1
  72. package/cjs/composite/composite-provider.d.ts +2 -1
  73. package/cjs/composite/composite-renderer.d.cts +1 -1
  74. package/cjs/composite/composite-renderer.d.ts +1 -1
  75. package/cjs/composite/composite-row.d.cts +26 -19
  76. package/cjs/composite/composite-row.d.ts +26 -19
  77. package/cjs/composite/composite-separator.d.cts +23 -10
  78. package/cjs/composite/composite-separator.d.ts +23 -10
  79. package/cjs/composite/composite-store.d.cts +3 -1
  80. package/cjs/composite/composite-store.d.ts +3 -1
  81. package/cjs/composite/composite-typeahead.d.cts +20 -8
  82. package/cjs/composite/composite-typeahead.d.ts +20 -8
  83. package/cjs/composite/composite.d.cts +65 -10
  84. package/cjs/composite/composite.d.ts +65 -10
  85. package/cjs/dialog/dialog-disclosure.d.cts +2 -1
  86. package/cjs/dialog/dialog-disclosure.d.ts +2 -1
  87. package/cjs/dialog/dialog-dismiss.d.cts +2 -1
  88. package/cjs/dialog/dialog-dismiss.d.ts +2 -1
  89. package/cjs/dialog/dialog-provider.d.cts +2 -1
  90. package/cjs/dialog/dialog-provider.d.ts +2 -1
  91. package/cjs/dialog/dialog-store.d.cts +3 -1
  92. package/cjs/dialog/dialog-store.d.ts +3 -1
  93. package/cjs/dialog/dialog.cjs +5 -5
  94. package/cjs/dialog/dialog.d.cts +51 -20
  95. package/cjs/dialog/dialog.d.ts +51 -20
  96. package/cjs/dialog/utils/disable-tree.cjs +3 -3
  97. package/cjs/dialog/utils/use-hide-on-interact-outside.cjs +1 -1
  98. package/cjs/disclosure/disclosure-content.d.cts +6 -5
  99. package/cjs/disclosure/disclosure-content.d.ts +6 -5
  100. package/cjs/disclosure/disclosure-provider.d.cts +2 -1
  101. package/cjs/disclosure/disclosure-provider.d.ts +2 -1
  102. package/cjs/disclosure/disclosure-store.d.cts +6 -4
  103. package/cjs/disclosure/disclosure-store.d.ts +6 -4
  104. package/cjs/disclosure/disclosure.d.cts +3 -2
  105. package/cjs/disclosure/disclosure.d.ts +3 -2
  106. package/cjs/focus-trap/focus-trap-region.d.cts +4 -2
  107. package/cjs/focus-trap/focus-trap-region.d.ts +4 -2
  108. package/cjs/focusable/focusable-container.d.cts +7 -5
  109. package/cjs/focusable/focusable-container.d.ts +7 -5
  110. package/cjs/focusable/focusable.d.cts +5 -2
  111. package/cjs/focusable/focusable.d.ts +5 -2
  112. package/cjs/form/form-checkbox.cjs +5 -5
  113. package/cjs/form/form-checkbox.d.cts +6 -4
  114. package/cjs/form/form-checkbox.d.ts +6 -4
  115. package/cjs/form/form-control.cjs +16 -0
  116. package/cjs/form/form-control.d.cts +93 -0
  117. package/cjs/form/form-control.d.ts +93 -0
  118. package/cjs/form/form-description.d.cts +14 -3
  119. package/cjs/form/form-description.d.ts +14 -3
  120. package/cjs/form/form-error.d.cts +11 -4
  121. package/cjs/form/form-error.d.ts +11 -4
  122. package/cjs/form/form-field.cjs +19 -4
  123. package/cjs/form/form-field.d.cts +16 -30
  124. package/cjs/form/form-field.d.ts +16 -30
  125. package/cjs/form/form-group-label.d.cts +6 -4
  126. package/cjs/form/form-group-label.d.ts +6 -4
  127. package/cjs/form/form-group.d.cts +6 -2
  128. package/cjs/form/form-group.d.ts +6 -2
  129. package/cjs/form/form-input.cjs +2 -2
  130. package/cjs/form/form-input.d.cts +7 -6
  131. package/cjs/form/form-input.d.ts +7 -6
  132. package/cjs/form/form-label.d.cts +18 -7
  133. package/cjs/form/form-label.d.ts +18 -7
  134. package/cjs/form/form-provider.d.cts +2 -1
  135. package/cjs/form/form-provider.d.ts +2 -1
  136. package/cjs/form/form-push.d.cts +17 -3
  137. package/cjs/form/form-push.d.ts +17 -3
  138. package/cjs/form/form-radio-group.d.cts +7 -2
  139. package/cjs/form/form-radio-group.d.ts +7 -2
  140. package/cjs/form/form-radio.cjs +2 -2
  141. package/cjs/form/form-radio.d.cts +8 -4
  142. package/cjs/form/form-radio.d.ts +8 -4
  143. package/cjs/form/form-remove.d.cts +17 -2
  144. package/cjs/form/form-remove.d.ts +17 -2
  145. package/cjs/form/form-reset.d.cts +5 -2
  146. package/cjs/form/form-reset.d.ts +5 -2
  147. package/cjs/form/form-store.d.cts +31 -14
  148. package/cjs/form/form-store.d.ts +31 -14
  149. package/cjs/form/form-submit.d.cts +8 -2
  150. package/cjs/form/form-submit.d.ts +8 -2
  151. package/cjs/form/form.d.cts +37 -11
  152. package/cjs/form/form.d.ts +37 -11
  153. package/cjs/group/group-label.d.cts +3 -2
  154. package/cjs/group/group-label.d.ts +3 -2
  155. package/cjs/group/group.d.cts +3 -1
  156. package/cjs/group/group.d.ts +3 -1
  157. package/cjs/heading/heading-level.d.cts +4 -2
  158. package/cjs/heading/heading-level.d.ts +4 -2
  159. package/cjs/heading/heading.d.cts +4 -3
  160. package/cjs/heading/heading.d.ts +4 -3
  161. package/cjs/hovercard/hovercard-anchor.d.cts +5 -2
  162. package/cjs/hovercard/hovercard-anchor.d.ts +5 -2
  163. package/cjs/hovercard/hovercard-arrow.d.cts +4 -2
  164. package/cjs/hovercard/hovercard-arrow.d.ts +4 -2
  165. package/cjs/hovercard/hovercard-description.d.cts +2 -2
  166. package/cjs/hovercard/hovercard-description.d.ts +2 -2
  167. package/cjs/hovercard/hovercard-disclosure.d.cts +1 -1
  168. package/cjs/hovercard/hovercard-disclosure.d.ts +1 -1
  169. package/cjs/hovercard/hovercard-dismiss.d.cts +3 -2
  170. package/cjs/hovercard/hovercard-dismiss.d.ts +3 -2
  171. package/cjs/hovercard/hovercard-heading.d.cts +2 -2
  172. package/cjs/hovercard/hovercard-heading.d.ts +2 -2
  173. package/cjs/hovercard/hovercard-provider.d.cts +2 -1
  174. package/cjs/hovercard/hovercard-provider.d.ts +2 -1
  175. package/cjs/hovercard/hovercard-store.d.cts +2 -1
  176. package/cjs/hovercard/hovercard-store.d.ts +2 -1
  177. package/cjs/hovercard/hovercard.cjs +7 -7
  178. package/cjs/hovercard/hovercard.d.cts +20 -8
  179. package/cjs/hovercard/hovercard.d.ts +20 -8
  180. package/cjs/menu/menu-arrow.d.cts +4 -2
  181. package/cjs/menu/menu-arrow.d.ts +4 -2
  182. package/cjs/menu/menu-bar.d.cts +1 -2
  183. package/cjs/menu/menu-bar.d.ts +1 -2
  184. package/cjs/menu/menu-button-arrow.d.cts +9 -4
  185. package/cjs/menu/menu-button-arrow.d.ts +9 -4
  186. package/cjs/menu/menu-button.d.cts +8 -7
  187. package/cjs/menu/menu-button.d.ts +8 -7
  188. package/cjs/menu/menu-description.d.cts +2 -2
  189. package/cjs/menu/menu-description.d.ts +2 -2
  190. package/cjs/menu/menu-dismiss.d.cts +3 -2
  191. package/cjs/menu/menu-dismiss.d.ts +3 -2
  192. package/cjs/menu/menu-group-label.d.cts +4 -4
  193. package/cjs/menu/menu-group-label.d.ts +4 -4
  194. package/cjs/menu/menu-group.d.cts +5 -2
  195. package/cjs/menu/menu-group.d.ts +5 -2
  196. package/cjs/menu/menu-heading.d.cts +3 -2
  197. package/cjs/menu/menu-heading.d.ts +3 -2
  198. package/cjs/menu/menu-item-check.d.cts +10 -18
  199. package/cjs/menu/menu-item-check.d.ts +10 -18
  200. package/cjs/menu/menu-item-checkbox.cjs +3 -3
  201. package/cjs/menu/menu-item-checkbox.d.cts +38 -6
  202. package/cjs/menu/menu-item-checkbox.d.ts +38 -6
  203. package/cjs/menu/menu-item-radio.d.cts +21 -9
  204. package/cjs/menu/menu-item-radio.d.ts +21 -9
  205. package/cjs/menu/menu-item.d.cts +10 -11
  206. package/cjs/menu/menu-item.d.ts +10 -11
  207. package/cjs/menu/menu-list.d.cts +7 -2
  208. package/cjs/menu/menu-list.d.ts +7 -2
  209. package/cjs/menu/menu-provider.d.cts +2 -1
  210. package/cjs/menu/menu-provider.d.ts +2 -1
  211. package/cjs/menu/menu-separator.d.cts +5 -2
  212. package/cjs/menu/menu-separator.d.ts +5 -2
  213. package/cjs/menu/menu-store.d.cts +18 -7
  214. package/cjs/menu/menu-store.d.ts +18 -7
  215. package/cjs/menu/menu.cjs +8 -8
  216. package/cjs/menu/menu.d.cts +8 -2
  217. package/cjs/menu/menu.d.ts +8 -2
  218. package/cjs/menubar/menubar-provider.d.cts +2 -1
  219. package/cjs/menubar/menubar-provider.d.ts +2 -1
  220. package/cjs/menubar/menubar-store.d.cts +3 -1
  221. package/cjs/menubar/menubar-store.d.ts +3 -1
  222. package/cjs/menubar/menubar.d.cts +3 -2
  223. package/cjs/menubar/menubar.d.ts +3 -2
  224. package/cjs/popover/popover-anchor.d.cts +4 -3
  225. package/cjs/popover/popover-anchor.d.ts +4 -3
  226. package/cjs/popover/popover-arrow.d.cts +6 -2
  227. package/cjs/popover/popover-arrow.d.ts +6 -2
  228. package/cjs/popover/popover-description.d.cts +1 -1
  229. package/cjs/popover/popover-description.d.ts +1 -1
  230. package/cjs/popover/popover-disclosure-arrow.d.cts +6 -4
  231. package/cjs/popover/popover-disclosure-arrow.d.ts +6 -4
  232. package/cjs/popover/popover-disclosure.d.cts +3 -2
  233. package/cjs/popover/popover-disclosure.d.ts +3 -2
  234. package/cjs/popover/popover-dismiss.d.cts +1 -1
  235. package/cjs/popover/popover-dismiss.d.ts +1 -1
  236. package/cjs/popover/popover-heading.d.cts +1 -1
  237. package/cjs/popover/popover-heading.d.ts +1 -1
  238. package/cjs/popover/popover-provider.d.cts +2 -1
  239. package/cjs/popover/popover-provider.d.ts +2 -1
  240. package/cjs/popover/popover-store.d.cts +2 -1
  241. package/cjs/popover/popover-store.d.ts +2 -1
  242. package/cjs/popover/popover.cjs +6 -6
  243. package/cjs/popover/popover.d.cts +8 -3
  244. package/cjs/popover/popover.d.ts +8 -3
  245. package/cjs/portal/portal.d.cts +18 -1
  246. package/cjs/portal/portal.d.ts +18 -1
  247. package/cjs/radio/radio-group.d.cts +8 -6
  248. package/cjs/radio/radio-group.d.ts +8 -6
  249. package/cjs/radio/radio-provider.d.cts +2 -1
  250. package/cjs/radio/radio-provider.d.ts +2 -1
  251. package/cjs/radio/radio-store.d.cts +6 -2
  252. package/cjs/radio/radio-store.d.ts +6 -2
  253. package/cjs/radio/radio.d.cts +21 -13
  254. package/cjs/radio/radio.d.ts +21 -13
  255. package/cjs/role/role.d.cts +3 -3
  256. package/cjs/role/role.d.ts +3 -3
  257. package/cjs/select/select-group-label.d.cts +2 -2
  258. package/cjs/select/select-group-label.d.ts +2 -2
  259. package/cjs/select/select-group.d.cts +4 -1
  260. package/cjs/select/select-group.d.ts +4 -1
  261. package/cjs/select/select-item-check.d.cts +9 -15
  262. package/cjs/select/select-item-check.d.ts +9 -15
  263. package/cjs/select/select-item.d.cts +1 -5
  264. package/cjs/select/select-item.d.ts +1 -5
  265. package/cjs/select/select-list.d.cts +7 -4
  266. package/cjs/select/select-list.d.ts +7 -4
  267. package/cjs/select/select-popover.cjs +7 -7
  268. package/cjs/select/select-provider.d.cts +2 -1
  269. package/cjs/select/select-provider.d.ts +2 -1
  270. package/cjs/select/select-renderer.d.cts +1 -1
  271. package/cjs/select/select-renderer.d.ts +1 -1
  272. package/cjs/select/select-row.d.cts +4 -1
  273. package/cjs/select/select-row.d.ts +4 -1
  274. package/cjs/select/select-separator.d.cts +2 -1
  275. package/cjs/select/select-separator.d.ts +2 -1
  276. package/cjs/select/select-store.d.cts +17 -10
  277. package/cjs/select/select-store.d.ts +17 -10
  278. package/cjs/select/select.cjs +8 -6
  279. package/cjs/select/select.d.cts +25 -15
  280. package/cjs/select/select.d.ts +25 -15
  281. package/cjs/tab/tab-list.d.cts +2 -1
  282. package/cjs/tab/tab-list.d.ts +2 -1
  283. package/cjs/tab/tab-panel.d.cts +19 -3
  284. package/cjs/tab/tab-panel.d.ts +19 -3
  285. package/cjs/tab/tab-provider.d.cts +1 -1
  286. package/cjs/tab/tab-provider.d.ts +1 -1
  287. package/cjs/tab/tab-store.d.cts +3 -1
  288. package/cjs/tab/tab-store.d.ts +3 -1
  289. package/cjs/tab/tab.d.cts +2 -2
  290. package/cjs/tab/tab.d.ts +2 -2
  291. package/cjs/toolbar/toolbar-container.d.cts +1 -1
  292. package/cjs/toolbar/toolbar-container.d.ts +1 -1
  293. package/cjs/toolbar/toolbar-input.d.cts +2 -1
  294. package/cjs/toolbar/toolbar-input.d.ts +2 -1
  295. package/cjs/toolbar/toolbar-item.d.cts +2 -1
  296. package/cjs/toolbar/toolbar-item.d.ts +2 -1
  297. package/cjs/toolbar/toolbar-provider.d.cts +2 -1
  298. package/cjs/toolbar/toolbar-provider.d.ts +2 -1
  299. package/cjs/toolbar/toolbar-separator.d.cts +2 -1
  300. package/cjs/toolbar/toolbar-separator.d.ts +2 -1
  301. package/cjs/toolbar/toolbar-store.d.cts +3 -1
  302. package/cjs/toolbar/toolbar-store.d.ts +3 -1
  303. package/cjs/tooltip/tooltip-anchor.d.cts +3 -3
  304. package/cjs/tooltip/tooltip-anchor.d.ts +3 -3
  305. package/cjs/tooltip/tooltip-arrow.d.cts +1 -1
  306. package/cjs/tooltip/tooltip-arrow.d.ts +1 -1
  307. package/cjs/tooltip/tooltip-provider.d.cts +2 -1
  308. package/cjs/tooltip/tooltip-provider.d.ts +2 -1
  309. package/cjs/tooltip/tooltip-store.d.cts +3 -1
  310. package/cjs/tooltip/tooltip-store.d.ts +3 -1
  311. package/cjs/tooltip/tooltip.cjs +8 -8
  312. package/cjs/tooltip/tooltip.d.cts +3 -1
  313. package/cjs/tooltip/tooltip.d.ts +3 -1
  314. package/esm/__chunks/{FS2EVEJO.js → 4GO43MST.js} +8 -8
  315. package/esm/__chunks/{A6XC27R5.js → IRX7SFUJ.js} +1 -1
  316. package/esm/__chunks/{PGAEII2Q.js → NERBASET.js} +4 -4
  317. package/esm/__chunks/{EPBRINPG.js → QWSZGSIG.js} +2 -2
  318. package/esm/button/button.d.ts +1 -1
  319. package/esm/checkbox/checkbox-check.d.ts +17 -9
  320. package/esm/checkbox/checkbox-provider.d.ts +4 -2
  321. package/esm/checkbox/checkbox-provider.js +3 -3
  322. package/esm/checkbox/checkbox-store.d.ts +5 -3
  323. package/esm/checkbox/checkbox.d.ts +14 -9
  324. package/esm/collection/collection-item.d.ts +23 -9
  325. package/esm/collection/collection-provider.d.ts +2 -1
  326. package/esm/collection/collection-renderer.d.ts +1 -1
  327. package/esm/collection/collection-store.d.ts +6 -3
  328. package/esm/collection/collection.d.ts +4 -3
  329. package/esm/combobox/combobox-cancel.d.ts +3 -2
  330. package/esm/combobox/combobox-disclosure.d.ts +7 -2
  331. package/esm/combobox/combobox-group-label.d.ts +4 -4
  332. package/esm/combobox/combobox-group.d.ts +7 -3
  333. package/esm/combobox/combobox-item-check.d.ts +9 -16
  334. package/esm/combobox/combobox-item-value.d.ts +13 -8
  335. package/esm/combobox/combobox-item.d.ts +11 -9
  336. package/esm/combobox/combobox-list.d.ts +1 -4
  337. package/esm/combobox/combobox-popover.d.ts +2 -3
  338. package/esm/combobox/combobox-popover.js +5 -5
  339. package/esm/combobox/combobox-provider.d.ts +2 -1
  340. package/esm/combobox/combobox-row.d.ts +6 -3
  341. package/esm/combobox/combobox-separator.d.ts +4 -3
  342. package/esm/combobox/combobox-store.d.ts +11 -7
  343. package/esm/combobox/combobox.d.ts +45 -33
  344. package/esm/command/command.d.ts +1 -1
  345. package/esm/composite/composite-container.d.ts +18 -11
  346. package/esm/composite/composite-group-label.d.ts +18 -13
  347. package/esm/composite/composite-group.d.ts +20 -12
  348. package/esm/composite/composite-hover.d.ts +17 -8
  349. package/esm/composite/composite-input.d.ts +15 -9
  350. package/esm/composite/composite-item.d.ts +49 -9
  351. package/esm/composite/composite-overflow.js +5 -5
  352. package/esm/composite/composite-provider.d.ts +2 -1
  353. package/esm/composite/composite-renderer.d.ts +1 -1
  354. package/esm/composite/composite-row.d.ts +26 -19
  355. package/esm/composite/composite-separator.d.ts +23 -10
  356. package/esm/composite/composite-store.d.ts +3 -1
  357. package/esm/composite/composite-typeahead.d.ts +20 -8
  358. package/esm/composite/composite.d.ts +65 -10
  359. package/esm/dialog/dialog-disclosure.d.ts +2 -1
  360. package/esm/dialog/dialog-dismiss.d.ts +2 -1
  361. package/esm/dialog/dialog-provider.d.ts +2 -1
  362. package/esm/dialog/dialog-store.d.ts +3 -1
  363. package/esm/dialog/dialog.d.ts +51 -20
  364. package/esm/dialog/dialog.js +4 -4
  365. package/esm/dialog/utils/disable-tree.js +2 -2
  366. package/esm/dialog/utils/use-hide-on-interact-outside.js +1 -1
  367. package/esm/disclosure/disclosure-content.d.ts +6 -5
  368. package/esm/disclosure/disclosure-provider.d.ts +2 -1
  369. package/esm/disclosure/disclosure-store.d.ts +6 -4
  370. package/esm/disclosure/disclosure.d.ts +3 -2
  371. package/esm/focus-trap/focus-trap-region.d.ts +4 -2
  372. package/esm/focusable/focusable-container.d.ts +7 -5
  373. package/esm/focusable/focusable.d.ts +5 -2
  374. package/esm/form/form-checkbox.d.ts +6 -4
  375. package/esm/form/form-checkbox.js +6 -6
  376. package/esm/form/form-control.d.ts +93 -0
  377. package/esm/form/form-control.js +16 -0
  378. package/esm/form/form-description.d.ts +14 -3
  379. package/esm/form/form-error.d.ts +11 -4
  380. package/esm/form/form-field.d.ts +16 -30
  381. package/esm/form/form-field.js +19 -4
  382. package/esm/form/form-group-label.d.ts +6 -4
  383. package/esm/form/form-group.d.ts +6 -2
  384. package/esm/form/form-input.d.ts +7 -6
  385. package/esm/form/form-input.js +3 -3
  386. package/esm/form/form-label.d.ts +18 -7
  387. package/esm/form/form-provider.d.ts +2 -1
  388. package/esm/form/form-push.d.ts +17 -3
  389. package/esm/form/form-radio-group.d.ts +7 -2
  390. package/esm/form/form-radio.d.ts +8 -4
  391. package/esm/form/form-radio.js +3 -3
  392. package/esm/form/form-remove.d.ts +17 -2
  393. package/esm/form/form-reset.d.ts +5 -2
  394. package/esm/form/form-store.d.ts +31 -14
  395. package/esm/form/form-submit.d.ts +8 -2
  396. package/esm/form/form.d.ts +37 -11
  397. package/esm/group/group-label.d.ts +3 -2
  398. package/esm/group/group.d.ts +3 -1
  399. package/esm/heading/heading-level.d.ts +4 -2
  400. package/esm/heading/heading.d.ts +4 -3
  401. package/esm/hovercard/hovercard-anchor.d.ts +5 -2
  402. package/esm/hovercard/hovercard-arrow.d.ts +4 -2
  403. package/esm/hovercard/hovercard-description.d.ts +2 -2
  404. package/esm/hovercard/hovercard-disclosure.d.ts +1 -1
  405. package/esm/hovercard/hovercard-dismiss.d.ts +3 -2
  406. package/esm/hovercard/hovercard-heading.d.ts +2 -2
  407. package/esm/hovercard/hovercard-provider.d.ts +2 -1
  408. package/esm/hovercard/hovercard-store.d.ts +2 -1
  409. package/esm/hovercard/hovercard.d.ts +20 -8
  410. package/esm/hovercard/hovercard.js +6 -6
  411. package/esm/menu/menu-arrow.d.ts +4 -2
  412. package/esm/menu/menu-bar.d.ts +1 -2
  413. package/esm/menu/menu-button-arrow.d.ts +9 -4
  414. package/esm/menu/menu-button.d.ts +8 -7
  415. package/esm/menu/menu-description.d.ts +2 -2
  416. package/esm/menu/menu-dismiss.d.ts +3 -2
  417. package/esm/menu/menu-group-label.d.ts +4 -4
  418. package/esm/menu/menu-group.d.ts +5 -2
  419. package/esm/menu/menu-heading.d.ts +3 -2
  420. package/esm/menu/menu-item-check.d.ts +10 -18
  421. package/esm/menu/menu-item-checkbox.d.ts +38 -6
  422. package/esm/menu/menu-item-checkbox.js +3 -3
  423. package/esm/menu/menu-item-radio.d.ts +21 -9
  424. package/esm/menu/menu-item.d.ts +10 -11
  425. package/esm/menu/menu-list.d.ts +7 -2
  426. package/esm/menu/menu-provider.d.ts +2 -1
  427. package/esm/menu/menu-separator.d.ts +5 -2
  428. package/esm/menu/menu-store.d.ts +18 -7
  429. package/esm/menu/menu.d.ts +8 -2
  430. package/esm/menu/menu.js +6 -6
  431. package/esm/menubar/menubar-provider.d.ts +2 -1
  432. package/esm/menubar/menubar-store.d.ts +3 -1
  433. package/esm/menubar/menubar.d.ts +3 -2
  434. package/esm/popover/popover-anchor.d.ts +4 -3
  435. package/esm/popover/popover-arrow.d.ts +6 -2
  436. package/esm/popover/popover-description.d.ts +1 -1
  437. package/esm/popover/popover-disclosure-arrow.d.ts +6 -4
  438. package/esm/popover/popover-disclosure.d.ts +3 -2
  439. package/esm/popover/popover-dismiss.d.ts +1 -1
  440. package/esm/popover/popover-heading.d.ts +1 -1
  441. package/esm/popover/popover-provider.d.ts +2 -1
  442. package/esm/popover/popover-store.d.ts +2 -1
  443. package/esm/popover/popover.d.ts +8 -3
  444. package/esm/popover/popover.js +5 -5
  445. package/esm/portal/portal.d.ts +18 -1
  446. package/esm/radio/radio-group.d.ts +8 -6
  447. package/esm/radio/radio-provider.d.ts +2 -1
  448. package/esm/radio/radio-store.d.ts +6 -2
  449. package/esm/radio/radio.d.ts +21 -13
  450. package/esm/role/role.d.ts +3 -3
  451. package/esm/select/select-group-label.d.ts +2 -2
  452. package/esm/select/select-group.d.ts +4 -1
  453. package/esm/select/select-item-check.d.ts +9 -15
  454. package/esm/select/select-item.d.ts +1 -5
  455. package/esm/select/select-list.d.ts +7 -4
  456. package/esm/select/select-popover.js +5 -5
  457. package/esm/select/select-provider.d.ts +2 -1
  458. package/esm/select/select-renderer.d.ts +1 -1
  459. package/esm/select/select-row.d.ts +4 -1
  460. package/esm/select/select-separator.d.ts +2 -1
  461. package/esm/select/select-store.d.ts +17 -10
  462. package/esm/select/select.d.ts +25 -15
  463. package/esm/select/select.js +8 -6
  464. package/esm/tab/tab-list.d.ts +2 -1
  465. package/esm/tab/tab-panel.d.ts +19 -3
  466. package/esm/tab/tab-provider.d.ts +1 -1
  467. package/esm/tab/tab-store.d.ts +3 -1
  468. package/esm/tab/tab.d.ts +2 -2
  469. package/esm/toolbar/toolbar-container.d.ts +1 -1
  470. package/esm/toolbar/toolbar-input.d.ts +2 -1
  471. package/esm/toolbar/toolbar-item.d.ts +2 -1
  472. package/esm/toolbar/toolbar-provider.d.ts +2 -1
  473. package/esm/toolbar/toolbar-separator.d.ts +2 -1
  474. package/esm/toolbar/toolbar-store.d.ts +3 -1
  475. package/esm/tooltip/tooltip-anchor.d.ts +3 -3
  476. package/esm/tooltip/tooltip-arrow.d.ts +1 -1
  477. package/esm/tooltip/tooltip-provider.d.ts +2 -1
  478. package/esm/tooltip/tooltip-store.d.ts +3 -1
  479. package/esm/tooltip/tooltip.d.ts +3 -1
  480. package/esm/tooltip/tooltip.js +6 -6
  481. package/form/form-control/package.json +8 -0
  482. package/package.json +9 -2
  483. package/cjs/__chunks/{NKR65BKC.cjs → KSPMHEYZ.cjs} +3 -3
  484. package/esm/__chunks/{CLF4PQ7T.js → TQYOGOE2.js} +3 -3
@@ -19,13 +19,12 @@ import type { MenuStore } from "./menu-store.js";
19
19
  */
20
20
  export declare const useMenuButton: import("../utils/types.js").Hook<MenuButtonOptions<"button" | "div">>;
21
21
  /**
22
- * Renders a menu button that triggers a
23
- * [`Menu`](https://ariakit.org/reference/menu) component. Usually, this is
24
- * rendered as a native `button` element, but if it's a submenu button rendered
25
- * as a menu item inside another menu, it'll be rendered as a `div`.
22
+ * Renders a menu button that toggles the visibility of a
23
+ * [`Menu`](https://ariakit.org/reference/menu) component when clicked or when
24
+ * using arrow keys.
26
25
  * @see https://ariakit.org/components/menu
27
26
  * @example
28
- * ```jsx
27
+ * ```jsx {2}
29
28
  * <MenuProvider>
30
29
  * <MenuButton>Edit</MenuButton>
31
30
  * <Menu>
@@ -49,8 +48,10 @@ export interface MenuButtonOptions<T extends As = "button" | "div"> extends Hove
49
48
  * Determines whether pressing a character key while focusing on the
50
49
  * [`MenuButton`](https://ariakit.org/reference/menu-button) should move focus
51
50
  * to the [`MenuItem`](https://ariakit.org/reference/menu-item) starting with
52
- * that character. By default, it's `true` for menu buttons in a
53
- * [Menubar](https://ariakit.org/components/menubar), but `false` for other
51
+ * that character.
52
+ *
53
+ * By default, it's `true` for menu buttons in a
54
+ * [`Menubar`](https://ariakit.org/reference/menubar), but `false` for other
54
55
  * menu buttons.
55
56
  */
56
57
  typeahead?: boolean;
@@ -15,12 +15,12 @@ import type { MenuStore } from "./menu-store.js";
15
15
  */
16
16
  export declare const useMenuDescription: import("../utils/types.js").Hook<MenuDescriptionOptions<"p">>;
17
17
  /**
18
- * Renders a description in a menu. This component must be wrapped with
18
+ * Renders a description in a menu. This component must be wrapped with a
19
19
  * [`Menu`](https://ariakit.org/reference/menu) component so the
20
20
  * `aria-describedby` prop is properly set on the menu element.
21
21
  * @see https://ariakit.org/components/menu
22
22
  * @example
23
- * ```jsx
23
+ * ```jsx {3}
24
24
  * <MenuProvider>
25
25
  * <Menu>
26
26
  * <MenuDescription>Description</MenuDescription>
@@ -15,10 +15,11 @@ import type { MenuStore } from "./menu-store.js";
15
15
  */
16
16
  export declare const useMenuDismiss: import("../utils/types.js").Hook<MenuDismissOptions<"button">>;
17
17
  /**
18
- * Renders a button that hides a menu.
18
+ * Renders a button that hides a [`Menu`](https://ariakit.org/reference/menu)
19
+ * when clicked.
19
20
  * @see https://ariakit.org/components/menu
20
21
  * @example
21
- * ```jsx
22
+ * ```jsx {3}
22
23
  * <MenuProvider>
23
24
  * <Menu>
24
25
  * <MenuDismiss />
@@ -15,12 +15,12 @@ import type { MenuStore } from "./menu-store.js";
15
15
  */
16
16
  export declare const useMenuGroupLabel: import("../utils/types.js").Hook<MenuGroupLabelOptions<"div">>;
17
17
  /**
18
- * Renders a label in a menu group. This component must be wrapped with
19
- * `MenuGroup` so the `aria-labelledby` prop is properly set on the menu group
20
- * element.
18
+ * Renders a label in a menu group. This component should be wrapped with
19
+ * [`MenuGroup`](https://ariakit.org/reference/menu-group) so the
20
+ * `aria-labelledby` is correctly set on the group element.
21
21
  * @see https://ariakit.org/components/menu
22
22
  * @example
23
- * ```jsx
23
+ * ```jsx {5}
24
24
  * <MenuProvider>
25
25
  * <MenuButton>Recent Items</MenuButton>
26
26
  * <Menu>
@@ -20,10 +20,13 @@ import type { MenuStore } from "./menu-store.js";
20
20
  */
21
21
  export declare const useMenuGroup: import("../utils/types.js").Hook<MenuGroupOptions<"div">>;
22
22
  /**
23
- * Renders a menu group inside a menu.
23
+ * Renders a group for [`MenuItem`](https://ariakit.org/reference/menu-item)
24
+ * elements. Optionally, a
25
+ * [`MenuGroupLabel`](https://ariakit.org/reference/menu-group-label) can be
26
+ * rendered as a child to provide a label for the group.
24
27
  * @see https://ariakit.org/components/menu
25
28
  * @example
26
- * ```jsx
29
+ * ```jsx {4-8}
27
30
  * <MenuProvider>
28
31
  * <MenuButton>Recent Items</MenuButton>
29
32
  * <Menu>
@@ -15,8 +15,9 @@ import type { MenuStore } from "./menu-store.js";
15
15
  */
16
16
  export declare const useMenuHeading: import("../utils/types.js").Hook<MenuHeadingOptions<"h1">>;
17
17
  /**
18
- * Renders a heading in a menu. This component must be wrapped with `Menu` so
19
- * the `aria-labelledby` prop is properly set on the menu element.
18
+ * Renders a heading in a menu. This component must be wrapped within
19
+ * [`Menu`](https://ariakit.org/reference/menu) so the `aria-labelledby` prop is
20
+ * properly set on the content element.
20
21
  * @see https://ariakit.org/components/menu
21
22
  * @example
22
23
  * ```jsx
@@ -12,12 +12,18 @@ import type { MenuStore } from "./menu-store.js";
12
12
  */
13
13
  export declare const useMenuItemCheck: import("../utils/types.js").Hook<MenuItemCheckOptions<"span">>;
14
14
  /**
15
- * Renders a checkmark inside a `MenuItemCheckbox` or `MenuItemRadio`
16
- * components. This component must be wrapped with one of those components or
17
- * the `checked` prop must be explicitly passed to the component.
15
+ * Renders a checkmark icon when the
16
+ * [`checked`](https://ariakit.org/reference/menu-item-check#checked) prop is
17
+ * `true`. The icon can be overridden by providing a different one as children.
18
+ *
19
+ * When rendered inside
20
+ * [`MenuItemCheckbox`](https://ariakit.org/reference/menu-item-checkbox) or
21
+ * [`MenuItemRadio`](https://ariakit.org/reference/menu-item-radio) components,
22
+ * the [`checked`](https://ariakit.org/reference/menu-item-check#checked) prop
23
+ * is automatically derived from the context.
18
24
  * @see https://ariakit.org/components/menu
19
25
  * @example
20
- * ```jsx
26
+ * ```jsx {5,9}
21
27
  * <MenuProvider defaultValues={{ apple: true, orange: false }}>
22
28
  * <MenuButton>Fruits</MenuButton>
23
29
  * <Menu>
@@ -40,19 +46,5 @@ export interface MenuItemCheckOptions<T extends As = "span"> extends Omit<Checkb
40
46
  * [`useMenuStore`](https://ariakit.org/reference/use-menu-store) hook.
41
47
  */
42
48
  store?: MenuStore;
43
- /**
44
- * Determines if the check mark should be displayed. This value is automatically
45
- * derived from the parent
46
- * [`MenuItemRadio`](https://ariakit.org/reference/menu-item-radio) or
47
- * [`MenuItemCheckbox`](https://ariakit.org/reference/menu-item-checkbox)
48
- * component.
49
- *
50
- * Manually setting this prop will supersede the derived value.
51
- *
52
- * Live examples:
53
- * - [Submenu with
54
- * Combobox](https://ariakit.org/examples/menu-nested-combobox)
55
- */
56
- checked?: CheckboxCheckOptions<T>["checked"];
57
49
  }
58
50
  export type MenuItemCheckProps<T extends As = "span"> = Props<MenuItemCheckOptions<T>>;
@@ -17,14 +17,43 @@ import type { MenuStore } from "./menu-store.js";
17
17
  */
18
18
  export declare const useMenuItemCheckbox: import("../utils/types.js").Hook<MenuItemCheckboxOptions<"div">>;
19
19
  /**
20
- * Renders a menu item checkbox inside a menu.
20
+ * Renders a [`menuitemcheckbox`](https://w3c.github.io/aria/#menuitemcheckbox)
21
+ * element within a [`Menu`](https://ariakit.org/reference/menu) component. The
22
+ * [`name`](https://ariakit.org/reference/menu-item-checkbox#name) prop must be
23
+ * provided to identify the field in the
24
+ * [`values`](https://ariakit.org/reference/menu-provider#values) state.
25
+ *
26
+ * A [`MenuItemCheck`](https://ariakit.org/reference/menu-item-check) can be
27
+ * used to render a checkmark inside this component.
21
28
  * @see https://ariakit.org/components/menu
22
29
  * @example
23
- * ```jsx
24
- * <MenuProvider defaultValues={{ apple: false }}>
25
- * <MenuButton>Fruits</MenuButton>
30
+ * The [`name`](https://ariakit.org/reference/menu-item-checkbox#name) prop can
31
+ * refer to a single value in the state:
32
+ * ```jsx {4-7}
33
+ * <MenuProvider defaultValues={{ warnBeforeQuitting: true }}>
34
+ * <MenuButton>Chrome</MenuButton>
35
+ * <Menu>
36
+ * <MenuItemCheckbox name="warnBeforeQuitting">
37
+ * <MenuItemCheck />
38
+ * Warn Before Quitting
39
+ * </MenuItemCheckbox>
40
+ * </Menu>
41
+ * </MenuProvider>
42
+ * ```
43
+ * @example
44
+ * Or it can refer to an array of values, in which case the
45
+ * [`value`](https://ariakit.org/reference/menu-item-checkbox#value) prop must
46
+ * be provided:
47
+ * ```jsx {4-9}
48
+ * <MenuProvider defaultValues={{ watching: ["issues"] }}>
49
+ * <MenuButton>Watch</MenuButton>
26
50
  * <Menu>
27
- * <MenuItemCheckbox name="apple">Apple</MenuItemCheckbox>
51
+ * <MenuItemCheckbox name="watching" value="issues">
52
+ * Issues
53
+ * </MenuItemCheckbox>
54
+ * <MenuItemCheckbox name="watching" value="pull-requests">
55
+ * Pull Requests
56
+ * </MenuItemCheckbox>
28
57
  * </Menu>
29
58
  * </MenuProvider>
30
59
  * ```
@@ -40,8 +69,11 @@ export interface MenuItemCheckboxOptions<T extends As = "div"> extends MenuItemO
40
69
  */
41
70
  store?: MenuStore;
42
71
  /**
43
- * MenuItemCheckbox's name as specified in the
72
+ * The name of the field in the
44
73
  * [`values`](https://ariakit.org/reference/menu-provider#values) state.
74
+ *
75
+ * Live examples:
76
+ * - [MenuItemCheckbox](https://ariakit.org/examples/menu-item-checkbox)
45
77
  */
46
78
  name: string;
47
79
  /**
@@ -1,11 +1,11 @@
1
1
  "use client";
2
+ import {
3
+ useCheckboxStore
4
+ } from "../__chunks/JIZ5C2JK.js";
2
5
  import {
3
6
  useCheckbox
4
7
  } from "../__chunks/3AHQ6JCP.js";
5
8
  import "../__chunks/VPR2WHQV.js";
6
- import {
7
- useCheckboxStore
8
- } from "../__chunks/JIZ5C2JK.js";
9
9
  import {
10
10
  useMenuItem
11
11
  } from "../__chunks/Y6467XPW.js";
@@ -19,18 +19,27 @@ import type { MenuStore } from "./menu-store.js";
19
19
  */
20
20
  export declare const useMenuItemRadio: import("../utils/types.js").Hook<MenuItemRadioOptions<"div">>;
21
21
  /**
22
- * Renders a menu item radio inside a menu.
22
+ * Renders a [`menuitemradio`](https://w3c.github.io/aria/#menuitemradio)
23
+ * element within a [`Menu`](https://ariakit.org/reference/menu) component. The
24
+ * [`name`](https://ariakit.org/reference/menu-item-radio#name) prop must be
25
+ * provided to identify the field in the
26
+ * [`values`](https://ariakit.org/reference/menu-provider#values) state.
27
+ *
28
+ * A [`MenuItemCheck`](https://ariakit.org/reference/menu-item-check) can be
29
+ * used to render a checkmark inside this component.
23
30
  * @see https://ariakit.org/components/menu
24
31
  * @example
25
- * ```jsx
26
- * <MenuProvider defaultValues={{ fruit: "apple" }}>
27
- * <MenuButton>Fruit</MenuButton>
32
+ * ```jsx {4-11}
33
+ * <MenuProvider defaultValues={{ profile: "john" }}>
34
+ * <MenuButton>Profiles</MenuButton>
28
35
  * <Menu>
29
- * <MenuItemRadio name="fruit" value="apple">
30
- * Apple
36
+ * <MenuItemRadio name="profile" value="john">
37
+ * <MenuItemCheck />
38
+ * John Doe
31
39
  * </MenuItemRadio>
32
- * <MenuItemRadio name="fruit" value="orange">
33
- * Orange
40
+ * <MenuItemRadio name="profile" value="jane">
41
+ * <MenuItemCheck />
42
+ * Jane Doe
34
43
  * </MenuItemRadio>
35
44
  * </Menu>
36
45
  * </MenuProvider>
@@ -47,8 +56,11 @@ export interface MenuItemRadioOptions<T extends As = "div"> extends MenuItemOpti
47
56
  */
48
57
  store?: MenuStore;
49
58
  /**
50
- * MenuItemRadio's name as specified in the
59
+ * The name of the field in the
51
60
  * [`values`](https://ariakit.org/reference/menu-provider#values) state.
61
+ *
62
+ * Live examples:
63
+ * - [MenuItemRadio](https://ariakit.org/examples/menu-item-radio)
52
64
  */
53
65
  name: string;
54
66
  /**
@@ -22,10 +22,13 @@ import type { MenuStore } from "./menu-store.js";
22
22
  */
23
23
  export declare const useMenuItem: import("../utils/types.js").Hook<MenuItemOptions<"div">>;
24
24
  /**
25
- * Renders a menu item.
25
+ * Renders a menu item inside
26
+ * [`MenuList`](https://ariakit.org/reference/menu-list) or
27
+ * [`Menu`](https://ariakit.org/reference/menu)
28
+ * components.
26
29
  * @see https://ariakit.org/components/menu
27
30
  * @example
28
- * ```jsx
31
+ * ```jsx {4-5}
29
32
  * <MenuProvider>
30
33
  * <MenuButton>Edit</MenuButton>
31
34
  * <Menu>
@@ -50,20 +53,16 @@ export interface MenuItemOptions<T extends As = "div"> extends CompositeItemOpti
50
53
  */
51
54
  store?: MenubarStore | MenuStore;
52
55
  /**
53
- * Whether to hide the menu when a menu item is clicked. This prop won't be
54
- * invoked if the click is on a link and modifier keys are used to open the
55
- * link in a new tab or download it.
56
+ * Determines if the menu should hide when this item is clicked.
57
+ *
58
+ * **Note**: This behavior isn't triggered if this menu item is rendered as a
59
+ * link and modifier keys are used to either open the link in a new tab or
60
+ * download it.
56
61
  *
57
62
  * Live examples:
58
- * - [Submenu with
59
- * Combobox](https://ariakit.org/examples/menu-nested-combobox)
60
63
  * - [Sliding Menu](https://ariakit.org/examples/menu-slide)
61
64
  * @default true
62
65
  */
63
66
  hideOnClick?: BooleanOrCallback<MouseEvent<HTMLElement>>;
64
- /**
65
- * @default true
66
- */
67
- preventScrollOnKeyDown?: CompositeItemOptions<T>["preventScrollOnKeyDown"];
68
67
  }
69
68
  export type MenuItemProps<T extends As = "div"> = Props<MenuItemOptions<T>>;
@@ -19,10 +19,15 @@ import type { MenuStore } from "./menu-store.js";
19
19
  */
20
20
  export declare const useMenuList: import("../utils/types.js").Hook<MenuListOptions<"div">>;
21
21
  /**
22
- * Renders a menu list element.
22
+ * Renders a menu list element. This is the primitive component used by the
23
+ * [`Menu`](https://ariakit.org/reference/menu) component.
24
+ *
25
+ * Unlike [`Menu`](https://ariakit.org/reference/menu), this component doesn't
26
+ * render a popover and therefore doesn't automatically focus on items when
27
+ * opened.
23
28
  * @see https://ariakit.org/components/menu
24
29
  * @example
25
- * ```jsx
30
+ * ```jsx {3-6}
26
31
  * <MenuProvider>
27
32
  * <MenuButton>Edit</MenuButton>
28
33
  * <MenuList>
@@ -3,7 +3,8 @@ import type { PickRequired } from "@ariakit/core/utils/types";
3
3
  import type { MenuStoreProps, MenuStoreValues } from "./menu-store.js";
4
4
  type Values = MenuStoreValues;
5
5
  /**
6
- * Provides a menu store to Menu components.
6
+ * Provides a menu store to [Menu](https://ariakit.org/components/menu)
7
+ * components.
7
8
  * @see https://ariakit.org/components/menu
8
9
  * @example
9
10
  * ```jsx
@@ -19,10 +19,13 @@ import type { MenuStore } from "./menu-store.js";
19
19
  */
20
20
  export declare const useMenuSeparator: import("../utils/types.js").Hook<MenuSeparatorOptions<"hr">>;
21
21
  /**
22
- * Renders a separator for menu items.
22
+ * Renders a divider between
23
+ * [`MenuItem`](https://ariakit.org/reference/menu-item),
24
+ * [`MenuItemCheckbox`](https://ariakit.org/reference/menu-item-checkbox), and
25
+ * [`MenuItemRadio`](https://ariakit.org/reference/menu-item-radio) elements.
23
26
  * @see https://ariakit.org/components/menu
24
27
  * @example
25
- * ```jsx
28
+ * ```jsx {6}
26
29
  * <MenuProvider>
27
30
  * <MenuButton>Edit</MenuButton>
28
31
  * <Menu>
@@ -11,11 +11,13 @@ export declare function useMenuStoreProps<T extends Core.MenuStore>(store: T, up
11
11
  menubar: MenubarStore | null | undefined;
12
12
  };
13
13
  /**
14
- * Creates a menu store.
14
+ * Creates a menu store to control the state of
15
+ * [Menu](https://ariakit.org/components/menu) components.
15
16
  * @see https://ariakit.org/components/menu
16
17
  * @example
17
18
  * ```jsx
18
19
  * const menu = useMenuStore({ placement: "top" });
20
+ *
19
21
  * <MenuButton store={menu}>Edit</MenuButton>
20
22
  * <Menu store={menu}>
21
23
  * <MenuItem>Undo</MenuItem>
@@ -32,7 +34,9 @@ export interface MenuStoreFunctions<T extends MenuStoreValues = MenuStoreValues>
32
34
  }
33
35
  export interface MenuStoreOptions<T extends MenuStoreValues = MenuStoreValues> extends Core.MenuStoreOptions<T>, CompositeStoreOptions, HovercardStoreOptions {
34
36
  /**
35
- * A callback that gets called when the `values` state changes.
37
+ * A callback that gets called when the
38
+ * [`values`](https://ariakit.org/reference/menu-provider#values) state
39
+ * changes.
36
40
  *
37
41
  * Live examples:
38
42
  * - [MenuItemCheckbox](https://ariakit.org/examples/menu-item-checkbox)
@@ -41,9 +45,10 @@ export interface MenuStoreOptions<T extends MenuStoreValues = MenuStoreValues> e
41
45
  */
42
46
  setValues?: BivariantCallback<(values: MenuStoreState<T>["values"]) => void>;
43
47
  /**
44
- * A reference to a combobox store. This is used when combining the combobox
45
- * with a menu (e.g., dropdown menu with a search input). The stores will
46
- * share the same state.
48
+ * A reference to a [combobox
49
+ * store](https://ariakit.org/reference/use-combobox-store). It's
50
+ * automatically set when composing [Menu with
51
+ * Combobox](https://ariakit.org/examples/menu-combobox).
47
52
  */
48
53
  combobox?: ComboboxStore | null;
49
54
  /**
@@ -54,11 +59,17 @@ export interface MenuStoreOptions<T extends MenuStoreValues = MenuStoreValues> e
54
59
  * Live examples:
55
60
  * - [Menubar](https://ariakit.org/components/menubar)
56
61
  * - [Submenu](https://ariakit.org/examples/menu-nested)
62
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
57
63
  */
58
64
  parent?: MenuStore | null;
59
65
  /**
60
- * A reference to a menu bar store. It's automatically set when rendering
61
- * menus inside a menu bar in the React tree.
66
+ * A reference to a [menubar
67
+ * store](https://ariakit.org/reference/use-menubar-store). It's automatically
68
+ * set when rendering menus inside a
69
+ * [`Menubar`](https://ariakit.org/reference/menubar) in the React tree.
70
+ *
71
+ * Live examples:
72
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
62
73
  */
63
74
  menubar?: MenubarStore | null;
64
75
  }
@@ -17,10 +17,16 @@ import type { MenuListOptions } from "./menu-list.jsx";
17
17
  */
18
18
  export declare const useMenu: import("../utils/types.js").Hook<MenuOptions<"div">>;
19
19
  /**
20
- * Renders a dropdown menu element.
20
+ * Renders a dropdown menu element that's controlled by a
21
+ * [`MenuButton`](https://ariakit.org/reference/menu-button) component.
22
+ *
23
+ * This component uses the primitive
24
+ * [`MenuList`](https://ariakit.org/reference/menu-list) component under the
25
+ * hood. It renders a popover and automatically focuses on items when the menu
26
+ * is shown.
21
27
  * @see https://ariakit.org/components/menu
22
28
  * @example
23
- * ```jsx
29
+ * ```jsx {3-6}
24
30
  * <MenuProvider>
25
31
  * <MenuButton>Edit</MenuButton>
26
32
  * <Menu>
package/esm/menu/menu.js CHANGED
@@ -13,14 +13,14 @@ import "../__chunks/IB7YUKH5.js";
13
13
  import "../__chunks/4UUKJZ4V.js";
14
14
  import {
15
15
  useHovercard
16
- } from "../__chunks/EPBRINPG.js";
16
+ } from "../__chunks/QWSZGSIG.js";
17
17
  import "../__chunks/YMV43K4F.js";
18
- import "../__chunks/A6XC27R5.js";
18
+ import "../__chunks/IRX7SFUJ.js";
19
19
  import {
20
20
  createDialogComponent
21
- } from "../__chunks/PGAEII2Q.js";
21
+ } from "../__chunks/NERBASET.js";
22
22
  import "../__chunks/LWHPHW7Q.js";
23
- import "../__chunks/CLF4PQ7T.js";
23
+ import "../__chunks/TQYOGOE2.js";
24
24
  import "../__chunks/BULCTPRV.js";
25
25
  import "../__chunks/6BJGLK2C.js";
26
26
  import "../__chunks/CS347UVZ.js";
@@ -28,11 +28,11 @@ import "../__chunks/IUB2BTEK.js";
28
28
  import "../__chunks/XHJGS6Z5.js";
29
29
  import "../__chunks/TL67WVI6.js";
30
30
  import "../__chunks/MKDDWKFK.js";
31
+ import "../__chunks/72E5EPFF.js";
31
32
  import "../__chunks/OOBDFMJL.js";
33
+ import "../__chunks/X6WIMZJE.js";
32
34
  import "../__chunks/677M2CI3.js";
33
35
  import "../__chunks/6GXEOXGT.js";
34
- import "../__chunks/72E5EPFF.js";
35
- import "../__chunks/X6WIMZJE.js";
36
36
  import "../__chunks/HPP6CWMY.js";
37
37
  import "../__chunks/UYRJLDVS.js";
38
38
  import "../__chunks/JPXNJYSO.js";
@@ -1,7 +1,8 @@
1
1
  import type { ReactNode } from "react";
2
2
  import type { MenubarStoreProps } from "./menubar-store.js";
3
3
  /**
4
- * Provides a menubar store to Menubar components.
4
+ * Provides a menubar store to [Menubar](https://ariakit.org/components/menubar)
5
+ * components.
5
6
  * @see https://ariakit.org/components/menubar
6
7
  * @example
7
8
  * ```jsx
@@ -3,11 +3,13 @@ import type { CompositeStoreFunctions, CompositeStoreOptions, CompositeStoreStat
3
3
  import type { Store } from "../utils/store.js";
4
4
  export declare function useMenubarStoreProps<T extends Core.MenubarStore>(store: T, update: () => void, props: MenubarStoreProps): T;
5
5
  /**
6
- * Creates a menubar store.
6
+ * Creates a menubar store to control the state of
7
+ * [Menubar](https://ariakit.org/components/menubar) components.
7
8
  * @see https://ariakit.org/components/menubar
8
9
  * @example
9
10
  * ```jsx
10
11
  * const menu = useMenubarStore();
12
+ *
11
13
  * <Menubar store={menu} />
12
14
  * ```
13
15
  */
@@ -23,8 +23,9 @@ import type { MenubarStore, MenubarStoreProps } from "./menubar-store.js";
23
23
  */
24
24
  export declare const useMenubar: import("../utils/types.js").Hook<MenubarOptions<"div">>;
25
25
  /**
26
- * Renders a menu bar that may contain a group of menu items that control other
27
- * submenus.
26
+ * Renders a menubar that may contain a group of
27
+ * [`MenuItem`](https://ariakit.org/reference/menu-item) elements that control
28
+ * other submenus.
28
29
  * @see https://ariakit.org/components/menubar
29
30
  * @example
30
31
  * ```jsx
@@ -13,11 +13,12 @@ import type { PopoverStore } from "./popover-store.js";
13
13
  */
14
14
  export declare const usePopoverAnchor: import("../utils/types.js").Hook<PopoverAnchorOptions<"div">>;
15
15
  /**
16
- * Renders an element that will serve as the popover's anchor. The popover will
17
- * be positioned relative to this element.
16
+ * Renders an element that acts as the anchor for the popover. The
17
+ * [`Popover`](https://ariakit.org/reference/popover) component will be
18
+ * positioned in relation to this element.
18
19
  * @see https://ariakit.org/components/popover
19
20
  * @example
20
- * ```jsx
21
+ * ```jsx {2}
21
22
  * <PopoverProvider>
22
23
  * <PopoverAnchor>Anchor</PopoverAnchor>
23
24
  * <Popover>Popover</Popover>
@@ -16,11 +16,12 @@ import type { PopoverStore } from "./popover-store.js";
16
16
  export declare const usePopoverArrow: import("../utils/types.js").Hook<PopoverArrowOptions<"div">>;
17
17
  /**
18
18
  * Renders an arrow inside a [`Popover`](https://ariakit.org/reference/popover)
19
- * component.
19
+ * component pointing to the anchor element.
20
20
  * @see https://ariakit.org/components/popover
21
21
  * @example
22
- * ```jsx
22
+ * ```jsx {4}
23
23
  * <PopoverProvider>
24
+ * <PopoverAnchor />
24
25
  * <Popover>
25
26
  * <PopoverArrow />
26
27
  * Popover
@@ -41,6 +42,9 @@ export interface PopoverArrowOptions<T extends As = "div"> extends Options<T> {
41
42
  store?: PopoverStore;
42
43
  /**
43
44
  * The size of the arrow.
45
+ *
46
+ * Live examples:
47
+ * - [Selection Popover](https://ariakit.org/examples/popover-selection)
44
48
  * @default 30
45
49
  */
46
50
  size?: number;
@@ -20,7 +20,7 @@ export declare const usePopoverDescription: import("../utils/types.js").Hook<Pop
20
20
  * prop is properly set on the popover element.
21
21
  * @see https://ariakit.org/components/popover
22
22
  * @example
23
- * ```jsx
23
+ * ```jsx {3}
24
24
  * <PopoverProvider>
25
25
  * <Popover>
26
26
  * <PopoverDescription>Description</PopoverDescription>
@@ -21,7 +21,7 @@ export declare const usePopoverDisclosureArrow: import("../utils/types.js").Hook
21
21
  * component.
22
22
  * @see https://ariakit.org/components/popover
23
23
  * @example
24
- * ```jsx
24
+ * ```jsx {4}
25
25
  * <PopoverProvider>
26
26
  * <PopoverDisclosure>
27
27
  * Disclosure
@@ -43,9 +43,11 @@ export interface PopoverDisclosureArrowOptions<T extends As = "span"> extends Op
43
43
  */
44
44
  store?: PopoverStore;
45
45
  /**
46
- * Placement to which the arrow should point. If not provided, the parent
47
- * [`PopoverDisclosure`](https://ariakit.org/reference/popover-disclosure)
48
- * component's context will be used.
46
+ * Arrow's placement direction. If not provided, it will be inferred from the
47
+ * context.
48
+ *
49
+ * Live examples:
50
+ * - [Sliding Menu](https://ariakit.org/examples/menu-slide)
49
51
  */
50
52
  placement?: PopoverStoreState["placement"];
51
53
  }
@@ -14,10 +14,11 @@ import type { PopoverAnchorOptions } from "./popover-anchor.js";
14
14
  */
15
15
  export declare const usePopoverDisclosure: import("../utils/types.js").Hook<PopoverDisclosureOptions<"button">>;
16
16
  /**
17
- * Renders a button that controls the visibility of the popover when clicked.
17
+ * Renders a button that controls the visibility of the
18
+ * [`Popover`](https://ariakit.org/reference/popover) component when clicked.
18
19
  * @see https://ariakit.org/components/popover
19
20
  * @example
20
- * ```jsx
21
+ * ```jsx {2}
21
22
  * <PopoverProvider>
22
23
  * <PopoverDisclosure>Disclosure</PopoverDisclosure>
23
24
  * <Popover>Popover</Popover>
@@ -19,7 +19,7 @@ export declare const usePopoverDismiss: import("../utils/types.js").Hook<Popover
19
19
  * [`Popover`](https://ariakit.org/reference/popover) component when clicked.
20
20
  * @see https://ariakit.org/components/popover
21
21
  * @example
22
- * ```jsx
22
+ * ```jsx {3}
23
23
  * <PopoverProvider>
24
24
  * <Popover>
25
25
  * <PopoverDismiss />
@@ -20,7 +20,7 @@ export declare const usePopoverHeading: import("../utils/types.js").Hook<Popover
20
20
  * prop is properly set on the popover element.
21
21
  * @see https://ariakit.org/components/popover
22
22
  * @example
23
- * ```jsx
23
+ * ```jsx {3}
24
24
  * <PopoverProvider>
25
25
  * <Popover>
26
26
  * <PopoverHeading>Heading</PopoverHeading>