@proyecto-viviana/solidaria 0.1.3 → 0.2.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 (580) hide show
  1. package/dist/index.d.ts +6135 -50
  2. package/dist/index.js +485 -1120
  3. package/dist/{index.ssr.js → index.jsx} +89 -143
  4. package/package.json +7 -9
  5. package/dist/autocomplete/createAutocomplete.d.ts +0 -109
  6. package/dist/autocomplete/createAutocomplete.d.ts.map +0 -1
  7. package/dist/autocomplete/index.d.ts +0 -2
  8. package/dist/autocomplete/index.d.ts.map +0 -1
  9. package/dist/breadcrumbs/createBreadcrumbs.d.ts +0 -43
  10. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +0 -1
  11. package/dist/breadcrumbs/index.d.ts +0 -2
  12. package/dist/breadcrumbs/index.d.ts.map +0 -1
  13. package/dist/button/createButton.d.ts +0 -29
  14. package/dist/button/createButton.d.ts.map +0 -1
  15. package/dist/button/createToggleButton.d.ts +0 -41
  16. package/dist/button/createToggleButton.d.ts.map +0 -1
  17. package/dist/button/index.d.ts +0 -5
  18. package/dist/button/index.d.ts.map +0 -1
  19. package/dist/button/types.d.ts +0 -77
  20. package/dist/button/types.d.ts.map +0 -1
  21. package/dist/calendar/createCalendar.d.ts +0 -41
  22. package/dist/calendar/createCalendar.d.ts.map +0 -1
  23. package/dist/calendar/createCalendarCell.d.ts +0 -41
  24. package/dist/calendar/createCalendarCell.d.ts.map +0 -1
  25. package/dist/calendar/createCalendarGrid.d.ts +0 -29
  26. package/dist/calendar/createCalendarGrid.d.ts.map +0 -1
  27. package/dist/calendar/createRangeCalendar.d.ts +0 -39
  28. package/dist/calendar/createRangeCalendar.d.ts.map +0 -1
  29. package/dist/calendar/createRangeCalendarCell.d.ts +0 -45
  30. package/dist/calendar/createRangeCalendarCell.d.ts.map +0 -1
  31. package/dist/calendar/index.d.ts +0 -6
  32. package/dist/calendar/index.d.ts.map +0 -1
  33. package/dist/checkbox/createCheckbox.d.ts +0 -56
  34. package/dist/checkbox/createCheckbox.d.ts.map +0 -1
  35. package/dist/checkbox/createCheckboxGroup.d.ts +0 -53
  36. package/dist/checkbox/createCheckboxGroup.d.ts.map +0 -1
  37. package/dist/checkbox/createCheckboxGroupItem.d.ts +0 -25
  38. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +0 -1
  39. package/dist/checkbox/createCheckboxGroupState.d.ts +0 -71
  40. package/dist/checkbox/createCheckboxGroupState.d.ts.map +0 -1
  41. package/dist/checkbox/index.d.ts +0 -9
  42. package/dist/checkbox/index.d.ts.map +0 -1
  43. package/dist/color/createColorArea.d.ts +0 -13
  44. package/dist/color/createColorArea.d.ts.map +0 -1
  45. package/dist/color/createColorField.d.ts +0 -13
  46. package/dist/color/createColorField.d.ts.map +0 -1
  47. package/dist/color/createColorSlider.d.ts +0 -13
  48. package/dist/color/createColorSlider.d.ts.map +0 -1
  49. package/dist/color/createColorSwatch.d.ts +0 -12
  50. package/dist/color/createColorSwatch.d.ts.map +0 -1
  51. package/dist/color/createColorWheel.d.ts +0 -13
  52. package/dist/color/createColorWheel.d.ts.map +0 -1
  53. package/dist/color/index.d.ts +0 -10
  54. package/dist/color/index.d.ts.map +0 -1
  55. package/dist/color/types.d.ts +0 -106
  56. package/dist/color/types.d.ts.map +0 -1
  57. package/dist/combobox/createComboBox.d.ts +0 -77
  58. package/dist/combobox/createComboBox.d.ts.map +0 -1
  59. package/dist/combobox/index.d.ts +0 -2
  60. package/dist/combobox/index.d.ts.map +0 -1
  61. package/dist/combobox/intl/index.d.ts +0 -14
  62. package/dist/combobox/intl/index.d.ts.map +0 -1
  63. package/dist/datepicker/createDateField.d.ts +0 -51
  64. package/dist/datepicker/createDateField.d.ts.map +0 -1
  65. package/dist/datepicker/createDatePicker.d.ts +0 -65
  66. package/dist/datepicker/createDatePicker.d.ts.map +0 -1
  67. package/dist/datepicker/createDateSegment.d.ts +0 -29
  68. package/dist/datepicker/createDateSegment.d.ts.map +0 -1
  69. package/dist/datepicker/createTimeField.d.ts +0 -51
  70. package/dist/datepicker/createTimeField.d.ts.map +0 -1
  71. package/dist/datepicker/index.d.ts +0 -5
  72. package/dist/datepicker/index.d.ts.map +0 -1
  73. package/dist/dialog/createDialog.d.ts +0 -25
  74. package/dist/dialog/createDialog.d.ts.map +0 -1
  75. package/dist/dialog/index.d.ts +0 -3
  76. package/dist/dialog/index.d.ts.map +0 -1
  77. package/dist/dialog/types.d.ts +0 -18
  78. package/dist/dialog/types.d.ts.map +0 -1
  79. package/dist/disclosure/createDisclosure.d.ts +0 -52
  80. package/dist/disclosure/createDisclosure.d.ts.map +0 -1
  81. package/dist/disclosure/createDisclosureGroup.d.ts +0 -39
  82. package/dist/disclosure/createDisclosureGroup.d.ts.map +0 -1
  83. package/dist/disclosure/index.d.ts +0 -3
  84. package/dist/disclosure/index.d.ts.map +0 -1
  85. package/dist/dnd/createDrag.d.ts +0 -16
  86. package/dist/dnd/createDrag.d.ts.map +0 -1
  87. package/dist/dnd/createDraggableCollection.d.ts +0 -27
  88. package/dist/dnd/createDraggableCollection.d.ts.map +0 -1
  89. package/dist/dnd/createDraggableItem.d.ts +0 -37
  90. package/dist/dnd/createDraggableItem.d.ts.map +0 -1
  91. package/dist/dnd/createDrop.d.ts +0 -16
  92. package/dist/dnd/createDrop.d.ts.map +0 -1
  93. package/dist/dnd/createDroppableCollection.d.ts +0 -76
  94. package/dist/dnd/createDroppableCollection.d.ts.map +0 -1
  95. package/dist/dnd/createDroppableItem.d.ts +0 -31
  96. package/dist/dnd/createDroppableItem.d.ts.map +0 -1
  97. package/dist/dnd/index.d.ts +0 -18
  98. package/dist/dnd/index.d.ts.map +0 -1
  99. package/dist/dnd/types.d.ts +0 -66
  100. package/dist/dnd/types.d.ts.map +0 -1
  101. package/dist/dnd/utils.d.ts +0 -57
  102. package/dist/dnd/utils.d.ts.map +0 -1
  103. package/dist/focus/FocusScope.d.ts +0 -57
  104. package/dist/focus/FocusScope.d.ts.map +0 -1
  105. package/dist/focus/createAutoFocus.d.ts +0 -120
  106. package/dist/focus/createAutoFocus.d.ts.map +0 -1
  107. package/dist/focus/createFocusRestore.d.ts +0 -116
  108. package/dist/focus/createFocusRestore.d.ts.map +0 -1
  109. package/dist/focus/createVirtualFocus.d.ts +0 -170
  110. package/dist/focus/createVirtualFocus.d.ts.map +0 -1
  111. package/dist/focus/index.d.ts +0 -5
  112. package/dist/focus/index.d.ts.map +0 -1
  113. package/dist/form/createFormReset.d.ts +0 -27
  114. package/dist/form/createFormReset.d.ts.map +0 -1
  115. package/dist/form/createFormValidation.d.ts +0 -56
  116. package/dist/form/createFormValidation.d.ts.map +0 -1
  117. package/dist/form/index.d.ts +0 -3
  118. package/dist/form/index.d.ts.map +0 -1
  119. package/dist/grid/GridKeyboardDelegate.d.ts +0 -79
  120. package/dist/grid/GridKeyboardDelegate.d.ts.map +0 -1
  121. package/dist/grid/createGrid.d.ts +0 -24
  122. package/dist/grid/createGrid.d.ts.map +0 -1
  123. package/dist/grid/createGridCell.d.ts +0 -12
  124. package/dist/grid/createGridCell.d.ts.map +0 -1
  125. package/dist/grid/createGridRow.d.ts +0 -12
  126. package/dist/grid/createGridRow.d.ts.map +0 -1
  127. package/dist/grid/index.d.ts +0 -10
  128. package/dist/grid/index.d.ts.map +0 -1
  129. package/dist/grid/types.d.ts +0 -126
  130. package/dist/grid/types.d.ts.map +0 -1
  131. package/dist/gridlist/createGridList.d.ts +0 -28
  132. package/dist/gridlist/createGridList.d.ts.map +0 -1
  133. package/dist/gridlist/createGridListItem.d.ts +0 -12
  134. package/dist/gridlist/createGridListItem.d.ts.map +0 -1
  135. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +0 -12
  136. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +0 -1
  137. package/dist/gridlist/index.d.ts +0 -8
  138. package/dist/gridlist/index.d.ts.map +0 -1
  139. package/dist/gridlist/types.d.ts +0 -75
  140. package/dist/gridlist/types.d.ts.map +0 -1
  141. package/dist/i18n/NumberFormatter.d.ts +0 -43
  142. package/dist/i18n/NumberFormatter.d.ts.map +0 -1
  143. package/dist/i18n/createCollator.d.ts +0 -41
  144. package/dist/i18n/createCollator.d.ts.map +0 -1
  145. package/dist/i18n/createDateFormatter.d.ts +0 -45
  146. package/dist/i18n/createDateFormatter.d.ts.map +0 -1
  147. package/dist/i18n/createFilter.d.ts +0 -57
  148. package/dist/i18n/createFilter.d.ts.map +0 -1
  149. package/dist/i18n/createNumberFormatter.d.ts +0 -43
  150. package/dist/i18n/createNumberFormatter.d.ts.map +0 -1
  151. package/dist/i18n/createStringFormatter.d.ts +0 -42
  152. package/dist/i18n/createStringFormatter.d.ts.map +0 -1
  153. package/dist/i18n/index.d.ts +0 -9
  154. package/dist/i18n/index.d.ts.map +0 -1
  155. package/dist/i18n/locale.d.ts +0 -66
  156. package/dist/i18n/locale.d.ts.map +0 -1
  157. package/dist/i18n/utils.d.ts +0 -17
  158. package/dist/i18n/utils.d.ts.map +0 -1
  159. package/dist/index.d.ts.map +0 -1
  160. package/dist/index.js.map +0 -7
  161. package/dist/index.ssr.js.map +0 -7
  162. package/dist/interactions/FocusableProvider.d.ts +0 -26
  163. package/dist/interactions/FocusableProvider.d.ts.map +0 -1
  164. package/dist/interactions/PressEvent.d.ts +0 -73
  165. package/dist/interactions/PressEvent.d.ts.map +0 -1
  166. package/dist/interactions/createFocus.d.ts +0 -31
  167. package/dist/interactions/createFocus.d.ts.map +0 -1
  168. package/dist/interactions/createFocusRing.d.ts +0 -37
  169. package/dist/interactions/createFocusRing.d.ts.map +0 -1
  170. package/dist/interactions/createFocusWithin.d.ts +0 -27
  171. package/dist/interactions/createFocusWithin.d.ts.map +0 -1
  172. package/dist/interactions/createFocusable.d.ts +0 -65
  173. package/dist/interactions/createFocusable.d.ts.map +0 -1
  174. package/dist/interactions/createHover.d.ts +0 -43
  175. package/dist/interactions/createHover.d.ts.map +0 -1
  176. package/dist/interactions/createInteractionModality.d.ts +0 -73
  177. package/dist/interactions/createInteractionModality.d.ts.map +0 -1
  178. package/dist/interactions/createKeyboard.d.ts +0 -35
  179. package/dist/interactions/createKeyboard.d.ts.map +0 -1
  180. package/dist/interactions/createLongPress.d.ts +0 -63
  181. package/dist/interactions/createLongPress.d.ts.map +0 -1
  182. package/dist/interactions/createMove.d.ts +0 -40
  183. package/dist/interactions/createMove.d.ts.map +0 -1
  184. package/dist/interactions/createPress.d.ts +0 -55
  185. package/dist/interactions/createPress.d.ts.map +0 -1
  186. package/dist/interactions/index.d.ts +0 -13
  187. package/dist/interactions/index.d.ts.map +0 -1
  188. package/dist/label/createField.d.ts +0 -51
  189. package/dist/label/createField.d.ts.map +0 -1
  190. package/dist/label/createLabel.d.ts +0 -49
  191. package/dist/label/createLabel.d.ts.map +0 -1
  192. package/dist/label/createLabels.d.ts +0 -16
  193. package/dist/label/createLabels.d.ts.map +0 -1
  194. package/dist/label/index.d.ts +0 -6
  195. package/dist/label/index.d.ts.map +0 -1
  196. package/dist/landmark/createLandmark.d.ts +0 -79
  197. package/dist/landmark/createLandmark.d.ts.map +0 -1
  198. package/dist/landmark/index.d.ts +0 -2
  199. package/dist/landmark/index.d.ts.map +0 -1
  200. package/dist/link/createLink.d.ts +0 -65
  201. package/dist/link/createLink.d.ts.map +0 -1
  202. package/dist/link/index.d.ts +0 -2
  203. package/dist/link/index.d.ts.map +0 -1
  204. package/dist/listbox/createListBox.d.ts +0 -58
  205. package/dist/listbox/createListBox.d.ts.map +0 -1
  206. package/dist/listbox/createOption.d.ts +0 -42
  207. package/dist/listbox/createOption.d.ts.map +0 -1
  208. package/dist/listbox/index.d.ts +0 -3
  209. package/dist/listbox/index.d.ts.map +0 -1
  210. package/dist/live-announcer/announce.d.ts +0 -113
  211. package/dist/live-announcer/announce.d.ts.map +0 -1
  212. package/dist/live-announcer/index.d.ts +0 -2
  213. package/dist/live-announcer/index.d.ts.map +0 -1
  214. package/dist/menu/createMenu.d.ts +0 -57
  215. package/dist/menu/createMenu.d.ts.map +0 -1
  216. package/dist/menu/createMenuItem.d.ts +0 -42
  217. package/dist/menu/createMenuItem.d.ts.map +0 -1
  218. package/dist/menu/createMenuTrigger.d.ts +0 -29
  219. package/dist/menu/createMenuTrigger.d.ts.map +0 -1
  220. package/dist/menu/index.d.ts +0 -4
  221. package/dist/menu/index.d.ts.map +0 -1
  222. package/dist/meter/createMeter.d.ts +0 -44
  223. package/dist/meter/createMeter.d.ts.map +0 -1
  224. package/dist/meter/index.d.ts +0 -2
  225. package/dist/meter/index.d.ts.map +0 -1
  226. package/dist/numberfield/createNumberField.d.ts +0 -56
  227. package/dist/numberfield/createNumberField.d.ts.map +0 -1
  228. package/dist/numberfield/index.d.ts +0 -2
  229. package/dist/numberfield/index.d.ts.map +0 -1
  230. package/dist/overlays/ariaHideOutside.d.ts +0 -25
  231. package/dist/overlays/ariaHideOutside.d.ts.map +0 -1
  232. package/dist/overlays/createInteractOutside.d.ts +0 -20
  233. package/dist/overlays/createInteractOutside.d.ts.map +0 -1
  234. package/dist/overlays/createModal.d.ts +0 -70
  235. package/dist/overlays/createModal.d.ts.map +0 -1
  236. package/dist/overlays/createOverlay.d.ts +0 -43
  237. package/dist/overlays/createOverlay.d.ts.map +0 -1
  238. package/dist/overlays/createOverlayTrigger.d.ts +0 -30
  239. package/dist/overlays/createOverlayTrigger.d.ts.map +0 -1
  240. package/dist/overlays/createPreventScroll.d.ts +0 -15
  241. package/dist/overlays/createPreventScroll.d.ts.map +0 -1
  242. package/dist/overlays/index.d.ts +0 -7
  243. package/dist/overlays/index.d.ts.map +0 -1
  244. package/dist/popover/calculatePosition.d.ts +0 -67
  245. package/dist/popover/calculatePosition.d.ts.map +0 -1
  246. package/dist/popover/createOverlayPosition.d.ts +0 -109
  247. package/dist/popover/createOverlayPosition.d.ts.map +0 -1
  248. package/dist/popover/createPopover.d.ts +0 -88
  249. package/dist/popover/createPopover.d.ts.map +0 -1
  250. package/dist/popover/index.d.ts +0 -4
  251. package/dist/popover/index.d.ts.map +0 -1
  252. package/dist/progress/createProgressBar.d.ts +0 -47
  253. package/dist/progress/createProgressBar.d.ts.map +0 -1
  254. package/dist/progress/index.d.ts +0 -2
  255. package/dist/progress/index.d.ts.map +0 -1
  256. package/dist/radio/createRadio.d.ts +0 -68
  257. package/dist/radio/createRadio.d.ts.map +0 -1
  258. package/dist/radio/createRadioGroup.d.ts +0 -85
  259. package/dist/radio/createRadioGroup.d.ts.map +0 -1
  260. package/dist/radio/createRadioGroupState.d.ts +0 -77
  261. package/dist/radio/createRadioGroupState.d.ts.map +0 -1
  262. package/dist/radio/index.d.ts +0 -4
  263. package/dist/radio/index.d.ts.map +0 -1
  264. package/dist/searchfield/createSearchField.d.ts +0 -32
  265. package/dist/searchfield/createSearchField.d.ts.map +0 -1
  266. package/dist/searchfield/index.d.ts +0 -3
  267. package/dist/searchfield/index.d.ts.map +0 -1
  268. package/dist/select/createHiddenSelect.d.ts +0 -69
  269. package/dist/select/createHiddenSelect.d.ts.map +0 -1
  270. package/dist/select/createSelect.d.ts +0 -70
  271. package/dist/select/createSelect.d.ts.map +0 -1
  272. package/dist/select/index.d.ts +0 -3
  273. package/dist/select/index.d.ts.map +0 -1
  274. package/dist/selection/createTypeSelect.d.ts +0 -43
  275. package/dist/selection/createTypeSelect.d.ts.map +0 -1
  276. package/dist/selection/index.d.ts +0 -6
  277. package/dist/selection/index.d.ts.map +0 -1
  278. package/dist/separator/createSeparator.d.ts +0 -38
  279. package/dist/separator/createSeparator.d.ts.map +0 -1
  280. package/dist/separator/index.d.ts +0 -2
  281. package/dist/separator/index.d.ts.map +0 -1
  282. package/dist/slider/createSlider.d.ts +0 -43
  283. package/dist/slider/createSlider.d.ts.map +0 -1
  284. package/dist/slider/index.d.ts +0 -3
  285. package/dist/slider/index.d.ts.map +0 -1
  286. package/dist/ssr/index.d.ts +0 -221
  287. package/dist/ssr/index.d.ts.map +0 -1
  288. package/dist/switch/createSwitch.d.ts +0 -34
  289. package/dist/switch/createSwitch.d.ts.map +0 -1
  290. package/dist/switch/index.d.ts +0 -2
  291. package/dist/switch/index.d.ts.map +0 -1
  292. package/dist/table/createTable.d.ts +0 -24
  293. package/dist/table/createTable.d.ts.map +0 -1
  294. package/dist/table/createTableCell.d.ts +0 -12
  295. package/dist/table/createTableCell.d.ts.map +0 -1
  296. package/dist/table/createTableColumnHeader.d.ts +0 -12
  297. package/dist/table/createTableColumnHeader.d.ts.map +0 -1
  298. package/dist/table/createTableHeaderRow.d.ts +0 -12
  299. package/dist/table/createTableHeaderRow.d.ts.map +0 -1
  300. package/dist/table/createTableRow.d.ts +0 -12
  301. package/dist/table/createTableRow.d.ts.map +0 -1
  302. package/dist/table/createTableRowGroup.d.ts +0 -11
  303. package/dist/table/createTableRowGroup.d.ts.map +0 -1
  304. package/dist/table/createTableSelectAllCheckbox.d.ts +0 -12
  305. package/dist/table/createTableSelectAllCheckbox.d.ts.map +0 -1
  306. package/dist/table/createTableSelectionCheckbox.d.ts +0 -12
  307. package/dist/table/createTableSelectionCheckbox.d.ts.map +0 -1
  308. package/dist/table/index.d.ts +0 -14
  309. package/dist/table/index.d.ts.map +0 -1
  310. package/dist/table/types.d.ts +0 -150
  311. package/dist/table/types.d.ts.map +0 -1
  312. package/dist/tabs/createTabs.d.ts +0 -123
  313. package/dist/tabs/createTabs.d.ts.map +0 -1
  314. package/dist/tabs/index.d.ts +0 -2
  315. package/dist/tabs/index.d.ts.map +0 -1
  316. package/dist/tag/createTag.d.ts +0 -42
  317. package/dist/tag/createTag.d.ts.map +0 -1
  318. package/dist/tag/createTagGroup.d.ts +0 -54
  319. package/dist/tag/createTagGroup.d.ts.map +0 -1
  320. package/dist/tag/index.d.ts +0 -3
  321. package/dist/tag/index.d.ts.map +0 -1
  322. package/dist/textfield/createTextField.d.ts +0 -73
  323. package/dist/textfield/createTextField.d.ts.map +0 -1
  324. package/dist/textfield/index.d.ts +0 -2
  325. package/dist/textfield/index.d.ts.map +0 -1
  326. package/dist/toast/createToast.d.ts +0 -58
  327. package/dist/toast/createToast.d.ts.map +0 -1
  328. package/dist/toast/createToastRegion.d.ts +0 -49
  329. package/dist/toast/createToastRegion.d.ts.map +0 -1
  330. package/dist/toast/index.d.ts +0 -3
  331. package/dist/toast/index.d.ts.map +0 -1
  332. package/dist/toggle/createToggle.d.ts +0 -94
  333. package/dist/toggle/createToggle.d.ts.map +0 -1
  334. package/dist/toggle/createToggleState.d.ts +0 -34
  335. package/dist/toggle/createToggleState.d.ts.map +0 -1
  336. package/dist/toggle/index.d.ts +0 -5
  337. package/dist/toggle/index.d.ts.map +0 -1
  338. package/dist/toolbar/createToolbar.d.ts +0 -49
  339. package/dist/toolbar/createToolbar.d.ts.map +0 -1
  340. package/dist/toolbar/index.d.ts +0 -2
  341. package/dist/toolbar/index.d.ts.map +0 -1
  342. package/dist/tooltip/createTooltip.d.ts +0 -48
  343. package/dist/tooltip/createTooltip.d.ts.map +0 -1
  344. package/dist/tooltip/createTooltipTrigger.d.ts +0 -64
  345. package/dist/tooltip/createTooltipTrigger.d.ts.map +0 -1
  346. package/dist/tooltip/index.d.ts +0 -3
  347. package/dist/tooltip/index.d.ts.map +0 -1
  348. package/dist/tree/createTree.d.ts +0 -28
  349. package/dist/tree/createTree.d.ts.map +0 -1
  350. package/dist/tree/createTreeItem.d.ts +0 -12
  351. package/dist/tree/createTreeItem.d.ts.map +0 -1
  352. package/dist/tree/createTreeSelectionCheckbox.d.ts +0 -12
  353. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +0 -1
  354. package/dist/tree/index.d.ts +0 -8
  355. package/dist/tree/index.d.ts.map +0 -1
  356. package/dist/tree/types.d.ts +0 -81
  357. package/dist/tree/types.d.ts.map +0 -1
  358. package/dist/utils/createDescription.d.ts +0 -56
  359. package/dist/utils/createDescription.d.ts.map +0 -1
  360. package/dist/utils/dom.d.ts +0 -68
  361. package/dist/utils/dom.d.ts.map +0 -1
  362. package/dist/utils/env.d.ts +0 -18
  363. package/dist/utils/env.d.ts.map +0 -1
  364. package/dist/utils/events.d.ts +0 -29
  365. package/dist/utils/events.d.ts.map +0 -1
  366. package/dist/utils/filterDOMProps.d.ts +0 -29
  367. package/dist/utils/filterDOMProps.d.ts.map +0 -1
  368. package/dist/utils/focus.d.ts +0 -20
  369. package/dist/utils/focus.d.ts.map +0 -1
  370. package/dist/utils/geometry.d.ts +0 -40
  371. package/dist/utils/geometry.d.ts.map +0 -1
  372. package/dist/utils/globalListeners.d.ts +0 -36
  373. package/dist/utils/globalListeners.d.ts.map +0 -1
  374. package/dist/utils/index.d.ts +0 -13
  375. package/dist/utils/index.d.ts.map +0 -1
  376. package/dist/utils/mergeProps.d.ts +0 -11
  377. package/dist/utils/mergeProps.d.ts.map +0 -1
  378. package/dist/utils/platform.d.ts +0 -14
  379. package/dist/utils/platform.d.ts.map +0 -1
  380. package/dist/utils/reactivity.d.ts +0 -28
  381. package/dist/utils/reactivity.d.ts.map +0 -1
  382. package/dist/utils/textSelection.d.ts +0 -19
  383. package/dist/utils/textSelection.d.ts.map +0 -1
  384. package/dist/visually-hidden/createVisuallyHidden.d.ts +0 -60
  385. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +0 -1
  386. package/dist/visually-hidden/index.d.ts +0 -2
  387. package/dist/visually-hidden/index.d.ts.map +0 -1
  388. package/src/autocomplete/createAutocomplete.ts +0 -341
  389. package/src/autocomplete/index.ts +0 -9
  390. package/src/breadcrumbs/createBreadcrumbs.ts +0 -196
  391. package/src/breadcrumbs/index.ts +0 -8
  392. package/src/button/createButton.ts +0 -142
  393. package/src/button/createToggleButton.ts +0 -101
  394. package/src/button/index.ts +0 -4
  395. package/src/button/types.ts +0 -78
  396. package/src/calendar/createCalendar.ts +0 -138
  397. package/src/calendar/createCalendarCell.ts +0 -187
  398. package/src/calendar/createCalendarGrid.ts +0 -140
  399. package/src/calendar/createRangeCalendar.ts +0 -136
  400. package/src/calendar/createRangeCalendarCell.ts +0 -186
  401. package/src/calendar/index.ts +0 -34
  402. package/src/checkbox/createCheckbox.ts +0 -135
  403. package/src/checkbox/createCheckboxGroup.ts +0 -137
  404. package/src/checkbox/createCheckboxGroupItem.ts +0 -117
  405. package/src/checkbox/createCheckboxGroupState.ts +0 -193
  406. package/src/checkbox/index.ts +0 -13
  407. package/src/color/createColorArea.ts +0 -314
  408. package/src/color/createColorField.ts +0 -137
  409. package/src/color/createColorSlider.ts +0 -197
  410. package/src/color/createColorSwatch.ts +0 -40
  411. package/src/color/createColorWheel.ts +0 -208
  412. package/src/color/index.ts +0 -24
  413. package/src/color/types.ts +0 -116
  414. package/src/combobox/createComboBox.ts +0 -647
  415. package/src/combobox/index.ts +0 -6
  416. package/src/combobox/intl/en-US.json +0 -7
  417. package/src/combobox/intl/es-ES.json +0 -7
  418. package/src/combobox/intl/index.ts +0 -23
  419. package/src/datepicker/createDateField.ts +0 -154
  420. package/src/datepicker/createDatePicker.ts +0 -206
  421. package/src/datepicker/createDateSegment.ts +0 -229
  422. package/src/datepicker/createTimeField.ts +0 -154
  423. package/src/datepicker/index.ts +0 -28
  424. package/src/dialog/createDialog.ts +0 -120
  425. package/src/dialog/index.ts +0 -2
  426. package/src/dialog/types.ts +0 -19
  427. package/src/disclosure/createDisclosure.ts +0 -131
  428. package/src/disclosure/createDisclosureGroup.ts +0 -62
  429. package/src/disclosure/index.ts +0 -11
  430. package/src/dnd/createDrag.ts +0 -209
  431. package/src/dnd/createDraggableCollection.ts +0 -63
  432. package/src/dnd/createDraggableItem.ts +0 -243
  433. package/src/dnd/createDrop.ts +0 -321
  434. package/src/dnd/createDroppableCollection.ts +0 -293
  435. package/src/dnd/createDroppableItem.ts +0 -213
  436. package/src/dnd/index.ts +0 -47
  437. package/src/dnd/types.ts +0 -89
  438. package/src/dnd/utils.ts +0 -294
  439. package/src/focus/FocusScope.tsx +0 -408
  440. package/src/focus/createAutoFocus.ts +0 -321
  441. package/src/focus/createFocusRestore.ts +0 -313
  442. package/src/focus/createVirtualFocus.ts +0 -396
  443. package/src/focus/index.ts +0 -35
  444. package/src/form/createFormReset.ts +0 -51
  445. package/src/form/createFormValidation.ts +0 -224
  446. package/src/form/index.ts +0 -11
  447. package/src/grid/GridKeyboardDelegate.ts +0 -429
  448. package/src/grid/createGrid.ts +0 -261
  449. package/src/grid/createGridCell.ts +0 -182
  450. package/src/grid/createGridRow.ts +0 -153
  451. package/src/grid/index.ts +0 -18
  452. package/src/grid/types.ts +0 -133
  453. package/src/gridlist/createGridList.ts +0 -185
  454. package/src/gridlist/createGridListItem.ts +0 -180
  455. package/src/gridlist/createGridListSelectionCheckbox.ts +0 -59
  456. package/src/gridlist/index.ts +0 -16
  457. package/src/gridlist/types.ts +0 -81
  458. package/src/i18n/NumberFormatter.ts +0 -266
  459. package/src/i18n/createCollator.ts +0 -79
  460. package/src/i18n/createDateFormatter.ts +0 -83
  461. package/src/i18n/createFilter.ts +0 -131
  462. package/src/i18n/createNumberFormatter.ts +0 -52
  463. package/src/i18n/createStringFormatter.ts +0 -87
  464. package/src/i18n/index.ts +0 -40
  465. package/src/i18n/locale.tsx +0 -188
  466. package/src/i18n/utils.ts +0 -99
  467. package/src/index.ts +0 -670
  468. package/src/interactions/FocusableProvider.tsx +0 -44
  469. package/src/interactions/PressEvent.ts +0 -124
  470. package/src/interactions/createFocus.ts +0 -163
  471. package/src/interactions/createFocusRing.ts +0 -89
  472. package/src/interactions/createFocusWithin.ts +0 -206
  473. package/src/interactions/createFocusable.ts +0 -168
  474. package/src/interactions/createHover.ts +0 -254
  475. package/src/interactions/createInteractionModality.ts +0 -424
  476. package/src/interactions/createKeyboard.ts +0 -82
  477. package/src/interactions/createLongPress.ts +0 -174
  478. package/src/interactions/createMove.ts +0 -289
  479. package/src/interactions/createPress.ts +0 -834
  480. package/src/interactions/index.ts +0 -78
  481. package/src/label/createField.ts +0 -145
  482. package/src/label/createLabel.ts +0 -117
  483. package/src/label/createLabels.ts +0 -50
  484. package/src/label/index.ts +0 -19
  485. package/src/landmark/createLandmark.ts +0 -377
  486. package/src/landmark/index.ts +0 -8
  487. package/src/link/createLink.ts +0 -182
  488. package/src/link/index.ts +0 -1
  489. package/src/listbox/createListBox.ts +0 -269
  490. package/src/listbox/createOption.ts +0 -151
  491. package/src/listbox/index.ts +0 -12
  492. package/src/live-announcer/announce.ts +0 -322
  493. package/src/live-announcer/index.ts +0 -9
  494. package/src/menu/createMenu.ts +0 -396
  495. package/src/menu/createMenuItem.ts +0 -149
  496. package/src/menu/createMenuTrigger.ts +0 -88
  497. package/src/menu/index.ts +0 -18
  498. package/src/meter/createMeter.ts +0 -75
  499. package/src/meter/index.ts +0 -1
  500. package/src/numberfield/createNumberField.ts +0 -268
  501. package/src/numberfield/index.ts +0 -5
  502. package/src/overlays/ariaHideOutside.ts +0 -219
  503. package/src/overlays/createInteractOutside.ts +0 -149
  504. package/src/overlays/createModal.tsx +0 -202
  505. package/src/overlays/createOverlay.ts +0 -155
  506. package/src/overlays/createOverlayTrigger.ts +0 -85
  507. package/src/overlays/createPreventScroll.ts +0 -266
  508. package/src/overlays/index.ts +0 -44
  509. package/src/popover/calculatePosition.ts +0 -766
  510. package/src/popover/createOverlayPosition.ts +0 -356
  511. package/src/popover/createPopover.ts +0 -170
  512. package/src/popover/index.ts +0 -24
  513. package/src/progress/createProgressBar.ts +0 -128
  514. package/src/progress/index.ts +0 -5
  515. package/src/radio/createRadio.ts +0 -287
  516. package/src/radio/createRadioGroup.ts +0 -189
  517. package/src/radio/createRadioGroupState.ts +0 -201
  518. package/src/radio/index.ts +0 -23
  519. package/src/searchfield/createSearchField.ts +0 -186
  520. package/src/searchfield/index.ts +0 -2
  521. package/src/select/createHiddenSelect.tsx +0 -236
  522. package/src/select/createSelect.ts +0 -395
  523. package/src/select/index.ts +0 -14
  524. package/src/selection/createTypeSelect.ts +0 -201
  525. package/src/selection/index.ts +0 -6
  526. package/src/separator/createSeparator.ts +0 -82
  527. package/src/separator/index.ts +0 -6
  528. package/src/slider/createSlider.ts +0 -349
  529. package/src/slider/index.ts +0 -2
  530. package/src/ssr/index.tsx +0 -370
  531. package/src/switch/createSwitch.ts +0 -70
  532. package/src/switch/index.ts +0 -1
  533. package/src/table/createTable.ts +0 -526
  534. package/src/table/createTableCell.ts +0 -147
  535. package/src/table/createTableColumnHeader.ts +0 -115
  536. package/src/table/createTableHeaderRow.ts +0 -40
  537. package/src/table/createTableRow.ts +0 -155
  538. package/src/table/createTableRowGroup.ts +0 -32
  539. package/src/table/createTableSelectAllCheckbox.ts +0 -73
  540. package/src/table/createTableSelectionCheckbox.ts +0 -59
  541. package/src/table/index.ts +0 -30
  542. package/src/table/types.ts +0 -165
  543. package/src/tabs/createTabs.ts +0 -472
  544. package/src/tabs/index.ts +0 -14
  545. package/src/tag/createTag.ts +0 -194
  546. package/src/tag/createTagGroup.ts +0 -154
  547. package/src/tag/index.ts +0 -12
  548. package/src/textfield/createTextField.ts +0 -198
  549. package/src/textfield/index.ts +0 -5
  550. package/src/toast/createToast.ts +0 -118
  551. package/src/toast/createToastRegion.ts +0 -100
  552. package/src/toast/index.ts +0 -11
  553. package/src/toggle/createToggle.ts +0 -223
  554. package/src/toggle/createToggleState.ts +0 -94
  555. package/src/toggle/index.ts +0 -7
  556. package/src/toolbar/createToolbar.ts +0 -368
  557. package/src/toolbar/index.ts +0 -6
  558. package/src/tooltip/createTooltip.ts +0 -79
  559. package/src/tooltip/createTooltipTrigger.ts +0 -222
  560. package/src/tooltip/index.ts +0 -6
  561. package/src/tree/createTree.ts +0 -246
  562. package/src/tree/createTreeItem.ts +0 -233
  563. package/src/tree/createTreeSelectionCheckbox.ts +0 -68
  564. package/src/tree/index.ts +0 -16
  565. package/src/tree/types.ts +0 -87
  566. package/src/utils/createDescription.ts +0 -137
  567. package/src/utils/dom.ts +0 -327
  568. package/src/utils/env.ts +0 -54
  569. package/src/utils/events.ts +0 -106
  570. package/src/utils/filterDOMProps.ts +0 -116
  571. package/src/utils/focus.ts +0 -151
  572. package/src/utils/geometry.ts +0 -115
  573. package/src/utils/globalListeners.ts +0 -142
  574. package/src/utils/index.ts +0 -80
  575. package/src/utils/mergeProps.ts +0 -52
  576. package/src/utils/platform.ts +0 -52
  577. package/src/utils/reactivity.ts +0 -36
  578. package/src/utils/textSelection.ts +0 -114
  579. package/src/visually-hidden/createVisuallyHidden.ts +0 -124
  580. package/src/visually-hidden/index.ts +0 -6
