@bigbinary/neetoui 8.2.53 → 8.2.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/dist/ActionDropdown.js +2 -2
  2. package/dist/Alert.js +3 -3
  3. package/dist/Checkbox.js +2 -2
  4. package/dist/ColorPicker.js +56 -44
  5. package/dist/ColorPicker.js.map +1 -1
  6. package/dist/DatePicker.js +9 -9
  7. package/dist/Dropdown.js +2 -2
  8. package/dist/Input.js +2 -2
  9. package/dist/Modal.js +3 -3
  10. package/dist/MultiEmailInput.js +2 -2
  11. package/dist/Pagination.js +2 -2
  12. package/dist/Pane.js +3 -3
  13. package/dist/Radio.js +2 -2
  14. package/dist/Select.js +4 -3
  15. package/dist/Select.js.map +1 -1
  16. package/dist/Sidebar.js +2 -2
  17. package/dist/Slider.js +2 -2
  18. package/dist/Switch.js +2 -2
  19. package/dist/Table.js +3 -3
  20. package/dist/{Textarea-3-cXauzp.js → Textarea-CRw29PQd.js} +2 -2
  21. package/dist/{Textarea-3-cXauzp.js.map → Textarea-CRw29PQd.js.map} +1 -1
  22. package/dist/Textarea.js +3 -3
  23. package/dist/TimePicker.js +8 -8
  24. package/dist/Toastr.js +2 -2
  25. package/dist/TranslationProvider.js +1 -1
  26. package/dist/Tree.js +2 -2
  27. package/dist/TreeSelect.js +2 -2
  28. package/dist/cjs/ActionDropdown.js +2 -2
  29. package/dist/cjs/Alert.js +3 -3
  30. package/dist/cjs/Checkbox.js +2 -2
  31. package/dist/cjs/ColorPicker.js +59 -47
  32. package/dist/cjs/ColorPicker.js.map +1 -1
  33. package/dist/cjs/DatePicker.js +9 -9
  34. package/dist/cjs/Dropdown.js +2 -2
  35. package/dist/cjs/Input.js +2 -2
  36. package/dist/cjs/Modal.js +3 -3
  37. package/dist/cjs/MultiEmailInput.js +2 -2
  38. package/dist/cjs/Pagination.js +2 -2
  39. package/dist/cjs/Pane.js +3 -3
  40. package/dist/cjs/Radio.js +2 -2
  41. package/dist/cjs/Select.js +4 -3
  42. package/dist/cjs/Select.js.map +1 -1
  43. package/dist/cjs/Sidebar.js +2 -2
  44. package/dist/cjs/Slider.js +2 -2
  45. package/dist/cjs/Switch.js +2 -2
  46. package/dist/cjs/Table.js +3 -3
  47. package/dist/cjs/{Textarea-LBcvW1K5.js → Textarea-BgyETa8O.js} +2 -2
  48. package/dist/cjs/{Textarea-LBcvW1K5.js.map → Textarea-BgyETa8O.js.map} +1 -1
  49. package/dist/cjs/Textarea.js +3 -3
  50. package/dist/cjs/TimePicker.js +8 -8
  51. package/dist/cjs/Toastr.js +2 -2
  52. package/dist/cjs/TranslationProvider.js +1 -1
  53. package/dist/cjs/Tree.js +2 -2
  54. package/dist/cjs/TreeSelect.js +2 -2
  55. package/dist/cjs/{en-1dfvTYgC.js → en-BxFw89Pr.js} +4 -1
  56. package/dist/cjs/en-BxFw89Pr.js.map +1 -0
  57. package/dist/cjs/formik/ActionBlock.js +2 -2
  58. package/dist/cjs/formik/BlockNavigation.js +3 -3
  59. package/dist/cjs/formik/Checkbox.js +2 -2
  60. package/dist/cjs/formik/Input.js +2 -2
  61. package/dist/cjs/formik/MultiEmailInput.js +2 -2
  62. package/dist/cjs/formik/Radio.js +2 -2
  63. package/dist/cjs/formik/Select.js +2 -2
  64. package/dist/cjs/formik/Slider.js +2 -2
  65. package/dist/cjs/formik/Switch.js +2 -2
  66. package/dist/cjs/formik/Textarea.js +3 -3
  67. package/dist/cjs/formik/TreeSelect.js +2 -2
  68. package/dist/cjs/formik/index.js +4 -4
  69. package/dist/cjs/{index-CeDeXLYn.js → index-BhOtyi3g.js} +8 -2
  70. package/dist/cjs/index-BhOtyi3g.js.map +1 -0
  71. package/dist/cjs/{index-CcRFfH3_.js → index-TH9OcQgm.js} +6 -6
  72. package/dist/cjs/{index-CcRFfH3_.js.map → index-TH9OcQgm.js.map} +1 -1
  73. package/dist/cjs/index.js +8 -8
  74. package/dist/cjs/layouts.js +2 -2
  75. package/dist/cjs/{useOverlayManager-DESPn-02.js → useOverlayManager-BtXVAjbj.js} +2 -2
  76. package/dist/cjs/{useOverlayManager-DESPn-02.js.map → useOverlayManager-BtXVAjbj.js.map} +1 -1
  77. package/dist/cjs/{tinycolor-C4a31PPv.js → useRecentlyUsedColors-4OtHJzfd.js} +57 -1
  78. package/dist/cjs/useRecentlyUsedColors-4OtHJzfd.js.map +1 -0
  79. package/dist/cjs/{useRestoreScrollPosition-BK_cjTVt.js → useRestoreScrollPosition-DJuC0n_w.js} +2 -2
  80. package/dist/cjs/{useRestoreScrollPosition-BK_cjTVt.js.map → useRestoreScrollPosition-DJuC0n_w.js.map} +1 -1
  81. package/dist/{en-CJac0MnO.js → en-BOIP5pPR.js} +4 -1
  82. package/dist/en-BOIP5pPR.js.map +1 -0
  83. package/dist/formik/ActionBlock.js +2 -2
  84. package/dist/formik/BlockNavigation.js +3 -3
  85. package/dist/formik/Checkbox.js +2 -2
  86. package/dist/formik/Input.js +2 -2
  87. package/dist/formik/MultiEmailInput.js +2 -2
  88. package/dist/formik/Radio.js +2 -2
  89. package/dist/formik/Select.js +2 -2
  90. package/dist/formik/Slider.js +2 -2
  91. package/dist/formik/Switch.js +2 -2
  92. package/dist/formik/Textarea.js +3 -3
  93. package/dist/formik/TreeSelect.js +2 -2
  94. package/dist/formik/index.js +4 -4
  95. package/dist/{index-CHqRt5LZ.js → index-Cxd2OUoY.js} +6 -6
  96. package/dist/{index-CHqRt5LZ.js.map → index-Cxd2OUoY.js.map} +1 -1
  97. package/dist/{index-qrY3Z55Q.js → index-diCZU7sv.js} +8 -3
  98. package/dist/index-diCZU7sv.js.map +1 -0
  99. package/dist/index.js +8 -8
  100. package/dist/layouts.js +2 -2
  101. package/dist/{useOverlayManager-Dfvl7BcV.js → useOverlayManager-CwoiTegT.js} +2 -2
  102. package/dist/{useOverlayManager-Dfvl7BcV.js.map → useOverlayManager-CwoiTegT.js.map} +1 -1
  103. package/dist/{tinycolor-DX-kZ4bq.js → useRecentlyUsedColors-BuNIVO4w.js} +57 -2
  104. package/dist/useRecentlyUsedColors-BuNIVO4w.js.map +1 -0
  105. package/dist/{useRestoreScrollPosition-DLitthZX.js → useRestoreScrollPosition-Ddj07tNX.js} +2 -2
  106. package/dist/{useRestoreScrollPosition-DLitthZX.js.map → useRestoreScrollPosition-Ddj07tNX.js.map} +1 -1
  107. package/package.json +1 -1
  108. package/src/translations/en.json +3 -0
  109. package/types/ColorPicker.d.ts +1 -0
  110. package/dist/cjs/en-1dfvTYgC.js.map +0 -1
  111. package/dist/cjs/index-CeDeXLYn.js.map +0 -1
  112. package/dist/cjs/tinycolor-C4a31PPv.js.map +0 -1
  113. package/dist/en-CJac0MnO.js.map +0 -1
  114. package/dist/index-qrY3Z55Q.js.map +0 -1
  115. package/dist/tinycolor-DX-kZ4bq.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRecentlyUsedColors-BuNIVO4w.js","sources":["../node_modules/tinycolor2/tinycolor.js","../src/components/ColorPicker/hooks/useRecentlyUsedColors.js"],"sourcesContent":["// TinyColor v1.4.2\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\n(function(Math) {\n\nvar trimLeft = /^\\s+/,\n trimRight = /\\s+$/,\n tinyCounter = 0,\n mathRound = Math.round,\n mathMin = Math.min,\n mathMax = Math.max,\n mathRandom = Math.random;\n\nfunction tinycolor (color, opts) {\n\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\n var rgb = inputToRGB(color);\n this._originalInput = color,\n this._r = rgb.r,\n this._g = rgb.g,\n this._b = rgb.b,\n this._a = rgb.a,\n this._roundA = mathRound(100*this._a) / 100,\n 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 = mathRound(this._r); }\n if (this._g < 1) { this._g = mathRound(this._g); }\n if (this._b < 1) { this._b = mathRound(this._b); }\n\n this._ok = rgb.ok;\n this._tc_id = tinyCounter++;\n}\n\ntinycolor.prototype = {\n isDark: function() {\n return this.getBrightness() < 128;\n },\n isLight: function() {\n return !this.isDark();\n },\n isValid: function() {\n return this._ok;\n },\n getOriginalInput: function() {\n return this._originalInput;\n },\n getFormat: function() {\n return this._format;\n },\n getAlpha: function() {\n return this._a;\n },\n getBrightness: function() {\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() {\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\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(value) {\n this._a = boundAlpha(value);\n this._roundA = mathRound(100*this._a) / 100;\n return this;\n },\n toHsv: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };\n },\n toHsvString: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);\n return (this._a == 1) ?\n \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" :\n \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \"+ this._roundA + \")\";\n },\n toHsl: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };\n },\n toHslString: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);\n return (this._a == 1) ?\n \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" :\n \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \"+ this._roundA + \")\";\n },\n toHex: function(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function(allow3Char) {\n return '#' + this.toHex(allow3Char);\n },\n toHex8: function(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function(allow4Char) {\n return '#' + this.toHex8(allow4Char);\n },\n toRgb: function() {\n return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };\n },\n toRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \")\" :\n \"rgba(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function() {\n return { r: mathRound(bound01(this._r, 255) * 100) + \"%\", g: mathRound(bound01(this._g, 255) * 100) + \"%\", b: mathRound(bound01(this._b, 255) * 100) + \"%\", a: this._a };\n },\n toPercentageRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%)\" :\n \"rgba(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function() {\n if (this._a === 0) {\n return \"transparent\";\n }\n\n if (this._a < 1) {\n return false;\n }\n\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function(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\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n\n return \"progid:DXImageTransform.Microsoft.gradient(\"+gradientType+\"startColorstr=\"+hex8String+\",endColorstr=\"+secondHex8String+\")\";\n },\n toString: function(format) {\n var formatSet = !!format;\n format = format || this._format;\n\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\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\n return formattedString || this.toHexString();\n },\n clone: function() {\n return tinycolor(this.toString());\n },\n\n _applyModification: function(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() {\n return this._applyModification(lighten, arguments);\n },\n brighten: function() {\n return this._applyModification(brighten, arguments);\n },\n darken: function() {\n return this._applyModification(darken, arguments);\n },\n desaturate: function() {\n return this._applyModification(desaturate, arguments);\n },\n saturate: function() {\n return this._applyModification(saturate, arguments);\n },\n greyscale: function() {\n return this._applyModification(greyscale, arguments);\n },\n spin: function() {\n return this._applyModification(spin, arguments);\n },\n\n _applyCombination: function(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function() {\n return this._applyCombination(analogous, arguments);\n },\n complement: function() {\n return this._applyCombination(complement, arguments);\n },\n monochromatic: function() {\n return this._applyCombination(monochromatic, arguments);\n },\n splitcomplement: function() {\n return this._applyCombination(splitcomplement, arguments);\n },\n triad: function() {\n return this._applyCombination(triad, arguments);\n },\n tetrad: function() {\n return this._applyCombination(tetrad, arguments);\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 }\n else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\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\n var rgb = { r: 0, g: 0, b: 0 };\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\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\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 }\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 }\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\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n\n a = boundAlpha(a);\n\n return {\n ok: ok,\n format: color.format || format,\n r: mathMin(255, mathMax(rgb.r, 0)),\n g: mathMin(255, mathMax(rgb.g, 0)),\n b: mathMin(255, mathMax(rgb.b, 0)),\n a: a\n };\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\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if(max == min) {\n h = s = 0; // achromatic\n }\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: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n\n h /= 6;\n }\n\n return { h: h, s: s, l: l };\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\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n\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\n if(s === 0) {\n r = g = b = l; // achromatic\n }\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\n return { r: r * 255, g: g * 255, b: b * 255 };\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\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, v = max;\n\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if(max == min) {\n h = 0; // achromatic\n }\n else {\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\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]\n function hsvToRgb(h, s, v) {\n\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n\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\n return { r: r * 255, g: g * 255, b: b * 255 };\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\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\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\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\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16)),\n pad2(convertDecimalToHex(a))\n ];\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\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\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\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};\n\ntinycolor.random = function() {\n return tinycolor.fromRatio({\n r: mathRandom(),\n g: mathRandom(),\n b: mathRandom()\n });\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}\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}\n\nfunction greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\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}\n\nfunction brighten(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var rgb = tinycolor(color).toRgb();\n rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));\n rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));\n rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));\n return tinycolor(rgb);\n}\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}\n\nfunction triad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction tetrad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),\n tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})\n ];\n}\n\nfunction analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n\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}\n\nfunction monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h, s = hsv.s, v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n\n while (results--) {\n ret.push(tinycolor({ h: h, s: s, v: v}));\n v = (v + modification) % 1;\n }\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\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n\n var p = amount / 100;\n\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\n return tinycolor(rgba);\n};\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\n out = false;\n\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\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\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\n if (tinycolor.isReadable(baseColor, bestColor, {\"level\":level,\"size\":size}) || !includeFallbackColors) {\n return bestColor;\n }\n else {\n args.includeFallbackColors=false;\n return tinycolor.mostReadable(baseColor,[\"#fff\", \"#000\"],args);\n }\n};\n\n\n// Big List of Colors\n// ------------------\n// <http://www.w3.org/TR/css3-color/#svg-color>\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\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\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\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\n var processPercent = isPercentage(n);\n n = mathMin(max, mathMax(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 mathMin(1, mathMax(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\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}\n\nvar matchers = (function() {\n\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\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\n color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color == 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: \"name\" };\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 { r: match[1], g: match[2], b: match[3] };\n }\n if ((match = matchers.rgba.exec(color))) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n if ((match = matchers.hsl.exec(color))) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n if ((match = matchers.hsla.exec(color))) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n if ((match = matchers.hsv.exec(color))) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n if ((match = matchers.hsva.exec(color))) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\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\n return false;\n}\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 || {\"level\":\"AA\", \"size\":\"small\"};\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 {\"level\":level, \"size\":size};\n}\n\n// Node: Export function\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports = tinycolor;\n}\n// AMD/requirejs: Define the module\nelse if (typeof define === 'function' && define.amd) {\n define(function () {return tinycolor;});\n}\n// Browser: Expose to window\nelse {\n window.tinycolor = tinycolor;\n}\n\n})(Math);\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]}
