{"version":3,"file":"npm.ctrl.js?version=2ed6c5e7ca3e61951440","mappings":"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","sources":["webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/interfaces.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/format-input.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/readability.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/index.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/from-ratio.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/css-color-names.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/public_api.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/conversion.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/to-ms-filter.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/util.js","webpack://garage-app/./node_modules/@ctrl/tinycolor/dist/random.js"],"sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isValidCSSUnit = exports.stringInputToObject = exports.inputToRGB = void 0;\n/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\nvar conversion_js_1 = require(\"./conversion.js\");\nvar css_color_names_js_1 = require(\"./css-color-names.js\");\nvar util_js_1 = require(\"./util.js\");\n/**\n * Given a string or object, convert that input to RGB\n *\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 * ```\n */\nfunction inputToRGB(color) {\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    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 = (0, conversion_js_1.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 = (0, util_js_1.convertToPercentage)(color.s);\n            v = (0, util_js_1.convertToPercentage)(color.v);\n            rgb = (0, conversion_js_1.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 = (0, util_js_1.convertToPercentage)(color.s);\n            l = (0, util_js_1.convertToPercentage)(color.l);\n            rgb = (0, conversion_js_1.hslToRgb)(color.h, s, l);\n            ok = true;\n            format = 'hsl';\n        }\n        if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n            a = color.a;\n        }\n    }\n    a = (0, util_js_1.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}\nexports.inputToRGB = inputToRGB;\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number.  Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\".concat(CSS_NUMBER, \")|(?:\").concat(CSS_INTEGER, \")\");\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar matchers = {\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 * 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}`\n */\nfunction stringInputToObject(color) {\n    color = color.trim().toLowerCase();\n    if (color.length === 0) {\n        return false;\n    }\n    var named = false;\n    if (css_color_names_js_1.names[color]) {\n        color = css_color_names_js_1.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    // 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 = matchers.rgb.exec(color);\n    if (match) {\n        return { r: match[1], g: match[2], b: match[3] };\n    }\n    match = matchers.rgba.exec(color);\n    if (match) {\n        return { r: match[1], g: match[2], b: match[3], a: match[4] };\n    }\n    match = matchers.hsl.exec(color);\n    if (match) {\n        return { h: match[1], s: match[2], l: match[3] };\n    }\n    match = matchers.hsla.exec(color);\n    if (match) {\n        return { h: match[1], s: match[2], l: match[3], a: match[4] };\n    }\n    match = matchers.hsv.exec(color);\n    if (match) {\n        return { h: match[1], s: match[2], v: match[3] };\n    }\n    match = matchers.hsva.exec(color);\n    if (match) {\n        return { h: match[1], s: match[2], v: match[3], a: match[4] };\n    }\n    match = matchers.hex8.exec(color);\n    if (match) {\n        return {\n            r: (0, conversion_js_1.parseIntFromHex)(match[1]),\n            g: (0, conversion_js_1.parseIntFromHex)(match[2]),\n            b: (0, conversion_js_1.parseIntFromHex)(match[3]),\n            a: (0, conversion_js_1.convertHexToDecimal)(match[4]),\n            format: named ? 'name' : 'hex8',\n        };\n    }\n    match = matchers.hex6.exec(color);\n    if (match) {\n        return {\n            r: (0, conversion_js_1.parseIntFromHex)(match[1]),\n            g: (0, conversion_js_1.parseIntFromHex)(match[2]),\n            b: (0, conversion_js_1.parseIntFromHex)(match[3]),\n            format: named ? 'name' : 'hex',\n        };\n    }\n    match = matchers.hex4.exec(color);\n    if (match) {\n        return {\n            r: (0, conversion_js_1.parseIntFromHex)(match[1] + match[1]),\n            g: (0, conversion_js_1.parseIntFromHex)(match[2] + match[2]),\n            b: (0, conversion_js_1.parseIntFromHex)(match[3] + match[3]),\n            a: (0, conversion_js_1.convertHexToDecimal)(match[4] + match[4]),\n            format: named ? 'name' : 'hex8',\n        };\n    }\n    match = matchers.hex3.exec(color);\n    if (match) {\n        return {\n            r: (0, conversion_js_1.parseIntFromHex)(match[1] + match[1]),\n            g: (0, conversion_js_1.parseIntFromHex)(match[2] + match[2]),\n            b: (0, conversion_js_1.parseIntFromHex)(match[3] + match[3]),\n            format: named ? 'name' : 'hex',\n        };\n    }\n    return false;\n}\nexports.stringInputToObject = stringInputToObject;\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nfunction isValidCSSUnit(color) {\n    return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\nexports.isValidCSSUnit = isValidCSSUnit;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mostReadable = exports.isReadable = exports.readability = void 0;\nvar index_js_1 = require(\"./index.js\");\n// Readability Functions\n// ---------------------\n// <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)\n/**\n * AKA `contrast`\n *\n * Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)\n */\nfunction readability(color1, color2) {\n    var c1 = new index_js_1.TinyColor(color1);\n    var c2 = new index_js_1.TinyColor(color2);\n    return ((Math.max(c1.getLuminance(), c2.getLuminance()) + 0.05) /\n        (Math.min(c1.getLuminance(), c2.getLuminance()) + 0.05));\n}\nexports.readability = readability;\n/**\n * Ensure that foreground and background color combinations meet WCAG2 guidelines.\n * The third argument is an 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 * ```ts\n * new TinyColor().isReadable('#000', '#111') => false\n * new TinyColor().isReadable('#000', '#111', { level: 'AA', size: 'large' }) => false\n * ```\n */\nfunction isReadable(color1, color2, wcag2) {\n    var _a, _b;\n    if (wcag2 === void 0) { wcag2 = { level: 'AA', size: 'small' }; }\n    var readabilityLevel = readability(color1, color2);\n    switch (((_a = wcag2.level) !== null && _a !== void 0 ? _a : 'AA') + ((_b = wcag2.size) !== null && _b !== void 0 ? _b : 'small')) {\n        case 'AAsmall':\n        case 'AAAlarge':\n            return readabilityLevel >= 4.5;\n        case 'AAlarge':\n            return readabilityLevel >= 3;\n        case 'AAAsmall':\n            return readabilityLevel >= 7;\n        default:\n            return false;\n    }\n}\nexports.isReadable = isReadable;\n/**\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 *\n * @param baseColor - the base color.\n * @param colorList - array of colors to pick the most readable one from.\n * @param args - and object with extra arguments\n *\n * Example\n * ```ts\n * new TinyColor().mostReadable('#123', ['#124\", \"#125'], { includeFallbackColors: false }).toHexString(); // \"#112255\"\n * new TinyColor().mostReadable('#123', ['#124\", \"#125'],{ includeFallbackColors: true }).toHexString();  // \"#ffffff\"\n * new TinyColor().mostReadable('#a8015a', [\"#faf3f3\"], { includeFallbackColors:true, level: 'AAA', size: 'large' }).toHexString(); // \"#faf3f3\"\n * new TinyColor().mostReadable('#a8015a', [\"#faf3f3\"], { includeFallbackColors:true, level: 'AAA', size: 'small' }).toHexString(); // \"#ffffff\"\n * ```\n */\nfunction mostReadable(baseColor, colorList, args) {\n    if (args === void 0) { args = { includeFallbackColors: false, level: 'AA', size: 'small' }; }\n    var bestColor = null;\n    var bestScore = 0;\n    var includeFallbackColors = args.includeFallbackColors, level = args.level, size = args.size;\n    for (var _i = 0, colorList_1 = colorList; _i < colorList_1.length; _i++) {\n        var color = colorList_1[_i];\n        var score = readability(baseColor, color);\n        if (score > bestScore) {\n            bestScore = score;\n            bestColor = new index_js_1.TinyColor(color);\n        }\n    }\n    if (isReadable(baseColor, bestColor, { level: level, size: size }) || !includeFallbackColors) {\n        return bestColor;\n    }\n    args.includeFallbackColors = false;\n    return mostReadable(baseColor, ['#fff', '#000'], args);\n}\nexports.mostReadable = mostReadable;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.tinycolor = exports.TinyColor = void 0;\nvar conversion_js_1 = require(\"./conversion.js\");\nvar css_color_names_js_1 = require(\"./css-color-names.js\");\nvar format_input_1 = require(\"./format-input\");\nvar util_js_1 = require(\"./util.js\");\nvar TinyColor = /** @class */ (function () {\n    function TinyColor(color, opts) {\n        if (color === void 0) { color = ''; }\n        if (opts === void 0) { opts = {}; }\n        var _a;\n        // If input is already a tinycolor, return itself\n        if (color instanceof TinyColor) {\n            // eslint-disable-next-line no-constructor-return\n            return color;\n        }\n        if (typeof color === 'number') {\n            color = (0, conversion_js_1.numberInputToObject)(color);\n        }\n        this.originalInput = color;\n        var rgb = (0, format_input_1.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 = Math.round(100 * this.a) / 100;\n        this.format = (_a = opts.format) !== null && _a !== void 0 ? _a : rgb.format;\n        this.gradientType = opts.gradientType;\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) {\n            this.r = Math.round(this.r);\n        }\n        if (this.g < 1) {\n            this.g = Math.round(this.g);\n        }\n        if (this.b < 1) {\n            this.b = Math.round(this.b);\n        }\n        this.isValid = rgb.ok;\n    }\n    TinyColor.prototype.isDark = function () {\n        return this.getBrightness() < 128;\n    };\n    TinyColor.prototype.isLight = function () {\n        return !this.isDark();\n    };\n    /**\n     * Returns the perceived brightness of the color, from 0-255.\n     */\n    TinyColor.prototype.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    /**\n     * Returns the perceived luminance of a color, from 0-1.\n     */\n    TinyColor.prototype.getLuminance = function () {\n        // http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n        var rgb = this.toRgb();\n        var R;\n        var G;\n        var B;\n        var RsRGB = rgb.r / 255;\n        var GsRGB = rgb.g / 255;\n        var BsRGB = rgb.b / 255;\n        if (RsRGB <= 0.03928) {\n            R = RsRGB / 12.92;\n        }\n        else {\n            // eslint-disable-next-line prefer-exponentiation-operator\n            R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n        }\n        if (GsRGB <= 0.03928) {\n            G = GsRGB / 12.92;\n        }\n        else {\n            // eslint-disable-next-line prefer-exponentiation-operator\n            G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n        }\n        if (BsRGB <= 0.03928) {\n            B = BsRGB / 12.92;\n        }\n        else {\n            // eslint-disable-next-line prefer-exponentiation-operator\n            B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n        }\n        return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n    };\n    /**\n     * Returns the alpha value of a color, from 0-1.\n     */\n    TinyColor.prototype.getAlpha = function () {\n        return this.a;\n    };\n    /**\n     * Sets the alpha value on the current color.\n     *\n     * @param alpha - The new alpha value. The accepted range is 0-1.\n     */\n    TinyColor.prototype.setAlpha = function (alpha) {\n        this.a = (0, util_js_1.boundAlpha)(alpha);\n        this.roundA = Math.round(100 * this.a) / 100;\n        return this;\n    };\n    /**\n     * Returns whether the color is monochrome.\n     */\n    TinyColor.prototype.isMonochrome = function () {\n        var s = this.toHsl().s;\n        return s === 0;\n    };\n    /**\n     * Returns the object as a HSVA object.\n     */\n    TinyColor.prototype.toHsv = function () {\n        var hsv = (0, conversion_js_1.rgbToHsv)(this.r, this.g, this.b);\n        return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this.a };\n    };\n    /**\n     * Returns the hsva values interpolated into a string with the following format:\n     * \"hsva(xxx, xxx, xxx, xx)\".\n     */\n    TinyColor.prototype.toHsvString = function () {\n        var hsv = (0, conversion_js_1.rgbToHsv)(this.r, this.g, this.b);\n        var h = Math.round(hsv.h * 360);\n        var s = Math.round(hsv.s * 100);\n        var v = Math.round(hsv.v * 100);\n        return this.a === 1 ? \"hsv(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%)\") : \"hsva(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%, \").concat(this.roundA, \")\");\n    };\n    /**\n     * Returns the object as a HSLA object.\n     */\n    TinyColor.prototype.toHsl = function () {\n        var hsl = (0, conversion_js_1.rgbToHsl)(this.r, this.g, this.b);\n        return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this.a };\n    };\n    /**\n     * Returns the hsla values interpolated into a string with the following format:\n     * \"hsla(xxx, xxx, xxx, xx)\".\n     */\n    TinyColor.prototype.toHslString = function () {\n        var hsl = (0, conversion_js_1.rgbToHsl)(this.r, this.g, this.b);\n        var h = Math.round(hsl.h * 360);\n        var s = Math.round(hsl.s * 100);\n        var l = Math.round(hsl.l * 100);\n        return this.a === 1 ? \"hsl(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%)\") : \"hsla(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%, \").concat(this.roundA, \")\");\n    };\n    /**\n     * Returns the hex value of the color.\n     * @param allow3Char will shorten hex value to 3 char if possible\n     */\n    TinyColor.prototype.toHex = function (allow3Char) {\n        if (allow3Char === void 0) { allow3Char = false; }\n        return (0, conversion_js_1.rgbToHex)(this.r, this.g, this.b, allow3Char);\n    };\n    /**\n     * Returns the hex value of the color -with a # prefixed.\n     * @param allow3Char will shorten hex value to 3 char if possible\n     */\n    TinyColor.prototype.toHexString = function (allow3Char) {\n        if (allow3Char === void 0) { allow3Char = false; }\n        return '#' + this.toHex(allow3Char);\n    };\n    /**\n     * Returns the hex 8 value of the color.\n     * @param allow4Char will shorten hex value to 4 char if possible\n     */\n    TinyColor.prototype.toHex8 = function (allow4Char) {\n        if (allow4Char === void 0) { allow4Char = false; }\n        return (0, conversion_js_1.rgbaToHex)(this.r, this.g, this.b, this.a, allow4Char);\n    };\n    /**\n     * Returns the hex 8 value of the color -with a # prefixed.\n     * @param allow4Char will shorten hex value to 4 char if possible\n     */\n    TinyColor.prototype.toHex8String = function (allow4Char) {\n        if (allow4Char === void 0) { allow4Char = false; }\n        return '#' + this.toHex8(allow4Char);\n    };\n    /**\n     * Returns the shorter hex value of the color depends on its alpha -with a # prefixed.\n     * @param allowShortChar will shorten hex value to 3 or 4 char if possible\n     */\n    TinyColor.prototype.toHexShortString = function (allowShortChar) {\n        if (allowShortChar === void 0) { allowShortChar = false; }\n        return this.a === 1 ? this.toHexString(allowShortChar) : this.toHex8String(allowShortChar);\n    };\n    /**\n     * Returns the object as a RGBA object.\n     */\n    TinyColor.prototype.toRgb = function () {\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    /**\n     * Returns the RGBA values interpolated into a string with the following format:\n     * \"RGBA(xxx, xxx, xxx, xx)\".\n     */\n    TinyColor.prototype.toRgbString = function () {\n        var r = Math.round(this.r);\n        var g = Math.round(this.g);\n        var b = Math.round(this.b);\n        return this.a === 1 ? \"rgb(\".concat(r, \", \").concat(g, \", \").concat(b, \")\") : \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(this.roundA, \")\");\n    };\n    /**\n     * Returns the object as a RGBA object.\n     */\n    TinyColor.prototype.toPercentageRgb = function () {\n        var fmt = function (x) { return \"\".concat(Math.round((0, util_js_1.bound01)(x, 255) * 100), \"%\"); };\n        return {\n            r: fmt(this.r),\n            g: fmt(this.g),\n            b: fmt(this.b),\n            a: this.a,\n        };\n    };\n    /**\n     * Returns the RGBA relative values interpolated into a string\n     */\n    TinyColor.prototype.toPercentageRgbString = function () {\n        var rnd = function (x) { return Math.round((0, util_js_1.bound01)(x, 255) * 100); };\n        return this.a === 1\n            ? \"rgb(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%)\")\n            : \"rgba(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%, \").concat(this.roundA, \")\");\n    };\n    /**\n     * The 'real' name of the color -if there is one.\n     */\n    TinyColor.prototype.toName = function () {\n        if (this.a === 0) {\n            return 'transparent';\n        }\n        if (this.a < 1) {\n            return false;\n        }\n        var hex = '#' + (0, conversion_js_1.rgbToHex)(this.r, this.g, this.b, false);\n        for (var _i = 0, _a = Object.entries(css_color_names_js_1.names); _i < _a.length; _i++) {\n            var _b = _a[_i], key = _b[0], value = _b[1];\n            if (hex === value) {\n                return key;\n            }\n        }\n        return false;\n    };\n    TinyColor.prototype.toString = function (format) {\n        var formatSet = Boolean(format);\n        format = format !== null && format !== void 0 ? format : this.format;\n        var formattedString = false;\n        var hasAlpha = this.a < 1 && this.a >= 0;\n        var needsAlphaFormat = !formatSet && hasAlpha && (format.startsWith('hex') || 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    TinyColor.prototype.toNumber = function () {\n        return (Math.round(this.r) << 16) + (Math.round(this.g) << 8) + Math.round(this.b);\n    };\n    TinyColor.prototype.clone = function () {\n        return new TinyColor(this.toString());\n    };\n    /**\n     * Lighten the color a given amount. Providing 100 will always return white.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.lighten = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        var hsl = this.toHsl();\n        hsl.l += amount / 100;\n        hsl.l = (0, util_js_1.clamp01)(hsl.l);\n        return new TinyColor(hsl);\n    };\n    /**\n     * Brighten the color a given amount, from 0 to 100.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.brighten = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        var rgb = this.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 new TinyColor(rgb);\n    };\n    /**\n     * Darken the color a given amount, from 0 to 100.\n     * Providing 100 will always return black.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.darken = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        var hsl = this.toHsl();\n        hsl.l -= amount / 100;\n        hsl.l = (0, util_js_1.clamp01)(hsl.l);\n        return new TinyColor(hsl);\n    };\n    /**\n     * Mix the color with pure white, from 0 to 100.\n     * Providing 0 will do nothing, providing 100 will always return white.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.tint = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        return this.mix('white', amount);\n    };\n    /**\n     * Mix the color with pure black, from 0 to 100.\n     * Providing 0 will do nothing, providing 100 will always return black.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.shade = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        return this.mix('black', amount);\n    };\n    /**\n     * Desaturate the color a given amount, from 0 to 100.\n     * Providing 100 will is the same as calling greyscale\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.desaturate = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        var hsl = this.toHsl();\n        hsl.s -= amount / 100;\n        hsl.s = (0, util_js_1.clamp01)(hsl.s);\n        return new TinyColor(hsl);\n    };\n    /**\n     * Saturate the color a given amount, from 0 to 100.\n     * @param amount - valid between 1-100\n     */\n    TinyColor.prototype.saturate = function (amount) {\n        if (amount === void 0) { amount = 10; }\n        var hsl = this.toHsl();\n        hsl.s += amount / 100;\n        hsl.s = (0, util_js_1.clamp01)(hsl.s);\n        return new TinyColor(hsl);\n    };\n    /**\n     * Completely desaturates a color into greyscale.\n     * Same as calling `desaturate(100)`\n     */\n    TinyColor.prototype.greyscale = function () {\n        return this.desaturate(100);\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.\n     */\n    TinyColor.prototype.spin = function (amount) {\n        var hsl = this.toHsl();\n        var hue = (hsl.h + amount) % 360;\n        hsl.h = hue < 0 ? 360 + hue : hue;\n        return new TinyColor(hsl);\n    };\n    /**\n     * Mix the current color a given amount with another color, from 0 to 100.\n     * 0 means no mixing (return current color).\n     */\n    TinyColor.prototype.mix = function (color, amount) {\n        if (amount === void 0) { amount = 50; }\n        var rgb1 = this.toRgb();\n        var rgb2 = new TinyColor(color).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 new TinyColor(rgba);\n    };\n    TinyColor.prototype.analogous = function (results, slices) {\n        if (results === void 0) { results = 6; }\n        if (slices === void 0) { slices = 30; }\n        var hsl = this.toHsl();\n        var part = 360 / slices;\n        var ret = [this];\n        for (hsl.h = (hsl.h - ((part * results) >> 1) + 720) % 360; --results;) {\n            hsl.h = (hsl.h + part) % 360;\n            ret.push(new TinyColor(hsl));\n        }\n        return ret;\n    };\n    /**\n     * taken from https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js\n     */\n    TinyColor.prototype.complement = function () {\n        var hsl = this.toHsl();\n        hsl.h = (hsl.h + 180) % 360;\n        return new TinyColor(hsl);\n    };\n    TinyColor.prototype.monochromatic = function (results) {\n        if (results === void 0) { results = 6; }\n        var hsv = this.toHsv();\n        var h = hsv.h;\n        var s = hsv.s;\n        var v = hsv.v;\n        var res = [];\n        var modification = 1 / results;\n        while (results--) {\n            res.push(new TinyColor({ h: h, s: s, v: v }));\n            v = (v + modification) % 1;\n        }\n        return res;\n    };\n    TinyColor.prototype.splitcomplement = function () {\n        var hsl = this.toHsl();\n        var h = hsl.h;\n        return [\n            this,\n            new TinyColor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l }),\n            new TinyColor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l }),\n        ];\n    };\n    /**\n     * Compute how the color would appear on a background\n     */\n    TinyColor.prototype.onBackground = function (background) {\n        var fg = this.toRgb();\n        var bg = new TinyColor(background).toRgb();\n        var alpha = fg.a + bg.a * (1 - fg.a);\n        return new TinyColor({\n            r: (fg.r * fg.a + bg.r * bg.a * (1 - fg.a)) / alpha,\n            g: (fg.g * fg.a + bg.g * bg.a * (1 - fg.a)) / alpha,\n            b: (fg.b * fg.a + bg.b * bg.a * (1 - fg.a)) / alpha,\n            a: alpha,\n        });\n    };\n    /**\n     * Alias for `polyad(3)`\n     */\n    TinyColor.prototype.triad = function () {\n        return this.polyad(3);\n    };\n    /**\n     * Alias for `polyad(4)`\n     */\n    TinyColor.prototype.tetrad = function () {\n        return this.polyad(4);\n    };\n    /**\n     * Get polyad colors, like (for 1, 2, 3, 4, 5, 6, 7, 8, etc...)\n     * monad, dyad, triad, tetrad, pentad, hexad, heptad, octad, etc...\n     */\n    TinyColor.prototype.polyad = function (n) {\n        var hsl = this.toHsl();\n        var h = hsl.h;\n        var result = [this];\n        var increment = 360 / n;\n        for (var i = 1; i < n; i++) {\n            result.push(new TinyColor({ h: (h + i * increment) % 360, s: hsl.s, l: hsl.l }));\n        }\n        return result;\n    };\n    /**\n     * compare color vs current color\n     */\n    TinyColor.prototype.equals = function (color) {\n        return this.toRgbString() === new TinyColor(color).toRgbString();\n    };\n    return TinyColor;\n}());\nexports.TinyColor = TinyColor;\n// kept for backwards compatability with v1\nfunction tinycolor(color, opts) {\n    if (color === void 0) { color = ''; }\n    if (opts === void 0) { opts = {}; }\n    return new TinyColor(color, opts);\n}\nexports.tinycolor = tinycolor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.legacyRandom = exports.fromRatio = void 0;\nvar index_js_1 = require(\"./index.js\");\nvar util_js_1 = require(\"./util.js\");\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\n */\nfunction fromRatio(ratio, opts) {\n    var newColor = {\n        r: (0, util_js_1.convertToPercentage)(ratio.r),\n        g: (0, util_js_1.convertToPercentage)(ratio.g),\n        b: (0, util_js_1.convertToPercentage)(ratio.b),\n    };\n    if (ratio.a !== undefined) {\n        newColor.a = Number(ratio.a);\n    }\n    return new index_js_1.TinyColor(newColor, opts);\n}\nexports.fromRatio = fromRatio;\n/** old random function */\nfunction legacyRandom() {\n    return new index_js_1.TinyColor({\n        r: Math.random(),\n        g: Math.random(),\n        b: Math.random(),\n    });\n}\nexports.legacyRandom = legacyRandom;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.names = void 0;\n// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexports.names = {\n    aliceblue: '#f0f8ff',\n    antiquewhite: '#faebd7',\n    aqua: '#00ffff',\n    aquamarine: '#7fffd4',\n    azure: '#f0ffff',\n    beige: '#f5f5dc',\n    bisque: '#ffe4c4',\n    black: '#000000',\n    blanchedalmond: '#ffebcd',\n    blue: '#0000ff',\n    blueviolet: '#8a2be2',\n    brown: '#a52a2a',\n    burlywood: '#deb887',\n    cadetblue: '#5f9ea0',\n    chartreuse: '#7fff00',\n    chocolate: '#d2691e',\n    coral: '#ff7f50',\n    cornflowerblue: '#6495ed',\n    cornsilk: '#fff8dc',\n    crimson: '#dc143c',\n    cyan: '#00ffff',\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: '#ff00ff',\n    gainsboro: '#dcdcdc',\n    ghostwhite: '#f8f8ff',\n    goldenrod: '#daa520',\n    gold: '#ffd700',\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    lavenderblush: '#fff0f5',\n    lavender: '#e6e6fa',\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: '#778899',\n    lightslategrey: '#778899',\n    lightsteelblue: '#b0c4de',\n    lightyellow: '#ffffe0',\n    lime: '#00ff00',\n    limegreen: '#32cd32',\n    linen: '#faf0e6',\n    magenta: '#ff00ff',\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: '#ff0000',\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: '#ffffff',\n    whitesmoke: '#f5f5f5',\n    yellow: '#ffff00',\n    yellowgreen: '#9acd32',\n};\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    var desc = Object.getOwnPropertyDescriptor(m, k);\n    if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n      desc = { enumerable: true, get: function() { return m[k]; } };\n    }\n    Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n    for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar index_js_1 = require(\"./index.js\");\n__exportStar(require(\"./index.js\"), exports);\n__exportStar(require(\"./css-color-names.js\"), exports);\n__exportStar(require(\"./readability.js\"), exports);\n__exportStar(require(\"./to-ms-filter.js\"), exports);\n__exportStar(require(\"./from-ratio.js\"), exports);\n__exportStar(require(\"./format-input.js\"), exports);\n__exportStar(require(\"./random.js\"), exports);\n__exportStar(require(\"./interfaces.js\"), exports);\n__exportStar(require(\"./conversion.js\"), exports);\n// kept for backwards compatability with v1\nexports.default = index_js_1.tinycolor;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.numberInputToObject = exports.parseIntFromHex = exports.convertHexToDecimal = exports.convertDecimalToHex = exports.rgbaToArgbHex = exports.rgbaToHex = exports.rgbToHex = exports.hsvToRgb = exports.rgbToHsv = exports.hslToRgb = exports.rgbToHsl = exports.rgbToRgb = void 0;\nvar util_js_1 = require(\"./util.js\");\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 * 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]\n */\nfunction rgbToRgb(r, g, b) {\n    return {\n        r: (0, util_js_1.bound01)(r, 255) * 255,\n        g: (0, util_js_1.bound01)(g, 255) * 255,\n        b: (0, util_js_1.bound01)(b, 255) * 255,\n    };\n}\nexports.rgbToRgb = rgbToRgb;\n/**\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]\n */\nfunction rgbToHsl(r, g, b) {\n    r = (0, util_js_1.bound01)(r, 255);\n    g = (0, util_js_1.bound01)(g, 255);\n    b = (0, util_js_1.bound01)(b, 255);\n    var max = Math.max(r, g, b);\n    var min = Math.min(r, g, b);\n    var h = 0;\n    var s = 0;\n    var l = (max + min) / 2;\n    if (max === min) {\n        s = 0;\n        h = 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:\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            default:\n                break;\n        }\n        h /= 6;\n    }\n    return { h: h, s: s, l: l };\n}\nexports.rgbToHsl = rgbToHsl;\nfunction hue2rgb(p, q, t) {\n    if (t < 0) {\n        t += 1;\n    }\n    if (t > 1) {\n        t -= 1;\n    }\n    if (t < 1 / 6) {\n        return p + (q - p) * (6 * t);\n    }\n    if (t < 1 / 2) {\n        return q;\n    }\n    if (t < 2 / 3) {\n        return p + (q - p) * (2 / 3 - t) * 6;\n    }\n    return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\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]\n */\nfunction hslToRgb(h, s, l) {\n    var r;\n    var g;\n    var b;\n    h = (0, util_js_1.bound01)(h, 360);\n    s = (0, util_js_1.bound01)(s, 100);\n    l = (0, util_js_1.bound01)(l, 100);\n    if (s === 0) {\n        // achromatic\n        g = l;\n        b = l;\n        r = l;\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    return { r: r * 255, g: g * 255, b: b * 255 };\n}\nexports.hslToRgb = hslToRgb;\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nfunction rgbToHsv(r, g, b) {\n    r = (0, util_js_1.bound01)(r, 255);\n    g = (0, util_js_1.bound01)(g, 255);\n    b = (0, util_js_1.bound01)(b, 255);\n    var max = Math.max(r, g, b);\n    var min = Math.min(r, g, b);\n    var h = 0;\n    var v = max;\n    var d = max - min;\n    var s = max === 0 ? 0 : d / max;\n    if (max === min) {\n        h = 0; // achromatic\n    }\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            default:\n                break;\n        }\n        h /= 6;\n    }\n    return { h: h, s: s, v: v };\n}\nexports.rgbToHsv = rgbToHsv;\n/**\n * Converts an HSV color value to RGB.\n *\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 */\nfunction hsvToRgb(h, s, v) {\n    h = (0, util_js_1.bound01)(h, 360) * 6;\n    s = (0, util_js_1.bound01)(s, 100);\n    v = (0, util_js_1.bound01)(v, 100);\n    var i = Math.floor(h);\n    var f = h - i;\n    var p = v * (1 - s);\n    var q = v * (1 - f * s);\n    var t = v * (1 - (1 - f) * s);\n    var mod = i % 6;\n    var r = [v, q, p, p, t, v][mod];\n    var g = [t, v, v, q, p, p][mod];\n    var b = [p, p, t, v, v, q][mod];\n    return { r: r * 255, g: g * 255, b: b * 255 };\n}\nexports.hsvToRgb = hsvToRgb;\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nfunction rgbToHex(r, g, b, allow3Char) {\n    var hex = [\n        (0, util_js_1.pad2)(Math.round(r).toString(16)),\n        (0, util_js_1.pad2)(Math.round(g).toString(16)),\n        (0, util_js_1.pad2)(Math.round(b).toString(16)),\n    ];\n    // Return a 3 character hex if possible\n    if (allow3Char &&\n        hex[0].startsWith(hex[0].charAt(1)) &&\n        hex[1].startsWith(hex[1].charAt(1)) &&\n        hex[2].startsWith(hex[2].charAt(1))) {\n        return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n    }\n    return hex.join('');\n}\nexports.rgbToHex = rgbToHex;\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\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\n */\n// eslint-disable-next-line max-params\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n    var hex = [\n        (0, util_js_1.pad2)(Math.round(r).toString(16)),\n        (0, util_js_1.pad2)(Math.round(g).toString(16)),\n        (0, util_js_1.pad2)(Math.round(b).toString(16)),\n        (0, util_js_1.pad2)(convertDecimalToHex(a)),\n    ];\n    // Return a 4 character hex if possible\n    if (allow4Char &&\n        hex[0].startsWith(hex[0].charAt(1)) &&\n        hex[1].startsWith(hex[1].charAt(1)) &&\n        hex[2].startsWith(hex[2].charAt(1)) &&\n        hex[3].startsWith(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}\nexports.rgbaToHex = rgbaToHex;\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nfunction rgbaToArgbHex(r, g, b, a) {\n    var hex = [\n        (0, util_js_1.pad2)(convertDecimalToHex(a)),\n        (0, util_js_1.pad2)(Math.round(r).toString(16)),\n        (0, util_js_1.pad2)(Math.round(g).toString(16)),\n        (0, util_js_1.pad2)(Math.round(b).toString(16)),\n    ];\n    return hex.join('');\n}\nexports.rgbaToArgbHex = rgbaToArgbHex;\n/** Converts a decimal to a hex value */\nfunction convertDecimalToHex(d) {\n    return Math.round(parseFloat(d) * 255).toString(16);\n}\nexports.convertDecimalToHex = convertDecimalToHex;\n/** Converts a hex value to a decimal */\nfunction convertHexToDecimal(h) {\n    return parseIntFromHex(h) / 255;\n}\nexports.convertHexToDecimal = convertHexToDecimal;\n/** Parse a base-16 hex value into a base-10 integer */\nfunction parseIntFromHex(val) {\n    return parseInt(val, 16);\n}\nexports.parseIntFromHex = parseIntFromHex;\nfunction numberInputToObject(color) {\n    return {\n        r: color >> 16,\n        g: (color & 0xff00) >> 8,\n        b: color & 0xff,\n    };\n}\nexports.numberInputToObject = numberInputToObject;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toMsFilter = void 0;\nvar conversion_js_1 = require(\"./conversion.js\");\nvar index_js_1 = require(\"./index.js\");\n/**\n * Returns the color represented as a Microsoft filter for use in old versions of IE.\n */\nfunction toMsFilter(firstColor, secondColor) {\n    var color = new index_js_1.TinyColor(firstColor);\n    var hex8String = '#' + (0, conversion_js_1.rgbaToArgbHex)(color.r, color.g, color.b, color.a);\n    var secondHex8String = hex8String;\n    var gradientType = color.gradientType ? 'GradientType = 1, ' : '';\n    if (secondColor) {\n        var s = new index_js_1.TinyColor(secondColor);\n        secondHex8String = '#' + (0, conversion_js_1.rgbaToArgbHex)(s.r, s.g, s.b, s.a);\n    }\n    return \"progid:DXImageTransform.Microsoft.gradient(\".concat(gradientType, \"startColorstr=\").concat(hex8String, \",endColorstr=\").concat(secondHex8String, \")\");\n}\nexports.toMsFilter = toMsFilter;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pad2 = exports.convertToPercentage = exports.boundAlpha = exports.isPercentage = exports.isOnePointZero = exports.clamp01 = exports.bound01 = void 0;\n/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nfunction bound01(n, max) {\n    if (isOnePointZero(n)) {\n        n = '100%';\n    }\n    var isPercent = isPercentage(n);\n    n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n    // Automatically convert percentage into number\n    if (isPercent) {\n        n = parseInt(String(n * max), 10) / 100;\n    }\n    // Handle floating point rounding errors\n    if (Math.abs(n - max) < 0.000001) {\n        return 1;\n    }\n    // Convert into [0, 1] range if it isn't already\n    if (max === 360) {\n        // If n is a hue given in degrees,\n        // wrap around out-of-range values into [0, 360] range\n        // then convert into [0, 1].\n        n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n    }\n    else {\n        // If n not a hue given in degrees\n        // Convert into [0, 1] range if it isn't already.\n        n = (n % max) / parseFloat(String(max));\n    }\n    return n;\n}\nexports.bound01 = bound01;\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nfunction clamp01(val) {\n    return Math.min(1, Math.max(0, val));\n}\nexports.clamp01 = clamp01;\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>\n * @hidden\n */\nfunction isOnePointZero(n) {\n    return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\nexports.isOnePointZero = isOnePointZero;\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nfunction isPercentage(n) {\n    return typeof n === 'string' && n.indexOf('%') !== -1;\n}\nexports.isPercentage = isPercentage;\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nfunction boundAlpha(a) {\n    a = parseFloat(a);\n    if (isNaN(a) || a < 0 || a > 1) {\n        a = 1;\n    }\n    return a;\n}\nexports.boundAlpha = boundAlpha;\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nfunction convertToPercentage(n) {\n    if (n <= 1) {\n        return \"\".concat(Number(n) * 100, \"%\");\n    }\n    return n;\n}\nexports.convertToPercentage = convertToPercentage;\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nfunction pad2(c) {\n    return c.length === 1 ? '0' + c : String(c);\n}\nexports.pad2 = pad2;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bounds = exports.random = void 0;\n/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\n// randomColor by David Merfield under the CC0 license\n// https://github.com/davidmerfield/randomColor/\nvar index_js_1 = require(\"./index.js\");\nfunction random(options) {\n    if (options === void 0) { options = {}; }\n    // Check if we need to generate multiple colors\n    if (options.count !== undefined &&\n        options.count !== null) {\n        var totalColors = options.count;\n        var colors = [];\n        options.count = undefined;\n        while (totalColors > colors.length) {\n            // Since we're generating multiple colors,\n            // incremement the seed. Otherwise we'd just\n            // generate the same color each time...\n            options.count = null;\n            if (options.seed) {\n                options.seed += 1;\n            }\n            colors.push(random(options));\n        }\n        options.count = totalColors;\n        return colors;\n    }\n    // First we pick a hue (H)\n    var h = pickHue(options.hue, options.seed);\n    // Then use H to determine saturation (S)\n    var s = pickSaturation(h, options);\n    // Then use S and H to determine brightness (B).\n    var v = pickBrightness(h, s, options);\n    var res = { h: h, s: s, v: v };\n    if (options.alpha !== undefined) {\n        res.a = options.alpha;\n    }\n    // Then we return the HSB color in the desired format\n    return new index_js_1.TinyColor(res);\n}\nexports.random = random;\nfunction pickHue(hue, seed) {\n    var hueRange = getHueRange(hue);\n    var res = randomWithin(hueRange, seed);\n    // Instead of storing red as two seperate ranges,\n    // we group them, using negative numbers\n    if (res < 0) {\n        res = 360 + res;\n    }\n    return res;\n}\nfunction pickSaturation(hue, options) {\n    if (options.hue === 'monochrome') {\n        return 0;\n    }\n    if (options.luminosity === 'random') {\n        return randomWithin([0, 100], options.seed);\n    }\n    var saturationRange = getColorInfo(hue).saturationRange;\n    var sMin = saturationRange[0];\n    var sMax = saturationRange[1];\n    switch (options.luminosity) {\n        case 'bright':\n            sMin = 55;\n            break;\n        case 'dark':\n            sMin = sMax - 10;\n            break;\n        case 'light':\n            sMax = 55;\n            break;\n        default:\n            break;\n    }\n    return randomWithin([sMin, sMax], options.seed);\n}\nfunction pickBrightness(H, S, options) {\n    var bMin = getMinimumBrightness(H, S);\n    var bMax = 100;\n    switch (options.luminosity) {\n        case 'dark':\n            bMax = bMin + 20;\n            break;\n        case 'light':\n            bMin = (bMax + bMin) / 2;\n            break;\n        case 'random':\n            bMin = 0;\n            bMax = 100;\n            break;\n        default:\n            break;\n    }\n    return randomWithin([bMin, bMax], options.seed);\n}\nfunction getMinimumBrightness(H, S) {\n    var lowerBounds = getColorInfo(H).lowerBounds;\n    for (var i = 0; i < lowerBounds.length - 1; i++) {\n        var s1 = lowerBounds[i][0];\n        var v1 = lowerBounds[i][1];\n        var s2 = lowerBounds[i + 1][0];\n        var v2 = lowerBounds[i + 1][1];\n        if (S >= s1 && S <= s2) {\n            var m = (v2 - v1) / (s2 - s1);\n            var b = v1 - m * s1;\n            return m * S + b;\n        }\n    }\n    return 0;\n}\nfunction getHueRange(colorInput) {\n    var num = parseInt(colorInput, 10);\n    if (!Number.isNaN(num) && num < 360 && num > 0) {\n        return [num, num];\n    }\n    if (typeof colorInput === 'string') {\n        var namedColor = exports.bounds.find(function (n) { return n.name === colorInput; });\n        if (namedColor) {\n            var color = defineColor(namedColor);\n            if (color.hueRange) {\n                return color.hueRange;\n            }\n        }\n        var parsed = new index_js_1.TinyColor(colorInput);\n        if (parsed.isValid) {\n            var hue = parsed.toHsv().h;\n            return [hue, hue];\n        }\n    }\n    return [0, 360];\n}\nfunction getColorInfo(hue) {\n    // Maps red colors to make picking hue easier\n    if (hue >= 334 && hue <= 360) {\n        hue -= 360;\n    }\n    for (var _i = 0, bounds_1 = exports.bounds; _i < bounds_1.length; _i++) {\n        var bound = bounds_1[_i];\n        var color = defineColor(bound);\n        if (color.hueRange && hue >= color.hueRange[0] && hue <= color.hueRange[1]) {\n            return color;\n        }\n    }\n    throw Error('Color not found');\n}\nfunction randomWithin(range, seed) {\n    if (seed === undefined) {\n        return Math.floor(range[0] + Math.random() * (range[1] + 1 - range[0]));\n    }\n    // Seeded random algorithm from http://indiegamr.com/generate-repeatable-random-numbers-in-js/\n    var max = range[1] || 1;\n    var min = range[0] || 0;\n    seed = (seed * 9301 + 49297) % 233280;\n    var rnd = seed / 233280.0;\n    return Math.floor(min + rnd * (max - min));\n}\nfunction defineColor(bound) {\n    var sMin = bound.lowerBounds[0][0];\n    var sMax = bound.lowerBounds[bound.lowerBounds.length - 1][0];\n    var bMin = bound.lowerBounds[bound.lowerBounds.length - 1][1];\n    var bMax = bound.lowerBounds[0][1];\n    return {\n        name: bound.name,\n        hueRange: bound.hueRange,\n        lowerBounds: bound.lowerBounds,\n        saturationRange: [sMin, sMax],\n        brightnessRange: [bMin, bMax],\n    };\n}\n/**\n * @hidden\n */\nexports.bounds = [\n    {\n        name: 'monochrome',\n        hueRange: null,\n        lowerBounds: [\n            [0, 0],\n            [100, 0],\n        ],\n    },\n    {\n        name: 'red',\n        hueRange: [-26, 18],\n        lowerBounds: [\n            [20, 100],\n            [30, 92],\n            [40, 89],\n            [50, 85],\n            [60, 78],\n            [70, 70],\n            [80, 60],\n            [90, 55],\n            [100, 50],\n        ],\n    },\n    {\n        name: 'orange',\n        hueRange: [19, 46],\n        lowerBounds: [\n            [20, 100],\n            [30, 93],\n            [40, 88],\n            [50, 86],\n            [60, 85],\n            [70, 70],\n            [100, 70],\n        ],\n    },\n    {\n        name: 'yellow',\n        hueRange: [47, 62],\n        lowerBounds: [\n            [25, 100],\n            [40, 94],\n            [50, 89],\n            [60, 86],\n            [70, 84],\n            [80, 82],\n            [90, 80],\n            [100, 75],\n        ],\n    },\n    {\n        name: 'green',\n        hueRange: [63, 178],\n        lowerBounds: [\n            [30, 100],\n            [40, 90],\n            [50, 85],\n            [60, 81],\n            [70, 74],\n            [80, 64],\n            [90, 50],\n            [100, 40],\n        ],\n    },\n    {\n        name: 'blue',\n        hueRange: [179, 257],\n        lowerBounds: [\n            [20, 100],\n            [30, 86],\n            [40, 80],\n            [50, 74],\n            [60, 60],\n            [70, 52],\n            [80, 44],\n            [90, 39],\n            [100, 35],\n        ],\n    },\n    {\n        name: 'purple',\n        hueRange: [258, 282],\n        lowerBounds: [\n            [20, 100],\n            [30, 87],\n            [40, 79],\n            [50, 70],\n            [60, 65],\n            [70, 59],\n            [80, 52],\n            [90, 45],\n            [100, 42],\n        ],\n    },\n    {\n        name: 'pink',\n        hueRange: [283, 334],\n        lowerBounds: [\n            [20, 100],\n            [30, 90],\n            [40, 86],\n            [60, 84],\n            [80, 80],\n            [90, 75],\n            [100, 73],\n        ],\n    },\n];\n"],"names":["Object","defineProperty","exports","value","isValidCSSUnit","stringInputToObject","inputToRGB","conversion_js_1","css_color_names_js_1","util_js_1","color","rgb","r","g","b","a","s","v","l","ok","format","rgbToRgb","String","substr","h","convertToPercentage","hsvToRgb","hslToRgb","prototype","hasOwnProperty","call","boundAlpha","Math","min","max","CSS_UNIT","concat","PERMISSIVE_MATCH3","PERMISSIVE_MATCH4","matchers","RegExp","rgba","hsl","hsla","hsv","hsva","hex3","hex6","hex4","hex8","trim","toLowerCase","length","named","names","match","exec","parseIntFromHex","convertHexToDecimal","Boolean","mostReadable","isReadable","readability","index_js_1","color1","color2","c1","TinyColor","c2","getLuminance","wcag2","_a","_b","level","size","readabilityLevel","baseColor","colorList","args","includeFallbackColors","bestColor","bestScore","_i","colorList_1","score","tinycolor","format_input_1","opts","numberInputToObject","this","originalInput","roundA","round","gradientType","isValid","isDark","getBrightness","isLight","toRgb","RsRGB","GsRGB","BsRGB","pow","getAlpha","setAlpha","alpha","isMonochrome","toHsl","toHsv","rgbToHsv","toHsvString","rgbToHsl","toHslString","toHex","allow3Char","rgbToHex","toHexString","toHex8","allow4Char","rgbaToHex","toHex8String","toHexShortString","allowShortChar","toRgbString","toPercentageRgb","fmt","x","bound01","toPercentageRgbString","rnd","toName","hex","entries","key","toString","formatSet","formattedString","hasAlpha","startsWith","toNumber","clone","lighten","amount","clamp01","brighten","darken","tint","mix","shade","desaturate","saturate","greyscale","spin","hue","rgb1","rgb2","p","analogous","results","slices","part","ret","push","complement","monochromatic","res","modification","splitcomplement","onBackground","background","fg","bg","triad","polyad","tetrad","n","result","increment","i","equals","legacyRandom","fromRatio","ratio","newColor","undefined","Number","random","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","goldenrod","gold","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavenderblush","lavender","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","__createBinding","create","o","m","k","k2","desc","getOwnPropertyDescriptor","__esModule","writable","configurable","enumerable","get","__exportStar","convertDecimalToHex","rgbaToArgbHex","hue2rgb","q","t","d","parseFloat","val","parseInt","floor","f","mod","pad2","charAt","join","toMsFilter","firstColor","secondColor","hex8String","secondHex8String","isOnePointZero","indexOf","isPercentage","isPercent","abs","isNaN","c","bounds","getColorInfo","bounds_1","defineColor","hueRange","Error","randomWithin","range","seed","bound","sMin","lowerBounds","sMax","bMin","bMax","name","saturationRange","brightnessRange","options","count","totalColors","colors","colorInput","num","namedColor","find","parsed","getHueRange","pickHue","luminosity","pickSaturation","H","S","s1","v1","s2","v2","getMinimumBrightness","pickBrightness"],"ignoreList":[],"sourceRoot":""}