@proyecto-viviana/solidaria 0.4.2 → 0.6.0-rc.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 (1377) hide show
  1. package/LICENSE-APACHE-2.0 +201 -0
  2. package/NOTICE +91 -0
  3. package/dist/_chunk/DragManager.js +71 -25
  4. package/dist/_chunk/DragManager.js.map +1 -1
  5. package/dist/_chunk/DragManager.jsx +71 -25
  6. package/dist/_chunk/DragManager.jsx.map +1 -1
  7. package/dist/_chunk/FocusScope.js +281 -66
  8. package/dist/_chunk/FocusScope.js.map +1 -1
  9. package/dist/_chunk/FocusScope.jsx +274 -55
  10. package/dist/_chunk/FocusScope.jsx.map +1 -1
  11. package/dist/_chunk/actiongroup.js +43 -19
  12. package/dist/_chunk/actiongroup.js.map +1 -1
  13. package/dist/_chunk/actiongroup.jsx +43 -19
  14. package/dist/_chunk/actiongroup.jsx.map +1 -1
  15. package/dist/_chunk/announce.js +19 -6
  16. package/dist/_chunk/announce.js.map +1 -1
  17. package/dist/_chunk/announce.jsx +19 -6
  18. package/dist/_chunk/announce.jsx.map +1 -1
  19. package/dist/_chunk/ariaHideOutside.js +212 -10
  20. package/dist/_chunk/ariaHideOutside.js.map +1 -1
  21. package/dist/_chunk/ariaHideOutside.jsx +212 -10
  22. package/dist/_chunk/ariaHideOutside.jsx.map +1 -1
  23. package/dist/_chunk/autocomplete.js +26 -7
  24. package/dist/_chunk/autocomplete.js.map +1 -1
  25. package/dist/_chunk/autocomplete.jsx +26 -7
  26. package/dist/_chunk/autocomplete.jsx.map +1 -1
  27. package/dist/_chunk/breadcrumbs.js +17 -2
  28. package/dist/_chunk/breadcrumbs.js.map +1 -1
  29. package/dist/_chunk/breadcrumbs.jsx +17 -2
  30. package/dist/_chunk/breadcrumbs.jsx.map +1 -1
  31. package/dist/_chunk/button.js +53 -20
  32. package/dist/_chunk/button.js.map +1 -1
  33. package/dist/_chunk/button.jsx +53 -20
  34. package/dist/_chunk/button.jsx.map +1 -1
  35. package/dist/_chunk/calendar.js +341 -56
  36. package/dist/_chunk/calendar.js.map +1 -1
  37. package/dist/_chunk/calendar.jsx +341 -56
  38. package/dist/_chunk/calendar.jsx.map +1 -1
  39. package/dist/_chunk/checkbox.js +69 -26
  40. package/dist/_chunk/checkbox.js.map +1 -1
  41. package/dist/_chunk/checkbox.jsx +69 -26
  42. package/dist/_chunk/checkbox.jsx.map +1 -1
  43. package/dist/_chunk/color.js +307 -48
  44. package/dist/_chunk/color.js.map +1 -1
  45. package/dist/_chunk/color.jsx +307 -48
  46. package/dist/_chunk/color.jsx.map +1 -1
  47. package/dist/_chunk/combobox.js +193 -103
  48. package/dist/_chunk/combobox.js.map +1 -1
  49. package/dist/_chunk/combobox.jsx +193 -103
  50. package/dist/_chunk/combobox.jsx.map +1 -1
  51. package/dist/_chunk/constants.js +12 -0
  52. package/dist/_chunk/constants.js.map +1 -1
  53. package/dist/_chunk/constants.jsx +12 -0
  54. package/dist/_chunk/constants.jsx.map +1 -1
  55. package/dist/_chunk/createCollator.js +12 -0
  56. package/dist/_chunk/createCollator.js.map +1 -1
  57. package/dist/_chunk/createCollator.jsx +12 -0
  58. package/dist/_chunk/createCollator.jsx.map +1 -1
  59. package/dist/_chunk/createCollectionRowInteraction.js +50 -13
  60. package/dist/_chunk/createCollectionRowInteraction.js.map +1 -1
  61. package/dist/_chunk/createCollectionRowInteraction.jsx +50 -13
  62. package/dist/_chunk/createCollectionRowInteraction.jsx.map +1 -1
  63. package/dist/_chunk/createField.js +35 -25
  64. package/dist/_chunk/createField.js.map +1 -1
  65. package/dist/_chunk/createField.jsx +35 -25
  66. package/dist/_chunk/createField.jsx.map +1 -1
  67. package/dist/_chunk/createFocus.js +18 -5
  68. package/dist/_chunk/createFocus.js.map +1 -1
  69. package/dist/_chunk/createFocus.jsx +18 -5
  70. package/dist/_chunk/createFocus.jsx.map +1 -1
  71. package/dist/_chunk/createFocusRing.js +16 -7
  72. package/dist/_chunk/createFocusRing.js.map +1 -1
  73. package/dist/_chunk/createFocusRing.jsx +16 -7
  74. package/dist/_chunk/createFocusRing.jsx.map +1 -1
  75. package/dist/_chunk/createFocusWithin.js +16 -4
  76. package/dist/_chunk/createFocusWithin.js.map +1 -1
  77. package/dist/_chunk/createFocusWithin.jsx +16 -4
  78. package/dist/_chunk/createFocusWithin.jsx.map +1 -1
  79. package/dist/_chunk/createFocusable.js +39 -53
  80. package/dist/_chunk/createFocusable.js.map +1 -1
  81. package/dist/_chunk/createFocusable.jsx +39 -53
  82. package/dist/_chunk/createFocusable.jsx.map +1 -1
  83. package/dist/_chunk/createFormReset.js +24 -12
  84. package/dist/_chunk/createFormReset.js.map +1 -1
  85. package/dist/_chunk/createFormReset.jsx +24 -12
  86. package/dist/_chunk/createFormReset.jsx.map +1 -1
  87. package/dist/_chunk/createFormValidation.js +41 -17
  88. package/dist/_chunk/createFormValidation.js.map +1 -1
  89. package/dist/_chunk/createFormValidation.jsx +41 -17
  90. package/dist/_chunk/createFormValidation.jsx.map +1 -1
  91. package/dist/_chunk/createHover.js +56 -42
  92. package/dist/_chunk/createHover.js.map +1 -1
  93. package/dist/_chunk/createHover.jsx +56 -42
  94. package/dist/_chunk/createHover.jsx.map +1 -1
  95. package/dist/_chunk/createKeyboard.js +205 -0
  96. package/dist/_chunk/createKeyboard.js.map +1 -0
  97. package/dist/_chunk/createKeyboard.jsx +205 -0
  98. package/dist/_chunk/createKeyboard.jsx.map +1 -0
  99. package/dist/_chunk/createLabel.js +17 -4
  100. package/dist/_chunk/createLabel.js.map +1 -1
  101. package/dist/_chunk/createLabel.jsx +17 -4
  102. package/dist/_chunk/createLabel.jsx.map +1 -1
  103. package/dist/_chunk/createLabels.js +14 -2
  104. package/dist/_chunk/createLabels.js.map +1 -1
  105. package/dist/_chunk/createLabels.jsx +14 -2
  106. package/dist/_chunk/createLabels.jsx.map +1 -1
  107. package/dist/_chunk/createLandmark.js +19 -3
  108. package/dist/_chunk/createLandmark.js.map +1 -1
  109. package/dist/_chunk/createLandmark.jsx +19 -3
  110. package/dist/_chunk/createLandmark.jsx.map +1 -1
  111. package/dist/_chunk/createLongPress.js +105 -0
  112. package/dist/_chunk/createLongPress.js.map +1 -0
  113. package/dist/_chunk/createLongPress.jsx +105 -0
  114. package/dist/_chunk/createLongPress.jsx.map +1 -0
  115. package/dist/_chunk/createOverlay.js +220 -111
  116. package/dist/_chunk/createOverlay.js.map +1 -1
  117. package/dist/_chunk/createOverlay.jsx +220 -111
  118. package/dist/_chunk/createOverlay.jsx.map +1 -1
  119. package/dist/_chunk/createOverlayTrigger.js +58 -0
  120. package/dist/_chunk/createOverlayTrigger.js.map +1 -0
  121. package/dist/_chunk/createOverlayTrigger.jsx +58 -0
  122. package/dist/_chunk/createOverlayTrigger.jsx.map +1 -0
  123. package/dist/_chunk/createPress.js +38 -28
  124. package/dist/_chunk/createPress.js.map +1 -1
  125. package/dist/_chunk/createPress.jsx +38 -28
  126. package/dist/_chunk/createPress.jsx.map +1 -1
  127. package/dist/_chunk/createProgressBar.js +17 -4
  128. package/dist/_chunk/createProgressBar.js.map +1 -1
  129. package/dist/_chunk/createProgressBar.jsx +17 -4
  130. package/dist/_chunk/createProgressBar.jsx.map +1 -1
  131. package/dist/_chunk/createSelectableItem.js +58 -20
  132. package/dist/_chunk/createSelectableItem.js.map +1 -1
  133. package/dist/_chunk/createSelectableItem.jsx +58 -20
  134. package/dist/_chunk/createSelectableItem.jsx.map +1 -1
  135. package/dist/_chunk/createSelectableList.js +776 -0
  136. package/dist/_chunk/createSelectableList.js.map +1 -0
  137. package/dist/_chunk/createSelectableList.jsx +776 -0
  138. package/dist/_chunk/createSelectableList.jsx.map +1 -0
  139. package/dist/_chunk/createStringFormatter.js +350 -5
  140. package/dist/_chunk/createStringFormatter.js.map +1 -1
  141. package/dist/_chunk/createStringFormatter.jsx +350 -5
  142. package/dist/_chunk/createStringFormatter.jsx.map +1 -1
  143. package/dist/_chunk/createToggle.js +68 -19
  144. package/dist/_chunk/createToggle.js.map +1 -1
  145. package/dist/_chunk/createToggle.jsx +68 -19
  146. package/dist/_chunk/createToggle.jsx.map +1 -1
  147. package/dist/_chunk/createTypeSelect.js +15 -3
  148. package/dist/_chunk/createTypeSelect.js.map +1 -1
  149. package/dist/_chunk/createTypeSelect.jsx +15 -3
  150. package/dist/_chunk/createTypeSelect.jsx.map +1 -1
  151. package/dist/_chunk/{visually-hidden.js → createVisuallyHidden.js} +16 -4
  152. package/dist/_chunk/createVisuallyHidden.js.map +1 -0
  153. package/dist/_chunk/{visually-hidden.jsx → createVisuallyHidden.jsx} +16 -4
  154. package/dist/_chunk/createVisuallyHidden.jsx.map +1 -0
  155. package/dist/_chunk/datepicker.js +687 -602
  156. package/dist/_chunk/datepicker.js.map +1 -1
  157. package/dist/_chunk/datepicker.jsx +687 -602
  158. package/dist/_chunk/datepicker.jsx.map +1 -1
  159. package/dist/_chunk/dialog.js +49 -19
  160. package/dist/_chunk/dialog.js.map +1 -1
  161. package/dist/_chunk/dialog.jsx +49 -19
  162. package/dist/_chunk/dialog.jsx.map +1 -1
  163. package/dist/_chunk/disclosure.js +48 -28
  164. package/dist/_chunk/disclosure.js.map +1 -1
  165. package/dist/_chunk/disclosure.jsx +48 -28
  166. package/dist/_chunk/disclosure.jsx.map +1 -1
  167. package/dist/_chunk/dnd.js +1340 -1172
  168. package/dist/_chunk/dnd.js.map +1 -1
  169. package/dist/_chunk/dnd.jsx +1340 -1172
  170. package/dist/_chunk/dnd.jsx.map +1 -1
  171. package/dist/_chunk/dom.js +1200 -0
  172. package/dist/_chunk/dom.js.map +1 -0
  173. package/dist/_chunk/dom.jsx +1200 -0
  174. package/dist/_chunk/dom.jsx.map +1 -0
  175. package/dist/_chunk/env.js +1 -57
  176. package/dist/_chunk/env.js.map +1 -1
  177. package/dist/_chunk/env.jsx +1 -57
  178. package/dist/_chunk/env.jsx.map +1 -1
  179. package/dist/_chunk/filterDOMProps.js +32 -7
  180. package/dist/_chunk/filterDOMProps.js.map +1 -1
  181. package/dist/_chunk/filterDOMProps.jsx +32 -7
  182. package/dist/_chunk/filterDOMProps.jsx.map +1 -1
  183. package/dist/_chunk/focus.js +570 -338
  184. package/dist/_chunk/focus.js.map +1 -1
  185. package/dist/_chunk/focus.jsx +570 -338
  186. package/dist/_chunk/focus.jsx.map +1 -1
  187. package/dist/_chunk/grid.js +62 -8
  188. package/dist/_chunk/grid.js.map +1 -1
  189. package/dist/_chunk/grid.jsx +62 -8
  190. package/dist/_chunk/grid.jsx.map +1 -1
  191. package/dist/_chunk/gridlist.js +192 -53
  192. package/dist/_chunk/gridlist.js.map +1 -1
  193. package/dist/_chunk/gridlist.jsx +192 -53
  194. package/dist/_chunk/gridlist.jsx.map +1 -1
  195. package/dist/_chunk/i18n.js +68 -1
  196. package/dist/_chunk/i18n.js.map +1 -1
  197. package/dist/_chunk/i18n.jsx +68 -1
  198. package/dist/_chunk/i18n.jsx.map +1 -1
  199. package/dist/_chunk/interactions.js +38 -102
  200. package/dist/_chunk/interactions.js.map +1 -1
  201. package/dist/_chunk/interactions.jsx +38 -100
  202. package/dist/_chunk/interactions.jsx.map +1 -1
  203. package/dist/_chunk/intl.js +280 -0
  204. package/dist/_chunk/intl.js.map +1 -0
  205. package/dist/_chunk/intl.jsx +280 -0
  206. package/dist/_chunk/intl.jsx.map +1 -0
  207. package/dist/_chunk/link.js +15 -4
  208. package/dist/_chunk/link.js.map +1 -1
  209. package/dist/_chunk/link.jsx +15 -4
  210. package/dist/_chunk/link.jsx.map +1 -1
  211. package/dist/_chunk/listbox.js +99 -175
  212. package/dist/_chunk/listbox.js.map +1 -1
  213. package/dist/_chunk/listbox.jsx +99 -175
  214. package/dist/_chunk/listbox.jsx.map +1 -1
  215. package/dist/_chunk/locale.js +58 -12
  216. package/dist/_chunk/locale.js.map +1 -1
  217. package/dist/_chunk/locale.jsx +57 -11
  218. package/dist/_chunk/locale.jsx.map +1 -1
  219. package/dist/_chunk/menu.js +298 -57
  220. package/dist/_chunk/menu.js.map +1 -1
  221. package/dist/_chunk/menu.jsx +298 -57
  222. package/dist/_chunk/menu.jsx.map +1 -1
  223. package/dist/_chunk/mergeProps.js +216 -0
  224. package/dist/_chunk/mergeProps.js.map +1 -0
  225. package/dist/_chunk/mergeProps.jsx +216 -0
  226. package/dist/_chunk/mergeProps.jsx.map +1 -0
  227. package/dist/_chunk/meter.js +16 -4
  228. package/dist/_chunk/meter.js.map +1 -1
  229. package/dist/_chunk/meter.jsx +16 -4
  230. package/dist/_chunk/meter.jsx.map +1 -1
  231. package/dist/_chunk/numberfield.js +167 -22
  232. package/dist/_chunk/numberfield.js.map +1 -1
  233. package/dist/_chunk/numberfield.jsx +167 -22
  234. package/dist/_chunk/numberfield.jsx.map +1 -1
  235. package/dist/_chunk/overlays.js +87 -74
  236. package/dist/_chunk/overlays.js.map +1 -1
  237. package/dist/_chunk/overlays.jsx +71 -57
  238. package/dist/_chunk/overlays.jsx.map +1 -1
  239. package/dist/_chunk/owner.js +23 -0
  240. package/dist/_chunk/owner.js.map +1 -0
  241. package/dist/_chunk/owner.jsx +23 -0
  242. package/dist/_chunk/owner.jsx.map +1 -0
  243. package/dist/_chunk/popover.js +180 -42
  244. package/dist/_chunk/popover.js.map +1 -1
  245. package/dist/_chunk/popover.jsx +180 -42
  246. package/dist/_chunk/popover.jsx.map +1 -1
  247. package/dist/_chunk/radio.js +92 -32
  248. package/dist/_chunk/radio.js.map +1 -1
  249. package/dist/_chunk/radio.jsx +92 -32
  250. package/dist/_chunk/radio.jsx.map +1 -1
  251. package/dist/_chunk/reactivity.js.map +1 -1
  252. package/dist/_chunk/reactivity.jsx.map +1 -1
  253. package/dist/_chunk/refs.js +41 -0
  254. package/dist/_chunk/refs.js.map +1 -0
  255. package/dist/_chunk/refs.jsx +41 -0
  256. package/dist/_chunk/refs.jsx.map +1 -0
  257. package/dist/_chunk/searchfield.js +69 -3
  258. package/dist/_chunk/searchfield.js.map +1 -1
  259. package/dist/_chunk/searchfield.jsx +69 -3
  260. package/dist/_chunk/searchfield.jsx.map +1 -1
  261. package/dist/_chunk/select.js +226 -80
  262. package/dist/_chunk/select.js.map +1 -1
  263. package/dist/_chunk/select.jsx +162 -70
  264. package/dist/_chunk/select.jsx.map +1 -1
  265. package/dist/_chunk/selection.js +20 -638
  266. package/dist/_chunk/selection.js.map +1 -1
  267. package/dist/_chunk/selection.jsx +20 -638
  268. package/dist/_chunk/selection.jsx.map +1 -1
  269. package/dist/_chunk/separator.js +12 -0
  270. package/dist/_chunk/separator.js.map +1 -1
  271. package/dist/_chunk/separator.jsx +12 -0
  272. package/dist/_chunk/separator.jsx.map +1 -1
  273. package/dist/_chunk/slider.js +25 -16
  274. package/dist/_chunk/slider.js.map +1 -1
  275. package/dist/_chunk/slider.jsx +25 -16
  276. package/dist/_chunk/slider.jsx.map +1 -1
  277. package/dist/_chunk/spinbutton.js +52 -42
  278. package/dist/_chunk/spinbutton.js.map +1 -1
  279. package/dist/_chunk/spinbutton.jsx +52 -42
  280. package/dist/_chunk/spinbutton.jsx.map +1 -1
  281. package/dist/_chunk/steplist.js +14 -1
  282. package/dist/_chunk/steplist.js.map +1 -1
  283. package/dist/_chunk/steplist.jsx +14 -1
  284. package/dist/_chunk/steplist.jsx.map +1 -1
  285. package/dist/_chunk/switch.js +21 -3
  286. package/dist/_chunk/switch.js.map +1 -1
  287. package/dist/_chunk/switch.jsx +21 -3
  288. package/dist/_chunk/switch.jsx.map +1 -1
  289. package/dist/_chunk/table.js +666 -88
  290. package/dist/_chunk/table.js.map +1 -1
  291. package/dist/_chunk/table.jsx +666 -88
  292. package/dist/_chunk/table.jsx.map +1 -1
  293. package/dist/_chunk/tabs.js +115 -17
  294. package/dist/_chunk/tabs.js.map +1 -1
  295. package/dist/_chunk/tabs.jsx +115 -17
  296. package/dist/_chunk/tabs.jsx.map +1 -1
  297. package/dist/_chunk/tag.js +240 -39
  298. package/dist/_chunk/tag.js.map +1 -1
  299. package/dist/_chunk/tag.jsx +240 -39
  300. package/dist/_chunk/tag.jsx.map +1 -1
  301. package/dist/_chunk/textfield.js +83 -12
  302. package/dist/_chunk/textfield.js.map +1 -1
  303. package/dist/_chunk/textfield.jsx +83 -12
  304. package/dist/_chunk/textfield.jsx.map +1 -1
  305. package/dist/_chunk/toast.js +61 -28
  306. package/dist/_chunk/toast.js.map +1 -1
  307. package/dist/_chunk/toast.jsx +61 -28
  308. package/dist/_chunk/toast.jsx.map +1 -1
  309. package/dist/_chunk/tokenfield.js +567 -0
  310. package/dist/_chunk/tokenfield.js.map +1 -0
  311. package/dist/_chunk/tokenfield.jsx +567 -0
  312. package/dist/_chunk/tokenfield.jsx.map +1 -0
  313. package/dist/_chunk/toolbar.js +25 -8
  314. package/dist/_chunk/toolbar.js.map +1 -1
  315. package/dist/_chunk/toolbar.jsx +25 -8
  316. package/dist/_chunk/toolbar.jsx.map +1 -1
  317. package/dist/_chunk/tooltip.js +379 -6
  318. package/dist/_chunk/tooltip.js.map +1 -1
  319. package/dist/_chunk/tooltip.jsx +379 -6
  320. package/dist/_chunk/tooltip.jsx.map +1 -1
  321. package/dist/_chunk/tree.js +280 -69
  322. package/dist/_chunk/tree.js.map +1 -1
  323. package/dist/_chunk/tree.jsx +280 -69
  324. package/dist/_chunk/tree.jsx.map +1 -1
  325. package/dist/_chunk/utils.js +192 -150
  326. package/dist/_chunk/utils.js.map +1 -1
  327. package/dist/_chunk/utils.jsx +192 -150
  328. package/dist/_chunk/utils.jsx.map +1 -1
  329. package/dist/_chunk/virtualFocus.js +54 -0
  330. package/dist/_chunk/virtualFocus.js.map +1 -0
  331. package/dist/_chunk/virtualFocus.jsx +54 -0
  332. package/dist/_chunk/virtualFocus.jsx.map +1 -0
  333. package/dist/_chunk/virtualizer.js +202 -0
  334. package/dist/_chunk/virtualizer.js.map +1 -0
  335. package/dist/_chunk/virtualizer.jsx +202 -0
  336. package/dist/_chunk/virtualizer.jsx.map +1 -0
  337. package/dist/actiongroup/createActionGroup.d.ts +2 -1
  338. package/dist/actiongroup/createActionGroup.d.ts.map +1 -1
  339. package/dist/autocomplete/createAutocomplete.d.ts +1 -9
  340. package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
  341. package/dist/autocomplete/intl/index.d.ts +13 -0
  342. package/dist/autocomplete/intl/index.d.ts.map +1 -0
  343. package/dist/breadcrumbs/createBreadcrumbs.d.ts +3 -1
  344. package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
  345. package/dist/breadcrumbs/intl/index.d.ts +13 -0
  346. package/dist/breadcrumbs/intl/index.d.ts.map +1 -0
  347. package/dist/button/createButton.d.ts.map +1 -1
  348. package/dist/button/createToggleButton.d.ts.map +1 -1
  349. package/dist/button/createToggleButtonGroup.d.ts +1 -1
  350. package/dist/button/createToggleButtonGroup.d.ts.map +1 -1
  351. package/dist/button/types.d.ts +14 -0
  352. package/dist/button/types.d.ts.map +1 -1
  353. package/dist/calendar/createCalendar.d.ts +1 -7
  354. package/dist/calendar/createCalendar.d.ts.map +1 -1
  355. package/dist/calendar/createCalendarCell.d.ts +0 -6
  356. package/dist/calendar/createCalendarCell.d.ts.map +1 -1
  357. package/dist/calendar/createCalendarGrid.d.ts +1 -7
  358. package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
  359. package/dist/calendar/createCalendarMonthPicker.d.ts +0 -8
  360. package/dist/calendar/createCalendarMonthPicker.d.ts.map +1 -1
  361. package/dist/calendar/createCalendarYearPicker.d.ts +0 -8
  362. package/dist/calendar/createCalendarYearPicker.d.ts.map +1 -1
  363. package/dist/calendar/createRangeCalendar.d.ts +13 -7
  364. package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
  365. package/dist/calendar/createRangeCalendarCell.d.ts +2 -6
  366. package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
  367. package/dist/calendar/intl/index.d.ts.map +1 -1
  368. package/dist/calendar/utils.d.ts.map +1 -1
  369. package/dist/checkbox/createCheckbox.d.ts +2 -1
  370. package/dist/checkbox/createCheckbox.d.ts.map +1 -1
  371. package/dist/checkbox/createCheckboxGroup.d.ts +1 -9
  372. package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
  373. package/dist/checkbox/createCheckboxGroupItem.d.ts +0 -8
  374. package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
  375. package/dist/collections/index.d.ts +1 -1
  376. package/dist/collections/index.d.ts.map +1 -1
  377. package/dist/collections/index.js +18 -2
  378. package/dist/collections/index.js.map +1 -1
  379. package/dist/collections/index.jsx +18 -2
  380. package/dist/collections/index.jsx.map +1 -1
  381. package/dist/color/createColorArea.d.ts +2 -7
  382. package/dist/color/createColorArea.d.ts.map +1 -1
  383. package/dist/color/createColorField.d.ts +2 -7
  384. package/dist/color/createColorField.d.ts.map +1 -1
  385. package/dist/color/createColorSlider.d.ts +1 -6
  386. package/dist/color/createColorSlider.d.ts.map +1 -1
  387. package/dist/color/createColorSwatch.d.ts +1 -6
  388. package/dist/color/createColorSwatch.d.ts.map +1 -1
  389. package/dist/color/createColorWheel.d.ts +1 -6
  390. package/dist/color/createColorWheel.d.ts.map +1 -1
  391. package/dist/color/intl/index.d.ts.map +1 -1
  392. package/dist/color/types.d.ts +47 -1
  393. package/dist/color/types.d.ts.map +1 -1
  394. package/dist/combobox/createComboBox.d.ts +17 -8
  395. package/dist/combobox/createComboBox.d.ts.map +1 -1
  396. package/dist/combobox/intl/generated-locales.d.ts +3 -0
  397. package/dist/combobox/intl/generated-locales.d.ts.map +1 -1
  398. package/dist/combobox/intl/index.d.ts +3 -2
  399. package/dist/combobox/intl/index.d.ts.map +1 -1
  400. package/dist/datepicker/createDateField.d.ts +0 -10
  401. package/dist/datepicker/createDateField.d.ts.map +1 -1
  402. package/dist/datepicker/createDatePicker.d.ts +0 -16
  403. package/dist/datepicker/createDatePicker.d.ts.map +1 -1
  404. package/dist/datepicker/createDatePickerGroup.d.ts +1 -1
  405. package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -1
  406. package/dist/datepicker/createDateRangePicker.d.ts +0 -21
  407. package/dist/datepicker/createDateRangePicker.d.ts.map +1 -1
  408. package/dist/datepicker/createDateSegment.d.ts +0 -9
  409. package/dist/datepicker/createDateSegment.d.ts.map +1 -1
  410. package/dist/datepicker/createDisplayNames.d.ts +1 -9
  411. package/dist/datepicker/createDisplayNames.d.ts.map +1 -1
  412. package/dist/datepicker/createTimeField.d.ts.map +1 -1
  413. package/dist/datepicker/intl.d.ts.map +1 -1
  414. package/dist/dialog/createDialog.d.ts +2 -4
  415. package/dist/dialog/createDialog.d.ts.map +1 -1
  416. package/dist/dialog/types.d.ts +14 -0
  417. package/dist/dialog/types.d.ts.map +1 -1
  418. package/dist/disclosure/createDisclosure.d.ts +1 -8
  419. package/dist/disclosure/createDisclosure.d.ts.map +1 -1
  420. package/dist/disclosure/createDisclosureGroup.d.ts +3 -4
  421. package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
  422. package/dist/dnd/DragManager.d.ts +1 -16
  423. package/dist/dnd/DragManager.d.ts.map +1 -1
  424. package/dist/dnd/DropTargetKeyboardNavigation.d.ts +2 -2
  425. package/dist/dnd/createDrag.d.ts +1 -7
  426. package/dist/dnd/createDrag.d.ts.map +1 -1
  427. package/dist/dnd/createDraggableCollection.d.ts +1 -7
  428. package/dist/dnd/createDraggableCollection.d.ts.map +1 -1
  429. package/dist/dnd/createDraggableItem.d.ts +2 -7
  430. package/dist/dnd/createDraggableItem.d.ts.map +1 -1
  431. package/dist/dnd/createDrop.d.ts +1 -7
  432. package/dist/dnd/createDrop.d.ts.map +1 -1
  433. package/dist/dnd/createDropIndicator.d.ts +27 -0
  434. package/dist/dnd/createDropIndicator.d.ts.map +1 -0
  435. package/dist/dnd/createDroppableCollection.d.ts +6 -8
  436. package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
  437. package/dist/dnd/createDroppableItem.d.ts +12 -10
  438. package/dist/dnd/createDroppableItem.d.ts.map +1 -1
  439. package/dist/dnd/index.d.ts +3 -1
  440. package/dist/dnd/index.d.ts.map +1 -1
  441. package/dist/dnd/index.js +2 -2
  442. package/dist/dnd/index.jsx +2 -2
  443. package/dist/dnd/intl/index.d.ts +6 -4
  444. package/dist/dnd/intl/index.d.ts.map +1 -1
  445. package/dist/dnd/types.d.ts +20 -1
  446. package/dist/dnd/types.d.ts.map +1 -1
  447. package/dist/dnd/utils.d.ts +4 -0
  448. package/dist/dnd/utils.d.ts.map +1 -1
  449. package/dist/focus/FocusScope.d.ts +9 -5
  450. package/dist/focus/FocusScope.d.ts.map +1 -1
  451. package/dist/focus/createAutoFocus.d.ts +3 -0
  452. package/dist/focus/createAutoFocus.d.ts.map +1 -1
  453. package/dist/focus/createFocusRestore.d.ts +3 -0
  454. package/dist/focus/createFocusRestore.d.ts.map +1 -1
  455. package/dist/focus/createHasTabbableChild.d.ts +13 -0
  456. package/dist/focus/createHasTabbableChild.d.ts.map +1 -0
  457. package/dist/focus/createVirtualFocus.d.ts +4 -1
  458. package/dist/focus/createVirtualFocus.d.ts.map +1 -1
  459. package/dist/focus/index.js +3 -2
  460. package/dist/focus/index.jsx +3 -2
  461. package/dist/focus/virtualFocus.d.ts +1 -1
  462. package/dist/form/createFormReset.d.ts +1 -7
  463. package/dist/form/createFormReset.d.ts.map +1 -1
  464. package/dist/form/createFormValidation.d.ts +1 -9
  465. package/dist/form/createFormValidation.d.ts.map +1 -1
  466. package/dist/grid/GridKeyboardDelegate.d.ts.map +1 -1
  467. package/dist/grid/createGrid.d.ts +1 -5
  468. package/dist/grid/createGrid.d.ts.map +1 -1
  469. package/dist/grid/createGridCell.d.ts +1 -5
  470. package/dist/grid/createGridCell.d.ts.map +1 -1
  471. package/dist/grid/createGridRow.d.ts +1 -5
  472. package/dist/grid/createGridRow.d.ts.map +1 -1
  473. package/dist/grid/index.d.ts +2 -2
  474. package/dist/grid/intl/index.d.ts +18 -0
  475. package/dist/grid/intl/index.d.ts.map +1 -0
  476. package/dist/grid/types.d.ts +25 -2
  477. package/dist/grid/types.d.ts.map +1 -1
  478. package/dist/gridlist/createGridList.d.ts +3 -5
  479. package/dist/gridlist/createGridList.d.ts.map +1 -1
  480. package/dist/gridlist/createGridListItem.d.ts +1 -5
  481. package/dist/gridlist/createGridListItem.d.ts.map +1 -1
  482. package/dist/gridlist/createGridListSection.d.ts +0 -4
  483. package/dist/gridlist/createGridListSection.d.ts.map +1 -1
  484. package/dist/gridlist/createGridListSelectionCheckbox.d.ts +1 -5
  485. package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
  486. package/dist/gridlist/intl/index.d.ts +14 -0
  487. package/dist/gridlist/intl/index.d.ts.map +1 -0
  488. package/dist/gridlist/types.d.ts +56 -2
  489. package/dist/gridlist/types.d.ts.map +1 -1
  490. package/dist/i18n/compileIcu.d.ts +24 -0
  491. package/dist/i18n/compileIcu.d.ts.map +1 -0
  492. package/dist/i18n/createCollator.d.ts +0 -7
  493. package/dist/i18n/createCollator.d.ts.map +1 -1
  494. package/dist/i18n/createDateFormatter.d.ts +0 -7
  495. package/dist/i18n/createDateFormatter.d.ts.map +1 -1
  496. package/dist/i18n/createFilter.d.ts +0 -7
  497. package/dist/i18n/createFilter.d.ts.map +1 -1
  498. package/dist/i18n/createListFormatter.d.ts +9 -0
  499. package/dist/i18n/createListFormatter.d.ts.map +1 -0
  500. package/dist/i18n/createNumberFormatter.d.ts +0 -7
  501. package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
  502. package/dist/i18n/createStringFormatter.d.ts +14 -4
  503. package/dist/i18n/createStringFormatter.d.ts.map +1 -1
  504. package/dist/i18n/index.d.ts +1 -0
  505. package/dist/i18n/index.d.ts.map +1 -1
  506. package/dist/i18n/index.js +2 -2
  507. package/dist/i18n/index.jsx +2 -2
  508. package/dist/i18n/locale.d.ts +2 -8
  509. package/dist/i18n/locale.d.ts.map +1 -1
  510. package/dist/i18n/utils.d.ts +0 -7
  511. package/dist/i18n/utils.d.ts.map +1 -1
  512. package/dist/index.d.ts +10 -7
  513. package/dist/index.d.ts.map +1 -1
  514. package/dist/index.js +27 -21
  515. package/dist/index.jsx +27 -21
  516. package/dist/interactions/FocusableProvider.d.ts +3 -2
  517. package/dist/interactions/FocusableProvider.d.ts.map +1 -1
  518. package/dist/interactions/PressEvent.d.ts +2 -1
  519. package/dist/interactions/PressEvent.d.ts.map +1 -1
  520. package/dist/interactions/createContextMenu.d.ts +24 -0
  521. package/dist/interactions/createContextMenu.d.ts.map +1 -0
  522. package/dist/interactions/createFocus.d.ts +3 -2
  523. package/dist/interactions/createFocus.d.ts.map +1 -1
  524. package/dist/interactions/createFocusRing.d.ts +2 -1
  525. package/dist/interactions/createFocusRing.d.ts.map +1 -1
  526. package/dist/interactions/createFocusWithin.d.ts +1 -6
  527. package/dist/interactions/createFocusWithin.d.ts.map +1 -1
  528. package/dist/interactions/createFocusable.d.ts +2 -6
  529. package/dist/interactions/createFocusable.d.ts.map +1 -1
  530. package/dist/interactions/createHover.d.ts +3 -10
  531. package/dist/interactions/createHover.d.ts.map +1 -1
  532. package/dist/interactions/createInteractionModality.d.ts +12 -10
  533. package/dist/interactions/createInteractionModality.d.ts.map +1 -1
  534. package/dist/interactions/createKeyboard.d.ts +12 -3
  535. package/dist/interactions/createKeyboard.d.ts.map +1 -1
  536. package/dist/interactions/createKeyboardShortcutHandler.d.ts +24 -0
  537. package/dist/interactions/createKeyboardShortcutHandler.d.ts.map +1 -0
  538. package/dist/interactions/createLongPress.d.ts +4 -7
  539. package/dist/interactions/createLongPress.d.ts.map +1 -1
  540. package/dist/interactions/createMove.d.ts +1 -6
  541. package/dist/interactions/createMove.d.ts.map +1 -1
  542. package/dist/interactions/createPress.d.ts +2 -7
  543. package/dist/interactions/createPress.d.ts.map +1 -1
  544. package/dist/interactions/index.d.ts +1 -1
  545. package/dist/interactions/index.d.ts.map +1 -1
  546. package/dist/interactions/index.js +5 -3
  547. package/dist/interactions/index.jsx +5 -3
  548. package/dist/label/createField.d.ts +7 -1
  549. package/dist/label/createField.d.ts.map +1 -1
  550. package/dist/label/createLabel.d.ts +1 -1
  551. package/dist/label/createLabel.d.ts.map +1 -1
  552. package/dist/label/createLabels.d.ts +0 -7
  553. package/dist/label/createLabels.d.ts.map +1 -1
  554. package/dist/landmark/createLandmark.d.ts +4 -1
  555. package/dist/landmark/createLandmark.d.ts.map +1 -1
  556. package/dist/link/createLink.d.ts +1 -1
  557. package/dist/link/createLink.d.ts.map +1 -1
  558. package/dist/listbox/createListBox.d.ts +8 -7
  559. package/dist/listbox/createListBox.d.ts.map +1 -1
  560. package/dist/listbox/createOption.d.ts +7 -1
  561. package/dist/listbox/createOption.d.ts.map +1 -1
  562. package/dist/live-announcer/announce.d.ts +2 -13
  563. package/dist/live-announcer/announce.d.ts.map +1 -1
  564. package/dist/menu/createMenu.d.ts +3 -7
  565. package/dist/menu/createMenu.d.ts.map +1 -1
  566. package/dist/menu/createMenuItem.d.ts +2 -1
  567. package/dist/menu/createMenuItem.d.ts.map +1 -1
  568. package/dist/menu/createMenuTrigger.d.ts +24 -20
  569. package/dist/menu/createMenuTrigger.d.ts.map +1 -1
  570. package/dist/menu/index.d.ts +1 -1
  571. package/dist/menu/index.d.ts.map +1 -1
  572. package/dist/menu/intl/index.d.ts +4 -0
  573. package/dist/menu/intl/index.d.ts.map +1 -0
  574. package/dist/meter/createMeter.d.ts +2 -1
  575. package/dist/meter/createMeter.d.ts.map +1 -1
  576. package/dist/numberfield/createNumberField.d.ts +29 -6
  577. package/dist/numberfield/createNumberField.d.ts.map +1 -1
  578. package/dist/overlays/ariaHideOutside.d.ts +0 -4
  579. package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
  580. package/dist/overlays/createInteractOutside.d.ts +2 -5
  581. package/dist/overlays/createInteractOutside.d.ts.map +1 -1
  582. package/dist/overlays/createModal.d.ts +3 -6
  583. package/dist/overlays/createModal.d.ts.map +1 -1
  584. package/dist/overlays/createOverlay.d.ts +1 -5
  585. package/dist/overlays/createOverlay.d.ts.map +1 -1
  586. package/dist/overlays/createOverlayTrigger.d.ts +2 -6
  587. package/dist/overlays/createOverlayTrigger.d.ts.map +1 -1
  588. package/dist/overlays/createPreventScroll.d.ts +0 -4
  589. package/dist/overlays/createPreventScroll.d.ts.map +1 -1
  590. package/dist/overlays/index.d.ts +1 -0
  591. package/dist/overlays/index.d.ts.map +1 -1
  592. package/dist/overlays/index.js +3 -2
  593. package/dist/overlays/index.jsx +3 -2
  594. package/dist/overlays/intl/index.d.ts +13 -0
  595. package/dist/overlays/intl/index.d.ts.map +1 -0
  596. package/dist/popover/calculatePosition.d.ts +1 -1
  597. package/dist/popover/calculatePosition.d.ts.map +1 -1
  598. package/dist/popover/createOverlayPosition.d.ts +1 -7
  599. package/dist/popover/createOverlayPosition.d.ts.map +1 -1
  600. package/dist/popover/createPopover.d.ts +6 -7
  601. package/dist/popover/createPopover.d.ts.map +1 -1
  602. package/dist/progress/createProgressBar.d.ts +2 -10
  603. package/dist/progress/createProgressBar.d.ts.map +1 -1
  604. package/dist/radio/createRadio.d.ts +8 -1
  605. package/dist/radio/createRadio.d.ts.map +1 -1
  606. package/dist/radio/createRadioGroup.d.ts +1 -9
  607. package/dist/radio/createRadioGroup.d.ts.map +1 -1
  608. package/dist/searchfield/createSearchField.d.ts +1 -1
  609. package/dist/searchfield/createSearchField.d.ts.map +1 -1
  610. package/dist/searchfield/intl/index.d.ts +13 -0
  611. package/dist/searchfield/intl/index.d.ts.map +1 -0
  612. package/dist/select/createHiddenSelect.d.ts +3 -10
  613. package/dist/select/createHiddenSelect.d.ts.map +1 -1
  614. package/dist/select/createSelect.d.ts +10 -6
  615. package/dist/select/createSelect.d.ts.map +1 -1
  616. package/dist/selection/DOMLayoutDelegate.d.ts.map +1 -1
  617. package/dist/selection/ListKeyboardDelegate.d.ts +2 -1
  618. package/dist/selection/ListKeyboardDelegate.d.ts.map +1 -1
  619. package/dist/selection/constants.d.ts.map +1 -1
  620. package/dist/selection/createCollectionRowInteraction.d.ts +12 -1
  621. package/dist/selection/createCollectionRowInteraction.d.ts.map +1 -1
  622. package/dist/selection/createScrollIntoViewOnFocus.d.ts +0 -11
  623. package/dist/selection/createScrollIntoViewOnFocus.d.ts.map +1 -1
  624. package/dist/selection/createSelectableCollection.d.ts +1 -23
  625. package/dist/selection/createSelectableCollection.d.ts.map +1 -1
  626. package/dist/selection/createSelectableItem.d.ts +2 -29
  627. package/dist/selection/createSelectableItem.d.ts.map +1 -1
  628. package/dist/selection/createSelectableList.d.ts +4 -17
  629. package/dist/selection/createSelectableList.d.ts.map +1 -1
  630. package/dist/selection/createTypeSelect.d.ts +2 -8
  631. package/dist/selection/createTypeSelect.d.ts.map +1 -1
  632. package/dist/selection/index.js +3 -2
  633. package/dist/selection/index.jsx +3 -2
  634. package/dist/selection/selectItem.d.ts.map +1 -1
  635. package/dist/selection/utils.d.ts +1 -1
  636. package/dist/selection/utils.d.ts.map +1 -1
  637. package/dist/separator/createSeparator.d.ts +3 -1
  638. package/dist/separator/createSeparator.d.ts.map +1 -1
  639. package/dist/slider/createSlider.d.ts +1 -6
  640. package/dist/slider/createSlider.d.ts.map +1 -1
  641. package/dist/spinbutton/createSpinButton.d.ts +0 -9
  642. package/dist/spinbutton/createSpinButton.d.ts.map +1 -1
  643. package/dist/spinbutton/index.d.ts +2 -2
  644. package/dist/spinbutton/index.d.ts.map +1 -1
  645. package/dist/spinbutton/intl.d.ts.map +1 -1
  646. package/dist/ssr/index.d.ts +3 -9
  647. package/dist/ssr/index.d.ts.map +1 -1
  648. package/dist/ssr/index.js +47 -26
  649. package/dist/ssr/index.js.map +1 -1
  650. package/dist/ssr/index.jsx +47 -26
  651. package/dist/ssr/index.jsx.map +1 -1
  652. package/dist/steplist/createStepList.d.ts +1 -1
  653. package/dist/steplist/createStepList.d.ts.map +1 -1
  654. package/dist/switch/createSwitch.d.ts +2 -1
  655. package/dist/switch/createSwitch.d.ts.map +1 -1
  656. package/dist/table/createTable.d.ts +1 -5
  657. package/dist/table/createTable.d.ts.map +1 -1
  658. package/dist/table/createTableCell.d.ts +1 -5
  659. package/dist/table/createTableCell.d.ts.map +1 -1
  660. package/dist/table/createTableColumnHeader.d.ts +1 -5
  661. package/dist/table/createTableColumnHeader.d.ts.map +1 -1
  662. package/dist/table/createTableColumnResize.d.ts +2 -8
  663. package/dist/table/createTableColumnResize.d.ts.map +1 -1
  664. package/dist/table/createTableHeaderRow.d.ts +1 -5
  665. package/dist/table/createTableHeaderRow.d.ts.map +1 -1
  666. package/dist/table/createTableRow.d.ts +1 -5
  667. package/dist/table/createTableRow.d.ts.map +1 -1
  668. package/dist/table/createTableRowGroup.d.ts +1 -5
  669. package/dist/table/createTableRowGroup.d.ts.map +1 -1
  670. package/dist/table/createTableSelectAllCheckbox.d.ts +1 -5
  671. package/dist/table/createTableSelectAllCheckbox.d.ts.map +1 -1
  672. package/dist/table/createTableSelectionCheckbox.d.ts +1 -5
  673. package/dist/table/createTableSelectionCheckbox.d.ts.map +1 -1
  674. package/dist/table/index.d.ts +2 -2
  675. package/dist/table/intl/index.d.ts +23 -0
  676. package/dist/table/intl/index.d.ts.map +1 -0
  677. package/dist/table/types.d.ts +44 -2
  678. package/dist/table/types.d.ts.map +1 -1
  679. package/dist/table/utils.d.ts.map +1 -1
  680. package/dist/tabs/createTabs.d.ts +5 -9
  681. package/dist/tabs/createTabs.d.ts.map +1 -1
  682. package/dist/tag/createTag.d.ts +4 -8
  683. package/dist/tag/createTag.d.ts.map +1 -1
  684. package/dist/tag/createTagGroup.d.ts +0 -9
  685. package/dist/tag/createTagGroup.d.ts.map +1 -1
  686. package/dist/tag/intl/index.d.ts +14 -0
  687. package/dist/tag/intl/index.d.ts.map +1 -0
  688. package/dist/textfield/createTextField.d.ts +6 -8
  689. package/dist/textfield/createTextField.d.ts.map +1 -1
  690. package/dist/toast/createToast.d.ts +1 -8
  691. package/dist/toast/createToast.d.ts.map +1 -1
  692. package/dist/toast/createToastRegion.d.ts +7 -18
  693. package/dist/toast/createToastRegion.d.ts.map +1 -1
  694. package/dist/toast/intl/index.d.ts +14 -0
  695. package/dist/toast/intl/index.d.ts.map +1 -0
  696. package/dist/toggle/createToggle.d.ts +8 -1
  697. package/dist/toggle/createToggle.d.ts.map +1 -1
  698. package/dist/tokenfield/createToken.d.ts +15 -0
  699. package/dist/tokenfield/createToken.d.ts.map +1 -0
  700. package/dist/tokenfield/createTokenField.d.ts +52 -0
  701. package/dist/tokenfield/createTokenField.d.ts.map +1 -0
  702. package/dist/tokenfield/index.d.ts +3 -0
  703. package/dist/tokenfield/index.d.ts.map +1 -0
  704. package/dist/tokenfield/index.js +2 -0
  705. package/dist/tokenfield/index.jsx +2 -0
  706. package/dist/toolbar/createToolbar.d.ts +1 -1
  707. package/dist/toolbar/createToolbar.d.ts.map +1 -1
  708. package/dist/tooltip/createPreviewTrigger.d.ts +23 -0
  709. package/dist/tooltip/createPreviewTrigger.d.ts.map +1 -0
  710. package/dist/tooltip/createSafeArea.d.ts +20 -0
  711. package/dist/tooltip/createSafeArea.d.ts.map +1 -0
  712. package/dist/tooltip/createTooltip.d.ts +1 -1
  713. package/dist/tooltip/createTooltip.d.ts.map +1 -1
  714. package/dist/tooltip/createTooltipTrigger.d.ts +1 -9
  715. package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
  716. package/dist/tooltip/index.d.ts +2 -0
  717. package/dist/tooltip/index.d.ts.map +1 -1
  718. package/dist/tooltip/index.js +2 -2
  719. package/dist/tooltip/index.jsx +2 -2
  720. package/dist/tooltip/intl/index.d.ts +4 -0
  721. package/dist/tooltip/intl/index.d.ts.map +1 -0
  722. package/dist/tree/createTree.d.ts +1 -5
  723. package/dist/tree/createTree.d.ts.map +1 -1
  724. package/dist/tree/createTreeItem.d.ts +1 -5
  725. package/dist/tree/createTreeItem.d.ts.map +1 -1
  726. package/dist/tree/createTreeSelectionCheckbox.d.ts +1 -5
  727. package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
  728. package/dist/tree/intl/index.d.ts +14 -0
  729. package/dist/tree/intl/index.d.ts.map +1 -0
  730. package/dist/tree/types.d.ts +35 -2
  731. package/dist/tree/types.d.ts.map +1 -1
  732. package/dist/utils/ShadowTreeWalker.d.ts +30 -0
  733. package/dist/utils/ShadowTreeWalker.d.ts.map +1 -0
  734. package/dist/utils/animation.d.ts +1 -29
  735. package/dist/utils/animation.d.ts.map +1 -1
  736. package/dist/utils/capture.d.ts +14 -0
  737. package/dist/utils/capture.d.ts.map +1 -0
  738. package/dist/utils/createDescription.d.ts +1 -25
  739. package/dist/utils/createDescription.d.ts.map +1 -1
  740. package/dist/utils/dom.d.ts +45 -11
  741. package/dist/utils/dom.d.ts.map +1 -1
  742. package/dist/utils/domAttrs.d.ts +16 -0
  743. package/dist/utils/domAttrs.d.ts.map +1 -0
  744. package/dist/utils/env.d.ts +2 -0
  745. package/dist/utils/env.d.ts.map +1 -1
  746. package/dist/utils/events.d.ts +0 -4
  747. package/dist/utils/events.d.ts.map +1 -1
  748. package/dist/utils/filterDOMProps.d.ts +0 -6
  749. package/dist/utils/filterDOMProps.d.ts.map +1 -1
  750. package/dist/utils/focus.d.ts +19 -6
  751. package/dist/utils/focus.d.ts.map +1 -1
  752. package/dist/utils/geometry.d.ts +1 -1
  753. package/dist/utils/geometry.d.ts.map +1 -1
  754. package/dist/utils/getMetaValue.d.ts +13 -0
  755. package/dist/utils/getMetaValue.d.ts.map +1 -0
  756. package/dist/utils/getNonce.d.ts +9 -0
  757. package/dist/utils/getNonce.d.ts.map +1 -0
  758. package/dist/utils/globalListeners.d.ts +0 -6
  759. package/dist/utils/globalListeners.d.ts.map +1 -1
  760. package/dist/utils/index.d.ts +6 -1
  761. package/dist/utils/index.d.ts.map +1 -1
  762. package/dist/utils/index.js +7 -4
  763. package/dist/utils/index.jsx +7 -4
  764. package/dist/utils/keyboard.d.ts +0 -4
  765. package/dist/utils/keyboard.d.ts.map +1 -1
  766. package/dist/utils/mergeProps.d.ts +5 -2
  767. package/dist/utils/mergeProps.d.ts.map +1 -1
  768. package/dist/utils/owner.d.ts +14 -0
  769. package/dist/utils/owner.d.ts.map +1 -0
  770. package/dist/utils/platform.d.ts +0 -4
  771. package/dist/utils/platform.d.ts.map +1 -1
  772. package/dist/utils/reactivity.d.ts +2 -0
  773. package/dist/utils/reactivity.d.ts.map +1 -1
  774. package/dist/utils/refs.d.ts +20 -0
  775. package/dist/utils/refs.d.ts.map +1 -0
  776. package/dist/utils/runAfterTransition.d.ts +2 -0
  777. package/dist/utils/runAfterTransition.d.ts.map +1 -0
  778. package/dist/utils/scrollIntoView.d.ts +0 -4
  779. package/dist/utils/scrollIntoView.d.ts.map +1 -1
  780. package/dist/utils/splitProps.d.ts +17 -0
  781. package/dist/utils/splitProps.d.ts.map +1 -0
  782. package/dist/utils/textSelection.d.ts +0 -8
  783. package/dist/utils/textSelection.d.ts.map +1 -1
  784. package/dist/virtualizer/ScrollView.d.ts +38 -0
  785. package/dist/virtualizer/ScrollView.d.ts.map +1 -0
  786. package/dist/virtualizer/index.d.ts +3 -0
  787. package/dist/virtualizer/index.d.ts.map +1 -0
  788. package/dist/virtualizer/index.js +2 -0
  789. package/dist/virtualizer/index.jsx +2 -0
  790. package/dist/virtualizer/utils.d.ts +10 -0
  791. package/dist/virtualizer/utils.d.ts.map +1 -0
  792. package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -9
  793. package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
  794. package/dist/visually-hidden/index.js +1 -1
  795. package/dist/visually-hidden/index.jsx +1 -1
  796. package/package.json +30 -11
  797. package/src/actiongroup/createActionGroup.ts +49 -27
  798. package/src/autocomplete/createAutocomplete.ts +32 -5
  799. package/src/autocomplete/intl/ar-AE.json +3 -0
  800. package/src/autocomplete/intl/bg-BG.json +3 -0
  801. package/src/autocomplete/intl/cs-CZ.json +3 -0
  802. package/src/autocomplete/intl/da-DK.json +3 -0
  803. package/src/autocomplete/intl/de-DE.json +3 -0
  804. package/src/autocomplete/intl/el-GR.json +3 -0
  805. package/src/autocomplete/intl/en-US.json +3 -0
  806. package/src/autocomplete/intl/es-ES.json +3 -0
  807. package/src/autocomplete/intl/et-EE.json +3 -0
  808. package/src/autocomplete/intl/fi-FI.json +3 -0
  809. package/src/autocomplete/intl/fr-FR.json +3 -0
  810. package/src/autocomplete/intl/he-IL.json +3 -0
  811. package/src/autocomplete/intl/hr-HR.json +3 -0
  812. package/src/autocomplete/intl/hu-HU.json +3 -0
  813. package/src/autocomplete/intl/index.ts +122 -0
  814. package/src/autocomplete/intl/it-IT.json +3 -0
  815. package/src/autocomplete/intl/ja-JP.json +3 -0
  816. package/src/autocomplete/intl/ko-KR.json +3 -0
  817. package/src/autocomplete/intl/lt-LT.json +3 -0
  818. package/src/autocomplete/intl/lv-LV.json +3 -0
  819. package/src/autocomplete/intl/nb-NO.json +3 -0
  820. package/src/autocomplete/intl/nl-NL.json +3 -0
  821. package/src/autocomplete/intl/pl-PL.json +3 -0
  822. package/src/autocomplete/intl/pt-BR.json +3 -0
  823. package/src/autocomplete/intl/pt-PT.json +3 -0
  824. package/src/autocomplete/intl/ro-RO.json +3 -0
  825. package/src/autocomplete/intl/ru-RU.json +3 -0
  826. package/src/autocomplete/intl/sk-SK.json +3 -0
  827. package/src/autocomplete/intl/sl-SI.json +3 -0
  828. package/src/autocomplete/intl/sr-SP.json +3 -0
  829. package/src/autocomplete/intl/sv-SE.json +3 -0
  830. package/src/autocomplete/intl/tr-TR.json +3 -0
  831. package/src/autocomplete/intl/uk-UA.json +3 -0
  832. package/src/autocomplete/intl/zh-CN.json +3 -0
  833. package/src/autocomplete/intl/zh-TW.json +3 -0
  834. package/src/breadcrumbs/createBreadcrumbs.ts +18 -1
  835. package/src/breadcrumbs/intl/ar-AE.json +3 -0
  836. package/src/breadcrumbs/intl/bg-BG.json +3 -0
  837. package/src/breadcrumbs/intl/cs-CZ.json +3 -0
  838. package/src/breadcrumbs/intl/da-DK.json +3 -0
  839. package/src/breadcrumbs/intl/de-DE.json +3 -0
  840. package/src/breadcrumbs/intl/el-GR.json +3 -0
  841. package/src/breadcrumbs/intl/en-US.json +3 -0
  842. package/src/breadcrumbs/intl/es-ES.json +3 -0
  843. package/src/breadcrumbs/intl/et-EE.json +3 -0
  844. package/src/breadcrumbs/intl/fi-FI.json +3 -0
  845. package/src/breadcrumbs/intl/fr-FR.json +3 -0
  846. package/src/breadcrumbs/intl/he-IL.json +3 -0
  847. package/src/breadcrumbs/intl/hr-HR.json +3 -0
  848. package/src/breadcrumbs/intl/hu-HU.json +3 -0
  849. package/src/breadcrumbs/intl/index.ts +122 -0
  850. package/src/breadcrumbs/intl/it-IT.json +3 -0
  851. package/src/breadcrumbs/intl/ja-JP.json +3 -0
  852. package/src/breadcrumbs/intl/ko-KR.json +3 -0
  853. package/src/breadcrumbs/intl/lt-LT.json +3 -0
  854. package/src/breadcrumbs/intl/lv-LV.json +3 -0
  855. package/src/breadcrumbs/intl/nb-NO.json +3 -0
  856. package/src/breadcrumbs/intl/nl-NL.json +3 -0
  857. package/src/breadcrumbs/intl/pl-PL.json +3 -0
  858. package/src/breadcrumbs/intl/pt-BR.json +3 -0
  859. package/src/breadcrumbs/intl/pt-PT.json +3 -0
  860. package/src/breadcrumbs/intl/ro-RO.json +3 -0
  861. package/src/breadcrumbs/intl/ru-RU.json +3 -0
  862. package/src/breadcrumbs/intl/sk-SK.json +3 -0
  863. package/src/breadcrumbs/intl/sl-SI.json +3 -0
  864. package/src/breadcrumbs/intl/sr-SP.json +3 -0
  865. package/src/breadcrumbs/intl/sv-SE.json +3 -0
  866. package/src/breadcrumbs/intl/tr-TR.json +3 -0
  867. package/src/breadcrumbs/intl/uk-UA.json +3 -0
  868. package/src/breadcrumbs/intl/zh-CN.json +3 -0
  869. package/src/breadcrumbs/intl/zh-TW.json +3 -0
  870. package/src/button/createButton.ts +15 -1
  871. package/src/button/createToggleButton.ts +18 -5
  872. package/src/button/createToggleButtonGroup.ts +23 -8
  873. package/src/button/types.ts +16 -0
  874. package/src/calendar/createCalendar.ts +22 -3
  875. package/src/calendar/createCalendarCell.ts +104 -15
  876. package/src/calendar/createCalendarGrid.ts +37 -13
  877. package/src/calendar/createCalendarMonthPicker.ts +14 -0
  878. package/src/calendar/createCalendarYearPicker.ts +14 -0
  879. package/src/calendar/createRangeCalendar.ts +124 -1
  880. package/src/calendar/createRangeCalendarCell.ts +179 -40
  881. package/src/calendar/intl/index.ts +37 -0
  882. package/src/calendar/utils.ts +14 -0
  883. package/src/checkbox/createCheckbox.ts +32 -17
  884. package/src/checkbox/createCheckboxGroup.ts +31 -13
  885. package/src/checkbox/createCheckboxGroupItem.ts +15 -1
  886. package/src/collections/index.ts +21 -3
  887. package/src/color/createColorArea.ts +226 -29
  888. package/src/color/createColorField.ts +98 -22
  889. package/src/color/createColorSlider.ts +24 -3
  890. package/src/color/createColorSwatch.ts +18 -1
  891. package/src/color/createColorWheel.ts +27 -5
  892. package/src/color/intl/index.ts +35 -0
  893. package/src/color/types.ts +47 -1
  894. package/src/combobox/createComboBox.ts +303 -152
  895. package/src/combobox/intl/generated-locales.ts +38 -1
  896. package/src/combobox/intl/index.ts +38 -2
  897. package/src/datepicker/createDateField.ts +38 -22
  898. package/src/datepicker/createDatePicker.ts +14 -0
  899. package/src/datepicker/createDatePickerGroup.ts +24 -12
  900. package/src/datepicker/createDateRangePicker.ts +14 -0
  901. package/src/datepicker/createDateSegment.ts +110 -46
  902. package/src/datepicker/createDisplayNames.ts +16 -1
  903. package/src/datepicker/createTimeField.ts +15 -5
  904. package/src/datepicker/intl.ts +623 -544
  905. package/src/dialog/createDialog.ts +57 -30
  906. package/src/dialog/types.ts +14 -0
  907. package/src/disclosure/createDisclosure.ts +28 -6
  908. package/src/disclosure/createDisclosureGroup.ts +3 -4
  909. package/src/dnd/DragManager.ts +60 -9
  910. package/src/dnd/DropTargetKeyboardNavigation.ts +8 -6
  911. package/src/dnd/createDrag.ts +18 -1
  912. package/src/dnd/createDraggableCollection.ts +96 -32
  913. package/src/dnd/createDraggableItem.ts +73 -31
  914. package/src/dnd/createDrop.ts +18 -1
  915. package/src/dnd/createDropIndicator.ts +92 -0
  916. package/src/dnd/createDroppableCollection.ts +113 -48
  917. package/src/dnd/createDroppableItem.ts +161 -13
  918. package/src/dnd/index.ts +3 -0
  919. package/src/dnd/intl/index.ts +77 -66
  920. package/src/dnd/types.ts +20 -1
  921. package/src/dnd/utils.ts +19 -0
  922. package/src/focus/FocusScope.tsx +542 -157
  923. package/src/focus/createAutoFocus.ts +94 -68
  924. package/src/focus/createFocusRestore.ts +16 -12
  925. package/src/focus/createHasTabbableChild.ts +78 -0
  926. package/src/focus/createVirtualFocus.ts +21 -5
  927. package/src/focus/virtualFocus.ts +1 -1
  928. package/src/form/createFormReset.ts +40 -17
  929. package/src/form/createFormValidation.ts +128 -86
  930. package/src/grid/GridKeyboardDelegate.ts +14 -0
  931. package/src/grid/createGrid.ts +17 -2
  932. package/src/grid/createGridCell.ts +17 -2
  933. package/src/grid/createGridRow.ts +17 -2
  934. package/src/grid/index.ts +2 -2
  935. package/src/grid/intl/ar-AE.json +8 -0
  936. package/src/grid/intl/bg-BG.json +8 -0
  937. package/src/grid/intl/cs-CZ.json +8 -0
  938. package/src/grid/intl/da-DK.json +8 -0
  939. package/src/grid/intl/de-DE.json +8 -0
  940. package/src/grid/intl/el-GR.json +8 -0
  941. package/src/grid/intl/en-US.json +8 -0
  942. package/src/grid/intl/es-ES.json +8 -0
  943. package/src/grid/intl/et-EE.json +8 -0
  944. package/src/grid/intl/fi-FI.json +8 -0
  945. package/src/grid/intl/fr-FR.json +8 -0
  946. package/src/grid/intl/he-IL.json +8 -0
  947. package/src/grid/intl/hr-HR.json +8 -0
  948. package/src/grid/intl/hu-HU.json +8 -0
  949. package/src/grid/intl/index.ts +127 -0
  950. package/src/grid/intl/it-IT.json +8 -0
  951. package/src/grid/intl/ja-JP.json +8 -0
  952. package/src/grid/intl/ko-KR.json +8 -0
  953. package/src/grid/intl/lt-LT.json +8 -0
  954. package/src/grid/intl/lv-LV.json +8 -0
  955. package/src/grid/intl/nb-NO.json +8 -0
  956. package/src/grid/intl/nl-NL.json +8 -0
  957. package/src/grid/intl/pl-PL.json +8 -0
  958. package/src/grid/intl/pt-BR.json +8 -0
  959. package/src/grid/intl/pt-PT.json +8 -0
  960. package/src/grid/intl/ro-RO.json +8 -0
  961. package/src/grid/intl/ru-RU.json +8 -0
  962. package/src/grid/intl/sk-SK.json +8 -0
  963. package/src/grid/intl/sl-SI.json +8 -0
  964. package/src/grid/intl/sr-SP.json +8 -0
  965. package/src/grid/intl/sv-SE.json +8 -0
  966. package/src/grid/intl/tr-TR.json +8 -0
  967. package/src/grid/intl/uk-UA.json +8 -0
  968. package/src/grid/intl/zh-CN.json +8 -0
  969. package/src/grid/intl/zh-TW.json +8 -0
  970. package/src/grid/types.ts +25 -2
  971. package/src/gridlist/createGridList.ts +172 -42
  972. package/src/gridlist/createGridListItem.ts +51 -13
  973. package/src/gridlist/createGridListSection.ts +14 -0
  974. package/src/gridlist/createGridListSelectionCheckbox.ts +31 -4
  975. package/src/gridlist/intl/ar-AE.json +4 -0
  976. package/src/gridlist/intl/bg-BG.json +4 -0
  977. package/src/gridlist/intl/cs-CZ.json +4 -0
  978. package/src/gridlist/intl/da-DK.json +4 -0
  979. package/src/gridlist/intl/de-DE.json +4 -0
  980. package/src/gridlist/intl/el-GR.json +4 -0
  981. package/src/gridlist/intl/en-US.json +4 -0
  982. package/src/gridlist/intl/es-ES.json +4 -0
  983. package/src/gridlist/intl/et-EE.json +4 -0
  984. package/src/gridlist/intl/fi-FI.json +4 -0
  985. package/src/gridlist/intl/fr-FR.json +4 -0
  986. package/src/gridlist/intl/he-IL.json +4 -0
  987. package/src/gridlist/intl/hr-HR.json +4 -0
  988. package/src/gridlist/intl/hu-HU.json +4 -0
  989. package/src/gridlist/intl/index.ts +123 -0
  990. package/src/gridlist/intl/it-IT.json +4 -0
  991. package/src/gridlist/intl/ja-JP.json +4 -0
  992. package/src/gridlist/intl/ko-KR.json +4 -0
  993. package/src/gridlist/intl/lt-LT.json +4 -0
  994. package/src/gridlist/intl/lv-LV.json +4 -0
  995. package/src/gridlist/intl/nb-NO.json +4 -0
  996. package/src/gridlist/intl/nl-NL.json +4 -0
  997. package/src/gridlist/intl/pl-PL.json +4 -0
  998. package/src/gridlist/intl/pt-BR.json +4 -0
  999. package/src/gridlist/intl/pt-PT.json +4 -0
  1000. package/src/gridlist/intl/ro-RO.json +4 -0
  1001. package/src/gridlist/intl/ru-RU.json +4 -0
  1002. package/src/gridlist/intl/sk-SK.json +4 -0
  1003. package/src/gridlist/intl/sl-SI.json +4 -0
  1004. package/src/gridlist/intl/sr-SP.json +4 -0
  1005. package/src/gridlist/intl/sv-SE.json +4 -0
  1006. package/src/gridlist/intl/tr-TR.json +4 -0
  1007. package/src/gridlist/intl/uk-UA.json +4 -0
  1008. package/src/gridlist/intl/zh-CN.json +4 -0
  1009. package/src/gridlist/intl/zh-TW.json +4 -0
  1010. package/src/gridlist/types.ts +54 -2
  1011. package/src/i18n/compileIcu.ts +440 -0
  1012. package/src/i18n/createCollator.ts +14 -0
  1013. package/src/i18n/createDateFormatter.ts +14 -0
  1014. package/src/i18n/createFilter.ts +14 -0
  1015. package/src/i18n/createListFormatter.ts +38 -0
  1016. package/src/i18n/createNumberFormatter.ts +14 -0
  1017. package/src/i18n/createStringFormatter.ts +64 -8
  1018. package/src/i18n/index.ts +3 -0
  1019. package/src/i18n/locale.tsx +60 -19
  1020. package/src/i18n/utils.ts +14 -0
  1021. package/src/index.ts +49 -1
  1022. package/src/interactions/FocusableProvider.tsx +28 -11
  1023. package/src/interactions/PressEvent.ts +16 -1
  1024. package/src/interactions/createContextMenu.ts +108 -0
  1025. package/src/interactions/createFocus.ts +26 -6
  1026. package/src/interactions/createFocusRing.ts +28 -13
  1027. package/src/interactions/createFocusWithin.ts +23 -3
  1028. package/src/interactions/createFocusable.ts +45 -28
  1029. package/src/interactions/createHover.ts +102 -81
  1030. package/src/interactions/createInteractionModality.ts +135 -45
  1031. package/src/interactions/createKeyboard.ts +85 -9
  1032. package/src/interactions/createKeyboardShortcutHandler.ts +157 -0
  1033. package/src/interactions/createLongPress.ts +31 -9
  1034. package/src/interactions/createMove.ts +24 -3
  1035. package/src/interactions/createPress.ts +85 -41
  1036. package/src/interactions/index.ts +1 -0
  1037. package/src/label/createField.ts +58 -63
  1038. package/src/label/createLabel.ts +21 -4
  1039. package/src/label/createLabels.ts +25 -1
  1040. package/src/landmark/createLandmark.ts +27 -4
  1041. package/src/link/createLink.ts +20 -12
  1042. package/src/listbox/createListBox.ts +86 -310
  1043. package/src/listbox/createOption.ts +50 -14
  1044. package/src/live-announcer/announce.ts +21 -6
  1045. package/src/menu/createMenu.ts +92 -5
  1046. package/src/menu/createMenuItem.ts +40 -23
  1047. package/src/menu/createMenuTrigger.ts +179 -51
  1048. package/src/menu/index.ts +2 -0
  1049. package/src/menu/intl/index.ts +130 -0
  1050. package/src/meter/createMeter.ts +20 -5
  1051. package/src/numberfield/createNumberField.ts +254 -14
  1052. package/src/overlays/ariaHideOutside.ts +76 -11
  1053. package/src/overlays/createInteractOutside.ts +74 -47
  1054. package/src/overlays/createModal.tsx +42 -27
  1055. package/src/overlays/createOverlay.ts +107 -66
  1056. package/src/overlays/createOverlayTrigger.ts +21 -6
  1057. package/src/overlays/createPreventScroll.ts +92 -62
  1058. package/src/overlays/index.ts +2 -0
  1059. package/src/overlays/intl/ar-AE.json +3 -0
  1060. package/src/overlays/intl/bg-BG.json +3 -0
  1061. package/src/overlays/intl/cs-CZ.json +3 -0
  1062. package/src/overlays/intl/da-DK.json +3 -0
  1063. package/src/overlays/intl/de-DE.json +3 -0
  1064. package/src/overlays/intl/el-GR.json +3 -0
  1065. package/src/overlays/intl/en-US.json +3 -0
  1066. package/src/overlays/intl/es-ES.json +3 -0
  1067. package/src/overlays/intl/et-EE.json +3 -0
  1068. package/src/overlays/intl/fi-FI.json +3 -0
  1069. package/src/overlays/intl/fr-FR.json +3 -0
  1070. package/src/overlays/intl/he-IL.json +3 -0
  1071. package/src/overlays/intl/hr-HR.json +3 -0
  1072. package/src/overlays/intl/hu-HU.json +3 -0
  1073. package/src/overlays/intl/index.ts +122 -0
  1074. package/src/overlays/intl/it-IT.json +3 -0
  1075. package/src/overlays/intl/ja-JP.json +3 -0
  1076. package/src/overlays/intl/ko-KR.json +3 -0
  1077. package/src/overlays/intl/lt-LT.json +3 -0
  1078. package/src/overlays/intl/lv-LV.json +3 -0
  1079. package/src/overlays/intl/nb-NO.json +3 -0
  1080. package/src/overlays/intl/nl-NL.json +3 -0
  1081. package/src/overlays/intl/pl-PL.json +3 -0
  1082. package/src/overlays/intl/pt-BR.json +3 -0
  1083. package/src/overlays/intl/pt-PT.json +3 -0
  1084. package/src/overlays/intl/ro-RO.json +3 -0
  1085. package/src/overlays/intl/ru-RU.json +3 -0
  1086. package/src/overlays/intl/sk-SK.json +3 -0
  1087. package/src/overlays/intl/sl-SI.json +3 -0
  1088. package/src/overlays/intl/sr-SP.json +3 -0
  1089. package/src/overlays/intl/sv-SE.json +3 -0
  1090. package/src/overlays/intl/tr-TR.json +3 -0
  1091. package/src/overlays/intl/uk-UA.json +3 -0
  1092. package/src/overlays/intl/zh-CN.json +3 -0
  1093. package/src/overlays/intl/zh-TW.json +3 -0
  1094. package/src/popover/calculatePosition.ts +21 -3
  1095. package/src/popover/createOverlayPosition.ts +149 -41
  1096. package/src/popover/createPopover.ts +88 -23
  1097. package/src/progress/createProgressBar.ts +19 -4
  1098. package/src/radio/createRadio.ts +80 -25
  1099. package/src/radio/createRadioGroup.ts +47 -13
  1100. package/src/searchfield/createSearchField.ts +31 -2
  1101. package/src/searchfield/intl/ar-AE.json +3 -0
  1102. package/src/searchfield/intl/bg-BG.json +3 -0
  1103. package/src/searchfield/intl/cs-CZ.json +3 -0
  1104. package/src/searchfield/intl/da-DK.json +3 -0
  1105. package/src/searchfield/intl/de-DE.json +3 -0
  1106. package/src/searchfield/intl/el-GR.json +3 -0
  1107. package/src/searchfield/intl/en-US.json +3 -0
  1108. package/src/searchfield/intl/es-ES.json +3 -0
  1109. package/src/searchfield/intl/et-EE.json +3 -0
  1110. package/src/searchfield/intl/fi-FI.json +3 -0
  1111. package/src/searchfield/intl/fr-FR.json +3 -0
  1112. package/src/searchfield/intl/he-IL.json +3 -0
  1113. package/src/searchfield/intl/hr-HR.json +3 -0
  1114. package/src/searchfield/intl/hu-HU.json +3 -0
  1115. package/src/searchfield/intl/index.ts +122 -0
  1116. package/src/searchfield/intl/it-IT.json +3 -0
  1117. package/src/searchfield/intl/ja-JP.json +3 -0
  1118. package/src/searchfield/intl/ko-KR.json +3 -0
  1119. package/src/searchfield/intl/lt-LT.json +3 -0
  1120. package/src/searchfield/intl/lv-LV.json +3 -0
  1121. package/src/searchfield/intl/nb-NO.json +3 -0
  1122. package/src/searchfield/intl/nl-NL.json +3 -0
  1123. package/src/searchfield/intl/pl-PL.json +3 -0
  1124. package/src/searchfield/intl/pt-BR.json +3 -0
  1125. package/src/searchfield/intl/pt-PT.json +3 -0
  1126. package/src/searchfield/intl/ro-RO.json +3 -0
  1127. package/src/searchfield/intl/ru-RU.json +3 -0
  1128. package/src/searchfield/intl/sk-SK.json +3 -0
  1129. package/src/searchfield/intl/sl-SI.json +3 -0
  1130. package/src/searchfield/intl/sr-SP.json +3 -0
  1131. package/src/searchfield/intl/sv-SE.json +3 -0
  1132. package/src/searchfield/intl/tr-TR.json +3 -0
  1133. package/src/searchfield/intl/uk-UA.json +3 -0
  1134. package/src/searchfield/intl/zh-CN.json +3 -0
  1135. package/src/searchfield/intl/zh-TW.json +3 -0
  1136. package/src/select/createHiddenSelect.tsx +166 -69
  1137. package/src/select/createSelect.ts +80 -34
  1138. package/src/selection/DOMLayoutDelegate.ts +14 -0
  1139. package/src/selection/ListKeyboardDelegate.ts +16 -1
  1140. package/src/selection/constants.ts +14 -0
  1141. package/src/selection/createCollectionRowInteraction.ts +75 -6
  1142. package/src/selection/createScrollIntoViewOnFocus.ts +23 -8
  1143. package/src/selection/createSelectableCollection.ts +352 -226
  1144. package/src/selection/createSelectableItem.ts +51 -12
  1145. package/src/selection/createSelectableList.ts +21 -1
  1146. package/src/selection/createTypeSelect.ts +21 -5
  1147. package/src/selection/selectItem.ts +14 -0
  1148. package/src/selection/utils.ts +15 -1
  1149. package/src/separator/createSeparator.ts +17 -1
  1150. package/src/slider/createSlider.ts +24 -18
  1151. package/src/spinbutton/createSpinButton.ts +16 -2
  1152. package/src/spinbutton/index.ts +2 -10
  1153. package/src/spinbutton/intl.ts +70 -34
  1154. package/src/ssr/index.tsx +79 -48
  1155. package/src/steplist/createStepList.ts +17 -2
  1156. package/src/switch/createSwitch.ts +25 -4
  1157. package/src/table/createTable.ts +104 -52
  1158. package/src/table/createTableCell.ts +17 -2
  1159. package/src/table/createTableColumnHeader.ts +21 -3
  1160. package/src/table/createTableColumnResize.ts +19 -3
  1161. package/src/table/createTableHeaderRow.ts +17 -2
  1162. package/src/table/createTableRow.ts +29 -22
  1163. package/src/table/createTableRowGroup.ts +18 -3
  1164. package/src/table/createTableSelectAllCheckbox.ts +30 -14
  1165. package/src/table/createTableSelectionCheckbox.ts +21 -3
  1166. package/src/table/index.ts +2 -2
  1167. package/src/table/intl/ar-AE.json +13 -0
  1168. package/src/table/intl/bg-BG.json +13 -0
  1169. package/src/table/intl/cs-CZ.json +13 -0
  1170. package/src/table/intl/da-DK.json +13 -0
  1171. package/src/table/intl/de-DE.json +13 -0
  1172. package/src/table/intl/el-GR.json +13 -0
  1173. package/src/table/intl/en-US.json +13 -0
  1174. package/src/table/intl/es-ES.json +13 -0
  1175. package/src/table/intl/et-EE.json +13 -0
  1176. package/src/table/intl/fi-FI.json +13 -0
  1177. package/src/table/intl/fr-FR.json +13 -0
  1178. package/src/table/intl/he-IL.json +13 -0
  1179. package/src/table/intl/hr-HR.json +13 -0
  1180. package/src/table/intl/hu-HU.json +13 -0
  1181. package/src/table/intl/index.ts +132 -0
  1182. package/src/table/intl/it-IT.json +13 -0
  1183. package/src/table/intl/ja-JP.json +13 -0
  1184. package/src/table/intl/ko-KR.json +13 -0
  1185. package/src/table/intl/lt-LT.json +13 -0
  1186. package/src/table/intl/lv-LV.json +13 -0
  1187. package/src/table/intl/nb-NO.json +13 -0
  1188. package/src/table/intl/nl-NL.json +13 -0
  1189. package/src/table/intl/pl-PL.json +13 -0
  1190. package/src/table/intl/pt-BR.json +13 -0
  1191. package/src/table/intl/pt-PT.json +13 -0
  1192. package/src/table/intl/ro-RO.json +13 -0
  1193. package/src/table/intl/ru-RU.json +13 -0
  1194. package/src/table/intl/sk-SK.json +13 -0
  1195. package/src/table/intl/sl-SI.json +13 -0
  1196. package/src/table/intl/sr-SP.json +13 -0
  1197. package/src/table/intl/sv-SE.json +13 -0
  1198. package/src/table/intl/tr-TR.json +13 -0
  1199. package/src/table/intl/uk-UA.json +13 -0
  1200. package/src/table/intl/zh-CN.json +13 -0
  1201. package/src/table/intl/zh-TW.json +13 -0
  1202. package/src/table/types.ts +44 -2
  1203. package/src/table/utils.ts +15 -6
  1204. package/src/tabs/createTabs.ts +104 -37
  1205. package/src/tag/createTag.ts +118 -37
  1206. package/src/tag/createTagGroup.ts +20 -12
  1207. package/src/tag/intl/ar-AE.json +4 -0
  1208. package/src/tag/intl/bg-BG.json +4 -0
  1209. package/src/tag/intl/cs-CZ.json +4 -0
  1210. package/src/tag/intl/da-DK.json +4 -0
  1211. package/src/tag/intl/de-DE.json +4 -0
  1212. package/src/tag/intl/el-GR.json +4 -0
  1213. package/src/tag/intl/en-US.json +4 -0
  1214. package/src/tag/intl/es-ES.json +4 -0
  1215. package/src/tag/intl/et-EE.json +4 -0
  1216. package/src/tag/intl/fi-FI.json +4 -0
  1217. package/src/tag/intl/fr-FR.json +4 -0
  1218. package/src/tag/intl/he-IL.json +4 -0
  1219. package/src/tag/intl/hr-HR.json +4 -0
  1220. package/src/tag/intl/hu-HU.json +4 -0
  1221. package/src/tag/intl/index.ts +123 -0
  1222. package/src/tag/intl/it-IT.json +4 -0
  1223. package/src/tag/intl/ja-JP.json +4 -0
  1224. package/src/tag/intl/ko-KR.json +4 -0
  1225. package/src/tag/intl/lt-LT.json +4 -0
  1226. package/src/tag/intl/lv-LV.json +4 -0
  1227. package/src/tag/intl/nb-NO.json +4 -0
  1228. package/src/tag/intl/nl-NL.json +4 -0
  1229. package/src/tag/intl/pl-PL.json +4 -0
  1230. package/src/tag/intl/pt-BR.json +4 -0
  1231. package/src/tag/intl/pt-PT.json +4 -0
  1232. package/src/tag/intl/ro-RO.json +4 -0
  1233. package/src/tag/intl/ru-RU.json +4 -0
  1234. package/src/tag/intl/sk-SK.json +4 -0
  1235. package/src/tag/intl/sl-SI.json +4 -0
  1236. package/src/tag/intl/sr-SP.json +4 -0
  1237. package/src/tag/intl/sv-SE.json +4 -0
  1238. package/src/tag/intl/tr-TR.json +4 -0
  1239. package/src/tag/intl/uk-UA.json +4 -0
  1240. package/src/tag/intl/zh-CN.json +4 -0
  1241. package/src/tag/intl/zh-TW.json +4 -0
  1242. package/src/textfield/createTextField.ts +104 -14
  1243. package/src/toast/createToast.ts +39 -6
  1244. package/src/toast/createToastRegion.ts +28 -15
  1245. package/src/toast/intl/ar-AE.json +4 -0
  1246. package/src/toast/intl/bg-BG.json +4 -0
  1247. package/src/toast/intl/cs-CZ.json +4 -0
  1248. package/src/toast/intl/da-DK.json +4 -0
  1249. package/src/toast/intl/de-DE.json +4 -0
  1250. package/src/toast/intl/el-GR.json +4 -0
  1251. package/src/toast/intl/en-US.json +4 -0
  1252. package/src/toast/intl/es-ES.json +4 -0
  1253. package/src/toast/intl/et-EE.json +4 -0
  1254. package/src/toast/intl/fi-FI.json +4 -0
  1255. package/src/toast/intl/fr-FR.json +4 -0
  1256. package/src/toast/intl/he-IL.json +4 -0
  1257. package/src/toast/intl/hr-HR.json +4 -0
  1258. package/src/toast/intl/hu-HU.json +4 -0
  1259. package/src/toast/intl/index.ts +123 -0
  1260. package/src/toast/intl/it-IT.json +4 -0
  1261. package/src/toast/intl/ja-JP.json +4 -0
  1262. package/src/toast/intl/ko-KR.json +4 -0
  1263. package/src/toast/intl/lt-LT.json +4 -0
  1264. package/src/toast/intl/lv-LV.json +4 -0
  1265. package/src/toast/intl/nb-NO.json +4 -0
  1266. package/src/toast/intl/nl-NL.json +4 -0
  1267. package/src/toast/intl/pl-PL.json +4 -0
  1268. package/src/toast/intl/pt-BR.json +4 -0
  1269. package/src/toast/intl/pt-PT.json +4 -0
  1270. package/src/toast/intl/ro-RO.json +4 -0
  1271. package/src/toast/intl/ru-RU.json +4 -0
  1272. package/src/toast/intl/sk-SK.json +4 -0
  1273. package/src/toast/intl/sl-SI.json +4 -0
  1274. package/src/toast/intl/sr-SP.json +4 -0
  1275. package/src/toast/intl/sv-SE.json +4 -0
  1276. package/src/toast/intl/tr-TR.json +4 -0
  1277. package/src/toast/intl/uk-UA.json +4 -0
  1278. package/src/toast/intl/zh-CN.json +4 -0
  1279. package/src/toast/intl/zh-TW.json +4 -0
  1280. package/src/toggle/createToggle.ts +96 -15
  1281. package/src/tokenfield/createToken.ts +82 -0
  1282. package/src/tokenfield/createTokenField.ts +859 -0
  1283. package/src/tokenfield/index.ts +10 -0
  1284. package/src/toolbar/createToolbar.ts +26 -5
  1285. package/src/tooltip/createPreviewTrigger.ts +301 -0
  1286. package/src/tooltip/createSafeArea.ts +165 -0
  1287. package/src/tooltip/createTooltip.ts +15 -1
  1288. package/src/tooltip/createTooltipTrigger.ts +24 -3
  1289. package/src/tooltip/index.ts +7 -0
  1290. package/src/tooltip/intl/index.ts +76 -0
  1291. package/src/tree/createTree.ts +66 -50
  1292. package/src/tree/createTreeItem.ts +85 -21
  1293. package/src/tree/createTreeSelectionCheckbox.ts +29 -28
  1294. package/src/tree/intl/ar-AE.json +4 -0
  1295. package/src/tree/intl/bg-BG.json +4 -0
  1296. package/src/tree/intl/cs-CZ.json +4 -0
  1297. package/src/tree/intl/da-DK.json +4 -0
  1298. package/src/tree/intl/de-DE.json +4 -0
  1299. package/src/tree/intl/el-GR.json +4 -0
  1300. package/src/tree/intl/en-US.json +4 -0
  1301. package/src/tree/intl/es-ES.json +4 -0
  1302. package/src/tree/intl/et-EE.json +4 -0
  1303. package/src/tree/intl/fi-FI.json +4 -0
  1304. package/src/tree/intl/fr-FR.json +4 -0
  1305. package/src/tree/intl/he-IL.json +4 -0
  1306. package/src/tree/intl/hr-HR.json +4 -0
  1307. package/src/tree/intl/hu-HU.json +4 -0
  1308. package/src/tree/intl/index.ts +123 -0
  1309. package/src/tree/intl/it-IT.json +4 -0
  1310. package/src/tree/intl/ja-JP.json +4 -0
  1311. package/src/tree/intl/ko-KR.json +4 -0
  1312. package/src/tree/intl/lt-LT.json +4 -0
  1313. package/src/tree/intl/lv-LV.json +4 -0
  1314. package/src/tree/intl/nb-NO.json +4 -0
  1315. package/src/tree/intl/nl-NL.json +4 -0
  1316. package/src/tree/intl/pl-PL.json +4 -0
  1317. package/src/tree/intl/pt-BR.json +4 -0
  1318. package/src/tree/intl/pt-PT.json +4 -0
  1319. package/src/tree/intl/ro-RO.json +4 -0
  1320. package/src/tree/intl/ru-RU.json +4 -0
  1321. package/src/tree/intl/sk-SK.json +4 -0
  1322. package/src/tree/intl/sl-SI.json +4 -0
  1323. package/src/tree/intl/sr-SP.json +4 -0
  1324. package/src/tree/intl/sv-SE.json +4 -0
  1325. package/src/tree/intl/tr-TR.json +4 -0
  1326. package/src/tree/intl/uk-UA.json +4 -0
  1327. package/src/tree/intl/zh-CN.json +4 -0
  1328. package/src/tree/intl/zh-TW.json +4 -0
  1329. package/src/tree/types.ts +35 -2
  1330. package/src/utils/ShadowTreeWalker.ts +249 -0
  1331. package/src/utils/animation.ts +106 -85
  1332. package/src/utils/capture.ts +51 -0
  1333. package/src/utils/createDescription.ts +31 -8
  1334. package/src/utils/dom.ts +314 -33
  1335. package/src/utils/domAttrs.ts +84 -0
  1336. package/src/utils/env.ts +2 -0
  1337. package/src/utils/events.ts +39 -3
  1338. package/src/utils/filterDOMProps.ts +34 -2
  1339. package/src/utils/focus.ts +186 -32
  1340. package/src/utils/geometry.ts +15 -1
  1341. package/src/utils/getMetaValue.ts +57 -0
  1342. package/src/utils/getNonce.ts +40 -0
  1343. package/src/utils/globalListeners.ts +16 -3
  1344. package/src/utils/index.ts +14 -0
  1345. package/src/utils/keyboard.ts +15 -1
  1346. package/src/utils/mergeProps.ts +149 -16
  1347. package/src/utils/owner.ts +26 -0
  1348. package/src/utils/platform.ts +15 -1
  1349. package/src/utils/reactivity.ts +2 -0
  1350. package/src/utils/refs.ts +53 -0
  1351. package/src/utils/runAfterTransition.ts +117 -0
  1352. package/src/utils/scrollIntoView.ts +14 -0
  1353. package/src/utils/splitProps.ts +70 -0
  1354. package/src/utils/textSelection.ts +15 -1
  1355. package/src/virtualizer/ScrollView.ts +210 -0
  1356. package/src/virtualizer/index.ts +2 -0
  1357. package/src/virtualizer/utils.ts +100 -0
  1358. package/src/visually-hidden/createVisuallyHidden.ts +20 -4
  1359. package/dist/_chunk/createInteractionModality.js +0 -268
  1360. package/dist/_chunk/createInteractionModality.js.map +0 -1
  1361. package/dist/_chunk/createInteractionModality.jsx +0 -268
  1362. package/dist/_chunk/createInteractionModality.jsx.map +0 -1
  1363. package/dist/_chunk/focus2.js +0 -631
  1364. package/dist/_chunk/focus2.js.map +0 -1
  1365. package/dist/_chunk/focus2.jsx +0 -631
  1366. package/dist/_chunk/focus2.jsx.map +0 -1
  1367. package/dist/_chunk/visually-hidden.js.map +0 -1
  1368. package/dist/_chunk/visually-hidden.jsx.map +0 -1
  1369. package/dist/checkbox/createCheckboxGroupState.d.ts +0 -71
  1370. package/dist/checkbox/createCheckboxGroupState.d.ts.map +0 -1
  1371. package/dist/radio/createRadioGroupState.d.ts +0 -77
  1372. package/dist/radio/createRadioGroupState.d.ts.map +0 -1
  1373. package/dist/toggle/createToggleState.d.ts +0 -34
  1374. package/dist/toggle/createToggleState.d.ts.map +0 -1
  1375. package/src/checkbox/createCheckboxGroupState.ts +0 -174
  1376. package/src/radio/createRadioGroupState.ts +0 -177
  1377. package/src/toggle/createToggleState.ts +0 -86
