UNPKG

react-js-loader

Version:
338 lines (297 loc) 7.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var colorTypes = { aliceblue: "#F0F8FF", antiquewhite: "#FAEBD7", aqua: "#00FFFF", aquamarine: "#7FFFD4", azure: "#F0FFFF", beige: "#F5F5DC", bisque: "#FFE4C4", black: "#000000", blanchedalmond: "#FFEBCD", blue: "#0000FF", blueviolet: "#8A2BE2", brown: "#A52A2A", burlywood: "#DEB887", cadetblue: "#5F9EA0", chartreuse: "#7FFF00", chocolate: "#D2691E", coral: "#FF7F50", cornflowerblue: "#6495ED", cornsilk: "#FFF8DC", crimson: "#DC143C", cyan: "#00FFFF", darkblue: "#00008B", darkcyan: "#008B8B", darkgoldenrod: "#B8860B", darkgray: "#A9A9A9", darkgrey: "#A9A9A9", darkgreen: "#006400", darkkhaki: "#BDB76B", darkmagenta: "#8B008B", darkolivegreen: "#556B2F", darkorange: "#FF8C00", darkorchid: "#9932CC", darkred: "#8B0000", darksalmon: "#E9967A", darkseagreen: "#8FBC8F", darkslateblue: "#483D8B", darkslategray: "#2F4F4F", darkslategrey: "#2F4F4F", darkturquoise: "#00CED1", darkviolet: "#9400D3", deeppink: "#FF1493", deepskyblue: "#00BFFF", dimgray: "#696969", dimgrey: "#696969", dodgerblue: "#1E90FF", firebrick: "#B22222", floralwhite: "#FFFAF0", forestgreen: "#228B22", fuchsia: "#FF00FF", gainsboro: "#DCDCDC", ghostwhite: "#F8F8FF", gold: "#FFD700", goldenrod: "#DAA520", gray: "#808080", grey: "#808080", green: "#008000", greenyellow: "#ADFF2F", honeydew: "#F0FFF0", hotpink: "#FF69B4", indianred: "#CD5C5C", indigo: "#4B0082", ivory: "#FFFFF0", khaki: "#F0E68C", lavender: "#E6E6FA", lavenderblush: "#FFF0F5", lawngreen: "#7CFC00", lemonchiffon: "#FFFACD", lightblue: "#ADD8E6", lightcoral: "#F08080", lightcyan: "#E0FFFF", lightgoldenrodyellow: "#FAFAD2", lightgray: "#D3D3D3", lightgrey: "#D3D3D3", lightgreen: "#90EE90", lightpink: "#FFB6C1", lightsalmon: "#FFA07A", lightseagreen: "#20B2AA", lightskyblue: "#87CEFA", lightslategray: "#778899", lightslategrey: "#778899", lightsteelblue: "#B0C4DE", lightyellow: "#FFFFE0", lime: "#00FF00", limegreen: "#32CD32", linen: "#FAF0E6", magenta: "#FF00FF", maroon: "#800000", mediumaquamarine: "#66CDAA", mediumblue: "#0000CD", mediumorchid: "#BA55D3", mediumpurple: "#9370D8", mediumseagreen: "#3CB371", mediumslateblue: "#7B68EE", mediumspringgreen: "#00FA9A", mediumturquoise: "#48D1CC", mediumvioletred: "#C71585", midnightblue: "#191970", mintcream: "#F5FFFA", mistyrose: "#FFE4E1", moccasin: "#FFE4B5", navajowhite: "#FFDEAD", navy: "#000080", oldlace: "#FDF5E6", olive: "#808000", olivedrab: "#6B8E23", orange: "#FFA500", orangered: "#FF4500", orchid: "#DA70D6", palegoldenrod: "#EEE8AA", palegreen: "#98FB98", paleturquoise: "#AFEEEE", palevioletred: "#D87093", papayawhip: "#FFEFD5", peachpuff: "#FFDAB9", peru: "#CD853F", pink: "#FFC0CB", plum: "#DDA0DD", powderblue: "#B0E0E6", purple: "#800080", red: "#FF0000", rosybrown: "#BC8F8F", royalblue: "#4169E1", saddlebrown: "#8B4513", salmon: "#FA8072", sandybrown: "#F4A460", seagreen: "#2E8B57", seashell: "#FFF5EE", sienna: "#A0522D", silver: "#C0C0C0", skyblue: "#87CEEB", slateblue: "#6A5ACD", slategray: "#708090", slategrey: "#708090", snow: "#FFFAFA", springgreen: "#00FF7F", steelblue: "#4682B4", tan: "#D2B48C", teal: "#008080", thistle: "#D8BFD8", tomato: "#FF6347", turquoise: "#40E0D0", violet: "#EE82EE", wheat: "#F5DEB3", white: "#FFFFFF", whitesmoke: "#F5F5F5", yellow: "#FFFF00", yellowgreen: "#9ACD32" }; var getColorByName = function getColorByName(name) { var key = name.toLowerCase(); if (colorTypes.hasOwnProperty(key)) { return colorTypes[key]; } return name; }; var rgbToHex = function rgbToHex(rgb) { var hex = Number(parseInt(rgb)).toString(16); if (hex.length < 2) { hex = "0" + hex; } return hex; }; var percentToCountForRGB = function percentToCountForRGB(p) { var per = parseInt(p); if (isNaN(per) || per === 0) { return rgbToHex(0); } var count = Math.round(255 / 100 * per); return rgbToHex(count); }; var fullColorHex = function fullColorHex(r, g, b) { var red = r.indexOf('%') === -1 ? rgbToHex(r) : percentToCountForRGB(r); var green = g.indexOf('%') === -1 ? rgbToHex(g) : percentToCountForRGB(g); var blue = b.indexOf('%') === -1 ? rgbToHex(b) : percentToCountForRGB(b); return red + green + blue; }; var hslToHex = function hslToHex(h, sat, light) { var s = parseInt(sat); var l = parseInt(light); if (isNaN(s) || isNaN(l)) { return '#000000'; } if (h < 0 || sat < 0 || sat > 100 || light < 0 || light > 100) { return '#000000'; } if (h.indexOf("deg") > -1) { h = h.substr(0, h.length - 3); } if (h.indexOf("rad") > -1) { h = Math.round(h.substr(0, h.length - 3) * (180 / Math.PI)); } if (h.indexOf("turn") > -1) { h = Math.round(h.substr(0, h.length - 4) * 360); } if (h >= 360) { h %= 360; } s /= 100; l /= 100; var c = (1 - Math.abs(2 * l - 1)) * s; var x = c * (1 - Math.abs(h / 60 % 2 - 1)); var m = l - c / 2; var r = 0; var g = 0; var b = 0; if (0 <= h && h < 60) { r = c; g = x; b = 0; } else if (60 <= h && h < 120) { r = x; g = c; b = 0; } else if (120 <= h && h < 180) { r = 0; g = c; b = x; } else if (180 <= h && h < 240) { r = 0; g = x; b = c; } else if (240 <= h && h < 300) { r = x; g = 0; b = c; } else if (300 <= h && h < 360) { r = c; g = 0; b = x; } // Having obtained RGB, convert channels to hex r = Math.round((r + m) * 255).toString(16); g = Math.round((g + m) * 255).toString(16); b = Math.round((b + m) * 255).toString(16); if (r.length === 1) { r = "0" + r; } if (g.length === 1) { g = "0" + g; } if (b.length === 1) { b = "0" + b; } return "#".concat(r).concat(g).concat(b); }; var hexColorThreeDigitToSixDigit = function hexColorThreeDigitToSixDigit(color, alpha) { if (color.length === 4) { var thereHex = color.substring(1, color.length); var thereArray = thereHex.split(''); var sixHex = thereArray.reduce(function (total, item) { return total += item + item; }, ''); return "#".concat(sixHex).concat(alpha); } return "".concat(color).concat(alpha); }; var trim = function trim(str) { str = str.split(' ').join(''); if (str.indexOf(' ') !== -1) { return trim(str); } return str; }; var rgbToPart = function rgbToPart(color, alpha) { if (color.indexOf("rgb") !== -1) { var arrBefore = color.substring(4, color.length - 1); var arr = arrBefore.split(","); return "#" + fullColorHex(trim(arr[0]), trim(arr[1]), trim(arr[2])) + alpha; } if (color.indexOf("#") !== -1) { return hexColorThreeDigitToSixDigit(color, alpha); } if (color.indexOf("hsl") !== -1) { var _arrBefore = color.substring(4, color.length - 1); var _arr = _arrBefore.split(",").join('').split(' '); return hslToHex(trim(_arr[0]), trim(_arr[1]), trim(_arr[2])) + alpha; } return getColorByName(color) + alpha; }; var getZoom = function getZoom(count) { var size = parseFloat(count); if (size === 0) { return 0; } var zoom = size / 100; return zoom.toFixed(2); }; var _default = { rgbToPart: rgbToPart, getZoom: getZoom }; exports.default = _default;