@ariakit/react-core 0.3.12 → 0.3.13

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 (610) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/cjs/__chunks/{LICANQTI.cjs → 25ZFPUHH.cjs} +2 -2
  3. package/cjs/__chunks/{LFHNPG2L.cjs → 2FTVUUOK.cjs} +2 -2
  4. package/cjs/__chunks/{7ZVTEFD7.cjs → 2IMEEJHG.cjs} +2 -2
  5. package/cjs/__chunks/{BBS4RP44.cjs → 2UEWAQWG.cjs} +2 -2
  6. package/cjs/__chunks/{TGTVGYEZ.cjs → 4KFTI2WW.cjs} +2 -2
  7. package/cjs/__chunks/{KDG57VZV.cjs → CIZTEPFO.cjs} +3 -3
  8. package/cjs/__chunks/{UXFBTIBY.cjs → ER5DEJFH.cjs} +2 -2
  9. package/cjs/__chunks/{EKB76T2U.cjs → FGHQW2WS.cjs} +7 -7
  10. package/cjs/__chunks/{XA62Y24Z.cjs → GGMSVQ4G.cjs} +2 -2
  11. package/cjs/__chunks/{23HLSVKM.cjs → GMQZGKGV.cjs} +2 -2
  12. package/cjs/__chunks/{IO6J4PAN.cjs → GSETTLOU.cjs} +2 -2
  13. package/cjs/__chunks/{RNGIWUQW.cjs → HQEKHRPP.cjs} +2 -2
  14. package/cjs/__chunks/{7HJPL3H2.cjs → ITQETTAV.cjs} +4 -4
  15. package/cjs/__chunks/{NY3D6JQT.cjs → JFNPRZX3.cjs} +2 -2
  16. package/cjs/__chunks/{G2ZXRZ2R.cjs → MMRX6FNS.cjs} +2 -2
  17. package/cjs/__chunks/{VCDQISP7.cjs → N3XK7EAH.cjs} +7 -7
  18. package/cjs/__chunks/{QCG6J6X5.cjs → NLVGDNPE.cjs} +2 -2
  19. package/cjs/__chunks/{DAJUUBUI.cjs → OSTQZD2E.cjs} +2 -2
  20. package/cjs/__chunks/{ZWICHV7O.cjs → PJ646MI7.cjs} +2 -2
  21. package/cjs/__chunks/{NNINKJTT.cjs → QSU3WKMW.cjs} +2 -2
  22. package/cjs/__chunks/{H6OLBVHA.cjs → R7ERL264.cjs} +2 -2
  23. package/cjs/__chunks/{5UTRYT6E.cjs → REJALU3P.cjs} +2 -2
  24. package/cjs/__chunks/{D4TG5DM4.cjs → UPU6KE6C.cjs} +2 -2
  25. package/cjs/__chunks/{Z3GCTNW4.cjs → VUEWHLYH.cjs} +1 -1
  26. package/cjs/button/button.cjs +4 -4
  27. package/cjs/button/button.d.cts +1 -1
  28. package/cjs/button/button.d.ts +1 -1
  29. package/cjs/checkbox/checkbox-check.d.cts +17 -9
  30. package/cjs/checkbox/checkbox-check.d.ts +17 -9
  31. package/cjs/checkbox/checkbox-provider.cjs +2 -2
  32. package/cjs/checkbox/checkbox-provider.d.cts +4 -2
  33. package/cjs/checkbox/checkbox-provider.d.ts +4 -2
  34. package/cjs/checkbox/checkbox-store.d.cts +5 -3
  35. package/cjs/checkbox/checkbox-store.d.ts +5 -3
  36. package/cjs/checkbox/checkbox.cjs +4 -4
  37. package/cjs/checkbox/checkbox.d.cts +14 -9
  38. package/cjs/checkbox/checkbox.d.ts +14 -9
  39. package/cjs/collection/collection-item.d.cts +23 -9
  40. package/cjs/collection/collection-item.d.ts +23 -9
  41. package/cjs/collection/collection-provider.d.cts +2 -1
  42. package/cjs/collection/collection-provider.d.ts +2 -1
  43. package/cjs/collection/collection-renderer.d.cts +1 -1
  44. package/cjs/collection/collection-renderer.d.ts +1 -1
  45. package/cjs/collection/collection-store.d.cts +6 -3
  46. package/cjs/collection/collection-store.d.ts +6 -3
  47. package/cjs/collection/collection.d.cts +4 -3
  48. package/cjs/collection/collection.d.ts +4 -3
  49. package/cjs/combobox/combobox-cancel.cjs +4 -4
  50. package/cjs/combobox/combobox-cancel.d.cts +3 -2
  51. package/cjs/combobox/combobox-cancel.d.ts +3 -2
  52. package/cjs/combobox/combobox-disclosure.cjs +6 -6
  53. package/cjs/combobox/combobox-disclosure.d.cts +7 -2
  54. package/cjs/combobox/combobox-disclosure.d.ts +7 -2
  55. package/cjs/combobox/combobox-group-label.d.cts +4 -4
  56. package/cjs/combobox/combobox-group-label.d.ts +4 -4
  57. package/cjs/combobox/combobox-group.d.cts +7 -3
  58. package/cjs/combobox/combobox-group.d.ts +7 -3
  59. package/cjs/combobox/combobox-item-check.d.cts +9 -16
  60. package/cjs/combobox/combobox-item-check.d.ts +9 -16
  61. package/cjs/combobox/combobox-item-value.d.cts +13 -8
  62. package/cjs/combobox/combobox-item-value.d.ts +13 -8
  63. package/cjs/combobox/combobox-item.cjs +4 -4
  64. package/cjs/combobox/combobox-item.d.cts +11 -9
  65. package/cjs/combobox/combobox-item.d.ts +11 -9
  66. package/cjs/combobox/combobox-list.cjs +3 -3
  67. package/cjs/combobox/combobox-list.d.cts +1 -4
  68. package/cjs/combobox/combobox-list.d.ts +1 -4
  69. package/cjs/combobox/combobox-popover.cjs +10 -10
  70. package/cjs/combobox/combobox-popover.d.cts +2 -3
  71. package/cjs/combobox/combobox-popover.d.ts +2 -3
  72. package/cjs/combobox/combobox-provider.d.cts +2 -1
  73. package/cjs/combobox/combobox-provider.d.ts +2 -1
  74. package/cjs/combobox/combobox-row.d.cts +6 -3
  75. package/cjs/combobox/combobox-row.d.ts +6 -3
  76. package/cjs/combobox/combobox-separator.d.cts +4 -3
  77. package/cjs/combobox/combobox-separator.d.ts +4 -3
  78. package/cjs/combobox/combobox-store.d.cts +11 -7
  79. package/cjs/combobox/combobox-store.d.ts +11 -7
  80. package/cjs/combobox/combobox.cjs +3 -3
  81. package/cjs/combobox/combobox.d.cts +45 -33
  82. package/cjs/combobox/combobox.d.ts +45 -33
  83. package/cjs/command/command.cjs +3 -3
  84. package/cjs/command/command.d.cts +1 -1
  85. package/cjs/command/command.d.ts +1 -1
  86. package/cjs/composite/composite-container.d.cts +18 -11
  87. package/cjs/composite/composite-container.d.ts +18 -11
  88. package/cjs/composite/composite-group-label.d.cts +18 -13
  89. package/cjs/composite/composite-group-label.d.ts +18 -13
  90. package/cjs/composite/composite-group.d.cts +20 -12
  91. package/cjs/composite/composite-group.d.ts +20 -12
  92. package/cjs/composite/composite-hover.d.cts +17 -8
  93. package/cjs/composite/composite-hover.d.ts +17 -8
  94. package/cjs/composite/composite-input.d.cts +15 -9
  95. package/cjs/composite/composite-input.d.ts +15 -9
  96. package/cjs/composite/composite-item.cjs +4 -4
  97. package/cjs/composite/composite-item.d.cts +49 -9
  98. package/cjs/composite/composite-item.d.ts +49 -9
  99. package/cjs/composite/composite-overflow-disclosure.cjs +9 -9
  100. package/cjs/composite/composite-overflow.cjs +7 -7
  101. package/cjs/composite/composite-provider.d.cts +2 -1
  102. package/cjs/composite/composite-provider.d.ts +2 -1
  103. package/cjs/composite/composite-renderer.d.cts +1 -1
  104. package/cjs/composite/composite-renderer.d.ts +1 -1
  105. package/cjs/composite/composite-row.d.cts +26 -19
  106. package/cjs/composite/composite-row.d.ts +26 -19
  107. package/cjs/composite/composite-separator.d.cts +23 -10
  108. package/cjs/composite/composite-separator.d.ts +23 -10
  109. package/cjs/composite/composite-store.d.cts +3 -1
  110. package/cjs/composite/composite-store.d.ts +3 -1
  111. package/cjs/composite/composite-typeahead.d.cts +20 -8
  112. package/cjs/composite/composite-typeahead.d.ts +20 -8
  113. package/cjs/composite/composite.cjs +3 -3
  114. package/cjs/composite/composite.d.cts +65 -10
  115. package/cjs/composite/composite.d.ts +65 -10
  116. package/cjs/dialog/dialog-disclosure.cjs +6 -6
  117. package/cjs/dialog/dialog-disclosure.d.cts +2 -1
  118. package/cjs/dialog/dialog-disclosure.d.ts +2 -1
  119. package/cjs/dialog/dialog-dismiss.cjs +5 -5
  120. package/cjs/dialog/dialog-dismiss.d.cts +2 -1
  121. package/cjs/dialog/dialog-dismiss.d.ts +2 -1
  122. package/cjs/dialog/dialog-provider.d.cts +2 -1
  123. package/cjs/dialog/dialog-provider.d.ts +2 -1
  124. package/cjs/dialog/dialog-store.d.cts +3 -1
  125. package/cjs/dialog/dialog-store.d.ts +3 -1
  126. package/cjs/dialog/dialog.cjs +6 -6
  127. package/cjs/dialog/dialog.d.cts +51 -20
  128. package/cjs/dialog/dialog.d.ts +51 -20
  129. package/cjs/dialog/utils/disable-tree.cjs +3 -3
  130. package/cjs/dialog/utils/use-hide-on-interact-outside.cjs +1 -1
  131. package/cjs/disclosure/disclosure-content.d.cts +6 -5
  132. package/cjs/disclosure/disclosure-content.d.ts +6 -5
  133. package/cjs/disclosure/disclosure-provider.d.cts +2 -1
  134. package/cjs/disclosure/disclosure-provider.d.ts +2 -1
  135. package/cjs/disclosure/disclosure-store.d.cts +6 -4
  136. package/cjs/disclosure/disclosure-store.d.ts +6 -4
  137. package/cjs/disclosure/disclosure.cjs +5 -5
  138. package/cjs/disclosure/disclosure.d.cts +3 -2
  139. package/cjs/disclosure/disclosure.d.ts +3 -2
  140. package/cjs/focus-trap/focus-trap-region.d.cts +4 -2
  141. package/cjs/focus-trap/focus-trap-region.d.ts +4 -2
  142. package/cjs/focusable/focusable-container.d.cts +7 -5
  143. package/cjs/focusable/focusable-container.d.ts +7 -5
  144. package/cjs/focusable/focusable.cjs +2 -2
  145. package/cjs/focusable/focusable.d.cts +5 -2
  146. package/cjs/focusable/focusable.d.ts +5 -2
  147. package/cjs/form/form-checkbox.cjs +8 -8
  148. package/cjs/form/form-checkbox.d.cts +6 -4
  149. package/cjs/form/form-checkbox.d.ts +6 -4
  150. package/cjs/form/form-control.cjs +16 -0
  151. package/cjs/form/form-control.d.cts +93 -0
  152. package/cjs/form/form-control.d.ts +93 -0
  153. package/cjs/form/form-description.d.cts +14 -3
  154. package/cjs/form/form-description.d.ts +14 -3
  155. package/cjs/form/form-error.d.cts +11 -4
  156. package/cjs/form/form-error.d.ts +11 -4
  157. package/cjs/form/form-field.cjs +19 -4
  158. package/cjs/form/form-field.d.cts +16 -30
  159. package/cjs/form/form-field.d.ts +16 -30
  160. package/cjs/form/form-group-label.d.cts +6 -4
  161. package/cjs/form/form-group-label.d.ts +6 -4
  162. package/cjs/form/form-group.d.cts +6 -2
  163. package/cjs/form/form-group.d.ts +6 -2
  164. package/cjs/form/form-input.cjs +4 -4
  165. package/cjs/form/form-input.d.cts +7 -6
  166. package/cjs/form/form-input.d.ts +7 -6
  167. package/cjs/form/form-label.d.cts +18 -7
  168. package/cjs/form/form-label.d.ts +18 -7
  169. package/cjs/form/form-provider.d.cts +2 -1
  170. package/cjs/form/form-provider.d.ts +2 -1
  171. package/cjs/form/form-push.cjs +4 -4
  172. package/cjs/form/form-push.d.cts +17 -3
  173. package/cjs/form/form-push.d.ts +17 -3
  174. package/cjs/form/form-radio-group.d.cts +7 -2
  175. package/cjs/form/form-radio-group.d.ts +7 -2
  176. package/cjs/form/form-radio.cjs +7 -7
  177. package/cjs/form/form-radio.d.cts +8 -4
  178. package/cjs/form/form-radio.d.ts +8 -4
  179. package/cjs/form/form-remove.cjs +4 -4
  180. package/cjs/form/form-remove.d.cts +17 -2
  181. package/cjs/form/form-remove.d.ts +17 -2
  182. package/cjs/form/form-reset.cjs +4 -4
  183. package/cjs/form/form-reset.d.cts +5 -2
  184. package/cjs/form/form-reset.d.ts +5 -2
  185. package/cjs/form/form-store.d.cts +31 -14
  186. package/cjs/form/form-store.d.ts +31 -14
  187. package/cjs/form/form-submit.cjs +4 -4
  188. package/cjs/form/form-submit.d.cts +8 -2
  189. package/cjs/form/form-submit.d.ts +8 -2
  190. package/cjs/form/form.d.cts +37 -11
  191. package/cjs/form/form.d.ts +37 -11
  192. package/cjs/group/group-label.d.cts +3 -2
  193. package/cjs/group/group-label.d.ts +3 -2
  194. package/cjs/group/group.d.cts +3 -1
  195. package/cjs/group/group.d.ts +3 -1
  196. package/cjs/heading/heading-level.d.cts +4 -2
  197. package/cjs/heading/heading-level.d.ts +4 -2
  198. package/cjs/heading/heading.d.cts +4 -3
  199. package/cjs/heading/heading.d.ts +4 -3
  200. package/cjs/hovercard/hovercard-anchor.cjs +3 -3
  201. package/cjs/hovercard/hovercard-anchor.d.cts +5 -2
  202. package/cjs/hovercard/hovercard-anchor.d.ts +5 -2
  203. package/cjs/hovercard/hovercard-arrow.d.cts +4 -2
  204. package/cjs/hovercard/hovercard-arrow.d.ts +4 -2
  205. package/cjs/hovercard/hovercard-description.d.cts +2 -2
  206. package/cjs/hovercard/hovercard-description.d.ts +2 -2
  207. package/cjs/hovercard/hovercard-disclosure.cjs +6 -6
  208. package/cjs/hovercard/hovercard-disclosure.d.cts +1 -1
  209. package/cjs/hovercard/hovercard-disclosure.d.ts +1 -1
  210. package/cjs/hovercard/hovercard-dismiss.cjs +7 -7
  211. package/cjs/hovercard/hovercard-dismiss.d.cts +3 -2
  212. package/cjs/hovercard/hovercard-dismiss.d.ts +3 -2
  213. package/cjs/hovercard/hovercard-heading.d.cts +2 -2
  214. package/cjs/hovercard/hovercard-heading.d.ts +2 -2
  215. package/cjs/hovercard/hovercard-provider.d.cts +2 -1
  216. package/cjs/hovercard/hovercard-provider.d.ts +2 -1
  217. package/cjs/hovercard/hovercard-store.d.cts +2 -1
  218. package/cjs/hovercard/hovercard-store.d.ts +2 -1
  219. package/cjs/hovercard/hovercard.cjs +8 -8
  220. package/cjs/hovercard/hovercard.d.cts +20 -8
  221. package/cjs/hovercard/hovercard.d.ts +20 -8
  222. package/cjs/menu/menu-arrow.d.cts +4 -2
  223. package/cjs/menu/menu-arrow.d.ts +4 -2
  224. package/cjs/menu/menu-bar.cjs +4 -4
  225. package/cjs/menu/menu-bar.d.cts +1 -2
  226. package/cjs/menu/menu-bar.d.ts +1 -2
  227. package/cjs/menu/menu-button-arrow.d.cts +9 -4
  228. package/cjs/menu/menu-button-arrow.d.ts +9 -4
  229. package/cjs/menu/menu-button.cjs +9 -9
  230. package/cjs/menu/menu-button.d.cts +8 -7
  231. package/cjs/menu/menu-button.d.ts +8 -7
  232. package/cjs/menu/menu-description.d.cts +2 -2
  233. package/cjs/menu/menu-description.d.ts +2 -2
  234. package/cjs/menu/menu-dismiss.cjs +7 -7
  235. package/cjs/menu/menu-dismiss.d.cts +3 -2
  236. package/cjs/menu/menu-dismiss.d.ts +3 -2
  237. package/cjs/menu/menu-group-label.d.cts +4 -4
  238. package/cjs/menu/menu-group-label.d.ts +4 -4
  239. package/cjs/menu/menu-group.d.cts +5 -2
  240. package/cjs/menu/menu-group.d.ts +5 -2
  241. package/cjs/menu/menu-heading.d.cts +3 -2
  242. package/cjs/menu/menu-heading.d.ts +3 -2
  243. package/cjs/menu/menu-item-check.d.cts +10 -18
  244. package/cjs/menu/menu-item-check.d.ts +10 -18
  245. package/cjs/menu/menu-item-checkbox.cjs +9 -9
  246. package/cjs/menu/menu-item-checkbox.d.cts +38 -6
  247. package/cjs/menu/menu-item-checkbox.d.ts +38 -6
  248. package/cjs/menu/menu-item-radio.cjs +7 -7
  249. package/cjs/menu/menu-item-radio.d.cts +21 -9
  250. package/cjs/menu/menu-item-radio.d.ts +21 -9
  251. package/cjs/menu/menu-item.cjs +5 -5
  252. package/cjs/menu/menu-item.d.cts +10 -11
  253. package/cjs/menu/menu-item.d.ts +10 -11
  254. package/cjs/menu/menu-list.cjs +4 -4
  255. package/cjs/menu/menu-list.d.cts +7 -2
  256. package/cjs/menu/menu-list.d.ts +7 -2
  257. package/cjs/menu/menu-provider.d.cts +2 -1
  258. package/cjs/menu/menu-provider.d.ts +2 -1
  259. package/cjs/menu/menu-separator.d.cts +5 -2
  260. package/cjs/menu/menu-separator.d.ts +5 -2
  261. package/cjs/menu/menu-store.d.cts +18 -7
  262. package/cjs/menu/menu-store.d.ts +18 -7
  263. package/cjs/menu/menu.cjs +12 -12
  264. package/cjs/menu/menu.d.cts +8 -2
  265. package/cjs/menu/menu.d.ts +8 -2
  266. package/cjs/menubar/menubar-provider.d.cts +2 -1
  267. package/cjs/menubar/menubar-provider.d.ts +2 -1
  268. package/cjs/menubar/menubar-store.d.cts +3 -1
  269. package/cjs/menubar/menubar-store.d.ts +3 -1
  270. package/cjs/menubar/menubar.cjs +4 -4
  271. package/cjs/menubar/menubar.d.cts +3 -2
  272. package/cjs/menubar/menubar.d.ts +3 -2
  273. package/cjs/popover/popover-anchor.d.cts +4 -3
  274. package/cjs/popover/popover-anchor.d.ts +4 -3
  275. package/cjs/popover/popover-arrow.d.cts +6 -2
  276. package/cjs/popover/popover-arrow.d.ts +6 -2
  277. package/cjs/popover/popover-description.d.cts +1 -1
  278. package/cjs/popover/popover-description.d.ts +1 -1
  279. package/cjs/popover/popover-disclosure-arrow.d.cts +6 -4
  280. package/cjs/popover/popover-disclosure-arrow.d.ts +6 -4
  281. package/cjs/popover/popover-disclosure.cjs +7 -7
  282. package/cjs/popover/popover-disclosure.d.cts +3 -2
  283. package/cjs/popover/popover-disclosure.d.ts +3 -2
  284. package/cjs/popover/popover-dismiss.cjs +6 -6
  285. package/cjs/popover/popover-dismiss.d.cts +1 -1
  286. package/cjs/popover/popover-dismiss.d.ts +1 -1
  287. package/cjs/popover/popover-heading.d.cts +1 -1
  288. package/cjs/popover/popover-heading.d.ts +1 -1
  289. package/cjs/popover/popover-provider.d.cts +2 -1
  290. package/cjs/popover/popover-provider.d.ts +2 -1
  291. package/cjs/popover/popover-store.d.cts +2 -1
  292. package/cjs/popover/popover-store.d.ts +2 -1
  293. package/cjs/popover/popover.cjs +7 -7
  294. package/cjs/popover/popover.d.cts +8 -3
  295. package/cjs/popover/popover.d.ts +8 -3
  296. package/cjs/portal/portal.d.cts +18 -1
  297. package/cjs/portal/portal.d.ts +18 -1
  298. package/cjs/radio/radio-group.cjs +3 -3
  299. package/cjs/radio/radio-group.d.cts +8 -6
  300. package/cjs/radio/radio-group.d.ts +8 -6
  301. package/cjs/radio/radio-provider.d.cts +2 -1
  302. package/cjs/radio/radio-provider.d.ts +2 -1
  303. package/cjs/radio/radio-store.d.cts +6 -2
  304. package/cjs/radio/radio-store.d.ts +6 -2
  305. package/cjs/radio/radio.cjs +5 -5
  306. package/cjs/radio/radio.d.cts +21 -13
  307. package/cjs/radio/radio.d.ts +21 -13
  308. package/cjs/role/role.d.cts +3 -3
  309. package/cjs/role/role.d.ts +3 -3
  310. package/cjs/select/select-group-label.d.cts +2 -2
  311. package/cjs/select/select-group-label.d.ts +2 -2
  312. package/cjs/select/select-group.d.cts +4 -1
  313. package/cjs/select/select-group.d.ts +4 -1
  314. package/cjs/select/select-item-check.d.cts +9 -15
  315. package/cjs/select/select-item-check.d.ts +9 -15
  316. package/cjs/select/select-item.cjs +4 -4
  317. package/cjs/select/select-item.d.cts +1 -5
  318. package/cjs/select/select-item.d.ts +1 -5
  319. package/cjs/select/select-list.cjs +4 -4
  320. package/cjs/select/select-list.d.cts +7 -4
  321. package/cjs/select/select-list.d.ts +7 -4
  322. package/cjs/select/select-popover.cjs +11 -11
  323. package/cjs/select/select-provider.d.cts +2 -1
  324. package/cjs/select/select-provider.d.ts +2 -1
  325. package/cjs/select/select-renderer.d.cts +1 -1
  326. package/cjs/select/select-renderer.d.ts +1 -1
  327. package/cjs/select/select-row.d.cts +4 -1
  328. package/cjs/select/select-row.d.ts +4 -1
  329. package/cjs/select/select-separator.d.cts +2 -1
  330. package/cjs/select/select-separator.d.ts +2 -1
  331. package/cjs/select/select-store.d.cts +17 -10
  332. package/cjs/select/select-store.d.ts +17 -10
  333. package/cjs/select/select.cjs +15 -13
  334. package/cjs/select/select.d.cts +25 -15
  335. package/cjs/select/select.d.ts +25 -15
  336. package/cjs/tab/tab-list.cjs +3 -3
  337. package/cjs/tab/tab-list.d.cts +2 -1
  338. package/cjs/tab/tab-list.d.ts +2 -1
  339. package/cjs/tab/tab-panel.cjs +2 -2
  340. package/cjs/tab/tab-panel.d.cts +19 -3
  341. package/cjs/tab/tab-panel.d.ts +19 -3
  342. package/cjs/tab/tab-provider.d.cts +1 -1
  343. package/cjs/tab/tab-provider.d.ts +1 -1
  344. package/cjs/tab/tab-store.d.cts +3 -1
  345. package/cjs/tab/tab-store.d.ts +3 -1
  346. package/cjs/tab/tab.cjs +4 -4
  347. package/cjs/tab/tab.d.cts +2 -2
  348. package/cjs/tab/tab.d.ts +2 -2
  349. package/cjs/toolbar/toolbar-container.cjs +5 -5
  350. package/cjs/toolbar/toolbar-container.d.cts +1 -1
  351. package/cjs/toolbar/toolbar-container.d.ts +1 -1
  352. package/cjs/toolbar/toolbar-input.cjs +5 -5
  353. package/cjs/toolbar/toolbar-input.d.cts +2 -1
  354. package/cjs/toolbar/toolbar-input.d.ts +2 -1
  355. package/cjs/toolbar/toolbar-item.cjs +5 -5
  356. package/cjs/toolbar/toolbar-item.d.cts +2 -1
  357. package/cjs/toolbar/toolbar-item.d.ts +2 -1
  358. package/cjs/toolbar/toolbar-provider.d.cts +2 -1
  359. package/cjs/toolbar/toolbar-provider.d.ts +2 -1
  360. package/cjs/toolbar/toolbar-separator.d.cts +2 -1
  361. package/cjs/toolbar/toolbar-separator.d.ts +2 -1
  362. package/cjs/toolbar/toolbar-store.d.cts +3 -1
  363. package/cjs/toolbar/toolbar-store.d.ts +3 -1
  364. package/cjs/toolbar/toolbar.cjs +3 -3
  365. package/cjs/tooltip/tooltip-anchor.cjs +3 -3
  366. package/cjs/tooltip/tooltip-anchor.d.cts +3 -3
  367. package/cjs/tooltip/tooltip-anchor.d.ts +3 -3
  368. package/cjs/tooltip/tooltip-arrow.d.cts +1 -1
  369. package/cjs/tooltip/tooltip-arrow.d.ts +1 -1
  370. package/cjs/tooltip/tooltip-provider.d.cts +2 -1
  371. package/cjs/tooltip/tooltip-provider.d.ts +2 -1
  372. package/cjs/tooltip/tooltip-store.d.cts +3 -1
  373. package/cjs/tooltip/tooltip-store.d.ts +3 -1
  374. package/cjs/tooltip/tooltip.cjs +9 -9
  375. package/cjs/tooltip/tooltip.d.cts +3 -1
  376. package/cjs/tooltip/tooltip.d.ts +3 -1
  377. package/esm/__chunks/{7QTPYGNZ.js → 2P5JZHCE.js} +1 -1
  378. package/esm/__chunks/{FS2EVEJO.js → 4GO43MST.js} +8 -8
  379. package/esm/__chunks/{Y6467XPW.js → 53AZXSRJ.js} +1 -1
  380. package/esm/__chunks/{KK7H3W2B.js → 54DTKZT5.js} +1 -1
  381. package/esm/__chunks/{A6XC27R5.js → A2OYJMGS.js} +1 -1
  382. package/esm/__chunks/{NWCBQ4CV.js → BVNGIDQK.js} +1 -1
  383. package/esm/__chunks/{BHEJ6NUH.js → CM2MGWJJ.js} +1 -1
  384. package/esm/__chunks/{7NHUGSTF.js → E7J4UKND.js} +1 -1
  385. package/esm/__chunks/{EPBRINPG.js → EWG7ZSIX.js} +2 -2
  386. package/esm/__chunks/{3AHQ6JCP.js → H5L25YOA.js} +1 -1
  387. package/esm/__chunks/{NKXUN25E.js → H67RUTIW.js} +1 -1
  388. package/esm/__chunks/{7X4DYKYU.js → HKLZHXNQ.js} +1 -1
  389. package/esm/__chunks/{VDNZBO4W.js → JH4A3V7P.js} +1 -1
  390. package/esm/__chunks/{F6PRXTDU.js → O4GQD6D6.js} +1 -1
  391. package/esm/__chunks/{SU2GU5JB.js → OYQPK2TA.js} +1 -1
  392. package/esm/__chunks/{4ZEZYKUR.js → PHR7QED4.js} +1 -1
  393. package/esm/__chunks/{H3TG2CZP.js → PUBUTPR6.js} +1 -1
  394. package/esm/__chunks/{PGAEII2Q.js → SNX6RSV7.js} +5 -5
  395. package/esm/__chunks/{FGMA3QUS.js → ST3UVMBD.js} +1 -1
  396. package/esm/__chunks/{ZEXNX5JH.js → U5OL5Z27.js} +1 -1
  397. package/esm/__chunks/{UK7JL7PY.js → VR7H4JAI.js} +1 -1
  398. package/esm/__chunks/{QZLXIDNP.js → W7TET3D7.js} +1 -1
  399. package/esm/__chunks/{HHNFDKU2.js → WVGRWYXJ.js} +1 -1
  400. package/esm/__chunks/{JL6IRDFK.js → ZICNKKFD.js} +1 -1
  401. package/esm/button/button.d.ts +1 -1
  402. package/esm/button/button.js +3 -3
  403. package/esm/checkbox/checkbox-check.d.ts +17 -9
  404. package/esm/checkbox/checkbox-provider.d.ts +4 -2
  405. package/esm/checkbox/checkbox-provider.js +3 -3
  406. package/esm/checkbox/checkbox-store.d.ts +5 -3
  407. package/esm/checkbox/checkbox.d.ts +14 -9
  408. package/esm/checkbox/checkbox.js +3 -3
  409. package/esm/collection/collection-item.d.ts +23 -9
  410. package/esm/collection/collection-provider.d.ts +2 -1
  411. package/esm/collection/collection-renderer.d.ts +1 -1
  412. package/esm/collection/collection-store.d.ts +6 -3
  413. package/esm/collection/collection.d.ts +4 -3
  414. package/esm/combobox/combobox-cancel.d.ts +3 -2
  415. package/esm/combobox/combobox-cancel.js +3 -3
  416. package/esm/combobox/combobox-disclosure.d.ts +7 -2
  417. package/esm/combobox/combobox-disclosure.js +5 -5
  418. package/esm/combobox/combobox-group-label.d.ts +4 -4
  419. package/esm/combobox/combobox-group.d.ts +7 -3
  420. package/esm/combobox/combobox-item-check.d.ts +9 -16
  421. package/esm/combobox/combobox-item-value.d.ts +13 -8
  422. package/esm/combobox/combobox-item.d.ts +11 -9
  423. package/esm/combobox/combobox-item.js +3 -3
  424. package/esm/combobox/combobox-list.d.ts +1 -4
  425. package/esm/combobox/combobox-list.js +2 -2
  426. package/esm/combobox/combobox-popover.d.ts +2 -3
  427. package/esm/combobox/combobox-popover.js +7 -7
  428. package/esm/combobox/combobox-provider.d.ts +2 -1
  429. package/esm/combobox/combobox-row.d.ts +6 -3
  430. package/esm/combobox/combobox-separator.d.ts +4 -3
  431. package/esm/combobox/combobox-store.d.ts +11 -7
  432. package/esm/combobox/combobox.d.ts +45 -33
  433. package/esm/combobox/combobox.js +2 -2
  434. package/esm/command/command.d.ts +1 -1
  435. package/esm/command/command.js +2 -2
  436. package/esm/composite/composite-container.d.ts +18 -11
  437. package/esm/composite/composite-group-label.d.ts +18 -13
  438. package/esm/composite/composite-group.d.ts +20 -12
  439. package/esm/composite/composite-hover.d.ts +17 -8
  440. package/esm/composite/composite-input.d.ts +15 -9
  441. package/esm/composite/composite-item.d.ts +49 -9
  442. package/esm/composite/composite-item.js +3 -3
  443. package/esm/composite/composite-overflow-disclosure.js +7 -7
  444. package/esm/composite/composite-overflow.js +6 -6
  445. package/esm/composite/composite-provider.d.ts +2 -1
  446. package/esm/composite/composite-renderer.d.ts +1 -1
  447. package/esm/composite/composite-row.d.ts +26 -19
  448. package/esm/composite/composite-separator.d.ts +23 -10
  449. package/esm/composite/composite-store.d.ts +3 -1
  450. package/esm/composite/composite-typeahead.d.ts +20 -8
  451. package/esm/composite/composite.d.ts +65 -10
  452. package/esm/composite/composite.js +2 -2
  453. package/esm/dialog/dialog-disclosure.d.ts +2 -1
  454. package/esm/dialog/dialog-disclosure.js +5 -5
  455. package/esm/dialog/dialog-dismiss.d.ts +2 -1
  456. package/esm/dialog/dialog-dismiss.js +4 -4
  457. package/esm/dialog/dialog-provider.d.ts +2 -1
  458. package/esm/dialog/dialog-store.d.ts +3 -1
  459. package/esm/dialog/dialog.d.ts +51 -20
  460. package/esm/dialog/dialog.js +5 -5
  461. package/esm/dialog/utils/disable-tree.js +2 -2
  462. package/esm/dialog/utils/use-hide-on-interact-outside.js +1 -1
  463. package/esm/disclosure/disclosure-content.d.ts +6 -5
  464. package/esm/disclosure/disclosure-provider.d.ts +2 -1
  465. package/esm/disclosure/disclosure-store.d.ts +6 -4
  466. package/esm/disclosure/disclosure.d.ts +3 -2
  467. package/esm/disclosure/disclosure.js +4 -4
  468. package/esm/focus-trap/focus-trap-region.d.ts +4 -2
  469. package/esm/focusable/focusable-container.d.ts +7 -5
  470. package/esm/focusable/focusable.d.ts +5 -2
  471. package/esm/focusable/focusable.js +1 -1
  472. package/esm/form/form-checkbox.d.ts +6 -4
  473. package/esm/form/form-checkbox.js +9 -9
  474. package/esm/form/form-control.d.ts +93 -0
  475. package/esm/form/form-control.js +16 -0
  476. package/esm/form/form-description.d.ts +14 -3
  477. package/esm/form/form-error.d.ts +11 -4
  478. package/esm/form/form-field.d.ts +16 -30
  479. package/esm/form/form-field.js +19 -4
  480. package/esm/form/form-group-label.d.ts +6 -4
  481. package/esm/form/form-group.d.ts +6 -2
  482. package/esm/form/form-input.d.ts +7 -6
  483. package/esm/form/form-input.js +4 -4
  484. package/esm/form/form-label.d.ts +18 -7
  485. package/esm/form/form-provider.d.ts +2 -1
  486. package/esm/form/form-push.d.ts +17 -3
  487. package/esm/form/form-push.js +3 -3
  488. package/esm/form/form-radio-group.d.ts +7 -2
  489. package/esm/form/form-radio.d.ts +8 -4
  490. package/esm/form/form-radio.js +7 -7
  491. package/esm/form/form-remove.d.ts +17 -2
  492. package/esm/form/form-remove.js +3 -3
  493. package/esm/form/form-reset.d.ts +5 -2
  494. package/esm/form/form-reset.js +3 -3
  495. package/esm/form/form-store.d.ts +31 -14
  496. package/esm/form/form-submit.d.ts +8 -2
  497. package/esm/form/form-submit.js +3 -3
  498. package/esm/form/form.d.ts +37 -11
  499. package/esm/group/group-label.d.ts +3 -2
  500. package/esm/group/group.d.ts +3 -1
  501. package/esm/heading/heading-level.d.ts +4 -2
  502. package/esm/heading/heading.d.ts +4 -3
  503. package/esm/hovercard/hovercard-anchor.d.ts +5 -2
  504. package/esm/hovercard/hovercard-anchor.js +2 -2
  505. package/esm/hovercard/hovercard-arrow.d.ts +4 -2
  506. package/esm/hovercard/hovercard-description.d.ts +2 -2
  507. package/esm/hovercard/hovercard-disclosure.d.ts +1 -1
  508. package/esm/hovercard/hovercard-disclosure.js +5 -5
  509. package/esm/hovercard/hovercard-dismiss.d.ts +3 -2
  510. package/esm/hovercard/hovercard-dismiss.js +6 -6
  511. package/esm/hovercard/hovercard-heading.d.ts +2 -2
  512. package/esm/hovercard/hovercard-provider.d.ts +2 -1
  513. package/esm/hovercard/hovercard-store.d.ts +2 -1
  514. package/esm/hovercard/hovercard.d.ts +20 -8
  515. package/esm/hovercard/hovercard.js +7 -7
  516. package/esm/menu/menu-arrow.d.ts +4 -2
  517. package/esm/menu/menu-bar.d.ts +1 -2
  518. package/esm/menu/menu-bar.js +3 -3
  519. package/esm/menu/menu-button-arrow.d.ts +9 -4
  520. package/esm/menu/menu-button.d.ts +8 -7
  521. package/esm/menu/menu-button.js +7 -7
  522. package/esm/menu/menu-description.d.ts +2 -2
  523. package/esm/menu/menu-dismiss.d.ts +3 -2
  524. package/esm/menu/menu-dismiss.js +6 -6
  525. package/esm/menu/menu-group-label.d.ts +4 -4
  526. package/esm/menu/menu-group.d.ts +5 -2
  527. package/esm/menu/menu-heading.d.ts +3 -2
  528. package/esm/menu/menu-item-check.d.ts +10 -18
  529. package/esm/menu/menu-item-checkbox.d.ts +38 -6
  530. package/esm/menu/menu-item-checkbox.js +8 -8
  531. package/esm/menu/menu-item-radio.d.ts +21 -9
  532. package/esm/menu/menu-item-radio.js +5 -5
  533. package/esm/menu/menu-item.d.ts +10 -11
  534. package/esm/menu/menu-item.js +4 -4
  535. package/esm/menu/menu-list.d.ts +7 -2
  536. package/esm/menu/menu-list.js +3 -3
  537. package/esm/menu/menu-provider.d.ts +2 -1
  538. package/esm/menu/menu-separator.d.ts +5 -2
  539. package/esm/menu/menu-store.d.ts +18 -7
  540. package/esm/menu/menu.d.ts +8 -2
  541. package/esm/menu/menu.js +9 -9
  542. package/esm/menubar/menubar-provider.d.ts +2 -1
  543. package/esm/menubar/menubar-store.d.ts +3 -1
  544. package/esm/menubar/menubar.d.ts +3 -2
  545. package/esm/menubar/menubar.js +3 -3
  546. package/esm/popover/popover-anchor.d.ts +4 -3
  547. package/esm/popover/popover-arrow.d.ts +6 -2
  548. package/esm/popover/popover-description.d.ts +1 -1
  549. package/esm/popover/popover-disclosure-arrow.d.ts +6 -4
  550. package/esm/popover/popover-disclosure.d.ts +3 -2
  551. package/esm/popover/popover-disclosure.js +6 -6
  552. package/esm/popover/popover-dismiss.d.ts +1 -1
  553. package/esm/popover/popover-dismiss.js +5 -5
  554. package/esm/popover/popover-heading.d.ts +1 -1
  555. package/esm/popover/popover-provider.d.ts +2 -1
  556. package/esm/popover/popover-store.d.ts +2 -1
  557. package/esm/popover/popover.d.ts +8 -3
  558. package/esm/popover/popover.js +6 -6
  559. package/esm/portal/portal.d.ts +18 -1
  560. package/esm/radio/radio-group.d.ts +8 -6
  561. package/esm/radio/radio-group.js +2 -2
  562. package/esm/radio/radio-provider.d.ts +2 -1
  563. package/esm/radio/radio-store.d.ts +6 -2
  564. package/esm/radio/radio.d.ts +21 -13
  565. package/esm/radio/radio.js +4 -4
  566. package/esm/role/role.d.ts +3 -3
  567. package/esm/select/select-group-label.d.ts +2 -2
  568. package/esm/select/select-group.d.ts +4 -1
  569. package/esm/select/select-item-check.d.ts +9 -15
  570. package/esm/select/select-item.d.ts +1 -5
  571. package/esm/select/select-item.js +3 -3
  572. package/esm/select/select-list.d.ts +7 -4
  573. package/esm/select/select-list.js +3 -3
  574. package/esm/select/select-popover.js +8 -8
  575. package/esm/select/select-provider.d.ts +2 -1
  576. package/esm/select/select-renderer.d.ts +1 -1
  577. package/esm/select/select-row.d.ts +4 -1
  578. package/esm/select/select-separator.d.ts +2 -1
  579. package/esm/select/select-store.d.ts +17 -10
  580. package/esm/select/select.d.ts +25 -15
  581. package/esm/select/select.js +14 -12
  582. package/esm/tab/tab-list.d.ts +2 -1
  583. package/esm/tab/tab-list.js +2 -2
  584. package/esm/tab/tab-panel.d.ts +19 -3
  585. package/esm/tab/tab-panel.js +1 -1
  586. package/esm/tab/tab-provider.d.ts +1 -1
  587. package/esm/tab/tab-store.d.ts +3 -1
  588. package/esm/tab/tab.d.ts +2 -2
  589. package/esm/tab/tab.js +3 -3
  590. package/esm/toolbar/toolbar-container.d.ts +1 -1
  591. package/esm/toolbar/toolbar-container.js +4 -4
  592. package/esm/toolbar/toolbar-input.d.ts +2 -1
  593. package/esm/toolbar/toolbar-input.js +4 -4
  594. package/esm/toolbar/toolbar-item.d.ts +2 -1
  595. package/esm/toolbar/toolbar-item.js +4 -4
  596. package/esm/toolbar/toolbar-provider.d.ts +2 -1
  597. package/esm/toolbar/toolbar-separator.d.ts +2 -1
  598. package/esm/toolbar/toolbar-store.d.ts +3 -1
  599. package/esm/toolbar/toolbar.js +2 -2
  600. package/esm/tooltip/tooltip-anchor.d.ts +3 -3
  601. package/esm/tooltip/tooltip-anchor.js +2 -2
  602. package/esm/tooltip/tooltip-arrow.d.ts +1 -1
  603. package/esm/tooltip/tooltip-provider.d.ts +2 -1
  604. package/esm/tooltip/tooltip-store.d.ts +3 -1
  605. package/esm/tooltip/tooltip.d.ts +3 -1
  606. package/esm/tooltip/tooltip.js +7 -7
  607. package/form/form-control/package.json +8 -0
  608. package/package.json +9 -2
  609. package/cjs/__chunks/{NKR65BKC.cjs → KSPMHEYZ.cjs} +3 -3
  610. package/esm/__chunks/{CLF4PQ7T.js → TQYOGOE2.js} +3 -3
