@bigbinary/neetoui 8.3.42 → 8.3.44
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.
- package/dist/ActionDropdown.js +2 -2
- package/dist/Alert.js +3 -3
- package/dist/Checkbox.js +2 -2
- package/dist/ColorPicker.js +3 -3
- package/dist/DatePicker.js +14 -9
- package/dist/DatePicker.js.map +1 -1
- package/dist/Dropdown.js +40 -4
- package/dist/Dropdown.js.map +1 -1
- package/dist/Input.js +2 -2
- package/dist/Modal.js +3 -3
- package/dist/MultiEmailInput.js +2 -2
- package/dist/Pagination.js +2 -2
- package/dist/Pane.js +3 -3
- package/dist/Radio.js +2 -2
- package/dist/Select.js +2 -2
- package/dist/Sidebar.js +2 -2
- package/dist/Slider.js +2 -2
- package/dist/Switch.js +2 -2
- package/dist/Table.js +97 -15
- package/dist/Table.js.map +1 -1
- package/dist/{Textarea-Cn12kZAy.js → Textarea-CoY3q1mA.js} +2 -2
- package/dist/{Textarea-Cn12kZAy.js.map → Textarea-CoY3q1mA.js.map} +1 -1
- package/dist/Textarea.js +3 -3
- package/dist/TimePicker.js +14 -9
- package/dist/TimePicker.js.map +1 -1
- package/dist/Toastr.js +2 -2
- package/dist/TranslationProvider.js +1 -1
- package/dist/Tree.js +2 -2
- package/dist/TreeSelect.js +2 -2
- package/dist/cjs/ActionDropdown.js +2 -2
- package/dist/cjs/Alert.js +3 -3
- package/dist/cjs/Checkbox.js +2 -2
- package/dist/cjs/ColorPicker.js +3 -3
- package/dist/cjs/DatePicker.js +14 -9
- package/dist/cjs/DatePicker.js.map +1 -1
- package/dist/cjs/Dropdown.js +39 -3
- package/dist/cjs/Dropdown.js.map +1 -1
- package/dist/cjs/Input.js +2 -2
- package/dist/cjs/Modal.js +3 -3
- package/dist/cjs/MultiEmailInput.js +2 -2
- package/dist/cjs/Pagination.js +2 -2
- package/dist/cjs/Pane.js +3 -3
- package/dist/cjs/Radio.js +2 -2
- package/dist/cjs/Select.js +2 -2
- package/dist/cjs/Sidebar.js +2 -2
- package/dist/cjs/Slider.js +2 -2
- package/dist/cjs/Switch.js +2 -2
- package/dist/cjs/Table.js +112 -30
- package/dist/cjs/Table.js.map +1 -1
- package/dist/cjs/{Textarea-BF9uNO2J.js → Textarea-DzetFleJ.js} +2 -2
- package/dist/cjs/{Textarea-BF9uNO2J.js.map → Textarea-DzetFleJ.js.map} +1 -1
- package/dist/cjs/Textarea.js +3 -3
- package/dist/cjs/TimePicker.js +14 -9
- package/dist/cjs/TimePicker.js.map +1 -1
- package/dist/cjs/Toastr.js +2 -2
- package/dist/cjs/TranslationProvider.js +1 -1
- package/dist/cjs/Tree.js +2 -2
- package/dist/cjs/TreeSelect.js +2 -2
- package/dist/cjs/{en-BoX6pwZe.js → en-BfFI1Si2.js} +11 -5
- package/dist/cjs/en-BfFI1Si2.js.map +1 -0
- package/dist/cjs/formik/ActionBlock.js +2 -2
- package/dist/cjs/formik/BlockNavigation.js +3 -3
- package/dist/cjs/formik/Checkbox.js +2 -2
- package/dist/cjs/formik/Input.js +2 -2
- package/dist/cjs/formik/MultiEmailInput.js +2 -2
- package/dist/cjs/formik/Radio.js +2 -2
- package/dist/cjs/formik/Select.js +2 -2
- package/dist/cjs/formik/Slider.js +2 -2
- package/dist/cjs/formik/Switch.js +2 -2
- package/dist/cjs/formik/Textarea.js +3 -3
- package/dist/cjs/formik/TreeSelect.js +2 -2
- package/dist/cjs/formik/index.js +4 -4
- package/dist/cjs/{index-CcLewRhe.js → index-BlcVTw2b.js} +2 -2
- package/dist/cjs/{index-CcLewRhe.js.map → index-BlcVTw2b.js.map} +1 -1
- package/dist/cjs/{index-DgV1wB-W.js → index-i_QMY9OC.js} +393 -22
- package/dist/cjs/index-i_QMY9OC.js.map +1 -0
- package/dist/cjs/index.css +1 -1
- package/dist/cjs/index.js +12 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/layouts.js +2 -2
- package/dist/cjs/{useOverlayManager-Bmn7TLVG.js → useOverlayManager-T0kuI6q4.js} +2 -2
- package/dist/cjs/{useOverlayManager-Bmn7TLVG.js.map → useOverlayManager-T0kuI6q4.js.map} +1 -1
- package/dist/cjs/{useRecentlyUsedColors-Cfbf5D9L.js → useRecentlyUsedColors-CThW5BOM.js} +2 -2
- package/dist/cjs/{useRecentlyUsedColors-Cfbf5D9L.js.map → useRecentlyUsedColors-CThW5BOM.js.map} +1 -1
- package/dist/{en-Cj1tGKrT.js → en-DVlE9xuu.js} +11 -5
- package/dist/en-DVlE9xuu.js.map +1 -0
- package/dist/formik/ActionBlock.js +2 -2
- package/dist/formik/BlockNavigation.js +3 -3
- package/dist/formik/Checkbox.js +2 -2
- package/dist/formik/Input.js +2 -2
- package/dist/formik/MultiEmailInput.js +2 -2
- package/dist/formik/Radio.js +2 -2
- package/dist/formik/Select.js +2 -2
- package/dist/formik/Slider.js +2 -2
- package/dist/formik/Switch.js +2 -2
- package/dist/formik/Textarea.js +3 -3
- package/dist/formik/TreeSelect.js +2 -2
- package/dist/formik/index.js +4 -4
- package/dist/{index-DFo1kTlC.js → index-BbZEp6Op.js} +3 -3
- package/dist/{index-DFo1kTlC.js.map → index-BbZEp6Op.js.map} +1 -1
- package/dist/{index-CAbfRu1o.js → index-cQSKx75O.js} +386 -26
- package/dist/index-cQSKx75O.js.map +1 -0
- package/dist/index.css +1 -1
- package/dist/index.js +12 -7
- package/dist/index.js.map +1 -1
- package/dist/layouts.js +2 -2
- package/dist/src/translations/en.json +10 -4
- package/dist/{useOverlayManager-CofhPkL6.js → useOverlayManager-BtEqSq_z.js} +2 -2
- package/dist/{useOverlayManager-CofhPkL6.js.map → useOverlayManager-BtEqSq_z.js.map} +1 -1
- package/dist/{useRecentlyUsedColors-Bz5p2xal.js → useRecentlyUsedColors-C18GFyJC.js} +2 -2
- package/dist/{useRecentlyUsedColors-Bz5p2xal.js.map → useRecentlyUsedColors-C18GFyJC.js.map} +1 -1
- package/package.json +3 -3
- package/dist/cjs/en-BoX6pwZe.js.map +0 -1
- package/dist/cjs/index-DgV1wB-W.js.map +0 -1
- package/dist/cjs/useRestoreScrollPosition-6TwcjUT5.js +0 -233
- package/dist/cjs/useRestoreScrollPosition-6TwcjUT5.js.map +0 -1
- package/dist/en-Cj1tGKrT.js.map +0 -1
- package/dist/index-CAbfRu1o.js.map +0 -1
- package/dist/useRestoreScrollPosition-C0t8os3c.js +0 -222
- package/dist/useRestoreScrollPosition-C0t8os3c.js.map +0 -1
package/dist/{useRecentlyUsedColors-Bz5p2xal.js.map → useRecentlyUsedColors-C18GFyJC.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRecentlyUsedColors-Bz5p2xal.js","sources":["../node_modules/tinycolor2/esm/tinycolor.js","../src/components/ColorPicker/hooks/useRecentlyUsedColors.js"],"sourcesContent":["// This file is autogenerated. It's used to publish ESM to npm.\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\nvar trimLeft = /^\\s+/;\nvar trimRight = /\\s+$/;\nfunction tinycolor(color, opts) {\n color = color ? color : \"\";\n opts = opts || {};\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n var rgb = inputToRGB(color);\n this._originalInput = color, this._r = rgb.r, this._g = rgb.g, this._b = rgb.b, this._a = rgb.a, this._roundA = Math.round(100 * this._a) / 100, this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this._r < 1) this._r = Math.round(this._r);\n if (this._g < 1) this._g = Math.round(this._g);\n if (this._b < 1) this._b = Math.round(this._b);\n this._ok = rgb.ok;\n}\ntinycolor.prototype = {\n isDark: function isDark() {\n return this.getBrightness() < 128;\n },\n isLight: function isLight() {\n return !this.isDark();\n },\n isValid: function isValid() {\n return this._ok;\n },\n getOriginalInput: function getOriginalInput() {\n return this._originalInput;\n },\n getFormat: function getFormat() {\n return this._format;\n },\n getAlpha: function getAlpha() {\n return this._a;\n },\n getBrightness: function getBrightness() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function getLuminance() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r / 255;\n GsRGB = rgb.g / 255;\n BsRGB = rgb.b / 255;\n if (RsRGB <= 0.03928) R = RsRGB / 12.92;else R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n if (GsRGB <= 0.03928) G = GsRGB / 12.92;else G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n if (BsRGB <= 0.03928) B = BsRGB / 12.92;else B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n },\n setAlpha: function setAlpha(value) {\n this._a = boundAlpha(value);\n this._roundA = Math.round(100 * this._a) / 100;\n return this;\n },\n toHsv: function toHsv() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v,\n a: this._a\n };\n },\n toHsvString: function toHsvString() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = Math.round(hsv.h * 360),\n s = Math.round(hsv.s * 100),\n v = Math.round(hsv.v * 100);\n return this._a == 1 ? \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" : \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \" + this._roundA + \")\";\n },\n toHsl: function toHsl() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return {\n h: hsl.h * 360,\n s: hsl.s,\n l: hsl.l,\n a: this._a\n };\n },\n toHslString: function toHslString() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = Math.round(hsl.h * 360),\n s = Math.round(hsl.s * 100),\n l = Math.round(hsl.l * 100);\n return this._a == 1 ? \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" : \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \" + this._roundA + \")\";\n },\n toHex: function toHex(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function toHexString(allow3Char) {\n return \"#\" + this.toHex(allow3Char);\n },\n toHex8: function toHex8(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function toHex8String(allow4Char) {\n return \"#\" + this.toHex8(allow4Char);\n },\n toRgb: function toRgb() {\n return {\n r: Math.round(this._r),\n g: Math.round(this._g),\n b: Math.round(this._b),\n a: this._a\n };\n },\n toRgbString: function toRgbString() {\n return this._a == 1 ? \"rgb(\" + Math.round(this._r) + \", \" + Math.round(this._g) + \", \" + Math.round(this._b) + \")\" : \"rgba(\" + Math.round(this._r) + \", \" + Math.round(this._g) + \", \" + Math.round(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function toPercentageRgb() {\n return {\n r: Math.round(bound01(this._r, 255) * 100) + \"%\",\n g: Math.round(bound01(this._g, 255) * 100) + \"%\",\n b: Math.round(bound01(this._b, 255) * 100) + \"%\",\n a: this._a\n };\n },\n toPercentageRgbString: function toPercentageRgbString() {\n return this._a == 1 ? \"rgb(\" + Math.round(bound01(this._r, 255) * 100) + \"%, \" + Math.round(bound01(this._g, 255) * 100) + \"%, \" + Math.round(bound01(this._b, 255) * 100) + \"%)\" : \"rgba(\" + Math.round(bound01(this._r, 255) * 100) + \"%, \" + Math.round(bound01(this._g, 255) * 100) + \"%, \" + Math.round(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function toName() {\n if (this._a === 0) {\n return \"transparent\";\n }\n if (this._a < 1) {\n return false;\n }\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function toFilter(secondColor) {\n var hex8String = \"#\" + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = \"#\" + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n return \"progid:DXImageTransform.Microsoft.gradient(\" + gradientType + \"startColorstr=\" + hex8String + \",endColorstr=\" + secondHex8String + \")\";\n },\n toString: function toString(format) {\n var formatSet = !!format;\n format = format || this._format;\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n return formattedString || this.toHexString();\n },\n clone: function clone() {\n return tinycolor(this.toString());\n },\n _applyModification: function _applyModification(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function lighten() {\n return this._applyModification(_lighten, arguments);\n },\n brighten: function brighten() {\n return this._applyModification(_brighten, arguments);\n },\n darken: function darken() {\n return this._applyModification(_darken, arguments);\n },\n desaturate: function desaturate() {\n return this._applyModification(_desaturate, arguments);\n },\n saturate: function saturate() {\n return this._applyModification(_saturate, arguments);\n },\n greyscale: function greyscale() {\n return this._applyModification(_greyscale, arguments);\n },\n spin: function spin() {\n return this._applyModification(_spin, arguments);\n },\n _applyCombination: function _applyCombination(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function analogous() {\n return this._applyCombination(_analogous, arguments);\n },\n complement: function complement() {\n return this._applyCombination(_complement, arguments);\n },\n monochromatic: function monochromatic() {\n return this._applyCombination(_monochromatic, arguments);\n },\n splitcomplement: function splitcomplement() {\n return this._applyCombination(_splitcomplement, arguments);\n },\n // Disabled until https://github.com/bgrins/TinyColor/issues/254\n // polyad: function (number) {\n // return this._applyCombination(polyad, [number]);\n // },\n triad: function triad() {\n return this._applyCombination(polyad, [3]);\n },\n tetrad: function tetrad() {\n return this._applyCombination(polyad, [4]);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function (color, opts) {\n if (_typeof(color) == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n } else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n var rgb = {\n r: 0,\n g: 0,\n b: 0\n };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n if (_typeof(color) == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a\n };\n}\n\n// Conversion Functions\n// --------------------\n\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n\n// `rgbToRgb`\n// Handle bounds / percentage checking to conform to CSS color spec\n// <http://www.w3.org/TR/css3-color/>\n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// `rgbToHsl`\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n var h,\n s,\n l = (max + min) / 2;\n if (max == min) {\n h = s = 0; // achromatic\n } else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n return {\n h: h,\n s: s,\n l: l\n };\n}\n\n// `hslToRgb`\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n function hue2rgb(p, q, t) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n if (s === 0) {\n r = g = b = l; // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\n}\n\n// `rgbToHsv`\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n var h,\n s,\n v = max;\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n if (max == min) {\n h = 0; // achromatic\n } else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n return {\n h: h,\n s: s,\n v: v\n };\n}\n\n// `hsvToRgb`\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n return {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\n}\n\n// `rgbToHex`\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n var hex = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join(\"\");\n}\n\n// `rgbaToHex`\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16)), pad2(convertDecimalToHex(a))];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join(\"\");\n}\n\n// `rgbaToArgbHex`\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n var hex = [pad2(convertDecimalToHex(a)), pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\n return hex.join(\"\");\n}\n\n// `equals`\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) return false;\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\ntinycolor.random = function () {\n return tinycolor.fromRatio({\n r: Math.random(),\n g: Math.random(),\n b: Math.random()\n });\n};\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>\n\nfunction _desaturate(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\nfunction _saturate(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\nfunction _greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\nfunction _lighten(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\nfunction _brighten(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var rgb = tinycolor(color).toRgb();\n rgb.r = Math.max(0, Math.min(255, rgb.r - Math.round(255 * -(amount / 100))));\n rgb.g = Math.max(0, Math.min(255, rgb.g - Math.round(255 * -(amount / 100))));\n rgb.b = Math.max(0, Math.min(255, rgb.b - Math.round(255 * -(amount / 100))));\n return tinycolor(rgb);\n}\nfunction _darken(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction _spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>\n\nfunction _complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\nfunction polyad(color, number) {\n if (isNaN(number) || number <= 0) {\n throw new Error(\"Argument to polyad must be a positive number\");\n }\n var hsl = tinycolor(color).toHsl();\n var result = [tinycolor(color)];\n var step = 360 / number;\n for (var i = 1; i < number; i++) {\n result.push(tinycolor({\n h: (hsl.h + i * step) % 360,\n s: hsl.s,\n l: hsl.l\n }));\n }\n return result;\n}\nfunction _splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [tinycolor(color), tinycolor({\n h: (h + 72) % 360,\n s: hsl.s,\n l: hsl.l\n }), tinycolor({\n h: (h + 216) % 360,\n s: hsl.s,\n l: hsl.l\n })];\n}\nfunction _analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n for (hsl.h = (hsl.h - (part * results >> 1) + 720) % 360; --results;) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\nfunction _monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h,\n s = hsv.s,\n v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n while (results--) {\n ret.push(tinycolor({\n h: h,\n s: s,\n v: v\n }));\n v = (v + modification) % 1;\n }\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function (color1, color2, amount) {\n amount = amount === 0 ? 0 : amount || 50;\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n var p = amount / 100;\n var rgba = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b,\n a: (rgb2.a - rgb1.a) * p + rgb1.a\n };\n return tinycolor(rgba);\n};\n\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n\n// `contrast`\n// Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\ntinycolor.readability = function (color1, color2) {\n var c1 = tinycolor(color1);\n var c2 = tinycolor(color2);\n return (Math.max(c1.getLuminance(), c2.getLuminance()) + 0.05) / (Math.min(c1.getLuminance(), c2.getLuminance()) + 0.05);\n};\n\n// `isReadable`\n// Ensure that foreground and background color combinations meet WCAG2 guidelines.\n// The third argument is an optional Object.\n// the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';\n// the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.\n// If the entire object is absent, isReadable defaults to {level:\"AA\",size:\"small\"}.\n\n// *Example*\n// tinycolor.isReadable(\"#000\", \"#111\") => false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function (color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n out = false;\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n};\n\n// `mostReadable`\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function (baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors;\n level = args.level;\n size = args.size;\n for (var i = 0; i < colorList.length; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n if (tinycolor.isReadable(baseColor, bestColor, {\n level: level,\n size: size\n }) || !includeFallbackColors) {\n return bestColor;\n } else {\n args.includeFallbackColors = false;\n return tinycolor.mostReadable(baseColor, [\"#fff\", \"#000\"], args);\n }\n};\n\n// Big List of Colors\n// ------------------\n// <https://www.w3.org/TR/css-color-4/#named-colors>\nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\n darkblue: \"00008b\",\n darkcyan: \"008b8b\",\n darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\",\n darkgreen: \"006400\",\n darkgrey: \"a9a9a9\",\n darkkhaki: \"bdb76b\",\n darkmagenta: \"8b008b\",\n darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\",\n darkorchid: \"9932cc\",\n darkred: \"8b0000\",\n darksalmon: \"e9967a\",\n darkseagreen: \"8fbc8f\",\n darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\",\n darkslategrey: \"2f4f4f\",\n darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\",\n deeppink: \"ff1493\",\n deepskyblue: \"00bfff\",\n dimgray: \"696969\",\n dimgrey: \"696969\",\n dodgerblue: \"1e90ff\",\n firebrick: \"b22222\",\n floralwhite: \"fffaf0\",\n forestgreen: \"228b22\",\n fuchsia: \"f0f\",\n gainsboro: \"dcdcdc\",\n ghostwhite: \"f8f8ff\",\n gold: \"ffd700\",\n goldenrod: \"daa520\",\n gray: \"808080\",\n green: \"008000\",\n greenyellow: \"adff2f\",\n grey: \"808080\",\n honeydew: \"f0fff0\",\n hotpink: \"ff69b4\",\n indianred: \"cd5c5c\",\n indigo: \"4b0082\",\n ivory: \"fffff0\",\n khaki: \"f0e68c\",\n lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\n lightgoldenrodyellow: \"fafad2\",\n lightgray: \"d3d3d3\",\n lightgreen: \"90ee90\",\n lightgrey: \"d3d3d3\",\n lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\",\n lightseagreen: \"20b2aa\",\n lightskyblue: \"87cefa\",\n lightslategray: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\n mediumaquamarine: \"66cdaa\",\n mediumblue: \"0000cd\",\n mediumorchid: \"ba55d3\",\n mediumpurple: \"9370db\",\n mediumseagreen: \"3cb371\",\n mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\",\n mediumturquoise: \"48d1cc\",\n mediumvioletred: \"c71585\",\n midnightblue: \"191970\",\n mintcream: \"f5fffa\",\n mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\",\n navajowhite: \"ffdead\",\n navy: \"000080\",\n oldlace: \"fdf5e6\",\n olive: \"808000\",\n olivedrab: \"6b8e23\",\n orange: \"ffa500\",\n orangered: \"ff4500\",\n orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\",\n palegreen: \"98fb98\",\n paleturquoise: \"afeeee\",\n palevioletred: \"db7093\",\n papayawhip: \"ffefd5\",\n peachpuff: \"ffdab9\",\n peru: \"cd853f\",\n pink: \"ffc0cb\",\n plum: \"dda0dd\",\n powderblue: \"b0e0e6\",\n purple: \"800080\",\n rebeccapurple: \"663399\",\n red: \"f00\",\n rosybrown: \"bc8f8f\",\n royalblue: \"4169e1\",\n saddlebrown: \"8b4513\",\n salmon: \"fa8072\",\n sandybrown: \"f4a460\",\n seagreen: \"2e8b57\",\n seashell: \"fff5ee\",\n sienna: \"a0522d\",\n silver: \"c0c0c0\",\n skyblue: \"87ceeb\",\n slateblue: \"6a5acd\",\n slategray: \"708090\",\n slategrey: \"708090\",\n snow: \"fffafa\",\n springgreen: \"00ff7f\",\n steelblue: \"4682b4\",\n tan: \"d2b48c\",\n teal: \"008080\",\n thistle: \"d8bfd8\",\n tomato: \"ff6347\",\n turquoise: \"40e0d0\",\n violet: \"ee82ee\",\n wheat: \"f5deb3\",\n white: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via `hexNames[hex]`\nvar hexNames = tinycolor.hexNames = flip(names);\n\n// Utilities\n// ---------\n\n// `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`\nfunction flip(o) {\n var flipped = {};\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) n = \"100%\";\n var processPercent = isPercentage(n);\n n = Math.min(max, Math.max(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return n % max / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf(\".\") != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf(\"%\") != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? \"0\" + c : \"\" + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = n * 100 + \"%\";\n }\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\nvar matchers = function () {\n // <http://www.w3.org/TR/css3-values/#integers>\n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // <http://www.w3.org/TR/css3-values/#number-value>\n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n}();\n\n// `isValidCSSUnit`\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see `matchers` above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// `stringInputToObject`\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\nfunction stringInputToObject(color) {\n color = color.replace(trimLeft, \"\").replace(trimRight, \"\").toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n } else if (color == \"transparent\") {\n return {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n format: \"name\"\n };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if (match = matchers.rgb.exec(color)) {\n return {\n r: match[1],\n g: match[2],\n b: match[3]\n };\n }\n if (match = matchers.rgba.exec(color)) {\n return {\n r: match[1],\n g: match[2],\n b: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hsl.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n l: match[3]\n };\n }\n if (match = matchers.hsla.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n l: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hsv.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n v: match[3]\n };\n }\n if (match = matchers.hsva.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n v: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hex8.exec(color)) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if (match = matchers.hex6.exec(color)) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if (match = matchers.hex4.exec(color)) {\n return {\n r: parseIntFromHex(match[1] + \"\" + match[1]),\n g: parseIntFromHex(match[2] + \"\" + match[2]),\n b: parseIntFromHex(match[3] + \"\" + match[3]),\n a: convertHexToDecimal(match[4] + \"\" + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if (match = matchers.hex3.exec(color)) {\n return {\n r: parseIntFromHex(match[1] + \"\" + match[1]),\n g: parseIntFromHex(match[2] + \"\" + match[2]),\n b: parseIntFromHex(match[3] + \"\" + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n return false;\n}\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\n level: \"AA\",\n size: \"small\"\n };\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\n level: level,\n size: size\n };\n}\n\nexport { tinycolor as default };\n","import { useSyncExternalStore } from \"react\";\n\nimport { getFromLocalStorage, setToLocalStorage } from \"utils\";\n\nconst createSyncedStore = ({ initialValue, storageKey }) => {\n const listeners = new Set();\n\n const getStoredValue = () => getFromLocalStorage(storageKey, initialValue);\n\n const setStoredValue = value => {\n setToLocalStorage(storageKey, value);\n listeners.forEach(listener => listener());\n };\n\n const store = {\n value: getStoredValue(),\n getSnapshot: () => store.value,\n setValue: newValue => {\n store.value = newValue;\n setStoredValue(newValue);\n },\n subscribe: callback => {\n listeners.add(callback);\n\n const storageEventHandler = event => {\n if (event.key !== storageKey) return;\n\n store.value = getStoredValue();\n listeners.forEach(listener => listener());\n };\n\n if (listeners.size === 1) {\n window.addEventListener(\"storage\", storageEventHandler);\n }\n\n return () => {\n listeners.delete(callback);\n\n if (listeners.size === 0) {\n window.removeEventListener(\"storage\", storageEventHandler);\n }\n };\n },\n };\n\n return store;\n};\n\nconst store = createSyncedStore({\n initialValue: [],\n storageKey: \"recently-used-colors\",\n});\n\nconst useRecentlyUsedColors = () => [\n useSyncExternalStore(store.subscribe, store.getSnapshot),\n store.setValue,\n];\n\nexport default useRecentlyUsedColors;\n"],"names":["createSyncedStore","_ref","initialValue","storageKey","listeners","Set","getStoredValue","getFromLocalStorage","setStoredValue","value","setToLocalStorage","forEach","listener","store","getSnapshot","setValue","newValue","subscribe","callback","add","storageEventHandler","event","key","size","window","addEventListener","removeEventListener","useRecentlyUsedColors","useSyncExternalStore"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"useRecentlyUsedColors-C18GFyJC.js","sources":["../node_modules/tinycolor2/esm/tinycolor.js","../src/components/ColorPicker/hooks/useRecentlyUsedColors.js"],"sourcesContent":["// This file is autogenerated. It's used to publish ESM to npm.\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\nvar trimLeft = /^\\s+/;\nvar trimRight = /\\s+$/;\nfunction tinycolor(color, opts) {\n color = color ? color : \"\";\n opts = opts || {};\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n var rgb = inputToRGB(color);\n this._originalInput = color, this._r = rgb.r, this._g = rgb.g, this._b = rgb.b, this._a = rgb.a, this._roundA = Math.round(100 * this._a) / 100, this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this._r < 1) this._r = Math.round(this._r);\n if (this._g < 1) this._g = Math.round(this._g);\n if (this._b < 1) this._b = Math.round(this._b);\n this._ok = rgb.ok;\n}\ntinycolor.prototype = {\n isDark: function isDark() {\n return this.getBrightness() < 128;\n },\n isLight: function isLight() {\n return !this.isDark();\n },\n isValid: function isValid() {\n return this._ok;\n },\n getOriginalInput: function getOriginalInput() {\n return this._originalInput;\n },\n getFormat: function getFormat() {\n return this._format;\n },\n getAlpha: function getAlpha() {\n return this._a;\n },\n getBrightness: function getBrightness() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function getLuminance() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r / 255;\n GsRGB = rgb.g / 255;\n BsRGB = rgb.b / 255;\n if (RsRGB <= 0.03928) R = RsRGB / 12.92;else R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n if (GsRGB <= 0.03928) G = GsRGB / 12.92;else G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n if (BsRGB <= 0.03928) B = BsRGB / 12.92;else B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n },\n setAlpha: function setAlpha(value) {\n this._a = boundAlpha(value);\n this._roundA = Math.round(100 * this._a) / 100;\n return this;\n },\n toHsv: function toHsv() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v,\n a: this._a\n };\n },\n toHsvString: function toHsvString() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = Math.round(hsv.h * 360),\n s = Math.round(hsv.s * 100),\n v = Math.round(hsv.v * 100);\n return this._a == 1 ? \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" : \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \" + this._roundA + \")\";\n },\n toHsl: function toHsl() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return {\n h: hsl.h * 360,\n s: hsl.s,\n l: hsl.l,\n a: this._a\n };\n },\n toHslString: function toHslString() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = Math.round(hsl.h * 360),\n s = Math.round(hsl.s * 100),\n l = Math.round(hsl.l * 100);\n return this._a == 1 ? \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" : \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \" + this._roundA + \")\";\n },\n toHex: function toHex(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function toHexString(allow3Char) {\n return \"#\" + this.toHex(allow3Char);\n },\n toHex8: function toHex8(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function toHex8String(allow4Char) {\n return \"#\" + this.toHex8(allow4Char);\n },\n toRgb: function toRgb() {\n return {\n r: Math.round(this._r),\n g: Math.round(this._g),\n b: Math.round(this._b),\n a: this._a\n };\n },\n toRgbString: function toRgbString() {\n return this._a == 1 ? \"rgb(\" + Math.round(this._r) + \", \" + Math.round(this._g) + \", \" + Math.round(this._b) + \")\" : \"rgba(\" + Math.round(this._r) + \", \" + Math.round(this._g) + \", \" + Math.round(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function toPercentageRgb() {\n return {\n r: Math.round(bound01(this._r, 255) * 100) + \"%\",\n g: Math.round(bound01(this._g, 255) * 100) + \"%\",\n b: Math.round(bound01(this._b, 255) * 100) + \"%\",\n a: this._a\n };\n },\n toPercentageRgbString: function toPercentageRgbString() {\n return this._a == 1 ? \"rgb(\" + Math.round(bound01(this._r, 255) * 100) + \"%, \" + Math.round(bound01(this._g, 255) * 100) + \"%, \" + Math.round(bound01(this._b, 255) * 100) + \"%)\" : \"rgba(\" + Math.round(bound01(this._r, 255) * 100) + \"%, \" + Math.round(bound01(this._g, 255) * 100) + \"%, \" + Math.round(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function toName() {\n if (this._a === 0) {\n return \"transparent\";\n }\n if (this._a < 1) {\n return false;\n }\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function toFilter(secondColor) {\n var hex8String = \"#\" + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = \"#\" + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n return \"progid:DXImageTransform.Microsoft.gradient(\" + gradientType + \"startColorstr=\" + hex8String + \",endColorstr=\" + secondHex8String + \")\";\n },\n toString: function toString(format) {\n var formatSet = !!format;\n format = format || this._format;\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n return formattedString || this.toHexString();\n },\n clone: function clone() {\n return tinycolor(this.toString());\n },\n _applyModification: function _applyModification(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function lighten() {\n return this._applyModification(_lighten, arguments);\n },\n brighten: function brighten() {\n return this._applyModification(_brighten, arguments);\n },\n darken: function darken() {\n return this._applyModification(_darken, arguments);\n },\n desaturate: function desaturate() {\n return this._applyModification(_desaturate, arguments);\n },\n saturate: function saturate() {\n return this._applyModification(_saturate, arguments);\n },\n greyscale: function greyscale() {\n return this._applyModification(_greyscale, arguments);\n },\n spin: function spin() {\n return this._applyModification(_spin, arguments);\n },\n _applyCombination: function _applyCombination(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function analogous() {\n return this._applyCombination(_analogous, arguments);\n },\n complement: function complement() {\n return this._applyCombination(_complement, arguments);\n },\n monochromatic: function monochromatic() {\n return this._applyCombination(_monochromatic, arguments);\n },\n splitcomplement: function splitcomplement() {\n return this._applyCombination(_splitcomplement, arguments);\n },\n // Disabled until https://github.com/bgrins/TinyColor/issues/254\n // polyad: function (number) {\n // return this._applyCombination(polyad, [number]);\n // },\n triad: function triad() {\n return this._applyCombination(polyad, [3]);\n },\n tetrad: function tetrad() {\n return this._applyCombination(polyad, [4]);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function (color, opts) {\n if (_typeof(color) == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n } else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n var rgb = {\n r: 0,\n g: 0,\n b: 0\n };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n if (_typeof(color) == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a\n };\n}\n\n// Conversion Functions\n// --------------------\n\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n\n// `rgbToRgb`\n// Handle bounds / percentage checking to conform to CSS color spec\n// <http://www.w3.org/TR/css3-color/>\n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// `rgbToHsl`\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n var h,\n s,\n l = (max + min) / 2;\n if (max == min) {\n h = s = 0; // achromatic\n } else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n return {\n h: h,\n s: s,\n l: l\n };\n}\n\n// `hslToRgb`\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n function hue2rgb(p, q, t) {\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n if (s === 0) {\n r = g = b = l; // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\n}\n\n// `rgbToHsv`\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n var h,\n s,\n v = max;\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n if (max == min) {\n h = 0; // achromatic\n } else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n }\n h /= 6;\n }\n return {\n h: h,\n s: s,\n v: v\n };\n}\n\n// `hsvToRgb`\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n return {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\n}\n\n// `rgbToHex`\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n var hex = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join(\"\");\n}\n\n// `rgbaToHex`\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16)), pad2(convertDecimalToHex(a))];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join(\"\");\n}\n\n// `rgbaToArgbHex`\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n var hex = [pad2(convertDecimalToHex(a)), pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\n return hex.join(\"\");\n}\n\n// `equals`\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) return false;\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\ntinycolor.random = function () {\n return tinycolor.fromRatio({\n r: Math.random(),\n g: Math.random(),\n b: Math.random()\n });\n};\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>\n\nfunction _desaturate(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\nfunction _saturate(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\nfunction _greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\nfunction _lighten(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\nfunction _brighten(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var rgb = tinycolor(color).toRgb();\n rgb.r = Math.max(0, Math.min(255, rgb.r - Math.round(255 * -(amount / 100))));\n rgb.g = Math.max(0, Math.min(255, rgb.g - Math.round(255 * -(amount / 100))));\n rgb.b = Math.max(0, Math.min(255, rgb.b - Math.round(255 * -(amount / 100))));\n return tinycolor(rgb);\n}\nfunction _darken(color, amount) {\n amount = amount === 0 ? 0 : amount || 10;\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction _spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>\n\nfunction _complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\nfunction polyad(color, number) {\n if (isNaN(number) || number <= 0) {\n throw new Error(\"Argument to polyad must be a positive number\");\n }\n var hsl = tinycolor(color).toHsl();\n var result = [tinycolor(color)];\n var step = 360 / number;\n for (var i = 1; i < number; i++) {\n result.push(tinycolor({\n h: (hsl.h + i * step) % 360,\n s: hsl.s,\n l: hsl.l\n }));\n }\n return result;\n}\nfunction _splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [tinycolor(color), tinycolor({\n h: (h + 72) % 360,\n s: hsl.s,\n l: hsl.l\n }), tinycolor({\n h: (h + 216) % 360,\n s: hsl.s,\n l: hsl.l\n })];\n}\nfunction _analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n for (hsl.h = (hsl.h - (part * results >> 1) + 720) % 360; --results;) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\nfunction _monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h,\n s = hsv.s,\n v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n while (results--) {\n ret.push(tinycolor({\n h: h,\n s: s,\n v: v\n }));\n v = (v + modification) % 1;\n }\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function (color1, color2, amount) {\n amount = amount === 0 ? 0 : amount || 50;\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n var p = amount / 100;\n var rgba = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b,\n a: (rgb2.a - rgb1.a) * p + rgb1.a\n };\n return tinycolor(rgba);\n};\n\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n\n// `contrast`\n// Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\ntinycolor.readability = function (color1, color2) {\n var c1 = tinycolor(color1);\n var c2 = tinycolor(color2);\n return (Math.max(c1.getLuminance(), c2.getLuminance()) + 0.05) / (Math.min(c1.getLuminance(), c2.getLuminance()) + 0.05);\n};\n\n// `isReadable`\n// Ensure that foreground and background color combinations meet WCAG2 guidelines.\n// The third argument is an optional Object.\n// the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';\n// the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.\n// If the entire object is absent, isReadable defaults to {level:\"AA\",size:\"small\"}.\n\n// *Example*\n// tinycolor.isReadable(\"#000\", \"#111\") => false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function (color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n out = false;\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n};\n\n// `mostReadable`\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function (baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors;\n level = args.level;\n size = args.size;\n for (var i = 0; i < colorList.length; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n if (tinycolor.isReadable(baseColor, bestColor, {\n level: level,\n size: size\n }) || !includeFallbackColors) {\n return bestColor;\n } else {\n args.includeFallbackColors = false;\n return tinycolor.mostReadable(baseColor, [\"#fff\", \"#000\"], args);\n }\n};\n\n// Big List of Colors\n// ------------------\n// <https://www.w3.org/TR/css-color-4/#named-colors>\nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\n darkblue: \"00008b\",\n darkcyan: \"008b8b\",\n darkgoldenrod: \"b8860b\",\n darkgray: \"a9a9a9\",\n darkgreen: \"006400\",\n darkgrey: \"a9a9a9\",\n darkkhaki: \"bdb76b\",\n darkmagenta: \"8b008b\",\n darkolivegreen: \"556b2f\",\n darkorange: \"ff8c00\",\n darkorchid: \"9932cc\",\n darkred: \"8b0000\",\n darksalmon: \"e9967a\",\n darkseagreen: \"8fbc8f\",\n darkslateblue: \"483d8b\",\n darkslategray: \"2f4f4f\",\n darkslategrey: \"2f4f4f\",\n darkturquoise: \"00ced1\",\n darkviolet: \"9400d3\",\n deeppink: \"ff1493\",\n deepskyblue: \"00bfff\",\n dimgray: \"696969\",\n dimgrey: \"696969\",\n dodgerblue: \"1e90ff\",\n firebrick: \"b22222\",\n floralwhite: \"fffaf0\",\n forestgreen: \"228b22\",\n fuchsia: \"f0f\",\n gainsboro: \"dcdcdc\",\n ghostwhite: \"f8f8ff\",\n gold: \"ffd700\",\n goldenrod: \"daa520\",\n gray: \"808080\",\n green: \"008000\",\n greenyellow: \"adff2f\",\n grey: \"808080\",\n honeydew: \"f0fff0\",\n hotpink: \"ff69b4\",\n indianred: \"cd5c5c\",\n indigo: \"4b0082\",\n ivory: \"fffff0\",\n khaki: \"f0e68c\",\n lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\n lightgoldenrodyellow: \"fafad2\",\n lightgray: \"d3d3d3\",\n lightgreen: \"90ee90\",\n lightgrey: \"d3d3d3\",\n lightpink: \"ffb6c1\",\n lightsalmon: \"ffa07a\",\n lightseagreen: \"20b2aa\",\n lightskyblue: \"87cefa\",\n lightslategray: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\n mediumaquamarine: \"66cdaa\",\n mediumblue: \"0000cd\",\n mediumorchid: \"ba55d3\",\n mediumpurple: \"9370db\",\n mediumseagreen: \"3cb371\",\n mediumslateblue: \"7b68ee\",\n mediumspringgreen: \"00fa9a\",\n mediumturquoise: \"48d1cc\",\n mediumvioletred: \"c71585\",\n midnightblue: \"191970\",\n mintcream: \"f5fffa\",\n mistyrose: \"ffe4e1\",\n moccasin: \"ffe4b5\",\n navajowhite: \"ffdead\",\n navy: \"000080\",\n oldlace: \"fdf5e6\",\n olive: \"808000\",\n olivedrab: \"6b8e23\",\n orange: \"ffa500\",\n orangered: \"ff4500\",\n orchid: \"da70d6\",\n palegoldenrod: \"eee8aa\",\n palegreen: \"98fb98\",\n paleturquoise: \"afeeee\",\n palevioletred: \"db7093\",\n papayawhip: \"ffefd5\",\n peachpuff: \"ffdab9\",\n peru: \"cd853f\",\n pink: \"ffc0cb\",\n plum: \"dda0dd\",\n powderblue: \"b0e0e6\",\n purple: \"800080\",\n rebeccapurple: \"663399\",\n red: \"f00\",\n rosybrown: \"bc8f8f\",\n royalblue: \"4169e1\",\n saddlebrown: \"8b4513\",\n salmon: \"fa8072\",\n sandybrown: \"f4a460\",\n seagreen: \"2e8b57\",\n seashell: \"fff5ee\",\n sienna: \"a0522d\",\n silver: \"c0c0c0\",\n skyblue: \"87ceeb\",\n slateblue: \"6a5acd\",\n slategray: \"708090\",\n slategrey: \"708090\",\n snow: \"fffafa\",\n springgreen: \"00ff7f\",\n steelblue: \"4682b4\",\n tan: \"d2b48c\",\n teal: \"008080\",\n thistle: \"d8bfd8\",\n tomato: \"ff6347\",\n turquoise: \"40e0d0\",\n violet: \"ee82ee\",\n wheat: \"f5deb3\",\n white: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via `hexNames[hex]`\nvar hexNames = tinycolor.hexNames = flip(names);\n\n// Utilities\n// ---------\n\n// `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`\nfunction flip(o) {\n var flipped = {};\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) n = \"100%\";\n var processPercent = isPercentage(n);\n n = Math.min(max, Math.max(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return n % max / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf(\".\") != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf(\"%\") != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? \"0\" + c : \"\" + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = n * 100 + \"%\";\n }\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\nvar matchers = function () {\n // <http://www.w3.org/TR/css3-values/#integers>\n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // <http://www.w3.org/TR/css3-values/#number-value>\n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n}();\n\n// `isValidCSSUnit`\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see `matchers` above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// `stringInputToObject`\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\nfunction stringInputToObject(color) {\n color = color.replace(trimLeft, \"\").replace(trimRight, \"\").toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n } else if (color == \"transparent\") {\n return {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n format: \"name\"\n };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if (match = matchers.rgb.exec(color)) {\n return {\n r: match[1],\n g: match[2],\n b: match[3]\n };\n }\n if (match = matchers.rgba.exec(color)) {\n return {\n r: match[1],\n g: match[2],\n b: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hsl.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n l: match[3]\n };\n }\n if (match = matchers.hsla.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n l: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hsv.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n v: match[3]\n };\n }\n if (match = matchers.hsva.exec(color)) {\n return {\n h: match[1],\n s: match[2],\n v: match[3],\n a: match[4]\n };\n }\n if (match = matchers.hex8.exec(color)) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if (match = matchers.hex6.exec(color)) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if (match = matchers.hex4.exec(color)) {\n return {\n r: parseIntFromHex(match[1] + \"\" + match[1]),\n g: parseIntFromHex(match[2] + \"\" + match[2]),\n b: parseIntFromHex(match[3] + \"\" + match[3]),\n a: convertHexToDecimal(match[4] + \"\" + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if (match = matchers.hex3.exec(color)) {\n return {\n r: parseIntFromHex(match[1] + \"\" + match[1]),\n g: parseIntFromHex(match[2] + \"\" + match[2]),\n b: parseIntFromHex(match[3] + \"\" + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n return false;\n}\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\n level: \"AA\",\n size: \"small\"\n };\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\n level: level,\n size: size\n };\n}\n\nexport { tinycolor as default };\n","import { useSyncExternalStore } from \"react\";\n\nimport { getFromLocalStorage, setToLocalStorage } from \"utils\";\n\nconst createSyncedStore = ({ initialValue, storageKey }) => {\n const listeners = new Set();\n\n const getStoredValue = () => getFromLocalStorage(storageKey, initialValue);\n\n const setStoredValue = value => {\n setToLocalStorage(storageKey, value);\n listeners.forEach(listener => listener());\n };\n\n const store = {\n value: getStoredValue(),\n getSnapshot: () => store.value,\n setValue: newValue => {\n store.value = newValue;\n setStoredValue(newValue);\n },\n subscribe: callback => {\n listeners.add(callback);\n\n const storageEventHandler = event => {\n if (event.key !== storageKey) return;\n\n store.value = getStoredValue();\n listeners.forEach(listener => listener());\n };\n\n if (listeners.size === 1) {\n window.addEventListener(\"storage\", storageEventHandler);\n }\n\n return () => {\n listeners.delete(callback);\n\n if (listeners.size === 0) {\n window.removeEventListener(\"storage\", storageEventHandler);\n }\n };\n },\n };\n\n return store;\n};\n\nconst store = createSyncedStore({\n initialValue: [],\n storageKey: \"recently-used-colors\",\n});\n\nconst useRecentlyUsedColors = () => [\n useSyncExternalStore(store.subscribe, store.getSnapshot),\n store.setValue,\n];\n\nexport default useRecentlyUsedColors;\n"],"names":["createSyncedStore","_ref","initialValue","storageKey","listeners","Set","getStoredValue","getFromLocalStorage","setStoredValue","value","setToLocalStorage","forEach","listener","store","getSnapshot","setValue","newValue","subscribe","callback","add","storageEventHandler","event","key","size","window","addEventListener","removeEventListener","useRecentlyUsedColors","useSyncExternalStore"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neetoui",
|
|
3
|
-
"version": "8.3.
|
|
3
|
+
"version": "8.3.44",
|
|
4
4
|
"author": "BigBinary",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "neetoUI drives the experience at all neeto products",
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
"@bigbinary/neeto-commons-frontend": "^3.0.10",
|
|
91
91
|
"@bigbinary/neeto-datepicker": "^1.0.4",
|
|
92
92
|
"@bigbinary/neeto-hotkeys": "1.0.4",
|
|
93
|
-
"@bigbinary/neeto-icons": "
|
|
93
|
+
"@bigbinary/neeto-icons": "1.20.64",
|
|
94
94
|
"@reach/auto-id": "0.15.0",
|
|
95
95
|
"@rollup/plugin-alias": "^5.1.1",
|
|
96
96
|
"@rollup/plugin-babel": "^6.0.4",
|
|
@@ -208,7 +208,7 @@
|
|
|
208
208
|
"@bigbinary/neeto-commons-frontend": "^3.0.10",
|
|
209
209
|
"@bigbinary/neeto-datepicker": "^1.0.4",
|
|
210
210
|
"@bigbinary/neeto-hotkeys": "1.0.4",
|
|
211
|
-
"@bigbinary/neeto-icons": "
|
|
211
|
+
"@bigbinary/neeto-icons": "1.20.64",
|
|
212
212
|
"@tippyjs/react": "4.2.6",
|
|
213
213
|
"@wojtekmaj/react-timerange-picker": "^5.5.0",
|
|
214
214
|
"antd": "5.16.0",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"en-BoX6pwZe.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-DgV1wB-W.js","sources":["../../src/components/DatePicker/IconOverride.jsx","../../src/components/DatePicker/Provider.jsx","../../src/components/DatePicker/Today.jsx","../../src/components/DatePicker/utils.js","../../src/components/DatePicker/TimezoneSelect.jsx","../../src/components/DatePicker/index.jsx","../../src/components/TimePicker/constants.js","../../src/components/TimePicker/index.jsx"],"sourcesContent":["import React from \"react\";\n\nconst IconOverride = ({ icon: Icon }) => (\n <span className=\"neeto-ui-btn neeto-ui-btn--style-text neeto-ui-btn--size-medium neeto-ui-btn--icon-only\">\n <Icon className=\"neeto-ui-btn__icon\" size={20} />\n </span>\n);\n\nexport default IconOverride;\n","import React from \"react\";\n\nimport { ConfigProvider } from \"antd\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ANTD_LOCALE } from \"components/constants\";\nimport { ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES } from \"utils\";\n\nconst Provider = ({ children }) => {\n const { i18n } = useTranslation();\n\n return (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n DatePicker: {\n activeBg: \"rgb(var(--neeto-ui-white))\",\n activeBorderColor: \"rgb(var(--neeto-ui-primary-500))\",\n addonBg: \"rgb(var(--neeto-ui-gray-100))\",\n cellActiveWithRangeBg: \"rgb(var(--neeto-ui-primary-100))\",\n cellBgDisabled: \"rgb(var(--neeto-ui-gray-100))\",\n cellHoverBg: \"rgb(var(--neeto-ui-gray-200))\",\n cellHoverWithRangeBg: \"rgb(var(--neeto-ui-primary-100))\",\n cellRangeBorderColor: \"rgb(var(--neeto-ui-primary-100))\",\n hoverBg: \"rgb(var(--neeto-ui-white))\",\n hoverBorderColor: \"rgb(var(--neeto-ui-primary-500))\",\n\n // Global overrides\n colorBgContainer: \"rgb(var(--neeto-ui-white))\",\n colorBgElevated: \"rgb(var(--neeto-ui-white))\",\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimaryBorder: \"rgb(var(--neeto-ui-primary-100))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-primary-600))\",\n colorBorder: \"rgb(var(--neeto-ui-gray-300))\",\n colorError: \"rgb(var(--neeto-ui-error-500))\",\n colorErrorHover: \"rgb(var(--neeto-ui-error-600))\",\n colorErrorOutline: \"rgb(var(--neeto-ui-error-100))\",\n colorFillAlter: \"rgb(var(--neeto-ui-gray-100))\",\n colorIcon: \"rgb(var(--neeto-ui-gray-700))\",\n colorIconHover: \"rgb(var(--neeto-ui-gray-800))\",\n colorLink: \"rgb(var(--neeto-ui-primary-500))\",\n colorLinkHover: \"rgb(var(--neeto-ui-primary-600))\",\n colorLinkActive: \"rgb(var(--neeto-ui-primary-800))\",\n colorSplit: \"rgb(var(--neeto-ui-gray-200))\",\n colorText: \"rgb(var(--neeto-ui-gray-800))\",\n colorTextDescription: \"rgb(var(--neeto-ui-gray-700))\",\n colorTextDisabled: \"rgb(var(--neeto-ui-gray-500))\",\n colorTextHeading: \"rgb(var(--neeto-ui-black))\",\n colorTextLightSolid: \"rgb(var(--neeto-ui-white))\",\n colorTextPlaceholder: \"rgb(var(--neeto-ui-gray-400))\",\n colorTextQuaternary: \"rgb(var(--neeto-ui-gray-400))\",\n colorWarning: \"rgb(var(--neeto-ui-warning-500))\",\n colorWarningHover: \"rgb(var(--neeto-ui-warning-600))\",\n colorWarningOutline: \"rgb(var(--neeto-ui-warning-100))\",\n controlItemBgActive: \"rgb(var(--neeto-ui-pastel-purple))\",\n controlItemBgHover: \"rgb(var(--neeto-ui-gray-100))\",\n controlOutline: \"rgb(var(--neeto-ui-gray-300))\",\n\n // Sizes\n cellHeight: 32,\n padding: 22,\n },\n },\n }}\n >\n {children}\n </ConfigProvider>\n );\n};\n\nexport default Provider;\n","/* eslint-disable @bigbinary/neeto/no-dumb-components-with-use-translation */\nimport React from \"react\";\n\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nconst Today = ({ onClick }) => {\n const { t, i18n } = useTranslation();\n\n return (\n <button\n {...{ onClick }}\n className=\"neeto-ui-rounded-md hover:neeto-ui-bg-gray-200 px-2 py-1 text-xs font-medium transition duration-300 ease-in-out\"\n data-cy=\"year-month-mode-today\"\n >\n {getLocale(i18n, t, \"neetoui.datePicker.today\")}\n </button>\n );\n};\n\nexport default Today;\n","import { isPresent } from \"neetocist\";\n\nconst getAllowedDate = (date, minDate, maxDate) => {\n if (isPresent(minDate) && date?.isBefore(minDate)) {\n return minDate;\n }\n\n if (isPresent(maxDate) && date?.isAfter(maxDate)) {\n return maxDate;\n }\n\n return date;\n};\n\nconst getAllowedRange = (dates, minDate, maxDate) =>\n dates.map(item => getAllowedDate(item, minDate, maxDate));\n\nconst getAllowed = (date, minDate, maxDate) =>\n (Array.isArray(date) ? getAllowedRange : getAllowedDate)(\n date,\n minDate,\n maxDate\n );\n\nconst formattedString = (date, dateFormat) =>\n Array.isArray(date)\n ? date.map(item => item?.format(dateFormat))\n : date?.format(dateFormat);\n\nexport { getAllowed, formattedString };\n","import React, { useRef } from \"react\";\nimport { Typography, Select } from \"components\";\nimport { findBy } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { getLocale } from \"utils\";\n\nconst TIMEZONE_OPTIONS = [\n { label: \"Local\", value: undefined },\n { label: \"UTC\", value: \"utc\" },\n];\n\nconst TimezoneSelect = ({ value, onChange }) => {\n const id = \"nui-datepicker-timezone-select\";\n const containerRef = useRef(null);\n const { t, i18n } = useTranslation();\n\n return (\n <div className=\"flex items-center gap-2\" ref={containerRef}>\n <Typography htmlFor={id} style=\"body3\" weight=\"medium\">\n {getLocale(i18n, t, \"neetoui.common.timezone\")}\n </Typography>\n <Select\n {...{ id }}\n className=\"w-40 py-1\"\n data-testid=\"timezone-select\"\n menuPortalTarget={containerRef.current}\n options={TIMEZONE_OPTIONS}\n size=\"small\"\n strategy=\"fixed\"\n value={findBy({ value }, TIMEZONE_OPTIONS)}\n onChange={option => onChange(option.value)}\n />\n </div>\n );\n};\n\nexport default TimezoneSelect;\n","import React, {\n forwardRef,\n useState,\n useEffect,\n useCallback,\n useRef,\n} from \"react\";\n\nimport { DatePicker as AntDatePicker } from \"antd\";\nimport classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport { Left, Right, Calendar, Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\n\nimport { Tag } from \"components\";\nimport Label from \"components/Label\";\nimport { useSyncedRef, useId } from \"hooks\";\nimport {\n convertToDayjsObjects,\n noop,\n hyphenize,\n dayjs,\n getTimezoneAppliedDateTime,\n} from \"utils\";\n\nimport IconOverride from \"./IconOverride\";\nimport Provider from \"./Provider\";\nimport Today from \"./Today\";\nimport { getAllowed, formattedString } from \"./utils\";\nimport TimezoneSelect from \"./TimezoneSelect\";\n\nconst INPUT_SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst { RangePicker } = AntDatePicker;\n\nconst datePickerTypes = { range: RangePicker, date: AntDatePicker };\n\nconst DatePicker = forwardRef(\n (\n {\n className = \"\",\n label = \"\",\n size = INPUT_SIZES.medium,\n dropdownClassName = \"\",\n popupClassName = \"\",\n dateFormat = \"DD/MM/YYYY\",\n timeFormat = \"HH:mm:ss\",\n placeholder,\n onChange = noop,\n onOk = noop,\n picker = \"date\",\n showTime = false,\n type = \"date\",\n nakedInput = false,\n error = \"\",\n defaultValue,\n value: inputValue,\n labelProps,\n required = false,\n allowClear = true,\n maxDate,\n minDate,\n timePickerProps,\n timezone,\n onTimezoneChange,\n onOpenChange,\n onKeyDown,\n ...otherProps\n },\n ref\n ) => {\n const [value, setValue] = useState(inputValue);\n const [mode, setMode] = useState(picker);\n const [pickerValue, setPickerValue] = useState(undefined);\n const id = useId(otherProps.id);\n const datePickerRef = useSyncedRef(ref);\n const isDatePickerOpen = useRef(otherProps.open ?? false);\n\n const Component = datePickerTypes[type?.toLowerCase()];\n const format = showTime ? `${dateFormat} ${timeFormat}` : dateFormat;\n\n const errorId = `error_${id}`;\n\n useEffect(() => {\n setValue(inputValue);\n }, [inputValue]);\n\n useEffect(() => {\n setMode(picker);\n }, [picker]);\n\n const getAllowedValue = useCallback(\n date => getAllowed(date, minDate, maxDate),\n [minDate, maxDate]\n );\n\n const handleOnChange = (date, dateString) => {\n if (type === \"range\" && isNotPresent(date)) {\n return onChange([], dateString);\n }\n\n const allowed = getAllowedValue(getTimezoneAppliedDateTime(date));\n setValue(allowed);\n\n return onChange(allowed, formattedString(allowed, dateFormat));\n };\n\n const handleOnCalendarChange = date => {\n if (type === \"range\" || !date) return;\n\n const allowed = getAllowedValue(getTimezoneAppliedDateTime(date));\n setValue(allowed);\n };\n\n const handleOnOpenChange = open => {\n if (!open && value !== inputValue) {\n onChange(value, formattedString(value, dateFormat));\n }\n\n isDatePickerOpen.current = open;\n onOpenChange?.(open);\n };\n\n const handleOnKeyDown = e => {\n if (!isDatePickerOpen.current) return;\n\n e.stopPropagation();\n onKeyDown?.(e);\n };\n\n const renderExtraFooter = () => (\n <div className=\"flex items-center justify-between px-3\">\n {type !== \"range\" && mode !== \"date\" ? (\n <Today\n onClick={() => {\n const today = dayjs();\n setValue(today);\n onChange(today, formattedString(today, dateFormat));\n setMode(picker);\n }}\n />\n ) : (\n <div />\n )}\n {onTimezoneChange ? (\n <TimezoneSelect value={timezone} onChange={onTimezoneChange} />\n ) : (\n <div />\n )}\n </div>\n );\n\n return (\n <Provider>\n <div className=\"neeto-ui-input__wrapper\">\n {label && <Label {...{ required, ...labelProps }}>{label}</Label>}\n <Component\n data-cy={label ? `${hyphenize(label)}-input` : \"picker-input\"}\n defaultValue={convertToDayjsObjects(defaultValue)}\n placeholder={placeholder ?? format}\n ref={datePickerRef}\n showTime={showTime && { format: timeFormat, ...timePickerProps }}\n value={convertToDayjsObjects(value)}\n className={classnames(\"neeto-ui-date-input\", [className], {\n \"neeto-ui-date-input--small\": size === \"small\",\n \"neeto-ui-date-input--medium\": size === \"medium\",\n \"neeto-ui-date-input--large\": size === \"large\",\n \"neeto-ui-date-input--disabled\": otherProps.disabled,\n \"neeto-ui-date-input--naked\": nakedInput,\n \"neeto-ui-date-input--error\": !!error,\n })}\n popupClassName={classnames(\"neeto-ui-date-time-dropdown\", [\n dropdownClassName, // Will be removed in the next major version\n popupClassName,\n ])}\n onCalendarChange={handleOnCalendarChange}\n onChange={handleOnChange}\n onKeyDown={handleOnKeyDown}\n onOpenChange={handleOnOpenChange}\n {...{\n format,\n maxDate,\n minDate,\n onOk,\n picker,\n renderExtraFooter,\n ...otherProps,\n ...(type === \"date\" && {\n mode,\n pickerValue,\n onPanelChange: (pickerValue, mode) => {\n setPickerValue(pickerValue);\n setMode(mode);\n },\n }),\n }}\n getNow={dayjs}\n nextIcon={<IconOverride icon={Right} />}\n prevIcon={<IconOverride icon={Left} />}\n superNextIcon={<IconOverride icon={Right} />}\n superPrevIcon={<IconOverride icon={Left} />}\n allowClear={\n allowClear && {\n clearIcon: <Close data-cy=\"date-time-clear-icon\" size={16} />,\n }\n }\n suffixIcon={\n timezone ? (\n <Tag className=\"uppercase\" label={timezone} />\n ) : (\n <Calendar size={16} />\n )\n }\n />\n {!!error && typeof error === \"string\" && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n </div>\n </Provider>\n );\n }\n);\n\nDatePicker.displayName = \"DatePicker\";\n\nDatePicker.propTypes = {\n /**\n * To provide external classnames to DatePicker component.\n */\n className: PropTypes.string,\n /**\n * To provide external classnames to DatePicker popup.\n */\n popupClassName: PropTypes.string,\n /**\n * To set the text to be displayed above the DatePicker.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To set the size of the DatePicker.\n */\n size: PropTypes.oneOf(Object.values(INPUT_SIZES)),\n /**\n * To set the DatePicker as naked Input field.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the error message to be shown in the DatePicker.\n */\n error: PropTypes.oneOfType([PropTypes.string, PropTypes.bool]),\n /**\n * To set DatePicker as disabled.\n */\n disabled: PropTypes.bool,\n /**\n * To specify custom classnames to be applied to the DatePicker dropdown.\n */\n dropdownClassName: PropTypes.string,\n /**\n * To specify the date format.\n */\n dateFormat: PropTypes.string,\n /**\n * To specify the time format.\n */\n timeFormat: PropTypes.string,\n /**\n * To specify the placeholder text for the DatePicker, if not provided, the format will be used as placeholder.\n */\n placeholder: PropTypes.string,\n /**\n * To specify props to be passed to the time picker.\n */\n timePickerProps: PropTypes.object,\n /**\n * To specify the timezone.\n */\n timezone: PropTypes.string,\n /**\n * For `DateInput`,(date, dateString) => {} <br />\n * For `DateRange`, (date, [startDate, endDate]) => {}\n */\n onChange: PropTypes.func,\n /**\n * Callback function which will be invoked when ok button is clicked in DateInput\n */\n onOk: PropTypes.func,\n /**\n * To specify the type of the picker.\n */\n picker: PropTypes.oneOf([\"date\", \"week\", \"month\", \"quarter\", \"year\"]),\n /**\n * To show time picker\n */\n showTime: PropTypes.bool,\n /**\n * To specify the type of the DatePicker.\n */\n type: PropTypes.oneOf(Object.keys(datePickerTypes)),\n /**\n * To specify the values to be displayed inside the DatePicker.\n */\n value: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n /**\n * To specify the default values to be displayed inside the DatePicker.\n */\n defaultValue: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n /**\n * To specify whether the Date picker is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify whether the Date picker value can be cleared or not.\n */\n allowClear: PropTypes.bool,\n /**\n * To specify the minimum date of the DatePicker.\n */\n minDate: PropTypes.object,\n /**\n * To specify the maximum date of the DatePicker.\n */\n maxDate: PropTypes.object,\n /**\n * Callback function which will be invoked when the DatePicker is opened or closed.\n */\n onOpenChange: PropTypes.func,\n /**\n * Callback function which will be invoked when a key is pressed.\n */\n onKeyDown: PropTypes.func,\n};\n\nexport default DatePicker;\n","import { DatePicker as AntTimePicker } from \"antd\";\n\nconst { RangePicker } = AntTimePicker;\n\nexport const TIME_PICKER_TYPES = {\n range: RangePicker,\n time: AntTimePicker,\n};\n","import React, { forwardRef } from \"react\";\n\nimport { ConfigProvider } from \"antd\";\nimport classnames from \"classnames\";\nimport { Clock } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { Tag } from \"components\";\nimport { ANTD_LOCALE } from \"components/constants\";\nimport Label from \"components/Label\";\nimport { useSyncedRef, useId } from \"hooks\";\nimport {\n convertToDayjsObjects,\n noop,\n hyphenize,\n ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES,\n getLocale,\n getTimezoneAppliedDateTime,\n} from \"utils\";\n\nimport { TIME_PICKER_TYPES } from \"./constants\";\n\nconst INPUT_SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst TIME_PICKER_INTERVAL = {\n hourStep: 1,\n minuteStep: 1,\n secondStep: 1,\n};\n\nconst TimePicker = forwardRef(\n (\n {\n className = \"\",\n label = \"\",\n size = INPUT_SIZES.medium,\n dropdownClassName = \"\",\n popupClassName = \"\",\n format = \"HH:mm:ss\",\n interval = TIME_PICKER_INTERVAL,\n onChange = noop,\n type = \"time\",\n nakedInput = false,\n disabled = false,\n error = \"\",\n defaultValue,\n value,\n labelProps,\n required = false,\n placeholder,\n timezone,\n ...otherProps\n },\n ref\n ) => {\n const { t, i18n } = useTranslation();\n const id = useId(otherProps.id);\n const timePickerRef = useSyncedRef(ref);\n\n const Component = TIME_PICKER_TYPES[type.toLowerCase()];\n\n const errorId = `error_${id}`;\n\n const showTimeLabels = {};\n if (format.includes(\"s\")) {\n showTimeLabels.second = true;\n }\n\n if (format.includes(\"m\")) {\n showTimeLabels.minute = true;\n }\n\n if (format.includes(\"H\") || format.includes(\"h\")) {\n showTimeLabels.hour = true;\n }\n\n const handleOnChange = (time, timeString) => {\n type === \"range\" && !time\n ? onChange([], timeString)\n : onChange(getTimezoneAppliedDateTime(time), timeString);\n };\n\n const panelRender = originalPanel => (\n <div className=\"neeto-ui-date-input-custom-panel\">\n <div className=\"neeto-ui-date-input-custom-panel__header\">\n <ul className=\"neeto-ui-date-input-custom-panel__header-cols\">\n {showTimeLabels.hour && (\n <li className=\"neeto-ui-date-input-custom-panel__header-col\">\n {getLocale(i18n, t, \"neetoui.timePicker.hours\")}\n </li>\n )}\n {showTimeLabels.minute && (\n <li className=\"neeto-ui-date-input-custom-panel__header-col\">\n {getLocale(i18n, t, \"neetoui.timePicker.minutes\")}\n </li>\n )}\n {showTimeLabels.second && (\n <li className=\"neeto-ui-date-input-custom-panel__header-col\">\n {getLocale(i18n, t, \"neetoui.timePicker.seconds\")}\n </li>\n )}\n </ul>\n </div>\n <div className=\"neeto-ui-date-input-custom-panel__body\">\n {originalPanel}\n </div>\n </div>\n );\n\n return (\n <ConfigProvider\n locale={ANTD_LOCALE[i18n.language || \"en\"]}\n theme={{\n token: { ...ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES },\n components: {\n DatePicker: {\n // Global overrides\n colorBgElevated: \"rgb(var(--neeto-ui-white))\",\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n colorPrimaryHover: \"rgb(var(--neeto-ui-primary-600))\",\n colorBorder: \"rgb(var(--neeto-ui-gray-300))\",\n colorLink: \"rgb(var(--neeto-ui-primary-500))\",\n colorLinkHover: \"rgb(var(--neeto-ui-primary-600))\",\n colorText: \"rgb(var(--neeto-ui-gray-800))\",\n colorTextDisabled: \"rgb(var(--neeto-ui-gray-500))\",\n colorTextPlaceholder: \"rgb(var(--neeto-ui-gray-400))\",\n controlItemBgActive: \"rgb(var(--neeto-ui-primary-800))\",\n controlItemBgHover: \"rgb(var(--neeto-ui-gray-100))\",\n controlOutline: \"rgb(var(--neeto-ui-gray-300))\",\n },\n },\n }}\n >\n <div className=\"neeto-ui-input__wrapper\">\n {label && <Label {...{ required, ...labelProps }}>{label}</Label>}\n <Component\n hourStep={interval.hourStep}\n minuteStep={interval.minuteStep}\n ref={timePickerRef}\n secondStep={interval.secondStep}\n className={classnames(\"neeto-ui-time-input\", [className], {\n \"neeto-ui-time-input--small\": size === \"small\",\n \"neeto-ui-time-input--medium\": size === \"medium\",\n \"neeto-ui-time-input--large\": size === \"large\",\n \"neeto-ui-time-input--disabled\": disabled,\n \"neeto-ui-time-input--naked\": nakedInput,\n \"neeto-ui-time-input--error\": error,\n })}\n popupClassName={classnames(\"neeto-ui-date-time-dropdown\", [\n dropdownClassName, // Will be removed in the next major version\n popupClassName,\n ])}\n onChange={handleOnChange}\n {...{ disabled, format, ...otherProps, panelRender }}\n defaultValue={convertToDayjsObjects(defaultValue)}\n mode={undefined}\n picker=\"time\"\n placeholder={placeholder ?? format}\n value={convertToDayjsObjects(value)}\n suffixIcon={\n timezone ? <Tag label={timezone} /> : <Clock size={16} />\n }\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n </div>\n </ConfigProvider>\n );\n }\n);\n\nTimePicker.displayName = \"TimePicker\";\n\nTimePicker.propTypes = {\n /**\n * To provide external classnames to TimePicker component.\n */\n className: PropTypes.string,\n /**\n * To provide external classnames to TimePicker popup component.\n */\n popupClassName: PropTypes.string,\n /**\n * To set the text to be displayed above the TimePicker.\n */\n label: PropTypes.string,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To set the size of the TimePicker.\n */\n size: PropTypes.oneOf(Object.values(INPUT_SIZES)),\n /**\n * To set the TimePicker as naked Input field.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the error message to be shown in the TimePicker.\n */\n error: PropTypes.string,\n /**\n * To specify the time format.\n */\n format: PropTypes.string,\n /**\n * To specify the timezone.\n */\n timezone: PropTypes.string,\n /**\n * To set the placeholder text for the TimePicker, if not provided, the format will be used as placeholder.\n */\n placeholder: PropTypes.string,\n /**\n * To specify the time interval.\n */\n interval: PropTypes.object,\n /**\n * For `TimeInput`,(time, timeString) => {} <br />\n * For `TimeRange`, (time, [startTime, endTime]) => {}\n */\n onChange: PropTypes.func,\n /**\n * To specify the type of the TimePicker.\n */\n type: PropTypes.oneOf([\"time\", \"range\"]),\n /**\n * To set TimePicker as disabled.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the values to be displayed inside the TimePicker.\n */\n value: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n /**\n * To specify custom classnames to be applied to the TimePicker dropdown.\n */\n dropdownClassName: PropTypes.string,\n /**\n * To specify the default values to be displayed inside the TimePicker.\n */\n defaultValue: PropTypes.oneOfType([PropTypes.array, PropTypes.object]),\n /**\n * To specify whether the Time picker is required or not.\n */\n required: PropTypes.bool,\n};\n\nexport default TimePicker;\n"],"names":["IconOverride","_ref","Icon","icon","_jsx","className","children","size","Provider","_useTranslation","useTranslation","i18n","_ConfigProvider","locale","ANTD_LOCALE","language","theme","token","_objectSpread","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","components","DatePicker","activeBg","activeBorderColor","addonBg","cellActiveWithRangeBg","cellBgDisabled","cellHoverBg","cellHoverWithRangeBg","cellRangeBorderColor","hoverBg","hoverBorderColor","colorBgContainer","colorBgElevated","colorPrimary","colorPrimaryBorder","colorPrimaryHover","colorBorder","colorError","colorErrorHover","colorErrorOutline","colorFillAlter","colorIcon","colorIconHover","colorLink","colorLinkHover","colorLinkActive","colorSplit","colorText","colorTextDescription","colorTextDisabled","colorTextHeading","colorTextLightSolid","colorTextPlaceholder","colorTextQuaternary","colorWarning","colorWarningHover","colorWarningOutline","controlItemBgActive","controlItemBgHover","controlOutline","cellHeight","padding","Today","onClick","t","getLocale","getAllowedDate","date","minDate","maxDate","isPresent","isBefore","isAfter","getAllowedRange","dates","map","item","getAllowed","Array","isArray","formattedString","dateFormat","format","TIMEZONE_OPTIONS","label","value","undefined","TimezoneSelect","onChange","id","containerRef","useRef","_jsxs","ref","Typography","htmlFor","style","weight","Select","menuPortalTarget","current","options","strategy","findBy","option","INPUT_SIZES","small","medium","RangePicker","_DatePicker","datePickerTypes","range","forwardRef","_otherProps$open","_ref$className","_ref$label","_ref$size","_ref$dropdownClassNam","dropdownClassName","_ref$popupClassName","popupClassName","_ref$dateFormat","_ref$timeFormat","timeFormat","placeholder","_ref$onChange","noop","_ref$onOk","onOk","_ref$picker","picker","_ref$showTime","showTime","_ref$type","type","_ref$nakedInput","nakedInput","_ref$error","error","defaultValue","inputValue","labelProps","_ref$required","required","_ref$allowClear","allowClear","timePickerProps","timezone","onTimezoneChange","onOpenChange","onKeyDown","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","setValue","_useState3","_useState4","mode","setMode","_useState5","_useState6","pickerValue","setPickerValue","useId","datePickerRef","useSyncedRef","isDatePickerOpen","open","Component","toLowerCase","concat","errorId","useEffect","getAllowedValue","useCallback","handleOnChange","dateString","isNotPresent","allowed","getTimezoneAppliedDateTime","handleOnCalendarChange","handleOnOpenChange","handleOnKeyDown","e","stopPropagation","renderExtraFooter","today","dayjs","Label","hyphenize","convertToDayjsObjects","classnames","disabled","onCalendarChange","onPanelChange","getNow","nextIcon","Right","prevIcon","Left","superNextIcon","superPrevIcon","clearIcon","Close","suffixIcon","Tag","Calendar","displayName","TIME_PICKER_TYPES","time","TIME_PICKER_INTERVAL","hourStep","minuteStep","secondStep","TimePicker","_ref$format","_ref$interval","interval","_ref$disabled","timePickerRef","showTimeLabels","includes","second","minute","hour","timeString","panelRender","originalPanel","Clock"],"mappings":"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"}
|