@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
@@ -6,15 +6,11 @@
6
6
  * Port of @react-aria/disclosure useDisclosure.
7
7
  */
8
8
 
9
- import { type JSX, createEffect } from 'solid-js';
10
- import { type DisclosureState } from '@proyecto-viviana/solid-stately';
11
- import { createId, canUseDOM } from '../ssr';
12
- import { createPress } from '../interactions/createPress';
13
- import { mergeProps } from '../utils/mergeProps';
14
-
15
- // ============================================
16
- // TYPES
17
- // ============================================
9
+ import { type JSX, createEffect, onCleanup } from "solid-js";
10
+ import { type DisclosureState } from "@proyecto-viviana/solid-stately";
11
+ import { createId, canUseDOM } from "../ssr";
12
+ import { createPress } from "../interactions/createPress";
13
+ import { mergeProps } from "../utils/mergeProps";
18
14
 
19
15
  export interface AriaDisclosureProps {
20
16
  /** Whether the disclosure is disabled. */
@@ -26,11 +22,16 @@ export interface DisclosureAria {
26
22
  buttonProps: JSX.ButtonHTMLAttributes<HTMLButtonElement>;
27
23
  /** Props for the disclosure panel. */
28
24
  panelProps: JSX.HTMLAttributes<HTMLElement>;
25
+ /** Whether the disclosure trigger is currently pressed. */
26
+ isPressed: () => boolean;
29
27
  }
30
28
 
31
- // ============================================
32
- // IMPLEMENTATION
33
- // ============================================
29
+ export function getDisclosurePanelHiddenAttribute(
30
+ isExpanded: boolean,
31
+ hasDOM = canUseDOM,
32
+ ): true | undefined {
33
+ return hasDOM ? undefined : !isExpanded || undefined;
34
+ }
34
35
 
35
36
  /**
36
37
  * Provides the behavior and accessibility implementation for a disclosure component.
@@ -66,65 +67,169 @@ export interface DisclosureAria {
66
67
  export function createDisclosure(
67
68
  props: AriaDisclosureProps | (() => AriaDisclosureProps),
68
69
  state: DisclosureState,
69
- panelRef: () => HTMLElement | null
70
+ panelRef: () => HTMLElement | null,
70
71
  ): DisclosureAria {
71
72
  // Handle both plain object and accessor function patterns
72
- const getProps = typeof props === 'function' ? props : () => props;
73
+ const getProps = typeof props === "function" ? props : () => props;
73
74
 
74
75
  const triggerId = createId();
75
76
  const panelId = createId();
76
77
 
77
- // Handle panel visibility with hidden attribute
78
+ let raf: number | null = null;
79
+ let isExpandedRef: boolean | null = null;
80
+
81
+ const requestFrame = (callback: FrameRequestCallback): number => {
82
+ if (typeof requestAnimationFrame === "function") {
83
+ return requestAnimationFrame(callback);
84
+ }
85
+
86
+ return window.setTimeout(() => callback(performance.now()), 16);
87
+ };
88
+
89
+ const cancelFrame = (id: number) => {
90
+ if (typeof cancelAnimationFrame === "function") {
91
+ cancelAnimationFrame(id);
92
+ } else {
93
+ window.clearTimeout(id);
94
+ }
95
+ };
96
+
97
+ const cancelPendingRaf = () => {
98
+ if (raf != null && canUseDOM) {
99
+ cancelFrame(raf);
100
+ raf = null;
101
+ }
102
+ };
103
+
104
+ const setPanelSize = (panel: HTMLElement, width: string, height: string) => {
105
+ panel.style.setProperty("--disclosure-panel-width", width);
106
+ panel.style.setProperty("--disclosure-panel-height", height);
107
+ };
108
+
109
+ const getPanelAnimations = (panel: HTMLElement): Animation[] => {
110
+ return typeof panel.getAnimations === "function" ? panel.getAnimations() : [];
111
+ };
112
+
113
+ // Handle browser find-in-page reveal for collapsed panels.
78
114
  createEffect(() => {
79
115
  if (!canUseDOM) return;
80
116
 
81
117
  const panel = panelRef();
82
118
  if (!panel) return;
83
119
 
84
- if (state.isExpanded()) {
85
- panel.removeAttribute('hidden');
86
- } else {
87
- // Use 'until-found' for find-in-page support where available
88
- panel.setAttribute('hidden', 'until-found');
120
+ const handleBeforeMatch = () => {
121
+ cancelPendingRaf();
122
+ raf = requestFrame(() => {
123
+ if (panelRef() === panel) {
124
+ panel.setAttribute("hidden", "until-found");
125
+ }
126
+ raf = null;
127
+ });
128
+
129
+ state.toggle();
130
+ };
131
+
132
+ panel.addEventListener("beforematch", handleBeforeMatch);
133
+ onCleanup(() => {
134
+ panel.removeEventListener("beforematch", handleBeforeMatch);
135
+ });
136
+ });
137
+
138
+ // Handle panel visibility and animation sizing.
139
+ createEffect(() => {
140
+ if (!canUseDOM) return;
141
+
142
+ const panel = panelRef();
143
+ if (!panel) return;
144
+
145
+ const isExpanded = state.isExpanded();
146
+ cancelPendingRaf();
147
+
148
+ if (isExpandedRef === null || typeof panel.getAnimations !== "function") {
149
+ if (isExpanded) {
150
+ panel.removeAttribute("hidden");
151
+ setPanelSize(panel, "auto", "auto");
152
+ } else {
153
+ panel.setAttribute("hidden", "until-found");
154
+ setPanelSize(panel, "0px", "0px");
155
+ }
156
+ } else if (isExpanded !== isExpandedRef) {
157
+ if (isExpanded) {
158
+ panel.removeAttribute("hidden");
159
+ setPanelSize(panel, `${panel.scrollWidth}px`, `${panel.scrollHeight}px`);
160
+
161
+ Promise.all(getPanelAnimations(panel).map((animation) => animation.finished))
162
+ .then(() => {
163
+ if (panelRef() === panel && state.isExpanded()) {
164
+ setPanelSize(panel, "auto", "auto");
165
+ }
166
+ })
167
+ .catch(() => {});
168
+ } else {
169
+ setPanelSize(panel, `${panel.scrollWidth}px`, `${panel.scrollHeight}px`);
170
+
171
+ // Force style recalculation before animating to zero.
172
+ window.getComputedStyle(panel).height;
173
+
174
+ setPanelSize(panel, "0px", "0px");
175
+
176
+ Promise.all(getPanelAnimations(panel).map((animation) => animation.finished))
177
+ .then(() => {
178
+ if (panelRef() === panel && !state.isExpanded()) {
179
+ panel.setAttribute("hidden", "until-found");
180
+ }
181
+ })
182
+ .catch(() => {});
183
+ }
89
184
  }
185
+
186
+ isExpandedRef = isExpanded;
90
187
  });
91
188
 
189
+ onCleanup(cancelPendingRaf);
190
+
92
191
  // Use createPress for proper interaction handling (matches Select/Menu pattern)
93
- const { pressProps } = createPress({
192
+ const { pressProps, isPressed } = createPress({
94
193
  get isDisabled() {
95
194
  return getProps().isDisabled;
96
195
  },
97
- onPress() {
98
- state.toggle();
196
+ onPressStart(event) {
197
+ if (event.pointerType === "keyboard") {
198
+ state.toggle();
199
+ }
200
+ },
201
+ onPress(event) {
202
+ if (event.pointerType !== "keyboard") {
203
+ state.toggle();
204
+ }
99
205
  },
100
206
  });
101
207
 
102
208
  return {
209
+ isPressed,
103
210
  // Button props - merge with pressProps for consistent interaction handling
104
211
  // Using getter (not createMemo) to match createSelect pattern
105
212
  get buttonProps(): JSX.ButtonHTMLAttributes<HTMLButtonElement> {
106
213
  const p = getProps();
107
- // Note: Don't add duplicate onKeyDown handler here!
108
- // createPress already handles Enter/Space via its onPress callback.
109
- // Adding another toggle call would double-toggle (toggle on keydown, toggle again on keyup).
110
214
  return mergeProps(
111
215
  pressProps as Record<string, unknown>,
112
216
  {
113
217
  id: triggerId,
114
- type: 'button',
115
- 'aria-expanded': state.isExpanded(),
116
- 'aria-controls': panelId,
218
+ type: "button",
219
+ "aria-expanded": state.isExpanded(),
220
+ "aria-controls": panelId,
117
221
  disabled: p.isDisabled,
118
- } as Record<string, unknown>
222
+ } as Record<string, unknown>,
119
223
  ) as JSX.ButtonHTMLAttributes<HTMLButtonElement>;
120
224
  },
121
225
  // Panel props
122
226
  get panelProps(): JSX.HTMLAttributes<HTMLElement> {
123
227
  return {
124
228
  id: panelId,
125
- role: 'region',
126
- 'aria-labelledby': triggerId,
127
- hidden: !state.isExpanded() || undefined,
229
+ role: "group",
230
+ "aria-labelledby": triggerId,
231
+ "aria-hidden": !state.isExpanded(),
232
+ hidden: getDisclosurePanelHiddenAttribute(state.isExpanded()),
128
233
  };
129
234
  },
130
235
  };
@@ -6,13 +6,9 @@
6
6
  * Port of @react-aria/disclosure.
7
7
  */
8
8
 
9
- import { type JSX, createMemo } from 'solid-js';
10
- import { type DisclosureGroupState } from '@proyecto-viviana/solid-stately';
11
- import { access, type MaybeAccessor } from '../utils/reactivity';
12
-
13
- // ============================================
14
- // TYPES
15
- // ============================================
9
+ import { type JSX } from "solid-js";
10
+ import { type DisclosureGroupState } from "@proyecto-viviana/solid-stately";
11
+ import { type MaybeAccessor } from "../utils/reactivity";
16
12
 
17
13
  export interface AriaDisclosureGroupProps {
18
14
  /** Whether the disclosure group is disabled. */
@@ -24,10 +20,6 @@ export interface DisclosureGroupAria {
24
20
  groupProps: JSX.HTMLAttributes<HTMLElement>;
25
21
  }
26
22
 
27
- // ============================================
28
- // IMPLEMENTATION
29
- // ============================================
30
-
31
23
  /**
32
24
  * Provides accessibility implementation for a group of disclosures (accordion).
33
25
  *
@@ -49,17 +41,12 @@ export interface DisclosureGroupAria {
49
41
  * ```
50
42
  */
51
43
  export function createDisclosureGroup(
52
- props: MaybeAccessor<AriaDisclosureGroupProps>,
53
- state: DisclosureGroupState
44
+ _props: MaybeAccessor<AriaDisclosureGroupProps>,
45
+ _state: DisclosureGroupState,
54
46
  ): DisclosureGroupAria {
55
- const getProps = () => access(props);
56
-
57
- const groupProps = createMemo<JSX.HTMLAttributes<HTMLElement>>(() => ({
58
- role: 'group',
59
- 'aria-disabled': getProps().isDisabled || state.isDisabled || undefined,
60
- }));
61
-
62
47
  return {
63
- get groupProps() { return groupProps(); },
48
+ get groupProps() {
49
+ return {};
50
+ },
64
51
  };
65
52
  }
@@ -2,10 +2,10 @@ export {
2
2
  createDisclosure,
3
3
  type AriaDisclosureProps,
4
4
  type DisclosureAria,
5
- } from './createDisclosure';
5
+ } from "./createDisclosure";
6
6
 
7
7
  export {
8
8
  createDisclosureGroup,
9
9
  type AriaDisclosureGroupProps,
10
10
  type DisclosureGroupAria,
11
- } from './createDisclosureGroup';
11
+ } from "./createDisclosureGroup";
@@ -5,9 +5,9 @@
5
5
  * mouse, touch, and keyboard interactions.
