UNPKG

@modern-js/utils

Version:

A Progressive React Framework for modern web development.

1,456 lines • 74.1 kB
(()=>{ var e = { 44: (e, t, n)=>{ "use strict"; e = n.nmd(e); const wrapAnsi16 = (e, t)=>(...n)=>{ const r = e(...n); return `[${r + t}m`; }; const wrapAnsi256 = (e, t)=>(...n)=>{ const r = e(...n); return `[${38 + t};5;${r}m`; }; const wrapAnsi16m = (e, t)=>(...n)=>{ const r = e(...n); return `[${38 + t};2;${r[0]};${r[1]};${r[2]}m`; }; const ansi2ansi = (e)=>e; const rgb2rgb = (e, t, n)=>[ e, t, n ]; const setLazyProperty = (e, t, n)=>{ Object.defineProperty(e, t, { get: ()=>{ const r = n(); Object.defineProperty(e, t, { value: r, enumerable: true, configurable: true }); return r; }, enumerable: true, configurable: true }); }; let r; const makeDynamicStyles = (e, t, s, o)=>{ if (void 0 === r) r = n(767); const l = o ? 10 : 0; const c = {}; for (const [n, o] of Object.entries(r)){ const r = "ansi16" === n ? "ansi" : n; if (n === t) c[r] = e(s, l); else if ("object" == typeof o) c[r] = e(o[t], l); } return c; }; function assembleStyles() { const e = new Map; const t = { modifier: { reset: [ 0, 0 ], bold: [ 1, 22 ], dim: [ 2, 22 ], italic: [ 3, 23 ], underline: [ 4, 24 ], inverse: [ 7, 27 ], hidden: [ 8, 28 ], strikethrough: [ 9, 29 ] }, color: { black: [ 30, 39 ], red: [ 31, 39 ], green: [ 32, 39 ], yellow: [ 33, 39 ], blue: [ 34, 39 ], magenta: [ 35, 39 ], cyan: [ 36, 39 ], white: [ 37, 39 ], blackBright: [ 90, 39 ], redBright: [ 91, 39 ], greenBright: [ 92, 39 ], yellowBright: [ 93, 39 ], blueBright: [ 94, 39 ], magentaBright: [ 95, 39 ], cyanBright: [ 96, 39 ], whiteBright: [ 97, 39 ] }, bgColor: { bgBlack: [ 40, 49 ], bgRed: [ 41, 49 ], bgGreen: [ 42, 49 ], bgYellow: [ 43, 49 ], bgBlue: [ 44, 49 ], bgMagenta: [ 45, 49 ], bgCyan: [ 46, 49 ], bgWhite: [ 47, 49 ], bgBlackBright: [ 100, 49 ], bgRedBright: [ 101, 49 ], bgGreenBright: [ 102, 49 ], bgYellowBright: [ 103, 49 ], bgBlueBright: [ 104, 49 ], bgMagentaBright: [ 105, 49 ], bgCyanBright: [ 106, 49 ], bgWhiteBright: [ 107, 49 ] } }; t.color.gray = t.color.blackBright; t.bgColor.bgGray = t.bgColor.bgBlackBright; t.color.grey = t.color.blackBright; t.bgColor.bgGrey = t.bgColor.bgBlackBright; for (const [n, r] of Object.entries(t)){ for (const [n, s] of Object.entries(r)){ t[n] = { open: `[${s[0]}m`, close: `[${s[1]}m` }; r[n] = t[n]; e.set(s[0], s[1]); } Object.defineProperty(t, n, { value: r, enumerable: false }); } Object.defineProperty(t, "codes", { value: e, enumerable: false }); t.color.close = ""; t.bgColor.close = ""; setLazyProperty(t.color, "ansi", ()=>makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, false)); setLazyProperty(t.color, "ansi256", ()=>makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, false)); setLazyProperty(t.color, "ansi16m", ()=>makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, false)); setLazyProperty(t.bgColor, "ansi", ()=>makeDynamicStyles(wrapAnsi16, "ansi16", ansi2ansi, true)); setLazyProperty(t.bgColor, "ansi256", ()=>makeDynamicStyles(wrapAnsi256, "ansi256", ansi2ansi, true)); setLazyProperty(t.bgColor, "ansi16m", ()=>makeDynamicStyles(wrapAnsi16m, "rgb", rgb2rgb, true)); return t; } Object.defineProperty(e, "exports", { enumerable: true, get: assembleStyles }); }, 584: (e, t, n)=>{ "use strict"; const r = n(44); const { stdout: s, stderr: o } = n(242); const { stringReplaceAll: l, stringEncaseCRLFWithFirstIndex: c } = n(905); const { isArray: i } = Array; const a = [ "ansi", "ansi", "ansi256", "ansi16m" ]; const u = Object.create(null); const applyOptions = (e, t = {})=>{ if (t.level && !(Number.isInteger(t.level) && t.level >= 0 && t.level <= 3)) throw new Error("The `level` option should be an integer from 0 to 3"); const n = s ? s.level : 0; e.level = void 0 === t.level ? n : t.level; }; class ChalkClass { constructor(e){ return chalkFactory(e); } } const chalkFactory = (e)=>{ const t = {}; applyOptions(t, e); t.template = (...e)=>chalkTag(t.template, ...e); Object.setPrototypeOf(t, Chalk.prototype); Object.setPrototypeOf(t.template, t); t.template.constructor = ()=>{ throw new Error("`chalk.constructor()` is deprecated. Use `new chalk.Instance()` instead."); }; t.template.Instance = ChalkClass; return t.template; }; function Chalk(e) { return chalkFactory(e); } for (const [e, t] of Object.entries(r))u[e] = { get () { const n = createBuilder(this, createStyler(t.open, t.close, this._styler), this._isEmpty); Object.defineProperty(this, e, { value: n }); return n; } }; u.visible = { get () { const e = createBuilder(this, this._styler, true); Object.defineProperty(this, "visible", { value: e }); return e; } }; const h = [ "rgb", "hex", "keyword", "hsl", "hsv", "hwb", "ansi", "ansi256" ]; for (const e of h)u[e] = { get () { const { level: t } = this; return function(...n) { const s = createStyler(r.color[a[t]][e](...n), r.color.close, this._styler); return createBuilder(this, s, this._isEmpty); }; } }; for (const e of h){ const t = "bg" + e[0].toUpperCase() + e.slice(1); u[t] = { get () { const { level: t } = this; return function(...n) { const s = createStyler(r.bgColor[a[t]][e](...n), r.bgColor.close, this._styler); return createBuilder(this, s, this._isEmpty); }; } }; } const f = Object.defineProperties(()=>{}, { ...u, level: { enumerable: true, get () { return this._generator.level; }, set (e) { this._generator.level = e; } } }); const createStyler = (e, t, n)=>{ let r; let s; if (void 0 === n) { r = e; s = t; } else { r = n.openAll + e; s = t + n.closeAll; } return { open: e, close: t, openAll: r, closeAll: s, parent: n }; }; const createBuilder = (e, t, n)=>{ const builder = (...e)=>{ if (i(e[0]) && i(e[0].raw)) return applyStyle(builder, chalkTag(builder, ...e)); return applyStyle(builder, 1 === e.length ? "" + e[0] : e.join(" ")); }; Object.setPrototypeOf(builder, f); builder._generator = e; builder._styler = t; builder._isEmpty = n; return builder; }; const applyStyle = (e, t)=>{ if (e.level <= 0 || !t) return e._isEmpty ? "" : t; let n = e._styler; if (void 0 === n) return t; const { openAll: r, closeAll: s } = n; if (-1 !== t.indexOf("")) while(void 0 !== n){ t = l(t, n.close, n.open); n = n.parent; } const o = t.indexOf("\n"); if (-1 !== o) t = c(t, s, r, o); return r + t + s; }; let g; const chalkTag = (e, ...t)=>{ const [r] = t; if (!i(r) || !i(r.raw)) return t.join(" "); const s = t.slice(1); const o = [ r.raw[0] ]; for(let e = 1; e < r.length; e++)o.push(String(s[e - 1]).replace(/[{}\\]/g, "\\$&"), String(r.raw[e])); if (void 0 === g) g = n(654); return g(e, o.join("")); }; Object.defineProperties(Chalk.prototype, u); const b = Chalk(); b.supportsColor = s; b.stderr = Chalk({ level: o ? o.level : 0 }); b.stderr.supportsColor = o; e.exports = b; }, 654: (e)=>{ "use strict"; const t = /(?:\\(u(?:[a-f\d]{4}|\{[a-f\d]{1,6}\})|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; const n = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; const r = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; const s = /\\(u(?:[a-f\d]{4}|{[a-f\d]{1,6}})|x[a-f\d]{2}|.)|([^\\])/gi; const o = new Map([ [ "n", "\n" ], [ "r", "\r" ], [ "t", "\t" ], [ "b", "\b" ], [ "f", "\f" ], [ "v", "\v" ], [ "0", "\0" ], [ "\\", "\\" ], [ "e", "" ], [ "a", "" ] ]); function unescape(e) { const t = "u" === e[0]; const n = "{" === e[1]; if (t && !n && 5 === e.length || "x" === e[0] && 3 === e.length) return String.fromCharCode(parseInt(e.slice(1), 16)); if (t && n) return String.fromCodePoint(parseInt(e.slice(2, -1), 16)); return o.get(e) || e; } function parseArguments(e, t) { const n = []; const o = t.trim().split(/\s*,\s*/g); let l; for (const t of o){ const o = Number(t); if (Number.isNaN(o)) if (l = t.match(r)) n.push(l[2].replace(s, (e, t, n)=>t ? unescape(t) : n)); else throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`); else n.push(o); } return n; } function parseStyle(e) { n.lastIndex = 0; const t = []; let r; while(null !== (r = n.exec(e))){ const e = r[1]; if (r[2]) { const n = parseArguments(e, r[2]); t.push([ e ].concat(n)); } else t.push([ e ]); } return t; } function buildStyle(e, t) { const n = {}; for (const e of t)for (const t of e.styles)n[t[0]] = e.inverse ? null : t.slice(1); let r = e; for (const [e, t] of Object.entries(n))if (Array.isArray(t)) { if (!(e in r)) throw new Error(`Unknown Chalk style: ${e}`); r = t.length > 0 ? r[e](...t) : r[e]; } return r; } e.exports = (e, n)=>{ const r = []; const s = []; let o = []; n.replace(t, (t, n, l, c, i, a)=>{ if (n) o.push(unescape(n)); else if (c) { const t = o.join(""); o = []; s.push(0 === r.length ? t : buildStyle(e, r)(t)); r.push({ inverse: l, styles: parseStyle(c) }); } else if (i) { if (0 === r.length) throw new Error("Found extraneous } in Chalk template literal"); s.push(buildStyle(e, r)(o.join(""))); o = []; r.pop(); } else o.push(a); }); s.push(o.join("")); if (r.length > 0) { const e = `Chalk template literal is missing ${r.length} closing bracket${1 === r.length ? "" : "s"} (\`}\`)`; throw new Error(e); } return s.join(""); }; }, 905: (e)=>{ "use strict"; const stringReplaceAll = (e, t, n)=>{ let r = e.indexOf(t); if (-1 === r) return e; const s = t.length; let o = 0; let l = ""; do { l += e.substr(o, r - o) + t + n; o = r + s; r = e.indexOf(t, o); }while (-1 !== r); l += e.substr(o); return l; }; const stringEncaseCRLFWithFirstIndex = (e, t, n, r)=>{ let s = 0; let o = ""; do { const l = "\r" === e[r - 1]; o += e.substr(s, (l ? r - 1 : r) - s) + t + (l ? "\r\n" : "\n") + n; s = r + 1; r = e.indexOf("\n", s); }while (-1 !== r); o += e.substr(s); return o; }; e.exports = { stringReplaceAll: stringReplaceAll, stringEncaseCRLFWithFirstIndex: stringEncaseCRLFWithFirstIndex }; }, 226: (e, t, n)=>{ const r = n(866); const s = {}; for (const e of Object.keys(r))s[r[e]] = e; const o = { rgb: { channels: 3, labels: "rgb" }, hsl: { channels: 3, labels: "hsl" }, hsv: { channels: 3, labels: "hsv" }, hwb: { channels: 3, labels: "hwb" }, cmyk: { channels: 4, labels: "cmyk" }, xyz: { channels: 3, labels: "xyz" }, lab: { channels: 3, labels: "lab" }, lch: { channels: 3, labels: "lch" }, hex: { channels: 1, labels: [ "hex" ] }, keyword: { channels: 1, labels: [ "keyword" ] }, ansi16: { channels: 1, labels: [ "ansi16" ] }, ansi256: { channels: 1, labels: [ "ansi256" ] }, hcg: { channels: 3, labels: [ "h", "c", "g" ] }, apple: { channels: 3, labels: [ "r16", "g16", "b16" ] }, gray: { channels: 1, labels: [ "gray" ] } }; e.exports = o; for (const e of Object.keys(o)){ if (!("channels" in o[e])) throw new Error("missing channels property: " + e); if (!("labels" in o[e])) throw new Error("missing channel labels property: " + e); if (o[e].labels.length !== o[e].channels) throw new Error("channel and label counts mismatch: " + e); const { channels: t, labels: n } = o[e]; delete o[e].channels; delete o[e].labels; Object.defineProperty(o[e], "channels", { value: t }); Object.defineProperty(o[e], "labels", { value: n }); } o.rgb.hsl = function(e) { const t = e[0] / 255; const n = e[1] / 255; const r = e[2] / 255; const s = Math.min(t, n, r); const o = Math.max(t, n, r); const l = o - s; let c; let i; if (o === s) c = 0; else if (t === o) c = (n - r) / l; else if (n === o) c = 2 + (r - t) / l; else if (r === o) c = 4 + (t - n) / l; c = Math.min(60 * c, 360); if (c < 0) c += 360; const a = (s + o) / 2; i = o === s ? 0 : a <= .5 ? l / (o + s) : l / (2 - o - s); return [ c, 100 * i, 100 * a ]; }; o.rgb.hsv = function(e) { let t; let n; let r; let s; let o; const l = e[0] / 255; const c = e[1] / 255; const i = e[2] / 255; const a = Math.max(l, c, i); const u = a - Math.min(l, c, i); const diffc = function(e) { return (a - e) / 6 / u + 0.5; }; if (0 === u) { s = 0; o = 0; } else { o = u / a; t = diffc(l); n = diffc(c); r = diffc(i); if (l === a) s = r - n; else if (c === a) s = 1 / 3 + t - r; else if (i === a) s = 2 / 3 + n - t; if (s < 0) s += 1; else if (s > 1) s -= 1; } return [ 360 * s, 100 * o, 100 * a ]; }; o.rgb.hwb = function(e) { const t = e[0]; const n = e[1]; let r = e[2]; const s = o.rgb.hsl(e)[0]; const l = 1 / 255 * Math.min(t, Math.min(n, r)); r = 1 - 1 / 255 * Math.max(t, Math.max(n, r)); return [ s, 100 * l, 100 * r ]; }; o.rgb.cmyk = function(e) { const t = e[0] / 255; const n = e[1] / 255; const r = e[2] / 255; const s = Math.min(1 - t, 1 - n, 1 - r); const o = (1 - t - s) / (1 - s) || 0; const l = (1 - n - s) / (1 - s) || 0; const c = (1 - r - s) / (1 - s) || 0; return [ 100 * o, 100 * l, 100 * c, 100 * s ]; }; function comparativeDistance(e, t) { return (e[0] - t[0]) ** 2 + (e[1] - t[1]) ** 2 + (e[2] - t[2]) ** 2; } o.rgb.keyword = function(e) { const t = s[e]; if (t) return t; let n = 1 / 0; let o; for (const t of Object.keys(r)){ const s = r[t]; const l = comparativeDistance(e, s); if (l < n) { n = l; o = t; } } return o; }; o.keyword.rgb = function(e) { return r[e]; }; o.rgb.xyz = function(e) { let t = e[0] / 255; let n = e[1] / 255; let r = e[2] / 255; t = t > .04045 ? ((t + .055) / 1.055) ** 2.4 : t / 12.92; n = n > .04045 ? ((n + .055) / 1.055) ** 2.4 : n / 12.92; r = r > .04045 ? ((r + .055) / 1.055) ** 2.4 : r / 12.92; const s = .4124 * t + .3576 * n + .1805 * r; const o = .2126 * t + .7152 * n + .0722 * r; const l = .0193 * t + .1192 * n + .9505 * r; return [ 100 * s, 100 * o, 100 * l ]; }; o.rgb.lab = function(e) { const t = o.rgb.xyz(e); let n = t[0]; let r = t[1]; let s = t[2]; n /= 95.047; r /= 100; s /= 108.883; n = n > .008856 ? n ** (1 / 3) : 7.787 * n + 16 / 116; r = r > .008856 ? r ** (1 / 3) : 7.787 * r + 16 / 116; s = s > .008856 ? s ** (1 / 3) : 7.787 * s + 16 / 116; const l = 116 * r - 16; const c = 500 * (n - r); const i = 200 * (r - s); return [ l, c, i ]; }; o.hsl.rgb = function(e) { const t = e[0] / 360; const n = e[1] / 100; const r = e[2] / 100; let s; let o; let l; if (0 === n) { l = 255 * r; return [ l, l, l ]; } s = r < .5 ? r * (1 + n) : r + n - r * n; const c = 2 * r - s; const i = [ 0, 0, 0 ]; for(let e = 0; e < 3; e++){ o = t + 1 / 3 * -(e - 1); if (o < 0) o++; if (o > 1) o--; l = 6 * o < 1 ? c + (s - c) * 6 * o : 2 * o < 1 ? s : 3 * o < 2 ? c + (s - c) * (2 / 3 - o) * 6 : c; i[e] = 255 * l; } return i; }; o.hsl.hsv = function(e) { const t = e[0]; let n = e[1] / 100; let r = e[2] / 100; let s = n; const o = Math.max(r, .01); r *= 2; n *= r <= 1 ? r : 2 - r; s *= o <= 1 ? o : 2 - o; const l = (r + n) / 2; const c = 0 === r ? 2 * s / (o + s) : 2 * n / (r + n); return [ t, 100 * c, 100 * l ]; }; o.hsv.rgb = function(e) { const t = e[0] / 60; const n = e[1] / 100; let r = e[2] / 100; const s = Math.floor(t) % 6; const o = t - Math.floor(t); const l = 255 * r * (1 - n); const c = 255 * r * (1 - n * o); const i = 255 * r * (1 - n * (1 - o)); r *= 255; switch(s){ case 0: return [ r, i, l ]; case 1: return [ c, r, l ]; case 2: return [ l, r, i ]; case 3: return [ l, c, r ]; case 4: return [ i, l, r ]; case 5: return [ r, l, c ]; } }; o.hsv.hsl = function(e) { const t = e[0]; const n = e[1] / 100; const r = e[2] / 100; const s = Math.max(r, .01); let o; let l; l = (2 - n) * r; const c = (2 - n) * s; o = n * s; o /= c <= 1 ? c : 2 - c; o = o || 0; l /= 2; return [ t, 100 * o, 100 * l ]; }; o.hwb.rgb = function(e) { const t = e[0] / 360; let n = e[1] / 100; let r = e[2] / 100; const s = n + r; let o; if (s > 1) { n /= s; r /= s; } const l = Math.floor(6 * t); const c = 1 - r; o = 6 * t - l; if ((1 & l) !== 0) o = 1 - o; const i = n + o * (c - n); let a; let u; let h; switch(l){ default: case 6: case 0: a = c; u = i; h = n; break; case 1: a = i; u = c; h = n; break; case 2: a = n; u = c; h = i; break; case 3: a = n; u = i; h = c; break; case 4: a = i; u = n; h = c; break; case 5: a = c; u = n; h = i; break; } return [ 255 * a, 255 * u, 255 * h ]; }; o.cmyk.rgb = function(e) { const t = e[0] / 100; const n = e[1] / 100; const r = e[2] / 100; const s = e[3] / 100; const o = 1 - Math.min(1, t * (1 - s) + s); const l = 1 - Math.min(1, n * (1 - s) + s); const c = 1 - Math.min(1, r * (1 - s) + s); return [ 255 * o, 255 * l, 255 * c ]; }; o.xyz.rgb = function(e) { const t = e[0] / 100; const n = e[1] / 100; const r = e[2] / 100; let s; let o; let l; s = 3.2406 * t + -1.5372 * n + -0.4986 * r; o = -0.9689 * t + 1.8758 * n + .0415 * r; l = .0557 * t + -0.204 * n + 1.057 * r; s = s > .0031308 ? 1.055 * s ** (1 / 2.4) - .055 : 12.92 * s; o = o > .0031308 ? 1.055 * o ** (1 / 2.4) - .055 : 12.92 * o; l = l > .0031308 ? 1.055 * l ** (1 / 2.4) - .055 : 12.92 * l; s = Math.min(Math.max(0, s), 1); o = Math.min(Math.max(0, o), 1); l = Math.min(Math.max(0, l), 1); return [ 255 * s, 255 * o, 255 * l ]; }; o.xyz.lab = function(e) { let t = e[0]; let n = e[1]; let r = e[2]; t /= 95.047; n /= 100; r /= 108.883; t = t > .008856 ? t ** (1 / 3) : 7.787 * t + 16 / 116; n = n > .008856 ? n ** (1 / 3) : 7.787 * n + 16 / 116; r = r > .008856 ? r ** (1 / 3) : 7.787 * r + 16 / 116; const s = 116 * n - 16; const o = 500 * (t - n); const l = 200 * (n - r); return [ s, o, l ]; }; o.lab.xyz = function(e) { const t = e[0]; const n = e[1]; const r = e[2]; let s; let o; let l; o = (t + 16) / 116; s = n / 500 + o; l = o - r / 200; const c = o ** 3; const i = s ** 3; const a = l ** 3; o = c > .008856 ? c : (o - 16 / 116) / 7.787; s = i > .008856 ? i : (s - 16 / 116) / 7.787; l = a > .008856 ? a : (l - 16 / 116) / 7.787; s *= 95.047; o *= 100; l *= 108.883; return [ s, o, l ]; }; o.lab.lch = function(e) { const t = e[0]; const n = e[1]; const r = e[2]; let s; const o = Math.atan2(r, n); s = 360 * o / 2 / Math.PI; if (s < 0) s += 360; const l = Math.sqrt(n * n + r * r); return [ t, l, s ]; }; o.lch.lab = function(e) { const t = e[0]; const n = e[1]; const r = e[2]; const s = r / 360 * 2 * Math.PI; const o = n * Math.cos(s); const l = n * Math.sin(s); return [ t, o, l ]; }; o.rgb.ansi16 = function(e, t = null) { const [n, r, s] = e; let l = null === t ? o.rgb.hsv(e)[2] : t; l = Math.round(l / 50); if (0 === l) return 30; let c = 30 + (Math.round(s / 255) << 2 | Math.round(r / 255) << 1 | Math.round(n / 255)); if (2 === l) c += 60; return c; }; o.hsv.ansi16 = function(e) { return o.rgb.ansi16(o.hsv.rgb(e), e[2]); }; o.rgb.ansi256 = function(e) { const t = e[0]; const n = e[1]; const r = e[2]; if (t === n && n === r) { if (t < 8) return 16; if (t > 248) return 231; return Math.round((t - 8) / 247 * 24) + 232; } const s = 16 + 36 * Math.round(t / 255 * 5) + 6 * Math.round(n / 255 * 5) + Math.round(r / 255 * 5); return s; }; o.ansi16.rgb = function(e) { let t = e % 10; if (0 === t || 7 === t) { if (e > 50) t += 3.5; t = t / 10.5 * 255; return [ t, t, t ]; } const n = (~~(e > 50) + 1) * .5; const r = (1 & t) * n * 255; const s = (t >> 1 & 1) * n * 255; const o = (t >> 2 & 1) * n * 255; return [ r, s, o ]; }; o.ansi256.rgb = function(e) { if (e >= 232) { const t = (e - 232) * 10 + 8; return [ t, t, t ]; } e -= 16; let t; const n = Math.floor(e / 36) / 5 * 255; const r = Math.floor((t = e % 36) / 6) / 5 * 255; const s = t % 6 / 5 * 255; return [ n, r, s ]; }; o.rgb.hex = function(e) { const t = ((255 & Math.round(e[0])) << 16) + ((255 & Math.round(e[1])) << 8) + (255 & Math.round(e[2])); const n = t.toString(16).toUpperCase(); return "000000".substring(n.length) + n; }; o.hex.rgb = function(e) { const t = e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); if (!t) return [ 0, 0, 0 ]; let n = t[0]; if (3 === t[0].length) n = n.split("").map((e)=>e + e).join(""); const r = parseInt(n, 16); const s = r >> 16 & 255; const o = r >> 8 & 255; const l = 255 & r; return [ s, o, l ]; }; o.rgb.hcg = function(e) { const t = e[0] / 255; const n = e[1] / 255; const r = e[2] / 255; const s = Math.max(Math.max(t, n), r); const o = Math.min(Math.min(t, n), r); const l = s - o; let c; let i; c = l < 1 ? o / (1 - l) : 0; i = l <= 0 ? 0 : s === t ? (n - r) / l % 6 : s === n ? 2 + (r - t) / l : 4 + (t - n) / l; i /= 6; i %= 1; return [ 360 * i, 100 * l, 100 * c ]; }; o.hsl.hcg = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = n < .5 ? 2 * t * n : 2 * t * (1 - n); let s = 0; if (r < 1) s = (n - .5 * r) / (1 - r); return [ e[0], 100 * r, 100 * s ]; }; o.hsv.hcg = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = t * n; let s = 0; if (r < 1) s = (n - r) / (1 - r); return [ e[0], 100 * r, 100 * s ]; }; o.hcg.rgb = function(e) { const t = e[0] / 360; const n = e[1] / 100; const r = e[2] / 100; if (0 === n) return [ 255 * r, 255 * r, 255 * r ]; const s = [ 0, 0, 0 ]; const o = t % 1 * 6; const l = o % 1; const c = 1 - l; let i = 0; switch(Math.floor(o)){ case 0: s[0] = 1; s[1] = l; s[2] = 0; break; case 1: s[0] = c; s[1] = 1; s[2] = 0; break; case 2: s[0] = 0; s[1] = 1; s[2] = l; break; case 3: s[0] = 0; s[1] = c; s[2] = 1; break; case 4: s[0] = l; s[1] = 0; s[2] = 1; break; default: s[0] = 1; s[1] = 0; s[2] = c; } i = (1 - n) * r; return [ (n * s[0] + i) * 255, (n * s[1] + i) * 255, (n * s[2] + i) * 255 ]; }; o.hcg.hsv = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = t + n * (1 - t); let s = 0; if (r > 0) s = t / r; return [ e[0], 100 * s, 100 * r ]; }; o.hcg.hsl = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = n * (1 - t) + .5 * t; let s = 0; if (r > 0 && r < .5) s = t / (2 * r); else if (r >= .5 && r < 1) s = t / (2 * (1 - r)); return [ e[0], 100 * s, 100 * r ]; }; o.hcg.hwb = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = t + n * (1 - t); return [ e[0], (r - t) * 100, (1 - r) * 100 ]; }; o.hwb.hcg = function(e) { const t = e[1] / 100; const n = e[2] / 100; const r = 1 - n; const s = r - t; let o = 0; if (s < 1) o = (r - s) / (1 - s); return [ e[0], 100 * s, 100 * o ]; }; o.apple.rgb = function(e) { return [ e[0] / 65535 * 255, e[1] / 65535 * 255, e[2] / 65535 * 255 ]; }; o.rgb.apple = function(e) { return [ e[0] / 255 * 65535, e[1] / 255 * 65535, e[2] / 255 * 65535 ]; }; o.gray.rgb = function(e) { return [ e[0] / 100 * 255, e[0] / 100 * 255, e[0] / 100 * 255 ]; }; o.gray.hsl = function(e) { return [ 0, 0, e[0] ]; }; o.gray.hsv = o.gray.hsl; o.gray.hwb = function(e) { return [ 0, 100, e[0] ]; }; o.gray.cmyk = function(e) { return [ 0, 0, 0, e[0] ]; }; o.gray.lab = function(e) { return [ e[0], 0, 0 ]; }; o.gray.hex = function(e) { const t = 255 & Math.round(e[0] / 100 * 255); const n = (t << 16) + (t << 8) + t; const r = n.toString(16).toUpperCase(); return "000000".substring(r.length) + r; }; o.rgb.gray = function(e) { const t = (e[0] + e[1] + e[2]) / 3; return [ t / 255 * 100 ]; }; }, 767: (e, t, n)=>{ const r = n(226); const s = n(392); const o = {}; const l = Object.keys(r); function wrapRaw(e) { const wrappedFn = function(...t) { const n = t[0]; if (null == n) return n; if (n.length > 1) t = n; return e(t); }; if ("conversion" in e) wrappedFn.conversion = e.conversion; return wrappedFn; } function wrapRounded(e) { const wrappedFn = function(...t) { const n = t[0]; if (null == n) return n; if (n.length > 1) t = n; const r = e(t); if ("object" == typeof r) for(let e = r.length, t = 0; t < e; t++)r[t] = Math.round(r[t]); return r; }; if ("conversion" in e) wrappedFn.conversion = e.conversion; return wrappedFn; } l.forEach((e)=>{ o[e] = {}; Object.defineProperty(o[e], "channels", { value: r[e].channels }); Object.defineProperty(o[e], "labels", { value: r[e].labels }); const t = s(e); const n = Object.keys(t); n.forEach((n)=>{ const r = t[n]; o[e][n] = wrapRounded(r); o[e][n].raw = wrapRaw(r); }); }); e.exports = o; }, 392: (e, t, n)=>{ const r = n(226); function buildGraph() { const e = {}; const t = Object.keys(r); for(let n = t.length, r = 0; r < n; r++)e[t[r]] = { distance: -1, parent: null }; return e; } function deriveBFS(e) { const t = b