@@ -5,7 +5,7 @@ import { useTranslation } from 'react-i18next';
5
5
  import Dropdown from './Dropdown.js';
6
6
  import Popover from './Popover.js';
7
7
  import Typography from './Typography.js';
8
- import { g as getLocale } from './index-qrY3Z55Q.js';
8
+ import { g as getLocale } from './index-diCZU7sv.js';
9
9
  import { assocPath, prop, isNil } from 'ramda';
10
10
  import { create } from 'zustand';
11
11
 
@@ -210,4 +210,4 @@ var useRestoreScrollPosition = function useRestoreScrollPosition(_ref) {
210
210
  };
211
211
 
212
212
  export { COLUMN_FIXED_VALUES as C, HeaderCellMenu as H, SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT as S, TABLE_SORT_ORDERS as T, URL_SORT_ORDERS as U, SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT as a, useRestoreScrollPosition as u };
213
- //# sourceMappingURL=useRestoreScrollPosition-DLitthZX.js.map
213
+ //# sourceMappingURL=useRestoreScrollPosition-Ddj07tNX.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useRestoreScrollPosition-DLitthZX.js","sources":["../src/hooks/useFuncDebounce.js","../src/components/Table/constants.js","../src/components/Table/components/HeaderCell/HeaderCellMenu.jsx","../src/components/Table/hooks/useRestoreScrollPosition.js"],"sourcesContent":["import { useRef } from \"react\";\n\nconst useFuncDebounce = (func, delay = 350) => {\n const timer = useRef(null);\n const debouncedFunc = (...args) => {\n clearTimeout(timer.current);\n timer.current = setTimeout(() => func(...args), delay);\n };\n debouncedFunc.cancel = () => clearTimeout(timer.current);\n\n return debouncedFunc;\n};\n\nexport default useFuncDebounce;\n","export const URL_SORT_ORDERS = { ascend: \"asc\", descend: \"desc\" };\n\nexport const TABLE_SORT_ORDERS = { asc: \"ascend\", desc: \"descend\" };\n\nexport const COLUMN_ADD_DIRECTION = { left: 0, right: 1 };\n\nexport const SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT = 57;\nexport const SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT = 78;\n\nexport const COLUMN_FIXED_VALUES = { LEFT: \"left\", RIGHT: \"right\" };\n","import React, { useRef } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Check, MenuHorizontal } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Dropdown from \"components/Dropdown\";\nimport Popover from \"components/Popover\";\nimport {\n COLUMN_ADD_DIRECTION,\n TABLE_SORT_ORDERS,\n} from \"components/Table/constants\";\nimport Typography from \"components/Typography\";\nimport { getLocale } from \"utils\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst HeaderCellMenu = ({\n onSort,\n column = {},\n sortedInfo,\n isSortable,\n isAddEnabled,\n isFixedColumn,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isHidable,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n hasMoreActions,\n onMoreActionClick,\n columnTitle = null,\n moreActions = [],\n}) => {\n const { t, i18n } = useTranslation();\n const columnInfoButtonReference = useRef();\n\n return (\n <div onClick={event => event.stopPropagation()}>\n <Dropdown\n appendTo={() => document.body}\n className=\"neeto-ui-flex\"\n icon={MenuHorizontal}\n position=\"auto\"\n strategy=\"fixed\"\n zIndex={99999}\n buttonProps={{\n className: \"neeto-ui-min-h-0 neeto-ui-flex-shrink-0\",\n style: \"text\",\n size: \"medium\",\n \"data-testid\": \"column-menu-button\",\n \"data-dropdown-button-style\": \"more-dropdown\",\n }}\n >\n <Menu\n className=\"neeto-ui-cursor-auto\"\n onMouseDown={event => event.preventDefault()}\n >\n {isSortable && (\n <>\n <MenuItem.Button\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n onClick={() =>\n onSort({\n column,\n columnKey: column.key,\n field: column.dataIndex || column.key,\n order: TABLE_SORT_ORDERS.asc,\n })\n }\n >\n <span>{getLocale(i18n, t, \"neetoui.table.ascending\")}</span>\n {sortedInfo.order === TABLE_SORT_ORDERS.asc &&\n sortedInfo.field === column.dataIndex && (\n <Check className=\"neeto-ui-text-success-500\" size={20} />\n )}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n onClick={() =>\n onSort({\n column,\n columnKey: column.key,\n field: column.dataIndex,\n order: TABLE_SORT_ORDERS.desc,\n })\n }\n >\n <span>{getLocale(i18n, t, \"neetoui.table.descending\")}</span>\n {sortedInfo.order === TABLE_SORT_ORDERS.desc &&\n sortedInfo.field === column.dataIndex && (\n <Check className=\"neeto-ui-text-success-500\" size={20} />\n )}\n </MenuItem.Button>\n </>\n )}\n {isAddEnabled && (\n <>\n <MenuItem.Button\n onClick={() => onAddColumn(COLUMN_ADD_DIRECTION.right)}\n >\n {getLocale(i18n, t, \"neetoui.table.insertColRight\")}\n </MenuItem.Button>\n <MenuItem.Button\n onClick={() => onAddColumn(COLUMN_ADD_DIRECTION.left)}\n >\n {getLocale(i18n, t, \"neetoui.table.insertColLeft\")}\n </MenuItem.Button>\n </>\n )}\n {isPresent(column?.description) && (\n <>\n <MenuItem.Button ref={columnInfoButtonReference}>\n {getLocale(i18n, t, \"neetoui.table.columnInfo\")}\n </MenuItem.Button>\n <Popover\n className=\"neeto-ui-cursor-auto\"\n hideOnClick={false}\n interactiveDebounce={20}\n offset={[0, 15]}\n position=\"right\"\n reference={columnInfoButtonReference}\n strategy=\"fixed\"\n >\n {columnTitle && <Popover.Title>{columnTitle}</Popover.Title>}\n <Typography\n className=\"neeto-ui-whitespace-normal neeto-ui-normal-case neeto-ui-max-w-full neeto-ui-table__column-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {column?.description}\n </Typography>\n </Popover>\n </>\n )}\n {isHidable && (\n <MenuItem.Button onClick={() => onColumnHide(column)}>\n {getLocale(i18n, t, \"neetoui.table.hideColumn\")}\n </MenuItem.Button>\n )}\n {isColumnDeletable && (\n <MenuItem.Button onClick={() => onColumnDelete(column.id)}>\n {getLocale(i18n, t, \"neetoui.table.deleteColumn\")}\n </MenuItem.Button>\n )}\n {isColumnFreezeEnabled && (\n <MenuItem.Button\n onClick={() => onColumnFreeze(isFixedColumn, column)}\n >\n {isFixedColumn\n ? getLocale(i18n, t, \"neetoui.table.unFreezeColumn\")\n : getLocale(i18n, t, \"neetoui.table.freezeColumn\")}\n </MenuItem.Button>\n )}\n {hasMoreActions &&\n moreActions.map((item, index) => (\n <MenuItem.Button\n key={index}\n onClick={() => onMoreActionClick(item.type, column)}\n >\n {item.label}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n </div>\n );\n};\n\nexport default HeaderCellMenu;\n","import { useEffect } from \"react\";\n\nimport { assocPath, isNil, prop } from \"ramda\";\nimport { create } from \"zustand\";\n\nimport useFuncDebounce from \"hooks/useFuncDebounce\";\n\nexport const useScrollStore = create(set => ({\n scrollPositions: {},\n setScrollPosition: (key, position) =>\n set(assocPath([\"scrollPositions\", key], position)),\n}));\n\nexport const useRestoreScrollPosition = ({ tableRef, scrollRef, loading }) => {\n const key = window.location.pathname;\n const scrollPositions = useScrollStore(prop(\"scrollPositions\"));\n const setScrollPosition = useScrollStore(prop(\"setScrollPosition\"));\n\n useEffect(() => {\n if (loading) {\n setScrollPosition(key, 0);\n\n return;\n }\n\n if (scrollRef.current === null || isNil(scrollPositions[key])) return;\n\n setTimeout(() => {\n const position = scrollPositions[key];\n const config = position === 0 ? { index: 0 } : { top: position };\n scrollRef.current?.scrollTo(config);\n });\n }, [key, tableRef, loading]);\n\n const handleScroll = useFuncDebounce(event => {\n setScrollPosition(key, parseInt(event.target.scrollTop));\n });\n\n return { handleScroll };\n};\n"],"names":["useFuncDebounce","func","delay","arguments","length","undefined","timer","useRef","debouncedFunc","_len","args","Array","_key","clearTimeout","current","setTimeout","apply","cancel","URL_SORT_ORDERS","ascend","descend","TABLE_SORT_ORDERS","asc","desc","COLUMN_ADD_DIRECTION","left","right","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","COLUMN_FIXED_VALUES","LEFT","RIGHT","Menu","Dropdown","MenuItem","HeaderCellMenu","_ref","onSort","_ref$column","column","sortedInfo","isSortable","isAddEnabled","isFixedColumn","isColumnDeletable","isColumnFreezeEnabled","isHidable","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","hasMoreActions","onMoreActionClick","_ref$columnTitle","columnTitle","_ref$moreActions","moreActions","_useTranslation","useTranslation","t","i18n","columnInfoButtonReference","React","createElement","onClick","event","stopPropagation","appendTo","document","body","className","icon","MenuHorizontal","position","strategy","zIndex","buttonProps","style","size","onMouseDown","preventDefault","Fragment","Button","columnKey","key","field","dataIndex","order","getLocale","Check","isPresent","description","ref","Popover","hideOnClick","interactiveDebounce","offset","reference","Title","Typography","lineHeight","weight","id","map","item","index","type","label","useScrollStore","create","set","scrollPositions","setScrollPosition","assocPath","useRestoreScrollPosition","tableRef","scrollRef","loading","window","location","pathname","prop","useEffect","isNil","_scrollRef$current","config","top","scrollTo","handleScroll","parseInt","target","scrollTop"],"mappings":"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"}
1
+ {"version":3,"file":"useRestoreScrollPosition-Ddj07tNX.js","sources":["../src/hooks/useFuncDebounce.js","../src/components/Table/constants.js","../src/components/Table/components/HeaderCell/HeaderCellMenu.jsx","../src/components/Table/hooks/useRestoreScrollPosition.js"],"sourcesContent":["import { useRef } from \"react\";\n\nconst useFuncDebounce = (func, delay = 350) => {\n const timer = useRef(null);\n const debouncedFunc = (...args) => {\n clearTimeout(timer.current);\n timer.current = setTimeout(() => func(...args), delay);\n };\n debouncedFunc.cancel = () => clearTimeout(timer.current);\n\n return debouncedFunc;\n};\n\nexport default useFuncDebounce;\n","export const URL_SORT_ORDERS = { ascend: \"asc\", descend: \"desc\" };\n\nexport const TABLE_SORT_ORDERS = { asc: \"ascend\", desc: \"descend\" };\n\nexport const COLUMN_ADD_DIRECTION = { left: 0, right: 1 };\n\nexport const SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT = 57;\nexport const SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT = 78;\n\nexport const COLUMN_FIXED_VALUES = { LEFT: \"left\", RIGHT: \"right\" };\n","import React, { useRef } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { Check, MenuHorizontal } from \"neetoicons\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Dropdown from \"components/Dropdown\";\nimport Popover from \"components/Popover\";\nimport {\n COLUMN_ADD_DIRECTION,\n TABLE_SORT_ORDERS,\n} from \"components/Table/constants\";\nimport Typography from \"components/Typography\";\nimport { getLocale } from \"utils\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst HeaderCellMenu = ({\n onSort,\n column = {},\n sortedInfo,\n isSortable,\n isAddEnabled,\n isFixedColumn,\n isColumnDeletable,\n isColumnFreezeEnabled,\n isHidable,\n onColumnHide,\n onAddColumn,\n onColumnDelete,\n onColumnFreeze,\n hasMoreActions,\n onMoreActionClick,\n columnTitle = null,\n moreActions = [],\n}) => {\n const { t, i18n } = useTranslation();\n const columnInfoButtonReference = useRef();\n\n return (\n <div onClick={event => event.stopPropagation()}>\n <Dropdown\n appendTo={() => document.body}\n className=\"neeto-ui-flex\"\n icon={MenuHorizontal}\n position=\"auto\"\n strategy=\"fixed\"\n zIndex={99999}\n buttonProps={{\n className: \"neeto-ui-min-h-0 neeto-ui-flex-shrink-0\",\n style: \"text\",\n size: \"medium\",\n \"data-testid\": \"column-menu-button\",\n \"data-dropdown-button-style\": \"more-dropdown\",\n }}\n >\n <Menu\n className=\"neeto-ui-cursor-auto\"\n onMouseDown={event => event.preventDefault()}\n >\n {isSortable && (\n <>\n <MenuItem.Button\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n onClick={() =>\n onSort({\n column,\n columnKey: column.key,\n field: column.dataIndex || column.key,\n order: TABLE_SORT_ORDERS.asc,\n })\n }\n >\n <span>{getLocale(i18n, t, \"neetoui.table.ascending\")}</span>\n {sortedInfo.order === TABLE_SORT_ORDERS.asc &&\n sortedInfo.field === column.dataIndex && (\n <Check className=\"neeto-ui-text-success-500\" size={20} />\n )}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-justify-between\"\n onClick={() =>\n onSort({\n column,\n columnKey: column.key,\n field: column.dataIndex,\n order: TABLE_SORT_ORDERS.desc,\n })\n }\n >\n <span>{getLocale(i18n, t, \"neetoui.table.descending\")}</span>\n {sortedInfo.order === TABLE_SORT_ORDERS.desc &&\n sortedInfo.field === column.dataIndex && (\n <Check className=\"neeto-ui-text-success-500\" size={20} />\n )}\n </MenuItem.Button>\n </>\n )}\n {isAddEnabled && (\n <>\n <MenuItem.Button\n onClick={() => onAddColumn(COLUMN_ADD_DIRECTION.right)}\n >\n {getLocale(i18n, t, \"neetoui.table.insertColRight\")}\n </MenuItem.Button>\n <MenuItem.Button\n onClick={() => onAddColumn(COLUMN_ADD_DIRECTION.left)}\n >\n {getLocale(i18n, t, \"neetoui.table.insertColLeft\")}\n </MenuItem.Button>\n </>\n )}\n {isPresent(column?.description) && (\n <>\n <MenuItem.Button ref={columnInfoButtonReference}>\n {getLocale(i18n, t, \"neetoui.table.columnInfo\")}\n </MenuItem.Button>\n <Popover\n className=\"neeto-ui-cursor-auto\"\n hideOnClick={false}\n interactiveDebounce={20}\n offset={[0, 15]}\n position=\"right\"\n reference={columnInfoButtonReference}\n strategy=\"fixed\"\n >\n {columnTitle && <Popover.Title>{columnTitle}</Popover.Title>}\n <Typography\n className=\"neeto-ui-whitespace-normal neeto-ui-normal-case neeto-ui-max-w-full neeto-ui-table__column-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {column?.description}\n </Typography>\n </Popover>\n </>\n )}\n {isHidable && (\n <MenuItem.Button onClick={() => onColumnHide(column)}>\n {getLocale(i18n, t, \"neetoui.table.hideColumn\")}\n </MenuItem.Button>\n )}\n {isColumnDeletable && (\n <MenuItem.Button onClick={() => onColumnDelete(column.id)}>\n {getLocale(i18n, t, \"neetoui.table.deleteColumn\")}\n </MenuItem.Button>\n )}\n {isColumnFreezeEnabled && (\n <MenuItem.Button\n onClick={() => onColumnFreeze(isFixedColumn, column)}\n >\n {isFixedColumn\n ? getLocale(i18n, t, \"neetoui.table.unFreezeColumn\")\n : getLocale(i18n, t, \"neetoui.table.freezeColumn\")}\n </MenuItem.Button>\n )}\n {hasMoreActions &&\n moreActions.map((item, index) => (\n <MenuItem.Button\n key={index}\n onClick={() => onMoreActionClick(item.type, column)}\n >\n {item.label}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n </div>\n );\n};\n\nexport default HeaderCellMenu;\n","import { useEffect } from \"react\";\n\nimport { assocPath, isNil, prop } from \"ramda\";\nimport { create } from \"zustand\";\n\nimport useFuncDebounce from \"hooks/useFuncDebounce\";\n\nexport const useScrollStore = create(set => ({\n scrollPositions: {},\n setScrollPosition: (key, position) =>\n set(assocPath([\"scrollPositions\", key], position)),\n}));\n\nexport const useRestoreScrollPosition = ({ tableRef, scrollRef, loading }) => {\n const key = window.location.pathname;\n const scrollPositions = useScrollStore(prop(\"scrollPositions\"));\n const setScrollPosition = useScrollStore(prop(\"setScrollPosition\"));\n\n useEffect(() => {\n if (loading) {\n setScrollPosition(key, 0);\n\n return;\n }\n\n if (scrollRef.current === null || isNil(scrollPositions[key])) return;\n\n setTimeout(() => {\n const position = scrollPositions[key];\n const config = position === 0 ? { index: 0 } : { top: position };\n scrollRef.current?.scrollTo(config);\n });\n }, [key, tableRef, loading]);\n\n const handleScroll = useFuncDebounce(event => {\n setScrollPosition(key, parseInt(event.target.scrollTop));\n });\n\n return { handleScroll };\n};\n"],"names":["useFuncDebounce","func","delay","arguments","length","undefined","timer","useRef","debouncedFunc","_len","args","Array","_key","clearTimeout","current","setTimeout","apply","cancel","URL_SORT_ORDERS","ascend","descend","TABLE_SORT_ORDERS","asc","desc","COLUMN_ADD_DIRECTION","left","right","SELECT_ALL_ROWS_CALLOUT_DESKTOP_HEIGHT","SELECT_ALL_ROWS_CALLOUT_MOBILE_HEIGHT","COLUMN_FIXED_VALUES","LEFT","RIGHT","Menu","Dropdown","MenuItem","HeaderCellMenu","_ref","onSort","_ref$column","column","sortedInfo","isSortable","isAddEnabled","isFixedColumn","isColumnDeletable","isColumnFreezeEnabled","isHidable","onColumnHide","onAddColumn","onColumnDelete","onColumnFreeze","hasMoreActions","onMoreActionClick","_ref$columnTitle","columnTitle","_ref$moreActions","moreActions","_useTranslation","useTranslation","t","i18n","columnInfoButtonReference","React","createElement","onClick","event","stopPropagation","appendTo","document","body","className","icon","MenuHorizontal","position","strategy","zIndex","buttonProps","style","size","onMouseDown","preventDefault","Fragment","Button","columnKey","key","field","dataIndex","order","getLocale","Check","isPresent","description","ref","Popover","hideOnClick","interactiveDebounce","offset","reference","Title","Typography","lineHeight","weight","id","map","item","index","type","label","useScrollStore","create","set","scrollPositions","setScrollPosition","assocPath","useRestoreScrollPosition","tableRef","scrollRef","loading","window","location","pathname","prop","useEffect","isNil","_scrollRef$current","config","top","scrollTo","handleScroll","parseInt","target","scrollTop"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neetoui",
3
- "version": "8.2.53",
3
+ "version": "8.2.55",
4
4
  "author": "BigBinary",
5
5
  "license": "MIT",
6
6
  "description": "neetoUI drives the experience at all neeto products",
@@ -10,6 +10,9 @@
10
10
  "cancel": "Cancel",
11
11
  "saveChanges": "Save changes"
12
12
  },
13
+ "colorPicker": {
14
+ "recentlyUsed": "Recently used"
15
+ },
13
16
  "datePicker": {
14
17
  "today": "Today"
15
18
  },
@@ -20,6 +20,7 @@ export interface ColorPickerProps {
20
20
  showPicker?: boolean;
21
21
  dropdownProps?: DropdownProps;
22
22
  portalProps?: object;
23
+ showRecentlyUsedColors?: boolean;
23
24
  }
24
25
 
25
26
  const ColorPicker: React.FC<ColorPickerProps>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"en-1dfvTYgC.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-CeDeXLYn.js","sources":["../../src/utils/dayjs/timezonePlugin.js","../../src/utils/dayjs/index.js","../../src/utils/index.js"],"sourcesContent":["const typeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n};\n\nconst dateTimeFormatDefaults = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n};\n\n// Cache time-zone lookups from Intl.DateTimeFormat,\n// as it is a *very* slow method.\nconst dtfCache = {};\nconst getDateTimeFormat = (timezone, options = {}) => {\n const timeZoneName = options.timeZoneName || \"short\";\n const key = `${timezone}|${timeZoneName}`;\n let dtf = dtfCache[key];\n if (!dtf) {\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n hour12: false,\n timeZone: timezone,\n timeZoneName,\n });\n dtfCache[key] = dtf;\n }\n\n return dtf;\n};\n\nconst localeStringifierCache = {};\nconst getLocaleStringifier = timezone => {\n let localeStringifier = localeStringifierCache[timezone];\n if (!localeStringifier) {\n localeStringifier = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n timeZone: timezone,\n });\n localeStringifierCache[timezone] = localeStringifier;\n }\n\n return localeStringifier;\n};\n\n// eslint-disable-next-line no-unused-vars\nexport default (o, c, d) => {\n let defaultTimezone;\n\n const makeFormatParts = (timestamp, timezone, options = {}) => {\n const date = new Date(timestamp);\n const dtf = getDateTimeFormat(timezone, options);\n\n return dtf.formatToParts(date);\n };\n\n const tzOffset = (timestamp, timezone) => {\n const formatResult = makeFormatParts(timestamp, timezone);\n const filled = [];\n for (let i = 0; i < formatResult.length; i += 1) {\n const { type, value } = formatResult[i];\n const pos = typeToPos[type];\n\n if (pos >= 0) {\n filled[pos] = parseInt(value, 10);\n }\n }\n const hour = filled[3];\n // Workaround for the same behavior in different node version\n // https://github.com/nodejs/node/issues/33027\n /* istanbul ignore next */\n const fixedHour = hour === 24 ? 0 : hour;\n const utcString = `${filled[0]}-${filled[1]}-${filled[2]} ${fixedHour}:${filled[4]}:${filled[5]}:000`;\n const utcTs = d.utc(utcString).valueOf();\n let asTS = Number(timestamp);\n const over = asTS % 1000;\n asTS -= over;\n\n return (utcTs - asTS) / (60 * 1000);\n };\n\n // find the right offset a given local time. The o input is our guess, which determines which\n // offset we'll pick in ambiguous cases (e.g. there are two 3 AMs b/c Fallback DST)\n // https://github.com/moment/luxon/blob/master/src/datetime.js#L76\n const fixOffset = (localTS, o0, tz) => {\n // Our UTC time is just a guess because our offset is just a guess\n let utcGuess = localTS - o0 * 60 * 1000;\n // Test whether the zone matches the offset for this ts\n const o2 = tzOffset(utcGuess, tz);\n // If so, offset didn't change and we're done\n if (o0 === o2) {\n return [utcGuess, o0];\n }\n // If not, change the ts by the difference in the offset\n utcGuess -= (o2 - o0) * 60 * 1000;\n // If that gives us the local time we want, we're done\n const o3 = tzOffset(utcGuess, tz);\n if (o2 === o3) {\n return [utcGuess, o2];\n }\n\n // If it's different, we're in a hole time.\n // The offset has changed, but the we don't adjust the time\n return [localTS - Math.min(o2, o3) * 60 * 1000, Math.max(o2, o3)];\n };\n\n const proto = c.prototype;\n\n // eslint-disable-next-line default-param-last\n proto.tz = function (timezone = defaultTimezone, keepLocalTime) {\n const oldOffset = this.utcOffset();\n const date = this.toDate();\n const target = getLocaleStringifier(timezone).format(date);\n const diff = Math.round((date - new Date(target)) / 1000 / 60);\n let ins = d(target)\n .$set(\"millisecond\", this.$ms)\n .utcOffset(-Math.round(date.getTimezoneOffset() / 15) * 15 - diff, true);\n if (keepLocalTime) {\n const newOffset = ins.utcOffset();\n ins = ins.add(oldOffset - newOffset, \"minute\");\n }\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n proto.offsetName = function (type) {\n // type: short(default) / long\n const zone = this.$x.$timezone || d.tz.guess();\n const result = makeFormatParts(this.valueOf(), zone, {\n timeZoneName: type,\n }).find(m => m.type.toLowerCase() === \"timezonename\");\n\n return result && result.value;\n };\n\n const oldStartOf = proto.startOf;\n proto.startOf = function (units, startOf) {\n if (!this.$x || !this.$x.$timezone) {\n return oldStartOf.call(this, units, startOf);\n }\n\n const withoutTz = d(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));\n const startOfWithoutTz = oldStartOf.call(withoutTz, units, startOf);\n\n return startOfWithoutTz.tz(this.$x.$timezone, true);\n };\n\n d.tz = function (input, arg1, arg2) {\n const parseFormat = arg2 && arg1;\n const timezone = arg2 || arg1 || defaultTimezone;\n const previousOffset = tzOffset(Number(d()), timezone);\n if (typeof input !== \"string\") {\n // timestamp number || js Date || Day.js\n return d(input).tz(timezone);\n }\n const localTs = d.utc(input, parseFormat).valueOf();\n const [targetTs, targetOffset] = fixOffset(\n localTs,\n previousOffset,\n timezone\n );\n const ins = d(targetTs).utcOffset(targetOffset);\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n d.tz.guess = function () {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n };\n\n d.tz.setDefault = function (timezone) {\n defaultTimezone = timezone;\n };\n};\n","import pureDayjs from \"dayjs\";\nimport localeData from \"dayjs/plugin/localeData\";\nimport utc from \"dayjs/plugin/utc\";\nimport weekday from \"dayjs/plugin/weekday\";\nimport weekOfYear from \"dayjs/plugin/weekOfYear\";\n\nimport timezone from \"./timezonePlugin\";\n\npureDayjs.extend(weekOfYear);\npureDayjs.extend(weekday);\npureDayjs.extend(localeData);\npureDayjs.extend(utc);\npureDayjs.extend(timezone);\n\nclass LRUCache {\n constructor(limit) {\n this.limit = limit;\n this.cache = new Map();\n }\n\n get(key) {\n const value = this.cache.get(key);\n this.cache.delete(key);\n this.cache.set(key, value);\n\n return value;\n }\n\n set(key, value) {\n if (this.cache.size >= this.limit) {\n const oldestKey = this.cache.keys().next().value;\n this.cache.delete(oldestKey);\n }\n this.cache.set(key, value);\n }\n\n has(key) {\n return this.cache.has(key);\n }\n}\n\nconst hasTimezone = dateString => {\n const timezoneRegex = /Z|[+-]\\d{2}:\\d{2}$|[+-]\\d{4}$|GMT([+-]\\d{4})?$/;\n\n return timezoneRegex.test(dateString);\n};\n\nconst cache = new LRUCache(1000);\n\nconst dayjs = (...args) => {\n const cacheKey = JSON.stringify(args);\n\n if (cache.has(cacheKey) && args[0] !== undefined) return cache.get(cacheKey);\n\n const userTimezone = pureDayjs.tz().$x.$timezone;\n const browserTimezone = pureDayjs.tz.guess();\n const timezone = userTimezone || browserTimezone;\n\n if (userTimezone === browserTimezone || userTimezone === undefined) {\n const result = pureDayjs(...args);\n\n if (args[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n if (args.length > 0 && (typeof args[0] === \"string\" || args[0] === null)) {\n const pureDayjsArgs = args.slice(0, Math.min(args.length, 2));\n\n if (hasTimezone(args[0])) {\n args[0] = pureDayjs(...pureDayjsArgs);\n } else {\n args[0] = pureDayjs(...pureDayjsArgs).format(\"YYYY-MM-DD HH:mm:ss\");\n args[1] = \"YYYY-MM-DD HH:mm:ss\";\n }\n }\n\n if (args[0]?.toString() === \"Invalid Date\") {\n const result = pureDayjs(...args);\n\n if (args[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n }\n\n const result =\n args.length === 2 ? pureDayjs.tz(...args, timezone) : pureDayjs.tz(...args);\n\n if (args[0] !== undefined) cache.set(cacheKey, result);\n\n return result;\n};\n\nObject.assign(dayjs, { ...pureDayjs });\n\nexport default dayjs;\n","import { preprocessForSerialization } from \"neetocist\";\nimport { parse, stringify } from \"qs\";\nimport { complement, equals, isEmpty, omit, pipe, toPairs } from \"ramda\";\n\n// eslint-disable-next-line import/extensions\nimport en from \"src/translations/en.json\";\n\nimport dayjs from \"./dayjs\";\n\nconst getEnTranslationValue = translationKey =>\n translationKey.split(\".\").reduce((acc, key) => acc[key], en);\n\nconst getScrollbarWidth = () => {\n const parentDiv = document.createElement(\"div\");\n parentDiv.style.visibility = \"hidden\";\n parentDiv.style.overflow = \"scroll\";\n document.body.appendChild(parentDiv);\n const childDiv = document.createElement(\"div\");\n parentDiv.appendChild(childDiv);\n const scrollbarWidth = parentDiv.offsetWidth - childDiv.offsetWidth;\n parentDiv?.parentNode?.removeChild(parentDiv);\n\n return scrollbarWidth;\n};\n\nexport const getTimezoneAppliedDateTime = inputDateTime => {\n if (!inputDateTime) return null;\n\n const timezoneAppliedDateTime = date =>\n dayjs(date.format(\"YYYY-MM-DD HH:mm:ss\"));\n\n return Array.isArray(inputDateTime)\n ? inputDateTime.map(timezoneAppliedDateTime)\n : timezoneAppliedDateTime(inputDateTime);\n};\n\nexport const noop = () => {};\n\nexport const hyphenize = input => {\n const fallbackString = \"nui\";\n\n if (typeof input === \"number\") return String(input);\n\n if (input && typeof input === \"string\" && input.replace) {\n return input\n .replace(/[\\s_]/g, \"-\")\n .replace(/([a-z])([A-Z])/g, \"$1-$2\")\n .replace(/-+/g, \"-\")\n .toLowerCase();\n }\n\n return fallbackString;\n};\n\nexport const convertToDayjsObjects = value =>\n value instanceof Array\n ? value.map(date => (date ? dayjs(date) : date))\n : value && dayjs(value);\n\nexport class UniqueArray {\n constructor() {\n this.array = [];\n }\n\n add(item) {\n if (this.array.some(equals(item))) return false;\n this.array.push(item);\n\n return true;\n }\n\n remove(item) {\n this.array = this.array.filter(complement(equals(item)));\n }\n}\n\nexport const trapFocusOnFocusableElements = ref => {\n const focusableElements =\n 'button,[href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n\n const firstFocusableElement =\n ref?.current?.querySelectorAll(focusableElements)[0];\n const focusableContent = ref?.current?.querySelectorAll(focusableElements);\n const lastFocusableElement = focusableContent[focusableContent?.length - 1];\n\n const onKeyDown = e => {\n const isTabPressed = e.key === \"Tab\" || e.keyCode === 9;\n if (!isTabPressed) {\n return;\n }\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n e.preventDefault();\n }\n } else {\n if (document.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n e.preventDefault();\n }\n }\n };\n\n document.addEventListener(\"keydown\", onKeyDown);\n\n return () => document.removeEventListener(\"keydown\", onKeyDown);\n};\n\nexport const focusFirstFocusableElement = ref => {\n const focusableElements =\n 'button,[href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])';\n\n const firstFocusableElement =\n ref?.current?.querySelectorAll(focusableElements)[0];\n\n firstFocusableElement?.focus();\n};\n\nexport const hideScrollAndAddMargin = () => {\n const scrollbarWidth = getScrollbarWidth();\n document.body.style.overflow = \"hidden\";\n document.body.style.marginRight = `${scrollbarWidth}px`;\n};\n\nexport const showScrollAndRemoveMargin = () => {\n document.body.style.overflow = \"auto\";\n document.body.style.marginRight = \"0px\";\n};\n\nexport const ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES = {\n colorBgContainer: \"rgb(var(--neeto-ui-white))\",\n colorBorder: \"rgb(var(--neeto-ui-gray-300))\",\n colorBorderSecondary: \"rgb(var(--neeto-ui-gray-200))\",\n colorFillAlter: \"rgb(var(--neeto-ui-gray-100))\",\n colorFillContent: \"rgb(var(--neeto-ui-gray-100))\",\n colorFillSecondary: \"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 colorLinkActive: \"rgb(var(--neeto-ui-primary-800))\",\n colorLinkHover: \"rgb(var(--neeto-ui-primary-600))\",\n colorPrimary: \"rgb(var(--neeto-ui-primary-500))\",\n colorSplit: \"rgb(var(--neeto-ui-gray-100))\",\n colorText: \"rgb(var(--neeto-ui-gray-800))\",\n colorTextDescription: \"rgb(var(--neeto-ui-gray-700))\",\n colorTextDisabled: \"rgb(var(--neeto-ui-gray-600))\",\n colorTextHeading: \"rgb(var(--neeto-ui-black))\",\n colorTextPlaceholder: \"rgb(var(--neeto-ui-gray-500))\",\n controlItemBgActive: \"rgb(var(--neeto-ui-primary-100))\",\n controlItemBgActiveHover: \"rgb(var(--neeto-ui-pastel-purple))\",\n controlItemBgHover: \"rgb(var(--neeto-ui-gray-100))\",\n};\n\nexport const getQueryParams = (options = {}) =>\n parse(location.search, { ignoreQueryPrefix: true, ...options });\n\nexport const buildUrl = (route, params) => {\n const placeHolders = [];\n toPairs(params).forEach(([key, value]) => {\n if (!route.includes(`:${key}`)) return;\n placeHolders.push(key);\n route = route.replace(`:${key}`, encodeURIComponent(value));\n });\n\n const queryParams = pipe(\n omit(placeHolders),\n preprocessForSerialization,\n stringify\n )(params);\n\n return isEmpty(queryParams) ? route : `${route}?${queryParams}`;\n};\n\nexport const getLocale = (i18n, t, translationKey) => {\n if (isEmpty(i18n)) return getEnTranslationValue(translationKey);\n\n return i18n.exists(translationKey)\n ? t(translationKey)\n : getEnTranslationValue(translationKey);\n};\n\nexport const setToLocalStorage = (key, value) =>\n // eslint-disable-next-line @bigbinary/neeto/no-local-storage\n localStorage.setItem(key, JSON.stringify(value));\n\n// eslint-disable-next-line @bigbinary/neeto/no-local-storage\nexport const removeFromLocalStorage = key => localStorage.removeItem(key);\n\nexport { dayjs };\n"],"names":["typeToPos","year","month","day","hour","minute","second","dateTimeFormatDefaults","dtfCache","getDateTimeFormat","timezone","options","arguments","length","undefined","timeZoneName","key","concat","dtf","Intl","DateTimeFormat","_objectSpread","hour12","timeZone","localeStringifierCache","getLocaleStringifier","localeStringifier","o","c","d","defaultTimezone","makeFormatParts","timestamp","date","Date","formatToParts","tzOffset","formatResult","filled","i","_formatResult$i","type","value","pos","parseInt","fixedHour","utcString","utcTs","utc","valueOf","asTS","Number","over","fixOffset","localTS","o0","tz","utcGuess","o2","o3","Math","min","max","proto","prototype","keepLocalTime","oldOffset","utcOffset","toDate","target","format","diff","round","ins","$set","$ms","getTimezoneOffset","newOffset","add","$x","$timezone","offsetName","zone","guess","result","find","m","toLowerCase","oldStartOf","startOf","units","call","withoutTz","startOfWithoutTz","input","arg1","arg2","parseFormat","previousOffset","localTs","_fixOffset","_fixOffset2","_slicedToArray","targetTs","targetOffset","resolvedOptions","setDefault","pureDayjs","extend","weekOfYear","weekday","localeData","LRUCache","limit","_classCallCheck","cache","Map","_createClass","get","set","size","oldestKey","keys","next","has","hasTimezone","dateString","timezoneRegex","test","dayjs","_args$","_len","args","Array","_key","cacheKey","JSON","stringify","userTimezone","browserTimezone","apply","pureDayjsArgs","slice","_toConsumableArray","toString","Object","assign","getEnTranslationValue","translationKey","split","reduce","acc","en","getScrollbarWidth","_parentDiv$parentNode","parentDiv","document","createElement","style","visibility","overflow","body","appendChild","childDiv","scrollbarWidth","offsetWidth","parentNode","removeChild","getTimezoneAppliedDateTime","inputDateTime","timezoneAppliedDateTime","isArray","map","noop","hyphenize","fallbackString","String","replace","convertToDayjsObjects","UniqueArray","array","item","some","equals","push","remove","filter","complement","trapFocusOnFocusableElements","ref","_ref$current","_ref$current2","focusableElements","firstFocusableElement","current","querySelectorAll","focusableContent","lastFocusableElement","onKeyDown","e","isTabPressed","keyCode","shiftKey","activeElement","focus","preventDefault","addEventListener","removeEventListener","focusFirstFocusableElement","_ref$current3","hideScrollAndAddMargin","marginRight","showScrollAndRemoveMargin","ANT_DESIGN_GLOBAL_TOKEN_OVERRIDES","colorBgContainer","colorBorder","colorBorderSecondary","colorFillAlter","colorFillContent","colorFillSecondary","colorIcon","colorIconHover","colorLink","colorLinkActive","colorLinkHover","colorPrimary","colorSplit","colorText","colorTextDescription","colorTextDisabled","colorTextHeading","colorTextPlaceholder","controlItemBgActive","controlItemBgActiveHover","controlItemBgHover","buildUrl","route","params","placeHolders","toPairs","forEach","_ref","_ref2","includes","encodeURIComponent","queryParams","pipe","omit","preprocessForSerialization","isEmpty","getLocale","i18n","t","exists","setToLocalStorage","localStorage","setItem","removeFromLocalStorage","removeItem"],"mappings":"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"}