@@ -1,6 +1,6 @@
1
1
  import type { RadioOptions } from "../radio/radio.js";
2
2
  import type { As, Props } from "../utils/types.js";
3
- import type { FormFieldOptions } from "./form-field.js";
3
+ import type { FormControlOptions } from "./form-control.js";
4
4
  /**
5
5
  * Returns props to create a `FormRadio` component.
6
6
  * @see https://ariakit.org/components/form
@@ -22,15 +22,19 @@ import type { FormFieldOptions } from "./form-field.js";
22
22
  */
23
23
  export declare const useFormRadio: import("../utils/types.js").Hook<FormRadioOptions<"input">>;
24
24
  /**
25
- * Renders a radio button in a form.
25
+ * Renders a radio button as a form control. This component must be wrapped in a
26
+ * [`FormRadioGroup`](https://ariakit.org/reference/form-radio-group) along with
27
+ * other radio buttons sharing the same
28
+ * [`name`](https://ariakit.org/reference/form-radio#name).
26
29
  * @see https://ariakit.org/components/form
27
30
  * @example
28
- * ```jsx
31
+ * ```jsx {10-12}
29
32
  * const form = useFormStore({
30
33
  * defaultValues: {
31
34
  * char: "a",
32
35
  * },
33
36
  * });
37
+ *
34
38
  * <Form store={form}>
35
39
  * <FormRadioGroup>
36
40
  * <FormGroupLabel>Favorite character</FormGroupLabel>
@@ -42,6 +46,6 @@ export declare const useFormRadio: import("../utils/types.js").Hook<FormRadioOpt
42
46
  * ```
43
47
  */
