@fluentui/react-color-picker 0.0.0-nightly-20250319-0406.1

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 (157) hide show
  1. package/CHANGELOG.md +141 -0
  2. package/LICENSE +15 -0
  3. package/README.md +50 -0
  4. package/dist/index.d.ts +281 -0
  5. package/lib/AlphaSlider.js +1 -0
  6. package/lib/AlphaSlider.js.map +1 -0
  7. package/lib/ColorArea.js +1 -0
  8. package/lib/ColorArea.js.map +1 -0
  9. package/lib/ColorPicker.js +1 -0
  10. package/lib/ColorPicker.js.map +1 -0
  11. package/lib/ColorSlider.js +1 -0
  12. package/lib/ColorSlider.js.map +1 -0
  13. package/lib/components/AlphaSlider/AlphaSlider.js +14 -0
  14. package/lib/components/AlphaSlider/AlphaSlider.js.map +1 -0
  15. package/lib/components/AlphaSlider/AlphaSlider.types.js +3 -0
  16. package/lib/components/AlphaSlider/AlphaSlider.types.js.map +1 -0
  17. package/lib/components/AlphaSlider/alphaSliderUtils.js +31 -0
  18. package/lib/components/AlphaSlider/alphaSliderUtils.js.map +1 -0
  19. package/lib/components/AlphaSlider/index.js +4 -0
  20. package/lib/components/AlphaSlider/index.js.map +1 -0
  21. package/lib/components/AlphaSlider/renderAlphaSlider.js +14 -0
  22. package/lib/components/AlphaSlider/renderAlphaSlider.js.map +1 -0
  23. package/lib/components/AlphaSlider/useAlphaSlider.js +56 -0
  24. package/lib/components/AlphaSlider/useAlphaSlider.js.map +1 -0
  25. package/lib/components/AlphaSlider/useAlphaSliderState.js +58 -0
  26. package/lib/components/AlphaSlider/useAlphaSliderState.js.map +1 -0
  27. package/lib/components/AlphaSlider/useAlphaSliderStyles.styles.js +80 -0
  28. package/lib/components/AlphaSlider/useAlphaSliderStyles.styles.js.map +1 -0
  29. package/lib/components/ColorArea/ColorArea.js +14 -0
  30. package/lib/components/ColorArea/ColorArea.js.map +1 -0
  31. package/lib/components/ColorArea/ColorArea.types.js +1 -0
  32. package/lib/components/ColorArea/ColorArea.types.js.map +1 -0
  33. package/lib/components/ColorArea/index.js +4 -0
  34. package/lib/components/ColorArea/index.js.map +1 -0
  35. package/lib/components/ColorArea/renderColorArea.js +15 -0
  36. package/lib/components/ColorArea/renderColorArea.js.map +1 -0
  37. package/lib/components/ColorArea/useColorArea.js +189 -0
  38. package/lib/components/ColorArea/useColorArea.js.map +1 -0
  39. package/lib/components/ColorArea/useColorAreaStyles.styles.js +231 -0
  40. package/lib/components/ColorArea/useColorAreaStyles.styles.js.map +1 -0
  41. package/lib/components/ColorPicker/ColorPicker.js +16 -0
  42. package/lib/components/ColorPicker/ColorPicker.js.map +1 -0
  43. package/lib/components/ColorPicker/ColorPicker.types.js +1 -0
  44. package/lib/components/ColorPicker/ColorPicker.types.js.map +1 -0
  45. package/lib/components/ColorPicker/index.js +4 -0
  46. package/lib/components/ColorPicker/index.js.map +1 -0
  47. package/lib/components/ColorPicker/renderColorPicker.js +14 -0
  48. package/lib/components/ColorPicker/renderColorPicker.js.map +1 -0
  49. package/lib/components/ColorPicker/useColorPicker.js +34 -0
  50. package/lib/components/ColorPicker/useColorPicker.js.map +1 -0
  51. package/lib/components/ColorPicker/useColorPickerStyles.styles.js +31 -0
  52. package/lib/components/ColorPicker/useColorPickerStyles.styles.js.map +1 -0
  53. package/lib/components/ColorSlider/ColorSlider.js +14 -0
  54. package/lib/components/ColorSlider/ColorSlider.js.map +1 -0
  55. package/lib/components/ColorSlider/ColorSlider.types.js +1 -0
  56. package/lib/components/ColorSlider/ColorSlider.types.js.map +1 -0
  57. package/lib/components/ColorSlider/index.js +4 -0
  58. package/lib/components/ColorSlider/index.js.map +1 -0
  59. package/lib/components/ColorSlider/renderColorSlider.js +14 -0
  60. package/lib/components/ColorSlider/renderColorSlider.js.map +1 -0
  61. package/lib/components/ColorSlider/useColorSlider.js +129 -0
  62. package/lib/components/ColorSlider/useColorSlider.js.map +1 -0
  63. package/lib/components/ColorSlider/useColorSliderStyles.styles.js +288 -0
  64. package/lib/components/ColorSlider/useColorSliderStyles.styles.js.map +1 -0
  65. package/lib/contexts/colorPicker.js +23 -0
  66. package/lib/contexts/colorPicker.js.map +1 -0
  67. package/lib/index.js +4 -0
  68. package/lib/index.js.map +1 -0
  69. package/lib/types/color.js +1 -0
  70. package/lib/types/color.js.map +1 -0
  71. package/lib/utils/adjustChannel.js +22 -0
  72. package/lib/utils/adjustChannel.js.map +1 -0
  73. package/lib/utils/constants.js +6 -0
  74. package/lib/utils/constants.js.map +1 -0
  75. package/lib/utils/createHsvColor.js +17 -0
  76. package/lib/utils/createHsvColor.js.map +1 -0
  77. package/lib/utils/getCoordinates.js +24 -0
  78. package/lib/utils/getCoordinates.js.map +1 -0
  79. package/lib/utils/getPercent.js +11 -0
  80. package/lib/utils/getPercent.js.map +1 -0
  81. package/lib-commonjs/AlphaSlider.js +31 -0
  82. package/lib-commonjs/AlphaSlider.js.map +1 -0
  83. package/lib-commonjs/ColorArea.js +31 -0
  84. package/lib-commonjs/ColorArea.js.map +1 -0
  85. package/lib-commonjs/ColorPicker.js +28 -0
  86. package/lib-commonjs/ColorPicker.js.map +1 -0
  87. package/lib-commonjs/ColorSlider.js +31 -0
  88. package/lib-commonjs/ColorSlider.js.map +1 -0
  89. package/lib-commonjs/components/AlphaSlider/AlphaSlider.js +23 -0
  90. package/lib-commonjs/components/AlphaSlider/AlphaSlider.js.map +1 -0
  91. package/lib-commonjs/components/AlphaSlider/AlphaSlider.types.js +6 -0
  92. package/lib-commonjs/components/AlphaSlider/AlphaSlider.types.js.map +1 -0
  93. package/lib-commonjs/components/AlphaSlider/alphaSliderUtils.js +39 -0
  94. package/lib-commonjs/components/AlphaSlider/alphaSliderUtils.js.map +1 -0
  95. package/lib-commonjs/components/AlphaSlider/index.js +34 -0
  96. package/lib-commonjs/components/AlphaSlider/index.js.map +1 -0
  97. package/lib-commonjs/components/AlphaSlider/renderAlphaSlider.js +22 -0
  98. package/lib-commonjs/components/AlphaSlider/renderAlphaSlider.js.map +1 -0
  99. package/lib-commonjs/components/AlphaSlider/useAlphaSlider.js +58 -0
  100. package/lib-commonjs/components/AlphaSlider/useAlphaSlider.js.map +1 -0
  101. package/lib-commonjs/components/AlphaSlider/useAlphaSliderState.js +69 -0
  102. package/lib-commonjs/components/AlphaSlider/useAlphaSliderState.js.map +1 -0
  103. package/lib-commonjs/components/AlphaSlider/useAlphaSliderStyles.styles.js +115 -0
  104. package/lib-commonjs/components/AlphaSlider/useAlphaSliderStyles.styles.js.map +1 -0
  105. package/lib-commonjs/components/ColorArea/ColorArea.js +23 -0
  106. package/lib-commonjs/components/ColorArea/ColorArea.js.map +1 -0
  107. package/lib-commonjs/components/ColorArea/ColorArea.types.js +6 -0
  108. package/lib-commonjs/components/ColorArea/ColorArea.types.js.map +1 -0
  109. package/lib-commonjs/components/ColorArea/index.js +34 -0
  110. package/lib-commonjs/components/ColorArea/index.js.map +1 -0
  111. package/lib-commonjs/components/ColorArea/renderColorArea.js +23 -0
  112. package/lib-commonjs/components/ColorArea/renderColorArea.js.map +1 -0
  113. package/lib-commonjs/components/ColorArea/useColorArea.js +190 -0
  114. package/lib-commonjs/components/ColorArea/useColorArea.js.map +1 -0
  115. package/lib-commonjs/components/ColorArea/useColorAreaStyles.styles.js +377 -0
  116. package/lib-commonjs/components/ColorArea/useColorAreaStyles.styles.js.map +1 -0
  117. package/lib-commonjs/components/ColorPicker/ColorPicker.js +25 -0
  118. package/lib-commonjs/components/ColorPicker/ColorPicker.js.map +1 -0
  119. package/lib-commonjs/components/ColorPicker/ColorPicker.types.js +6 -0
  120. package/lib-commonjs/components/ColorPicker/ColorPicker.types.js.map +1 -0
  121. package/lib-commonjs/components/ColorPicker/index.js +31 -0
  122. package/lib-commonjs/components/ColorPicker/index.js.map +1 -0
  123. package/lib-commonjs/components/ColorPicker/renderColorPicker.js +22 -0
  124. package/lib-commonjs/components/ColorPicker/renderColorPicker.js.map +1 -0
  125. package/lib-commonjs/components/ColorPicker/useColorPicker.js +37 -0
  126. package/lib-commonjs/components/ColorPicker/useColorPicker.js.map +1 -0
  127. package/lib-commonjs/components/ColorPicker/useColorPickerStyles.styles.js +50 -0
  128. package/lib-commonjs/components/ColorPicker/useColorPickerStyles.styles.js.map +1 -0
  129. package/lib-commonjs/components/ColorSlider/ColorSlider.js +23 -0
  130. package/lib-commonjs/components/ColorSlider/ColorSlider.js.map +1 -0
  131. package/lib-commonjs/components/ColorSlider/ColorSlider.types.js +6 -0
  132. package/lib-commonjs/components/ColorSlider/ColorSlider.types.js.map +1 -0
  133. package/lib-commonjs/components/ColorSlider/index.js +34 -0
  134. package/lib-commonjs/components/ColorSlider/index.js.map +1 -0
  135. package/lib-commonjs/components/ColorSlider/renderColorSlider.js +22 -0
  136. package/lib-commonjs/components/ColorSlider/renderColorSlider.js.map +1 -0
  137. package/lib-commonjs/components/ColorSlider/useColorSlider.js +130 -0
  138. package/lib-commonjs/components/ColorSlider/useColorSlider.js.map +1 -0
  139. package/lib-commonjs/components/ColorSlider/useColorSliderStyles.styles.js +454 -0
  140. package/lib-commonjs/components/ColorSlider/useColorSliderStyles.styles.js.map +1 -0
  141. package/lib-commonjs/contexts/colorPicker.js +48 -0
  142. package/lib-commonjs/contexts/colorPicker.js.map +1 -0
  143. package/lib-commonjs/index.js +76 -0
  144. package/lib-commonjs/index.js.map +1 -0
  145. package/lib-commonjs/types/color.js +4 -0
  146. package/lib-commonjs/types/color.js.map +1 -0
  147. package/lib-commonjs/utils/adjustChannel.js +27 -0
  148. package/lib-commonjs/utils/adjustChannel.js.map +1 -0
  149. package/lib-commonjs/utils/constants.js +33 -0
  150. package/lib-commonjs/utils/constants.js.map +1 -0
  151. package/lib-commonjs/utils/createHsvColor.js +27 -0
  152. package/lib-commonjs/utils/createHsvColor.js.map +1 -0
  153. package/lib-commonjs/utils/getCoordinates.js +31 -0
  154. package/lib-commonjs/utils/getCoordinates.js.map +1 -0
  155. package/lib-commonjs/utils/getPercent.js +21 -0
  156. package/lib-commonjs/utils/getPercent.js.map +1 -0
  157. package/package.json +53 -0
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ ColorPicker: function() {
13
+ return _ColorPicker.ColorPicker;
14
+ },
15
+ colorPickerClassNames: function() {
16
+ return _useColorPickerStylesstyles.colorPickerClassNames;
17
+ },
18
+ renderColorPicker_unstable: function() {
19
+ return _renderColorPicker.renderColorPicker_unstable;
20
+ },
21
+ useColorPickerStyles_unstable: function() {
22
+ return _useColorPickerStylesstyles.useColorPickerStyles_unstable;
23
+ },
24
+ useColorPicker_unstable: function() {
25
+ return _useColorPicker.useColorPicker_unstable;
26
+ }
27
+ });
28
+ const _ColorPicker = require("./ColorPicker");
29
+ const _renderColorPicker = require("./renderColorPicker");
30
+ const _useColorPicker = require("./useColorPicker");
31
+ const _useColorPickerStylesstyles = require("./useColorPickerStyles.styles");
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorPicker/index.ts"],"sourcesContent":["export { ColorPicker } from './ColorPicker';\nexport type {\n ColorPickerOnChangeData,\n ColorPickerProps,\n ColorPickerSlots,\n ColorPickerState,\n} from './ColorPicker.types';\nexport { renderColorPicker_unstable } from './renderColorPicker';\nexport { useColorPicker_unstable } from './useColorPicker';\nexport { colorPickerClassNames, useColorPickerStyles_unstable } from './useColorPickerStyles.styles';\n"],"names":["ColorPicker","colorPickerClassNames","renderColorPicker_unstable","useColorPickerStyles_unstable","useColorPicker_unstable"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAASA,WAAW;eAAXA,wBAAW;;IASXC,qBAAqB;eAArBA,iDAAqB;;IAFrBC,0BAA0B;eAA1BA,6CAA0B;;IAEHC,6BAA6B;eAA7BA,yDAA6B;;IADpDC,uBAAuB;eAAvBA,uCAAuB;;;6BARJ;mCAOe;gCACH;4CAC6B"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "renderColorPicker_unstable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return renderColorPicker_unstable;
9
+ }
10
+ });
11
+ const _jsxruntime = require("@fluentui/react-jsx-runtime/jsx-runtime");
12
+ const _reactutilities = require("@fluentui/react-utilities");
13
+ const _colorPicker = require("../../contexts/colorPicker");
14
+ const renderColorPicker_unstable = (state, contextValues)=>{
15
+ (0, _reactutilities.assertSlots)(state);
16
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_colorPicker.ColorPickerProvider, {
17
+ value: contextValues.colorPicker,
18
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(state.root, {
19
+ children: state.root.children
20
+ })
21
+ });
22
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorPicker/renderColorPicker.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { ColorPickerState, ColorPickerSlots } from './ColorPicker.types';\nimport type { ColorPickerContextValues } from '../../contexts/colorPicker';\nimport { ColorPickerProvider } from '../../contexts/colorPicker';\n\n/**\n * Render the final JSX of ColorPicker\n */\nexport const renderColorPicker_unstable = (state: ColorPickerState, contextValues: ColorPickerContextValues) => {\n assertSlots<ColorPickerSlots>(state);\n\n return (\n <ColorPickerProvider value={contextValues.colorPicker}>\n <state.root>{state.root.children}</state.root>\n </ColorPickerProvider>\n );\n};\n"],"names":["renderColorPicker_unstable","state","contextValues","assertSlots","_jsx","ColorPickerProvider","value","colorPicker","root","children"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAWaA;;;eAAAA;;;4BAVb;gCAE4B;6BAGQ;AAK7B,MAAMA,6BAA6B,CAACC,OAAyBC;IAClEC,IAAAA,2BAAAA,EAA8BF;IAE9B,OAAA,WAAA,GACEG,IAAAA,eAAA,EAACC,gCAAAA,EAAAA;QAAoBC,OAAOJ,cAAcK,WAAW;kBACnD,WAAA,GAAAH,IAAAA,eAAA,EAACH,MAAMO,IAAI,EAAA;sBAAEP,MAAMO,IAAI,CAACC,QAAQ;;;AAGtC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useColorPicker_unstable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useColorPicker_unstable;
9
+ }
10
+ });
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
13
+ const _reactutilities = require("@fluentui/react-utilities");
14
+ const useColorPicker_unstable = (props, ref)=>{
15
+ const { color, onColorChange, shape, ...rest } = props;
16
+ const requestChange = (0, _reactutilities.useEventCallback)((event, data)=>{
17
+ onColorChange === null || onColorChange === void 0 ? void 0 : onColorChange(event, {
18
+ type: 'change',
19
+ event,
20
+ color: data.color
21
+ });
22
+ });
23
+ return {
24
+ components: {
25
+ root: 'div'
26
+ },
27
+ root: _reactutilities.slot.always((0, _reactutilities.getIntrinsicElementProps)('div', {
28
+ ref,
29
+ ...rest
30
+ }), {
31
+ elementType: 'div'
32
+ }),
33
+ color,
34
+ requestChange,
35
+ shape
36
+ };
37
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorPicker/useColorPicker.ts"],"sourcesContent":["import * as React from 'react';\nimport { getIntrinsicElementProps, slot, useEventCallback } from '@fluentui/react-utilities';\nimport type { ColorPickerProps, ColorPickerState } from './ColorPicker.types';\n/**\n * Create the state required to render ColorPicker.\n *\n * The returned state can be modified with hooks such as useColorPickerStyles_unstable,\n * before being passed to renderColorPicker_unstable.\n *\n * @param props - props from this instance of ColorPicker\n * @param ref - reference to root HTMLDivElement of ColorPicker\n */\nexport const useColorPicker_unstable = (props: ColorPickerProps, ref: React.Ref<HTMLDivElement>): ColorPickerState => {\n const { color, onColorChange, shape, ...rest } = props;\n\n const requestChange: ColorPickerState['requestChange'] = useEventCallback((event, data) => {\n onColorChange?.(event, {\n type: 'change',\n event,\n color: data.color,\n });\n });\n\n return {\n components: {\n root: 'div',\n },\n root: slot.always(\n getIntrinsicElementProps('div', {\n ref,\n ...rest,\n }),\n { elementType: 'div' },\n ),\n color,\n requestChange,\n shape,\n };\n};\n"],"names":["useColorPicker_unstable","props","ref","color","onColorChange","shape","rest","requestChange","useEventCallback","event","data","type","components","root","slot","always","getIntrinsicElementProps","elementType"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAYaA;;;eAAAA;;;;iEAZU;gCAC0C;AAW1D,MAAMA,0BAA0B,CAACC,OAAyBC;IAC/D,MAAM,EAAEC,KAAK,EAAEC,aAAa,EAAEC,KAAK,EAAE,GAAGC,MAAM,GAAGL;IAEjD,MAAMM,gBAAmDC,IAAAA,gCAAAA,EAAiB,CAACC,OAAOC;QAChFN,kBAAAA,QAAAA,kBAAAA,KAAAA,IAAAA,KAAAA,IAAAA,cAAgBK,OAAO;YACrBE,MAAM;YACNF;YACAN,OAAOO,KAAKP,KAAK;QACnB;IACF;IAEA,OAAO;QACLS,YAAY;YACVC,MAAM;QACR;QACAA,MAAMC,oBAAAA,CAAKC,MAAM,CACfC,IAAAA,wCAAAA,EAAyB,OAAO;YAC9Bd;YACA,GAAGI,IAAI;QACT,IACA;YAAEW,aAAa;QAAM;QAEvBd;QACAI;QACAF;IACF;AACF"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ colorPickerClassNames: function() {
13
+ return colorPickerClassNames;
14
+ },
15
+ useColorPickerStyles_unstable: function() {
16
+ return useColorPickerStyles_unstable;
17
+ }
18
+ });
19
+ const _react = require("@griffel/react");
20
+ const colorPickerClassNames = {
21
+ root: 'fui-ColorPicker'
22
+ };
23
+ /**
24
+ * Styles for the root slot
25
+ */ const useStyles = /*#__PURE__*/ (0, _react.__styles)({
26
+ root: {
27
+ mc9l5x: "f22iagw",
28
+ Beiy3e4: "f1vx9l62",
29
+ i8kkvl: 0,
30
+ Belr9w4: 0,
31
+ rmohyg: "f7e3wsx"
32
+ }
33
+ }, {
34
+ d: [
35
+ ".f22iagw{display:flex;}",
36
+ ".f1vx9l62{flex-direction:column;}",
37
+ [
38
+ ".f7e3wsx{gap:var(--spacingVerticalXS);}",
39
+ {
40
+ p: -1
41
+ }
42
+ ]
43
+ ]
44
+ });
45
+ const useColorPickerStyles_unstable = (state)=>{
46
+ 'use no memo';
47
+ const styles = useStyles();
48
+ state.root.className = (0, _react.mergeClasses)(colorPickerClassNames.root, styles.root, state.root.className);
49
+ return state;
50
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["useColorPickerStyles.styles.js"],"sourcesContent":["import { makeStyles, mergeClasses } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nexport const colorPickerClassNames = {\n root: 'fui-ColorPicker'\n};\n/**\n * Styles for the root slot\n */ const useStyles = makeStyles({\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: tokens.spacingVerticalXS\n }\n});\n/**\n * Apply styling to the ColorPicker slots based on the state\n */ export const useColorPickerStyles_unstable = (state)=>{\n 'use no memo';\n const styles = useStyles();\n state.root.className = mergeClasses(colorPickerClassNames.root, styles.root, state.root.className);\n return state;\n};\n"],"names":["colorPickerClassNames","useColorPickerStyles_unstable","root","useStyles","__styles","mc9l5x","Beiy3e4","i8kkvl","Belr9w4","rmohyg","d","p","state","styles","className","mergeClasses"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAEaA,qBAAqB;eAArBA;;IAcIC,6BAA6B;eAA7BA;;;uBAhBwB;AAElC,MAAMD,wBAAwB;IACjCE,MAAM;AACV;AACA;;CAEA,GAAI,MAAMC,YAAS,WAAA,GAAGC,IAAAA,eAAA,EAAA;IAAAF,MAAA;QAAAG,QAAA;QAAAC,SAAA;QAAAC,QAAA;QAAAC,SAAA;QAAAC,QAAA;IAAA;AAAA,GAAA;IAAAC,GAAA;QAAA;QAAA;QAAA;YAAA;YAAA;gBAAAC,GAAA,CAAA;YAAA;SAAA;KAAA;AAAA;AASX,MAAMV,gCAAiCW,CAAAA;IAC9C;IACA,MAAMC,SAASV;IACfS,MAAMV,IAAI,CAACY,SAAS,GAAGC,IAAAA,mBAAY,EAACf,sBAAsBE,IAAI,EAAEW,OAAOX,IAAI,EAAEU,MAAMV,IAAI,CAACY,SAAS;IACjG,OAAOF;AACX"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "ColorSlider", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return ColorSlider;
9
+ }
10
+ });
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
13
+ const _useColorSlider = require("./useColorSlider");
14
+ const _renderColorSlider = require("./renderColorSlider");
15
+ const _useColorSliderStylesstyles = require("./useColorSliderStyles.styles");
16
+ const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
17
+ const ColorSlider = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
18
+ const state = (0, _useColorSlider.useColorSlider_unstable)(props, ref);
19
+ (0, _useColorSliderStylesstyles.useColorSliderStyles_unstable)(state);
20
+ (0, _reactsharedcontexts.useCustomStyleHook_unstable)('useColorSliderStyles_unstable')(state);
21
+ return (0, _renderColorSlider.renderColorSlider_unstable)(state);
22
+ });
23
+ ColorSlider.displayName = 'ColorSlider';
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorSlider/ColorSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useColorSlider_unstable } from './useColorSlider';\nimport { renderColorSlider_unstable } from './renderColorSlider';\nimport { useColorSliderStyles_unstable } from './useColorSliderStyles.styles';\nimport type { ColorSliderProps } from './ColorSlider.types';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * ColorSlider component\n */\nexport const ColorSlider: ForwardRefComponent<ColorSliderProps> = React.forwardRef((props, ref) => {\n const state = useColorSlider_unstable(props, ref);\n\n useColorSliderStyles_unstable(state);\n useCustomStyleHook_unstable('useColorSliderStyles_unstable')(state);\n\n return renderColorSlider_unstable(state);\n});\n\nColorSlider.displayName = 'ColorSlider';\n"],"names":["ColorSlider","React","forwardRef","props","ref","state","useColorSlider_unstable","useColorSliderStyles_unstable","useCustomStyleHook_unstable","renderColorSlider_unstable","displayName"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BAWaA;;;eAAAA;;;;iEAXU;gCAEiB;mCACG;4CACG;qCAEF;AAKrC,MAAMA,cAAAA,WAAAA,GAAqDC,OAAMC,UAAU,CAAC,CAACC,OAAOC;IACzF,MAAMC,QAAQC,IAAAA,uCAAAA,EAAwBH,OAAOC;IAE7CG,IAAAA,yDAAAA,EAA8BF;IAC9BG,IAAAA,gDAAAA,EAA4B,iCAAiCH;IAE7D,OAAOI,IAAAA,6CAAAA,EAA2BJ;AACpC;AAEAL,YAAYU,WAAW,GAAG"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
6
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorSlider/ColorSlider.types.ts"],"sourcesContent":["import * as React from 'react';\nimport type { ComponentProps, ComponentState, Slot, EventHandler, EventData } from '@fluentui/react-utilities';\nimport type { HsvColor } from '../../types/color';\nimport type { ColorPickerProps } from '../ColorPicker/ColorPicker.types';\n\nexport type SliderOnChangeData = EventData<'change', React.ChangeEvent<HTMLInputElement>> & {\n color: HsvColor;\n};\n\nexport type ColorSliderSlots = {\n root: NonNullable<Slot<'div'>>;\n rail: NonNullable<Slot<'div'>>;\n thumb: NonNullable<Slot<'div'>>;\n input: NonNullable<Slot<'input'>>;\n};\n\nexport type ColorChannel = 'hue' | 'saturation' | 'value';\n\n/**\n * ColorSlider Props\n */\nexport type ColorSliderProps = Omit<\n ComponentProps<Partial<ColorSliderSlots>, 'input'>,\n 'defaultValue' | 'onChange' | 'value' | 'color'\n> &\n Pick<ColorPickerProps, 'shape'> & {\n /**\n * Color channel of the Slider.\n * @default `hue`\n */\n channel?: ColorChannel;\n\n /**\n * Triggers a callback when the value has been changed. This will be called on every individual step.\n */\n onChange?: EventHandler<SliderOnChangeData>;\n\n /**\n * Render the Slider in a vertical orientation, smallest value on the bottom.\n * @default `false`\n */\n vertical?: boolean;\n\n /**\n * Color of the ColorPicker\n */\n color?: HsvColor;\n\n /**\n * The starting color for an uncontrolled ColorSlider.\n */\n defaultColor?: HsvColor;\n };\n\n/**\n * State used in rendering ColorSlider\n */\nexport type ColorSliderState = ComponentState<ColorSliderSlots> &\n Pick<ColorSliderProps, 'vertical' | 'shape' | 'channel'>;\n"],"names":[],"rangeMappings":";;;;;","mappings":";;;;;iEAAuB"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ ColorSlider: function() {
13
+ return _ColorSlider.ColorSlider;
14
+ },
15
+ colorSliderCSSVars: function() {
16
+ return _useColorSliderStylesstyles.colorSliderCSSVars;
17
+ },
18
+ colorSliderClassNames: function() {
19
+ return _useColorSliderStylesstyles.colorSliderClassNames;
20
+ },
21
+ renderColorSlider_unstable: function() {
22
+ return _renderColorSlider.renderColorSlider_unstable;
23
+ },
24
+ useColorSliderStyles_unstable: function() {
25
+ return _useColorSliderStylesstyles.useColorSliderStyles_unstable;
26
+ },
27
+ useColorSlider_unstable: function() {
28
+ return _useColorSlider.useColorSlider_unstable;
29
+ }
30
+ });
31
+ const _ColorSlider = require("./ColorSlider");
32
+ const _renderColorSlider = require("./renderColorSlider");
33
+ const _useColorSlider = require("./useColorSlider");
34
+ const _useColorSliderStylesstyles = require("./useColorSliderStyles.styles");
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorSlider/index.ts"],"sourcesContent":["export { ColorSlider } from './ColorSlider';\nexport type { ColorSliderProps, ColorSliderSlots, ColorSliderState, SliderOnChangeData } from './ColorSlider.types';\nexport { renderColorSlider_unstable } from './renderColorSlider';\nexport { useColorSlider_unstable } from './useColorSlider';\nexport {\n colorSliderCSSVars,\n colorSliderClassNames,\n useColorSliderStyles_unstable,\n} from './useColorSliderStyles.styles';\n"],"names":["ColorSlider","colorSliderCSSVars","colorSliderClassNames","renderColorSlider_unstable","useColorSliderStyles_unstable","useColorSlider_unstable"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;;;;IAASA,WAAW;eAAXA,wBAAW;;IAKlBC,kBAAkB;eAAlBA,8CAAkB;;IAClBC,qBAAqB;eAArBA,iDAAqB;;IAJdC,0BAA0B;eAA1BA,6CAA0B;;IAKjCC,6BAA6B;eAA7BA,yDAA6B;;IAJtBC,uBAAuB;eAAvBA,uCAAuB;;;6BAHJ;mCAEe;gCACH;4CAKjC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "renderColorSlider_unstable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return renderColorSlider_unstable;
9
+ }
10
+ });
11
+ const _jsxruntime = require("@fluentui/react-jsx-runtime/jsx-runtime");
12
+ const _reactutilities = require("@fluentui/react-utilities");
13
+ const renderColorSlider_unstable = (state)=>{
14
+ (0, _reactutilities.assertSlots)(state);
15
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(state.root, {
16
+ children: [
17
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(state.input, {}),
18
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(state.rail, {}),
19
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(state.thumb, {})
20
+ ]
21
+ });
22
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorSlider/renderColorSlider.tsx"],"sourcesContent":["/** @jsxRuntime automatic */\n/** @jsxImportSource @fluentui/react-jsx-runtime */\n\nimport { assertSlots } from '@fluentui/react-utilities';\nimport type { ColorSliderState, ColorSliderSlots } from './ColorSlider.types';\n\n/**\n * Render the final JSX of ColorSlider\n */\nexport const renderColorSlider_unstable = (state: ColorSliderState) => {\n assertSlots<ColorSliderSlots>(state);\n\n return (\n <state.root>\n <state.input />\n <state.rail />\n <state.thumb />\n </state.root>\n );\n};\n"],"names":["renderColorSlider_unstable","state","assertSlots","_jsxs","root","_jsx","input","rail","thumb"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;","mappings":";;;;+BASaA;;;eAAAA;;;4BARb;gCAE4B;AAMrB,MAAMA,6BAA6B,CAACC;IACzCC,IAAAA,2BAAAA,EAA8BD;IAE9B,OAAA,WAAA,GACEE,IAAAA,gBAAA,EAACF,MAAMG,IAAI,EAAA;;0BACTC,IAAAA,eAAA,EAACJ,MAAMK,KAAK,EAAA,CAAA;0BACZD,IAAAA,eAAA,EAACJ,MAAMM,IAAI,EAAA,CAAA;0BACXF,IAAAA,eAAA,EAACJ,MAAMO,KAAK,EAAA,CAAA;;;AAGlB"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "useColorSlider_unstable", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return useColorSlider_unstable;
9
+ }
10
+ });
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
13
+ const _tinycolor = require("@ctrl/tinycolor");
14
+ const _reactutilities = require("@fluentui/react-utilities");
15
+ const _useColorSliderStylesstyles = require("./useColorSliderStyles.styles");
16
+ const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
17
+ const _colorPicker = require("../../contexts/colorPicker");
18
+ const _constants = require("../../utils/constants");
19
+ const _getPercent = require("../../utils/getPercent");
20
+ const _createHsvColor = require("../../utils/createHsvColor");
21
+ const _adjustChannel = require("../../utils/adjustChannel");
22
+ const useColorSlider_unstable = (props, ref)=>{
23
+ 'use no memo';
24
+ const { dir } = (0, _reactsharedcontexts.useFluent_unstable)();
25
+ const onChangeFromContext = (0, _colorPicker.useColorPickerContextValue_unstable)((ctx)=>ctx.requestChange);
26
+ const colorFromContext = (0, _colorPicker.useColorPickerContextValue_unstable)((ctx)=>ctx.color);
27
+ const shapeFromContext = (0, _colorPicker.useColorPickerContextValue_unstable)((ctx)=>ctx.shape);
28
+ const nativeProps = (0, _reactutilities.getPartitionedNativeProps)({
29
+ props,
30
+ primarySlotTagName: 'input',
31
+ excludedPropNames: [
32
+ 'onChange',
33
+ 'color'
34
+ ]
35
+ });
36
+ const { color, channel = 'hue', onChange = onChangeFromContext, shape = shapeFromContext, vertical, root, input, rail, thumb } = props;
37
+ const hsvColor = color || colorFromContext;
38
+ const hslColor = (0, _tinycolor.tinycolor)(hsvColor).toHsl();
39
+ const [currentColor, setCurrentColor] = (0, _reactutilities.useControllableState)({
40
+ defaultState: props.defaultColor,
41
+ state: hsvColor,
42
+ initialState: _constants.INITIAL_COLOR_HSV
43
+ });
44
+ const MAX = channel === 'hue' ? _constants.HUE_MAX : _constants.MAX;
45
+ const valueChannelActions = {
46
+ hue: (0, _adjustChannel.clampValue)(currentColor.h),
47
+ saturation: (0, _adjustChannel.clampValue)(currentColor.s * 100),
48
+ value: (0, _adjustChannel.clampValue)(currentColor.v * 100)
49
+ };
50
+ const clampedValue = (0, _adjustChannel.adjustChannel)(channel, valueChannelActions);
51
+ const valuePercent = (0, _getPercent.getPercent)(clampedValue, _constants.MIN, MAX);
52
+ const inputOnChange = input === null || input === void 0 ? void 0 : input.onChange;
53
+ const _onChange = (0, _reactutilities.useEventCallback)((event)=>{
54
+ const newValue = Number(event.target.value);
55
+ const colorActions = {
56
+ hue: ()=>(0, _createHsvColor.createHsvColor)({
57
+ ...hsvColor,
58
+ h: newValue
59
+ }),
60
+ saturation: ()=>(0, _createHsvColor.createHsvColor)({
61
+ ...hsvColor,
62
+ s: newValue / 100
63
+ }),
64
+ value: ()=>(0, _createHsvColor.createHsvColor)({
65
+ ...hsvColor,
66
+ v: newValue / 100
67
+ })
68
+ };
69
+ const newColor = (0, _adjustChannel.adjustChannel)(channel, colorActions)();
70
+ setCurrentColor(newColor);
71
+ inputOnChange === null || inputOnChange === void 0 ? void 0 : inputOnChange(event);
72
+ onChange === null || onChange === void 0 ? void 0 : onChange(event, {
73
+ type: 'change',
74
+ event,
75
+ color: newColor
76
+ });
77
+ });
78
+ const rootVariables = {
79
+ [_useColorSliderStylesstyles.colorSliderCSSVars.sliderDirectionVar]: vertical ? '180deg' : dir === 'ltr' ? '-90deg' : '90deg',
80
+ [_useColorSliderStylesstyles.colorSliderCSSVars.sliderProgressVar]: `${valuePercent}%`,
81
+ [_useColorSliderStylesstyles.colorSliderCSSVars.thumbColorVar]: channel === 'hue' ? `hsl(${clampedValue}, 100%, 50%)` : (0, _tinycolor.tinycolor)(hsvColor).toRgbString(),
82
+ [_useColorSliderStylesstyles.colorSliderCSSVars.railColorVar]: channel === 'hue' ? `hsl(${hslColor.h} ${hslColor.s * 100}%, ${hslColor.l * 100}%)` : `hsl(${hslColor.h} 100%, 50%)`
83
+ };
84
+ const state = {
85
+ shape,
86
+ vertical,
87
+ channel,
88
+ components: {
89
+ input: 'input',
90
+ rail: 'div',
91
+ root: 'div',
92
+ thumb: 'div'
93
+ },
94
+ root: _reactutilities.slot.always(root, {
95
+ defaultProps: {
96
+ role: 'group',
97
+ ...nativeProps.root
98
+ },
99
+ elementType: 'div'
100
+ }),
101
+ input: _reactutilities.slot.always(input, {
102
+ defaultProps: {
103
+ id: (0, _reactutilities.useId)('slider-', props.id),
104
+ ref,
105
+ min: _constants.MIN,
106
+ max: MAX,
107
+ tabIndex: 0,
108
+ ['aria-orientation']: vertical ? 'vertical' : 'horizontal',
109
+ ...nativeProps.primary,
110
+ type: 'range'
111
+ },
112
+ elementType: 'input'
113
+ }),
114
+ rail: _reactutilities.slot.always(rail, {
115
+ elementType: 'div'
116
+ }),
117
+ thumb: _reactutilities.slot.always(thumb, {
118
+ elementType: 'div'
119
+ })
120
+ };
121
+ // Root props
122
+ state.root.style = {
123
+ ...rootVariables,
124
+ ...state.root.style
125
+ };
126
+ // Input Props
127
+ state.input.value = clampedValue;
128
+ state.input.onChange = _onChange;
129
+ return state;
130
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/ColorSlider/useColorSlider.ts"],"sourcesContent":["import * as React from 'react';\nimport { tinycolor } from '@ctrl/tinycolor';\nimport {\n getPartitionedNativeProps,\n useId,\n slot,\n useControllableState,\n useEventCallback,\n} from '@fluentui/react-utilities';\nimport { colorSliderCSSVars } from './useColorSliderStyles.styles';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport type { ColorSliderProps, ColorSliderState } from './ColorSlider.types';\nimport { useColorPickerContextValue_unstable } from '../../contexts/colorPicker';\nimport { MIN, HUE_MAX, MAX as COLOR_MAX } from '../../utils/constants';\nimport { getPercent } from '../../utils/getPercent';\nimport { createHsvColor } from '../../utils/createHsvColor';\nimport { clampValue, type ChannelActions, adjustChannel } from '../../utils/adjustChannel';\nimport { HsvColor } from '../../types/color';\nimport { INITIAL_COLOR_HSV } from '../../utils/constants';\n\n/**\n * Create the state required to render ColorSlider.\n *\n * The returned state can be modified with hooks such as useColorSliderStyles_unstable,\n * before being passed to renderColorSlider_unstable.\n *\n * @param props - props from this instance of ColorSlider\n * @param ref - reference to root HTMLInputElement of ColorSlider\n */\nexport const useColorSlider_unstable = (\n props: ColorSliderProps,\n ref: React.Ref<HTMLInputElement>,\n): ColorSliderState => {\n 'use no memo';\n\n const { dir } = useFluent();\n const onChangeFromContext = useColorPickerContextValue_unstable(ctx => ctx.requestChange);\n const colorFromContext = useColorPickerContextValue_unstable(ctx => ctx.color);\n const shapeFromContext = useColorPickerContextValue_unstable(ctx => ctx.shape);\n const nativeProps = getPartitionedNativeProps({\n props,\n primarySlotTagName: 'input',\n excludedPropNames: ['onChange', 'color'],\n });\n\n const {\n color,\n channel = 'hue',\n onChange = onChangeFromContext,\n shape = shapeFromContext,\n vertical,\n // Slots\n root,\n input,\n rail,\n thumb,\n } = props;\n\n const hsvColor = color || colorFromContext;\n const hslColor = tinycolor(hsvColor).toHsl();\n\n const [currentColor, setCurrentColor] = useControllableState<HsvColor>({\n defaultState: props.defaultColor,\n state: hsvColor,\n initialState: INITIAL_COLOR_HSV,\n });\n\n const MAX = channel === 'hue' ? HUE_MAX : COLOR_MAX;\n\n const valueChannelActions: ChannelActions<number> = {\n hue: clampValue(currentColor.h),\n saturation: clampValue(currentColor.s * 100),\n value: clampValue(currentColor.v * 100),\n };\n\n const clampedValue = adjustChannel(channel, valueChannelActions);\n const valuePercent = getPercent(clampedValue, MIN, MAX);\n\n const inputOnChange = input?.onChange;\n\n const _onChange: React.ChangeEventHandler<HTMLInputElement> = useEventCallback(event => {\n const newValue = Number(event.target.value);\n const colorActions: ChannelActions<() => HsvColor> = {\n hue: () => createHsvColor({ ...hsvColor, h: newValue }),\n saturation: () => createHsvColor({ ...hsvColor, s: newValue / 100 }),\n value: () => createHsvColor({ ...hsvColor, v: newValue / 100 }),\n };\n const newColor = adjustChannel(channel, colorActions)();\n\n setCurrentColor(newColor);\n\n inputOnChange?.(event);\n onChange?.(event, {\n type: 'change',\n event,\n color: newColor,\n });\n });\n\n const rootVariables = {\n [colorSliderCSSVars.sliderDirectionVar]: vertical ? '180deg' : dir === 'ltr' ? '-90deg' : '90deg',\n [colorSliderCSSVars.sliderProgressVar]: `${valuePercent}%`,\n [colorSliderCSSVars.thumbColorVar]:\n channel === 'hue' ? `hsl(${clampedValue}, 100%, 50%)` : tinycolor(hsvColor).toRgbString(),\n [colorSliderCSSVars.railColorVar]:\n channel === 'hue'\n ? `hsl(${hslColor.h} ${hslColor.s * 100}%, ${hslColor.l * 100}%)`\n : `hsl(${hslColor.h} 100%, 50%)`,\n };\n\n const state: ColorSliderState = {\n shape,\n vertical,\n channel,\n components: {\n input: 'input',\n rail: 'div',\n root: 'div',\n thumb: 'div',\n },\n root: slot.always(root, {\n defaultProps: {\n role: 'group',\n ...nativeProps.root,\n },\n elementType: 'div',\n }),\n input: slot.always(input, {\n defaultProps: {\n id: useId('slider-', props.id),\n ref,\n min: MIN,\n max: MAX,\n tabIndex: 0,\n ['aria-orientation']: vertical ? 'vertical' : 'horizontal',\n ...nativeProps.primary,\n type: 'range',\n },\n elementType: 'input',\n }),\n rail: slot.always(rail, { elementType: 'div' }),\n thumb: slot.always(thumb, { elementType: 'div' }),\n };\n\n // Root props\n state.root.style = {\n ...rootVariables,\n ...state.root.style,\n };\n\n // Input Props\n state.input.value = clampedValue;\n state.input.onChange = _onChange;\n return state;\n};\n"],"names":["useColorSlider_unstable","props","ref","dir","useFluent","onChangeFromContext","useColorPickerContextValue_unstable","ctx","requestChange","colorFromContext","color","shapeFromContext","shape","nativeProps","getPartitionedNativeProps","primarySlotTagName","excludedPropNames","channel","onChange","vertical","root","input","rail","thumb","hsvColor","hslColor","tinycolor","toHsl","currentColor","setCurrentColor","useControllableState","defaultState","defaultColor","state","initialState","INITIAL_COLOR_HSV","MAX","HUE_MAX","COLOR_MAX","valueChannelActions","hue","clampValue","h","saturation","s","value","v","clampedValue","adjustChannel","valuePercent","getPercent","MIN","inputOnChange","_onChange","useEventCallback","event","newValue","Number","target","colorActions","createHsvColor","newColor","type","rootVariables","colorSliderCSSVars","sliderDirectionVar","sliderProgressVar","thumbColorVar","toRgbString","railColorVar","l","components","slot","always","defaultProps","role","elementType","id","useId","min","max","tabIndex","primary","style"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}