@@ -1,165 +0,0 @@
1
- /**
2
- * Table ARIA types for Table components.
3
- * Based on @react-aria/table types.
4
- */
5
-
6
- import type { JSX } from 'solid-js';
7
- import type { Key, GridNode } from '@proyecto-viviana/solid-stately';
8
-
9
- /**
10
- * Props for the createTable hook.
11
- */
12
- export interface AriaTableProps {
13
- /** ID for the table element. */
14
- id?: string;
15
- /** ARIA label for the table. */
16
- 'aria-label'?: string;
17
- /** ARIA labelledby for the table. */
18
- 'aria-labelledby'?: string;
19
- /** ARIA describedby for the table. */
20
- 'aria-describedby'?: string;
21
- /** Whether the table uses virtual scrolling. */
22
- isVirtualized?: boolean;
23
- /** Handler for row actions. */
24
- onRowAction?: (key: Key) => void;
25
- /** Handler for cell actions. */
26
- onCellAction?: (key: Key) => void;
27
- /** Whether selection should occur on press up. */
28
- shouldSelectOnPressUp?: boolean;
29
- /** Focus mode: 'row' or 'cell'. */
30
- focusMode?: 'row' | 'cell';
31
- }
32
-
33
- /**
34
- * Return value from createTable.
35
- */
36
- export interface TableAria {
37
- /** Props to spread on the table element. */
38
- gridProps: JSX.HTMLAttributes<HTMLTableElement>;
39
- }
40
-
41
- /**
42
- * Props for the createTableHeaderRow hook.
43
- */
44
- export interface AriaTableHeaderRowProps {
45
- /** The header row node. */
46
- node: GridNode<unknown>;
47
- /** Whether the table is virtualized. */
48
- isVirtualized?: boolean;
49
- }
50
-
51
- /**
52
- * Return value from createTableHeaderRow.
53
- */
54
- export interface TableHeaderRowAria {
55
- /** Props to spread on the header row element. */
56
- rowProps: JSX.HTMLAttributes<HTMLTableRowElement>;
57
- }
58
-
59
- /**
60
- * Props for the createTableColumnHeader hook.
61
- */
62
- export interface AriaTableColumnHeaderProps {
63
- /** The column header node. */
64
- node: GridNode<unknown>;
65
- /** Whether the table is virtualized. */
66
- isVirtualized?: boolean;
67
- /** Whether the column allows sorting. */
68
- allowsSorting?: boolean;
69
- }
70
-
71
- /**
72
- * Return value from createTableColumnHeader.
73
- */
74
- export interface TableColumnHeaderAria {
75
- /** Props to spread on the column header element. */
76
- columnHeaderProps: JSX.HTMLAttributes<HTMLTableCellElement>;
77
- }
78
-
79
- /**
80
- * Props for the createTableRow hook.
81
- */
82
- export interface AriaTableRowProps {
83
- /** The row node. */
84
- node: GridNode<unknown>;
85
- /** Whether the table is virtualized. */
86
- isVirtualized?: boolean;
87
- /** Handler for row action. */
88
- onAction?: () => void;
89
- }
90
-
91
- /**
92
- * Return value from createTableRow.
93
- */
94
- export interface TableRowAria {
95
- /** Props to spread on the row element. */
96
- rowProps: JSX.HTMLAttributes<HTMLTableRowElement>;
97
- /** Whether the row is selected. */
98
- isSelected: boolean;
99
- /** Whether the row is disabled. */
100
- isDisabled: boolean;
101
- /** Whether the row is pressed. */
102
- isPressed: boolean;
103
- }
104
-
105
- /**
106
- * Props for the createTableCell hook.
107
- */
108
- export interface AriaTableCellProps {
109
- /** The cell node. */
110
- node: GridNode<unknown>;
111
- /** Whether the table is virtualized. */
112
- isVirtualized?: boolean;
113
- /** Handler for cell action. */
114
- onAction?: () => void;
115
- }
116
-
117
- /**
118
- * Return value from createTableCell.
119
- */
120
- export interface TableCellAria {
121
- /** Props to spread on the cell element. */
122
- gridCellProps: JSX.HTMLAttributes<HTMLTableCellElement>;
123
- /** Whether the cell is pressed. */
124
- isPressed: boolean;
125
- }
126
-
127
- /**
128
- * Props for the createTableRowGroup hook.
129
- */
130
- export interface AriaTableRowGroupProps {
131
- /** The type of row group: 'thead', 'tbody', or 'tfoot'. */
132
- type: 'thead' | 'tbody' | 'tfoot';
133
- }
134
-
135
- /**
136
- * Return value from createTableRowGroup.
137
- */
138
- export interface TableRowGroupAria {
139
- /** Props to spread on the row group element. */
140
- rowGroupProps: JSX.HTMLAttributes<HTMLTableSectionElement>;
141
- }
142
-
143
- /**
144
- * Props for the createTableSelectionCheckbox hook.
145
- */
146
- export interface AriaTableSelectionCheckboxProps {
147
- /** The key of the row. */
148
- key: Key;
149
- }
150
-
151
- /**
152
- * Return value from createTableSelectionCheckbox.
153
- */
154
- export interface TableSelectionCheckboxAria {
155
- /** Props to spread on the checkbox input element. */
156
- checkboxProps: JSX.InputHTMLAttributes<HTMLInputElement>;
157
- }
158
-
159
- /**
160
- * Return value from createTableSelectAllCheckbox.
161
- */
162
- export interface TableSelectAllCheckboxAria {
163
- /** Props to spread on the checkbox input element. */
164
- checkboxProps: JSX.InputHTMLAttributes<HTMLInputElement>;
165
- }
@@ -1,472 +0,0 @@
1
- /**
2
- * ARIA hooks for tab components.
3
- * Based on @react-aria/tabs.
4
- */
5
-
6
- import { type Accessor, createMemo, onMount } from 'solid-js';
7
- import { createFocusRing } from '../interactions';
8
- import { createPress } from '../interactions';
9
- import { createHover } from '../interactions';
10
- import { createId } from '../ssr';
11
- import type { Key, Collection, CollectionNode } from '@proyecto-viviana/solid-stately';
12
-
13
- // ============================================
14
- // TYPES
15
- // ============================================
16
-
17
- export type TabOrientation = 'horizontal' | 'vertical';
18
- export type KeyboardActivation = 'automatic' | 'manual';
19
-
20
- export interface TabListState<T = unknown> {
21
- collection: Accessor<Collection<T>>;
22
- selectedKey: Accessor<Key | null>;
23
- setSelectedKey(key: Key): void;
24
- selectedItem: Accessor<CollectionNode<T> | null>;
25
- isDisabled: Accessor<boolean>;
26
- keyboardActivation: Accessor<KeyboardActivation>;
27
- orientation: Accessor<TabOrientation>;
28
- isKeyDisabled(key: Key): boolean;
29
- disabledKeys: Accessor<Set<Key>>;
30
- isFocused: Accessor<boolean>;
31
- setFocused(isFocused: boolean): void;
32
- focusedKey: Accessor<Key | null>;
33
- setFocusedKey(key: Key | null): void;
34
- }
35
-
36
- export interface AriaTabListProps {
37
- /** The orientation of the tab list. */
38
- orientation?: TabOrientation;
39
- /** How tabs are activated (on focus or on click). */
40
- keyboardActivation?: KeyboardActivation;
41
- /** Whether the tab list is disabled. */
42
- isDisabled?: boolean;
43
- /** Label for the tab list. */
44
- 'aria-label'?: string;
45
- /** ID of element that labels the tab list. */
46
- 'aria-labelledby'?: string;
47
- /** ID of element that describes the tab list. */
48
- 'aria-describedby'?: string;
49
- }
50
-
51
- export interface TabListAria {
52
- /** Props for the tab list container element. */
53
- tabListProps: {
54
- role: 'tablist';
55
- 'aria-orientation': TabOrientation;
56
- 'aria-label'?: string;
57
- 'aria-labelledby'?: string;
58
- 'aria-describedby'?: string;
59
- onKeyDown: (e: KeyboardEvent) => void;
60
- onFocus: (e: FocusEvent) => void;
61
- onBlur: (e: FocusEvent) => void;
62
- };
63
- }
64
-
65
- export interface AriaTabProps {
66
- /** The key of the tab. */
67
- key: Key;
68
- /** Whether the tab is disabled. */
69
- isDisabled?: boolean;
70
- /** Label for the tab. */
71
- 'aria-label'?: string;
72
- }
73
-
74
- export interface TabAria {
75
- /** Props for the tab element. */
76
- tabProps: {
77
- id: string;
78
- role: 'tab';
79
- 'aria-selected': boolean;
80
- 'aria-disabled': boolean | undefined;
81
- 'aria-controls': string | undefined;
82
- 'aria-label'?: string;
83
- tabIndex: number;
84
- onKeyDown: (e: KeyboardEvent) => void;
85
- onMouseDown: (e: MouseEvent) => void;
86
- onPointerDown: (e: PointerEvent) => void;
87
- onClick: (e: MouseEvent) => void;
88
- onFocus: (e: FocusEvent) => void;
89
- };
90
- /** Whether the tab is selected. */
91
- isSelected: Accessor<boolean>;
92
- /** Whether the tab is disabled. */
93
- isDisabled: Accessor<boolean>;
94
- /** Whether the tab is pressed. */
95
- isPressed: Accessor<boolean>;
96
- /** Whether the tab has focus. */
97
- isFocused: Accessor<boolean>;
98
- /** Whether the tab has visible focus ring. */
99
- isFocusVisible: Accessor<boolean>;
100
- /** Whether the tab is hovered. */
101
- isHovered: Accessor<boolean>;
102
- }
103
-
104
- export interface AriaTabPanelProps {
105
- /** The key of the associated tab. */
106
- id?: Key;
107
- /** Label for the tab panel. */
108
- 'aria-label'?: string;
109
- /** ID of element that labels the tab panel. */
110
- 'aria-labelledby'?: string;
111
- /** ID of element that describes the tab panel. */
112
- 'aria-describedby'?: string;
113
- }
114
-
115
- export interface TabPanelAria {
116
- /** Props for the tab panel element. */
117
- tabPanelProps: {
118
- id: string;
119
- role: 'tabpanel';
120
- 'aria-labelledby': string;
121
- 'aria-label'?: string;
122
- 'aria-describedby'?: string;
123
- tabIndex: number;
124
- };
125
- /** Whether this panel is the selected one. */
126
- isSelected: Accessor<boolean>;
127
- }
128
-
129
- // ============================================
130
- // ID MANAGEMENT
131
- // ============================================
132
-
133
- const tabListIds = new WeakMap<TabListState<unknown>, string>();
134
-
135
- function getTabListId<T>(state: TabListState<T>): string {
136
- let id = tabListIds.get(state as TabListState<unknown>);
137
- if (!id) {
138
- id = createId();
139
- tabListIds.set(state as TabListState<unknown>, id);
140
- }
141
- return id;
142
- }
143
-
144
- function generateTabId<T>(state: TabListState<T>, key: Key): string {
145
- const baseId = getTabListId(state);
146
- const keyStr = String(key).replace(/\s+/g, '-');
147
- return `${baseId}-tab-${keyStr}`;
148
- }
149
-
150
- function generateTabPanelId<T>(state: TabListState<T>, key: Key): string {
151
- const baseId = getTabListId(state);
152
- const keyStr = String(key).replace(/\s+/g, '-');
153
- return `${baseId}-tabpanel-${keyStr}`;
154
- }
155
-
156
- // ============================================
157
- // KEYBOARD DELEGATE
158
- // ============================================
159
-
160
- function getNextKey<T>(state: TabListState<T>, currentKey: Key): Key | null {
161
- const coll = state.collection();
162
- const keys = [...coll].map(node => node.key);
163
- const currentIndex = keys.indexOf(currentKey);
164
-
165
- if (currentIndex === -1) return keys[0] ?? null;
166
-
167
- // Find next non-disabled key, wrapping around
168
- for (let i = 1; i <= keys.length; i++) {
169
- const nextIndex = (currentIndex + i) % keys.length;
170
- const nextKey = keys[nextIndex];
171
- if (!state.isKeyDisabled(nextKey)) {
172
- return nextKey;
173
- }
174
- }
175
-
176
- return null;
177
- }
178
-
179
- function getPreviousKey<T>(state: TabListState<T>, currentKey: Key): Key | null {
180
- const coll = state.collection();
181
- const keys = [...coll].map(node => node.key);
182
- const currentIndex = keys.indexOf(currentKey);
183
-
184
- if (currentIndex === -1) return keys[keys.length - 1] ?? null;
185
-
186
- // Find previous non-disabled key, wrapping around
187
- for (let i = 1; i <= keys.length; i++) {
188
- const prevIndex = (currentIndex - i + keys.length) % keys.length;
189
- const prevKey = keys[prevIndex];
190
- if (!state.isKeyDisabled(prevKey)) {
191
- return prevKey;
192
- }
193
- }
194
-
195
- return null;
196
- }
197
-
198
- function getFirstKey<T>(state: TabListState<T>): Key | null {
199
- const coll = state.collection();
200
- for (const node of coll) {
201
- if (!state.isKeyDisabled(node.key)) {
202
- return node.key;
203
- }
204
- }
205
- return null;
206
- }
207
-
208
- function getLastKey<T>(state: TabListState<T>): Key | null {
209
- const coll = state.collection();
210
- const keys = [...coll].map(node => node.key).reverse();
211
- for (const key of keys) {
212
- if (!state.isKeyDisabled(key)) {
213
- return key;
214
- }
215
- }
216
- return null;
217
- }
218
-
219
- // ============================================
220
- // HOOKS
221
- // ============================================
222
-
223
- /**
224
- * Creates ARIA props for a tab list container.
225
- */
226
- export function createTabList<T>(
227
- props: AriaTabListProps,
228
- state: TabListState<T>
229
- ): TabListAria {
230
- const orientation = () => props.orientation ?? state.orientation() ?? 'horizontal';
231
- const keyboardActivation = () => props.keyboardActivation ?? state.keyboardActivation() ?? 'automatic';
232
-
233
- const handleKeyDown = (e: KeyboardEvent) => {
234
- if (state.isDisabled()) return;
235
-
236
- const currentKey = state.focusedKey() ?? state.selectedKey();
237
- if (currentKey === null) return;
238
-
239
- let nextKey: Key | null = null;
240
- const isHorizontal = orientation() === 'horizontal';
241
-
242
- switch (e.key) {
243
- case 'ArrowLeft':
244
- if (isHorizontal) {
245
- // TODO: RTL support
246
- nextKey = getPreviousKey(state, currentKey);
247
- }
248
- break;
249
- case 'ArrowRight':
250
- if (isHorizontal) {
251
- nextKey = getNextKey(state, currentKey);
252
- }
253
- break;
254
- case 'ArrowUp':
255
- if (!isHorizontal) {
256
- nextKey = getPreviousKey(state, currentKey);
257
- }
258
- break;
259
- case 'ArrowDown':
260
- if (!isHorizontal) {
261
- nextKey = getNextKey(state, currentKey);
262
- }
263
- break;
264
- case 'Home':
265
- nextKey = getFirstKey(state);
266
- break;
267
- case 'End':
268
- nextKey = getLastKey(state);
269
- break;
270
- case 'Enter':
271
- case ' ':
272
- // In manual mode, Enter/Space activates the focused tab
273
- if (keyboardActivation() === 'manual' && state.focusedKey()) {
274
- state.setSelectedKey(state.focusedKey()!);
275
- e.preventDefault();
276
- }
277
- return;
278
- default:
279
- return;
280
- }
281
-
282
- if (nextKey !== null) {
283
- e.preventDefault();
284
- state.setFocusedKey(nextKey);
285
-
286
- // In automatic mode, selection follows focus
287
- if (keyboardActivation() === 'automatic') {
288
- state.setSelectedKey(nextKey);
289
- }
290
- }
291
- };
292
-
293
- const handleFocus = () => {
294
- state.setFocused(true);
295
- // If no focused key, focus the selected key
296
- if (state.focusedKey() === null && state.selectedKey() !== null) {
297
- state.setFocusedKey(state.selectedKey());
298
- }
299
- };
300
-
301
- const handleBlur = (e: FocusEvent) => {
302
- // Only blur if focus is leaving the tab list entirely
303
- const relatedTarget = e.relatedTarget as Element | null;
304
- if (relatedTarget && (e.currentTarget as Element).contains(relatedTarget)) {
305
- return;
306
- }
307
- state.setFocused(false);
308
- };
309
-
310
- return {
311
- tabListProps: {
312
- role: 'tablist',
313
- 'aria-orientation': orientation(),
314
- 'aria-label': props['aria-label'],
315
- 'aria-labelledby': props['aria-labelledby'],
316
- 'aria-describedby': props['aria-describedby'],
317
- onKeyDown: handleKeyDown,
318
- onFocus: handleFocus,
319
- onBlur: handleBlur,
320
- },
321
- };
322
- }
323
-
324
- /**
325
- * Creates ARIA props for an individual tab.
326
- */
327
- export function createTab<T>(
328
- props: AriaTabProps,
329
- state: TabListState<T>,
330
- ref?: Accessor<HTMLElement | null>
331
- ): TabAria {
332
- const key = () => props.key;
333
-
334
- const isSelected = createMemo(() => state.selectedKey() === key());
335
- const isDisabled = createMemo(() => {
336
- if (props.isDisabled) return true;
337
- return state.isKeyDisabled(key());
338
- });
339
-
340
- const isFocused = createMemo(() => state.focusedKey() === key());
341
-
342
- // Focus ring
343
- const { isFocusVisible, focusProps } = createFocusRing();
344
-
345
- // Press handling
346
- const { isPressed, pressProps } = createPress({
347
- get isDisabled() {
348
- return isDisabled();
349
- },
350
- onPress: () => {
351
- state.setSelectedKey(key());
352
- state.setFocusedKey(key());
353
- },
354
- });
355
-
356
- // Hover handling
357
- const { isHovered } = createHover({
358
- get isDisabled() {
359
- return isDisabled();
360
- },
361
- });
362
-
363
- // Generate IDs
364
- const tabId = generateTabId(state, key());
365
- const tabPanelId = generateTabPanelId(state, key());
366
-
367
- // Helper to safely call event handlers that may be bound tuples
368
- const callHandler = <E extends Event>(
369
- handler: ((e: E) => void) | [object, (e: E) => void] | undefined,
370
- event: E
371
- ) => {
372
- if (!handler) return;
373
- if (Array.isArray(handler)) {
374
- handler[1].call(handler[0], event);
375
- } else {
376
- handler(event);
377
- }
378
- };
379
-
380
- // Focus management
381
- const handleFocus = (e: FocusEvent) => {
382
- state.setFocusedKey(key());
383
- callHandler(focusProps.onFocus as any, e);
384
- };
385
-
386
- // Combine all handlers
387
- const handleKeyDown = (e: KeyboardEvent) => {
388
- callHandler(pressProps.onKeyDown as any, e);
389
- };
390
-
391
- const handleMouseDown = (e: MouseEvent) => {
392
- callHandler(pressProps.onMouseDown as any, e);
393
- };
394
-
395
- const handlePointerDown = (e: PointerEvent) => {
396
- callHandler(pressProps.onPointerDown as any, e);
397
- };
398
-
399
- const handleClick = (e: MouseEvent) => {
400
- callHandler(pressProps.onClick as any, e);
401
- };
402
-
403
- // Focus this tab when it becomes selected and focused
404
- onMount(() => {
405
- const cleanup = createMemo(() => {
406
- if (isFocused() && ref?.()) {
407
- ref()?.focus();
408
- }
409
- });
410
- return cleanup;
411
- });
412
-
413
- return {
414
- tabProps: {
415
- id: tabId,
416
- role: 'tab',
417
- 'aria-selected': isSelected(),
418
- 'aria-disabled': isDisabled() || undefined,
419
- 'aria-controls': isSelected() ? tabPanelId : undefined,
420
- 'aria-label': props['aria-label'],
421
- tabIndex: isSelected() && !isDisabled() ? 0 : -1,
422
- onKeyDown: handleKeyDown,
423
- onMouseDown: handleMouseDown,
424
- onPointerDown: handlePointerDown,
425
- onClick: handleClick,
426
- onFocus: handleFocus,
427
- },
428
- isSelected,
429
- isDisabled,
430
- isPressed,
431
- isFocused,
432
- isFocusVisible,
433
- isHovered,
434
- };
435
- }
436
-
437
- /**
438
- * Creates ARIA props for a tab panel.
439
- */
440
- export function createTabPanel<T>(
441
- props: AriaTabPanelProps,
442
- state: TabListState<T> | null
443
- ): TabPanelAria {
444
- // If state is null, the panel is always visible (for SSR scenarios)
445
- const isSelected = createMemo(() => {
446
- if (state === null) return true;
447
- if (props.id === undefined) return false;
448
- return state.selectedKey() === props.id;
449
- });
450
-
451
- // Generate IDs based on the associated tab key
452
- const tabPanelId = state && props.id !== undefined
453
- ? generateTabPanelId(state, props.id)
454
- : createId();
455
-
456
- const tabId = state && props.id !== undefined
457
- ? generateTabId(state, props.id)
458
- : '';
459
-
460
- return {
461
- tabPanelProps: {
462
- id: tabPanelId,
463
- role: 'tabpanel',
464
- 'aria-labelledby': props['aria-labelledby'] ?? tabId,
465
- 'aria-label': props['aria-label'],
466
- 'aria-describedby': props['aria-describedby'],
467
- // Make panel focusable if no tabbable children
468
- tabIndex: 0,
469
- },
470
- isSelected,
471
- };
472
- }
package/src/tabs/index.ts DELETED
@@ -1,14 +0,0 @@
1
- export {
2
- createTabList,
3
- createTab,
4
- createTabPanel,
5
- type TabListState,
6
- type TabOrientation,
7
- type KeyboardActivation,
8
- type AriaTabListProps,
9
- type TabListAria,
10
- type AriaTabProps,
11
- type TabAria,
12
- type AriaTabPanelProps,
13
- type TabPanelAria,
14
- } from './createTabs';