@@ -1 +1 @@
1
- {"version":3,"file":"color.js","names":["createId","createId","createId","createId","createId"],"sources":["../../src/color/createColorSlider.ts","../../src/color/intl/index.ts","../../src/color/createColorArea.ts","../../src/color/createColorWheel.ts","../../src/color/createColorField.ts","../../src/color/createColorSwatch.ts"],"sourcesContent":["/**\n * createColorSlider hook.\n *\n * Provides ARIA attributes and keyboard handling for a color slider.\n */\n\nimport { createMemo, onCleanup, type Accessor } from \"solid-js\";\nimport type { ColorSliderState } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport type { AriaColorSliderOptions, ColorSliderAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color slider.\n */\nexport function createColorSlider(\n props: Accessor<AriaColorSliderOptions>,\n state: Accessor<ColorSliderState>,\n trackRef: Accessor<HTMLDivElement | null>,\n inputRef?: Accessor<HTMLInputElement | null>,\n): ColorSliderAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n const isRTL = () => locale().direction === \"rtl\";\n\n // Generate IDs\n const trackId = createId();\n const inputId = createId();\n const labelId = createId();\n let cleanupPointerDrag: (() => void) | undefined;\n let cleanupMouseDrag: (() => void) | undefined;\n\n const getInput = () =>\n inputRef?.() ?? trackRef()?.querySelector<HTMLInputElement>('input[type=\"range\"]') ?? null;\n const focusInput = () => {\n focusWithoutScrolling(getInput());\n queueMicrotask(() => focusWithoutScrolling(getInput()));\n };\n\n // Get channel name for ARIA label\n const channelName = createMemo(() => {\n const p = getProps();\n if (p.channelName) return p.channelName;\n const s = getState();\n return s.value.getChannelName(s.channel, locale().locale);\n });\n\n const orientation = () => getProps().orientation ?? \"horizontal\";\n const hasVisibleLabel = () => getProps().label != null;\n const trackElementId = () => getProps().id ?? trackId;\n const trackLabelledBy = () => {\n const p = getProps();\n return p[\"aria-labelledby\"] ?? (hasVisibleLabel() ? labelId : undefined);\n };\n const inputLabelledBy = () => (hasVisibleLabel() ? labelId : trackElementId());\n const trackAriaLabel = () => {\n const p = getProps();\n if (p[\"aria-label\"]) return p[\"aria-label\"];\n if (p[\"aria-labelledby\"] || hasVisibleLabel()) return undefined;\n return channelName();\n };\n\n const updateFromPointer = (clientX: number, clientY: number) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const track = trackRef();\n if (!track) return;\n\n const rect = track.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return;\n\n let percent: number;\n if (orientation() === \"vertical\") {\n percent = 1 - (clientY - rect.top) / rect.height;\n } else {\n const physicalPercent = (clientX - rect.left) / rect.width;\n percent = isRTL() ? 1 - physicalPercent : physicalPercent;\n }\n\n getState().setThumbPercent(Math.max(0, Math.min(1, percent)));\n };\n\n const endDrag = (target: EventTarget | null, pointerId?: number) => {\n const s = getState();\n if (!s.isDragging) return;\n s.setDragging(false);\n focusInput();\n if (pointerId == null) return;\n try {\n (target as HTMLElement | null)?.releasePointerCapture?.(pointerId);\n } catch {\n // Some synthetic pointer sequences do not have active capture by the time\n // drag end runs. React Aria treats capture as best-effort as well.\n }\n };\n\n const installPointerDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupPointerDrag?.();\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n const onPointerEnd = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(trackRef(), e.pointerId);\n };\n\n window.addEventListener(\"pointermove\", onPointerMove);\n window.addEventListener(\"pointerup\", onPointerEnd);\n window.addEventListener(\"pointercancel\", onPointerEnd);\n\n cleanupPointerDrag = () => {\n window.removeEventListener(\"pointermove\", onPointerMove);\n window.removeEventListener(\"pointerup\", onPointerEnd);\n window.removeEventListener(\"pointercancel\", onPointerEnd);\n };\n };\n\n const installMouseDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupMouseDrag?.();\n\n const onMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n const onMouseEnd = () => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag(trackRef());\n };\n\n window.addEventListener(\"mousemove\", onMouseMove);\n window.addEventListener(\"mouseup\", onMouseEnd);\n\n cleanupMouseDrag = () => {\n window.removeEventListener(\"mousemove\", onMouseMove);\n window.removeEventListener(\"mouseup\", onMouseEnd);\n };\n };\n\n onCleanup(() => {\n cleanupPointerDrag?.();\n cleanupMouseDrag?.();\n });\n\n // Handle pointer interaction on the track\n const onTrackPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n updateFromPointer(e.clientX, e.clientY);\n focusInput();\n getState().setDragging(true);\n try {\n (e.currentTarget as HTMLElement).setPointerCapture?.(e.pointerId);\n } catch {\n // Keep drag behavior working in environments where pointer capture is not\n // active for this event, including Playwright's synthetic mouse pointer.\n }\n installPointerDragListeners();\n e.preventDefault();\n };\n\n const onTrackPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n\n const onTrackPointerUp = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(e.currentTarget, e.pointerId);\n };\n\n const onTrackPointerCancel = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(e.currentTarget, e.pointerId);\n };\n\n const onTrackMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n updateFromPointer(e.clientX, e.clientY);\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n };\n\n const onTrackMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n\n const onTrackMouseUp = (e: MouseEvent) => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag(e.currentTarget);\n };\n\n // Handle keyboard\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.defaultPrevented) return;\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n let handled = true;\n\n switch (e.key) {\n case \"ArrowUp\":\n s.incrementThumb();\n break;\n case \"ArrowDown\":\n s.decrementThumb();\n break;\n case \"ArrowRight\":\n if (orientation() === \"horizontal\" && isRTL()) {\n s.decrementThumb();\n } else {\n s.incrementThumb();\n }\n break;\n case \"ArrowLeft\":\n if (orientation() === \"horizontal\" && isRTL()) {\n s.incrementThumb();\n } else {\n s.decrementThumb();\n }\n break;\n case \"PageUp\":\n s.incrementThumb(s.pageSize);\n break;\n case \"PageDown\":\n s.decrementThumb(s.pageSize);\n break;\n case \"Home\":\n s.setThumbValue(s.minValue);\n break;\n case \"End\":\n s.setThumbValue(s.maxValue);\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n // Generate gradient background for the slider track\n const generateBackground = () => {\n const s = getState();\n const value = s.getDisplayColor();\n const channel = s.channel;\n const to = orientation() === \"vertical\" ? \"top\" : isRTL() ? \"left\" : \"right\";\n\n switch (channel) {\n case \"hue\": {\n const stops = [0, 60, 120, 180, 240, 300, 360]\n .map((hue) => value.withChannelValue(\"hue\", hue).toString(\"css\"))\n .join(\", \");\n return `linear-gradient(to ${to}, ${stops})`;\n }\n case \"lightness\": {\n const min = s.minValue;\n const max = s.maxValue;\n const start = value.withChannelValue(channel, min).toString(\"css\");\n const middle = value.withChannelValue(channel, (max - min) / 2).toString(\"css\");\n const end = value.withChannelValue(channel, max).toString(\"css\");\n return `linear-gradient(to ${to}, ${start}, ${middle}, ${end})`;\n }\n case \"saturation\":\n case \"brightness\":\n case \"red\":\n case \"green\":\n case \"blue\":\n case \"alpha\": {\n const start = value.withChannelValue(channel, s.minValue).toString(\"css\");\n const end = value.withChannelValue(channel, s.maxValue).toString(\"css\");\n return `linear-gradient(to ${to}, ${start}, ${end})`;\n }\n default:\n return undefined;\n }\n };\n\n // Track props\n const trackProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const bg = generateBackground();\n return {\n id: trackElementId(),\n role: \"group\" as const,\n \"aria-label\": trackAriaLabel(),\n \"aria-labelledby\": trackLabelledBy(),\n onPointerDown: onTrackPointerDown,\n onPointerMove: onTrackPointerMove,\n onPointerUp: onTrackPointerUp,\n onPointerCancel: onTrackPointerCancel,\n onMouseDown: onTrackMouseDown,\n onMouseMove: onTrackMouseMove,\n onMouseUp: onTrackMouseUp,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n ...(bg ? { background: bg } : {}),\n },\n \"data-disabled\": s.isDisabled || undefined,\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const percent = s.getThumbPercent();\n const x = orientation() === \"horizontal\" ? (isRTL() ? 1 - percent : percent) : 0.5;\n const y = orientation() === \"horizontal\" ? 0.5 : 1 - percent;\n\n return {\n onKeyDown,\n style: {\n position: \"absolute\" as const,\n left: `${x * 100}%`,\n top: `${y * 100}%`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n const ariaValueText = () => {\n const s = getState();\n const loc = locale().locale;\n const displayColor = s.getDisplayColor();\n let valueText = s.getThumbValueLabel();\n\n if (s.channel === \"hue\") {\n valueText += `, ${displayColor.getHueName(loc)}`;\n } else if (s.channel !== \"alpha\") {\n valueText += `, ${displayColor.getColorName(loc)}`;\n }\n\n return valueText;\n };\n\n // Input props (hidden, for accessibility)\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n type: \"range\",\n id: inputId,\n min: s.minValue,\n max: s.maxValue,\n step: s.step,\n value: s.getThumbValue(),\n name: p.name,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n tabIndex: s.isDisabled || p.isDisabled ? undefined : 0,\n \"aria-orientation\": orientation(),\n \"aria-labelledby\": inputLabelledBy(),\n \"aria-describedby\": p[\"aria-describedby\"] ?? \"\",\n \"aria-details\": p[\"aria-details\"] ?? \"\",\n \"aria-valuetext\": ariaValueText(),\n onKeyDown,\n onInput: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setThumbValue(parseFloat(target.value));\n },\n onChange: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setThumbValue(parseFloat(target.value));\n },\n onFocus: () => {\n // Focus handling\n },\n style: {\n position: \"absolute\" as const,\n opacity: \"0.0001\",\n width: \"100%\",\n height: \"100%\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n \"pointer-events\": \"none\" as const,\n },\n };\n });\n\n // Output props\n const outputProps = createMemo(() => {\n return {\n \"aria-live\": \"off\" as const,\n for: inputId,\n };\n });\n\n // Label props\n const labelProps = createMemo(() => {\n return {\n id: labelId,\n onClick: () => {\n if (typeof document !== \"undefined\") {\n document.getElementById(inputId)?.focus();\n }\n },\n };\n });\n\n return {\n get trackProps() {\n return trackProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get inputProps() {\n return inputProps();\n },\n get outputProps() {\n return outputProps();\n },\n get labelProps() {\n return labelProps();\n },\n };\n}\n","/**\n * Color internationalization strings.\n *\n * Port of `@react-aria/color`'s intl catalog — the `colorPicker`,\n * `twoDimensionalSlider`, `colorSwatch`, `transparent`, `colorNameAndValue`,\n * and `colorInputLabel` messages across all 34 upstream locales. Consumed via\n * `createColorStringFormatter`, mirroring upstream's\n * `useLocalizedStringFormatter(intlMessages, '@react-aria/color')`.\n *\n * The per-locale message SEPARATORS differ (e.g. CJK `:`/`、`, French\n * non-breaking ` :`), so each locale's function form is preserved\n * verbatim rather than shared.\n */\n\nimport type { LocalizedStrings } from \"@internationalized/string\";\nimport { createStringFormatter } from \"../../i18n\";\n\nexport type ColorIntlKey =\n | \"colorPicker\"\n | \"twoDimensionalSlider\"\n | \"colorSwatch\"\n | \"transparent\"\n | \"colorNameAndValue\"\n | \"colorInputLabel\";\n\nexport type ColorIntlVariables = {\n name?: string;\n value?: string;\n label?: string;\n channelLabel?: string;\n};\n\ntype ColorIntlMessage = string | ((args: ColorIntlVariables | undefined) => string);\n\nexport const colorIntlStrings: LocalizedStrings<ColorIntlKey, ColorIntlMessage> = {\n \"ar-AE\": {\n colorPicker: \"أداة انتقاء اللون\",\n twoDimensionalSlider: \"مُنزلق 2D\",\n colorSwatch: \"تغيير الألوان\",\n transparent: \"شفاف\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"bg-BG\": {\n colorPicker: \"Средство за избиране на цвят\",\n twoDimensionalSlider: \"2D плъзгач\",\n colorSwatch: \"цветна мостра\",\n transparent: \"прозрачен\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"cs-CZ\": {\n colorPicker: \"Výběr barvy\",\n twoDimensionalSlider: \"2D posuvník\",\n colorSwatch: \"barevný vzorek\",\n transparent: \"průhledný\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"da-DK\": {\n colorPicker: \"Farvevælger\",\n twoDimensionalSlider: \"2D-skyder\",\n colorSwatch: \"farveprøve\",\n transparent: \"gennemsigtig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"de-DE\": {\n colorPicker: \"Farbwähler\",\n twoDimensionalSlider: \"2D-Schieberegler\",\n colorSwatch: \"Farbfeld\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"el-GR\": {\n colorPicker: \"Επιλογέας χρωμάτων\",\n twoDimensionalSlider: \"Ρυθμιστικό 2D\",\n colorSwatch: \"χρωματικό δείγμα\",\n transparent: \"διαφανές\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"en-US\": {\n colorPicker: \"Color picker\",\n twoDimensionalSlider: \"2D slider\",\n colorSwatch: \"color swatch\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"es-ES\": {\n colorPicker: \"Selector de color\",\n twoDimensionalSlider: \"Regulador 2D\",\n colorSwatch: \"muestra de color\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"et-EE\": {\n colorPicker: \"Värvivalija\",\n twoDimensionalSlider: \"2D-liugur\",\n colorSwatch: \"värvinäidis\",\n transparent: \"läbipaistev\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"fi-FI\": {\n colorPicker: \"Värimuokkain\",\n twoDimensionalSlider: \"2D-liukusäädin\",\n colorSwatch: \"värimalli\",\n transparent: \"läpinäkyvä\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"fr-FR\": {\n colorPicker: \"Sélecteur de couleurs\",\n twoDimensionalSlider: \"Curseur 2D\",\n colorSwatch: \"Échantillon de couleurs\",\n transparent: \"Transparent\",\n colorNameAndValue: (args) => `${args?.name} : ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"he-IL\": {\n colorPicker: \"בוחר הצבעים\",\n twoDimensionalSlider: \"מחוון דו מימדי\",\n colorSwatch: \"דוגמית צבע\",\n transparent: \"שקוף\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"hr-HR\": {\n colorPicker: \"Odabir boje\",\n twoDimensionalSlider: \"2D klizač\",\n colorSwatch: \"uzorak boje\",\n transparent: \"transparentno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"hu-HU\": {\n colorPicker: \"Színválasztó\",\n twoDimensionalSlider: \"2D-csúszka\",\n colorSwatch: \"színtár\",\n transparent: \"átlátszó\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"it-IT\": {\n colorPicker: \"Selettore colore\",\n twoDimensionalSlider: \"Cursore 2D\",\n colorSwatch: \"campione di colore\",\n transparent: \"trasparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ja-JP\": {\n colorPicker: \"カラーピッカー\",\n twoDimensionalSlider: \"2D スライダー\",\n colorSwatch: \"カラースウォッチ\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name} : ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}、${args?.channelLabel}`,\n },\n \"ko-KR\": {\n colorPicker: \"색상 피커\",\n twoDimensionalSlider: \"2D 슬라이더\",\n colorSwatch: \"색상 견본\",\n transparent: \"투명도\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"lt-LT\": {\n colorPicker: \"Spalvų parinkiklis\",\n twoDimensionalSlider: \"2D slankiklis\",\n colorSwatch: \"spalvų pavyzdys\",\n transparent: \"skaidrus\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"lv-LV\": {\n colorPicker: \"Krāsu atlasītājs\",\n twoDimensionalSlider: \"2D slīdnis\",\n colorSwatch: \"krāsu paraugs\",\n transparent: \"caurspīdīgs\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"nb-NO\": {\n colorPicker: \"Fargevelger\",\n twoDimensionalSlider: \"2D-glidebryter\",\n colorSwatch: \"fargekart\",\n transparent: \"gjennomsiktig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"nl-NL\": {\n colorPicker: \"Kleurkiezer\",\n twoDimensionalSlider: \"2D-schuifregelaar\",\n colorSwatch: \"kleurstaal\",\n transparent: \"transparant\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pl-PL\": {\n colorPicker: \"Próbnik kolorów\",\n twoDimensionalSlider: \"Suwak 2D\",\n colorSwatch: \"próbka koloru\",\n transparent: \"przezroczysty\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pt-BR\": {\n colorPicker: \"Seletor de cores\",\n twoDimensionalSlider: \"Controle deslizante 2D\",\n colorSwatch: \"amostra de cores\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pt-PT\": {\n colorPicker: \"Seletor de cores\",\n twoDimensionalSlider: \"Controle deslizante 2D\",\n colorSwatch: \"amostra de cor\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ro-RO\": {\n colorPicker: \"Selector de culori\",\n twoDimensionalSlider: \"Glisor 2D\",\n colorSwatch: \"specimen de culoare\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ru-RU\": {\n colorPicker: \"Палитра цветов\",\n twoDimensionalSlider: \"Ползунок 2D\",\n colorSwatch: \"цветовой образец\",\n transparent: \"прозрачный\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sk-SK\": {\n colorPicker: \"Výber farieb\",\n twoDimensionalSlider: \"2D jazdec\",\n colorSwatch: \"vzorkovník farieb\",\n transparent: \"transparentný\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sl-SI\": {\n colorPicker: \"Izbirnik barv\",\n twoDimensionalSlider: \"2D drsnik\",\n colorSwatch: \"barvna paleta\",\n transparent: \"prozorno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sr-SP\": {\n colorPicker: \"Birač boja\",\n twoDimensionalSlider: \"2D klizač\",\n colorSwatch: \"Uzorak boje\",\n transparent: \"providno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sv-SE\": {\n colorPicker: \"Färgväljaren\",\n twoDimensionalSlider: \"2D-reglage\",\n colorSwatch: \"färgruta\",\n transparent: \"genomskinlig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"tr-TR\": {\n colorPicker: \"Renk Seçici\",\n twoDimensionalSlider: \"2D sürgü\",\n colorSwatch: \"renk örneği\",\n transparent: \"saydam\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"uk-UA\": {\n colorPicker: \"Палітра кольорів\",\n twoDimensionalSlider: \"Повзунок 2D\",\n colorSwatch: \"зразок кольору\",\n transparent: \"прозорий\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"zh-CN\": {\n colorPicker: \"拾色器\",\n twoDimensionalSlider: \"2D 滑块\",\n colorSwatch: \"颜色色板\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name}:${args?.value}`,\n colorInputLabel: (args) => `${args?.label}、${args?.channelLabel}`,\n },\n \"zh-TW\": {\n colorPicker: \"檢色器\",\n twoDimensionalSlider: \"2D 滑桿\",\n colorSwatch: \"色票\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name}:${args?.value}`,\n colorInputLabel: (args) => `${args?.label},${args?.channelLabel}`,\n },\n};\n\n/**\n * Reactive color string formatter for the current locale. Mirrors upstream\n * `useLocalizedStringFormatter(intlMessages, '@react-aria/color')`.\n */\nexport function createColorStringFormatter() {\n return createStringFormatter(colorIntlStrings, \"@react-aria/color\");\n}\n","/**\n * createColorArea hook.\n *\n * Provides ARIA attributes and keyboard/pointer handling for a 2D color area.\n */\n\nimport { createMemo, createSignal, type Accessor } from \"solid-js\";\nimport type { Color, ColorAreaState, ColorChannel } from \"@proyecto-viviana/solid-stately\";\nimport { parseColor } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { createColorStringFormatter } from \"./intl\";\nimport type { AriaColorAreaOptions, ColorAreaAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color area.\n */\nexport function createColorArea(\n props: Accessor<AriaColorAreaOptions>,\n state: Accessor<ColorAreaState>,\n areaRef: Accessor<HTMLDivElement | null>,\n): ColorAreaAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n const stringFormatter = createColorStringFormatter();\n const isRTL = () => locale().direction === \"rtl\";\n const [focusedInput, setFocusedInput] = createSignal<\"x\" | \"y\" | null>(null);\n const [valueChangedViaKeyboard, setValueChangedViaKeyboard] = createSignal(false);\n const [valueChangedViaInputChangeEvent, setValueChangedViaInputChangeEvent] = createSignal(false);\n\n // Generate IDs\n const colorAreaId = createId();\n const xInputId = createId();\n const yInputId = createId();\n\n const colorPickerLabel = () => stringFormatter().format(\"colorPicker\");\n const colorInputLabel = () => {\n const ariaLabel = getProps()[\"aria-label\"];\n return ariaLabel\n ? stringFormatter().format(\"colorInputLabel\", {\n label: ariaLabel,\n channelLabel: colorPickerLabel(),\n })\n : colorPickerLabel();\n };\n // Upstream joins the group label with a literal \", \" (useColorArea.ts:488),\n // NOT the colorInputLabel message.\n const colorAreaLabel = () => {\n const ariaLabel = getProps()[\"aria-label\"];\n return ariaLabel ? `${ariaLabel}, ${colorPickerLabel()}` : undefined;\n };\n const formatChannelValueText = (channel: ColorChannel) => {\n const value = getState().getDisplayColor();\n const loc = locale().locale;\n return stringFormatter().format(\"colorNameAndValue\", {\n name: value.getChannelName(channel, loc),\n value: value.formatChannelValue(channel, loc),\n });\n };\n const getAriaValueTextForChannel = (channel: ColorChannel) => {\n const s = getState();\n const value = s.getDisplayColor();\n const loc = locale().locale;\n if (valueChangedViaInputChangeEvent() || valueChangedViaKeyboard()) {\n return `${formatChannelValueText(channel)}, ${value.getColorName(loc)}`;\n }\n\n const otherChannel = channel === s.yChannel ? s.xChannel : s.yChannel;\n return (\n [\n formatChannelValueText(channel),\n formatChannelValueText(otherChannel),\n formatChannelValueText(s.zChannel),\n ].join(\", \") + `, ${value.getColorName(loc)}`\n );\n };\n\n const updateFromInput = (e: Event, axis: \"x\" | \"y\") => {\n const target = e.target as HTMLInputElement;\n const nextValue = parseFloat(target.value);\n\n setValueChangedViaInputChangeEvent(true);\n if (axis === \"x\") {\n getState().setXValue(nextValue);\n } else {\n getState().setYValue(nextValue);\n }\n };\n\n // Calculate position from pointer event\n const getPositionFromEvent = (e: MouseEvent | PointerEvent) => {\n const area = areaRef();\n if (!area) return null;\n\n const rect = area.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return null;\n\n const physicalX = Math.max(0, Math.min(1, (e.clientX - rect.left) / rect.width));\n const x = isRTL() ? 1 - physicalX : physicalX;\n const y = Math.max(0, Math.min(1, (e.clientY - rect.top) / rect.height));\n\n return { x, y };\n };\n\n // Handle pointer down\n const onPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const pos = getPositionFromEvent(e);\n if (!pos) return;\n\n getState().setColorFromPoint(pos.x, pos.y);\n getState().setDragging(true);\n\n // Capture pointer for dragging\n (e.currentTarget as HTMLElement).setPointerCapture?.(e.pointerId);\n };\n\n // Handle pointer move\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n\n const pos = getPositionFromEvent(e);\n if (!pos) return;\n\n getState().setColorFromPoint(pos.x, pos.y);\n };\n\n // Handle pointer up\n const onPointerUp = (e: PointerEvent) => {\n if (getState().isDragging) {\n getState().setDragging(false);\n (e.currentTarget as HTMLElement).releasePointerCapture?.(e.pointerId);\n }\n };\n\n const onKeyDown = (e: KeyboardEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n const xStep =\n e.shiftKey && s.xChannelPageStep > s.xChannelStep ? s.xChannelPageStep : s.xChannelStep;\n const yStep =\n e.shiftKey && s.yChannelPageStep > s.yChannelStep ? s.yChannelPageStep : s.yChannelStep;\n let focusedAxis: \"x\" | \"y\" = \"x\";\n let handled = true;\n\n switch (e.key) {\n case \"ArrowRight\":\n if (isRTL()) {\n s.decrementX(xStep);\n } else {\n s.incrementX(xStep);\n }\n break;\n case \"ArrowLeft\":\n if (isRTL()) {\n s.incrementX(xStep);\n } else {\n s.decrementX(xStep);\n }\n break;\n case \"ArrowUp\":\n s.incrementY(yStep);\n focusedAxis = \"y\";\n break;\n case \"ArrowDown\":\n s.decrementY(yStep);\n focusedAxis = \"y\";\n break;\n case \"PageUp\":\n s.incrementY(s.yChannelPageStep);\n focusedAxis = \"y\";\n break;\n case \"PageDown\":\n s.decrementY(s.yChannelPageStep);\n focusedAxis = \"y\";\n break;\n case \"Home\":\n if (isRTL()) {\n s.incrementX(s.xChannelPageStep);\n } else {\n s.decrementX(s.xChannelPageStep);\n }\n break;\n case \"End\":\n if (isRTL()) {\n s.decrementX(s.xChannelPageStep);\n } else {\n s.incrementX(s.xChannelPageStep);\n }\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n setFocusedInput(focusedAxis);\n setValueChangedViaKeyboard(true);\n s.setDragging(true);\n s.setDragging(false);\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onFocusOut = (e: FocusEvent) => {\n const currentTarget = e.currentTarget as HTMLElement;\n const relatedTarget = e.relatedTarget as Node | null;\n if (!relatedTarget || !currentTarget.contains(relatedTarget)) {\n setValueChangedViaKeyboard(false);\n setValueChangedViaInputChangeEvent(false);\n }\n };\n\n // Color area props\n const colorAreaProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n id: p.id ?? colorAreaId,\n role: \"group\" as const,\n \"aria-label\": colorAreaLabel(),\n \"aria-labelledby\": p[\"aria-labelledby\"],\n onPointerDown,\n onPointerMove,\n onPointerUp,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n ...generateGradient(),\n },\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Generate gradient background for the color area\n function generateGradient(): Record<string, string> {\n const s = getState();\n const value = s.value;\n const xCh = s.xChannel;\n const yCh = s.yChannel;\n const zCh = s.zChannel;\n const zValue = value.getChannelValue(zCh);\n const end = isRTL() ? \"left\" : \"right\";\n\n const hue = (color: Color) =>\n [0, 60, 120, 180, 240, 300, 360]\n .map((h) => color.withChannelValue(\"hue\", h).toString(\"css\"))\n .join(\", \");\n\n const hslChannels: Record<string, (c: Color) => string> = {\n hue,\n saturation: (color) =>\n `${color.withChannelValue(\"saturation\", 0).toString(\"css\")}, transparent`,\n lightness: () => \"black, transparent, white\",\n };\n\n const hsbChannels: Record<string, (c: Color) => string> = {\n hue,\n saturation: (color) =>\n `${color.withChannelValue(\"saturation\", 0).toString(\"css\")}, transparent`,\n brightness: () => \"black, transparent\",\n };\n\n switch (value.getColorSpace()) {\n case \"rgb\": {\n const rgb = parseColor(\"rgb(0, 0, 0)\");\n return {\n background: [\n `linear-gradient(to ${end}, ${rgb.withChannelValue(xCh, 0).toString(\"css\")}, ${rgb.withChannelValue(xCh, 255).toString(\"css\")})`,\n `linear-gradient(to top, ${rgb.withChannelValue(yCh, 0).toString(\"css\")}, ${rgb.withChannelValue(yCh, 255).toString(\"css\")})`,\n rgb.withChannelValue(zCh, zValue).toString(\"css\"),\n ].join(\",\"),\n \"background-blend-mode\": \"screen\",\n };\n }\n case \"hsl\": {\n const channels = value.getColorChannels();\n const base = parseColor(\"hsl(0, 100%, 50%)\").withChannelValue(zCh, zValue);\n const bg = channels\n .filter((c: ColorChannel) => c !== zCh)\n .map(\n (c: ColorChannel) =>\n `linear-gradient(to ${c === xCh ? end : \"top\"}, ${hslChannels[c]?.(base) ?? \"\"})`,\n )\n .reverse();\n if (zCh === \"hue\") {\n bg.push(base.toString(\"css\"));\n }\n\n return {\n background: bg.join(\", \"),\n };\n }\n case \"hsb\": {\n const channels = value.getColorChannels();\n const base = parseColor(\"hsb(0, 100%, 100%)\").withChannelValue(zCh, zValue);\n const bg = channels\n .filter((c: ColorChannel) => c !== zCh)\n .map(\n (c: ColorChannel) =>\n `linear-gradient(to ${c === xCh ? end : \"top\"}, ${hsbChannels[c]?.(base) ?? \"\"})`,\n )\n .reverse();\n if (zCh === \"hue\") {\n bg.push(base.toString(\"css\"));\n }\n\n return {\n background: bg.join(\", \"),\n };\n }\n default:\n return {};\n }\n }\n\n // Gradient props (the visual area)\n const gradientProps = createMemo(() => {\n const gradientStyles = generateGradient();\n return {\n role: \"presentation\" as const,\n style: {\n width: \"100%\",\n height: \"100%\",\n \"forced-color-adjust\": \"none\" as const,\n ...gradientStyles,\n },\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const pos = s.getThumbPosition();\n const x = isRTL() ? 1 - pos.x : pos.x;\n\n return {\n role: \"presentation\" as const,\n style: {\n position: \"absolute\" as const,\n left: `${x * 100}%`,\n top: `${pos.y * 100}%`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n onKeyDown,\n onFocusOut,\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // X input props (hidden, for accessibility)\n const xInputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const xRange = s.value.getChannelRange(s.xChannel);\n\n return {\n type: \"range\",\n id: p.id ?? xInputId,\n \"aria-label\": colorInputLabel(),\n \"aria-roledescription\": stringFormatter().format(\"twoDimensionalSlider\"),\n \"aria-valuetext\": getAriaValueTextForChannel(s.xChannel),\n \"aria-orientation\": \"horizontal\" as const,\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n min: xRange.minValue,\n max: xRange.maxValue,\n step: xRange.step,\n value: s.getXValue(),\n name: p.xName,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-hidden\":\n !focusedInput() || focusedInput() === \"x\" || valueChangedViaKeyboard()\n ? undefined\n : (\"true\" as const),\n onFocus: () => setFocusedInput(\"x\"),\n onKeyDown,\n onInput: (e: Event) => updateFromInput(e, \"x\"),\n onChange: (e: Event) => updateFromInput(e, \"x\"),\n tabIndex: !focusedInput() || focusedInput() === \"x\" ? undefined : -1,\n style: {\n position: \"absolute\" as const,\n width: \"1px\",\n height: \"1px\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n },\n };\n });\n\n // Y input props (hidden, for accessibility)\n const yInputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const yRange = s.value.getChannelRange(s.yChannel);\n\n return {\n type: \"range\",\n id: p.id ?? yInputId,\n \"aria-label\": colorInputLabel(),\n \"aria-roledescription\": stringFormatter().format(\"twoDimensionalSlider\"),\n \"aria-valuetext\": getAriaValueTextForChannel(s.yChannel),\n \"aria-orientation\": \"vertical\" as const,\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n min: yRange.minValue,\n max: yRange.maxValue,\n step: yRange.step,\n value: s.getYValue(),\n name: p.yName,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-hidden\":\n focusedInput() === \"y\" || valueChangedViaKeyboard() ? undefined : (\"true\" as const),\n onFocus: () => setFocusedInput(\"y\"),\n onKeyDown,\n onInput: (e: Event) => updateFromInput(e, \"y\"),\n onChange: (e: Event) => updateFromInput(e, \"y\"),\n tabIndex: focusedInput() === \"y\" ? undefined : -1,\n style: {\n position: \"absolute\" as const,\n width: \"1px\",\n height: \"1px\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n },\n };\n });\n\n return {\n get colorAreaProps() {\n return colorAreaProps();\n },\n get gradientProps() {\n return gradientProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get xInputProps() {\n return xInputProps();\n },\n get yInputProps() {\n return yInputProps();\n },\n };\n}\n","/**\n * createColorWheel hook.\n *\n * Provides ARIA attributes and keyboard/pointer handling for a circular hue selector.\n */\n\nimport { createMemo, onCleanup, type Accessor } from \"solid-js\";\nimport type { ColorWheelState } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport type { AriaColorWheelOptions, ColorWheelAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color wheel.\n */\nexport function createColorWheel(\n props: Accessor<AriaColorWheelOptions>,\n state: Accessor<ColorWheelState>,\n wheelRef: Accessor<HTMLDivElement | null>,\n): ColorWheelAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n\n // Generate IDs\n const inputId = createId();\n let cleanupPointerDrag: (() => void) | undefined;\n let cleanupMouseDrag: (() => void) | undefined;\n let dragElement: HTMLElement | null = null;\n\n const outerRadius = () => getProps().outerRadius ?? 100;\n const innerRadius = () => getProps().innerRadius ?? 74;\n const thumbRadius = () => (innerRadius() + outerRadius()) / 2;\n\n const getInput = () => wheelRef()?.querySelector<HTMLInputElement>('input[type=\"range\"]') ?? null;\n const focusInput = () => {\n focusWithoutScrolling(getInput());\n queueMicrotask(() => focusWithoutScrolling(getInput()));\n };\n\n const getPointFromEvent = (clientX: number, clientY: number, element?: HTMLElement | null) => {\n const wheel = element ?? dragElement ?? wheelRef();\n if (!wheel) return null;\n\n const rect = wheel.getBoundingClientRect();\n const centerX = rect.left + rect.width / 2;\n const centerY = rect.top + rect.height / 2;\n\n return {\n x: clientX - centerX,\n y: clientY - centerY,\n };\n };\n\n const updateFromPoint = (\n clientX: number,\n clientY: number,\n requireTrackHit = false,\n element?: HTMLElement | null,\n ) => {\n if (getProps().isDisabled || getState().isDisabled) return false;\n\n const point = getPointFromEvent(clientX, clientY, element);\n if (!point) return false;\n\n const distance = Math.sqrt(point.x ** 2 + point.y ** 2);\n if (requireTrackHit && (distance <= innerRadius() || distance >= outerRadius())) {\n return false;\n }\n\n getState().setHueFromPoint(point.x, point.y, thumbRadius());\n return true;\n };\n\n const endDrag = () => {\n if (!getState().isDragging) return;\n getState().setDragging(false);\n dragElement = null;\n focusInput();\n };\n\n const installPointerDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupPointerDrag?.();\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPoint(e.clientX, e.clientY);\n };\n const onPointerEnd = () => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag();\n };\n\n window.addEventListener(\"pointermove\", onPointerMove);\n window.addEventListener(\"pointerup\", onPointerEnd);\n window.addEventListener(\"pointercancel\", onPointerEnd);\n\n cleanupPointerDrag = () => {\n window.removeEventListener(\"pointermove\", onPointerMove);\n window.removeEventListener(\"pointerup\", onPointerEnd);\n window.removeEventListener(\"pointercancel\", onPointerEnd);\n };\n };\n\n const installMouseDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupMouseDrag?.();\n\n const onMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPoint(e.clientX, e.clientY);\n };\n const onMouseEnd = () => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag();\n };\n\n window.addEventListener(\"mousemove\", onMouseMove);\n window.addEventListener(\"mouseup\", onMouseEnd);\n\n cleanupMouseDrag = () => {\n window.removeEventListener(\"mousemove\", onMouseMove);\n window.removeEventListener(\"mouseup\", onMouseEnd);\n };\n };\n\n onCleanup(() => {\n cleanupPointerDrag?.();\n cleanupMouseDrag?.();\n });\n\n const onTrackPointerDown = (e: PointerEvent) => {\n dragElement = e.currentTarget as HTMLElement;\n if (!updateFromPoint(e.clientX, e.clientY, true, dragElement)) {\n dragElement = null;\n return;\n }\n focusInput();\n getState().setDragging(true);\n installPointerDragListeners();\n e.preventDefault();\n };\n\n const onTrackMouseDown = (e: MouseEvent) => {\n dragElement = e.currentTarget as HTMLElement;\n if (!updateFromPoint(e.clientX, e.clientY, true, dragElement)) {\n dragElement = null;\n return;\n }\n focusInput();\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n };\n\n const onThumbPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n focusInput();\n getState().setDragging(true);\n installPointerDragListeners();\n e.preventDefault();\n e.stopPropagation();\n };\n\n const onThumbMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n focusInput();\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n e.stopPropagation();\n };\n\n // Handle keyboard\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.defaultPrevented) return;\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n let handled = true;\n\n switch (e.key) {\n case \"ArrowRight\":\n case \"ArrowUp\":\n s.increment();\n break;\n case \"ArrowLeft\":\n case \"ArrowDown\":\n s.decrement();\n break;\n case \"PageUp\":\n s.increment(s.pageStep);\n break;\n case \"PageDown\":\n s.decrement(s.pageStep);\n break;\n case \"Home\":\n s.setHue(0);\n break;\n case \"End\":\n s.setHue(359);\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n s.setDragging(true);\n s.setDragging(false);\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n // Hue spectrum conic gradient\n const conicGradient = `conic-gradient(from 90deg, hsl(0, 100%, 50%), hsl(30, 100%, 50%), hsl(60, 100%, 50%), hsl(90, 100%, 50%), hsl(120, 100%, 50%), hsl(150, 100%, 50%), hsl(180, 100%, 50%), hsl(210, 100%, 50%), hsl(240, 100%, 50%), hsl(270, 100%, 50%), hsl(300, 100%, 50%), hsl(330, 100%, 50%), hsl(360, 100%, 50%))`;\n\n const ringPath = () => {\n const outer = outerRadius();\n const inner = innerRadius();\n const circlePath = (radius: number) =>\n [\n `M ${outer}, ${outer} m ${-radius}, 0`,\n `a ${radius}, ${radius}, 0, 1, 0, ${radius * 2}, 0`,\n `a ${radius}, ${radius}, 0, 1, 0 ${-radius * 2}, 0`,\n ].join(\" \");\n return `path(evenodd, \"${circlePath(outer)} ${circlePath(inner)}\")`;\n };\n\n // Track props (the wheel container)\n const trackProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n onPointerDown: onTrackPointerDown,\n onMouseDown: onTrackMouseDown,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n width: `${outerRadius() * 2}px`,\n height: `${outerRadius() * 2}px`,\n background: conicGradient,\n \"clip-path\": ringPath(),\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const position = s.getThumbPosition(thumbRadius());\n\n return {\n onPointerDown: onThumbPointerDown,\n onMouseDown: onThumbMouseDown,\n onKeyDown,\n style: {\n position: \"absolute\" as const,\n left: `${outerRadius() + position.x}px`,\n top: `${outerRadius() + position.y}px`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Input props (hidden, for accessibility)\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n type: \"range\",\n id: p.id ?? inputId,\n min: 0,\n max: 360,\n step: s.step,\n value: s.getHue(),\n name: p.name,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-label\":\n p[\"aria-label\"] ??\n (p[\"aria-labelledby\"] ? undefined : s.value.getChannelName(\"hue\", locale().locale)),\n \"aria-labelledby\": p[\"aria-labelledby\"],\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n \"aria-errormessage\": p[\"aria-errormessage\"],\n \"aria-valuetext\": `${s.value.formatChannelValue(\"hue\", locale().locale)}, ${s.value.getHueName(locale().locale)}`,\n onKeyDown,\n onInput: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setHue(parseFloat(target.value));\n },\n onChange: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setHue(parseFloat(target.value));\n },\n style: {\n position: \"absolute\" as const,\n width: \"100%\",\n height: \"100%\",\n opacity: \"0.0001\",\n padding: \"0\",\n margin: \"0\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n \"pointer-events\": \"none\" as const,\n },\n };\n });\n\n return {\n get trackProps() {\n return trackProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get inputProps() {\n return inputProps();\n },\n };\n}\n","/**\n * createColorField hook.\n *\n * Provides ARIA attributes and keyboard handling for a color input field.\n */\n\nimport { createEffect, createMemo, type Accessor } from \"solid-js\";\nimport type { ColorFieldState } from \"@proyecto-viviana/solid-stately\";\nimport { createId } from \"../ssr\";\nimport type { AriaColorFieldOptions, ColorFieldAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color field.\n */\nexport function createColorField(\n props: Accessor<AriaColorFieldOptions>,\n state: Accessor<ColorFieldState>,\n inputRef: Accessor<HTMLInputElement | null>,\n): ColorFieldAria {\n const getProps = () => props();\n const getState = () => state();\n\n const generatedInputId = createId();\n const labelId = createId();\n const descriptionId = createId();\n const errorMessageId = createId();\n\n let didAutoFocus = false;\n createEffect(() => {\n const input = inputRef();\n if (!didAutoFocus && getProps().autoFocus && input) {\n didAutoFocus = true;\n input.focus();\n }\n });\n\n const isDisabled = () => getProps().isDisabled || getState().isDisabled;\n const isReadOnly = () => getProps().isReadOnly || getState().isReadOnly;\n const isInvalid = () => getProps().isInvalid || getState().isInvalid;\n const validationBehavior = () => getProps().validationBehavior ?? \"native\";\n\n const onKeyDown = (e: KeyboardEvent) => {\n const s = getState();\n\n if (isDisabled() || isReadOnly()) {\n return;\n }\n\n let handled = true;\n\n switch (e.key) {\n case \"ArrowUp\":\n s.increment();\n break;\n case \"ArrowDown\":\n s.decrement();\n break;\n case \"PageUp\":\n s.incrementToMax();\n break;\n case \"PageDown\":\n s.decrementToMin();\n break;\n case \"Home\":\n s.decrementToMin();\n break;\n case \"End\":\n s.incrementToMax();\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n e.preventDefault();\n }\n };\n\n const onWheel = (e: WheelEvent) => {\n const p = getProps();\n const s = getState();\n\n if (\n p.isWheelDisabled ||\n isDisabled() ||\n isReadOnly() ||\n document.activeElement !== inputRef()\n ) {\n return;\n }\n\n if (e.deltaY < 0) {\n s.increment();\n } else if (e.deltaY > 0) {\n s.decrement();\n } else {\n return;\n }\n\n e.preventDefault();\n };\n\n const labelProps = createMemo(() => {\n return {\n id: labelId,\n for: getProps().id ?? generatedInputId,\n };\n });\n\n const descriptionProps = createMemo(() => ({\n id: descriptionId,\n }));\n\n const errorMessageProps = createMemo(() => ({\n id: getProps()[\"aria-errormessage\"] ?? errorMessageId,\n }));\n\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const channelLabel =\n s.channel && s.colorValue ? s.colorValue.getChannelName(s.channel, \"en-US\") : undefined;\n const required = p.isRequired || s.isRequired;\n const invalid = isInvalid();\n const describedBy = p[\"aria-describedby\"];\n\n return {\n id: p.id ?? generatedInputId,\n type: \"text\",\n value: s.inputValue,\n name: s.channel ? undefined : p.name,\n form: s.channel ? undefined : p.form,\n placeholder: p.placeholder,\n disabled: isDisabled(),\n readOnly: isReadOnly(),\n required: validationBehavior() === \"native\" ? required || undefined : undefined,\n // Upstream routes the input through useFormattedTextField → useTextField →\n // useFocusable, which ALWAYS sets a tabIndex (\"so that Safari allows focusing\n // native buttons and inputs\"): `excludeFromTabOrder ? -1 : 0`, then `undefined`\n // when disabled (useFocusable.mjs:65-66). We hand-roll inputProps, so replay that\n // one focusable prop here — the port previously dropped the default `0`, so the\n // rendered input carried no `tabindex` while React's carries `tabindex=\"0\"` (a D5\n // focus-trail divergence), exactly as createNumberField already replays it.\n tabIndex: isDisabled() ? undefined : p.excludeFromTabOrder ? -1 : 0,\n autoComplete: \"off\",\n autoCorrect: \"off\",\n spellCheck: \"false\",\n \"aria-label\": p[\"aria-label\"] ?? channelLabel,\n \"aria-labelledby\": p[\"aria-labelledby\"],\n \"aria-describedby\": describedBy,\n \"aria-details\": p[\"aria-details\"],\n \"aria-errormessage\": invalid ? (p[\"aria-errormessage\"] ?? errorMessageId) : undefined,\n \"aria-invalid\": invalid || undefined,\n \"aria-required\": validationBehavior() === \"aria\" && required ? true : undefined,\n role: s.channel ? undefined : (\"textbox\" as const),\n \"aria-valuenow\": undefined,\n \"aria-valuemin\": undefined,\n \"aria-valuemax\": undefined,\n \"aria-valuetext\": undefined,\n onInput: (e: InputEvent) => {\n const target = e.target as HTMLInputElement;\n if (s.validate(target.value)) {\n s.setInputValue(target.value);\n } else {\n target.value = s.inputValue;\n }\n },\n onChange: () => {\n s.commit();\n },\n onBlur: () => {\n s.commit();\n },\n onKeyDown,\n onWheel,\n };\n });\n\n return {\n get labelProps() {\n return labelProps();\n },\n get inputProps() {\n return inputProps();\n },\n get descriptionProps() {\n return descriptionProps();\n },\n get errorMessageProps() {\n return errorMessageProps();\n },\n };\n}\n","/**\n * createColorSwatch hook.\n *\n * Provides ARIA attributes for a color swatch display.\n */\n\nimport { createMemo, type Accessor } from \"solid-js\";\nimport { normalizeColor } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { filterDOMProps } from \"../utils/filterDOMProps\";\nimport { createColorStringFormatter } from \"./intl\";\nimport type { AriaColorSwatchOptions, ColorSwatchAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color swatch.\n */\nexport function createColorSwatch(props: Accessor<AriaColorSwatchOptions>): ColorSwatchAria {\n const getProps = () => props();\n const locale = useLocale();\n const stringFormatter = createColorStringFormatter();\n const generatedId = createId();\n const id = () => getProps().id ?? generatedId;\n\n const color = createMemo(() => normalizeColor(getProps().color ?? \"#fff0\"));\n\n const colorName = createMemo(() => {\n const p = getProps();\n if (p.colorName) return p.colorName;\n\n const resolvedColor = color();\n if (resolvedColor.getChannelValue(\"alpha\") === 0) {\n return stringFormatter().format(\"transparent\");\n }\n\n return resolvedColor.getColorName(locale().locale);\n });\n\n const swatchProps = createMemo(() => {\n const p = getProps();\n const domProps = filterDOMProps(p as Record<string, unknown>, { labelable: true });\n const ariaLabel = [colorName(), p[\"aria-label\"] || \"\"].filter(Boolean).join(\", \");\n\n return {\n ...domProps,\n id: id(),\n slot: p.slot,\n role: \"img\" as const,\n \"aria-roledescription\": stringFormatter().format(\"colorSwatch\"),\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": p[\"aria-labelledby\"] ? `${id()} ${p[\"aria-labelledby\"]}` : undefined,\n style: {\n \"background-color\": color().toString(\"css\"),\n \"forced-color-adjust\": \"none\" as const,\n },\n };\n });\n\n return {\n get swatchProps() {\n return swatchProps();\n },\n get color() {\n return color();\n },\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"color.js","names":["createId","createId","createId","createId","createId"],"sources":["../../src/color/createColorSlider.ts","../../src/color/intl/index.ts","../../src/color/createColorArea.ts","../../src/color/createColorWheel.ts","../../src/color/createColorField.ts","../../src/color/createColorSwatch.ts"],"sourcesContent":["/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/src/color/useColorSlider.ts\n\n/**\n * createColorSlider hook.\n *\n * Provides ARIA attributes and keyboard handling for a color slider.\n *\n * Ported from packages/react-aria/src/color/useColorSlider.ts.\n */\n\nimport { onOwnedCleanup } from \"../utils/owner\";\nimport { createMemo } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\nimport type { ColorSliderState } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport type { AriaColorSliderOptions, ColorSliderAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color slider.\n */\nexport function createColorSlider(\n props: Accessor<AriaColorSliderOptions>,\n state: Accessor<ColorSliderState>,\n trackRef: Accessor<HTMLDivElement | null>,\n inputRef?: Accessor<HTMLInputElement | null>,\n): ColorSliderAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n const isRTL = () => locale().direction === \"rtl\";\n\n // Generate IDs\n const trackId = createId();\n const inputId = createId();\n const labelId = createId();\n let cleanupPointerDrag: (() => void) | undefined;\n let cleanupMouseDrag: (() => void) | undefined;\n\n const getInput = () =>\n inputRef?.() ?? trackRef()?.querySelector<HTMLInputElement>('input[type=\"range\"]') ?? null;\n const focusInput = () => {\n focusWithoutScrolling(getInput());\n queueMicrotask(() => focusWithoutScrolling(getInput()));\n };\n\n // Get channel name for ARIA label\n const channelName = createMemo(() => {\n const p = getProps();\n if (p.channelName) return p.channelName;\n const s = getState();\n return s.value.getChannelName(s.channel, locale().locale);\n });\n\n const orientation = () => getProps().orientation ?? \"horizontal\";\n const hasVisibleLabel = () => getProps().label != null;\n const trackElementId = () => getProps().id ?? trackId;\n const trackLabelledBy = () => {\n const p = getProps();\n return p[\"aria-labelledby\"] ?? (hasVisibleLabel() ? labelId : undefined);\n };\n const inputLabelledBy = () => (hasVisibleLabel() ? labelId : trackElementId());\n const trackAriaLabel = () => {\n const p = getProps();\n if (p[\"aria-label\"]) return p[\"aria-label\"];\n if (p[\"aria-labelledby\"] || hasVisibleLabel()) return undefined;\n return channelName();\n };\n\n const updateFromPointer = (clientX: number, clientY: number) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const track = trackRef();\n if (!track) return;\n\n const rect = track.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return;\n\n let percent: number;\n if (orientation() === \"vertical\") {\n percent = 1 - (clientY - rect.top) / rect.height;\n } else {\n const physicalPercent = (clientX - rect.left) / rect.width;\n percent = isRTL() ? 1 - physicalPercent : physicalPercent;\n }\n\n getState().setThumbPercent(Math.max(0, Math.min(1, percent)));\n };\n\n const endDrag = (target: EventTarget | null, pointerId?: number) => {\n const s = getState();\n if (!s.isDragging) return;\n s.setDragging(false);\n focusInput();\n if (pointerId == null) return;\n try {\n (target as HTMLElement | null)?.releasePointerCapture?.(pointerId);\n } catch {\n // Some synthetic pointer sequences do not have active capture by the time\n // drag end runs. React Aria treats capture as best-effort as well.\n }\n };\n\n const installPointerDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupPointerDrag?.();\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n const onPointerEnd = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(trackRef(), e.pointerId);\n };\n\n window.addEventListener(\"pointermove\", onPointerMove);\n window.addEventListener(\"pointerup\", onPointerEnd);\n window.addEventListener(\"pointercancel\", onPointerEnd);\n\n cleanupPointerDrag = () => {\n window.removeEventListener(\"pointermove\", onPointerMove);\n window.removeEventListener(\"pointerup\", onPointerEnd);\n window.removeEventListener(\"pointercancel\", onPointerEnd);\n };\n };\n\n const installMouseDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupMouseDrag?.();\n\n const onMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n const onMouseEnd = () => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag(trackRef());\n };\n\n window.addEventListener(\"mousemove\", onMouseMove);\n window.addEventListener(\"mouseup\", onMouseEnd);\n\n cleanupMouseDrag = () => {\n window.removeEventListener(\"mousemove\", onMouseMove);\n window.removeEventListener(\"mouseup\", onMouseEnd);\n };\n };\n\n onOwnedCleanup(() => {\n cleanupPointerDrag?.();\n cleanupMouseDrag?.();\n });\n\n // Handle pointer interaction on the track\n const onTrackPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n updateFromPointer(e.clientX, e.clientY);\n focusInput();\n getState().setDragging(true);\n try {\n (e.currentTarget as HTMLElement).setPointerCapture?.(e.pointerId);\n } catch {\n // Keep drag behavior working in environments where pointer capture is not\n // active for this event, including Playwright's synthetic mouse pointer.\n }\n installPointerDragListeners();\n e.preventDefault();\n };\n\n const onTrackPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n\n const onTrackPointerUp = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(e.currentTarget, e.pointerId);\n };\n\n const onTrackPointerCancel = (e: PointerEvent) => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag(e.currentTarget, e.pointerId);\n };\n\n const onTrackMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n updateFromPointer(e.clientX, e.clientY);\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n };\n\n const onTrackMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPointer(e.clientX, e.clientY);\n };\n\n const onTrackMouseUp = (e: MouseEvent) => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag(e.currentTarget);\n };\n\n // Handle keyboard\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.defaultPrevented) return;\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n let handled = true;\n\n switch (e.key) {\n case \"ArrowUp\":\n s.incrementThumb();\n break;\n case \"ArrowDown\":\n s.decrementThumb();\n break;\n case \"ArrowRight\":\n if (orientation() === \"horizontal\" && isRTL()) {\n s.decrementThumb();\n } else {\n s.incrementThumb();\n }\n break;\n case \"ArrowLeft\":\n if (orientation() === \"horizontal\" && isRTL()) {\n s.incrementThumb();\n } else {\n s.decrementThumb();\n }\n break;\n case \"PageUp\":\n s.incrementThumb(s.pageSize);\n break;\n case \"PageDown\":\n s.decrementThumb(s.pageSize);\n break;\n case \"Home\":\n s.setThumbValue(s.minValue);\n break;\n case \"End\":\n s.setThumbValue(s.maxValue);\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n s.setDragging(true);\n s.setDragging(false);\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n // Generate gradient background for the slider track\n const generateBackground = () => {\n const s = getState();\n const value = s.getDisplayColor();\n const channel = s.channel;\n const to = orientation() === \"vertical\" ? \"top\" : isRTL() ? \"left\" : \"right\";\n\n switch (channel) {\n case \"hue\": {\n const stops = [0, 60, 120, 180, 240, 300, 360]\n .map((hue) => value.withChannelValue(\"hue\", hue).toString(\"css\"))\n .join(\", \");\n return `linear-gradient(to ${to}, ${stops})`;\n }\n case \"lightness\": {\n const min = s.minValue;\n const max = s.maxValue;\n const start = value.withChannelValue(channel, min).toString(\"css\");\n const middle = value.withChannelValue(channel, (max - min) / 2).toString(\"css\");\n const end = value.withChannelValue(channel, max).toString(\"css\");\n return `linear-gradient(to ${to}, ${start}, ${middle}, ${end})`;\n }\n case \"saturation\":\n case \"brightness\":\n case \"red\":\n case \"green\":\n case \"blue\":\n case \"alpha\": {\n const start = value.withChannelValue(channel, s.minValue).toString(\"css\");\n const end = value.withChannelValue(channel, s.maxValue).toString(\"css\");\n return `linear-gradient(to ${to}, ${start}, ${end})`;\n }\n default:\n return undefined;\n }\n };\n\n // Track props\n const trackProps = createMemo(() => {\n const s = getState();\n const bg = generateBackground();\n return {\n id: trackElementId(),\n role: \"group\" as const,\n \"aria-label\": trackAriaLabel(),\n \"aria-labelledby\": trackLabelledBy(),\n onPointerDown: onTrackPointerDown,\n onPointerMove: onTrackPointerMove,\n onPointerUp: onTrackPointerUp,\n onPointerCancel: onTrackPointerCancel,\n onMouseDown: onTrackMouseDown,\n onMouseMove: onTrackMouseMove,\n onMouseUp: onTrackMouseUp,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n ...(bg ? { background: bg } : {}),\n },\n \"data-disabled\": s.isDisabled || undefined,\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const percent = s.getThumbPercent();\n const x = orientation() === \"horizontal\" ? (isRTL() ? 1 - percent : percent) : 0.5;\n const y = orientation() === \"horizontal\" ? 0.5 : 1 - percent;\n\n return {\n onKeyDown,\n style: {\n position: \"absolute\" as const,\n left: `${x * 100}%`,\n top: `${y * 100}%`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n const ariaValueText = () => {\n const s = getState();\n const loc = locale().locale;\n const displayColor = s.getDisplayColor();\n let valueText = s.getThumbValueLabel();\n\n if (s.channel === \"hue\") {\n valueText += `, ${displayColor.getHueName(loc)}`;\n } else if (s.channel !== \"alpha\") {\n valueText += `, ${displayColor.getColorName(loc)}`;\n }\n\n return valueText;\n };\n\n // Input props (hidden, for accessibility)\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n type: \"range\",\n id: inputId,\n min: s.minValue,\n max: s.maxValue,\n step: s.step,\n value: s.getThumbValue(),\n name: p.name,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n tabIndex: s.isDisabled || p.isDisabled ? undefined : 0,\n \"aria-orientation\": orientation(),\n \"aria-labelledby\": inputLabelledBy(),\n \"aria-describedby\": p[\"aria-describedby\"] ?? \"\",\n \"aria-details\": p[\"aria-details\"] ?? \"\",\n \"aria-valuetext\": ariaValueText(),\n onKeyDown,\n onInput: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setThumbValue(parseFloat(target.value));\n },\n onChange: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setThumbValue(parseFloat(target.value));\n s.setDragging(true);\n s.setDragging(false);\n },\n onFocus: () => {\n // Focus handling\n },\n style: {\n position: \"absolute\" as const,\n opacity: \"0.0001\",\n width: \"100%\",\n height: \"100%\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n \"pointer-events\": \"none\" as const,\n },\n };\n });\n\n // Output props\n const outputProps = createMemo(() => {\n return {\n \"aria-live\": \"off\" as const,\n for: inputId,\n };\n });\n\n // Label props\n const labelProps = createMemo(() => {\n return {\n id: labelId,\n onClick: () => {\n if (typeof document !== \"undefined\") {\n document.getElementById(inputId)?.focus();\n }\n },\n };\n });\n\n return {\n get trackProps() {\n return trackProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get inputProps() {\n return inputProps();\n },\n get outputProps() {\n return outputProps();\n },\n get labelProps() {\n return labelProps();\n },\n };\n}\n","// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/ar-AE.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/bg-BG.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/cs-CZ.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/da-DK.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/de-DE.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/el-GR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/en-US.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/es-ES.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/et-EE.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/fi-FI.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/fr-FR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/he-IL.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/hr-HR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/hu-HU.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/it-IT.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/ja-JP.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/ko-KR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/lt-LT.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/lv-LV.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/nb-NO.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/nl-NL.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/pl-PL.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/pt-BR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/pt-PT.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/ro-RO.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/ru-RU.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/sk-SK.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/sl-SI.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/sr-SP.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/sv-SE.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/tr-TR.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/uk-UA.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/zh-CN.json\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/intl/color/zh-TW.json\n\n/**\n * Color internationalization strings.\n *\n * Port of `@react-aria/color`'s intl catalog — the `colorPicker`,\n * `twoDimensionalSlider`, `colorSwatch`, `transparent`, `colorNameAndValue`,\n * and `colorInputLabel` messages across all 34 upstream locales. Consumed via\n * `createColorStringFormatter`, mirroring upstream's\n * `useLocalizedStringFormatter(intlMessages, '@react-aria/color')`.\n *\n * The per-locale message SEPARATORS differ (e.g. CJK `:`/`、`, French\n * non-breaking ` :`), so each locale's function form is preserved\n * verbatim rather than shared.\n */\n\nimport type { LocalizedStrings } from \"@internationalized/string\";\nimport { createStringFormatter } from \"../../i18n\";\n\nexport type ColorIntlKey =\n | \"colorPicker\"\n | \"twoDimensionalSlider\"\n | \"colorSwatch\"\n | \"transparent\"\n | \"colorNameAndValue\"\n | \"colorInputLabel\";\n\nexport type ColorIntlVariables = {\n name?: string;\n value?: string;\n label?: string;\n channelLabel?: string;\n};\n\ntype ColorIntlMessage = string | ((args: ColorIntlVariables | undefined) => string);\n\nexport const colorIntlStrings: LocalizedStrings<ColorIntlKey, ColorIntlMessage> = {\n \"ar-AE\": {\n colorPicker: \"أداة انتقاء اللون\",\n twoDimensionalSlider: \"مُنزلق 2D\",\n colorSwatch: \"تغيير الألوان\",\n transparent: \"شفاف\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"bg-BG\": {\n colorPicker: \"Средство за избиране на цвят\",\n twoDimensionalSlider: \"2D плъзгач\",\n colorSwatch: \"цветна мостра\",\n transparent: \"прозрачен\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"cs-CZ\": {\n colorPicker: \"Výběr barvy\",\n twoDimensionalSlider: \"2D posuvník\",\n colorSwatch: \"barevný vzorek\",\n transparent: \"průhledný\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"da-DK\": {\n colorPicker: \"Farvevælger\",\n twoDimensionalSlider: \"2D-skyder\",\n colorSwatch: \"farveprøve\",\n transparent: \"gennemsigtig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"de-DE\": {\n colorPicker: \"Farbwähler\",\n twoDimensionalSlider: \"2D-Schieberegler\",\n colorSwatch: \"Farbfeld\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"el-GR\": {\n colorPicker: \"Επιλογέας χρωμάτων\",\n twoDimensionalSlider: \"Ρυθμιστικό 2D\",\n colorSwatch: \"χρωματικό δείγμα\",\n transparent: \"διαφανές\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"en-US\": {\n colorPicker: \"Color picker\",\n twoDimensionalSlider: \"2D slider\",\n colorSwatch: \"color swatch\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"es-ES\": {\n colorPicker: \"Selector de color\",\n twoDimensionalSlider: \"Regulador 2D\",\n colorSwatch: \"muestra de color\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"et-EE\": {\n colorPicker: \"Värvivalija\",\n twoDimensionalSlider: \"2D-liugur\",\n colorSwatch: \"värvinäidis\",\n transparent: \"läbipaistev\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"fi-FI\": {\n colorPicker: \"Värimuokkain\",\n twoDimensionalSlider: \"2D-liukusäädin\",\n colorSwatch: \"värimalli\",\n transparent: \"läpinäkyvä\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"fr-FR\": {\n colorPicker: \"Sélecteur de couleurs\",\n twoDimensionalSlider: \"Curseur 2D\",\n colorSwatch: \"Échantillon de couleurs\",\n transparent: \"Transparent\",\n colorNameAndValue: (args) => `${args?.name} : ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"he-IL\": {\n colorPicker: \"בוחר הצבעים\",\n twoDimensionalSlider: \"מחוון דו מימדי\",\n colorSwatch: \"דוגמית צבע\",\n transparent: \"שקוף\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"hr-HR\": {\n colorPicker: \"Odabir boje\",\n twoDimensionalSlider: \"2D klizač\",\n colorSwatch: \"uzorak boje\",\n transparent: \"transparentno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"hu-HU\": {\n colorPicker: \"Színválasztó\",\n twoDimensionalSlider: \"2D-csúszka\",\n colorSwatch: \"színtár\",\n transparent: \"átlátszó\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"it-IT\": {\n colorPicker: \"Selettore colore\",\n twoDimensionalSlider: \"Cursore 2D\",\n colorSwatch: \"campione di colore\",\n transparent: \"trasparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ja-JP\": {\n colorPicker: \"カラーピッカー\",\n twoDimensionalSlider: \"2D スライダー\",\n colorSwatch: \"カラースウォッチ\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name} : ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}、${args?.channelLabel}`,\n },\n \"ko-KR\": {\n colorPicker: \"색상 피커\",\n twoDimensionalSlider: \"2D 슬라이더\",\n colorSwatch: \"색상 견본\",\n transparent: \"투명도\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"lt-LT\": {\n colorPicker: \"Spalvų parinkiklis\",\n twoDimensionalSlider: \"2D slankiklis\",\n colorSwatch: \"spalvų pavyzdys\",\n transparent: \"skaidrus\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"lv-LV\": {\n colorPicker: \"Krāsu atlasītājs\",\n twoDimensionalSlider: \"2D slīdnis\",\n colorSwatch: \"krāsu paraugs\",\n transparent: \"caurspīdīgs\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"nb-NO\": {\n colorPicker: \"Fargevelger\",\n twoDimensionalSlider: \"2D-glidebryter\",\n colorSwatch: \"fargekart\",\n transparent: \"gjennomsiktig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"nl-NL\": {\n colorPicker: \"Kleurkiezer\",\n twoDimensionalSlider: \"2D-schuifregelaar\",\n colorSwatch: \"kleurstaal\",\n transparent: \"transparant\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pl-PL\": {\n colorPicker: \"Próbnik kolorów\",\n twoDimensionalSlider: \"Suwak 2D\",\n colorSwatch: \"próbka koloru\",\n transparent: \"przezroczysty\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pt-BR\": {\n colorPicker: \"Seletor de cores\",\n twoDimensionalSlider: \"Controle deslizante 2D\",\n colorSwatch: \"amostra de cores\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"pt-PT\": {\n colorPicker: \"Seletor de cores\",\n twoDimensionalSlider: \"Controle deslizante 2D\",\n colorSwatch: \"amostra de cor\",\n transparent: \"transparente\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ro-RO\": {\n colorPicker: \"Selector de culori\",\n twoDimensionalSlider: \"Glisor 2D\",\n colorSwatch: \"specimen de culoare\",\n transparent: \"transparent\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"ru-RU\": {\n colorPicker: \"Палитра цветов\",\n twoDimensionalSlider: \"Ползунок 2D\",\n colorSwatch: \"цветовой образец\",\n transparent: \"прозрачный\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sk-SK\": {\n colorPicker: \"Výber farieb\",\n twoDimensionalSlider: \"2D jazdec\",\n colorSwatch: \"vzorkovník farieb\",\n transparent: \"transparentný\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sl-SI\": {\n colorPicker: \"Izbirnik barv\",\n twoDimensionalSlider: \"2D drsnik\",\n colorSwatch: \"barvna paleta\",\n transparent: \"prozorno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sr-SP\": {\n colorPicker: \"Birač boja\",\n twoDimensionalSlider: \"2D klizač\",\n colorSwatch: \"Uzorak boje\",\n transparent: \"providno\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"sv-SE\": {\n colorPicker: \"Färgväljaren\",\n twoDimensionalSlider: \"2D-reglage\",\n colorSwatch: \"färgruta\",\n transparent: \"genomskinlig\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"tr-TR\": {\n colorPicker: \"Renk Seçici\",\n twoDimensionalSlider: \"2D sürgü\",\n colorSwatch: \"renk örneği\",\n transparent: \"saydam\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"uk-UA\": {\n colorPicker: \"Палітра кольорів\",\n twoDimensionalSlider: \"Повзунок 2D\",\n colorSwatch: \"зразок кольору\",\n transparent: \"прозорий\",\n colorNameAndValue: (args) => `${args?.name}: ${args?.value}`,\n colorInputLabel: (args) => `${args?.label}, ${args?.channelLabel}`,\n },\n \"zh-CN\": {\n colorPicker: \"拾色器\",\n twoDimensionalSlider: \"2D 滑块\",\n colorSwatch: \"颜色色板\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name}:${args?.value}`,\n colorInputLabel: (args) => `${args?.label}、${args?.channelLabel}`,\n },\n \"zh-TW\": {\n colorPicker: \"檢色器\",\n twoDimensionalSlider: \"2D 滑桿\",\n colorSwatch: \"色票\",\n transparent: \"透明\",\n colorNameAndValue: (args) => `${args?.name}:${args?.value}`,\n colorInputLabel: (args) => `${args?.label},${args?.channelLabel}`,\n },\n};\n\n/**\n * Reactive color string formatter for the current locale. Mirrors upstream\n * `useLocalizedStringFormatter(intlMessages, '@react-aria/color')`.\n */\nexport function createColorStringFormatter() {\n return createStringFormatter(colorIntlStrings, \"@react-aria/color\");\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/src/color/useColorArea.ts\n\n/**\n * createColorArea hook.\n *\n * Provides ARIA attributes and keyboard/pointer handling for a 2D color area.\n *\n * Ported from packages/react-aria/src/color/useColorArea.ts.\n */\n\nimport { onOwnedCleanup } from \"../utils/owner\";\nimport { createMemo, createSignal } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\nimport type { Color, ColorAreaState, ColorChannel } from \"@proyecto-viviana/solid-stately\";\nimport { parseColor } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport { createColorStringFormatter } from \"./intl\";\nimport type { AriaColorAreaOptions, ColorAreaAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color area.\n */\nexport function createColorArea(\n props: Accessor<AriaColorAreaOptions>,\n state: Accessor<ColorAreaState>,\n areaRef: Accessor<HTMLDivElement | null>,\n inputXRef?: Accessor<HTMLInputElement | null | undefined>,\n inputYRef?: Accessor<HTMLInputElement | null | undefined>,\n): ColorAreaAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n const stringFormatter = createColorStringFormatter();\n const isRTL = () => locale().direction === \"rtl\";\n const [focusedInput, setFocusedInput] = createSignal<\"x\" | \"y\" | null>(null);\n const [valueChangedViaKeyboard, setValueChangedViaKeyboard] = createSignal(false);\n const [valueChangedViaInputChangeEvent, setValueChangedViaInputChangeEvent] = createSignal(false);\n\n // Generate IDs\n const colorAreaId = createId();\n const xInputId = createId();\n const yInputId = createId();\n\n const colorPickerLabel = () => stringFormatter().format(\"colorPicker\");\n const colorInputLabel = () => {\n const ariaLabel = getProps()[\"aria-label\"];\n return ariaLabel\n ? stringFormatter().format(\"colorInputLabel\", {\n label: ariaLabel,\n channelLabel: colorPickerLabel(),\n })\n : colorPickerLabel();\n };\n // Upstream joins the group label with a literal \", \" (useColorArea.ts:488),\n // NOT the colorInputLabel message.\n const colorAreaLabel = () => {\n const ariaLabel = getProps()[\"aria-label\"];\n return ariaLabel ? `${ariaLabel}, ${colorPickerLabel()}` : undefined;\n };\n const formatChannelValueText = (channel: ColorChannel) => {\n const value = getState().getDisplayColor();\n const loc = locale().locale;\n return stringFormatter().format(\"colorNameAndValue\", {\n name: value.getChannelName(channel, loc),\n value: value.formatChannelValue(channel, loc),\n });\n };\n const getAriaValueTextForChannel = (channel: ColorChannel) => {\n const s = getState();\n const value = s.getDisplayColor();\n const loc = locale().locale;\n if (valueChangedViaInputChangeEvent() || valueChangedViaKeyboard()) {\n return `${formatChannelValueText(channel)}, ${value.getColorName(loc)}`;\n }\n\n const otherChannel = channel === s.yChannel ? s.xChannel : s.yChannel;\n return (\n [\n formatChannelValueText(channel),\n formatChannelValueText(otherChannel),\n formatChannelValueText(s.zChannel),\n ].join(\", \") + `, ${value.getColorName(loc)}`\n );\n };\n\n const getXInput = () => {\n const fromRef = inputXRef?.() ?? getProps().inputXRef?.();\n if (fromRef) return fromRef;\n const resolvedId = getProps().id ? `${getProps().id}-x` : xInputId;\n const byId =\n typeof document !== \"undefined\"\n ? (document.getElementById(resolvedId) as HTMLInputElement | null)\n : null;\n if (byId) return byId;\n const area = areaRef();\n if (!area) return null;\n return (\n area.querySelector<HTMLInputElement>('input[type=\"range\"][aria-orientation=\"horizontal\"]') ??\n area.querySelectorAll<HTMLInputElement>('input[type=\"range\"]')[0] ??\n null\n );\n };\n\n const getYInput = () => {\n const fromRef = inputYRef?.() ?? getProps().inputYRef?.();\n if (fromRef) return fromRef;\n const resolvedId = getProps().id ? `${getProps().id}-y` : yInputId;\n const byId =\n typeof document !== \"undefined\"\n ? (document.getElementById(resolvedId) as HTMLInputElement | null)\n : null;\n if (byId) return byId;\n const area = areaRef();\n if (!area) return null;\n return (\n area.querySelector<HTMLInputElement>('input[type=\"range\"][aria-orientation=\"vertical\"]') ??\n area.querySelectorAll<HTMLInputElement>('input[type=\"range\"]')[1] ??\n null\n );\n };\n\n const focusInput = (axis: \"x\" | \"y\" = \"x\") => {\n const el = axis === \"y\" ? getYInput() : getXInput();\n if (el) {\n focusWithoutScrolling(el);\n queueMicrotask(() => {\n const current = axis === \"y\" ? getYInput() : getXInput();\n if (current) {\n focusWithoutScrolling(current);\n }\n });\n }\n };\n\n const updateFromInput = (e: Event, axis: \"x\" | \"y\") => {\n const target = e.target as HTMLInputElement;\n const nextValue = parseFloat(target.value);\n\n setValueChangedViaInputChangeEvent(true);\n if (axis === \"x\") {\n getState().setXValue(nextValue);\n } else {\n getState().setYValue(nextValue);\n }\n };\n\n let startPointerPos = { x: 0, y: 0 };\n let startThumbPos = { x: 0, y: 0 };\n let lastMovePos: { x: number; y: number } | null = null;\n let cleanupDragListeners: (() => void) | undefined;\n\n const installDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupDragListeners?.();\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n handleMove(e.clientX, e.clientY);\n };\n\n const onPointerEnd = (e: PointerEvent) => {\n endDragging(e.currentTarget, e.pointerId);\n };\n\n window.addEventListener(\"pointermove\", onPointerMove);\n window.addEventListener(\"pointerup\", onPointerEnd);\n window.addEventListener(\"pointercancel\", onPointerEnd);\n\n cleanupDragListeners = () => {\n window.removeEventListener(\"pointermove\", onPointerMove);\n window.removeEventListener(\"pointerup\", onPointerEnd);\n window.removeEventListener(\"pointercancel\", onPointerEnd);\n };\n };\n\n const handleMove = (clientX: number, clientY: number) => {\n if (lastMovePos && lastMovePos.x === clientX && lastMovePos.y === clientY) return;\n lastMovePos = { x: clientX, y: clientY };\n\n const area = areaRef();\n if (!area) return;\n\n const rect = area.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return;\n\n const deltaX = clientX - startPointerPos.x;\n const deltaY = clientY - startPointerPos.y;\n\n const normalizedDeltaX = (isRTL() ? -deltaX : deltaX) / rect.width;\n const normalizedDeltaY = deltaY / rect.height;\n\n const newX = Math.max(0, Math.min(1, startThumbPos.x + normalizedDeltaX));\n const newY = Math.max(0, Math.min(1, startThumbPos.y + normalizedDeltaY));\n\n getState().setColorFromPoint(newX, newY);\n };\n\n const endDragging = (target?: EventTarget | null, pointerId?: number) => {\n cleanupDragListeners?.();\n cleanupDragListeners = undefined;\n lastMovePos = null;\n\n if (getState().isDragging) {\n getState().setDragging(false);\n if (pointerId !== undefined && target && (target as HTMLElement).releasePointerCapture) {\n try {\n (target as HTMLElement).releasePointerCapture(pointerId);\n } catch {}\n }\n focusInput(focusedInput() ?? \"x\");\n }\n };\n\n const startDragging = (\n clientX: number,\n clientY: number,\n fromThumb: boolean,\n target?: HTMLElement | null,\n pointerId?: number,\n ) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n if (getState().isDragging) return;\n\n setValueChangedViaKeyboard(false);\n setValueChangedViaInputChangeEvent(false);\n\n const s = getState();\n if (fromThumb) {\n startThumbPos = s.getThumbPosition();\n } else {\n const area = areaRef();\n if (!area) return;\n const rect = area.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return;\n\n const physicalX = Math.max(0, Math.min(1, (clientX - rect.left) / rect.width));\n const x = isRTL() ? 1 - physicalX : physicalX;\n const y = Math.max(0, Math.min(1, (clientY - rect.top) / rect.height));\n\n s.setColorFromPoint(x, y);\n startThumbPos = { x, y };\n }\n\n startPointerPos = { x: clientX, y: clientY };\n lastMovePos = { x: clientX, y: clientY };\n focusInput(focusedInput() ?? \"x\");\n s.setDragging(true);\n\n if (pointerId !== undefined && target?.setPointerCapture) {\n try {\n target.setPointerCapture(pointerId);\n } catch {}\n }\n\n installDragListeners();\n };\n\n const onThumbPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n if (e.pointerType === \"mouse\" && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;\n\n e.stopPropagation();\n e.preventDefault();\n\n startDragging(e.clientX, e.clientY, true, e.currentTarget as HTMLElement, e.pointerId);\n };\n\n const onThumbMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) return;\n\n e.stopPropagation();\n e.preventDefault();\n\n startDragging(e.clientX, e.clientY, true);\n };\n\n const onAreaPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n if (e.pointerType === \"mouse\" && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;\n\n e.preventDefault();\n\n startDragging(e.clientX, e.clientY, false, e.currentTarget as HTMLElement, e.pointerId);\n };\n\n const onAreaMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) return;\n\n e.preventDefault();\n\n startDragging(e.clientX, e.clientY, false);\n };\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n handleMove(e.clientX, e.clientY);\n };\n\n const onPointerUp = (e: PointerEvent) => {\n if (getState().isDragging) {\n endDragging(e.currentTarget, e.pointerId);\n }\n };\n\n onOwnedCleanup(() => {\n cleanupDragListeners?.();\n });\n\n const onKeyDown = (e: KeyboardEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n const xStep =\n e.shiftKey && s.xChannelPageStep > s.xChannelStep ? s.xChannelPageStep : s.xChannelStep;\n const yStep =\n e.shiftKey && s.yChannelPageStep > s.yChannelStep ? s.yChannelPageStep : s.yChannelStep;\n let focusedAxis: \"x\" | \"y\" = \"x\";\n let handled = true;\n\n switch (e.key) {\n case \"ArrowRight\":\n if (isRTL()) {\n s.decrementX(xStep);\n } else {\n s.incrementX(xStep);\n }\n focusedAxis = \"x\";\n break;\n case \"ArrowLeft\":\n if (isRTL()) {\n s.incrementX(xStep);\n } else {\n s.decrementX(xStep);\n }\n focusedAxis = \"x\";\n break;\n case \"ArrowUp\":\n s.incrementY(yStep);\n focusedAxis = \"y\";\n break;\n case \"ArrowDown\":\n s.decrementY(yStep);\n focusedAxis = \"y\";\n break;\n case \"PageUp\":\n s.incrementY(s.yChannelPageStep);\n focusedAxis = \"y\";\n break;\n case \"PageDown\":\n s.decrementY(s.yChannelPageStep);\n focusedAxis = \"y\";\n break;\n case \"Home\":\n if (isRTL()) {\n s.incrementX(s.xChannelPageStep);\n } else {\n s.decrementX(s.xChannelPageStep);\n }\n focusedAxis = \"x\";\n break;\n case \"End\":\n if (isRTL()) {\n s.decrementX(s.xChannelPageStep);\n } else {\n s.incrementX(s.xChannelPageStep);\n }\n focusedAxis = \"x\";\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n setFocusedInput(focusedAxis);\n setValueChangedViaKeyboard(true);\n s.setDragging(true);\n s.setDragging(false);\n focusInput(focusedAxis);\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onFocusOut = (e: FocusEvent) => {\n const currentTarget = e.currentTarget as HTMLElement;\n const relatedTarget = e.relatedTarget as Node | null;\n if (!relatedTarget || !currentTarget.contains(relatedTarget)) {\n setValueChangedViaKeyboard(false);\n setValueChangedViaInputChangeEvent(false);\n }\n };\n\n // Color area props\n const colorAreaProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n id: p.id ?? colorAreaId,\n role: \"group\" as const,\n \"aria-label\": colorAreaLabel(),\n \"aria-labelledby\": p[\"aria-labelledby\"],\n onPointerDown: onAreaPointerDown,\n onPointerMove,\n onPointerUp,\n onMouseDown: onAreaMouseDown,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n ...generateGradient(),\n },\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Generate gradient background for the color area\n function generateGradient(): Record<string, string> {\n const s = getState();\n const value = s.value;\n const xCh = s.xChannel;\n const yCh = s.yChannel;\n const zCh = s.zChannel;\n const zValue = value.getChannelValue(zCh);\n const end = isRTL() ? \"left\" : \"right\";\n\n const hue = (color: Color) =>\n [0, 60, 120, 180, 240, 300, 360]\n .map((h) => color.withChannelValue(\"hue\", h).toString(\"css\"))\n .join(\", \");\n\n const hslChannels: Record<string, (c: Color) => string> = {\n hue,\n saturation: (color) =>\n `${color.withChannelValue(\"saturation\", 0).toString(\"css\")}, transparent`,\n lightness: () => \"black, transparent, white\",\n };\n\n const hsbChannels: Record<string, (c: Color) => string> = {\n hue,\n saturation: (color) =>\n `${color.withChannelValue(\"saturation\", 0).toString(\"css\")}, transparent`,\n brightness: () => \"black, transparent\",\n };\n\n switch (value.getColorSpace()) {\n case \"rgb\": {\n const rgb = parseColor(\"rgb(0, 0, 0)\");\n return {\n background: [\n `linear-gradient(to ${end}, ${rgb.withChannelValue(xCh, 0).toString(\"css\")}, ${rgb.withChannelValue(xCh, 255).toString(\"css\")})`,\n `linear-gradient(to top, ${rgb.withChannelValue(yCh, 0).toString(\"css\")}, ${rgb.withChannelValue(yCh, 255).toString(\"css\")})`,\n rgb.withChannelValue(zCh, zValue).toString(\"css\"),\n ].join(\",\"),\n \"background-blend-mode\": \"screen\",\n };\n }\n case \"hsl\": {\n const channels = value.getColorChannels();\n const base = parseColor(\"hsl(0, 100%, 50%)\").withChannelValue(zCh, zValue);\n const bg = channels\n .filter((c: ColorChannel) => c !== zCh)\n .map(\n (c: ColorChannel) =>\n `linear-gradient(to ${c === xCh ? end : \"top\"}, ${hslChannels[c]?.(base) ?? \"\"})`,\n )\n .reverse();\n if (zCh === \"hue\") {\n bg.push(base.toString(\"css\"));\n }\n\n return {\n background: bg.join(\", \"),\n };\n }\n case \"hsb\": {\n const channels = value.getColorChannels();\n const base = parseColor(\"hsb(0, 100%, 100%)\").withChannelValue(zCh, zValue);\n const bg = channels\n .filter((c: ColorChannel) => c !== zCh)\n .map(\n (c: ColorChannel) =>\n `linear-gradient(to ${c === xCh ? end : \"top\"}, ${hsbChannels[c]?.(base) ?? \"\"})`,\n )\n .reverse();\n if (zCh === \"hue\") {\n bg.push(base.toString(\"css\"));\n }\n\n return {\n background: bg.join(\", \"),\n };\n }\n default:\n return {};\n }\n }\n\n // Gradient props (the visual area)\n const gradientProps = createMemo(() => {\n const gradientStyles = generateGradient();\n return {\n role: \"presentation\" as const,\n style: {\n width: \"100%\",\n height: \"100%\",\n \"forced-color-adjust\": \"none\" as const,\n ...gradientStyles,\n },\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const pos = s.getThumbPosition();\n const x = isRTL() ? 1 - pos.x : pos.x;\n\n return {\n role: \"presentation\" as const,\n style: {\n position: \"absolute\" as const,\n left: `${x * 100}%`,\n top: `${pos.y * 100}%`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n onPointerDown: onThumbPointerDown,\n onPointerMove,\n onPointerUp,\n onMouseDown: onThumbMouseDown,\n onKeyDown,\n onFocusOut,\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // X input props (hidden, for accessibility)\n const xInputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const xRange = s.value.getChannelRange(s.xChannel);\n\n return {\n type: \"range\",\n id: p.id ? `${p.id}-x` : xInputId,\n \"aria-label\": colorInputLabel(),\n \"aria-roledescription\": stringFormatter().format(\"twoDimensionalSlider\"),\n \"aria-valuetext\": getAriaValueTextForChannel(s.xChannel),\n \"aria-orientation\": \"horizontal\" as const,\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n min: xRange.minValue,\n max: xRange.maxValue,\n step: xRange.step,\n value: s.getXValue(),\n name: p.xName,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-hidden\":\n !focusedInput() || focusedInput() === \"x\" || valueChangedViaKeyboard()\n ? undefined\n : (\"true\" as const),\n onFocus: () => setFocusedInput(\"x\"),\n onKeyDown,\n onInput: (e: Event) => updateFromInput(e, \"x\"),\n onChange: (e: Event) => updateFromInput(e, \"x\"),\n tabIndex: !focusedInput() || focusedInput() === \"x\" ? undefined : -1,\n style: {\n position: \"absolute\" as const,\n width: \"1px\",\n height: \"1px\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n },\n };\n });\n\n // Y input props (hidden, for accessibility)\n const yInputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const yRange = s.value.getChannelRange(s.yChannel);\n\n return {\n type: \"range\",\n id: p.id ? `${p.id}-y` : yInputId,\n \"aria-label\": colorInputLabel(),\n \"aria-roledescription\": stringFormatter().format(\"twoDimensionalSlider\"),\n \"aria-valuetext\": getAriaValueTextForChannel(s.yChannel),\n \"aria-orientation\": \"vertical\" as const,\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n min: yRange.minValue,\n max: yRange.maxValue,\n step: yRange.step,\n value: s.getYValue(),\n name: p.yName,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-hidden\":\n focusedInput() === \"y\" || valueChangedViaKeyboard() ? undefined : (\"true\" as const),\n onFocus: () => setFocusedInput(\"y\"),\n onKeyDown,\n onInput: (e: Event) => updateFromInput(e, \"y\"),\n onChange: (e: Event) => updateFromInput(e, \"y\"),\n tabIndex: focusedInput() === \"y\" ? undefined : -1,\n style: {\n position: \"absolute\" as const,\n width: \"1px\",\n height: \"1px\",\n padding: \"0\",\n margin: \"-1px\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n },\n };\n });\n\n return {\n get colorAreaProps() {\n return colorAreaProps();\n },\n get gradientProps() {\n return gradientProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get xInputProps() {\n return xInputProps();\n },\n get yInputProps() {\n return yInputProps();\n },\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/src/color/useColorWheel.ts\n\n/**\n * createColorWheel hook.\n *\n * Provides ARIA attributes and keyboard/pointer handling for a circular hue selector.\n *\n * Ported from packages/react-aria/src/color/useColorWheel.ts.\n */\n\nimport { onOwnedCleanup } from \"../utils/owner\";\nimport { createMemo } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\nimport type { ColorWheelState } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport type { AriaColorWheelOptions, ColorWheelAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color wheel.\n */\nexport function createColorWheel(\n props: Accessor<AriaColorWheelOptions>,\n state: Accessor<ColorWheelState>,\n wheelRef: Accessor<HTMLDivElement | null>,\n): ColorWheelAria {\n const getProps = () => props();\n const getState = () => state();\n const locale = useLocale();\n\n // Generate IDs\n const inputId = createId();\n let cleanupPointerDrag: (() => void) | undefined;\n let cleanupMouseDrag: (() => void) | undefined;\n let dragElement: HTMLElement | null = null;\n\n const outerRadius = () => getProps().outerRadius ?? 100;\n const innerRadius = () => getProps().innerRadius ?? 74;\n const thumbRadius = () => (innerRadius() + outerRadius()) / 2;\n\n const getInput = () => wheelRef()?.querySelector<HTMLInputElement>('input[type=\"range\"]') ?? null;\n const focusInput = () => {\n focusWithoutScrolling(getInput());\n queueMicrotask(() => focusWithoutScrolling(getInput()));\n };\n\n const getPointFromEvent = (clientX: number, clientY: number, element?: HTMLElement | null) => {\n const wheel = element ?? dragElement ?? wheelRef();\n if (!wheel) return null;\n\n const rect = wheel.getBoundingClientRect();\n const centerX = rect.left + rect.width / 2;\n const centerY = rect.top + rect.height / 2;\n\n return {\n x: clientX - centerX,\n y: clientY - centerY,\n };\n };\n\n const updateFromPoint = (\n clientX: number,\n clientY: number,\n requireTrackHit = false,\n element?: HTMLElement | null,\n ) => {\n if (getProps().isDisabled || getState().isDisabled) return false;\n\n const point = getPointFromEvent(clientX, clientY, element);\n if (!point) return false;\n\n const distance = Math.sqrt(point.x ** 2 + point.y ** 2);\n if (requireTrackHit && (distance <= innerRadius() || distance >= outerRadius())) {\n return false;\n }\n\n getState().setHueFromPoint(point.x, point.y, thumbRadius());\n return true;\n };\n\n const endDrag = () => {\n if (!getState().isDragging) return;\n getState().setDragging(false);\n dragElement = null;\n focusInput();\n };\n\n const installPointerDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupPointerDrag?.();\n\n const onPointerMove = (e: PointerEvent) => {\n if (!getState().isDragging) return;\n updateFromPoint(e.clientX, e.clientY);\n };\n const onPointerEnd = () => {\n cleanupPointerDrag?.();\n cleanupPointerDrag = undefined;\n endDrag();\n };\n\n window.addEventListener(\"pointermove\", onPointerMove);\n window.addEventListener(\"pointerup\", onPointerEnd);\n window.addEventListener(\"pointercancel\", onPointerEnd);\n\n cleanupPointerDrag = () => {\n window.removeEventListener(\"pointermove\", onPointerMove);\n window.removeEventListener(\"pointerup\", onPointerEnd);\n window.removeEventListener(\"pointercancel\", onPointerEnd);\n };\n };\n\n const installMouseDragListeners = () => {\n if (typeof window === \"undefined\") return;\n cleanupMouseDrag?.();\n\n const onMouseMove = (e: MouseEvent) => {\n if (!getState().isDragging) return;\n updateFromPoint(e.clientX, e.clientY);\n };\n const onMouseEnd = () => {\n cleanupMouseDrag?.();\n cleanupMouseDrag = undefined;\n endDrag();\n };\n\n window.addEventListener(\"mousemove\", onMouseMove);\n window.addEventListener(\"mouseup\", onMouseEnd);\n\n cleanupMouseDrag = () => {\n window.removeEventListener(\"mousemove\", onMouseMove);\n window.removeEventListener(\"mouseup\", onMouseEnd);\n };\n };\n\n onOwnedCleanup(() => {\n cleanupPointerDrag?.();\n cleanupMouseDrag?.();\n });\n\n const onTrackPointerDown = (e: PointerEvent) => {\n dragElement = e.currentTarget as HTMLElement;\n if (!updateFromPoint(e.clientX, e.clientY, true, dragElement)) {\n dragElement = null;\n return;\n }\n focusInput();\n getState().setDragging(true);\n installPointerDragListeners();\n e.preventDefault();\n };\n\n const onTrackMouseDown = (e: MouseEvent) => {\n dragElement = e.currentTarget as HTMLElement;\n if (!updateFromPoint(e.clientX, e.clientY, true, dragElement)) {\n dragElement = null;\n return;\n }\n focusInput();\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n };\n\n const onThumbPointerDown = (e: PointerEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n focusInput();\n getState().setDragging(true);\n installPointerDragListeners();\n e.preventDefault();\n e.stopPropagation();\n };\n\n const onThumbMouseDown = (e: MouseEvent) => {\n if (getProps().isDisabled || getState().isDisabled) return;\n focusInput();\n getState().setDragging(true);\n installMouseDragListeners();\n e.preventDefault();\n e.stopPropagation();\n };\n\n // Handle keyboard\n const onKeyDown = (e: KeyboardEvent) => {\n if (e.defaultPrevented) return;\n if (getProps().isDisabled || getState().isDisabled) return;\n\n const s = getState();\n let handled = true;\n\n switch (e.key) {\n case \"ArrowRight\":\n case \"ArrowUp\":\n s.increment();\n break;\n case \"ArrowLeft\":\n case \"ArrowDown\":\n s.decrement();\n break;\n case \"PageUp\":\n s.increment(s.pageStep);\n break;\n case \"PageDown\":\n s.decrement(s.pageStep);\n break;\n case \"Home\":\n s.setHue(0);\n break;\n case \"End\":\n s.setHue(0);\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n if (e.key !== \"Home\" && e.key !== \"End\") {\n s.setDragging(true);\n s.setDragging(false);\n }\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n // Hue spectrum conic gradient\n const conicGradient = `conic-gradient(from 90deg, hsl(0, 100%, 50%), hsl(30, 100%, 50%), hsl(60, 100%, 50%), hsl(90, 100%, 50%), hsl(120, 100%, 50%), hsl(150, 100%, 50%), hsl(180, 100%, 50%), hsl(210, 100%, 50%), hsl(240, 100%, 50%), hsl(270, 100%, 50%), hsl(300, 100%, 50%), hsl(330, 100%, 50%), hsl(360, 100%, 50%))`;\n\n const ringPath = () => {\n const outer = outerRadius();\n const inner = innerRadius();\n const circlePath = (radius: number) =>\n [\n `M ${outer}, ${outer} m ${-radius}, 0`,\n `a ${radius}, ${radius}, 0, 1, 0, ${radius * 2}, 0`,\n `a ${radius}, ${radius}, 0, 1, 0 ${-radius * 2}, 0`,\n ].join(\" \");\n return `path(evenodd, \"${circlePath(outer)} ${circlePath(inner)}\")`;\n };\n\n // Track props (the wheel container)\n const trackProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n onPointerDown: onTrackPointerDown,\n onMouseDown: onTrackMouseDown,\n style: {\n position: \"relative\" as const,\n \"touch-action\": \"none\",\n width: `${outerRadius() * 2}px`,\n height: `${outerRadius() * 2}px`,\n background: conicGradient,\n \"clip-path\": ringPath(),\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Thumb props\n const thumbProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const position = s.getThumbPosition(thumbRadius());\n\n return {\n onPointerDown: onThumbPointerDown,\n onMouseDown: onThumbMouseDown,\n onKeyDown,\n style: {\n position: \"absolute\" as const,\n left: `${outerRadius() + position.x}px`,\n top: `${outerRadius() + position.y}px`,\n transform: \"translate(-50%, -50%)\",\n \"touch-action\": \"none\",\n \"forced-color-adjust\": \"none\" as const,\n },\n \"data-dragging\": s.isDragging || undefined,\n \"data-disabled\": s.isDisabled || p.isDisabled || undefined,\n };\n });\n\n // Input props (hidden, for accessibility)\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n\n return {\n type: \"range\",\n id: p.id ?? inputId,\n min: 0,\n max: 360,\n step: s.step,\n value: s.getHue(),\n name: p.name,\n form: p.form,\n disabled: s.isDisabled || p.isDisabled,\n \"aria-label\":\n p[\"aria-label\"] ??\n (p[\"aria-labelledby\"] ? undefined : s.value.getChannelName(\"hue\", locale().locale)),\n \"aria-labelledby\": p[\"aria-labelledby\"],\n \"aria-describedby\": p[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n \"aria-errormessage\": p[\"aria-errormessage\"],\n \"aria-valuetext\": `${s.value.formatChannelValue(\"hue\", locale().locale)}, ${s.value.getHueName(locale().locale)}`,\n onKeyDown,\n onInput: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setHue(parseFloat(target.value));\n },\n onChange: (e: Event) => {\n const target = e.target as HTMLInputElement;\n s.setHue(parseFloat(target.value));\n s.setDragging(true);\n s.setDragging(false);\n },\n style: {\n position: \"absolute\" as const,\n width: \"100%\",\n height: \"100%\",\n opacity: \"0.0001\",\n padding: \"0\",\n margin: \"0\",\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n \"white-space\": \"nowrap\",\n border: \"0\",\n \"pointer-events\": \"none\" as const,\n },\n };\n });\n\n return {\n get trackProps() {\n return trackProps();\n },\n get thumbProps() {\n return thumbProps();\n },\n get inputProps() {\n return inputProps();\n },\n };\n}\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/src/color/useColorField.ts\n\n/**\n * createColorField hook.\n *\n * Provides ARIA attributes and keyboard handling for a color input field.\n *\n * Ported from packages/react-aria/src/color/useColorField.ts.\n */\n\nimport { createMemo, createTrackedEffect } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\nimport { createFormValidationState, type ColorFieldState } from \"@proyecto-viviana/solid-stately\";\nimport { createId } from \"../ssr\";\nimport { createField } from \"../label\";\nimport { createKeyboard } from \"../interactions/createKeyboard\";\nimport { createFormValidation } from \"../form/createFormValidation\";\nimport { ariaTrueFalse } from \"../utils/domAttrs\";\nimport type { JSX } from \"@solidjs/web\";\nimport type { AriaColorFieldOptions, ColorFieldAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color field.\n */\nexport function createColorField(\n props: Accessor<AriaColorFieldOptions>,\n state: Accessor<ColorFieldState>,\n inputRef: Accessor<HTMLInputElement | null>,\n): ColorFieldAria {\n const getProps = () => props();\n const getState = () => state();\n\n const generatedInputId = createId();\n const labelId = createId();\n\n let didAutoFocus = false;\n createTrackedEffect(() => {\n const input = inputRef();\n if (!didAutoFocus && getProps().autoFocus && input) {\n didAutoFocus = true;\n input.focus();\n }\n });\n\n const isDisabled = () => getProps().isDisabled || getState().isDisabled;\n const isReadOnly = () => getProps().isReadOnly || getState().isReadOnly;\n const isInvalid = () => getProps().isInvalid || getState().isInvalid;\n const validationBehavior = () => getProps().validationBehavior ?? \"native\";\n\n const validationState = createFormValidationState({\n get value() {\n return getState().inputValue;\n },\n get isInvalid() {\n return isInvalid();\n },\n get validationBehavior() {\n return validationBehavior();\n },\n });\n\n createFormValidation(\n {\n get validationBehavior() {\n return validationBehavior();\n },\n },\n validationState,\n () => inputRef() ?? undefined,\n );\n\n // RAC `useColorField` reaches `useField` through `useFormattedTextField` /\n // `useTextField`. Description and error slot ids (and the input's\n // `aria-describedby`) live in `createField`; do not hand-mint\n // `createId()` for those slots.\n const field = createField({\n get description() {\n return getProps().description;\n },\n get errorMessage() {\n return getProps().errorMessage;\n },\n get isInvalid() {\n return isInvalid();\n },\n get \"aria-describedby\"() {\n return getProps()[\"aria-describedby\"];\n },\n });\n\n const onKeyDown = (e: KeyboardEvent) => {\n const s = getState();\n\n if (isDisabled() || isReadOnly()) {\n return;\n }\n\n let handled = true;\n\n switch (e.key) {\n case \"ArrowUp\":\n s.increment();\n break;\n case \"ArrowDown\":\n s.decrement();\n break;\n case \"PageUp\":\n s.increment();\n break;\n case \"PageDown\":\n s.decrement();\n break;\n case \"Home\":\n s.decrementToMin();\n break;\n case \"End\":\n s.incrementToMax();\n break;\n default:\n handled = false;\n }\n\n if (handled) {\n e.preventDefault();\n }\n };\n\n const { keyboardProps } = createKeyboard({\n shortcuts: {\n Enter: () => {\n const s = getState();\n if (isDisabled() || isReadOnly()) {\n return { shouldPreventDefault: false };\n }\n s.commit();\n const commitValidation = (s as ColorFieldState & { commitValidation?: () => void })\n .commitValidation;\n commitValidation?.();\n return { shouldPreventDefault: false };\n },\n },\n onKeyDown,\n });\n\n const onWheel = (e: WheelEvent) => {\n const p = getProps();\n const s = getState();\n\n if (\n p.isWheelDisabled ||\n isDisabled() ||\n isReadOnly() ||\n document.activeElement !== inputRef()\n ) {\n return;\n }\n\n if (e.deltaY > 0) {\n s.increment();\n } else if (e.deltaY < 0) {\n s.decrement();\n } else {\n return;\n }\n\n e.preventDefault();\n };\n\n const labelProps = createMemo(() => {\n return {\n id: labelId,\n for: getProps().id ?? generatedInputId,\n };\n });\n\n const descriptionProps = () => field.descriptionProps;\n\n const errorMessageProps = () => field.errorMessageProps;\n\n const inputProps = createMemo(() => {\n const s = getState();\n const p = getProps();\n const channelLabel =\n s.channel && s.colorValue ? s.colorValue.getChannelName(s.channel, \"en-US\") : undefined;\n const required = p.isRequired || s.isRequired;\n const invalid = isInvalid();\n\n return {\n id: p.id ?? generatedInputId,\n type: \"text\",\n value: s.inputValue,\n name: s.channel ? undefined : p.name,\n form: s.channel ? undefined : p.form,\n placeholder: p.placeholder,\n disabled: isDisabled(),\n readOnly: isReadOnly(),\n required: validationBehavior() === \"native\" ? required || undefined : undefined,\n // Upstream routes the input through useFormattedTextField → useTextField →\n // useFocusable, which ALWAYS sets a tabIndex (\"so that Safari allows focusing\n // native buttons and inputs\"): `excludeFromTabOrder ? -1 : 0`, then `undefined`\n // when disabled (useFocusable.mjs:65-66). We hand-roll inputProps, so replay that\n // one focusable prop here — the port previously dropped the default `0`, so the\n // rendered input carried no `tabindex` while React's carries `tabindex=\"0\"` (a D5\n // focus-trail divergence), exactly as createNumberField already replays it.\n tabIndex: isDisabled() ? undefined : p.excludeFromTabOrder ? -1 : 0,\n autoComplete: \"off\",\n autoCorrect: \"off\",\n spellCheck: \"false\",\n \"aria-label\": p[\"aria-label\"] ?? channelLabel,\n \"aria-labelledby\": p[\"aria-labelledby\"],\n \"aria-describedby\": field.fieldProps[\"aria-describedby\"],\n \"aria-details\": p[\"aria-details\"],\n \"aria-errormessage\": invalid\n ? (p[\"aria-errormessage\"] ?? field.errorMessageProps.id)\n : undefined,\n \"aria-invalid\": invalid ? ariaTrueFalse(true) : undefined,\n \"aria-required\": validationBehavior() === \"aria\" && required ? \"true\" : undefined,\n role: s.channel ? undefined : (\"textbox\" as const),\n \"aria-valuenow\": undefined,\n \"aria-valuemin\": undefined,\n \"aria-valuemax\": undefined,\n \"aria-valuetext\": undefined,\n onInput: (e: InputEvent) => {\n const target = e.target as HTMLInputElement;\n if (s.validate(target.value)) {\n s.setInputValue(target.value);\n } else {\n target.value = s.inputValue;\n }\n },\n onChange: () => {\n s.commit();\n },\n onBlur: () => {\n s.commit();\n },\n onKeyDown: keyboardProps.onKeyDown,\n onKeyUp: keyboardProps.onKeyUp,\n onWheel,\n };\n });\n\n return {\n get labelProps() {\n return labelProps();\n },\n get inputProps() {\n return inputProps() as JSX.InputHTMLAttributes<HTMLInputElement>;\n },\n get descriptionProps() {\n return descriptionProps();\n },\n get errorMessageProps() {\n return errorMessageProps();\n },\n };\n}\n","/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria/src/color/useColorSwatch.ts\n\n/**\n * createColorSwatch hook.\n *\n * Provides ARIA attributes for a color swatch display.\n *\n * Ported from packages/react-aria/src/color/useColorSwatch.ts.\n */\n\nimport { createMemo } from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\nimport { normalizeColor } from \"@proyecto-viviana/solid-stately\";\nimport { useLocale } from \"../i18n\";\nimport { createId } from \"../ssr\";\nimport { filterDOMProps } from \"../utils/filterDOMProps\";\nimport { createColorStringFormatter } from \"./intl\";\nimport type { AriaColorSwatchOptions, ColorSwatchAria } from \"./types\";\n\n/**\n * Creates ARIA props for a color swatch.\n */\nexport function createColorSwatch(props: Accessor<AriaColorSwatchOptions>): ColorSwatchAria {\n const getProps = () => props();\n const locale = useLocale();\n const stringFormatter = createColorStringFormatter();\n const generatedId = createId();\n const id = () => getProps().id ?? generatedId;\n\n const color = createMemo(() => normalizeColor(getProps().color ?? \"#fff0\"));\n\n const colorName = createMemo(() => {\n const p = getProps();\n if (p.colorName) return p.colorName;\n\n const resolvedColor = color();\n if (resolvedColor.getChannelValue(\"alpha\") === 0) {\n return stringFormatter().format(\"transparent\");\n }\n\n return resolvedColor.getColorName(locale().locale);\n });\n\n const swatchProps = createMemo(() => {\n const p = getProps();\n const domProps = filterDOMProps(p as Record<string, unknown>, { labelable: true });\n const ariaLabel = [colorName(), p[\"aria-label\"] || \"\"].filter(Boolean).join(\", \");\n\n return {\n ...domProps,\n id: id(),\n slot: p.slot,\n role: \"img\" as const,\n \"aria-roledescription\": stringFormatter().format(\"colorSwatch\"),\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": p[\"aria-labelledby\"] ? `${id()} ${p[\"aria-labelledby\"]}` : undefined,\n style: {\n \"background-color\": color().toString(\"css\"),\n \"forced-color-adjust\": \"none\" as const,\n },\n };\n });\n\n return {\n get swatchProps() {\n return swatchProps();\n },\n get color() {\n return color();\n },\n };\n}\n"],"mappings":"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"}