@proyecto-viviana/solidaria 0.2.8 → 0.3.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 (548) hide show
  1. package/README.md +31 -236
  2. package/dist/actiongroup/createActionGroup.d.ts +5 -5
  3. package/dist/actiongroup/createActionGroup.d.ts.map +1 -1
  4. package/dist/actiongroup/index.d.ts +1 -1
  5. package/dist/autocomplete/createAutocomplete.d.ts +10 -10
  6. package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
  7. package/dist/autocomplete/index.d.ts +1 -1
  8. package/dist/autocomplete/index.d.ts.map +1 -1
  9. package/dist/breadcrumbs/createBreadcrumbs.d.ts +9 -7
  10. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
  11. package/dist/breadcrumbs/index.d.ts +1 -1
  12. package/dist/button/createButton.d.ts +1 -1
  13. package/dist/button/createButton.d.ts.map +1 -1
  14. package/dist/button/createToggleButton.d.ts +3 -3
  15. package/dist/button/createToggleButtonGroup.d.ts +7 -7
  16. package/dist/button/createToggleButtonGroup.d.ts.map +1 -1
  17. package/dist/button/index.d.ts +6 -6
  18. package/dist/button/index.d.ts.map +1 -1
  19. package/dist/button/types.d.ts +18 -12
  20. package/dist/button/types.d.ts.map +1 -1
  21. package/dist/calendar/createCalendar.d.ts +15 -5
  22. package/dist/calendar/createCalendar.d.ts.map +1 -1
  23. package/dist/calendar/createCalendarCell.d.ts +6 -2
  24. package/dist/calendar/createCalendarCell.d.ts.map +1 -1
  25. package/dist/calendar/createCalendarGrid.d.ts +4 -4
  26. package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
  27. package/dist/calendar/createRangeCalendar.d.ts +15 -5
  28. package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
  29. package/dist/calendar/createRangeCalendarCell.d.ts +4 -2
  30. package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
  31. package/dist/calendar/index.d.ts +5 -5
  32. package/dist/calendar/index.d.ts.map +1 -1
  33. package/dist/calendar/intl/index.d.ts +12 -0
  34. package/dist/calendar/intl/index.d.ts.map +1 -0
  35. package/dist/calendar/utils.d.ts +12 -0
  36. package/dist/calendar/utils.d.ts.map +1 -0
  37. package/dist/checkbox/createCheckbox.d.ts +6 -6
  38. package/dist/checkbox/createCheckbox.d.ts.map +1 -1
  39. package/dist/checkbox/createCheckboxGroup.d.ts +7 -7
  40. package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
  41. package/dist/checkbox/createCheckboxGroupItem.d.ts +4 -4
  42. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
  43. package/dist/checkbox/createCheckboxGroupState.d.ts +2 -2
  44. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -1
  45. package/dist/checkbox/index.d.ts +8 -8
  46. package/dist/checkbox/index.d.ts.map +1 -1
  47. package/dist/collections/index.d.ts +3 -3
  48. package/dist/collections/index.d.ts.map +1 -1
  49. package/dist/color/createColorArea.d.ts +3 -3
  50. package/dist/color/createColorArea.d.ts.map +1 -1
  51. package/dist/color/createColorField.d.ts +4 -4
  52. package/dist/color/createColorField.d.ts.map +1 -1
  53. package/dist/color/createColorSlider.d.ts +4 -4
  54. package/dist/color/createColorSlider.d.ts.map +1 -1
  55. package/dist/color/createColorSwatch.d.ts +2 -2
  56. package/dist/color/createColorSwatch.d.ts.map +1 -1
  57. package/dist/color/createColorWheel.d.ts +3 -3
  58. package/dist/color/createColorWheel.d.ts.map +1 -1
  59. package/dist/color/index.d.ts +6 -6
  60. package/dist/color/types.d.ts +98 -16
  61. package/dist/color/types.d.ts.map +1 -1
  62. package/dist/combobox/createComboBox.d.ts +10 -7
  63. package/dist/combobox/createComboBox.d.ts.map +1 -1
  64. package/dist/combobox/index.d.ts +1 -1
  65. package/dist/combobox/intl/index.d.ts +1 -1
  66. package/dist/datepicker/createDateField.d.ts +18 -6
  67. package/dist/datepicker/createDateField.d.ts.map +1 -1
  68. package/dist/datepicker/createDatePicker.d.ts +51 -5
  69. package/dist/datepicker/createDatePicker.d.ts.map +1 -1
  70. package/dist/datepicker/createDatePickerGroup.d.ts +19 -0
  71. package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -0
  72. package/dist/datepicker/createDateRangePicker.d.ts +8 -6
  73. package/dist/datepicker/createDateRangePicker.d.ts.map +1 -1
  74. package/dist/datepicker/createDateSegment.d.ts +10 -2
  75. package/dist/datepicker/createDateSegment.d.ts.map +1 -1
  76. package/dist/datepicker/createTimeField.d.ts +11 -5
  77. package/dist/datepicker/createTimeField.d.ts.map +1 -1
  78. package/dist/datepicker/createTimeSegment.d.ts +2 -2
  79. package/dist/datepicker/createTimeSegment.d.ts.map +1 -1
  80. package/dist/datepicker/index.d.ts +7 -6
  81. package/dist/datepicker/index.d.ts.map +1 -1
  82. package/dist/dialog/createDialog.d.ts +5 -5
  83. package/dist/dialog/createDialog.d.ts.map +1 -1
  84. package/dist/dialog/index.d.ts +2 -2
  85. package/dist/dialog/index.d.ts.map +1 -1
  86. package/dist/dialog/types.d.ts +4 -4
  87. package/dist/disclosure/createDisclosure.d.ts +5 -2
  88. package/dist/disclosure/createDisclosure.d.ts.map +1 -1
  89. package/dist/disclosure/createDisclosureGroup.d.ts +4 -4
  90. package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
  91. package/dist/disclosure/index.d.ts +2 -2
  92. package/dist/dnd/createDrag.d.ts +2 -2
  93. package/dist/dnd/createDrag.d.ts.map +1 -1
  94. package/dist/dnd/createDraggableCollection.d.ts +2 -2
  95. package/dist/dnd/createDraggableItem.d.ts +3 -3
  96. package/dist/dnd/createDraggableItem.d.ts.map +1 -1
  97. package/dist/dnd/createDrop.d.ts +2 -2
  98. package/dist/dnd/createDrop.d.ts.map +1 -1
  99. package/dist/dnd/createDroppableCollection.d.ts +26 -6
  100. package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
  101. package/dist/dnd/createDroppableItem.d.ts +3 -3
  102. package/dist/dnd/index.d.ts +12 -12
  103. package/dist/dnd/index.d.ts.map +1 -1
  104. package/dist/dnd/types.d.ts +2 -2
  105. package/dist/dnd/types.d.ts.map +1 -1
  106. package/dist/dnd/utils.d.ts +1 -1
  107. package/dist/dnd/utils.d.ts.map +1 -1
  108. package/dist/focus/FocusScope.d.ts +1 -1
  109. package/dist/focus/FocusScope.d.ts.map +1 -1
  110. package/dist/focus/createAutoFocus.d.ts.map +1 -1
  111. package/dist/focus/createFocusRestore.d.ts.map +1 -1
  112. package/dist/focus/createVirtualFocus.d.ts +4 -4
  113. package/dist/focus/createVirtualFocus.d.ts.map +1 -1
  114. package/dist/focus/index.d.ts +4 -4
  115. package/dist/focus/index.d.ts.map +1 -1
  116. package/dist/form/createFormReset.d.ts +1 -1
  117. package/dist/form/createFormValidation.d.ts +3 -3
  118. package/dist/form/createFormValidation.d.ts.map +1 -1
  119. package/dist/form/index.d.ts +2 -2
  120. package/dist/form/index.d.ts.map +1 -1
  121. package/dist/grid/GridKeyboardDelegate.d.ts +5 -5
  122. package/dist/grid/createGrid.d.ts +3 -3
  123. package/dist/grid/createGridCell.d.ts +3 -3
  124. package/dist/grid/createGridRow.d.ts +3 -3
  125. package/dist/grid/index.d.ts +5 -5
  126. package/dist/grid/types.d.ts +8 -8
  127. package/dist/gridlist/createGridList.d.ts +6 -4
  128. package/dist/gridlist/createGridList.d.ts.map +1 -1
  129. package/dist/gridlist/createGridListItem.d.ts +4 -4
  130. package/dist/gridlist/createGridListItem.d.ts.map +1 -1
  131. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +3 -3
  132. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
  133. package/dist/gridlist/index.d.ts +4 -4
  134. package/dist/gridlist/types.d.ts +11 -7
  135. package/dist/gridlist/types.d.ts.map +1 -1
  136. package/dist/i18n/createCollator.d.ts.map +1 -1
  137. package/dist/i18n/createDateFormatter.d.ts.map +1 -1
  138. package/dist/i18n/createFilter.d.ts.map +1 -1
  139. package/dist/i18n/createNumberFormatter.d.ts +1 -1
  140. package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
  141. package/dist/i18n/createStringFormatter.d.ts +2 -2
  142. package/dist/i18n/createStringFormatter.d.ts.map +1 -1
  143. package/dist/i18n/index.d.ts +8 -8
  144. package/dist/i18n/index.d.ts.map +1 -1
  145. package/dist/i18n/locale.d.ts +2 -2
  146. package/dist/i18n/locale.d.ts.map +1 -1
  147. package/dist/i18n/utils.d.ts.map +1 -1
  148. package/dist/index.d.ts +52 -51
  149. package/dist/index.d.ts.map +1 -1
  150. package/dist/index.js +18012 -16820
  151. package/dist/index.js.map +1 -1
  152. package/dist/index.jsx +18242 -0
  153. package/dist/index.jsx.map +1 -0
  154. package/dist/interactions/FocusableProvider.d.ts +2 -2
  155. package/dist/interactions/FocusableProvider.d.ts.map +1 -1
  156. package/dist/interactions/PressEvent.d.ts +2 -2
  157. package/dist/interactions/createFocus.d.ts +1 -1
  158. package/dist/interactions/createFocus.d.ts.map +1 -1
  159. package/dist/interactions/createFocusRing.d.ts +1 -1
  160. package/dist/interactions/createFocusRing.d.ts.map +1 -1
  161. package/dist/interactions/createFocusWithin.d.ts +1 -1
  162. package/dist/interactions/createFocusWithin.d.ts.map +1 -1
  163. package/dist/interactions/createFocusable.d.ts +3 -3
  164. package/dist/interactions/createFocusable.d.ts.map +1 -1
  165. package/dist/interactions/createHover.d.ts +5 -5
  166. package/dist/interactions/createHover.d.ts.map +1 -1
  167. package/dist/interactions/createInteractionModality.d.ts +3 -3
  168. package/dist/interactions/createInteractionModality.d.ts.map +1 -1
  169. package/dist/interactions/createKeyboard.d.ts +1 -1
  170. package/dist/interactions/createLongPress.d.ts +5 -5
  171. package/dist/interactions/createMove.d.ts +5 -5
  172. package/dist/interactions/createMove.d.ts.map +1 -1
  173. package/dist/interactions/createPress.d.ts +4 -4
  174. package/dist/interactions/createPress.d.ts.map +1 -1
  175. package/dist/interactions/index.d.ts +12 -12
  176. package/dist/interactions/index.d.ts.map +1 -1
  177. package/dist/label/createField.d.ts +4 -4
  178. package/dist/label/createField.d.ts.map +1 -1
  179. package/dist/label/createLabel.d.ts +7 -7
  180. package/dist/label/createLabel.d.ts.map +1 -1
  181. package/dist/label/createLabels.d.ts +1 -1
  182. package/dist/label/createLabels.d.ts.map +1 -1
  183. package/dist/label/index.d.ts +5 -5
  184. package/dist/landmark/createLandmark.d.ts +5 -5
  185. package/dist/landmark/createLandmark.d.ts.map +1 -1
  186. package/dist/landmark/index.d.ts +1 -1
  187. package/dist/link/createLink.d.ts +14 -8
  188. package/dist/link/createLink.d.ts.map +1 -1
  189. package/dist/link/index.d.ts +1 -1
  190. package/dist/listbox/createListBox.d.ts +11 -6
  191. package/dist/listbox/createListBox.d.ts.map +1 -1
  192. package/dist/listbox/createOption.d.ts +21 -4
  193. package/dist/listbox/createOption.d.ts.map +1 -1
  194. package/dist/listbox/index.d.ts +2 -2
  195. package/dist/listbox/index.d.ts.map +1 -1
  196. package/dist/live-announcer/announce.d.ts +2 -2
  197. package/dist/live-announcer/announce.d.ts.map +1 -1
  198. package/dist/live-announcer/index.d.ts +1 -1
  199. package/dist/menu/createMenu.d.ts +7 -7
  200. package/dist/menu/createMenu.d.ts.map +1 -1
  201. package/dist/menu/createMenuItem.d.ts +16 -4
  202. package/dist/menu/createMenuItem.d.ts.map +1 -1
  203. package/dist/menu/createMenuTrigger.d.ts +4 -4
  204. package/dist/menu/index.d.ts +3 -3
  205. package/dist/menu/index.d.ts.map +1 -1
  206. package/dist/meter/createMeter.d.ts +6 -6
  207. package/dist/meter/createMeter.d.ts.map +1 -1
  208. package/dist/meter/index.d.ts +1 -1
  209. package/dist/numberfield/createNumberField.d.ts +9 -8
  210. package/dist/numberfield/createNumberField.d.ts.map +1 -1
  211. package/dist/numberfield/index.d.ts +1 -1
  212. package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
  213. package/dist/overlays/createModal.d.ts +3 -3
  214. package/dist/overlays/createModal.d.ts.map +1 -1
  215. package/dist/overlays/createOverlay.d.ts +1 -1
  216. package/dist/overlays/createOverlay.d.ts.map +1 -1
  217. package/dist/overlays/createOverlayTrigger.d.ts +6 -6
  218. package/dist/overlays/index.d.ts +6 -6
  219. package/dist/overlays/index.d.ts.map +1 -1
  220. package/dist/popover/calculatePosition.d.ts +4 -4
  221. package/dist/popover/calculatePosition.d.ts.map +1 -1
  222. package/dist/popover/createOverlayPosition.d.ts +3 -3
  223. package/dist/popover/createOverlayPosition.d.ts.map +1 -1
  224. package/dist/popover/createPopover.d.ts +4 -4
  225. package/dist/popover/createPopover.d.ts.map +1 -1
  226. package/dist/popover/index.d.ts +3 -3
  227. package/dist/progress/createProgressBar.d.ts +7 -5
  228. package/dist/progress/createProgressBar.d.ts.map +1 -1
  229. package/dist/progress/index.d.ts +1 -1
  230. package/dist/radio/createRadio.d.ts +7 -7
  231. package/dist/radio/createRadio.d.ts.map +1 -1
  232. package/dist/radio/createRadioGroup.d.ts +10 -10
  233. package/dist/radio/createRadioGroup.d.ts.map +1 -1
  234. package/dist/radio/createRadioGroupState.d.ts +3 -3
  235. package/dist/radio/createRadioGroupState.d.ts.map +1 -1
  236. package/dist/radio/index.d.ts +3 -3
  237. package/dist/radio/index.d.ts.map +1 -1
  238. package/dist/searchfield/createSearchField.d.ts +7 -7
  239. package/dist/searchfield/createSearchField.d.ts.map +1 -1
  240. package/dist/searchfield/index.d.ts +2 -2
  241. package/dist/select/createHiddenSelect.d.ts +4 -4
  242. package/dist/select/createHiddenSelect.d.ts.map +1 -1
  243. package/dist/select/createSelect.d.ts +14 -6
  244. package/dist/select/createSelect.d.ts.map +1 -1
  245. package/dist/select/index.d.ts +2 -2
  246. package/dist/select/index.d.ts.map +1 -1
  247. package/dist/selection/createTypeSelect.d.ts +2 -2
  248. package/dist/selection/index.d.ts +1 -1
  249. package/dist/separator/createSeparator.d.ts +9 -5
  250. package/dist/separator/createSeparator.d.ts.map +1 -1
  251. package/dist/separator/index.d.ts +1 -1
  252. package/dist/slider/createSlider.d.ts +11 -7
  253. package/dist/slider/createSlider.d.ts.map +1 -1
  254. package/dist/slider/index.d.ts +2 -2
  255. package/dist/ssr/index.d.ts +1 -1
  256. package/dist/ssr/index.d.ts.map +1 -1
  257. package/dist/steplist/createStepList.d.ts +36 -0
  258. package/dist/steplist/createStepList.d.ts.map +1 -0
  259. package/dist/steplist/index.d.ts +2 -0
  260. package/dist/steplist/index.d.ts.map +1 -0
  261. package/dist/switch/createSwitch.d.ts +6 -4
  262. package/dist/switch/createSwitch.d.ts.map +1 -1
  263. package/dist/switch/index.d.ts +1 -1
  264. package/dist/table/createTable.d.ts +3 -3
  265. package/dist/table/createTable.d.ts.map +1 -1
  266. package/dist/table/createTableCell.d.ts +3 -3
  267. package/dist/table/createTableCell.d.ts.map +1 -1
  268. package/dist/table/createTableColumnHeader.d.ts +3 -3
  269. package/dist/table/createTableColumnHeader.d.ts.map +1 -1
  270. package/dist/table/createTableColumnResize.d.ts +41 -0
  271. package/dist/table/createTableColumnResize.d.ts.map +1 -0
  272. package/dist/table/createTableHeaderRow.d.ts +3 -3
  273. package/dist/table/createTableRow.d.ts +3 -3
  274. package/dist/table/createTableRow.d.ts.map +1 -1
  275. package/dist/table/createTableRowGroup.d.ts +2 -2
  276. package/dist/table/createTableRowGroup.d.ts.map +1 -1
  277. package/dist/table/createTableSelectAllCheckbox.d.ts +3 -3
  278. package/dist/table/createTableSelectAllCheckbox.d.ts.map +1 -1
  279. package/dist/table/createTableSelectionCheckbox.d.ts +3 -3
  280. package/dist/table/index.d.ts +11 -9
  281. package/dist/table/index.d.ts.map +1 -1
  282. package/dist/table/types.d.ts +15 -7
  283. package/dist/table/types.d.ts.map +1 -1
  284. package/dist/tabs/createTabs.d.ts +28 -25
  285. package/dist/tabs/createTabs.d.ts.map +1 -1
  286. package/dist/tabs/index.d.ts +1 -1
  287. package/dist/tag/createTag.d.ts +2 -2
  288. package/dist/tag/createTag.d.ts.map +1 -1
  289. package/dist/tag/createTagGroup.d.ts +5 -5
  290. package/dist/tag/createTagGroup.d.ts.map +1 -1
  291. package/dist/tag/index.d.ts +2 -2
  292. package/dist/tag/index.d.ts.map +1 -1
  293. package/dist/textfield/createTextField.d.ts +17 -11
  294. package/dist/textfield/createTextField.d.ts.map +1 -1
  295. package/dist/textfield/index.d.ts +1 -1
  296. package/dist/textfield/index.d.ts.map +1 -1
  297. package/dist/toast/createToast.d.ts +2 -2
  298. package/dist/toast/createToast.d.ts.map +1 -1
  299. package/dist/toast/createToastRegion.d.ts +5 -3
  300. package/dist/toast/createToastRegion.d.ts.map +1 -1
  301. package/dist/toast/index.d.ts +2 -2
  302. package/dist/toast/index.d.ts.map +1 -1
  303. package/dist/toggle/createToggle.d.ts +9 -9
  304. package/dist/toggle/createToggle.d.ts.map +1 -1
  305. package/dist/toggle/createToggleState.d.ts +2 -2
  306. package/dist/toggle/createToggleState.d.ts.map +1 -1
  307. package/dist/toggle/index.d.ts +4 -4
  308. package/dist/toggle/index.d.ts.map +1 -1
  309. package/dist/toolbar/createToolbar.d.ts +9 -9
  310. package/dist/toolbar/createToolbar.d.ts.map +1 -1
  311. package/dist/toolbar/index.d.ts +1 -1
  312. package/dist/toolbar/index.d.ts.map +1 -1
  313. package/dist/tooltip/createTooltip.d.ts +5 -5
  314. package/dist/tooltip/createTooltip.d.ts.map +1 -1
  315. package/dist/tooltip/createTooltipTrigger.d.ts +10 -5
  316. package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
  317. package/dist/tooltip/index.d.ts +2 -2
  318. package/dist/tree/createTree.d.ts +3 -3
  319. package/dist/tree/createTree.d.ts.map +1 -1
  320. package/dist/tree/createTreeItem.d.ts +4 -4
  321. package/dist/tree/createTreeItem.d.ts.map +1 -1
  322. package/dist/tree/createTreeSelectionCheckbox.d.ts +3 -3
  323. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
  324. package/dist/tree/index.d.ts +4 -4
  325. package/dist/tree/types.d.ts +10 -6
  326. package/dist/tree/types.d.ts.map +1 -1
  327. package/dist/utils/createDescription.d.ts +2 -2
  328. package/dist/utils/createDescription.d.ts.map +1 -1
  329. package/dist/utils/dom.d.ts.map +1 -1
  330. package/dist/utils/env.d.ts.map +1 -1
  331. package/dist/utils/focus.d.ts +1 -1
  332. package/dist/utils/focus.d.ts.map +1 -1
  333. package/dist/utils/geometry.d.ts.map +1 -1
  334. package/dist/utils/index.d.ts +12 -12
  335. package/dist/utils/index.d.ts.map +1 -1
  336. package/dist/utils/mergeProps.d.ts.map +1 -1
  337. package/dist/utils/reactivity.d.ts +1 -1
  338. package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -2
  339. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
  340. package/dist/visually-hidden/index.d.ts +1 -1
  341. package/package.json +32 -32
  342. package/src/actiongroup/createActionGroup.ts +101 -91
  343. package/src/actiongroup/index.ts +1 -1
  344. package/src/autocomplete/createAutocomplete.ts +117 -134
  345. package/src/autocomplete/index.ts +1 -1
  346. package/src/breadcrumbs/createBreadcrumbs.ts +33 -42
  347. package/src/breadcrumbs/index.ts +1 -1
  348. package/src/button/createButton.ts +102 -73
  349. package/src/button/createToggleButton.ts +10 -10
  350. package/src/button/createToggleButtonGroup.ts +25 -32
  351. package/src/button/index.ts +6 -9
  352. package/src/button/types.ts +18 -12
  353. package/src/calendar/createCalendar.ts +62 -29
  354. package/src/calendar/createCalendarCell.ts +98 -46
  355. package/src/calendar/createCalendarGrid.ts +57 -35
  356. package/src/calendar/createRangeCalendar.ts +66 -31
  357. package/src/calendar/createRangeCalendarCell.ts +92 -31
  358. package/src/calendar/index.ts +5 -9
  359. package/src/calendar/intl/index.ts +210 -0
  360. package/src/calendar/utils.ts +227 -0
  361. package/src/checkbox/createCheckbox.ts +13 -21
  362. package/src/checkbox/createCheckboxGroup.ts +68 -44
  363. package/src/checkbox/createCheckboxGroupItem.ts +16 -27
  364. package/src/checkbox/createCheckboxGroupState.ts +3 -22
  365. package/src/checkbox/index.ts +8 -10
  366. package/src/collections/index.ts +33 -29
  367. package/src/color/createColorArea.ts +232 -154
  368. package/src/color/createColorField.ts +107 -58
  369. package/src/color/createColorSlider.ts +231 -73
  370. package/src/color/createColorSwatch.ts +38 -13
  371. package/src/color/createColorWheel.ts +208 -83
  372. package/src/color/index.ts +6 -6
  373. package/src/color/types.ts +98 -16
  374. package/src/combobox/createComboBox.ts +157 -100
  375. package/src/combobox/index.ts +1 -1
  376. package/src/combobox/intl/index.ts +5 -5
  377. package/src/datepicker/createDateField.ts +192 -39
  378. package/src/datepicker/createDatePicker.ts +260 -67
  379. package/src/datepicker/createDatePickerGroup.ts +149 -0
  380. package/src/datepicker/createDateRangePicker.ts +105 -57
  381. package/src/datepicker/createDateSegment.ts +183 -96
  382. package/src/datepicker/createTimeField.ts +38 -34
  383. package/src/datepicker/createTimeSegment.ts +67 -85
  384. package/src/datepicker/index.ts +13 -14
  385. package/src/dialog/createDialog.ts +45 -38
  386. package/src/dialog/index.ts +2 -2
  387. package/src/dialog/types.ts +4 -4
  388. package/src/disclosure/createDisclosure.ts +138 -33
  389. package/src/disclosure/createDisclosureGroup.ts +8 -21
  390. package/src/disclosure/index.ts +2 -2
  391. package/src/dnd/createDrag.ts +19 -25
  392. package/src/dnd/createDraggableCollection.ts +4 -4
  393. package/src/dnd/createDraggableItem.ts +20 -19
  394. package/src/dnd/createDrop.ts +42 -51
  395. package/src/dnd/createDroppableCollection.ts +290 -173
  396. package/src/dnd/createDroppableItem.ts +34 -34
  397. package/src/dnd/index.ts +23 -12
  398. package/src/dnd/types.ts +4 -7
  399. package/src/dnd/utils.ts +36 -49
  400. package/src/focus/FocusScope.tsx +155 -164
  401. package/src/focus/createAutoFocus.ts +4 -20
  402. package/src/focus/createFocusRestore.ts +15 -28
  403. package/src/focus/createVirtualFocus.ts +20 -36
  404. package/src/focus/index.ts +4 -8
  405. package/src/form/createFormReset.ts +4 -4
  406. package/src/form/createFormValidation.ts +20 -43
  407. package/src/form/index.ts +2 -5
  408. package/src/grid/GridKeyboardDelegate.ts +30 -30
  409. package/src/grid/createGrid.ts +36 -36
  410. package/src/grid/createGridCell.ts +18 -18
  411. package/src/grid/createGridRow.ts +14 -14
  412. package/src/grid/index.ts +5 -5
  413. package/src/grid/types.ts +8 -8
  414. package/src/gridlist/createGridList.ts +34 -29
  415. package/src/gridlist/createGridListItem.ts +68 -23
  416. package/src/gridlist/createGridListSelectionCheckbox.ts +12 -9
  417. package/src/gridlist/index.ts +4 -4
  418. package/src/gridlist/types.ts +11 -7
  419. package/src/i18n/createCollator.ts +5 -18
  420. package/src/i18n/createDateFormatter.ts +5 -13
  421. package/src/i18n/createFilter.ts +11 -24
  422. package/src/i18n/createNumberFormatter.ts +4 -6
  423. package/src/i18n/createStringFormatter.ts +19 -15
  424. package/src/i18n/index.ts +8 -11
  425. package/src/i18n/locale.tsx +15 -40
  426. package/src/i18n/utils.ts +35 -39
  427. package/src/index.ts +68 -169
  428. package/src/interactions/FocusableProvider.tsx +3 -7
  429. package/src/interactions/PressEvent.ts +4 -4
  430. package/src/interactions/createFocus.ts +12 -8
  431. package/src/interactions/createFocusRing.ts +21 -19
  432. package/src/interactions/createFocusWithin.ts +20 -13
  433. package/src/interactions/createFocusable.ts +15 -16
  434. package/src/interactions/createHover.ts +70 -55
  435. package/src/interactions/createInteractionModality.ts +75 -82
  436. package/src/interactions/createKeyboard.ts +2 -2
  437. package/src/interactions/createLongPress.ts +23 -23
  438. package/src/interactions/createMove.ts +72 -62
  439. package/src/interactions/createPress.ts +164 -87
  440. package/src/interactions/index.ts +24 -16
  441. package/src/label/createField.ts +18 -19
  442. package/src/label/createLabel.ts +18 -30
  443. package/src/label/createLabels.ts +8 -12
  444. package/src/label/index.ts +5 -5
  445. package/src/landmark/createLandmark.ts +30 -51
  446. package/src/landmark/index.ts +1 -1
  447. package/src/link/createLink.ts +83 -56
  448. package/src/link/index.ts +1 -1
  449. package/src/listbox/createListBox.ts +69 -58
  450. package/src/listbox/createOption.ts +83 -37
  451. package/src/listbox/index.ts +2 -6
  452. package/src/live-announcer/announce.ts +44 -71
  453. package/src/live-announcer/index.ts +1 -1
  454. package/src/menu/createMenu.ts +79 -50
  455. package/src/menu/createMenuItem.ts +79 -27
  456. package/src/menu/createMenuTrigger.ts +15 -15
  457. package/src/menu/index.ts +3 -12
  458. package/src/meter/createMeter.ts +7 -15
  459. package/src/meter/index.ts +1 -1
  460. package/src/numberfield/createNumberField.ts +138 -81
  461. package/src/numberfield/index.ts +1 -1
  462. package/src/overlays/ariaHideOutside.ts +14 -10
  463. package/src/overlays/createInteractOutside.ts +21 -18
  464. package/src/overlays/createModal.tsx +17 -17
  465. package/src/overlays/createOverlay.ts +38 -8
  466. package/src/overlays/createOverlayTrigger.ts +16 -16
  467. package/src/overlays/createPreventScroll.ts +46 -24
  468. package/src/overlays/index.ts +6 -17
  469. package/src/popover/calculatePosition.ts +115 -117
  470. package/src/popover/createOverlayPosition.ts +46 -40
  471. package/src/popover/createPopover.ts +42 -17
  472. package/src/popover/index.ts +3 -3
  473. package/src/progress/createProgressBar.ts +31 -32
  474. package/src/progress/index.ts +1 -1
  475. package/src/radio/createRadio.ts +95 -73
  476. package/src/radio/createRadioGroup.ts +83 -77
  477. package/src/radio/createRadioGroupState.ts +7 -31
  478. package/src/radio/index.ts +3 -8
  479. package/src/searchfield/createSearchField.ts +57 -29
  480. package/src/searchfield/index.ts +2 -2
  481. package/src/select/createHiddenSelect.tsx +57 -44
  482. package/src/select/createSelect.ts +128 -71
  483. package/src/select/index.ts +2 -7
  484. package/src/selection/createTypeSelect.ts +11 -11
  485. package/src/selection/index.ts +1 -1
  486. package/src/separator/createSeparator.ts +20 -25
  487. package/src/separator/index.ts +1 -1
  488. package/src/slider/createSlider.ts +93 -124
  489. package/src/slider/index.ts +2 -2
  490. package/src/ssr/index.tsx +8 -47
  491. package/src/steplist/createStepList.ts +106 -0
  492. package/src/steplist/index.ts +8 -0
  493. package/src/switch/createSwitch.ts +9 -14
  494. package/src/switch/index.ts +1 -1
  495. package/src/table/createTable.ts +152 -85
  496. package/src/table/createTableCell.ts +17 -16
  497. package/src/table/createTableColumnHeader.ts +67 -20
  498. package/src/table/createTableColumnResize.ts +256 -0
  499. package/src/table/createTableHeaderRow.ts +7 -7
  500. package/src/table/createTableRow.ts +149 -29
  501. package/src/table/createTableRowGroup.ts +5 -7
  502. package/src/table/createTableSelectAllCheckbox.ts +12 -11
  503. package/src/table/createTableSelectionCheckbox.ts +8 -8
  504. package/src/table/index.ts +14 -9
  505. package/src/table/types.ts +15 -7
  506. package/src/tabs/createTabs.ts +74 -92
  507. package/src/tabs/index.ts +1 -1
  508. package/src/tag/createTag.ts +52 -50
  509. package/src/tag/createTagGroup.ts +47 -41
  510. package/src/tag/index.ts +2 -6
  511. package/src/textfield/createTextField.ts +67 -35
  512. package/src/textfield/index.ts +1 -5
  513. package/src/toast/createToast.ts +28 -26
  514. package/src/toast/createToastRegion.ts +169 -26
  515. package/src/toast/index.ts +2 -6
  516. package/src/toggle/createToggle.ts +95 -53
  517. package/src/toggle/createToggleState.ts +2 -10
  518. package/src/toggle/index.ts +4 -5
  519. package/src/toolbar/createToolbar.ts +193 -210
  520. package/src/toolbar/index.ts +1 -1
  521. package/src/tooltip/createTooltip.ts +11 -24
  522. package/src/tooltip/createTooltipTrigger.ts +61 -49
  523. package/src/tooltip/index.ts +2 -2
  524. package/src/tree/createTree.ts +35 -37
  525. package/src/tree/createTreeItem.ts +29 -29
  526. package/src/tree/createTreeSelectionCheckbox.ts +11 -8
  527. package/src/tree/index.ts +4 -4
  528. package/src/tree/types.ts +10 -6
  529. package/src/utils/createDescription.ts +6 -23
  530. package/src/utils/dom.ts +61 -54
  531. package/src/utils/env.ts +9 -11
  532. package/src/utils/events.ts +7 -7
  533. package/src/utils/filterDOMProps.ts +49 -49
  534. package/src/utils/focus.ts +60 -68
  535. package/src/utils/geometry.ts +1 -4
  536. package/src/utils/globalListeners.ts +9 -9
  537. package/src/utils/index.ts +12 -22
  538. package/src/utils/mergeProps.ts +42 -15
  539. package/src/utils/platform.ts +2 -2
  540. package/src/utils/reactivity.ts +3 -3
  541. package/src/utils/textSelection.ts +16 -16
  542. package/src/visually-hidden/createVisuallyHidden.ts +16 -28
  543. package/src/visually-hidden/index.ts +1 -1
  544. package/dist/i18n/NumberFormatter.d.ts +0 -43
  545. package/dist/i18n/NumberFormatter.d.ts.map +0 -1
  546. package/dist/index.ssr.js +0 -17082
  547. package/dist/index.ssr.js.map +0 -1
  548. package/src/i18n/NumberFormatter.ts +0 -266
