@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
@@ -1,14 +1,14 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
 
3
3
 
4
- var _7HJPL3H2cjs = require('../__chunks/7HJPL3H2.cjs');
4
+ var _I2KHXDVLcjs = require('../__chunks/I2KHXDVL.cjs');
5
5
  require('../__chunks/KXQOQQ5B.cjs');
6
- require('../__chunks/KDG57VZV.cjs');
6
+ require('../__chunks/OUEE5HOS.cjs');
7
7
 
8
8
 
9
- var _EKB76T2Ucjs = require('../__chunks/EKB76T2U.cjs');
9
+ var _ZL5DC555cjs = require('../__chunks/ZL5DC555.cjs');
10
10
  require('../__chunks/WZ3DRKGP.cjs');
11
- require('../__chunks/NKR65BKC.cjs');
11
+ require('../__chunks/KSPMHEYZ.cjs');
12
12
  require('../__chunks/PZL34OVO.cjs');
13
13
  require('../__chunks/344F3DYO.cjs');
14
14
  require('../__chunks/KREY6HXD.cjs');
@@ -16,11 +16,11 @@ require('../__chunks/5ZOCN23X.cjs');
16
16
  require('../__chunks/JVDUGICD.cjs');
17
17
  require('../__chunks/VV6WA3I6.cjs');
18
18
  require('../__chunks/7YLCVXZ7.cjs');
19
+ require('../__chunks/5GTNIPQ6.cjs');
19
20
  require('../__chunks/7TN63K2T.cjs');
21
+ require('../__chunks/V24PR4PW.cjs');
20
22
  require('../__chunks/6IUEXB4L.cjs');
21
23
  require('../__chunks/JF225FQ5.cjs');
22
- require('../__chunks/5GTNIPQ6.cjs');
23
- require('../__chunks/V24PR4PW.cjs');
24
24
  require('../__chunks/7566TIRW.cjs');
25
25
  require('../__chunks/J3OG6T3B.cjs');
26
26
  require('../__chunks/65LGW5LY.cjs');
@@ -94,7 +94,7 @@ var useTooltip = _RNZNGEL4cjs.createHook.call(void 0,
94
94
  (state) => state.type === "description" ? "tooltip" : "none"
95
95
  );
96
96
  props = _AV6KTKLEcjs.__spreadValues.call(void 0, { role }, props);
97
- props = _7HJPL3H2cjs.useHovercard.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
97
+ props = _I2KHXDVLcjs.useHovercard.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
98
98
  store,
99
99
  portal,
100
100
  gutter,
@@ -123,7 +123,7 @@ var useTooltip = _RNZNGEL4cjs.createHook.call(void 0,
123
123
  return props;
124
124
  }
125
125
  );
