@proyecto-viviana/solidaria 0.2.8 → 0.4.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 (976) hide show
  1. package/README.md +31 -236
  2. package/dist/_chunk/actiongroup.js +207 -0
  3. package/dist/_chunk/actiongroup.js.map +1 -0
  4. package/dist/_chunk/actiongroup.jsx +207 -0
  5. package/dist/_chunk/actiongroup.jsx.map +1 -0
  6. package/dist/_chunk/ariaHideOutside.js +122 -0
  7. package/dist/_chunk/ariaHideOutside.js.map +1 -0
  8. package/dist/_chunk/ariaHideOutside.jsx +122 -0
  9. package/dist/_chunk/ariaHideOutside.jsx.map +1 -0
  10. package/dist/_chunk/autocomplete.js +196 -0
  11. package/dist/_chunk/autocomplete.js.map +1 -0
  12. package/dist/_chunk/autocomplete.jsx +196 -0
  13. package/dist/_chunk/autocomplete.jsx.map +1 -0
  14. package/dist/_chunk/breadcrumbs.js +119 -0
  15. package/dist/_chunk/breadcrumbs.js.map +1 -0
  16. package/dist/_chunk/breadcrumbs.jsx +119 -0
  17. package/dist/_chunk/breadcrumbs.jsx.map +1 -0
  18. package/dist/_chunk/button.js +276 -0
  19. package/dist/_chunk/button.js.map +1 -0
  20. package/dist/_chunk/button.jsx +276 -0
  21. package/dist/_chunk/button.jsx.map +1 -0
  22. package/dist/_chunk/calendar.js +1036 -0
  23. package/dist/_chunk/calendar.js.map +1 -0
  24. package/dist/_chunk/calendar.jsx +1036 -0
  25. package/dist/_chunk/calendar.jsx.map +1 -0
  26. package/dist/_chunk/checkbox.js +234 -0
  27. package/dist/_chunk/checkbox.js.map +1 -0
  28. package/dist/_chunk/checkbox.jsx +234 -0
  29. package/dist/_chunk/checkbox.jsx.map +1 -0
  30. package/dist/_chunk/color.js +1174 -0
  31. package/dist/_chunk/color.js.map +1 -0
  32. package/dist/_chunk/color.jsx +1174 -0
  33. package/dist/_chunk/color.jsx.map +1 -0
  34. package/dist/_chunk/combobox.js +436 -0
  35. package/dist/_chunk/combobox.js.map +1 -0
  36. package/dist/_chunk/combobox.jsx +436 -0
  37. package/dist/_chunk/combobox.jsx.map +1 -0
  38. package/dist/_chunk/createCollator.js +229 -0
  39. package/dist/_chunk/createCollator.js.map +1 -0
  40. package/dist/_chunk/createCollator.jsx +223 -0
  41. package/dist/_chunk/createCollator.jsx.map +1 -0
  42. package/dist/_chunk/createCollectionRowInteraction.js +133 -0
  43. package/dist/_chunk/createCollectionRowInteraction.js.map +1 -0
  44. package/dist/_chunk/createCollectionRowInteraction.jsx +133 -0
  45. package/dist/_chunk/createCollectionRowInteraction.jsx.map +1 -0
  46. package/dist/_chunk/createField.js +54 -0
  47. package/dist/_chunk/createField.js.map +1 -0
  48. package/dist/_chunk/createField.jsx +54 -0
  49. package/dist/_chunk/createField.jsx.map +1 -0
  50. package/dist/_chunk/createFocus.js +101 -0
  51. package/dist/_chunk/createFocus.js.map +1 -0
  52. package/dist/_chunk/createFocus.jsx +101 -0
  53. package/dist/_chunk/createFocus.jsx.map +1 -0
  54. package/dist/_chunk/createFocusRing.js +54 -0
  55. package/dist/_chunk/createFocusRing.js.map +1 -0
  56. package/dist/_chunk/createFocusRing.jsx +54 -0
  57. package/dist/_chunk/createFocusRing.jsx.map +1 -0
  58. package/dist/_chunk/createFocusWithin.js +121 -0
  59. package/dist/_chunk/createFocusWithin.js.map +1 -0
  60. package/dist/_chunk/createFocusWithin.jsx +121 -0
  61. package/dist/_chunk/createFocusWithin.jsx.map +1 -0
  62. package/dist/_chunk/createFocusable.js +131 -0
  63. package/dist/_chunk/createFocusable.js.map +1 -0
  64. package/dist/_chunk/createFocusable.jsx +131 -0
  65. package/dist/_chunk/createFocusable.jsx.map +1 -0
  66. package/dist/_chunk/createFormValidation.js +135 -0
  67. package/dist/_chunk/createFormValidation.js.map +1 -0
  68. package/dist/_chunk/createFormValidation.jsx +135 -0
  69. package/dist/_chunk/createFormValidation.jsx.map +1 -0
  70. package/dist/_chunk/createHover.js +130 -0
  71. package/dist/_chunk/createHover.js.map +1 -0
  72. package/dist/_chunk/createHover.jsx +130 -0
  73. package/dist/_chunk/createHover.jsx.map +1 -0
  74. package/dist/_chunk/createInteractionModality.js +269 -0
  75. package/dist/_chunk/createInteractionModality.js.map +1 -0
  76. package/dist/_chunk/createInteractionModality.jsx +269 -0
  77. package/dist/_chunk/createInteractionModality.jsx.map +1 -0
  78. package/dist/_chunk/createLabel.js +46 -0
  79. package/dist/_chunk/createLabel.js.map +1 -0
  80. package/dist/_chunk/createLabel.jsx +46 -0
  81. package/dist/_chunk/createLabel.jsx.map +1 -0
  82. package/dist/_chunk/createLabels.js +31 -0
  83. package/dist/_chunk/createLabels.js.map +1 -0
  84. package/dist/_chunk/createLabels.jsx +31 -0
  85. package/dist/_chunk/createLabels.jsx.map +1 -0
  86. package/dist/_chunk/createLandmark.js +198 -0
  87. package/dist/_chunk/createLandmark.js.map +1 -0
  88. package/dist/_chunk/createLandmark.jsx +198 -0
  89. package/dist/_chunk/createLandmark.jsx.map +1 -0
  90. package/dist/_chunk/createLongPress.js +91 -0
  91. package/dist/_chunk/createLongPress.js.map +1 -0
  92. package/dist/_chunk/createLongPress.jsx +91 -0
  93. package/dist/_chunk/createLongPress.jsx.map +1 -0
  94. package/dist/_chunk/createOverlay.js +327 -0
  95. package/dist/_chunk/createOverlay.js.map +1 -0
  96. package/dist/_chunk/createOverlay.jsx +327 -0
  97. package/dist/_chunk/createOverlay.jsx.map +1 -0
  98. package/dist/_chunk/createPress.js +526 -0
  99. package/dist/_chunk/createPress.js.map +1 -0
  100. package/dist/_chunk/createPress.jsx +526 -0
  101. package/dist/_chunk/createPress.jsx.map +1 -0
  102. package/dist/_chunk/createProgressBar.js +81 -0
  103. package/dist/_chunk/createProgressBar.js.map +1 -0
  104. package/dist/_chunk/createProgressBar.jsx +81 -0
  105. package/dist/_chunk/createProgressBar.jsx.map +1 -0
  106. package/dist/_chunk/createSelectableItem.js +298 -0
  107. package/dist/_chunk/createSelectableItem.js.map +1 -0
  108. package/dist/_chunk/createSelectableItem.jsx +298 -0
  109. package/dist/_chunk/createSelectableItem.jsx.map +1 -0
  110. package/dist/_chunk/createToggle.js +158 -0
  111. package/dist/_chunk/createToggle.js.map +1 -0
  112. package/dist/_chunk/createToggle.jsx +158 -0
  113. package/dist/_chunk/createToggle.jsx.map +1 -0
  114. package/dist/_chunk/createTypeSelect.js +125 -0
  115. package/dist/_chunk/createTypeSelect.js.map +1 -0
  116. package/dist/_chunk/createTypeSelect.jsx +125 -0
  117. package/dist/_chunk/createTypeSelect.jsx.map +1 -0
  118. package/dist/_chunk/datepicker.js +1393 -0
  119. package/dist/_chunk/datepicker.js.map +1 -0
  120. package/dist/_chunk/datepicker.jsx +1393 -0
  121. package/dist/_chunk/datepicker.jsx.map +1 -0
  122. package/dist/_chunk/dialog.js +62 -0
  123. package/dist/_chunk/dialog.js.map +1 -0
  124. package/dist/_chunk/dialog.jsx +62 -0
  125. package/dist/_chunk/dialog.jsx.map +1 -0
  126. package/dist/_chunk/disclosure.js +185 -0
  127. package/dist/_chunk/disclosure.js.map +1 -0
  128. package/dist/_chunk/disclosure.jsx +185 -0
  129. package/dist/_chunk/disclosure.jsx.map +1 -0
  130. package/dist/_chunk/dnd.js +1304 -0
  131. package/dist/_chunk/dnd.js.map +1 -0
  132. package/dist/_chunk/dnd.jsx +1304 -0
  133. package/dist/_chunk/dnd.jsx.map +1 -0
  134. package/dist/_chunk/env.js +105 -0
  135. package/dist/_chunk/env.js.map +1 -0
  136. package/dist/_chunk/env.jsx +105 -0
  137. package/dist/_chunk/env.jsx.map +1 -0
  138. package/dist/_chunk/filterDOMProps.js +82 -0
  139. package/dist/_chunk/filterDOMProps.js.map +1 -0
  140. package/dist/_chunk/filterDOMProps.jsx +82 -0
  141. package/dist/_chunk/filterDOMProps.jsx.map +1 -0
  142. package/dist/_chunk/focus.js +399 -0
  143. package/dist/_chunk/focus.js.map +1 -0
  144. package/dist/_chunk/focus.jsx +399 -0
  145. package/dist/_chunk/focus.jsx.map +1 -0
  146. package/dist/_chunk/focus2.js +895 -0
  147. package/dist/_chunk/focus2.js.map +1 -0
  148. package/dist/_chunk/focus2.jsx +870 -0
  149. package/dist/_chunk/focus2.jsx.map +1 -0
  150. package/dist/_chunk/form.js +39 -0
  151. package/dist/_chunk/form.js.map +1 -0
  152. package/dist/_chunk/form.jsx +39 -0
  153. package/dist/_chunk/form.jsx.map +1 -0
  154. package/dist/_chunk/grid.js +623 -0
  155. package/dist/_chunk/grid.js.map +1 -0
  156. package/dist/_chunk/grid.jsx +623 -0
  157. package/dist/_chunk/grid.jsx.map +1 -0
  158. package/dist/_chunk/gridlist.js +364 -0
  159. package/dist/_chunk/gridlist.js.map +1 -0
  160. package/dist/_chunk/gridlist.jsx +364 -0
  161. package/dist/_chunk/gridlist.jsx.map +1 -0
  162. package/dist/_chunk/i18n.js +254 -0
  163. package/dist/_chunk/i18n.js.map +1 -0
  164. package/dist/_chunk/i18n.jsx +254 -0
  165. package/dist/_chunk/i18n.jsx.map +1 -0
  166. package/dist/_chunk/interactions.js +241 -0
  167. package/dist/_chunk/interactions.js.map +1 -0
  168. package/dist/_chunk/interactions.jsx +237 -0
  169. package/dist/_chunk/interactions.jsx.map +1 -0
  170. package/dist/_chunk/link.js +96 -0
  171. package/dist/_chunk/link.js.map +1 -0
  172. package/dist/_chunk/link.jsx +96 -0
  173. package/dist/_chunk/link.jsx.map +1 -0
  174. package/dist/_chunk/listbox.js +324 -0
  175. package/dist/_chunk/listbox.js.map +1 -0
  176. package/dist/_chunk/listbox.jsx +324 -0
  177. package/dist/_chunk/listbox.jsx.map +1 -0
  178. package/dist/_chunk/live-announcer.js +207 -0
  179. package/dist/_chunk/live-announcer.js.map +1 -0
  180. package/dist/_chunk/live-announcer.jsx +207 -0
  181. package/dist/_chunk/live-announcer.jsx.map +1 -0
  182. package/dist/_chunk/menu.js +518 -0
  183. package/dist/_chunk/menu.js.map +1 -0
  184. package/dist/_chunk/menu.jsx +518 -0
  185. package/dist/_chunk/menu.jsx.map +1 -0
  186. package/dist/_chunk/meter.js +33 -0
  187. package/dist/_chunk/meter.js.map +1 -0
  188. package/dist/_chunk/meter.jsx +33 -0
  189. package/dist/_chunk/meter.jsx.map +1 -0
  190. package/dist/_chunk/numberfield.js +258 -0
  191. package/dist/_chunk/numberfield.js.map +1 -0
  192. package/dist/_chunk/numberfield.jsx +258 -0
  193. package/dist/_chunk/numberfield.jsx.map +1 -0
  194. package/dist/_chunk/overlays.js +186 -0
  195. package/dist/_chunk/overlays.js.map +1 -0
  196. package/dist/_chunk/overlays.jsx +162 -0
  197. package/dist/_chunk/overlays.jsx.map +1 -0
  198. package/dist/_chunk/popover.js +574 -0
  199. package/dist/_chunk/popover.js.map +1 -0
  200. package/dist/_chunk/popover.jsx +574 -0
  201. package/dist/_chunk/popover.jsx.map +1 -0
  202. package/dist/_chunk/radio.js +319 -0
  203. package/dist/_chunk/radio.js.map +1 -0
  204. package/dist/_chunk/radio.jsx +319 -0
  205. package/dist/_chunk/radio.jsx.map +1 -0
  206. package/dist/_chunk/searchfield.js +209 -0
  207. package/dist/_chunk/searchfield.js.map +1 -0
  208. package/dist/_chunk/searchfield.jsx +209 -0
  209. package/dist/_chunk/searchfield.jsx.map +1 -0
  210. package/dist/_chunk/select.js +403 -0
  211. package/dist/_chunk/select.js.map +1 -0
  212. package/dist/_chunk/select.jsx +394 -0
  213. package/dist/_chunk/select.jsx.map +1 -0
  214. package/dist/_chunk/selection.js +679 -0
  215. package/dist/_chunk/selection.js.map +1 -0
  216. package/dist/_chunk/selection.jsx +679 -0
  217. package/dist/_chunk/selection.jsx.map +1 -0
  218. package/dist/_chunk/separator.js +29 -0
  219. package/dist/_chunk/separator.js.map +1 -0
  220. package/dist/_chunk/separator.jsx +29 -0
  221. package/dist/_chunk/separator.jsx.map +1 -0
  222. package/dist/_chunk/slider.js +255 -0
  223. package/dist/_chunk/slider.js.map +1 -0
  224. package/dist/_chunk/slider.jsx +255 -0
  225. package/dist/_chunk/slider.jsx.map +1 -0
  226. package/dist/_chunk/steplist.js +66 -0
  227. package/dist/_chunk/steplist.js.map +1 -0
  228. package/dist/_chunk/steplist.jsx +66 -0
  229. package/dist/_chunk/steplist.jsx.map +1 -0
  230. package/dist/_chunk/switch.js +34 -0
  231. package/dist/_chunk/switch.js.map +1 -0
  232. package/dist/_chunk/switch.jsx +34 -0
  233. package/dist/_chunk/switch.jsx.map +1 -0
  234. package/dist/_chunk/table.js +1051 -0
  235. package/dist/_chunk/table.js.map +1 -0
  236. package/dist/_chunk/table.jsx +1051 -0
  237. package/dist/_chunk/table.jsx.map +1 -0
  238. package/dist/_chunk/tabs.js +260 -0
  239. package/dist/_chunk/tabs.js.map +1 -0
  240. package/dist/_chunk/tabs.jsx +260 -0
  241. package/dist/_chunk/tabs.jsx.map +1 -0
  242. package/dist/_chunk/tag.js +286 -0
  243. package/dist/_chunk/tag.js.map +1 -0
  244. package/dist/_chunk/tag.jsx +286 -0
  245. package/dist/_chunk/tag.jsx.map +1 -0
  246. package/dist/_chunk/textfield.js +109 -0
  247. package/dist/_chunk/textfield.js.map +1 -0
  248. package/dist/_chunk/textfield.jsx +109 -0
  249. package/dist/_chunk/textfield.jsx.map +1 -0
  250. package/dist/_chunk/toast.js +250 -0
  251. package/dist/_chunk/toast.js.map +1 -0
  252. package/dist/_chunk/toast.jsx +250 -0
  253. package/dist/_chunk/toast.jsx.map +1 -0
  254. package/dist/_chunk/toolbar.js +258 -0
  255. package/dist/_chunk/toolbar.js.map +1 -0
  256. package/dist/_chunk/toolbar.jsx +258 -0
  257. package/dist/_chunk/toolbar.jsx.map +1 -0
  258. package/dist/_chunk/tooltip.js +185 -0
  259. package/dist/_chunk/tooltip.js.map +1 -0
  260. package/dist/_chunk/tooltip.jsx +185 -0
  261. package/dist/_chunk/tooltip.jsx.map +1 -0
  262. package/dist/_chunk/tree.js +424 -0
  263. package/dist/_chunk/tree.js.map +1 -0
  264. package/dist/_chunk/tree.jsx +424 -0
  265. package/dist/_chunk/tree.jsx.map +1 -0
  266. package/dist/_chunk/utils.js +665 -0
  267. package/dist/_chunk/utils.js.map +1 -0
  268. package/dist/_chunk/utils.jsx +665 -0
  269. package/dist/_chunk/utils.jsx.map +1 -0
  270. package/dist/_chunk/visually-hidden.js +92 -0
  271. package/dist/_chunk/visually-hidden.js.map +1 -0
  272. package/dist/_chunk/visually-hidden.jsx +92 -0
  273. package/dist/_chunk/visually-hidden.jsx.map +1 -0
  274. package/dist/actiongroup/createActionGroup.d.ts +5 -5
  275. package/dist/actiongroup/createActionGroup.d.ts.map +1 -1
  276. package/dist/actiongroup/index.d.ts +1 -1
  277. package/dist/actiongroup/index.js +2 -0
  278. package/dist/actiongroup/index.jsx +2 -0
  279. package/dist/autocomplete/createAutocomplete.d.ts +12 -10
  280. package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
  281. package/dist/autocomplete/index.d.ts +1 -1
  282. package/dist/autocomplete/index.d.ts.map +1 -1
  283. package/dist/autocomplete/index.js +2 -0
  284. package/dist/autocomplete/index.jsx +2 -0
  285. package/dist/breadcrumbs/createBreadcrumbs.d.ts +9 -7
  286. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
  287. package/dist/breadcrumbs/index.d.ts +1 -1
  288. package/dist/breadcrumbs/index.js +2 -0
  289. package/dist/breadcrumbs/index.jsx +2 -0
  290. package/dist/button/createButton.d.ts +1 -1
  291. package/dist/button/createButton.d.ts.map +1 -1
  292. package/dist/button/createToggleButton.d.ts +3 -3
  293. package/dist/button/createToggleButtonGroup.d.ts +7 -7
  294. package/dist/button/createToggleButtonGroup.d.ts.map +1 -1
  295. package/dist/button/index.d.ts +6 -6
  296. package/dist/button/index.d.ts.map +1 -1
  297. package/dist/button/index.js +2 -0
  298. package/dist/button/index.jsx +2 -0
  299. package/dist/button/types.d.ts +18 -12
  300. package/dist/button/types.d.ts.map +1 -1
  301. package/dist/calendar/createCalendar.d.ts +15 -5
  302. package/dist/calendar/createCalendar.d.ts.map +1 -1
  303. package/dist/calendar/createCalendarCell.d.ts +6 -2
  304. package/dist/calendar/createCalendarCell.d.ts.map +1 -1
  305. package/dist/calendar/createCalendarGrid.d.ts +4 -4
  306. package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
  307. package/dist/calendar/createCalendarMonthPicker.d.ts +41 -0
  308. package/dist/calendar/createCalendarMonthPicker.d.ts.map +1 -0
  309. package/dist/calendar/createCalendarYearPicker.d.ts +49 -0
  310. package/dist/calendar/createCalendarYearPicker.d.ts.map +1 -0
  311. package/dist/calendar/createRangeCalendar.d.ts +15 -5
  312. package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
  313. package/dist/calendar/createRangeCalendarCell.d.ts +4 -2
  314. package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
  315. package/dist/calendar/index.d.ts +7 -5
  316. package/dist/calendar/index.d.ts.map +1 -1
  317. package/dist/calendar/index.js +2 -0
  318. package/dist/calendar/index.jsx +2 -0
  319. package/dist/calendar/intl/index.d.ts +12 -0
  320. package/dist/calendar/intl/index.d.ts.map +1 -0
  321. package/dist/calendar/utils.d.ts +16 -0
  322. package/dist/calendar/utils.d.ts.map +1 -0
  323. package/dist/checkbox/createCheckbox.d.ts +10 -6
  324. package/dist/checkbox/createCheckbox.d.ts.map +1 -1
  325. package/dist/checkbox/createCheckboxGroup.d.ts +7 -7
  326. package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
  327. package/dist/checkbox/createCheckboxGroupItem.d.ts +4 -4
  328. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
  329. package/dist/checkbox/createCheckboxGroupState.d.ts +2 -2
  330. package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -1
  331. package/dist/checkbox/index.d.ts +8 -8
  332. package/dist/checkbox/index.d.ts.map +1 -1
  333. package/dist/checkbox/index.js +2 -0
  334. package/dist/checkbox/index.jsx +2 -0
  335. package/dist/collections/index.d.ts +3 -3
  336. package/dist/collections/index.d.ts.map +1 -1
  337. package/dist/collections/index.js +160 -0
  338. package/dist/collections/index.js.map +1 -0
  339. package/dist/collections/index.jsx +160 -0
  340. package/dist/collections/index.jsx.map +1 -0
  341. package/dist/color/createColorArea.d.ts +3 -3
  342. package/dist/color/createColorArea.d.ts.map +1 -1
  343. package/dist/color/createColorField.d.ts +4 -4
  344. package/dist/color/createColorField.d.ts.map +1 -1
  345. package/dist/color/createColorSlider.d.ts +4 -4
  346. package/dist/color/createColorSlider.d.ts.map +1 -1
  347. package/dist/color/createColorSwatch.d.ts +2 -2
  348. package/dist/color/createColorSwatch.d.ts.map +1 -1
  349. package/dist/color/createColorWheel.d.ts +3 -3
  350. package/dist/color/createColorWheel.d.ts.map +1 -1
  351. package/dist/color/index.d.ts +6 -6
  352. package/dist/color/index.js +2 -0
  353. package/dist/color/index.jsx +2 -0
  354. package/dist/color/types.d.ts +98 -16
  355. package/dist/color/types.d.ts.map +1 -1
  356. package/dist/combobox/createComboBox.d.ts +10 -7
  357. package/dist/combobox/createComboBox.d.ts.map +1 -1
  358. package/dist/combobox/index.d.ts +1 -1
  359. package/dist/combobox/index.js +2 -0
  360. package/dist/combobox/index.jsx +2 -0
  361. package/dist/combobox/intl/index.d.ts +1 -1
  362. package/dist/datepicker/createDateField.d.ts +18 -6
  363. package/dist/datepicker/createDateField.d.ts.map +1 -1
  364. package/dist/datepicker/createDatePicker.d.ts +51 -5
  365. package/dist/datepicker/createDatePicker.d.ts.map +1 -1
  366. package/dist/datepicker/createDatePickerGroup.d.ts +19 -0
  367. package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -0
  368. package/dist/datepicker/createDateRangePicker.d.ts +8 -6
  369. package/dist/datepicker/createDateRangePicker.d.ts.map +1 -1
  370. package/dist/datepicker/createDateSegment.d.ts +10 -2
  371. package/dist/datepicker/createDateSegment.d.ts.map +1 -1
  372. package/dist/datepicker/createTimeField.d.ts +11 -5
  373. package/dist/datepicker/createTimeField.d.ts.map +1 -1
  374. package/dist/datepicker/createTimeSegment.d.ts +2 -2
  375. package/dist/datepicker/createTimeSegment.d.ts.map +1 -1
  376. package/dist/datepicker/index.d.ts +7 -6
  377. package/dist/datepicker/index.d.ts.map +1 -1
  378. package/dist/datepicker/index.js +2 -0
  379. package/dist/datepicker/index.jsx +2 -0
  380. package/dist/dialog/createDialog.d.ts +5 -5
  381. package/dist/dialog/createDialog.d.ts.map +1 -1
  382. package/dist/dialog/index.d.ts +2 -2
  383. package/dist/dialog/index.d.ts.map +1 -1
  384. package/dist/dialog/index.js +2 -0
  385. package/dist/dialog/index.jsx +2 -0
  386. package/dist/dialog/types.d.ts +4 -4
  387. package/dist/disclosure/createDisclosure.d.ts +5 -2
  388. package/dist/disclosure/createDisclosure.d.ts.map +1 -1
  389. package/dist/disclosure/createDisclosureGroup.d.ts +4 -4
  390. package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
  391. package/dist/disclosure/index.d.ts +2 -2
  392. package/dist/disclosure/index.js +2 -0
  393. package/dist/disclosure/index.jsx +2 -0
  394. package/dist/dnd/createDrag.d.ts +2 -2
  395. package/dist/dnd/createDrag.d.ts.map +1 -1
  396. package/dist/dnd/createDraggableCollection.d.ts +2 -2
  397. package/dist/dnd/createDraggableItem.d.ts +3 -3
  398. package/dist/dnd/createDraggableItem.d.ts.map +1 -1
  399. package/dist/dnd/createDrop.d.ts +2 -2
  400. package/dist/dnd/createDrop.d.ts.map +1 -1
  401. package/dist/dnd/createDroppableCollection.d.ts +26 -6
  402. package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
  403. package/dist/dnd/createDroppableItem.d.ts +3 -3
  404. package/dist/dnd/index.d.ts +12 -12
  405. package/dist/dnd/index.d.ts.map +1 -1
  406. package/dist/dnd/index.js +2 -0
  407. package/dist/dnd/index.jsx +2 -0
  408. package/dist/dnd/types.d.ts +2 -2
  409. package/dist/dnd/types.d.ts.map +1 -1
  410. package/dist/dnd/utils.d.ts +2 -2
  411. package/dist/dnd/utils.d.ts.map +1 -1
  412. package/dist/focus/FocusScope.d.ts +1 -1
  413. package/dist/focus/FocusScope.d.ts.map +1 -1
  414. package/dist/focus/createAutoFocus.d.ts.map +1 -1
  415. package/dist/focus/createFocusRestore.d.ts.map +1 -1
  416. package/dist/focus/createVirtualFocus.d.ts +4 -4
  417. package/dist/focus/createVirtualFocus.d.ts.map +1 -1
  418. package/dist/focus/index.d.ts +4 -4
  419. package/dist/focus/index.d.ts.map +1 -1
  420. package/dist/focus/index.js +2 -0
  421. package/dist/focus/index.jsx +2 -0
  422. package/dist/form/createFormReset.d.ts +1 -1
  423. package/dist/form/createFormValidation.d.ts +3 -3
  424. package/dist/form/createFormValidation.d.ts.map +1 -1
  425. package/dist/form/index.d.ts +2 -2
  426. package/dist/form/index.d.ts.map +1 -1
  427. package/dist/form/index.js +3 -0
  428. package/dist/form/index.jsx +3 -0
  429. package/dist/grid/GridKeyboardDelegate.d.ts +5 -5
  430. package/dist/grid/createGrid.d.ts +3 -3
  431. package/dist/grid/createGridCell.d.ts +3 -3
  432. package/dist/grid/createGridRow.d.ts +3 -3
  433. package/dist/grid/index.d.ts +5 -5
  434. package/dist/grid/index.js +2 -0
  435. package/dist/grid/index.jsx +2 -0
  436. package/dist/grid/types.d.ts +8 -8
  437. package/dist/gridlist/createGridList.d.ts +12 -4
  438. package/dist/gridlist/createGridList.d.ts.map +1 -1
  439. package/dist/gridlist/createGridListItem.d.ts +4 -4
  440. package/dist/gridlist/createGridListItem.d.ts.map +1 -1
  441. package/dist/gridlist/createGridListSection.d.ts +15 -0
  442. package/dist/gridlist/createGridListSection.d.ts.map +1 -0
  443. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +3 -3
  444. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
  445. package/dist/gridlist/index.d.ts +5 -4
  446. package/dist/gridlist/index.d.ts.map +1 -1
  447. package/dist/gridlist/index.js +2 -0
  448. package/dist/gridlist/index.jsx +2 -0
  449. package/dist/gridlist/types.d.ts +61 -7
  450. package/dist/gridlist/types.d.ts.map +1 -1
  451. package/dist/i18n/createCollator.d.ts.map +1 -1
  452. package/dist/i18n/createDateFormatter.d.ts.map +1 -1
  453. package/dist/i18n/createFilter.d.ts.map +1 -1
  454. package/dist/i18n/createNumberFormatter.d.ts +1 -1
  455. package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
  456. package/dist/i18n/createStringFormatter.d.ts +2 -2
  457. package/dist/i18n/createStringFormatter.d.ts.map +1 -1
  458. package/dist/i18n/index.d.ts +8 -8
  459. package/dist/i18n/index.d.ts.map +1 -1
  460. package/dist/i18n/index.js +3 -0
  461. package/dist/i18n/index.jsx +3 -0
  462. package/dist/i18n/locale.d.ts +2 -2
  463. package/dist/i18n/locale.d.ts.map +1 -1
  464. package/dist/i18n/utils.d.ts.map +1 -1
  465. package/dist/index.d.ts +56 -51
  466. package/dist/index.d.ts.map +1 -1
  467. package/dist/index.js +71 -17119
  468. package/dist/index.jsx +71 -0
  469. package/dist/interactions/FocusableProvider.d.ts +2 -2
  470. package/dist/interactions/FocusableProvider.d.ts.map +1 -1
  471. package/dist/interactions/PressEvent.d.ts +13 -2
  472. package/dist/interactions/PressEvent.d.ts.map +1 -1
  473. package/dist/interactions/createFocus.d.ts +1 -1
  474. package/dist/interactions/createFocus.d.ts.map +1 -1
  475. package/dist/interactions/createFocusRing.d.ts +1 -1
  476. package/dist/interactions/createFocusRing.d.ts.map +1 -1
  477. package/dist/interactions/createFocusWithin.d.ts +1 -1
  478. package/dist/interactions/createFocusWithin.d.ts.map +1 -1
  479. package/dist/interactions/createFocusable.d.ts +3 -3
  480. package/dist/interactions/createFocusable.d.ts.map +1 -1
  481. package/dist/interactions/createHover.d.ts +5 -5
  482. package/dist/interactions/createHover.d.ts.map +1 -1
  483. package/dist/interactions/createInteractionModality.d.ts +3 -4
  484. package/dist/interactions/createInteractionModality.d.ts.map +1 -1
  485. package/dist/interactions/createKeyboard.d.ts +1 -1
  486. package/dist/interactions/createKeyboard.d.ts.map +1 -1
  487. package/dist/interactions/createLongPress.d.ts +5 -5
  488. package/dist/interactions/createMove.d.ts +5 -5
  489. package/dist/interactions/createMove.d.ts.map +1 -1
  490. package/dist/interactions/createPress.d.ts +4 -4
  491. package/dist/interactions/createPress.d.ts.map +1 -1
  492. package/dist/interactions/index.d.ts +12 -12
  493. package/dist/interactions/index.d.ts.map +1 -1
  494. package/dist/interactions/index.js +10 -0
  495. package/dist/interactions/index.jsx +10 -0
  496. package/dist/label/createField.d.ts +4 -4
  497. package/dist/label/createField.d.ts.map +1 -1
  498. package/dist/label/createLabel.d.ts +7 -7
  499. package/dist/label/createLabel.d.ts.map +1 -1
  500. package/dist/label/createLabels.d.ts +1 -1
  501. package/dist/label/createLabels.d.ts.map +1 -1
  502. package/dist/label/index.d.ts +5 -5
  503. package/dist/label/index.js +4 -0
  504. package/dist/label/index.jsx +4 -0
  505. package/dist/landmark/createLandmark.d.ts +5 -5
  506. package/dist/landmark/createLandmark.d.ts.map +1 -1
  507. package/dist/landmark/index.d.ts +1 -1
  508. package/dist/landmark/index.js +2 -0
  509. package/dist/landmark/index.jsx +2 -0
  510. package/dist/link/createLink.d.ts +14 -8
  511. package/dist/link/createLink.d.ts.map +1 -1
  512. package/dist/link/index.d.ts +1 -1
  513. package/dist/link/index.js +2 -0
  514. package/dist/link/index.jsx +2 -0
  515. package/dist/listbox/createListBox.d.ts +48 -6
  516. package/dist/listbox/createListBox.d.ts.map +1 -1
  517. package/dist/listbox/createOption.d.ts +27 -4
  518. package/dist/listbox/createOption.d.ts.map +1 -1
  519. package/dist/listbox/index.d.ts +2 -2
  520. package/dist/listbox/index.d.ts.map +1 -1
  521. package/dist/listbox/index.js +2 -0
  522. package/dist/listbox/index.jsx +2 -0
  523. package/dist/live-announcer/announce.d.ts +2 -2
  524. package/dist/live-announcer/announce.d.ts.map +1 -1
  525. package/dist/live-announcer/index.d.ts +1 -1
  526. package/dist/live-announcer/index.js +2 -0
  527. package/dist/live-announcer/index.jsx +2 -0
  528. package/dist/menu/createMenu.d.ts +14 -11
  529. package/dist/menu/createMenu.d.ts.map +1 -1
  530. package/dist/menu/createMenuItem.d.ts +25 -5
  531. package/dist/menu/createMenuItem.d.ts.map +1 -1
  532. package/dist/menu/createMenuTrigger.d.ts +4 -4
  533. package/dist/menu/index.d.ts +3 -3
  534. package/dist/menu/index.d.ts.map +1 -1
  535. package/dist/menu/index.js +2 -0
  536. package/dist/menu/index.jsx +2 -0
  537. package/dist/meter/createMeter.d.ts +6 -6
  538. package/dist/meter/createMeter.d.ts.map +1 -1
  539. package/dist/meter/index.d.ts +1 -1
  540. package/dist/meter/index.js +2 -0
  541. package/dist/meter/index.jsx +2 -0
  542. package/dist/numberfield/createNumberField.d.ts +9 -8
  543. package/dist/numberfield/createNumberField.d.ts.map +1 -1
  544. package/dist/numberfield/index.d.ts +1 -1
  545. package/dist/numberfield/index.js +2 -0
  546. package/dist/numberfield/index.jsx +2 -0
  547. package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
  548. package/dist/overlays/createModal.d.ts +3 -3
  549. package/dist/overlays/createModal.d.ts.map +1 -1
  550. package/dist/overlays/createOverlay.d.ts +1 -1
  551. package/dist/overlays/createOverlay.d.ts.map +1 -1
  552. package/dist/overlays/createOverlayTrigger.d.ts +6 -6
  553. package/dist/overlays/index.d.ts +6 -6
  554. package/dist/overlays/index.d.ts.map +1 -1
  555. package/dist/overlays/index.js +4 -0
  556. package/dist/overlays/index.jsx +4 -0
  557. package/dist/popover/calculatePosition.d.ts +6 -4
  558. package/dist/popover/calculatePosition.d.ts.map +1 -1
  559. package/dist/popover/createOverlayPosition.d.ts +11 -3
  560. package/dist/popover/createOverlayPosition.d.ts.map +1 -1
  561. package/dist/popover/createPopover.d.ts +4 -4
  562. package/dist/popover/createPopover.d.ts.map +1 -1
  563. package/dist/popover/index.d.ts +3 -3
  564. package/dist/popover/index.js +2 -0
  565. package/dist/popover/index.jsx +2 -0
  566. package/dist/progress/createProgressBar.d.ts +7 -5
  567. package/dist/progress/createProgressBar.d.ts.map +1 -1
  568. package/dist/progress/index.d.ts +1 -1
  569. package/dist/progress/index.js +2 -0
  570. package/dist/progress/index.jsx +2 -0
  571. package/dist/radio/createRadio.d.ts +9 -7
  572. package/dist/radio/createRadio.d.ts.map +1 -1
  573. package/dist/radio/createRadioGroup.d.ts +10 -10
  574. package/dist/radio/createRadioGroup.d.ts.map +1 -1
  575. package/dist/radio/createRadioGroupState.d.ts +3 -3
  576. package/dist/radio/createRadioGroupState.d.ts.map +1 -1
  577. package/dist/radio/index.d.ts +3 -3
  578. package/dist/radio/index.d.ts.map +1 -1
  579. package/dist/radio/index.js +2 -0
  580. package/dist/radio/index.jsx +2 -0
  581. package/dist/searchfield/createSearchField.d.ts +7 -7
  582. package/dist/searchfield/createSearchField.d.ts.map +1 -1
  583. package/dist/searchfield/index.d.ts +2 -2
  584. package/dist/searchfield/index.js +2 -0
  585. package/dist/searchfield/index.jsx +2 -0
  586. package/dist/select/createHiddenSelect.d.ts +4 -4
  587. package/dist/select/createHiddenSelect.d.ts.map +1 -1
  588. package/dist/select/createSelect.d.ts +14 -6
  589. package/dist/select/createSelect.d.ts.map +1 -1
  590. package/dist/select/index.d.ts +2 -2
  591. package/dist/select/index.d.ts.map +1 -1
  592. package/dist/select/index.js +2 -0
  593. package/dist/select/index.jsx +2 -0
  594. package/dist/selection/DOMLayoutDelegate.d.ts +58 -0
  595. package/dist/selection/DOMLayoutDelegate.d.ts.map +1 -0
  596. package/dist/selection/ListKeyboardDelegate.d.ts +95 -0
  597. package/dist/selection/ListKeyboardDelegate.d.ts.map +1 -0
  598. package/dist/selection/constants.d.ts +15 -0
  599. package/dist/selection/constants.d.ts.map +1 -0
  600. package/dist/selection/createCollectionRowInteraction.d.ts +13 -0
  601. package/dist/selection/createCollectionRowInteraction.d.ts.map +1 -0
  602. package/dist/selection/createScrollIntoViewOnFocus.d.ts +31 -0
  603. package/dist/selection/createScrollIntoViewOnFocus.d.ts.map +1 -0
  604. package/dist/selection/createSelectableCollection.d.ts +69 -0
  605. package/dist/selection/createSelectableCollection.d.ts.map +1 -0
  606. package/dist/selection/createSelectableItem.d.ts +154 -0
  607. package/dist/selection/createSelectableItem.d.ts.map +1 -0
  608. package/dist/selection/createSelectableList.d.ts +43 -0
  609. package/dist/selection/createSelectableList.d.ts.map +1 -0
  610. package/dist/selection/createTypeSelect.d.ts +2 -2
  611. package/dist/selection/createTypeSelect.d.ts.map +1 -1
  612. package/dist/selection/index.d.ts +10 -1
  613. package/dist/selection/index.d.ts.map +1 -1
  614. package/dist/selection/index.js +4 -0
  615. package/dist/selection/index.jsx +4 -0
  616. package/dist/selection/selectItem.d.ts +29 -0
  617. package/dist/selection/selectItem.d.ts.map +1 -0
  618. package/dist/selection/utils.d.ts +40 -0
  619. package/dist/selection/utils.d.ts.map +1 -0
  620. package/dist/separator/createSeparator.d.ts +9 -5
  621. package/dist/separator/createSeparator.d.ts.map +1 -1
  622. package/dist/separator/index.d.ts +1 -1
  623. package/dist/separator/index.js +2 -0
  624. package/dist/separator/index.jsx +2 -0
  625. package/dist/slider/createSlider.d.ts +11 -7
  626. package/dist/slider/createSlider.d.ts.map +1 -1
  627. package/dist/slider/index.d.ts +2 -2
  628. package/dist/slider/index.js +2 -0
  629. package/dist/slider/index.jsx +2 -0
  630. package/dist/ssr/index.d.ts +18 -1
  631. package/dist/ssr/index.d.ts.map +1 -1
  632. package/dist/ssr/index.js +299 -0
  633. package/dist/ssr/index.js.map +1 -0
  634. package/dist/ssr/index.jsx +292 -0
  635. package/dist/ssr/index.jsx.map +1 -0
  636. package/dist/steplist/createStepList.d.ts +36 -0
  637. package/dist/steplist/createStepList.d.ts.map +1 -0
  638. package/dist/steplist/index.d.ts +2 -0
  639. package/dist/steplist/index.d.ts.map +1 -0
  640. package/dist/steplist/index.js +2 -0
  641. package/dist/steplist/index.jsx +2 -0
  642. package/dist/switch/createSwitch.d.ts +10 -4
  643. package/dist/switch/createSwitch.d.ts.map +1 -1
  644. package/dist/switch/index.d.ts +1 -1
  645. package/dist/switch/index.js +2 -0
  646. package/dist/switch/index.jsx +2 -0
  647. package/dist/table/createTable.d.ts +3 -3
  648. package/dist/table/createTable.d.ts.map +1 -1
  649. package/dist/table/createTableCell.d.ts +3 -3
  650. package/dist/table/createTableCell.d.ts.map +1 -1
  651. package/dist/table/createTableColumnHeader.d.ts +3 -3
  652. package/dist/table/createTableColumnHeader.d.ts.map +1 -1
  653. package/dist/table/createTableColumnResize.d.ts +41 -0
  654. package/dist/table/createTableColumnResize.d.ts.map +1 -0
  655. package/dist/table/createTableHeaderRow.d.ts +3 -3
  656. package/dist/table/createTableRow.d.ts +4 -4
  657. package/dist/table/createTableRow.d.ts.map +1 -1
  658. package/dist/table/createTableRowGroup.d.ts +2 -2
  659. package/dist/table/createTableRowGroup.d.ts.map +1 -1
  660. package/dist/table/createTableSelectAllCheckbox.d.ts +3 -3
  661. package/dist/table/createTableSelectionCheckbox.d.ts +3 -3
  662. package/dist/table/index.d.ts +11 -9
  663. package/dist/table/index.d.ts.map +1 -1
  664. package/dist/table/index.js +2 -0
  665. package/dist/table/index.jsx +2 -0
  666. package/dist/table/types.d.ts +41 -7
  667. package/dist/table/types.d.ts.map +1 -1
  668. package/dist/tabs/createTabs.d.ts +32 -28
  669. package/dist/tabs/createTabs.d.ts.map +1 -1
  670. package/dist/tabs/index.d.ts +1 -1
  671. package/dist/tabs/index.js +2 -0
  672. package/dist/tabs/index.jsx +2 -0
  673. package/dist/tag/createTag.d.ts +4 -2
  674. package/dist/tag/createTag.d.ts.map +1 -1
  675. package/dist/tag/createTagGroup.d.ts +5 -5
  676. package/dist/tag/createTagGroup.d.ts.map +1 -1
  677. package/dist/tag/index.d.ts +2 -2
  678. package/dist/tag/index.d.ts.map +1 -1
  679. package/dist/tag/index.js +2 -0
  680. package/dist/tag/index.jsx +2 -0
  681. package/dist/textfield/createTextField.d.ts +17 -11
  682. package/dist/textfield/createTextField.d.ts.map +1 -1
  683. package/dist/textfield/index.d.ts +1 -1
  684. package/dist/textfield/index.d.ts.map +1 -1
  685. package/dist/textfield/index.js +2 -0
  686. package/dist/textfield/index.jsx +2 -0
  687. package/dist/toast/createToast.d.ts +2 -2
  688. package/dist/toast/createToast.d.ts.map +1 -1
  689. package/dist/toast/createToastRegion.d.ts +5 -3
  690. package/dist/toast/createToastRegion.d.ts.map +1 -1
  691. package/dist/toast/index.d.ts +2 -2
  692. package/dist/toast/index.d.ts.map +1 -1
  693. package/dist/toast/index.js +2 -0
  694. package/dist/toast/index.jsx +2 -0
  695. package/dist/toggle/createToggle.d.ts +13 -9
  696. package/dist/toggle/createToggle.d.ts.map +1 -1
  697. package/dist/toggle/createToggleState.d.ts +2 -2
  698. package/dist/toggle/createToggleState.d.ts.map +1 -1
  699. package/dist/toggle/index.d.ts +4 -4
  700. package/dist/toggle/index.d.ts.map +1 -1
  701. package/dist/toggle/index.js +3 -0
  702. package/dist/toggle/index.jsx +3 -0
  703. package/dist/toolbar/createToolbar.d.ts +9 -9
  704. package/dist/toolbar/createToolbar.d.ts.map +1 -1
  705. package/dist/toolbar/index.d.ts +1 -1
  706. package/dist/toolbar/index.d.ts.map +1 -1
  707. package/dist/toolbar/index.js +2 -0
  708. package/dist/toolbar/index.jsx +2 -0
  709. package/dist/tooltip/createTooltip.d.ts +5 -5
  710. package/dist/tooltip/createTooltip.d.ts.map +1 -1
  711. package/dist/tooltip/createTooltipTrigger.d.ts +10 -5
  712. package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
  713. package/dist/tooltip/index.d.ts +2 -2
  714. package/dist/tooltip/index.js +2 -0
  715. package/dist/tooltip/index.jsx +2 -0
  716. package/dist/tree/createTree.d.ts +8 -4
  717. package/dist/tree/createTree.d.ts.map +1 -1
  718. package/dist/tree/createTreeItem.d.ts +4 -4
  719. package/dist/tree/createTreeItem.d.ts.map +1 -1
  720. package/dist/tree/createTreeSelectionCheckbox.d.ts +3 -3
  721. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
  722. package/dist/tree/index.d.ts +4 -4
  723. package/dist/tree/index.js +2 -0
  724. package/dist/tree/index.jsx +2 -0
  725. package/dist/tree/types.d.ts +20 -6
  726. package/dist/tree/types.d.ts.map +1 -1
  727. package/dist/utils/animation.d.ts +60 -0
  728. package/dist/utils/animation.d.ts.map +1 -0
  729. package/dist/utils/createDescription.d.ts +2 -2
  730. package/dist/utils/createDescription.d.ts.map +1 -1
  731. package/dist/utils/dom.d.ts +48 -2
  732. package/dist/utils/dom.d.ts.map +1 -1
  733. package/dist/utils/env.d.ts.map +1 -1
  734. package/dist/utils/focus.d.ts +1 -1
  735. package/dist/utils/focus.d.ts.map +1 -1
  736. package/dist/utils/geometry.d.ts.map +1 -1
  737. package/dist/utils/index.d.ts +15 -12
  738. package/dist/utils/index.d.ts.map +1 -1
  739. package/dist/utils/index.js +5 -0
  740. package/dist/utils/index.jsx +5 -0
  741. package/dist/utils/keyboard.d.ts +17 -0
  742. package/dist/utils/keyboard.d.ts.map +1 -0
  743. package/dist/utils/mergeProps.d.ts.map +1 -1
  744. package/dist/utils/reactivity.d.ts +1 -1
  745. package/dist/utils/scrollIntoView.d.ts +30 -0
  746. package/dist/utils/scrollIntoView.d.ts.map +1 -0
  747. package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -2
  748. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
  749. package/dist/visually-hidden/index.d.ts +1 -1
  750. package/dist/visually-hidden/index.js +2 -0
  751. package/dist/visually-hidden/index.jsx +2 -0
  752. package/package.json +334 -33
  753. package/src/actiongroup/createActionGroup.ts +101 -91
  754. package/src/actiongroup/index.ts +1 -1
  755. package/src/autocomplete/createAutocomplete.ts +177 -148
  756. package/src/autocomplete/index.ts +1 -1
  757. package/src/breadcrumbs/createBreadcrumbs.ts +33 -42
  758. package/src/breadcrumbs/index.ts +1 -1
  759. package/src/button/createButton.ts +102 -73
  760. package/src/button/createToggleButton.ts +10 -10
  761. package/src/button/createToggleButtonGroup.ts +25 -32
  762. package/src/button/index.ts +6 -9
  763. package/src/button/types.ts +18 -12
  764. package/src/calendar/createCalendar.ts +64 -29
  765. package/src/calendar/createCalendarCell.ts +115 -46
  766. package/src/calendar/createCalendarGrid.ts +97 -41
  767. package/src/calendar/createCalendarMonthPicker.ts +105 -0
  768. package/src/calendar/createCalendarYearPicker.ts +144 -0
  769. package/src/calendar/createRangeCalendar.ts +68 -31
  770. package/src/calendar/createRangeCalendarCell.ts +92 -31
  771. package/src/calendar/index.ts +21 -8
  772. package/src/calendar/intl/index.ts +210 -0
  773. package/src/calendar/utils.ts +231 -0
  774. package/src/checkbox/createCheckbox.ts +23 -21
  775. package/src/checkbox/createCheckboxGroup.ts +68 -44
  776. package/src/checkbox/createCheckboxGroupItem.ts +26 -41
  777. package/src/checkbox/createCheckboxGroupState.ts +3 -22
  778. package/src/checkbox/index.ts +8 -10
  779. package/src/collections/index.ts +33 -29
  780. package/src/color/createColorArea.ts +232 -154
  781. package/src/color/createColorField.ts +107 -58
  782. package/src/color/createColorSlider.ts +231 -73
  783. package/src/color/createColorSwatch.ts +38 -13
  784. package/src/color/createColorWheel.ts +208 -83
  785. package/src/color/index.ts +6 -6
  786. package/src/color/types.ts +98 -16
  787. package/src/combobox/createComboBox.ts +157 -100
  788. package/src/combobox/index.ts +1 -1
  789. package/src/combobox/intl/index.ts +5 -5
  790. package/src/datepicker/createDateField.ts +192 -39
  791. package/src/datepicker/createDatePicker.ts +260 -67
  792. package/src/datepicker/createDatePickerGroup.ts +149 -0
  793. package/src/datepicker/createDateRangePicker.ts +105 -57
  794. package/src/datepicker/createDateSegment.ts +188 -96
  795. package/src/datepicker/createTimeField.ts +38 -34
  796. package/src/datepicker/createTimeSegment.ts +67 -85
  797. package/src/datepicker/index.ts +13 -14
  798. package/src/dialog/createDialog.ts +45 -38
  799. package/src/dialog/index.ts +2 -2
  800. package/src/dialog/types.ts +4 -4
  801. package/src/disclosure/createDisclosure.ts +138 -33
  802. package/src/disclosure/createDisclosureGroup.ts +8 -21
  803. package/src/disclosure/index.ts +2 -2
  804. package/src/dnd/createDrag.ts +19 -25
  805. package/src/dnd/createDraggableCollection.ts +4 -4
  806. package/src/dnd/createDraggableItem.ts +20 -19
  807. package/src/dnd/createDrop.ts +42 -51
  808. package/src/dnd/createDroppableCollection.ts +293 -173
  809. package/src/dnd/createDroppableItem.ts +34 -34
  810. package/src/dnd/index.ts +23 -12
  811. package/src/dnd/types.ts +4 -7
  812. package/src/dnd/utils.ts +58 -47
  813. package/src/focus/FocusScope.tsx +301 -176
  814. package/src/focus/createAutoFocus.ts +4 -20
  815. package/src/focus/createFocusRestore.ts +15 -28
  816. package/src/focus/createVirtualFocus.ts +20 -36
  817. package/src/focus/index.ts +4 -8
  818. package/src/form/createFormReset.ts +4 -4
  819. package/src/form/createFormValidation.ts +23 -39
  820. package/src/form/index.ts +2 -5
  821. package/src/grid/GridKeyboardDelegate.ts +30 -30
  822. package/src/grid/createGrid.ts +36 -36
  823. package/src/grid/createGridCell.ts +18 -18
  824. package/src/grid/createGridRow.ts +14 -14
  825. package/src/grid/index.ts +5 -5
  826. package/src/grid/types.ts +8 -8
  827. package/src/gridlist/createGridList.ts +172 -64
  828. package/src/gridlist/createGridListItem.ts +98 -121
  829. package/src/gridlist/createGridListSection.ts +54 -0
  830. package/src/gridlist/createGridListSelectionCheckbox.ts +12 -9
  831. package/src/gridlist/index.ts +7 -4
  832. package/src/gridlist/types.ts +58 -7
  833. package/src/i18n/createCollator.ts +5 -18
  834. package/src/i18n/createDateFormatter.ts +5 -13
  835. package/src/i18n/createFilter.ts +11 -24
  836. package/src/i18n/createNumberFormatter.ts +4 -6
  837. package/src/i18n/createStringFormatter.ts +19 -15
  838. package/src/i18n/index.ts +8 -11
  839. package/src/i18n/locale.tsx +15 -40
  840. package/src/i18n/utils.ts +35 -39
  841. package/src/index.ts +111 -172
  842. package/src/interactions/FocusableProvider.tsx +3 -7
  843. package/src/interactions/PressEvent.ts +18 -4
  844. package/src/interactions/createFocus.ts +12 -8
  845. package/src/interactions/createFocusRing.ts +21 -19
  846. package/src/interactions/createFocusWithin.ts +20 -13
  847. package/src/interactions/createFocusable.ts +15 -16
  848. package/src/interactions/createHover.ts +70 -55
  849. package/src/interactions/createInteractionModality.ts +96 -94
  850. package/src/interactions/createKeyboard.ts +12 -2
  851. package/src/interactions/createLongPress.ts +23 -23
  852. package/src/interactions/createMove.ts +72 -62
  853. package/src/interactions/createPress.ts +192 -92
  854. package/src/interactions/index.ts +24 -16
  855. package/src/label/createField.ts +18 -19
  856. package/src/label/createLabel.ts +18 -30
  857. package/src/label/createLabels.ts +8 -12
  858. package/src/label/index.ts +5 -5
  859. package/src/landmark/createLandmark.ts +30 -51
  860. package/src/landmark/index.ts +1 -1
  861. package/src/link/createLink.ts +83 -56
  862. package/src/link/index.ts +1 -1
  863. package/src/listbox/createListBox.ts +198 -66
  864. package/src/listbox/createOption.ts +112 -71
  865. package/src/listbox/index.ts +2 -6
  866. package/src/live-announcer/announce.ts +44 -71
  867. package/src/live-announcer/index.ts +1 -1
  868. package/src/menu/createMenu.ts +171 -65
  869. package/src/menu/createMenuItem.ts +315 -51
  870. package/src/menu/createMenuTrigger.ts +15 -15
  871. package/src/menu/index.ts +3 -12
  872. package/src/meter/createMeter.ts +7 -15
  873. package/src/meter/index.ts +1 -1
  874. package/src/numberfield/createNumberField.ts +205 -80
  875. package/src/numberfield/index.ts +1 -1
  876. package/src/overlays/ariaHideOutside.ts +14 -10
  877. package/src/overlays/createInteractOutside.ts +21 -18
  878. package/src/overlays/createModal.tsx +17 -17
  879. package/src/overlays/createOverlay.ts +38 -8
  880. package/src/overlays/createOverlayTrigger.ts +16 -16
  881. package/src/overlays/createPreventScroll.ts +46 -24
  882. package/src/overlays/index.ts +6 -17
  883. package/src/popover/calculatePosition.ts +134 -124
  884. package/src/popover/createOverlayPosition.ts +55 -40
  885. package/src/popover/createPopover.ts +42 -17
  886. package/src/popover/index.ts +3 -3
  887. package/src/progress/createProgressBar.ts +31 -32
  888. package/src/progress/index.ts +1 -1
  889. package/src/radio/createRadio.ts +114 -75
  890. package/src/radio/createRadioGroup.ts +83 -77
  891. package/src/radio/createRadioGroupState.ts +7 -31
  892. package/src/radio/index.ts +3 -8
  893. package/src/searchfield/createSearchField.ts +57 -29
  894. package/src/searchfield/index.ts +2 -2
  895. package/src/select/createHiddenSelect.tsx +57 -44
  896. package/src/select/createSelect.ts +146 -73
  897. package/src/select/index.ts +2 -7
  898. package/src/selection/DOMLayoutDelegate.ts +102 -0
  899. package/src/selection/ListKeyboardDelegate.ts +398 -0
  900. package/src/selection/constants.ts +16 -0
  901. package/src/selection/createCollectionRowInteraction.ts +209 -0
  902. package/src/selection/createScrollIntoViewOnFocus.ts +65 -0
  903. package/src/selection/createSelectableCollection.ts +645 -0
  904. package/src/selection/createSelectableItem.ts +498 -0
  905. package/src/selection/createSelectableList.ts +93 -0
  906. package/src/selection/createTypeSelect.ts +120 -59
  907. package/src/selection/index.ts +32 -1
  908. package/src/selection/selectItem.ts +80 -0
  909. package/src/selection/utils.ts +82 -0
  910. package/src/separator/createSeparator.ts +20 -25
  911. package/src/separator/index.ts +1 -1
  912. package/src/slider/createSlider.ts +128 -112
  913. package/src/slider/index.ts +2 -2
  914. package/src/ssr/index.tsx +38 -46
  915. package/src/steplist/createStepList.ts +106 -0
  916. package/src/steplist/index.ts +8 -0
  917. package/src/switch/createSwitch.ts +19 -14
  918. package/src/switch/index.ts +1 -1
  919. package/src/table/createTable.ts +192 -95
  920. package/src/table/createTableCell.ts +17 -16
  921. package/src/table/createTableColumnHeader.ts +67 -20
  922. package/src/table/createTableColumnResize.ts +256 -0
  923. package/src/table/createTableHeaderRow.ts +7 -7
  924. package/src/table/createTableRow.ts +206 -91
  925. package/src/table/createTableRowGroup.ts +5 -7
  926. package/src/table/createTableSelectAllCheckbox.ts +14 -14
  927. package/src/table/createTableSelectionCheckbox.ts +8 -8
  928. package/src/table/index.ts +14 -9
  929. package/src/table/types.ts +43 -7
  930. package/src/tabs/createTabs.ts +123 -111
  931. package/src/tabs/index.ts +1 -1
  932. package/src/tag/createTag.ts +57 -50
  933. package/src/tag/createTagGroup.ts +47 -41
  934. package/src/tag/index.ts +2 -6
  935. package/src/textfield/createTextField.ts +67 -35
  936. package/src/textfield/index.ts +1 -5
  937. package/src/toast/createToast.ts +29 -26
  938. package/src/toast/createToastRegion.ts +169 -26
  939. package/src/toast/index.ts +2 -6
  940. package/src/toggle/createToggle.ts +115 -53
  941. package/src/toggle/createToggleState.ts +2 -10
  942. package/src/toggle/index.ts +4 -5
  943. package/src/toolbar/createToolbar.ts +214 -230
  944. package/src/toolbar/index.ts +1 -1
  945. package/src/tooltip/createTooltip.ts +11 -24
  946. package/src/tooltip/createTooltipTrigger.ts +61 -49
  947. package/src/tooltip/index.ts +2 -2
  948. package/src/tree/createTree.ts +128 -72
  949. package/src/tree/createTreeItem.ts +120 -135
  950. package/src/tree/createTreeSelectionCheckbox.ts +11 -8
  951. package/src/tree/index.ts +4 -4
  952. package/src/tree/types.ts +20 -6
  953. package/src/utils/animation.ts +151 -0
  954. package/src/utils/createDescription.ts +6 -23
  955. package/src/utils/dom.ts +265 -68
  956. package/src/utils/env.ts +9 -11
  957. package/src/utils/events.ts +7 -7
  958. package/src/utils/filterDOMProps.ts +49 -49
  959. package/src/utils/focus.ts +60 -68
  960. package/src/utils/geometry.ts +1 -4
  961. package/src/utils/globalListeners.ts +9 -9
  962. package/src/utils/index.ts +20 -22
  963. package/src/utils/keyboard.ts +25 -0
  964. package/src/utils/mergeProps.ts +49 -15
  965. package/src/utils/platform.ts +2 -2
  966. package/src/utils/reactivity.ts +3 -3
  967. package/src/utils/scrollIntoView.ts +181 -0
  968. package/src/utils/textSelection.ts +16 -16
  969. package/src/visually-hidden/createVisuallyHidden.ts +16 -28
  970. package/src/visually-hidden/index.ts +1 -1
  971. package/dist/i18n/NumberFormatter.d.ts +0 -43
  972. package/dist/i18n/NumberFormatter.d.ts.map +0 -1
  973. package/dist/index.js.map +0 -1
  974. package/dist/index.ssr.js +0 -17082
  975. package/dist/index.ssr.js.map +0 -1
  976. package/src/i18n/NumberFormatter.ts +0 -266
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.js","names":[],"sources":["../../src/i18n/createNumberFormatter.ts","../../src/i18n/createDateFormatter.ts","../../src/i18n/createFilter.ts","../../src/i18n/createStringFormatter.ts"],"sourcesContent":["/**\n * createNumberFormatter hook for solidaria\n *\n * Provides localized number formatting with automatic locale updates.\n *\n * Port of @react-aria/i18n useNumberFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { NumberFormatter, type NumberFormatOptions } from \"@internationalized/number\";\n\n/**\n * Provides localized number formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function PriceDisplay(props: { value: number }) {\n * const formatter = createNumberFormatter({\n * style: 'currency',\n * currency: 'USD',\n * });\n *\n * return <span>{formatter().format(props.value)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Percent formatting\n * const percentFormatter = createNumberFormatter({\n * style: 'percent',\n * minimumFractionDigits: 1,\n * });\n * percentFormatter().format(0.125); // '12.5%'\n *\n * // Unit formatting\n * const tempFormatter = createNumberFormatter({\n * style: 'unit',\n * unit: 'celsius',\n * });\n * tempFormatter().format(25); // '25°C'\n * ```\n */\nexport function createNumberFormatter(options: NumberFormatOptions = {}): () => NumberFormatter {\n const locale = useLocale();\n\n return createMemo(() => new NumberFormatter(locale().locale, options));\n}\n","/**\n * createDateFormatter hook for solidaria\n *\n * Provides localized date formatting with caching.\n *\n * Port of @react-aria/i18n useDateFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { createCacheKey } from \"./utils\";\n\nconst dateFormatterCache = new Map<string, Intl.DateTimeFormat>();\n\n/**\n * Gets or creates a cached date formatter.\n */\nfunction getCachedDateFormatter(\n locale: string,\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const cacheKey = createCacheKey(locale, options as Record<string, unknown>);\n\n if (dateFormatterCache.has(cacheKey)) {\n return dateFormatterCache.get(cacheKey)!;\n }\n\n const formatter = new Intl.DateTimeFormat(locale, options);\n dateFormatterCache.set(cacheKey, formatter);\n return formatter;\n}\n\n/**\n * Provides localized date and time formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function DateDisplay(props: { date: Date }) {\n * const formatter = createDateFormatter({\n * year: 'numeric',\n * month: 'long',\n * day: 'numeric',\n * });\n *\n * return <span>{formatter().format(props.date)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Short date\n * const shortDate = createDateFormatter({ dateStyle: 'short' });\n * shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)\n *\n * // Full date with time\n * const fullDateTime = createDateFormatter({\n * dateStyle: 'full',\n * timeStyle: 'short',\n * });\n *\n * // Time only\n * const timeFormatter = createDateFormatter({\n * hour: 'numeric',\n * minute: '2-digit',\n * });\n * ```\n */\nexport function createDateFormatter(\n options?: Intl.DateTimeFormatOptions,\n): () => Intl.DateTimeFormat {\n const locale = useLocale();\n\n return createMemo(() => getCachedDateFormatter(locale().locale, options));\n}\n","/**\n * createFilter hook for solidaria\n *\n * Provides localized string filtering with collation support.\n *\n * Port of @react-aria/i18n useFilter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { createCollator } from \"./createCollator\";\n\nexport interface Filter {\n /** Returns whether a string starts with a given substring. */\n startsWith(string: string, substring: string): boolean;\n /** Returns whether a string ends with a given substring. */\n endsWith(string: string, substring: string): boolean;\n /** Returns whether a string contains a given substring. */\n contains(string: string, substring: string): boolean;\n}\n\n/**\n * Provides localized string search functionality for filtering or matching items.\n * Respects locale-specific collation rules for case and diacritic sensitivity.\n *\n * @example\n * ```tsx\n * function SearchableList(props: { items: { name: string }[] }) {\n * const [query, setQuery] = createSignal('');\n * const filter = createFilter({ sensitivity: 'base' });\n *\n * const filteredItems = () =>\n * props.items.filter((item) =>\n * filter().contains(item.name, query())\n * );\n *\n * return (\n * <>\n * <input\n * value={query()}\n * onInput={(e) => setQuery(e.target.value)}\n * placeholder=\"Search...\"\n * />\n * <ul>\n * <For each={filteredItems()}>\n * {(item) => <li>{item.name}</li>}\n * </For>\n * </ul>\n * </>\n * );\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Case-insensitive, diacritic-insensitive filtering\n * const filter = createFilter({ sensitivity: 'base' });\n * filter().contains('Café', 'cafe'); // true\n * filter().startsWith('Hello', 'hello'); // true\n * ```\n */\nexport function createFilter(options?: Intl.CollatorOptions): () => Filter {\n const collator = createCollator({\n usage: \"search\",\n ...options,\n });\n\n return createMemo(() => {\n const coll = collator();\n\n const startsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n // Normalize both strings for safe slicing\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;\n };\n\n const endsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;\n };\n\n const contains = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n const sliceLen = normalizedSub.length;\n\n for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {\n const slice = normalizedStr.slice(scan, scan + sliceLen);\n if (coll.compare(normalizedSub, slice) === 0) {\n return true;\n }\n }\n\n return false;\n };\n\n return {\n startsWith,\n endsWith,\n contains,\n };\n });\n}\n","/**\n * String formatter for localized strings with ICU MessageFormat support.\n * Port of @react-aria/i18n useLocalizedStringFormatter.\n */\n\nimport {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { createMemo, type Accessor } from \"solid-js\";\nimport { useLocale } from \"./locale\";\n\n// Cache for dictionaries to avoid recreating them\nconst cache = new WeakMap<\n LocalizedStrings<string, LocalizedString>,\n LocalizedStringDictionary<string, LocalizedString>\n>();\n\nfunction getCachedDictionary<K extends string, T extends LocalizedString>(\n strings: LocalizedStrings<K, T>,\n): LocalizedStringDictionary<K, T> {\n let dictionary = cache.get(strings as LocalizedStrings<string, LocalizedString>);\n if (!dictionary) {\n dictionary = new LocalizedStringDictionary(\n strings as LocalizedStrings<string, LocalizedString>,\n );\n cache.set(strings as LocalizedStrings<string, LocalizedString>, dictionary);\n }\n return dictionary as LocalizedStringDictionary<K, T>;\n}\n\n/**\n * Returns a cached LocalizedStringDictionary for the given strings.\n */\nexport function createStringDictionary<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): LocalizedStringDictionary<K, T> {\n return (\n (packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName)) ||\n getCachedDictionary(strings)\n );\n}\n\n/**\n * Provides localized string formatting for the current locale.\n * Supports interpolating variables, selecting the correct pluralization,\n * and formatting numbers. Automatically updates when the locale changes.\n *\n * @param strings - A mapping of languages to localized strings by key.\n * @param packageName - Optional package name for global dictionary lookup.\n *\n * @example\n * ```tsx\n * const strings = {\n * 'en-US': {\n * greeting: 'Hello, {name}!',\n * count: '{count, plural, one {# item} other {# items}}'\n * }\n * };\n *\n * function MyComponent() {\n * const stringFormatter = createStringFormatter(strings);\n *\n * return (\n * <div>\n * {stringFormatter().format('greeting', { name: 'World' })}\n * {stringFormatter().format('count', { count: 5 })}\n * </div>\n * );\n * }\n * ```\n */\nexport function createStringFormatter<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): Accessor<LocalizedStringFormatter<K, T>> {\n const localeAccessor = useLocale();\n const dictionary = createStringDictionary(strings, packageName);\n\n return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));\n}\n\nexport type {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n LocalizedStrings,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,sBAAsB,UAA+B,CAAC,GAA0B;CAC9F,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,IAAI,gBAAgB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AACvE;;;;;;;;;;ACrCA,MAAM,qCAAqB,IAAI,IAAiC;;;;AAKhE,SAAS,uBACP,QACA,SACqB;CACrB,MAAM,WAAW,eAAe,QAAQ,OAAkC;CAE1E,IAAI,mBAAmB,IAAI,QAAQ,GACjC,OAAO,mBAAmB,IAAI,QAAQ;CAGxC,MAAM,YAAY,IAAI,KAAK,eAAe,QAAQ,OAAO;CACzD,mBAAmB,IAAI,UAAU,SAAS;CAC1C,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,SAAgB,oBACd,SAC2B;CAC3B,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,uBAAuB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AAC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACdA,SAAgB,aAAa,SAA8C;CACzE,MAAM,WAAW,eAAe;EAC9B,OAAO;EACP,GAAG;CACL,CAAC;CAED,OAAO,iBAAiB;EACtB,MAAM,OAAO,SAAS;EAEtB,MAAM,cAAc,KAAa,cAA+B;GAC9D,IAAI,UAAU,WAAW,GACvB,OAAO;GAIT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,GAAG,cAAc,MAAM,GAAG,aAAa,MAAM;EACvF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,CAAC,cAAc,MAAM,GAAG,aAAa,MAAM;EACrF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAC/C,MAAM,WAAW,cAAc;GAE/B,KAAK,IAAI,OAAO,GAAG,OAAO,YAAY,cAAc,QAAQ,QAAQ;IAClE,MAAM,QAAQ,cAAc,MAAM,MAAM,OAAO,QAAQ;IACvD,IAAI,KAAK,QAAQ,eAAe,KAAK,MAAM,GACzC,OAAO;GAEX;GAEA,OAAO;EACT;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF,CAAC;AACH;;;;;;;ACtGA,MAAM,wBAAQ,IAAI,QAGhB;AAEF,SAAS,oBACP,SACiC;CACjC,IAAI,aAAa,MAAM,IAAI,OAAoD;CAC/E,IAAI,CAAC,YAAY;EACf,aAAa,IAAI,0BACf,OACF;EACA,MAAM,IAAI,SAAsD,UAAU;CAC5E;CACA,OAAO;AACT;;;;AAKA,SAAgB,uBAGd,SAAiC,aAAuD;CACxF,OACG,eAAe,0BAA0B,8BAA8B,WAAW,KACnF,oBAAoB,OAAO;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAgB,sBAGd,SAAiC,aAAgE;CACjG,MAAM,iBAAiB,UAAU;CACjC,MAAM,aAAa,uBAAuB,SAAS,WAAW;CAE9D,OAAO,iBAAiB,IAAI,yBAAyB,eAAe,CAAC,CAAC,QAAQ,UAAU,CAAC;AAC3F"}
@@ -0,0 +1,254 @@
1
+ import { a as useLocale, o as createCacheKey, t as createCollator } from "./createCollator.jsx";
2
+ import { createMemo } from "solid-js";
3
+ import { NumberFormatter, NumberFormatter as NumberFormatter$1 } from "@internationalized/number";
4
+ import { LocalizedStringDictionary, LocalizedStringFormatter } from "@internationalized/string";
5
+ //#region src/i18n/createNumberFormatter.ts
6
+ /**
7
+ * createNumberFormatter hook for solidaria
8
+ *
9
+ * Provides localized number formatting with automatic locale updates.
10
+ *
11
+ * Port of @react-aria/i18n useNumberFormatter.
12
+ */
13
+ /**
14
+ * Provides localized number formatting for the current locale.
15
+ * Automatically updates when the locale changes.
16
+ *
17
+ * @example
18
+ * ```tsx
19
+ * function PriceDisplay(props: { value: number }) {
20
+ * const formatter = createNumberFormatter({
21
+ * style: 'currency',
22
+ * currency: 'USD',
23
+ * });
24
+ *
25
+ * return <span>{formatter().format(props.value)}</span>;
26
+ * }
27
+ * ```
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * // Percent formatting
32
+ * const percentFormatter = createNumberFormatter({
33
+ * style: 'percent',
34
+ * minimumFractionDigits: 1,
35
+ * });
36
+ * percentFormatter().format(0.125); // '12.5%'
37
+ *
38
+ * // Unit formatting
39
+ * const tempFormatter = createNumberFormatter({
40
+ * style: 'unit',
41
+ * unit: 'celsius',
42
+ * });
43
+ * tempFormatter().format(25); // '25°C'
44
+ * ```
45
+ */
46
+ function createNumberFormatter(options = {}) {
47
+ const locale = useLocale();
48
+ return createMemo(() => new NumberFormatter(locale().locale, options));
49
+ }
50
+ //#endregion
51
+ //#region src/i18n/createDateFormatter.ts
52
+ /**
53
+ * createDateFormatter hook for solidaria
54
+ *
55
+ * Provides localized date formatting with caching.
56
+ *
57
+ * Port of @react-aria/i18n useDateFormatter.
58
+ */
59
+ const dateFormatterCache = /* @__PURE__ */ new Map();
60
+ /**
61
+ * Gets or creates a cached date formatter.
62
+ */
63
+ function getCachedDateFormatter(locale, options) {
64
+ const cacheKey = createCacheKey(locale, options);
65
+ if (dateFormatterCache.has(cacheKey)) return dateFormatterCache.get(cacheKey);
66
+ const formatter = new Intl.DateTimeFormat(locale, options);
67
+ dateFormatterCache.set(cacheKey, formatter);
68
+ return formatter;
69
+ }
70
+ /**
71
+ * Provides localized date and time formatting for the current locale.
72
+ * Automatically updates when the locale changes.
73
+ *
74
+ * @example
75
+ * ```tsx
76
+ * function DateDisplay(props: { date: Date }) {
77
+ * const formatter = createDateFormatter({
78
+ * year: 'numeric',
79
+ * month: 'long',
80
+ * day: 'numeric',
81
+ * });
82
+ *
83
+ * return <span>{formatter().format(props.date)}</span>;
84
+ * }
85
+ * ```
86
+ *
87
+ * @example
88
+ * ```tsx
89
+ * // Short date
90
+ * const shortDate = createDateFormatter({ dateStyle: 'short' });
91
+ * shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)
92
+ *
93
+ * // Full date with time
94
+ * const fullDateTime = createDateFormatter({
95
+ * dateStyle: 'full',
96
+ * timeStyle: 'short',
97
+ * });
98
+ *
99
+ * // Time only
100
+ * const timeFormatter = createDateFormatter({
101
+ * hour: 'numeric',
102
+ * minute: '2-digit',
103
+ * });
104
+ * ```
105
+ */
106
+ function createDateFormatter(options) {
107
+ const locale = useLocale();
108
+ return createMemo(() => getCachedDateFormatter(locale().locale, options));
109
+ }
110
+ //#endregion
111
+ //#region src/i18n/createFilter.ts
112
+ /**
113
+ * createFilter hook for solidaria
114
+ *
115
+ * Provides localized string filtering with collation support.
116
+ *
117
+ * Port of @react-aria/i18n useFilter.
118
+ */
119
+ /**
120
+ * Provides localized string search functionality for filtering or matching items.
121
+ * Respects locale-specific collation rules for case and diacritic sensitivity.
122
+ *
123
+ * @example
124
+ * ```tsx
125
+ * function SearchableList(props: { items: { name: string }[] }) {
126
+ * const [query, setQuery] = createSignal('');
127
+ * const filter = createFilter({ sensitivity: 'base' });
128
+ *
129
+ * const filteredItems = () =>
130
+ * props.items.filter((item) =>
131
+ * filter().contains(item.name, query())
132
+ * );
133
+ *
134
+ * return (
135
+ * <>
136
+ * <input
137
+ * value={query()}
138
+ * onInput={(e) => setQuery(e.target.value)}
139
+ * placeholder="Search..."
140
+ * />
141
+ * <ul>
142
+ * <For each={filteredItems()}>
143
+ * {(item) => <li>{item.name}</li>}
144
+ * </For>
145
+ * </ul>
146
+ * </>
147
+ * );
148
+ * }
149
+ * ```
150
+ *
151
+ * @example
152
+ * ```tsx
153
+ * // Case-insensitive, diacritic-insensitive filtering
154
+ * const filter = createFilter({ sensitivity: 'base' });
155
+ * filter().contains('Café', 'cafe'); // true
156
+ * filter().startsWith('Hello', 'hello'); // true
157
+ * ```
158
+ */
159
+ function createFilter(options) {
160
+ const collator = createCollator({
161
+ usage: "search",
162
+ ...options
163
+ });
164
+ return createMemo(() => {
165
+ const coll = collator();
166
+ const startsWith = (str, substring) => {
167
+ if (substring.length === 0) return true;
168
+ const normalizedStr = str.normalize("NFC");
169
+ const normalizedSub = substring.normalize("NFC");
170
+ return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;
171
+ };
172
+ const endsWith = (str, substring) => {
173
+ if (substring.length === 0) return true;
174
+ const normalizedStr = str.normalize("NFC");
175
+ const normalizedSub = substring.normalize("NFC");
176
+ return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;
177
+ };
178
+ const contains = (str, substring) => {
179
+ if (substring.length === 0) return true;
180
+ const normalizedStr = str.normalize("NFC");
181
+ const normalizedSub = substring.normalize("NFC");
182
+ const sliceLen = normalizedSub.length;
183
+ for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {
184
+ const slice = normalizedStr.slice(scan, scan + sliceLen);
185
+ if (coll.compare(normalizedSub, slice) === 0) return true;
186
+ }
187
+ return false;
188
+ };
189
+ return {
190
+ startsWith,
191
+ endsWith,
192
+ contains
193
+ };
194
+ });
195
+ }
196
+ //#endregion
197
+ //#region src/i18n/createStringFormatter.ts
198
+ /**
199
+ * String formatter for localized strings with ICU MessageFormat support.
200
+ * Port of @react-aria/i18n useLocalizedStringFormatter.
201
+ */
202
+ const cache = /* @__PURE__ */ new WeakMap();
203
+ function getCachedDictionary(strings) {
204
+ let dictionary = cache.get(strings);
205
+ if (!dictionary) {
206
+ dictionary = new LocalizedStringDictionary(strings);
207
+ cache.set(strings, dictionary);
208
+ }
209
+ return dictionary;
210
+ }
211
+ /**
212
+ * Returns a cached LocalizedStringDictionary for the given strings.
213
+ */
214
+ function createStringDictionary(strings, packageName) {
215
+ return packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName) || getCachedDictionary(strings);
216
+ }
217
+ /**
218
+ * Provides localized string formatting for the current locale.
219
+ * Supports interpolating variables, selecting the correct pluralization,
220
+ * and formatting numbers. Automatically updates when the locale changes.
221
+ *
222
+ * @param strings - A mapping of languages to localized strings by key.
223
+ * @param packageName - Optional package name for global dictionary lookup.
224
+ *
225
+ * @example
226
+ * ```tsx
227
+ * const strings = {
228
+ * 'en-US': {
229
+ * greeting: 'Hello, {name}!',
230
+ * count: '{count, plural, one {# item} other {# items}}'
231
+ * }
232
+ * };
233
+ *
234
+ * function MyComponent() {
235
+ * const stringFormatter = createStringFormatter(strings);
236
+ *
237
+ * return (
238
+ * <div>
239
+ * {stringFormatter().format('greeting', { name: 'World' })}
240
+ * {stringFormatter().format('count', { count: 5 })}
241
+ * </div>
242
+ * );
243
+ * }
244
+ * ```
245
+ */
246
+ function createStringFormatter(strings, packageName) {
247
+ const localeAccessor = useLocale();
248
+ const dictionary = createStringDictionary(strings, packageName);
249
+ return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));
250
+ }
251
+ //#endregion
252
+ export { createDateFormatter as a, createFilter as i, createStringDictionary as n, createNumberFormatter as o, createStringFormatter as r, NumberFormatter$1 as t };
253
+
254
+ //# sourceMappingURL=i18n.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i18n.jsx","names":[],"sources":["../../src/i18n/createNumberFormatter.ts","../../src/i18n/createDateFormatter.ts","../../src/i18n/createFilter.ts","../../src/i18n/createStringFormatter.ts"],"sourcesContent":["/**\n * createNumberFormatter hook for solidaria\n *\n * Provides localized number formatting with automatic locale updates.\n *\n * Port of @react-aria/i18n useNumberFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { NumberFormatter, type NumberFormatOptions } from \"@internationalized/number\";\n\n/**\n * Provides localized number formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function PriceDisplay(props: { value: number }) {\n * const formatter = createNumberFormatter({\n * style: 'currency',\n * currency: 'USD',\n * });\n *\n * return <span>{formatter().format(props.value)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Percent formatting\n * const percentFormatter = createNumberFormatter({\n * style: 'percent',\n * minimumFractionDigits: 1,\n * });\n * percentFormatter().format(0.125); // '12.5%'\n *\n * // Unit formatting\n * const tempFormatter = createNumberFormatter({\n * style: 'unit',\n * unit: 'celsius',\n * });\n * tempFormatter().format(25); // '25°C'\n * ```\n */\nexport function createNumberFormatter(options: NumberFormatOptions = {}): () => NumberFormatter {\n const locale = useLocale();\n\n return createMemo(() => new NumberFormatter(locale().locale, options));\n}\n","/**\n * createDateFormatter hook for solidaria\n *\n * Provides localized date formatting with caching.\n *\n * Port of @react-aria/i18n useDateFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { createCacheKey } from \"./utils\";\n\nconst dateFormatterCache = new Map<string, Intl.DateTimeFormat>();\n\n/**\n * Gets or creates a cached date formatter.\n */\nfunction getCachedDateFormatter(\n locale: string,\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const cacheKey = createCacheKey(locale, options as Record<string, unknown>);\n\n if (dateFormatterCache.has(cacheKey)) {\n return dateFormatterCache.get(cacheKey)!;\n }\n\n const formatter = new Intl.DateTimeFormat(locale, options);\n dateFormatterCache.set(cacheKey, formatter);\n return formatter;\n}\n\n/**\n * Provides localized date and time formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function DateDisplay(props: { date: Date }) {\n * const formatter = createDateFormatter({\n * year: 'numeric',\n * month: 'long',\n * day: 'numeric',\n * });\n *\n * return <span>{formatter().format(props.date)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Short date\n * const shortDate = createDateFormatter({ dateStyle: 'short' });\n * shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)\n *\n * // Full date with time\n * const fullDateTime = createDateFormatter({\n * dateStyle: 'full',\n * timeStyle: 'short',\n * });\n *\n * // Time only\n * const timeFormatter = createDateFormatter({\n * hour: 'numeric',\n * minute: '2-digit',\n * });\n * ```\n */\nexport function createDateFormatter(\n options?: Intl.DateTimeFormatOptions,\n): () => Intl.DateTimeFormat {\n const locale = useLocale();\n\n return createMemo(() => getCachedDateFormatter(locale().locale, options));\n}\n","/**\n * createFilter hook for solidaria\n *\n * Provides localized string filtering with collation support.\n *\n * Port of @react-aria/i18n useFilter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { createCollator } from \"./createCollator\";\n\nexport interface Filter {\n /** Returns whether a string starts with a given substring. */\n startsWith(string: string, substring: string): boolean;\n /** Returns whether a string ends with a given substring. */\n endsWith(string: string, substring: string): boolean;\n /** Returns whether a string contains a given substring. */\n contains(string: string, substring: string): boolean;\n}\n\n/**\n * Provides localized string search functionality for filtering or matching items.\n * Respects locale-specific collation rules for case and diacritic sensitivity.\n *\n * @example\n * ```tsx\n * function SearchableList(props: { items: { name: string }[] }) {\n * const [query, setQuery] = createSignal('');\n * const filter = createFilter({ sensitivity: 'base' });\n *\n * const filteredItems = () =>\n * props.items.filter((item) =>\n * filter().contains(item.name, query())\n * );\n *\n * return (\n * <>\n * <input\n * value={query()}\n * onInput={(e) => setQuery(e.target.value)}\n * placeholder=\"Search...\"\n * />\n * <ul>\n * <For each={filteredItems()}>\n * {(item) => <li>{item.name}</li>}\n * </For>\n * </ul>\n * </>\n * );\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Case-insensitive, diacritic-insensitive filtering\n * const filter = createFilter({ sensitivity: 'base' });\n * filter().contains('Café', 'cafe'); // true\n * filter().startsWith('Hello', 'hello'); // true\n * ```\n */\nexport function createFilter(options?: Intl.CollatorOptions): () => Filter {\n const collator = createCollator({\n usage: \"search\",\n ...options,\n });\n\n return createMemo(() => {\n const coll = collator();\n\n const startsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n // Normalize both strings for safe slicing\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;\n };\n\n const endsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;\n };\n\n const contains = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n const sliceLen = normalizedSub.length;\n\n for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {\n const slice = normalizedStr.slice(scan, scan + sliceLen);\n if (coll.compare(normalizedSub, slice) === 0) {\n return true;\n }\n }\n\n return false;\n };\n\n return {\n startsWith,\n endsWith,\n contains,\n };\n });\n}\n","/**\n * String formatter for localized strings with ICU MessageFormat support.\n * Port of @react-aria/i18n useLocalizedStringFormatter.\n */\n\nimport {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { createMemo, type Accessor } from \"solid-js\";\nimport { useLocale } from \"./locale\";\n\n// Cache for dictionaries to avoid recreating them\nconst cache = new WeakMap<\n LocalizedStrings<string, LocalizedString>,\n LocalizedStringDictionary<string, LocalizedString>\n>();\n\nfunction getCachedDictionary<K extends string, T extends LocalizedString>(\n strings: LocalizedStrings<K, T>,\n): LocalizedStringDictionary<K, T> {\n let dictionary = cache.get(strings as LocalizedStrings<string, LocalizedString>);\n if (!dictionary) {\n dictionary = new LocalizedStringDictionary(\n strings as LocalizedStrings<string, LocalizedString>,\n );\n cache.set(strings as LocalizedStrings<string, LocalizedString>, dictionary);\n }\n return dictionary as LocalizedStringDictionary<K, T>;\n}\n\n/**\n * Returns a cached LocalizedStringDictionary for the given strings.\n */\nexport function createStringDictionary<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): LocalizedStringDictionary<K, T> {\n return (\n (packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName)) ||\n getCachedDictionary(strings)\n );\n}\n\n/**\n * Provides localized string formatting for the current locale.\n * Supports interpolating variables, selecting the correct pluralization,\n * and formatting numbers. Automatically updates when the locale changes.\n *\n * @param strings - A mapping of languages to localized strings by key.\n * @param packageName - Optional package name for global dictionary lookup.\n *\n * @example\n * ```tsx\n * const strings = {\n * 'en-US': {\n * greeting: 'Hello, {name}!',\n * count: '{count, plural, one {# item} other {# items}}'\n * }\n * };\n *\n * function MyComponent() {\n * const stringFormatter = createStringFormatter(strings);\n *\n * return (\n * <div>\n * {stringFormatter().format('greeting', { name: 'World' })}\n * {stringFormatter().format('count', { count: 5 })}\n * </div>\n * );\n * }\n * ```\n */\nexport function createStringFormatter<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): Accessor<LocalizedStringFormatter<K, T>> {\n const localeAccessor = useLocale();\n const dictionary = createStringDictionary(strings, packageName);\n\n return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));\n}\n\nexport type {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n LocalizedStrings,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,sBAAsB,UAA+B,CAAC,GAA0B;CAC9F,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,IAAI,gBAAgB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AACvE;;;;;;;;;;ACrCA,MAAM,qCAAqB,IAAI,IAAiC;;;;AAKhE,SAAS,uBACP,QACA,SACqB;CACrB,MAAM,WAAW,eAAe,QAAQ,OAAkC;CAE1E,IAAI,mBAAmB,IAAI,QAAQ,GACjC,OAAO,mBAAmB,IAAI,QAAQ;CAGxC,MAAM,YAAY,IAAI,KAAK,eAAe,QAAQ,OAAO;CACzD,mBAAmB,IAAI,UAAU,SAAS;CAC1C,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,SAAgB,oBACd,SAC2B;CAC3B,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,uBAAuB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AAC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACdA,SAAgB,aAAa,SAA8C;CACzE,MAAM,WAAW,eAAe;EAC9B,OAAO;EACP,GAAG;CACL,CAAC;CAED,OAAO,iBAAiB;EACtB,MAAM,OAAO,SAAS;EAEtB,MAAM,cAAc,KAAa,cAA+B;GAC9D,IAAI,UAAU,WAAW,GACvB,OAAO;GAIT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,GAAG,cAAc,MAAM,GAAG,aAAa,MAAM;EACvF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,CAAC,cAAc,MAAM,GAAG,aAAa,MAAM;EACrF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAC/C,MAAM,WAAW,cAAc;GAE/B,KAAK,IAAI,OAAO,GAAG,OAAO,YAAY,cAAc,QAAQ,QAAQ;IAClE,MAAM,QAAQ,cAAc,MAAM,MAAM,OAAO,QAAQ;IACvD,IAAI,KAAK,QAAQ,eAAe,KAAK,MAAM,GACzC,OAAO;GAEX;GAEA,OAAO;EACT;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF,CAAC;AACH;;;;;;;ACtGA,MAAM,wBAAQ,IAAI,QAGhB;AAEF,SAAS,oBACP,SACiC;CACjC,IAAI,aAAa,MAAM,IAAI,OAAoD;CAC/E,IAAI,CAAC,YAAY;EACf,aAAa,IAAI,0BACf,OACF;EACA,MAAM,IAAI,SAAsD,UAAU;CAC5E;CACA,OAAO;AACT;;;;AAKA,SAAgB,uBAGd,SAAiC,aAAuD;CACxF,OACG,eAAe,0BAA0B,8BAA8B,WAAW,KACnF,oBAAoB,OAAO;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAgB,sBAGd,SAAiC,aAAgE;CACjG,MAAM,iBAAiB,UAAU;CACjC,MAAM,aAAa,uBAAuB,SAAS,WAAW;CAE9D,OAAO,iBAAiB,IAAI,yBAAyB,eAAe,CAAC,CAAC,QAAQ,UAAU,CAAC;AAC3F"}
@@ -0,0 +1,241 @@
1
+ import { l as disableTextSelection, s as createGlobalListeners, u as restoreTextSelection } from "./utils.js";
2
+ import { t as FocusableContext } from "./createFocusable.js";
3
+ import { createEffect, createSignal, onCleanup } from "solid-js";
4
+ import { createComponent } from "solid-js/web";
5
+ //#region src/interactions/createMove.ts
6
+ /**
7
+ * createMove - Handles move interactions across mouse, touch, pointer, and keyboard.
8
+ *
9
+ * Port of @react-aria/interactions useMove, adapted for SolidJS.
10
+ */
11
+ function createBaseEvent(originalEvent, pointerType) {
12
+ return {
13
+ pointerType,
14
+ shiftKey: originalEvent.shiftKey,
15
+ ctrlKey: originalEvent.ctrlKey,
16
+ metaKey: originalEvent.metaKey,
17
+ altKey: originalEvent.altKey
18
+ };
19
+ }
20
+ /**
21
+ * Handles move interactions across mouse, touch, pointer, and keyboard.
22
+ */
23
+ function createMove(props = {}) {
24
+ const { onMoveStart, onMove, onMoveEnd } = props;
25
+ const state = {
26
+ didMove: false,
27
+ lastPosition: null,
28
+ id: null
29
+ };
30
+ const { addGlobalListener, removeGlobalListener } = createGlobalListeners();
31
+ const [pointerDown, setPointerDown] = createSignal(null);
32
+ const move = (originalEvent, pointerType, deltaX, deltaY) => {
33
+ if (deltaX === 0 && deltaY === 0) return;
34
+ if (!state.didMove) {
35
+ state.didMove = true;
36
+ onMoveStart?.({
37
+ type: "movestart",
38
+ ...createBaseEvent(originalEvent, pointerType)
39
+ });
40
+ }
41
+ onMove?.({
42
+ type: "move",
43
+ deltaX,
44
+ deltaY,
45
+ ...createBaseEvent(originalEvent, pointerType)
46
+ });
47
+ };
48
+ const end = (originalEvent, pointerType) => {
49
+ restoreTextSelection();
50
+ if (state.didMove) onMoveEnd?.({
51
+ type: "moveend",
52
+ ...createBaseEvent(originalEvent, pointerType)
53
+ });
54
+ };
55
+ createEffect(() => {
56
+ const activePointer = pointerDown();
57
+ if (!activePointer) return;
58
+ if (activePointer === "pointer") {
59
+ const onPointerMove = (e) => {
60
+ if (e.pointerId === state.id) {
61
+ move(e, e.pointerType || "mouse", e.pageX - (state.lastPosition?.pageX ?? 0), e.pageY - (state.lastPosition?.pageY ?? 0));
62
+ state.lastPosition = {
63
+ pageX: e.pageX,
64
+ pageY: e.pageY
65
+ };
66
+ }
67
+ };
68
+ const onPointerUp = (e) => {
69
+ if (e.pointerId === state.id) {
70
+ end(e, e.pointerType || "mouse");
71
+ state.id = null;
72
+ removeGlobalListener("pointermove", onPointerMove, { isWindow: true });
73
+ removeGlobalListener("pointerup", onPointerUp, { isWindow: true });
74
+ removeGlobalListener("pointercancel", onPointerUp, { isWindow: true });
75
+ setPointerDown(null);
76
+ }
77
+ };
78
+ addGlobalListener("pointermove", onPointerMove, { isWindow: true });
79
+ addGlobalListener("pointerup", onPointerUp, { isWindow: true });
80
+ addGlobalListener("pointercancel", onPointerUp, { isWindow: true });
81
+ onCleanup(() => {
82
+ removeGlobalListener("pointermove", onPointerMove, { isWindow: true });
83
+ removeGlobalListener("pointerup", onPointerUp, { isWindow: true });
84
+ removeGlobalListener("pointercancel", onPointerUp, { isWindow: true });
85
+ });
86
+ }
87
+ });
88
+ const start = () => {
89
+ disableTextSelection();
90
+ state.didMove = false;
91
+ };
92
+ const moveProps = {};
93
+ const hasPointerEvents = typeof window !== "undefined" && typeof window.PointerEvent !== "undefined";
94
+ moveProps.onMouseDown = (e) => {
95
+ if (pointerDown() != null) return;
96
+ if (e.button === 0) {
97
+ start();
98
+ e.stopPropagation();
99
+ e.preventDefault();
100
+ state.lastPosition = {
101
+ pageX: e.pageX,
102
+ pageY: e.pageY
103
+ };
104
+ setPointerDown("mouse");
105
+ const onMouseMove = (event) => {
106
+ move(event, "mouse", event.pageX - (state.lastPosition?.pageX ?? 0), event.pageY - (state.lastPosition?.pageY ?? 0));
107
+ state.lastPosition = {
108
+ pageX: event.pageX,
109
+ pageY: event.pageY
110
+ };
111
+ };
112
+ const onMouseUp = (event) => {
113
+ end(event, "mouse");
114
+ removeGlobalListener("mousemove", onMouseMove);
115
+ removeGlobalListener("mouseup", onMouseUp);
116
+ setPointerDown(null);
117
+ };
118
+ addGlobalListener("mousemove", onMouseMove);
119
+ addGlobalListener("mouseup", onMouseUp);
120
+ }
121
+ };
122
+ moveProps.onTouchStart = (e) => {
123
+ if (pointerDown() != null || e.changedTouches.length === 0 || state.id != null) return;
124
+ const { pageX, pageY, identifier } = e.changedTouches[0];
125
+ start();
126
+ e.stopPropagation();
127
+ e.preventDefault();
128
+ state.lastPosition = {
129
+ pageX,
130
+ pageY
131
+ };
132
+ state.id = identifier;
133
+ setPointerDown("touch");
134
+ const onTouchMove = (event) => {
135
+ const touchIndex = [...event.changedTouches].findIndex(({ identifier: touchId }) => touchId === state.id);
136
+ if (touchIndex >= 0) {
137
+ const { pageX: moveX, pageY: moveY } = event.changedTouches[touchIndex];
138
+ move(event, "touch", moveX - (state.lastPosition?.pageX ?? 0), moveY - (state.lastPosition?.pageY ?? 0));
139
+ state.lastPosition = {
140
+ pageX: moveX,
141
+ pageY: moveY
142
+ };
143
+ }
144
+ };
145
+ const onTouchEnd = (event) => {
146
+ if ([...event.changedTouches].findIndex(({ identifier: touchId }) => touchId === state.id) >= 0) {
147
+ end(event, "touch");
148
+ state.id = null;
149
+ removeGlobalListener("touchmove", onTouchMove);
150
+ removeGlobalListener("touchend", onTouchEnd);
151
+ removeGlobalListener("touchcancel", onTouchEnd);
152
+ setPointerDown(null);
153
+ }
154
+ };
155
+ addGlobalListener("touchmove", onTouchMove);
156
+ addGlobalListener("touchend", onTouchEnd);
157
+ addGlobalListener("touchcancel", onTouchEnd);
158
+ };
159
+ if (hasPointerEvents) moveProps.onPointerDown = (e) => {
160
+ if ((e.button ?? 0) === 0 && state.id == null) {
161
+ start();
162
+ e.stopPropagation();
163
+ e.preventDefault();
164
+ state.lastPosition = {
165
+ pageX: e.pageX,
166
+ pageY: e.pageY
167
+ };
168
+ state.id = e.pointerId;
169
+ setPointerDown("pointer");
170
+ }
171
+ };
172
+ const triggerKeyboardMove = (e, deltaX, deltaY) => {
173
+ start();
174
+ move(e, "keyboard", deltaX, deltaY);
175
+ end(e, "keyboard");
176
+ };
177
+ moveProps.onKeyDown = (e) => {
178
+ switch (e.key) {
179
+ case "Left":
180
+ case "ArrowLeft":
181
+ e.preventDefault();
182
+ e.stopPropagation();
183
+ triggerKeyboardMove(e, -1, 0);
184
+ break;
185
+ case "Right":
186
+ case "ArrowRight":
187
+ e.preventDefault();
188
+ e.stopPropagation();
189
+ triggerKeyboardMove(e, 1, 0);
190
+ break;
191
+ case "Up":
192
+ case "ArrowUp":
193
+ e.preventDefault();
194
+ e.stopPropagation();
195
+ triggerKeyboardMove(e, 0, -1);
196
+ break;
197
+ case "Down":
198
+ case "ArrowDown":
199
+ e.preventDefault();
200
+ e.stopPropagation();
201
+ triggerKeyboardMove(e, 0, 1);
202
+ break;
203
+ default: break;
204
+ }
205
+ };
206
+ return { moveProps };
207
+ }
208
+ //#endregion
209
+ //#region src/interactions/FocusableProvider.tsx
210
+ /**
211
+ * Provides DOM props to the nearest focusable child.
212
+ * Used to pass focus-related props through component boundaries.
213
+ *
214
+ * @example
215
+ * ```tsx
216
+ * import { FocusableProvider } from 'solidaria';
217
+ *
218
+ * function MyComponent() {
219
+ * return (
220
+ * <FocusableProvider onFocus={() => console.log('focused!')}>
221
+ * <NestedFocusableComponent />
222
+ * </FocusableProvider>
223
+ * );
224
+ * }
225
+ * ```
226
+ */
227
+ const FocusableProvider = (props) => {
228
+ const { children, ...otherProps } = props;
229
+ const context = {
230
+ ...otherProps,
231
+ ref: (_el) => {}
232
+ };
233
+ return createComponent(FocusableContext.Provider, {
234
+ value: context,
235
+ children
236
+ });
237
+ };
238
+ //#endregion
239
+ export { createMove as n, FocusableProvider as t };
240
+
241
+ //# sourceMappingURL=interactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactions.js","names":["JSX","ParentComponent","FocusableContext","FocusableContextValue","FocusableProviderProps","FocusableProvider","HTMLAttributes","HTMLElement","props","children","otherProps","context","ref","_el","_$createComponent","Provider","value"],"sources":["../../src/interactions/createMove.ts","../../src/interactions/FocusableProvider.tsx"],"sourcesContent":["/**\n * createMove - Handles move interactions across mouse, touch, pointer, and keyboard.\n *\n * Port of @react-aria/interactions useMove, adapted for SolidJS.\n */\n\nimport { JSX, createSignal, createEffect, onCleanup } from \"solid-js\";\nimport { disableTextSelection, restoreTextSelection, createGlobalListeners } from \"../utils\";\n\nexport type PointerType = \"mouse\" | \"pen\" | \"touch\" | \"keyboard\";\n\ninterface BaseMoveEvent {\n pointerType: PointerType;\n shiftKey: boolean;\n ctrlKey: boolean;\n metaKey: boolean;\n altKey: boolean;\n}\n\nexport interface MoveStartEvent extends BaseMoveEvent {\n type: \"movestart\";\n}\n\nexport interface MoveMoveEvent extends BaseMoveEvent {\n type: \"move\";\n deltaX: number;\n deltaY: number;\n}\n\nexport interface MoveEndEvent extends BaseMoveEvent {\n type: \"moveend\";\n}\n\nexport interface MoveEvents {\n onMoveStart?: (e: MoveStartEvent) => void;\n onMove?: (e: MoveMoveEvent) => void;\n onMoveEnd?: (e: MoveEndEvent) => void;\n}\n\nexport interface MoveResult {\n /** Props to spread on the target element. */\n moveProps: JSX.HTMLAttributes<HTMLElement>;\n}\n\ninterface MoveState {\n didMove: boolean;\n lastPosition: { pageX: number; pageY: number } | null;\n id: number | null;\n}\n\nfunction createBaseEvent(\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n): BaseMoveEvent {\n return {\n pointerType,\n shiftKey: originalEvent.shiftKey,\n ctrlKey: originalEvent.ctrlKey,\n metaKey: originalEvent.metaKey,\n altKey: originalEvent.altKey,\n };\n}\n\n/**\n * Handles move interactions across mouse, touch, pointer, and keyboard.\n */\nexport function createMove(props: MoveEvents = {}): MoveResult {\n const { onMoveStart, onMove, onMoveEnd } = props;\n\n const state: MoveState = {\n didMove: false,\n lastPosition: null,\n id: null,\n };\n\n const { addGlobalListener, removeGlobalListener } = createGlobalListeners();\n const [pointerDown, setPointerDown] = createSignal<\"pointer\" | \"mouse\" | \"touch\" | null>(null);\n\n const move = (\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n deltaX: number,\n deltaY: number,\n ) => {\n if (deltaX === 0 && deltaY === 0) {\n return;\n }\n\n if (!state.didMove) {\n state.didMove = true;\n onMoveStart?.({\n type: \"movestart\",\n ...createBaseEvent(originalEvent, pointerType),\n });\n }\n\n onMove?.({\n type: \"move\",\n deltaX,\n deltaY,\n ...createBaseEvent(originalEvent, pointerType),\n });\n };\n\n const end = (\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n ) => {\n restoreTextSelection();\n if (state.didMove) {\n onMoveEnd?.({\n type: \"moveend\",\n ...createBaseEvent(originalEvent, pointerType),\n });\n }\n };\n\n createEffect(() => {\n const activePointer = pointerDown();\n if (!activePointer) return;\n\n if (activePointer === \"pointer\") {\n const onPointerMove = (e: PointerEvent) => {\n if (e.pointerId === state.id) {\n const pointerType = (e.pointerType || \"mouse\") as PointerType;\n move(\n e,\n pointerType,\n e.pageX - (state.lastPosition?.pageX ?? 0),\n e.pageY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n }\n };\n\n const onPointerUp = (e: PointerEvent) => {\n if (e.pointerId === state.id) {\n const pointerType = (e.pointerType || \"mouse\") as PointerType;\n end(e, pointerType);\n state.id = null;\n removeGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n removeGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n removeGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n setPointerDown(null);\n }\n };\n\n addGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n addGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n addGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n onCleanup(() => {\n removeGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n removeGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n removeGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n });\n }\n\n // Mouse/touch listeners are attached directly in their handlers.\n });\n\n const start = () => {\n disableTextSelection();\n state.didMove = false;\n };\n\n const moveProps: JSX.HTMLAttributes<HTMLElement> = {};\n\n const hasPointerEvents =\n typeof window !== \"undefined\" && typeof window.PointerEvent !== \"undefined\";\n\n moveProps.onMouseDown = (e: MouseEvent) => {\n if (pointerDown() != null) {\n return;\n }\n if (e.button === 0) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n setPointerDown(\"mouse\");\n\n const onMouseMove = (event: MouseEvent) => {\n move(\n event,\n \"mouse\",\n event.pageX - (state.lastPosition?.pageX ?? 0),\n event.pageY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: event.pageX, pageY: event.pageY };\n };\n const onMouseUp = (event: MouseEvent) => {\n end(event, \"mouse\");\n removeGlobalListener(\"mousemove\", onMouseMove);\n removeGlobalListener(\"mouseup\", onMouseUp);\n setPointerDown(null);\n };\n addGlobalListener(\"mousemove\", onMouseMove);\n addGlobalListener(\"mouseup\", onMouseUp);\n }\n };\n\n moveProps.onTouchStart = (e: TouchEvent) => {\n if (pointerDown() != null || e.changedTouches.length === 0 || state.id != null) {\n return;\n }\n const { pageX, pageY, identifier } = e.changedTouches[0];\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX, pageY };\n state.id = identifier;\n setPointerDown(\"touch\");\n\n const onTouchMove = (event: TouchEvent) => {\n const touchIndex = [...event.changedTouches].findIndex(\n ({ identifier: touchId }) => touchId === state.id,\n );\n if (touchIndex >= 0) {\n const { pageX: moveX, pageY: moveY } = event.changedTouches[touchIndex];\n move(\n event,\n \"touch\",\n moveX - (state.lastPosition?.pageX ?? 0),\n moveY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: moveX, pageY: moveY };\n }\n };\n const onTouchEnd = (event: TouchEvent) => {\n const touchIndex = [...event.changedTouches].findIndex(\n ({ identifier: touchId }) => touchId === state.id,\n );\n if (touchIndex >= 0) {\n end(event, \"touch\");\n state.id = null;\n removeGlobalListener(\"touchmove\", onTouchMove);\n removeGlobalListener(\"touchend\", onTouchEnd);\n removeGlobalListener(\"touchcancel\", onTouchEnd);\n setPointerDown(null);\n }\n };\n addGlobalListener(\"touchmove\", onTouchMove);\n addGlobalListener(\"touchend\", onTouchEnd);\n addGlobalListener(\"touchcancel\", onTouchEnd);\n };\n\n if (hasPointerEvents) {\n moveProps.onPointerDown = (e: PointerEvent) => {\n const button = e.button ?? 0;\n if (button === 0 && state.id == null) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n state.id = e.pointerId;\n setPointerDown(\"pointer\");\n }\n };\n }\n\n const triggerKeyboardMove = (e: KeyboardEvent, deltaX: number, deltaY: number) => {\n start();\n move(e, \"keyboard\", deltaX, deltaY);\n end(e, \"keyboard\");\n };\n\n moveProps.onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case \"Left\":\n case \"ArrowLeft\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, -1, 0);\n break;\n case \"Right\":\n case \"ArrowRight\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 1, 0);\n break;\n case \"Up\":\n case \"ArrowUp\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, -1);\n break;\n case \"Down\":\n case \"ArrowDown\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, 1);\n break;\n default:\n break;\n }\n };\n\n return { moveProps };\n}\n","/**\n * FocusableProvider - Provides DOM props to the nearest focusable child.\n *\n * This is a 1-1 port of React-Aria's FocusableProvider adapted for SolidJS.\n */\n\nimport { JSX, ParentComponent } from \"solid-js\";\nimport { FocusableContext, FocusableContextValue, FocusableProviderProps } from \"./createFocusable\";\n\n/**\n * Provides DOM props to the nearest focusable child.\n * Used to pass focus-related props through component boundaries.\n *\n * @example\n * ```tsx\n * import { FocusableProvider } from 'solidaria';\n *\n * function MyComponent() {\n * return (\n * <FocusableProvider onFocus={() => console.log('focused!')}>\n * <NestedFocusableComponent />\n * </FocusableProvider>\n * );\n * }\n * ```\n */\nexport const FocusableProvider: ParentComponent<\n FocusableProviderProps & JSX.HTMLAttributes<HTMLElement>\n> = (props) => {\n const { children, ...otherProps } = props;\n\n const context: FocusableContextValue = {\n ...otherProps,\n ref: (_el: HTMLElement) => {\n // Store ref if needed by parent\n },\n };\n\n return <FocusableContext.Provider value={context}>{children}</FocusableContext.Provider>;\n};\n"],"mappings":";;;;;;;;;;AAkDA,SAAS,gBACP,eACA,aACe;CACf,OAAO;EACL;EACA,UAAU,cAAc;EACxB,SAAS,cAAc;EACvB,SAAS,cAAc;EACvB,QAAQ,cAAc;CACxB;AACF;;;;AAKA,SAAgB,WAAW,QAAoB,CAAC,GAAe;CAC7D,MAAM,EAAE,aAAa,QAAQ,cAAc;CAE3C,MAAM,QAAmB;EACvB,SAAS;EACT,cAAc;EACd,IAAI;CACN;CAEA,MAAM,EAAE,mBAAmB,yBAAyB,sBAAsB;CAC1E,MAAM,CAAC,aAAa,kBAAkB,aAAmD,IAAI;CAE7F,MAAM,QACJ,eACA,aACA,QACA,WACG;EACH,IAAI,WAAW,KAAK,WAAW,GAC7B;EAGF,IAAI,CAAC,MAAM,SAAS;GAClB,MAAM,UAAU;GAChB,cAAc;IACZ,MAAM;IACN,GAAG,gBAAgB,eAAe,WAAW;GAC/C,CAAC;EACH;EAEA,SAAS;GACP,MAAM;GACN;GACA;GACA,GAAG,gBAAgB,eAAe,WAAW;EAC/C,CAAC;CACH;CAEA,MAAM,OACJ,eACA,gBACG;EACH,qBAAqB;EACrB,IAAI,MAAM,SACR,YAAY;GACV,MAAM;GACN,GAAG,gBAAgB,eAAe,WAAW;EAC/C,CAAC;CAEL;CAEA,mBAAmB;EACjB,MAAM,gBAAgB,YAAY;EAClC,IAAI,CAAC,eAAe;EAEpB,IAAI,kBAAkB,WAAW;GAC/B,MAAM,iBAAiB,MAAoB;IACzC,IAAI,EAAE,cAAc,MAAM,IAAI;KAE5B,KACE,GAFmB,EAAE,eAAe,SAIpC,EAAE,SAAS,MAAM,cAAc,SAAS,IACxC,EAAE,SAAS,MAAM,cAAc,SAAS,EAC1C;KACA,MAAM,eAAe;MAAE,OAAO,EAAE;MAAO,OAAO,EAAE;KAAM;IACxD;GACF;GAEA,MAAM,eAAe,MAAoB;IACvC,IAAI,EAAE,cAAc,MAAM,IAAI;KAE5B,IAAI,GADiB,EAAE,eAAe,OACpB;KAClB,MAAM,KAAK;KACX,qBAAqB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;KACrE,qBAAqB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;KACjE,qBAAqB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;KACrE,eAAe,IAAI;IACrB;GACF;GAEA,kBAAkB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;GAClE,kBAAkB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;GAC9D,kBAAkB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;GAClE,gBAAgB;IACd,qBAAqB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;IACrE,qBAAqB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;IACjE,qBAAqB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;GACvE,CAAC;EACH;CAGF,CAAC;CAED,MAAM,cAAc;EAClB,qBAAqB;EACrB,MAAM,UAAU;CAClB;CAEA,MAAM,YAA6C,CAAC;CAEpD,MAAM,mBACJ,OAAO,WAAW,eAAe,OAAO,OAAO,iBAAiB;CAElE,UAAU,eAAe,MAAkB;EACzC,IAAI,YAAY,KAAK,MACnB;EAEF,IAAI,EAAE,WAAW,GAAG;GAClB,MAAM;GACN,EAAE,gBAAgB;GAClB,EAAE,eAAe;GACjB,MAAM,eAAe;IAAE,OAAO,EAAE;IAAO,OAAO,EAAE;GAAM;GACtD,eAAe,OAAO;GAEtB,MAAM,eAAe,UAAsB;IACzC,KACE,OACA,SACA,MAAM,SAAS,MAAM,cAAc,SAAS,IAC5C,MAAM,SAAS,MAAM,cAAc,SAAS,EAC9C;IACA,MAAM,eAAe;KAAE,OAAO,MAAM;KAAO,OAAO,MAAM;IAAM;GAChE;GACA,MAAM,aAAa,UAAsB;IACvC,IAAI,OAAO,OAAO;IAClB,qBAAqB,aAAa,WAAW;IAC7C,qBAAqB,WAAW,SAAS;IACzC,eAAe,IAAI;GACrB;GACA,kBAAkB,aAAa,WAAW;GAC1C,kBAAkB,WAAW,SAAS;EACxC;CACF;CAEA,UAAU,gBAAgB,MAAkB;EAC1C,IAAI,YAAY,KAAK,QAAQ,EAAE,eAAe,WAAW,KAAK,MAAM,MAAM,MACxE;EAEF,MAAM,EAAE,OAAO,OAAO,eAAe,EAAE,eAAe;EACtD,MAAM;EACN,EAAE,gBAAgB;EAClB,EAAE,eAAe;EACjB,MAAM,eAAe;GAAE;GAAO;EAAM;EACpC,MAAM,KAAK;EACX,eAAe,OAAO;EAEtB,MAAM,eAAe,UAAsB;GACzC,MAAM,aAAa,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC,WAC1C,EAAE,YAAY,cAAc,YAAY,MAAM,EACjD;GACA,IAAI,cAAc,GAAG;IACnB,MAAM,EAAE,OAAO,OAAO,OAAO,UAAU,MAAM,eAAe;IAC5D,KACE,OACA,SACA,SAAS,MAAM,cAAc,SAAS,IACtC,SAAS,MAAM,cAAc,SAAS,EACxC;IACA,MAAM,eAAe;KAAE,OAAO;KAAO,OAAO;IAAM;GACpD;EACF;EACA,MAAM,cAAc,UAAsB;GAIxC,IAHmB,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC,WAC1C,EAAE,YAAY,cAAc,YAAY,MAAM,EAEpC,KAAK,GAAG;IACnB,IAAI,OAAO,OAAO;IAClB,MAAM,KAAK;IACX,qBAAqB,aAAa,WAAW;IAC7C,qBAAqB,YAAY,UAAU;IAC3C,qBAAqB,eAAe,UAAU;IAC9C,eAAe,IAAI;GACrB;EACF;EACA,kBAAkB,aAAa,WAAW;EAC1C,kBAAkB,YAAY,UAAU;EACxC,kBAAkB,eAAe,UAAU;CAC7C;CAEA,IAAI,kBACF,UAAU,iBAAiB,MAAoB;EAE7C,KADe,EAAE,UAAU,OACZ,KAAK,MAAM,MAAM,MAAM;GACpC,MAAM;GACN,EAAE,gBAAgB;GAClB,EAAE,eAAe;GACjB,MAAM,eAAe;IAAE,OAAO,EAAE;IAAO,OAAO,EAAE;GAAM;GACtD,MAAM,KAAK,EAAE;GACb,eAAe,SAAS;EAC1B;CACF;CAGF,MAAM,uBAAuB,GAAkB,QAAgB,WAAmB;EAChF,MAAM;EACN,KAAK,GAAG,YAAY,QAAQ,MAAM;EAClC,IAAI,GAAG,UAAU;CACnB;CAEA,UAAU,aAAa,MAAqB;EAC1C,QAAQ,EAAE,KAAV;GACE,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,IAAI,CAAC;IAC5B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,CAAC;IAC3B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,EAAE;IAC5B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,CAAC;IAC3B;GACF,SACE;EACJ;CACF;CAEA,OAAO,EAAE,UAAU;AACrB;;;;;;;;;;;;;;;;;;;;AChRA,MAAaK,qBAERG,UAAU;CACb,MAAM,EAAEC,UAAU,GAAGC,eAAeF;CAEpC,MAAMG,UAAiC;EACrC,GAAGD;EACHE,MAAMC,QAAqB,CACzB;CAEJ;CAEA,OAAAC,gBAAQZ,iBAAiBa,UAAQ;EAACC,OAAOL;EAAUF;CAAQ,CAAA;AAC7D"}