@@ -3,9 +3,10 @@
3
3
  * Based on @react-aria/overlays useOverlay.
4
4
  */
5
5
 
6
- import { createEffect, onCleanup, type JSX } from 'solid-js';
7
- import { createInteractOutside } from './createInteractOutside';
8
- import { createFocusWithin } from '../interactions/createFocusWithin';
6
+ import { createEffect, onCleanup, type JSX } from "solid-js";
7
+ import { createInteractOutside } from "./createInteractOutside";
8
+ import { createFocusWithin } from "../interactions/createFocusWithin";
9
+ import { getOwnerDocument, nodeContains } from "../utils";
9
10
 
10
11
  export interface AriaOverlayProps {
11
12
  /** Whether the overlay is currently open. */
@@ -48,10 +49,7 @@ const visibleOverlays: Array<() => Element | null> = [];
48
49
  * Hides the overlay when the user interacts outside it, when the Escape key is pressed,
49
50
  * or optionally, on blur. Only the top-most overlay will close at once.
50
51
  */
51
- export function createOverlay(
52
- props: AriaOverlayProps,
53
- ref: () => Element | null
54
- ): OverlayAria {
52
+ export function createOverlay(props: AriaOverlayProps, ref: () => Element | null): OverlayAria {
55
53
  const onClose = () => props.onClose;
56
54
  const shouldCloseOnBlur = () => props.shouldCloseOnBlur;
57
55
  const isOpen = () => props.isOpen ?? false;
@@ -116,6 +114,38 @@ export function createOverlay(
116
114
  });
117
115
  });