44
48
  export declare const FormRadio: import("../utils/types.js").Component<FormRadioOptions<"input">>;
45
- export interface FormRadioOptions<T extends As = "input"> extends FormFieldOptions<T>, Omit<RadioOptions<T>, "store" | "name"> {
49
+ export interface FormRadioOptions<T extends As = "input"> extends FormControlOptions<T>, Omit<RadioOptions<T>, "store" | "name"> {
46
50
  }
47
51
  export type FormRadioProps<T extends As = "input"> = Props<FormRadioOptions<T>>;
@@ -4,10 +4,10 @@
4
4
  var _FROYTN4Bcjs = require('../__chunks/FROYTN4B.cjs');
5
5
 
6
6
 
7
- var _5UTRYT6Ecjs = require('../__chunks/5UTRYT6E.cjs');
8
- require('../__chunks/DAJUUBUI.cjs');
7
+ var _REJALU3Pcjs = require('../__chunks/REJALU3P.cjs');
8
+ require('../__chunks/OSTQZD2E.cjs');
9
9
  require('../__chunks/BZTDJIVT.cjs');
10
- require('../__chunks/Z3GCTNW4.cjs');
10
+ require('../__chunks/VUEWHLYH.cjs');
11
11
  require('../__chunks/75KXQZJX.cjs');
12
12
 
13
13
 
@@ -83,7 +83,7 @@ var useFormRemove = _RNZNGEL4cjs.createHook.call(void 0,
83
83
  props = _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), {
84
84
  onClick
85
85
  });
