@proyecto-viviana/solidaria 0.2.5 → 0.3.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 (555) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +31 -236
  3. package/dist/actiongroup/createActionGroup.d.ts +29 -0
  4. package/dist/actiongroup/createActionGroup.d.ts.map +1 -0
  5. package/dist/actiongroup/index.d.ts +2 -0
  6. package/dist/actiongroup/index.d.ts.map +1 -0
  7. package/dist/autocomplete/createAutocomplete.d.ts +16 -12
  8. package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
  9. package/dist/autocomplete/index.d.ts +1 -1
  10. package/dist/autocomplete/index.d.ts.map +1 -1
  11. package/dist/breadcrumbs/createBreadcrumbs.d.ts +11 -7
  12. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
  13. package/dist/breadcrumbs/index.d.ts +1 -1
  14. package/dist/button/createButton.d.ts +1 -1
  15. package/dist/button/createButton.d.ts.map +1 -1
  16. package/dist/button/createToggleButton.d.ts +3 -3
  17. package/dist/button/createToggleButtonGroup.d.ts +32 -0
  18. package/dist/button/createToggleButtonGroup.d.ts.map +1 -0
  19. package/dist/button/index.d.ts +6 -4
  20. package/dist/button/index.d.ts.map +1 -1
  21. package/dist/button/types.d.ts +18 -12
  22. package/dist/button/types.d.ts.map +1 -1
  23. package/dist/calendar/createCalendar.d.ts +15 -5
  24. package/dist/calendar/createCalendar.d.ts.map +1 -1
  25. package/dist/calendar/createCalendarCell.d.ts +8 -2
  26. package/dist/calendar/createCalendarCell.d.ts.map +1 -1
  27. package/dist/calendar/createCalendarGrid.d.ts +4 -4
  28. package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
  29. package/dist/calendar/createRangeCalendar.d.ts +15 -5
  30. package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
  31. package/dist/calendar/createRangeCalendarCell.d.ts +7 -3
  32. package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
  33. package/dist/calendar/index.d.ts +5 -5
  34. package/dist/calendar/index.d.ts.map +1 -1
  35. package/dist/calendar/intl/index.d.ts +12 -0
  36. package/dist/calendar/intl/index.d.ts.map +1 -0
  37. package/dist/calendar/utils.d.ts +12 -0
  38. package/dist/calendar/utils.d.ts.map +1 -0
  39. package/dist/checkbox/createCheckbox.d.ts +6 -6
  40. package/dist/checkbox/createCheckbox.d.ts.map +1 -1
  41. package/dist/checkbox/createCheckboxGroup.d.ts +11 -7
  42. package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
  43. package/dist/checkbox/createCheckboxGroupItem.d.ts +4 -4
  44. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
  45. package/dist/checkbox/createCheckboxGroupState.d.ts +2 -2
  46. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -1
  47. package/dist/checkbox/index.d.ts +8 -8
  48. package/dist/checkbox/index.d.ts.map +1 -1
  49. package/dist/collections/index.d.ts +56 -0
  50. package/dist/collections/index.d.ts.map +1 -0
  51. package/dist/color/createColorArea.d.ts +3 -3
  52. package/dist/color/createColorArea.d.ts.map +1 -1
  53. package/dist/color/createColorField.d.ts +4 -4
  54. package/dist/color/createColorField.d.ts.map +1 -1
  55. package/dist/color/createColorSlider.d.ts +4 -4
  56. package/dist/color/createColorSlider.d.ts.map +1 -1
  57. package/dist/color/createColorSwatch.d.ts +2 -2
  58. package/dist/color/createColorSwatch.d.ts.map +1 -1
  59. package/dist/color/createColorWheel.d.ts +3 -3
  60. package/dist/color/createColorWheel.d.ts.map +1 -1
  61. package/dist/color/index.d.ts +6 -6
  62. package/dist/color/types.d.ts +98 -16
  63. package/dist/color/types.d.ts.map +1 -1
  64. package/dist/combobox/createComboBox.d.ts +16 -7
  65. package/dist/combobox/createComboBox.d.ts.map +1 -1
  66. package/dist/combobox/index.d.ts +1 -1
  67. package/dist/combobox/intl/index.d.ts +1 -1
  68. package/dist/datepicker/createDateField.d.ts +18 -6
  69. package/dist/datepicker/createDateField.d.ts.map +1 -1
  70. package/dist/datepicker/createDatePicker.d.ts +57 -5
  71. package/dist/datepicker/createDatePicker.d.ts.map +1 -1
  72. package/dist/datepicker/createDatePickerGroup.d.ts +19 -0
  73. package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -0
  74. package/dist/datepicker/createDateRangePicker.d.ts +42 -0
  75. package/dist/datepicker/createDateRangePicker.d.ts.map +1 -0
  76. package/dist/datepicker/createDateSegment.d.ts +11 -3
  77. package/dist/datepicker/createDateSegment.d.ts.map +1 -1
  78. package/dist/datepicker/createTimeField.d.ts +11 -5
  79. package/dist/datepicker/createTimeField.d.ts.map +1 -1
  80. package/dist/datepicker/createTimeSegment.d.ts +29 -0
  81. package/dist/datepicker/createTimeSegment.d.ts.map +1 -0
  82. package/dist/datepicker/index.d.ts +7 -4
  83. package/dist/datepicker/index.d.ts.map +1 -1
  84. package/dist/dialog/createDialog.d.ts +5 -5
  85. package/dist/dialog/createDialog.d.ts.map +1 -1
  86. package/dist/dialog/index.d.ts +2 -2
  87. package/dist/dialog/index.d.ts.map +1 -1
  88. package/dist/dialog/types.d.ts +4 -4
  89. package/dist/disclosure/createDisclosure.d.ts +5 -2
  90. package/dist/disclosure/createDisclosure.d.ts.map +1 -1
  91. package/dist/disclosure/createDisclosureGroup.d.ts +4 -3
  92. package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
  93. package/dist/disclosure/index.d.ts +2 -2
  94. package/dist/dnd/createDrag.d.ts +2 -2
  95. package/dist/dnd/createDrag.d.ts.map +1 -1
  96. package/dist/dnd/createDraggableCollection.d.ts +6 -2
  97. package/dist/dnd/createDraggableCollection.d.ts.map +1 -1
  98. package/dist/dnd/createDraggableItem.d.ts +3 -3
  99. package/dist/dnd/createDraggableItem.d.ts.map +1 -1
  100. package/dist/dnd/createDrop.d.ts +2 -2
  101. package/dist/dnd/createDrop.d.ts.map +1 -1
  102. package/dist/dnd/createDroppableCollection.d.ts +55 -4
  103. package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
  104. package/dist/dnd/createDroppableItem.d.ts +3 -3
  105. package/dist/dnd/createDroppableItem.d.ts.map +1 -1
  106. package/dist/dnd/index.d.ts +12 -12
  107. package/dist/dnd/index.d.ts.map +1 -1
  108. package/dist/dnd/types.d.ts +2 -2
  109. package/dist/dnd/types.d.ts.map +1 -1
  110. package/dist/dnd/utils.d.ts +1 -1
  111. package/dist/dnd/utils.d.ts.map +1 -1
  112. package/dist/focus/FocusScope.d.ts +1 -1
  113. package/dist/focus/FocusScope.d.ts.map +1 -1
  114. package/dist/focus/createAutoFocus.d.ts.map +1 -1
  115. package/dist/focus/createFocusRestore.d.ts.map +1 -1
  116. package/dist/focus/createVirtualFocus.d.ts +4 -4
  117. package/dist/focus/createVirtualFocus.d.ts.map +1 -1
  118. package/dist/focus/index.d.ts +4 -4
  119. package/dist/focus/index.d.ts.map +1 -1
  120. package/dist/form/createFormReset.d.ts +1 -1
  121. package/dist/form/createFormValidation.d.ts +3 -3
  122. package/dist/form/createFormValidation.d.ts.map +1 -1
  123. package/dist/form/index.d.ts +2 -2
  124. package/dist/form/index.d.ts.map +1 -1
  125. package/dist/grid/GridKeyboardDelegate.d.ts +5 -5
  126. package/dist/grid/createGrid.d.ts +3 -3
  127. package/dist/grid/createGrid.d.ts.map +1 -1
  128. package/dist/grid/createGridCell.d.ts +3 -3
  129. package/dist/grid/createGridRow.d.ts +3 -3
  130. package/dist/grid/index.d.ts +5 -5
  131. package/dist/grid/types.d.ts +8 -8
  132. package/dist/gridlist/createGridList.d.ts +6 -4
  133. package/dist/gridlist/createGridList.d.ts.map +1 -1
  134. package/dist/gridlist/createGridListItem.d.ts +4 -4
  135. package/dist/gridlist/createGridListItem.d.ts.map +1 -1
  136. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +3 -3
  137. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
  138. package/dist/gridlist/index.d.ts +4 -4
  139. package/dist/gridlist/types.d.ts +11 -7
  140. package/dist/gridlist/types.d.ts.map +1 -1
  141. package/dist/i18n/createCollator.d.ts.map +1 -1
  142. package/dist/i18n/createDateFormatter.d.ts.map +1 -1
  143. package/dist/i18n/createFilter.d.ts.map +1 -1
  144. package/dist/i18n/createNumberFormatter.d.ts +1 -1
  145. package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
  146. package/dist/i18n/createStringFormatter.d.ts +2 -2
  147. package/dist/i18n/createStringFormatter.d.ts.map +1 -1
  148. package/dist/i18n/index.d.ts +8 -8
  149. package/dist/i18n/index.d.ts.map +1 -1
  150. package/dist/i18n/locale.d.ts +2 -2
  151. package/dist/i18n/locale.d.ts.map +1 -1
  152. package/dist/i18n/utils.d.ts.map +1 -1
  153. package/dist/index.d.ts +52 -49
  154. package/dist/index.d.ts.map +1 -1
  155. package/dist/index.js +18089 -15690
  156. package/dist/index.js.map +1 -7
  157. package/dist/index.jsx +18242 -0
  158. package/dist/index.jsx.map +1 -0
  159. package/dist/interactions/FocusableProvider.d.ts +2 -2
  160. package/dist/interactions/FocusableProvider.d.ts.map +1 -1
  161. package/dist/interactions/PressEvent.d.ts +2 -2
  162. package/dist/interactions/createFocus.d.ts +1 -1
  163. package/dist/interactions/createFocus.d.ts.map +1 -1
  164. package/dist/interactions/createFocusRing.d.ts +1 -1
  165. package/dist/interactions/createFocusRing.d.ts.map +1 -1
  166. package/dist/interactions/createFocusWithin.d.ts +1 -1
  167. package/dist/interactions/createFocusWithin.d.ts.map +1 -1
  168. package/dist/interactions/createFocusable.d.ts +3 -3
  169. package/dist/interactions/createFocusable.d.ts.map +1 -1
  170. package/dist/interactions/createHover.d.ts +5 -5
  171. package/dist/interactions/createHover.d.ts.map +1 -1
  172. package/dist/interactions/createInteractionModality.d.ts +3 -3
  173. package/dist/interactions/createInteractionModality.d.ts.map +1 -1
  174. package/dist/interactions/createKeyboard.d.ts +1 -1
  175. package/dist/interactions/createLongPress.d.ts +5 -5
  176. package/dist/interactions/createMove.d.ts +5 -5
  177. package/dist/interactions/createMove.d.ts.map +1 -1
  178. package/dist/interactions/createPress.d.ts +4 -4
  179. package/dist/interactions/createPress.d.ts.map +1 -1
  180. package/dist/interactions/index.d.ts +12 -12
  181. package/dist/interactions/index.d.ts.map +1 -1
  182. package/dist/label/createField.d.ts +4 -4
  183. package/dist/label/createField.d.ts.map +1 -1
  184. package/dist/label/createLabel.d.ts +7 -7
  185. package/dist/label/createLabel.d.ts.map +1 -1
  186. package/dist/label/createLabels.d.ts +1 -1
  187. package/dist/label/createLabels.d.ts.map +1 -1
  188. package/dist/label/index.d.ts +5 -5
  189. package/dist/landmark/createLandmark.d.ts +5 -5
  190. package/dist/landmark/createLandmark.d.ts.map +1 -1
  191. package/dist/landmark/index.d.ts +1 -1
  192. package/dist/link/createLink.d.ts +23 -7
  193. package/dist/link/createLink.d.ts.map +1 -1
  194. package/dist/link/index.d.ts +1 -1
  195. package/dist/listbox/createListBox.d.ts +12 -6
  196. package/dist/listbox/createListBox.d.ts.map +1 -1
  197. package/dist/listbox/createOption.d.ts +21 -4
  198. package/dist/listbox/createOption.d.ts.map +1 -1
  199. package/dist/listbox/index.d.ts +2 -2
  200. package/dist/listbox/index.d.ts.map +1 -1
  201. package/dist/live-announcer/announce.d.ts +2 -2
  202. package/dist/live-announcer/announce.d.ts.map +1 -1
  203. package/dist/live-announcer/index.d.ts +1 -1
  204. package/dist/menu/createMenu.d.ts +8 -7
  205. package/dist/menu/createMenu.d.ts.map +1 -1
  206. package/dist/menu/createMenuItem.d.ts +16 -4
  207. package/dist/menu/createMenuItem.d.ts.map +1 -1
  208. package/dist/menu/createMenuTrigger.d.ts +4 -4
  209. package/dist/menu/index.d.ts +3 -3
  210. package/dist/menu/index.d.ts.map +1 -1
  211. package/dist/meter/createMeter.d.ts +6 -6
  212. package/dist/meter/createMeter.d.ts.map +1 -1
  213. package/dist/meter/index.d.ts +1 -1
  214. package/dist/numberfield/createNumberField.d.ts +27 -8
  215. package/dist/numberfield/createNumberField.d.ts.map +1 -1
  216. package/dist/numberfield/index.d.ts +1 -1
  217. package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
  218. package/dist/overlays/createModal.d.ts +19 -3
  219. package/dist/overlays/createModal.d.ts.map +1 -1
  220. package/dist/overlays/createOverlay.d.ts +1 -1
  221. package/dist/overlays/createOverlay.d.ts.map +1 -1
  222. package/dist/overlays/createOverlayTrigger.d.ts +6 -6
  223. package/dist/overlays/index.d.ts +6 -6
  224. package/dist/overlays/index.d.ts.map +1 -1
  225. package/dist/popover/calculatePosition.d.ts +4 -4
  226. package/dist/popover/calculatePosition.d.ts.map +1 -1
  227. package/dist/popover/createOverlayPosition.d.ts +3 -3
  228. package/dist/popover/createOverlayPosition.d.ts.map +1 -1
  229. package/dist/popover/createPopover.d.ts +4 -4
  230. package/dist/popover/createPopover.d.ts.map +1 -1
  231. package/dist/popover/index.d.ts +3 -3
  232. package/dist/progress/createProgressBar.d.ts +7 -5
  233. package/dist/progress/createProgressBar.d.ts.map +1 -1
  234. package/dist/progress/index.d.ts +1 -1
  235. package/dist/radio/createRadio.d.ts +7 -7
  236. package/dist/radio/createRadio.d.ts.map +1 -1
  237. package/dist/radio/createRadioGroup.d.ts +11 -11
  238. package/dist/radio/createRadioGroup.d.ts.map +1 -1
  239. package/dist/radio/createRadioGroupState.d.ts +3 -3
  240. package/dist/radio/createRadioGroupState.d.ts.map +1 -1
  241. package/dist/radio/index.d.ts +3 -3
  242. package/dist/radio/index.d.ts.map +1 -1
  243. package/dist/searchfield/createSearchField.d.ts +7 -7
  244. package/dist/searchfield/createSearchField.d.ts.map +1 -1
  245. package/dist/searchfield/index.d.ts +2 -2
  246. package/dist/select/createHiddenSelect.d.ts +4 -4
  247. package/dist/select/createHiddenSelect.d.ts.map +1 -1
  248. package/dist/select/createSelect.d.ts +14 -6
  249. package/dist/select/createSelect.d.ts.map +1 -1
  250. package/dist/select/index.d.ts +2 -2
  251. package/dist/select/index.d.ts.map +1 -1
  252. package/dist/selection/createTypeSelect.d.ts +2 -2
  253. package/dist/selection/index.d.ts +1 -1
  254. package/dist/separator/createSeparator.d.ts +9 -5
  255. package/dist/separator/createSeparator.d.ts.map +1 -1
  256. package/dist/separator/index.d.ts +1 -1
  257. package/dist/slider/createSlider.d.ts +11 -7
  258. package/dist/slider/createSlider.d.ts.map +1 -1
  259. package/dist/slider/index.d.ts +2 -2
  260. package/dist/ssr/index.d.ts +1 -1
  261. package/dist/ssr/index.d.ts.map +1 -1
  262. package/dist/steplist/createStepList.d.ts +36 -0
  263. package/dist/steplist/createStepList.d.ts.map +1 -0
  264. package/dist/steplist/index.d.ts +2 -0
  265. package/dist/steplist/index.d.ts.map +1 -0
  266. package/dist/switch/createSwitch.d.ts +6 -4
  267. package/dist/switch/createSwitch.d.ts.map +1 -1
  268. package/dist/switch/index.d.ts +1 -1
  269. package/dist/table/createTable.d.ts +3 -3
  270. package/dist/table/createTable.d.ts.map +1 -1
  271. package/dist/table/createTableCell.d.ts +3 -3
  272. package/dist/table/createTableCell.d.ts.map +1 -1
  273. package/dist/table/createTableColumnHeader.d.ts +3 -3
  274. package/dist/table/createTableColumnHeader.d.ts.map +1 -1
  275. package/dist/table/createTableColumnResize.d.ts +41 -0
  276. package/dist/table/createTableColumnResize.d.ts.map +1 -0
  277. package/dist/table/createTableHeaderRow.d.ts +3 -3
  278. package/dist/table/createTableRow.d.ts +3 -3
  279. package/dist/table/createTableRow.d.ts.map +1 -1
  280. package/dist/table/createTableRowGroup.d.ts +2 -2
  281. package/dist/table/createTableRowGroup.d.ts.map +1 -1
  282. package/dist/table/createTableSelectAllCheckbox.d.ts +3 -3
  283. package/dist/table/createTableSelectAllCheckbox.d.ts.map +1 -1
  284. package/dist/table/createTableSelectionCheckbox.d.ts +3 -3
  285. package/dist/table/index.d.ts +11 -9
  286. package/dist/table/index.d.ts.map +1 -1
  287. package/dist/table/types.d.ts +15 -7
  288. package/dist/table/types.d.ts.map +1 -1
  289. package/dist/tabs/createTabs.d.ts +28 -25
  290. package/dist/tabs/createTabs.d.ts.map +1 -1
  291. package/dist/tabs/index.d.ts +1 -1
  292. package/dist/tag/createTag.d.ts +2 -2
  293. package/dist/tag/createTag.d.ts.map +1 -1
  294. package/dist/tag/createTagGroup.d.ts +5 -5
  295. package/dist/tag/createTagGroup.d.ts.map +1 -1
  296. package/dist/tag/index.d.ts +2 -2
  297. package/dist/tag/index.d.ts.map +1 -1
  298. package/dist/textfield/createTextField.d.ts +17 -11
  299. package/dist/textfield/createTextField.d.ts.map +1 -1
  300. package/dist/textfield/index.d.ts +1 -1
  301. package/dist/textfield/index.d.ts.map +1 -1
  302. package/dist/toast/createToast.d.ts +6 -2
  303. package/dist/toast/createToast.d.ts.map +1 -1
  304. package/dist/toast/createToastRegion.d.ts +5 -3
  305. package/dist/toast/createToastRegion.d.ts.map +1 -1
  306. package/dist/toast/index.d.ts +2 -2
  307. package/dist/toast/index.d.ts.map +1 -1
  308. package/dist/toggle/createToggle.d.ts +9 -9
  309. package/dist/toggle/createToggle.d.ts.map +1 -1
  310. package/dist/toggle/createToggleState.d.ts +2 -2
  311. package/dist/toggle/createToggleState.d.ts.map +1 -1
  312. package/dist/toggle/index.d.ts +4 -4
  313. package/dist/toggle/index.d.ts.map +1 -1
  314. package/dist/toolbar/createToolbar.d.ts +9 -9
  315. package/dist/toolbar/createToolbar.d.ts.map +1 -1
  316. package/dist/toolbar/index.d.ts +1 -1
  317. package/dist/toolbar/index.d.ts.map +1 -1
  318. package/dist/tooltip/createTooltip.d.ts +5 -5
  319. package/dist/tooltip/createTooltip.d.ts.map +1 -1
  320. package/dist/tooltip/createTooltipTrigger.d.ts +10 -5
  321. package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
  322. package/dist/tooltip/index.d.ts +2 -2
  323. package/dist/tree/createTree.d.ts +3 -3
  324. package/dist/tree/createTree.d.ts.map +1 -1
  325. package/dist/tree/createTreeItem.d.ts +4 -4
  326. package/dist/tree/createTreeItem.d.ts.map +1 -1
  327. package/dist/tree/createTreeSelectionCheckbox.d.ts +3 -3
  328. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
  329. package/dist/tree/index.d.ts +4 -4
  330. package/dist/tree/types.d.ts +13 -5
  331. package/dist/tree/types.d.ts.map +1 -1
  332. package/dist/utils/createDescription.d.ts +2 -2
  333. package/dist/utils/createDescription.d.ts.map +1 -1
  334. package/dist/utils/dom.d.ts.map +1 -1
  335. package/dist/utils/env.d.ts +1 -1
  336. package/dist/utils/env.d.ts.map +1 -1
  337. package/dist/utils/focus.d.ts +1 -1
  338. package/dist/utils/focus.d.ts.map +1 -1
  339. package/dist/utils/geometry.d.ts.map +1 -1
  340. package/dist/utils/index.d.ts +12 -12
  341. package/dist/utils/index.d.ts.map +1 -1
  342. package/dist/utils/mergeProps.d.ts.map +1 -1
  343. package/dist/utils/platform.d.ts.map +1 -1
  344. package/dist/utils/reactivity.d.ts +1 -1
  345. package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -2
  346. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
  347. package/dist/visually-hidden/index.d.ts +1 -1
  348. package/package.json +34 -32
  349. package/src/actiongroup/createActionGroup.ts +334 -0
  350. package/src/actiongroup/index.ts +8 -0
  351. package/src/autocomplete/createAutocomplete.ts +137 -131
  352. package/src/autocomplete/index.ts +1 -1
  353. package/src/breadcrumbs/createBreadcrumbs.ts +37 -51
  354. package/src/breadcrumbs/index.ts +1 -1
  355. package/src/button/createButton.ts +102 -73
  356. package/src/button/createToggleButton.ts +10 -10
  357. package/src/button/createToggleButtonGroup.ts +121 -0
  358. package/src/button/index.ts +10 -4
  359. package/src/button/types.ts +18 -12
  360. package/src/calendar/createCalendar.ts +62 -29
  361. package/src/calendar/createCalendarCell.ts +102 -48
  362. package/src/calendar/createCalendarGrid.ts +78 -47
  363. package/src/calendar/createRangeCalendar.ts +66 -31
  364. package/src/calendar/createRangeCalendarCell.ts +115 -37
  365. package/src/calendar/index.ts +5 -9
  366. package/src/calendar/intl/index.ts +210 -0
  367. package/src/calendar/utils.ts +227 -0
  368. package/src/checkbox/createCheckbox.ts +13 -21
  369. package/src/checkbox/createCheckboxGroup.ts +86 -45
  370. package/src/checkbox/createCheckboxGroupItem.ts +16 -27
  371. package/src/checkbox/createCheckboxGroupState.ts +3 -22
  372. package/src/checkbox/index.ts +8 -10
  373. package/src/collections/index.ts +246 -0
  374. package/src/color/createColorArea.ts +458 -314
  375. package/src/color/createColorField.ts +186 -137
  376. package/src/color/createColorSlider.ts +444 -197
  377. package/src/color/createColorSwatch.ts +65 -40
  378. package/src/color/createColorWheel.ts +343 -208
  379. package/src/color/index.ts +24 -24
  380. package/src/color/types.ts +198 -116
  381. package/src/combobox/createComboBox.ts +727 -647
  382. package/src/combobox/index.ts +6 -6
  383. package/src/combobox/intl/index.ts +5 -5
  384. package/src/datepicker/createDateField.ts +192 -39
  385. package/src/datepicker/createDatePicker.ts +294 -63
  386. package/src/datepicker/createDatePickerGroup.ts +149 -0
  387. package/src/datepicker/createDateRangePicker.ts +294 -0
  388. package/src/datepicker/createDateSegment.ts +316 -75
  389. package/src/datepicker/createTimeField.ts +38 -34
  390. package/src/datepicker/createTimeSegment.ts +352 -0
  391. package/src/datepicker/index.ts +24 -11
  392. package/src/dialog/createDialog.ts +127 -120
  393. package/src/dialog/index.ts +2 -2
  394. package/src/dialog/types.ts +19 -19
  395. package/src/disclosure/createDisclosure.ts +138 -33
  396. package/src/disclosure/createDisclosureGroup.ts +8 -18
  397. package/src/disclosure/index.ts +2 -2
  398. package/src/dnd/createDrag.ts +218 -209
  399. package/src/dnd/createDraggableCollection.ts +96 -63
  400. package/src/dnd/createDraggableItem.ts +260 -243
  401. package/src/dnd/createDrop.ts +313 -321
  402. package/src/dnd/createDroppableCollection.ts +799 -293
  403. package/src/dnd/createDroppableItem.ts +215 -213
  404. package/src/dnd/index.ts +66 -47
  405. package/src/dnd/types.ts +86 -89
  406. package/src/dnd/utils.ts +281 -294
  407. package/src/focus/FocusScope.tsx +155 -164
  408. package/src/focus/createAutoFocus.ts +305 -321
  409. package/src/focus/createFocusRestore.ts +300 -313
  410. package/src/focus/createVirtualFocus.ts +380 -396
  411. package/src/focus/index.ts +4 -8
  412. package/src/form/createFormReset.ts +4 -4
  413. package/src/form/createFormValidation.ts +201 -224
  414. package/src/form/index.ts +8 -11
  415. package/src/grid/GridKeyboardDelegate.ts +30 -30
  416. package/src/grid/createGrid.ts +38 -36
  417. package/src/grid/createGridCell.ts +18 -18
  418. package/src/grid/createGridRow.ts +14 -14
  419. package/src/grid/index.ts +5 -5
  420. package/src/grid/types.ts +8 -8
  421. package/src/gridlist/createGridList.ts +45 -24
  422. package/src/gridlist/createGridListItem.ts +68 -23
  423. package/src/gridlist/createGridListSelectionCheckbox.ts +12 -9
  424. package/src/gridlist/index.ts +4 -4
  425. package/src/gridlist/types.ts +11 -7
  426. package/src/i18n/createCollator.ts +66 -79
  427. package/src/i18n/createDateFormatter.ts +75 -83
  428. package/src/i18n/createFilter.ts +118 -131
  429. package/src/i18n/createNumberFormatter.ts +50 -52
  430. package/src/i18n/createStringFormatter.ts +19 -15
  431. package/src/i18n/index.ts +37 -40
  432. package/src/i18n/locale.tsx +163 -188
  433. package/src/i18n/utils.ts +95 -99
  434. package/src/index.ts +114 -164
  435. package/src/interactions/FocusableProvider.tsx +3 -7
  436. package/src/interactions/PressEvent.ts +4 -4
  437. package/src/interactions/createFocus.ts +16 -11
  438. package/src/interactions/createFocusRing.ts +21 -19
  439. package/src/interactions/createFocusWithin.ts +24 -16
  440. package/src/interactions/createFocusable.ts +15 -16
  441. package/src/interactions/createHover.ts +70 -55
  442. package/src/interactions/createInteractionModality.ts +75 -82
  443. package/src/interactions/createKeyboard.ts +2 -2
  444. package/src/interactions/createLongPress.ts +174 -174
  445. package/src/interactions/createMove.ts +299 -289
  446. package/src/interactions/createPress.ts +168 -91
  447. package/src/interactions/index.ts +24 -16
  448. package/src/label/createField.ts +18 -19
  449. package/src/label/createLabel.ts +18 -30
  450. package/src/label/createLabels.ts +8 -12
  451. package/src/label/index.ts +5 -5
  452. package/src/landmark/createLandmark.ts +356 -377
  453. package/src/landmark/index.ts +8 -8
  454. package/src/link/createLink.ts +96 -54
  455. package/src/link/index.ts +1 -1
  456. package/src/listbox/createListBox.ts +319 -269
  457. package/src/listbox/createOption.ts +208 -151
  458. package/src/listbox/index.ts +8 -12
  459. package/src/live-announcer/announce.ts +295 -322
  460. package/src/live-announcer/index.ts +9 -9
  461. package/src/menu/createMenu.ts +434 -396
  462. package/src/menu/createMenuItem.ts +201 -149
  463. package/src/menu/createMenuTrigger.ts +88 -88
  464. package/src/menu/index.ts +9 -18
  465. package/src/meter/createMeter.ts +7 -20
  466. package/src/meter/index.ts +1 -1
  467. package/src/numberfield/createNumberField.ts +368 -268
  468. package/src/numberfield/index.ts +5 -5
  469. package/src/overlays/ariaHideOutside.ts +223 -219
  470. package/src/overlays/createInteractOutside.ts +152 -149
  471. package/src/overlays/createModal.tsx +238 -202
  472. package/src/overlays/createOverlay.ts +195 -155
  473. package/src/overlays/createOverlayTrigger.ts +85 -85
  474. package/src/overlays/createPreventScroll.ts +288 -266
  475. package/src/overlays/index.ts +37 -44
  476. package/src/popover/calculatePosition.ts +117 -119
  477. package/src/popover/createOverlayPosition.ts +52 -43
  478. package/src/popover/createPopover.ts +63 -24
  479. package/src/popover/index.ts +3 -3
  480. package/src/progress/createProgressBar.ts +36 -32
  481. package/src/progress/index.ts +1 -1
  482. package/src/radio/createRadio.ts +95 -73
  483. package/src/radio/createRadioGroup.ts +142 -62
  484. package/src/radio/createRadioGroupState.ts +7 -31
  485. package/src/radio/index.ts +3 -8
  486. package/src/searchfield/createSearchField.ts +269 -186
  487. package/src/searchfield/index.ts +2 -2
  488. package/src/select/createHiddenSelect.tsx +276 -236
  489. package/src/select/createSelect.ts +430 -395
  490. package/src/select/index.ts +9 -14
  491. package/src/selection/createTypeSelect.ts +11 -11
  492. package/src/selection/index.ts +1 -1
  493. package/src/separator/createSeparator.ts +20 -25
  494. package/src/separator/index.ts +1 -1
  495. package/src/slider/createSlider.ts +333 -349
  496. package/src/slider/index.ts +2 -2
  497. package/src/ssr/index.tsx +331 -370
  498. package/src/steplist/createStepList.ts +106 -0
  499. package/src/steplist/index.ts +8 -0
  500. package/src/switch/createSwitch.ts +9 -14
  501. package/src/switch/index.ts +1 -1
  502. package/src/table/createTable.ts +155 -86
  503. package/src/table/createTableCell.ts +17 -16
  504. package/src/table/createTableColumnHeader.ts +67 -20
  505. package/src/table/createTableColumnResize.ts +256 -0
  506. package/src/table/createTableHeaderRow.ts +7 -7
  507. package/src/table/createTableRow.ts +149 -29
  508. package/src/table/createTableRowGroup.ts +5 -7
  509. package/src/table/createTableSelectAllCheckbox.ts +12 -11
  510. package/src/table/createTableSelectionCheckbox.ts +8 -8
  511. package/src/table/index.ts +14 -9
  512. package/src/table/types.ts +15 -7
  513. package/src/tabs/createTabs.ts +138 -127
  514. package/src/tabs/index.ts +1 -1
  515. package/src/tag/createTag.ts +171 -40
  516. package/src/tag/createTagGroup.ts +50 -39
  517. package/src/tag/index.ts +2 -6
  518. package/src/textfield/createTextField.ts +67 -35
  519. package/src/textfield/index.ts +1 -5
  520. package/src/toast/createToast.ts +34 -26
  521. package/src/toast/createToastRegion.ts +169 -27
  522. package/src/toast/index.ts +2 -6
  523. package/src/toggle/createToggle.ts +95 -53
  524. package/src/toggle/createToggleState.ts +2 -10
  525. package/src/toggle/index.ts +4 -5
  526. package/src/toolbar/createToolbar.ts +226 -169
  527. package/src/toolbar/index.ts +1 -1
  528. package/src/tooltip/createTooltip.ts +66 -79
  529. package/src/tooltip/createTooltipTrigger.ts +238 -222
  530. package/src/tooltip/index.ts +6 -6
  531. package/src/tree/createTree.ts +259 -246
  532. package/src/tree/createTreeItem.ts +282 -233
  533. package/src/tree/createTreeSelectionCheckbox.ts +71 -68
  534. package/src/tree/index.ts +16 -16
  535. package/src/tree/types.ts +95 -87
  536. package/src/utils/createDescription.ts +6 -23
  537. package/src/utils/dom.ts +61 -54
  538. package/src/utils/env.ts +53 -54
  539. package/src/utils/events.ts +7 -7
  540. package/src/utils/filterDOMProps.ts +49 -49
  541. package/src/utils/focus.ts +60 -68
  542. package/src/utils/geometry.ts +1 -4
  543. package/src/utils/globalListeners.ts +9 -9
  544. package/src/utils/index.ts +12 -22
  545. package/src/utils/mergeProps.ts +42 -15
  546. package/src/utils/platform.ts +16 -6
  547. package/src/utils/reactivity.ts +3 -3
  548. package/src/utils/textSelection.ts +16 -16
  549. package/src/visually-hidden/createVisuallyHidden.ts +127 -124
  550. package/src/visually-hidden/index.ts +6 -6
  551. package/dist/i18n/NumberFormatter.d.ts +0 -43
  552. package/dist/i18n/NumberFormatter.d.ts.map +0 -1
  553. package/dist/index.ssr.js +0 -15875
  554. package/dist/index.ssr.js.map +0 -7
  555. package/src/i18n/NumberFormatter.ts +0 -266