118
116
 
117
+ createEffect(() => {
118
+ if (!isOpen() || !shouldCloseOnBlur()) {
119
+ return;
120
+ }
121
+
122
+ const overlay = ref();
123
+ if (!overlay) {
124
+ return;
125
+ }
126
+
127
+ const ownerDocument = getOwnerDocument(overlay);
128
+ const onFocusIn = (event: FocusEvent) => {
129
+ if (!isOpen()) {
130
+ return;
131
+ }
132
+
133
+ const currentOverlay = ref();
134
+ const target = event.target as Element | null;
135
+ if (!currentOverlay || !target || nodeContains(currentOverlay, target)) {
136
+ return;
137
+ }
138
+
139
+ const shouldClose = shouldCloseOnInteractOutside();
140
+ if (!shouldClose || shouldClose(target)) {
141
+ onHide();
142
+ }
143
+ };
144
+
145
+ ownerDocument.addEventListener("focusin", onFocusIn, true);
146
+ onCleanup(() => ownerDocument.removeEventListener("focusin", onFocusIn, true));
147
+ });
148
+
119
149
  // Handle focus within for blur detection
120
150
  const { focusWithinProps } = createFocusWithin({
121
151
  get isDisabled() {
@@ -138,7 +168,7 @@ export function createOverlay(
138
168
 
139
169
  // Handle the escape key
140
170
  const onKeyDown: JSX.EventHandler<HTMLElement, KeyboardEvent> = (e) => {
141
- if (e.key === 'Escape' && !isKeyboardDismissDisabled() && !e.isComposing) {
171
+ if (e.key === "Escape" && !isKeyboardDismissDisabled() && !e.isComposing) {
142
172
  e.stopPropagation();
143
173
  e.preventDefault();
144
174
  onHide();
@@ -3,22 +3,22 @@
3
3
  * Based on @react-aria/overlays useOverlayTrigger.
4
4
  */
5
5
 
6
- import { createEffect } from 'solid-js';
7
- import type { OverlayTriggerState } from '@proyecto-viviana/solid-stately';
8
- import { createId } from '../ssr';
9
- import { access, type MaybeAccessor } from '../utils';
6
+ import { createEffect } from "solid-js";
7
+ import type { OverlayTriggerState } from "@proyecto-viviana/solid-stately";
8
+ import { createId } from "../ssr";
9
+ import { access, type MaybeAccessor } from "../utils";
10
10
 
11
11
  export interface OverlayTriggerProps {
12
12
  /** Type of overlay that is opened by the trigger. */
13
- type: 'dialog' | 'menu' | 'listbox' | 'tree' | 'grid';
13
+ type: "dialog" | "menu" | "listbox" | "tree" | "grid";
14
14
  }
15
15
 
16
16
  export interface OverlayTriggerAria {
17
17
  /** Props for the trigger element. */
18
18
  triggerProps: {
19
- 'aria-haspopup'?: boolean | 'listbox';
20
- 'aria-expanded': boolean;
21
- 'aria-controls'?: string;
19
+ "aria-haspopup"?: boolean | "listbox";
20
+ "aria-expanded": boolean;
21
+ "aria-controls"?: string;
22
22
  onPress: () => void;
23
23
  };
24
24
  /** Props for the overlay container element. */
@@ -37,7 +37,7 @@ export const onCloseMap = new WeakMap<Element, () => void>();
37
37
  export function createOverlayTrigger(
38
38
  props: MaybeAccessor<OverlayTriggerProps>,
39
39
  state: OverlayTriggerState,
40
- ref?: () => Element | null
40
+ ref?: () => Element | null,
41
41
  ): OverlayTriggerAria {
42
42
  const propsAccessor = () => access(props);
43
43
  const overlayId = createId();
@@ -55,25 +55,25 @@ export function createOverlayTrigger(
55
55
  // https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup
56
56
  // However, we only add it for menus for now because screen readers often
57
57
  // announce it as a menu even for other values.
58
- const getAriaHasPopup = (): boolean | 'listbox' | undefined => {
58
+ const getAriaHasPopup = (): boolean | "listbox" | undefined => {
59
59
  const type = propsAccessor().type;
60
- if (type === 'menu') {
60
+ if (type === "menu") {
61
61
  return true;
62
- } else if (type === 'listbox') {
63
- return 'listbox';
62
+ } else if (type === "listbox") {
63
+ return "listbox";
64
64
  }
65
65
  return undefined;
66
66
  };
67
67
 
68
68
  return {
69
69
  triggerProps: {
70
- get 'aria-haspopup'() {
70
+ get "aria-haspopup"() {
71
71
  return getAriaHasPopup();
72
72
  },
73
- get 'aria-expanded'() {
73
+ get "aria-expanded"() {
74
74
  return state.isOpen();
75
75
  },
76
- get 'aria-controls'() {
76
+ get "aria-controls"() {
77
77
  return state.isOpen() ? overlayId : undefined;
78
78
  },
79
79
  onPress: state.toggle,
@@ -3,15 +3,15 @@
3
3
  * Based on @react-aria/overlays usePreventScroll.
4
4
  */
5
5
 
6
- import { createEffect, onCleanup } from 'solid-js';
7
- import { isIOS, getScrollParent, isScrollable, willOpenKeyboard, chain } from '../utils';
6
+ import { createEffect, onCleanup } from "solid-js";
7
+ import { isIOS, getScrollParent, isScrollable, willOpenKeyboard, chain } from "../utils";
8
8
 
9
9
  export interface PreventScrollOptions {
10
10
  /** Whether the scroll lock is disabled. */
11
11
  isDisabled?: boolean;
12
12
  }
13
13
 
14
- const visualViewport = typeof document !== 'undefined' && window.visualViewport;
14
+ const visualViewport = typeof document !== "undefined" && window.visualViewport;
15
15
 
16
16
  // The number of active createPreventScroll calls. Used to determine whether to revert back to the original page style/scroll position
17
17
  let preventScrollCount = 0;
@@ -57,14 +57,14 @@ function preventScrollStandard(): () => void {
57
57
 
58
58
  if (scrollbarWidth > 0) {
59
59
  // Use scrollbar-gutter when supported because it also works for fixed positioned elements.
60
- if ('scrollbarGutter' in document.documentElement.style) {
61
- restoreFns.push(setStyle(document.documentElement, 'scrollbarGutter', 'stable'));
60
+ if ("scrollbarGutter" in document.documentElement.style) {
61
+ restoreFns.push(setStyle(document.documentElement, "scrollbarGutter", "stable"));
62
62
  } else {
63
- restoreFns.push(setStyle(document.documentElement, 'paddingRight', `${scrollbarWidth}px`));
63
+ restoreFns.push(setStyle(document.documentElement, "paddingRight", `${scrollbarWidth}px`));
64
64
  }
65
65
  }
66
66
 
67
- restoreFns.push(setStyle(document.documentElement, 'overflow', 'hidden'));
67
+ restoreFns.push(setStyle(document.documentElement, "overflow", "hidden"));
68
68
 
69
69
  return () => {
70
70
  restoreFns.forEach((fn) => fn());
@@ -112,8 +112,8 @@ function preventScrollMobileSafari(): () => void {
112
112
 
113
113
  // If this is a focused input element with a selected range, allow user to drag the selection handles.
114
114
  if (
115
- 'selectionStart' in target &&
116
- 'selectionEnd' in target &&
115
+ "selectionStart" in target &&
116
+ "selectionEnd" in target &&
117
117
  (target.selectionStart as number) < (target.selectionEnd as number) &&
118
118
  target.ownerDocument.activeElement === target
119
119
  ) {
@@ -125,7 +125,7 @@ function preventScrollMobileSafari(): () => void {
125
125
  // of a nested scrollable area, otherwise mobile Safari will start scrolling
126
126
  // the window instead.
127
127
  // This must be applied before the touchstart event as of iOS 26, so inject it as a <style> element.
128
- const style = document.createElement('style');
128
+ const style = document.createElement("style");
129
129
  style.textContent = `
130
130
  @layer {
131
131
  * {
@@ -152,7 +152,10 @@ function preventScrollMobileSafari(): () => void {
152
152
  // block horizontal scrolling too. In that case, adding `touch-action: pan-x` to
153
153
  // the element will prevent vertical page scrolling. We can't add that automatically
154
154
  // because it must be set before the touchstart event.
155
- if (scrollable.scrollHeight === scrollable.clientHeight && scrollable.scrollWidth === scrollable.clientWidth) {
155
+ if (
156
+ scrollable.scrollHeight === scrollable.clientHeight &&
157
+ scrollable.scrollWidth === scrollable.clientWidth
158
+ ) {
156
159
  e.preventDefault();
157
160
  }
158
161
  };
@@ -170,7 +173,7 @@ function preventScrollMobileSafari(): () => void {
170
173
  // the same input again, it is already focused, so no blur event will fire,
171
174
  // resulting in the flow above never running and Safari's native scrolling occurring.
172
175
  // Instead, move focus to the parent focusable element (e.g. the dialog).
173
- const focusable = target.parentElement?.closest('[tabindex]') as HTMLElement | null;
176
+ const focusable = target.parentElement?.closest("[tabindex]") as HTMLElement | null;
174
177
  focusable?.focus({ preventScroll: true });
175
178
  }
176
179
  };
@@ -179,7 +182,8 @@ function preventScrollMobileSafari(): () => void {
179
182
  const focus = HTMLElement.prototype.focus;
180
183
  HTMLElement.prototype.focus = function (opts) {
181
184
  // Track whether the keyboard was already visible before.
182
- const wasKeyboardVisible = document.activeElement != null && willOpenKeyboard(document.activeElement);
185
+ const wasKeyboardVisible =
186
+ document.activeElement != null && willOpenKeyboard(document.activeElement);
183
187
 
184
188
  // Focus the element without scrolling the page.
185
189
  focus.call(this, { ...opts, preventScroll: true });
@@ -190,9 +194,9 @@ function preventScrollMobileSafari(): () => void {
190
194
  };
191
195
 
192
196
  const removeEvents = chain(
193
- addEvent(document, 'touchstart', onTouchStart, { passive: false, capture: true }),
194
- addEvent(document, 'touchmove', onTouchMove, { passive: false, capture: true }),
195
- addEvent(document, 'blur', onBlur, true)
197
+ addEvent(document, "touchstart", onTouchStart, { passive: false, capture: true }),
198
+ addEvent(document, "touchmove", onTouchMove, { passive: false, capture: true }),
199
+ addEvent(document, "blur", onBlur, true),
196
200
  );
197
201
 
198
202
  return () => {
@@ -204,7 +208,9 @@ function preventScrollMobileSafari(): () => void {
204
208
 
205
209
  // Sets a CSS property on an element, and returns a function to revert it to the previous value.
206
210
  function setStyle(element: HTMLElement, styleName: string, value: string): () => void {
207
- const cur = element.style.getPropertyValue(styleName) || (element.style as unknown as Record<string, string>)[styleName];
211
+ const cur =
212
+ element.style.getPropertyValue(styleName) ||
213
+ (element.style as unknown as Record<string, string>)[styleName];
208
214
  (element.style as unknown as Record<string, string>)[styleName] = value;
209
215
 
210
216
  return () => {
@@ -217,7 +223,7 @@ function addEvent<K extends keyof GlobalEventHandlersEventMap>(
217
223
  target: Document | Window,
218
224
  event: K,
219
225
  handler: (this: Document | Window, ev: GlobalEventHandlersEventMap[K]) => void,
220
- options?: boolean | AddEventListenerOptions
226
+ options?: boolean | AddEventListenerOptions,
221
227
  ): () => void {
222
228
  target.addEventListener(event, handler as EventListener, options);
223
229
  return () => {
@@ -232,7 +238,7 @@ function scrollIntoViewWhenReady(target: Element, wasKeyboardVisible: boolean):
232
238
  } else {
233
239
  // Otherwise, wait for the visual viewport to resize before scrolling so we can
234
240
  // measure the correct position to scroll to.
235
- visualViewport.addEventListener('resize', () => scrollIntoView(target), { once: true });
241
+ visualViewport.addEventListener("resize", () => scrollIntoView(target), { once: true });
236
242
  }
237
243
  }
238
244
 
@@ -242,21 +248,37 @@ function scrollIntoView(target: Element): void {
242
248
  while (nextTarget && nextTarget !== root) {
243
249
  // Find the parent scrollable element and adjust the scroll position if the target is not already in view.
244
250
  const scrollableParent = getScrollParent(nextTarget);
245
- if (scrollableParent !== document.documentElement && scrollableParent !== document.body && scrollableParent !== nextTarget) {
251
+ if (
252
+ scrollableParent !== document.documentElement &&
253
+ scrollableParent !== document.body &&
254
+ scrollableParent !== nextTarget
255
+ ) {
246
256
  const scrollableRect = scrollableParent.getBoundingClientRect();
247
257
  const targetRect = nextTarget.getBoundingClientRect();
248
- if (targetRect.top < scrollableRect.top || targetRect.bottom > scrollableRect.top + nextTarget.clientHeight) {
258
+ if (
259
+ targetRect.top < scrollableRect.top ||
260
+ targetRect.bottom > scrollableRect.top + nextTarget.clientHeight
261
+ ) {
249
262
  let bottom = scrollableRect.bottom;
250
263
  if (visualViewport) {
251
264
  bottom = Math.min(bottom, visualViewport.offsetTop + visualViewport.height);
252
265
  }
253
266
 
254
267
  // Center within the viewport.
255
- const adjustment = (targetRect.top - scrollableRect.top) - ((bottom - scrollableRect.top) / 2 - targetRect.height / 2);
268
+ const adjustment =
269
+ targetRect.top -
270
+ scrollableRect.top -
271
+ ((bottom - scrollableRect.top) / 2 - targetRect.height / 2);
256
272
  scrollableParent.scrollTo({
257
273
  // Clamp to the valid range to prevent over-scrolling.
258
- top: Math.max(0, Math.min(scrollableParent.scrollHeight - scrollableParent.clientHeight, scrollableParent.scrollTop + adjustment)),
259
- behavior: 'smooth'
274
+ top: Math.max(
275
+ 0,
276
+ Math.min(
277
+ scrollableParent.scrollHeight - scrollableParent.clientHeight,
278
+ scrollableParent.scrollTop + adjustment,
279
+ ),
280
+ ),
281
+ behavior: "smooth",
260
282
  });
261
283
  }
262
284
  }
@@ -1,5 +1,5 @@
1
1
  // Scroll prevention
2
- export { createPreventScroll, type PreventScrollOptions } from './createPreventScroll';
2
+ export { createPreventScroll, type PreventScrollOptions } from "./createPreventScroll";
3
3
 
4
4
  // Overlay trigger
5
5
  export {
@@ -7,27 +7,16 @@ export {
7
7
  onCloseMap,
8
8
  type OverlayTriggerProps,
9
9
  type OverlayTriggerAria,
10
- } from './createOverlayTrigger';
10
+ } from "./createOverlayTrigger";
11
11
 
12
12
  // Overlay behavior
13
- export {
14
- createOverlay,
15
- type AriaOverlayProps,
16
- type OverlayAria,
17
- } from './createOverlay';
13
+ export { createOverlay, type AriaOverlayProps, type OverlayAria } from "./createOverlay";
18
14
 
19
15
  // Interact outside detection
20
- export {
21
- createInteractOutside,
22
- type InteractOutsideProps,
23
- } from './createInteractOutside';
16
+ export { createInteractOutside, type InteractOutsideProps } from "./createInteractOutside";
24
17
 
25
18
  // Aria hiding
26
- export {
27
- ariaHideOutside,
28
- keepVisible,
29
- type AriaHideOutsideOptions,
30
- } from './ariaHideOutside';
19
+ export { ariaHideOutside, keepVisible, type AriaHideOutsideOptions } from "./ariaHideOutside";
31
20
 
32
21
  // Modal
33
22
  export {
@@ -45,4 +34,4 @@ export {
45
34
  type PortalProviderContextValue,
46
35
  type AriaModalOptions,
47
36
  type ModalAria,
48
- } from './createModal';
37
+ } from "./createModal";