6
6
  */
7
7
 
8
- import { createMemo, type Accessor } from 'solid-js';
9
- import { createDragState } from '@proyecto-viviana/solid-stately';
10
- import type { AriaDragOptions, DragAria } from './types';
8
+ import { createMemo, type Accessor } from "solid-js";
9
+ import { createDragState } from "@proyecto-viviana/solid-stately";
10
+ import type { AriaDragOptions, DragAria } from "./types";
11
11
  import {
12
12
  getTypes,
13
13
  writeToDataTransfer,
@@ -17,8 +17,8 @@ import {
17
17
  setGlobalAllowedDropOperations,
18
18
  setGlobalDropEffect,
19
19
  getGlobalDropEffect,
20
- } from './utils';
21
- import { setGlobalDraggingTypes } from './createDraggableCollection';
20
+ } from "./utils";
21
+ import { setGlobalDraggingTypes } from "./createDraggableCollection";
22
22
 
23
23
  /**
24
24
  * Creates ARIA props for a draggable element.
@@ -29,7 +29,6 @@ import { setGlobalDraggingTypes } from './createDraggableCollection';
29
29
  export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
30
30
  const getProps = createMemo(() => props());
31
31
 
32
- // Create drag state
33
32
  const state = createDragState(() => ({
34
33
  getItems: getProps().getItems,
35
34
  getAllowedDropOperations: getProps().getAllowedDropOperations,
@@ -41,7 +40,6 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
41
40
  preview: getProps().preview,
42
41
  }));
43
42
 
44
- // Track position for drag move
45
43
  let lastX = 0;
46
44
  let lastY = 0;
47
45
 
@@ -51,10 +49,8 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
51
49
 
52
50
  const p = getProps();
53
51
 
54
- // Call state handler
55
52
  state.startDrag(e.clientX, e.clientY);
56
53
 
57
- // Get items and write to data transfer
58
54
  const items = state.getItems();
59
55
  setGlobalDraggingTypes(getTypes(items));
60
56
  e.dataTransfer?.clearData?.();
@@ -62,7 +58,6 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
62
58
  writeToDataTransfer(e.dataTransfer, items);
63
59
  }
64
60
 
65
- // Set allowed drop operations
66
61
  let allowed = DROP_OPERATION.all;
67
62
  const allowedOps = state.getAllowedDropOperations();
68
63
  if (allowedOps.length > 0) {
@@ -73,14 +68,14 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
73
68
  }
74
69
 
75
70
  setGlobalAllowedDropOperations(allowed);
76
- const effectAllowed = EFFECT_ALLOWED[allowed] || 'none';
71
+ const effectAllowed = EFFECT_ALLOWED[allowed] || "none";
77
72
  if (e.dataTransfer) {
78
- e.dataTransfer.effectAllowed =
79
- (effectAllowed === 'cancel' ? 'none' : effectAllowed) as DataTransfer['effectAllowed'];
73
+ e.dataTransfer.effectAllowed = (
74
+ effectAllowed === "cancel" ? "none" : effectAllowed
75
+ ) as DataTransfer["effectAllowed"];
80
76
  }
81
77
 
82
- // Handle custom preview
83
- if (typeof p.preview?.current === 'function' && e.dataTransfer) {
78
+ if (typeof p.preview?.current === "function" && e.dataTransfer) {
84
79
  p.preview.current(items, (node, userX, userY) => {
85
80
  if (!node || !e.dataTransfer) return;
86
81
 
@@ -94,8 +89,8 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
94
89
  defaultY = size.height / 2;
95
90
  }
96
91
 
97
- let offsetX = typeof userX === 'number' ? userX : defaultX;
98
- let offsetY = typeof userY === 'number' ? userY : defaultY;
92
+ let offsetX = typeof userX === "number" ? userX : defaultX;
93
+ let offsetY = typeof userY === "number" ? userY : defaultY;
99
94
 
100
95
  offsetX = Math.max(0, Math.min(offsetX, size.width));
101
96
  offsetY = Math.max(0, Math.min(offsetY, size.height));
@@ -124,7 +119,7 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
124
119
  const onDragEnd = (e: DragEvent) => {
125
120
  e.stopPropagation();
126
121
 
127
- let dropEffect: string = e.dataTransfer?.dropEffect ?? 'none';
122
+ let dropEffect: string = e.dataTransfer?.dropEffect ?? "none";
128
123
  // Chrome Android fix - use global drop effect
129
124
  if (getGlobalDropEffect()) {
130
125
  dropEffect = getGlobalDropEffect()!;
@@ -140,14 +135,14 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
140
135
 
141
136
  // Keyboard/screen reader drag initiation
142
137
  const onKeyDown = (e: KeyboardEvent) => {
143
- if (e.key === 'Enter' && e.target === e.currentTarget) {
138
+ if (e.key === "Enter" && e.target === e.currentTarget) {
144
139
  e.preventDefault();
145
140
  e.stopPropagation();
146
141
  }
147
142
  };
148
143
 
149
144
  const onKeyUp = (e: KeyboardEvent) => {
150
- if (e.key === 'Enter' && e.target === e.currentTarget) {
145
+ if (e.key === "Enter" && e.target === e.currentTarget) {
151
146
  e.preventDefault();
152
147
  e.stopPropagation();
153
148
  // Would initiate keyboard-based drag mode
@@ -184,7 +179,6 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
184
179
  onDragEnd,
185
180
  };
186
181
 
187
- // Add keyboard handlers if no separate drag button
188
182
  if (!p.hasDragButton) {
189
183
  baseProps.onKeyDown = onKeyDown;
190
184
  baseProps.onKeyUp = onKeyUp;
@@ -203,8 +197,8 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
203
197
  }
204
198
 
205
199
  return {
206
- type: 'button' as const,
207
- 'aria-label': 'Drag',
200
+ type: "button" as const,
201
+ "aria-label": "Drag",
208
202
  onKeyDown,
209
203
  onKeyUp,
210
204
  };
@@ -212,10 +206,10 @@ export function createDrag(props: Accessor<AriaDragOptions>): DragAria {
212
206
 
213
207
  return {
214
208
  get dragProps() {
215
- return dragProps() as DragAria['dragProps'];
209
+ return dragProps() as DragAria["dragProps"];
216
210
  },
217
211
  get dragButtonProps() {
218
- return dragButtonProps() as DragAria['dragButtonProps'];
212
+ return dragButtonProps() as DragAria["dragButtonProps"];
219
213
  },
220
214
  get isDragging() {
221
215
  return state.isDragging;
@@ -5,9 +5,9 @@
5
5
  * component like ListBox, GridList, or Table.
6
6
  */
