@stryke/capnp 0.12.67 → 0.12.69

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers-DdetET6R.mjs","names":["convert","conversions","models","styles","stringReplaceAll","stringEncaseCRLFWithFirstIndex","styles","chalk","chalk","chalk","resolvedTsconfig!: ParsedCommandLine"],"sources":["../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-DJB7XLHA.js","../../../../node_modules/.pnpm/color-name@1.1.4/node_modules/color-name/index.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/conversions.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/route.js","../../../../node_modules/.pnpm/color-convert@2.0.1/node_modules/color-convert/index.js","../../../../node_modules/.pnpm/ansi-styles@4.3.0/node_modules/ansi-styles/index.js","../../../../node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js","../../../../node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/util.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/templates.js","../../../../node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/source/index.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-HVVJHTFS.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-G2MK47WL.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-POXTJ6GF.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-AITAR5W5.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-CZ4IE2QN.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-K4CDYUQR.js","../../../../node_modules/.pnpm/@storm-software+config-tools@1.189.0/node_modules/@storm-software/config-tools/dist/chunk-NMO4EWXQ.js","../../../convert/src/to-array.ts","../../src/helpers.ts"],"sourcesContent":["// src/utilities/colors.ts\nvar DEFAULT_COLOR_CONFIG = {\n light: {\n background: \"#fafafa\",\n foreground: \"#1d1e22\",\n brand: \"#1fb2a6\",\n alternate: \"#db2777\",\n help: \"#5C4EE5\",\n success: \"#087f5b\",\n info: \"#0550ae\",\n debug: \"#8afafc\",\n warning: \"#e3b341\",\n danger: \"#D8314A\",\n fatal: \"#51070f\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#5C4EE5\"]\n },\n dark: {\n background: \"#1d1e22\",\n foreground: \"#cbd5e1\",\n brand: \"#2dd4bf\",\n alternate: \"#db2777\",\n help: \"#818cf8\",\n success: \"#10b981\",\n info: \"#58a6ff\",\n debug: \"#8afafc\",\n warning: \"#f3d371\",\n danger: \"#D8314A\",\n fatal: \"#a40e26\",\n link: \"#3fa6ff\",\n positive: \"#22c55e\",\n negative: \"#dc2626\",\n gradient: [\"#1fb2a6\", \"#db2777\", \"#818cf8\"]\n }\n};\nfunction getColors(config) {\n if (!config?.colors || typeof config.colors !== \"object\" || !config.colors[\"dark\"] && (!config.colors[\"base\"] || typeof config.colors !== \"object\" || !config.colors[\"base\"]?.[\"dark\"])) {\n return DEFAULT_COLOR_CONFIG;\n }\n if (config.colors[\"base\"]) {\n if (typeof config.colors[\"base\"][\"dark\"] === \"object\") {\n return config.colors[\"base\"][\"dark\"];\n } else if (config.colors[\"base\"][\"dark\"] === \"string\") {\n return config.colors[\"base\"];\n }\n }\n if (typeof config.colors[\"dark\"] === \"object\") {\n return config.colors[\"dark\"];\n }\n return config.colors ?? DEFAULT_COLOR_CONFIG;\n}\nfunction getColor(key, config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"][key] : colors[key]) || DEFAULT_COLOR_CONFIG[\"dark\"][key] || DEFAULT_COLOR_CONFIG[key];\n if (result) {\n return result;\n }\n if (key === \"link\" || key === \"debug\") {\n return getColor(\"info\", config);\n } else if (key === \"fatal\") {\n return getColor(\"danger\", config);\n }\n return getColor(\"brand\", config);\n}\nfunction getGradient(config) {\n const colors = getColors(config);\n const result = (typeof colors[\"dark\"] === \"object\" ? colors[\"dark\"].gradient : colors.gradient) || DEFAULT_COLOR_CONFIG[\"dark\"].gradient;\n if (result && Array.isArray(result) && result.length > 0) {\n return result;\n }\n return void 0;\n}\n\nexport {\n DEFAULT_COLOR_CONFIG,\n getColors,\n getColor,\n getGradient\n};\n","'use strict'\r\n\r\nmodule.exports = {\r\n\t\"aliceblue\": [240, 248, 255],\r\n\t\"antiquewhite\": [250, 235, 215],\r\n\t\"aqua\": [0, 255, 255],\r\n\t\"aquamarine\": [127, 255, 212],\r\n\t\"azure\": [240, 255, 255],\r\n\t\"beige\": [245, 245, 220],\r\n\t\"bisque\": [255, 228, 196],\r\n\t\"black\": [0, 0, 0],\r\n\t\"blanchedalmond\": [255, 235, 205],\r\n\t\"blue\": [0, 0, 255],\r\n\t\"blueviolet\": [138, 43, 226],\r\n\t\"brown\": [165, 42, 42],\r\n\t\"burlywood\": [222, 184, 135],\r\n\t\"cadetblue\": [95, 158, 160],\r\n\t\"chartreuse\": [127, 255, 0],\r\n\t\"chocolate\": [210, 105, 30],\r\n\t\"coral\": [255, 127, 80],\r\n\t\"cornflowerblue\": [100, 149, 237],\r\n\t\"cornsilk\": [255, 248, 220],\r\n\t\"crimson\": [220, 20, 60],\r\n\t\"cyan\": [0, 255, 255],\r\n\t\"darkblue\": [0, 0, 139],\r\n\t\"darkcyan\": [0, 139, 139],\r\n\t\"darkgoldenrod\": [184, 134, 11],\r\n\t\"darkgray\": [169, 169, 169],\r\n\t\"darkgreen\": [0, 100, 0],\r\n\t\"darkgrey\": [169, 169, 169],\r\n\t\"darkkhaki\": [189, 183, 107],\r\n\t\"darkmagenta\": [139, 0, 139],\r\n\t\"darkolivegreen\": [85, 107, 47],\r\n\t\"darkorange\": [255, 140, 0],\r\n\t\"darkorchid\": [153, 50, 204],\r\n\t\"darkred\": [139, 0, 0],\r\n\t\"darksalmon\": [233, 150, 122],\r\n\t\"darkseagreen\": [143, 188, 143],\r\n\t\"darkslateblue\": [72, 61, 139],\r\n\t\"darkslategray\": [47, 79, 79],\r\n\t\"darkslategrey\": [47, 79, 79],\r\n\t\"darkturquoise\": [0, 206, 209],\r\n\t\"darkviolet\": [148, 0, 211],\r\n\t\"deeppink\": [255, 20, 147],\r\n\t\"deepskyblue\": [0, 191, 255],\r\n\t\"dimgray\": [105, 105, 105],\r\n\t\"dimgrey\": [105, 105, 105],\r\n\t\"dodgerblue\": [30, 144, 255],\r\n\t\"firebrick\": [178, 34, 34],\r\n\t\"floralwhite\": [255, 250, 240],\r\n\t\"forestgreen\": [34, 139, 34],\r\n\t\"fuchsia\": [255, 0, 255],\r\n\t\"gainsboro\": [220, 220, 220],\r\n\t\"ghostwhite\": [248, 248, 255],\r\n\t\"gold\": [255, 215, 0],\r\n\t\"goldenrod\": [218, 165, 32],\r\n\t\"gray\": [128, 128, 128],\r\n\t\"green\": [0, 128, 0],\r\n\t\"greenyellow\": [173, 255, 47],\r\n\t\"grey\": [128, 128, 128],\r\n\t\"honeydew\": [240, 255, 240],\r\n\t\"hotpink\": [255, 105, 180],\r\n\t\"indianred\": [205, 92, 92],\r\n\t\"indigo\": [75, 0, 130],\r\n\t\"ivory\": [255, 255, 240],\r\n\t\"khaki\": [240, 230, 140],\r\n\t\"lavender\": [230, 230, 250],\r\n\t\"lavenderblush\": [255, 240, 245],\r\n\t\"lawngreen\": [124, 252, 0],\r\n\t\"lemonchiffon\": [255, 250, 205],\r\n\t\"lightblue\": [173, 216, 230],\r\n\t\"lightcoral\": [240, 128, 128],\r\n\t\"lightcyan\": [224, 255, 255],\r\n\t\"lightgoldenrodyellow\": [250, 250, 210],\r\n\t\"lightgray\": [211, 211, 211],\r\n\t\"lightgreen\": [144, 238, 144],\r\n\t\"lightgrey\": [211, 211, 211],\r\n\t\"lightpink\": [255, 182, 193],\r\n\t\"lightsalmon\": [255, 160, 122],\r\n\t\"lightseagreen\": [32, 178, 170],\r\n\t\"lightskyblue\": [135, 206, 250],\r\n\t\"lightslategray\": [119, 136, 153],\r\n\t\"lightslategrey\": [119, 136, 153],\r\n\t\"lightsteelblue\": [176, 196, 222],\r\n\t\"lightyellow\": [255, 255, 224],\r\n\t\"lime\": [0, 255, 0],\r\n\t\"limegreen\": [50, 205, 50],\r\n\t\"linen\": [250, 240, 230],\r\n\t\"magenta\": [255, 0, 255],\r\n\t\"maroon\": [128, 0, 0],\r\n\t\"mediumaquamarine\": [102, 205, 170],\r\n\t\"mediumblue\": [0, 0, 205],\r\n\t\"mediumorchid\": [186, 85, 211],\r\n\t\"mediumpurple\": [147, 112, 219],\r\n\t\"mediumseagreen\": [60, 179, 113],\r\n\t\"mediumslateblue\": [123, 104, 238],\r\n\t\"mediumspringgreen\": [0, 250, 154],\r\n\t\"mediumturquoise\": [72, 209, 204],\r\n\t\"mediumvioletred\": [199, 21, 133],\r\n\t\"midnightblue\": [25, 25, 112],\r\n\t\"mintcream\": [245, 255, 250],\r\n\t\"mistyrose\": [255, 228, 225],\r\n\t\"moccasin\": [255, 228, 181],\r\n\t\"navajowhite\": [255, 222, 173],\r\n\t\"navy\": [0, 0, 128],\r\n\t\"oldlace\": [253, 245, 230],\r\n\t\"olive\": [128, 128, 0],\r\n\t\"olivedrab\": [107, 142, 35],\r\n\t\"orange\": [255, 165, 0],\r\n\t\"orangered\": [255, 69, 0],\r\n\t\"orchid\": [218, 112, 214],\r\n\t\"palegoldenrod\": [238, 232, 170],\r\n\t\"palegreen\": [152, 251, 152],\r\n\t\"paleturquoise\": [175, 238, 238],\r\n\t\"palevioletred\": [219, 112, 147],\r\n\t\"papayawhip\": [255, 239, 213],\r\n\t\"peachpuff\": [255, 218, 185],\r\n\t\"peru\": [205, 133, 63],\r\n\t\"pink\": [255, 192, 203],\r\n\t\"plum\": [221, 160, 221],\r\n\t\"powderblue\": [176, 224, 230],\r\n\t\"purple\": [128, 0, 128],\r\n\t\"rebeccapurple\": [102, 51, 153],\r\n\t\"red\": [255, 0, 0],\r\n\t\"rosybrown\": [188, 143, 143],\r\n\t\"royalblue\": [65, 105, 225],\r\n\t\"saddlebrown\": [139, 69, 19],\r\n\t\"salmon\": [250, 128, 114],\r\n\t\"sandybrown\": [244, 164, 96],\r\n\t\"seagreen\": [46, 139, 87],\r\n\t\"seashell\": [255, 245, 238],\r\n\t\"sienna\": [160, 82, 45],\r\n\t\"silver\": [192, 192, 192],\r\n\t\"skyblue\": [135, 206, 235],\r\n\t\"slateblue\": [106, 90, 205],\r\n\t\"slategray\": [112, 128, 144],\r\n\t\"slategrey\": [112, 128, 144],\r\n\t\"snow\": [255, 250, 250],\r\n\t\"springgreen\": [0, 255, 127],\r\n\t\"steelblue\": [70, 130, 180],\r\n\t\"tan\": [210, 180, 140],\r\n\t\"teal\": [0, 128, 128],\r\n\t\"thistle\": [216, 191, 216],\r\n\t\"tomato\": [255, 99, 71],\r\n\t\"turquoise\": [64, 224, 208],\r\n\t\"violet\": [238, 130, 238],\r\n\t\"wheat\": [245, 222, 179],\r\n\t\"white\": [255, 255, 255],\r\n\t\"whitesmoke\": [245, 245, 245],\r\n\t\"yellow\": [255, 255, 0],\r\n\t\"yellowgreen\": [154, 205, 50]\r\n};\r\n","/* MIT license */\n/* eslint-disable no-mixed-operators */\nconst cssKeywords = require('color-name');\n\n// NOTE: conversions should only return primitive values (i.e. arrays, or\n// values that give correct `typeof` results).\n// do not use box values types (i.e. Number(), String(), etc.)\n\nconst reverseKeywords = {};\nfor (const key of Object.keys(cssKeywords)) {\n\treverseKeywords[cssKeywords[key]] = key;\n}\n\nconst convert = {\n\trgb: {channels: 3, labels: 'rgb'},\n\thsl: {channels: 3, labels: 'hsl'},\n\thsv: {channels: 3, labels: 'hsv'},\n\thwb: {channels: 3, labels: 'hwb'},\n\tcmyk: {channels: 4, labels: 'cmyk'},\n\txyz: {channels: 3, labels: 'xyz'},\n\tlab: {channels: 3, labels: 'lab'},\n\tlch: {channels: 3, labels: 'lch'},\n\thex: {channels: 1, labels: ['hex']},\n\tkeyword: {channels: 1, labels: ['keyword']},\n\tansi16: {channels: 1, labels: ['ansi16']},\n\tansi256: {channels: 1, labels: ['ansi256']},\n\thcg: {channels: 3, labels: ['h', 'c', 'g']},\n\tapple: {channels: 3, labels: ['r16', 'g16', 'b16']},\n\tgray: {channels: 1, labels: ['gray']}\n};\n\nmodule.exports = convert;\n\n// Hide .channels and .labels properties\nfor (const model of Object.keys(convert)) {\n\tif (!('channels' in convert[model])) {\n\t\tthrow new Error('missing channels property: ' + model);\n\t}\n\n\tif (!('labels' in convert[model])) {\n\t\tthrow new Error('missing channel labels property: ' + model);\n\t}\n\n\tif (convert[model].labels.length !== convert[model].channels) {\n\t\tthrow new Error('channel and label counts mismatch: ' + model);\n\t}\n\n\tconst {channels, labels} = convert[model];\n\tdelete convert[model].channels;\n\tdelete convert[model].labels;\n\tObject.defineProperty(convert[model], 'channels', {value: channels});\n\tObject.defineProperty(convert[model], 'labels', {value: labels});\n}\n\nconvert.rgb.hsl = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst min = Math.min(r, g, b);\n\tconst max = Math.max(r, g, b);\n\tconst delta = max - min;\n\tlet h;\n\tlet s;\n\n\tif (max === min) {\n\t\th = 0;\n\t} else if (r === max) {\n\t\th = (g - b) / delta;\n\t} else if (g === max) {\n\t\th = 2 + (b - r) / delta;\n\t} else if (b === max) {\n\t\th = 4 + (r - g) / delta;\n\t}\n\n\th = Math.min(h * 60, 360);\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst l = (min + max) / 2;\n\n\tif (max === min) {\n\t\ts = 0;\n\t} else if (l <= 0.5) {\n\t\ts = delta / (max + min);\n\t} else {\n\t\ts = delta / (2 - max - min);\n\t}\n\n\treturn [h, s * 100, l * 100];\n};\n\nconvert.rgb.hsv = function (rgb) {\n\tlet rdif;\n\tlet gdif;\n\tlet bdif;\n\tlet h;\n\tlet s;\n\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst v = Math.max(r, g, b);\n\tconst diff = v - Math.min(r, g, b);\n\tconst diffc = function (c) {\n\t\treturn (v - c) / 6 / diff + 1 / 2;\n\t};\n\n\tif (diff === 0) {\n\t\th = 0;\n\t\ts = 0;\n\t} else {\n\t\ts = diff / v;\n\t\trdif = diffc(r);\n\t\tgdif = diffc(g);\n\t\tbdif = diffc(b);\n\n\t\tif (r === v) {\n\t\t\th = bdif - gdif;\n\t\t} else if (g === v) {\n\t\t\th = (1 / 3) + rdif - bdif;\n\t\t} else if (b === v) {\n\t\t\th = (2 / 3) + gdif - rdif;\n\t\t}\n\n\t\tif (h < 0) {\n\t\t\th += 1;\n\t\t} else if (h > 1) {\n\t\t\th -= 1;\n\t\t}\n\t}\n\n\treturn [\n\t\th * 360,\n\t\ts * 100,\n\t\tv * 100\n\t];\n};\n\nconvert.rgb.hwb = function (rgb) {\n\tconst r = rgb[0];\n\tconst g = rgb[1];\n\tlet b = rgb[2];\n\tconst h = convert.rgb.hsl(rgb)[0];\n\tconst w = 1 / 255 * Math.min(r, Math.min(g, b));\n\n\tb = 1 - 1 / 255 * Math.max(r, Math.max(g, b));\n\n\treturn [h, w * 100, b * 100];\n};\n\nconvert.rgb.cmyk = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\n\tconst k = Math.min(1 - r, 1 - g, 1 - b);\n\tconst c = (1 - r - k) / (1 - k) || 0;\n\tconst m = (1 - g - k) / (1 - k) || 0;\n\tconst y = (1 - b - k) / (1 - k) || 0;\n\n\treturn [c * 100, m * 100, y * 100, k * 100];\n};\n\nfunction comparativeDistance(x, y) {\n\t/*\n\t\tSee https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance\n\t*/\n\treturn (\n\t\t((x[0] - y[0]) ** 2) +\n\t\t((x[1] - y[1]) ** 2) +\n\t\t((x[2] - y[2]) ** 2)\n\t);\n}\n\nconvert.rgb.keyword = function (rgb) {\n\tconst reversed = reverseKeywords[rgb];\n\tif (reversed) {\n\t\treturn reversed;\n\t}\n\n\tlet currentClosestDistance = Infinity;\n\tlet currentClosestKeyword;\n\n\tfor (const keyword of Object.keys(cssKeywords)) {\n\t\tconst value = cssKeywords[keyword];\n\n\t\t// Compute comparative distance\n\t\tconst distance = comparativeDistance(rgb, value);\n\n\t\t// Check if its less, if so set as closest\n\t\tif (distance < currentClosestDistance) {\n\t\t\tcurrentClosestDistance = distance;\n\t\t\tcurrentClosestKeyword = keyword;\n\t\t}\n\t}\n\n\treturn currentClosestKeyword;\n};\n\nconvert.keyword.rgb = function (keyword) {\n\treturn cssKeywords[keyword];\n};\n\nconvert.rgb.xyz = function (rgb) {\n\tlet r = rgb[0] / 255;\n\tlet g = rgb[1] / 255;\n\tlet b = rgb[2] / 255;\n\n\t// Assume sRGB\n\tr = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92);\n\tg = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92);\n\tb = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92);\n\n\tconst x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);\n\tconst y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);\n\tconst z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);\n\n\treturn [x * 100, y * 100, z * 100];\n};\n\nconvert.rgb.lab = function (rgb) {\n\tconst xyz = convert.rgb.xyz(rgb);\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.hsl.rgb = function (hsl) {\n\tconst h = hsl[0] / 360;\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\tlet t2;\n\tlet t3;\n\tlet val;\n\n\tif (s === 0) {\n\t\tval = l * 255;\n\t\treturn [val, val, val];\n\t}\n\n\tif (l < 0.5) {\n\t\tt2 = l * (1 + s);\n\t} else {\n\t\tt2 = l + s - l * s;\n\t}\n\n\tconst t1 = 2 * l - t2;\n\n\tconst rgb = [0, 0, 0];\n\tfor (let i = 0; i < 3; i++) {\n\t\tt3 = h + 1 / 3 * -(i - 1);\n\t\tif (t3 < 0) {\n\t\t\tt3++;\n\t\t}\n\n\t\tif (t3 > 1) {\n\t\t\tt3--;\n\t\t}\n\n\t\tif (6 * t3 < 1) {\n\t\t\tval = t1 + (t2 - t1) * 6 * t3;\n\t\t} else if (2 * t3 < 1) {\n\t\t\tval = t2;\n\t\t} else if (3 * t3 < 2) {\n\t\t\tval = t1 + (t2 - t1) * (2 / 3 - t3) * 6;\n\t\t} else {\n\t\t\tval = t1;\n\t\t}\n\n\t\trgb[i] = val * 255;\n\t}\n\n\treturn rgb;\n};\n\nconvert.hsl.hsv = function (hsl) {\n\tconst h = hsl[0];\n\tlet s = hsl[1] / 100;\n\tlet l = hsl[2] / 100;\n\tlet smin = s;\n\tconst lmin = Math.max(l, 0.01);\n\n\tl *= 2;\n\ts *= (l <= 1) ? l : 2 - l;\n\tsmin *= lmin <= 1 ? lmin : 2 - lmin;\n\tconst v = (l + s) / 2;\n\tconst sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s);\n\n\treturn [h, sv * 100, v * 100];\n};\n\nconvert.hsv.rgb = function (hsv) {\n\tconst h = hsv[0] / 60;\n\tconst s = hsv[1] / 100;\n\tlet v = hsv[2] / 100;\n\tconst hi = Math.floor(h) % 6;\n\n\tconst f = h - Math.floor(h);\n\tconst p = 255 * v * (1 - s);\n\tconst q = 255 * v * (1 - (s * f));\n\tconst t = 255 * v * (1 - (s * (1 - f)));\n\tv *= 255;\n\n\tswitch (hi) {\n\t\tcase 0:\n\t\t\treturn [v, t, p];\n\t\tcase 1:\n\t\t\treturn [q, v, p];\n\t\tcase 2:\n\t\t\treturn [p, v, t];\n\t\tcase 3:\n\t\t\treturn [p, q, v];\n\t\tcase 4:\n\t\t\treturn [t, p, v];\n\t\tcase 5:\n\t\t\treturn [v, p, q];\n\t}\n};\n\nconvert.hsv.hsl = function (hsv) {\n\tconst h = hsv[0];\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\tconst vmin = Math.max(v, 0.01);\n\tlet sl;\n\tlet l;\n\n\tl = (2 - s) * v;\n\tconst lmin = (2 - s) * vmin;\n\tsl = s * vmin;\n\tsl /= (lmin <= 1) ? lmin : 2 - lmin;\n\tsl = sl || 0;\n\tl /= 2;\n\n\treturn [h, sl * 100, l * 100];\n};\n\n// http://dev.w3.org/csswg/css-color/#hwb-to-rgb\nconvert.hwb.rgb = function (hwb) {\n\tconst h = hwb[0] / 360;\n\tlet wh = hwb[1] / 100;\n\tlet bl = hwb[2] / 100;\n\tconst ratio = wh + bl;\n\tlet f;\n\n\t// Wh + bl cant be > 1\n\tif (ratio > 1) {\n\t\twh /= ratio;\n\t\tbl /= ratio;\n\t}\n\n\tconst i = Math.floor(6 * h);\n\tconst v = 1 - bl;\n\tf = 6 * h - i;\n\n\tif ((i & 0x01) !== 0) {\n\t\tf = 1 - f;\n\t}\n\n\tconst n = wh + f * (v - wh); // Linear interpolation\n\n\tlet r;\n\tlet g;\n\tlet b;\n\t/* eslint-disable max-statements-per-line,no-multi-spaces */\n\tswitch (i) {\n\t\tdefault:\n\t\tcase 6:\n\t\tcase 0: r = v; g = n; b = wh; break;\n\t\tcase 1: r = n; g = v; b = wh; break;\n\t\tcase 2: r = wh; g = v; b = n; break;\n\t\tcase 3: r = wh; g = n; b = v; break;\n\t\tcase 4: r = n; g = wh; b = v; break;\n\t\tcase 5: r = v; g = wh; b = n; break;\n\t}\n\t/* eslint-enable max-statements-per-line,no-multi-spaces */\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.cmyk.rgb = function (cmyk) {\n\tconst c = cmyk[0] / 100;\n\tconst m = cmyk[1] / 100;\n\tconst y = cmyk[2] / 100;\n\tconst k = cmyk[3] / 100;\n\n\tconst r = 1 - Math.min(1, c * (1 - k) + k);\n\tconst g = 1 - Math.min(1, m * (1 - k) + k);\n\tconst b = 1 - Math.min(1, y * (1 - k) + k);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.rgb = function (xyz) {\n\tconst x = xyz[0] / 100;\n\tconst y = xyz[1] / 100;\n\tconst z = xyz[2] / 100;\n\tlet r;\n\tlet g;\n\tlet b;\n\n\tr = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);\n\tg = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);\n\tb = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);\n\n\t// Assume sRGB\n\tr = r > 0.0031308\n\t\t? ((1.055 * (r ** (1.0 / 2.4))) - 0.055)\n\t\t: r * 12.92;\n\n\tg = g > 0.0031308\n\t\t? ((1.055 * (g ** (1.0 / 2.4))) - 0.055)\n\t\t: g * 12.92;\n\n\tb = b > 0.0031308\n\t\t? ((1.055 * (b ** (1.0 / 2.4))) - 0.055)\n\t\t: b * 12.92;\n\n\tr = Math.min(Math.max(0, r), 1);\n\tg = Math.min(Math.max(0, g), 1);\n\tb = Math.min(Math.max(0, b), 1);\n\n\treturn [r * 255, g * 255, b * 255];\n};\n\nconvert.xyz.lab = function (xyz) {\n\tlet x = xyz[0];\n\tlet y = xyz[1];\n\tlet z = xyz[2];\n\n\tx /= 95.047;\n\ty /= 100;\n\tz /= 108.883;\n\n\tx = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116);\n\ty = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116);\n\tz = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116);\n\n\tconst l = (116 * y) - 16;\n\tconst a = 500 * (x - y);\n\tconst b = 200 * (y - z);\n\n\treturn [l, a, b];\n};\n\nconvert.lab.xyz = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet x;\n\tlet y;\n\tlet z;\n\n\ty = (l + 16) / 116;\n\tx = a / 500 + y;\n\tz = y - b / 200;\n\n\tconst y2 = y ** 3;\n\tconst x2 = x ** 3;\n\tconst z2 = z ** 3;\n\ty = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787;\n\tx = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787;\n\tz = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787;\n\n\tx *= 95.047;\n\ty *= 100;\n\tz *= 108.883;\n\n\treturn [x, y, z];\n};\n\nconvert.lab.lch = function (lab) {\n\tconst l = lab[0];\n\tconst a = lab[1];\n\tconst b = lab[2];\n\tlet h;\n\n\tconst hr = Math.atan2(b, a);\n\th = hr * 360 / 2 / Math.PI;\n\n\tif (h < 0) {\n\t\th += 360;\n\t}\n\n\tconst c = Math.sqrt(a * a + b * b);\n\n\treturn [l, c, h];\n};\n\nconvert.lch.lab = function (lch) {\n\tconst l = lch[0];\n\tconst c = lch[1];\n\tconst h = lch[2];\n\n\tconst hr = h / 360 * 2 * Math.PI;\n\tconst a = c * Math.cos(hr);\n\tconst b = c * Math.sin(hr);\n\n\treturn [l, a, b];\n};\n\nconvert.rgb.ansi16 = function (args, saturation = null) {\n\tconst [r, g, b] = args;\n\tlet value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization\n\n\tvalue = Math.round(value / 50);\n\n\tif (value === 0) {\n\t\treturn 30;\n\t}\n\n\tlet ansi = 30\n\t\t+ ((Math.round(b / 255) << 2)\n\t\t| (Math.round(g / 255) << 1)\n\t\t| Math.round(r / 255));\n\n\tif (value === 2) {\n\t\tansi += 60;\n\t}\n\n\treturn ansi;\n};\n\nconvert.hsv.ansi16 = function (args) {\n\t// Optimization here; we already know the value and don't need to get\n\t// it converted for us.\n\treturn convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);\n};\n\nconvert.rgb.ansi256 = function (args) {\n\tconst r = args[0];\n\tconst g = args[1];\n\tconst b = args[2];\n\n\t// We use the extended greyscale palette here, with the exception of\n\t// black and white. normal palette only has 4 greyscale shades.\n\tif (r === g && g === b) {\n\t\tif (r < 8) {\n\t\t\treturn 16;\n\t\t}\n\n\t\tif (r > 248) {\n\t\t\treturn 231;\n\t\t}\n\n\t\treturn Math.round(((r - 8) / 247) * 24) + 232;\n\t}\n\n\tconst ansi = 16\n\t\t+ (36 * Math.round(r / 255 * 5))\n\t\t+ (6 * Math.round(g / 255 * 5))\n\t\t+ Math.round(b / 255 * 5);\n\n\treturn ansi;\n};\n\nconvert.ansi16.rgb = function (args) {\n\tlet color = args % 10;\n\n\t// Handle greyscale\n\tif (color === 0 || color === 7) {\n\t\tif (args > 50) {\n\t\t\tcolor += 3.5;\n\t\t}\n\n\t\tcolor = color / 10.5 * 255;\n\n\t\treturn [color, color, color];\n\t}\n\n\tconst mult = (~~(args > 50) + 1) * 0.5;\n\tconst r = ((color & 1) * mult) * 255;\n\tconst g = (((color >> 1) & 1) * mult) * 255;\n\tconst b = (((color >> 2) & 1) * mult) * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.ansi256.rgb = function (args) {\n\t// Handle greyscale\n\tif (args >= 232) {\n\t\tconst c = (args - 232) * 10 + 8;\n\t\treturn [c, c, c];\n\t}\n\n\targs -= 16;\n\n\tlet rem;\n\tconst r = Math.floor(args / 36) / 5 * 255;\n\tconst g = Math.floor((rem = args % 36) / 6) / 5 * 255;\n\tconst b = (rem % 6) / 5 * 255;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hex = function (args) {\n\tconst integer = ((Math.round(args[0]) & 0xFF) << 16)\n\t\t+ ((Math.round(args[1]) & 0xFF) << 8)\n\t\t+ (Math.round(args[2]) & 0xFF);\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.hex.rgb = function (args) {\n\tconst match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);\n\tif (!match) {\n\t\treturn [0, 0, 0];\n\t}\n\n\tlet colorString = match[0];\n\n\tif (match[0].length === 3) {\n\t\tcolorString = colorString.split('').map(char => {\n\t\t\treturn char + char;\n\t\t}).join('');\n\t}\n\n\tconst integer = parseInt(colorString, 16);\n\tconst r = (integer >> 16) & 0xFF;\n\tconst g = (integer >> 8) & 0xFF;\n\tconst b = integer & 0xFF;\n\n\treturn [r, g, b];\n};\n\nconvert.rgb.hcg = function (rgb) {\n\tconst r = rgb[0] / 255;\n\tconst g = rgb[1] / 255;\n\tconst b = rgb[2] / 255;\n\tconst max = Math.max(Math.max(r, g), b);\n\tconst min = Math.min(Math.min(r, g), b);\n\tconst chroma = (max - min);\n\tlet grayscale;\n\tlet hue;\n\n\tif (chroma < 1) {\n\t\tgrayscale = min / (1 - chroma);\n\t} else {\n\t\tgrayscale = 0;\n\t}\n\n\tif (chroma <= 0) {\n\t\thue = 0;\n\t} else\n\tif (max === r) {\n\t\thue = ((g - b) / chroma) % 6;\n\t} else\n\tif (max === g) {\n\t\thue = 2 + (b - r) / chroma;\n\t} else {\n\t\thue = 4 + (r - g) / chroma;\n\t}\n\n\thue /= 6;\n\thue %= 1;\n\n\treturn [hue * 360, chroma * 100, grayscale * 100];\n};\n\nconvert.hsl.hcg = function (hsl) {\n\tconst s = hsl[1] / 100;\n\tconst l = hsl[2] / 100;\n\n\tconst c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l));\n\n\tlet f = 0;\n\tif (c < 1.0) {\n\t\tf = (l - 0.5 * c) / (1.0 - c);\n\t}\n\n\treturn [hsl[0], c * 100, f * 100];\n};\n\nconvert.hsv.hcg = function (hsv) {\n\tconst s = hsv[1] / 100;\n\tconst v = hsv[2] / 100;\n\n\tconst c = s * v;\n\tlet f = 0;\n\n\tif (c < 1.0) {\n\t\tf = (v - c) / (1 - c);\n\t}\n\n\treturn [hsv[0], c * 100, f * 100];\n};\n\nconvert.hcg.rgb = function (hcg) {\n\tconst h = hcg[0] / 360;\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tif (c === 0.0) {\n\t\treturn [g * 255, g * 255, g * 255];\n\t}\n\n\tconst pure = [0, 0, 0];\n\tconst hi = (h % 1) * 6;\n\tconst v = hi % 1;\n\tconst w = 1 - v;\n\tlet mg = 0;\n\n\t/* eslint-disable max-statements-per-line */\n\tswitch (Math.floor(hi)) {\n\t\tcase 0:\n\t\t\tpure[0] = 1; pure[1] = v; pure[2] = 0; break;\n\t\tcase 1:\n\t\t\tpure[0] = w; pure[1] = 1; pure[2] = 0; break;\n\t\tcase 2:\n\t\t\tpure[0] = 0; pure[1] = 1; pure[2] = v; break;\n\t\tcase 3:\n\t\t\tpure[0] = 0; pure[1] = w; pure[2] = 1; break;\n\t\tcase 4:\n\t\t\tpure[0] = v; pure[1] = 0; pure[2] = 1; break;\n\t\tdefault:\n\t\t\tpure[0] = 1; pure[1] = 0; pure[2] = w;\n\t}\n\t/* eslint-enable max-statements-per-line */\n\n\tmg = (1.0 - c) * g;\n\n\treturn [\n\t\t(c * pure[0] + mg) * 255,\n\t\t(c * pure[1] + mg) * 255,\n\t\t(c * pure[2] + mg) * 255\n\t];\n};\n\nconvert.hcg.hsv = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst v = c + g * (1.0 - c);\n\tlet f = 0;\n\n\tif (v > 0.0) {\n\t\tf = c / v;\n\t}\n\n\treturn [hcg[0], f * 100, v * 100];\n};\n\nconvert.hcg.hsl = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\n\tconst l = g * (1.0 - c) + 0.5 * c;\n\tlet s = 0;\n\n\tif (l > 0.0 && l < 0.5) {\n\t\ts = c / (2 * l);\n\t} else\n\tif (l >= 0.5 && l < 1.0) {\n\t\ts = c / (2 * (1 - l));\n\t}\n\n\treturn [hcg[0], s * 100, l * 100];\n};\n\nconvert.hcg.hwb = function (hcg) {\n\tconst c = hcg[1] / 100;\n\tconst g = hcg[2] / 100;\n\tconst v = c + g * (1.0 - c);\n\treturn [hcg[0], (v - c) * 100, (1 - v) * 100];\n};\n\nconvert.hwb.hcg = function (hwb) {\n\tconst w = hwb[1] / 100;\n\tconst b = hwb[2] / 100;\n\tconst v = 1 - b;\n\tconst c = v - w;\n\tlet g = 0;\n\n\tif (c < 1) {\n\t\tg = (v - c) / (1 - c);\n\t}\n\n\treturn [hwb[0], c * 100, g * 100];\n};\n\nconvert.apple.rgb = function (apple) {\n\treturn [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255];\n};\n\nconvert.rgb.apple = function (rgb) {\n\treturn [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535];\n};\n\nconvert.gray.rgb = function (args) {\n\treturn [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255];\n};\n\nconvert.gray.hsl = function (args) {\n\treturn [0, 0, args[0]];\n};\n\nconvert.gray.hsv = convert.gray.hsl;\n\nconvert.gray.hwb = function (gray) {\n\treturn [0, 100, gray[0]];\n};\n\nconvert.gray.cmyk = function (gray) {\n\treturn [0, 0, 0, gray[0]];\n};\n\nconvert.gray.lab = function (gray) {\n\treturn [gray[0], 0, 0];\n};\n\nconvert.gray.hex = function (gray) {\n\tconst val = Math.round(gray[0] / 100 * 255) & 0xFF;\n\tconst integer = (val << 16) + (val << 8) + val;\n\n\tconst string = integer.toString(16).toUpperCase();\n\treturn '000000'.substring(string.length) + string;\n};\n\nconvert.rgb.gray = function (rgb) {\n\tconst val = (rgb[0] + rgb[1] + rgb[2]) / 3;\n\treturn [val / 255 * 100];\n};\n","const conversions = require('./conversions');\n\n/*\n\tThis function routes a model to all other models.\n\n\tall functions that are routed have a property `.conversion` attached\n\tto the returned synthetic function. This property is an array\n\tof strings, each with the steps in between the 'from' and 'to'\n\tcolor models (inclusive).\n\n\tconversions that are not possible simply are not included.\n*/\n\nfunction buildGraph() {\n\tconst graph = {};\n\t// https://jsperf.com/object-keys-vs-for-in-with-closure/3\n\tconst models = Object.keys(conversions);\n\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tgraph[models[i]] = {\n\t\t\t// http://jsperf.com/1-vs-infinity\n\t\t\t// micro-opt, but this is simple.\n\t\t\tdistance: -1,\n\t\t\tparent: null\n\t\t};\n\t}\n\n\treturn graph;\n}\n\n// https://en.wikipedia.org/wiki/Breadth-first_search\nfunction deriveBFS(fromModel) {\n\tconst graph = buildGraph();\n\tconst queue = [fromModel]; // Unshift -> queue -> pop\n\n\tgraph[fromModel].distance = 0;\n\n\twhile (queue.length) {\n\t\tconst current = queue.pop();\n\t\tconst adjacents = Object.keys(conversions[current]);\n\n\t\tfor (let len = adjacents.length, i = 0; i < len; i++) {\n\t\t\tconst adjacent = adjacents[i];\n\t\t\tconst node = graph[adjacent];\n\n\t\t\tif (node.distance === -1) {\n\t\t\t\tnode.distance = graph[current].distance + 1;\n\t\t\t\tnode.parent = current;\n\t\t\t\tqueue.unshift(adjacent);\n\t\t\t}\n\t\t}\n\t}\n\n\treturn graph;\n}\n\nfunction link(from, to) {\n\treturn function (args) {\n\t\treturn to(from(args));\n\t};\n}\n\nfunction wrapConversion(toModel, graph) {\n\tconst path = [graph[toModel].parent, toModel];\n\tlet fn = conversions[graph[toModel].parent][toModel];\n\n\tlet cur = graph[toModel].parent;\n\twhile (graph[cur].parent) {\n\t\tpath.unshift(graph[cur].parent);\n\t\tfn = link(conversions[graph[cur].parent][cur], fn);\n\t\tcur = graph[cur].parent;\n\t}\n\n\tfn.conversion = path;\n\treturn fn;\n}\n\nmodule.exports = function (fromModel) {\n\tconst graph = deriveBFS(fromModel);\n\tconst conversion = {};\n\n\tconst models = Object.keys(graph);\n\tfor (let len = models.length, i = 0; i < len; i++) {\n\t\tconst toModel = models[i];\n\t\tconst node = graph[toModel];\n\n\t\tif (node.parent === null) {\n\t\t\t// No possible conversion, or this node is the source model.\n\t\t\tcontinue;\n\t\t}\n\n\t\tconversion[toModel] = wrapConversion(toModel, graph);\n\t}\n\n\treturn conversion;\n};\n\n","const conversions = require('./conversions');\nconst route = require('./route');\n\nconst convert = {};\n\nconst models = Object.keys(conversions);\n\nfunction wrapRaw(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\treturn fn(args);\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nfunction wrapRounded(fn) {\n\tconst wrappedFn = function (...args) {\n\t\tconst arg0 = args[0];\n\n\t\tif (arg0 === undefined || arg0 === null) {\n\t\t\treturn arg0;\n\t\t}\n\n\t\tif (arg0.length > 1) {\n\t\t\targs = arg0;\n\t\t}\n\n\t\tconst result = fn(args);\n\n\t\t// We're assuming the result is an array here.\n\t\t// see notice in conversions.js; don't use box types\n\t\t// in conversion functions.\n\t\tif (typeof result === 'object') {\n\t\t\tfor (let len = result.length, i = 0; i < len; i++) {\n\t\t\t\tresult[i] = Math.round(result[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t};\n\n\t// Preserve .conversion property if there is one\n\tif ('conversion' in fn) {\n\t\twrappedFn.conversion = fn.conversion;\n\t}\n\n\treturn wrappedFn;\n}\n\nmodels.forEach(fromModel => {\n\tconvert[fromModel] = {};\n\n\tObject.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels});\n\tObject.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels});\n\n\tconst routes = route(fromModel);\n\tconst routeModels = Object.keys(routes);\n\n\trouteModels.forEach(toModel => {\n\t\tconst fn = routes[toModel];\n\n\t\tconvert[fromModel][toModel] = wrapRounded(fn);\n\t\tconvert[fromModel][toModel].raw = wrapRaw(fn);\n\t});\n});\n\nmodule.exports = convert;\n","'use strict';\n\nconst wrapAnsi16 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${code + offset}m`;\n};\n\nconst wrapAnsi256 = (fn, offset) => (...args) => {\n\tconst code = fn(...args);\n\treturn `\\u001B[${38 + offset};5;${code}m`;\n};\n\nconst wrapAnsi16m = (fn, offset) => (...args) => {\n\tconst rgb = fn(...args);\n\treturn `\\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;\n};\n\nconst ansi2ansi = n => n;\nconst rgb2rgb = (r, g, b) => [r, g, b];\n\nconst setLazyProperty = (object, property, get) => {\n\tObject.defineProperty(object, property, {\n\t\tget: () => {\n\t\t\tconst value = get();\n\n\t\t\tObject.defineProperty(object, property, {\n\t\t\t\tvalue,\n\t\t\t\tenumerable: true,\n\t\t\t\tconfigurable: true\n\t\t\t});\n\n\t\t\treturn value;\n\t\t},\n\t\tenumerable: true,\n\t\tconfigurable: true\n\t});\n};\n\n/** @type {typeof import('color-convert')} */\nlet colorConvert;\nconst makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {\n\tif (colorConvert === undefined) {\n\t\tcolorConvert = require('color-convert');\n\t}\n\n\tconst offset = isBackground ? 10 : 0;\n\tconst styles = {};\n\n\tfor (const [sourceSpace, suite] of Object.entries(colorConvert)) {\n\t\tconst name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;\n\t\tif (sourceSpace === targetSpace) {\n\t\t\tstyles[name] = wrap(identity, offset);\n\t\t} else if (typeof suite === 'object') {\n\t\t\tstyles[name] = wrap(suite[targetSpace], offset);\n\t\t}\n\t}\n\n\treturn styles;\n};\n\nfunction assembleStyles() {\n\tconst codes = new Map();\n\tconst styles = {\n\t\tmodifier: {\n\t\t\treset: [0, 0],\n\t\t\t// 21 isn't widely supported and 22 does the same thing\n\t\t\tbold: [1, 22],\n\t\t\tdim: [2, 22],\n\t\t\titalic: [3, 23],\n\t\t\tunderline: [4, 24],\n\t\t\tinverse: [7, 27],\n\t\t\thidden: [8, 28],\n\t\t\tstrikethrough: [9, 29]\n\t\t},\n\t\tcolor: {\n\t\t\tblack: [30, 39],\n\t\t\tred: [31, 39],\n\t\t\tgreen: [32, 39],\n\t\t\tyellow: [33, 39],\n\t\t\tblue: [34, 39],\n\t\t\tmagenta: [35, 39],\n\t\t\tcyan: [36, 39],\n\t\t\twhite: [37, 39],\n\n\t\t\t// Bright color\n\t\t\tblackBright: [90, 39],\n\t\t\tredBright: [91, 39],\n\t\t\tgreenBright: [92, 39],\n\t\t\tyellowBright: [93, 39],\n\t\t\tblueBright: [94, 39],\n\t\t\tmagentaBright: [95, 39],\n\t\t\tcyanBright: [96, 39],\n\t\t\twhiteBright: [97, 39]\n\t\t},\n\t\tbgColor: {\n\t\t\tbgBlack: [40, 49],\n\t\t\tbgRed: [41, 49],\n\t\t\tbgGreen: [42, 49],\n\t\t\tbgYellow: [43, 49],\n\t\t\tbgBlue: [44, 49],\n\t\t\tbgMagenta: [45, 49],\n\t\t\tbgCyan: [46, 49],\n\t\t\tbgWhite: [47, 49],\n\n\t\t\t// Bright color\n\t\t\tbgBlackBright: [100, 49],\n\t\t\tbgRedBright: [101, 49],\n\t\t\tbgGreenBright: [102, 49],\n\t\t\tbgYellowBright: [103, 49],\n\t\t\tbgBlueBright: [104, 49],\n\t\t\tbgMagentaBright: [105, 49],\n\t\t\tbgCyanBright: [106, 49],\n\t\t\tbgWhiteBright: [107, 49]\n\t\t}\n\t};\n\n\t// Alias bright black as gray (and grey)\n\tstyles.color.gray = styles.color.blackBright;\n\tstyles.bgColor.bgGray = styles.bgColor.bgBlackBright;\n\tstyles.color.grey = styles.color.blackBright;\n\tstyles.bgColor.bgGrey = styles.bgColor.bgBlackBright;\n\n\tfor (const [groupName, group] of Object.entries(styles)) {\n\t\tfor (const [styleName, style] of Object.entries(group)) {\n\t\t\tstyles[styleName] = {\n\t\t\t\topen: `\\u001B[${style[0]}m`,\n\t\t\t\tclose: `\\u001B[${style[1]}m`\n\t\t\t};\n\n\t\t\tgroup[styleName] = styles[styleName];\n\n\t\t\tcodes.set(style[0], style[1]);\n\t\t}\n\n\t\tObject.defineProperty(styles, groupName, {\n\t\t\tvalue: group,\n\t\t\tenumerable: false\n\t\t});\n\t}\n\n\tObject.defineProperty(styles, 'codes', {\n\t\tvalue: codes,\n\t\tenumerable: false\n\t});\n\n\tstyles.color.close = '\\u001B[39m';\n\tstyles.bgColor.close = '\\u001B[49m';\n\n\tsetLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));\n\tsetLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));\n\tsetLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));\n\tsetLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));\n\n\treturn styles;\n}\n\n// Make the export immutable\nObject.defineProperty(module, 'exports', {\n\tenumerable: true,\n\tget: assembleStyles\n});\n","'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n","'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n","'use strict';\n\nconst stringReplaceAll = (string, substring, replacer) => {\n\tlet index = string.indexOf(substring);\n\tif (index === -1) {\n\t\treturn string;\n\t}\n\n\tconst substringLength = substring.length;\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\treturnValue += string.substr(endIndex, index - endIndex) + substring + replacer;\n\t\tendIndex = index + substringLength;\n\t\tindex = string.indexOf(substring, endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nconst stringEncaseCRLFWithFirstIndex = (string, prefix, postfix, index) => {\n\tlet endIndex = 0;\n\tlet returnValue = '';\n\tdo {\n\t\tconst gotCR = string[index - 1] === '\\r';\n\t\treturnValue += string.substr(endIndex, (gotCR ? index - 1 : index) - endIndex) + prefix + (gotCR ? '\\r\\n' : '\\n') + postfix;\n\t\tendIndex = index + 1;\n\t\tindex = string.indexOf('\\n', endIndex);\n\t} while (index !== -1);\n\n\treturnValue += string.substr(endIndex);\n\treturn returnValue;\n};\n\nmodule.exports = {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n};\n","'use strict';\nconst TEMPLATE_REGEX = /(?:\\\\(u(?:[a-f\\d]{4}|\\{[a-f\\d]{1,6}\\})|x[a-f\\d]{2}|.))|(?:\\{(~)?(\\w+(?:\\([^)]*\\))?(?:\\.\\w+(?:\\([^)]*\\))?)*)(?:[ \\t]|(?=\\r?\\n)))|(\\})|((?:.|[\\r\\n\\f])+?)/gi;\nconst STYLE_REGEX = /(?:^|\\.)(\\w+)(?:\\(([^)]*)\\))?/g;\nconst STRING_REGEX = /^(['\"])((?:\\\\.|(?!\\1)[^\\\\])*)\\1$/;\nconst ESCAPE_REGEX = /\\\\(u(?:[a-f\\d]{4}|{[a-f\\d]{1,6}})|x[a-f\\d]{2}|.)|([^\\\\])/gi;\n\nconst ESCAPES = new Map([\n\t['n', '\\n'],\n\t['r', '\\r'],\n\t['t', '\\t'],\n\t['b', '\\b'],\n\t['f', '\\f'],\n\t['v', '\\v'],\n\t['0', '\\0'],\n\t['\\\\', '\\\\'],\n\t['e', '\\u001B'],\n\t['a', '\\u0007']\n]);\n\nfunction unescape(c) {\n\tconst u = c[0] === 'u';\n\tconst bracket = c[1] === '{';\n\n\tif ((u && !bracket && c.length === 5) || (c[0] === 'x' && c.length === 3)) {\n\t\treturn String.fromCharCode(parseInt(c.slice(1), 16));\n\t}\n\n\tif (u && bracket) {\n\t\treturn String.fromCodePoint(parseInt(c.slice(2, -1), 16));\n\t}\n\n\treturn ESCAPES.get(c) || c;\n}\n\nfunction parseArguments(name, arguments_) {\n\tconst results = [];\n\tconst chunks = arguments_.trim().split(/\\s*,\\s*/g);\n\tlet matches;\n\n\tfor (const chunk of chunks) {\n\t\tconst number = Number(chunk);\n\t\tif (!Number.isNaN(number)) {\n\t\t\tresults.push(number);\n\t\t} else if ((matches = chunk.match(STRING_REGEX))) {\n\t\t\tresults.push(matches[2].replace(ESCAPE_REGEX, (m, escape, character) => escape ? unescape(escape) : character));\n\t\t} else {\n\t\t\tthrow new Error(`Invalid Chalk template style argument: ${chunk} (in style '${name}')`);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction parseStyle(style) {\n\tSTYLE_REGEX.lastIndex = 0;\n\n\tconst results = [];\n\tlet matches;\n\n\twhile ((matches = STYLE_REGEX.exec(style)) !== null) {\n\t\tconst name = matches[1];\n\n\t\tif (matches[2]) {\n\t\t\tconst args = parseArguments(name, matches[2]);\n\t\t\tresults.push([name].concat(args));\n\t\t} else {\n\t\t\tresults.push([name]);\n\t\t}\n\t}\n\n\treturn results;\n}\n\nfunction buildStyle(chalk, styles) {\n\tconst enabled = {};\n\n\tfor (const layer of styles) {\n\t\tfor (const style of layer.styles) {\n\t\t\tenabled[style[0]] = layer.inverse ? null : style.slice(1);\n\t\t}\n\t}\n\n\tlet current = chalk;\n\tfor (const [styleName, styles] of Object.entries(enabled)) {\n\t\tif (!Array.isArray(styles)) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (!(styleName in current)) {\n\t\t\tthrow new Error(`Unknown Chalk style: ${styleName}`);\n\t\t}\n\n\t\tcurrent = styles.length > 0 ? current[styleName](...styles) : current[styleName];\n\t}\n\n\treturn current;\n}\n\nmodule.exports = (chalk, temporary) => {\n\tconst styles = [];\n\tconst chunks = [];\n\tlet chunk = [];\n\n\t// eslint-disable-next-line max-params\n\ttemporary.replace(TEMPLATE_REGEX, (m, escapeCharacter, inverse, style, close, character) => {\n\t\tif (escapeCharacter) {\n\t\t\tchunk.push(unescape(escapeCharacter));\n\t\t} else if (style) {\n\t\t\tconst string = chunk.join('');\n\t\t\tchunk = [];\n\t\t\tchunks.push(styles.length === 0 ? string : buildStyle(chalk, styles)(string));\n\t\t\tstyles.push({inverse, styles: parseStyle(style)});\n\t\t} else if (close) {\n\t\t\tif (styles.length === 0) {\n\t\t\t\tthrow new Error('Found extraneous } in Chalk template literal');\n\t\t\t}\n\n\t\t\tchunks.push(buildStyle(chalk, styles)(chunk.join('')));\n\t\t\tchunk = [];\n\t\t\tstyles.pop();\n\t\t} else {\n\t\t\tchunk.push(character);\n\t\t}\n\t});\n\n\tchunks.push(chunk.join(''));\n\n\tif (styles.length > 0) {\n\t\tconst errMessage = `Chalk template literal is missing ${styles.length} closing bracket${styles.length === 1 ? '' : 's'} (\\`}\\`)`;\n\t\tthrow new Error(errMessage);\n\t}\n\n\treturn chunks.join('');\n};\n","'use strict';\nconst ansiStyles = require('ansi-styles');\nconst {stdout: stdoutColor, stderr: stderrColor} = require('supports-color');\nconst {\n\tstringReplaceAll,\n\tstringEncaseCRLFWithFirstIndex\n} = require('./util');\n\nconst {isArray} = Array;\n\n// `supportsColor.level` → `ansiStyles.color[name]` mapping\nconst levelMapping = [\n\t'ansi',\n\t'ansi',\n\t'ansi256',\n\t'ansi16m'\n];\n\nconst styles = Object.create(null);\n\nconst applyOptions = (object, options = {}) => {\n\tif (options.level && !(Number.isInteger(options.level) && options.level >= 0 && options.level <= 3)) {\n\t\tthrow new Error('The `level` option should be an integer from 0 to 3');\n\t}\n\n\t// Detect level if not set manually\n\tconst colorLevel = stdoutColor ? stdoutColor.level : 0;\n\tobject.level = options.level === undefined ? colorLevel : options.level;\n};\n\nclass ChalkClass {\n\tconstructor(options) {\n\t\t// eslint-disable-next-line no-constructor-return\n\t\treturn chalkFactory(options);\n\t}\n}\n\nconst chalkFactory = options => {\n\tconst chalk = {};\n\tapplyOptions(chalk, options);\n\n\tchalk.template = (...arguments_) => chalkTag(chalk.template, ...arguments_);\n\n\tObject.setPrototypeOf(chalk, Chalk.prototype);\n\tObject.setPrototypeOf(chalk.template, chalk);\n\n\tchalk.template.constructor = () => {\n\t\tthrow new Error('`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead.');\n\t};\n\n\tchalk.template.Instance = ChalkClass;\n\n\treturn chalk.template;\n};\n\nfunction Chalk(options) {\n\treturn chalkFactory(options);\n}\n\nfor (const [styleName, style] of Object.entries(ansiStyles)) {\n\tstyles[styleName] = {\n\t\tget() {\n\t\t\tconst builder = createBuilder(this, createStyler(style.open, style.close, this._styler), this._isEmpty);\n\t\t\tObject.defineProperty(this, styleName, {value: builder});\n\t\t\treturn builder;\n\t\t}\n\t};\n}\n\nstyles.visible = {\n\tget() {\n\t\tconst builder = createBuilder(this, this._styler, true);\n\t\tObject.defineProperty(this, 'visible', {value: builder});\n\t\treturn builder;\n\t}\n};\n\nconst usedModels = ['rgb', 'hex', 'keyword', 'hsl', 'hsv', 'hwb', 'ansi', 'ansi256'];\n\nfor (const model of usedModels) {\n\tstyles[model] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.color[levelMapping[level]][model](...arguments_), ansiStyles.color.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nfor (const model of usedModels) {\n\tconst bgModel = 'bg' + model[0].toUpperCase() + model.slice(1);\n\tstyles[bgModel] = {\n\t\tget() {\n\t\t\tconst {level} = this;\n\t\t\treturn function (...arguments_) {\n\t\t\t\tconst styler = createStyler(ansiStyles.bgColor[levelMapping[level]][model](...arguments_), ansiStyles.bgColor.close, this._styler);\n\t\t\t\treturn createBuilder(this, styler, this._isEmpty);\n\t\t\t};\n\t\t}\n\t};\n}\n\nconst proto = Object.defineProperties(() => {}, {\n\t...styles,\n\tlevel: {\n\t\tenumerable: true,\n\t\tget() {\n\t\t\treturn this._generator.level;\n\t\t},\n\t\tset(level) {\n\t\t\tthis._generator.level = level;\n\t\t}\n\t}\n});\n\nconst createStyler = (open, close, parent) => {\n\tlet openAll;\n\tlet closeAll;\n\tif (parent === undefined) {\n\t\topenAll = open;\n\t\tcloseAll = close;\n\t} else {\n\t\topenAll = parent.openAll + open;\n\t\tcloseAll = close + parent.closeAll;\n\t}\n\n\treturn {\n\t\topen,\n\t\tclose,\n\t\topenAll,\n\t\tcloseAll,\n\t\tparent\n\t};\n};\n\nconst createBuilder = (self, _styler, _isEmpty) => {\n\tconst builder = (...arguments_) => {\n\t\tif (isArray(arguments_[0]) && isArray(arguments_[0].raw)) {\n\t\t\t// Called as a template literal, for example: chalk.red`2 + 3 = {bold ${2+3}}`\n\t\t\treturn applyStyle(builder, chalkTag(builder, ...arguments_));\n\t\t}\n\n\t\t// Single argument is hot path, implicit coercion is faster than anything\n\t\t// eslint-disable-next-line no-implicit-coercion\n\t\treturn applyStyle(builder, (arguments_.length === 1) ? ('' + arguments_[0]) : arguments_.join(' '));\n\t};\n\n\t// We alter the prototype because we must return a function, but there is\n\t// no way to create a function with a different prototype\n\tObject.setPrototypeOf(builder, proto);\n\n\tbuilder._generator = self;\n\tbuilder._styler = _styler;\n\tbuilder._isEmpty = _isEmpty;\n\n\treturn builder;\n};\n\nconst applyStyle = (self, string) => {\n\tif (self.level <= 0 || !string) {\n\t\treturn self._isEmpty ? '' : string;\n\t}\n\n\tlet styler = self._styler;\n\n\tif (styler === undefined) {\n\t\treturn string;\n\t}\n\n\tconst {openAll, closeAll} = styler;\n\tif (string.indexOf('\\u001B') !== -1) {\n\t\twhile (styler !== undefined) {\n\t\t\t// Replace any instances already present with a re-opening code\n\t\t\t// otherwise only the part of the string until said closing code\n\t\t\t// will be colored, and the rest will simply be 'plain'.\n\t\t\tstring = stringReplaceAll(string, styler.close, styler.open);\n\n\t\t\tstyler = styler.parent;\n\t\t}\n\t}\n\n\t// We can move both next actions out of loop, because remaining actions in loop won't have\n\t// any/visible effect on parts we add here. Close the styling before a linebreak and reopen\n\t// after next line to fix a bleed issue on macOS: https://github.com/chalk/chalk/pull/92\n\tconst lfIndex = string.indexOf('\\n');\n\tif (lfIndex !== -1) {\n\t\tstring = stringEncaseCRLFWithFirstIndex(string, closeAll, openAll, lfIndex);\n\t}\n\n\treturn openAll + string + closeAll;\n};\n\nlet template;\nconst chalkTag = (chalk, ...strings) => {\n\tconst [firstString] = strings;\n\n\tif (!isArray(firstString) || !isArray(firstString.raw)) {\n\t\t// If chalk() was called by itself or with a string,\n\t\t// return the string itself as a string.\n\t\treturn strings.join(' ');\n\t}\n\n\tconst arguments_ = strings.slice(1);\n\tconst parts = [firstString.raw[0]];\n\n\tfor (let i = 1; i < firstString.length; i++) {\n\t\tparts.push(\n\t\t\tString(arguments_[i - 1]).replace(/[{}\\\\]/g, '\\\\$&'),\n\t\t\tString(firstString.raw[i])\n\t\t);\n\t}\n\n\tif (template === undefined) {\n\t\ttemplate = require('./templates');\n\t}\n\n\treturn template(chalk, parts.join(''));\n};\n\nObject.defineProperties(Chalk.prototype, styles);\n\nconst chalk = Chalk(); // eslint-disable-line new-cap\nchalk.supportsColor = stdoutColor;\nchalk.stderr = Chalk({level: stderrColor ? stderrColor.level : 0}); // eslint-disable-line new-cap\nchalk.stderr.supportsColor = stderrColor;\n\nmodule.exports = chalk;\n","// src/logger/chalk.ts\nimport chalk from \"chalk\";\nvar chalkDefault = {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n white: (message) => message,\n whiteBright: (message) => message,\n gray: (message) => message,\n bold: {\n hex: (_) => (message) => message,\n bgHex: (_) => ({\n whiteBright: (message) => message,\n white: (message) => message\n }),\n whiteBright: (message) => message,\n white: (message) => message\n },\n dim: {\n hex: (_) => (message) => message,\n gray: (message) => message\n }\n};\nvar getChalk = () => {\n let _chalk = chalk;\n if (!_chalk?.hex || !_chalk?.bold?.hex || !_chalk?.bgHex || !_chalk?.whiteBright || !_chalk?.white) {\n _chalk = chalkDefault;\n }\n return _chalk;\n};\n\nexport {\n getChalk\n};\n","// src/logger/is-unicode-supported.ts\nfunction isUnicodeSupported() {\n if (process.platform !== \"win32\") {\n return process.env.TERM !== \"linux\";\n }\n return Boolean(process.env.WT_SESSION) || // Windows Terminal\n Boolean(process.env.TERMINUS_SUBLIME) || // Terminus (<0.2.27)\n process.env.ConEmuTask === \"{cmd::Cmder}\" || // ConEmu and cmder\n process.env.TERM_PROGRAM === \"Terminus-Sublime\" || process.env.TERM_PROGRAM === \"vscode\" || process.env.TERM === \"xterm-256color\" || process.env.TERM === \"alacritty\" || process.env.TERM === \"rxvt-unicode\" || process.env.TERM === \"rxvt-unicode-256color\" || process.env.TERMINAL_EMULATOR === \"JetBrains-JediTerm\";\n}\n\nexport {\n isUnicodeSupported\n};\n","// src/types.ts\nvar LogLevel = {\n SILENT: 0,\n FATAL: 10,\n ERROR: 20,\n WARN: 30,\n SUCCESS: 35,\n INFO: 40,\n DEBUG: 60,\n TRACE: 70,\n ALL: 100\n};\nvar LogLevelLabel = {\n SILENT: \"silent\",\n FATAL: \"fatal\",\n ERROR: \"error\",\n WARN: \"warn\",\n SUCCESS: \"success\",\n INFO: \"info\",\n DEBUG: \"debug\",\n TRACE: \"trace\",\n ALL: \"all\"\n};\n\nexport {\n LogLevel,\n LogLevelLabel\n};\n","import {\n isUnicodeSupported\n} from \"./chunk-G2MK47WL.js\";\nimport {\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console-icons.ts\nvar useIcon = (c, fallback) => isUnicodeSupported() ? c : fallback;\nvar CONSOLE_ICONS = {\n [LogLevelLabel.ERROR]: useIcon(\"\\u2718\", \"\\xD7\"),\n [LogLevelLabel.FATAL]: useIcon(\"\\u{1F571}\", \"\\xD7\"),\n [LogLevelLabel.WARN]: useIcon(\"\\u26A0\", \"\\u203C\"),\n [LogLevelLabel.INFO]: useIcon(\"\\u2139\", \"i\"),\n [LogLevelLabel.SUCCESS]: useIcon(\"\\u2714\", \"\\u221A\"),\n [LogLevelLabel.DEBUG]: useIcon(\"\\u{1F6E0}\", \"D\"),\n [LogLevelLabel.TRACE]: useIcon(\"\\u2699\", \"T\"),\n [LogLevelLabel.ALL]: useIcon(\"\\u2709\", \"\\u2192\")\n};\n\nexport {\n CONSOLE_ICONS\n};\n","// src/logger/format-timestamp.ts\nvar formatTimestamp = (date = /* @__PURE__ */ new Date()) => {\n return `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;\n};\n\nexport {\n formatTimestamp\n};\n","import {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/get-log-level.ts\nvar getLogLevel = (label) => {\n switch (label) {\n case \"all\":\n return LogLevel.ALL;\n case \"trace\":\n return LogLevel.TRACE;\n case \"debug\":\n return LogLevel.DEBUG;\n case \"info\":\n return LogLevel.INFO;\n case \"warn\":\n return LogLevel.WARN;\n case \"error\":\n return LogLevel.ERROR;\n case \"fatal\":\n return LogLevel.FATAL;\n case \"silent\":\n return LogLevel.SILENT;\n default:\n return LogLevel.INFO;\n }\n};\nvar getLogLevelLabel = (logLevel = LogLevel.INFO) => {\n if (logLevel >= LogLevel.ALL) {\n return LogLevelLabel.ALL;\n }\n if (logLevel >= LogLevel.TRACE) {\n return LogLevelLabel.TRACE;\n }\n if (logLevel >= LogLevel.DEBUG) {\n return LogLevelLabel.DEBUG;\n }\n if (logLevel >= LogLevel.INFO) {\n return LogLevelLabel.INFO;\n }\n if (logLevel >= LogLevel.WARN) {\n return LogLevelLabel.WARN;\n }\n if (logLevel >= LogLevel.ERROR) {\n return LogLevelLabel.ERROR;\n }\n if (logLevel >= LogLevel.FATAL) {\n return LogLevelLabel.FATAL;\n }\n if (logLevel <= LogLevel.SILENT) {\n return LogLevelLabel.SILENT;\n }\n return LogLevelLabel.INFO;\n};\nvar isVerbose = (label = LogLevelLabel.SILENT) => {\n const logLevel = typeof label === \"string\" ? getLogLevel(label) : label;\n return logLevel >= LogLevel.DEBUG;\n};\n\nexport {\n getLogLevel,\n getLogLevelLabel,\n isVerbose\n};\n","import {\n DEFAULT_COLOR_CONFIG,\n getColor\n} from \"./chunk-DJB7XLHA.js\";\nimport {\n getChalk\n} from \"./chunk-HVVJHTFS.js\";\nimport {\n CONSOLE_ICONS\n} from \"./chunk-AITAR5W5.js\";\nimport {\n formatTimestamp\n} from \"./chunk-CZ4IE2QN.js\";\nimport {\n getLogLevel\n} from \"./chunk-K4CDYUQR.js\";\nimport {\n LogLevel,\n LogLevelLabel\n} from \"./chunk-POXTJ6GF.js\";\n\n// src/logger/console.ts\nimport { formatDistanceToNow } from \"date-fns/formatDistanceToNow\";\nvar getLogFn = (logLevel = LogLevel.INFO, config = {}, _chalk = getChalk()) => {\n const colors = !config.colors?.dark && !config.colors?.[\"base\"] && !config.colors?.[\"base\"]?.dark ? DEFAULT_COLOR_CONFIG : config.colors?.dark && typeof config.colors.dark === \"string\" ? config.colors : config.colors?.[\"base\"]?.dark && typeof config.colors[\"base\"].dark === \"string\" ? config.colors[\"base\"].dark : config.colors?.[\"base\"] ? config.colors?.[\"base\"] : DEFAULT_COLOR_CONFIG;\n const configLogLevel = config.logLevel || process.env.STORM_LOG_LEVEL || LogLevelLabel.INFO;\n if (logLevel > getLogLevel(configLogLevel) || logLevel <= LogLevel.SILENT || getLogLevel(configLogLevel) <= LogLevel.SILENT) {\n return (_) => {\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.FATAL >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.fatal ?? DEFAULT_COLOR_CONFIG.dark.fatal\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.FATAL]} Fatal] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.ERROR >= logLevel) {\n return (message) => {\n console.error(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.danger ?? DEFAULT_COLOR_CONFIG.dark.danger\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.ERROR]} Error] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.WARN >= logLevel) {\n return (message) => {\n console.warn(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.warning ?? DEFAULT_COLOR_CONFIG.dark.warning\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.WARN]} Warn] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.SUCCESS >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.success ?? DEFAULT_COLOR_CONFIG.dark.success\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.SUCCESS]} Success] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.INFO >= logLevel) {\n return (message) => {\n console.info(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.info ?? DEFAULT_COLOR_CONFIG.dark.info\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.INFO]} Info] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.DEBUG >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.debug ?? DEFAULT_COLOR_CONFIG.dark.debug\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.DEBUG]} Debug] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n if (typeof logLevel === \"number\" && LogLevel.TRACE >= logLevel) {\n return (message) => {\n console.debug(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\"#bbbbbb\")(\n `[${CONSOLE_ICONS[LogLevelLabel.TRACE]} Trace] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n }\n return (message) => {\n console.log(\n `\n${_chalk.gray(formatTimestamp())} ${_chalk.hex(\n colors.brand ?? DEFAULT_COLOR_CONFIG.dark.brand\n )(\n `[${CONSOLE_ICONS[LogLevelLabel.ALL]} System] `\n )}${_chalk.bold.whiteBright(formatLogMessage(message))}\n`\n );\n };\n};\nvar writeFatal = (message, config) => getLogFn(LogLevel.FATAL, config)(message);\nvar writeError = (message, config) => getLogFn(LogLevel.ERROR, config)(message);\nvar writeWarning = (message, config) => getLogFn(LogLevel.WARN, config)(message);\nvar writeInfo = (message, config) => getLogFn(LogLevel.INFO, config)(message);\nvar writeSuccess = (message, config) => getLogFn(LogLevel.SUCCESS, config)(message);\nvar writeDebug = (message, config) => getLogFn(LogLevel.DEBUG, config)(message);\nvar writeTrace = (message, config) => getLogFn(LogLevel.TRACE, config)(message);\nvar writeSystem = (message, config) => getLogFn(LogLevel.ALL, config)(message);\nvar getStopwatch = (name) => {\n const start = /* @__PURE__ */ new Date();\n return () => {\n console.info(\n `\n> \\u23F1\\uFE0F The${name ? ` ${name}` : \"\"} process took ${formatDistanceToNow(start, {\n includeSeconds: true\n })} to complete\n`\n );\n };\n};\nvar MAX_DEPTH = 6;\nvar formatLogMessage = (message, options = {}, depth = 0) => {\n if (depth > MAX_DEPTH) {\n return \"<max depth>\";\n }\n const prefix = options.prefix ?? \"-\";\n const skip = options.skip ?? [];\n return typeof message === \"undefined\" || message === null || !message && typeof message !== \"boolean\" ? \"<none>\" : typeof message === \"string\" ? message : Array.isArray(message) ? `\n${message.map((item, index) => ` ${prefix}> #${index} = ${formatLogMessage(item, { prefix: `${prefix}-`, skip }, depth + 1)}`).join(\"\\n\")}` : typeof message === \"object\" ? `\n${Object.keys(message).filter((key) => !skip.includes(key)).map(\n (key) => ` ${prefix}> ${key} = ${_isFunction(message[key]) ? \"<function>\" : typeof message[key] === \"object\" ? formatLogMessage(\n message[key],\n { prefix: `${prefix}-`, skip },\n depth + 1\n ) : message[key]}`\n ).join(\"\\n\")}` : message;\n};\nvar _isFunction = (value) => {\n try {\n return value instanceof Function || typeof value === \"function\" || !!(value?.constructor && value?.call && value?.apply);\n } catch {\n return false;\n }\n};\nvar brandIcon = (config = {}, _chalk = getChalk()) => _chalk.hex(getColor(\"brand\", config))(\"\\u{1F5F2}\");\n\nexport {\n getLogFn,\n writeFatal,\n writeError,\n writeWarning,\n writeInfo,\n writeSuccess,\n writeDebug,\n writeTrace,\n writeSystem,\n getStopwatch,\n formatLogMessage,\n brandIcon\n};\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type { Arrayable } from \"@stryke/types/array\";\nimport type { Nullable } from \"@stryke/types/utilities\";\n\n/**\n * Convert `Arrayable<T>` to `Array<T>`\n *\n * @param array - The `Arrayable<T>` to convert\n * @returns An `Array<T>` containing the elements of the input\n */\nexport function toArray<T>(array?: Nullable<Arrayable<T>>): Array<T> {\n array = array ?? [];\n return Array.isArray(array) ? array : [array];\n}\n","/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Stryke\n\n This code was released as part of the Stryke project. Stryke\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/stryke.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/stryke\n Documentation: https://docs.stormsoftware.com/projects/stryke\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport {\n writeFatal,\n writeWarning\n} from \"@storm-software/config-tools/logger/console\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { readJsonFile } from \"@stryke/fs/json\";\nimport { listFiles } from \"@stryke/fs/list-files\";\nimport { findFilePath, relativePath } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport type { TsConfigJson } from \"@stryke/types/tsconfig\";\nimport type { ParsedCommandLine } from \"typescript\";\nimport { parseJsonConfigFileContent, sys } from \"typescript\";\nimport type { CapnpcOptions, CapnpcResolvedOptions } from \"./types.js\";\n\n/**\n * Resolves the options for the Cap'n Proto compiler.\n *\n * @param options - The options to resolve\n * @returns The resolved options\n */\nexport async function resolveOptions(\n options: Omit<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\"> &\n Required<Pick<CapnpcOptions, \"workspaceRoot\" | \"projectRoot\">>\n): Promise<CapnpcResolvedOptions | null> {\n const tsconfigPath = options.tsconfigPath\n ? options.tsconfigPath\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(options.projectRoot, \"tsconfig.json\");\n const schemas = toArray(\n options.schemas\n ? options.schemas\n : joinPaths(options.projectRoot, \"schemas/**/*.capnp\")\n )\n .filter(Boolean)\n .map(schema =>\n schema\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n );\n\n let resolvedTsconfig!: ParsedCommandLine;\n if (options.tsconfig) {\n resolvedTsconfig = options.tsconfig;\n } else {\n if (!tsconfigPath || !existsSync(tsconfigPath)) {\n const errorMessage = tsconfigPath\n ? `✖ The specified TypeScript configuration file \"${tsconfigPath}\" does not exist. Please provide a valid path.`\n : \"✖ The specified TypeScript configuration file does not exist. Please provide a valid path.\";\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n const tsconfigFile = await readJsonFile<TsConfigJson>(tsconfigPath);\n resolvedTsconfig = parseJsonConfigFileContent(\n tsconfigFile,\n sys,\n findFilePath(tsconfigPath)\n );\n if (!resolvedTsconfig) {\n const errorMessage = `✖ The specified TypeScript configuration file \"${tsconfigPath}\" is invalid. Please provide a valid configuration.`;\n writeFatal(errorMessage, { logLevel: \"all\" });\n\n throw new Error(errorMessage);\n }\n\n resolvedTsconfig.options.configFilePath = tsconfigPath;\n resolvedTsconfig.options.noImplicitOverride = false;\n resolvedTsconfig.options.noUnusedLocals = false;\n resolvedTsconfig.options.noUnusedParameters = false;\n }\n\n const resolvedSchemas = [] as string[];\n for (const schema of schemas) {\n let formattedSchema = schema;\n if (!schema.endsWith(\".capnp\") && !schema.includes(\"*\")) {\n formattedSchema = `${schema.replace(/\\/$/g, \"\")}/*.capnp`;\n }\n\n resolvedSchemas.push(...(await listFiles(formattedSchema)));\n }\n\n if (resolvedSchemas.length === 0 || !resolvedSchemas[0]) {\n writeWarning(\n `✖ No Cap'n Proto schema files found in the specified source paths: ${schemas.join(\n \", \"\n )}. As a result, the Cap'n Proto compiler will not be able to generate any output files. Please ensure that the paths are correct and contain .capnp files.`,\n { logLevel: \"all\" }\n );\n\n return null;\n }\n\n const output = options.output\n ? options.output\n .replace(\"{projectRoot}\", options.projectRoot)\n .replace(\"{workspaceRoot}\", options.workspaceRoot)\n : joinPaths(\n options.projectRoot,\n relativePath(\n tsconfigPath ? findFilePath(tsconfigPath) : options.projectRoot,\n joinPaths(\n options.workspaceRoot,\n resolvedSchemas[0].endsWith(\".capnp\")\n ? findFilePath(resolvedSchemas[0])\n : resolvedSchemas[0]\n )\n )\n );\n resolvedTsconfig.options.outDir = output;\n\n return {\n ...options,\n importPath: options.importPath\n ? options.importPath.split(\",\").map(dir => dir.trim())\n : [],\n workspaceRoot: options.workspaceRoot,\n projectRoot: options.projectRoot,\n schemas: resolvedSchemas,\n output,\n js: options.js === true,\n ts: options.noTs !== true,\n dts: options.dts ?? options.noDts !== true,\n tsconfig: resolvedTsconfig\n };\n}\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17],"mappings":"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"}