react-aria 3.50.0 → 3.51.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 (1178) hide show
  1. package/dist/exports/index.cjs +15 -0
  2. package/dist/exports/index.cjs.map +1 -1
  3. package/dist/exports/index.js +9 -1
  4. package/dist/exports/index.js.map +1 -1
  5. package/dist/exports/index.mjs +9 -1
  6. package/dist/exports/index.mjs.map +1 -1
  7. package/dist/exports/private/utils/domHelpers.cjs +1 -0
  8. package/dist/exports/private/utils/domHelpers.cjs.map +1 -1
  9. package/dist/exports/private/utils/domHelpers.js +2 -2
  10. package/dist/exports/private/utils/domHelpers.js.map +1 -1
  11. package/dist/exports/private/utils/domHelpers.mjs +2 -2
  12. package/dist/exports/private/utils/domHelpers.mjs.map +1 -1
  13. package/dist/exports/private/utils/platform.cjs +1 -0
  14. package/dist/exports/private/utils/platform.cjs.map +1 -1
  15. package/dist/exports/private/utils/platform.js +2 -2
  16. package/dist/exports/private/utils/platform.js.map +1 -1
  17. package/dist/exports/private/utils/platform.mjs +2 -2
  18. package/dist/exports/private/utils/platform.mjs.map +1 -1
  19. package/dist/exports/private/utils/shadowdom/DOMFunctions.cjs +1 -0
  20. package/dist/exports/private/utils/shadowdom/DOMFunctions.cjs.map +1 -1
  21. package/dist/exports/private/utils/shadowdom/DOMFunctions.js +2 -2
  22. package/dist/exports/private/utils/shadowdom/DOMFunctions.js.map +1 -1
  23. package/dist/exports/private/utils/shadowdom/DOMFunctions.mjs +2 -2
  24. package/dist/exports/private/utils/shadowdom/DOMFunctions.mjs.map +1 -1
  25. package/dist/exports/useContextMenu.cjs +22 -0
  26. package/dist/exports/useContextMenu.cjs.map +1 -0
  27. package/dist/exports/useContextMenu.js +17 -0
  28. package/dist/exports/useContextMenu.js.map +1 -0
  29. package/dist/exports/useContextMenu.mjs +17 -0
  30. package/dist/exports/useContextMenu.mjs.map +1 -0
  31. package/dist/exports/usePreviewTrigger.cjs +22 -0
  32. package/dist/exports/usePreviewTrigger.cjs.map +1 -0
  33. package/dist/exports/usePreviewTrigger.js +17 -0
  34. package/dist/exports/usePreviewTrigger.js.map +1 -0
  35. package/dist/exports/usePreviewTrigger.mjs +17 -0
  36. package/dist/exports/usePreviewTrigger.mjs.map +1 -0
  37. package/dist/exports/useTokenField.cjs +27 -0
  38. package/dist/exports/useTokenField.cjs.map +1 -0
  39. package/dist/exports/useTokenField.js +19 -0
  40. package/dist/exports/useTokenField.js.map +1 -0
  41. package/dist/exports/useTokenField.mjs +19 -0
  42. package/dist/exports/useTokenField.mjs.map +1 -0
  43. package/dist/private/actiongroup/useActionGroup.cjs +24 -19
  44. package/dist/private/actiongroup/useActionGroup.cjs.map +1 -1
  45. package/dist/private/actiongroup/useActionGroup.js +24 -19
  46. package/dist/private/actiongroup/useActionGroup.js.map +1 -1
  47. package/dist/private/actiongroup/useActionGroup.mjs +24 -19
  48. package/dist/private/actiongroup/useActionGroup.mjs.map +1 -1
  49. package/dist/private/autocomplete/useAutocomplete.cjs +2 -1
  50. package/dist/private/autocomplete/useAutocomplete.cjs.map +1 -1
  51. package/dist/private/autocomplete/useAutocomplete.js +2 -1
  52. package/dist/private/autocomplete/useAutocomplete.js.map +1 -1
  53. package/dist/private/autocomplete/useAutocomplete.mjs +2 -1
  54. package/dist/private/autocomplete/useAutocomplete.mjs.map +1 -1
  55. package/dist/private/breadcrumbs/useBreadcrumbItem.cjs +2 -0
  56. package/dist/private/breadcrumbs/useBreadcrumbItem.cjs.map +1 -1
  57. package/dist/private/breadcrumbs/useBreadcrumbItem.js +2 -0
  58. package/dist/private/breadcrumbs/useBreadcrumbItem.js.map +1 -1
  59. package/dist/private/breadcrumbs/useBreadcrumbItem.mjs +2 -0
  60. package/dist/private/breadcrumbs/useBreadcrumbItem.mjs.map +1 -1
  61. package/dist/private/button/useButton.cjs +2 -1
  62. package/dist/private/button/useButton.cjs.map +1 -1
  63. package/dist/private/button/useButton.js +2 -1
  64. package/dist/private/button/useButton.js.map +1 -1
  65. package/dist/private/button/useButton.mjs +2 -1
  66. package/dist/private/button/useButton.mjs.map +1 -1
  67. package/dist/private/button/useToggleButtonGroup.cjs +3 -0
  68. package/dist/private/button/useToggleButtonGroup.cjs.map +1 -1
  69. package/dist/private/button/useToggleButtonGroup.js +3 -0
  70. package/dist/private/button/useToggleButtonGroup.js.map +1 -1
  71. package/dist/private/button/useToggleButtonGroup.mjs +3 -0
  72. package/dist/private/button/useToggleButtonGroup.mjs.map +1 -1
  73. package/dist/private/calendar/useCalendarCell.cjs +3 -0
  74. package/dist/private/calendar/useCalendarCell.cjs.map +1 -1
  75. package/dist/private/calendar/useCalendarCell.js +3 -0
  76. package/dist/private/calendar/useCalendarCell.js.map +1 -1
  77. package/dist/private/calendar/useCalendarCell.mjs +3 -0
  78. package/dist/private/calendar/useCalendarCell.mjs.map +1 -1
  79. package/dist/private/calendar/useCalendarGrid.cjs +47 -52
  80. package/dist/private/calendar/useCalendarGrid.cjs.map +1 -1
  81. package/dist/private/calendar/useCalendarGrid.js +47 -52
  82. package/dist/private/calendar/useCalendarGrid.js.map +1 -1
  83. package/dist/private/calendar/useCalendarGrid.mjs +47 -52
  84. package/dist/private/calendar/useCalendarGrid.mjs.map +1 -1
  85. package/dist/private/calendar/useRangeCalendar.cjs +1 -0
  86. package/dist/private/calendar/useRangeCalendar.cjs.map +1 -1
  87. package/dist/private/calendar/useRangeCalendar.js +1 -0
  88. package/dist/private/calendar/useRangeCalendar.js.map +1 -1
  89. package/dist/private/calendar/useRangeCalendar.mjs +1 -0
  90. package/dist/private/calendar/useRangeCalendar.mjs.map +1 -1
  91. package/dist/private/collections/CollectionBuilder.cjs +8 -3
  92. package/dist/private/collections/CollectionBuilder.cjs.map +1 -1
  93. package/dist/private/collections/CollectionBuilder.js +8 -3
  94. package/dist/private/collections/CollectionBuilder.js.map +1 -1
  95. package/dist/private/collections/CollectionBuilder.mjs +8 -3
  96. package/dist/private/collections/CollectionBuilder.mjs.map +1 -1
  97. package/dist/private/collections/Document.cjs +4 -0
  98. package/dist/private/collections/Document.cjs.map +1 -1
  99. package/dist/private/collections/Document.js +4 -0
  100. package/dist/private/collections/Document.js.map +1 -1
  101. package/dist/private/collections/Document.mjs +4 -0
  102. package/dist/private/collections/Document.mjs.map +1 -1
  103. package/dist/private/collections/Hidden.cjs +1 -0
  104. package/dist/private/collections/Hidden.cjs.map +1 -1
  105. package/dist/private/collections/Hidden.js +1 -0
  106. package/dist/private/collections/Hidden.js.map +1 -1
  107. package/dist/private/collections/Hidden.mjs +1 -0
  108. package/dist/private/collections/Hidden.mjs.map +1 -1
  109. package/dist/private/collections/useCachedChildren.cjs +1 -0
  110. package/dist/private/collections/useCachedChildren.cjs.map +1 -1
  111. package/dist/private/collections/useCachedChildren.js +1 -0
  112. package/dist/private/collections/useCachedChildren.js.map +1 -1
  113. package/dist/private/collections/useCachedChildren.mjs +1 -0
  114. package/dist/private/collections/useCachedChildren.mjs.map +1 -1
  115. package/dist/private/color/useColorArea.cjs +31 -34
  116. package/dist/private/color/useColorArea.cjs.map +1 -1
  117. package/dist/private/color/useColorArea.js +31 -34
  118. package/dist/private/color/useColorArea.js.map +1 -1
  119. package/dist/private/color/useColorArea.mjs +31 -34
  120. package/dist/private/color/useColorArea.mjs.map +1 -1
  121. package/dist/private/color/useColorSlider.cjs +4 -2
  122. package/dist/private/color/useColorSlider.cjs.map +1 -1
  123. package/dist/private/color/useColorSlider.js +4 -2
  124. package/dist/private/color/useColorSlider.js.map +1 -1
  125. package/dist/private/color/useColorSlider.mjs +4 -2
  126. package/dist/private/color/useColorSlider.mjs.map +1 -1
  127. package/dist/private/color/useColorWheel.cjs +16 -23
  128. package/dist/private/color/useColorWheel.cjs.map +1 -1
  129. package/dist/private/color/useColorWheel.js +16 -23
  130. package/dist/private/color/useColorWheel.js.map +1 -1
  131. package/dist/private/color/useColorWheel.mjs +16 -23
  132. package/dist/private/color/useColorWheel.mjs.map +1 -1
  133. package/dist/private/combobox/useComboBox.cjs +92 -29
  134. package/dist/private/combobox/useComboBox.cjs.map +1 -1
  135. package/dist/private/combobox/useComboBox.js +93 -29
  136. package/dist/private/combobox/useComboBox.js.map +1 -1
  137. package/dist/private/combobox/useComboBox.mjs +92 -29
  138. package/dist/private/combobox/useComboBox.mjs.map +1 -1
  139. package/dist/private/datepicker/useDateField.cjs +3 -6
  140. package/dist/private/datepicker/useDateField.cjs.map +1 -1
  141. package/dist/private/datepicker/useDateField.js +3 -6
  142. package/dist/private/datepicker/useDateField.js.map +1 -1
  143. package/dist/private/datepicker/useDateField.mjs +3 -6
  144. package/dist/private/datepicker/useDateField.mjs.map +1 -1
  145. package/dist/private/datepicker/useDatePickerGroup.cjs +48 -27
  146. package/dist/private/datepicker/useDatePickerGroup.cjs.map +1 -1
  147. package/dist/private/datepicker/useDatePickerGroup.js +49 -28
  148. package/dist/private/datepicker/useDatePickerGroup.js.map +1 -1
  149. package/dist/private/datepicker/useDatePickerGroup.mjs +49 -28
  150. package/dist/private/datepicker/useDatePickerGroup.mjs.map +1 -1
  151. package/dist/private/datepicker/useDateSegment.cjs +21 -16
  152. package/dist/private/datepicker/useDateSegment.cjs.map +1 -1
  153. package/dist/private/datepicker/useDateSegment.js +22 -17
  154. package/dist/private/datepicker/useDateSegment.js.map +1 -1
  155. package/dist/private/datepicker/useDateSegment.mjs +22 -17
  156. package/dist/private/datepicker/useDateSegment.mjs.map +1 -1
  157. package/dist/private/dialog/useDialog.cjs +8 -1
  158. package/dist/private/dialog/useDialog.cjs.map +1 -1
  159. package/dist/private/dialog/useDialog.js +10 -1
  160. package/dist/private/dialog/useDialog.js.map +1 -1
  161. package/dist/private/dialog/useDialog.mjs +8 -1
  162. package/dist/private/dialog/useDialog.mjs.map +1 -1
  163. package/dist/private/dnd/DragManager.cjs +3 -1
  164. package/dist/private/dnd/DragManager.cjs.map +1 -1
  165. package/dist/private/dnd/DragManager.js +3 -1
  166. package/dist/private/dnd/DragManager.js.map +1 -1
  167. package/dist/private/dnd/DragManager.mjs +3 -1
  168. package/dist/private/dnd/DragManager.mjs.map +1 -1
  169. package/dist/private/dnd/useAutoScroll.cjs +3 -1
  170. package/dist/private/dnd/useAutoScroll.cjs.map +1 -1
  171. package/dist/private/dnd/useAutoScroll.js +3 -1
  172. package/dist/private/dnd/useAutoScroll.js.map +1 -1
  173. package/dist/private/dnd/useAutoScroll.mjs +3 -1
  174. package/dist/private/dnd/useAutoScroll.mjs.map +1 -1
  175. package/dist/private/dnd/useDrag.cjs +4 -1
  176. package/dist/private/dnd/useDrag.cjs.map +1 -1
  177. package/dist/private/dnd/useDrag.js +4 -1
  178. package/dist/private/dnd/useDrag.js.map +1 -1
  179. package/dist/private/dnd/useDrag.mjs +4 -1
  180. package/dist/private/dnd/useDrag.mjs.map +1 -1
  181. package/dist/private/dnd/useDraggableItem.cjs +4 -0
  182. package/dist/private/dnd/useDraggableItem.cjs.map +1 -1
  183. package/dist/private/dnd/useDraggableItem.js +4 -0
  184. package/dist/private/dnd/useDraggableItem.js.map +1 -1
  185. package/dist/private/dnd/useDraggableItem.mjs +4 -0
  186. package/dist/private/dnd/useDraggableItem.mjs.map +1 -1
  187. package/dist/private/dnd/useDroppableCollection.cjs +4 -0
  188. package/dist/private/dnd/useDroppableCollection.cjs.map +1 -1
  189. package/dist/private/dnd/useDroppableCollection.js +4 -0
  190. package/dist/private/dnd/useDroppableCollection.js.map +1 -1
  191. package/dist/private/dnd/useDroppableCollection.mjs +4 -0
  192. package/dist/private/dnd/useDroppableCollection.mjs.map +1 -1
  193. package/dist/private/focus/FocusScope.cjs +5 -3
  194. package/dist/private/focus/FocusScope.cjs.map +1 -1
  195. package/dist/private/focus/FocusScope.js +5 -4
  196. package/dist/private/focus/FocusScope.js.map +1 -1
  197. package/dist/private/focus/FocusScope.mjs +5 -3
  198. package/dist/private/focus/FocusScope.mjs.map +1 -1
  199. package/dist/private/focus/useFocusRing.cjs +2 -1
  200. package/dist/private/focus/useFocusRing.cjs.map +1 -1
  201. package/dist/private/focus/useFocusRing.js +2 -1
  202. package/dist/private/focus/useFocusRing.js.map +1 -1
  203. package/dist/private/focus/useFocusRing.mjs +2 -1
  204. package/dist/private/focus/useFocusRing.mjs.map +1 -1
  205. package/dist/private/form/useFormValidation.cjs +6 -0
  206. package/dist/private/form/useFormValidation.cjs.map +1 -1
  207. package/dist/private/form/useFormValidation.js +6 -0
  208. package/dist/private/form/useFormValidation.js.map +1 -1
  209. package/dist/private/form/useFormValidation.mjs +6 -0
  210. package/dist/private/form/useFormValidation.mjs.map +1 -1
  211. package/dist/private/grid/useGrid.cjs +3 -2
  212. package/dist/private/grid/useGrid.cjs.map +1 -1
  213. package/dist/private/grid/useGrid.js +3 -2
  214. package/dist/private/grid/useGrid.js.map +1 -1
  215. package/dist/private/grid/useGrid.mjs +3 -2
  216. package/dist/private/grid/useGrid.mjs.map +1 -1
  217. package/dist/private/grid/useGridCell.cjs +44 -8
  218. package/dist/private/grid/useGridCell.cjs.map +1 -1
  219. package/dist/private/grid/useGridCell.js +44 -8
  220. package/dist/private/grid/useGridCell.js.map +1 -1
  221. package/dist/private/grid/useGridCell.mjs +44 -8
  222. package/dist/private/grid/useGridCell.mjs.map +1 -1
  223. package/dist/private/grid/utils.cjs.map +1 -1
  224. package/dist/private/grid/utils.js.map +1 -1
  225. package/dist/private/grid/utils.mjs.map +1 -1
  226. package/dist/private/gridlist/useGridListItem.cjs +38 -30
  227. package/dist/private/gridlist/useGridListItem.cjs.map +1 -1
  228. package/dist/private/gridlist/useGridListItem.js +38 -30
  229. package/dist/private/gridlist/useGridListItem.js.map +1 -1
  230. package/dist/private/gridlist/useGridListItem.mjs +38 -30
  231. package/dist/private/gridlist/useGridListItem.mjs.map +1 -1
  232. package/dist/private/interactions/PressResponder.cjs +1 -0
  233. package/dist/private/interactions/PressResponder.cjs.map +1 -1
  234. package/dist/private/interactions/PressResponder.js +1 -0
  235. package/dist/private/interactions/PressResponder.js.map +1 -1
  236. package/dist/private/interactions/PressResponder.mjs +1 -0
  237. package/dist/private/interactions/PressResponder.mjs.map +1 -1
  238. package/dist/private/interactions/Pressable.cjs +1 -0
  239. package/dist/private/interactions/Pressable.cjs.map +1 -1
  240. package/dist/private/interactions/Pressable.js +1 -0
  241. package/dist/private/interactions/Pressable.js.map +1 -1
  242. package/dist/private/interactions/Pressable.mjs +1 -0
  243. package/dist/private/interactions/Pressable.mjs.map +1 -1
  244. package/dist/private/interactions/createEventHandler.cjs +3 -2
  245. package/dist/private/interactions/createEventHandler.cjs.map +1 -1
  246. package/dist/private/interactions/createEventHandler.js +3 -2
  247. package/dist/private/interactions/createEventHandler.js.map +1 -1
  248. package/dist/private/interactions/createEventHandler.mjs +3 -2
  249. package/dist/private/interactions/createEventHandler.mjs.map +1 -1
  250. package/dist/private/interactions/createKeyboardShortcutHandler.cjs +130 -0
  251. package/dist/private/interactions/createKeyboardShortcutHandler.cjs.map +1 -0
  252. package/dist/private/interactions/createKeyboardShortcutHandler.js +125 -0
  253. package/dist/private/interactions/createKeyboardShortcutHandler.js.map +1 -0
  254. package/dist/private/interactions/createKeyboardShortcutHandler.mjs +125 -0
  255. package/dist/private/interactions/createKeyboardShortcutHandler.mjs.map +1 -0
  256. package/dist/private/interactions/textSelection.cjs +2 -2
  257. package/dist/private/interactions/textSelection.cjs.map +1 -1
  258. package/dist/private/interactions/textSelection.js +3 -3
  259. package/dist/private/interactions/textSelection.js.map +1 -1
  260. package/dist/private/interactions/textSelection.mjs +3 -3
  261. package/dist/private/interactions/textSelection.mjs.map +1 -1
  262. package/dist/private/interactions/useContextMenu.cjs +104 -0
  263. package/dist/private/interactions/useContextMenu.cjs.map +1 -0
  264. package/dist/private/interactions/useContextMenu.js +99 -0
  265. package/dist/private/interactions/useContextMenu.js.map +1 -0
  266. package/dist/private/interactions/useContextMenu.mjs +99 -0
  267. package/dist/private/interactions/useContextMenu.mjs.map +1 -0
  268. package/dist/private/interactions/useFocusVisible.cjs +2 -2
  269. package/dist/private/interactions/useFocusVisible.cjs.map +1 -1
  270. package/dist/private/interactions/useFocusVisible.js +2 -2
  271. package/dist/private/interactions/useFocusVisible.js.map +1 -1
  272. package/dist/private/interactions/useFocusVisible.mjs +2 -2
  273. package/dist/private/interactions/useFocusVisible.mjs.map +1 -1
  274. package/dist/private/interactions/useFocusable.cjs +1 -0
  275. package/dist/private/interactions/useFocusable.cjs.map +1 -1
  276. package/dist/private/interactions/useFocusable.js +1 -0
  277. package/dist/private/interactions/useFocusable.js.map +1 -1
  278. package/dist/private/interactions/useFocusable.mjs +1 -0
  279. package/dist/private/interactions/useFocusable.mjs.map +1 -1
  280. package/dist/private/interactions/useHover.cjs +2 -1
  281. package/dist/private/interactions/useHover.cjs.map +1 -1
  282. package/dist/private/interactions/useHover.js +2 -1
  283. package/dist/private/interactions/useHover.js.map +1 -1
  284. package/dist/private/interactions/useHover.mjs +2 -1
  285. package/dist/private/interactions/useHover.mjs.map +1 -1
  286. package/dist/private/interactions/useKeyboard.cjs +46 -2
  287. package/dist/private/interactions/useKeyboard.cjs.map +1 -1
  288. package/dist/private/interactions/useKeyboard.js +48 -2
  289. package/dist/private/interactions/useKeyboard.js.map +1 -1
  290. package/dist/private/interactions/useKeyboard.mjs +46 -2
  291. package/dist/private/interactions/useKeyboard.mjs.map +1 -1
  292. package/dist/private/interactions/useLongPress.cjs +22 -22
  293. package/dist/private/interactions/useLongPress.cjs.map +1 -1
  294. package/dist/private/interactions/useLongPress.js +22 -22
  295. package/dist/private/interactions/useLongPress.js.map +1 -1
  296. package/dist/private/interactions/useLongPress.mjs +22 -22
  297. package/dist/private/interactions/useLongPress.mjs.map +1 -1
  298. package/dist/private/interactions/useMove.cjs +1 -8
  299. package/dist/private/interactions/useMove.cjs.map +1 -1
  300. package/dist/private/interactions/useMove.js +1 -8
  301. package/dist/private/interactions/useMove.js.map +1 -1
  302. package/dist/private/interactions/useMove.mjs +1 -8
  303. package/dist/private/interactions/useMove.mjs.map +1 -1
  304. package/dist/private/interactions/usePress.cjs +18 -33
  305. package/dist/private/interactions/usePress.cjs.map +1 -1
  306. package/dist/private/interactions/usePress.js +18 -33
  307. package/dist/private/interactions/usePress.js.map +1 -1
  308. package/dist/private/interactions/usePress.mjs +18 -33
  309. package/dist/private/interactions/usePress.mjs.map +1 -1
  310. package/dist/private/interactions/utils.cjs +10 -10
  311. package/dist/private/interactions/utils.cjs.map +1 -1
  312. package/dist/private/interactions/utils.js +10 -10
  313. package/dist/private/interactions/utils.js.map +1 -1
  314. package/dist/private/interactions/utils.mjs +10 -10
  315. package/dist/private/interactions/utils.mjs.map +1 -1
  316. package/dist/private/intl/combobox/fi-FI.cjs +5 -5
  317. package/dist/private/intl/combobox/fi-FI.cjs.map +1 -1
  318. package/dist/private/intl/combobox/fi-FI.js +5 -5
  319. package/dist/private/intl/combobox/fi-FI.js.map +1 -1
  320. package/dist/private/intl/combobox/fi-FI.mjs +5 -5
  321. package/dist/private/intl/combobox/fi-FI.mjs.map +1 -1
  322. package/dist/private/intl/previewtrigger/ar-AE.cjs +6 -0
  323. package/dist/private/intl/previewtrigger/ar-AE.cjs.map +1 -0
  324. package/dist/private/intl/previewtrigger/ar-AE.js +8 -0
  325. package/dist/private/intl/previewtrigger/ar-AE.js.map +1 -0
  326. package/dist/private/intl/previewtrigger/ar-AE.mjs +8 -0
  327. package/dist/private/intl/previewtrigger/ar-AE.mjs.map +1 -0
  328. package/dist/private/intl/previewtrigger/bg-BG.cjs +6 -0
  329. package/dist/private/intl/previewtrigger/bg-BG.cjs.map +1 -0
  330. package/dist/private/intl/previewtrigger/bg-BG.js +8 -0
  331. package/dist/private/intl/previewtrigger/bg-BG.js.map +1 -0
  332. package/dist/private/intl/previewtrigger/bg-BG.mjs +8 -0
  333. package/dist/private/intl/previewtrigger/bg-BG.mjs.map +1 -0
  334. package/dist/private/intl/previewtrigger/cs-CZ.cjs +6 -0
  335. package/dist/private/intl/previewtrigger/cs-CZ.cjs.map +1 -0
  336. package/dist/private/intl/previewtrigger/cs-CZ.js +8 -0
  337. package/dist/private/intl/previewtrigger/cs-CZ.js.map +1 -0
  338. package/dist/private/intl/previewtrigger/cs-CZ.mjs +8 -0
  339. package/dist/private/intl/previewtrigger/cs-CZ.mjs.map +1 -0
  340. package/dist/private/intl/previewtrigger/da-DK.cjs +6 -0
  341. package/dist/private/intl/previewtrigger/da-DK.cjs.map +1 -0
  342. package/dist/private/intl/previewtrigger/da-DK.js +8 -0
  343. package/dist/private/intl/previewtrigger/da-DK.js.map +1 -0
  344. package/dist/private/intl/previewtrigger/da-DK.mjs +8 -0
  345. package/dist/private/intl/previewtrigger/da-DK.mjs.map +1 -0
  346. package/dist/private/intl/previewtrigger/de-DE.cjs +6 -0
  347. package/dist/private/intl/previewtrigger/de-DE.cjs.map +1 -0
  348. package/dist/private/intl/previewtrigger/de-DE.js +8 -0
  349. package/dist/private/intl/previewtrigger/de-DE.js.map +1 -0
  350. package/dist/private/intl/previewtrigger/de-DE.mjs +8 -0
  351. package/dist/private/intl/previewtrigger/de-DE.mjs.map +1 -0
  352. package/dist/private/intl/previewtrigger/el-GR.cjs +6 -0
  353. package/dist/private/intl/previewtrigger/el-GR.cjs.map +1 -0
  354. package/dist/private/intl/previewtrigger/el-GR.js +8 -0
  355. package/dist/private/intl/previewtrigger/el-GR.js.map +1 -0
  356. package/dist/private/intl/previewtrigger/el-GR.mjs +8 -0
  357. package/dist/private/intl/previewtrigger/el-GR.mjs.map +1 -0
  358. package/dist/private/intl/previewtrigger/en-US.cjs +6 -0
  359. package/dist/private/intl/previewtrigger/en-US.cjs.map +1 -0
  360. package/dist/private/intl/previewtrigger/en-US.js +8 -0
  361. package/dist/private/intl/previewtrigger/en-US.js.map +1 -0
  362. package/dist/private/intl/previewtrigger/en-US.mjs +8 -0
  363. package/dist/private/intl/previewtrigger/en-US.mjs.map +1 -0
  364. package/dist/private/intl/previewtrigger/es-ES.cjs +6 -0
  365. package/dist/private/intl/previewtrigger/es-ES.cjs.map +1 -0
  366. package/dist/private/intl/previewtrigger/es-ES.js +8 -0
  367. package/dist/private/intl/previewtrigger/es-ES.js.map +1 -0
  368. package/dist/private/intl/previewtrigger/es-ES.mjs +8 -0
  369. package/dist/private/intl/previewtrigger/es-ES.mjs.map +1 -0
  370. package/dist/private/intl/previewtrigger/et-EE.cjs +6 -0
  371. package/dist/private/intl/previewtrigger/et-EE.cjs.map +1 -0
  372. package/dist/private/intl/previewtrigger/et-EE.js +8 -0
  373. package/dist/private/intl/previewtrigger/et-EE.js.map +1 -0
  374. package/dist/private/intl/previewtrigger/et-EE.mjs +8 -0
  375. package/dist/private/intl/previewtrigger/et-EE.mjs.map +1 -0
  376. package/dist/private/intl/previewtrigger/fi-FI.cjs +6 -0
  377. package/dist/private/intl/previewtrigger/fi-FI.cjs.map +1 -0
  378. package/dist/private/intl/previewtrigger/fi-FI.js +8 -0
  379. package/dist/private/intl/previewtrigger/fi-FI.js.map +1 -0
  380. package/dist/private/intl/previewtrigger/fi-FI.mjs +8 -0
  381. package/dist/private/intl/previewtrigger/fi-FI.mjs.map +1 -0
  382. package/dist/private/intl/previewtrigger/fr-FR.cjs +6 -0
  383. package/dist/private/intl/previewtrigger/fr-FR.cjs.map +1 -0
  384. package/dist/private/intl/previewtrigger/fr-FR.js +8 -0
  385. package/dist/private/intl/previewtrigger/fr-FR.js.map +1 -0
  386. package/dist/private/intl/previewtrigger/fr-FR.mjs +8 -0
  387. package/dist/private/intl/previewtrigger/fr-FR.mjs.map +1 -0
  388. package/dist/private/intl/previewtrigger/he-IL.cjs +6 -0
  389. package/dist/private/intl/previewtrigger/he-IL.cjs.map +1 -0
  390. package/dist/private/intl/previewtrigger/he-IL.js +8 -0
  391. package/dist/private/intl/previewtrigger/he-IL.js.map +1 -0
  392. package/dist/private/intl/previewtrigger/he-IL.mjs +8 -0
  393. package/dist/private/intl/previewtrigger/he-IL.mjs.map +1 -0
  394. package/dist/private/intl/previewtrigger/hr-HR.cjs +6 -0
  395. package/dist/private/intl/previewtrigger/hr-HR.cjs.map +1 -0
  396. package/dist/private/intl/previewtrigger/hr-HR.js +8 -0
  397. package/dist/private/intl/previewtrigger/hr-HR.js.map +1 -0
  398. package/dist/private/intl/previewtrigger/hr-HR.mjs +8 -0
  399. package/dist/private/intl/previewtrigger/hr-HR.mjs.map +1 -0
  400. package/dist/private/intl/previewtrigger/hu-HU.cjs +6 -0
  401. package/dist/private/intl/previewtrigger/hu-HU.cjs.map +1 -0
  402. package/dist/private/intl/previewtrigger/hu-HU.js +8 -0
  403. package/dist/private/intl/previewtrigger/hu-HU.js.map +1 -0
  404. package/dist/private/intl/previewtrigger/hu-HU.mjs +8 -0
  405. package/dist/private/intl/previewtrigger/hu-HU.mjs.map +1 -0
  406. package/dist/private/intl/previewtrigger/it-IT.cjs +6 -0
  407. package/dist/private/intl/previewtrigger/it-IT.cjs.map +1 -0
  408. package/dist/private/intl/previewtrigger/it-IT.js +8 -0
  409. package/dist/private/intl/previewtrigger/it-IT.js.map +1 -0
  410. package/dist/private/intl/previewtrigger/it-IT.mjs +8 -0
  411. package/dist/private/intl/previewtrigger/it-IT.mjs.map +1 -0
  412. package/dist/private/intl/previewtrigger/ja-JP.cjs +6 -0
  413. package/dist/private/intl/previewtrigger/ja-JP.cjs.map +1 -0
  414. package/dist/private/intl/previewtrigger/ja-JP.js +8 -0
  415. package/dist/private/intl/previewtrigger/ja-JP.js.map +1 -0
  416. package/dist/private/intl/previewtrigger/ja-JP.mjs +8 -0
  417. package/dist/private/intl/previewtrigger/ja-JP.mjs.map +1 -0
  418. package/dist/private/intl/previewtrigger/ko-KR.cjs +6 -0
  419. package/dist/private/intl/previewtrigger/ko-KR.cjs.map +1 -0
  420. package/dist/private/intl/previewtrigger/ko-KR.js +8 -0
  421. package/dist/private/intl/previewtrigger/ko-KR.js.map +1 -0
  422. package/dist/private/intl/previewtrigger/ko-KR.mjs +8 -0
  423. package/dist/private/intl/previewtrigger/ko-KR.mjs.map +1 -0
  424. package/dist/private/intl/previewtrigger/lt-LT.cjs +6 -0
  425. package/dist/private/intl/previewtrigger/lt-LT.cjs.map +1 -0
  426. package/dist/private/intl/previewtrigger/lt-LT.js +8 -0
  427. package/dist/private/intl/previewtrigger/lt-LT.js.map +1 -0
  428. package/dist/private/intl/previewtrigger/lt-LT.mjs +8 -0
  429. package/dist/private/intl/previewtrigger/lt-LT.mjs.map +1 -0
  430. package/dist/private/intl/previewtrigger/lv-LV.cjs +6 -0
  431. package/dist/private/intl/previewtrigger/lv-LV.cjs.map +1 -0
  432. package/dist/private/intl/previewtrigger/lv-LV.js +8 -0
  433. package/dist/private/intl/previewtrigger/lv-LV.js.map +1 -0
  434. package/dist/private/intl/previewtrigger/lv-LV.mjs +8 -0
  435. package/dist/private/intl/previewtrigger/lv-LV.mjs.map +1 -0
  436. package/dist/private/intl/previewtrigger/nb-NO.cjs +6 -0
  437. package/dist/private/intl/previewtrigger/nb-NO.cjs.map +1 -0
  438. package/dist/private/intl/previewtrigger/nb-NO.js +8 -0
  439. package/dist/private/intl/previewtrigger/nb-NO.js.map +1 -0
  440. package/dist/private/intl/previewtrigger/nb-NO.mjs +8 -0
  441. package/dist/private/intl/previewtrigger/nb-NO.mjs.map +1 -0
  442. package/dist/private/intl/previewtrigger/nl-NL.cjs +6 -0
  443. package/dist/private/intl/previewtrigger/nl-NL.cjs.map +1 -0
  444. package/dist/private/intl/previewtrigger/nl-NL.js +8 -0
  445. package/dist/private/intl/previewtrigger/nl-NL.js.map +1 -0
  446. package/dist/private/intl/previewtrigger/nl-NL.mjs +8 -0
  447. package/dist/private/intl/previewtrigger/nl-NL.mjs.map +1 -0
  448. package/dist/private/intl/previewtrigger/pl-PL.cjs +6 -0
  449. package/dist/private/intl/previewtrigger/pl-PL.cjs.map +1 -0
  450. package/dist/private/intl/previewtrigger/pl-PL.js +8 -0
  451. package/dist/private/intl/previewtrigger/pl-PL.js.map +1 -0
  452. package/dist/private/intl/previewtrigger/pl-PL.mjs +8 -0
  453. package/dist/private/intl/previewtrigger/pl-PL.mjs.map +1 -0
  454. package/dist/private/intl/previewtrigger/pt-BR.cjs +6 -0
  455. package/dist/private/intl/previewtrigger/pt-BR.cjs.map +1 -0
  456. package/dist/private/intl/previewtrigger/pt-BR.js +8 -0
  457. package/dist/private/intl/previewtrigger/pt-BR.js.map +1 -0
  458. package/dist/private/intl/previewtrigger/pt-BR.mjs +8 -0
  459. package/dist/private/intl/previewtrigger/pt-BR.mjs.map +1 -0
  460. package/dist/private/intl/previewtrigger/pt-PT.cjs +6 -0
  461. package/dist/private/intl/previewtrigger/pt-PT.cjs.map +1 -0
  462. package/dist/private/intl/previewtrigger/pt-PT.js +8 -0
  463. package/dist/private/intl/previewtrigger/pt-PT.js.map +1 -0
  464. package/dist/private/intl/previewtrigger/pt-PT.mjs +8 -0
  465. package/dist/private/intl/previewtrigger/pt-PT.mjs.map +1 -0
  466. package/dist/private/intl/previewtrigger/ro-RO.cjs +6 -0
  467. package/dist/private/intl/previewtrigger/ro-RO.cjs.map +1 -0
  468. package/dist/private/intl/previewtrigger/ro-RO.js +8 -0
  469. package/dist/private/intl/previewtrigger/ro-RO.js.map +1 -0
  470. package/dist/private/intl/previewtrigger/ro-RO.mjs +8 -0
  471. package/dist/private/intl/previewtrigger/ro-RO.mjs.map +1 -0
  472. package/dist/private/intl/previewtrigger/ru-RU.cjs +6 -0
  473. package/dist/private/intl/previewtrigger/ru-RU.cjs.map +1 -0
  474. package/dist/private/intl/previewtrigger/ru-RU.js +8 -0
  475. package/dist/private/intl/previewtrigger/ru-RU.js.map +1 -0
  476. package/dist/private/intl/previewtrigger/ru-RU.mjs +8 -0
  477. package/dist/private/intl/previewtrigger/ru-RU.mjs.map +1 -0
  478. package/dist/private/intl/previewtrigger/sk-SK.cjs +6 -0
  479. package/dist/private/intl/previewtrigger/sk-SK.cjs.map +1 -0
  480. package/dist/private/intl/previewtrigger/sk-SK.js +8 -0
  481. package/dist/private/intl/previewtrigger/sk-SK.js.map +1 -0
  482. package/dist/private/intl/previewtrigger/sk-SK.mjs +8 -0
  483. package/dist/private/intl/previewtrigger/sk-SK.mjs.map +1 -0
  484. package/dist/private/intl/previewtrigger/sl-SI.cjs +6 -0
  485. package/dist/private/intl/previewtrigger/sl-SI.cjs.map +1 -0
  486. package/dist/private/intl/previewtrigger/sl-SI.js +8 -0
  487. package/dist/private/intl/previewtrigger/sl-SI.js.map +1 -0
  488. package/dist/private/intl/previewtrigger/sl-SI.mjs +8 -0
  489. package/dist/private/intl/previewtrigger/sl-SI.mjs.map +1 -0
  490. package/dist/private/intl/previewtrigger/sr-SP.cjs +6 -0
  491. package/dist/private/intl/previewtrigger/sr-SP.cjs.map +1 -0
  492. package/dist/private/intl/previewtrigger/sr-SP.js +8 -0
  493. package/dist/private/intl/previewtrigger/sr-SP.js.map +1 -0
  494. package/dist/private/intl/previewtrigger/sr-SP.mjs +8 -0
  495. package/dist/private/intl/previewtrigger/sr-SP.mjs.map +1 -0
  496. package/dist/private/intl/previewtrigger/sv-SE.cjs +6 -0
  497. package/dist/private/intl/previewtrigger/sv-SE.cjs.map +1 -0
  498. package/dist/private/intl/previewtrigger/sv-SE.js +8 -0
  499. package/dist/private/intl/previewtrigger/sv-SE.js.map +1 -0
  500. package/dist/private/intl/previewtrigger/sv-SE.mjs +8 -0
  501. package/dist/private/intl/previewtrigger/sv-SE.mjs.map +1 -0
  502. package/dist/private/intl/previewtrigger/tr-TR.cjs +6 -0
  503. package/dist/private/intl/previewtrigger/tr-TR.cjs.map +1 -0
  504. package/dist/private/intl/previewtrigger/tr-TR.js +8 -0
  505. package/dist/private/intl/previewtrigger/tr-TR.js.map +1 -0
  506. package/dist/private/intl/previewtrigger/tr-TR.mjs +8 -0
  507. package/dist/private/intl/previewtrigger/tr-TR.mjs.map +1 -0
  508. package/dist/private/intl/previewtrigger/uk-UA.cjs +6 -0
  509. package/dist/private/intl/previewtrigger/uk-UA.cjs.map +1 -0
  510. package/dist/private/intl/previewtrigger/uk-UA.js +8 -0
  511. package/dist/private/intl/previewtrigger/uk-UA.js.map +1 -0
  512. package/dist/private/intl/previewtrigger/uk-UA.mjs +8 -0
  513. package/dist/private/intl/previewtrigger/uk-UA.mjs.map +1 -0
  514. package/dist/private/intl/previewtrigger/zh-CN.cjs +6 -0
  515. package/dist/private/intl/previewtrigger/zh-CN.cjs.map +1 -0
  516. package/dist/private/intl/previewtrigger/zh-CN.js +8 -0
  517. package/dist/private/intl/previewtrigger/zh-CN.js.map +1 -0
  518. package/dist/private/intl/previewtrigger/zh-CN.mjs +8 -0
  519. package/dist/private/intl/previewtrigger/zh-CN.mjs.map +1 -0
  520. package/dist/private/intl/previewtrigger/zh-TW.cjs +6 -0
  521. package/dist/private/intl/previewtrigger/zh-TW.cjs.map +1 -0
  522. package/dist/private/intl/previewtrigger/zh-TW.js +8 -0
  523. package/dist/private/intl/previewtrigger/zh-TW.js.map +1 -0
  524. package/dist/private/intl/previewtrigger/zh-TW.mjs +8 -0
  525. package/dist/private/intl/previewtrigger/zh-TW.mjs.map +1 -0
  526. package/dist/private/intl/table/ar-AE.cjs +3 -3
  527. package/dist/private/intl/table/ar-AE.cjs.map +1 -1
  528. package/dist/private/intl/table/ar-AE.js +3 -3
  529. package/dist/private/intl/table/ar-AE.js.map +1 -1
  530. package/dist/private/intl/table/ar-AE.mjs +3 -3
  531. package/dist/private/intl/table/ar-AE.mjs.map +1 -1
  532. package/dist/private/intl/table/bg-BG.cjs +3 -3
  533. package/dist/private/intl/table/bg-BG.cjs.map +1 -1
  534. package/dist/private/intl/table/bg-BG.js +3 -3
  535. package/dist/private/intl/table/bg-BG.js.map +1 -1
  536. package/dist/private/intl/table/bg-BG.mjs +3 -3
  537. package/dist/private/intl/table/bg-BG.mjs.map +1 -1
  538. package/dist/private/intl/table/cs-CZ.cjs +3 -3
  539. package/dist/private/intl/table/cs-CZ.cjs.map +1 -1
  540. package/dist/private/intl/table/cs-CZ.js +3 -3
  541. package/dist/private/intl/table/cs-CZ.js.map +1 -1
  542. package/dist/private/intl/table/cs-CZ.mjs +3 -3
  543. package/dist/private/intl/table/cs-CZ.mjs.map +1 -1
  544. package/dist/private/intl/table/da-DK.cjs +3 -3
  545. package/dist/private/intl/table/da-DK.cjs.map +1 -1
  546. package/dist/private/intl/table/da-DK.js +3 -3
  547. package/dist/private/intl/table/da-DK.js.map +1 -1
  548. package/dist/private/intl/table/da-DK.mjs +3 -3
  549. package/dist/private/intl/table/da-DK.mjs.map +1 -1
  550. package/dist/private/intl/table/de-DE.cjs +3 -3
  551. package/dist/private/intl/table/de-DE.cjs.map +1 -1
  552. package/dist/private/intl/table/de-DE.js +3 -3
  553. package/dist/private/intl/table/de-DE.js.map +1 -1
  554. package/dist/private/intl/table/de-DE.mjs +3 -3
  555. package/dist/private/intl/table/de-DE.mjs.map +1 -1
  556. package/dist/private/intl/table/el-GR.cjs +3 -3
  557. package/dist/private/intl/table/el-GR.cjs.map +1 -1
  558. package/dist/private/intl/table/el-GR.js +3 -3
  559. package/dist/private/intl/table/el-GR.js.map +1 -1
  560. package/dist/private/intl/table/el-GR.mjs +3 -3
  561. package/dist/private/intl/table/el-GR.mjs.map +1 -1
  562. package/dist/private/intl/table/es-ES.cjs +3 -3
  563. package/dist/private/intl/table/es-ES.cjs.map +1 -1
  564. package/dist/private/intl/table/es-ES.js +3 -3
  565. package/dist/private/intl/table/es-ES.js.map +1 -1
  566. package/dist/private/intl/table/es-ES.mjs +3 -3
  567. package/dist/private/intl/table/es-ES.mjs.map +1 -1
  568. package/dist/private/intl/table/et-EE.cjs +3 -3
  569. package/dist/private/intl/table/et-EE.cjs.map +1 -1
  570. package/dist/private/intl/table/et-EE.js +3 -3
  571. package/dist/private/intl/table/et-EE.js.map +1 -1
  572. package/dist/private/intl/table/et-EE.mjs +3 -3
  573. package/dist/private/intl/table/et-EE.mjs.map +1 -1
  574. package/dist/private/intl/table/fi-FI.cjs +3 -3
  575. package/dist/private/intl/table/fi-FI.cjs.map +1 -1
  576. package/dist/private/intl/table/fi-FI.js +3 -3
  577. package/dist/private/intl/table/fi-FI.js.map +1 -1
  578. package/dist/private/intl/table/fi-FI.mjs +3 -3
  579. package/dist/private/intl/table/fi-FI.mjs.map +1 -1
  580. package/dist/private/intl/table/fr-FR.cjs +3 -3
  581. package/dist/private/intl/table/fr-FR.cjs.map +1 -1
  582. package/dist/private/intl/table/fr-FR.js +3 -3
  583. package/dist/private/intl/table/fr-FR.js.map +1 -1
  584. package/dist/private/intl/table/fr-FR.mjs +3 -3
  585. package/dist/private/intl/table/fr-FR.mjs.map +1 -1
  586. package/dist/private/intl/table/he-IL.cjs +3 -3
  587. package/dist/private/intl/table/he-IL.cjs.map +1 -1
  588. package/dist/private/intl/table/he-IL.js +3 -3
  589. package/dist/private/intl/table/he-IL.js.map +1 -1
  590. package/dist/private/intl/table/he-IL.mjs +3 -3
  591. package/dist/private/intl/table/he-IL.mjs.map +1 -1
  592. package/dist/private/intl/table/hr-HR.cjs +3 -3
  593. package/dist/private/intl/table/hr-HR.cjs.map +1 -1
  594. package/dist/private/intl/table/hr-HR.js +3 -3
  595. package/dist/private/intl/table/hr-HR.js.map +1 -1
  596. package/dist/private/intl/table/hr-HR.mjs +3 -3
  597. package/dist/private/intl/table/hr-HR.mjs.map +1 -1
  598. package/dist/private/intl/table/hu-HU.cjs +3 -3
  599. package/dist/private/intl/table/hu-HU.cjs.map +1 -1
  600. package/dist/private/intl/table/hu-HU.js +3 -3
  601. package/dist/private/intl/table/hu-HU.js.map +1 -1
  602. package/dist/private/intl/table/hu-HU.mjs +3 -3
  603. package/dist/private/intl/table/hu-HU.mjs.map +1 -1
  604. package/dist/private/intl/table/it-IT.cjs +3 -3
  605. package/dist/private/intl/table/it-IT.cjs.map +1 -1
  606. package/dist/private/intl/table/it-IT.js +3 -3
  607. package/dist/private/intl/table/it-IT.js.map +1 -1
  608. package/dist/private/intl/table/it-IT.mjs +3 -3
  609. package/dist/private/intl/table/it-IT.mjs.map +1 -1
  610. package/dist/private/intl/table/ja-JP.cjs +3 -3
  611. package/dist/private/intl/table/ja-JP.cjs.map +1 -1
  612. package/dist/private/intl/table/ja-JP.js +3 -3
  613. package/dist/private/intl/table/ja-JP.js.map +1 -1
  614. package/dist/private/intl/table/ja-JP.mjs +3 -3
  615. package/dist/private/intl/table/ja-JP.mjs.map +1 -1
  616. package/dist/private/intl/table/ko-KR.cjs +3 -3
  617. package/dist/private/intl/table/ko-KR.cjs.map +1 -1
  618. package/dist/private/intl/table/ko-KR.js +3 -3
  619. package/dist/private/intl/table/ko-KR.js.map +1 -1
  620. package/dist/private/intl/table/ko-KR.mjs +3 -3
  621. package/dist/private/intl/table/ko-KR.mjs.map +1 -1
  622. package/dist/private/intl/table/lt-LT.cjs +3 -3
  623. package/dist/private/intl/table/lt-LT.cjs.map +1 -1
  624. package/dist/private/intl/table/lt-LT.js +3 -3
  625. package/dist/private/intl/table/lt-LT.js.map +1 -1
  626. package/dist/private/intl/table/lt-LT.mjs +3 -3
  627. package/dist/private/intl/table/lt-LT.mjs.map +1 -1
  628. package/dist/private/intl/table/lv-LV.cjs +3 -3
  629. package/dist/private/intl/table/lv-LV.cjs.map +1 -1
  630. package/dist/private/intl/table/lv-LV.js +3 -3
  631. package/dist/private/intl/table/lv-LV.js.map +1 -1
  632. package/dist/private/intl/table/lv-LV.mjs +3 -3
  633. package/dist/private/intl/table/lv-LV.mjs.map +1 -1
  634. package/dist/private/intl/table/nb-NO.cjs +3 -3
  635. package/dist/private/intl/table/nb-NO.cjs.map +1 -1
  636. package/dist/private/intl/table/nb-NO.js +3 -3
  637. package/dist/private/intl/table/nb-NO.js.map +1 -1
  638. package/dist/private/intl/table/nb-NO.mjs +3 -3
  639. package/dist/private/intl/table/nb-NO.mjs.map +1 -1
  640. package/dist/private/intl/table/nl-NL.cjs +3 -3
  641. package/dist/private/intl/table/nl-NL.cjs.map +1 -1
  642. package/dist/private/intl/table/nl-NL.js +3 -3
  643. package/dist/private/intl/table/nl-NL.js.map +1 -1
  644. package/dist/private/intl/table/nl-NL.mjs +3 -3
  645. package/dist/private/intl/table/nl-NL.mjs.map +1 -1
  646. package/dist/private/intl/table/pl-PL.cjs +3 -3
  647. package/dist/private/intl/table/pl-PL.cjs.map +1 -1
  648. package/dist/private/intl/table/pl-PL.js +3 -3
  649. package/dist/private/intl/table/pl-PL.js.map +1 -1
  650. package/dist/private/intl/table/pl-PL.mjs +3 -3
  651. package/dist/private/intl/table/pl-PL.mjs.map +1 -1
  652. package/dist/private/intl/table/pt-BR.cjs +3 -3
  653. package/dist/private/intl/table/pt-BR.cjs.map +1 -1
  654. package/dist/private/intl/table/pt-BR.js +3 -3
  655. package/dist/private/intl/table/pt-BR.js.map +1 -1
  656. package/dist/private/intl/table/pt-BR.mjs +3 -3
  657. package/dist/private/intl/table/pt-BR.mjs.map +1 -1
  658. package/dist/private/intl/table/pt-PT.cjs +3 -3
  659. package/dist/private/intl/table/pt-PT.cjs.map +1 -1
  660. package/dist/private/intl/table/pt-PT.js +3 -3
  661. package/dist/private/intl/table/pt-PT.js.map +1 -1
  662. package/dist/private/intl/table/pt-PT.mjs +3 -3
  663. package/dist/private/intl/table/pt-PT.mjs.map +1 -1
  664. package/dist/private/intl/table/ro-RO.cjs +3 -3
  665. package/dist/private/intl/table/ro-RO.cjs.map +1 -1
  666. package/dist/private/intl/table/ro-RO.js +3 -3
  667. package/dist/private/intl/table/ro-RO.js.map +1 -1
  668. package/dist/private/intl/table/ro-RO.mjs +3 -3
  669. package/dist/private/intl/table/ro-RO.mjs.map +1 -1
  670. package/dist/private/intl/table/ru-RU.cjs +3 -3
  671. package/dist/private/intl/table/ru-RU.cjs.map +1 -1
  672. package/dist/private/intl/table/ru-RU.js +3 -3
  673. package/dist/private/intl/table/ru-RU.js.map +1 -1
  674. package/dist/private/intl/table/ru-RU.mjs +3 -3
  675. package/dist/private/intl/table/ru-RU.mjs.map +1 -1
  676. package/dist/private/intl/table/sk-SK.cjs +3 -3
  677. package/dist/private/intl/table/sk-SK.cjs.map +1 -1
  678. package/dist/private/intl/table/sk-SK.js +3 -3
  679. package/dist/private/intl/table/sk-SK.js.map +1 -1
  680. package/dist/private/intl/table/sk-SK.mjs +3 -3
  681. package/dist/private/intl/table/sk-SK.mjs.map +1 -1
  682. package/dist/private/intl/table/sl-SI.cjs +3 -3
  683. package/dist/private/intl/table/sl-SI.cjs.map +1 -1
  684. package/dist/private/intl/table/sl-SI.js +3 -3
  685. package/dist/private/intl/table/sl-SI.js.map +1 -1
  686. package/dist/private/intl/table/sl-SI.mjs +3 -3
  687. package/dist/private/intl/table/sl-SI.mjs.map +1 -1
  688. package/dist/private/intl/table/sr-SP.cjs +3 -3
  689. package/dist/private/intl/table/sr-SP.cjs.map +1 -1
  690. package/dist/private/intl/table/sr-SP.js +3 -3
  691. package/dist/private/intl/table/sr-SP.js.map +1 -1
  692. package/dist/private/intl/table/sr-SP.mjs +3 -3
  693. package/dist/private/intl/table/sr-SP.mjs.map +1 -1
  694. package/dist/private/intl/table/sv-SE.cjs +3 -3
  695. package/dist/private/intl/table/sv-SE.cjs.map +1 -1
  696. package/dist/private/intl/table/sv-SE.js +3 -3
  697. package/dist/private/intl/table/sv-SE.js.map +1 -1
  698. package/dist/private/intl/table/sv-SE.mjs +3 -3
  699. package/dist/private/intl/table/sv-SE.mjs.map +1 -1
  700. package/dist/private/intl/table/tr-TR.cjs +3 -3
  701. package/dist/private/intl/table/tr-TR.cjs.map +1 -1
  702. package/dist/private/intl/table/tr-TR.js +3 -3
  703. package/dist/private/intl/table/tr-TR.js.map +1 -1
  704. package/dist/private/intl/table/tr-TR.mjs +3 -3
  705. package/dist/private/intl/table/tr-TR.mjs.map +1 -1
  706. package/dist/private/intl/table/uk-UA.cjs +3 -3
  707. package/dist/private/intl/table/uk-UA.cjs.map +1 -1
  708. package/dist/private/intl/table/uk-UA.js +3 -3
  709. package/dist/private/intl/table/uk-UA.js.map +1 -1
  710. package/dist/private/intl/table/uk-UA.mjs +3 -3
  711. package/dist/private/intl/table/uk-UA.mjs.map +1 -1
  712. package/dist/private/intl/table/zh-CN.cjs +4 -4
  713. package/dist/private/intl/table/zh-CN.cjs.map +1 -1
  714. package/dist/private/intl/table/zh-CN.js +4 -4
  715. package/dist/private/intl/table/zh-CN.js.map +1 -1
  716. package/dist/private/intl/table/zh-CN.mjs +4 -4
  717. package/dist/private/intl/table/zh-CN.mjs.map +1 -1
  718. package/dist/private/intl/table/zh-TW.cjs +3 -3
  719. package/dist/private/intl/table/zh-TW.cjs.map +1 -1
  720. package/dist/private/intl/table/zh-TW.js +3 -3
  721. package/dist/private/intl/table/zh-TW.js.map +1 -1
  722. package/dist/private/intl/table/zh-TW.mjs +3 -3
  723. package/dist/private/intl/table/zh-TW.mjs.map +1 -1
  724. package/dist/private/intl/tree/es-ES.cjs +1 -1
  725. package/dist/private/intl/tree/es-ES.cjs.map +1 -1
  726. package/dist/private/intl/tree/es-ES.js +1 -1
  727. package/dist/private/intl/tree/es-ES.js.map +1 -1
  728. package/dist/private/intl/tree/es-ES.mjs +1 -1
  729. package/dist/private/intl/tree/es-ES.mjs.map +1 -1
  730. package/dist/private/link/useLink.cjs +2 -1
  731. package/dist/private/link/useLink.cjs.map +1 -1
  732. package/dist/private/link/useLink.js +2 -1
  733. package/dist/private/link/useLink.js.map +1 -1
  734. package/dist/private/link/useLink.mjs +2 -1
  735. package/dist/private/link/useLink.mjs.map +1 -1
  736. package/dist/private/menu/useMenuItem.cjs +33 -33
  737. package/dist/private/menu/useMenuItem.cjs.map +1 -1
  738. package/dist/private/menu/useMenuItem.js +33 -33
  739. package/dist/private/menu/useMenuItem.js.map +1 -1
  740. package/dist/private/menu/useMenuItem.mjs +33 -33
  741. package/dist/private/menu/useMenuItem.mjs.map +1 -1
  742. package/dist/private/menu/useMenuTrigger.cjs +96 -30
  743. package/dist/private/menu/useMenuTrigger.cjs.map +1 -1
  744. package/dist/private/menu/useMenuTrigger.js +96 -30
  745. package/dist/private/menu/useMenuTrigger.js.map +1 -1
  746. package/dist/private/menu/useMenuTrigger.mjs +96 -30
  747. package/dist/private/menu/useMenuTrigger.mjs.map +1 -1
  748. package/dist/private/menu/useSubmenuTrigger.cjs +44 -36
  749. package/dist/private/menu/useSubmenuTrigger.cjs.map +1 -1
  750. package/dist/private/menu/useSubmenuTrigger.js +44 -36
  751. package/dist/private/menu/useSubmenuTrigger.js.map +1 -1
  752. package/dist/private/menu/useSubmenuTrigger.mjs +44 -36
  753. package/dist/private/menu/useSubmenuTrigger.mjs.map +1 -1
  754. package/dist/private/numberfield/useNumberField.cjs +24 -19
  755. package/dist/private/numberfield/useNumberField.cjs.map +1 -1
  756. package/dist/private/numberfield/useNumberField.js +24 -19
  757. package/dist/private/numberfield/useNumberField.js.map +1 -1
  758. package/dist/private/numberfield/useNumberField.mjs +24 -19
  759. package/dist/private/numberfield/useNumberField.mjs.map +1 -1
  760. package/dist/private/overlays/Overlay.cjs +5 -1
  761. package/dist/private/overlays/Overlay.cjs.map +1 -1
  762. package/dist/private/overlays/Overlay.js +5 -1
  763. package/dist/private/overlays/Overlay.js.map +1 -1
  764. package/dist/private/overlays/Overlay.mjs +5 -1
  765. package/dist/private/overlays/Overlay.mjs.map +1 -1
  766. package/dist/private/overlays/ariaHideOutside.cjs +12 -8
  767. package/dist/private/overlays/ariaHideOutside.cjs.map +1 -1
  768. package/dist/private/overlays/ariaHideOutside.js +13 -9
  769. package/dist/private/overlays/ariaHideOutside.js.map +1 -1
  770. package/dist/private/overlays/ariaHideOutside.mjs +13 -9
  771. package/dist/private/overlays/ariaHideOutside.mjs.map +1 -1
  772. package/dist/private/overlays/useCloseOnScroll.cjs +3 -4
  773. package/dist/private/overlays/useCloseOnScroll.cjs.map +1 -1
  774. package/dist/private/overlays/useCloseOnScroll.js +4 -5
  775. package/dist/private/overlays/useCloseOnScroll.js.map +1 -1
  776. package/dist/private/overlays/useCloseOnScroll.mjs +4 -5
  777. package/dist/private/overlays/useCloseOnScroll.mjs.map +1 -1
  778. package/dist/private/overlays/useOverlay.cjs +13 -7
  779. package/dist/private/overlays/useOverlay.cjs.map +1 -1
  780. package/dist/private/overlays/useOverlay.js +13 -7
  781. package/dist/private/overlays/useOverlay.js.map +1 -1
  782. package/dist/private/overlays/useOverlay.mjs +13 -7
  783. package/dist/private/overlays/useOverlay.mjs.map +1 -1
  784. package/dist/private/overlays/useOverlayPosition.cjs +6 -0
  785. package/dist/private/overlays/useOverlayPosition.cjs.map +1 -1
  786. package/dist/private/overlays/useOverlayPosition.js +6 -0
  787. package/dist/private/overlays/useOverlayPosition.js.map +1 -1
  788. package/dist/private/overlays/useOverlayPosition.mjs +6 -0
  789. package/dist/private/overlays/useOverlayPosition.mjs.map +1 -1
  790. package/dist/private/overlays/usePopover.cjs +6 -2
  791. package/dist/private/overlays/usePopover.cjs.map +1 -1
  792. package/dist/private/overlays/usePopover.js +7 -2
  793. package/dist/private/overlays/usePopover.js.map +1 -1
  794. package/dist/private/overlays/usePopover.mjs +6 -2
  795. package/dist/private/overlays/usePopover.mjs.map +1 -1
  796. package/dist/private/overlays/usePreventScroll.cjs +2 -5
  797. package/dist/private/overlays/usePreventScroll.cjs.map +1 -1
  798. package/dist/private/overlays/usePreventScroll.js +3 -6
  799. package/dist/private/overlays/usePreventScroll.js.map +1 -1
  800. package/dist/private/overlays/usePreventScroll.mjs +3 -6
  801. package/dist/private/overlays/usePreventScroll.mjs.map +1 -1
  802. package/dist/private/progress/useProgressBar.cjs +2 -1
  803. package/dist/private/progress/useProgressBar.cjs.map +1 -1
  804. package/dist/private/progress/useProgressBar.js +2 -1
  805. package/dist/private/progress/useProgressBar.js.map +1 -1
  806. package/dist/private/progress/useProgressBar.mjs +2 -1
  807. package/dist/private/progress/useProgressBar.mjs.map +1 -1
  808. package/dist/private/radio/useRadioGroup.cjs +26 -23
  809. package/dist/private/radio/useRadioGroup.cjs.map +1 -1
  810. package/dist/private/radio/useRadioGroup.js +26 -23
  811. package/dist/private/radio/useRadioGroup.js.map +1 -1
  812. package/dist/private/radio/useRadioGroup.mjs +26 -23
  813. package/dist/private/radio/useRadioGroup.mjs.map +1 -1
  814. package/dist/private/searchfield/useSearchField.cjs +28 -22
  815. package/dist/private/searchfield/useSearchField.cjs.map +1 -1
  816. package/dist/private/searchfield/useSearchField.js +28 -22
  817. package/dist/private/searchfield/useSearchField.js.map +1 -1
  818. package/dist/private/searchfield/useSearchField.mjs +28 -22
  819. package/dist/private/searchfield/useSearchField.mjs.map +1 -1
  820. package/dist/private/select/useSelect.cjs +21 -23
  821. package/dist/private/select/useSelect.cjs.map +1 -1
  822. package/dist/private/select/useSelect.js +23 -25
  823. package/dist/private/select/useSelect.js.map +1 -1
  824. package/dist/private/select/useSelect.mjs +21 -23
  825. package/dist/private/select/useSelect.mjs.map +1 -1
  826. package/dist/private/selection/useSelectableCollection.cjs +203 -146
  827. package/dist/private/selection/useSelectableCollection.cjs.map +1 -1
  828. package/dist/private/selection/useSelectableCollection.js +207 -150
  829. package/dist/private/selection/useSelectableCollection.js.map +1 -1
  830. package/dist/private/selection/useSelectableCollection.mjs +203 -146
  831. package/dist/private/selection/useSelectableCollection.mjs.map +1 -1
  832. package/dist/private/selection/useSelectableItem.cjs +58 -13
  833. package/dist/private/selection/useSelectableItem.cjs.map +1 -1
  834. package/dist/private/selection/useSelectableItem.js +58 -13
  835. package/dist/private/selection/useSelectableItem.js.map +1 -1
  836. package/dist/private/selection/useSelectableItem.mjs +58 -13
  837. package/dist/private/selection/useSelectableItem.mjs.map +1 -1
  838. package/dist/private/slider/useSlider.cjs.map +1 -1
  839. package/dist/private/slider/useSlider.js.map +1 -1
  840. package/dist/private/slider/useSlider.mjs.map +1 -1
  841. package/dist/private/slider/useSliderThumb.cjs +28 -26
  842. package/dist/private/slider/useSliderThumb.cjs.map +1 -1
  843. package/dist/private/slider/useSliderThumb.js +28 -26
  844. package/dist/private/slider/useSliderThumb.js.map +1 -1
  845. package/dist/private/slider/useSliderThumb.mjs +28 -26
  846. package/dist/private/slider/useSliderThumb.mjs.map +1 -1
  847. package/dist/private/spinbutton/useSpinButton.cjs +49 -34
  848. package/dist/private/spinbutton/useSpinButton.cjs.map +1 -1
  849. package/dist/private/spinbutton/useSpinButton.js +49 -34
  850. package/dist/private/spinbutton/useSpinButton.js.map +1 -1
  851. package/dist/private/spinbutton/useSpinButton.mjs +49 -34
  852. package/dist/private/spinbutton/useSpinButton.mjs.map +1 -1
  853. package/dist/private/ssr/SSRProvider.cjs +12 -3
  854. package/dist/private/ssr/SSRProvider.cjs.map +1 -1
  855. package/dist/private/ssr/SSRProvider.js +12 -3
  856. package/dist/private/ssr/SSRProvider.js.map +1 -1
  857. package/dist/private/ssr/SSRProvider.mjs +12 -3
  858. package/dist/private/ssr/SSRProvider.mjs.map +1 -1
  859. package/dist/private/steplist/useStepListItem.cjs +0 -9
  860. package/dist/private/steplist/useStepListItem.cjs.map +1 -1
  861. package/dist/private/steplist/useStepListItem.js +0 -10
  862. package/dist/private/steplist/useStepListItem.js.map +1 -1
  863. package/dist/private/steplist/useStepListItem.mjs +0 -9
  864. package/dist/private/steplist/useStepListItem.mjs.map +1 -1
  865. package/dist/private/table/useTable.cjs +4 -2
  866. package/dist/private/table/useTable.cjs.map +1 -1
  867. package/dist/private/table/useTable.js +4 -2
  868. package/dist/private/table/useTable.js.map +1 -1
  869. package/dist/private/table/useTable.mjs +4 -2
  870. package/dist/private/table/useTable.mjs.map +1 -1
  871. package/dist/private/table/useTableCell.cjs +2 -0
  872. package/dist/private/table/useTableCell.cjs.map +1 -1
  873. package/dist/private/table/useTableCell.js +2 -0
  874. package/dist/private/table/useTableCell.js.map +1 -1
  875. package/dist/private/table/useTableCell.mjs +2 -0
  876. package/dist/private/table/useTableCell.mjs.map +1 -1
  877. package/dist/private/table/useTableColumnHeader.cjs +2 -3
  878. package/dist/private/table/useTableColumnHeader.cjs.map +1 -1
  879. package/dist/private/table/useTableColumnHeader.js +2 -3
  880. package/dist/private/table/useTableColumnHeader.js.map +1 -1
  881. package/dist/private/table/useTableColumnHeader.mjs +2 -3
  882. package/dist/private/table/useTableColumnHeader.mjs.map +1 -1
  883. package/dist/private/table/useTableColumnResize.cjs +32 -14
  884. package/dist/private/table/useTableColumnResize.cjs.map +1 -1
  885. package/dist/private/table/useTableColumnResize.js +33 -15
  886. package/dist/private/table/useTableColumnResize.js.map +1 -1
  887. package/dist/private/table/useTableColumnResize.mjs +33 -15
  888. package/dist/private/table/useTableColumnResize.mjs.map +1 -1
  889. package/dist/private/table/useTableRow.cjs +4 -2
  890. package/dist/private/table/useTableRow.cjs.map +1 -1
  891. package/dist/private/table/useTableRow.js +4 -2
  892. package/dist/private/table/useTableRow.js.map +1 -1
  893. package/dist/private/table/useTableRow.mjs +4 -2
  894. package/dist/private/table/useTableRow.mjs.map +1 -1
  895. package/dist/private/tag/useTag.cjs +21 -11
  896. package/dist/private/tag/useTag.cjs.map +1 -1
  897. package/dist/private/tag/useTag.js +21 -11
  898. package/dist/private/tag/useTag.js.map +1 -1
  899. package/dist/private/tag/useTag.mjs +21 -11
  900. package/dist/private/tag/useTag.mjs.map +1 -1
  901. package/dist/private/textfield/useFormattedTextField.cjs +1 -0
  902. package/dist/private/textfield/useFormattedTextField.cjs.map +1 -1
  903. package/dist/private/textfield/useFormattedTextField.js +1 -0
  904. package/dist/private/textfield/useFormattedTextField.js.map +1 -1
  905. package/dist/private/textfield/useFormattedTextField.mjs +1 -0
  906. package/dist/private/textfield/useFormattedTextField.mjs.map +1 -1
  907. package/dist/private/toast/useToastRegion.cjs +5 -0
  908. package/dist/private/toast/useToastRegion.cjs.map +1 -1
  909. package/dist/private/toast/useToastRegion.js +5 -0
  910. package/dist/private/toast/useToastRegion.js.map +1 -1
  911. package/dist/private/toast/useToastRegion.mjs +5 -0
  912. package/dist/private/toast/useToastRegion.mjs.map +1 -1
  913. package/dist/private/toggle/useToggle.cjs +1 -0
  914. package/dist/private/toggle/useToggle.cjs.map +1 -1
  915. package/dist/private/toggle/useToggle.js +1 -0
  916. package/dist/private/toggle/useToggle.js.map +1 -1
  917. package/dist/private/toggle/useToggle.mjs +1 -0
  918. package/dist/private/toggle/useToggle.mjs.map +1 -1
  919. package/dist/private/tokenfield/useToken.cjs +46 -0
  920. package/dist/private/tokenfield/useToken.cjs.map +1 -0
  921. package/dist/private/tokenfield/useToken.js +41 -0
  922. package/dist/private/tokenfield/useToken.js.map +1 -0
  923. package/dist/private/tokenfield/useToken.mjs +41 -0
  924. package/dist/private/tokenfield/useToken.mjs.map +1 -0
  925. package/dist/private/tokenfield/useTokenField.cjs +587 -0
  926. package/dist/private/tokenfield/useTokenField.cjs.map +1 -0
  927. package/dist/private/tokenfield/useTokenField.js +590 -0
  928. package/dist/private/tokenfield/useTokenField.js.map +1 -0
  929. package/dist/private/tokenfield/useTokenField.mjs +579 -0
  930. package/dist/private/tokenfield/useTokenField.mjs.map +1 -0
  931. package/dist/private/toolbar/useToolbar.cjs +1 -0
  932. package/dist/private/toolbar/useToolbar.cjs.map +1 -1
  933. package/dist/private/toolbar/useToolbar.js +1 -0
  934. package/dist/private/toolbar/useToolbar.js.map +1 -1
  935. package/dist/private/toolbar/useToolbar.mjs +1 -0
  936. package/dist/private/toolbar/useToolbar.mjs.map +1 -1
  937. package/dist/private/tooltip/intlStrings.cjs +108 -0
  938. package/dist/private/tooltip/intlStrings.cjs.map +1 -0
  939. package/dist/private/tooltip/intlStrings.js +110 -0
  940. package/dist/private/tooltip/intlStrings.js.map +1 -0
  941. package/dist/private/tooltip/intlStrings.mjs +110 -0
  942. package/dist/private/tooltip/intlStrings.mjs.map +1 -0
  943. package/dist/private/tooltip/usePreviewTrigger.cjs +212 -0
  944. package/dist/private/tooltip/usePreviewTrigger.cjs.map +1 -0
  945. package/dist/private/tooltip/usePreviewTrigger.js +208 -0
  946. package/dist/private/tooltip/usePreviewTrigger.js.map +1 -0
  947. package/dist/private/tooltip/usePreviewTrigger.mjs +207 -0
  948. package/dist/private/tooltip/usePreviewTrigger.mjs.map +1 -0
  949. package/dist/private/tooltip/useSafeArea.cjs +134 -0
  950. package/dist/private/tooltip/useSafeArea.cjs.map +1 -0
  951. package/dist/private/tooltip/useSafeArea.js +130 -0
  952. package/dist/private/tooltip/useSafeArea.js.map +1 -0
  953. package/dist/private/tooltip/useSafeArea.mjs +129 -0
  954. package/dist/private/tooltip/useSafeArea.mjs.map +1 -0
  955. package/dist/private/tooltip/useTooltipTrigger.cjs +1 -0
  956. package/dist/private/tooltip/useTooltipTrigger.cjs.map +1 -1
  957. package/dist/private/tooltip/useTooltipTrigger.js +1 -0
  958. package/dist/private/tooltip/useTooltipTrigger.js.map +1 -1
  959. package/dist/private/tooltip/useTooltipTrigger.mjs +1 -0
  960. package/dist/private/tooltip/useTooltipTrigger.mjs.map +1 -1
  961. package/dist/private/tree/useTree.cjs +1 -0
  962. package/dist/private/tree/useTree.cjs.map +1 -1
  963. package/dist/private/tree/useTree.js +1 -0
  964. package/dist/private/tree/useTree.js.map +1 -1
  965. package/dist/private/tree/useTree.mjs +1 -0
  966. package/dist/private/tree/useTree.mjs.map +1 -1
  967. package/dist/private/utils/domHelpers.cjs +43 -12
  968. package/dist/private/utils/domHelpers.cjs.map +1 -1
  969. package/dist/private/utils/domHelpers.js +45 -14
  970. package/dist/private/utils/domHelpers.js.map +1 -1
  971. package/dist/private/utils/domHelpers.mjs +43 -13
  972. package/dist/private/utils/domHelpers.mjs.map +1 -1
  973. package/dist/private/utils/isVirtualEvent.cjs +1 -1
  974. package/dist/private/utils/isVirtualEvent.cjs.map +1 -1
  975. package/dist/private/utils/isVirtualEvent.js +1 -1
  976. package/dist/private/utils/isVirtualEvent.js.map +1 -1
  977. package/dist/private/utils/isVirtualEvent.mjs +1 -1
  978. package/dist/private/utils/isVirtualEvent.mjs.map +1 -1
  979. package/dist/private/utils/openLink.cjs +4 -2
  980. package/dist/private/utils/openLink.cjs.map +1 -1
  981. package/dist/private/utils/openLink.js +4 -2
  982. package/dist/private/utils/openLink.js.map +1 -1
  983. package/dist/private/utils/openLink.mjs +4 -2
  984. package/dist/private/utils/openLink.mjs.map +1 -1
  985. package/dist/private/utils/platform.cjs +8 -4
  986. package/dist/private/utils/platform.cjs.map +1 -1
  987. package/dist/private/utils/platform.js +7 -4
  988. package/dist/private/utils/platform.js.map +1 -1
  989. package/dist/private/utils/platform.mjs +7 -4
  990. package/dist/private/utils/platform.mjs.map +1 -1
  991. package/dist/private/utils/scrollIntoView.cjs +3 -3
  992. package/dist/private/utils/scrollIntoView.cjs.map +1 -1
  993. package/dist/private/utils/scrollIntoView.js +4 -4
  994. package/dist/private/utils/scrollIntoView.js.map +1 -1
  995. package/dist/private/utils/scrollIntoView.mjs +4 -4
  996. package/dist/private/utils/scrollIntoView.mjs.map +1 -1
  997. package/dist/private/utils/shadowdom/DOMFunctions.cjs +28 -1
  998. package/dist/private/utils/shadowdom/DOMFunctions.cjs.map +1 -1
  999. package/dist/private/utils/shadowdom/DOMFunctions.js +30 -2
  1000. package/dist/private/utils/shadowdom/DOMFunctions.js.map +1 -1
  1001. package/dist/private/utils/shadowdom/DOMFunctions.mjs +28 -2
  1002. package/dist/private/utils/shadowdom/DOMFunctions.mjs.map +1 -1
  1003. package/dist/private/utils/useDeepMemo.cjs +4 -1
  1004. package/dist/private/utils/useDeepMemo.cjs.map +1 -1
  1005. package/dist/private/utils/useDeepMemo.js +4 -1
  1006. package/dist/private/utils/useDeepMemo.js.map +1 -1
  1007. package/dist/private/utils/useDeepMemo.mjs +4 -1
  1008. package/dist/private/utils/useDeepMemo.mjs.map +1 -1
  1009. package/dist/private/utils/useDrag1D.cjs +2 -0
  1010. package/dist/private/utils/useDrag1D.cjs.map +1 -1
  1011. package/dist/private/utils/useDrag1D.js +2 -0
  1012. package/dist/private/utils/useDrag1D.js.map +1 -1
  1013. package/dist/private/utils/useDrag1D.mjs +2 -0
  1014. package/dist/private/utils/useDrag1D.mjs.map +1 -1
  1015. package/dist/private/utils/useFormReset.cjs +4 -0
  1016. package/dist/private/utils/useFormReset.cjs.map +1 -1
  1017. package/dist/private/utils/useFormReset.js +4 -0
  1018. package/dist/private/utils/useFormReset.js.map +1 -1
  1019. package/dist/private/utils/useFormReset.mjs +4 -0
  1020. package/dist/private/utils/useFormReset.mjs.map +1 -1
  1021. package/dist/private/utils/useId.cjs +23 -4
  1022. package/dist/private/utils/useId.cjs.map +1 -1
  1023. package/dist/private/utils/useId.js +23 -4
  1024. package/dist/private/utils/useId.js.map +1 -1
  1025. package/dist/private/utils/useId.mjs +23 -4
  1026. package/dist/private/utils/useId.mjs.map +1 -1
  1027. package/dist/private/utils/useLoadMoreSentinel.cjs +7 -3
  1028. package/dist/private/utils/useLoadMoreSentinel.cjs.map +1 -1
  1029. package/dist/private/utils/useLoadMoreSentinel.js +7 -3
  1030. package/dist/private/utils/useLoadMoreSentinel.js.map +1 -1
  1031. package/dist/private/utils/useLoadMoreSentinel.mjs +7 -3
  1032. package/dist/private/utils/useLoadMoreSentinel.mjs.map +1 -1
  1033. package/dist/private/utils/useObjectRef.cjs +3 -1
  1034. package/dist/private/utils/useObjectRef.cjs.map +1 -1
  1035. package/dist/private/utils/useObjectRef.js +3 -1
  1036. package/dist/private/utils/useObjectRef.js.map +1 -1
  1037. package/dist/private/utils/useObjectRef.mjs +3 -1
  1038. package/dist/private/utils/useObjectRef.mjs.map +1 -1
  1039. package/dist/private/utils/useSyncRef.cjs +2 -0
  1040. package/dist/private/utils/useSyncRef.cjs.map +1 -1
  1041. package/dist/private/utils/useSyncRef.js +2 -0
  1042. package/dist/private/utils/useSyncRef.js.map +1 -1
  1043. package/dist/private/utils/useSyncRef.mjs +2 -0
  1044. package/dist/private/utils/useSyncRef.mjs.map +1 -1
  1045. package/dist/private/utils/useViewportSize.cjs +3 -3
  1046. package/dist/private/utils/useViewportSize.cjs.map +1 -1
  1047. package/dist/private/utils/useViewportSize.js +4 -4
  1048. package/dist/private/utils/useViewportSize.js.map +1 -1
  1049. package/dist/private/utils/useViewportSize.mjs +4 -4
  1050. package/dist/private/utils/useViewportSize.mjs.map +1 -1
  1051. package/dist/private/virtualizer/ScrollView.cjs +7 -4
  1052. package/dist/private/virtualizer/ScrollView.cjs.map +1 -1
  1053. package/dist/private/virtualizer/ScrollView.js +8 -5
  1054. package/dist/private/virtualizer/ScrollView.js.map +1 -1
  1055. package/dist/private/virtualizer/ScrollView.mjs +8 -5
  1056. package/dist/private/virtualizer/ScrollView.mjs.map +1 -1
  1057. package/dist/private/virtualizer/VirtualizerItem.cjs +3 -2
  1058. package/dist/private/virtualizer/VirtualizerItem.cjs.map +1 -1
  1059. package/dist/private/virtualizer/VirtualizerItem.js +3 -2
  1060. package/dist/private/virtualizer/VirtualizerItem.js.map +1 -1
  1061. package/dist/private/virtualizer/VirtualizerItem.mjs +3 -2
  1062. package/dist/private/virtualizer/VirtualizerItem.mjs.map +1 -1
  1063. package/dist/private/virtualizer/useVirtualizerItem.cjs +35 -2
  1064. package/dist/private/virtualizer/useVirtualizerItem.cjs.map +1 -1
  1065. package/dist/private/virtualizer/useVirtualizerItem.js +36 -3
  1066. package/dist/private/virtualizer/useVirtualizerItem.js.map +1 -1
  1067. package/dist/private/virtualizer/useVirtualizerItem.mjs +36 -3
  1068. package/dist/private/virtualizer/useVirtualizerItem.mjs.map +1 -1
  1069. package/dist/private/visually-hidden/VisuallyHidden.cjs +2 -1
  1070. package/dist/private/visually-hidden/VisuallyHidden.cjs.map +1 -1
  1071. package/dist/private/visually-hidden/VisuallyHidden.js +2 -1
  1072. package/dist/private/visually-hidden/VisuallyHidden.js.map +1 -1
  1073. package/dist/private/visually-hidden/VisuallyHidden.mjs +2 -1
  1074. package/dist/private/visually-hidden/VisuallyHidden.mjs.map +1 -1
  1075. package/dist/types/exports/index.d.ts +9 -0
  1076. package/dist/types/exports/private/utils/domHelpers.d.ts +1 -1
  1077. package/dist/types/exports/private/utils/platform.d.ts +1 -1
  1078. package/dist/types/exports/private/utils/shadowdom/DOMFunctions.d.ts +1 -1
  1079. package/dist/types/exports/useContextMenu.d.ts +2 -0
  1080. package/dist/types/exports/usePreviewTrigger.d.ts +2 -0
  1081. package/dist/types/exports/useTokenField.d.ts +4 -0
  1082. package/dist/types/src/button/useToggleButtonGroup.d.ts +8 -0
  1083. package/dist/types/src/combobox/useComboBox.d.ts +7 -1
  1084. package/dist/types/src/dialog/useDialog.d.ts +2 -0
  1085. package/dist/types/src/grid/useGrid.d.ts +7 -0
  1086. package/dist/types/src/grid/useGridCell.d.ts +8 -1
  1087. package/dist/types/src/grid/utils.d.ts +1 -0
  1088. package/dist/types/src/gridlist/useGridListItem.d.ts +13 -0
  1089. package/dist/types/src/interactions/createKeyboardShortcutHandler.d.ts +56 -0
  1090. package/dist/types/src/interactions/useContextMenu.d.ts +21 -0
  1091. package/dist/types/src/interactions/useKeyboard.d.ts +7 -0
  1092. package/dist/types/src/interactions/useLongPress.d.ts +2 -0
  1093. package/dist/types/src/overlays/usePopover.d.ts +2 -1
  1094. package/dist/types/src/table/useTableCell.d.ts +12 -0
  1095. package/dist/types/src/table/useTableColumnHeader.d.ts +12 -0
  1096. package/dist/types/src/table/useTableColumnResize.d.ts +5 -0
  1097. package/dist/types/src/tokenfield/useToken.d.ts +14 -0
  1098. package/dist/types/src/tokenfield/useTokenField.d.ts +57 -0
  1099. package/dist/types/src/tooltip/usePreviewTrigger.d.ts +27 -0
  1100. package/dist/types/src/tooltip/useSafeArea.d.ts +26 -0
  1101. package/dist/types/src/utils/domHelpers.d.ts +20 -5
  1102. package/dist/types/src/utils/platform.d.ts +1 -0
  1103. package/dist/types/src/utils/shadowdom/DOMFunctions.d.ts +11 -0
  1104. package/dist/types/src/utils/useLoadMoreSentinel.d.ts +7 -0
  1105. package/dist/types/src/virtualizer/VirtualizerItem.d.ts +1 -0
  1106. package/dist/types/src/virtualizer/useVirtualizerItem.d.ts +1 -0
  1107. package/i18n/ar-AE.js +1 -1
  1108. package/i18n/ar-AE.mjs +1 -1
  1109. package/i18n/bg-BG.js +1 -1
  1110. package/i18n/bg-BG.mjs +1 -1
  1111. package/i18n/cs-CZ.js +1 -1
  1112. package/i18n/cs-CZ.mjs +1 -1
  1113. package/i18n/da-DK.js +1 -1
  1114. package/i18n/da-DK.mjs +1 -1
  1115. package/i18n/de-DE.js +1 -1
  1116. package/i18n/de-DE.mjs +1 -1
  1117. package/i18n/el-GR.js +1 -1
  1118. package/i18n/el-GR.mjs +1 -1
  1119. package/i18n/en-US.js +1 -1
  1120. package/i18n/en-US.mjs +1 -1
  1121. package/i18n/es-ES.js +1 -1
  1122. package/i18n/es-ES.mjs +1 -1
  1123. package/i18n/et-EE.js +1 -1
  1124. package/i18n/et-EE.mjs +1 -1
  1125. package/i18n/fi-FI.js +1 -1
  1126. package/i18n/fi-FI.mjs +1 -1
  1127. package/i18n/fr-FR.js +1 -1
  1128. package/i18n/fr-FR.mjs +1 -1
  1129. package/i18n/he-IL.js +1 -1
  1130. package/i18n/he-IL.mjs +1 -1
  1131. package/i18n/hr-HR.js +1 -1
  1132. package/i18n/hr-HR.mjs +1 -1
  1133. package/i18n/hu-HU.js +1 -1
  1134. package/i18n/hu-HU.mjs +1 -1
  1135. package/i18n/it-IT.js +1 -1
  1136. package/i18n/it-IT.mjs +1 -1
  1137. package/i18n/ja-JP.js +1 -1
  1138. package/i18n/ja-JP.mjs +1 -1
  1139. package/i18n/ko-KR.js +1 -1
  1140. package/i18n/ko-KR.mjs +1 -1
  1141. package/i18n/lt-LT.js +1 -1
  1142. package/i18n/lt-LT.mjs +1 -1
  1143. package/i18n/lv-LV.js +1 -1
  1144. package/i18n/lv-LV.mjs +1 -1
  1145. package/i18n/nb-NO.js +1 -1
  1146. package/i18n/nb-NO.mjs +1 -1
  1147. package/i18n/nl-NL.js +1 -1
  1148. package/i18n/nl-NL.mjs +1 -1
  1149. package/i18n/pl-PL.js +1 -1
  1150. package/i18n/pl-PL.mjs +1 -1
  1151. package/i18n/pt-BR.js +1 -1
  1152. package/i18n/pt-BR.mjs +1 -1
  1153. package/i18n/pt-PT.js +1 -1
  1154. package/i18n/pt-PT.mjs +1 -1
  1155. package/i18n/ro-RO.js +1 -1
  1156. package/i18n/ro-RO.mjs +1 -1
  1157. package/i18n/ru-RU.js +1 -1
  1158. package/i18n/ru-RU.mjs +1 -1
  1159. package/i18n/sk-SK.js +1 -1
  1160. package/i18n/sk-SK.mjs +1 -1
  1161. package/i18n/sl-SI.js +1 -1
  1162. package/i18n/sl-SI.mjs +1 -1
  1163. package/i18n/sr-SP.js +1 -1
  1164. package/i18n/sr-SP.mjs +1 -1
  1165. package/i18n/sv-SE.js +1 -1
  1166. package/i18n/sv-SE.mjs +1 -1
  1167. package/i18n/tr-TR.js +1 -1
  1168. package/i18n/tr-TR.mjs +1 -1
  1169. package/i18n/uk-UA.js +1 -1
  1170. package/i18n/uk-UA.mjs +1 -1
  1171. package/i18n/zh-CN.js +1 -1
  1172. package/i18n/zh-CN.mjs +1 -1
  1173. package/i18n/zh-TW.js +1 -1
  1174. package/i18n/zh-TW.mjs +1 -1
  1175. package/package.json +6 -6
  1176. package/useContextMenu/package.json +5 -0
  1177. package/usePreviewTrigger/package.json +5 -0
  1178. package/useTokenField/package.json +5 -0
