@proyecto-viviana/solidaria 0.2.8 → 0.4.0

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 (976) hide show
  1. package/README.md +31 -236
  2. package/dist/_chunk/actiongroup.js +207 -0
  3. package/dist/_chunk/actiongroup.js.map +1 -0
  4. package/dist/_chunk/actiongroup.jsx +207 -0
  5. package/dist/_chunk/actiongroup.jsx.map +1 -0
  6. package/dist/_chunk/ariaHideOutside.js +122 -0
  7. package/dist/_chunk/ariaHideOutside.js.map +1 -0
  8. package/dist/_chunk/ariaHideOutside.jsx +122 -0
  9. package/dist/_chunk/ariaHideOutside.jsx.map +1 -0
  10. package/dist/_chunk/autocomplete.js +196 -0
  11. package/dist/_chunk/autocomplete.js.map +1 -0
  12. package/dist/_chunk/autocomplete.jsx +196 -0
  13. package/dist/_chunk/autocomplete.jsx.map +1 -0
  14. package/dist/_chunk/breadcrumbs.js +119 -0
  15. package/dist/_chunk/breadcrumbs.js.map +1 -0
  16. package/dist/_chunk/breadcrumbs.jsx +119 -0
  17. package/dist/_chunk/breadcrumbs.jsx.map +1 -0
  18. package/dist/_chunk/button.js +276 -0
  19. package/dist/_chunk/button.js.map +1 -0
  20. package/dist/_chunk/button.jsx +276 -0
  21. package/dist/_chunk/button.jsx.map +1 -0
  22. package/dist/_chunk/calendar.js +1036 -0
  23. package/dist/_chunk/calendar.js.map +1 -0
  24. package/dist/_chunk/calendar.jsx +1036 -0
  25. package/dist/_chunk/calendar.jsx.map +1 -0
  26. package/dist/_chunk/checkbox.js +234 -0
  27. package/dist/_chunk/checkbox.js.map +1 -0
  28. package/dist/_chunk/checkbox.jsx +234 -0
  29. package/dist/_chunk/checkbox.jsx.map +1 -0
  30. package/dist/_chunk/color.js +1174 -0
  31. package/dist/_chunk/color.js.map +1 -0
  32. package/dist/_chunk/color.jsx +1174 -0
  33. package/dist/_chunk/color.jsx.map +1 -0
  34. package/dist/_chunk/combobox.js +436 -0
  35. package/dist/_chunk/combobox.js.map +1 -0
  36. package/dist/_chunk/combobox.jsx +436 -0
  37. package/dist/_chunk/combobox.jsx.map +1 -0
  38. package/dist/_chunk/createCollator.js +229 -0
  39. package/dist/_chunk/createCollator.js.map +1 -0
  40. package/dist/_chunk/createCollator.jsx +223 -0
  41. package/dist/_chunk/createCollator.jsx.map +1 -0
  42. package/dist/_chunk/createCollectionRowInteraction.js +133 -0
  43. package/dist/_chunk/createCollectionRowInteraction.js.map +1 -0
  44. package/dist/_chunk/createCollectionRowInteraction.jsx +133 -0
  45. package/dist/_chunk/createCollectionRowInteraction.jsx.map +1 -0
  46. package/dist/_chunk/createField.js +54 -0
  47. package/dist/_chunk/createField.js.map +1 -0
  48. package/dist/_chunk/createField.jsx +54 -0
  49. package/dist/_chunk/createField.jsx.map +1 -0
  50. package/dist/_chunk/createFocus.js +101 -0
  51. package/dist/_chunk/createFocus.js.map +1 -0
  52. package/dist/_chunk/createFocus.jsx +101 -0
  53. package/dist/_chunk/createFocus.jsx.map +1 -0
  54. package/dist/_chunk/createFocusRing.js +54 -0
  55. package/dist/_chunk/createFocusRing.js.map +1 -0
  56. package/dist/_chunk/createFocusRing.jsx +54 -0
  57. package/dist/_chunk/createFocusRing.jsx.map +1 -0
  58. package/dist/_chunk/createFocusWithin.js +121 -0
  59. package/dist/_chunk/createFocusWithin.js.map +1 -0
  60. package/dist/_chunk/createFocusWithin.jsx +121 -0
  61. package/dist/_chunk/createFocusWithin.jsx.map +1 -0
  62. package/dist/_chunk/createFocusable.js +131 -0
  63. package/dist/_chunk/createFocusable.js.map +1 -0
  64. package/dist/_chunk/createFocusable.jsx +131 -0
  65. package/dist/_chunk/createFocusable.jsx.map +1 -0
  66. package/dist/_chunk/createFormValidation.js +135 -0
  67. package/dist/_chunk/createFormValidation.js.map +1 -0
  68. package/dist/_chunk/createFormValidation.jsx +135 -0
  69. package/dist/_chunk/createFormValidation.jsx.map +1 -0
  70. package/dist/_chunk/createHover.js +130 -0
  71. package/dist/_chunk/createHover.js.map +1 -0
  72. package/dist/_chunk/createHover.jsx +130 -0
  73. package/dist/_chunk/createHover.jsx.map +1 -0
  74. package/dist/_chunk/createInteractionModality.js +269 -0
  75. package/dist/_chunk/createInteractionModality.js.map +1 -0
  76. package/dist/_chunk/createInteractionModality.jsx +269 -0
  77. package/dist/_chunk/createInteractionModality.jsx.map +1 -0
  78. package/dist/_chunk/createLabel.js +46 -0
  79. package/dist/_chunk/createLabel.js.map +1 -0
  80. package/dist/_chunk/createLabel.jsx +46 -0
  81. package/dist/_chunk/createLabel.jsx.map +1 -0
  82. package/dist/_chunk/createLabels.js +31 -0
  83. package/dist/_chunk/createLabels.js.map +1 -0
  84. package/dist/_chunk/createLabels.jsx +31 -0
  85. package/dist/_chunk/createLabels.jsx.map +1 -0
  86. package/dist/_chunk/createLandmark.js +198 -0
  87. package/dist/_chunk/createLandmark.js.map +1 -0
  88. package/dist/_chunk/createLandmark.jsx +198 -0
  89. package/dist/_chunk/createLandmark.jsx.map +1 -0
  90. package/dist/_chunk/createLongPress.js +91 -0
  91. package/dist/_chunk/createLongPress.js.map +1 -0
  92. package/dist/_chunk/createLongPress.jsx +91 -0
  93. package/dist/_chunk/createLongPress.jsx.map +1 -0
  94. package/dist/_chunk/createOverlay.js +327 -0
  95. package/dist/_chunk/createOverlay.js.map +1 -0
  96. package/dist/_chunk/createOverlay.jsx +327 -0
  97. package/dist/_chunk/createOverlay.jsx.map +1 -0
  98. package/dist/_chunk/createPress.js +526 -0
  99. package/dist/_chunk/createPress.js.map +1 -0
  100. package/dist/_chunk/createPress.jsx +526 -0
  101. package/dist/_chunk/createPress.jsx.map +1 -0
  102. package/dist/_chunk/createProgressBar.js +81 -0
  103. package/dist/_chunk/createProgressBar.js.map +1 -0
  104. package/dist/_chunk/createProgressBar.jsx +81 -0
  105. package/dist/_chunk/createProgressBar.jsx.map +1 -0
  106. package/dist/_chunk/createSelectableItem.js +298 -0
  107. package/dist/_chunk/createSelectableItem.js.map +1 -0
  108. package/dist/_chunk/createSelectableItem.jsx +298 -0
  109. package/dist/_chunk/createSelectableItem.jsx.map +1 -0
  110. package/dist/_chunk/createToggle.js +158 -0
  111. package/dist/_chunk/createToggle.js.map +1 -0
  112. package/dist/_chunk/createToggle.jsx +158 -0
  113. package/dist/_chunk/createToggle.jsx.map +1 -0
  114. package/dist/_chunk/createTypeSelect.js +125 -0
  115. package/dist/_chunk/createTypeSelect.js.map +1 -0
  116. package/dist/_chunk/createTypeSelect.jsx +125 -0
  117. package/dist/_chunk/createTypeSelect.jsx.map +1 -0
  118. package/dist/_chunk/datepicker.js +1393 -0
  119. package/dist/_chunk/datepicker.js.map +1 -0
  120. package/dist/_chunk/datepicker.jsx +1393 -0
  121. package/dist/_chunk/datepicker.jsx.map +1 -0
  122. package/dist/_chunk/dialog.js +62 -0
  123. package/dist/_chunk/dialog.js.map +1 -0
  124. package/dist/_chunk/dialog.jsx +62 -0
  125. package/dist/_chunk/dialog.jsx.map +1 -0
  126. package/dist/_chunk/disclosure.js +185 -0
  127. package/dist/_chunk/disclosure.js.map +1 -0
  128. package/dist/_chunk/disclosure.jsx +185 -0
  129. package/dist/_chunk/disclosure.jsx.map +1 -0
  130. package/dist/_chunk/dnd.js +1304 -0
  131. package/dist/_chunk/dnd.js.map +1 -0
  132. package/dist/_chunk/dnd.jsx +1304 -0
  133. package/dist/_chunk/dnd.jsx.map +1 -0
  134. package/dist/_chunk/env.js +105 -0
  135. package/dist/_chunk/env.js.map +1 -0
  136. package/dist/_chunk/env.jsx +105 -0
  137. package/dist/_chunk/env.jsx.map +1 -0
  138. package/dist/_chunk/filterDOMProps.js +82 -0
  139. package/dist/_chunk/filterDOMProps.js.map +1 -0
  140. package/dist/_chunk/filterDOMProps.jsx +82 -0
  141. package/dist/_chunk/filterDOMProps.jsx.map +1 -0
  142. package/dist/_chunk/focus.js +399 -0
  143. package/dist/_chunk/focus.js.map +1 -0
  144. package/dist/_chunk/focus.jsx +399 -0
  145. package/dist/_chunk/focus.jsx.map +1 -0
  146. package/dist/_chunk/focus2.js +895 -0
  147. package/dist/_chunk/focus2.js.map +1 -0
  148. package/dist/_chunk/focus2.jsx +870 -0
  149. package/dist/_chunk/focus2.jsx.map +1 -0
  150. package/dist/_chunk/form.js +39 -0
  151. package/dist/_chunk/form.js.map +1 -0
  152. package/dist/_chunk/form.jsx +39 -0
  153. package/dist/_chunk/form.jsx.map +1 -0
  154. package/dist/_chunk/grid.js +623 -0
  155. package/dist/_chunk/grid.js.map +1 -0
  156. package/dist/_chunk/grid.jsx +623 -0
  157. package/dist/_chunk/grid.jsx.map +1 -0
  158. package/dist/_chunk/gridlist.js +364 -0
  159. package/dist/_chunk/gridlist.js.map +1 -0
  160. package/dist/_chunk/gridlist.jsx +364 -0
  161. package/dist/_chunk/gridlist.jsx.map +1 -0
  162. package/dist/_chunk/i18n.js +254 -0
  163. package/dist/_chunk/i18n.js.map +1 -0
  164. package/dist/_chunk/i18n.jsx +254 -0
  165. package/dist/_chunk/i18n.jsx.map +1 -0
  166. package/dist/_chunk/interactions.js +241 -0
  167. package/dist/_chunk/interactions.js.map +1 -0
  168. package/dist/_chunk/interactions.jsx +237 -0
  169. package/dist/_chunk/interactions.jsx.map +1 -0
  170. package/dist/_chunk/link.js +96 -0
  171. package/dist/_chunk/link.js.map +1 -0
  172. package/dist/_chunk/link.jsx +96 -0
  173. package/dist/_chunk/link.jsx.map +1 -0
  174. package/dist/_chunk/listbox.js +324 -0
  175. package/dist/_chunk/listbox.js.map +1 -0
  176. package/dist/_chunk/listbox.jsx +324 -0
  177. package/dist/_chunk/listbox.jsx.map +1 -0
  178. package/dist/_chunk/live-announcer.js +207 -0
  179. package/dist/_chunk/live-announcer.js.map +1 -0
  180. package/dist/_chunk/live-announcer.jsx +207 -0
  181. package/dist/_chunk/live-announcer.jsx.map +1 -0
  182. package/dist/_chunk/menu.js +518 -0
  183. package/dist/_chunk/menu.js.map +1 -0
  184. package/dist/_chunk/menu.jsx +518 -0
  185. package/dist/_chunk/menu.jsx.map +1 -0
  186. package/dist/_chunk/meter.js +33 -0
  187. package/dist/_chunk/meter.js.map +1 -0
  188. package/dist/_chunk/meter.jsx +33 -0
  189. package/dist/_chunk/meter.jsx.map +1 -0
  190. package/dist/_chunk/numberfield.js +258 -0
  191. package/dist/_chunk/numberfield.js.map +1 -0
  192. package/dist/_chunk/numberfield.jsx +258 -0
  193. package/dist/_chunk/numberfield.jsx.map +1 -0
  194. package/dist/_chunk/overlays.js +186 -0
  195. package/dist/_chunk/overlays.js.map +1 -0
  196. package/dist/_chunk/overlays.jsx +162 -0
  197. package/dist/_chunk/overlays.jsx.map +1 -0
  198. package/dist/_chunk/popover.js +574 -0
  199. package/dist/_chunk/popover.js.map +1 -0
  200. package/dist/_chunk/popover.jsx +574 -0
  201. package/dist/_chunk/popover.jsx.map +1 -0
  202. package/dist/_chunk/radio.js +319 -0
  203. package/dist/_chunk/radio.js.map +1 -0
  204. package/dist/_chunk/radio.jsx +319 -0
  205. package/dist/_chunk/radio.jsx.map +1 -0
  206. package/dist/_chunk/searchfield.js +209 -0
  207. package/dist/_chunk/searchfield.js.map +1 -0
  208. package/dist/_chunk/searchfield.jsx +209 -0
  209. package/dist/_chunk/searchfield.jsx.map +1 -0
  210. package/dist/_chunk/select.js +403 -0
  211. package/dist/_chunk/select.js.map +1 -0
  212. package/dist/_chunk/select.jsx +394 -0
  213. package/dist/_chunk/select.jsx.map +1 -0
  214. package/dist/_chunk/selection.js +679 -0
  215. package/dist/_chunk/selection.js.map +1 -0
  216. package/dist/_chunk/selection.jsx +679 -0
  217. package/dist/_chunk/selection.jsx.map +1 -0
  218. package/dist/_chunk/separator.js +29 -0
  219. package/dist/_chunk/separator.js.map +1 -0
  220. package/dist/_chunk/separator.jsx +29 -0
  221. package/dist/_chunk/separator.jsx.map +1 -0
  222. package/dist/_chunk/slider.js +255 -0
  223. package/dist/_chunk/slider.js.map +1 -0
  224. package/dist/_chunk/slider.jsx +255 -0
  225. package/dist/_chunk/slider.jsx.map +1 -0
  226. package/dist/_chunk/steplist.js +66 -0
  227. package/dist/_chunk/steplist.js.map +1 -0
  228. package/dist/_chunk/steplist.jsx +66 -0
  229. package/dist/_chunk/steplist.jsx.map +1 -0
  230. package/dist/_chunk/switch.js +34 -0
  231. package/dist/_chunk/switch.js.map +1 -0
  232. package/dist/_chunk/switch.jsx +34 -0
  233. package/dist/_chunk/switch.jsx.map +1 -0
  234. package/dist/_chunk/table.js +1051 -0
  235. package/dist/_chunk/table.js.map +1 -0
  236. package/dist/_chunk/table.jsx +1051 -0
  237. package/dist/_chunk/table.jsx.map +1 -0
  238. package/dist/_chunk/tabs.js +260 -0
  239. package/dist/_chunk/tabs.js.map +1 -0
  240. package/dist/_chunk/tabs.jsx +260 -0
  241. package/dist/_chunk/tabs.jsx.map +1 -0
  242. package/dist/_chunk/tag.js +286 -0
  243. package/dist/_chunk/tag.js.map +1 -0
  244. package/dist/_chunk/tag.jsx +286 -0
  245. package/dist/_chunk/tag.jsx.map +1 -0
  246. package/dist/_chunk/textfield.js +109 -0
  247. package/dist/_chunk/textfield.js.map +1 -0
  248. package/dist/_chunk/textfield.jsx +109 -0
  249. package/dist/_chunk/textfield.jsx.map +1 -0
  250. package/dist/_chunk/toast.js +250 -0
  251. package/dist/_chunk/toast.js.map +1 -0
  252. package/dist/_chunk/toast.jsx +250 -0
  253. package/dist/_chunk/toast.jsx.map +1 -0
  254. package/dist/_chunk/toolbar.js +258 -0
  255. package/dist/_chunk/toolbar.js.map +1 -0
  256. package/dist/_chunk/toolbar.jsx +258 -0
  257. package/dist/_chunk/toolbar.jsx.map +1 -0
  258. package/dist/_chunk/tooltip.js +185 -0
  259. package/dist/_chunk/tooltip.js.map +1 -0
  260. package/dist/_chunk/tooltip.jsx +185 -0
  261. package/dist/_chunk/tooltip.jsx.map +1 -0
  262. package/dist/_chunk/tree.js +424 -0
  263. package/dist/_chunk/tree.js.map +1 -0
  264. package/dist/_chunk/tree.jsx +424 -0
  265. package/dist/_chunk/tree.jsx.map +1 -0
  266. package/dist/_chunk/utils.js +665 -0
  267. package/dist/_chunk/utils.js.map +1 -0
  268. package/dist/_chunk/utils.jsx +665 -0
  269. package/dist/_chunk/utils.jsx.map +1 -0
  270. package/dist/_chunk/visually-hidden.js +92 -0
  271. package/dist/_chunk/visually-hidden.js.map +1 -0
  272. package/dist/_chunk/visually-hidden.jsx +92 -0
  273. package/dist/_chunk/visually-hidden.jsx.map +1 -0
  274. package/dist/actiongroup/createActionGroup.d.ts +5 -5
  275. package/dist/actiongroup/createActionGroup.d.ts.map +1 -1
  276. package/dist/actiongroup/index.d.ts +1 -1
  277. package/dist/actiongroup/index.js +2 -0
  278. package/dist/actiongroup/index.jsx +2 -0
  279. package/dist/autocomplete/createAutocomplete.d.ts +12 -10
  280. package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
  281. package/dist/autocomplete/index.d.ts +1 -1
  282. package/dist/autocomplete/index.d.ts.map +1 -1
  283. package/dist/autocomplete/index.js +2 -0
  284. package/dist/autocomplete/index.jsx +2 -0
  285. package/dist/breadcrumbs/createBreadcrumbs.d.ts +9 -7
  286. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
  287. package/dist/breadcrumbs/index.d.ts +1 -1
  288. package/dist/breadcrumbs/index.js +2 -0
  289. package/dist/breadcrumbs/index.jsx +2 -0
  290. package/dist/button/createButton.d.ts +1 -1
  291. package/dist/button/createButton.d.ts.map +1 -1
  292. package/dist/button/createToggleButton.d.ts +3 -3
  293. package/dist/button/createToggleButtonGroup.d.ts +7 -7
  294. package/dist/button/createToggleButtonGroup.d.ts.map +1 -1
  295. package/dist/button/index.d.ts +6 -6
  296. package/dist/button/index.d.ts.map +1 -1
  297. package/dist/button/index.js +2 -0
  298. package/dist/button/index.jsx +2 -0
  299. package/dist/button/types.d.ts +18 -12
  300. package/dist/button/types.d.ts.map +1 -1
  301. package/dist/calendar/createCalendar.d.ts +15 -5
  302. package/dist/calendar/createCalendar.d.ts.map +1 -1
  303. package/dist/calendar/createCalendarCell.d.ts +6 -2
  304. package/dist/calendar/createCalendarCell.d.ts.map +1 -1
  305. package/dist/calendar/createCalendarGrid.d.ts +4 -4
  306. package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
  307. package/dist/calendar/createCalendarMonthPicker.d.ts +41 -0
  308. package/dist/calendar/createCalendarMonthPicker.d.ts.map +1 -0
  309. package/dist/calendar/createCalendarYearPicker.d.ts +49 -0
  310. package/dist/calendar/createCalendarYearPicker.d.ts.map +1 -0
  311. package/dist/calendar/createRangeCalendar.d.ts +15 -5
  312. package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
  313. package/dist/calendar/createRangeCalendarCell.d.ts +4 -2
  314. package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
  315. package/dist/calendar/index.d.ts +7 -5
  316. package/dist/calendar/index.d.ts.map +1 -1
  317. package/dist/calendar/index.js +2 -0
  318. package/dist/calendar/index.jsx +2 -0
  319. package/dist/calendar/intl/index.d.ts +12 -0
  320. package/dist/calendar/intl/index.d.ts.map +1 -0
  321. package/dist/calendar/utils.d.ts +16 -0
  322. package/dist/calendar/utils.d.ts.map +1 -0
  323. package/dist/checkbox/createCheckbox.d.ts +10 -6
  324. package/dist/checkbox/createCheckbox.d.ts.map +1 -1
  325. package/dist/checkbox/createCheckboxGroup.d.ts +7 -7
  326. package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
  327. package/dist/checkbox/createCheckboxGroupItem.d.ts +4 -4
  328. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
  329. package/dist/checkbox/createCheckboxGroupState.d.ts +2 -2
  330. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -1
  331. package/dist/checkbox/index.d.ts +8 -8
  332. package/dist/checkbox/index.d.ts.map +1 -1
  333. package/dist/checkbox/index.js +2 -0
  334. package/dist/checkbox/index.jsx +2 -0
  335. package/dist/collections/index.d.ts +3 -3
  336. package/dist/collections/index.d.ts.map +1 -1
  337. package/dist/collections/index.js +160 -0
  338. package/dist/collections/index.js.map +1 -0
  339. package/dist/collections/index.jsx +160 -0
  340. package/dist/collections/index.jsx.map +1 -0
  341. package/dist/color/createColorArea.d.ts +3 -3
  342. package/dist/color/createColorArea.d.ts.map +1 -1
  343. package/dist/color/createColorField.d.ts +4 -4
  344. package/dist/color/createColorField.d.ts.map +1 -1
  345. package/dist/color/createColorSlider.d.ts +4 -4
  346. package/dist/color/createColorSlider.d.ts.map +1 -1
  347. package/dist/color/createColorSwatch.d.ts +2 -2
  348. package/dist/color/createColorSwatch.d.ts.map +1 -1
  349. package/dist/color/createColorWheel.d.ts +3 -3
  350. package/dist/color/createColorWheel.d.ts.map +1 -1
  351. package/dist/color/index.d.ts +6 -6
  352. package/dist/color/index.js +2 -0
  353. package/dist/color/index.jsx +2 -0
  354. package/dist/color/types.d.ts +98 -16
  355. package/dist/color/types.d.ts.map +1 -1
  356. package/dist/combobox/createComboBox.d.ts +10 -7
  357. package/dist/combobox/createComboBox.d.ts.map +1 -1
  358. package/dist/combobox/index.d.ts +1 -1
  359. package/dist/combobox/index.js +2 -0
  360. package/dist/combobox/index.jsx +2 -0
  361. package/dist/combobox/intl/index.d.ts +1 -1
  362. package/dist/datepicker/createDateField.d.ts +18 -6
  363. package/dist/datepicker/createDateField.d.ts.map +1 -1
  364. package/dist/datepicker/createDatePicker.d.ts +51 -5
  365. package/dist/datepicker/createDatePicker.d.ts.map +1 -1
  366. package/dist/datepicker/createDatePickerGroup.d.ts +19 -0
  367. package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -0
  368. package/dist/datepicker/createDateRangePicker.d.ts +8 -6
  369. package/dist/datepicker/createDateRangePicker.d.ts.map +1 -1
  370. package/dist/datepicker/createDateSegment.d.ts +10 -2
  371. package/dist/datepicker/createDateSegment.d.ts.map +1 -1
  372. package/dist/datepicker/createTimeField.d.ts +11 -5
  373. package/dist/datepicker/createTimeField.d.ts.map +1 -1
  374. package/dist/datepicker/createTimeSegment.d.ts +2 -2
  375. package/dist/datepicker/createTimeSegment.d.ts.map +1 -1
  376. package/dist/datepicker/index.d.ts +7 -6
  377. package/dist/datepicker/index.d.ts.map +1 -1
  378. package/dist/datepicker/index.js +2 -0
  379. package/dist/datepicker/index.jsx +2 -0
  380. package/dist/dialog/createDialog.d.ts +5 -5
  381. package/dist/dialog/createDialog.d.ts.map +1 -1
  382. package/dist/dialog/index.d.ts +2 -2
  383. package/dist/dialog/index.d.ts.map +1 -1
  384. package/dist/dialog/index.js +2 -0
  385. package/dist/dialog/index.jsx +2 -0
  386. package/dist/dialog/types.d.ts +4 -4
  387. package/dist/disclosure/createDisclosure.d.ts +5 -2
  388. package/dist/disclosure/createDisclosure.d.ts.map +1 -1
  389. package/dist/disclosure/createDisclosureGroup.d.ts +4 -4
  390. package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
  391. package/dist/disclosure/index.d.ts +2 -2
  392. package/dist/disclosure/index.js +2 -0
  393. package/dist/disclosure/index.jsx +2 -0
  394. package/dist/dnd/createDrag.d.ts +2 -2
  395. package/dist/dnd/createDrag.d.ts.map +1 -1
  396. package/dist/dnd/createDraggableCollection.d.ts +2 -2
  397. package/dist/dnd/createDraggableItem.d.ts +3 -3
  398. package/dist/dnd/createDraggableItem.d.ts.map +1 -1
  399. package/dist/dnd/createDrop.d.ts +2 -2
  400. package/dist/dnd/createDrop.d.ts.map +1 -1
  401. package/dist/dnd/createDroppableCollection.d.ts +26 -6
  402. package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
  403. package/dist/dnd/createDroppableItem.d.ts +3 -3
  404. package/dist/dnd/index.d.ts +12 -12
  405. package/dist/dnd/index.d.ts.map +1 -1
  406. package/dist/dnd/index.js +2 -0
  407. package/dist/dnd/index.jsx +2 -0
  408. package/dist/dnd/types.d.ts +2 -2
  409. package/dist/dnd/types.d.ts.map +1 -1
  410. package/dist/dnd/utils.d.ts +2 -2
  411. package/dist/dnd/utils.d.ts.map +1 -1
  412. package/dist/focus/FocusScope.d.ts +1 -1
  413. package/dist/focus/FocusScope.d.ts.map +1 -1
  414. package/dist/focus/createAutoFocus.d.ts.map +1 -1
  415. package/dist/focus/createFocusRestore.d.ts.map +1 -1
  416. package/dist/focus/createVirtualFocus.d.ts +4 -4
  417. package/dist/focus/createVirtualFocus.d.ts.map +1 -1
  418. package/dist/focus/index.d.ts +4 -4
  419. package/dist/focus/index.d.ts.map +1 -1
  420. package/dist/focus/index.js +2 -0
  421. package/dist/focus/index.jsx +2 -0
  422. package/dist/form/createFormReset.d.ts +1 -1
  423. package/dist/form/createFormValidation.d.ts +3 -3
  424. package/dist/form/createFormValidation.d.ts.map +1 -1
  425. package/dist/form/index.d.ts +2 -2
  426. package/dist/form/index.d.ts.map +1 -1
  427. package/dist/form/index.js +3 -0
  428. package/dist/form/index.jsx +3 -0
  429. package/dist/grid/GridKeyboardDelegate.d.ts +5 -5
  430. package/dist/grid/createGrid.d.ts +3 -3
  431. package/dist/grid/createGridCell.d.ts +3 -3
  432. package/dist/grid/createGridRow.d.ts +3 -3
  433. package/dist/grid/index.d.ts +5 -5
  434. package/dist/grid/index.js +2 -0
  435. package/dist/grid/index.jsx +2 -0
  436. package/dist/grid/types.d.ts +8 -8
  437. package/dist/gridlist/createGridList.d.ts +12 -4
  438. package/dist/gridlist/createGridList.d.ts.map +1 -1
  439. package/dist/gridlist/createGridListItem.d.ts +4 -4
  440. package/dist/gridlist/createGridListItem.d.ts.map +1 -1
  441. package/dist/gridlist/createGridListSection.d.ts +15 -0
  442. package/dist/gridlist/createGridListSection.d.ts.map +1 -0
  443. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +3 -3
  444. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
  445. package/dist/gridlist/index.d.ts +5 -4
  446. package/dist/gridlist/index.d.ts.map +1 -1
  447. package/dist/gridlist/index.js +2 -0
  448. package/dist/gridlist/index.jsx +2 -0
  449. package/dist/gridlist/types.d.ts +61 -7
  450. package/dist/gridlist/types.d.ts.map +1 -1
  451. package/dist/i18n/createCollator.d.ts.map +1 -1
  452. package/dist/i18n/createDateFormatter.d.ts.map +1 -1
  453. package/dist/i18n/createFilter.d.ts.map +1 -1
  454. package/dist/i18n/createNumberFormatter.d.ts +1 -1
  455. package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
  456. package/dist/i18n/createStringFormatter.d.ts +2 -2
  457. package/dist/i18n/createStringFormatter.d.ts.map +1 -1
  458. package/dist/i18n/index.d.ts +8 -8
  459. package/dist/i18n/index.d.ts.map +1 -1
  460. package/dist/i18n/index.js +3 -0
  461. package/dist/i18n/index.jsx +3 -0
  462. package/dist/i18n/locale.d.ts +2 -2
  463. package/dist/i18n/locale.d.ts.map +1 -1
  464. package/dist/i18n/utils.d.ts.map +1 -1
  465. package/dist/index.d.ts +56 -51
  466. package/dist/index.d.ts.map +1 -1
  467. package/dist/index.js +71 -17119
  468. package/dist/index.jsx +71 -0
  469. package/dist/interactions/FocusableProvider.d.ts +2 -2
  470. package/dist/interactions/FocusableProvider.d.ts.map +1 -1
  471. package/dist/interactions/PressEvent.d.ts +13 -2
  472. package/dist/interactions/PressEvent.d.ts.map +1 -1
  473. package/dist/interactions/createFocus.d.ts +1 -1
  474. package/dist/interactions/createFocus.d.ts.map +1 -1
  475. package/dist/interactions/createFocusRing.d.ts +1 -1
  476. package/dist/interactions/createFocusRing.d.ts.map +1 -1
  477. package/dist/interactions/createFocusWithin.d.ts +1 -1
  478. package/dist/interactions/createFocusWithin.d.ts.map +1 -1
  479. package/dist/interactions/createFocusable.d.ts +3 -3
  480. package/dist/interactions/createFocusable.d.ts.map +1 -1
  481. package/dist/interactions/createHover.d.ts +5 -5
  482. package/dist/interactions/createHover.d.ts.map +1 -1
  483. package/dist/interactions/createInteractionModality.d.ts +3 -4
  484. package/dist/interactions/createInteractionModality.d.ts.map +1 -1
  485. package/dist/interactions/createKeyboard.d.ts +1 -1
  486. package/dist/interactions/createKeyboard.d.ts.map +1 -1
  487. package/dist/interactions/createLongPress.d.ts +5 -5
  488. package/dist/interactions/createMove.d.ts +5 -5
  489. package/dist/interactions/createMove.d.ts.map +1 -1
  490. package/dist/interactions/createPress.d.ts +4 -4
  491. package/dist/interactions/createPress.d.ts.map +1 -1
  492. package/dist/interactions/index.d.ts +12 -12
  493. package/dist/interactions/index.d.ts.map +1 -1
  494. package/dist/interactions/index.js +10 -0
  495. package/dist/interactions/index.jsx +10 -0
  496. package/dist/label/createField.d.ts +4 -4
  497. package/dist/label/createField.d.ts.map +1 -1
  498. package/dist/label/createLabel.d.ts +7 -7
  499. package/dist/label/createLabel.d.ts.map +1 -1
  500. package/dist/label/createLabels.d.ts +1 -1
  501. package/dist/label/createLabels.d.ts.map +1 -1
  502. package/dist/label/index.d.ts +5 -5
  503. package/dist/label/index.js +4 -0
  504. package/dist/label/index.jsx +4 -0
  505. package/dist/landmark/createLandmark.d.ts +5 -5
  506. package/dist/landmark/createLandmark.d.ts.map +1 -1
  507. package/dist/landmark/index.d.ts +1 -1
  508. package/dist/landmark/index.js +2 -0
  509. package/dist/landmark/index.jsx +2 -0
  510. package/dist/link/createLink.d.ts +14 -8
  511. package/dist/link/createLink.d.ts.map +1 -1
  512. package/dist/link/index.d.ts +1 -1
  513. package/dist/link/index.js +2 -0
  514. package/dist/link/index.jsx +2 -0
  515. package/dist/listbox/createListBox.d.ts +48 -6
  516. package/dist/listbox/createListBox.d.ts.map +1 -1
  517. package/dist/listbox/createOption.d.ts +27 -4
  518. package/dist/listbox/createOption.d.ts.map +1 -1
  519. package/dist/listbox/index.d.ts +2 -2
  520. package/dist/listbox/index.d.ts.map +1 -1
  521. package/dist/listbox/index.js +2 -0
  522. package/dist/listbox/index.jsx +2 -0
  523. package/dist/live-announcer/announce.d.ts +2 -2
  524. package/dist/live-announcer/announce.d.ts.map +1 -1
  525. package/dist/live-announcer/index.d.ts +1 -1
  526. package/dist/live-announcer/index.js +2 -0
  527. package/dist/live-announcer/index.jsx +2 -0
  528. package/dist/menu/createMenu.d.ts +14 -11
  529. package/dist/menu/createMenu.d.ts.map +1 -1
  530. package/dist/menu/createMenuItem.d.ts +25 -5
  531. package/dist/menu/createMenuItem.d.ts.map +1 -1
  532. package/dist/menu/createMenuTrigger.d.ts +4 -4
  533. package/dist/menu/index.d.ts +3 -3
  534. package/dist/menu/index.d.ts.map +1 -1
  535. package/dist/menu/index.js +2 -0
  536. package/dist/menu/index.jsx +2 -0
  537. package/dist/meter/createMeter.d.ts +6 -6
  538. package/dist/meter/createMeter.d.ts.map +1 -1
  539. package/dist/meter/index.d.ts +1 -1
  540. package/dist/meter/index.js +2 -0
  541. package/dist/meter/index.jsx +2 -0
  542. package/dist/numberfield/createNumberField.d.ts +9 -8
  543. package/dist/numberfield/createNumberField.d.ts.map +1 -1
  544. package/dist/numberfield/index.d.ts +1 -1
  545. package/dist/numberfield/index.js +2 -0
  546. package/dist/numberfield/index.jsx +2 -0
  547. package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
  548. package/dist/overlays/createModal.d.ts +3 -3
  549. package/dist/overlays/createModal.d.ts.map +1 -1
  550. package/dist/overlays/createOverlay.d.ts +1 -1
  551. package/dist/overlays/createOverlay.d.ts.map +1 -1
  552. package/dist/overlays/createOverlayTrigger.d.ts +6 -6
  553. package/dist/overlays/index.d.ts +6 -6
  554. package/dist/overlays/index.d.ts.map +1 -1
  555. package/dist/overlays/index.js +4 -0
  556. package/dist/overlays/index.jsx +4 -0
  557. package/dist/popover/calculatePosition.d.ts +6 -4
  558. package/dist/popover/calculatePosition.d.ts.map +1 -1
  559. package/dist/popover/createOverlayPosition.d.ts +11 -3
  560. package/dist/popover/createOverlayPosition.d.ts.map +1 -1
  561. package/dist/popover/createPopover.d.ts +4 -4
  562. package/dist/popover/createPopover.d.ts.map +1 -1
  563. package/dist/popover/index.d.ts +3 -3
  564. package/dist/popover/index.js +2 -0
  565. package/dist/popover/index.jsx +2 -0
  566. package/dist/progress/createProgressBar.d.ts +7 -5
  567. package/dist/progress/createProgressBar.d.ts.map +1 -1
  568. package/dist/progress/index.d.ts +1 -1
  569. package/dist/progress/index.js +2 -0
  570. package/dist/progress/index.jsx +2 -0
  571. package/dist/radio/createRadio.d.ts +9 -7
  572. package/dist/radio/createRadio.d.ts.map +1 -1
  573. package/dist/radio/createRadioGroup.d.ts +10 -10
  574. package/dist/radio/createRadioGroup.d.ts.map +1 -1
  575. package/dist/radio/createRadioGroupState.d.ts +3 -3
  576. package/dist/radio/createRadioGroupState.d.ts.map +1 -1
  577. package/dist/radio/index.d.ts +3 -3
  578. package/dist/radio/index.d.ts.map +1 -1
  579. package/dist/radio/index.js +2 -0
  580. package/dist/radio/index.jsx +2 -0
  581. package/dist/searchfield/createSearchField.d.ts +7 -7
  582. package/dist/searchfield/createSearchField.d.ts.map +1 -1
  583. package/dist/searchfield/index.d.ts +2 -2
  584. package/dist/searchfield/index.js +2 -0
  585. package/dist/searchfield/index.jsx +2 -0
  586. package/dist/select/createHiddenSelect.d.ts +4 -4
  587. package/dist/select/createHiddenSelect.d.ts.map +1 -1
  588. package/dist/select/createSelect.d.ts +14 -6
  589. package/dist/select/createSelect.d.ts.map +1 -1
  590. package/dist/select/index.d.ts +2 -2
  591. package/dist/select/index.d.ts.map +1 -1
  592. package/dist/select/index.js +2 -0
  593. package/dist/select/index.jsx +2 -0
  594. package/dist/selection/DOMLayoutDelegate.d.ts +58 -0
  595. package/dist/selection/DOMLayoutDelegate.d.ts.map +1 -0
  596. package/dist/selection/ListKeyboardDelegate.d.ts +95 -0
  597. package/dist/selection/ListKeyboardDelegate.d.ts.map +1 -0
  598. package/dist/selection/constants.d.ts +15 -0
  599. package/dist/selection/constants.d.ts.map +1 -0
  600. package/dist/selection/createCollectionRowInteraction.d.ts +13 -0
  601. package/dist/selection/createCollectionRowInteraction.d.ts.map +1 -0
  602. package/dist/selection/createScrollIntoViewOnFocus.d.ts +31 -0
  603. package/dist/selection/createScrollIntoViewOnFocus.d.ts.map +1 -0
  604. package/dist/selection/createSelectableCollection.d.ts +69 -0
  605. package/dist/selection/createSelectableCollection.d.ts.map +1 -0
  606. package/dist/selection/createSelectableItem.d.ts +154 -0
  607. package/dist/selection/createSelectableItem.d.ts.map +1 -0
  608. package/dist/selection/createSelectableList.d.ts +43 -0
  609. package/dist/selection/createSelectableList.d.ts.map +1 -0
  610. package/dist/selection/createTypeSelect.d.ts +2 -2
  611. package/dist/selection/createTypeSelect.d.ts.map +1 -1
  612. package/dist/selection/index.d.ts +10 -1
  613. package/dist/selection/index.d.ts.map +1 -1
  614. package/dist/selection/index.js +4 -0
  615. package/dist/selection/index.jsx +4 -0
  616. package/dist/selection/selectItem.d.ts +29 -0
  617. package/dist/selection/selectItem.d.ts.map +1 -0
  618. package/dist/selection/utils.d.ts +40 -0
  619. package/dist/selection/utils.d.ts.map +1 -0
  620. package/dist/separator/createSeparator.d.ts +9 -5
  621. package/dist/separator/createSeparator.d.ts.map +1 -1
  622. package/dist/separator/index.d.ts +1 -1
  623. package/dist/separator/index.js +2 -0
  624. package/dist/separator/index.jsx +2 -0
  625. package/dist/slider/createSlider.d.ts +11 -7
  626. package/dist/slider/createSlider.d.ts.map +1 -1
  627. package/dist/slider/index.d.ts +2 -2
  628. package/dist/slider/index.js +2 -0
  629. package/dist/slider/index.jsx +2 -0
  630. package/dist/ssr/index.d.ts +18 -1
  631. package/dist/ssr/index.d.ts.map +1 -1
  632. package/dist/ssr/index.js +299 -0
  633. package/dist/ssr/index.js.map +1 -0
  634. package/dist/ssr/index.jsx +292 -0
  635. package/dist/ssr/index.jsx.map +1 -0
  636. package/dist/steplist/createStepList.d.ts +36 -0
  637. package/dist/steplist/createStepList.d.ts.map +1 -0
  638. package/dist/steplist/index.d.ts +2 -0
  639. package/dist/steplist/index.d.ts.map +1 -0
  640. package/dist/steplist/index.js +2 -0
  641. package/dist/steplist/index.jsx +2 -0
  642. package/dist/switch/createSwitch.d.ts +10 -4
  643. package/dist/switch/createSwitch.d.ts.map +1 -1
  644. package/dist/switch/index.d.ts +1 -1
  645. package/dist/switch/index.js +2 -0
  646. package/dist/switch/index.jsx +2 -0
  647. package/dist/table/createTable.d.ts +3 -3
  648. package/dist/table/createTable.d.ts.map +1 -1
  649. package/dist/table/createTableCell.d.ts +3 -3
  650. package/dist/table/createTableCell.d.ts.map +1 -1
  651. package/dist/table/createTableColumnHeader.d.ts +3 -3
  652. package/dist/table/createTableColumnHeader.d.ts.map +1 -1
  653. package/dist/table/createTableColumnResize.d.ts +41 -0
  654. package/dist/table/createTableColumnResize.d.ts.map +1 -0
  655. package/dist/table/createTableHeaderRow.d.ts +3 -3
  656. package/dist/table/createTableRow.d.ts +4 -4
  657. package/dist/table/createTableRow.d.ts.map +1 -1
  658. package/dist/table/createTableRowGroup.d.ts +2 -2
  659. package/dist/table/createTableRowGroup.d.ts.map +1 -1
  660. package/dist/table/createTableSelectAllCheckbox.d.ts +3 -3
  661. package/dist/table/createTableSelectionCheckbox.d.ts +3 -3
  662. package/dist/table/index.d.ts +11 -9
  663. package/dist/table/index.d.ts.map +1 -1
  664. package/dist/table/index.js +2 -0
  665. package/dist/table/index.jsx +2 -0
  666. package/dist/table/types.d.ts +41 -7
  667. package/dist/table/types.d.ts.map +1 -1
  668. package/dist/tabs/createTabs.d.ts +32 -28
  669. package/dist/tabs/createTabs.d.ts.map +1 -1
  670. package/dist/tabs/index.d.ts +1 -1
  671. package/dist/tabs/index.js +2 -0
  672. package/dist/tabs/index.jsx +2 -0
  673. package/dist/tag/createTag.d.ts +4 -2
  674. package/dist/tag/createTag.d.ts.map +1 -1
  675. package/dist/tag/createTagGroup.d.ts +5 -5
  676. package/dist/tag/createTagGroup.d.ts.map +1 -1
  677. package/dist/tag/index.d.ts +2 -2
  678. package/dist/tag/index.d.ts.map +1 -1
  679. package/dist/tag/index.js +2 -0
  680. package/dist/tag/index.jsx +2 -0
  681. package/dist/textfield/createTextField.d.ts +17 -11
  682. package/dist/textfield/createTextField.d.ts.map +1 -1
  683. package/dist/textfield/index.d.ts +1 -1
  684. package/dist/textfield/index.d.ts.map +1 -1
  685. package/dist/textfield/index.js +2 -0
  686. package/dist/textfield/index.jsx +2 -0
  687. package/dist/toast/createToast.d.ts +2 -2
  688. package/dist/toast/createToast.d.ts.map +1 -1
  689. package/dist/toast/createToastRegion.d.ts +5 -3
  690. package/dist/toast/createToastRegion.d.ts.map +1 -1
  691. package/dist/toast/index.d.ts +2 -2
  692. package/dist/toast/index.d.ts.map +1 -1
  693. package/dist/toast/index.js +2 -0
  694. package/dist/toast/index.jsx +2 -0
  695. package/dist/toggle/createToggle.d.ts +13 -9
  696. package/dist/toggle/createToggle.d.ts.map +1 -1
  697. package/dist/toggle/createToggleState.d.ts +2 -2
  698. package/dist/toggle/createToggleState.d.ts.map +1 -1
  699. package/dist/toggle/index.d.ts +4 -4
  700. package/dist/toggle/index.d.ts.map +1 -1
  701. package/dist/toggle/index.js +3 -0
  702. package/dist/toggle/index.jsx +3 -0
  703. package/dist/toolbar/createToolbar.d.ts +9 -9
  704. package/dist/toolbar/createToolbar.d.ts.map +1 -1
  705. package/dist/toolbar/index.d.ts +1 -1
  706. package/dist/toolbar/index.d.ts.map +1 -1
  707. package/dist/toolbar/index.js +2 -0
  708. package/dist/toolbar/index.jsx +2 -0
  709. package/dist/tooltip/createTooltip.d.ts +5 -5
  710. package/dist/tooltip/createTooltip.d.ts.map +1 -1
  711. package/dist/tooltip/createTooltipTrigger.d.ts +10 -5
  712. package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
  713. package/dist/tooltip/index.d.ts +2 -2
  714. package/dist/tooltip/index.js +2 -0
  715. package/dist/tooltip/index.jsx +2 -0
  716. package/dist/tree/createTree.d.ts +8 -4
  717. package/dist/tree/createTree.d.ts.map +1 -1
  718. package/dist/tree/createTreeItem.d.ts +4 -4
  719. package/dist/tree/createTreeItem.d.ts.map +1 -1
  720. package/dist/tree/createTreeSelectionCheckbox.d.ts +3 -3
  721. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
  722. package/dist/tree/index.d.ts +4 -4
  723. package/dist/tree/index.js +2 -0
  724. package/dist/tree/index.jsx +2 -0
  725. package/dist/tree/types.d.ts +20 -6
  726. package/dist/tree/types.d.ts.map +1 -1
  727. package/dist/utils/animation.d.ts +60 -0
  728. package/dist/utils/animation.d.ts.map +1 -0
  729. package/dist/utils/createDescription.d.ts +2 -2
  730. package/dist/utils/createDescription.d.ts.map +1 -1
  731. package/dist/utils/dom.d.ts +48 -2
  732. package/dist/utils/dom.d.ts.map +1 -1
  733. package/dist/utils/env.d.ts.map +1 -1
  734. package/dist/utils/focus.d.ts +1 -1
  735. package/dist/utils/focus.d.ts.map +1 -1
  736. package/dist/utils/geometry.d.ts.map +1 -1
  737. package/dist/utils/index.d.ts +15 -12
  738. package/dist/utils/index.d.ts.map +1 -1
  739. package/dist/utils/index.js +5 -0
  740. package/dist/utils/index.jsx +5 -0
  741. package/dist/utils/keyboard.d.ts +17 -0
  742. package/dist/utils/keyboard.d.ts.map +1 -0
  743. package/dist/utils/mergeProps.d.ts.map +1 -1
  744. package/dist/utils/reactivity.d.ts +1 -1
  745. package/dist/utils/scrollIntoView.d.ts +30 -0
  746. package/dist/utils/scrollIntoView.d.ts.map +1 -0
  747. package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -2
  748. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
  749. package/dist/visually-hidden/index.d.ts +1 -1
  750. package/dist/visually-hidden/index.js +2 -0
  751. package/dist/visually-hidden/index.jsx +2 -0
  752. package/package.json +334 -33
  753. package/src/actiongroup/createActionGroup.ts +101 -91
  754. package/src/actiongroup/index.ts +1 -1
  755. package/src/autocomplete/createAutocomplete.ts +177 -148
  756. package/src/autocomplete/index.ts +1 -1
  757. package/src/breadcrumbs/createBreadcrumbs.ts +33 -42
  758. package/src/breadcrumbs/index.ts +1 -1
  759. package/src/button/createButton.ts +102 -73
  760. package/src/button/createToggleButton.ts +10 -10
  761. package/src/button/createToggleButtonGroup.ts +25 -32
  762. package/src/button/index.ts +6 -9
  763. package/src/button/types.ts +18 -12
  764. package/src/calendar/createCalendar.ts +64 -29
  765. package/src/calendar/createCalendarCell.ts +115 -46
  766. package/src/calendar/createCalendarGrid.ts +97 -41
  767. package/src/calendar/createCalendarMonthPicker.ts +105 -0
  768. package/src/calendar/createCalendarYearPicker.ts +144 -0
  769. package/src/calendar/createRangeCalendar.ts +68 -31
  770. package/src/calendar/createRangeCalendarCell.ts +92 -31
  771. package/src/calendar/index.ts +21 -8
  772. package/src/calendar/intl/index.ts +210 -0
  773. package/src/calendar/utils.ts +231 -0
  774. package/src/checkbox/createCheckbox.ts +23 -21
  775. package/src/checkbox/createCheckboxGroup.ts +68 -44
  776. package/src/checkbox/createCheckboxGroupItem.ts +26 -41
  777. package/src/checkbox/createCheckboxGroupState.ts +3 -22
  778. package/src/checkbox/index.ts +8 -10
  779. package/src/collections/index.ts +33 -29
  780. package/src/color/createColorArea.ts +232 -154
  781. package/src/color/createColorField.ts +107 -58
  782. package/src/color/createColorSlider.ts +231 -73
  783. package/src/color/createColorSwatch.ts +38 -13
  784. package/src/color/createColorWheel.ts +208 -83
  785. package/src/color/index.ts +6 -6
  786. package/src/color/types.ts +98 -16
  787. package/src/combobox/createComboBox.ts +157 -100
  788. package/src/combobox/index.ts +1 -1
  789. package/src/combobox/intl/index.ts +5 -5
  790. package/src/datepicker/createDateField.ts +192 -39
  791. package/src/datepicker/createDatePicker.ts +260 -67
  792. package/src/datepicker/createDatePickerGroup.ts +149 -0
  793. package/src/datepicker/createDateRangePicker.ts +105 -57
  794. package/src/datepicker/createDateSegment.ts +188 -96
  795. package/src/datepicker/createTimeField.ts +38 -34
  796. package/src/datepicker/createTimeSegment.ts +67 -85
  797. package/src/datepicker/index.ts +13 -14
  798. package/src/dialog/createDialog.ts +45 -38
  799. package/src/dialog/index.ts +2 -2
  800. package/src/dialog/types.ts +4 -4
  801. package/src/disclosure/createDisclosure.ts +138 -33
  802. package/src/disclosure/createDisclosureGroup.ts +8 -21
  803. package/src/disclosure/index.ts +2 -2
  804. package/src/dnd/createDrag.ts +19 -25
  805. package/src/dnd/createDraggableCollection.ts +4 -4
  806. package/src/dnd/createDraggableItem.ts +20 -19
  807. package/src/dnd/createDrop.ts +42 -51
  808. package/src/dnd/createDroppableCollection.ts +293 -173
  809. package/src/dnd/createDroppableItem.ts +34 -34
  810. package/src/dnd/index.ts +23 -12
  811. package/src/dnd/types.ts +4 -7
  812. package/src/dnd/utils.ts +58 -47
  813. package/src/focus/FocusScope.tsx +301 -176
  814. package/src/focus/createAutoFocus.ts +4 -20
  815. package/src/focus/createFocusRestore.ts +15 -28
  816. package/src/focus/createVirtualFocus.ts +20 -36
  817. package/src/focus/index.ts +4 -8
  818. package/src/form/createFormReset.ts +4 -4
  819. package/src/form/createFormValidation.ts +23 -39
  820. package/src/form/index.ts +2 -5
  821. package/src/grid/GridKeyboardDelegate.ts +30 -30
  822. package/src/grid/createGrid.ts +36 -36
  823. package/src/grid/createGridCell.ts +18 -18
  824. package/src/grid/createGridRow.ts +14 -14
  825. package/src/grid/index.ts +5 -5
  826. package/src/grid/types.ts +8 -8
  827. package/src/gridlist/createGridList.ts +172 -64
  828. package/src/gridlist/createGridListItem.ts +98 -121
  829. package/src/gridlist/createGridListSection.ts +54 -0
  830. package/src/gridlist/createGridListSelectionCheckbox.ts +12 -9
  831. package/src/gridlist/index.ts +7 -4
  832. package/src/gridlist/types.ts +58 -7
  833. package/src/i18n/createCollator.ts +5 -18
  834. package/src/i18n/createDateFormatter.ts +5 -13
  835. package/src/i18n/createFilter.ts +11 -24
  836. package/src/i18n/createNumberFormatter.ts +4 -6
  837. package/src/i18n/createStringFormatter.ts +19 -15
  838. package/src/i18n/index.ts +8 -11
  839. package/src/i18n/locale.tsx +15 -40
  840. package/src/i18n/utils.ts +35 -39
  841. package/src/index.ts +111 -172
  842. package/src/interactions/FocusableProvider.tsx +3 -7
  843. package/src/interactions/PressEvent.ts +18 -4
  844. package/src/interactions/createFocus.ts +12 -8
  845. package/src/interactions/createFocusRing.ts +21 -19
  846. package/src/interactions/createFocusWithin.ts +20 -13
  847. package/src/interactions/createFocusable.ts +15 -16
  848. package/src/interactions/createHover.ts +70 -55
  849. package/src/interactions/createInteractionModality.ts +96 -94
  850. package/src/interactions/createKeyboard.ts +12 -2
  851. package/src/interactions/createLongPress.ts +23 -23
  852. package/src/interactions/createMove.ts +72 -62
  853. package/src/interactions/createPress.ts +192 -92
  854. package/src/interactions/index.ts +24 -16
  855. package/src/label/createField.ts +18 -19
  856. package/src/label/createLabel.ts +18 -30
  857. package/src/label/createLabels.ts +8 -12
  858. package/src/label/index.ts +5 -5
  859. package/src/landmark/createLandmark.ts +30 -51
  860. package/src/landmark/index.ts +1 -1
  861. package/src/link/createLink.ts +83 -56
  862. package/src/link/index.ts +1 -1
  863. package/src/listbox/createListBox.ts +198 -66
  864. package/src/listbox/createOption.ts +112 -71
  865. package/src/listbox/index.ts +2 -6
  866. package/src/live-announcer/announce.ts +44 -71
  867. package/src/live-announcer/index.ts +1 -1
  868. package/src/menu/createMenu.ts +171 -65
  869. package/src/menu/createMenuItem.ts +315 -51
  870. package/src/menu/createMenuTrigger.ts +15 -15
  871. package/src/menu/index.ts +3 -12
  872. package/src/meter/createMeter.ts +7 -15
  873. package/src/meter/index.ts +1 -1
  874. package/src/numberfield/createNumberField.ts +205 -80
  875. package/src/numberfield/index.ts +1 -1
  876. package/src/overlays/ariaHideOutside.ts +14 -10
  877. package/src/overlays/createInteractOutside.ts +21 -18
  878. package/src/overlays/createModal.tsx +17 -17
  879. package/src/overlays/createOverlay.ts +38 -8
  880. package/src/overlays/createOverlayTrigger.ts +16 -16
  881. package/src/overlays/createPreventScroll.ts +46 -24
  882. package/src/overlays/index.ts +6 -17
  883. package/src/popover/calculatePosition.ts +134 -124
  884. package/src/popover/createOverlayPosition.ts +55 -40
  885. package/src/popover/createPopover.ts +42 -17
  886. package/src/popover/index.ts +3 -3
  887. package/src/progress/createProgressBar.ts +31 -32
  888. package/src/progress/index.ts +1 -1
  889. package/src/radio/createRadio.ts +114 -75
  890. package/src/radio/createRadioGroup.ts +83 -77
  891. package/src/radio/createRadioGroupState.ts +7 -31
  892. package/src/radio/index.ts +3 -8
  893. package/src/searchfield/createSearchField.ts +57 -29
  894. package/src/searchfield/index.ts +2 -2
  895. package/src/select/createHiddenSelect.tsx +57 -44
  896. package/src/select/createSelect.ts +146 -73
  897. package/src/select/index.ts +2 -7
  898. package/src/selection/DOMLayoutDelegate.ts +102 -0
  899. package/src/selection/ListKeyboardDelegate.ts +398 -0
  900. package/src/selection/constants.ts +16 -0
  901. package/src/selection/createCollectionRowInteraction.ts +209 -0
  902. package/src/selection/createScrollIntoViewOnFocus.ts +65 -0
  903. package/src/selection/createSelectableCollection.ts +645 -0
  904. package/src/selection/createSelectableItem.ts +498 -0
  905. package/src/selection/createSelectableList.ts +93 -0
  906. package/src/selection/createTypeSelect.ts +120 -59
  907. package/src/selection/index.ts +32 -1
  908. package/src/selection/selectItem.ts +80 -0
  909. package/src/selection/utils.ts +82 -0
  910. package/src/separator/createSeparator.ts +20 -25
  911. package/src/separator/index.ts +1 -1
  912. package/src/slider/createSlider.ts +128 -112
  913. package/src/slider/index.ts +2 -2
  914. package/src/ssr/index.tsx +38 -46
  915. package/src/steplist/createStepList.ts +106 -0
  916. package/src/steplist/index.ts +8 -0
  917. package/src/switch/createSwitch.ts +19 -14
  918. package/src/switch/index.ts +1 -1
  919. package/src/table/createTable.ts +192 -95
  920. package/src/table/createTableCell.ts +17 -16
  921. package/src/table/createTableColumnHeader.ts +67 -20
  922. package/src/table/createTableColumnResize.ts +256 -0
  923. package/src/table/createTableHeaderRow.ts +7 -7
  924. package/src/table/createTableRow.ts +206 -91
  925. package/src/table/createTableRowGroup.ts +5 -7
  926. package/src/table/createTableSelectAllCheckbox.ts +14 -14
  927. package/src/table/createTableSelectionCheckbox.ts +8 -8
  928. package/src/table/index.ts +14 -9
  929. package/src/table/types.ts +43 -7
  930. package/src/tabs/createTabs.ts +123 -111
  931. package/src/tabs/index.ts +1 -1
  932. package/src/tag/createTag.ts +57 -50
  933. package/src/tag/createTagGroup.ts +47 -41
  934. package/src/tag/index.ts +2 -6
  935. package/src/textfield/createTextField.ts +67 -35
  936. package/src/textfield/index.ts +1 -5
  937. package/src/toast/createToast.ts +29 -26
  938. package/src/toast/createToastRegion.ts +169 -26
  939. package/src/toast/index.ts +2 -6
  940. package/src/toggle/createToggle.ts +115 -53
  941. package/src/toggle/createToggleState.ts +2 -10
  942. package/src/toggle/index.ts +4 -5
  943. package/src/toolbar/createToolbar.ts +214 -230
  944. package/src/toolbar/index.ts +1 -1
  945. package/src/tooltip/createTooltip.ts +11 -24
  946. package/src/tooltip/createTooltipTrigger.ts +61 -49
  947. package/src/tooltip/index.ts +2 -2
  948. package/src/tree/createTree.ts +128 -72
  949. package/src/tree/createTreeItem.ts +120 -135
  950. package/src/tree/createTreeSelectionCheckbox.ts +11 -8
  951. package/src/tree/index.ts +4 -4
  952. package/src/tree/types.ts +20 -6
  953. package/src/utils/animation.ts +151 -0
  954. package/src/utils/createDescription.ts +6 -23
  955. package/src/utils/dom.ts +265 -68
  956. package/src/utils/env.ts +9 -11
  957. package/src/utils/events.ts +7 -7
  958. package/src/utils/filterDOMProps.ts +49 -49
  959. package/src/utils/focus.ts +60 -68
  960. package/src/utils/geometry.ts +1 -4
  961. package/src/utils/globalListeners.ts +9 -9
  962. package/src/utils/index.ts +20 -22
  963. package/src/utils/keyboard.ts +25 -0
  964. package/src/utils/mergeProps.ts +49 -15
  965. package/src/utils/platform.ts +2 -2
  966. package/src/utils/reactivity.ts +3 -3
  967. package/src/utils/scrollIntoView.ts +181 -0
  968. package/src/utils/textSelection.ts +16 -16
  969. package/src/visually-hidden/createVisuallyHidden.ts +16 -28
  970. package/src/visually-hidden/index.ts +1 -1
  971. package/dist/i18n/NumberFormatter.d.ts +0 -43
  972. package/dist/i18n/NumberFormatter.d.ts.map +0 -1
  973. package/dist/index.js.map +0 -1
  974. package/dist/index.ssr.js +0 -17082
  975. package/dist/index.ssr.js.map +0 -1
  976. package/src/i18n/NumberFormatter.ts +0 -266
