@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,356 +0,0 @@
1
- /**
2
- * Handles positioning overlays like popovers and menus relative to a trigger
3
- * element, and updating the position when the window resizes.
4
- *
5
- * Ported from @react-aria/overlays useOverlayPosition.
6
- */
7
-
8
- import { createEffect, createSignal, onCleanup, type JSX } from 'solid-js';
9
- import {
10
- calculatePosition,
11
- getRect,
12
- type Placement,
13
- type PlacementAxis,
14
- type PositionResult,
15
- } from './calculatePosition';
16
-
17
- export interface PositionProps {
18
- /**
19
- * The placement of the element with respect to its anchor element.
20
- * @default 'bottom'
21
- */
22
- placement?: Placement;
23
- /**
24
- * The placement padding that should be applied between the element and its
25
- * surrounding container.
26
- * @default 12
27
- */
28
- containerPadding?: number;
29
- /**
30
- * The additional offset applied along the main axis between the element and its
31
- * anchor element.
32
- * @default 0
33
- */
34
- offset?: number;
35
- /**
36
- * The additional offset applied along the cross axis between the element and its
37
- * anchor element.
38
- * @default 0
39
- */
40
- crossOffset?: number;
41
- /**
42
- * Whether the element should flip its orientation (e.g. top to bottom or left to right) when
43
- * there is insufficient room for it to render completely.
44
- * @default true
45
- */
46
- shouldFlip?: boolean;
47
- /** Whether the overlay is currently open. */
48
- isOpen?: boolean;
49
- }
50
-
51
- export interface AriaPositionProps extends PositionProps {
52
- /**
53
- * Cross size of the overlay arrow in pixels.
54
- * @default 0
55
- */
56
- arrowSize?: number;
57
- /**
58
- * Element that that serves as the positioning boundary.
59
- * @default document.body
60
- */
61
- boundaryElement?: Element;
62
- /**
63
- * The ref for the element which the overlay positions itself with respect to.
64
- */
65
- targetRef: () => Element | null;
66
- /**
67
- * The ref for the overlay element.
68
- */
69
- overlayRef: () => Element | null;
70
- /**
71
- * The ref for the arrow element.
72
- */
73
- arrowRef?: () => Element | null;
74
- /**
75
- * A ref for the scrollable region within the overlay.
76
- * @default overlayRef
77
- */
78
- scrollRef?: () => Element | null;
79
- /**
80
- * Whether the overlay should update its position automatically.
81
- * @default true
82
- */
83
- shouldUpdatePosition?: boolean;
84
- /** Handler that is called when the overlay should close. */
85
- onClose?: (() => void) | null;
86
- /**
87
- * The maxHeight specified for the overlay element.
88
- * By default, it will take all space up to the current viewport height.
89
- */
90
- maxHeight?: number;
91
- /**
92
- * The minimum distance the arrow's edge should be from the edge of the overlay element.
93
- * @default 0
94
- */
95
- arrowBoundaryOffset?: number;
96
- }
97
-
98
- export interface PositionAria {
99
- /** Props for the overlay container element. */
100
- overlayProps: JSX.HTMLAttributes<HTMLElement>;
101
- /** Props for the overlay tip arrow if any. */
102
- arrowProps: JSX.HTMLAttributes<HTMLElement>;
103
- /** Placement of the overlay with respect to the overlay trigger. */
104
- placement: () => PlacementAxis | null;
105
- /** The origin of the target in the overlay's coordinate system. Useful for animations. */
106
- triggerAnchorPoint: () => { x: number; y: number } | null;
107
- /** Updates the position of the overlay. */
108
- updatePosition: () => void;
109
- }
110
-
111
- const visualViewport = typeof document !== 'undefined' ? window.visualViewport : null;
112
-
113
- function translateRTL(position: string, direction: string): string {
114
- if (direction === 'rtl') {
115
- return position.replace('start', 'right').replace('end', 'left');
116
- }
117
- return position.replace('start', 'left').replace('end', 'right');
118
- }
119
-
120
- /**
121
- * Handles positioning overlays like popovers and menus relative to a trigger
122
- * element, and updating the position when the window resizes.
123
- */
124
- export function createOverlayPosition(props: AriaPositionProps): PositionAria {
125
- const direction = 'ltr'; // TODO: get from locale context
126
-
127
- const arrowSize = () => props.arrowSize ?? 0;
128
- const targetRef = () => props.targetRef();
129
- const overlayRef = () => props.overlayRef();
130
- const arrowRef = () => props.arrowRef?.() ?? null;
131
- const scrollRef = () => props.scrollRef?.() ?? overlayRef();
132
- const placement = () => (props.placement ?? 'bottom') as Placement;
133
- const containerPadding = () => props.containerPadding ?? 12;
134
- const shouldFlip = () => props.shouldFlip ?? true;
135
- const boundaryElement = () =>
136
- props.boundaryElement ?? (typeof document !== 'undefined' ? document.body : null);
137
- const offset = () => props.offset ?? 0;
138
- const crossOffset = () => props.crossOffset ?? 0;
139
- const shouldUpdatePosition = () => props.shouldUpdatePosition ?? true;
140
- const isOpen = () => props.isOpen ?? true;
141
- const onClose = () => props.onClose;
142
- const maxHeight = () => props.maxHeight;
143
- const arrowBoundaryOffset = () => props.arrowBoundaryOffset ?? 0;
144
-
145
- const [position, setPosition] = createSignal<PositionResult | null>(null);
146
-
147
- // Track the last scale to freeze overlay during pinch zoom
148
- let lastScale = visualViewport?.scale;
149
-
150
- createEffect(() => {
151
- if (isOpen()) {
152
- lastScale = visualViewport?.scale;
153
- }
154
- });
155
-
156
- const updatePosition = () => {
157
- const overlayNode = overlayRef();
158
- const targetNode = targetRef();
159
- const boundary = boundaryElement();
160
-
161
- if (!shouldUpdatePosition() || !isOpen() || !overlayNode || !targetNode || !boundary) {
162
- return;
163
- }
164
-
165
- if (visualViewport?.scale !== lastScale) {
166
- return;
167
- }
168
-
169
- const scrollNode = scrollRef();
170
- const arrowNode = arrowRef();
171
-
172
- // Reset overlay's previous max height
173
- const overlay = overlayNode as HTMLElement;
174
- if (!maxHeight() && overlayNode) {
175
- overlay.style.top = '0px';
176
- overlay.style.bottom = '';
177
- overlay.style.maxHeight = (window.visualViewport?.height ?? window.innerHeight) + 'px';
178
- }
179
-
180
- const result = calculatePosition({
181
- placement: translateRTL(placement(), direction) as Placement,
182
- overlayNode,
183
- targetNode,
184
- scrollNode: scrollNode || overlayNode,
185
- padding: containerPadding(),
186
- shouldFlip: shouldFlip(),
187
- boundaryElement: boundary,
188
- offset: offset(),
189
- crossOffset: crossOffset(),
190
- maxHeight: maxHeight(),
191
- arrowSize: arrowSize() ?? (arrowNode ? getRect(arrowNode, true).width : 0),
192
- arrowBoundaryOffset: arrowBoundaryOffset(),
193
- });
194
-
195
- if (!result.position) {
196
- return;
197
- }
198
-
199
- // Apply styles directly for immediate positioning
200
- overlay.style.top = '';
201
- overlay.style.bottom = '';
202
- overlay.style.left = '';
203
- overlay.style.right = '';
204
-
205
- Object.keys(result.position).forEach((key) => {
206
- (overlay.style as any)[key] = (result.position as any)[key] + 'px';
207
- });
208
- overlay.style.maxHeight = result.maxHeight != null ? result.maxHeight + 'px' : '';
209
-
210
- setPosition(result);
211
- };
212
-
213
- // Update position when dependencies change
214
- createEffect(() => {
215
- // Track all dependencies
216
- shouldUpdatePosition();
217
- placement();
218
- overlayRef();
219
- targetRef();
220
- arrowRef();
221
- scrollRef();
222
- containerPadding();
223
- shouldFlip();
224
- boundaryElement();
225
- offset();
226
- crossOffset();
227
- isOpen();
228
- maxHeight();
229
- arrowBoundaryOffset();
230
- arrowSize();
231
-
232
- updatePosition();
233
- });
234
-
235
- // Update position on window resize
236
- createEffect(() => {
237
- if (!isOpen()) return;
238
-
239
- const handleResize = () => updatePosition();
240
- window.addEventListener('resize', handleResize, false);
241
-
242
- onCleanup(() => {
243
- window.removeEventListener('resize', handleResize, false);
244
- });
245
- });
246
-
247
- // Update position when overlay changes size using ResizeObserver
248
- createEffect(() => {
249
- const overlayNode = overlayRef();
250
- if (!overlayNode || !isOpen()) return;
251
-
252
- const resizeObserver = new ResizeObserver(() => updatePosition());
253
- resizeObserver.observe(overlayNode);
254
-
255
- onCleanup(() => {
256
- resizeObserver.disconnect();
257
- });
258
- });
259
-
260
- // Update position when target changes size
261
- createEffect(() => {
262
- const targetNode = targetRef();
263
- if (!targetNode || !isOpen()) return;
264
-
265
- const resizeObserver = new ResizeObserver(() => updatePosition());
266
- resizeObserver.observe(targetNode);
267
-
268
- onCleanup(() => {
269
- resizeObserver.disconnect();
270
- });
271
- });
272
-
273
- // Handle visual viewport resize (for iOS virtual keyboard)
274
- createEffect(() => {
275
- if (!isOpen()) return;
276
-
277
- let timeout: ReturnType<typeof setTimeout>;
278
- let isResizing = false;
279
-
280
- const onResize = () => {
281
- isResizing = true;
282
- clearTimeout(timeout);
283
- timeout = setTimeout(() => {
284
- isResizing = false;
285
- }, 500);
286
- updatePosition();
287
- };
288
-
289
- const onScroll = () => {
290
- if (isResizing) {
291
- onResize();
292
- }
293
- };
294
-
295
- visualViewport?.addEventListener('resize', onResize);
296
- visualViewport?.addEventListener('scroll', onScroll);
297
-
298
- onCleanup(() => {
299
- visualViewport?.removeEventListener('resize', onResize);
300
- visualViewport?.removeEventListener('scroll', onScroll);
301
- clearTimeout(timeout);
302
- });
303
- });
304
-
305
- // Close on scroll (when scrolling a parent of the trigger)
306
- createEffect(() => {
307
- const targetNode = targetRef();
308
- const closeHandler = onClose();
309
- if (!targetNode || !isOpen() || !closeHandler) return;
310
-
311
- const handleScroll = (e: Event) => {
312
- const target = e.target as Element;
313
- // Don't close if scrolling within the overlay
314
- if (overlayRef()?.contains(target)) return;
315
- // Close if scrolling a parent of the target (but not body/html)
316
- if (
317
- target !== document.body &&
318
- target !== document.documentElement &&
319
- target.contains(targetNode)
320
- ) {
321
- closeHandler();
322
- }
323
- };
324
-
325
- document.addEventListener('scroll', handleScroll, true);
326
-
327
- onCleanup(() => {
328
- document.removeEventListener('scroll', handleScroll, true);
329
- });
330
- });
331
-
332
- return {
333
- overlayProps: {
334
- style: {
335
- position: position() ? 'absolute' : 'fixed',
336
- top: !position() ? 0 : undefined,
337
- left: !position() ? 0 : undefined,
338
- 'z-index': 100000,
339
- 'max-height': position()?.maxHeight ?? '100vh',
340
- } as JSX.CSSProperties,
341
- },
342
- placement: () => position()?.placement ?? null,
343
- triggerAnchorPoint: () => position()?.triggerAnchorPoint ?? null,
344
- arrowProps: {
345
- 'aria-hidden': 'true',
346
- role: 'presentation',
347
- style: {
348
- left: position()?.arrowOffsetLeft != null ? `${position()!.arrowOffsetLeft}px` : undefined,
349
- top: position()?.arrowOffsetTop != null ? `${position()!.arrowOffsetTop}px` : undefined,
350
- } as JSX.CSSProperties,
351
- },
352
- updatePosition,
353
- };
354
- }
355
-
356
- export { type Placement, type PlacementAxis } from './calculatePosition';
@@ -1,170 +0,0 @@
1
- /**
2
- * Provides the behavior and accessibility implementation for a popover component.
3
- * A popover is an overlay element positioned relative to a trigger.
4
- *
5
- * Ported from @react-aria/overlays usePopover.
6
- */
7
-
8
- import { createEffect, onCleanup, type JSX } from 'solid-js';
9
- import { createOverlay } from '../overlays/createOverlay';
10
- import {
11
- createOverlayPosition,
12
- type AriaPositionProps,
13
- type PlacementAxis,
14
- } from './createOverlayPosition';
15
- import { createPreventScroll } from '../overlays/createPreventScroll';
16
- import { ariaHideOutside, keepVisible } from '../overlays/ariaHideOutside';
17
- import { mergeProps } from '../utils/mergeProps';
18
-
19
- export interface OverlayTriggerState {
20
- /** Whether the overlay is currently open. */
21
- isOpen: () => boolean;
22
- /** Opens the overlay. */
23
- open: () => void;
24
- /** Closes the overlay. */
25
- close: () => void;
26
- /** Toggles the overlay's open state. */
27
- toggle: () => void;
28
- }
29
-
30
- export interface AriaPopoverProps
31
- extends Omit<AriaPositionProps, 'isOpen' | 'onClose' | 'targetRef' | 'overlayRef'> {
32
- /**
33
- * The ref for the element which the popover positions itself with respect to.
34
- */
35
- triggerRef: () => Element | null;
36
- /**
37
- * The ref for the popover element.
38
- */
39
- popoverRef: () => Element | null;
40
- /** A ref for the popover arrow element. */
41
- arrowRef?: () => Element | null;
42
- /**
43
- * An optional ref for a group of popovers, e.g. submenus.
44
- * When provided, this element is used to detect outside interactions
45
- * and hiding elements from assistive technologies instead of the popoverRef.
46
- */
47
- groupRef?: () => Element | null;
48
- /**
49
- * Whether the popover is non-modal, i.e. elements outside the popover may be
50
- * interacted with by assistive technologies.
51
- *
52
- * Most popovers should not use this option as it may negatively impact the screen
53
- * reader experience. Only use with components such as combobox, which are designed
54
- * to handle this situation carefully.
55
- */
56
- isNonModal?: boolean;
57
- /**
58
- * Whether pressing the escape key to close the popover should be disabled.
59
- *
60
- * Most popovers should not use this option. When set to true, an alternative
61
- * way to close the popover with a keyboard must be provided.
62
- *
63
- * @default false
64
- */
65
- isKeyboardDismissDisabled?: boolean;
66
- /**
67
- * When user interacts with the argument element outside of the popover ref,
68
- * return true if onClose should be called. This gives you a chance to filter
69
- * out interaction with elements that should not dismiss the popover.
70
- * By default, onClose will always be called on interaction outside the popover ref.
71
- */
72
- shouldCloseOnInteractOutside?: (element: Element) => boolean;
73
- /**
74
- * The type of trigger that opened the popover.
75
- * Used for submenu detection.
76
- */
77
- trigger?: string;
78
- }
79
-
80
- export interface PopoverAria {
81
- /** Props for the popover element. */
82
- popoverProps: JSX.HTMLAttributes<HTMLElement>;
83
- /** Props for the popover tip arrow if any. */
84
- arrowProps: JSX.HTMLAttributes<HTMLElement>;
85
- /** Props to apply to the underlay element, if any. */
86
- underlayProps: JSX.HTMLAttributes<HTMLElement>;
87
- /** Placement of the popover with respect to the trigger. */
88
- placement: () => PlacementAxis | null;
89
- /** The origin of the target in the overlay's coordinate system. Useful for animations. */
90
- triggerAnchorPoint: () => { x: number; y: number } | null;
91
- }
92
-
93
- /**
94
- * Provides the behavior and accessibility implementation for a popover component.
95
- * A popover is an overlay element positioned relative to a trigger.
96
- */
97
- export function createPopover(
98
- props: AriaPopoverProps,
99
- state: OverlayTriggerState
100
- ): PopoverAria {
101
- const triggerRef = () => props.triggerRef();
102
- const popoverRef = () => props.popoverRef();
103
- const groupRef = () => props.groupRef?.() ?? null;
104
- const isNonModal = () => props.isNonModal ?? false;
105
- const isKeyboardDismissDisabled = () => props.isKeyboardDismissDisabled ?? false;
106
- const shouldCloseOnInteractOutside = props.shouldCloseOnInteractOutside;
107
- const isSubmenu = () => props.trigger === 'SubmenuTrigger';
108
-
109
- // Overlay behavior (dismiss handling)
110
- const { overlayProps, underlayProps } = createOverlay(
111
- {
112
- isOpen: state.isOpen(),
113
- onClose: state.close,
114
- shouldCloseOnBlur: true,
115
- isDismissable: !isNonModal() || isSubmenu(),
116
- isKeyboardDismissDisabled: isKeyboardDismissDisabled(),
117
- shouldCloseOnInteractOutside,
118
- },
119
- () => groupRef() ?? popoverRef()
120
- );
121
-
122
- // Overlay positioning
123
- const {
124
- overlayProps: positionProps,
125
- arrowProps,
126
- placement,
127
- triggerAnchorPoint,
128
- } = createOverlayPosition({
129
- ...props,
130
- targetRef: triggerRef,
131
- overlayRef: popoverRef,
132
- isOpen: state.isOpen(),
133
- onClose: isNonModal() && !isSubmenu() ? state.close : null,
134
- });
135
-
136
- // Prevent scroll when modal popover is open
137
- createPreventScroll({
138
- isDisabled: isNonModal() || !state.isOpen(),
139
- });
140
-
141
- // Aria-hide outside elements
142
- createEffect(() => {
143
- if (state.isOpen() && popoverRef()) {
144
- const element = groupRef() ?? popoverRef();
145
- if (!element) return;
146
-
147
- let cleanup: (() => void) | undefined;
148
-
149
- if (isNonModal()) {
150
- cleanup = keepVisible(element);
151
- } else {
152
- cleanup = ariaHideOutside([element], { shouldUseInert: true });
153
- }
154
-
155
- onCleanup(() => {
156
- cleanup?.();
157
- });
158
- }
159
- });
160
-
161
- return {
162
- popoverProps: mergeProps(overlayProps, positionProps),
163
- arrowProps,
164
- underlayProps,
165
- placement,
166
- triggerAnchorPoint,
167
- };
168
- }
169
-
170
- export { type PlacementAxis } from './createOverlayPosition';
@@ -1,24 +0,0 @@
1
- // Popover
2
- export {
3
- createPopover,
4
- type AriaPopoverProps,
5
- type PopoverAria,
6
- type OverlayTriggerState,
7
- } from './createPopover';
8
-
9
- // Overlay Position
10
- export {
11
- createOverlayPosition,
12
- type AriaPositionProps,
13
- type PositionProps,
14
- type PositionAria,
15
- } from './createOverlayPosition';
16
-
17
- // Position calculation utilities
18
- export {
19
- calculatePosition,
20
- type Placement,
21
- type PlacementAxis,
22
- type PositionOpts,
23
- type PositionResult,
24
- } from './calculatePosition';
@@ -1,128 +0,0 @@
1
- /**
2
- * ProgressBar hook for Solidaria
3
- *
4
- * Provides the accessibility implementation for a progress bar component.
5
- * Progress bars show either determinate or indeterminate progress of an operation
6
- * over time.
7
- *
8
- * This is a 1:1 port of @react-aria/progress's useProgressBar hook.
9
- */
10
-
11
- import { createLabel } from '../label/createLabel';
12
- import { mergeProps } from '../utils/mergeProps';
13
- import { filterDOMProps } from '../utils/filterDOMProps';
14
- import { type MaybeAccessor, access } from '../utils/reactivity';
15
-
16
- // ============================================
17
- // TYPES
18
- // ============================================
19
-
20
- export interface AriaProgressBarProps {
21
- /** The current value (controlled). */
22
- value?: number;
23
- /** The smallest value allowed for the input. @default 0 */
24
- minValue?: number;
25
- /** The largest value allowed for the input. @default 100 */
26
- maxValue?: number;
27
- /** The content to display as the value's label (e.g. 1 of 4). */
28
- valueLabel?: string;
29
- /** Whether presentation is indeterminate when progress isn't known. */
30
- isIndeterminate?: boolean;
31
- /** The display format of the value label. */
32
- formatOptions?: Intl.NumberFormatOptions;
33
- /** The content to display as the label. */
34
- label?: string;
35
- /** An accessibility label for this item. */
36
- 'aria-label'?: string;
37
- /** Identifies the element (or elements) that labels the current element. */
38
- 'aria-labelledby'?: string;
39
- /** Identifies the element (or elements) that describes the object. */
40
- 'aria-describedby'?: string;
41
- /** Identifies the element (or elements) that provide a detailed, extended description for the object. */
42
- 'aria-details'?: string;
43
- }
44
-
45
- export interface ProgressBarAria {
46
- /** Props for the progress bar container element. */
47
- progressBarProps: Record<string, unknown>;
48
- /** Props for the progress bar's visual label element (if any). */
49
- labelProps: Record<string, unknown>;
50
- }
51
-
52
- // ============================================
53
- // UTILITIES
54
- // ============================================
55
-
56
- function clamp(value: number, min: number, max: number): number {
57
- return Math.min(Math.max(value, min), max);
58
- }
59
-
60
- // ============================================
61
- // IMPLEMENTATION
62
- // ============================================
63
-
64
- /**
65
- * Provides the accessibility implementation for a progress bar component.
66
- * Progress bars show either determinate or indeterminate progress of an operation
67
- * over time.
68
- */
69
- export function createProgressBar(
70
- props: MaybeAccessor<AriaProgressBarProps> = {}
71
- ): ProgressBarAria {
72
- const getProps = () => access(props);
73
-
74
- // Create label handling
75
- const { labelProps, fieldProps } = createLabel({
76
- get label() { return getProps().label; },
77
- get 'aria-label'() { return getProps()['aria-label']; },
78
- get 'aria-labelledby'() { return getProps()['aria-labelledby']; },
79
- // Progress bar is not an HTML input element so it
80
- // shouldn't be labeled by a <label> element.
81
- labelElementType: 'span',
82
- });
83
-
84
- // Build progress bar props
85
- const getProgressBarProps = (): Record<string, unknown> => {
86
- const p = getProps();
87
- const value = p.value ?? 0;
88
- const minValue = p.minValue ?? 0;
89
- const maxValue = p.maxValue ?? 100;
90
- const isIndeterminate = p.isIndeterminate ?? false;
91
- const formatOptions = p.formatOptions ?? { style: 'percent' as const };
92
-
93
- const clampedValue = clamp(value, minValue, maxValue);
94
- const percentage = (clampedValue - minValue) / (maxValue - minValue);
95
-
96
- // Format value label
97
- let valueLabel = p.valueLabel;
98
- if (!isIndeterminate && !valueLabel) {
99
- const valueToFormat = formatOptions.style === 'percent' ? percentage : clampedValue;
100
- try {
101
- const formatter = new Intl.NumberFormat(undefined, formatOptions);
102
- valueLabel = formatter.format(valueToFormat);
103
- } catch {
104
- // Fallback if formatting fails
105
- valueLabel = `${Math.round(percentage * 100)}%`;
106
- }
107
- }
108
-
109
- const domProps = filterDOMProps(p as Record<string, unknown>, { labelable: true });
110
-
111
- return mergeProps(domProps, fieldProps as Record<string, unknown>, {
112
- 'aria-valuenow': isIndeterminate ? undefined : clampedValue,
113
- 'aria-valuemin': minValue,
114
- 'aria-valuemax': maxValue,
115
- 'aria-valuetext': isIndeterminate ? undefined : valueLabel,
116
- role: 'progressbar',
117
- });
118
- };
119
-
120
- return {
121
- get progressBarProps() {
122
- return getProgressBarProps();
123
- },
124
- get labelProps() {
125
- return labelProps as Record<string, unknown>;
126
- },
127
- };
128
- }
@@ -1,5 +0,0 @@
1
- export {
2
- createProgressBar,
3
- type AriaProgressBarProps,
4
- type ProgressBarAria,
5
- } from './createProgressBar';