86
- props = _5UTRYT6Ecjs.useButton.call(void 0, props);
86
+ props = _REJALU3Pcjs.useButton.call(void 0, props);
87
87
  return props;
88
88
  }
89
89
  );
@@ -31,14 +31,26 @@ export declare const useFormRemove: import("../utils/types.js").Hook<FormRemoveO
31
31
  /**
32
32
  * Renders a button that will remove an item from an array field in the form
33
33
  * when clicked.
34
+ *
35
+ * The [`name`](https://ariakit.org/reference/form-remove#name) prop must be
36
+ * provided to identify the array field. Similarly, the
37
+ * [`index`](https://ariakit.org/reference/form-remove#index) prop is required
38
+ * to pinpoint the item to remove.
39
+ *
40
+ * By default, the button will automatically move focus to the next field in the
41
+ * form when clicked, or to the previous field if there isn't a next field. This
42
+ * behavior can be disabled by setting the
43
+ * [`autoFocusOnClick`](https://ariakit.org/reference/form-remove#autofocusonclick)
44
+ * prop to `false`.
34
45
  * @see https://ariakit.org/components/form
35
46
  * @example
36
- * ```jsx
47
+ * ```jsx {13}
37
48
  * const form = useFormStore({
38
49
  * defaultValues: {
39
50
  * languages: ["JavaScript", "PHP"],
40
51
  * },
41
52
  * });
53
+ *
42
54
  * const values = form.useState("values");
43
55
  *
44
56
  * <Form store={form}>
@@ -62,7 +74,10 @@ export interface FormRemoveOptions<T extends As = "button"> extends ButtonOption
62
74
  */