@@ -3,11 +3,11 @@
3
3
  * Based on @react-aria/table/useTableRow.
4
4
  */
5
5
 
6
- import { createMemo, createSignal, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import type { TableState, TableCollection } from '@proyecto-viviana/solid-stately';
9
- import type { AriaTableRowProps, TableRowAria } from './types';
10
- import { getTableData } from './createTable';
6
+ import { createMemo, createSignal, type Accessor } from "solid-js";
7
+ import type { JSX } from "solid-js";
8
+ import type { Key, TableState, TableCollection } from "@proyecto-viviana/solid-stately";
9
+ import type { AriaTableRowProps, TableRowAria } from "./types";
10
+ import { getTableData } from "./createTable";
11
11
 
12
12
  /**
13
13
  * Creates accessibility props for a table row.
@@ -15,9 +15,11 @@ import { getTableData } from './createTable';
15
15
  export function createTableRow<T extends object>(
16
16
  props: Accessor<AriaTableRowProps>,
17
17
  state: Accessor<TableState<T, TableCollection<T>>>,
18
- _ref: Accessor<HTMLTableRowElement | null>
18
+ _ref: Accessor<HTMLTableRowElement | null>,
19
19
  ): TableRowAria {
20
20
  const [isPressed, setIsPressed] = createSignal(false);
21
+ let didSelectOnPointer = false;
22
+ let didActionOnPointer = false;
21
23
 
22
24
  const isSelected = createMemo(() => {
23
25
  const s = state();
@@ -28,7 +30,7 @@ export function createTableRow<T extends object>(
28
30
  const isDisabled = createMemo(() => {
29
31
  const s = state();
30
32
  const p = props();
31
- return s.isDisabled(p.node.key);
33
+ return !!p.isDisabled || s.isDisabled(p.node.key);
32
34
  });
33
35
 
34
36
  const isFocused = createMemo(() => {
@@ -37,30 +39,38 @@ export function createTableRow<T extends object>(
37
39
  return s.focusedKey === p.node.key;
38
40
  });
39
41
 
40
- // Handle click/press for selection
41
- const onClick = (e: MouseEvent) => {
42
+ const isInteractive = () => {
42
43
  const s = state();
43
44
  const p = props();
44
-
45
- if (isDisabled()) return;
46
-
47
- // Get table metadata for actions
48
45
  const tableData = getTableData(s);
49
- const onRowAction = tableData?.actions.onRowAction;
46
+ return (
47
+ s.selectionMode !== "none" || !!tableData?.actions.onRowAction || !!p.onAction || !!p.href
48
+ );
49
+ };
50
50
 
51
- // Handle selection
52
- if (s.selectionMode !== 'none') {
53
- if (e.shiftKey && s.selectionMode === 'multiple') {
51
+ const selectRow = (e: MouseEvent | PointerEvent | KeyboardEvent, forceReplace = false) => {
52
+ const s = state();
53
+ const p = props();
54
+
55
+ if (s.selectionMode !== "none") {
56
+ if (e.shiftKey && s.selectionMode === "multiple") {
54
57
  s.extendSelection(p.node.key);
55
- } else if (e.ctrlKey || e.metaKey) {
58
+ } else if (!forceReplace && (e.ctrlKey || e.metaKey || s.selectionBehavior === "toggle")) {
59
+ s.toggleSelection(p.node.key);
60
+ } else if (!forceReplace && s.selectionMode === "single" && s.isSelected(p.node.key)) {
56
61
  s.toggleSelection(p.node.key);
57
62
  } else {
58
63
  // Replace selection
59
64
  s.replaceSelection(p.node.key);
60
65
  }
61
66
  }
67
+ };
62
68
 
63
- // Call action handler
69
+ const activateLink = (e: MouseEvent | KeyboardEvent) => {
70
+ props().onLinkAction?.(e);
71
+ };
72
+
73
+ const runRowAction = (p: AriaTableRowProps, onRowAction: ((key: Key) => void) | undefined) => {
64
74
  if (onRowAction) {
65
75
  onRowAction(p.node.key);
66
76
  }
@@ -70,22 +80,85 @@ export function createTableRow<T extends object>(
70
80
  }
71
81
  };
72
82
 
83
+ const isFromInteractiveElement = (e: Event) => {
84
+ const target = e.target;
85
+ if (!(target instanceof Element)) return false;
86
+ return !!target.closest(
87
+ 'a[href],button,input,select,textarea,[role="button"],[role="checkbox"],[role="link"]',
88
+ );
89
+ };
90
+
91
+ // Handle click/press for selection
92
+ const onClick = (e: MouseEvent) => {
93
+ const s = state();
94
+ const p = props();
95
+
96
+ if (isDisabled()) return;
97
+
98
+ // Get table metadata for actions
99
+ const tableData = getTableData(s);
100
+ const onRowAction = tableData?.actions.onRowAction;
101
+
102
+ if (isFromInteractiveElement(e)) {
103
+ didSelectOnPointer = false;
104
+ didActionOnPointer = false;
105
+ return;
106
+ }
107
+
108
+ if (p.href) {
109
+ if (s.selectionBehavior === "replace" && s.selectionMode !== "none") {
110
+ if (!didSelectOnPointer) {
111
+ selectRow(e, true);
112
+ }
113
+ } else if (!didActionOnPointer) {
114
+ activateLink(e);
115
+ }
116
+ didSelectOnPointer = false;
117
+ didActionOnPointer = false;
118
+ return;
119
+ }
120
+
121
+ if (!didSelectOnPointer) {
122
+ selectRow(e);
123
+ }
124
+ didSelectOnPointer = false;
125
+
126
+ if (!didActionOnPointer) {
127
+ runRowAction(p, onRowAction);
128
+ }
129
+ didActionOnPointer = false;
130
+ };
131
+
132
+ const onDblClick = (e: MouseEvent) => {
133
+ const s = state();
134
+ const p = props();
135
+
136
+ if (isDisabled() || !p.href || s.selectionBehavior !== "replace") return;
137
+
138
+ activateLink(e);
139
+ };
140
+
73
141
  const onKeyDown = (e: KeyboardEvent) => {
74
142
  const s = state();
75
143
  const p = props();
76
144
 
77
145
  if (isDisabled()) return;
78
146
 
79
- if (e.key === 'Enter' || e.key === ' ') {
147
+ if (e.key === "Enter") {
80
148
  e.preventDefault();
81
149
 
82
150
  // Get table metadata for actions
83
151
  const tableData = getTableData(s);
84
152
  const onRowAction = tableData?.actions.onRowAction;
85
153
 
154
+ if (p.href) {
155
+ activateLink(e);
156
+ return;
157
+ }
158
+
86
159
  // Handle selection
87
- if (s.selectionMode !== 'none') {
88
- s.toggleSelection(p.node.key);
160
+ if (s.selectionMode !== "none") {
161
+ selectRow(e);
89
162
  }
90
163
 
91
164
  // Call action handler
@@ -97,6 +170,24 @@ export function createTableRow<T extends object>(
97
170
  p.onAction();
98
171
  }
99
172
  }
173
+
174
+ if (e.key === " " || e.key === "Space" || e.key === "Spacebar") {
175
+ e.preventDefault();
176
+
177
+ if (p.href && s.selectionMode !== "none") {
178
+ selectRow(e, s.selectionBehavior === "replace");
179
+ return;
180
+ }
181
+
182
+ if (p.href) {
183
+ activateLink(e);
184
+ return;
185
+ }
186
+
187
+ if (s.selectionMode !== "none") {
188
+ selectRow(e);
189
+ }
190
+ }
100
191
  };
101
192
 
102
193
  const onFocus = () => {
@@ -105,11 +196,39 @@ export function createTableRow<T extends object>(
105
196
  s.setFocusedKey(p.node.key);
106
197
  };
107
198
 
108
- const onPointerDown = () => {
109
- setIsPressed(true);
199
+ const onPointerDown = (e: PointerEvent) => {
200
+ if (isInteractive() && !isDisabled()) {
201
+ setIsPressed(true);
202
+ }
203
+ const s = state();
204
+ const tableData = getTableData(s);
205
+ if (s.selectionMode !== "none" && !tableData?.shouldSelectOnPressUp && !isDisabled()) {
206
+ selectRow(e);
207
+ didSelectOnPointer = true;
208
+ }
110
209
  };
111
210
 
112
- const onPointerUp = () => {
211
+ const onPointerUp = (e: PointerEvent) => {
212
+ const s = state();
213
+ const p = props();
214
+ const tableData = getTableData(s);
215
+ if (s.selectionMode !== "none" && tableData?.shouldSelectOnPressUp && !isDisabled()) {
216
+ selectRow(e);
217
+ didSelectOnPointer = true;
218
+ }
219
+ if (
220
+ s.selectionMode === "none" &&
221
+ tableData?.shouldSelectOnPressUp &&
222
+ !isDisabled() &&
223
+ !isFromInteractiveElement(e)
224
+ ) {
225
+ if (p.href) {
226
+ activateLink(e);
227
+ } else {
228
+ runRowAction(p, tableData?.actions.onRowAction);
229
+ }
230
+ didActionOnPointer = true;
231
+ }
113
232
  setIsPressed(false);
114
233
  };
115
234
 
@@ -119,11 +238,12 @@ export function createTableRow<T extends object>(
119
238
  const node = p.node;
120
239
 
121
240
  const baseProps: Record<string, unknown> = {
122
- role: 'row',
123
- 'aria-selected': s.selectionMode !== 'none' ? isSelected() : undefined,
124
- 'aria-disabled': isDisabled() || undefined,
241
+ role: "row",
242
+ "aria-selected": s.selectionMode !== "none" ? isSelected() : undefined,
243
+ "aria-disabled": isDisabled() || undefined,
125
244
  tabIndex: isFocused() ? 0 : -1,
126
245
  onClick,
246
+ onDblClick,
127
247
  onKeyDown,
128
248
  onFocus,
129
249
  onPointerDown,
@@ -132,7 +252,7 @@ export function createTableRow<T extends object>(
132
252
 
133
253
  // Add aria-rowindex for virtualized tables
134
254
  if (p.isVirtualized && node.rowIndex != null) {
135
- baseProps['aria-rowindex'] = node.rowIndex + 1; // 1-based
255
+ baseProps["aria-rowindex"] = node.rowIndex + 1; // 1-based
136
256
  }
137
257
 
138
258
  return baseProps as JSX.HTMLAttributes<HTMLTableRowElement>;
@@ -3,22 +3,20 @@
3
3
  * Based on @react-aria/grid/useTableRowGroup.
4
4
  */
5
5
 
6
- import { createMemo, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import type { AriaTableRowGroupProps, TableRowGroupAria } from './types';
6
+ import { createMemo, type Accessor } from "solid-js";
7
+ import type { JSX } from "solid-js";
8
+ import type { AriaTableRowGroupProps, TableRowGroupAria } from "./types";
9
9
 
10
10
  /**
11
11
  * Creates accessibility props for a table row group (thead, tbody, tfoot).
12
12
  */
13
- export function createTableRowGroup(
14
- props: Accessor<AriaTableRowGroupProps>
15
- ): TableRowGroupAria {
13
+ export function createTableRowGroup(props: Accessor<AriaTableRowGroupProps>): TableRowGroupAria {
16
14
  const rowGroupProps = createMemo(() => {
17
15
  // Access props for reactivity tracking, even though not currently used
18
16
  void props();
19
17
 
20
18
  const baseProps: Record<string, unknown> = {
21
- role: 'rowgroup',
19
+ role: "rowgroup",
22
20
  };
23
21
 
24
22
  return baseProps as JSX.HTMLAttributes<HTMLTableSectionElement>;
@@ -3,20 +3,20 @@
3
3
  * Based on @react-aria/table/useTableSelectAllCheckbox.
4
4
  */
5
5
 
6
- import { createMemo, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import type { TableState, TableCollection } from '@proyecto-viviana/solid-stately';
9
- import type { TableSelectAllCheckboxAria } from './types';
6
+ import { createMemo, type Accessor } from "solid-js";
7
+ import type { JSX } from "solid-js";
8
+ import type { TableState, TableCollection } from "@proyecto-viviana/solid-stately";
9
+ import type { TableSelectAllCheckboxAria } from "./types";
10
10
 
11
11
  /**
12
12
  * Creates accessibility props for a table select-all checkbox.
13
13
  */
14
14
  export function createTableSelectAllCheckbox<T extends object>(
15
- state: Accessor<TableState<T, TableCollection<T>>>
15
+ state: Accessor<TableState<T, TableCollection<T>>>,
16
16
  ): TableSelectAllCheckboxAria {
17
17
  const isSelectAll = createMemo(() => {
18
18
  const s = state();
19
- return s.selectedKeys === 'all';
19
+ return s.selectedKeys === "all";
20
20
  });
21
21
 
22
22
  const isEmpty = createMemo(() => {
@@ -27,14 +27,14 @@ export function createTableSelectAllCheckbox<T extends object>(
27
27
  const isIndeterminate = createMemo(() => {
28
28
  const s = state();
29
29
  const selectedKeys = s.selectedKeys;
30
- if (selectedKeys === 'all') return false;
30
+ if (selectedKeys === "all") return false;
31
31
  if (selectedKeys.size === 0) return false;
32
32
  return selectedKeys.size < s.collection.size;
33
33
  });
34
34
 
35
35
  const isDisabled = createMemo(() => {
36
36
  const s = state();
37
- return s.selectionMode !== 'multiple' || isEmpty();
37
+ return s.selectionMode !== "multiple" || isEmpty();
38
38
  });
39
39
 
40
40
  const onChange = () => {
@@ -48,18 +48,19 @@ export function createTableSelectAllCheckbox<T extends object>(
48
48
  const s = state();
49
49
 
50
50
  const baseProps: Record<string, unknown> = {
51
- type: 'checkbox',
51
+ type: "checkbox",
52
52
  checked: isSelectAll(),
53
53
  disabled: isDisabled(),
54
54
  onChange,
55
- 'aria-label': s.selectionMode === 'single' ? 'Select' : 'Select all',
55
+ "aria-label": s.selectionMode === "single" ? "Select" : "Select All",
56
56
  };
57
57
 
58
58
  // Handle indeterminate state
59
59
  // Note: indeterminate is not a standard HTML attribute, it must be set via JavaScript
60
60
  // The component using this should handle this separately
61
61
  if (isIndeterminate()) {
62
- baseProps['data-indeterminate'] = 'true';
62
+ baseProps["data-indeterminate"] = "true";
63
+ baseProps["aria-checked"] = "mixed";
63
64
  }
64
65
 
65
66
  return baseProps as JSX.InputHTMLAttributes<HTMLInputElement>;
@@ -3,18 +3,18 @@
3
3
  * Based on @react-aria/table/useTableSelectionCheckbox.
4
4
  */
5
5
 
6
- import { createMemo, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import { createId } from '@proyecto-viviana/solid-stately';
9
- import type { TableState, TableCollection } from '@proyecto-viviana/solid-stately';
10
- import type { AriaTableSelectionCheckboxProps, TableSelectionCheckboxAria } from './types';
6
+ import { createMemo, type Accessor } from "solid-js";
7
+ import type { JSX } from "solid-js";
8
+ import { createId } from "@proyecto-viviana/solid-stately";
9
+ import type { TableState, TableCollection } from "@proyecto-viviana/solid-stately";
10
+ import type { AriaTableSelectionCheckboxProps, TableSelectionCheckboxAria } from "./types";
11
11
 
12
12
  /**
13
13
  * Creates accessibility props for a table row selection checkbox.
14
14
  */
15
15
  export function createTableSelectionCheckbox<T extends object>(
16
16
  props: Accessor<AriaTableSelectionCheckboxProps>,
17
- state: Accessor<TableState<T, TableCollection<T>>>
17
+ state: Accessor<TableState<T, TableCollection<T>>>,
18
18
  ): TableSelectionCheckboxAria {
19
19
  const checkboxId = createId();
20
20
 
@@ -41,11 +41,11 @@ export function createTableSelectionCheckbox<T extends object>(
41
41
  const checkboxProps = createMemo(() => {
42
42
  const baseProps: Record<string, unknown> = {
43
43
  id: checkboxId,
44
- type: 'checkbox',
44
+ type: "checkbox",
45
45
  checked: isSelected(),
46
46
  disabled: isDisabled(),
47
47
  onChange,
48
- 'aria-label': 'Select',
48
+ "aria-label": "Select",
49
49
  };
50
50
 
51
51
  return baseProps as JSX.InputHTMLAttributes<HTMLInputElement>;
@@ -3,14 +3,15 @@
3
3
  * Based on @react-aria/table.
4
4
  */
5
5
 
6
- export { createTable, getTableData } from './createTable';
7
- export { createTableHeaderRow } from './createTableHeaderRow';
8
- export { createTableColumnHeader } from './createTableColumnHeader';
9
- export { createTableRow } from './createTableRow';
10
- export { createTableCell } from './createTableCell';
11
- export { createTableRowGroup } from './createTableRowGroup';
12
- export { createTableSelectionCheckbox } from './createTableSelectionCheckbox';
13
- export { createTableSelectAllCheckbox } from './createTableSelectAllCheckbox';
6
+ export { createTable, getTableData } from "./createTable";
7
+ export { createTableHeaderRow } from "./createTableHeaderRow";
8
+ export { createTableColumnHeader } from "./createTableColumnHeader";
9
+ export { createTableRow } from "./createTableRow";
10
+ export { createTableCell } from "./createTableCell";
11
+ export { createTableRowGroup } from "./createTableRowGroup";
12
+ export { createTableSelectionCheckbox } from "./createTableSelectionCheckbox";
13
+ export { createTableSelectAllCheckbox } from "./createTableSelectAllCheckbox";
14
+ export { createTableColumnResize } from "./createTableColumnResize";
14
15
  export type {
15
16
  AriaTableProps,
16
17
  TableAria,
@@ -27,4 +28,8 @@ export type {
27
28
  AriaTableSelectionCheckboxProps,
28
29
  TableSelectionCheckboxAria,
29
30
  TableSelectAllCheckboxAria,
30
- } from './types';
31
+ } from "./types";
32
+ export type {
33
+ CreateTableColumnResizeProps,
34
+ TableColumnResizeResult,
35
+ } from "./createTableColumnResize";
@@ -3,8 +3,8 @@
3
3
  * Based on @react-aria/table types.
4
4
  */
5
5
 
6
- import type { JSX } from 'solid-js';
7
- import type { Key, GridNode } from '@proyecto-viviana/solid-stately';
6
+ import type { JSX } from "solid-js";
7
+ import type { Key, GridNode } from "@proyecto-viviana/solid-stately";
8
8
 
9
9
  /**
10
10
  * Props for the createTable hook.
@@ -13,11 +13,11 @@ export interface AriaTableProps {
13
13
  /** ID for the table element. */
14
14
  id?: string;
15
15
  /** ARIA label for the table. */
16
- 'aria-label'?: string;
16
+ "aria-label"?: string;
17
17
  /** ARIA labelledby for the table. */
18
- 'aria-labelledby'?: string;
18
+ "aria-labelledby"?: string;
19
19
  /** ARIA describedby for the table. */
20
- 'aria-describedby'?: string;
20
+ "aria-describedby"?: string;
21
21
  /** Whether the table uses virtual scrolling. */
22
22
  isVirtualized?: boolean;
23
23
  /** Handler for row actions. */
@@ -26,8 +26,10 @@ export interface AriaTableProps {
26
26
  onCellAction?: (key: Key) => void;
27
27
  /** Whether selection should occur on press up. */
28
28
  shouldSelectOnPressUp?: boolean;
29
+ /** Whether Escape clears selection. */
30
+ escapeKeyBehavior?: "clearSelection" | "none";
29
31
  /** Focus mode: 'row' or 'cell'. */
30
- focusMode?: 'row' | 'cell';
32
+ focusMode?: "row" | "cell";
31
33
  }
32
34
 
33
35
  /**
@@ -84,8 +86,14 @@ export interface AriaTableRowProps {
84
86
  node: GridNode<unknown>;
85
87
  /** Whether the table is virtualized. */
86
88
  isVirtualized?: boolean;
89
+ /** Whether the row is disabled. */
90
+ isDisabled?: boolean;
87
91
  /** Handler for row action. */
88
92
  onAction?: () => void;
93
+ /** Link href for row activation. */
94
+ href?: string;
95
+ /** Handler for link row activation. */
96
+ onLinkAction?: (event: MouseEvent | KeyboardEvent) => void;
89
97
  }
90
98
 
91
99
  /**
@@ -129,7 +137,7 @@ export interface TableCellAria {
129
137
  */
130
138
  export interface AriaTableRowGroupProps {
131
139
  /** The type of row group: 'thead', 'tbody', or 'tfoot'. */
132
- type: 'thead' | 'tbody' | 'tfoot';
140
+ type: "thead" | "tbody" | "tfoot";
133
141
  }
134
142
 
135
143
  /**