@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,377 +0,0 @@
1
- /**
2
- * createLandmark - SolidJS implementation of React Aria's useLandmark
3
- *
4
- * Provides landmark navigation in an application. Call this with a role and label
5
- * to register a landmark navigable with the F6 key.
6
- *
7
- * ARIA landmarks help screen reader users navigate between major sections of a page.
8
- * The F6 key (or Shift+F6) cycles through all registered landmarks.
9
- */
10
-
11
- import type { JSX, Accessor } from 'solid-js';
12
- import { createEffect, onCleanup } from 'solid-js';
13
- import { access, type MaybeAccessor } from '../utils';
14
- import { filterDOMProps } from '../utils';
15
-
16
- // ============================================
17
- // TYPES
18
- // ============================================
19
-
20
- /** ARIA landmark roles */
21
- export type AriaLandmarkRole =
22
- | 'main'
23
- | 'region'
24
- | 'search'
25
- | 'navigation'
26
- | 'form'
27
- | 'banner'
28
- | 'contentinfo'
29
- | 'complementary';
30
-
31
- export interface AriaLandmarkProps {
32
- /** The ARIA landmark role. */
33
- role: AriaLandmarkRole;
34
- /**
35
- * A human-readable label for the landmark.
36
- * Required when multiple landmarks with the same role exist on a page.
37
- */
38
- 'aria-label'?: string;
39
- /** Identifies the element(s) that labels the landmark. */
40
- 'aria-labelledby'?: string;
41
- /** The element's unique identifier. */
42
- id?: string;
43
- /**
44
- * A custom focus handler called when this landmark receives focus via F6 navigation.
45
- * Use this to focus a specific element within the landmark instead of the container.
46
- */
47
- focus?: () => void;
48
- }
49
-
50
- export interface LandmarkAria<T extends HTMLElement = HTMLElement> {
51
- /** Props to spread on the landmark element. */
52
- landmarkProps: JSX.HTMLAttributes<T>;
53
- }
54
-
55
- export interface LandmarkController {
56
- /** Focus the next landmark in DOM order. */
57
- focusNext: () => void;
58
- /** Focus the previous landmark in DOM order. */
59
- focusPrevious: () => void;
60
- /** Focus the main landmark. */
61
- focusMain: () => void;
62
- /** Navigate to a specific landmark by role. If multiple exist, the first one is focused. */
63
- navigate: (role: AriaLandmarkRole) => void;
64
- }
65
-
66
- // ============================================
67
- // INTERNAL: Landmark Entry
68
- // ============================================
69
-
70
- interface LandmarkEntry {
71
- ref: HTMLElement;
72
- role: AriaLandmarkRole;
73
- label?: string;
74
- focus?: () => void;
75
- lastFocused?: HTMLElement;
76
- }
77
-
78
- // ============================================
79
- // LANDMARK MANAGER (Singleton)
80
- // ============================================
81
-
82
- /**
83
- * Manages all registered landmarks and handles F6 keyboard navigation.
84
- */
85
- class LandmarkManager {
86
- private landmarks: LandmarkEntry[] = [];
87
- private currentIndex = -1;
88
- private listening = false;
89
-
90
- constructor() {
91
- if (typeof window !== 'undefined') {
92
- this.startListening();
93
- }
94
- }
95
-
96
- private startListening() {
97
- if (this.listening) return;
98
- this.listening = true;
99
-
100
- window.addEventListener('keydown', this.handleKeyDown.bind(this), true);
101
- }
102
-
103
- private handleKeyDown(event: KeyboardEvent) {
104
- // F6 to navigate landmarks
105
- if (event.key === 'F6') {
106
- event.preventDefault();
107
- if (event.shiftKey) {
108
- this.focusPrevious();
109
- } else {
110
- this.focusNext();
111
- }
112
- }
113
- }
114
-
115
- register(entry: LandmarkEntry): void {
116
- // Insert in DOM order using compareDocumentPosition
117
- const index = this.findInsertionIndex(entry.ref);
118
- this.landmarks.splice(index, 0, entry);
119
-
120
- // Validate: if multiple landmarks have the same role, they should have different labels
121
- this.validateLabels();
122
- }
123
-
124
- unregister(ref: HTMLElement): void {
125
- const index = this.landmarks.findIndex((l) => l.ref === ref);
126
- if (index !== -1) {
127
- this.landmarks.splice(index, 1);
128
- // Adjust currentIndex if needed
129
- if (this.currentIndex >= this.landmarks.length) {
130
- this.currentIndex = this.landmarks.length - 1;
131
- }
132
- }
133
- }
134
-
135
- private findInsertionIndex(ref: HTMLElement): number {
136
- // Binary search for insertion point based on DOM order
137
- let low = 0;
138
- let high = this.landmarks.length;
139
-
140
- while (low < high) {
141
- const mid = Math.floor((low + high) / 2);
142
- const comparison = this.landmarks[mid].ref.compareDocumentPosition(ref);
143
-
144
- // Node.DOCUMENT_POSITION_FOLLOWING = 4
145
- if (comparison & Node.DOCUMENT_POSITION_FOLLOWING) {
146
- low = mid + 1;
147
- } else {
148
- high = mid;
149
- }
150
- }
151
-
152
- return low;
153
- }
154
-
155
- private validateLabels(): void {
156
- // Group landmarks by role
157
- const roleGroups = new Map<AriaLandmarkRole, LandmarkEntry[]>();
158
- for (const landmark of this.landmarks) {
159
- const group = roleGroups.get(landmark.role) || [];
160
- group.push(landmark);
161
- roleGroups.set(landmark.role, group);
162
- }
163
-
164
- // Warn if multiple landmarks with the same role lack unique labels
165
- for (const [role, group] of roleGroups) {
166
- if (group.length > 1) {
167
- const labels = group.map((l) => l.label);
168
- const uniqueLabels = new Set(labels.filter(Boolean));
169
- if (uniqueLabels.size < group.length) {
170
- console.warn(
171
- `Multiple landmarks with role "${role}" exist. Each should have a unique aria-label or aria-labelledby.`
172
- );
173
- }
174
- }
175
- }
176
- }
177
-
178
- focusNext(): void {
179
- if (this.landmarks.length === 0) return;
180
-
181
- // Find the currently focused landmark
182
- const activeElement = document.activeElement;
183
- this.currentIndex = this.findCurrentLandmarkIndex(activeElement);
184
-
185
- // Move to next
186
- this.currentIndex = (this.currentIndex + 1) % this.landmarks.length;
187
- this.focusLandmark(this.landmarks[this.currentIndex]);
188
- }
189
-
190
- focusPrevious(): void {
191
- if (this.landmarks.length === 0) return;
192
-
193
- // Find the currently focused landmark
194
- const activeElement = document.activeElement;
195
- this.currentIndex = this.findCurrentLandmarkIndex(activeElement);
196
-
197
- // Move to previous
198
- this.currentIndex =
199
- (this.currentIndex - 1 + this.landmarks.length) % this.landmarks.length;
200
- this.focusLandmark(this.landmarks[this.currentIndex]);
201
- }
202
-
203
- focusMain(): void {
204
- const main = this.landmarks.find((l) => l.role === 'main');
205
- if (main) {
206
- this.focusLandmark(main);
207
- }
208
- }
209
-
210
- navigate(role: AriaLandmarkRole): void {
211
- const landmark = this.landmarks.find((l) => l.role === role);
212
- if (landmark) {
213
- this.focusLandmark(landmark);
214
- }
215
- }
216
-
217
- private findCurrentLandmarkIndex(activeElement: Element | null): number {
218
- if (!activeElement) return -1;
219
-
220
- // Check if active element is within any landmark
221
- for (let i = 0; i < this.landmarks.length; i++) {
222
- if (this.landmarks[i].ref.contains(activeElement)) {
223
- // Store the last focused element for this landmark
224
- if (activeElement instanceof HTMLElement) {
225
- this.landmarks[i].lastFocused = activeElement;
226
- }
227
- return i;
228
- }
229
- }
230
-
231
- return -1;
232
- }
233
-
234
- private focusLandmark(landmark: LandmarkEntry): void {
235
- // If a custom focus handler is provided, use it
236
- if (landmark.focus) {
237
- landmark.focus();
238
- return;
239
- }
240
-
241
- // If we previously focused an element in this landmark, try to restore it
242
- if (landmark.lastFocused && landmark.ref.contains(landmark.lastFocused)) {
243
- landmark.lastFocused.focus();
244
- return;
245
- }
246
-
247
- // Try to find the first focusable element
248
- const focusable = this.findFirstFocusable(landmark.ref);
249
- if (focusable) {
250
- focusable.focus();
251
- return;
252
- }
253
-
254
- // Fallback: make the landmark itself focusable and focus it
255
- if (!landmark.ref.hasAttribute('tabindex')) {
256
- landmark.ref.setAttribute('tabindex', '-1');
257
- }
258
- landmark.ref.focus();
259
- }
260
-
261
- private findFirstFocusable(container: HTMLElement): HTMLElement | null {
262
- const focusableSelectors = [
263
- 'a[href]',
264
- 'button:not([disabled])',
265
- 'input:not([disabled])',
266
- 'select:not([disabled])',
267
- 'textarea:not([disabled])',
268
- '[tabindex]:not([tabindex="-1"])',
269
- ].join(', ');
270
-
271
- return container.querySelector<HTMLElement>(focusableSelectors);
272
- }
273
-
274
- getController(): LandmarkController {
275
- return {
276
- focusNext: () => this.focusNext(),
277
- focusPrevious: () => this.focusPrevious(),
278
- focusMain: () => this.focusMain(),
279
- navigate: (role) => this.navigate(role),
280
- };
281
- }
282
- }
283
-
284
- // Global singleton instance
285
- let landmarkManager: LandmarkManager | null = null;
286
-
287
- function getLandmarkManager(): LandmarkManager {
288
- if (!landmarkManager) {
289
- landmarkManager = new LandmarkManager();
290
- }
291
- return landmarkManager;
292
- }
293
-
294
- // ============================================
295
- // CREATE LANDMARK
296
- // ============================================
297
-
298
- /**
299
- * Provides landmark navigation in an application.
300
- * Call this with a role and label to register a landmark navigable with F6.
301
- *
302
- * @example
303
- * ```tsx
304
- * function Navigation(props) {
305
- * let ref: HTMLElement;
306
- * const { landmarkProps } = createLandmark({
307
- * role: 'navigation',
308
- * 'aria-label': 'Main navigation'
309
- * });
310
- *
311
- * return (
312
- * <nav {...landmarkProps} ref={ref}>
313
- * {props.children}
314
- * </nav>
315
- * );
316
- * }
317
- * ```
318
- */
319
- export function createLandmark<T extends HTMLElement = HTMLElement>(
320
- props: MaybeAccessor<AriaLandmarkProps>,
321
- ref: Accessor<T | undefined>
322
- ): LandmarkAria<T> {
323
- // Register with the landmark manager
324
- createEffect(() => {
325
- const element = ref();
326
- if (!element) return;
327
-
328
- const p = access(props);
329
- const entry: LandmarkEntry = {
330
- ref: element,
331
- role: p.role,
332
- label: p['aria-label'],
333
- focus: p.focus,
334
- };
335
-
336
- const manager = getLandmarkManager();
337
- manager.register(entry);
338
-
339
- onCleanup(() => {
340
- manager.unregister(element);
341
- });
342
- });
343
-
344
- const getLandmarkProps = (): JSX.HTMLAttributes<T> => {
345
- const p = access(props);
346
- const domProps = filterDOMProps(p as unknown as Record<string, unknown>, { labelable: true });
347
-
348
- return {
349
- ...domProps,
350
- role: p.role,
351
- };
352
- };
353
-
354
- return {
355
- get landmarkProps() {
356
- return getLandmarkProps();
357
- },
358
- };
359
- }
360
-
361
- // ============================================
362
- // LANDMARK CONTROLLER
363
- // ============================================
364
-
365
- /**
366
- * Returns a controller for programmatic landmark navigation.
367
- *
368
- * @example
369
- * ```tsx
370
- * const controller = getLandmarkController();
371
- * controller.focusMain(); // Focus the main landmark
372
- * controller.focusNext(); // Focus the next landmark
373
- * ```
374
- */
375
- export function getLandmarkController(): LandmarkController {
376
- return getLandmarkManager().getController();
377
- }
@@ -1,8 +0,0 @@
1
- export {
2
- createLandmark,
3
- getLandmarkController,
4
- type AriaLandmarkRole,
5
- type AriaLandmarkProps,
6
- type LandmarkAria,
7
- type LandmarkController,
8
- } from './createLandmark';
@@ -1,182 +0,0 @@
1
- /**
2
- * Link hook for Solidaria
3
- *
4
- * Provides the behavior and accessibility implementation for a link component.
5
- * A link allows a user to navigate to another page or resource within a web page
6
- * or application.
7
- *
8
- * This is a 1:1 port of @react-aria/link's useLink hook.
9
- */
10
-
11
- import { type Accessor } from 'solid-js';
12
- import { createPress } from '../interactions/createPress';
13
- import { createFocusable } from '../interactions/createFocusable';
14
- import { mergeProps } from '../utils/mergeProps';
15
- import { filterDOMProps } from '../utils/filterDOMProps';
16
- import { type MaybeAccessor, access } from '../utils/reactivity';
17
- import { type PressEvent } from '../interactions/PressEvent';
18
-
19
- // ============================================
20
- // TYPES
21
- // ============================================
22
-
23
- export interface AriaLinkProps {
24
- /** Whether the link is disabled. */
25
- isDisabled?: boolean;
26
- /** The HTML element used to render the link, e.g. 'a', or 'span'. @default 'a' */
27
- elementType?: string;
28
- /** The URL to link to. */
29
- href?: string;
30
- /** The target window for the link. */
31
- target?: string;
32
- /** The relationship between the linked resource and the current page. */
33
- rel?: string;
34
- /** Handler that is called when the press is released over the target. */
35
- onPress?: (e: PressEvent) => void;
36
- /** Handler that is called when a press interaction starts. */
37
- onPressStart?: (e: PressEvent) => void;
38
- /** Handler that is called when a press interaction ends. */
39
- onPressEnd?: (e: PressEvent) => void;
40
- /** Handler that is called when the element is clicked. */
41
- onClick?: (e: MouseEvent) => void;
42
- /** Handler that is called when the element receives focus. */
43
- onFocus?: (e: FocusEvent) => void;
44
- /** Handler that is called when the element loses focus. */
45
- onBlur?: (e: FocusEvent) => void;
46
- /** Handler that is called when the element's focus status changes. */
47
- onFocusChange?: (isFocused: boolean) => void;
48
- /** Handler that is called when a key is pressed. */
49
- onKeyDown?: (e: KeyboardEvent) => void;
50
- /** Handler that is called when a key is released. */
51
- onKeyUp?: (e: KeyboardEvent) => void;
52
- /** Whether to autofocus the element. */
53
- autoFocus?: boolean;
54
- /** Indicates the current "page" or state within a set of related elements. */
55
- 'aria-current'?: 'page' | 'step' | 'location' | 'date' | 'time' | 'true' | 'false' | boolean;
56
- /** Defines a string value that labels the current element. */
57
- 'aria-label'?: string;
58
- /** Identifies the element (or elements) that labels the current element. */
59
- 'aria-labelledby'?: string;
60
- /** Identifies the element (or elements) that describes the object. */
61
- 'aria-describedby'?: string;
62
- }
63
-
64
- export interface LinkAria {
65
- /** Props for the link element. */
66
- linkProps: Record<string, unknown>;
67
- /** Whether the link is currently pressed. */
68
- isPressed: Accessor<boolean>;
69
- }
70
-
71
- // ============================================
72
- // IMPLEMENTATION
73
- // ============================================
74
-
75
- /**
76
- * Provides the behavior and accessibility implementation for a link component.
77
- * A link allows a user to navigate to another page or resource within a web page
78
- * or application.
79
- */
80
- export function createLink(
81
- props: MaybeAccessor<AriaLinkProps> = {}
82
- ): LinkAria {
83
- const getProps = () => access(props);
84
-
85
- const isDisabled = () => getProps().isDisabled ?? false;
86
- const elementType = () => getProps().elementType ?? 'a';
87
-
88
- // Create press handling
89
- const { pressProps, isPressed } = createPress({
90
- get isDisabled() { return isDisabled(); },
91
- get onPress() { return getProps().onPress; },
92
- get onPressStart() { return getProps().onPressStart; },
93
- get onPressEnd() { return getProps().onPressEnd; },
94
- });
95
-
96
- // Create focusable handling
97
- const { focusableProps } = createFocusable({
98
- get isDisabled() { return isDisabled(); },
99
- get autoFocus() { return getProps().autoFocus; },
100
- get onFocus() { return getProps().onFocus; },
101
- get onBlur() { return getProps().onBlur; },
102
- get onFocusChange() { return getProps().onFocusChange; },
103
- get onKeyDown() { return getProps().onKeyDown; },
104
- get onKeyUp() { return getProps().onKeyUp; },
105
- });
106
-
107
- // Build link props
108
- const getLinkProps = (): Record<string, unknown> => {
109
- const p = getProps();
110
- const elType = elementType();
111
- const disabled = isDisabled();
112
-
113
- let baseProps: Record<string, unknown> = {};
114
-
115
- // If not an <a>, add role and tabIndex
116
- if (elType !== 'a') {
117
- baseProps = {
118
- role: 'link',
119
- tabIndex: disabled ? undefined : 0,
120
- };
121
- }
122
-
123
- // Add link-specific props
124
- if (elType === 'a') {
125
- if (p.href) baseProps.href = p.href;
126
- if (p.target) baseProps.target = p.target;
127
- if (p.rel) baseProps.rel = p.rel;
128
- }
129
-
130
- // ARIA attributes
131
- const ariaProps: Record<string, unknown> = {
132
- 'aria-disabled': disabled || undefined,
133
- };
134
-
135
- if (p['aria-current'] !== undefined) {
136
- ariaProps['aria-current'] = p['aria-current'];
137
- }
138
- if (p['aria-label']) {
139
- ariaProps['aria-label'] = p['aria-label'];
140
- }
141
- if (p['aria-labelledby']) {
142
- ariaProps['aria-labelledby'] = p['aria-labelledby'];
143
- }
144
- if (p['aria-describedby']) {
145
- ariaProps['aria-describedby'] = p['aria-describedby'];
146
- }
147
-
148
- // Handle onClick - prevent default navigation when appropriate
149
- const onClick = (e: MouseEvent) => {
150
- // If disabled, prevent navigation and don't call user's onClick
151
- if (disabled) {
152
- e.preventDefault();
153
- return;
154
- }
155
-
156
- // If onPress is provided, prevent default navigation
157
- // This allows onPress to handle the action (e.g., client-side routing)
158
- if (p.onPress) {
159
- e.preventDefault();
160
- }
161
-
162
- // Call user's onClick if provided
163
- p.onClick?.(e);
164
- };
165
-
166
- return mergeProps(
167
- filterDOMProps(p as Record<string, unknown>, { labelable: true }),
168
- baseProps,
169
- ariaProps,
170
- focusableProps as Record<string, unknown>,
171
- pressProps as Record<string, unknown>,
172
- { onClick }
173
- );
174
- };
175
-
176
- return {
177
- get linkProps() {
178
- return getLinkProps();
179
- },
180
- isPressed,
181
- };
182
- }
package/src/link/index.ts DELETED
@@ -1 +0,0 @@
1
- export { createLink, type AriaLinkProps, type LinkAria } from './createLink';