@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,101 +0,0 @@
1
- import { Accessor, createSignal } from 'solid-js';
2
- import { createButton } from './createButton';
3
- import { mergeProps } from '../utils';
4
- import type { AriaButtonProps, ButtonAria } from './types';
5
- import type { PressEvent } from '../interactions';
6
-
7
- export interface AriaToggleButtonProps extends Omit<AriaButtonProps, 'aria-pressed'> {
8
- /** Whether the button is selected (controlled). */
9
- isSelected?: Accessor<boolean> | boolean;
10
- /** Handler called when the button's selection state changes. */
11
- onChange?: (isSelected: boolean) => void;
12
- /** The default selected state (uncontrolled). */
13
- defaultSelected?: boolean;
14
- }
15
-
16
- export interface ToggleButtonAria extends ButtonAria {
17
- /** Whether the button is currently selected. */
18
- isSelected: Accessor<boolean>;
19
- }
20
-
21
- function getSelectedValue(isSelected: Accessor<boolean> | boolean | undefined): boolean {
22
- if (typeof isSelected === 'function') {
23
- return isSelected();
24
- }
25
- return isSelected ?? false;
26
- }
27
-
28
- /**
29
- * Provides the behavior and accessibility implementation for a toggle button component.
30
- * Toggle buttons allow users to toggle a selection on or off.
31
- *
32
- * Based on react-aria's useToggleButton but adapted for SolidJS.
33
- *
34
- * @example
35
- * ```tsx
36
- * import { createToggleButton } from 'solidaria';
37
- *
38
- * function ToggleButton(props) {
39
- * const { buttonProps, isPressed, isSelected } = createToggleButton(props);
40
- *
41
- * return (
42
- * <button
43
- * {...buttonProps}
44
- * class={isSelected() ? 'selected' : ''}
45
- * style={{ opacity: isPressed() ? 0.8 : 1 }}
46
- * >
47
- * {props.children}
48
- * </button>
49
- * );
50
- * }
51
- * ```
52
- */
53
- export function createToggleButton(props: AriaToggleButtonProps = {}): ToggleButtonAria {
54
- // Handle controlled vs uncontrolled state
55
- const isControlled = props.isSelected !== undefined;
56
- const [uncontrolledSelected, setUncontrolledSelected] = createSignal(
57
- props.defaultSelected ?? false
58
- );
59
-
60
- const isSelected = (): boolean => {
61
- if (isControlled) {
62
- return getSelectedValue(props.isSelected);
63
- }
64
- return uncontrolledSelected();
65
- };
66
-
67
- const toggleSelection = () => {
68
- const newValue = !isSelected();
69
- if (!isControlled) {
70
- setUncontrolledSelected(newValue);
71
- }
72
- props.onChange?.(newValue);
73
- };
74
-
75
- // Create the press handler that toggles selection
76
- const onPress = (e: PressEvent) => {
77
- toggleSelection();
78
- props.onPress?.(e);
79
- };
80
-
81
- // Get button props with our custom press handler
82
- const { buttonProps: baseButtonProps, isPressed } = createButton(
83
- mergeProps(props, {
84
- onPress,
85
- }) as AriaButtonProps
86
- );
87
-
88
- // Create buttonProps with a getter for aria-pressed so it stays reactive
89
- const buttonProps = {
90
- ...baseButtonProps,
91
- get 'aria-pressed'() {
92
- return isSelected();
93
- },
94
- };
95
-
96
- return {
97
- buttonProps,
98
- isPressed,
99
- isSelected,
100
- };
101
- }
@@ -1,4 +0,0 @@
1
- export { createButton } from './createButton';
2
- export { createToggleButton } from './createToggleButton';
3
- export type { AriaButtonProps, ButtonAria } from './types';
4
- export type { AriaToggleButtonProps, ToggleButtonAria } from './createToggleButton';
@@ -1,78 +0,0 @@
1
- import { Accessor } from 'solid-js';
2
- import { PressEvent } from '../interactions';
3
-
4
- export interface AriaButtonProps {
5
- /** Whether the button is disabled. */
6
- isDisabled?: Accessor<boolean> | boolean;
7
- /** Handler called when the press is released over the target. */
8
- onPress?: (e: PressEvent) => void;
9
- /** Handler called when a press interaction starts. */
10
- onPressStart?: (e: PressEvent) => void;
11
- /** Handler called when a press interaction ends. */
12
- onPressEnd?: (e: PressEvent) => void;
13
- /** Handler called when a press is released over the target. */
14
- onPressUp?: (e: PressEvent) => void;
15
- /** Handler called when the press state changes. */
16
- onPressChange?: (isPressed: boolean) => void;
17
- /**
18
- * A native click handler, useful for form submission.
19
- * Note: `onPress` is preferred for cross-device compatibility.
20
- */
21
- onClick?: (e: MouseEvent) => void;
22
- /** Whether the button should not receive focus on press. */
23
- preventFocusOnPress?: boolean;
24
- /**
25
- * Whether to allow focus on the button when it is disabled.
26
- * This enables showing tooltips on disabled buttons.
27
- * When true, the button gets `tabIndex=-1` instead of being removed from tab order.
28
- */
29
- allowFocusWhenDisabled?: boolean;
30
- /** Whether the element should receive focus on render. */
31
- autoFocus?: boolean;
32
- /** The HTML element type to use for the button. */
33
- elementType?: 'button' | 'a' | 'div' | 'input' | 'span';
34
- /** The URL to link to (for anchor elements). */
35
- href?: string;
36
- /** The target for the link (for anchor elements). */
37
- target?: string;
38
- /** The rel attribute for the link (for anchor elements). */
39
- rel?: string;
40
- /** The type attribute for button elements. */
41
- type?: 'button' | 'submit' | 'reset';
42
- /** Whether the button is in a pressed state (controlled). */
43
- 'aria-pressed'?: boolean | 'true' | 'false' | 'mixed';
44
- /** Whether the button has a popup. */
45
- 'aria-haspopup'?: boolean | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | 'true' | 'false';
46
- /** Whether the popup is expanded. */
47
- 'aria-expanded'?: boolean | 'true' | 'false';
48
- /** The accessible label for the button. */
49
- 'aria-label'?: string;
50
- /** The id of the element that labels the button. */
51
- 'aria-labelledby'?: string;
52
- /** The id of the element that describes the button. */
53
- 'aria-describedby'?: string;
54
- /** Identifies the element (or elements) whose contents or presence are controlled by the button. */
55
- 'aria-controls'?: string;
56
- /** Indicates the current "pressed" state of toggle buttons. */
57
- 'aria-current'?: boolean | 'page' | 'step' | 'location' | 'date' | 'time' | 'true' | 'false';
58
- /** Additional attributes for form buttons. */
59
- form?: string;
60
- formAction?: string;
61
- formEncType?: string;
62
- formMethod?: string;
63
- formNoValidate?: boolean;
64
- formTarget?: string;
65
- /** The name attribute for form buttons. */
66
- name?: string;
67
- /** The value attribute for form buttons. */
68
- value?: string;
69
- /** Whether to exclude the button from the tab order. */
70
- excludeFromTabOrder?: boolean;
71
- }
72
-
73
- export interface ButtonAria {
74
- /** Props to spread on the button element. */
75
- buttonProps: Record<string, unknown>;
76
- /** Whether the button is currently pressed. */
77
- isPressed: Accessor<boolean>;
78
- }
@@ -1,138 +0,0 @@
1
- /**
2
- * createCalendar hook for Solidaria
3
- *
4
- * Provides the behavior and accessibility implementation for a calendar component.
5
- * Based on @react-aria/calendar useCalendar
6
- */
7
-
8
- import { createMemo } from 'solid-js';
9
- import { createId } from '../ssr';
10
- import { access, type MaybeAccessor } from '../utils/reactivity';
11
- import { mergeProps } from '../utils/mergeProps';
12
- import type { CalendarState } from '@proyecto-viviana/solid-stately';
13
-
14
- // ============================================
15
- // TYPES
16
- // ============================================
17
-
18
- export interface AriaCalendarProps {
19
- /** An ID for the calendar. */
20
- id?: string;
21
- /** Whether the calendar is disabled. */
22
- isDisabled?: boolean;
23
- /** Whether the calendar is read-only. */
24
- isReadOnly?: boolean;
25
- /** An accessible label for the calendar. */
26
- 'aria-label'?: string;
27
- /** The ID of an element that labels the calendar. */
28
- 'aria-labelledby'?: string;
29
- /** The ID of an element that describes the calendar. */
30
- 'aria-describedby'?: string;
31
- /** Minimum number of visible months. */
32
- visibleMonths?: number;
33
- }
34
-
35
- export interface CalendarAria {
36
- /** Props for the calendar container element. */
37
- calendarProps: Record<string, unknown>;
38
- /** Props for the previous button. */
39
- prevButtonProps: Record<string, unknown>;
40
- /** Props for the next button. */
41
- nextButtonProps: Record<string, unknown>;
42
- /** Props for the title/heading element. */
43
- titleProps: Record<string, unknown>;
44
- /** An accessible label for the title. */
45
- title: string;
46
- }
47
-
48
- // ============================================
49
- // IMPLEMENTATION
50
- // ============================================
51
-
52
- /**
53
- * Provides the behavior and accessibility implementation for a calendar component.
54
- */
55
- export function createCalendar<T extends CalendarState>(
56
- props: MaybeAccessor<AriaCalendarProps>,
57
- state: T
58
- ): CalendarAria {
59
- const getProps = () => access(props);
60
- const id = createId(getProps().id);
61
- const titleId = createId();
62
-
63
- // Title (e.g., "December 2024")
64
- const title = createMemo(() => state.title());
65
-
66
- // Previous button props
67
- const prevButtonProps = createMemo(() => {
68
- const p = getProps();
69
- const isDisabled = p.isDisabled || state.isDisabled();
70
-
71
- return {
72
- 'aria-label': 'Previous month',
73
- onClick: () => {
74
- if (!isDisabled) {
75
- state.focusPreviousPage();
76
- }
77
- },
78
- disabled: isDisabled,
79
- tabIndex: -1,
80
- };
81
- });
82
-
83
- // Next button props
84
- const nextButtonProps = createMemo(() => {
85
- const p = getProps();
86
- const isDisabled = p.isDisabled || state.isDisabled();
87
-
88
- return {
89
- 'aria-label': 'Next month',
90
- onClick: () => {
91
- if (!isDisabled) {
92
- state.focusNextPage();
93
- }
94
- },
95
- disabled: isDisabled,
96
- tabIndex: -1,
97
- };
98
- });
99
-
100
- // Title props
101
- const titleProps = createMemo(() => ({
102
- id: titleId,
103
- 'aria-live': 'polite' as const,
104
- }));
105
-
106
- // Calendar container props
107
- const calendarProps = createMemo(() => {
108
- const p = getProps();
109
-
110
- return mergeProps(
111
- {
112
- id,
113
- role: 'group',
114
- 'aria-labelledby': p['aria-labelledby'] ?? titleId,
115
- 'aria-label': p['aria-label'],
116
- 'aria-describedby': p['aria-describedby'],
117
- }
118
- );
119
- });
120
-
121
- return {
122
- get calendarProps() {
123
- return calendarProps();
124
- },
125
- get prevButtonProps() {
126
- return prevButtonProps();
127
- },
128
- get nextButtonProps() {
129
- return nextButtonProps();
130
- },
131
- get titleProps() {
132
- return titleProps();
133
- },
134
- get title() {
135
- return title();
136
- },
137
- };
138
- }
@@ -1,187 +0,0 @@
1
- /**
2
- * createCalendarCell hook for Solidaria
3
- *
4
- * Provides the behavior and accessibility implementation for a calendar cell.
5
- * Based on @react-aria/calendar useCalendarCell
6
- */
7
-
8
- import { createSignal, createMemo, onMount } from 'solid-js';
9
- import { access, type MaybeAccessor } from '../utils/reactivity';
10
- import type { CalendarState, CalendarDate, DateValue } from '@proyecto-viviana/solid-stately';
11
- import { isToday as isTodayUtil, DateFormatter, getLocalTimeZone } from '@internationalized/date';
12
-
13
- // ============================================
14
- // TYPES
15
- // ============================================
16
-
17
- export interface AriaCalendarCellProps {
18
- /** The date represented by the cell. */
19
- date: DateValue;
20
- /** Whether the cell is disabled. */
21
- isDisabled?: boolean;
22
- }
23
-
24
- export interface CalendarCellAria {
25
- /** Props for the cell element (td or gridcell). */
26
- cellProps: Record<string, unknown>;
27
- /** Props for the button inside the cell. */
28
- buttonProps: Record<string, unknown>;
29
- /** Whether the cell is selected. */
30
- isSelected: boolean;
31
- /** Whether the cell is focused. */
32
- isFocused: boolean;
33
- /** Whether the cell is disabled. */
34
- isDisabled: boolean;
35
- /** Whether the cell is unavailable (e.g., booked date). */
36
- isUnavailable: boolean;
37
- /** Whether the cell is outside the visible month. */
38
- isOutsideMonth: boolean;
39
- /** Whether the cell represents today. */
40
- isToday: boolean;
41
- /** Whether the cell is pressed. */
42
- isPressed: boolean;
43
- /** The formatted date string. */
44
- formattedDate: string;
45
- }
46
-
47
- // ============================================
48
- // IMPLEMENTATION
49
- // ============================================
50
-
51
- /**
52
- * Provides the behavior and accessibility implementation for a calendar cell.
53
- */
54
- export function createCalendarCell<T extends CalendarState>(
55
- props: MaybeAccessor<AriaCalendarCellProps>,
56
- state: T,
57
- ref?: () => HTMLElement | null
58
- ): CalendarCellAria {
59
- const getProps = () => access(props);
60
- const [isPressed, setIsPressed] = createSignal(false);
61
- const timeZone = getLocalTimeZone();
62
-
63
- // Get the date from props
64
- const date = createMemo(() => getProps().date as CalendarDate);
65
-
66
- // Check states
67
- const isSelected = createMemo(() => state.isSelected(date()));
68
- const isFocused = createMemo(() => state.isCellFocused(date()));
69
- const isDisabled = createMemo(() => {
70
- return getProps().isDisabled || state.isCellDisabled(date());
71
- });
72
- const isUnavailable = createMemo(() => state.isCellUnavailable(date()));
73
- const isOutsideMonth = createMemo(() => state.isOutsideVisibleRange(date()));
74
- const isToday = createMemo(() => isTodayUtil(date(), timeZone));
75
-
76
- // Format the date for display
77
- const formattedDate = createMemo(() => {
78
- return date().day.toString();
79
- });
80
-
81
- // Handle pointer down - this is where selection happens
82
- // Using pointerdown instead of click ensures selection happens immediately
83
- // before focus changes can interfere with the event
84
- const handlePointerDown = (e: PointerEvent) => {
85
- if (!isDisabled() && !isUnavailable()) {
86
- setIsPressed(true);
87
- // Select the date on pointer down for immediate response
88
- // This matches React Aria's behavior of using onPressStart
89
- state.selectDate(date());
90
- // Prevent default to avoid double-triggering with onClick
91
- e.preventDefault();
92
- }
93
- };
94
-
95
- // Handle click - kept for accessibility (keyboard Enter/Space)
96
- const handleClick = () => {
97
- // Only select on click if not already selected via pointerdown
98
- // This handles keyboard activation (Enter/Space)
99
- if (!isDisabled() && !isUnavailable()) {
100
- state.selectDate(date());
101
- }
102
- };
103
-
104
- const handlePointerUp = () => {
105
- setIsPressed(false);
106
- };
107
-
108
- // Focus the button when it becomes focused in state
109
- onMount(() => {
110
- const element = ref?.();
111
- if (element && isFocused()) {
112
- element.focus();
113
- }
114
- });
115
-
116
- // Cell props (for the td element)
117
- const cellProps = createMemo(() => ({
118
- role: 'gridcell',
119
- 'aria-disabled': isDisabled() || undefined,
120
- 'aria-selected': isSelected() || undefined,
121
- }));
122
-
123
- // Button props (for the interactive element inside)
124
- const buttonProps = createMemo(() => {
125
- const d = date();
126
- const formatter = new DateFormatter('en-US', {
127
- weekday: 'long',
128
- year: 'numeric',
129
- month: 'long',
130
- day: 'numeric',
131
- });
132
-
133
- return {
134
- role: 'button',
135
- tabIndex: isFocused() ? 0 : -1,
136
- 'aria-label': formatter.format(d.toDate(timeZone)),
137
- 'aria-disabled': isDisabled() || undefined,
138
- 'aria-pressed': isPressed() || undefined,
139
- disabled: isDisabled(),
140
- onClick: handleClick,
141
- onPointerDown: handlePointerDown,
142
- onPointerUp: handlePointerUp,
143
- onPointerLeave: handlePointerUp,
144
- onFocus: () => {
145
- // Only update if this cell isn't already the focused date
146
- // This prevents infinite loops when focus is programmatically set
147
- if (!state.isCellFocused(d)) {
148
- state.setFocusedDate(d);
149
- }
150
- state.setFocused(true);
151
- },
152
- };
153
- });
154
-
155
- return {
156
- get cellProps() {
157
- return cellProps();
158
- },
159
- get buttonProps() {
160
- return buttonProps();
161
- },
162
- get isSelected() {
163
- return isSelected();
164
- },
165
- get isFocused() {
166
- return isFocused();
167
- },
168
- get isDisabled() {
169
- return isDisabled();
170
- },
171
- get isUnavailable() {
172
- return isUnavailable();
173
- },
174
- get isOutsideMonth() {
175
- return isOutsideMonth();
176
- },
177
- get isToday() {
178
- return isToday();
179
- },
180
- get isPressed() {
181
- return isPressed();
182
- },
183
- get formattedDate() {
184
- return formattedDate();
185
- },
186
- };
187
- }
@@ -1,140 +0,0 @@
1
- /**
2
- * createCalendarGrid hook for Solidaria
3
- *
4
- * Provides the behavior and accessibility implementation for a calendar grid.
5
- * Based on @react-aria/calendar useCalendarGrid
6
- */
7
-
8
- import { createMemo, onMount, onCleanup } from 'solid-js';
9
- import { type MaybeAccessor } from '../utils/reactivity';
10
- import type { CalendarState, CalendarDate } from '@proyecto-viviana/solid-stately';
11
-
12
- // ============================================
13
- // TYPES
14
- // ============================================
15
-
16
- export interface AriaCalendarGridProps {
17
- /** The start date of the grid (defaults to start of focused month). */
18
- startDate?: CalendarDate;
19
- /** The end date of the grid (defaults to end of focused month). */
20
- endDate?: CalendarDate;
21
- /** The number of weeks to display. */
22
- weekdayStyle?: 'narrow' | 'short' | 'long';
23
- }
24
-
25
- export interface CalendarGridAria {
26
- /** Props for the grid element (table or grid role). */
27
- gridProps: Record<string, unknown>;
28
- /** Props for the header row. */
29
- headerProps: Record<string, unknown>;
30
- /** Week day labels for the header. */
31
- weekDays: string[];
32
- }
33
-
34
- // ============================================
35
- // IMPLEMENTATION
36
- // ============================================
37
-
38
- /**
39
- * Provides the behavior and accessibility implementation for a calendar grid.
40
- */
41
- export function createCalendarGrid<T extends CalendarState>(
42
- _props: MaybeAccessor<AriaCalendarGridProps>,
43
- state: T,
44
- ref?: () => HTMLElement | null
45
- ): CalendarGridAria {
46
- // Week days for headers
47
- const weekDays = createMemo(() => state.weekDays());
48
-
49
- // Handle keyboard navigation
50
- const handleKeyDown = (e: KeyboardEvent) => {
51
- if (state.isDisabled()) return;
52
-
53
- switch (e.key) {
54
- case 'ArrowLeft':
55
- e.preventDefault();
56
- state.focusPreviousDay();
57
- break;
58
- case 'ArrowRight':
59
- e.preventDefault();
60
- state.focusNextDay();
61
- break;
62
- case 'ArrowUp':
63
- e.preventDefault();
64
- state.focusPreviousWeek();
65
- break;
66
- case 'ArrowDown':
67
- e.preventDefault();
68
- state.focusNextWeek();
69
- break;
70
- case 'PageUp':
71
- e.preventDefault();
72
- if (e.shiftKey) {
73
- state.focusPreviousSection(); // Previous year
74
- } else {
75
- state.focusPreviousPage(); // Previous month
76
- }
77
- break;
78
- case 'PageDown':
79
- e.preventDefault();
80
- if (e.shiftKey) {
81
- state.focusNextSection(); // Next year
82
- } else {
83
- state.focusNextPage(); // Next month
84
- }
85
- break;
86
- case 'Home':
87
- e.preventDefault();
88
- state.focusPageStart();
89
- break;
90
- case 'End':
91
- e.preventDefault();
92
- state.focusPageEnd();
93
- break;
94
- case 'Enter':
95
- case ' ':
96
- e.preventDefault();
97
- state.selectFocusedDate();
98
- break;
99
- }
100
- };
101
-
102
- // Register keyboard listener
103
- onMount(() => {
104
- const element = ref?.();
105
- if (element) {
106
- element.addEventListener('keydown', handleKeyDown);
107
- onCleanup(() => {
108
- element.removeEventListener('keydown', handleKeyDown);
109
- });
110
- }
111
- });
112
-
113
- // Grid props
114
- const gridProps = createMemo(() => ({
115
- role: 'grid',
116
- 'aria-readonly': state.isReadOnly() || undefined,
117
- 'aria-disabled': state.isDisabled() || undefined,
118
- tabIndex: state.isFocused() ? 0 : -1,
119
- onFocus: () => state.setFocused(true),
120
- onBlur: () => state.setFocused(false),
121
- onKeyDown: handleKeyDown,
122
- }));
123
-
124
- // Header props
125
- const headerProps = createMemo(() => ({
126
- role: 'row',
127
- }));
128
-
129
- return {
130
- get gridProps() {
131
- return gridProps();
132
- },
133
- get headerProps() {
134
- return headerProps();
135
- },
136
- get weekDays() {
137
- return weekDays();
138
- },
139
- };
140
- }