63
75
  store?: FormStore;
64
76
  /**
65
- * Name of the array field.
77
+ * Name of the array field. This can either be a string or a reference to a
78
+ * field name from the
79
+ * [`names`](https://ariakit.org/reference/use-form-store#names) object in the
80
+ * store, for type safety.
66
81
  */
67
82
  name: StringLike;
68
83
  /**
@@ -31,14 +31,26 @@ export declare const useFormRemove: import("../utils/types.js").Hook<FormRemoveO
31
31
  /**
32
32
  * Renders a button that will remove an item from an array field in the form
33
33
  * when clicked.
34
+ *
35
+ * The [`name`](https://ariakit.org/reference/form-remove#name) prop must be
36
+ * provided to identify the array field. Similarly, the
37
+ * [`index`](https://ariakit.org/reference/form-remove#index) prop is required
38
+ * to pinpoint the item to remove.
39
+ *
40
+ * By default, the button will automatically move focus to the next field in the
41
+ * form when clicked, or to the previous field if there isn't a next field. This
42
+ * behavior can be disabled by setting the
43
+ * [`autoFocusOnClick`](https://ariakit.org/reference/form-remove#autofocusonclick)
44
+ * prop to `false`.
34
45
  * @see https://ariakit.org/components/form
35
46
  * @example
36
- * ```jsx
47
+ * ```jsx {13}
37
48
  * const form = useFormStore({
38
49
  * defaultValues: {
39
50
  * languages: ["JavaScript", "PHP"],
40
51
  * },
41
52
  * });
53
+ *
42
54
  * const values = form.useState("values");
43
55
  *
44
56
  * <Form store={form}>
@@ -62,7 +74,10 @@ export interface FormRemoveOptions<T extends As = "button"> extends ButtonOption
62
74
  */
