oda-framework
Version:
1,439 lines (1,438 loc) • 504 kB
JavaScript
import { TitleLevel as ft, ElementType as qe, ListStyle as ba } from "@hufe921/canvas-editor";
function va(t) {
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
}
var qi = { exports: {} }, Vi = {
aliceblue: [240, 248, 255],
antiquewhite: [250, 235, 215],
aqua: [0, 255, 255],
aquamarine: [127, 255, 212],
azure: [240, 255, 255],
beige: [245, 245, 220],
bisque: [255, 228, 196],
black: [0, 0, 0],
blanchedalmond: [255, 235, 205],
blue: [0, 0, 255],
blueviolet: [138, 43, 226],
brown: [165, 42, 42],
burlywood: [222, 184, 135],
cadetblue: [95, 158, 160],
chartreuse: [127, 255, 0],
chocolate: [210, 105, 30],
coral: [255, 127, 80],
cornflowerblue: [100, 149, 237],
cornsilk: [255, 248, 220],
crimson: [220, 20, 60],
cyan: [0, 255, 255],
darkblue: [0, 0, 139],
darkcyan: [0, 139, 139],
darkgoldenrod: [184, 134, 11],
darkgray: [169, 169, 169],
darkgreen: [0, 100, 0],
darkgrey: [169, 169, 169],
darkkhaki: [189, 183, 107],
darkmagenta: [139, 0, 139],
darkolivegreen: [85, 107, 47],
darkorange: [255, 140, 0],
darkorchid: [153, 50, 204],
darkred: [139, 0, 0],
darksalmon: [233, 150, 122],
darkseagreen: [143, 188, 143],
darkslateblue: [72, 61, 139],
darkslategray: [47, 79, 79],
darkslategrey: [47, 79, 79],
darkturquoise: [0, 206, 209],
darkviolet: [148, 0, 211],
deeppink: [255, 20, 147],
deepskyblue: [0, 191, 255],
dimgray: [105, 105, 105],
dimgrey: [105, 105, 105],
dodgerblue: [30, 144, 255],
firebrick: [178, 34, 34],
floralwhite: [255, 250, 240],
forestgreen: [34, 139, 34],
fuchsia: [255, 0, 255],
gainsboro: [220, 220, 220],
ghostwhite: [248, 248, 255],
gold: [255, 215, 0],
goldenrod: [218, 165, 32],
gray: [128, 128, 128],
green: [0, 128, 0],
greenyellow: [173, 255, 47],
grey: [128, 128, 128],
honeydew: [240, 255, 240],
hotpink: [255, 105, 180],
indianred: [205, 92, 92],
indigo: [75, 0, 130],
ivory: [255, 255, 240],
khaki: [240, 230, 140],
lavender: [230, 230, 250],
lavenderblush: [255, 240, 245],
lawngreen: [124, 252, 0],
lemonchiffon: [255, 250, 205],
lightblue: [173, 216, 230],
lightcoral: [240, 128, 128],
lightcyan: [224, 255, 255],
lightgoldenrodyellow: [250, 250, 210],
lightgray: [211, 211, 211],
lightgreen: [144, 238, 144],
lightgrey: [211, 211, 211],
lightpink: [255, 182, 193],
lightsalmon: [255, 160, 122],
lightseagreen: [32, 178, 170],
lightskyblue: [135, 206, 250],
lightslategray: [119, 136, 153],
lightslategrey: [119, 136, 153],
lightsteelblue: [176, 196, 222],
lightyellow: [255, 255, 224],
lime: [0, 255, 0],
limegreen: [50, 205, 50],
linen: [250, 240, 230],
magenta: [255, 0, 255],
maroon: [128, 0, 0],
mediumaquamarine: [102, 205, 170],
mediumblue: [0, 0, 205],
mediumorchid: [186, 85, 211],
mediumpurple: [147, 112, 219],
mediumseagreen: [60, 179, 113],
mediumslateblue: [123, 104, 238],
mediumspringgreen: [0, 250, 154],
mediumturquoise: [72, 209, 204],
mediumvioletred: [199, 21, 133],
midnightblue: [25, 25, 112],
mintcream: [245, 255, 250],
mistyrose: [255, 228, 225],
moccasin: [255, 228, 181],
navajowhite: [255, 222, 173],
navy: [0, 0, 128],
oldlace: [253, 245, 230],
olive: [128, 128, 0],
olivedrab: [107, 142, 35],
orange: [255, 165, 0],
orangered: [255, 69, 0],
orchid: [218, 112, 214],
palegoldenrod: [238, 232, 170],
palegreen: [152, 251, 152],
paleturquoise: [175, 238, 238],
palevioletred: [219, 112, 147],
papayawhip: [255, 239, 213],
peachpuff: [255, 218, 185],
peru: [205, 133, 63],
pink: [255, 192, 203],
plum: [221, 160, 221],
powderblue: [176, 224, 230],
purple: [128, 0, 128],
rebeccapurple: [102, 51, 153],
red: [255, 0, 0],
rosybrown: [188, 143, 143],
royalblue: [65, 105, 225],
saddlebrown: [139, 69, 19],
salmon: [250, 128, 114],
sandybrown: [244, 164, 96],
seagreen: [46, 139, 87],
seashell: [255, 245, 238],
sienna: [160, 82, 45],
silver: [192, 192, 192],
skyblue: [135, 206, 235],
slateblue: [106, 90, 205],
slategray: [112, 128, 144],
slategrey: [112, 128, 144],
snow: [255, 250, 250],
springgreen: [0, 255, 127],
steelblue: [70, 130, 180],
tan: [210, 180, 140],
teal: [0, 128, 128],
thistle: [216, 191, 216],
tomato: [255, 99, 71],
turquoise: [64, 224, 208],
violet: [238, 130, 238],
wheat: [245, 222, 179],
white: [255, 255, 255],
whitesmoke: [245, 245, 245],
yellow: [255, 255, 0],
yellowgreen: [154, 205, 50]
}, $i = { exports: {} }, _a = function(e) {
return !e || typeof e == "string" ? !1 : e instanceof Array || Array.isArray(e) || e.length >= 0 && (e.splice instanceof Function || Object.getOwnPropertyDescriptor(e, e.length - 1) && e.constructor.name !== "String");
}, xa = _a, Ea = Array.prototype.concat, Aa = Array.prototype.slice, Gn = $i.exports = function(e) {
for (var r = [], n = 0, o = e.length; n < o; n++) {
var c = e[n];
xa(c) ? r = Ea.call(r, Aa.call(c)) : r.push(c);
}
return r;
};
Gn.wrap = function(t) {
return function() {
return t(Gn(arguments));
};
};
var Ta = $i.exports, Dt = Vi, Bt = Ta, Xi = Object.hasOwnProperty, Zi = /* @__PURE__ */ Object.create(null);
for (var pr in Dt)
Xi.call(Dt, pr) && (Zi[Dt[pr]] = pr);
var Be = qi.exports = {
to: {},
get: {}
};
Be.get = function(t) {
var e = t.substring(0, 3).toLowerCase(), r, n;
switch (e) {
case "hsl":
r = Be.get.hsl(t), n = "hsl";
break;
case "hwb":
r = Be.get.hwb(t), n = "hwb";
break;
default:
r = Be.get.rgb(t), n = "rgb";
break;
}
return r ? { model: n, value: r } : null;
};
Be.get.rgb = function(t) {
if (!t)
return null;
var e = /^#([a-f0-9]{3,4})$/i, r = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i, n = /^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/, o = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/, c = /^(\w+)$/, u = [0, 0, 0, 1], i, l, b;
if (i = t.match(r)) {
for (b = i[2], i = i[1], l = 0; l < 3; l++) {
var E = l * 2;
u[l] = parseInt(i.slice(E, E + 2), 16);
}
b && (u[3] = parseInt(b, 16) / 255);
} else if (i = t.match(e)) {
for (i = i[1], b = i[3], l = 0; l < 3; l++)
u[l] = parseInt(i[l] + i[l], 16);
b && (u[3] = parseInt(b + b, 16) / 255);
} else if (i = t.match(n)) {
for (l = 0; l < 3; l++)
u[l] = parseInt(i[l + 1], 0);
i[4] && (i[5] ? u[3] = parseFloat(i[4]) * 0.01 : u[3] = parseFloat(i[4]));
} else if (i = t.match(o)) {
for (l = 0; l < 3; l++)
u[l] = Math.round(parseFloat(i[l + 1]) * 2.55);
i[4] && (i[5] ? u[3] = parseFloat(i[4]) * 0.01 : u[3] = parseFloat(i[4]));
} else
return (i = t.match(c)) ? i[1] === "transparent" ? [0, 0, 0, 0] : Xi.call(Dt, i[1]) ? (u = Dt[i[1]], u[3] = 1, u) : null : null;
for (l = 0; l < 3; l++)
u[l] = tt(u[l], 0, 255);
return u[3] = tt(u[3], 0, 1), u;
};
Be.get.hsl = function(t) {
if (!t)
return null;
var e = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, r = t.match(e);
if (r) {
var n = parseFloat(r[4]), o = (parseFloat(r[1]) % 360 + 360) % 360, c = tt(parseFloat(r[2]), 0, 100), u = tt(parseFloat(r[3]), 0, 100), i = tt(isNaN(n) ? 1 : n, 0, 1);
return [o, c, u, i];
}
return null;
};
Be.get.hwb = function(t) {
if (!t)
return null;
var e = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/, r = t.match(e);
if (r) {
var n = parseFloat(r[4]), o = (parseFloat(r[1]) % 360 + 360) % 360, c = tt(parseFloat(r[2]), 0, 100), u = tt(parseFloat(r[3]), 0, 100), i = tt(isNaN(n) ? 1 : n, 0, 1);
return [o, c, u, i];
}
return null;
};
Be.to.hex = function() {
var t = Bt(arguments);
return "#" + Gt(t[0]) + Gt(t[1]) + Gt(t[2]) + (t[3] < 1 ? Gt(Math.round(t[3] * 255)) : "");
};
Be.to.rgb = function() {
var t = Bt(arguments);
return t.length < 4 || t[3] === 1 ? "rgb(" + Math.round(t[0]) + ", " + Math.round(t[1]) + ", " + Math.round(t[2]) + ")" : "rgba(" + Math.round(t[0]) + ", " + Math.round(t[1]) + ", " + Math.round(t[2]) + ", " + t[3] + ")";
};
Be.to.rgb.percent = function() {
var t = Bt(arguments), e = Math.round(t[0] / 255 * 100), r = Math.round(t[1] / 255 * 100), n = Math.round(t[2] / 255 * 100);
return t.length < 4 || t[3] === 1 ? "rgb(" + e + "%, " + r + "%, " + n + "%)" : "rgba(" + e + "%, " + r + "%, " + n + "%, " + t[3] + ")";
};
Be.to.hsl = function() {
var t = Bt(arguments);
return t.length < 4 || t[3] === 1 ? "hsl(" + t[0] + ", " + t[1] + "%, " + t[2] + "%)" : "hsla(" + t[0] + ", " + t[1] + "%, " + t[2] + "%, " + t[3] + ")";
};
Be.to.hwb = function() {
var t = Bt(arguments), e = "";
return t.length >= 4 && t[3] !== 1 && (e = ", " + t[3]), "hwb(" + t[0] + ", " + t[1] + "%, " + t[2] + "%" + e + ")";
};
Be.to.keyword = function(t) {
return Zi[t.slice(0, 3)];
};
function tt(t, e, r) {
return Math.min(Math.max(e, t), r);
}
function Gt(t) {
var e = Math.round(t).toString(16).toUpperCase();
return e.length < 2 ? "0" + e : e;
}
var Sa = qi.exports;
const Pt = Vi, Yi = {};
for (const t of Object.keys(Pt))
Yi[Pt[t]] = t;
const de = {
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"] }
};
var Ji = de;
for (const t of Object.keys(de)) {
if (!("channels" in de[t]))
throw new Error("missing channels property: " + t);
if (!("labels" in de[t]))
throw new Error("missing channel labels property: " + t);
if (de[t].labels.length !== de[t].channels)
throw new Error("channel and label counts mismatch: " + t);
const { channels: e, labels: r } = de[t];
delete de[t].channels, delete de[t].labels, Object.defineProperty(de[t], "channels", { value: e }), Object.defineProperty(de[t], "labels", { value: r });
}
de.rgb.hsl = function(t) {
const e = t[0] / 255, r = t[1] / 255, n = t[2] / 255, o = Math.min(e, r, n), c = Math.max(e, r, n), u = c - o;
let i, l;
c === o ? i = 0 : e === c ? i = (r - n) / u : r === c ? i = 2 + (n - e) / u : n === c && (i = 4 + (e - r) / u), i = Math.min(i * 60, 360), i < 0 && (i += 360);
const b = (o + c) / 2;
return c === o ? l = 0 : b <= 0.5 ? l = u / (c + o) : l = u / (2 - c - o), [i, l * 100, b * 100];
};
de.rgb.hsv = function(t) {
let e, r, n, o, c;
const u = t[0] / 255, i = t[1] / 255, l = t[2] / 255, b = Math.max(u, i, l), E = b - Math.min(u, i, l), T = function(A) {
return (b - A) / 6 / E + 1 / 2;
};
return E === 0 ? (o = 0, c = 0) : (c = E / b, e = T(u), r = T(i), n = T(l), u === b ? o = n - r : i === b ? o = 1 / 3 + e - n : l === b && (o = 2 / 3 + r - e), o < 0 ? o += 1 : o > 1 && (o -= 1)), [
o * 360,
c * 100,
b * 100
];
};
de.rgb.hwb = function(t) {
const e = t[0], r = t[1];
let n = t[2];
const o = de.rgb.hsl(t)[0], c = 1 / 255 * Math.min(e, Math.min(r, n));
return n = 1 - 1 / 255 * Math.max(e, Math.max(r, n)), [o, c * 100, n * 100];
};
de.rgb.cmyk = function(t) {
const e = t[0] / 255, r = t[1] / 255, n = t[2] / 255, o = Math.min(1 - e, 1 - r, 1 - n), c = (1 - e - o) / (1 - o) || 0, u = (1 - r - o) / (1 - o) || 0, i = (1 - n - o) / (1 - o) || 0;
return [c * 100, u * 100, i * 100, o * 100];
};
function ka(t, e) {
return (t[0] - e[0]) ** 2 + (t[1] - e[1]) ** 2 + (t[2] - e[2]) ** 2;
}
de.rgb.keyword = function(t) {
const e = Yi[t];
if (e)
return e;
let r = 1 / 0, n;
for (const o of Object.keys(Pt)) {
const c = Pt[o], u = ka(t, c);
u < r && (r = u, n = o);
}
return n;
};
de.keyword.rgb = function(t) {
return Pt[t];
};
de.rgb.xyz = function(t) {
let e = t[0] / 255, r = t[1] / 255, n = t[2] / 255;
e = e > 0.04045 ? ((e + 0.055) / 1.055) ** 2.4 : e / 12.92, r = r > 0.04045 ? ((r + 0.055) / 1.055) ** 2.4 : r / 12.92, n = n > 0.04045 ? ((n + 0.055) / 1.055) ** 2.4 : n / 12.92;
const o = e * 0.4124 + r * 0.3576 + n * 0.1805, c = e * 0.2126 + r * 0.7152 + n * 0.0722, u = e * 0.0193 + r * 0.1192 + n * 0.9505;
return [o * 100, c * 100, u * 100];
};
de.rgb.lab = function(t) {
const e = de.rgb.xyz(t);
let r = e[0], n = e[1], o = e[2];
r /= 95.047, n /= 100, o /= 108.883, r = r > 8856e-6 ? r ** (1 / 3) : 7.787 * r + 16 / 116, n = n > 8856e-6 ? n ** (1 / 3) : 7.787 * n + 16 / 116, o = o > 8856e-6 ? o ** (1 / 3) : 7.787 * o + 16 / 116;
const c = 116 * n - 16, u = 500 * (r - n), i = 200 * (n - o);
return [c, u, i];
};
de.hsl.rgb = function(t) {
const e = t[0] / 360, r = t[1] / 100, n = t[2] / 100;
let o, c, u;
if (r === 0)
return u = n * 255, [u, u, u];
n < 0.5 ? o = n * (1 + r) : o = n + r - n * r;
const i = 2 * n - o, l = [0, 0, 0];
for (let b = 0; b < 3; b++)
c = e + 1 / 3 * -(b - 1), c < 0 && c++, c > 1 && c--, 6 * c < 1 ? u = i + (o - i) * 6 * c : 2 * c < 1 ? u = o : 3 * c < 2 ? u = i + (o - i) * (2 / 3 - c) * 6 : u = i, l[b] = u * 255;
return l;
};
de.hsl.hsv = function(t) {
const e = t[0];
let r = t[1] / 100, n = t[2] / 100, o = r;
const c = Math.max(n, 0.01);
n *= 2, r *= n <= 1 ? n : 2 - n, o *= c <= 1 ? c : 2 - c;
const u = (n + r) / 2, i = n === 0 ? 2 * o / (c + o) : 2 * r / (n + r);
return [e, i * 100, u * 100];
};
de.hsv.rgb = function(t) {
const e = t[0] / 60, r = t[1] / 100;
let n = t[2] / 100;
const o = Math.floor(e) % 6, c = e - Math.floor(e), u = 255 * n * (1 - r), i = 255 * n * (1 - r * c), l = 255 * n * (1 - r * (1 - c));
switch (n *= 255, o) {
case 0:
return [n, l, u];
case 1:
return [i, n, u];
case 2:
return [u, n, l];
case 3:
return [u, i, n];
case 4:
return [l, u, n];
case 5:
return [n, u, i];
}
};
de.hsv.hsl = function(t) {
const e = t[0], r = t[1] / 100, n = t[2] / 100, o = Math.max(n, 0.01);
let c, u;
u = (2 - r) * n;
const i = (2 - r) * o;
return c = r * o, c /= i <= 1 ? i : 2 - i, c = c || 0, u /= 2, [e, c * 100, u * 100];
};
de.hwb.rgb = function(t) {
const e = t[0] / 360;
let r = t[1] / 100, n = t[2] / 100;
const o = r + n;
let c;
o > 1 && (r /= o, n /= o);
const u = Math.floor(6 * e), i = 1 - n;
c = 6 * e - u, u & 1 && (c = 1 - c);
const l = r + c * (i - r);
let b, E, T;
switch (u) {
default:
case 6:
case 0:
b = i, E = l, T = r;
break;
case 1:
b = l, E = i, T = r;
break;
case 2:
b = r, E = i, T = l;
break;
case 3:
b = r, E = l, T = i;
break;
case 4:
b = l, E = r, T = i;
break;
case 5:
b = i, E = r, T = l;
break;
}
return [b * 255, E * 255, T * 255];
};
de.cmyk.rgb = function(t) {
const e = t[0] / 100, r = t[1] / 100, n = t[2] / 100, o = t[3] / 100, c = 1 - Math.min(1, e * (1 - o) + o), u = 1 - Math.min(1, r * (1 - o) + o), i = 1 - Math.min(1, n * (1 - o) + o);
return [c * 255, u * 255, i * 255];
};
de.xyz.rgb = function(t) {
const e = t[0] / 100, r = t[1] / 100, n = t[2] / 100;
let o, c, u;
return o = e * 3.2406 + r * -1.5372 + n * -0.4986, c = e * -0.9689 + r * 1.8758 + n * 0.0415, u = e * 0.0557 + r * -0.204 + n * 1.057, o = o > 31308e-7 ? 1.055 * o ** (1 / 2.4) - 0.055 : o * 12.92, c = c > 31308e-7 ? 1.055 * c ** (1 / 2.4) - 0.055 : c * 12.92, u = u > 31308e-7 ? 1.055 * u ** (1 / 2.4) - 0.055 : u * 12.92, o = Math.min(Math.max(0, o), 1), c = Math.min(Math.max(0, c), 1), u = Math.min(Math.max(0, u), 1), [o * 255, c * 255, u * 255];
};
de.xyz.lab = function(t) {
let e = t[0], r = t[1], n = t[2];
e /= 95.047, r /= 100, n /= 108.883, e = e > 8856e-6 ? e ** (1 / 3) : 7.787 * e + 16 / 116, r = r > 8856e-6 ? r ** (1 / 3) : 7.787 * r + 16 / 116, n = n > 8856e-6 ? n ** (1 / 3) : 7.787 * n + 16 / 116;
const o = 116 * r - 16, c = 500 * (e - r), u = 200 * (r - n);
return [o, c, u];
};
de.lab.xyz = function(t) {
const e = t[0], r = t[1], n = t[2];
let o, c, u;
c = (e + 16) / 116, o = r / 500 + c, u = c - n / 200;
const i = c ** 3, l = o ** 3, b = u ** 3;
return c = i > 8856e-6 ? i : (c - 16 / 116) / 7.787, o = l > 8856e-6 ? l : (o - 16 / 116) / 7.787, u = b > 8856e-6 ? b : (u - 16 / 116) / 7.787, o *= 95.047, c *= 100, u *= 108.883, [o, c, u];
};
de.lab.lch = function(t) {
const e = t[0], r = t[1], n = t[2];
let o;
o = Math.atan2(n, r) * 360 / 2 / Math.PI, o < 0 && (o += 360);
const u = Math.sqrt(r * r + n * n);
return [e, u, o];
};
de.lch.lab = function(t) {
const e = t[0], r = t[1], o = t[2] / 360 * 2 * Math.PI, c = r * Math.cos(o), u = r * Math.sin(o);
return [e, c, u];
};
de.rgb.ansi16 = function(t, e = null) {
const [r, n, o] = t;
let c = e === null ? de.rgb.hsv(t)[2] : e;
if (c = Math.round(c / 50), c === 0)
return 30;
let u = 30 + (Math.round(o / 255) << 2 | Math.round(n / 255) << 1 | Math.round(r / 255));
return c === 2 && (u += 60), u;
};
de.hsv.ansi16 = function(t) {
return de.rgb.ansi16(de.hsv.rgb(t), t[2]);
};
de.rgb.ansi256 = function(t) {
const e = t[0], r = t[1], n = t[2];
return e === r && r === n ? e < 8 ? 16 : e > 248 ? 231 : Math.round((e - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(e / 255 * 5) + 6 * Math.round(r / 255 * 5) + Math.round(n / 255 * 5);
};
de.ansi16.rgb = function(t) {
let e = t % 10;
if (e === 0 || e === 7)
return t > 50 && (e += 3.5), e = e / 10.5 * 255, [e, e, e];
const r = (~~(t > 50) + 1) * 0.5, n = (e & 1) * r * 255, o = (e >> 1 & 1) * r * 255, c = (e >> 2 & 1) * r * 255;
return [n, o, c];
};
de.ansi256.rgb = function(t) {
if (t >= 232) {
const c = (t - 232) * 10 + 8;
return [c, c, c];
}
t -= 16;
let e;
const r = Math.floor(t / 36) / 5 * 255, n = Math.floor((e = t % 36) / 6) / 5 * 255, o = e % 6 / 5 * 255;
return [r, n, o];
};
de.rgb.hex = function(t) {
const r = (((Math.round(t[0]) & 255) << 16) + ((Math.round(t[1]) & 255) << 8) + (Math.round(t[2]) & 255)).toString(16).toUpperCase();
return "000000".substring(r.length) + r;
};
de.hex.rgb = function(t) {
const e = t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);
if (!e)
return [0, 0, 0];
let r = e[0];
e[0].length === 3 && (r = r.split("").map((i) => i + i).join(""));
const n = parseInt(r, 16), o = n >> 16 & 255, c = n >> 8 & 255, u = n & 255;
return [o, c, u];
};
de.rgb.hcg = function(t) {
const e = t[0] / 255, r = t[1] / 255, n = t[2] / 255, o = Math.max(Math.max(e, r), n), c = Math.min(Math.min(e, r), n), u = o - c;
let i, l;
return u < 1 ? i = c / (1 - u) : i = 0, u <= 0 ? l = 0 : o === e ? l = (r - n) / u % 6 : o === r ? l = 2 + (n - e) / u : l = 4 + (e - r) / u, l /= 6, l %= 1, [l * 360, u * 100, i * 100];
};
de.hsl.hcg = function(t) {
const e = t[1] / 100, r = t[2] / 100, n = r < 0.5 ? 2 * e * r : 2 * e * (1 - r);
let o = 0;
return n < 1 && (o = (r - 0.5 * n) / (1 - n)), [t[0], n * 100, o * 100];
};
de.hsv.hcg = function(t) {
const e = t[1] / 100, r = t[2] / 100, n = e * r;
let o = 0;
return n < 1 && (o = (r - n) / (1 - n)), [t[0], n * 100, o * 100];
};
de.hcg.rgb = function(t) {
const e = t[0] / 360, r = t[1] / 100, n = t[2] / 100;
if (r === 0)
return [n * 255, n * 255, n * 255];
const o = [0, 0, 0], c = e % 1 * 6, u = c % 1, i = 1 - u;
let l = 0;
switch (Math.floor(c)) {
case 0:
o[0] = 1, o[1] = u, o[2] = 0;
break;
case 1:
o[0] = i, o[1] = 1, o[2] = 0;
break;
case 2:
o[0] = 0, o[1] = 1, o[2] = u;
break;
case 3:
o[0] = 0, o[1] = i, o[2] = 1;
break;
case 4:
o[0] = u, o[1] = 0, o[2] = 1;
break;
default:
o[0] = 1, o[1] = 0, o[2] = i;
}
return l = (1 - r) * n, [
(r * o[0] + l) * 255,
(r * o[1] + l) * 255,
(r * o[2] + l) * 255
];
};
de.hcg.hsv = function(t) {
const e = t[1] / 100, r = t[2] / 100, n = e + r * (1 - e);
let o = 0;
return n > 0 && (o = e / n), [t[0], o * 100, n * 100];
};
de.hcg.hsl = function(t) {
const e = t[1] / 100, n = t[2] / 100 * (1 - e) + 0.5 * e;
let o = 0;
return n > 0 && n < 0.5 ? o = e / (2 * n) : n >= 0.5 && n < 1 && (o = e / (2 * (1 - n))), [t[0], o * 100, n * 100];
};
de.hcg.hwb = function(t) {
const e = t[1] / 100, r = t[2] / 100, n = e + r * (1 - e);
return [t[0], (n - e) * 100, (1 - n) * 100];
};
de.hwb.hcg = function(t) {
const e = t[1] / 100, n = 1 - t[2] / 100, o = n - e;
let c = 0;
return o < 1 && (c = (n - o) / (1 - o)), [t[0], o * 100, c * 100];
};
de.apple.rgb = function(t) {
return [t[0] / 65535 * 255, t[1] / 65535 * 255, t[2] / 65535 * 255];
};
de.rgb.apple = function(t) {
return [t[0] / 255 * 65535, t[1] / 255 * 65535, t[2] / 255 * 65535];
};
de.gray.rgb = function(t) {
return [t[0] / 100 * 255, t[0] / 100 * 255, t[0] / 100 * 255];
};
de.gray.hsl = function(t) {
return [0, 0, t[0]];
};
de.gray.hsv = de.gray.hsl;
de.gray.hwb = function(t) {
return [0, 100, t[0]];
};
de.gray.cmyk = function(t) {
return [0, 0, 0, t[0]];
};
de.gray.lab = function(t) {
return [t[0], 0, 0];
};
de.gray.hex = function(t) {
const e = Math.round(t[0] / 100 * 255) & 255, n = ((e << 16) + (e << 8) + e).toString(16).toUpperCase();
return "000000".substring(n.length) + n;
};
de.rgb.gray = function(t) {
return [(t[0] + t[1] + t[2]) / 3 / 255 * 100];
};
const Jt = Ji;
function Ia() {
const t = {}, e = Object.keys(Jt);
for (let r = e.length, n = 0; n < r; n++)
t[e[n]] = {
// http://jsperf.com/1-vs-infinity
// micro-opt, but this is simple.
distance: -1,
parent: null
};
return t;
}
function Ra(t) {
const e = Ia(), r = [t];
for (e[t].distance = 0; r.length; ) {
const n = r.pop(), o = Object.keys(Jt[n]);
for (let c = o.length, u = 0; u < c; u++) {
const i = o[u], l = e[i];
l.distance === -1 && (l.distance = e[n].distance + 1, l.parent = n, r.unshift(i));
}
}
return e;
}
function Ca(t, e) {
return function(r) {
return e(t(r));
};
}
function Na(t, e) {
const r = [e[t].parent, t];
let n = Jt[e[t].parent][t], o = e[t].parent;
for (; e[o].parent; )
r.unshift(e[o].parent), n = Ca(Jt[e[o].parent][o], n), o = e[o].parent;
return n.conversion = r, n;
}
var Oa = function(t) {
const e = Ra(t), r = {}, n = Object.keys(e);
for (let o = n.length, c = 0; c < o; c++) {
const u = n[c];
e[u].parent !== null && (r[u] = Na(u, e));
}
return r;
};
const un = Ji, Da = Oa, mt = {}, Pa = Object.keys(un);
function Fa(t) {
const e = function(...r) {
const n = r[0];
return n == null ? n : (n.length > 1 && (r = n), t(r));
};
return "conversion" in t && (e.conversion = t.conversion), e;
}
function Ba(t) {
const e = function(...r) {
const n = r[0];
if (n == null)
return n;
n.length > 1 && (r = n);
const o = t(r);
if (typeof o == "object")
for (let c = o.length, u = 0; u < c; u++)
o[u] = Math.round(o[u]);
return o;
};
return "conversion" in t && (e.conversion = t.conversion), e;
}
Pa.forEach((t) => {
mt[t] = {}, Object.defineProperty(mt[t], "channels", { value: un[t].channels }), Object.defineProperty(mt[t], "labels", { value: un[t].labels });
const e = Da(t);
Object.keys(e).forEach((n) => {
const o = e[n];
mt[t][n] = Ba(o), mt[t][n].raw = Fa(o);
});
});
var La = mt;
const wt = Sa, Fe = La, Qi = [
// To be honest, I don't really feel like keyword belongs in color convert, but eh.
"keyword",
// Gray conflicts with some method names, and has its own method defined.
"gray",
// Shouldn't really be in color-convert either...
"hex"
], cn = {};
for (const t of Object.keys(Fe))
cn[[...Fe[t].labels].sort().join("")] = t;
const Qt = {};
function Re(t, e) {
if (!(this instanceof Re))
return new Re(t, e);
if (e && e in Qi && (e = null), e && !(e in Fe))
throw new Error("Unknown model: " + e);
let r, n;
if (t == null)
this.model = "rgb", this.color = [0, 0, 0], this.valpha = 1;
else if (t instanceof Re)
this.model = t.model, this.color = [...t.color], this.valpha = t.valpha;
else if (typeof t == "string") {
const o = wt.get(t);
if (o === null)
throw new Error("Unable to parse color from string: " + t);
this.model = o.model, n = Fe[this.model].channels, this.color = o.value.slice(0, n), this.valpha = typeof o.value[n] == "number" ? o.value[n] : 1;
} else if (t.length > 0) {
this.model = e || "rgb", n = Fe[this.model].channels;
const o = Array.prototype.slice.call(t, 0, n);
this.color = ln(o, n), this.valpha = typeof t[n] == "number" ? t[n] : 1;
} else if (typeof t == "number")
this.model = "rgb", this.color = [
t >> 16 & 255,
t >> 8 & 255,
t & 255
], this.valpha = 1;
else {
this.valpha = 1;
const o = Object.keys(t);
"alpha" in t && (o.splice(o.indexOf("alpha"), 1), this.valpha = typeof t.alpha == "number" ? t.alpha : 0);
const c = o.sort().join("");
if (!(c in cn))
throw new Error("Unable to parse color from object: " + JSON.stringify(t));
this.model = cn[c];
const { labels: u } = Fe[this.model], i = [];
for (r = 0; r < u.length; r++)
i.push(t[u[r]]);
this.color = ln(i);
}
if (Qt[this.model])
for (n = Fe[this.model].channels, r = 0; r < n; r++) {
const o = Qt[this.model][r];
o && (this.color[r] = o(this.color[r]));
}
this.valpha = Math.max(0, Math.min(1, this.valpha)), Object.freeze && Object.freeze(this);
}
Re.prototype = {
toString() {
return this.string();
},
toJSON() {
return this[this.model]();
},
string(t) {
let e = this.model in wt.to ? this : this.rgb();
e = e.round(typeof t == "number" ? t : 1);
const r = e.valpha === 1 ? e.color : [...e.color, this.valpha];
return wt.to[e.model](r);
},
percentString(t) {
const e = this.rgb().round(typeof t == "number" ? t : 1), r = e.valpha === 1 ? e.color : [...e.color, this.valpha];
return wt.to.rgb.percent(r);
},
array() {
return this.valpha === 1 ? [...this.color] : [...this.color, this.valpha];
},
object() {
const t = {}, { channels: e } = Fe[this.model], { labels: r } = Fe[this.model];
for (let n = 0; n < e; n++)
t[r[n]] = this.color[n];
return this.valpha !== 1 && (t.alpha = this.valpha), t;
},
unitArray() {
const t = this.rgb().color;
return t[0] /= 255, t[1] /= 255, t[2] /= 255, this.valpha !== 1 && t.push(this.valpha), t;
},
unitObject() {
const t = this.rgb().object();
return t.r /= 255, t.g /= 255, t.b /= 255, this.valpha !== 1 && (t.alpha = this.valpha), t;
},
round(t) {
return t = Math.max(t || 0, 0), new Re([...this.color.map(Ua(t)), this.valpha], this.model);
},
alpha(t) {
return t !== void 0 ? new Re([...this.color, Math.max(0, Math.min(1, t))], this.model) : this.valpha;
},
// Rgb
red: Ee("rgb", 0, ke(255)),
green: Ee("rgb", 1, ke(255)),
blue: Ee("rgb", 2, ke(255)),
hue: Ee(["hsl", "hsv", "hsl", "hwb", "hcg"], 0, (t) => (t % 360 + 360) % 360),
saturationl: Ee("hsl", 1, ke(100)),
lightness: Ee("hsl", 2, ke(100)),
saturationv: Ee("hsv", 1, ke(100)),
value: Ee("hsv", 2, ke(100)),
chroma: Ee("hcg", 1, ke(100)),
gray: Ee("hcg", 2, ke(100)),
white: Ee("hwb", 1, ke(100)),
wblack: Ee("hwb", 2, ke(100)),
cyan: Ee("cmyk", 0, ke(100)),
magenta: Ee("cmyk", 1, ke(100)),
yellow: Ee("cmyk", 2, ke(100)),
black: Ee("cmyk", 3, ke(100)),
x: Ee("xyz", 0, ke(95.047)),
y: Ee("xyz", 1, ke(100)),
z: Ee("xyz", 2, ke(108.833)),
l: Ee("lab", 0, ke(100)),
a: Ee("lab", 1),
b: Ee("lab", 2),
keyword(t) {
return t !== void 0 ? new Re(t) : Fe[this.model].keyword(this.color);
},
hex(t) {
return t !== void 0 ? new Re(t) : wt.to.hex(this.rgb().round().color);
},
hexa(t) {
if (t !== void 0)
return new Re(t);
const e = this.rgb().round().color;
let r = Math.round(this.valpha * 255).toString(16).toUpperCase();
return r.length === 1 && (r = "0" + r), wt.to.hex(e) + r;
},
rgbNumber() {
const t = this.rgb().color;
return (t[0] & 255) << 16 | (t[1] & 255) << 8 | t[2] & 255;
},
luminosity() {
const t = this.rgb().color, e = [];
for (const [r, n] of t.entries()) {
const o = n / 255;
e[r] = o <= 0.04045 ? o / 12.92 : ((o + 0.055) / 1.055) ** 2.4;
}
return 0.2126 * e[0] + 0.7152 * e[1] + 0.0722 * e[2];
},
contrast(t) {
const e = this.luminosity(), r = t.luminosity();
return e > r ? (e + 0.05) / (r + 0.05) : (r + 0.05) / (e + 0.05);
},
level(t) {
const e = this.contrast(t);
return e >= 7 ? "AAA" : e >= 4.5 ? "AA" : "";
},
isDark() {
const t = this.rgb().color;
return (t[0] * 2126 + t[1] * 7152 + t[2] * 722) / 1e4 < 128;
},
isLight() {
return !this.isDark();
},
negate() {
const t = this.rgb();
for (let e = 0; e < 3; e++)
t.color[e] = 255 - t.color[e];
return t;
},
lighten(t) {
const e = this.hsl();
return e.color[2] += e.color[2] * t, e;
},
darken(t) {
const e = this.hsl();
return e.color[2] -= e.color[2] * t, e;
},
saturate(t) {
const e = this.hsl();
return e.color[1] += e.color[1] * t, e;
},
desaturate(t) {
const e = this.hsl();
return e.color[1] -= e.color[1] * t, e;
},
whiten(t) {
const e = this.hwb();
return e.color[1] += e.color[1] * t, e;
},
blacken(t) {
const e = this.hwb();
return e.color[2] += e.color[2] * t, e;
},
grayscale() {
const t = this.rgb().color, e = t[0] * 0.3 + t[1] * 0.59 + t[2] * 0.11;
return Re.rgb(e, e, e);
},
fade(t) {
return this.alpha(this.valpha - this.valpha * t);
},
opaquer(t) {
return this.alpha(this.valpha + this.valpha * t);
},
rotate(t) {
const e = this.hsl();
let r = e.color[0];
return r = (r + t) % 360, r = r < 0 ? 360 + r : r, e.color[0] = r, e;
},
mix(t, e) {
if (!t || !t.rgb)
throw new Error('Argument to "mix" was not a Color instance, but rather an instance of ' + typeof t);
const r = t.rgb(), n = this.rgb(), o = e === void 0 ? 0.5 : e, c = 2 * o - 1, u = r.alpha() - n.alpha(), i = ((c * u === -1 ? c : (c + u) / (1 + c * u)) + 1) / 2, l = 1 - i;
return Re.rgb(
i * r.red() + l * n.red(),
i * r.green() + l * n.green(),
i * r.blue() + l * n.blue(),
r.alpha() * o + n.alpha() * (1 - o)
);
}
};
for (const t of Object.keys(Fe)) {
if (Qi.includes(t))
continue;
const { channels: e } = Fe[t];
Re.prototype[t] = function(...r) {
return this.model === t ? new Re(this) : r.length > 0 ? new Re(r, t) : new Re([...za(Fe[this.model][t].raw(this.color)), this.valpha], t);
}, Re[t] = function(...r) {
let n = r[0];
return typeof n == "number" && (n = ln(r, e)), new Re(n, t);
};
}
function Ma(t, e) {
return Number(t.toFixed(e));
}
function Ua(t) {
return function(e) {
return Ma(e, t);
};
}
function Ee(t, e, r) {
t = Array.isArray(t) ? t : [t];
for (const n of t)
(Qt[n] || (Qt[n] = []))[e] = r;
return t = t[0], function(n) {
let o;
return n !== void 0 ? (r && (n = r(n)), o = this[t](), o.color[e] = n, o) : (o = this[t]().color[e], r && (o = r(o)), o);
};
}
function ke(t) {
return function(e) {
return Math.max(0, Math.min(t, e));
};
}
function za(t) {
return Array.isArray(t) ? t : [t];
}
function ln(t, e) {
for (let r = 0; r < e; r++)
typeof t[r] != "number" && (t[r] = 0);
return t;
}
var ja = Re;
const Kn = /* @__PURE__ */ va(ja);
var Ha = Object.defineProperty, Wa = (t, e, r) => e in t ? Ha(t, e, { enumerable: !0, configurable: !0, writable: !0, value: r }) : t[e] = r, X = (t, e, r) => (Wa(t, typeof e != "symbol" ? e + "" : e, r), r);
class er {
constructor(e) {
X(this, "rootKey"), this.rootKey = e;
}
}
const Ga = Object.seal({});
class q extends er {
constructor(e) {
super(e), X(this, "root"), this.root = new Array();
}
// This method is called by the formatter to get the XML representation of this component.
// It is called recursively for all child components.
// It is a serializer to be used in the xml library.
// https://www.npmjs.com/package/xml
// Child components can override this method to customize the XML representation, or execute side effects.
prepForXml(e) {
var r;
e.stack.push(this);
const n = this.root.map((o) => o instanceof er ? o.prepForXml(e) : o).filter((o) => o !== void 0);
return e.stack.pop(), {
[this.rootKey]: n.length ? n.length === 1 && ((r = n[0]) != null && r._attr) ? n[0] : n : Ga
};
}
addChildElement(e) {
return this.root.push(e), this;
}
}
class Je extends q {
prepForXml(e) {
const r = super.prepForXml(e);
if (r && (typeof r[this.rootKey] != "object" || Object.keys(r[this.rootKey]).length))
return r;
}
}
class le extends er {
constructor(e) {
super("_attr"), X(this, "xmlKeys"), this.root = e;
}
prepForXml(e) {
const r = {};
return Object.keys(this.root).forEach((n) => {
const o = this.root[n];
if (o !== void 0) {
const c = this.xmlKeys && this.xmlKeys[n] || n;
r[c] = o;
}
}), { _attr: r };
}
}
class $e extends er {
constructor(e) {
super("_attr"), this.root = e;
}
prepForXml(e) {
return { _attr: Object.values(this.root).filter(({ value: n }) => n !== void 0).reduce((n, { key: o, value: c }) => ({ ...n, [o]: c }), {}) };
}
}
class Ae extends le {
constructor() {
super(...arguments), X(this, "xmlKeys", {
val: "w:val",
color: "w:color",
fill: "w:fill",
space: "w:space",
sz: "w:sz",
type: "w:type",
rsidR: "w:rsidR",
rsidRPr: "w:rsidRPr",
rsidSect: "w:rsidSect",
w: "w:w",
h: "w:h",
top: "w:top",
right: "w:right",
bottom: "w:bottom",
left: "w:left",
header: "w:header",
footer: "w:footer",
gutter: "w:gutter",
linePitch: "w:linePitch",
pos: "w:pos"
});
}
}
var je = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
function _n(t) {
return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, "default") ? t.default : t;
}
var es = {}, xn = { exports: {} }, gt = typeof Reflect == "object" ? Reflect : null, qn = gt && typeof gt.apply == "function" ? gt.apply : function(e, r, n) {
return Function.prototype.apply.call(e, r, n);
}, Xt;
gt && typeof gt.ownKeys == "function" ? Xt = gt.ownKeys : Object.getOwnPropertySymbols ? Xt = function(e) {
return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e));
} : Xt = function(e) {
return Object.getOwnPropertyNames(e);
};
function Ka(t) {
console && console.warn && console.warn(t);
}
var ts = Number.isNaN || function(e) {
return e !== e;
};
function _e() {
_e.init.call(this);
}
xn.exports = _e;
xn.exports.once = Xa;
_e.EventEmitter = _e;
_e.prototype._events = void 0;
_e.prototype._eventsCount = 0;
_e.prototype._maxListeners = void 0;
var Vn = 10;
function ir(t) {
if (typeof t != "function")
throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof t);
}
Object.defineProperty(_e, "defaultMaxListeners", {
enumerable: !0,
get: function() {
return Vn;
},
set: function(t) {
if (typeof t != "number" || t < 0 || ts(t))
throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + t + ".");
Vn = t;
}
});
_e.init = function() {
(this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) && (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;
};
_e.prototype.setMaxListeners = function(e) {
if (typeof e != "number" || e < 0 || ts(e))
throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + e + ".");
return this._maxListeners = e, this;
};
function rs(t) {
return t._maxListeners === void 0 ? _e.defaultMaxListeners : t._maxListeners;
}
_e.prototype.getMaxListeners = function() {
return rs(this);
};
_e.prototype.emit = function(e) {
for (var r = [], n = 1; n < arguments.length; n++)
r.push(arguments[n]);
var o = e === "error", c = this._events;
if (c !== void 0)
o = o && c.error === void 0;
else if (!o)
return !1;
if (o) {
var u;
if (r.length > 0 && (u = r[0]), u instanceof Error)
throw u;
var i = new Error("Unhandled error." + (u ? " (" + u.message + ")" : ""));
throw i.context = u, i;
}
var l = c[e];
if (l === void 0)
return !1;
if (typeof l == "function")
qn(l, this, r);
else
for (var b = l.length, E = os(l, b), n = 0; n < b; ++n)
qn(E[n], this, r);
return !0;
};
function ns(t, e, r, n) {
var o, c, u;
if (ir(r), c = t._events, c === void 0 ? (c = t._events = /* @__PURE__ */ Object.create(null), t._eventsCount = 0) : (c.newListener !== void 0 && (t.emit(
"newListener",
e,
r.listener ? r.listener : r
), c = t._events), u = c[e]), u === void 0)
u = c[e] = r, ++t._eventsCount;
else if (typeof u == "function" ? u = c[e] = n ? [r, u] : [u, r] : n ? u.unshift(r) : u.push(r), o = rs(t), o > 0 && u.length > o && !u.warned) {
u.warned = !0;
var i = new Error("Possible EventEmitter memory leak detected. " + u.length + " " + String(e) + " listeners added. Use emitter.setMaxListeners() to increase limit");
i.name = "MaxListenersExceededWarning", i.emitter = t, i.type = e, i.count = u.length, Ka(i);
}
return t;
}
_e.prototype.addListener = function(e, r) {
return ns(this, e, r, !1);
};
_e.prototype.on = _e.prototype.addListener;
_e.prototype.prependListener = function(e, r) {
return ns(this, e, r, !0);
};
function qa() {
if (!this.fired)
return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);
}
function is(t, e, r) {
var n = { fired: !1, wrapFn: void 0, target: t, type: e, listener: r }, o = qa.bind(n);
return o.listener = r, n.wrapFn = o, o;
}
_e.prototype.once = function(e, r) {
return ir(r), this.on(e, is(this, e, r)), this;
};
_e.prototype.prependOnceListener = function(e, r) {
return ir(r), this.prependListener(e, is(this, e, r)), this;
};
_e.prototype.removeListener = function(e, r) {
var n, o, c, u, i;
if (ir(r), o = this._events, o === void 0)
return this;
if (n = o[e], n === void 0)
return this;
if (n === r || n.listener === r)
--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete o[e], o.removeListener && this.emit("removeListener", e, n.listener || r));
else if (typeof n != "function") {
for (c = -1, u = n.length - 1; u >= 0; u--)
if (n[u] === r || n[u].listener === r) {
i = n[u].listener, c = u;
break;
}
if (c < 0)
return this;
c === 0 ? n.shift() : Va(n, c), n.length === 1 && (o[e] = n[0]), o.removeListener !== void 0 && this.emit("removeListener", e, i || r);
}
return this;
};
_e.prototype.off = _e.prototype.removeListener;
_e.prototype.removeAllListeners = function(e) {
var r, n, o;
if (n = this._events, n === void 0)
return this;
if (n.removeListener === void 0)
return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : n[e] !== void 0 && (--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete n[e]), this;
if (arguments.length === 0) {
var c = Object.keys(n), u;
for (o = 0; o < c.length; ++o)
u = c[o], u !== "removeListener" && this.removeAllListeners(u);
return this.removeAllListeners("removeListener"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;
}
if (r = n[e], typeof r == "function")
this.removeListener(e, r);
else if (r !== void 0)
for (o = r.length - 1; o >= 0; o--)
this.removeListener(e, r[o]);
return this;
};
function ss(t, e, r) {
var n = t._events;
if (n === void 0)
return [];
var o = n[e];
return o === void 0 ? [] : typeof o == "function" ? r ? [o.listener || o] : [o] : r ? $a(o) : os(o, o.length);
}
_e.prototype.listeners = function(e) {
return ss(this, e, !0);
};
_e.prototype.rawListeners = function(e) {
return ss(this, e, !1);
};
_e.listenerCount = function(t, e) {
return typeof t.listenerCount == "function" ? t.listenerCount(e) : as.call(t, e);
};
_e.prototype.listenerCount = as;
function as(t) {
var e = this._events;
if (e !== void 0) {
var r = e[t];
if (typeof r == "function")
return 1;
if (r !== void 0)
return r.length;
}
return 0;
}
_e.prototype.eventNames = function() {
return this._eventsCount > 0 ? Xt(this._events) : [];
};
function os(t, e) {
for (var r = new Array(e), n = 0; n < e; ++n)
r[n] = t[n];
return r;
}
function Va(t, e) {
for (; e + 1 < t.length; e++)
t[e] = t[e + 1];
t.pop();
}
function $a(t) {
for (var e = new Array(t.length), r = 0; r < e.length; ++r)
e[r] = t[r].listener || t[r];
return e;
}
function Xa(t, e) {
return new Promise(function(r, n) {
function o(u) {
t.removeListener(e, c), n(u);
}
function c() {
typeof t.removeListener == "function" && t.removeListener("error", o), r([].slice.call(arguments));
}
us(t, e, c, { once: !0 }), e !== "error" && Za(t, o, { once: !0 });
});
}
function Za(t, e, r) {
typeof t.on == "function" && us(t, "error", e, r);
}
function us(t, e, r, n) {
if (typeof t.on == "function")
n.once ? t.once(e, r) : t.on(e, r);
else if (typeof t.addEventListener == "function")
t.addEventListener(e, function o(c) {
n.once && t.removeEventListener(e, o), r(c);
});
else
throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof t);
}
var En = xn.exports, hn = { exports: {} };
typeof Object.create == "function" ? hn.exports = function(e, r) {
r && (e.super_ = r, e.prototype = Object.create(r.prototype, {
constructor: {
value: e,
enumerable: !1,
writable: !0,
configurable: !0
}
}));
} : hn.exports = function(e, r) {
if (r) {
e.super_ = r;
var n = function() {
};
n.prototype = r.prototype, e.prototype = new n(), e.prototype.constructor = e;
}
};
var ht = hn.exports, mr = {}, Ct = {}, $n;
function Ya() {
if ($n)
return Ct;
$n = 1, Ct.byteLength = i, Ct.toByteArray = b, Ct.fromByteArray = A;
for (var t = [], e = [], r = typeof Uint8Array < "u" ? Uint8Array : Array, n = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", o = 0, c = n.length; o < c; ++o)
t[o] = n[o], e[n.charCodeAt(o)] = o;
e["-".charCodeAt(0)] = 62, e["_".charCodeAt(0)] = 63;
function u(m) {
var v = m.length;
if (v % 4 > 0)
throw new Error("Invalid string. Length must be a multiple of 4");
var y = m.indexOf("=");
y === -1 && (y = v);
var S = y === v ? 0 : 4 - y % 4;
return [y, S];
}
function i(m) {
var v = u(m), y = v[0], S = v[1];
return (y + S) * 3 / 4 - S;
}
function l(m, v, y) {
return (v + y) * 3 / 4 - y;
}
function b(m) {
var v, y = u(m), S = y[0], g = y[1], x = new r(l(m, S, g)), R = 0, D = g > 0 ? S - 4 : S, L;
for (L = 0; L < D; L += 4)
v = e[m.charCodeAt(L)] << 18 | e[m.charCodeAt(L + 1)] << 12 | e[m.charCodeAt(L + 2)] << 6 | e[m.charCodeAt(L + 3)], x[R++] = v >> 16 & 255, x[R++] = v >> 8 & 255, x[R++] = v & 255;
return g === 2 && (v = e[m.charCodeAt(L)] << 2 | e[m.charCodeAt(L + 1)] >> 4, x[R++] = v & 255), g === 1 && (v = e[m.charCodeAt(L)] << 10 | e[m.charCodeAt(L + 1)] << 4 | e[m.charCodeAt(L + 2)] >> 2, x[R++] = v >> 8 & 255, x[R++] = v & 255), x;
}
function E(m) {
return t[m >> 18 & 63] + t[m >> 12 & 63] + t[m >> 6 & 63] + t[m & 63];
}
function T(m, v, y) {
for (var S, g = [], x = v; x < y; x += 3)
S = (m[x] << 16 & 16711680) + (m[x + 1] << 8 & 65280) + (m[x + 2] & 255), g.push(E(S));
return g.join("");
}
function A(m) {
for (var v, y = m.length, S = y % 3, g = [], x = 16383, R = 0, D = y - S; R < D; R += x)
g.push(T(m, R, R + x > D ? D : R + x));
return S === 1 ? (v = m[y - 1], g.push(
t[v >> 2] + t[v << 4 & 63] + "=="
)) : S === 2 && (v = (m[y - 2] << 8) + m[y - 1], g.push(
t[v >> 10] + t[v >> 4 & 63] + t[v << 2 & 63] + "="
)), g.join("");
}
return Ct;
}
var Kt = {};
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
var Xn;
function Ja() {
return Xn || (Xn = 1, Kt.read = function(t, e, r, n, o) {
var c, u, i = o * 8 - n - 1, l = (1 << i) - 1, b = l >> 1, E = -7, T = r ? o - 1 : 0, A = r ? -1 : 1, m = t[e + T];
for (T += A, c = m & (1 << -E) - 1, m >>= -E, E += i; E > 0; c = c * 256 + t[e + T], T += A, E -= 8)
;
for (u = c & (1 << -E) - 1, c >>= -E, E += n; E > 0; u = u * 256 + t[e + T], T += A, E -= 8)
;
if (c === 0)
c = 1 - b;
else {
if (c === l)
return u ? NaN : (m ? -1 : 1) * (1 / 0);
u = u + Math.pow(2, n), c = c - b;
}
return (m ? -1 : 1) * u * Math.pow(2, c - n);
}, Kt.write = function(t, e, r, n, o, c) {
var u, i, l, b = c * 8 - o - 1, E = (1 << b) - 1, T = E >> 1, A = o === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, m = n ? 0 : c - 1, v = n ? 1 : -1, y = e < 0 || e === 0 && 1 / e < 0 ? 1 : 0;
for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (i = isNaN(e) ? 1 : 0, u = E) : (u = Math.floor(Math.log(e) / Math.LN2), e * (l = Math.pow(2, -u)) < 1 && (u--, l *= 2), u + T >= 1 ? e += A / l : e += A * Math.pow(2, 1 - T), e * l >= 2 && (u++, l /= 2), u + T >= E ? (i = 0, u = E) : u + T >= 1 ? (i = (e * l - 1) * Math.pow(2, o), u = u + T) : (i = e * Math.pow(2, T - 1) * Math.pow(2, o), u = 0)); o >= 8; t[r + m] = i & 255, m += v, i /= 256, o -= 8)
;
for (u = u << o | i, b += o; b > 0; t[r + m] = u & 255, m += v, u /= 256, b -= 8)
;
t[r + m - v] |= y * 128;
}), Kt;
}
/*!
* The buffer module from node.js, for the browser.
*
* @author Feross Aboukhadijeh <https://feross.org>
* @license MIT
*/
var Zn;
function Lt() {
return Zn || (Zn = 1, function(t) {
var e = Ya(), r = Ja(), n = typeof Symbol == "function" && typeof Symbol.for == "function" ? Symbol.for("nodejs.util.inspect.custom") : null;
t.Buffer = i, t.SlowBuffer = x, t.INSPECT_MAX_BYTES = 50;
var o = 2147483647;
t.kMaxLength = o, i.TYPED_ARRAY_SUPPORT = c(), !i.TYPED_ARRAY_SUPPORT && typeof console < "u" && typeof console.error == "function" && console.error(
"This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."
);
function c() {
try {
var w = new Uint8Array(1), s = { foo: function() {
return 42;
} };
return Object.setPrototypeOf(s, Uint8Array.prototype), Object.setPrototypeOf(w, s), w.foo() === 42;
} catch {
return !1;
}
}
Object.defineProperty(i.prototype, "parent", {
enumerable: !0,
get: function() {
if (i.isBuffer(this))
return this.buffer;
}
}), Object.defineProperty(i.prototype, "offset", {
enumerable: !0,
get: function() {
if (i.isBuffer(this))
return this.byteOffset;
}
});
function u(w) {
if (w > o)
throw new RangeError('The value "' + w + '" is invalid for option "size"');
var s = new Uint8Array(w);
return Object.setPrototypeOf(s, i.prototype), s;
}
function i(w, s, a) {
if (typeof w == "number") {
if (typeof s == "string")
throw new TypeError(
'The "string" argument must be of type string. Received type number'
);
return T(w);
}
return l(w, s, a);
}
i.poolSize = 8192;
function l(w, s, a) {
if (typeof w == "string")
return A(w, s);
if (ArrayBuffer.isView(w))
return v(w);
if (w == null)
throw new TypeError(
"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof w
);
if (Z(w, ArrayBuffer) || w && Z(w.buffer, ArrayBuffer) || typeof SharedArrayBuffer < "u" && (Z(w, SharedArrayBuffer) || w && Z(w.buffer, SharedArrayBuffer)))
return y(w, s, a);
if (typeof w == "number")
throw new TypeError(
'The "value" argument must not be of type number. Received type number'
);
var h = w.valueOf && w.valueOf();
if (h != null && h !== w)
return i.from(h, s, a);
var O = S(w);
if (O)
return O;
if (typeof Symbol < "u" && Symbol.toPrimitive != null && typeof w[Symbol.toPrimitive] == "function")
return i.from(
w[Symbol.toPrimitive]("string"),
s,
a
);
throw new TypeError(
"The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof w
);
}
i.from = function(w, s, a) {
return l(w, s, a);
}, Object.setPrototypeOf(i.prototype, Uint8Array.prototype), Object.setPrototypeOf(i, Uint8Array);
function b(w) {
if (typeof w != "number")