@react-aria/color 3.0.0-nightly.4567 → 3.0.0-nightly.4578

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 (221) hide show
  1. package/dist/ar-AE.main.js +3 -1
  2. package/dist/ar-AE.main.js.map +1 -1
  3. package/dist/ar-AE.mjs +3 -1
  4. package/dist/ar-AE.module.js +3 -1
  5. package/dist/ar-AE.module.js.map +1 -1
  6. package/dist/bg-BG.main.js +3 -1
  7. package/dist/bg-BG.main.js.map +1 -1
  8. package/dist/bg-BG.mjs +3 -1
  9. package/dist/bg-BG.module.js +3 -1
  10. package/dist/bg-BG.module.js.map +1 -1
  11. package/dist/cs-CZ.main.js +3 -1
  12. package/dist/cs-CZ.main.js.map +1 -1
  13. package/dist/cs-CZ.mjs +3 -1
  14. package/dist/cs-CZ.module.js +3 -1
  15. package/dist/cs-CZ.module.js.map +1 -1
  16. package/dist/da-DK.main.js +3 -1
  17. package/dist/da-DK.main.js.map +1 -1
  18. package/dist/da-DK.mjs +3 -1
  19. package/dist/da-DK.module.js +3 -1
  20. package/dist/da-DK.module.js.map +1 -1
  21. package/dist/de-DE.main.js +3 -1
  22. package/dist/de-DE.main.js.map +1 -1
  23. package/dist/de-DE.mjs +3 -1
  24. package/dist/de-DE.module.js +3 -1
  25. package/dist/de-DE.module.js.map +1 -1
  26. package/dist/el-GR.main.js +3 -1
  27. package/dist/el-GR.main.js.map +1 -1
  28. package/dist/el-GR.mjs +3 -1
  29. package/dist/el-GR.module.js +3 -1
  30. package/dist/el-GR.module.js.map +1 -1
  31. package/dist/en-US.main.js +3 -1
  32. package/dist/en-US.main.js.map +1 -1
  33. package/dist/en-US.mjs +3 -1
  34. package/dist/en-US.module.js +3 -1
  35. package/dist/en-US.module.js.map +1 -1
  36. package/dist/es-ES.main.js +3 -1
  37. package/dist/es-ES.main.js.map +1 -1
  38. package/dist/es-ES.mjs +3 -1
  39. package/dist/es-ES.module.js +3 -1
  40. package/dist/es-ES.module.js.map +1 -1
  41. package/dist/et-EE.main.js +3 -1
  42. package/dist/et-EE.main.js.map +1 -1
  43. package/dist/et-EE.mjs +3 -1
  44. package/dist/et-EE.module.js +3 -1
  45. package/dist/et-EE.module.js.map +1 -1
  46. package/dist/fi-FI.main.js +3 -1
  47. package/dist/fi-FI.main.js.map +1 -1
  48. package/dist/fi-FI.mjs +3 -1
  49. package/dist/fi-FI.module.js +3 -1
  50. package/dist/fi-FI.module.js.map +1 -1
  51. package/dist/fr-FR.main.js +3 -1
  52. package/dist/fr-FR.main.js.map +1 -1
  53. package/dist/fr-FR.mjs +3 -1
  54. package/dist/fr-FR.module.js +3 -1
  55. package/dist/fr-FR.module.js.map +1 -1
  56. package/dist/he-IL.main.js +3 -1
  57. package/dist/he-IL.main.js.map +1 -1
  58. package/dist/he-IL.mjs +3 -1
  59. package/dist/he-IL.module.js +3 -1
  60. package/dist/he-IL.module.js.map +1 -1
  61. package/dist/hr-HR.main.js +3 -1
  62. package/dist/hr-HR.main.js.map +1 -1
  63. package/dist/hr-HR.mjs +3 -1
  64. package/dist/hr-HR.module.js +3 -1
  65. package/dist/hr-HR.module.js.map +1 -1
  66. package/dist/hu-HU.main.js +3 -1
  67. package/dist/hu-HU.main.js.map +1 -1
  68. package/dist/hu-HU.mjs +3 -1
  69. package/dist/hu-HU.module.js +3 -1
  70. package/dist/hu-HU.module.js.map +1 -1
  71. package/dist/import.mjs +5 -1
  72. package/dist/it-IT.main.js +3 -1
  73. package/dist/it-IT.main.js.map +1 -1
  74. package/dist/it-IT.mjs +3 -1
  75. package/dist/it-IT.module.js +3 -1
  76. package/dist/it-IT.module.js.map +1 -1
  77. package/dist/ja-JP.main.js +3 -1
  78. package/dist/ja-JP.main.js.map +1 -1
  79. package/dist/ja-JP.mjs +3 -1
  80. package/dist/ja-JP.module.js +3 -1
  81. package/dist/ja-JP.module.js.map +1 -1
  82. package/dist/ko-KR.main.js +3 -1
  83. package/dist/ko-KR.main.js.map +1 -1
  84. package/dist/ko-KR.mjs +3 -1
  85. package/dist/ko-KR.module.js +3 -1
  86. package/dist/ko-KR.module.js.map +1 -1
  87. package/dist/lt-LT.main.js +3 -1
  88. package/dist/lt-LT.main.js.map +1 -1
  89. package/dist/lt-LT.mjs +3 -1
  90. package/dist/lt-LT.module.js +3 -1
  91. package/dist/lt-LT.module.js.map +1 -1
  92. package/dist/lv-LV.main.js +3 -1
  93. package/dist/lv-LV.main.js.map +1 -1
  94. package/dist/lv-LV.mjs +3 -1
  95. package/dist/lv-LV.module.js +3 -1
  96. package/dist/lv-LV.module.js.map +1 -1
  97. package/dist/main.js +6 -0
  98. package/dist/main.js.map +1 -1
  99. package/dist/module.js +5 -1
  100. package/dist/module.js.map +1 -1
  101. package/dist/nb-NO.main.js +3 -1
  102. package/dist/nb-NO.main.js.map +1 -1
  103. package/dist/nb-NO.mjs +3 -1
  104. package/dist/nb-NO.module.js +3 -1
  105. package/dist/nb-NO.module.js.map +1 -1
  106. package/dist/nl-NL.main.js +3 -1
  107. package/dist/nl-NL.main.js.map +1 -1
  108. package/dist/nl-NL.mjs +3 -1
  109. package/dist/nl-NL.module.js +3 -1
  110. package/dist/nl-NL.module.js.map +1 -1
  111. package/dist/pl-PL.main.js +3 -1
  112. package/dist/pl-PL.main.js.map +1 -1
  113. package/dist/pl-PL.mjs +3 -1
  114. package/dist/pl-PL.module.js +3 -1
  115. package/dist/pl-PL.module.js.map +1 -1
  116. package/dist/pt-BR.main.js +3 -1
  117. package/dist/pt-BR.main.js.map +1 -1
  118. package/dist/pt-BR.mjs +3 -1
  119. package/dist/pt-BR.module.js +3 -1
  120. package/dist/pt-BR.module.js.map +1 -1
  121. package/dist/pt-PT.main.js +3 -1
  122. package/dist/pt-PT.main.js.map +1 -1
  123. package/dist/pt-PT.mjs +3 -1
  124. package/dist/pt-PT.module.js +3 -1
  125. package/dist/pt-PT.module.js.map +1 -1
  126. package/dist/ro-RO.main.js +3 -1
  127. package/dist/ro-RO.main.js.map +1 -1
  128. package/dist/ro-RO.mjs +3 -1
  129. package/dist/ro-RO.module.js +3 -1
  130. package/dist/ro-RO.module.js.map +1 -1
  131. package/dist/ru-RU.main.js +3 -1
  132. package/dist/ru-RU.main.js.map +1 -1
  133. package/dist/ru-RU.mjs +3 -1
  134. package/dist/ru-RU.module.js +3 -1
  135. package/dist/ru-RU.module.js.map +1 -1
  136. package/dist/sk-SK.main.js +3 -1
  137. package/dist/sk-SK.main.js.map +1 -1
  138. package/dist/sk-SK.mjs +3 -1
  139. package/dist/sk-SK.module.js +3 -1
  140. package/dist/sk-SK.module.js.map +1 -1
  141. package/dist/sl-SI.main.js +3 -1
  142. package/dist/sl-SI.main.js.map +1 -1
  143. package/dist/sl-SI.mjs +3 -1
  144. package/dist/sl-SI.module.js +3 -1
  145. package/dist/sl-SI.module.js.map +1 -1
  146. package/dist/sr-SP.main.js +3 -1
  147. package/dist/sr-SP.main.js.map +1 -1
  148. package/dist/sr-SP.mjs +3 -1
  149. package/dist/sr-SP.module.js +3 -1
  150. package/dist/sr-SP.module.js.map +1 -1
  151. package/dist/sv-SE.main.js +3 -1
  152. package/dist/sv-SE.main.js.map +1 -1
  153. package/dist/sv-SE.mjs +3 -1
  154. package/dist/sv-SE.module.js +3 -1
  155. package/dist/sv-SE.module.js.map +1 -1
  156. package/dist/tr-TR.main.js +3 -1
  157. package/dist/tr-TR.main.js.map +1 -1
  158. package/dist/tr-TR.mjs +3 -1
  159. package/dist/tr-TR.module.js +3 -1
  160. package/dist/tr-TR.module.js.map +1 -1
  161. package/dist/types.d.ts +41 -7
  162. package/dist/types.d.ts.map +1 -1
  163. package/dist/uk-UA.main.js +3 -1
  164. package/dist/uk-UA.main.js.map +1 -1
  165. package/dist/uk-UA.mjs +3 -1
  166. package/dist/uk-UA.module.js +3 -1
  167. package/dist/uk-UA.module.js.map +1 -1
  168. package/dist/useColorArea.main.js +7 -7
  169. package/dist/useColorArea.main.js.map +1 -1
  170. package/dist/useColorArea.mjs +7 -7
  171. package/dist/useColorArea.module.js +7 -7
  172. package/dist/useColorArea.module.js.map +1 -1
  173. package/dist/useColorAreaGradient.main.js +65 -171
  174. package/dist/useColorAreaGradient.main.js.map +1 -1
  175. package/dist/useColorAreaGradient.mjs +65 -171
  176. package/dist/useColorAreaGradient.module.js +65 -171
  177. package/dist/useColorAreaGradient.module.js.map +1 -1
  178. package/dist/useColorChannelField.main.js +36 -0
  179. package/dist/useColorChannelField.main.js.map +1 -0
  180. package/dist/useColorChannelField.mjs +31 -0
  181. package/dist/useColorChannelField.module.js +31 -0
  182. package/dist/useColorChannelField.module.js.map +1 -0
  183. package/dist/useColorField.main.js +3 -2
  184. package/dist/useColorField.main.js.map +1 -1
  185. package/dist/useColorField.mjs +3 -2
  186. package/dist/useColorField.module.js +3 -2
  187. package/dist/useColorField.module.js.map +1 -1
  188. package/dist/useColorSlider.main.js +29 -2
  189. package/dist/useColorSlider.main.js.map +1 -1
  190. package/dist/useColorSlider.mjs +29 -2
  191. package/dist/useColorSlider.module.js +29 -2
  192. package/dist/useColorSlider.module.js.map +1 -1
  193. package/dist/useColorSwatch.main.js +67 -0
  194. package/dist/useColorSwatch.main.js.map +1 -0
  195. package/dist/useColorSwatch.mjs +62 -0
  196. package/dist/useColorSwatch.module.js +62 -0
  197. package/dist/useColorSwatch.module.js.map +1 -0
  198. package/dist/useColorWheel.main.js +18 -4
  199. package/dist/useColorWheel.main.js.map +1 -1
  200. package/dist/useColorWheel.mjs +18 -4
  201. package/dist/useColorWheel.module.js +18 -4
  202. package/dist/useColorWheel.module.js.map +1 -1
  203. package/dist/zh-CN.main.js +3 -1
  204. package/dist/zh-CN.main.js.map +1 -1
  205. package/dist/zh-CN.mjs +3 -1
  206. package/dist/zh-CN.module.js +3 -1
  207. package/dist/zh-CN.module.js.map +1 -1
  208. package/dist/zh-TW.main.js +3 -1
  209. package/dist/zh-TW.main.js.map +1 -1
  210. package/dist/zh-TW.mjs +3 -1
  211. package/dist/zh-TW.module.js +3 -1
  212. package/dist/zh-TW.module.js.map +1 -1
  213. package/package.json +14 -13
  214. package/src/index.ts +4 -0
  215. package/src/useColorArea.ts +6 -9
  216. package/src/useColorAreaGradient.ts +66 -189
  217. package/src/useColorChannelField.ts +37 -0
  218. package/src/useColorField.ts +18 -14
  219. package/src/useColorSlider.ts +21 -3
  220. package/src/useColorSwatch.ts +74 -0
  221. package/src/useColorWheel.ts +18 -4