63
75
  store?: FormStore;
64
76
  /**
65
- * Name of the array field.
77
+ * Name of the array field. This can either be a string or a reference to a
78
+ * field name from the
79
+ * [`names`](https://ariakit.org/reference/use-form-store#names) object in the
80
+ * store, for type safety.
66
81
  */
67
82
  name: StringLike;
68
83
  /**
@@ -4,10 +4,10 @@
4
4
  var _FROYTN4Bcjs = require('../__chunks/FROYTN4B.cjs');
5
5
 
6
6
 
7
- var _5UTRYT6Ecjs = require('../__chunks/5UTRYT6E.cjs');
8
- require('../__chunks/DAJUUBUI.cjs');
7
+ var _REJALU3Pcjs = require('../__chunks/REJALU3P.cjs');
8
+ require('../__chunks/OSTQZD2E.cjs');
9
9
  require('../__chunks/BZTDJIVT.cjs');
10
- require('../__chunks/Z3GCTNW4.cjs');
10
+ require('../__chunks/VUEWHLYH.cjs');
11
11
  require('../__chunks/75KXQZJX.cjs');
12
12
 
13
13
 
@@ -36,7 +36,7 @@ var useFormReset = _RNZNGEL4cjs.createHook.call(void 0,
36
36
  type: "reset",
37
37
  disabled: store.useState("submitting")
38
38
  }, props);
39
- props = _5UTRYT6Ecjs.useButton.call(void 0, props);
39
+ props = _REJALU3Pcjs.useButton.call(void 0, props);
40
40
  return props;
41
41
  }
42
42
  );
@@ -15,10 +15,13 @@ import type { FormStore } from "./form-store.js";
15
15
  */
16
16
  export declare const useFormReset: import("../utils/types.js").Hook<FormResetOptions<"button">>;
17
17
  /**
18
- * Renders a reset buttom in a form.
18
+ * Renders a button that resets the form to its initial values, as defined by
19
+ * the
20
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
21
+ * prop given to the form store.
19
22
  * @see https://ariakit.org/components/form
20
23
  * @example
21
- * ```jsx
24
+ * ```jsx {4}
22
25
  * const form = useFormStore();
23
26
  *
24
27
  * <Form store={form}>
@@ -15,10 +15,13 @@ import type { FormStore } from "./form-store.js";
15
15
  */
16
16
  export declare const useFormReset: import("../utils/types.js").Hook<FormResetOptions<"button">>;
17
17
  /**
18
- * Renders a reset buttom in a form.
18
+ * Renders a button that resets the form to its initial values, as defined by
19
+ * the
20
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
21
+ * prop given to the form store.
19
22
  * @see https://ariakit.org/components/form
20
23
  * @example
21
- * ```jsx
24
+ * ```jsx {4}
22
25
  * const form = useFormStore();
23
26
  *
24
27
  * <Form store={form}>
@@ -9,7 +9,8 @@ export declare function useFormStoreProps<T extends Omit<FormStore, "useValue" |
9
9
  useSubmit: (callback: Core.FormStoreCallback<FormStoreState<FormStoreValues>>) => void;
10
10
  };
11
11
  /**
12
- * Creates a form store.
12
+ * Creates a form store to control the state of
13
+ * [Form](https://ariakit.org/components/form) components.
13
14
  * @example
14
15
  * ```jsx
15
16
  * const form = useFormStore({
@@ -17,6 +18,7 @@ export declare function useFormStoreProps<T extends Omit<FormStore, "useValue" |
17
18
  * email: "",
18
19
  * },
19
20
  * });
21
+ *
20
22
  * <Form store={form}>
21
23
  * <FormLabel name={form.names.email}>Email</FormLabel>
22
24
  * <FormInput name={form.names.email} />
@@ -36,18 +38,26 @@ export interface FormStoreState<T extends FormStoreValues = FormStoreValues> ext
36
38
  export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues> extends Core.FormStoreFunctions<T>, CollectionStoreFunctions<FormStoreItem> {
37
39
  /**
38
40
  * A custom hook that rerenders the component when the value of the given
39
- * field changes. It returns the value of the field.
40
- * @param name The name of the field.
41
+ * field changes. It accepts a string or a reference to a field name from the
42
+ * [`names`](https://ariakit.org/reference/use-form-store#names) object in the
43
+ * store, for type safety. It returns the value of the field.
44
+ *
45
+ * Live examples:
46
+ * - [Form with Select](https://ariakit.org/examples/form-select)
41
47
  * @example
42
48
  * const nameValue = store.useValue("name");
43
- * // Can also use store.names for type-safety.
49
+ * // Can also use store.names for type safety.
44
50
  * const emailValue = store.useValue(store.names.email);
45
51
  */
46
52
  useValue: <T = any>(name: StringLike) => T;
47
53
  /**
48
54
  * Custom hook that accepts a callback that will be used to validate the form
49
- * when `form.validate` is called.
50
- * @param callback The callback that receives the form state as argument.
55
+ * when [`validate`](https://ariakit.org/reference/use-form-store#validate) is
56
+ * called, typically when a form field is touched or when the form is
57
+ * submitted.
58
+ *
59
+ * Live examples:
60
+ * - [FormRadio](https://ariakit.org/examples/form-radio)
51
61
  * @example
52
62
  * store.useValidate(async (state) => {
53
63
  * const errors = await api.validate(state.values);
@@ -59,8 +69,12 @@ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues>
59
69
  useValidate: (callback: Core.FormStoreCallback<FormStoreState<T>>) => void;
60
70
  /**
61
71
  * Custom hook that accepts a callback that will be used to submit the form
62
- * when `form.submit` is called.
63
- * @param callback The callback that receives the form state as argument.
72
+ * when [`submit`](https://ariakit.org/reference/use-form-store#submit) is
73
+ * called.
74
+ *
75
+ * Live examples:
76
+ * - [FormRadio](https://ariakit.org/examples/form-radio)
77
+ * - [Form with Select](https://ariakit.org/examples/form-select)
64
78
  * @example
65
79
  * store.useSubmit(async (state) => {
66
80
  * try {
@@ -74,8 +88,9 @@ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues>
74
88
  }
75
89
  export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> extends Core.FormStoreOptions<T>, CollectionStoreOptions<FormStoreItem> {
76
90
  /**
77
- * Function that will be called when `values` state changes.
78
- * @param values The new values.
91
+ * Function that will be called when
92
+ * [`values`](https://ariakit.org/reference/use-form-store#values) state
93
+ * changes.
79
94
  * @example
80
95
  * function MyForm({ values, onChange }) {
81
96
  * const form = useFormStore({ values, setValues: onChange });
@@ -83,15 +98,17 @@ export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> e
83
98
  */