@@ -8,17 +8,13 @@
8
8
  * This is a 1:1 port of @react-aria/link's useLink hook.
9
9
  */
10
10
 
11
- import { type Accessor } from 'solid-js';
12
- import { createPress } from '../interactions/createPress';
13
- import { createFocusable } from '../interactions/createFocusable';
14
- import { mergeProps } from '../utils/mergeProps';
15
- import { filterDOMProps } from '../utils/filterDOMProps';
16
- import { type MaybeAccessor, access } from '../utils/reactivity';
17
- import { type PressEvent } from '../interactions/PressEvent';
18
-
19
- // ============================================
20
- // TYPES
21
- // ============================================
11
+ import { type Accessor } from "solid-js";
12
+ import { createPress } from "../interactions/createPress";
13
+ import { createFocusable } from "../interactions/createFocusable";
14
+ import { mergeProps } from "../utils/mergeProps";
15
+ import { filterDOMProps } from "../utils/filterDOMProps";
16
+ import { type MaybeAccessor, access } from "../utils/reactivity";
17
+ import { type PressEvent } from "../interactions/PressEvent";
22
18
 
23
19
  export interface AriaLinkProps {
24
20
  /** Whether the link is disabled. */
@@ -41,21 +37,25 @@ export interface AriaLinkProps {
41
37
  ping?: string;
42
38
  /** Referrer policy for fetches initiated by this link. */
43
39
  referrerPolicy?:
44
- | ''
45
- | 'no-referrer'
46
- | 'no-referrer-when-downgrade'
47
- | 'origin'
48
- | 'origin-when-cross-origin'
49
- | 'same-origin'
50
- | 'strict-origin'
51
- | 'strict-origin-when-cross-origin'
52
- | 'unsafe-url';
40
+ | ""
41
+ | "no-referrer"
42
+ | "no-referrer-when-downgrade"
43
+ | "origin"
44
+ | "origin-when-cross-origin"
45
+ | "same-origin"
46
+ | "strict-origin"
47
+ | "strict-origin-when-cross-origin"
48
+ | "unsafe-url";
53
49
  /** Handler that is called when the press is released over the target. */
54
50
  onPress?: (e: PressEvent) => void;
55
51
  /** Handler that is called when a press interaction starts. */
56
52
  onPressStart?: (e: PressEvent) => void;
57
53
  /** Handler that is called when a press interaction ends. */
58
54
  onPressEnd?: (e: PressEvent) => void;
55
+ /** Handler that is called when a press is released over the target. */
56
+ onPressUp?: (e: PressEvent) => void;
57
+ /** Handler that is called when the press state changes. */
58
+ onPressChange?: (isPressed: boolean) => void;
59
59
  /** Handler that is called when the element is clicked. */
60
60
  onClick?: (e: MouseEvent) => void;
61
61
  /** Handler that is called when the element receives focus. */
@@ -71,13 +71,15 @@ export interface AriaLinkProps {
71
71
  /** Whether to autofocus the element. */
72
72
  autoFocus?: boolean;
73
73
  /** Indicates the current "page" or state within a set of related elements. */
74
- 'aria-current'?: 'page' | 'step' | 'location' | 'date' | 'time' | 'true' | 'false' | boolean;
74
+ "aria-current"?: "page" | "step" | "location" | "date" | "time" | "true" | "false" | boolean;
75
75
  /** Defines a string value that labels the current element. */
76
- 'aria-label'?: string;
76
+ "aria-label"?: string;
77
77
  /** Identifies the element (or elements) that labels the current element. */
78
- 'aria-labelledby'?: string;
78
+ "aria-labelledby"?: string;
79
79
  /** Identifies the element (or elements) that describes the object. */
80
- 'aria-describedby'?: string;
80
+ "aria-describedby"?: string;
81
+ /** Identifies the element (or elements) that provide a detailed description. */
82
+ "aria-details"?: string;
81
83
  }
82
84
 
83
85
  export interface LinkAria {
@@ -87,40 +89,62 @@ export interface LinkAria {
87
89
  isPressed: Accessor<boolean>;
88
90
  }
89
91
 
90
- // ============================================
91
- // IMPLEMENTATION
92
- // ============================================
93
-
94
92
  /**
95
93
  * Provides the behavior and accessibility implementation for a link component.
96
94
  * A link allows a user to navigate to another page or resource within a web page
97
95
  * or application.
98
96
  */
99
- export function createLink(
100
- props: MaybeAccessor<AriaLinkProps> = {}
101
- ): LinkAria {
97
+ export function createLink(props: MaybeAccessor<AriaLinkProps> = {}): LinkAria {
102
98
  const getProps = () => access(props);
103
99
 
104
100
  const isDisabled = () => getProps().isDisabled ?? false;
105
- const elementType = () => getProps().elementType ?? 'a';
101
+ const elementType = () => getProps().elementType ?? "a";
106
102
 
107
103
  // Create press handling
108
104
  const { pressProps, isPressed } = createPress({
109
- get isDisabled() { return isDisabled(); },
110
- get onPress() { return getProps().onPress; },
111
- get onPressStart() { return getProps().onPressStart; },
112
- get onPressEnd() { return getProps().onPressEnd; },
105
+ get isDisabled() {
106
+ return isDisabled();
107
+ },
108
+ get onPress() {
109
+ return getProps().onPress;
110
+ },
111
+ get onPressStart() {
112
+ return getProps().onPressStart;
113
+ },
114
+ get onPressEnd() {
115
+ return getProps().onPressEnd;
116
+ },
117
+ get onPressUp() {
118
+ return getProps().onPressUp;
119
+ },
120
+ get onPressChange() {
121
+ return getProps().onPressChange;
122
+ },
113
123
  });
114
124
 
115
125
  // Create focusable handling
116
126
  const { focusableProps } = createFocusable({
117
- get isDisabled() { return isDisabled(); },
118
- get autoFocus() { return getProps().autoFocus; },
119
- get onFocus() { return getProps().onFocus; },
120
- get onBlur() { return getProps().onBlur; },
121
- get onFocusChange() { return getProps().onFocusChange; },
122
- get onKeyDown() { return getProps().onKeyDown; },
123
- get onKeyUp() { return getProps().onKeyUp; },
127
+ get isDisabled() {
128
+ return isDisabled();
129
+ },
130
+ get autoFocus() {
131
+ return getProps().autoFocus;
132
+ },
133
+ get onFocus() {
134
+ return getProps().onFocus;
135
+ },
136
+ get onBlur() {
137
+ return getProps().onBlur;
138
+ },
139
+ get onFocusChange() {
140
+ return getProps().onFocusChange;
141
+ },
142
+ get onKeyDown() {
143
+ return getProps().onKeyDown;
144
+ },
145
+ get onKeyUp() {
146
+ return getProps().onKeyUp;
147
+ },
124
148
  });
125
149
 
126
150
  // Build link props
@@ -132,29 +156,32 @@ export function createLink(
132
156
  let baseProps: Record<string, unknown> = {};
133
157
 
134
158
  // If not an <a>, add role and tabIndex
135
- if (elType !== 'a') {
159
+ if (elType !== "a") {
136
160
  baseProps = {
137
- role: 'link',
161
+ role: "link",
138
162
  tabIndex: disabled ? undefined : 0,
139
163
  };
140
164
  }
141
165
 
142
166
  // ARIA attributes
143
167
  const ariaProps: Record<string, unknown> = {
144
- 'aria-disabled': disabled || undefined,
168
+ "aria-disabled": disabled || undefined,
145
169
  };
146
170
 
147
- if (p['aria-current'] !== undefined) {
148
- ariaProps['aria-current'] = p['aria-current'];
171
+ if (p["aria-current"] !== undefined) {
172
+ ariaProps["aria-current"] = p["aria-current"];
173
+ }
174
+ if (p["aria-label"]) {
175
+ ariaProps["aria-label"] = p["aria-label"];
149
176
  }
150
- if (p['aria-label']) {
151
- ariaProps['aria-label'] = p['aria-label'];
177
+ if (p["aria-labelledby"]) {
178
+ ariaProps["aria-labelledby"] = p["aria-labelledby"];
152
179
  }
153
- if (p['aria-labelledby']) {
154
- ariaProps['aria-labelledby'] = p['aria-labelledby'];
180
+ if (p["aria-describedby"]) {
181
+ ariaProps["aria-describedby"] = p["aria-describedby"];
155
182
  }
156
- if (p['aria-describedby']) {
157
- ariaProps['aria-describedby'] = p['aria-describedby'];
183
+ if (p["aria-details"]) {
184
+ ariaProps["aria-details"] = p["aria-details"];
158
185
  }
159
186
 
160
187
  // Handle onClick - prevent default navigation when appropriate
@@ -178,13 +205,13 @@ export function createLink(
178
205
  return mergeProps(
179
206
  filterDOMProps(p as Record<string, unknown>, {
180
207
  labelable: true,
181
- isLink: elType === 'a',
208
+ isLink: elType === "a",
182
209
  }),
183
210
  baseProps,
184
211
  ariaProps,
185
212
  focusableProps as Record<string, unknown>,
186
213
  pressProps as Record<string, unknown>,
187
- { onClick }
214
+ { onClick },
188
215
  );
189
216
  };
190
217
 
package/src/link/index.ts CHANGED
@@ -1 +1 @@
1
- export { createLink, type AriaLinkProps, type LinkAria } from './createLink';
1
+ export { createLink, type AriaLinkProps, type LinkAria } from "./createLink";
@@ -4,16 +4,16 @@
4
4
  * Based on @react-aria/listbox useListBox.
5
5
  */
6
6
 
7
- import { createEffect, onCleanup, type JSX } from 'solid-js';
8
- import { createFocusWithin } from '../interactions/createFocusWithin';
9
- import { createLabel } from '../label/createLabel';
10
- import { createTypeSelect } from '../selection/createTypeSelect';
11
- import { filterDOMProps } from '../utils/filterDOMProps';
12
- import { mergeProps } from '../utils/mergeProps';
13
- import { createId } from '../ssr';
14
- import { access, type MaybeAccessor } from '../utils/reactivity';
15
- import { isDevEnv } from '../utils/env';
16
- import type { ListState, Key } from '@proyecto-viviana/solid-stately';
7
+ import { createEffect, onCleanup, type JSX } from "solid-js";
8
+ import { createFocusWithin } from "../interactions/createFocusWithin";
9
+ import { createLabel } from "../label/createLabel";
10
+ import { createTypeSelect } from "../selection/createTypeSelect";
11
+ import { filterDOMProps } from "../utils/filterDOMProps";
12
+ import { mergeProps } from "../utils/mergeProps";
13
+ import { createId } from "../ssr";
14
+ import { access, type MaybeAccessor } from "../utils/reactivity";
15
+ import { isDevEnv } from "../utils/env";
16
+ import type { ListState, Key } from "@proyecto-viviana/solid-stately";
17
17
 
18
18
  export interface AriaListBoxProps {
19
19
  /** An ID for the listbox. */
@@ -23,11 +23,11 @@ export interface AriaListBoxProps {
23
23
  /** The label for the listbox. */
24
24
  label?: JSX.Element;
25
25
  /** An accessible label for the listbox when no visible label is provided. */
26
- 'aria-label'?: string;
26
+ "aria-label"?: string;
27
27
  /** The ID of an element that labels the listbox. */
28
- 'aria-labelledby'?: string;
28
+ "aria-labelledby"?: string;
29
29
  /** The ID of an element that describes the listbox. */
30
- 'aria-describedby'?: string;
30
+ "aria-describedby"?: string;
31
31
  /** Handler called when focus moves into the listbox. */
32
32
  onFocus?: (e: FocusEvent) => void;
33
33
  /** Handler called when focus moves out of the listbox. */
@@ -42,8 +42,46 @@ export interface AriaListBoxProps {
42
42
  shouldSelectOnPressUp?: boolean;
43
43
  /** Whether to focus items on hover. */
44
44
  shouldFocusOnHover?: boolean;
45
+ /** Whether the listbox uses virtual scrolling. */
46
+ isVirtualized?: boolean;
47
+ /** Whether options should use virtual focus instead of receiving DOM focus. */
48
+ shouldUseVirtualFocus?: boolean;
49
+ /** The behavior of links in the collection. */
50
+ linkBehavior?: "action" | "selection" | "override" | "none";
51
+ /**
52
+ * Unstable upstream override that forces items with actions to prefer
53
+ * selection or action behavior.
54
+ */
55
+ UNSTABLE_itemBehavior?: "selection" | "action";
56
+ /**
57
+ * Whether keyboard focus movement should also update selection in single selection mode.
58
+ * @default true
59
+ */
60
+ shouldSelectOnFocus?: boolean;
45
61
  /** Whether type-to-select is disabled. @default false */
46
62
  disallowTypeAhead?: boolean;
63
+ /**
64
+ * The primary orientation of the items. In a horizontal listbox the Left/Right
65
+ * arrows navigate the list (the block-axis Up/Down arrows still work); in a
66
+ * vertical listbox Left/Right are no-ops, matching upstream's
67
+ * `ListKeyboardDelegate` for a `stack` layout.
68
+ * @default "vertical"
69
+ */
70
+ orientation?: "vertical" | "horizontal";
71
+ /**
72
+ * The text direction, used to resolve the horizontal navigation axis. In a
73
+ * horizontal listbox, RTL flips Left/Right (Right=previous, Left=next).
74
+ * @default "ltr"
75
+ */
76
+ direction?: "ltr" | "rtl";
77
+ /**
78
+ * Whether pressing the Escape key should clear selection in the listbox or not.
79
+ * Most experiences should not modify this option as it eliminates a keyboard
80
+ * user's ability to easily clear selection. Only use if the escape key is being
81
+ * handled externally or should not trigger selection clearing contextually.
82
+ * @default "clearSelection"
83
+ */
84
+ escapeKeyBehavior?: "clearSelection" | "none";
47
85
  }
48
86
 
49
87
  export interface ListBoxAria {
@@ -61,35 +99,50 @@ interface ListBoxData {
61
99
  onAction?: (key: Key) => void;
62
100
  shouldSelectOnPressUp?: boolean;
63
101
  shouldFocusOnHover?: boolean;
102
+ isVirtualized?: boolean;
103
+ shouldUseVirtualFocus?: boolean;
64
104
  isDisabled?: boolean;
105
+ linkBehavior?: "action" | "selection" | "override" | "none";
106
+ UNSTABLE_itemBehavior?: "selection" | "action";
65
107
  }
66
108
 
67
109
  export function getListBoxData(state: ListState): ListBoxData | undefined {
68
110
  return listBoxData.get(state);
69
111
  }
70
112
 
113
+ /**
114
+ * Whether a key should be skipped during keyboard navigation. Disabled keys only
115
+ * block navigation under `disabledBehavior: "all"` (the default); under
116
+ * `"selection"` they stay focusable (selection is still blocked elsewhere).
117
+ * Mirrors `ListKeyboardDelegate.isDisabled` in React Aria, which gates the skip
118
+ * on the resolved `disabledBehavior` from the selection manager.
119
+ */
120
+ function isNavigationDisabled<T>(state: ListState<T>, key: Key): boolean {
121
+ return state.isDisabled(key) && state.disabledBehavior() === "all";
122
+ }
123
+
71
124
  function findNextEnabledKey<T>(
72
125
  state: ListState<T>,
73
126
  currentKey: Key | null,
74
- direction: 'next' | 'prev',
75
- wrap: boolean
127
+ direction: "next" | "prev",
128
+ wrap: boolean,
76
129
  ): Key | null {
77
130
  const collection = state.collection();
78
- const getAdjacentKey = direction === 'next'
79
- ? (key: Key) => collection.getKeyAfter(key)
80
- : (key: Key) => collection.getKeyBefore(key);
81
- const getBoundaryKey = direction === 'next'
82
- ? () => collection.getFirstKey()
83
- : () => collection.getLastKey();
131
+ const getAdjacentKey =
132
+ direction === "next"
133
+ ? (key: Key) => collection.getKeyAfter(key)
134
+ : (key: Key) => collection.getKeyBefore(key);
135
+ const getBoundaryKey =
136
+ direction === "next" ? () => collection.getFirstKey() : () => collection.getLastKey();
84
137
 
85
138
  let key = currentKey != null ? getAdjacentKey(currentKey) : getBoundaryKey();
86
- while (key != null && state.isDisabled(key)) {
139
+ while (key != null && isNavigationDisabled(state, key)) {
87
140
  key = getAdjacentKey(key);
88
141
  }
89
142
 
90
143
  if (key == null && wrap) {
91
144
  key = getBoundaryKey();
92
- while (key != null && state.isDisabled(key)) {
145
+ while (key != null && isNavigationDisabled(state, key)) {
93
146
  key = getAdjacentKey(key);
94
147
  }
95
148
  }
@@ -104,7 +157,7 @@ function findNextEnabledKey<T>(
104
157
  export function createListBox<T>(
105
158
  props: MaybeAccessor<AriaListBoxProps>,
106
159
  state: ListState<T>,
107
- _ref?: () => HTMLElement | null
160
+ _ref?: () => HTMLElement | null,
108
161
  ): ListBoxAria {
109
162
  const getProps = () => access(props);
110
163
  const id = createId(getProps().id);
@@ -112,24 +165,35 @@ export function createListBox<T>(
112
165
  // Development-time warning for missing accessibility labels
113
166
  if (isDevEnv()) {
114
167
  const p = getProps();
115
- if (!p.label && !p['aria-label'] && !p['aria-labelledby']) {
168
+ if (!p.label && !p["aria-label"] && !p["aria-labelledby"]) {
116
169
  console.warn(
117
- '[solidaria] A ListBox requires an aria-label or aria-labelledby attribute for accessibility.'
170
+ "[solidaria] A ListBox requires an aria-label or aria-labelledby attribute for accessibility.",
118
171
  );
119
172
  }
120
173
  }
121
174
 
122
175
  // Filter DOM props
123
- const domProps = () => filterDOMProps(getProps() as unknown as Record<string, unknown>, { labelable: true });
176
+ const domProps = () =>
177
+ filterDOMProps(getProps() as unknown as Record<string, unknown>, { labelable: true });
124
178
 
125
179
  const updateSharedData = () => {
126
180
  const p = getProps();
181
+ const selectionBehavior = state.selectionBehavior();
182
+ let linkBehavior = p.linkBehavior ?? (selectionBehavior === "replace" ? "action" : "override");
183
+ if (selectionBehavior === "toggle" && linkBehavior === "action") {
184
+ linkBehavior = "override";
185
+ }
186
+
127
187
  listBoxData.set(state, {
128
188
  id,
129
189
  onAction: p.onAction,
130
190
  shouldSelectOnPressUp: p.shouldSelectOnPressUp,
131
191
  shouldFocusOnHover: p.shouldFocusOnHover,
192
+ isVirtualized: p.isVirtualized,
193
+ shouldUseVirtualFocus: p.shouldUseVirtualFocus,
132
194
  isDisabled: p.isDisabled,
195
+ linkBehavior,
196
+ UNSTABLE_itemBehavior: p.UNSTABLE_itemBehavior,
133
197
  });
134
198
  };
135
199
 
@@ -151,7 +215,10 @@ export function createListBox<T>(
151
215
  onBlurWithin: (e) => getProps().onBlur?.(e),
152
216
  onFocusWithinChange: (isFocused) => {
153
217
  getProps().onFocusChange?.(isFocused);
154
- state.setFocused(isFocused);
218
+ // Collection focus lives on the selection manager (upstream tracks it in
219
+ // useSelectableCollection); the ListState-level setFocused may be a
220
+ // widget-level focus state (e.g. Select's trigger focus).
221
+ state.selectionManager.setFocused(isFocused);
155
222
  },
156
223
  });
157
224
 
@@ -163,13 +230,13 @@ export function createListBox<T>(
163
230
  get label() {
164
231
  return getProps().label;
165
232
  },
166
- get 'aria-label'() {
167
- return getProps()['aria-label'];
233
+ get "aria-label"() {
234
+ return getProps()["aria-label"];
168
235
  },
169
- get 'aria-labelledby'() {
170
- return getProps()['aria-labelledby'];
236
+ get "aria-labelledby"() {
237
+ return getProps()["aria-labelledby"];
171
238
  },
172
- labelElementType: 'span',
239
+ labelElementType: "span",
173
240
  });
174
241
 
175
242
  // Type-to-select
@@ -190,84 +257,145 @@ export function createListBox<T>(
190
257
 
191
258
  const collection = state.collection();
192
259
  const shouldWrap = p.shouldFocusWrap ?? false;
260
+ const shouldSelectOnFocus = p.shouldSelectOnFocus ?? true;
193
261
 
194
262
  switch (e.key) {
195
- case 'ArrowDown': {
196
- e.preventDefault();
197
- const nextKey = findNextEnabledKey(state, state.focusedKey(), 'next', shouldWrap);
263
+ case "ArrowDown": {
264
+ // Only consume the key once a target exists. Mirrors
265
+ // useSelectableCollection (ArrowDown, 211-225): preventDefault is called
266
+ // inside `if (nextKey != null)`, so at the last item without wrap the
267
+ // arrow is left alone to bubble (e.g. to scroll an enclosing region).
268
+ const nextKey = findNextEnabledKey(state, state.focusedKey(), "next", shouldWrap);
198
269
  if (nextKey != null) {
270
+ e.preventDefault();
199
271
  state.setFocusedKey(nextKey);
200
- if (!e.shiftKey && state.selectionMode() === 'single') {
272
+ if (shouldSelectOnFocus && !e.shiftKey && state.selectionMode() === "single") {
201
273
  state.replaceSelection(nextKey);
202
- } else if (e.shiftKey && state.selectionMode() === 'multiple') {
274
+ } else if (e.shiftKey && state.selectionMode() === "multiple") {
203
275
  state.extendSelection(nextKey, collection);
204
276
  }
205
277
  }
206
278
  break;
207
279
  }
208
- case 'ArrowUp': {
209
- e.preventDefault();
210
- const prevKey = findNextEnabledKey(state, state.focusedKey(), 'prev', shouldWrap);
280
+ case "ArrowUp": {
281
+ const prevKey = findNextEnabledKey(state, state.focusedKey(), "prev", shouldWrap);
211
282
  if (prevKey != null) {
283
+ e.preventDefault();
212
284
  state.setFocusedKey(prevKey);
213
- if (!e.shiftKey && state.selectionMode() === 'single') {
285
+ if (shouldSelectOnFocus && !e.shiftKey && state.selectionMode() === "single") {
214
286
  state.replaceSelection(prevKey);
215
- } else if (e.shiftKey && state.selectionMode() === 'multiple') {
287
+ } else if (e.shiftKey && state.selectionMode() === "multiple") {
216
288
  state.extendSelection(prevKey, collection);
217
289
  }
218
290
  }
219
291
  break;
220
292
  }
221
- case 'Home': {
293
+ case "ArrowRight":
294
+ case "ArrowLeft": {
295
+ // Horizontal orientation promotes the inline axis to the primary
296
+ // navigation axis. Upstream's ListKeyboardDelegate strips
297
+ // getKeyLeftOf/getKeyRightOf for a vertical stack, so Left/Right stay
298
+ // no-ops there; in a horizontal stack they move prev/next, flipped
299
+ // under RTL (Right=next, Left=prev in LTR).
300
+ if (p.orientation !== "horizontal") break;
301
+ const isRtl = p.direction === "rtl";
302
+ const forward = e.key === "ArrowRight" ? !isRtl : isRtl;
303
+ const focusedKey = state.focusedKey();
304
+ // With nothing focused, both directions enter at the first item,
305
+ // mirroring upstream's getFirstKey() fallback for Left and Right.
306
+ const nextKey =
307
+ focusedKey != null
308
+ ? findNextEnabledKey(state, focusedKey, forward ? "next" : "prev", shouldWrap)
309
+ : findNextEnabledKey(state, null, "next", false);
310
+ // As with the block axis, only swallow the key when it moves focus
311
+ // (useSelectableCollection ArrowLeft/Right, 243-280).
312
+ if (nextKey != null) {
313
+ e.preventDefault();
314
+ state.setFocusedKey(nextKey);
315
+ if (shouldSelectOnFocus && !e.shiftKey && state.selectionMode() === "single") {
316
+ state.replaceSelection(nextKey);
317
+ } else if (e.shiftKey && state.selectionMode() === "multiple") {
318
+ state.extendSelection(nextKey, collection);
319
+ }
320
+ }
321
+ break;
322
+ }
323
+ case "Home": {
324
+ // Mirror useSelectableCollection (Home, 283-285): with nothing focused,
325
+ // Shift+Home has no anchor to extend a selection from, so leave the
326
+ // event alone (no focus move, no preventDefault).
327
+ if (state.focusedKey() == null && e.shiftKey) break;
222
328
  e.preventDefault();
223
- const firstKey = findNextEnabledKey(state, null, 'next', false);
329
+ const firstKey = findNextEnabledKey(state, null, "next", false);
224
330
  if (firstKey != null) {
225
331
  state.setFocusedKey(firstKey);
226
- if (e.ctrlKey && e.shiftKey && state.selectionMode() === 'multiple') {
332
+ if (e.ctrlKey && e.shiftKey && state.selectionMode() === "multiple") {
227
333
  // Select from current to first
228
334
  state.extendSelection(firstKey, collection);
229
- } else if (!e.shiftKey && state.selectionMode() === 'single') {
335
+ } else if (shouldSelectOnFocus && !e.shiftKey && state.selectionMode() === "single") {
230
336
  state.replaceSelection(firstKey);
231
337
  }
232
338
  }
233
339
  break;
234
340
  }
235
- case 'End': {
341
+ case "End": {
342
+ // Mirror useSelectableCollection (End, 300-302): same anchor guard as Home.
343
+ if (state.focusedKey() == null && e.shiftKey) break;
236
344
  e.preventDefault();
237
- const lastKey = findNextEnabledKey(state, null, 'prev', false);
345
+ const lastKey = findNextEnabledKey(state, null, "prev", false);
238
346
  if (lastKey != null) {
239
347
  state.setFocusedKey(lastKey);
240
- if (e.ctrlKey && e.shiftKey && state.selectionMode() === 'multiple') {
348
+ if (e.ctrlKey && e.shiftKey && state.selectionMode() === "multiple") {
241
349
  // Select from current to last
242
350
  state.extendSelection(lastKey, collection);
243
- } else if (!e.shiftKey && state.selectionMode() === 'single') {
351
+ } else if (shouldSelectOnFocus && !e.shiftKey && state.selectionMode() === "single") {
244
352
  state.replaceSelection(lastKey);
245
353
  }
246
354
  }
247
355
  break;
248
356
  }
249
- case ' ':
250
- case 'Enter': {
357
+ case " ":
358
+ case "Enter": {
359
+ if (e.target !== e.currentTarget) {
360
+ break;
361
+ }
362
+
251
363
  e.preventDefault();
252
364
  const focusedKey = state.focusedKey();
253
- if (focusedKey != null && !state.isDisabled(focusedKey)) {
254
- if (state.selectionMode() !== 'none') {
365
+ // Activation is gated on the navigation-disabled check, not the raw
366
+ // one: under disabledBehavior "selection" a focusable disabled option
367
+ // still fires onAction, mirroring useSelectableItem's allowsActions
368
+ // (manager.isDisabled is gated on "all"). Selection stays blocked —
369
+ // toggleSelection self-guards on the raw disabled check.
370
+ if (focusedKey != null && !isNavigationDisabled(state, focusedKey)) {
371
+ if (state.selectionMode() !== "none") {
255
372
  state.toggleSelection(focusedKey);
256
373
  }
257
374
  p.onAction?.(focusedKey);
258
375
  }
259
376
  break;
260
377
  }
261
- case 'a': {
262
- if ((e.ctrlKey || e.metaKey) && state.selectionMode() === 'multiple') {
378
+ case "a": {
379
+ if ((e.ctrlKey || e.metaKey) && state.selectionMode() === "multiple") {
263
380
  e.preventDefault();
264
381
  state.selectAll();
265
382
  }
266
383
  break;
267
384
  }
268
- case 'Escape': {
269
- e.preventDefault();
270
- if (!state.disallowEmptySelection()) {
385
+ case "Escape": {
386
+ // Mirror useSelectableCollection (Escape, 352-362): only clear the
387
+ // selection — and swallow the event — when escapeKeyBehavior is
388
+ // 'clearSelection', there is actually a selection to clear, and empty
389
+ // selection is allowed. With escapeKeyBehavior 'none', or otherwise,
390
+ // leave Escape alone so an enclosing overlay (popover, dialog, combobox)
391
+ // can handle it.
392
+ if (
393
+ (p.escapeKeyBehavior ?? "clearSelection") === "clearSelection" &&
394
+ !state.disallowEmptySelection() &&
395
+ !state.isEmpty()
396
+ ) {
397
+ e.stopPropagation();
398
+ e.preventDefault();
271
399
  state.clearSelection();
272
400
  }
273
401
  break;
@@ -288,18 +416,22 @@ export function createListBox<T>(
288
416
  focusWithinProps as Record<string, unknown>,
289
417
  fieldProps as Record<string, unknown>,
290
418
  {
291
- role: 'listbox',
419
+ role: "listbox",
292
420
  tabIndex: p.isDisabled ? undefined : 0,
293
- 'aria-disabled': p.isDisabled || undefined,
294
- 'aria-multiselectable': selectionMode === 'multiple' ? true : undefined,
295
- 'aria-activedescendant': state.focusedKey() != null ? String(state.focusedKey()) : undefined,
421
+ "aria-disabled": p.isDisabled || undefined,
422
+ "aria-multiselectable": selectionMode === "multiple" ? true : undefined,
423
+ "aria-activedescendant":
424
+ state.focusedKey() != null ? String(state.focusedKey()) : undefined,
296
425
  onKeyDown,
297
- }
426
+ },
298
427
  );
299
428
 
300
429
  // Add type-select props if enabled
301
430
  if (!p.disallowTypeAhead) {
302
- return mergeProps(baseProps, typeSelectProps as Record<string, unknown>) as JSX.HTMLAttributes<HTMLElement>;
431
+ return mergeProps(
432
+ baseProps,
433
+ typeSelectProps as Record<string, unknown>,
434
+ ) as JSX.HTMLAttributes<HTMLElement>;
303
435
  }
304
436
 
305
437
  return baseProps as JSX.HTMLAttributes<HTMLElement>;