@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,396 +0,0 @@
1
- /**
2
- * Provides the behavior and accessibility implementation for a menu component.
3
- * A menu displays a list of actions or options that a user can choose.
4
- * Based on @react-aria/menu useMenu.
5
- */
6
-
7
- import { createEffect, onCleanup, type JSX, type Accessor } from 'solid-js';
8
- import { createFocusWithin } from '../interactions/createFocusWithin';
9
- import { createLabel } from '../label/createLabel';
10
- import { createTypeSelect } from '../selection/createTypeSelect';
11
- import { filterDOMProps } from '../utils/filterDOMProps';
12
- import { mergeProps } from '../utils/mergeProps';
13
- import { createId } from '../ssr';
14
- import { access, type MaybeAccessor } from '../utils/reactivity';
15
- import { isDevEnv } from '../utils/env';
16
- import type { MenuState, Key, Collection } from '@proyecto-viviana/solid-stately';
17
-
18
- /**
19
- * Default number of items to skip for page up/down when DOM measurement is not available.
20
- */
21
- const DEFAULT_PAGE_SIZE = 10;
22
-
23
- /**
24
- * Find the next non-disabled key in a collection.
25
- */
26
- function findNextNonDisabledKey<T>(
27
- collection: Collection<T>,
28
- currentKey: Key | null,
29
- direction: 'next' | 'prev',
30
- isDisabled: (key: Key) => boolean,
31
- wrap: boolean
32
- ): Key | null {
33
- const getNextKey = direction === 'next'
34
- ? (key: Key) => collection.getKeyAfter(key)
35
- : (key: Key) => collection.getKeyBefore(key);
36
-
37
- const getFirstKey = direction === 'next'
38
- ? () => collection.getFirstKey()
39
- : () => collection.getLastKey();
40
-
41
- let nextKey = currentKey != null ? getNextKey(currentKey) : getFirstKey();
42
-
43
- // Skip disabled keys
44
- while (nextKey != null && isDisabled(nextKey)) {
45
- nextKey = getNextKey(nextKey);
46
- }
47
-
48
- // If we've reached the end and wrapping is enabled
49
- if (nextKey == null && wrap) {
50
- nextKey = getFirstKey();
51
- // Skip disabled keys from the start
52
- while (nextKey != null && isDisabled(nextKey)) {
53
- nextKey = getNextKey(nextKey);
54
- }
55
- }
56
-
57
- return nextKey;
58
- }
59
-
60
- export interface AriaMenuProps {
61
- /** An ID for the menu. */
62
- id?: string;
63
- /** Whether the menu is disabled. */
64
- isDisabled?: boolean;
65
- /** The label for the menu. */
66
- label?: JSX.Element;
67
- /** An accessible label for the menu when no visible label is provided. */
68
- 'aria-label'?: string;
69
- /** The ID of an element that labels the menu. */
70
- 'aria-labelledby'?: string;
71
- /** The ID of an element that describes the menu. */
72
- 'aria-describedby'?: string;
73
- /** Handler called when focus moves into the menu. */
74
- onFocus?: (e: FocusEvent) => void;
75
- /** Handler called when focus moves out of the menu. */
76
- onBlur?: (e: FocusEvent) => void;
77
- /** Handler called when the focus state changes. */
78
- onFocusChange?: (isFocused: boolean) => void;
79
- /** Handler called when an item is activated (pressed). */
80
- onAction?: (key: Key) => void;
81
- /** Handler called when the menu should close. */
82
- onClose?: () => void;
83
- /** Whether focus should automatically wrap around. */
84
- shouldFocusWrap?: boolean;
85
- /** Whether to auto-focus the first item when the menu opens. */
86
- autoFocus?: boolean | 'first' | 'last';
87
- /** Whether type-to-select is disabled. @default false */
88
- disallowTypeAhead?: boolean;
89
- }
90
-
91
- export interface MenuAria {
92
- /** Props for the menu element. */
93
- menuProps: JSX.HTMLAttributes<HTMLElement>;
94
- /** Props for the menu's label element (if any). */
95
- labelProps: JSX.HTMLAttributes<HTMLElement>;
96
- }
97
-
98
- // Shared data between menu and menu items
99
- const menuData = new WeakMap<object, MenuData>();
100
-
101
- interface MenuData {
102
- id: string;
103
- onAction?: (key: Key) => void;
104
- onClose?: () => void;
105
- }
106
-
107
- export function getMenuData(state: MenuState): MenuData | undefined {
108
- return menuData.get(state);
109
- }
110
-
111
- /**
112
- * Provides the behavior and accessibility implementation for a menu component.
113
- * A menu displays a list of actions or options that a user can choose.
114
- */
115
- export function createMenu<T>(
116
- props: MaybeAccessor<AriaMenuProps>,
117
- state: MenuState<T>,
118
- ref?: Accessor<HTMLElement | null>
119
- ): MenuAria {
120
- const getProps = () => access(props);
121
- const id = createId(getProps().id);
122
-
123
- // Development-time warning for missing accessibility labels
124
- if (isDevEnv()) {
125
- const p = getProps();
126
- if (!p.label && !p['aria-label'] && !p['aria-labelledby']) {
127
- console.warn(
128
- '[solidaria] A Menu requires an aria-label or aria-labelledby attribute for accessibility.'
129
- );
130
- }
131
- }
132
-
133
- // Filter DOM props
134
- const domProps = () => filterDOMProps(getProps() as unknown as Record<string, unknown>, { labelable: true });
135
-
136
- // Share data with child menu items
137
- createEffect(() => {
138
- const p = getProps();
139
- menuData.set(state, {
140
- id,
141
- onAction: p.onAction,
142
- onClose: p.onClose,
143
- });
144
-
145
- onCleanup(() => {
146
- menuData.delete(state);
147
- });
148
- });
149
-
150
- // Handle focus within
151
- const { focusWithinProps } = createFocusWithin({
152
- onFocusWithin: (e) => getProps().onFocus?.(e),
153
- onBlurWithin: (e) => getProps().onBlur?.(e),
154
- onFocusWithinChange: (isFocused) => {
155
- getProps().onFocusChange?.(isFocused);
156
- state.setFocused(isFocused);
157
- },
158
- });
159
-
160
- // Label handling
161
- const { labelProps, fieldProps } = createLabel({
162
- get id() {
163
- return id;
164
- },
165
- get label() {
166
- return getProps().label;
167
- },
168
- get 'aria-label'() {
169
- return getProps()['aria-label'];
170
- },
171
- get 'aria-labelledby'() {
172
- return getProps()['aria-labelledby'];
173
- },
174
- labelElementType: 'span',
175
- });
176
-
177
- // Type-to-select
178
- const { typeSelectProps } = createTypeSelect({
179
- collection: () => state.collection(),
180
- focusedKey: () => state.focusedKey(),
181
- onFocusedKeyChange: (key) => state.setFocusedKey(key),
182
- isKeyDisabled: (key) => state.isDisabled(key),
183
- get isDisabled() {
184
- return getProps().disallowTypeAhead ?? false;
185
- },
186
- });
187
-
188
- // Keyboard navigation
189
- const onKeyDown: JSX.EventHandler<HTMLElement, KeyboardEvent> = (e) => {
190
- if (getProps().isDisabled) return;
191
-
192
- const collection = state.collection();
193
- const p = getProps();
194
- const wrap = p.shouldFocusWrap ?? false;
195
-
196
- // Use state.isDisabled which properly checks the disabledKeys accessor
197
- const isDisabled = (key: Key) => state.isDisabled(key);
198
-
199
- switch (e.key) {
200
- case 'ArrowDown': {
201
- e.preventDefault();
202
- const currentKey = state.focusedKey();
203
- const nextKey = findNextNonDisabledKey(collection, currentKey, 'next', isDisabled, wrap);
204
- if (nextKey != null) {
205
- state.setFocusedKey(nextKey);
206
- }
207
- break;
208
- }
209
- case 'ArrowUp': {
210
- e.preventDefault();
211
- const currentKey = state.focusedKey();
212
- const prevKey = findNextNonDisabledKey(collection, currentKey, 'prev', isDisabled, wrap);
213
- if (prevKey != null) {
214
- state.setFocusedKey(prevKey);
215
- }
216
- break;
217
- }
218
- case 'Home': {
219
- e.preventDefault();
220
- // Find first non-disabled key
221
- let firstKey = collection.getFirstKey();
222
- while (firstKey != null && isDisabled(firstKey)) {
223
- firstKey = collection.getKeyAfter(firstKey);
224
- }
225
- if (firstKey != null) {
226
- state.setFocusedKey(firstKey);
227
- }
228
- break;
229
- }
230
- case 'End': {
231
- e.preventDefault();
232
- // Find last non-disabled key
233
- let lastKey = collection.getLastKey();
234
- while (lastKey != null && isDisabled(lastKey)) {
235
- lastKey = collection.getKeyBefore(lastKey);
236
- }
237
- if (lastKey != null) {
238
- state.setFocusedKey(lastKey);
239
- }
240
- break;
241
- }
242
- case ' ':
243
- case 'Enter': {
244
- e.preventDefault();
245
- const focusedKey = state.focusedKey();
246
- // Don't activate disabled items
247
- if (focusedKey != null && !isDisabled(focusedKey)) {
248
- p.onAction?.(focusedKey);
249
- p.onClose?.();
250
- }
251
- break;
252
- }
253
- case 'Escape': {
254
- e.preventDefault();
255
- p.onClose?.();
256
- break;
257
- }
258
- case 'PageDown': {
259
- e.preventDefault();
260
- const currentKey = state.focusedKey();
261
- const el = ref?.();
262
-
263
- if (el) {
264
- // Use DOM measurements to calculate how many items fit in a page
265
- const visibleHeight = el.clientHeight;
266
- let traveled = 0;
267
- let targetKey = currentKey;
268
-
269
- while (targetKey != null && traveled < visibleHeight) {
270
- const nextKey = collection.getKeyAfter(targetKey);
271
- if (nextKey == null) break;
272
-
273
- // Try to measure the item height
274
- const itemElement = el.querySelector(`[data-key="${targetKey}"]`);
275
- traveled += itemElement?.clientHeight ?? 32;
276
-
277
- // Skip disabled items
278
- if (!isDisabled(nextKey)) {
279
- targetKey = nextKey;
280
- } else {
281
- // Skip over disabled items without counting them
282
- const afterDisabled = findNextNonDisabledKey(collection, nextKey, 'next', isDisabled, false);
283
- if (afterDisabled != null) {
284
- targetKey = afterDisabled;
285
- } else {
286
- break;
287
- }
288
- }
289
- }
290
-
291
- if (targetKey != null && targetKey !== currentKey) {
292
- state.setFocusedKey(targetKey);
293
- }
294
- } else {
295
- // Fallback: move by DEFAULT_PAGE_SIZE items
296
- let count = DEFAULT_PAGE_SIZE;
297
- let targetKey = currentKey;
298
-
299
- while (count > 0 && targetKey != null) {
300
- const nextKey = findNextNonDisabledKey(collection, targetKey, 'next', isDisabled, false);
301
- if (nextKey == null) break;
302
- targetKey = nextKey;
303
- count--;
304
- }
305
-
306
- if (targetKey != null) {
307
- state.setFocusedKey(targetKey);
308
- }
309
- }
310
- break;
311
- }
312
- case 'PageUp': {
313
- e.preventDefault();
314
- const currentKey = state.focusedKey();
315
- const el = ref?.();
316
-
317
- if (el) {
318
- // Use DOM measurements to calculate how many items fit in a page
319
- const visibleHeight = el.clientHeight;
320
- let traveled = 0;
321
- let targetKey = currentKey;
322
-
323
- while (targetKey != null && traveled < visibleHeight) {
324
- const prevKey = collection.getKeyBefore(targetKey);
325
- if (prevKey == null) break;
326
-
327
- // Try to measure the item height
328
- const itemElement = el.querySelector(`[data-key="${targetKey}"]`);
329
- traveled += itemElement?.clientHeight ?? 32;
330
-
331
- // Skip disabled items
332
- if (!isDisabled(prevKey)) {
333
- targetKey = prevKey;
334
- } else {
335
- // Skip over disabled items without counting them
336
- const beforeDisabled = findNextNonDisabledKey(collection, prevKey, 'prev', isDisabled, false);
337
- if (beforeDisabled != null) {
338
- targetKey = beforeDisabled;
339
- } else {
340
- break;
341
- }
342
- }
343
- }
344
-
345
- if (targetKey != null && targetKey !== currentKey) {
346
- state.setFocusedKey(targetKey);
347
- }
348
- } else {
349
- // Fallback: move by DEFAULT_PAGE_SIZE items
350
- let count = DEFAULT_PAGE_SIZE;
351
- let targetKey = currentKey;
352
-
353
- while (count > 0 && targetKey != null) {
354
- const prevKey = findNextNonDisabledKey(collection, targetKey, 'prev', isDisabled, false);
355
- if (prevKey == null) break;
356
- targetKey = prevKey;
357
- count--;
358
- }
359
-
360
- if (targetKey != null) {
361
- state.setFocusedKey(targetKey);
362
- }
363
- }
364
- break;
365
- }
366
- }
367
- };
368
-
369
- return {
370
- get labelProps() {
371
- return labelProps as JSX.HTMLAttributes<HTMLElement>;
372
- },
373
- get menuProps() {
374
- const p = getProps();
375
-
376
- const baseProps = mergeProps(
377
- domProps(),
378
- focusWithinProps as Record<string, unknown>,
379
- fieldProps as Record<string, unknown>,
380
- {
381
- role: 'menu',
382
- tabIndex: p.isDisabled ? undefined : 0,
383
- 'aria-disabled': p.isDisabled || undefined,
384
- onKeyDown,
385
- } as Record<string, unknown>
386
- );
387
-
388
- // Add type-select props if enabled
389
- if (!p.disallowTypeAhead) {
390
- return mergeProps(baseProps, typeSelectProps as Record<string, unknown>) as JSX.HTMLAttributes<HTMLElement>;
391
- }
392
-
393
- return baseProps as JSX.HTMLAttributes<HTMLElement>;
394
- },
395
- };
396
- }
@@ -1,149 +0,0 @@
1
- /**
2
- * Provides the behavior and accessibility implementation for a menu item.
3
- * Based on @react-aria/menu useMenuItem.
4
- */
5
-
6
- import { type JSX, type Accessor } from 'solid-js';
7
- import { createPress } from '../interactions/createPress';
8
- import { createHover } from '../interactions/createHover';
9
- import { createFocusRing } from '../interactions/createFocusRing';
10
- import { mergeProps } from '../utils/mergeProps';
11
- import { access, type MaybeAccessor } from '../utils/reactivity';
12
- import { getMenuData } from './createMenu';
13
- import type { MenuState, Key } from '@proyecto-viviana/solid-stately';
14
-
15
- export interface AriaMenuItemProps {
16
- /** The unique key for the menu item. */
17
- key: Key;
18
- /** Whether the menu item is disabled. */
19
- isDisabled?: boolean;
20
- /** An accessible label for the menu item. */
21
- 'aria-label'?: string;
22
- /** Handler called when the menu item is selected. */
23
- onAction?: () => void;
24
- /** Whether to close the menu when this item is selected. */
25
- closeOnSelect?: boolean;
26
- }
27
-
28
- export interface MenuItemAria {
29
- /** Props for the menu item element. */
30
- menuItemProps: JSX.HTMLAttributes<HTMLElement>;
31
- /** Props for the label text inside the menu item. */
32
- labelProps: JSX.HTMLAttributes<HTMLElement>;
33
- /** Props for the description text inside the menu item. */
34
- descriptionProps: JSX.HTMLAttributes<HTMLElement>;
35
- /** Props for the keyboard shortcut inside the menu item. */
36
- keyboardShortcutProps: JSX.HTMLAttributes<HTMLElement>;
37
- /** Whether the menu item is currently focused. */
38
- isFocused: Accessor<boolean>;
39
- /** Whether the menu item is keyboard focused. */
40
- isFocusVisible: Accessor<boolean>;
41
- /** Whether the menu item is currently pressed. */
42
- isPressed: Accessor<boolean>;
43
- /** Whether the menu item is disabled. */
44
- isDisabled: Accessor<boolean>;
45
- }
46
-
47
- /**
48
- * Provides the behavior and accessibility implementation for a menu item.
49
- */
50
- export function createMenuItem<T>(
51
- props: MaybeAccessor<AriaMenuItemProps>,
52
- state: MenuState<T>,
53
- _ref?: () => HTMLElement | null
54
- ): MenuItemAria {
55
- const getProps = () => access(props);
56
-
57
- // Get shared data from menu
58
- const getData = () => getMenuData(state);
59
-
60
- // Computed states
61
- const isDisabled: Accessor<boolean> = () => {
62
- return getProps().isDisabled ?? state.isDisabled(getProps().key);
63
- };
64
-
65
- const isFocused: Accessor<boolean> = () => {
66
- return state.focusedKey() === getProps().key;
67
- };
68
-
69
- // Handle press
70
- const { pressProps, isPressed } = createPress({
71
- get isDisabled() {
72
- return isDisabled();
73
- },
74
- onPress() {
75
- const p = getProps();
76
- const key = p.key;
77
- const data = getData();
78
-
79
- // Call item-specific onAction
80
- p.onAction?.();
81
-
82
- // Call menu-level onAction
83
- data?.onAction?.(key);
84
-
85
- // Close menu if closeOnSelect is not explicitly false
86
- if (p.closeOnSelect !== false) {
87
- data?.onClose?.();
88
- }
89
- },
90
- });
91
-
92
- // Handle hover
93
- const { hoverProps } = createHover({
94
- get isDisabled() {
95
- return isDisabled();
96
- },
97
- onHoverStart() {
98
- state.setFocusedKey(getProps().key);
99
- },
100
- });
101
-
102
- // Handle focus ring
103
- const { isFocusVisible, focusProps } = createFocusRing();
104
-
105
- // Generate unique IDs for label and description
106
- const labelId = `${getProps().key}-label`;
107
- const descriptionId = `${getProps().key}-desc`;
108
- const keyboardId = `${getProps().key}-kbd`;
109
-
110
- return {
111
- get menuItemProps() {
112
- const key = getProps().key;
113
- const ariaLabel = getProps()['aria-label'];
114
-
115
- return mergeProps(
116
- pressProps as Record<string, unknown>,
117
- hoverProps as Record<string, unknown>,
118
- focusProps as Record<string, unknown>,
119
- {
120
- role: 'menuitem',
121
- id: String(key),
122
- 'aria-disabled': isDisabled() || undefined,
123
- 'aria-label': ariaLabel,
124
- 'aria-labelledby': !ariaLabel ? labelId : undefined,
125
- 'aria-describedby': descriptionId,
126
- tabIndex: isFocused() ? 0 : -1,
127
- 'data-focused': isFocused() || undefined,
128
- 'data-focus-visible': isFocusVisible() || undefined,
129
- 'data-pressed': isPressed() || undefined,
130
- 'data-disabled': isDisabled() || undefined,
131
- } as Record<string, unknown>
132
- ) as JSX.HTMLAttributes<HTMLElement>;
133
- },
134
- labelProps: {
135
- id: labelId,
136
- },
137
- descriptionProps: {
138
- id: descriptionId,
139
- },
140
- keyboardShortcutProps: {
141
- id: keyboardId,
142
- 'aria-hidden': true,
143
- },
144
- isFocused,
145
- isFocusVisible: () => isFocused() && isFocusVisible(),
146
- isPressed,
147
- isDisabled,
148
- };
149
- }
@@ -1,88 +0,0 @@
1
- /**
2
- * Provides the behavior and accessibility implementation for a menu trigger.
3
- * Based on @react-aria/menu useMenuTrigger.
4
- */
5
-
6
- import { type JSX } from 'solid-js';
7
- import { createId } from '../ssr';
8
- import { access, type MaybeAccessor } from '../utils/reactivity';
9
- import type { OverlayTriggerState } from '@proyecto-viviana/solid-stately';
10
-
11
- export interface AriaMenuTriggerProps {
12
- /** The type of menu that the menu trigger opens. */
13
- type?: 'menu' | 'listbox';
14
- /** Whether the menu trigger is disabled. */
15
- isDisabled?: boolean;
16
- /** An ID for the menu. */
17
- id?: string;
18
- }
19
-
20
- export interface MenuTriggerAria {
21
- /** Props for the menu trigger button. */
22
- menuTriggerProps: JSX.HTMLAttributes<HTMLElement> & {
23
- onPress: () => void;
24
- onKeyDown: (e: KeyboardEvent) => void;
25
- };
26
- /** Props for the menu element. */
27
- menuProps: JSX.HTMLAttributes<HTMLElement>;
28
- }
29
-
30
- /**
31
- * Provides the behavior and accessibility implementation for a menu trigger.
32
- */
33
- export function createMenuTrigger(
34
- props: MaybeAccessor<AriaMenuTriggerProps>,
35
- state: OverlayTriggerState
36
- ): MenuTriggerAria {
37
- const getProps = () => access(props);
38
- const menuId = createId(getProps().id);
39
-
40
- const onPress = () => {
41
- if (!getProps().isDisabled) {
42
- state.toggle();
43
- }
44
- };
45
-
46
- const onKeyDown = (e: KeyboardEvent) => {
47
- if (getProps().isDisabled) return;
48
-
49
- switch (e.key) {
50
- case 'Enter':
51
- case ' ':
52
- case 'ArrowDown': {
53
- e.preventDefault();
54
- if (!state.isOpen()) {
55
- state.open();
56
- }
57
- break;
58
- }
59
- case 'ArrowUp': {
60
- e.preventDefault();
61
- if (!state.isOpen()) {
62
- state.open();
63
- }
64
- break;
65
- }
66
- }
67
- };
68
-
69
- return {
70
- get menuTriggerProps() {
71
- const p = getProps();
72
- const type = p.type ?? 'menu';
73
- const isOpen = state.isOpen();
74
-
75
- return {
76
- 'aria-haspopup': type,
77
- 'aria-expanded': isOpen,
78
- 'aria-controls': isOpen ? menuId : undefined,
79
- 'aria-disabled': p.isDisabled || undefined,
80
- onPress,
81
- onKeyDown,
82
- };
83
- },
84
- menuProps: {
85
- id: menuId,
86
- },
87
- };
88
- }
package/src/menu/index.ts DELETED
@@ -1,18 +0,0 @@
1
- export {
2
- createMenu,
3
- getMenuData,
4
- type AriaMenuProps,
5
- type MenuAria,
6
- } from './createMenu';
7
-
8
- export {
9
- createMenuItem,
10
- type AriaMenuItemProps,
11
- type MenuItemAria,
12
- } from './createMenuItem';
13
-
14
- export {
15
- createMenuTrigger,
16
- type AriaMenuTriggerProps,
17
- type MenuTriggerAria,
18
- } from './createMenuTrigger';