84
99
  setValues?: (values: FormStoreState<T>["values"]) => void;
85
100
  /**
86
- * Function that will be called when the `errors` state changes.
87
- * @param errors The new errors.
101
+ * Function that will be called when the
102
+ * [`errors`](https://ariakit.org/reference/use-form-store#errors) state
103
+ * changes.
88
104
  * @example
89
105
  * useFormStore({ setErrors: (errors) => console.log(errors) });
90
106
  */
91
107
  setErrors?: (errors: FormStoreState<T>["errors"]) => void;
92
108
  /**
93
- * Function that will be called when the `touched` state changes.
94
- * @param touched The new touched state.
109
+ * Function that will be called when the
110
+ * [`touched`](https://ariakit.org/reference/use-form-store#touched) state
111
+ * changes.
95
112
  * @example
96
113
  * useFormStore({ setTouched: (touched) => console.log(touched) });
97
114
  */
@@ -9,7 +9,8 @@ export declare function useFormStoreProps<T extends Omit<FormStore, "useValue" |
9
9
  useSubmit: (callback: Core.FormStoreCallback<FormStoreState<FormStoreValues>>) => void;
10
10
  };
11
11
  /**
12
- * Creates a form store.
12
+ * Creates a form store to control the state of
13
+ * [Form](https://ariakit.org/components/form) components.
13
14
  * @example
14
15
  * ```jsx
15
16
  * const form = useFormStore({
@@ -17,6 +18,7 @@ export declare function useFormStoreProps<T extends Omit<FormStore, "useValue" |
17
18
  * email: "",
18
19
  * },
19
20
  * });
21
+ *
20
22
  * <Form store={form}>
21
23
  * <FormLabel name={form.names.email}>Email</FormLabel>
22
24
  * <FormInput name={form.names.email} />
@@ -36,18 +38,26 @@ export interface FormStoreState<T extends FormStoreValues = FormStoreValues> ext
36
38
  export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues> extends Core.FormStoreFunctions<T>, CollectionStoreFunctions<FormStoreItem> {
37
39
  /**
38
40
  * A custom hook that rerenders the component when the value of the given
39
- * field changes. It returns the value of the field.
40
- * @param name The name of the field.
41
+ * field changes. It accepts a string or a reference to a field name from the
42
+ * [`names`](https://ariakit.org/reference/use-form-store#names) object in the
43
+ * store, for type safety. It returns the value of the field.
44
+ *
45
+ * Live examples:
46
+ * - [Form with Select](https://ariakit.org/examples/form-select)
41
47
  * @example
42
48
  * const nameValue = store.useValue("name");
43
- * // Can also use store.names for type-safety.
49
+ * // Can also use store.names for type safety.
44
50
  * const emailValue = store.useValue(store.names.email);
45
51
  */
46
52
  useValue: <T = any>(name: StringLike) => T;
47
53
  /**
48
54
  * Custom hook that accepts a callback that will be used to validate the form
49
- * when `form.validate` is called.
50
- * @param callback The callback that receives the form state as argument.
55
+ * when [`validate`](https://ariakit.org/reference/use-form-store#validate) is
56
+ * called, typically when a form field is touched or when the form is
57
+ * submitted.
58
+ *
59
+ * Live examples:
60
+ * - [FormRadio](https://ariakit.org/examples/form-radio)
51
61
  * @example
52
62
  * store.useValidate(async (state) => {
53
63
  * const errors = await api.validate(state.values);
@@ -59,8 +69,12 @@ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues>
59
69
  useValidate: (callback: Core.FormStoreCallback<FormStoreState<T>>) => void;
60
70
  /**
61
71
  * Custom hook that accepts a callback that will be used to submit the form
62
- * when `form.submit` is called.
63
- * @param callback The callback that receives the form state as argument.
72
+ * when [`submit`](https://ariakit.org/reference/use-form-store#submit) is
73
+ * called.
74
+ *
75
+ * Live examples:
76
+ * - [FormRadio](https://ariakit.org/examples/form-radio)
77
+ * - [Form with Select](https://ariakit.org/examples/form-select)
64
78
  * @example
65
79
  * store.useSubmit(async (state) => {
66
80
  * try {
@@ -74,8 +88,9 @@ export interface FormStoreFunctions<T extends FormStoreValues = FormStoreValues>
74
88
  }
75
89
  export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> extends Core.FormStoreOptions<T>, CollectionStoreOptions<FormStoreItem> {
76
90
  /**
77
- * Function that will be called when `values` state changes.
78
- * @param values The new values.
91
+ * Function that will be called when
92
+ * [`values`](https://ariakit.org/reference/use-form-store#values) state
93
+ * changes.
79
94
  * @example
80
95
  * function MyForm({ values, onChange }) {
81
96
  * const form = useFormStore({ values, setValues: onChange });
@@ -83,15 +98,17 @@ export interface FormStoreOptions<T extends FormStoreValues = FormStoreValues> e
83
98
  */
84
99
  setValues?: (values: FormStoreState<T>["values"]) => void;
85
100
  /**
86
- * Function that will be called when the `errors` state changes.
87
- * @param errors The new errors.
101
+ * Function that will be called when the
102
+ * [`errors`](https://ariakit.org/reference/use-form-store#errors) state
103
+ * changes.
88
104
  * @example
89
105
  * useFormStore({ setErrors: (errors) => console.log(errors) });
90
106
  */
91
107
  setErrors?: (errors: FormStoreState<T>["errors"]) => void;
92
108
  /**
93
- * Function that will be called when the `touched` state changes.
94
- * @param touched The new touched state.
109
+ * Function that will be called when the
110
+ * [`touched`](https://ariakit.org/reference/use-form-store#touched) state
111
+ * changes.
95
112
  * @example
96
113
  * useFormStore({ setTouched: (touched) => console.log(touched) });
97
114
  */
@@ -4,10 +4,10 @@
4
4
  var _FROYTN4Bcjs = require('../__chunks/FROYTN4B.cjs');
5
5
 
6
6
 
7
- var _5UTRYT6Ecjs = require('../__chunks/5UTRYT6E.cjs');
8
- require('../__chunks/DAJUUBUI.cjs');
7
+ var _REJALU3Pcjs = require('../__chunks/REJALU3P.cjs');
8
+ require('../__chunks/OSTQZD2E.cjs');
9
9
  require('../__chunks/BZTDJIVT.cjs');
10
- require('../__chunks/Z3GCTNW4.cjs');
10
+ require('../__chunks/VUEWHLYH.cjs');
11
11
  require('../__chunks/75KXQZJX.cjs');
12
12
 
13
13
 
@@ -37,7 +37,7 @@ var useFormSubmit = _RNZNGEL4cjs.createHook.call(void 0,
37
37
  type: "submit",
38
38
  disabled: store.useState("submitting")
39
39
  }, props);
40
- props = _5UTRYT6Ecjs.useButton.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), { accessibleWhenDisabled }));
40
+ props = _REJALU3Pcjs.useButton.call(void 0, _AV6KTKLEcjs.__spreadProps.call(void 0, _AV6KTKLEcjs.__spreadValues.call(void 0, {}, props), { accessibleWhenDisabled }));
41
41
  return props;
42
42
  }
43
43
  );
@@ -15,11 +15,17 @@ import type { FormStore } from "./form-store.js";
15
15
  */
16
16
  export declare const useFormSubmit: import("../utils/types.js").Hook<FormSubmitOptions<"button">>;
17
17
  /**
18
- * Renders a submit buttom in a form.
18
+ * Renders a native submit button inside a form. The button will be
19
+ * [`disabled`](https://ariakit.org/reference/form-submit#disabled) while the
20
+ * form is submitting, but it will remain accessible to keyboard and screen
21
+ * reader users thanks to the
22
+ * [`accessibleWhenDisabled`](https://ariakit.org/reference/form-submit#accessiblewhendisabled)
23
+ * prop that's enabled by default.
19
24
  * @see https://ariakit.org/components/form
20
25
  * @example
21
- * ```jsx
26
+ * ```jsx {4}
22
27
  * const form = useFormStore();
28
+ *
23
29
  * <Form store={form}>
24
30
  * <FormSubmit>Submit</FormSubmit>
25
31
  * </Form>
@@ -15,11 +15,17 @@ import type { FormStore } from "./form-store.js";
15
15
  */
16
16
  export declare const useFormSubmit: import("../utils/types.js").Hook<FormSubmitOptions<"button">>;
