@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,180 +0,0 @@
1
- /**
2
- * createGridListItem - Provides accessibility for a grid list item.
3
- * Based on @react-aria/gridlist/useGridListItem.
4
- */
5
-
6
- import { createMemo, createSignal, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import type { GridState, GridCollection } from '@proyecto-viviana/solid-stately';
9
- import type { AriaGridListItemProps, GridListItemAria } from './types';
10
- import { getGridListData } from './createGridList';
11
-
12
- /**
13
- * Creates accessibility props for a grid list item.
14
- */
15
- export function createGridListItem<T extends object, C extends GridCollection<T> = GridCollection<T>>(
16
- props: Accessor<AriaGridListItemProps>,
17
- state: Accessor<GridState<T, C>>,
18
- _ref: Accessor<HTMLLIElement | null>
19
- ): GridListItemAria {
20
- const [isPressed, setIsPressed] = createSignal(false);
21
-
22
- const isSelected = createMemo(() => {
23
- const s = state();
24
- const p = props();
25
- return s.isSelected(p.node.key);
26
- });
27
-
28
- const isDisabled = createMemo(() => {
29
- const s = state();
30
- const p = props();
31
- return s.isDisabled(p.node.key);
32
- });
33
-
34
- const isFocused = createMemo(() => {
35
- const s = state();
36
- const p = props();
37
- return s.focusedKey === p.node.key;
38
- });
39
-
40
- // Handle click/press for selection and actions
41
- const onClick = (e: MouseEvent) => {
42
- const s = state();
43
- const p = props();
44
-
45
- if (isDisabled()) return;
46
-
47
- // Get grid list metadata for actions
48
- const gridListData = getGridListData(s);
49
- const onAction = gridListData?.actions.onAction;
50
-
51
- // Handle selection
52
- if (s.selectionMode !== 'none') {
53
- if (e.shiftKey && s.selectionMode === 'multiple') {
54
- s.extendSelection(p.node.key);
55
- } else if (e.ctrlKey || e.metaKey) {
56
- s.toggleSelection(p.node.key);
57
- } else {
58
- // Replace selection or toggle if already selected
59
- if (isSelected() && s.selectedKeys !== 'all') {
60
- const selectedKeys = s.selectedKeys as Set<unknown>;
61
- if (selectedKeys.size === 1) {
62
- // Single selection, trigger action
63
- if (onAction) {
64
- onAction(p.node.key);
65
- }
66
- if (p.onAction) {
67
- p.onAction();
68
- }
69
- } else {
70
- s.replaceSelection(p.node.key);
71
- }
72
- } else {
73
- s.replaceSelection(p.node.key);
74
- }
75
- }
76
- } else {
77
- // No selection mode, just trigger action
78
- if (onAction) {
79
- onAction(p.node.key);
80
- }
81
- if (p.onAction) {
82
- p.onAction();
83
- }
84
- }
85
- };
86
-
87
- const onKeyDown = (e: KeyboardEvent) => {
88
- const s = state();
89
- const p = props();
90
-
91
- if (isDisabled()) return;
92
-
93
- if (e.key === 'Enter') {
94
- // Get grid list metadata for actions
95
- const gridListData = getGridListData(s);
96
- const onAction = gridListData?.actions.onAction;
97
-
98
- if (onAction || p.onAction) {
99
- e.preventDefault();
100
-
101
- if (onAction) {
102
- onAction(p.node.key);
103
- }
104
-
105
- if (p.onAction) {
106
- p.onAction();
107
- }
108
- }
109
- } else if (e.key === ' ') {
110
- // Space toggles selection
111
- if (s.selectionMode !== 'none') {
112
- e.preventDefault();
113
- s.toggleSelection(p.node.key);
114
- }
115
- }
116
- };
117
-
118
- const onFocus = () => {
119
- const s = state();
120
- const p = props();
121
- s.setFocusedKey(p.node.key);
122
- };
123
-
124
- const onPointerDown = () => {
125
- setIsPressed(true);
126
- };
127
-
128
- const onPointerUp = () => {
129
- setIsPressed(false);
130
- };
131
-
132
- const rowProps = createMemo(() => {
133
- const s = state();
134
- const p = props();
135
- const node = p.node;
136
-
137
- const baseProps: Record<string, unknown> = {
138
- role: 'row',
139
- 'aria-selected': s.selectionMode !== 'none' ? isSelected() : undefined,
140
- 'aria-disabled': isDisabled() || undefined,
141
- tabIndex: isFocused() ? 0 : -1,
142
- onClick,
143
- onKeyDown,
144
- onFocus,
145
- onPointerDown,
146
- onPointerUp,
147
- };
148
-
149
- // Add aria-rowindex for virtualized lists
150
- if (p.isVirtualized && node.rowIndex != null) {
151
- baseProps['aria-rowindex'] = node.rowIndex + 1; // 1-based
152
- }
153
-
154
- return baseProps as JSX.HTMLAttributes<HTMLLIElement>;
155
- });
156
-
157
- const gridCellProps = createMemo(() => {
158
- return {
159
- role: 'gridcell',
160
- } as JSX.HTMLAttributes<HTMLDivElement>;
161
- });
162
-
163
- return {
164
- get rowProps() {
165
- return rowProps();
166
- },
167
- get gridCellProps() {
168
- return gridCellProps();
169
- },
170
- get isSelected() {
171
- return isSelected();
172
- },
173
- get isDisabled() {
174
- return isDisabled();
175
- },
176
- get isPressed() {
177
- return isPressed();
178
- },
179
- };
180
- }
@@ -1,59 +0,0 @@
1
- /**
2
- * createGridListSelectionCheckbox - Provides accessibility for a grid list item selection checkbox.
3
- * Based on @react-aria/gridlist.
4
- */
5
-
6
- import { createMemo, type Accessor } from 'solid-js';
7
- import type { JSX } from 'solid-js';
8
- import { createId } from '@proyecto-viviana/solid-stately';
9
- import type { GridState, GridCollection } from '@proyecto-viviana/solid-stately';
10
- import type { AriaGridListSelectionCheckboxProps, GridListSelectionCheckboxAria } from './types';
11
-
12
- /**
13
- * Creates accessibility props for a grid list item selection checkbox.
14
- */
15
- export function createGridListSelectionCheckbox<T extends object, C extends GridCollection<T> = GridCollection<T>>(
16
- props: Accessor<AriaGridListSelectionCheckboxProps>,
17
- state: Accessor<GridState<T, C>>
18
- ): GridListSelectionCheckboxAria {
19
- const checkboxId = createId();
20
-
21
- const isSelected = createMemo(() => {
22
- const s = state();
23
- const p = props();
24
- return s.isSelected(p.key);
25
- });
26
-
27
- const isDisabled = createMemo(() => {
28
- const s = state();
29
- const p = props();
30
- return s.isDisabled(p.key);
31
- });
32
-
33
- const onChange = () => {
34
- const s = state();
35
- const p = props();
36
- if (!isDisabled()) {
37
- s.toggleSelection(p.key);
38
- }
39
- };
40
-
41
- const checkboxProps = createMemo(() => {
42
- const baseProps: Record<string, unknown> = {
43
- id: checkboxId,
44
- type: 'checkbox',
45
- checked: isSelected(),
46
- disabled: isDisabled(),
47
- onChange,
48
- 'aria-label': 'Select',
49
- };
50
-
51
- return baseProps as JSX.InputHTMLAttributes<HTMLInputElement>;
52
- });
53
-
54
- return {
55
- get checkboxProps() {
56
- return checkboxProps();
57
- },
58
- };
59
- }
@@ -1,16 +0,0 @@
1
- /**
2
- * GridList ARIA hooks for solidaria.
3
- */
4
-
5
- export { createGridList, getGridListData } from './createGridList';
6
- export { createGridListItem } from './createGridListItem';
7
- export { createGridListSelectionCheckbox } from './createGridListSelectionCheckbox';
8
-
9
- export type {
10
- AriaGridListProps,
11
- GridListAria,
12
- AriaGridListItemProps,
13
- GridListItemAria,
14
- AriaGridListSelectionCheckboxProps,
15
- GridListSelectionCheckboxAria,
16
- } from './types';
@@ -1,81 +0,0 @@
1
- /**
2
- * GridList ARIA types for GridList components.
3
- * Based on @react-aria/gridlist types.
4
- */
5
-
6
- import type { JSX } from 'solid-js';
7
- import type { Key, GridNode } from '@proyecto-viviana/solid-stately';
8
-
9
- /**
10
- * Props for the createGridList hook.
11
- */
12
- export interface AriaGridListProps {
13
- /** ID for the grid list element. */
14
- id?: string;
15
- /** ARIA label for the grid list. */
16
- 'aria-label'?: string;
17
- /** ARIA labelledby for the grid list. */
18
- 'aria-labelledby'?: string;
19
- /** ARIA describedby for the grid list. */
20
- 'aria-describedby'?: string;
21
- /** Whether the grid list uses virtual scrolling. */
22
- isVirtualized?: boolean;
23
- /** Handler for item actions. */
24
- onAction?: (key: Key) => void;
25
- /** Whether selection should occur on press up. */
26
- shouldSelectOnPressUp?: boolean;
27
- /** Whether the grid list is disabled. */
28
- isDisabled?: boolean;
29
- }
30
-
31
- /**
32
- * Return value from createGridList.
33
- */
34
- export interface GridListAria {
35
- /** Props to spread on the grid list element. */
36
- gridProps: JSX.HTMLAttributes<HTMLUListElement>;
37
- }
38
-
39
- /**
40
- * Props for the createGridListItem hook.
41
- */
42
- export interface AriaGridListItemProps {
43
- /** The item node. */
44
- node: GridNode<unknown>;
45
- /** Whether the grid list is virtualized. */
46
- isVirtualized?: boolean;
47
- /** Handler for item action. */
48
- onAction?: () => void;
49
- }
50
-
51
- /**
52
- * Return value from createGridListItem.
53
- */
54
- export interface GridListItemAria {
55
- /** Props to spread on the item element. */
56
- rowProps: JSX.HTMLAttributes<HTMLLIElement>;
57
- /** Props to spread on the grid cell wrapper. */
58
- gridCellProps: JSX.HTMLAttributes<HTMLDivElement>;
59
- /** Whether the item is selected. */
60
- isSelected: boolean;
61
- /** Whether the item is disabled. */
62
- isDisabled: boolean;
63
- /** Whether the item is pressed. */
64
- isPressed: boolean;
65
- }
66
-
67
- /**
68
- * Props for the createGridListSelectionCheckbox hook.
69
- */
70
- export interface AriaGridListSelectionCheckboxProps {
71
- /** The key of the item. */
72
- key: Key;
73
- }
74
-
75
- /**
76
- * Return value from createGridListSelectionCheckbox.
77
- */
78
- export interface GridListSelectionCheckboxAria {
79
- /** Props to spread on the checkbox input element. */
80
- checkboxProps: JSX.InputHTMLAttributes<HTMLInputElement>;
81
- }
@@ -1,266 +0,0 @@
1
- /**
2
- * NumberFormatter for solidaria
3
- *
4
- * A wrapper around Intl.NumberFormat with caching and polyfills.
5
- *
6
- * Port of @internationalized/number NumberFormatter.
7
- */
8
-
9
- // ============================================
10
- // FEATURE DETECTION
11
- // ============================================
12
-
13
- let supportsSignDisplay = false;
14
- try {
15
- supportsSignDisplay =
16
- new Intl.NumberFormat('de-DE', { signDisplay: 'exceptZero' }).resolvedOptions()
17
- .signDisplay === 'exceptZero';
18
- } catch {
19
- // Not supported
20
- }
21
-
22
- let supportsUnit = false;
23
- try {
24
- supportsUnit =
25
- new Intl.NumberFormat('de-DE', { style: 'unit', unit: 'degree' }).resolvedOptions()
26
- .style === 'unit';
27
- } catch {
28
- // Not supported
29
- }
30
-
31
- // ============================================
32
- // POLYFILLS
33
- // ============================================
34
-
35
- // Polyfill for units since Safari doesn't support them yet.
36
- // Currently only polyfilling the unit degree in narrow format.
37
- const UNITS: Record<string, Record<string, Record<string, string>>> = {
38
- degree: {
39
- narrow: {
40
- default: '°',
41
- 'ja-JP': ' 度',
42
- 'zh-TW': '度',
43
- 'sl-SI': ' °',
44
- },
45
- },
46
- };
47
-
48
- // ============================================
49
- // TYPES
50
- // ============================================
51
-
52
- export interface NumberFormatOptions extends Intl.NumberFormatOptions {
53
- /** Overrides default numbering system for the current locale. */
54
- numberingSystem?: string;
55
- }
56
-
57
- interface NumberRangeFormatPart extends Intl.NumberFormatPart {
58
- source: 'startRange' | 'endRange' | 'shared';
59
- }
60
-
61
- // ============================================
62
- // CACHE
63
- // ============================================
64
-
65
- const formatterCache = new Map<string, Intl.NumberFormat>();
66
-
67
- function getCachedNumberFormatter(
68
- locale: string,
69
- options: NumberFormatOptions = {}
70
- ): Intl.NumberFormat {
71
- let processedLocale = locale;
72
- const { numberingSystem } = options;
73
-
74
- if (numberingSystem && !processedLocale.includes('-nu-')) {
75
- if (!processedLocale.includes('-u-')) {
76
- processedLocale += '-u-';
77
- }
78
- processedLocale += `-nu-${numberingSystem}`;
79
- }
80
-
81
- let processedOptions = options;
82
- if (options.style === 'unit' && !supportsUnit) {
83
- const { unit, unitDisplay = 'short' } = options;
84
- if (!unit) {
85
- throw new Error('unit option must be provided with style: "unit"');
86
- }
87
- if (!UNITS[unit]?.[unitDisplay]) {
88
- throw new Error(`Unsupported unit ${unit} with unitDisplay = ${unitDisplay}`);
89
- }
90
- processedOptions = { ...options, style: 'decimal' };
91
- }
92
-
93
- const cacheKey =
94
- processedLocale +
95
- (processedOptions
96
- ? Object.entries(processedOptions)
97
- .sort((a, b) => (a[0] < b[0] ? -1 : 1))
98
- .join()
99
- : '');
100
-
101
- if (formatterCache.has(cacheKey)) {
102
- return formatterCache.get(cacheKey)!;
103
- }
104
-
105
- const numberFormatter = new Intl.NumberFormat(processedLocale, processedOptions);
106
- formatterCache.set(cacheKey, numberFormatter);
107
- return numberFormatter;
108
- }
109
-
110
- // ============================================
111
- // SIGN DISPLAY POLYFILL
112
- // ============================================
113
-
114
- function numberFormatSignDisplayPolyfill(
115
- numberFormat: Intl.NumberFormat,
116
- signDisplay: string,
117
- num: number
118
- ): string {
119
- if (signDisplay === 'auto') {
120
- return numberFormat.format(num);
121
- } else if (signDisplay === 'never') {
122
- return numberFormat.format(Math.abs(num));
123
- } else {
124
- let needsPositiveSign = false;
125
- let processedNum = num;
126
-
127
- if (signDisplay === 'always') {
128
- needsPositiveSign = num > 0 || Object.is(num, 0);
129
- } else if (signDisplay === 'exceptZero') {
130
- if (Object.is(num, -0) || Object.is(num, 0)) {
131
- processedNum = Math.abs(num);
132
- } else {
133
- needsPositiveSign = num > 0;
134
- }
135
- }
136
-
137
- if (needsPositiveSign) {
138
- const negative = numberFormat.format(-processedNum);
139
- const noSign = numberFormat.format(processedNum);
140
- // Ignore RTL/LTR marker characters
141
- const minus = negative.replace(noSign, '').replace(/\u200e|\u061C/, '');
142
- if ([...minus].length !== 1) {
143
- console.warn(
144
- 'solidaria i18n polyfill for NumberFormat signDisplay: Unsupported case'
145
- );
146
- }
147
- const positive = negative
148
- .replace(noSign, '!!!')
149
- .replace(minus, '+')
150
- .replace('!!!', noSign);
151
- return positive;
152
- } else {
153
- return numberFormat.format(processedNum);
154
- }
155
- }
156
- }
157
-
158
- // ============================================
159
- // NUMBER FORMATTER CLASS
160
- // ============================================
161
-
162
- /**
163
- * A wrapper around Intl.NumberFormat providing additional options, polyfills, and caching.
164
- *
165
- * @example
166
- * ```ts
167
- * const formatter = new NumberFormatter('en-US', {
168
- * style: 'currency',
169
- * currency: 'USD',
170
- * });
171
- * formatter.format(1234.56); // '$1,234.56'
172
- * ```
173
- */
174
- export class NumberFormatter implements Intl.NumberFormat {
175
- private numberFormatter: Intl.NumberFormat;
176
- private options: NumberFormatOptions;
177
-
178
- constructor(locale: string, options: NumberFormatOptions = {}) {
179
- this.numberFormatter = getCachedNumberFormatter(locale, options);
180
- this.options = options;
181
- }
182
-
183
- /** Formats a number value as a string, according to the locale and options. */
184
- format(value: number): string {
185
- let res = '';
186
-
187
- if (!supportsSignDisplay && this.options.signDisplay != null) {
188
- res = numberFormatSignDisplayPolyfill(
189
- this.numberFormatter,
190
- this.options.signDisplay,
191
- value
192
- );
193
- } else {
194
- res = this.numberFormatter.format(value);
195
- }
196
-
197
- if (this.options.style === 'unit' && !supportsUnit) {
198
- const { unit, unitDisplay = 'short', locale } = this.resolvedOptions();
199
- if (!unit) {
200
- return res;
201
- }
202
- const values = UNITS[unit]?.[unitDisplay];
203
- res += values[locale] || values.default;
204
- }
205
-
206
- return res;
207
- }
208
-
209
- /** Formats a number to an array of parts. */
210
- formatToParts(value: number): Intl.NumberFormatPart[] {
211
- return this.numberFormatter.formatToParts(value);
212
- }
213
-
214
- /** Formats a number range as a string. */
215
- formatRange(start: number, end: number): string {
216
- if (typeof this.numberFormatter.formatRange === 'function') {
217
- return this.numberFormatter.formatRange(start, end);
218
- }
219
-
220
- if (end < start) {
221
- throw new RangeError('End date must be >= start date');
222
- }
223
-
224
- // Fallback for old browsers
225
- return `${this.format(start)} – ${this.format(end)}`;
226
- }
227
-
228
- /** Formats a number range as an array of parts. */
229
- formatRangeToParts(start: number, end: number): NumberRangeFormatPart[] {
230
- if (typeof this.numberFormatter.formatRangeToParts === 'function') {
231
- return this.numberFormatter.formatRangeToParts(start, end);
232
- }
233
-
234
- if (end < start) {
235
- throw new RangeError('End date must be >= start date');
236
- }
237
-
238
- const startParts = this.numberFormatter.formatToParts(start);
239
- const endParts = this.numberFormatter.formatToParts(end);
240
- return [
241
- ...startParts.map((p) => ({ ...p, source: 'startRange' as const })),
242
- { type: 'literal' as const, value: ' – ', source: 'shared' as const },
243
- ...endParts.map((p) => ({ ...p, source: 'endRange' as const })),
244
- ];
245
- }
246
-
247
- /** Returns the resolved formatting options. */
248
- resolvedOptions(): Intl.ResolvedNumberFormatOptions {
249
- let options = this.numberFormatter.resolvedOptions();
250
-
251
- if (!supportsSignDisplay && this.options.signDisplay != null) {
252
- options = { ...options, signDisplay: this.options.signDisplay };
253
- }
254
-
255
- if (!supportsUnit && this.options.style === 'unit') {
256
- options = {
257
- ...options,
258
- style: 'unit',
259
- unit: this.options.unit,
260
- unitDisplay: this.options.unitDisplay,
261
- };
262
- }
263
-
264
- return options;
265
- }
266
- }
@@ -1,79 +0,0 @@
1
- /**
2
- * createCollator hook for solidaria
3
- *
4
- * Provides localized string comparison/collation with caching.
5
- *
6
- * Port of @react-aria/i18n useCollator.
7
- */
8
-
9
- import { createMemo } from 'solid-js';
10
- import { useLocale } from './locale';
11
- import { createCacheKey } from './utils';
12
-
13
- // ============================================
14
- // CACHE
15
- // ============================================
16
-
17
- const collatorCache = new Map<string, Intl.Collator>();
18
-
19
- /**
20
- * Gets or creates a cached collator.
21
- */
22
- function getCachedCollator(
23
- locale: string,
24
- options?: Intl.CollatorOptions
25
- ): Intl.Collator {
26
- const cacheKey = createCacheKey(locale, options as Record<string, unknown>);
27
-
28
- if (collatorCache.has(cacheKey)) {
29
- return collatorCache.get(cacheKey)!;
30
- }
31
-
32
- const collator = new Intl.Collator(locale, options);
33
- collatorCache.set(cacheKey, collator);
34
- return collator;
35
- }
36
-
37
- // ============================================
38
- // HOOK
39
- // ============================================
40
-
41
- /**
42
- * Provides localized string collation for the current locale.
43
- * Useful for sorting strings according to locale-specific rules.
44
- *
45
- * @example
46
- * ```tsx
47
- * function SortedList(props: { items: string[] }) {
48
- * const collator = createCollator();
49
- *
50
- * const sortedItems = () =>
51
- * [...props.items].sort((a, b) => collator().compare(a, b));
52
- *
53
- * return (
54
- * <ul>
55
- * <For each={sortedItems()}>
56
- * {(item) => <li>{item}</li>}
57
- * </For>
58
- * </ul>
59
- * );
60
- * }
61
- * ```
62
- *
63
- * @example
64
- * ```tsx
65
- * // Case-insensitive sorting
66
- * const collator = createCollator({ sensitivity: 'base' });
67
- *
68
- * // Numeric sorting
69
- * const numericCollator = createCollator({ numeric: true });
70
- * // ['a1', 'a10', 'a2'].sort(numericCollator().compare) -> ['a1', 'a2', 'a10']
71
- * ```
72
- */
73
- export function createCollator(
74
- options?: Intl.CollatorOptions
75
- ): () => Intl.Collator {
76
- const locale = useLocale();
77
-
78
- return createMemo(() => getCachedCollator(locale().locale, options));
79
- }