7
7
 
8
- import { createMemo, createEffect, onCleanup, type Accessor } from 'solid-js';
9
- import type { DraggableCollectionState } from '@proyecto-viviana/solid-stately';
10
- import { getTypes } from './utils';
8
+ import { createMemo, createEffect, onCleanup, type Accessor } from "solid-js";
9
+ import type { DraggableCollectionState } from "@proyecto-viviana/solid-stately";
10
+ import { getTypes } from "./utils";
11
11
 
12
12
  // Global state for tracking the dragging collection
13
13
  let globalDraggingCollectionRef: HTMLElement | null = null;
@@ -57,7 +57,7 @@ export interface DraggableCollectionAria {
57
57
  */
58
58
  export function createDraggableCollection(
59
59
  options: DraggableCollectionOptions,
60
- state: DraggableCollectionState
60
+ state: DraggableCollectionState,
61
61
  ): DraggableCollectionAria {
62
62
  const ref = createMemo(() => options.ref());
63
63
 
@@ -4,12 +4,12 @@
4
4
  * Provides accessibility props for items that can be dragged from a collection.
5
5
  */
6
6
 
7
- import { createMemo, type Accessor } from 'solid-js';
8
- import type { JSX } from 'solid-js';
7
+ import { createMemo, type Accessor } from "solid-js";
8
+ import type { JSX } from "solid-js";
9
9
  import type {
10
10
  DraggableCollectionState,
11
11
  DragPreviewRenderer,
12
- } from '@proyecto-viviana/solid-stately';
12
+ } from "@proyecto-viviana/solid-stately";
13
13
  import {
14
14
  getTypes,
15
15
  writeToDataTransfer,
@@ -19,8 +19,8 @@ import {
19
19
  setGlobalAllowedDropOperations,
20
20
  setGlobalDropEffect,
21
21
  getGlobalDropEffect,
22
- } from './utils';
23
- import { setGlobalDraggingTypes } from './createDraggableCollection';
22
+ } from "./utils";
23
+ import { setGlobalDraggingTypes } from "./createDraggableCollection";
24
24
 
25
25
  export interface DraggableItemOptions {
26
26
  /** The unique key of the item. */
@@ -51,7 +51,7 @@ export interface DraggableItemAria {
51
51
  */
52
52
  export function createDraggableItem(
53
53
  options: Accessor<DraggableItemOptions>,
54
- state: DraggableCollectionState
54
+ state: DraggableCollectionState,
55
55
  ): DraggableItemAria {
56
56
  const getOptions = createMemo(() => options());
57
57
 
@@ -103,15 +103,16 @@ export function createDraggableItem(
103
103
  }
104
104
 
105
105
  setGlobalAllowedDropOperations(allowed);
106
- const effectAllowed = EFFECT_ALLOWED[allowed] || 'none';
106
+ const effectAllowed = EFFECT_ALLOWED[allowed] || "none";
107
107
  if (e.dataTransfer) {
108
- e.dataTransfer.effectAllowed =
109
- (effectAllowed === 'cancel' ? 'none' : effectAllowed) as DataTransfer['effectAllowed'];
108
+ e.dataTransfer.effectAllowed = (
109
+ effectAllowed === "cancel" ? "none" : effectAllowed
110
+ ) as DataTransfer["effectAllowed"];
110
111
  }
111
112
 
112
113
  // Handle custom preview from item options or collection state.
113
114
  const preview = opts.preview ?? state.preview;
114
- if (typeof preview?.current === 'function' && e.dataTransfer) {
115
+ if (typeof preview?.current === "function" && e.dataTransfer) {
115
116
  preview.current(items, (node, userX, userY) => {
116
117
  if (!node || !e.dataTransfer) return;
117
118
 
@@ -125,8 +126,8 @@ export function createDraggableItem(
125
126
  defaultY = size.height / 2;
126
127
  }
127
128
 
128
- let offsetX = typeof userX === 'number' ? userX : defaultX;
129
- let offsetY = typeof userY === 'number' ? userY : defaultY;
129
+ let offsetX = typeof userX === "number" ? userX : defaultX;
130
+ let offsetY = typeof userY === "number" ? userY : defaultY;
130
131
 
131
132
  offsetX = Math.max(0, Math.min(offsetX, size.width));
132
133
  offsetY = Math.max(0, Math.min(offsetY, size.height));
@@ -155,7 +156,7 @@ export function createDraggableItem(
155
156
  const onDragEnd = (e: DragEvent) => {
156
157
  e.stopPropagation();
157
158
 
158
- let dropEffect: string = e.dataTransfer?.dropEffect ?? 'none';
159
+ let dropEffect: string = e.dataTransfer?.dropEffect ?? "none";
159
160
  // Chrome Android fix - use global drop effect
160
161
  if (getGlobalDropEffect()) {
161
162
  dropEffect = getGlobalDropEffect()!;
@@ -172,14 +173,14 @@ export function createDraggableItem(
172
173
 
173
174
  // Keyboard/screen reader drag initiation
174
175
  const onKeyDown = (e: KeyboardEvent) => {
175
- if (e.key === 'Enter' && e.target === e.currentTarget) {
176
+ if (e.key === "Enter" && e.target === e.currentTarget) {
176
177
  e.preventDefault();
177
178
  e.stopPropagation();
178
179
  }
179
180
  };
180
181
 
181
182
  const onKeyUp = (e: KeyboardEvent) => {
182
- if (e.key === 'Enter' && e.target === e.currentTarget) {
183
+ if (e.key === "Enter" && e.target === e.currentTarget) {
183
184
  e.preventDefault();
184
185
  e.stopPropagation();
185
186
 
@@ -238,8 +239,8 @@ export function createDraggableItem(
238
239
  }
239
240
 
240
241
  return {
241
- type: 'button' as const,
242
- 'aria-label': 'Drag',
242
+ type: "button" as const,
243
+ "aria-label": "Drag",
243
244
  onKeyDown,
244
245
  onKeyUp,
245
246
  };
@@ -247,10 +248,10 @@ export function createDraggableItem(
247
248
 
248
249
  return {
249
250
  get dragProps() {
250
- return dragProps() as DraggableItemAria['dragProps'];
251
+ return dragProps() as DraggableItemAria["dragProps"];
251
252
  },
252
253
  get dragButtonProps() {
253
- return dragButtonProps() as DraggableItemAria['dragButtonProps'];
254
+ return dragButtonProps() as DraggableItemAria["dragButtonProps"];
254
255
  },
255
256
  get isDragging() {
256
257
  return isDragging();