126
- var Tooltip = _EKB76T2Ucjs.createDialogComponent.call(void 0,
126
+ var Tooltip = _ZL5DC555cjs.createDialogComponent.call(void 0,
127
127
  _RNZNGEL4cjs.createComponent.call(void 0, (props) => {
128
128
  const htmlProps = useTooltip(props);
129
129
  return _RNZNGEL4cjs.createElement.call(void 0, "div", htmlProps);
@@ -14,7 +14,9 @@ import type { TooltipStore } from "./tooltip-store.js";
14
14
  */
15
15
  export declare const useTooltip: import("../utils/types.js").Hook<TooltipOptions<"div">>;
16
16
  /**
17
- * Renders a tooltip element.
17
+ * Renders a tooltip element that visually describes a
18
+ * [`TooltipAnchor`](https://ariakit.org/reference/tooltip-anchor) when it
19
+ * receives focus or is hovered.
18
20
  * @see https://ariakit.org/components/tooltip
19
21
  * @example
20
22
  * ```jsx {3}
@@ -14,7 +14,9 @@ import type { TooltipStore } from "./tooltip-store.js";
14
14
  */
15
15
  export declare const useTooltip: import("../utils/types.js").Hook<TooltipOptions<"div">>;
16
16
  /**
17
- * Renders a tooltip element.
17
+ * Renders a tooltip element that visually describes a
18
+ * [`TooltipAnchor`](https://ariakit.org/reference/tooltip-anchor) when it
19
+ * receives focus or is hovered.
18
20
  * @see https://ariakit.org/components/tooltip
19
21
  * @example
20
22
  * ```jsx {3}
@@ -22,7 +22,7 @@ import {
22
22
  __spreadValues
23
23
  } from "./4R3V3JGP.js";
24
24
 
25
- // src/form/form-field.ts
25
+ // src/form/form-control.ts
26
26
  import { useCallback, useRef } from "react";
27
27
  import { getDocument } from "@ariakit/core/utils/dom";
28
28
  import { cx, invariant } from "@ariakit/core/utils/misc";
@@ -43,7 +43,7 @@ function useItem(store, name, type) {
43
43
  (state) => state.items.find((item) => item.type === type && item.name === name)
44
44
  );
45
45
  }
46
- var useFormField = createHook(
46
+ var useFormControl = createHook(
47
47
  (_a) => {
48
48
  var _b = _a, {
49
49
  store,
@@ -60,7 +60,7 @@ var useFormField = createHook(
60
60
  store = store || context;
61
61
  invariant(
62
62
  store,
63
- process.env.NODE_ENV !== "production" && "FormField must be wrapped in a Form component."
63
+ process.env.NODE_ENV !== "production" && "FormControl must be wrapped in a Form component."
64
64
  );
65
65
  const name = `${nameProp}`;
66
66
  const id = useId(props.id);
@@ -118,15 +118,15 @@ var useFormField = createHook(
118
118
  return props;
119
119
  }
120
120
  );
121
- var FormField = createMemoComponent((props) => {
122
- const htmlProps = useFormField(props);
121
+ var FormControl = createMemoComponent((props) => {
122
+ const htmlProps = useFormControl(props);
123
123
  return createElement("input", htmlProps);
124
124
  });
125
125
  if (process.env.NODE_ENV !== "production") {
126
- FormField.displayName = "FormField";
126
+ FormControl.displayName = "FormControl";
127
127
  }
128
128
 
129
129
  export {
130
- useFormField,
131
- FormField
130
+ useFormControl,
131
+ FormControl
132
132
  };
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  createDialogComponent,
4
4
  useDialog
5
- } from "./PGAEII2Q.js";
5
+ } from "./NERBASET.js";
6
6
  import {
7
7
  PopoverScopedContextProvider,
8
8
  usePopoverProviderContext
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  disableTree,
7
7
  disableTreeOutside
8
- } from "./CLF4PQ7T.js";
8
+ } from "./TQYOGOE2.js";
9
9
  import {
10
10
  usePreventBodyScroll
11
11
  } from "./6BJGLK2C.js";
@@ -19,12 +19,12 @@ import {
19
19
  isElementMarked,
20
20
  markTreeOutside
21
21
  } from "./TL67WVI6.js";
22
- import {
23
- prependHiddenDismiss
24
- } from "./6GXEOXGT.js";
25
22
  import {
26
23
  createWalkTreeSnapshot
27
24
  } from "./72E5EPFF.js";
25
+ import {
26
+ prependHiddenDismiss
27
+ } from "./6GXEOXGT.js";
28
28
  import {
29
29
  useFocusableContainer
30
30
  } from "./HPP6CWMY.js";
@@ -6,10 +6,10 @@ import {
6
6
  } from "./YMV43K4F.js";
7
7
  import {
8
8
  usePopover
9
- } from "./A6XC27R5.js";
9
+ } from "./IRX7SFUJ.js";
10
10
  import {
11
11
  createDialogComponent
12
- } from "./PGAEII2Q.js";
12
+ } from "./NERBASET.js";
13
13
  import {
14
14
  HovercardScopedContextProvider,
15
15
  useHovercardProviderContext
@@ -18,7 +18,7 @@ export declare const useButton: import("../utils/types.js").Hook<ButtonOptions<"
18
18
  * @see https://ariakit.org/components/button
19
19
  * @example
20
20
  * ```jsx
21
- * <Button render={<div />}>Accessible button</Button>
21
+ * <Button>Button</Button>
22
22
  * ```
23
23
  */
24
24
  export declare const Button: import("../utils/types.js").Component<ButtonOptions<"button">>;
@@ -12,7 +12,14 @@ import type { CheckboxStore } from "./checkbox-store.js";
12
12
  */
13
13
  export declare const useCheckboxCheck: import("../utils/types.js").Hook<CheckboxCheckOptions<"span">>;
14
14
  /**
15
- * Renders a check mark icon, usually inside a `Checkbox` component.
15
+ * Renders a checkmark icon when the
16
+ * [`checked`](https://ariakit.org/reference/checkbox-check#checked) prop is
17
+ * `true`. The icon can be overridden by providing a different one as children.
18
+ *
19
+ * When rendered inside a [`Checkbox`](https://ariakit.org/reference/checkbox)
20
+ * component, the
21
+ * [`checked`](https://ariakit.org/reference/checkbox-check#checked) prop is
22
+ * automatically derived from the context.
16
23
  * @see https://ariakit.org/components/checkbox
17
24
  * @example
18
25
  * ```jsx
@@ -22,18 +29,19 @@ export declare const useCheckboxCheck: import("../utils/types.js").Hook<Checkbox
22
29
  export declare const CheckboxCheck: import("../utils/types.js").Component<CheckboxCheckOptions<"span">>;
23
30
  export interface CheckboxCheckOptions<T extends As = "span"> extends Options<T> {
24
31
  /**
25
- * Object returned by the `useCheckboxStore` hook. If not provided, the parent
26
- * `Checkbox` component's context will be used. If the `checked` prop is
27
- * provided, it will override this prop.
32
+ * Object returned by the
33
+ * [`useCheckboxStore`](https://ariakit.org/reference/use-checkbox-store)
34
+ * hook.
28
35
  */
29
36
  store?: CheckboxStore;
30
37
  /**
31
- * Determines if the check mark should be displayed. This value is
32
- * automatically derived from the
33
- * [`store`](https://ariakit.org/reference/checkbox-check#store) prop or the
34
- * parent [`Checkbox`](https://ariakit.org/reference/checkbox) component.
38
+ * Determines if the checkmark should be rendered. This value is automatically
39
+ * derived from the context when it exists. Manually setting this prop will
40
+ * supersede the derived value.
35
41
  *
36
- * Manually setting this prop will supersede the derived value.
42
+ * Live examples:
43
+ * - [Submenu with
44
+ * Combobox](https://ariakit.org/examples/menu-nested-combobox)
37
45
  */
38
46
  checked?: boolean;
39
47
  }
@@ -3,8 +3,10 @@ import type { PickRequired } from "@ariakit/core/utils/types";
3
3
  import type { CheckboxStoreProps, CheckboxStoreValue } from "./checkbox-store.js";
4
4
  type Value = CheckboxStoreValue;
5
5
  /**
6
- * Provides a checkbox store to its descendants. This is useful to create a
7
- * group of checkboxes that share the same store.
6
+ * Provides a checkbox store for its descendants. This comes in handy when
7
+ * creating a group of checkboxes that share the same state. `CheckboxProvider`
8
+ * can efficiently manage the value of a checkbox, whether it's a single string,
9
+ * number, or boolean value, or an array of such values.
8
10
  * @see https://ariakit.org/components/checkbox
9
11
  * @example
10
12
  * ```jsx
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import {
3
- CheckboxContextProvider
4
- } from "../__chunks/VPR2WHQV.js";
5
2
  import {
6
3
  useCheckboxStore
7
4
  } from "../__chunks/JIZ5C2JK.js";
5
+ import {
6
+ CheckboxContextProvider
7
+ } from "../__chunks/VPR2WHQV.js";
8
8
  import "../__chunks/3ORBWXWF.js";
9
9
  import "../__chunks/EKQEJRUF.js";
10
10
  import "../__chunks/6O5OEQGF.js";
@@ -3,7 +3,8 @@ import type { PickRequired } from "@ariakit/core/utils/types";
3
3
  import type { Store } from "../utils/store.js";
4
4
  export declare function useCheckboxStoreProps<T extends Core.CheckboxStore>(store: T, update: () => void, props: CheckboxStoreProps): T;
5
5
  /**
6
- * Creates a checkbox store.
6
+ * Creates a checkbox store to conveniently manage a checkbox value,
7
+ * whether it's a string, number, boolean, or an array of strings or numbers.
7
8
  * @see https://ariakit.org/components/checkbox
8
9
  * @example
9
10
  * ```jsx
@@ -18,8 +19,9 @@ export type CheckboxStoreState<T extends CheckboxStoreValue = CheckboxStoreValue
18
19
  export type CheckboxStoreFunctions<T extends CheckboxStoreValue = CheckboxStoreValue> = Core.CheckboxStoreFunctions<T>;
19
20
  export interface CheckboxStoreOptions<T extends CheckboxStoreValue = CheckboxStoreValue> extends Core.CheckboxStoreOptions<T> {
20
21
  /**
21
- * A callback that gets called when the `value` state changes.
22
- * @param value The new value.
22
+ * A callback that gets called when the
23
+ * [`value`](https://ariakit.org/reference/checkbox-provider#value) state
24
+ * changes.
23
25
  * @example
24
26
  * function MyCheckbox({ value, onChange }) {
25
27
  * const checkbox = useCheckboxStore({ value, setValue: onChange });
@@ -40,18 +40,21 @@ export interface CheckboxOptions<T extends As = "input"> extends CommandOptions<
40
40
  store?: CheckboxStore;
41
41
  /**
42
42
  * The native `name` attribute.
43
+ *
44
+ * Live examples:
45
+ * - [MenuItemCheckbox](https://ariakit.org/examples/menu-item-checkbox)
43
46
  */
44
47
  name?: string;
45
48
  /**
46
49
  * The value of the checkbox. This is useful when the same checkbox store is
47
- * used for multiple `Checkbox` elements, in which case the value will be an
48
- * array of checked values.
50
+ * used for multiple [`Checkbox`](https://ariakit.org/reference/checkbox)
51
+ * elements, in which case the value will be an array of checked values.
49
52
  *
50
53
  * Live examples:
51
54
  * - [Checkbox group](https://ariakit.org/examples/checkbox-group)
52
55
  * - [MenuItemCheckbox](https://ariakit.org/examples/menu-item-checkbox)
53
56
  * @example
54
- * ```jsx
57
+ * ```jsx "value"
55
58
  * <CheckboxProvider defaultValue={["Apple", "Orange"]}>
56
59
  * <Checkbox value="Apple" />
57
60
  * <Checkbox value="Orange" />
@@ -61,18 +64,20 @@ export interface CheckboxOptions<T extends As = "input"> extends CommandOptions<
61
64
  */
62
65
  value?: InputHTMLAttributes<HTMLInputElement>["value"];
63
66
  /**
64
- * The default `checked` state of the checkbox. This prop is ignored if the
65
- * `checked` or the `store` props are provided.
67
+ * The default checked state of the checkbox. This prop is ignored if the
68
+ * [`checked`](https://ariakit.org/reference/checkbox#checked) or the
69
+ * [`store`](https://ariakit.org/reference/checkbox#store) props are provided.
66
70
  */
67
71
  defaultChecked?: "mixed" | boolean;
68
72
  /**
69
- * The `checked` state of the checkbox. This will override the value inferred
70
- * from `store` prop, if provided. This can be `"mixed"` to indicate that the
71
- * checkbox is partially checked.
73
+ * The checked state of the checkbox. This will override the value inferred
74
+ * from [`store`](https://ariakit.org/reference/checkbox#store) prop, if
75
+ * provided. This can be `"mixed"` to indicate that the checkbox is partially
76
+ * checked.
72
77
  */
73
78
  checked?: "mixed" | boolean;
74
79
  /**
75
- * A function that is called when the checkbox's `checked` store changes.
80
+ * A function that is called when the checkbox's checked state changes.
76
81
  */
77
82
  onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
78
83
  }
@@ -17,8 +17,10 @@ import type { CollectionStore } from "./collection-store.js";
17
17
  export declare const useCollectionItem: import("../utils/types.js").Hook<CollectionItemOptions<"div">>;
18
18
  /**
19
19
  * Renders an item in a collection. The collection store can be passed
20
- * explicitly through the `store` prop or implicitly through the parent
21
- * `Collection` component.
20
+ * explicitly through the
21
+ * [`store`](https://ariakit.org/reference/collection-item#store) prop or
22
+ * implicitly through the parent
23
+ * [`Collection`](https://ariakit.org/reference/collection) component.
22
24
  * @see https://ariakit.org/components/collection
23
25
  * @example
24
26
  * ```jsx
@@ -33,14 +35,27 @@ export interface CollectionItemOptions<T extends As = "div"> extends Options<T>
33
35
  /**
34
36
  * Object returned by the
35
37
  * [`useCollectionStore`](https://ariakit.org/reference/use-collection-store)
36
- * hook. If not provided, the parent
38
+ * hook. If not provided, the closest
37
39
  * [`Collection`](https://ariakit.org/reference/collection) or
38
40
  * [`CollectionProvider`](https://ariakit.org/reference/collection-provider)
39
41
  * components' context will be used.
42
+ *
43
+ * Live examples:
44
+ * - [Navigation Menubar](https://ariakit.org/examples/menubar-navigation)
40
45
  */
41
46
  store?: CollectionStore;
42
47
  /**
43
- * Whether the item should be registered to the store.
48
+ * The unique ID of the item. This will be used to register the item in the
49
+ * store and for the element's `id` attribute. If not provided, a unique ID
50
+ * will be automatically generated.
51
+ *
52
+ * Live examples:
53
+ * - [Combobox with tabs](https://ariakit.org/examples/combobox-tabs)
54
+ * - [Tab with React Router](https://ariakit.org/examples/tab-react-router)
55
+ */
56
+ id?: string;
57
+ /**
58
+ * Whether the item should be registered as part of the collection.
44
59
  *
45
60
  * Live examples:
46
61
  * - [Combobox with tabs](https://ariakit.org/examples/combobox-tabs)
@@ -48,13 +63,12 @@ export interface CollectionItemOptions<T extends As = "div"> extends Options<T>
48
63
  */
49
64
  shouldRegisterItem?: boolean;
50
65
  /**
51
- * A memoized function that returns props that will be passed along with the
52
- * item when it gets registered to the store.
66
+ * A memoized function that returns props to be passed with the item during
67
+ * its registration in the store.
53
68
  * @example
54
69
  * ```jsx
55
- * const store = useCollectionStore();
56
- * const getItem = useCallback((item) => ({ ...item, custom: true }), []);
57
- * <CollectionItem store={store} getItem={getItem} />
70
+ * const getItem = useCallback((data) => ({ ...data, custom: true }), []);
71
+ * <CollectionItem getItem={getItem} />
58
72
  * ```
59
73
  */
60
74
  getItem?: (props: CollectionStoreItem) => CollectionStoreItem;
@@ -2,7 +2,8 @@ import type { ReactElement, ReactNode } from "react";
2
2
  import type { PickRequired } from "@ariakit/core/utils/types";
3
3
  import type { CollectionStoreItem, CollectionStoreProps } from "./collection-store.js";
4
4
  /**
5
- * Provides a collection store to CollectionItem components.
5
+ * Provides a collection store to
6
+ * [`CollectionItem`](https://ariakit.org/reference/collection-item) components.
6
7
  * @see https://ariakit.org/components/collection
7
8
  * @example
8
9
  * ```jsx
@@ -327,7 +327,7 @@ export interface CollectionRendererOptions<T extends Item = any> {
327
327
  /**
328
328
  * Object returned by the
329
329
  * [`useCollectionStore`](https://ariakit.org/reference/use-collection-store)
330
- * hook. If not provided, the parent
330
+ * hook. If not provided, the closest
331
331
  * [Collection](https://ariakit.org/components/collection) component's
332
332
  * context will be used.
333
333
  *
@@ -3,11 +3,13 @@ import type { BivariantCallback, PickRequired } from "@ariakit/core/utils/types"
3
3
  import type { Store } from "../utils/store.js";
4
4
  export declare function useCollectionStoreProps<T extends Core.CollectionStore>(store: T, update: () => void, props: CollectionStoreProps): T;
5
5
  /**
6
- * Creates a collection store.
6
+ * Creates a collection store to control
7
+ * [Collection](https://ariakit.org/components/collection) components.
7
8
  * @see https://ariakit.org/components/collection
8
9
  * @example
9
10
  * ```jsx
10
11
  * const collection = useCollectionStore();
12
+ *
11
13
  * <Collection store={collection}>
12
14
  * <CollectionItem>Item</CollectionItem>
13
15
  * <CollectionItem>Item</CollectionItem>
@@ -25,8 +27,9 @@ export interface CollectionStoreFunctions<T extends CollectionStoreItem = Collec
25
27
  }
26
28
  export interface CollectionStoreOptions<T extends CollectionStoreItem = CollectionStoreItem> extends Core.CollectionStoreOptions<T> {
27
29
  /**
28
- * A callback that gets called when the `items` state changes.
29
- * @param items The new items.
30
+ * A callback that gets called when the
31
+ * [`items`](https://ariakit.org/reference/collection-provider#items) state
32
+ * changes.
30
33
  * @example
31
34
  * const [items, setItems] = useState([]);
32
35
  * const collection = useCollectionStore({ items, setItems });
@@ -18,9 +18,10 @@ import type { CollectionStore } from "./collection-store.js";
18
18
  */
19
19
  export declare const useCollection: import("../utils/types.js").Hook<CollectionOptions<"div">>;
20
20
  /**
21
- * Renders a simple wrapper for collection items. It receives the collection
22
- * store through the `store` prop and provides context for `CollectionItem`
23
- * components.
21
+ * Renders a simple wrapper for collection items. It accepts a collection store
22
+ * through the [`store`](https://ariakit.org/reference/collection#store) prop
23
+ * and provides context for
24
+ * [`CollectionItem`](https://ariakit.org/reference/collection-item) components.
24
25
  * @see https://ariakit.org/components/collection
25
26
  * @example
26
27
  * ```jsx
@@ -15,10 +15,11 @@ import type { ComboboxStore } from "./combobox-store.js";
15
15
  */
16
16
  export declare const useComboboxCancel: import("../utils/types.js").Hook<ComboboxCancelOptions<"button">>;
17
17
  /**
18
- * Renders a combobox cancel button that clears the combobox input when clicked.
18
+ * Renders a combobox cancel button that clears the combobox input value when
19
+ * clicked.
19
20
  * @see https://ariakit.org/components/combobox
20
21
  * @example
21
- * ```jsx
22
+ * ```jsx {3}
22
23
  * <ComboboxProvider>
23
24
  * <Combobox />
24
25
  * <ComboboxCancel />
@@ -20,11 +20,16 @@ import type { ComboboxStore } from "./combobox-store.js";
20
20
  */
21
21
  export declare const useComboboxDisclosure: import("../utils/types.js").Hook<ComboboxDisclosureOptions<"button">>;
22
22
  /**
23
- * Renders a combobox disclosure button that toggles the combobox popover
23
+ * Renders a combobox disclosure button that toggles the
24
+ * [`ComboboxPopover`](https://ariakit.org/reference/combobox-popover) element's
24
25
  * visibility when clicked.
26
+ *
27
+ * Although this button is not tabbable, it remains accessible to screen reader
28
+ * users. On clicking, it automatically shifts focus to the
29
+ * [`Combobox`](https://ariakit.org/reference/combobox) element.
25
30
  * @see https://ariakit.org/components/combobox
26
31
  * @example
27
- * ```jsx
32
+ * ```jsx {3}
28
33
  * <ComboboxProvider>
29
34
  * <Combobox />
30
35
  * <ComboboxDisclosure />
@@ -16,11 +16,11 @@ import type { ComboboxStore } from "./combobox-store.js";
16
16
  export declare const useComboboxGroupLabel: import("../utils/types.js").Hook<ComboboxGroupLabelOptions<"div">>;
17
17
  /**
18
18
  * Renders a label in a combobox group. This component should be wrapped with
19
- * `ComboboxGroup` so the `aria-labelledby` is correctly set on the combobox
20
- * group element.
19
+ * [`ComboboxGroup`](https://ariakit.org/reference/combobox-group) so the
20
+ * `aria-labelledby` is correctly set on the group element.
21
21
  * @see https://ariakit.org/components/combobox
22
22
  * @example
23
- * ```jsx
23
+ * ```jsx {5}
24
24
  * <ComboboxProvider>
25
25
  * <Combobox />
26
26
  * <ComboboxPopover>
@@ -38,7 +38,7 @@ export interface ComboboxGroupLabelOptions<T extends As = "div"> extends Composi
38
38
  /**
39
39
  * Object returned by the
40
40
  * [`useComboboxStore`](https://ariakit.org/reference/use-combobox-store)
41
- * hook. If not provided, the parent
41
+ * hook. If not provided, the closest
42
42
  * [`ComboboxList`](https://ariakit.org/reference/combobox-list) or
43
43
  * [`ComboboxPopover`](https://ariakit.org/reference/combobox-popover)
44
44
  * components' context will be used.
@@ -20,10 +20,14 @@ import type { ComboboxStore } from "./combobox-store.js";
20
20
  */
21
21
  export declare const useComboboxGroup: import("../utils/types.js").Hook<ComboboxGroupOptions<"div">>;
22
22
  /**
23
- * Renders a combobox group.
23
+ * Renders a group for
24
+ * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) elements.
25
+ * Optionally, a
26
+ * [`ComboboxGroupLabel`](https://ariakit.org/reference/combobox-group-label)
27
+ * can be rendered as a child to provide a label for the group.
24
28
  * @see https://ariakit.org/components/combobox
25
29
  * @example
26
- * ```jsx
30
+ * ```jsx {4-8}
27
31
  * <ComboboxProvider>
28
32
  * <Combobox />
29
33
  * <ComboboxPopover>
@@ -41,7 +45,7 @@ export interface ComboboxGroupOptions<T extends As = "div"> extends CompositeGro
41
45
  /**
42
46
  * Object returned by the
43
47
  * [`useComboboxStore`](https://ariakit.org/reference/use-combobox-store)
44
- * hook. If not provided, the parent
48
+ * hook. If not provided, the closest
45
49
  * [`ComboboxList`](https://ariakit.org/reference/combobox-list) or
46
50
  * [`ComboboxPopover`](https://ariakit.org/reference/combobox-popover)
47
51
  * components' context will be used.
@@ -14,12 +14,15 @@ import type { ComboboxStore } from "./combobox-store.js";
14
14
  */
15
15
  export declare const useComboboxItemCheck: import("../utils/types.js").Hook<ComboboxItemCheckOptions<"span">>;
16
16
  /**
17
- * Renders a checkmark inside a
18
- * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) component. This
19
- * component must be wrapped with
20
- * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) or the
17
+ * Renders a checkmark icon when the
21
18
  * [`checked`](https://ariakit.org/reference/combobox-item-check#checked) prop
22
- * must be explicitly passed to the component.
19
+ * is `true`. The icon can be overridden by providing a different one as
20
+ * children.
21
+ *
22
+ * When rendered inside a
23
+ * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) component, the
24
+ * [`checked`](https://ariakit.org/reference/combobox-item-check#checked) prop
25
+ * is automatically derived from the context.
23
26
  * @see https://ariakit.org/components/combobox
24
27
  * @example
25
28
  * ```jsx {5,9}
@@ -43,18 +46,8 @@ export interface ComboboxItemCheckOptions<T extends As = "span"> extends Checkbo
43
46
  /**
44
47
  * Object returned by the
45
48
  * [`useComboboxStore`](https://ariakit.org/reference/use-combobox-store)
46
- * hook. If not provided, the parent
47
- * [`ComboboxList`](https://ariakit.org/reference/combobox-list) or
48
- * [`ComboboxPopover`](https://ariakit.org/reference/combobox-popover)
49
- * components' context will be used.
49
+ * hook.
50
50
  */
51
51
  store?: ComboboxStore;
52
- /**
53
- * Whether the check mark should be shown. This value is automatically
54
- * inferred from the parent
55
- * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) component.
56
- * Manually setting this prop will override the inferred value.
57
- */
58
- checked?: boolean;
59
52
  }
60
53
  export type ComboboxItemCheckProps<T extends As = "span"> = Props<ComboboxItemCheckOptions<T>>;
@@ -23,13 +23,16 @@ import type { ComboboxStore } from "./combobox-store.js";
23
23
  */
24
24
  export declare const useComboboxItemValue: import("../utils/types.js").Hook<ComboboxItemValueOptions<"span">>;
25
25
  /**
26
- * Renders a value element inside a combobox item. The value will be split into
27
- * span elements. The portions of the value that correspond to the store value
28
- * will have a `data-user-value` attribute. The other portions will have a
29
- * `data-autocomplete-value` attribute.
26
+ * Renders a value element inside a
27
+ * [`ComboboxItem`](https://ariakit.org/reference/combobox-item). The value will
28
+ * be split into span elements. The portions of the value that correspond to the
29
+ * combobox value will have a
30
+ * [`data-user-value`](https://ariakit.org/guide/styling#data-user-value)
31
+ * attribute. The other portions will have a [`data-autocomplete-value`](https://ariakit.org/guide/styling#data-autocomplete-value)
32
+ * attribute.
30
33
  * @see https://ariakit.org/components/combobox
31
34
  * @example
32
- * ```jsx
35
+ * ```jsx {5} "value"
33
36
  * <ComboboxProvider value="p">
34
37
  * <Combobox />
35
38
  * <ComboboxPopover>
@@ -53,15 +56,17 @@ export interface ComboboxItemValueOptions<T extends As = "span"> extends Options
53
56
  /**
54
57
  * Object returned by the
55
58
  * [`useComboboxStore`](https://ariakit.org/reference/use-combobox-store)
56
- * hook. If not provided, the parent
59
+ * hook. If not provided, the closest
57
60
  * [`ComboboxList`](https://ariakit.org/reference/combobox-list) or
58
61
  * [`ComboboxPopover`](https://ariakit.org/reference/combobox-popover)
59
62
  * components' context will be used.
60
63
  */
61
64
  store?: ComboboxStore;
62
65
  /**
63
- * The current combobox item value. If not provided, the parent `ComboboxItem`
64
- * component's `value` prop will be used.
66
+ * The current combobox item value. If not provided, the parent
67
+ * [`ComboboxItem`](https://ariakit.org/reference/combobox-item) component's
68
+ * [`value`](https://ariakit.org/reference/combobox-item#value) prop will be
69
+ * used.
65
70
  */
66
71
  value?: string;
67
72
  }