17
17
  /**
18
- * Renders a submit buttom in a form.
18
+ * Renders a native submit button inside a form. The button will be
19
+ * [`disabled`](https://ariakit.org/reference/form-submit#disabled) while the
20
+ * form is submitting, but it will remain accessible to keyboard and screen
21
+ * reader users thanks to the
22
+ * [`accessibleWhenDisabled`](https://ariakit.org/reference/form-submit#accessiblewhendisabled)
23
+ * prop that's enabled by default.
19
24
  * @see https://ariakit.org/components/form
20
25
  * @example
21
- * ```jsx
26
+ * ```jsx {4}
22
27
  * const form = useFormStore();
28
+ *
23
29
  * <Form store={form}>
24
30
  * <FormSubmit>Submit</FormSubmit>
25
31
  * </Form>
@@ -12,11 +12,29 @@ import type { FormStore } from "./form-store.js";
12
12
  */
13
13
  export declare const useForm: import("../utils/types.js").Hook<FormOptions<"form">>;
14
14
  /**
15
- * Renders a form element.
15
+ * Renders a form element and provides a [form
16
+ * store](https://ariakit.org/reference/use-form-store) to its controls.
17
+ *
18
+ * The form is automatically validated on change and on blur. This behavior can
19
+ * be disabled with the
20
+ * [`validateOnChange`](https://ariakit.org/reference/form#validateonchange) and
21
+ * [`validateOnBlur`](https://ariakit.org/reference/form#validateonblur) props.
22
+ *
23
+ * When the form is submitted with errors, the first invalid field is
24
+ * automatically focused thanks to the
25
+ * [`autoFocusOnSubmit`](https://ariakit.org/reference/form#autofocusonsubmit)
26
+ * prop. If it's successful, the
27
+ * [`resetOnSubmit`](https://ariakit.org/reference/form#resetonsubmit) prop
28
+ * ensures the form is reset to its initial values as defined by the
29
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
30
+ * option on the [store](https://ariakit.org/reference/use-form-store).
16
31
  * @see https://ariakit.org/components/form
17
32
  * @example
18
- * ```jsx
19
- * const form = useFormStore({ defaultValues: { username: "johndoe" } });
33
+ * ```jsx {5-8}
34
+ * const form = useFormStore({
35
+ * defaultValues: { username: "johndoe" },
36
+ * });
37
+ *
20
38
  * <Form store={form}>
21
39
  * <FormLabel name={form.names.username}>Username</FormLabel>
22
40
  * <FormInput name={form.names.username} />
@@ -34,32 +52,40 @@ export interface FormOptions<T extends As = "form"> extends Options<T> {
34
52
  */
35
53
  store?: FormStore;
36
54
  /**
37
- * Whether the form should trigger the validation callbacks when values
55
+ * Determines if the form should invoke the validation callbacks registered
56
+ * with
57
+ * [`useValidate`](https://ariakit.org/reference/use-form-store#usevalidate)
58
+ * when the [`values`](https://ariakit.org/reference/use-form-store#values)
38
59
  * change.
39
60
  * @default true
40
61
  */
41
62
  validateOnChange?: boolean;
42
63
  /**
43
- * Whether the form should trigger the validation callbacks when form fields
44
- * are blurred.
64
+ * Determines if the form should invoke the validation callbacks registered
65
+ * with
66
+ * [`useValidate`](https://ariakit.org/reference/use-form-store#usevalidate)
67
+ * when a field loses focus.
45
68
  * @default true
46
69
  */
47
70
  validateOnBlur?: boolean;
48
71
  /**
49
- * Whether the form store should be reset when the form element gets
72
+ * Determines if the form state should reset to its
73
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
74
+ * when the [`Form`](https://ariakit.org/reference/form) component is
50
75
  * unmounted.
51
76
  * @default false
52
77
  */
53
78
  resetOnUnmount?: boolean;
54
79
  /**
55
- * Whether the form store should be reset when the form gets successfully
56
- * submitted.
80
+ * Determines if the form state should be reset to its
81
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
82
+ * upon successful form submission.
57
83
  * @default true
58
84
  */
59
85
  resetOnSubmit?: boolean;
60
86
  /**
61
- * Whether the form should automatically focus the first invalid field when
62
- * the form gets submitted.
87
+ * Determines if the form should automatically focus on the first invalid
88
+ * field when the form is submitted.
63
89
  * @default true
64
90
  */
65
91
  autoFocusOnSubmit?: boolean;
@@ -12,11 +12,29 @@ import type { FormStore } from "./form-store.js";
12
12
  */
13
13
  export declare const useForm: import("../utils/types.js").Hook<FormOptions<"form">>;
14
14
  /**
15
- * Renders a form element.
15
+ * Renders a form element and provides a [form
16
+ * store](https://ariakit.org/reference/use-form-store) to its controls.
17
+ *
18
+ * The form is automatically validated on change and on blur. This behavior can
19
+ * be disabled with the
20
+ * [`validateOnChange`](https://ariakit.org/reference/form#validateonchange) and
21
+ * [`validateOnBlur`](https://ariakit.org/reference/form#validateonblur) props.
22
+ *
23
+ * When the form is submitted with errors, the first invalid field is
24
+ * automatically focused thanks to the
25
+ * [`autoFocusOnSubmit`](https://ariakit.org/reference/form#autofocusonsubmit)
26
+ * prop. If it's successful, the
27
+ * [`resetOnSubmit`](https://ariakit.org/reference/form#resetonsubmit) prop
28
+ * ensures the form is reset to its initial values as defined by the
29
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
30
+ * option on the [store](https://ariakit.org/reference/use-form-store).
16
31
  * @see https://ariakit.org/components/form
17
32
  * @example
18
- * ```jsx
19
- * const form = useFormStore({ defaultValues: { username: "johndoe" } });
33
+ * ```jsx {5-8}
34
+ * const form = useFormStore({
35
+ * defaultValues: { username: "johndoe" },
36
+ * });
37
+ *
20
38
  * <Form store={form}>
21
39
  * <FormLabel name={form.names.username}>Username</FormLabel>
22
40
  * <FormInput name={form.names.username} />
@@ -34,32 +52,40 @@ export interface FormOptions<T extends As = "form"> extends Options<T> {
34
52
  */
35
53
  store?: FormStore;
36
54
  /**
37
- * Whether the form should trigger the validation callbacks when values
55
+ * Determines if the form should invoke the validation callbacks registered
56
+ * with
57
+ * [`useValidate`](https://ariakit.org/reference/use-form-store#usevalidate)
58
+ * when the [`values`](https://ariakit.org/reference/use-form-store#values)
38
59
  * change.
39
60
  * @default true
40
61
  */
41
62
  validateOnChange?: boolean;
42
63
  /**
43
- * Whether the form should trigger the validation callbacks when form fields
44
- * are blurred.
64
+ * Determines if the form should invoke the validation callbacks registered
65
+ * with
66
+ * [`useValidate`](https://ariakit.org/reference/use-form-store#usevalidate)
67
+ * when a field loses focus.
45
68
  * @default true
46
69
  */
47
70
  validateOnBlur?: boolean;
48
71
  /**
49
- * Whether the form store should be reset when the form element gets
72
+ * Determines if the form state should reset to its
73
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
74
+ * when the [`Form`](https://ariakit.org/reference/form) component is
50
75
  * unmounted.
51
76
  * @default false
52
77
  */
53
78
  resetOnUnmount?: boolean;
54
79
  /**
55
- * Whether the form store should be reset when the form gets successfully
56
- * submitted.
80
+ * Determines if the form state should be reset to its
81
+ * [`defaultValues`](https://ariakit.org/reference/use-form-store#defaultvalues)
82
+ * upon successful form submission.
57
83
  * @default true
58
84
  */
59
85
  resetOnSubmit?: boolean;
60
86
  /**
61
- * Whether the form should automatically focus the first invalid field when
62
- * the form gets submitted.
87
+ * Determines if the form should automatically focus on the first invalid
88
+ * field when the form is submitted.
63
89
  * @default true
64
90
  */
65
91
  autoFocusOnSubmit?: boolean;
@@ -13,8 +13,9 @@ import type { As, Options, Props } from "../utils/types.js";
13
13
  */
14
14
  export declare const useGroupLabel: import("../utils/types.js").Hook<GroupLabelOptions<"div">>;
15
15
  /**
16
- * Renders a label in a group. This component must be wrapped with `Group` so
17
- * the `aria-labelledby` prop is properly set on the group element.
16
+ * Renders a label in a group. This component should be wrapped with a
17
+ * [`Group`](https://ariakit.org/reference/group) so the `aria-labelledby`
18
+ * prop is correctly set on the group element.
18
19
  * @see https://ariakit.org/components/group
19
20
  * @example
20
21
  * ```jsx
@@ -13,8 +13,9 @@ import type { As, Options, Props } from "../utils/types.js";
13
13
  */
14
14
  export declare const useGroupLabel: import("../utils/types.js").Hook<GroupLabelOptions<"div">>;
15
15
  /**
16
- * Renders a label in a group. This component must be wrapped with `Group` so
17
- * the `aria-labelledby` prop is properly set on the group element.
16
+ * Renders a label in a group. This component should be wrapped with a
17
+ * [`Group`](https://ariakit.org/reference/group) so the `aria-labelledby`
18
+ * prop is correctly set on the group element.
18
19
  * @see https://ariakit.org/components/group
19
20
  * @example
20
21
  * ```jsx