@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
@@ -0,0 +1,1051 @@
1
+ import { o as mergeProps } from "./env.js";
2
+ import { S as scrollIntoViewport } from "./utils.js";
3
+ import { o as getInteractionModality } from "./createInteractionModality.js";
4
+ import { a as useLocale } from "./createCollator.js";
5
+ import { n as createSelectableItem } from "./createSelectableItem.js";
6
+ import { t as announce } from "./live-announcer.js";
7
+ import { createEffect, createMemo, createSignal, on } from "solid-js";
8
+ import { createId } from "@proyecto-viviana/solid-stately";
9
+ //#region src/table/createTable.ts
10
+ /**
11
+ * createTable - Provides accessibility for a table component.
12
+ * Based on @react-aria/table/useTable.
13
+ */
14
+ const tableMap = /* @__PURE__ */ new WeakMap();
15
+ /**
16
+ * Get the table metadata for child components.
17
+ */
18
+ function getTableData(state) {
19
+ return tableMap.get(state);
20
+ }
21
+ /**
22
+ * Helper to get cells from a row by iterating children
23
+ */
24
+ function getChildCells(collection, rowKey) {
25
+ return [...collection.getChildren(rowKey)].filter((node) => node.type === "cell" || node.type === "rowheader");
26
+ }
27
+ /**
28
+ * Helper to get cell at specific index in a row
29
+ */
30
+ function getCellAtIndex(collection, rowKey, index) {
31
+ return getChildCells(collection, rowKey)[index] ?? null;
32
+ }
33
+ /**
34
+ * Helper to check if a node is a cell
35
+ */
36
+ function isCell(node) {
37
+ return node?.type === "cell" || node?.type === "rowheader";
38
+ }
39
+ /**
40
+ * Helper to check if a node is a row
41
+ */
42
+ function isRow(node) {
43
+ return node?.type === "item";
44
+ }
45
+ /**
46
+ * Creates accessibility props for a table component.
47
+ */
48
+ function createTable(props, state, ref) {
49
+ const id = createId(props().id);
50
+ const locale = useLocale();
51
+ let prevSortDescriptor = null;
52
+ let isFirstRender = true;
53
+ let typeaheadBuffer = "";
54
+ let typeaheadTimeout;
55
+ const storeTableData = () => {
56
+ const s = state();
57
+ const p = props();
58
+ tableMap.set(s, {
59
+ tableId: id,
60
+ actions: {
61
+ onRowAction: p.onRowAction,
62
+ onCellAction: p.onCellAction
63
+ },
64
+ shouldSelectOnPressUp: p.shouldSelectOnPressUp,
65
+ focusMode: p.focusMode
66
+ });
67
+ };
68
+ createMemo(() => {
69
+ storeTableData();
70
+ });
71
+ createEffect(on(() => state().sortDescriptor, (sortDescriptor) => {
72
+ if (isFirstRender) {
73
+ isFirstRender = false;
74
+ prevSortDescriptor = sortDescriptor;
75
+ return;
76
+ }
77
+ if (sortDescriptor && (sortDescriptor.column !== prevSortDescriptor?.column || sortDescriptor.direction !== prevSortDescriptor?.direction)) announce(`Sorted by ${state().collection.columns.find((c) => c.key === sortDescriptor.column)?.textValue ?? String(sortDescriptor.column)}, ${sortDescriptor.direction === "ascending" ? "ascending" : "descending"}`, "assertive", 500);
78
+ prevSortDescriptor = sortDescriptor;
79
+ }));
80
+ const onKeyDown = (e) => {
81
+ const s = state();
82
+ const collection = s.collection;
83
+ const p = props();
84
+ const focusMode = p.focusMode ?? "row";
85
+ const isRTL = locale().direction === "rtl";
86
+ const setFocusedKey = (key) => {
87
+ s.setFocusedKey(key);
88
+ };
89
+ const runTypeahead = (focusedKey, focusedItem) => {
90
+ if (e.key.length !== 1 || e.ctrlKey || e.metaKey || e.altKey) return false;
91
+ if (e.key === " " && typeaheadBuffer.length === 0) return false;
92
+ typeaheadBuffer += e.key.toLocaleLowerCase();
93
+ if (typeaheadTimeout) clearTimeout(typeaheadTimeout);
94
+ typeaheadTimeout = setTimeout(() => {
95
+ typeaheadBuffer = "";
96
+ typeaheadTimeout = void 0;
97
+ }, 500);
98
+ const rows = Array.from(collection).filter((node) => !s.isDisabled(node.key));
99
+ if (rows.length === 0) return true;
100
+ const currentRowKey = isCell(focusedItem) && focusedItem.parentKey != null ? focusedItem.parentKey : focusedKey;
101
+ const currentIndex = rows.findIndex((node) => node.key === currentRowKey);
102
+ const match = (currentIndex >= 0 ? [...rows.slice(currentIndex + 1), ...rows.slice(0, currentIndex + 1)] : rows).find((node) => collection.getTextValue(node.key).toLocaleLowerCase().startsWith(typeaheadBuffer));
103
+ if (match) {
104
+ e.preventDefault();
105
+ setFocusedKey(match.key);
106
+ }
107
+ return true;
108
+ };
109
+ if (s.isKeyboardNavigationDisabled) return;
110
+ const focusedKey = s.focusedKey;
111
+ if (focusedKey == null) {
112
+ if (e.key === "ArrowDown" || e.key === "ArrowUp" || e.key === "Home" || e.key === "End") {
113
+ const firstKey = collection.getFirstKey();
114
+ if (firstKey != null) {
115
+ e.preventDefault();
116
+ setFocusedKey(firstKey);
117
+ }
118
+ }
119
+ return;
120
+ }
121
+ const focusedItem = collection.getItem(focusedKey);
122
+ if (!focusedItem) return;
123
+ let nextKey = null;
124
+ switch (e.key) {
125
+ case "ArrowDown":
126
+ e.preventDefault();
127
+ if (isCell(focusedItem) && focusedItem.parentKey != null) {
128
+ const nextRowKey = collection.getKeyAfter(focusedItem.parentKey);
129
+ if (nextRowKey != null) {
130
+ const cellIndex = focusedItem.index;
131
+ nextKey = getCellAtIndex(collection, nextRowKey, cellIndex)?.key ?? nextRowKey;
132
+ }
133
+ } else nextKey = collection.getKeyAfter(focusedKey);
134
+ break;
135
+ case "ArrowUp":
136
+ e.preventDefault();
137
+ if (isCell(focusedItem) && focusedItem.parentKey != null) {
138
+ const prevRowKey = collection.getKeyBefore(focusedItem.parentKey);
139
+ if (prevRowKey != null) {
140
+ const cellIndex = focusedItem.index;
141
+ nextKey = getCellAtIndex(collection, prevRowKey, cellIndex)?.key ?? prevRowKey;
142
+ }
143
+ } else nextKey = collection.getKeyBefore(focusedKey);
144
+ break;
145
+ case "ArrowRight": {
146
+ e.preventDefault();
147
+ const goNext = !isRTL;
148
+ if (isRow(focusedItem)) {
149
+ const cells = getChildCells(collection, focusedKey);
150
+ if (cells.length > 0) nextKey = goNext ? cells[0].key : cells[cells.length - 1].key;
151
+ } else if (isCell(focusedItem) && focusedItem.parentKey != null) {
152
+ const cells = getChildCells(collection, focusedItem.parentKey);
153
+ const currentIndex = focusedItem.index;
154
+ const targetIndex = goNext ? currentIndex + 1 : currentIndex - 1;
155
+ if (targetIndex >= 0 && targetIndex < cells.length) nextKey = cells[targetIndex].key;
156
+ else if (focusMode === "row") nextKey = focusedItem.parentKey;
157
+ else nextKey = goNext ? cells[0].key : cells[cells.length - 1].key;
158
+ }
159
+ break;
160
+ }
161
+ case "ArrowLeft": {
162
+ e.preventDefault();
163
+ const goNext = isRTL;
164
+ if (isRow(focusedItem)) {
165
+ const cells = getChildCells(collection, focusedKey);
166
+ if (cells.length > 0) nextKey = goNext ? cells[0].key : cells[cells.length - 1].key;
167
+ } else if (isCell(focusedItem) && focusedItem.parentKey != null) {
168
+ const cells = getChildCells(collection, focusedItem.parentKey);
169
+ const currentIndex = focusedItem.index;
170
+ const targetIndex = goNext ? currentIndex + 1 : currentIndex - 1;
171
+ if (targetIndex >= 0 && targetIndex < cells.length) nextKey = cells[targetIndex].key;
172
+ else if (focusMode === "row") nextKey = focusedItem.parentKey;
173
+ else nextKey = goNext ? cells[0].key : cells[cells.length - 1].key;
174
+ }
175
+ break;
176
+ }
177
+ case "Home":
178
+ e.preventDefault();
179
+ if (e.ctrlKey) {
180
+ const firstRowKey = collection.getFirstKey();
181
+ if (firstRowKey != null) if (isCell(focusedItem) || focusMode === "cell") nextKey = getChildCells(collection, firstRowKey)[0]?.key ?? firstRowKey;
182
+ else nextKey = firstRowKey;
183
+ } else if (isCell(focusedItem) && focusedItem.parentKey != null) nextKey = getChildCells(collection, focusedItem.parentKey)[0]?.key ?? null;
184
+ else nextKey = collection.getFirstKey();
185
+ break;
186
+ case "End":
187
+ e.preventDefault();
188
+ if (e.ctrlKey) {
189
+ const lastRowKey = collection.getLastKey();
190
+ if (lastRowKey != null) if (isCell(focusedItem) || focusMode === "cell") {
191
+ const cells = getChildCells(collection, lastRowKey);
192
+ nextKey = cells[cells.length - 1]?.key ?? lastRowKey;
193
+ } else nextKey = lastRowKey;
194
+ } else if (isCell(focusedItem) && focusedItem.parentKey != null) {
195
+ const cells = getChildCells(collection, focusedItem.parentKey);
196
+ nextKey = cells[cells.length - 1]?.key ?? null;
197
+ } else nextKey = collection.getLastKey();
198
+ break;
199
+ case "PageDown": {
200
+ e.preventDefault();
201
+ const el = ref();
202
+ if (el && el.clientHeight > 0) {
203
+ const visibleHeight = el.clientHeight;
204
+ let currentKey = focusedKey;
205
+ let traveled = 0;
206
+ if (isCell(focusedItem) && focusedItem.parentKey != null) currentKey = focusedItem.parentKey;
207
+ while (currentKey != null && traveled < visibleHeight) {
208
+ const next = collection.getKeyAfter(currentKey);
209
+ if (next == null) break;
210
+ const rowElement = el.querySelector(`[data-key="${currentKey}"]`);
211
+ traveled += rowElement?.clientHeight ?? 40;
212
+ currentKey = next;
213
+ }
214
+ if (currentKey != null) if (isCell(focusedItem)) {
215
+ const cellIndex = focusedItem.index;
216
+ nextKey = getCellAtIndex(collection, currentKey, cellIndex)?.key ?? currentKey;
217
+ } else nextKey = currentKey;
218
+ } else {
219
+ let count = 10;
220
+ let current = isCell(focusedItem) && focusedItem.parentKey != null ? focusedItem.parentKey : focusedKey;
221
+ while (count > 0 && current != null) {
222
+ const next = collection.getKeyAfter(current);
223
+ if (next == null) break;
224
+ current = next;
225
+ count--;
226
+ }
227
+ if (current != null && isCell(focusedItem)) nextKey = getCellAtIndex(collection, current, focusedItem.index)?.key ?? current;
228
+ else nextKey = current;
229
+ }
230
+ break;
231
+ }
232
+ case "PageUp": {
233
+ e.preventDefault();
234
+ const el = ref();
235
+ if (el && el.clientHeight > 0) {
236
+ const visibleHeight = el.clientHeight;
237
+ let currentKey = focusedKey;
238
+ let traveled = 0;
239
+ if (isCell(focusedItem) && focusedItem.parentKey != null) currentKey = focusedItem.parentKey;
240
+ while (currentKey != null && traveled < visibleHeight) {
241
+ const prev = collection.getKeyBefore(currentKey);
242
+ if (prev == null) break;
243
+ const rowElement = el.querySelector(`[data-key="${currentKey}"]`);
244
+ traveled += rowElement?.clientHeight ?? 40;
245
+ currentKey = prev;
246
+ }
247
+ if (currentKey != null) if (isCell(focusedItem)) {
248
+ const cellIndex = focusedItem.index;
249
+ nextKey = getCellAtIndex(collection, currentKey, cellIndex)?.key ?? currentKey;
250
+ } else nextKey = currentKey;
251
+ } else {
252
+ let count = 10;
253
+ let current = isCell(focusedItem) && focusedItem.parentKey != null ? focusedItem.parentKey : focusedKey;
254
+ while (count > 0 && current != null) {
255
+ const prev = collection.getKeyBefore(current);
256
+ if (prev == null) break;
257
+ current = prev;
258
+ count--;
259
+ }
260
+ if (current != null && isCell(focusedItem)) nextKey = getCellAtIndex(collection, current, focusedItem.index)?.key ?? current;
261
+ else nextKey = current;
262
+ }
263
+ break;
264
+ }
265
+ case "Escape":
266
+ if (p.escapeKeyBehavior !== "none") s.clearSelection();
267
+ return;
268
+ case "a":
269
+ if (e.ctrlKey || e.metaKey) {
270
+ e.preventDefault();
271
+ if (s.selectionMode === "multiple") s.selectAll();
272
+ }
273
+ return;
274
+ default:
275
+ if (runTypeahead(focusedKey, focusedItem)) return;
276
+ return;
277
+ }
278
+ if (nextKey != null) {
279
+ setFocusedKey(nextKey);
280
+ if (e.shiftKey && s.selectionMode === "multiple") {
281
+ const focusedNode = collection.getItem(nextKey);
282
+ const keyToSelect = focusedNode && isCell(focusedNode) && focusedNode.parentKey != null ? focusedNode.parentKey : nextKey;
283
+ s.extendSelection(keyToSelect);
284
+ }
285
+ }
286
+ };
287
+ const onFocus = (e) => {
288
+ const s = state();
289
+ if (!ref()?.contains(e.target)) return;
290
+ if (!s.isFocused) {
291
+ s.setFocused(true);
292
+ if (s.focusedKey == null) {
293
+ const firstKey = s.collection.getFirstKey();
294
+ if (firstKey != null) s.setFocusedKey(firstKey);
295
+ }
296
+ }
297
+ };
298
+ const onBlur = (e) => {
299
+ const s = state();
300
+ const el = ref();
301
+ if (el && !el.contains(e.relatedTarget)) s.setFocused(false);
302
+ };
303
+ createEffect(() => {
304
+ const key = state().focusedKey;
305
+ const el = ref();
306
+ if (!el || key == null) return;
307
+ const active = document.activeElement;
308
+ if (!active || active !== el && !el.contains(active)) return;
309
+ const target = el.querySelector(`[data-key="${key}"]`);
310
+ if (target && target !== active) {
311
+ target.focus();
312
+ if (getInteractionModality() !== "pointer") scrollIntoViewport(target, { containingElement: el });
313
+ }
314
+ });
315
+ createMemo(() => {
316
+ const p = props();
317
+ if (!p["aria-label"] && !p["aria-labelledby"]) console.warn("Table: An aria-label or aria-labelledby prop is required for accessibility.");
318
+ });
319
+ const gridProps = createMemo(() => {
320
+ const p = props();
321
+ const s = state();
322
+ const baseProps = {
323
+ role: "grid",
324
+ id,
325
+ "aria-label": p["aria-label"],
326
+ "aria-labelledby": p["aria-labelledby"],
327
+ "aria-describedby": p["aria-describedby"],
328
+ "aria-multiselectable": s.selectionMode === "multiple" ? "true" : void 0,
329
+ tabIndex: 0,
330
+ onKeyDown,
331
+ onFocus,
332
+ onBlur
333
+ };
334
+ if (p.isVirtualized) {
335
+ baseProps["aria-rowcount"] = s.collection.rowCount;
336
+ baseProps["aria-colcount"] = s.collection.columnCount;
337
+ }
338
+ return baseProps;
339
+ });
340
+ return { get gridProps() {
341
+ return gridProps();
342
+ } };
343
+ }
344
+ //#endregion
345
+ //#region src/table/createTableHeaderRow.ts
346
+ /**
347
+ * createTableHeaderRow - Provides accessibility for a table header row.
348
+ * Based on @react-aria/table/useTableHeaderRow.
349
+ */
350
+ /**
351
+ * Creates accessibility props for a table header row.
352
+ */
353
+ function createTableHeaderRow(props, _state, _ref) {
354
+ const rowProps = createMemo(() => {
355
+ const p = props();
356
+ const node = p.node;
357
+ const baseProps = { role: "row" };
358
+ if (p.isVirtualized && node.rowIndex != null) baseProps["aria-rowindex"] = node.rowIndex + 1;
359
+ return baseProps;
360
+ });
361
+ return { get rowProps() {
362
+ return rowProps();
363
+ } };
364
+ }
365
+ //#endregion
366
+ //#region src/table/createTableColumnHeader.ts
367
+ /**
368
+ * createTableColumnHeader - Provides accessibility for a table column header.
369
+ * Based on @react-aria/table/useTableColumnHeader.
370
+ */
371
+ /**
372
+ * Creates accessibility props for a table column header.
373
+ */
374
+ function createTableColumnHeader(props, state, _ref) {
375
+ const [isPressed, setIsPressed] = createSignal(false);
376
+ let ignoreNextClick = false;
377
+ let ignoreNextClickTimeout;
378
+ const isFocused = createMemo(() => {
379
+ const s = state();
380
+ const p = props();
381
+ return s.focusedKey === p.node.key;
382
+ });
383
+ const sortColumn = () => {
384
+ const s = state();
385
+ const p = props();
386
+ if (p.allowsSorting) s.sort(p.node.key);
387
+ };
388
+ const clearPendingClickIgnore = () => {
389
+ if (ignoreNextClickTimeout != null) {
390
+ clearTimeout(ignoreNextClickTimeout);
391
+ ignoreNextClickTimeout = void 0;
392
+ }
393
+ };
394
+ const ignorePointerGeneratedClick = () => {
395
+ clearPendingClickIgnore();
396
+ ignoreNextClick = true;
397
+ ignoreNextClickTimeout = setTimeout(() => {
398
+ ignoreNextClick = false;
399
+ ignoreNextClickTimeout = void 0;
400
+ }, 0);
401
+ };
402
+ const onClick = () => {
403
+ if (ignoreNextClick) {
404
+ ignoreNextClick = false;
405
+ clearPendingClickIgnore();
406
+ return;
407
+ }
408
+ sortColumn();
409
+ };
410
+ const onKeyDown = (e) => {
411
+ if (props().allowsSorting && (e.key === "Enter" || e.key === " " || e.key === "Space" || e.key === "Spacebar")) {
412
+ e.preventDefault();
413
+ sortColumn();
414
+ }
415
+ };
416
+ const onFocus = () => {
417
+ const s = state();
418
+ const p = props();
419
+ s.setFocusedKey(p.node.key);
420
+ };
421
+ const onPointerDown = (e) => {
422
+ if (e.button !== 0) return;
423
+ setIsPressed(true);
424
+ };
425
+ const onPointerUp = () => {
426
+ if (isPressed()) {
427
+ ignorePointerGeneratedClick();
428
+ sortColumn();
429
+ }
430
+ setIsPressed(false);
431
+ };
432
+ const onPointerCancel = () => {
433
+ setIsPressed(false);
434
+ };
435
+ const columnHeaderProps = createMemo(() => {
436
+ const s = state();
437
+ const p = props();
438
+ const node = p.node;
439
+ const tableData = getTableData(s);
440
+ let ariaSort = void 0;
441
+ if (p.allowsSorting) {
442
+ const sortDescriptor = s.sortDescriptor;
443
+ if (sortDescriptor?.column === node.key) ariaSort = sortDescriptor.direction;
444
+ else ariaSort = "none";
445
+ }
446
+ const baseProps = {
447
+ role: "columnheader",
448
+ id: tableData ? `${tableData.tableId}-${node.key}` : void 0,
449
+ "aria-sort": ariaSort,
450
+ tabIndex: isFocused() ? 0 : -1,
451
+ onFocus
452
+ };
453
+ if (p.allowsSorting) {
454
+ baseProps.onClick = onClick;
455
+ baseProps.onKeyDown = onKeyDown;
456
+ baseProps.onPointerDown = onPointerDown;
457
+ baseProps.onPointerUp = onPointerUp;
458
+ baseProps.onPointerCancel = onPointerCancel;
459
+ baseProps.onPointerLeave = onPointerCancel;
460
+ baseProps.style = { cursor: "pointer" };
461
+ }
462
+ if (p.isVirtualized && node.column != null) baseProps["aria-colindex"] = node.column + 1;
463
+ if (node.colspan != null && node.colspan > 1) {
464
+ baseProps["aria-colspan"] = node.colspan;
465
+ baseProps.colSpan = node.colspan;
466
+ }
467
+ return baseProps;
468
+ });
469
+ return { get columnHeaderProps() {
470
+ return columnHeaderProps();
471
+ } };
472
+ }
473
+ //#endregion
474
+ //#region src/table/createTableRow.ts
475
+ /**
476
+ * createTableRow - Provides accessibility for a table row.
477
+ * Based on @react-aria/table/useTableRow.
478
+ */
479
+ /**
480
+ * Arrow keys that expand/collapse a tree-grid row, mirroring `@react-aria/table`.
481
+ * Direction is flipped under RTL.
482
+ */
483
+ const EXPANSION_KEYS = {
484
+ expand: {
485
+ ltr: "ArrowRight",
486
+ rtl: "ArrowLeft"
487
+ },
488
+ collapse: {
489
+ ltr: "ArrowLeft",
490
+ rtl: "ArrowRight"
491
+ }
492
+ };
493
+ /**
494
+ * Creates accessibility props for a table row.
495
+ */
496
+ function createTableRow(props, state, ref) {
497
+ const locale = useLocale();
498
+ createMemo(() => state().treeColumn != null);
499
+ const hasChildRows = createMemo(() => props().node.isExpandable ?? false);
500
+ const isExpanded = createMemo(() => {
501
+ const s = state();
502
+ if (s.treeColumn == null) return false;
503
+ return s.expandedKeys === "all" || s.expandedKeys.has(props().node.key);
504
+ });
505
+ const siblingInfo = createMemo(() => {
506
+ const s = state();
507
+ const node = props().node;
508
+ if (node.parentKey != null) {
509
+ const parent = s.collection.getItem(node.parentKey);
510
+ if (parent) {
511
+ const siblings = parent.childNodes.filter((n) => n.type === "item");
512
+ return {
513
+ posinset: node.index + 1,
514
+ setsize: siblings.length
515
+ };
516
+ }
517
+ }
518
+ const rootRows = s.collection.body.childNodes.filter((n) => n.type === "item");
519
+ const rootIndex = rootRows.findIndex((n) => n.key === node.key);
520
+ return {
521
+ posinset: rootIndex >= 0 ? rootIndex + 1 : node.index + 1,
522
+ setsize: rootRows.length
523
+ };
524
+ });
525
+ const isSelected = createMemo(() => {
526
+ const s = state();
527
+ const p = props();
528
+ return s.isSelected(p.node.key);
529
+ });
530
+ const selectableItem = createSelectableItem(() => {
531
+ const s = state();
532
+ const p = props();
533
+ const tableData = getTableData(s);
534
+ const onRowAction = tableData?.actions.onRowAction;
535
+ const hasAction = !!p.onAction || !!onRowAction || !!p.href;
536
+ return {
537
+ key: p.node.key,
538
+ id: `${tableData?.tableId ?? "table"}-row-${String(p.node.key)}`,
539
+ isVirtualized: p.isVirtualized,
540
+ shouldSelectOnPressUp: tableData?.shouldSelectOnPressUp ?? false,
541
+ isDisabled: !!p.isDisabled || s.collection.size === 0,
542
+ onAction: hasAction ? (event) => {
543
+ p.onAction?.();
544
+ onRowAction?.(p.node.key);
545
+ if (p.href) p.onLinkAction?.(event);
546
+ } : void 0
547
+ };
548
+ }, {
549
+ collection: () => state().collection,
550
+ isFocused: () => state().isFocused,
551
+ setFocused: (focused) => state().setFocused(focused),
552
+ focusedKey: () => state().focusedKey,
553
+ childFocusStrategy: () => state().childFocusStrategy,
554
+ setFocusedKey: (key, strategy) => state().setFocusedKey(key, strategy),
555
+ selectionMode: () => state().selectionMode,
556
+ selectionBehavior: () => state().selectionBehavior,
557
+ disallowEmptySelection: () => state().disallowEmptySelection,
558
+ selectedKeys: () => state().selectedKeys,
559
+ disabledKeys: () => state().disabledKeys,
560
+ disabledBehavior: () => state().disabledBehavior,
561
+ isEmpty: () => {
562
+ const keys = state().selectedKeys;
563
+ return keys !== "all" && keys.size === 0;
564
+ },
565
+ isSelectAll: () => state().selectedKeys === "all",
566
+ isSelected: (key) => state().isSelected(key),
567
+ isDisabled: (key) => {
568
+ const s = state();
569
+ const item = s.collection.getItem(key);
570
+ return s.disabledBehavior === "all" && s.isDisabled(key) && item?.props?.disabledBehavior !== "selection";
571
+ },
572
+ canSelectItem: (key) => {
573
+ const s = state();
574
+ return s.selectionMode !== "none" && !s.isDisabled(key);
575
+ },
576
+ setSelectionBehavior: (behavior) => state().setSelectionBehavior(behavior),
577
+ toggleSelection: (key) => state().toggleSelection(key),
578
+ replaceSelection: (key) => state().replaceSelection(key),
579
+ setSelectedKeys: (keys) => state().setSelectedKeys(keys),
580
+ selectAll: () => state().selectAll(),
581
+ clearSelection: () => state().clearSelection(),
582
+ toggleSelectAll: () => state().toggleSelectAll(),
583
+ extendSelection: (toKey, _collection) => state().extendSelection(toKey)
584
+ }, ref);
585
+ const isDisabled = () => selectableItem.isDisabled();
586
+ const onTreeGridKeyDown = (e) => {
587
+ const s = state();
588
+ const p = props();
589
+ if (isDisabled()) return;
590
+ if (s.treeColumn != null) {
591
+ const direction = locale().direction === "rtl" ? "rtl" : "ltr";
592
+ const key = p.node.key;
593
+ const expanded = s.expandedKeys;
594
+ if (e.key === EXPANSION_KEYS.expand[direction] && s.focusedKey === key && hasChildRows() && expanded !== "all" && !expanded.has(key)) {
595
+ s.toggleKey(key);
596
+ e.stopPropagation();
597
+ return;
598
+ } else if (e.key === EXPANSION_KEYS.collapse[direction] && s.focusedKey === key) if (expanded !== "all") {
599
+ if (hasChildRows() && expanded.has(key)) {
600
+ s.toggleKey(key);
601
+ e.stopPropagation();
602
+ return;
603
+ } else if (!expanded.has(key) && p.node.parentKey != null && p.node.level > 0) {
604
+ s.setFocusedKey(p.node.parentKey);
605
+ e.stopPropagation();
606
+ return;
607
+ }
608
+ } else {
609
+ s.toggleKey(key);
610
+ e.stopPropagation();
611
+ return;
612
+ }
613
+ }
614
+ };
615
+ const rowProps = createMemo(() => {
616
+ const s = state();
617
+ const p = props();
618
+ const node = p.node;
619
+ const baseProps = {
620
+ role: "row",
621
+ "aria-selected": s.selectionMode !== "none" ? isSelected() : void 0,
622
+ "aria-disabled": isDisabled() || void 0
623
+ };
624
+ if (s.treeColumn != null) {
625
+ const { posinset, setsize } = siblingInfo();
626
+ baseProps["aria-expanded"] = hasChildRows() ? isExpanded() : void 0;
627
+ baseProps["aria-level"] = node.level + 1;
628
+ baseProps["aria-posinset"] = posinset;
629
+ baseProps["aria-setsize"] = setsize;
630
+ baseProps.onKeyDown = onTreeGridKeyDown;
631
+ }
632
+ if (p.isVirtualized && s.treeColumn == null && node.rowIndex != null) baseProps["aria-rowindex"] = node.rowIndex + 1;
633
+ return mergeProps(selectableItem.itemProps, baseProps);
634
+ });
635
+ const onExpandPress = () => {
636
+ const s = state();
637
+ const p = props();
638
+ if (isDisabled()) return;
639
+ s.toggleKey(p.node.key);
640
+ s.setFocused(true);
641
+ s.setFocusedKey(p.node.key);
642
+ };
643
+ const expandButtonProps = createMemo(() => ({
644
+ isDisabled: isDisabled(),
645
+ onPress: onExpandPress,
646
+ excludeFromTabOrder: true,
647
+ preventFocusOnPress: true,
648
+ "data-react-aria-prevent-focus": true,
649
+ "aria-label": isExpanded() ? "Collapse" : "Expand"
650
+ }));
651
+ return {
652
+ get rowProps() {
653
+ return rowProps();
654
+ },
655
+ get expandButtonProps() {
656
+ return expandButtonProps();
657
+ },
658
+ get isSelected() {
659
+ return isSelected();
660
+ },
661
+ get isDisabled() {
662
+ return isDisabled();
663
+ },
664
+ get isPressed() {
665
+ return selectableItem.isPressed();
666
+ },
667
+ get isExpanded() {
668
+ return isExpanded();
669
+ },
670
+ get hasChildRows() {
671
+ return hasChildRows();
672
+ }
673
+ };
674
+ }
675
+ //#endregion
676
+ //#region src/table/createTableCell.ts
677
+ /**
678
+ * createTableCell - Provides accessibility for a table cell.
679
+ * Based on @react-aria/table/useTableCell.
680
+ */
681
+ /**
682
+ * Creates accessibility props for a table cell.
683
+ */
684
+ function createTableCell(props, state, _ref) {
685
+ const [isPressed, setIsPressed] = createSignal(false);
686
+ const isDisabled = createMemo(() => {
687
+ const s = state();
688
+ const node = props().node;
689
+ if (node.parentKey != null) return s.isDisabled(node.parentKey);
690
+ return false;
691
+ });
692
+ const isFocused = createMemo(() => {
693
+ const s = state();
694
+ const p = props();
695
+ return s.focusedKey === p.node.key;
696
+ });
697
+ const onClick = () => {
698
+ const s = state();
699
+ const p = props();
700
+ if (isDisabled()) return;
701
+ const onCellAction = getTableData(s)?.actions.onCellAction;
702
+ if (onCellAction) onCellAction(p.node.key);
703
+ if (p.onAction) p.onAction();
704
+ };
705
+ const onKeyDown = (e) => {
706
+ const s = state();
707
+ const p = props();
708
+ if (isDisabled()) return;
709
+ if (e.key === "Enter") {
710
+ const onCellAction = getTableData(s)?.actions.onCellAction;
711
+ if (onCellAction || p.onAction) {
712
+ e.preventDefault();
713
+ if (onCellAction) onCellAction(p.node.key);
714
+ if (p.onAction) p.onAction();
715
+ }
716
+ }
717
+ };
718
+ const onFocus = () => {
719
+ const s = state();
720
+ const p = props();
721
+ s.setFocusedKey(p.node.key);
722
+ };
723
+ const onPointerDown = () => {
724
+ setIsPressed(true);
725
+ };
726
+ const onPointerUp = () => {
727
+ setIsPressed(false);
728
+ };
729
+ const gridCellProps = createMemo(() => {
730
+ const s = state();
731
+ const p = props();
732
+ const node = p.node;
733
+ const tableData = getTableData(s);
734
+ let role = "gridcell";
735
+ if (node.type === "rowheader") role = "rowheader";
736
+ const baseProps = {
737
+ role,
738
+ id: tableData && node.parentKey != null ? `${tableData.tableId}-${node.parentKey}-${node.key}` : void 0,
739
+ "aria-disabled": isDisabled() || void 0,
740
+ tabIndex: isFocused() ? 0 : -1,
741
+ onClick,
742
+ onKeyDown,
743
+ onFocus,
744
+ onPointerDown,
745
+ onPointerUp
746
+ };
747
+ if (p.isVirtualized && node.column != null) baseProps["aria-colindex"] = node.column + 1;
748
+ if (node.colspan != null && node.colspan > 1) {
749
+ baseProps["aria-colspan"] = node.colspan;
750
+ baseProps.colSpan = node.colspan;
751
+ }
752
+ return baseProps;
753
+ });
754
+ return {
755
+ get gridCellProps() {
756
+ return gridCellProps();
757
+ },
758
+ get isPressed() {
759
+ return isPressed();
760
+ }
761
+ };
762
+ }
763
+ //#endregion
764
+ //#region src/table/createTableRowGroup.ts
765
+ /**
766
+ * createTableRowGroup - Provides accessibility for a table row group.
767
+ * Based on @react-aria/grid/useTableRowGroup.
768
+ */
769
+ /**
770
+ * Creates accessibility props for a table row group (thead, tbody, tfoot).
771
+ */
772
+ function createTableRowGroup(props) {
773
+ const rowGroupProps = createMemo(() => {
774
+ props();
775
+ return { role: "rowgroup" };
776
+ });
777
+ return { get rowGroupProps() {
778
+ return rowGroupProps();
779
+ } };
780
+ }
781
+ //#endregion
782
+ //#region src/table/createTableSelectionCheckbox.ts
783
+ /**
784
+ * createTableSelectionCheckbox - Provides accessibility for a table row selection checkbox.
785
+ * Based on @react-aria/table/useTableSelectionCheckbox.
786
+ */
787
+ /**
788
+ * Creates accessibility props for a table row selection checkbox.
789
+ */
790
+ function createTableSelectionCheckbox(props, state) {
791
+ const checkboxId = createId();
792
+ const isSelected = createMemo(() => {
793
+ const s = state();
794
+ const p = props();
795
+ return s.isSelected(p.key);
796
+ });
797
+ const isDisabled = createMemo(() => {
798
+ const s = state();
799
+ const p = props();
800
+ return s.isDisabled(p.key);
801
+ });
802
+ const onChange = () => {
803
+ const s = state();
804
+ const p = props();
805
+ if (!isDisabled()) s.toggleSelection(p.key);
806
+ };
807
+ const checkboxProps = createMemo(() => {
808
+ return {
809
+ id: checkboxId,
810
+ type: "checkbox",
811
+ checked: isSelected(),
812
+ disabled: isDisabled(),
813
+ onChange,
814
+ "aria-label": "Select"
815
+ };
816
+ });
817
+ return { get checkboxProps() {
818
+ return checkboxProps();
819
+ } };
820
+ }
821
+ //#endregion
822
+ //#region src/table/createTableSelectAllCheckbox.ts
823
+ /**
824
+ * createTableSelectAllCheckbox - Provides accessibility for a table select-all checkbox.
825
+ * Based on @react-aria/table/useTableSelectAllCheckbox.
826
+ */
827
+ /**
828
+ * Creates accessibility props for a table select-all checkbox.
829
+ */
830
+ function createTableSelectAllCheckbox(state) {
831
+ const isSelectAll = createMemo(() => {
832
+ return state().selectedKeys === "all";
833
+ });
834
+ const isEmpty = createMemo(() => {
835
+ return state().collection.size === 0;
836
+ });
837
+ const isIndeterminate = createMemo(() => {
838
+ const s = state();
839
+ const selectedKeys = s.selectedKeys;
840
+ if (selectedKeys === "all") return false;
841
+ if (selectedKeys.size === 0) return false;
842
+ return selectedKeys.size < s.collection.size;
843
+ });
844
+ const isDisabled = createMemo(() => {
845
+ return state().selectionMode !== "multiple" || isEmpty();
846
+ });
847
+ const onChange = () => {
848
+ const s = state();
849
+ if (!isDisabled()) s.toggleSelectAll();
850
+ };
851
+ const checkboxProps = createMemo(() => {
852
+ const s = state();
853
+ const baseProps = {
854
+ type: "checkbox",
855
+ checked: isSelectAll(),
856
+ disabled: isDisabled(),
857
+ onChange,
858
+ "aria-label": s.selectionMode === "single" ? "Select" : "Select All"
859
+ };
860
+ if (isIndeterminate()) baseProps["data-indeterminate"] = "true";
861
+ return baseProps;
862
+ });
863
+ return {
864
+ get checkboxProps() {
865
+ return checkboxProps();
866
+ },
867
+ get isIndeterminate() {
868
+ return isIndeterminate();
869
+ }
870
+ };
871
+ }
872
+ //#endregion
873
+ //#region src/table/createTableColumnResize.ts
874
+ /**
875
+ * ARIA hook for table column resize interactions.
876
+ * Based on @react-aria/table/useTableColumnResize.
877
+ *
878
+ * Provides pointer-drag and keyboard-based column resizing with
879
+ * correct ARIA attributes for screen readers.
880
+ */
881
+ const KEYBOARD_STEP = 10;
882
+ /**
883
+ * Creates ARIA-compliant column resize behavior.
884
+ *
885
+ * Returns props for a visible drag handle (div) and a visually-hidden
886
+ * range input that allows keyboard and screen-reader users to resize columns.
887
+ */
888
+ function createTableColumnResize(props, state) {
889
+ const getProps = () => props();
890
+ const getState = () => state();
891
+ const locale = useLocale();
892
+ const [isPointerDragging, setIsPointerDragging] = createSignal(false);
893
+ const [isKeyboardResizing, setIsKeyboardResizing] = createSignal(false);
894
+ const isResizing = createMemo(() => getState().resizingColumn() === getProps().column.key);
895
+ const isRtl = createMemo(() => {
896
+ return locale()?.direction === "rtl";
897
+ });
898
+ let startX = 0;
899
+ let startWidth = 0;
900
+ const onPointerDown = (e) => {
901
+ if (getProps().isDisabled) return;
902
+ e.preventDefault();
903
+ e.stopPropagation();
904
+ const key = getProps().column.key;
905
+ startX = e.clientX;
906
+ startWidth = getState().getColumnWidth(key);
907
+ getState().startResize(key);
908
+ getProps().onResizeStart?.(getState().columnWidths());
909
+ setIsPointerDragging(true);
910
+ e.currentTarget.setPointerCapture(e.pointerId);
911
+ };
912
+ const onPointerMove = (e) => {
913
+ if (!isPointerDragging()) return;
914
+ e.preventDefault();
915
+ const deltaX = e.clientX - startX;
916
+ const direction = isRtl() ? -1 : 1;
917
+ const newWidth = startWidth + deltaX * direction;
918
+ const key = getProps().column.key;
919
+ const widths = getState().updateResizedColumns(key, newWidth);
920
+ getProps().onResize?.(widths);
921
+ };
922
+ const onPointerUp = (e) => {
923
+ if (!isPointerDragging()) return;
924
+ e.preventDefault();
925
+ setIsPointerDragging(false);
926
+ getState().endResize();
927
+ getProps().onResizeEnd?.(getState().columnWidths());
928
+ };
929
+ const onKeyDown = (e) => {
930
+ if (getProps().isDisabled) return;
931
+ const key = getProps().column.key;
932
+ const rtlMul = isRtl() ? -1 : 1;
933
+ switch (e.key) {
934
+ case "Enter":
935
+ if (isKeyboardResizing()) {
936
+ setIsKeyboardResizing(false);
937
+ getState().endResize();
938
+ getProps().onResizeEnd?.(getState().columnWidths());
939
+ } else {
940
+ setIsKeyboardResizing(true);
941
+ getState().startResize(key);
942
+ getProps().onResizeStart?.(getState().columnWidths());
943
+ }
944
+ e.preventDefault();
945
+ break;
946
+ case "Escape":
947
+ if (isKeyboardResizing()) {
948
+ setIsKeyboardResizing(false);
949
+ getState().endResize();
950
+ getProps().onResizeEnd?.(getState().columnWidths());
951
+ e.preventDefault();
952
+ }
953
+ break;
954
+ case "Tab":
955
+ if (isKeyboardResizing()) {
956
+ setIsKeyboardResizing(false);
957
+ getState().endResize();
958
+ getProps().onResizeEnd?.(getState().columnWidths());
959
+ }
960
+ break;
961
+ case "ArrowRight":
962
+ if (isKeyboardResizing()) {
963
+ const currentWidth = getState().getColumnWidth(key);
964
+ const widths = getState().updateResizedColumns(key, currentWidth + KEYBOARD_STEP * rtlMul);
965
+ getProps().onResize?.(widths);
966
+ e.preventDefault();
967
+ }
968
+ break;
969
+ case "ArrowLeft":
970
+ if (isKeyboardResizing()) {
971
+ const currentWidth = getState().getColumnWidth(key);
972
+ const widths = getState().updateResizedColumns(key, currentWidth - KEYBOARD_STEP * rtlMul);
973
+ getProps().onResize?.(widths);
974
+ e.preventDefault();
975
+ }
976
+ break;
977
+ }
978
+ };
979
+ const onInputChange = (e) => {
980
+ const input = e.target;
981
+ const newWidth = parseFloat(input.value);
982
+ if (isNaN(newWidth)) return;
983
+ const key = getProps().column.key;
984
+ if (!isResizing()) {
985
+ getState().startResize(key);
986
+ getProps().onResizeStart?.(getState().columnWidths());
987
+ }
988
+ const widths = getState().updateResizedColumns(key, newWidth);
989
+ getProps().onResize?.(widths);
990
+ getState().endResize();
991
+ getProps().onResizeEnd?.(getState().columnWidths());
992
+ };
993
+ return {
994
+ resizerProps: {
995
+ role: "presentation",
996
+ tabIndex: -1,
997
+ style: {
998
+ "touch-action": "none",
999
+ cursor: "col-resize"
1000
+ },
1001
+ onPointerDown,
1002
+ onPointerMove,
1003
+ onPointerUp
1004
+ },
1005
+ inputProps: {
1006
+ get type() {
1007
+ return "range";
1008
+ },
1009
+ get tabIndex() {
1010
+ return getProps().isDisabled ? -1 : 0;
1011
+ },
1012
+ get disabled() {
1013
+ return getProps().isDisabled;
1014
+ },
1015
+ get "aria-label"() {
1016
+ return getProps()["aria-label"];
1017
+ },
1018
+ get "aria-orientation"() {
1019
+ return "horizontal";
1020
+ },
1021
+ get min() {
1022
+ return getState().getColumnMinWidth(getProps().column.key);
1023
+ },
1024
+ get max() {
1025
+ const maxW = getState().getColumnMaxWidth(getProps().column.key);
1026
+ return maxW === Infinity ? 9999 : maxW;
1027
+ },
1028
+ get value() {
1029
+ return getState().getColumnWidth(getProps().column.key);
1030
+ },
1031
+ style: {
1032
+ position: "absolute",
1033
+ width: "1px",
1034
+ height: "1px",
1035
+ padding: "0",
1036
+ margin: "-1px",
1037
+ overflow: "hidden",
1038
+ clip: "rect(0, 0, 0, 0)",
1039
+ "white-space": "nowrap",
1040
+ "border-width": "0"
1041
+ },
1042
+ onKeyDown,
1043
+ onChange: onInputChange
1044
+ },
1045
+ isResizing
1046
+ };
1047
+ }
1048
+ //#endregion
1049
+ export { createTableCell as a, createTableHeaderRow as c, createTableRowGroup as i, createTable as l, createTableSelectAllCheckbox as n, createTableRow as o, createTableSelectionCheckbox as r, createTableColumnHeader as s, createTableColumnResize as t, getTableData as u };
1050
+
1051
+ //# sourceMappingURL=table.js.map