@@ -49,28 +49,19 @@ function $857b4ba10afc7ba2$export$9064ff4e44b3729a(props, state, inputRef) {
49
49
  (0, $bbab3903416f8d01$exports.useFormReset)(inputRef, state.defaultValue, state.setValue);
50
50
  let currentPosition = (0, $bXtV7$react.useRef)(null);
51
51
  let { keyboardProps: keyboardProps } = (0, $6d2f10bb8b359da5$exports.useKeyboard)({
52
- onKeyDown (e) {
53
- // these are the cases that useMove doesn't handle
54
- if (!/^(PageUp|PageDown)$/.test(e.key)) {
55
- e.continuePropagation();
56
- return;
57
- }
58
- // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us
59
- e.preventDefault();
60
- // remember to set this and unset it so that onChangeEnd is fired
61
- state.setDragging(true);
62
- switch(e.key){
63
- case 'PageUp':
64
- e.preventDefault();
65
- state.increment(state.pageStep);
66
- break;
67
- case 'PageDown':
68
- e.preventDefault();
69
- state.decrement(state.pageStep);
70
- break;
52
+ shortcuts: {
53
+ PageUp: ()=>{
54
+ state.setDragging(true);
55
+ state.increment(state.pageStep);
56
+ state.setDragging(false);
57
+ },
58
+ PageDown: ()=>{
59
+ state.setDragging(true);
60
+ state.decrement(state.pageStep);
61
+ state.setDragging(false);
71
62
  }
72
- state.setDragging(false);
73
- }
63
+ },
64
+ allowRepeats: true
74
65
  });
75
66
  let moveHandler = {
76
67
  onMoveStart () {
@@ -164,7 +155,8 @@ function $857b4ba10afc7ba2$export$9064ff4e44b3729a(props, state, inputRef) {
164
155
  }
165
156
  }
166
157
  };
167
- let trackInteractions = isDisabled ? {} : (0, $89b39774f3b79dbb$exports.mergeProps)({
158
+ let trackInteractions = isDisabled ? {} : (0, $89b39774f3b79dbb$exports.mergeProps)(// oxlint-disable-next-line react/react-compiler
159
+ {
168
160
  ...typeof PointerEvent !== 'undefined' ? {
169
161
  onPointerDown: (e)=>{
170
162
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -180,7 +172,8 @@ function $857b4ba10afc7ba2$export$9064ff4e44b3729a(props, state, inputRef) {
180
172
  }
181
173
  }
182
174
  }, movePropsContainer);
183
- let thumbInteractions = isDisabled ? {} : (0, $89b39774f3b79dbb$exports.mergeProps)({
175
+ let thumbInteractions = isDisabled ? {} : (0, $89b39774f3b79dbb$exports.mergeProps)(// oxlint-disable-next-line react/react-compiler
176
+ {
184
177
  ...typeof PointerEvent !== 'undefined' ? {
185
178
  onPointerDown: (e)=>{
186
179
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n onKeyDown(e) {\n // these are the cases that useMove doesn't handle\n if (!/^(PageUp|PageDown)$/.test(e.key)) {\n e.continuePropagation();\n return;\n }\n // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us\n e.preventDefault();\n // remember to set this and unset it so that onChangeEnd is fired\n state.setDragging(true);\n switch (e.key) {\n case 'PageUp':\n e.preventDefault();\n state.increment(state.pageStep);\n break;\n case 'PageDown':\n e.preventDefault();\n state.decrement(state.pageStep);\n break;\n }\n state.setDragging(false);\n }\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.cjs.map"}
1
+ {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n shortcuts: {\n PageUp: () => {\n state.setDragging(true);\n state.increment(state.pageStep);\n state.setDragging(false);\n },\n PageDown: () => {\n state.setDragging(true);\n state.decrement(state.pageStep);\n state.setDragging(false);\n }\n },\n allowRepeats: true\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.cjs.map"}
@@ -43,28 +43,19 @@ function $36af1861bf27ba70$export$9064ff4e44b3729a(props, state, inputRef) {
43
43
  (0, $5dfd40f1661a7fc3$export$5add1d006293d136)(inputRef, state.defaultValue, state.setValue);
44
44
  let currentPosition = (0, $bkIST$useRef)(null);
45
45
  let { keyboardProps: keyboardProps } = (0, $bf74df7506f65576$export$8f71654801c2f7cd)({
46
- onKeyDown (e) {
47
- // these are the cases that useMove doesn't handle
48
- if (!/^(PageUp|PageDown)$/.test(e.key)) {
49
- e.continuePropagation();
50
- return;
51
- }
52
- // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us
53
- e.preventDefault();
54
- // remember to set this and unset it so that onChangeEnd is fired
55
- state.setDragging(true);
56
- switch(e.key){
57
- case 'PageUp':
58
- e.preventDefault();
59
- state.increment(state.pageStep);
60
- break;
61
- case 'PageDown':
62
- e.preventDefault();
63
- state.decrement(state.pageStep);
64
- break;
46
+ shortcuts: {
47
+ PageUp: ()=>{
48
+ state.setDragging(true);
49
+ state.increment(state.pageStep);
50
+ state.setDragging(false);
51
+ },
52
+ PageDown: ()=>{
53
+ state.setDragging(true);
54
+ state.decrement(state.pageStep);
55
+ state.setDragging(false);
65
56
  }
66
- state.setDragging(false);
67
- }
57
+ },
58
+ allowRepeats: true
68
59
  });
69
60
  let moveHandler = {
70
61
  onMoveStart () {
@@ -162,7 +153,8 @@ function $36af1861bf27ba70$export$9064ff4e44b3729a(props, state, inputRef) {
162
153
  }
163
154
  }
164
155
  };
165
- let trackInteractions = isDisabled ? {} : (0, $64c36edd757dfa16$export$9d1611c77c2fe928)({
156
+ let trackInteractions = isDisabled ? {} : (0, $64c36edd757dfa16$export$9d1611c77c2fe928)(// oxlint-disable-next-line react/react-compiler
157
+ {
166
158
  ...typeof PointerEvent !== 'undefined' ? {
167
159
  onPointerDown: (e)=>{
168
160
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -178,7 +170,8 @@ function $36af1861bf27ba70$export$9064ff4e44b3729a(props, state, inputRef) {
178
170
  }
179
171
  }
180
172
  }, movePropsContainer);
181
- let thumbInteractions = isDisabled ? {} : (0, $64c36edd757dfa16$export$9d1611c77c2fe928)({
173
+ let thumbInteractions = isDisabled ? {} : (0, $64c36edd757dfa16$export$9d1611c77c2fe928)(// oxlint-disable-next-line react/react-compiler
174
+ {
182
175
  ...typeof PointerEvent !== 'undefined' ? {
183
176
  onPointerDown: (e)=>{
184
177
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n onKeyDown(e) {\n // these are the cases that useMove doesn't handle\n if (!/^(PageUp|PageDown)$/.test(e.key)) {\n e.continuePropagation();\n return;\n }\n // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us\n e.preventDefault();\n // remember to set this and unset it so that onChangeEnd is fired\n state.setDragging(true);\n switch (e.key) {\n case 'PageUp':\n e.preventDefault();\n state.increment(state.pageStep);\n break;\n case 'PageDown':\n e.preventDefault();\n state.decrement(state.pageStep);\n break;\n }\n state.setDragging(false);\n }\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.js.map"}
1
+ {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n shortcuts: {\n PageUp: () => {\n state.setDragging(true);\n state.increment(state.pageStep);\n state.setDragging(false);\n },\n PageDown: () => {\n state.setDragging(true);\n state.decrement(state.pageStep);\n state.setDragging(false);\n }\n },\n allowRepeats: true\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.js.map"}
@@ -43,28 +43,19 @@ function $3c29826b70d739cf$export$9064ff4e44b3729a(props, state, inputRef) {
43
43
  (0, $3274bf1495747a7b$export$5add1d006293d136)(inputRef, state.defaultValue, state.setValue);
44
44
  let currentPosition = (0, $8T0lv$useRef)(null);
45
45
  let { keyboardProps: keyboardProps } = (0, $8296dad1a4c5e0dc$export$8f71654801c2f7cd)({
46
- onKeyDown (e) {
47
- // these are the cases that useMove doesn't handle
48
- if (!/^(PageUp|PageDown)$/.test(e.key)) {
49
- e.continuePropagation();
50
- return;
51
- }
52
- // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us
53
- e.preventDefault();
54
- // remember to set this and unset it so that onChangeEnd is fired
55
- state.setDragging(true);
56
- switch(e.key){
57
- case 'PageUp':
58
- e.preventDefault();
59
- state.increment(state.pageStep);
60
- break;
61
- case 'PageDown':
62
- e.preventDefault();
63
- state.decrement(state.pageStep);
64
- break;
46
+ shortcuts: {
47
+ PageUp: ()=>{
48
+ state.setDragging(true);
49
+ state.increment(state.pageStep);
50
+ state.setDragging(false);
51
+ },
52
+ PageDown: ()=>{
53
+ state.setDragging(true);
54
+ state.decrement(state.pageStep);
55
+ state.setDragging(false);
65
56
  }
66
- state.setDragging(false);
67
- }
57
+ },
58
+ allowRepeats: true
68
59
  });
69
60
  let moveHandler = {
70
61
  onMoveStart () {
@@ -158,7 +149,8 @@ function $3c29826b70d739cf$export$9064ff4e44b3729a(props, state, inputRef) {
158
149
  }
159
150
  }
160
151
  };
161
- let trackInteractions = isDisabled ? {} : (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)({
152
+ let trackInteractions = isDisabled ? {} : (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(// oxlint-disable-next-line react/react-compiler
153
+ {
162
154
  ...typeof PointerEvent !== 'undefined' ? {
163
155
  onPointerDown: (e)=>{
164
156
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -174,7 +166,8 @@ function $3c29826b70d739cf$export$9064ff4e44b3729a(props, state, inputRef) {
174
166
  }
175
167
  }
176
168
  }, movePropsContainer);
177
- let thumbInteractions = isDisabled ? {} : (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)({
169
+ let thumbInteractions = isDisabled ? {} : (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(// oxlint-disable-next-line react/react-compiler
170
+ {
178
171
  ...typeof PointerEvent !== 'undefined' ? {
179
172
  onPointerDown: (e)=>{
180
173
  if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) return;
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n onKeyDown(e) {\n // these are the cases that useMove doesn't handle\n if (!/^(PageUp|PageDown)$/.test(e.key)) {\n e.continuePropagation();\n return;\n }\n // same handling as useMove, don't need to stop propagation, useKeyboard will do that for us\n e.preventDefault();\n // remember to set this and unset it so that onChangeEnd is fired\n state.setDragging(true);\n switch (e.key) {\n case 'PageUp':\n e.preventDefault();\n state.increment(state.pageStep);\n break;\n case 'PageDown':\n e.preventDefault();\n state.decrement(state.pageStep);\n break;\n }\n state.setDragging(false);\n }\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.mjs.map"}
1
+ {"mappings":"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","sources":["packages/react-aria/src/color/useColorWheel.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\nimport {\n AriaLabelingProps,\n DOMAttributes,\n DOMProps,\n InputDOMProps,\n RefObject\n} from '@react-types/shared';\nimport {ColorWheelProps, ColorWheelState} from 'react-stately/useColorWheelState';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {mergeProps} from '../utils/mergeProps';\nimport React, {ChangeEvent, InputHTMLAttributes, useCallback, useRef} from 'react';\nimport {useFormReset} from '../utils/useFormReset';\nimport {useGlobalListeners} from '../utils/useGlobalListeners';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLabels} from '../utils/useLabels';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useMove} from '../interactions/useMove';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface AriaColorWheelProps\n extends ColorWheelProps, InputDOMProps, DOMProps, AriaLabelingProps {}\n\nexport interface AriaColorWheelOptions extends AriaColorWheelProps {\n /** The outer radius of the color wheel. */\n outerRadius: number;\n /** The inner radius of the color wheel. */\n innerRadius: number;\n}\n\nexport interface ColorWheelAria {\n /** Props for the track element. */\n trackProps: DOMAttributes;\n /** Props for the thumb element. */\n thumbProps: DOMAttributes;\n /** Props for the visually hidden range input element. */\n inputProps: InputHTMLAttributes<HTMLInputElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a color wheel component.\n * Color wheels allow users to adjust the hue of an HSL or HSB color value on a circular track.\n */\nexport function useColorWheel(\n props: AriaColorWheelOptions,\n state: ColorWheelState,\n inputRef: RefObject<HTMLInputElement | null>\n): ColorWheelAria {\n let {isDisabled, innerRadius, outerRadius, 'aria-label': ariaLabel, name, form} = props;\n\n let {addGlobalListener, removeGlobalListener} = useGlobalListeners();\n\n let thumbRadius = (innerRadius + outerRadius) / 2;\n\n let focusInput = useCallback(() => {\n if (inputRef.current) {\n focusWithoutScrolling(inputRef.current);\n }\n }, [inputRef]);\n\n useFormReset(inputRef, state.defaultValue, state.setValue);\n\n let currentPosition = useRef<{x: number; y: number} | null>(null);\n\n let {keyboardProps} = useKeyboard({\n shortcuts: {\n PageUp: () => {\n state.setDragging(true);\n state.increment(state.pageStep);\n state.setDragging(false);\n },\n PageDown: () => {\n state.setDragging(true);\n state.decrement(state.pageStep);\n state.setDragging(false);\n }\n },\n allowRepeats: true\n });\n\n let moveHandler = {\n onMoveStart() {\n currentPosition.current = null;\n state.setDragging(true);\n },\n onMove({deltaX, deltaY, pointerType, shiftKey}) {\n if (currentPosition.current == null) {\n currentPosition.current = state.getThumbPosition(thumbRadius);\n }\n currentPosition.current.x += deltaX;\n currentPosition.current.y += deltaY;\n if (pointerType === 'keyboard') {\n if (deltaX > 0 || deltaY < 0) {\n state.increment(shiftKey ? state.pageStep : state.step);\n } else if (deltaX < 0 || deltaY > 0) {\n state.decrement(shiftKey ? state.pageStep : state.step);\n }\n } else {\n state.setHueFromPoint(currentPosition.current.x, currentPosition.current.y, thumbRadius);\n }\n },\n onMoveEnd() {\n isOnTrack.current = false;\n state.setDragging(false);\n focusInput();\n }\n };\n let {moveProps: movePropsThumb} = useMove(moveHandler);\n\n let currentPointer = useRef<number | null | undefined>(undefined);\n let isOnTrack = useRef<boolean>(false);\n let {moveProps: movePropsContainer} = useMove({\n onMoveStart() {\n if (isOnTrack.current) {\n moveHandler.onMoveStart();\n }\n },\n onMove(e) {\n if (isOnTrack.current) {\n moveHandler.onMove(e);\n }\n },\n onMoveEnd() {\n if (isOnTrack.current) {\n moveHandler.onMoveEnd();\n }\n }\n });\n\n let onThumbDown = (id: number | null | undefined) => {\n if (!state.isDragging) {\n currentPointer.current = id;\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onThumbUp, false);\n addGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onThumbUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (id === currentPointer.current) {\n focusInput();\n state.setDragging(false);\n currentPointer.current = undefined;\n isOnTrack.current = false;\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onThumbUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onThumbUp, false);\n removeGlobalListener(window, 'touchend', onThumbUp, false);\n }\n }\n };\n\n let onTrackDown = (\n track: Element,\n id: number | null | undefined,\n pageX: number,\n pageY: number\n ) => {\n let rect = track.getBoundingClientRect();\n let x = pageX - rect.x - rect.width / 2;\n let y = pageY - rect.y - rect.height / 2;\n let radius = Math.sqrt(x * x + y * y);\n if (\n innerRadius < radius &&\n radius < outerRadius &&\n !state.isDragging &&\n currentPointer.current === undefined\n ) {\n isOnTrack.current = true;\n currentPointer.current = id;\n state.setHueFromPoint(x, y, radius);\n\n focusInput();\n state.setDragging(true);\n\n if (typeof PointerEvent !== 'undefined') {\n addGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n addGlobalListener(window, 'mouseup', onTrackUp, false);\n addGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let onTrackUp = e => {\n let id = e.pointerId ?? e.changedTouches?.[0].identifier;\n if (isOnTrack.current && id === currentPointer.current) {\n isOnTrack.current = false;\n currentPointer.current = undefined;\n state.setDragging(false);\n focusInput();\n\n if (typeof PointerEvent !== 'undefined') {\n removeGlobalListener(window, 'pointerup', onTrackUp, false);\n } else {\n removeGlobalListener(window, 'mouseup', onTrackUp, false);\n removeGlobalListener(window, 'touchend', onTrackUp, false);\n }\n }\n };\n\n let trackInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onTrackDown(e.currentTarget, undefined, e.clientX, e.clientY);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onTrackDown(\n e.currentTarget,\n e.changedTouches[0].identifier,\n e.changedTouches[0].clientX,\n e.changedTouches[0].clientY\n );\n }\n })\n },\n movePropsContainer\n );\n\n let thumbInteractions = isDisabled\n ? {}\n : mergeProps(\n // oxlint-disable-next-line react/react-compiler\n {\n ...(typeof PointerEvent !== 'undefined'\n ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (\n e.pointerType === 'mouse' &&\n (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)\n ) {\n return;\n }\n onThumbDown(e.pointerId);\n }\n }\n : {\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n })\n },\n keyboardProps,\n movePropsThumb\n );\n let {x, y} = state.getThumbPosition(thumbRadius);\n\n // Provide a default aria-label if none is given\n let {locale} = useLocale();\n if (ariaLabel == null && props['aria-labelledby'] == null) {\n ariaLabel = state.value.getChannelName('hue', locale);\n }\n\n let inputLabellingProps = useLabels({\n ...props,\n 'aria-label': ariaLabel\n });\n\n let {minValue, maxValue, step} = state.value.getChannelRange('hue');\n\n let forcedColorAdjustNoneStyle = {\n forcedColorAdjust: 'none'\n };\n\n let {visuallyHiddenProps} = useVisuallyHidden({\n style: {\n opacity: '0.0001',\n width: '100%',\n height: '100%',\n pointerEvents: 'none'\n }\n });\n\n return {\n trackProps: {\n ...trackInteractions,\n style: {\n position: 'relative',\n touchAction: 'none',\n width: outerRadius * 2,\n height: outerRadius * 2,\n background: `\n conic-gradient(\n from 90deg,\n hsl(0, 100%, 50%),\n hsl(30, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(90, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(150, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(210, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(270, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(330, 100%, 50%),\n hsl(360, 100%, 50%)\n )\n `,\n clipPath: `path(evenodd, \"${circlePath(outerRadius, outerRadius, outerRadius)} ${circlePath(outerRadius, outerRadius, innerRadius)}\")`,\n ...forcedColorAdjustNoneStyle\n }\n },\n thumbProps: {\n ...thumbInteractions,\n style: {\n position: 'absolute',\n left: (outerRadius + x).toFixed(3) + 'px',\n top: (outerRadius + y).toFixed(3) + 'px',\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(inputLabellingProps, {\n type: 'range',\n min: String(minValue),\n max: String(maxValue),\n step: String(step),\n 'aria-valuetext': `${state.value.formatChannelValue('hue', locale)}, ${state.value.getHueName(locale)}`,\n disabled: isDisabled,\n value: `${state.value.getChannelValue('hue')}`,\n name,\n form,\n onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(getEventTarget(e).value));\n },\n style: visuallyHiddenProps.style,\n 'aria-errormessage': props['aria-errormessage'],\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n// Creates an SVG path string for a circle.\nfunction circlePath(cx: number, cy: number, r: number) {\n return `M ${cx}, ${cy} m ${-r}, 0 a ${r}, ${r}, 0, 1, 0, ${r * 2}, 0 a ${r}, ${r}, 0, 1, 0 ${-r * 2}, 0`;\n}\n"],"names":[],"version":3,"file":"useColorWheel.mjs.map"}