@@ -2,6 +2,7 @@ import {useGlobalListeners as $hcgPp$useGlobalListeners, focusWithoutScrolling a
2
2
  import {useCallback as $hcgPp$useCallback, useRef as $hcgPp$useRef} from "react";
3
3
  import {useKeyboard as $hcgPp$useKeyboard, useMove as $hcgPp$useMove} from "@react-aria/interactions";
4
4
  import {useLocale as $hcgPp$useLocale} from "@react-aria/i18n";
5
+ import {useVisuallyHidden as $hcgPp$useVisuallyHidden} from "@react-aria/visually-hidden";
5
6
 
6
7
  /*
7
8
  * Copyright 2020 Adobe. All rights reserved.
@@ -17,6 +18,7 @@ import {useLocale as $hcgPp$useLocale} from "@react-aria/i18n";
17
18
 
18
19
 
19
20
 
21
+
20
22
  function $b4a0a4fdc900495e$export$9064ff4e44b3729a(props, state, inputRef) {
21
23
  let { isDisabled: isDisabled, innerRadius: innerRadius, outerRadius: outerRadius, "aria-label": ariaLabel, name: name } = props;
22
24
  let { addGlobalListener: addGlobalListener, removeGlobalListener: removeGlobalListener } = (0, $hcgPp$useGlobalListeners)();
@@ -189,6 +191,14 @@ function $b4a0a4fdc900495e$export$9064ff4e44b3729a(props, state, inputRef) {
189
191
  let forcedColorAdjustNoneStyle = {
190
192
  forcedColorAdjust: "none"
191
193
  };
194
+ let { visuallyHiddenProps: visuallyHiddenProps } = (0, $hcgPp$useVisuallyHidden)({
195
+ style: {
196
+ opacity: "0.0001",
197
+ width: "100%",
198
+ height: "100%",
199
+ pointerEvents: "none"
200
+ }
201
+ });
192
202
  return {
193
203
  trackProps: {
194
204
  ...trackInteractions,
@@ -223,9 +233,9 @@ function $b4a0a4fdc900495e$export$9064ff4e44b3729a(props, state, inputRef) {
223
233
  ...thumbInteractions,
224
234
  style: {
225
235
  position: "absolute",
226
- left: "50%",
227
- top: "50%",
228
- transform: `translate(calc(${x}px - 50%), calc(${y}px - 50%))`,
236
+ left: outerRadius + x,
237
+ top: outerRadius + y,
238
+ transform: "translate(-50%, -50%)",
229
239
  touchAction: "none",
230
240
  ...forcedColorAdjustNoneStyle
231
241
  }
@@ -241,7 +251,11 @@ function $b4a0a4fdc900495e$export$9064ff4e44b3729a(props, state, inputRef) {
241
251
  name: name,
242
252
  onChange: (e)=>{
243
253
  state.setHue(parseFloat(e.target.value));
244
- }
254
+ },
255
+ style: visuallyHiddenProps.style,
256
+ "aria-errormessage": props["aria-errormessage"],
257
+ "aria-describedby": props["aria-describedby"],
258
+ "aria-details": props["aria-details"]
245
259
  })
246
260
  };
247
261
  }
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-aria/color/src/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 {AriaColorWheelProps} from '@react-types/color';\nimport {ColorWheelState} from '@react-stately/color';\nimport {DOMAttributes} from '@react-types/shared';\nimport {focusWithoutScrolling, mergeProps, useFormReset, useGlobalListeners, useLabels} from '@react-aria/utils';\nimport React, {ChangeEvent, InputHTMLAttributes, RefObject, useCallback, useRef} from 'react';\nimport {useKeyboard, useMove} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\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(props: AriaColorWheelOptions, state: ColorWheelState, inputRef: RefObject<HTMLInputElement>): ColorWheelAria {\n let {\n isDisabled,\n innerRadius,\n outerRadius,\n 'aria-label': ariaLabel,\n name\n } = 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.hue, state.setHue);\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 = (track: Element, id: number | null | undefined, pageX: number, pageY: number) => {\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 (innerRadius < radius && radius < outerRadius && !state.isDragging && currentPointer.current === undefined) {\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\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 ? {} : mergeProps({\n ...(typeof PointerEvent !== 'undefined' ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\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(e.currentTarget, e.changedTouches[0].identifier, e.changedTouches[0].clientX, e.changedTouches[0].clientY);\n }\n })\n }, movePropsContainer);\n\n let thumbInteractions = isDisabled ? {} : mergeProps({\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onPointerDown: (e: React.PointerEvent) => {\n if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) {\n return;\n }\n onThumbDown(e.pointerId);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n }, keyboardProps, movePropsThumb);\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 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: '50%',\n top: '50%',\n transform: `translate(calc(${x}px - 50%), calc(${y}px - 50%))`,\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(\n inputLabellingProps,\n {\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 onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(e.target.value));\n }\n }\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.module.js.map"}
1
+ {"mappings":";;;;;;AAAA;;;;;;;;;;CAUC;;;;;AA+BM,SAAS,0CAAc,KAA4B,EAAE,KAAsB,EAAE,QAAqC;IACvH,IAAI,cACF,UAAU,eACV,WAAW,eACX,WAAW,EACX,cAAc,SAAS,QACvB,IAAI,EACL,GAAG;IAEJ,IAAI,qBAAC,iBAAiB,wBAAE,oBAAoB,EAAC,GAAG,CAAA,GAAA,yBAAiB;IAEjE,IAAI,cAAc,AAAC,CAAA,cAAc,WAAU,IAAK;IAEhD,IAAI,aAAa,CAAA,GAAA,kBAAU,EAAE;QAC3B,IAAI,SAAS,OAAO,EAClB,CAAA,GAAA,4BAAoB,EAAE,SAAS,OAAO;IAE1C,GAAG;QAAC;KAAS;IAEb,CAAA,GAAA,mBAAW,EAAE,UAAU,MAAM,GAAG,EAAE,MAAM,MAAM;IAE9C,IAAI,kBAAkB,CAAA,GAAA,aAAK,EAAiC;IAE5D,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,kBAAU,EAAE;QAChC,WAAU,CAAC;YACT,kDAAkD;YAClD,IAAI,CAAC,sBAAsB,IAAI,CAAC,EAAE,GAAG,GAAG;gBACtC,EAAE,mBAAmB;gBACrB;YACF;YACA,4FAA4F;YAC5F,EAAE,cAAc;YAChB,iEAAiE;YACjE,MAAM,WAAW,CAAC;YAClB,OAAQ,EAAE,GAAG;gBACX,KAAK;oBACH,EAAE,cAAc;oBAChB,MAAM,SAAS,CAAC,MAAM,QAAQ;oBAC9B;gBACF,KAAK;oBACH,EAAE,cAAc;oBAChB,MAAM,SAAS,CAAC,MAAM,QAAQ;oBAC9B;YACJ;YACA,MAAM,WAAW,CAAC;QACpB;IACF;IAEA,IAAI,cAAc;QAChB;YACE,gBAAgB,OAAO,GAAG;YAC1B,MAAM,WAAW,CAAC;QACpB;QACA,QAAO,UAAC,MAAM,UAAE,MAAM,eAAE,WAAW,YAAE,QAAQ,EAAC;YAC5C,IAAI,gBAAgB,OAAO,IAAI,MAC7B,gBAAgB,OAAO,GAAG,MAAM,gBAAgB,CAAC;YAEnD,gBAAgB,OAAO,CAAC,CAAC,IAAI;YAC7B,gBAAgB,OAAO,CAAC,CAAC,IAAI;YAC7B,IAAI,gBAAgB,YAAY;gBAC9B,IAAI,SAAS,KAAK,SAAS,GACzB,MAAM,SAAS,CAAC,WAAW,MAAM,QAAQ,GAAG,MAAM,IAAI;qBACjD,IAAI,SAAS,KAAK,SAAS,GAChC,MAAM,SAAS,CAAC,WAAW,MAAM,QAAQ,GAAG,MAAM,IAAI;YAE1D,OACE,MAAM,eAAe,CAAC,gBAAgB,OAAO,CAAC,CAAC,EAAE,gBAAgB,OAAO,CAAC,CAAC,EAAE;QAEhF;QACA;YACE,UAAU,OAAO,GAAG;YACpB,MAAM,WAAW,CAAC;YAClB;QACF;IACF;IACA,IAAI,EAAC,WAAW,cAAc,EAAC,GAAG,CAAA,GAAA,cAAM,EAAE;IAE1C,IAAI,iBAAiB,CAAA,GAAA,aAAK,EAA6B;IACvD,IAAI,YAAY,CAAA,GAAA,aAAK,EAAW;IAChC,IAAI,EAAC,WAAW,kBAAkB,EAAC,GAAG,CAAA,GAAA,cAAM,EAAE;QAC5C;YACE,IAAI,UAAU,OAAO,EACnB,YAAY,WAAW;QAE3B;QACA,QAAO,CAAC;YACN,IAAI,UAAU,OAAO,EACnB,YAAY,MAAM,CAAC;QAEvB;QACA;YACE,IAAI,UAAU,OAAO,EACnB,YAAY,SAAS;QAEzB;IACF;IAEA,IAAI,cAAc,CAAC;QACjB,IAAI,CAAC,MAAM,UAAU,EAAE;YACrB,eAAe,OAAO,GAAG;YACzB;YACA,MAAM,WAAW,CAAC;YAElB,IAAI,OAAO,iBAAiB,aAC1B,kBAAkB,QAAQ,aAAa,WAAW;iBAC7C;gBACL,kBAAkB,QAAQ,WAAW,WAAW;gBAChD,kBAAkB,QAAQ,YAAY,WAAW;YACnD;QACF;IACF;IAEA,IAAI,YAAY,CAAC;YACS;YAAf;QAAT,IAAI,KAAK,CAAA,eAAA,EAAE,SAAS,cAAX,0BAAA,gBAAe,oBAAA,EAAE,cAAc,cAAhB,wCAAA,iBAAkB,CAAC,EAAE,CAAC,UAAU;QACxD,IAAI,OAAO,eAAe,OAAO,EAAE;YACjC;YACA,MAAM,WAAW,CAAC;YAClB,eAAe,OAAO,GAAG;YACzB,UAAU,OAAO,GAAG;YAEpB,IAAI,OAAO,iBAAiB,aAC1B,qBAAqB,QAAQ,aAAa,WAAW;iBAChD;gBACL,qBAAqB,QAAQ,WAAW,WAAW;gBACnD,qBAAqB,QAAQ,YAAY,WAAW;YACtD;QACF;IACF;IAEA,IAAI,cAAc,CAAC,OAAgB,IAA+B,OAAe;QAC/E,IAAI,OAAO,MAAM,qBAAqB;QACtC,IAAI,IAAI,QAAQ,KAAK,CAAC,GAAG,KAAK,KAAK,GAAG;QACtC,IAAI,IAAI,QAAQ,KAAK,CAAC,GAAG,KAAK,MAAM,GAAG;QACvC,IAAI,SAAS,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI;QACnC,IAAI,cAAc,UAAU,SAAS,eAAe,CAAC,MAAM,UAAU,IAAI,eAAe,OAAO,KAAK,WAAW;YAC7G,UAAU,OAAO,GAAG;YACpB,eAAe,OAAO,GAAG;YACzB,MAAM,eAAe,CAAC,GAAG,GAAG;YAE5B;YACA,MAAM,WAAW,CAAC;YAElB,IAAI,OAAO,iBAAiB,aAC1B,kBAAkB,QAAQ,aAAa,WAAW;iBAC7C;gBACL,kBAAkB,QAAQ,WAAW,WAAW;gBAChD,kBAAkB,QAAQ,YAAY,WAAW;YACnD;QACF;IACF;IAEA,IAAI,YAAY,CAAC;YACS;YAAf;QAAT,IAAI,KAAK,CAAA,eAAA,EAAE,SAAS,cAAX,0BAAA,gBAAe,oBAAA,EAAE,cAAc,cAAhB,wCAAA,iBAAkB,CAAC,EAAE,CAAC,UAAU;QACxD,IAAI,UAAU,OAAO,IAAI,OAAO,eAAe,OAAO,EAAE;YACtD,UAAU,OAAO,GAAG;YACpB,eAAe,OAAO,GAAG;YACzB,MAAM,WAAW,CAAC;YAClB;YAGA,IAAI,OAAO,iBAAiB,aAC1B,qBAAqB,QAAQ,aAAa,WAAW;iBAChD;gBACL,qBAAqB,QAAQ,WAAW,WAAW;gBACnD,qBAAqB,QAAQ,YAAY,WAAW;YACtD;QACF;IACF;IAEA,IAAI,oBAAoB,aAAa,CAAC,IAAI,CAAA,GAAA,iBAAS,EAAE;QACnD,GAAI,OAAO,iBAAiB,cAAc;YACxC,eAAe,CAAC;gBACd,IAAI,EAAE,WAAW,KAAK,WAAY,CAAA,EAAE,MAAM,KAAK,KAAK,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,AAAD,GACnF;gBAEF,YAAY,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO;YAChE;QAAC,IAAI;YACH,aAAa,CAAC;gBACZ,IAAI,EAAE,MAAM,KAAK,KAAK,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,EACtD;gBAEF,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,OAAO;YAC9D;YACA,cAAc,CAAC;gBACb,YAAY,EAAE,aAAa,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,OAAO;YACvH;QACF,CAAC;IACL,GAAG;IAEH,IAAI,oBAAoB,aAAa,CAAC,IAAI,CAAA,GAAA,iBAAS,EAAE;QACnD,aAAa,CAAC;YACZ,IAAI,EAAE,MAAM,KAAK,KAAK,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,EACtD;YAEF,YAAY;QACd;QACA,eAAe,CAAC;YACd,IAAI,EAAE,WAAW,KAAK,WAAY,CAAA,EAAE,MAAM,KAAK,KAAK,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,OAAO,AAAD,GACnF;YAEF,YAAY,EAAE,SAAS;QACzB;QACA,cAAc,CAAC;YACb,YAAY,EAAE,cAAc,CAAC,EAAE,CAAC,UAAU;QAC5C;IACF,GAAG,eAAe;IAClB,IAAI,KAAC,CAAC,KAAE,CAAC,EAAC,GAAG,MAAM,gBAAgB,CAAC;IAEpC,gDAAgD;IAChD,IAAI,UAAC,MAAM,EAAC,GAAG,CAAA,GAAA,gBAAQ;IACvB,IAAI,aAAa,QAAQ,KAAK,CAAC,kBAAkB,IAAI,MACnD,YAAY,MAAM,KAAK,CAAC,cAAc,CAAC,OAAO;IAGhD,IAAI,sBAAsB,CAAA,GAAA,gBAAQ,EAAE;QAClC,GAAG,KAAK;QACR,cAAc;IAChB;IAEA,IAAI,YAAC,QAAQ,YAAE,QAAQ,QAAE,IAAI,EAAC,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC;IAE7D,IAAI,6BAA6B;QAC/B,mBAAmB;IACrB;IAEA,IAAI,uBAAC,mBAAmB,EAAC,GAAG,CAAA,GAAA,wBAAgB,EAAE;QAC5C,OAAO;YACL,SAAS;YACT,OAAO;YACP,QAAQ;YACR,eAAe;QACjB;IACF;IAEA,OAAO;QACL,YAAY;YACV,GAAG,iBAAiB;YACpB,OAAO;gBACL,UAAU;gBACV,aAAa;gBACb,OAAO,cAAc;gBACrB,QAAQ,cAAc;gBACtB,YAAY,CAAC;;;;;;;;;;;;;;;;;QAiBb,CAAC;gBACD,UAAU,CAAC,eAAe,EAAE,iCAAW,aAAa,aAAa,aAAa,CAAC,EAAE,iCAAW,aAAa,aAAa,aAAa,EAAE,CAAC;gBACtI,GAAG,0BAA0B;YAC/B;QACF;QACA,YAAY;YACV,GAAG,iBAAiB;YACpB,OAAO;gBACL,UAAU;gBACV,MAAM,cAAc;gBACpB,KAAK,cAAc;gBACnB,WAAW;gBACX,aAAa;gBACb,GAAG,0BAA0B;YAC/B;QACF;QACA,YAAY,CAAA,GAAA,iBAAS,EACnB,qBACA;YACE,MAAM;YACN,KAAK,OAAO;YACZ,KAAK,OAAO;YACZ,MAAM,OAAO;YACb,kBAAkB,CAAC,EAAE,MAAM,KAAK,CAAC,kBAAkB,CAAC,OAAO,QAAQ,EAAE,EAAE,MAAM,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YACvG,UAAU;YACV,OAAO,CAAC,EAAE,MAAM,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC;kBAC9C;YACA,UAAU,CAAC;gBACT,MAAM,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK;YACxC;YACA,OAAO,oBAAoB,KAAK;YAChC,qBAAqB,KAAK,CAAC,oBAAoB;YAC/C,oBAAoB,KAAK,CAAC,mBAAmB;YAC7C,gBAAgB,KAAK,CAAC,eAAe;QACvC;IAEJ;AACF;AAEA,2CAA2C;AAC3C,SAAS,iCAAW,EAAU,EAAE,EAAU,EAAE,CAAS;IACnD,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;AAC1G","sources":["packages/@react-aria/color/src/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 {AriaColorWheelProps} from '@react-types/color';\nimport {ColorWheelState} from '@react-stately/color';\nimport {DOMAttributes} from '@react-types/shared';\nimport {focusWithoutScrolling, mergeProps, useFormReset, useGlobalListeners, useLabels} from '@react-aria/utils';\nimport React, {ChangeEvent, InputHTMLAttributes, RefObject, useCallback, useRef} from 'react';\nimport {useKeyboard, useMove} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useVisuallyHidden} from '@react-aria/visually-hidden';\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(props: AriaColorWheelOptions, state: ColorWheelState, inputRef: RefObject<HTMLInputElement>): ColorWheelAria {\n let {\n isDisabled,\n innerRadius,\n outerRadius,\n 'aria-label': ariaLabel,\n name\n } = 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.hue, state.setHue);\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 = (track: Element, id: number | null | undefined, pageX: number, pageY: number) => {\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 (innerRadius < radius && radius < outerRadius && !state.isDragging && currentPointer.current === undefined) {\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\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 ? {} : mergeProps({\n ...(typeof PointerEvent !== 'undefined' ? {\n onPointerDown: (e: React.PointerEvent) => {\n if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) {\n return;\n }\n onTrackDown(e.currentTarget, e.pointerId, e.clientX, e.clientY);\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(e.currentTarget, e.changedTouches[0].identifier, e.changedTouches[0].clientX, e.changedTouches[0].clientY);\n }\n })\n }, movePropsContainer);\n\n let thumbInteractions = isDisabled ? {} : mergeProps({\n onMouseDown: (e: React.MouseEvent) => {\n if (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey) {\n return;\n }\n onThumbDown(undefined);\n },\n onPointerDown: (e: React.PointerEvent) => {\n if (e.pointerType === 'mouse' && (e.button !== 0 || e.altKey || e.ctrlKey || e.metaKey)) {\n return;\n }\n onThumbDown(e.pointerId);\n },\n onTouchStart: (e: React.TouchEvent) => {\n onThumbDown(e.changedTouches[0].identifier);\n }\n }, keyboardProps, movePropsThumb);\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,\n top: outerRadius + y,\n transform: 'translate(-50%, -50%)',\n touchAction: 'none',\n ...forcedColorAdjustNoneStyle\n }\n },\n inputProps: mergeProps(\n inputLabellingProps,\n {\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 onChange: (e: ChangeEvent<HTMLInputElement>) => {\n state.setHue(parseFloat(e.target.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\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.module.js.map"}
@@ -2,7 +2,9 @@ module.exports = {
2
2
  "colorInputLabel": (args)=>`${args.label}\u{3001}${args.channelLabel}`,
3
3
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
4
4
  "colorPicker": `\u{62FE}\u{8272}\u{5668}`,
5
- "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`
5
+ "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`,
6
+ "colorSwatch": `color swatch`,
7
+ "transparent": `transparent`
6
8
  };
7
9
 
8
10
 
@@ -1 +1 @@
1
- {"mappings":"AAAA,iBAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;AACjC","sources":["packages/@react-aria/color/intl/zh-CN.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label}、{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"拾色器\",\n \"twoDimensionalSlider\": \"2D 滑块\"\n}\n"],"names":[],"version":3,"file":"zh-CN.main.js.map"}
1
+ {"mappings":"AAAA,iBAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;IAC/B,eAAe,CAAC,YAAY,CAAC;IAC7B,eAAe,CAAC,WAAW,CAAC;AAC9B","sources":["packages/@react-aria/color/intl/zh-CN.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label}、{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"拾色器\",\n \"twoDimensionalSlider\": \"2D 滑块\",\n \"colorSwatch\": \"color swatch\",\n \"transparent\": \"transparent\"\n}\n"],"names":[],"version":3,"file":"zh-CN.main.js.map"}
package/dist/zh-CN.mjs CHANGED
@@ -3,7 +3,9 @@ $4e1dbc65a687dd93$exports = {
3
3
  "colorInputLabel": (args)=>`${args.label}\u{3001}${args.channelLabel}`,
4
4
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
5
5
  "colorPicker": `\u{62FE}\u{8272}\u{5668}`,
6
- "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`
6
+ "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`,
7
+ "colorSwatch": `color swatch`,
8
+ "transparent": `transparent`
7
9
  };
8
10
 
9
11
 
@@ -3,7 +3,9 @@ $4e1dbc65a687dd93$exports = {
3
3
  "colorInputLabel": (args)=>`${args.label}\u{3001}${args.channelLabel}`,
4
4
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
5
5
  "colorPicker": `\u{62FE}\u{8272}\u{5668}`,
6
- "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`
6
+ "twoDimensionalSlider": `2D \u{6ED1}\u{5757}`,
7
+ "colorSwatch": `color swatch`,
8
+ "transparent": `transparent`
7
9
  };
8
10
 
9
11
 
@@ -1 +1 @@
1
- {"mappings":";AAAA,4BAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;AACjC","sources":["packages/@react-aria/color/intl/zh-CN.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label}、{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"拾色器\",\n \"twoDimensionalSlider\": \"2D 滑块\"\n}\n"],"names":[],"version":3,"file":"zh-CN.module.js.map"}
1
+ {"mappings":";AAAA,4BAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;IAC/B,eAAe,CAAC,YAAY,CAAC;IAC7B,eAAe,CAAC,WAAW,CAAC;AAC9B","sources":["packages/@react-aria/color/intl/zh-CN.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label}、{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"拾色器\",\n \"twoDimensionalSlider\": \"2D 滑块\",\n \"colorSwatch\": \"color swatch\",\n \"transparent\": \"transparent\"\n}\n"],"names":[],"version":3,"file":"zh-CN.module.js.map"}
@@ -2,7 +2,9 @@ module.exports = {
2
2
  "colorInputLabel": (args)=>`${args.label}\u{FF0C}${args.channelLabel}`,
3
3
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
4
4
  "colorPicker": `\u{6AA2}\u{8272}\u{5668}`,
5
- "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`
5
+ "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`,
6
+ "colorSwatch": `color swatch`,
7
+ "transparent": `transparent`
6
8
  };
7
9
 
8
10
 
@@ -1 +1 @@
1
- {"mappings":"AAAA,iBAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;AACjC","sources":["packages/@react-aria/color/intl/zh-TW.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label},{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"檢色器\",\n \"twoDimensionalSlider\": \"2D 滑桿\"\n}\n"],"names":[],"version":3,"file":"zh-TW.main.js.map"}
1
+ {"mappings":"AAAA,iBAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;IAC/B,eAAe,CAAC,YAAY,CAAC;IAC7B,eAAe,CAAC,WAAW,CAAC;AAC9B","sources":["packages/@react-aria/color/intl/zh-TW.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label},{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"檢色器\",\n \"twoDimensionalSlider\": \"2D 滑桿\",\n \"colorSwatch\": \"color swatch\",\n \"transparent\": \"transparent\"\n}\n"],"names":[],"version":3,"file":"zh-TW.main.js.map"}
package/dist/zh-TW.mjs CHANGED
@@ -3,7 +3,9 @@ $b0fef28529309aa6$exports = {
3
3
  "colorInputLabel": (args)=>`${args.label}\u{FF0C}${args.channelLabel}`,
4
4
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
5
5
  "colorPicker": `\u{6AA2}\u{8272}\u{5668}`,
6
- "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`
6
+ "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`,
7
+ "colorSwatch": `color swatch`,
8
+ "transparent": `transparent`
7
9
  };
8
10
 
9
11
 
@@ -3,7 +3,9 @@ $b0fef28529309aa6$exports = {
3
3
  "colorInputLabel": (args)=>`${args.label}\u{FF0C}${args.channelLabel}`,
4
4
  "colorNameAndValue": (args)=>`${args.name}\u{FF1A}${args.value}`,
5
5
  "colorPicker": `\u{6AA2}\u{8272}\u{5668}`,
6
- "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`
6
+ "twoDimensionalSlider": `2D \u{6ED1}\u{687F}`,
7
+ "colorSwatch": `color swatch`,
8
+ "transparent": `transparent`
7
9
  };
8
10
 
9
11
 
@@ -1 +1 @@
1
- {"mappings":";AAAA,4BAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;AACjC","sources":["packages/@react-aria/color/intl/zh-TW.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label},{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"檢色器\",\n \"twoDimensionalSlider\": \"2D 滑桿\"\n}\n"],"names":[],"version":3,"file":"zh-TW.module.js.map"}
1
+ {"mappings":";AAAA,4BAAiB;IAAG,mBAAmB,CAAC,OAAS,CAAC,EAAE,KAAK,KAAK,CAAC,QAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACnF,qBAAqB,CAAC,OAAS,CAAC,EAAE,KAAK,IAAI,CAAC,QAAC,EAAE,KAAK,KAAK,CAAC,CAAC;IAC3D,eAAe,CAAC,wBAAG,CAAC;IACpB,wBAAwB,CAAC,mBAAK,CAAC;IAC/B,eAAe,CAAC,YAAY,CAAC;IAC7B,eAAe,CAAC,WAAW,CAAC;AAC9B","sources":["packages/@react-aria/color/intl/zh-TW.json"],"sourcesContent":["{\n \"colorInputLabel\": \"{label},{channelLabel}\",\n \"colorNameAndValue\": \"{name}:{value}\",\n \"colorPicker\": \"檢色器\",\n \"twoDimensionalSlider\": \"2D 滑桿\",\n \"colorSwatch\": \"color swatch\",\n \"transparent\": \"transparent\"\n}\n"],"names":[],"version":3,"file":"zh-TW.module.js.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-aria/color",
3
- "version": "3.0.0-nightly.4567+a597a0ce5",
3
+ "version": "3.0.0-nightly.4578+b09a14eb1",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -22,17 +22,18 @@
22
22
  "url": "https://github.com/adobe/react-spectrum"
23
23
  },
24
24
  "dependencies": {
25
- "@react-aria/i18n": "3.0.0-nightly.2855+a597a0ce5",
26
- "@react-aria/interactions": "3.0.0-nightly.2855+a597a0ce5",
27
- "@react-aria/slider": "3.7.7-nightly.4567+a597a0ce5",
28
- "@react-aria/spinbutton": "3.0.0-nightly.2855+a597a0ce5",
29
- "@react-aria/textfield": "3.0.0-nightly.2855+a597a0ce5",
30
- "@react-aria/utils": "3.0.0-nightly.2855+a597a0ce5",
31
- "@react-aria/visually-hidden": "3.0.0-nightly.2855+a597a0ce5",
32
- "@react-stately/color": "3.5.4-nightly.4567+a597a0ce5",
33
- "@react-stately/form": "3.0.2-nightly.4567+a597a0ce5",
34
- "@react-types/color": "3.0.0-nightly.4567+a597a0ce5",
35
- "@react-types/shared": "3.0.0-nightly.2855+a597a0ce5",
25
+ "@react-aria/i18n": "3.0.0-nightly.2866+b09a14eb1",
26
+ "@react-aria/interactions": "3.0.0-nightly.2866+b09a14eb1",
27
+ "@react-aria/numberfield": "3.0.0-nightly.2866+b09a14eb1",
28
+ "@react-aria/slider": "3.7.7-nightly.4578+b09a14eb1",
29
+ "@react-aria/spinbutton": "3.0.0-nightly.2866+b09a14eb1",
30
+ "@react-aria/textfield": "3.0.0-nightly.2866+b09a14eb1",
31
+ "@react-aria/utils": "3.0.0-nightly.2866+b09a14eb1",
32
+ "@react-aria/visually-hidden": "3.0.0-nightly.2866+b09a14eb1",
33
+ "@react-stately/color": "3.5.4-nightly.4578+b09a14eb1",
34
+ "@react-stately/form": "3.0.2-nightly.4578+b09a14eb1",
35
+ "@react-types/color": "3.0.0-nightly.4578+b09a14eb1",
36
+ "@react-types/shared": "3.0.0-nightly.2866+b09a14eb1",
36
37
  "@swc/helpers": "^0.5.0"
37
38
  },
38
39
  "peerDependencies": {
@@ -42,5 +43,5 @@
42
43
  "publishConfig": {
43
44
  "access": "public"
44
45
  },
45
- "gitHead": "a597a0ce5f345a7c5968939d120eafbe6f02ac2a"
46
+ "gitHead": "b09a14eb1854d9d52e08739e30aa8fae51f1595a"
46
47
  }
package/src/index.ts CHANGED
@@ -13,8 +13,12 @@ export {useColorArea} from './useColorArea';
13
13
  export {useColorSlider} from './useColorSlider';
14
14
  export {useColorWheel} from './useColorWheel';
15
15
  export {useColorField} from './useColorField';
16
+ export {useColorSwatch} from './useColorSwatch';
17
+ export {useColorChannelField} from './useColorChannelField';
16
18
  export type {AriaColorAreaOptions, ColorAreaAria} from './useColorArea';
17
19
  export type {AriaColorSliderOptions, ColorSliderAria} from './useColorSlider';
18
20
  export type {AriaColorWheelOptions, ColorWheelAria} from './useColorWheel';
19
21
  export type {AriaColorFieldProps} from '@react-types/color';
20
22
  export type {ColorFieldAria} from './useColorField';
23
+ export type {AriaColorSwatchProps, ColorSwatchAria} from './useColorSwatch';
24
+ export type {AriaColorChannelFieldProps, ColorChannelFieldAria} from './useColorChannelField';
@@ -25,8 +25,6 @@ import {useVisuallyHidden} from '@react-aria/visually-hidden';
25
25
  export interface ColorAreaAria {
26
26
  /** Props for the color area container element. */
27
27
  colorAreaProps: DOMAttributes,
28
- /** Props for the color area gradient foreground element. */
29
- gradientProps: DOMAttributes,
30
28
  /** Props for the thumb element. */
31
29
  thumbProps: DOMAttributes,
32
30
  /** Props for the visually hidden horizontal range input element. */
@@ -396,14 +394,13 @@ export function useColorArea(props: AriaColorAreaOptions, state: ColorAreaState)
396
394
 
397
395
  let {
398
396
  colorAreaStyleProps,
399
- gradientStyleProps,
400
397
  thumbStyleProps
401
398
  } = useColorAreaGradient({
402
399
  direction,
403
400
  state,
404
401
  xChannel,
405
- zChannel,
406
- isDisabled: props.isDisabled
402
+ yChannel,
403
+ zChannel
407
404
  });
408
405
 
409
406
  return {
@@ -413,10 +410,6 @@ export function useColorArea(props: AriaColorAreaOptions, state: ColorAreaState)
413
410
  ...colorAreaStyleProps,
414
411
  role: 'group'
415
412
  },
416
- gradientProps: {
417
- ...gradientStyleProps,
418
- role: 'presentation'
419
- },
420
413
  thumbProps: {
421
414
  ...thumbInteractions,
422
415
  ...thumbStyleProps,
@@ -433,6 +426,8 @@ export function useColorArea(props: AriaColorAreaOptions, state: ColorAreaState)
433
426
  'aria-roledescription': ariaRoleDescription,
434
427
  'aria-valuetext': getAriaValueTextForChannel(xChannel),
435
428
  'aria-orientation': 'horizontal',
429
+ 'aria-describedby': props['aria-describedby'],
430
+ 'aria-details': props['aria-details'],
436
431
  disabled: isDisabled,
437
432
  value: state.value.getChannelValue(xChannel),
438
433
  name: xName,
@@ -456,6 +451,8 @@ export function useColorArea(props: AriaColorAreaOptions, state: ColorAreaState)
456
451
  'aria-roledescription': ariaRoleDescription,
457
452
  'aria-valuetext': getAriaValueTextForChannel(yChannel),
458
453
  'aria-orientation': 'vertical',
454
+ 'aria-describedby': props['aria-describedby'],
455
+ 'aria-details': props['aria-details'],
459
456
  disabled: isDisabled,
460
457
  value: state.value.getChannelValue(yChannel),
461
458
  name: yName,