@divkitframework/divkit
Version:
DivKit for the web
1,262 lines • 737 kB
JavaScript
var Rd = Object.defineProperty;
var Bd = (e, r, t) => r in e ? Rd(e, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[r] = t;
var Er = (e, r, t) => Bd(e, typeof r != "symbol" ? r + "" : r, t);
/*!
DivKit v32.51.0
https://github.com/divkit/divkit
@licence Apache-2.0
*/
function Pl(e) {
return BigInt(e);
}
const To = Pl("9223372036854775807"), Mo = Pl("-9223372036854775808");
function ln(e) {
const r = Pl(e);
if (r > To || r < Mo)
throw new Error("Integer overflow.");
return r;
}
const Zi = ln(0);
function If(e) {
let r = e;
return r < 0 && (r = -r), r;
}
function Df(e) {
let r = 0;
return e > 0 ? r = 1 : e < 0 && (r = -1), ln(r);
}
function Hd(e, r) {
return r && r[3] && r[7] ? { type: "ConditionalExpression", test: e, consequent: r[3], alternate: r[7] } : e;
}
function Wd(e, r) {
return r && r[3] ? { type: "TryExpression", test: e, alternate: r[3] } : e;
}
function Ro(e, r) {
return r.length ? r.reduce((t, n) => ({
type: "BinaryExpression",
operator: n[1],
left: t,
right: n[3]
}), e) : e;
}
function sa(e, r) {
return r.length ? r.reduce((t, n) => ({
type: "LogicalExpression",
operator: n[1],
left: t,
right: n[3]
}), e) : e;
}
function Ud(e, r) {
return r.length ? r.reduce((t, n) => {
if (!n[5])
throw new Error("Method expected after .");
return {
type: "MethodExpression",
object: t,
method: n[3],
arguments: n[5][2]
};
}, e) : e;
}
function Gd(e) {
return e === "true" || e === "false" ? { type: "BooleanLiteral", value: e === "true" } : { type: "Variable", id: { type: "Identifier", name: e } };
}
function la(e) {
if (e.every((t) => typeof t == "string"))
return { type: "StringLiteral", value: e.join("") };
let r = e.reduce((t, n) => (typeof n == "string" && typeof t[t.length - 1] == "string" ? t[t.length - 1] += n : t.push(n), t), []).reduce((t, n) => (typeof n == "string" ? t.quasis.push({ type: "StringLiteral", value: n }) : (t.quasis.length === t.expressions.length && t.quasis.push({ type: "StringLiteral", value: "" }), t.expressions.push(n)), t), {
type: "TemplateLiteral",
quasis: [],
expressions: []
});
return r.quasis.length === r.expressions.length && r.quasis.push({ type: "StringLiteral", value: "" }), r;
}
function Yd(e) {
try {
return ln(e);
} catch {
throw new Error(`Value ${e} can't be converted to Integer type.`);
}
}
function aa(e) {
if (e === "'" || e === "\\")
return e;
throw new Error("Incorrect string escape");
}
function qd(e, r) {
function t() {
this.constructor = e;
}
t.prototype = r.prototype, e.prototype = new t();
}
function ho(e, r, t, n) {
var i = Error.call(this, e);
return Object.setPrototypeOf && Object.setPrototypeOf(i, ho.prototype), i.expected = r, i.found = t, i.location = n, i.name = "SyntaxError", i;
}
qd(ho, Error);
function Ks(e, r, t) {
return t = t || " ", e.length > r ? e : (r -= e.length, t += t.repeat(r), e + t.slice(0, r));
}
ho.prototype.format = function(e) {
var r = "Error: " + this.message;
if (this.location) {
var t = null, n;
for (n = 0; n < e.length; n++)
if (e[n].source === this.location.source) {
t = e[n].text.split(/\r\n|\n|\r/g);
break;
}
var i = this.location.start, o = this.location.source && typeof this.location.source.offset == "function" ? this.location.source.offset(i) : i, s = this.location.source + ":" + o.line + ":" + o.column;
if (t) {
var a = this.location.end, l = Ks("", o.line.toString().length, " "), u = t[i.line - 1], c = i.line === a.line ? a.column : u.length + 1, d = c - i.column || 1;
r += `
--> ` + s + `
` + l + ` |
` + o.line + " | " + u + `
` + l + " | " + Ks("", i.column - 1, " ") + Ks("", d, "^");
} else
r += `
at ` + s;
}
return r;
};
ho.buildMessage = function(e, r) {
var t = {
literal: function(u) {
return '"' + i(u.text) + '"';
},
class: function(u) {
var c = u.parts.map(function(d) {
return Array.isArray(d) ? o(d[0]) + "-" + o(d[1]) : o(d);
});
return "[" + (u.inverted ? "^" : "") + c.join("") + "]";
},
any: function() {
return "any character";
},
end: function() {
return "end of input";
},
other: function(u) {
return u.description;
}
};
function n(u) {
return u.charCodeAt(0).toString(16).toUpperCase();
}
function i(u) {
return u.replace(/\\/g, "\\\\").replace(/"/g, '\\"').replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(c) {
return "\\x0" + n(c);
}).replace(/[\x10-\x1F\x7F-\x9F]/g, function(c) {
return "\\x" + n(c);
});
}
function o(u) {
return u.replace(/\\/g, "\\\\").replace(/\]/g, "\\]").replace(/\^/g, "\\^").replace(/-/g, "\\-").replace(/\0/g, "\\0").replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/[\x00-\x0F]/g, function(c) {
return "\\x0" + n(c);
}).replace(/[\x10-\x1F\x7F-\x9F]/g, function(c) {
return "\\x" + n(c);
});
}
function s(u) {
return t[u.type](u);
}
function a(u) {
var c = u.map(s), d, _;
if (c.sort(), c.length > 0) {
for (d = 1, _ = 1; d < c.length; d++)
c[d - 1] !== c[d] && (c[_] = c[d], _++);
c.length = _;
}
switch (c.length) {
case 1:
return c[0];
case 2:
return c[0] + " or " + c[1];
default:
return c.slice(0, -1).join(", ") + ", or " + c[c.length - 1];
}
}
function l(u) {
return u ? '"' + i(u) + '"' : "end of input";
}
return "Expected " + a(e) + " but " + l(r) + " found.";
};
function Vs(e, r) {
r = r !== void 0 ? r : {};
var t = {}, n = r.grammarSource, i = { start: hn, JsonStringContents: Cn }, o = hn, s = "@{", a = "}", l = "@{}", u = "\\", c = "?", d = ":", _ = "||", g = "&&", m = "==", h = "!=", w = ">=", k = ">", J = "<=", X = "<", R = "!:", $ = "+", ge = "-", Y = "/", Q = "*", se = "%", T = "!", V = ".", P = "(", O = ")", ke = ",", tt = "'", Ye = "e", Pe = "E", le = /^[^}]/, qe = /^[^'}]/, ze = /^[0-9]/, wt = /^[a-zA-Z_]/, Qe = /^[a-zA-Z_0-9]/, ot = /^[ \t\r\n]/, ye = je("@{", !1), Pt = je("}", !1), _e = je("@{}", !1), Ie = je("\\", !1), pe = St(), re = Ke(["}"], !0, !1), Je = je("?", !1), $e = je(":", !1), Be = je("||", !1), Tt = je("&&", !1), nt = je("==", !1), K = je("!=", !1), st = je(">=", !1), Fe = je(">", !1), lt = je("<=", !1), ut = je("<", !1), Zt = je("!:", !1), gt = je("+", !1), he = je("-", !1), Ht = je("/", !1), Mt = je("*", !1), Gt = je("%", !1), G = je("!", !1), ht = je(".", !1), Ve = je("(", !1), ue = je(")", !1), kt = je(",", !1), Lt = Qr("string"), De = je("'", !1), Ne = Ke(["'", "}"], !0, !1), I = Qr("integer"), Ue = Ke([["0", "9"]], !1, !1), qt = Qr("number"), ft = je("e", !1), Et = je("E", !1), lr = Ke([["a", "z"], ["A", "Z"], "_"], !1, !1), we = Ke([["a", "z"], ["A", "Z"], "_", ["0", "9"]], !1, !1), pt = Qr("whitespace"), We = Ke([" ", " ", "\r", `
`], !1, !1), Ae = function(p) {
return p;
}, q = function(p) {
return la(p);
}, vt = function(p) {
return p;
}, Wt = function() {
return "";
}, Oe = function() {
return Le();
}, ur = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, or = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, Bt = function(p) {
return p;
}, de = function(p) {
return aa(p);
}, ce = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, at = function(p, A) {
return Hd(p, A);
}, nr = function(p, A) {
return sa(p, A);
}, cr = function(p, A) {
return sa(p, A);
}, Jt = function(p, A) {
return Ro(p, A);
}, jr = function(p, A) {
return Ro(p, A);
}, wr = function(p, A) {
return Wd(p, A);
}, At = function(p, A) {
return Ro(p, A);
}, Dt = function(p, A) {
return Ro(p, A);
}, Kt = function(p) {
return p;
}, sr = function(p) {
return p;
}, bt = function(p, A) {
return { type: "UnaryExpression", operator: p, argument: A };
}, jt = function() {
throw new Error("Incorrect unary operator");
}, vr = function(p, A) {
return Ud(p, A);
}, Ge = function(p, A) {
return { type: "CallExpression", callee: p, arguments: A };
}, ar = function(p, A) {
return [p, ...A];
}, Ir = function(p) {
return p;
}, zr = function(p) {
return p;
}, me = function(p) {
return la(p);
}, dt = function(p) {
return p;
}, Cr = function() {
return "";
}, kr = function() {
return Le();
}, fr = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, Sr = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, Ee = function(p) {
return p;
}, Ze = function(p) {
return aa(p);
}, Ct = function() {
throw new Error("Error tokenizing '" + e + "'.");
}, ee = function() {
return { type: "IntegerLiteral", value: Yd(Le()) };
}, xe = function() {
return { type: "NumberLiteral", value: parseFloat(Le()) };
}, mr = function() {
return { type: "NumberLiteral", value: parseFloat(Le()) };
}, j = function() {
const p = Le();
if (/\.\./.test(p) || /\.$/.test(p))
throw new Error("Unexpected token: .");
return Gd(p);
}, fe = function() {
return { type: "Identifier", name: Le() };
}, f = 0, M = 0, rt = [{ line: 1, column: 1 }], et = 0, ir = [], z = 0, it;
if ("startRule" in r) {
if (!(r.startRule in i))
throw new Error(`Can't start parsing from rule "` + r.startRule + '".');
o = i[r.startRule];
}
function Le() {
return e.substring(M, f);
}
function je(p, A) {
return { type: "literal", text: p, ignoreCase: A };
}
function Ke(p, A, N) {
return { type: "class", parts: p, inverted: A, ignoreCase: N };
}
function St() {
return { type: "any" };
}
function br() {
return { type: "end" };
}
function Qr(p) {
return { type: "other", description: p };
}
function dn(p) {
var A = rt[p], N;
if (A)
return A;
for (N = p - 1; !rt[N]; )
N--;
for (A = rt[N], A = {
line: A.line,
column: A.column
}; N < p; )
e.charCodeAt(N) === 10 ? (A.line++, A.column = 1) : A.column++, N++;
return rt[p] = A, A;
}
function Pr(p, A, N) {
var C = dn(p), oe = dn(A), te = {
source: n,
start: {
offset: p,
line: C.line,
column: C.column
},
end: {
offset: A,
line: oe.line,
column: oe.column
}
};
return te;
}
function ie(p) {
f < et || (f > et && (et = f, ir = []), ir.push(p));
}
function bn(p, A, N) {
return new ho(
ho.buildMessage(p, A),
p,
A,
N
);
}
function hn() {
var p, A;
return p = f, _t(), A = Ur(), A !== t ? (_t(), M = p, p = Ae(A)) : (f = p, p = t), p;
}
function Cn() {
var p, A, N;
for (p = f, A = [], N = On(); N !== t; )
A.push(N), N = On();
return M = p, A = q(A), p = A, p;
}
function On() {
var p, A, N, C, oe;
if (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t ? (N = _t(), C = Ur(), C !== t ? (_t(), e.charCodeAt(f) === 125 ? (oe = a, f++) : (oe = t, z === 0 && ie(Pt)), oe !== t ? (M = p, p = vt(C)) : (f = p, p = t)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.substr(f, 3) === l ? (A = l, f += 3) : (A = t, z === 0 && ie(_e)), A !== t && (M = p, A = Wt()), p = A, p === t && (p = f, A = f, z++, e.charCodeAt(f) === 92 ? (N = u, f++) : (N = t, z === 0 && ie(Ie)), N === t && (e.substr(f, 2) === s ? (N = s, f += 2) : (N = t, z === 0 && ie(ye))), z--, N === t ? A = void 0 : (f = A, A = t), A !== t ? (e.length > f ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(pe)), N !== t ? (M = p, p = Oe()) : (f = p, p = t)) : (f = p, p = t), p === t))) {
if (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t) {
if (N = [], le.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(re)), C !== t)
for (; C !== t; )
N.push(C), le.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(re));
else
N = t;
N !== t ? (e.charCodeAt(f) === 125 ? (C = a, f++) : (C = t, z === 0 && ie(Pt)), C !== t ? (M = p, p = ur()) : (f = p, p = t)) : (f = p, p = t);
} else
f = p, p = t;
p === t && (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t && (M = p, A = or()), p = A, p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t ? (e.substr(f, 2) === s ? (N = s, f += 2) : (N = t, z === 0 && ie(ye)), N !== t ? (M = p, p = Bt(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t ? (e.length > f ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(pe)), N !== t ? (M = p, p = de(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t && (M = p, A = ce()), p = A))));
}
return p;
}
function Ur() {
var p, A, N, C, oe, te, mt, ct, Gr, Dr, Kr;
return p = f, A = yn(), A !== t ? (N = f, C = _t(), e.charCodeAt(f) === 63 ? (oe = c, f++) : (oe = t, z === 0 && ie(Je)), oe !== t ? (te = _t(), mt = Ur(), mt !== t ? (ct = _t(), e.charCodeAt(f) === 58 ? (Gr = d, f++) : (Gr = t, z === 0 && ie($e)), Gr !== t ? (Dr = _t(), Kr = Ur(), Kr !== t ? (C = [C, oe, te, mt, ct, Gr, Dr, Kr], N = C) : (f = N, N = t)) : (f = N, N = t)) : (f = N, N = t)) : (f = N, N = t), N === t && (N = null), M = p, p = at(A, N)) : (f = p, p = t), p;
}
function yn() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = fn(), A !== t) {
for (N = [], C = f, oe = _t(), e.substr(f, 2) === _ ? (te = _, f += 2) : (te = t, z === 0 && ie(Be)), te !== t ? (mt = _t(), ct = fn(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.substr(f, 2) === _ ? (te = _, f += 2) : (te = t, z === 0 && ie(Be)), te !== t ? (mt = _t(), ct = fn(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = nr(A, N);
} else
f = p, p = t;
return p;
}
function fn() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = y(), A !== t) {
for (N = [], C = f, oe = _t(), e.substr(f, 2) === g ? (te = g, f += 2) : (te = t, z === 0 && ie(Tt)), te !== t ? (mt = _t(), ct = y(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.substr(f, 2) === g ? (te = g, f += 2) : (te = t, z === 0 && ie(Tt)), te !== t ? (mt = _t(), ct = y(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = cr(A, N);
} else
f = p, p = t;
return p;
}
function y() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = v(), A !== t) {
for (N = [], C = f, oe = _t(), e.substr(f, 2) === m ? (te = m, f += 2) : (te = t, z === 0 && ie(nt)), te === t && (e.substr(f, 2) === h ? (te = h, f += 2) : (te = t, z === 0 && ie(K))), te !== t ? (mt = _t(), ct = v(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.substr(f, 2) === m ? (te = m, f += 2) : (te = t, z === 0 && ie(nt)), te === t && (e.substr(f, 2) === h ? (te = h, f += 2) : (te = t, z === 0 && ie(K))), te !== t ? (mt = _t(), ct = v(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = Jt(A, N);
} else
f = p, p = t;
return p;
}
function v() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = E(), A !== t) {
for (N = [], C = f, oe = _t(), e.substr(f, 2) === w ? (te = w, f += 2) : (te = t, z === 0 && ie(st)), te === t && (e.charCodeAt(f) === 62 ? (te = k, f++) : (te = t, z === 0 && ie(Fe)), te === t && (e.substr(f, 2) === J ? (te = J, f += 2) : (te = t, z === 0 && ie(lt)), te === t && (e.charCodeAt(f) === 60 ? (te = X, f++) : (te = t, z === 0 && ie(ut))))), te !== t ? (mt = _t(), ct = E(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.substr(f, 2) === w ? (te = w, f += 2) : (te = t, z === 0 && ie(st)), te === t && (e.charCodeAt(f) === 62 ? (te = k, f++) : (te = t, z === 0 && ie(Fe)), te === t && (e.substr(f, 2) === J ? (te = J, f += 2) : (te = t, z === 0 && ie(lt)), te === t && (e.charCodeAt(f) === 60 ? (te = X, f++) : (te = t, z === 0 && ie(ut))))), te !== t ? (mt = _t(), ct = E(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = jr(A, N);
} else
f = p, p = t;
return p;
}
function E() {
var p, A, N, C, oe, te, mt;
return p = f, A = B(), A !== t ? (N = f, C = _t(), e.substr(f, 2) === R ? (oe = R, f += 2) : (oe = t, z === 0 && ie(Zt)), oe !== t ? (te = _t(), mt = B(), mt !== t ? (C = [C, oe, te, mt], N = C) : (f = N, N = t)) : (f = N, N = t), N === t && (N = null), M = p, p = wr(A, N)) : (f = p, p = t), p;
}
function B() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = D(), A !== t) {
for (N = [], C = f, oe = _t(), e.charCodeAt(f) === 43 ? (te = $, f++) : (te = t, z === 0 && ie(gt)), te === t && (e.charCodeAt(f) === 45 ? (te = ge, f++) : (te = t, z === 0 && ie(he))), te !== t ? (mt = _t(), ct = D(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.charCodeAt(f) === 43 ? (te = $, f++) : (te = t, z === 0 && ie(gt)), te === t && (e.charCodeAt(f) === 45 ? (te = ge, f++) : (te = t, z === 0 && ie(he))), te !== t ? (mt = _t(), ct = D(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = At(A, N);
} else
f = p, p = t;
return p;
}
function D() {
var p, A, N, C, oe, te, mt, ct;
if (p = f, A = Ce(), A !== t) {
for (N = [], C = f, oe = _t(), e.charCodeAt(f) === 47 ? (te = Y, f++) : (te = t, z === 0 && ie(Ht)), te === t && (e.charCodeAt(f) === 42 ? (te = Q, f++) : (te = t, z === 0 && ie(Mt)), te === t && (e.charCodeAt(f) === 37 ? (te = se, f++) : (te = t, z === 0 && ie(Gt)))), te !== t ? (mt = _t(), ct = Ce(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.charCodeAt(f) === 47 ? (te = Y, f++) : (te = t, z === 0 && ie(Ht)), te === t && (e.charCodeAt(f) === 42 ? (te = Q, f++) : (te = t, z === 0 && ie(Mt)), te === t && (e.charCodeAt(f) === 37 ? (te = se, f++) : (te = t, z === 0 && ie(Gt)))), te !== t ? (mt = _t(), ct = Ce(), ct !== t ? (oe = [oe, te, mt, ct], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = Dt(A, N);
} else
f = p, p = t;
return p;
}
function Ce() {
var p, A, N, C;
return p = f, A = f, z++, e.charCodeAt(f) === 45 ? (N = ge, f++) : (N = t, z === 0 && ie(he)), z--, N !== t ? (f = A, A = void 0) : A = t, A !== t ? (N = Yt(), N !== t ? (M = p, p = Kt(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, A = f, z++, e.charCodeAt(f) === 45 ? (N = ge, f++) : (N = t, z === 0 && ie(he)), z--, N !== t ? (f = A, A = void 0) : A = t, A !== t ? (N = Vr(), N !== t ? (M = p, p = sr(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.charCodeAt(f) === 33 ? (A = T, f++) : (A = t, z === 0 && ie(G)), A === t && (e.charCodeAt(f) === 43 ? (A = $, f++) : (A = t, z === 0 && ie(gt)), A === t && (e.charCodeAt(f) === 45 ? (A = ge, f++) : (A = t, z === 0 && ie(he)))), A !== t ? (N = _t(), C = be(), C === t && (C = Rt()), C !== t ? (M = p, p = bt(A, C)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = Rt()))), p;
}
function be() {
var p, A;
return p = f, e.charCodeAt(f) === 43 ? (A = $, f++) : (A = t, z === 0 && ie(gt)), A === t && (e.charCodeAt(f) === 45 ? (A = ge, f++) : (A = t, z === 0 && ie(he))), A !== t && (M = p, A = jt()), p = A, p;
}
function Rt() {
var p, A, N, C, oe, te, mt, ct, Gr, Dr, Kr, gi, Kn, Pi, Qn;
if (p = f, A = Vt(), A !== t) {
for (N = [], C = f, oe = _t(), e.charCodeAt(f) === 46 ? (te = V, f++) : (te = t, z === 0 && ie(ht)), te !== t ? (mt = _t(), ct = Jr(), ct !== t ? (Gr = _t(), Dr = f, e.charCodeAt(f) === 40 ? (Kr = P, f++) : (Kr = t, z === 0 && ie(Ve)), Kr !== t ? (gi = _t(), Kn = Nt(), Kn !== t ? (Pi = _t(), e.charCodeAt(f) === 41 ? (Qn = O, f++) : (Qn = t, z === 0 && ie(ue)), Qn !== t ? (Kr = [Kr, gi, Kn, Pi, Qn], Dr = Kr) : (f = Dr, Dr = t)) : (f = Dr, Dr = t)) : (f = Dr, Dr = t), Dr === t && (Dr = null), oe = [oe, te, mt, ct, Gr, Dr], C = oe) : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, oe = _t(), e.charCodeAt(f) === 46 ? (te = V, f++) : (te = t, z === 0 && ie(ht)), te !== t ? (mt = _t(), ct = Jr(), ct !== t ? (Gr = _t(), Dr = f, e.charCodeAt(f) === 40 ? (Kr = P, f++) : (Kr = t, z === 0 && ie(Ve)), Kr !== t ? (gi = _t(), Kn = Nt(), Kn !== t ? (Pi = _t(), e.charCodeAt(f) === 41 ? (Qn = O, f++) : (Qn = t, z === 0 && ie(ue)), Qn !== t ? (Kr = [Kr, gi, Kn, Pi, Qn], Dr = Kr) : (f = Dr, Dr = t)) : (f = Dr, Dr = t)) : (f = Dr, Dr = t), Dr === t && (Dr = null), oe = [oe, te, mt, ct, Gr, Dr], C = oe) : (f = C, C = t)) : (f = C, C = t);
M = p, p = vr(A, N);
} else
f = p, p = t;
return p;
}
function Vt() {
var p, A, N, C, oe;
return p = f, A = Jr(), A !== t ? (_t(), e.charCodeAt(f) === 40 ? (N = P, f++) : (N = t, z === 0 && ie(Ve)), N !== t ? (_t(), C = Nt(), C !== t ? (_t(), e.charCodeAt(f) === 41 ? (oe = O, f++) : (oe = t, z === 0 && ie(ue)), oe !== t ? (M = p, p = Ge(A, C)) : (f = p, p = t)) : (f = p, p = t)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = It()), p;
}
function Nt() {
var p, A, N, C, oe, te;
if (p = f, A = Ur(), A !== t) {
for (N = [], C = f, _t(), e.charCodeAt(f) === 44 ? (oe = ke, f++) : (oe = t, z === 0 && ie(kt)), oe !== t ? (_t(), te = Ur(), te !== t ? C = te : (f = C, C = t)) : (f = C, C = t); C !== t; )
N.push(C), C = f, _t(), e.charCodeAt(f) === 44 ? (oe = ke, f++) : (oe = t, z === 0 && ie(kt)), oe !== t ? (_t(), te = Ur(), te !== t ? C = te : (f = C, C = t)) : (f = C, C = t);
M = p, p = ar(A, N);
} else
f = p, p = t;
return p === t && (p = _t()), p;
}
function It() {
var p, A, N, C;
return p = Br(), p === t && (p = Ut(), p === t && (p = Yt(), p === t && (p = Vr(), p === t && (p = f, e.charCodeAt(f) === 40 ? (A = P, f++) : (A = t, z === 0 && ie(Ve)), A !== t ? (_t(), N = Ur(), N !== t ? (_t(), e.charCodeAt(f) === 41 ? (C = O, f++) : (C = t, z === 0 && ie(ue)), C !== t ? (M = p, p = Ir(N)) : (f = p, p = t)) : (f = p, p = t)) : (f = p, p = t))))), p;
}
function Ut() {
var p, A, N, C;
return z++, p = f, e.charCodeAt(f) === 39 ? (A = tt, f++) : (A = t, z === 0 && ie(De)), A !== t ? (N = Mr(), e.charCodeAt(f) === 39 ? (C = tt, f++) : (C = t, z === 0 && ie(De)), C !== t ? (M = p, p = zr(N)) : (f = p, p = t)) : (f = p, p = t), z--, p === t && (A = t, z === 0 && ie(Lt)), p;
}
function Mr() {
var p, A, N;
for (p = f, A = [], N = yt(); N !== t; )
A.push(N), N = yt();
return M = p, A = me(A), p = A, p;
}
function yt() {
var p, A, N, C, oe;
if (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t ? (N = _t(), C = Ur(), C !== t ? (_t(), e.charCodeAt(f) === 125 ? (oe = a, f++) : (oe = t, z === 0 && ie(Pt)), oe !== t ? (M = p, p = dt(C)) : (f = p, p = t)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.substr(f, 3) === l ? (A = l, f += 3) : (A = t, z === 0 && ie(_e)), A !== t && (M = p, A = Cr()), p = A, p === t && (p = f, A = f, z++, e.charCodeAt(f) === 92 ? (N = u, f++) : (N = t, z === 0 && ie(Ie)), N === t && (e.charCodeAt(f) === 39 ? (N = tt, f++) : (N = t, z === 0 && ie(De)), N === t && (e.substr(f, 2) === s ? (N = s, f += 2) : (N = t, z === 0 && ie(ye)))), z--, N === t ? A = void 0 : (f = A, A = t), A !== t ? (e.length > f ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(pe)), N !== t ? (M = p, p = kr()) : (f = p, p = t)) : (f = p, p = t), p === t))) {
if (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t) {
if (N = [], qe.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(Ne)), C !== t)
for (; C !== t; )
N.push(C), qe.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(Ne));
else
N = t;
N !== t ? (e.charCodeAt(f) === 125 ? (C = a, f++) : (C = t, z === 0 && ie(Pt)), C !== t ? (M = p, p = fr()) : (f = p, p = t)) : (f = p, p = t);
} else
f = p, p = t;
p === t && (p = f, e.substr(f, 2) === s ? (A = s, f += 2) : (A = t, z === 0 && ie(ye)), A !== t && (M = p, A = Sr()), p = A, p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t ? (e.substr(f, 2) === s ? (N = s, f += 2) : (N = t, z === 0 && ie(ye)), N !== t ? (M = p, p = Ee(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t ? (e.length > f ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(pe)), N !== t ? (M = p, p = Ze(N)) : (f = p, p = t)) : (f = p, p = t), p === t && (p = f, e.charCodeAt(f) === 92 ? (A = u, f++) : (A = t, z === 0 && ie(Ie)), A !== t && (M = p, A = Ct()), p = A))));
}
return p;
}
function Vr() {
var p, A, N;
if (z++, p = f, e.charCodeAt(f) === 45 ? f++ : z === 0 && ie(he), A = [], ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue)), N !== t)
for (; N !== t; )
A.push(N), ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue));
else
A = t;
return A !== t ? (M = p, p = ee()) : (f = p, p = t), z--, p === t && z === 0 && ie(I), p;
}
function Yt() {
var p, A, N, C, oe, te, mt, ct, Gr;
for (z++, p = f, e.charCodeAt(f) === 45 ? f++ : z === 0 && ie(he), A = [], ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue)); N !== t; )
A.push(N), ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue));
if (e.charCodeAt(f) === 46 ? (N = V, f++) : (N = t, z === 0 && ie(ht)), N !== t) {
if (C = [], ze.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(Ue)), oe !== t)
for (; oe !== t; )
C.push(oe), ze.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(Ue));
else
C = t;
if (C !== t) {
if (oe = f, e.charCodeAt(f) === 101 ? (te = Ye, f++) : (te = t, z === 0 && ie(ft)), te === t && (e.charCodeAt(f) === 69 ? (te = Pe, f++) : (te = t, z === 0 && ie(Et))), te !== t) {
if (e.charCodeAt(f) === 43 ? (mt = $, f++) : (mt = t, z === 0 && ie(gt)), mt === t && (e.charCodeAt(f) === 45 ? (mt = ge, f++) : (mt = t, z === 0 && ie(he))), mt === t && (mt = null), ct = [], ze.test(e.charAt(f)) ? (Gr = e.charAt(f), f++) : (Gr = t, z === 0 && ie(Ue)), Gr !== t)
for (; Gr !== t; )
ct.push(Gr), ze.test(e.charAt(f)) ? (Gr = e.charAt(f), f++) : (Gr = t, z === 0 && ie(Ue));
else
ct = t;
ct !== t ? (te = [te, mt, ct], oe = te) : (f = oe, oe = t);
} else
f = oe, oe = t;
oe === t && (oe = null), M = p, p = xe();
} else
f = p, p = t;
} else
f = p, p = t;
if (p === t) {
if (p = f, e.charCodeAt(f) === 45 ? f++ : z === 0 && ie(he), A = [], ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue)), N !== t)
for (; N !== t; )
A.push(N), ze.test(e.charAt(f)) ? (N = e.charAt(f), f++) : (N = t, z === 0 && ie(Ue));
else
A = t;
if (A !== t)
if (e.charCodeAt(f) === 101 ? (N = Ye, f++) : (N = t, z === 0 && ie(ft)), N === t && (e.charCodeAt(f) === 69 ? (N = Pe, f++) : (N = t, z === 0 && ie(Et))), N !== t) {
if (e.charCodeAt(f) === 43 ? (C = $, f++) : (C = t, z === 0 && ie(gt)), C === t && (e.charCodeAt(f) === 45 ? (C = ge, f++) : (C = t, z === 0 && ie(he))), C === t && (C = null), oe = [], ze.test(e.charAt(f)) ? (te = e.charAt(f), f++) : (te = t, z === 0 && ie(Ue)), te !== t)
for (; te !== t; )
oe.push(te), ze.test(e.charAt(f)) ? (te = e.charAt(f), f++) : (te = t, z === 0 && ie(Ue));
else
oe = t;
oe !== t ? (M = p, p = mr()) : (f = p, p = t);
} else
f = p, p = t;
else
f = p, p = t;
}
return z--, p === t && z === 0 && ie(qt), p;
}
function Br() {
var p, A, N, C, oe, te, mt, ct, Gr, Dr, Kr;
if (p = f, wt.test(e.charAt(f)) ? (A = e.charAt(f), f++) : (A = t, z === 0 && ie(lr)), A !== t) {
if (N = [], C = [], Qe.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(we)), oe !== t)
for (; oe !== t; )
C.push(oe), Qe.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(we));
else
C = t;
for (C === t && (C = f, e.charCodeAt(f) === 46 ? (oe = V, f++) : (oe = t, z === 0 && ie(ht)), oe !== t ? (te = f, z++, mt = f, ct = _t(), Gr = Jr(), Gr !== t ? (Dr = _t(), e.charCodeAt(f) === 40 ? (Kr = P, f++) : (Kr = t, z === 0 && ie(Ve)), Kr !== t ? (ct = [ct, Gr, Dr, Kr], mt = ct) : (f = mt, mt = t)) : (f = mt, mt = t), z--, mt === t ? te = void 0 : (f = te, te = t), te !== t ? (oe = [oe, te], C = oe) : (f = C, C = t)) : (f = C, C = t)); C !== t; ) {
if (N.push(C), C = [], Qe.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(we)), oe !== t)
for (; oe !== t; )
C.push(oe), Qe.test(e.charAt(f)) ? (oe = e.charAt(f), f++) : (oe = t, z === 0 && ie(we));
else
C = t;
C === t && (C = f, e.charCodeAt(f) === 46 ? (oe = V, f++) : (oe = t, z === 0 && ie(ht)), oe !== t ? (te = f, z++, mt = f, ct = _t(), Gr = Jr(), Gr !== t ? (Dr = _t(), e.charCodeAt(f) === 40 ? (Kr = P, f++) : (Kr = t, z === 0 && ie(Ve)), Kr !== t ? (ct = [ct, Gr, Dr, Kr], mt = ct) : (f = mt, mt = t)) : (f = mt, mt = t), z--, mt === t ? te = void 0 : (f = te, te = t), te !== t ? (oe = [oe, te], C = oe) : (f = C, C = t)) : (f = C, C = t));
}
M = p, p = j();
} else
f = p, p = t;
return p;
}
function Jr() {
var p, A, N, C;
if (p = f, wt.test(e.charAt(f)) ? (A = e.charAt(f), f++) : (A = t, z === 0 && ie(lr)), A !== t) {
for (N = [], Qe.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(we)); C !== t; )
N.push(C), Qe.test(e.charAt(f)) ? (C = e.charAt(f), f++) : (C = t, z === 0 && ie(we));
M = p, p = fe();
} else
f = p, p = t;
return p;
}
function _t() {
var p, A;
for (z++, p = [], ot.test(e.charAt(f)) ? (A = e.charAt(f), f++) : (A = t, z === 0 && ie(We)); A !== t; )
p.push(A), ot.test(e.charAt(f)) ? (A = e.charAt(f), f++) : (A = t, z === 0 && ie(We));
return z--, A = t, z === 0 && ie(pt), p;
}
if (it = o(), it !== t && f === e.length)
return it;
throw it !== t && f < e.length && ie(br()), bn(
ir,
et < e.length ? e.charAt(et) : null,
et < e.length ? Pr(et, et + 1) : Pr(et, et)
);
}
const Jd = 2147483647, Kd = -2147483648, Xd = Number.MAX_VALUE, Zd = Number.MIN_VALUE, ae = "string", ve = "integer", Xe = "number", Nr = "boolean", xr = "color", Nn = "url", Fr = "datetime", Qt = "dict", xt = "array", Qd = "function";
function xn(e, r) {
var t;
switch ((t = r[e.type]) == null || t.call(r, e), e.type) {
case "TemplateLiteral":
e.expressions.forEach((n) => {
xn(n, r);
});
break;
case "BinaryExpression":
case "LogicalExpression":
xn(e.left, r), xn(e.right, r);
break;
case "UnaryExpression":
xn(e.argument, r);
break;
case "ConditionalExpression":
xn(e.test, r), xn(e.consequent, r), xn(e.alternate, r);
break;
case "TryExpression":
xn(e.test, r), xn(e.alternate, r);
break;
case "CallExpression":
e.arguments.forEach((n) => {
xn(n, r);
});
break;
case "MethodExpression":
xn(e.object, r), e.arguments.forEach((n) => {
xn(n, r);
});
break;
}
}
function Ff(e, r) {
for (; e.length < r; )
e = "0" + e;
return e;
}
function Lr(e, r = 1, t = "transparent") {
if (e = (typeof e == "string" && e || "").toLowerCase(), e.charAt(0) !== "#")
return t;
const n = ni(e);
return n ? (n.a *= r, Nl(n)) : t;
}
function xd(e, r, t = "transparent") {
if (e = (typeof e == "string" && e || "").toLowerCase(), e.charAt(0) !== "#")
return t;
const n = ni(e);
return n ? (n.a = r, Nl(n)) : t;
}
function Nl(e) {
return e.a === 255 ? `#${[e.r, e.g, e.b].map((r) => Ff(Math.round(r).toString(16), 2)).join("")}` : `rgba(${e.r},${e.g},${e.b},${(e.a / 255).toFixed(2)})`;
}
function ni(e) {
const r = (
// #AARRGGBB
e.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i) || // #ARGB
e.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])([0-9a-f])$/i) || // #RRGGBB
e.match(/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i) || // #RGB
e.match(/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i)
);
if (r) {
if (r.length === 5) {
const [u, c, d, _, g] = r, m = d.length === 2 ? d : d + d, h = _.length === 2 ? _ : _ + _, w = g.length === 2 ? g : g + g, k = c.length === 2 ? c : c + c;
return {
a: parseInt(k, 16),
r: parseInt(m, 16),
g: parseInt(h, 16),
b: parseInt(w, 16)
};
}
const [t, n, i, o] = r, s = n.length === 2 ? n : n + n, a = i.length === 2 ? i : i + i, l = o.length === 2 ? o : o + o;
return {
a: 255,
r: parseInt(s, 16),
g: parseInt(a, 16),
b: parseInt(l, 16)
};
}
return null;
}
class zl extends Error {
}
function _s(e) {
return e.type === "url" || e.type === "color" ? {
type: "string",
value: e.value
} : e;
}
function Tf(e) {
return [
e.getFullYear(),
String(e.getMonth() + 1).padStart(2, "0"),
String(e.getDate()).padStart(2, "0")
].join("-") + " " + [
String(e.getHours()).padStart(2, "0"),
String(e.getMinutes()).padStart(2, "0"),
String(e.getSeconds()).padStart(2, "0")
].join(":");
}
function $d(e, r) {
return r && r instanceof Object && !Array.isArray(r) ? Object.keys(r).sort().reduce((t, n) => (t[n] = r[n], t), {}) : r;
}
function to(e, r) {
if (e.type === "string")
return e.value;
if (e.type === "integer")
return String(e.value);
if (e.type === "number") {
let t = String(e.value);
return t.includes(".") || (t.includes("e") ? t = t.replace("e", ".0e") : t += ".0"), t = t.replace(/e\+?/i, "E"), t;
} else {
if (e.type === "boolean")
return e.value ? "true" : "false";
if (e.type === "datetime")
return Tf(e.value);
if (e.type === "color")
return no(Is(e.value));
if (e.type === "url")
return e.value;
if ((e.type === "dict" || e.type === "array") && r)
return JSON.stringify(e.value, $d);
if (e.type === "dict")
return "<dict>";
if (e.type === "array")
return "<array>";
if (e.type === "function")
return e.value[0].name || "Function";
}
throw new Error(`Unexpected type ${e.type}`);
}
function cn(e) {
let r = to(e, !1);
return e.type === "string" && (r = "'" + r.replace(/\\/g, "\\\\").replace(/'/g, "\\'") + "'"), r;
}
function Yn(e) {
return e === "datetime" ? "DateTime" : e.charAt(0).toUpperCase() + e.substring(1);
}
function ro(e, r) {
return ln(r);
}
function Tn(e, r) {
if (r < Mo || r > To)
throw new Error("Integer overflow.");
}
function ii(e) {
if (typeof e != "string")
throw new Error("Incorrect url value.");
try {
new URL(e);
} catch {
throw new Error("Incorrect url value.");
}
}
function eh(e) {
try {
return ii(e), !0;
} catch {
return !1;
}
}
function th(e) {
const r = /* @__PURE__ */ new Set();
return xn(e, {
Variable(t) {
r.add(t.id.name);
}
}), [...r];
}
function Vn(e, r) {
throw new zl(`Failed to evaluate [${e}]. ${r}`);
}
function rh(e, r) {
throw new Error(r);
}
function Is(e) {
const r = ni(e);
if (r)
return r;
throw new Error("Unable to convert value to Color, expected format #AARRGGBB.");
}
function no(e) {
return `#${[e.a, e.r, e.g, e.b].map((r) => {
if (r < 0 || r > 255)
throw new Error("Value out of range 0..1.");
return Ff(Math.round(r).toString(16), 2);
}).join("").toUpperCase()}`;
}
function Ri(e) {
return no(Is(e));
}
function ll(e) {
return {
type: Xe,
value: Number(e.value)
};
}
const nh = {
string: "string",
number: "number",
integer: "number",
boolean: "boolean",
color: "string",
url: "string",
array: "array",
dict: "object",
datetime: "never"
};
function Ds(e, r, t) {
if (t === "function")
throw new Error("Cannot convert function");
const n = nh[t];
let i = typeof r;
if (n === "array" && !Array.isArray(r) || n !== "array" && i !== n || i === "object" && r === null)
throw i === "object" && (Array.isArray(r) ? i = "array" : r === null ? i = "null" : i = "dict"), new Error(`Incorrect value type: expected ${Yn(t)}, got ${Yn(i)}.`);
if (n === "number" && t === "integer") {
e && Tn(e, r);
try {
r = ln(r);
} catch {
throw new Error("Cannot convert value to integer.");
}
}
return n === "string" && t === "color" && (r = Ri(r)), n === "string" && t === "url" && ii(r), n === "boolean" && t === Nr && (r = r ? 1 : 0), {
type: t,
value: r
};
}
function ih(e) {
return e.type === "number" || e.type === "integer" ? Number(e.value) : e.type === "boolean" ? !!e.value : e.value;
}
function Fs(e) {
return ih(
Ds(void 0, e.value, e.type)
);
}
function gs(e) {
return e.map(cn).join(", ");
}
function Mf(e, r, t, n = !1) {
const i = r.map((a) => Yn(a.type)).join(", "), o = `${e}(${gs(r)})`, s = n ? rh : Vn;
if (t.type === "few" && r.length === 0 && t.hasOverloads)
s(o, "Function requires non empty argument list.");
else if (t.type === "many" || t.type === "few" || t.type === "mismatch")
if (t.hasOverloads)
s(o, `Function has no matching overload for given argument types: ${i}.`);
else if (t.type === "many" || t.type === "few")
t.def.args.some((a) => typeof a == "object" && a.isVararg) ? s(o, `At least ${t.def.args.length} argument(s) expected.`) : s(o, `Exactly ${t.def.args.length} argument(s) expected.`);
else {
const a = t.def.args.map((l) => Yn(typeof l == "string" ? l : l.type)).join(", ");
s(o, `Invalid argument type: expected ${a}, got ${i}.`);
}
else
s(o, `Unknown function name: ${e}.`);
}
const Io = /* @__PURE__ */ new Map(), al = /* @__PURE__ */ new Map(), Qo = /* @__PURE__ */ new Map(), ul = /* @__PURE__ */ new Map();
function S(e, r, t) {
const n = {
args: r,
cb: t
}, i = Io.get(e) || [];
Io.has(e) || Io.set(e, i), i.push(n);
const o = e + ":" + r.map((s) => typeof s == "object" ? s.type : s).join("#");
al.set(o, n);
}
function Or(e, r, t) {
const n = {
args: r,
cb: t
}, i = Qo.get(e) || [];
Qo.has(e) || Qo.set(e, i), i.push(n);
const o = e + ":" + r.map((s) => typeof s == "object" ? s.type : s).join("#");
ul.set(o, n);
}
function oh(e, r, t) {
const n = e.args.length;
let i = e.args.length, o = 0;
const s = e.args[e.args.length - 1];
if (typeof s == "object" && s.isVararg && (i = 1 / 0), r.length < n)
return {
type: "few",
expected: n,
found: r.length,
def: e,
hasOverloads: t
};
if (r.length > i)
return {
type: "many",
expected: i,
found: r.length,
def: e,
hasOverloads: t
};
for (let a = 0; a < r.length; ++a) {
let l = a >= e.args.length ? e.args[e.args.length - 1] : e.args[a];
if (typeof l != "object" && (l = {
type: l
}), l.type === Xe && r[a].type === ve) {
++o;
continue;
}
if (l.type !== r[a].type)
return {
type: "mismatch",
expected: l.type,
found: r[a].type,
def: e,
hasOverloads: t
};
}
return {
type: "match",
conversions: o
};
}
function Pf(e, r) {
if (!e)
return {
type: "missing"
};
let t = null, n = null;
for (let i = 0; i < e.length; ++i) {
const o = oh(e[i], r, e.length > 1);
if (o.type === "match") {
(!n || n.conversions > o.conversions) && (n = {
func: e[i],
conversions: o.conversions
});
continue;
}
t || (t = o);
}
if (!n) {
if (t)
return t;
throw new Error("Missing function");
}
return n;
}
function cl(e, r, t) {
return Pf(e.get(r), t);
}
function Nf(e, r) {
return r.map((t, n) => {
let i = n >= e.args.length ? e.args[e.args.length - 1] : e.args[n];
return typeof i != "object" && (i = {
type: i
}), i.type === Xe && t.type === ve ? ll(t) : t;
});
}
function ua(e, r) {
return e + ":" + r.args.map((t) => typeof t == "string" ? t : t.type).join("#");
}
function Ln(e, r) {
return {
type: ae,
value: to(r, !0)
};
}
function ca(e, r) {
const t = Number(r.value);
if (Number.isNaN(t) || !Number.isFinite(t))
throw new Error("Unable to convert value to Number.");
if (r.value === "")
throw new Error("Unable to convert value to Number.");
return {
type: Xe,
value: t
};
}
function sh(e, r) {
if (r.value > To || r.value < Mo)
throw new Error("Unable to convert value to Integer.");
const t = r.value - r.value % 1;
return {
type: ve,
value: ln(t)
};
}
function lh(e, r) {
let t;
try {
t = ln(r.value);
} catch {
throw new Error("Unable to convert value to Integer.");
}
return {
type: ve,
value: t
};
}
function ah(e, r) {
return {
type: ve,
value: ln(r.value ? 1 : 0)
};
}
function uh(e, r) {
const t = Number(r.value);
if (t !== 1 && t !== 0)
throw new Error("Unable to convert value to Boolean.");
return {
type: Nr,
value: t
};
}
function ch(e, r) {
if (r.value !== "true" && r.value !== "false")
throw new Error("Unable to convert value to Boolean.");
return {
type: Nr,
value: r.value === "true" ? 1 : 0
};
}
function fh(e, r) {
return {
type: xr,
value: Ri(r.value)
};
}
function dh(e, r) {
return ii(r.value), {
type: Nn,
value: r.value
};
}
function hh(e, r) {
try {
return {
type: ae,
value: encodeURIComponent(r.value)
};
} catch {
throw new Error("Unable to encodeUri string.");
}
}
function _h(e, r) {
try {
return {
type: ae,
value: decodeURIComponent(r.value)
};
} catch {
throw new Error("Unable to decodeUri string.");
}
}
function Ol(e, r, t, n) {
const i = e.variables.get(r.value);
let o;
return i && i.getType() === n ? (o = i.getValue(), e.storeUsedVars || (e.storeUsedVars = /* @__PURE__ */ new Set()), e.storeUsedVars.add(i)) : o = t.value, n === "color" ? o = Ri(o) : n === "url" && ii(o), {
type: n,
// value is synced with type by params
value: o
};
}
function Bo(e, r, t) {
return Ol(e, r, t, t.type);
}
function fa(e, r, t) {
return Ol(e, r, t, "color");
}
function da(e, r, t) {
return Ol(e, r, t, "url");
}
function zf(e, r) {
for (let t = 0; t < r.length; ++t) {
const n = e.charAt(t), i = r.charAt(t);
if (n !== i && i)
return i;
}
return "";
}
const ps = 1234567890;
function ha(e) {
const r = new Intl.NumberFormat(e, {
maximumFractionDigits: 0
}), t = new Intl.NumberFormat(e, {
minimumFractionDigits: 1
}), n = r.format(ps), i = t.format(ps);
return zf(n, i);
}
function gh(e) {
const r = new Intl.NumberFormat(e, {
useGrouping: !1
}), t = new Intl.NumberFormat(e, {
useGrouping: !0
}), n = r.format(ps), i = t.format(ps);
return zf(n, i);
}
function Ni(e, r, t, n) {
const i = t.value, o = i.replace(/,/g, "");
if (!/^((#+)|(#*0+))(\.0*#*)?$/.test(o) && !/^#*0*\.((0*#*)|(#+))$/.test(o) || /,.*,/.test(i) || i.indexOf(",") > i.indexOf(".") && i.indexOf(".") > -1)
throw new Error("Incorrect format pattern.");
const s = i.split("."), a = s[0], l = s[1] || "", u = i.replace(/[^#0.]/g, "").split("."), c = u[0], d = u[1] || "", _ = a.indexOf(","), g = _ > -1 ? a.length - _ - 1 : -1;
if (_ > -1 && g < 1 || l.indexOf(",") > -1)
throw new Error("Incorrect format pattern.");
try {
let m = 0;
for (; c[c.length - 1 - m] === "0"; )
++m;
let h = 0;
for (; d[h] === "0"; )
++h;
let w = h;
for (; d[w] === "#"; )
++w;
let J = new Intl.NumberFormat((n == null ? void 0 : n.value) || void 0, {
useGrouping: !1,
minimumIntegerDigits: Math.min(Math.max(m, 1), 21),
minimumFractionDigits: Math.min(Math.max(h, 0), 100),
maximumFractionDigits: Math.min(Math.max(w, h, 0), 100),
roundingMode: "halfEven"
}).format(r.value);
if (_ > -1 && g > 0) {
const X = gh(n == null ? void 0 : n.value), R = ha(n == null ? void 0 : n.value);
if (X && R) {
const $ = J.split(R), ge = $[0];
let Y = "";
for (let Q = ge.length - 1; Q >= 0; --Q)
Y = ge[Q] + Y, Q > 0 && (ge.length - Q) % g === 0 && (Y = X + Y);
J = Y + ($.length > 1 ? R + $[1] : "");
}
}
if (h === 0 && w === 0 && i.endsWith(".")) {
const X = ha(n == null ? void 0 : n.value);
X && (J += X);
}
return {
type: ae,
value: J
};
} catch (m) {
throw new Error("Incorrect or unsupported number format." + m + " " + (n == null ? void 0 : n.value) || void 0);
}
}
function ph() {
S("toString", [ve], Ln), S("toString", [Xe], Ln), S("toString", [Nr], Ln), S("toString", [xr], Ln), S("toString", [Nn], Ln), S("toString", [ae], Ln), S("toString", [xt], Ln), S("toString", [Qt], Ln), S("toNumber", [ve], ca), S("toNumber", [ae], ca), S("toInteger", [Xe], sh), S("toInteger", [ae], lh), S("toInteger", [Nr], ah), S("toBoolean", [ve], uh), S("toBoolean", [ae], ch), S("toColor", [ae], fh), S("toUrl", [ae], dh), S("encodeUri", [ae], hh), S("decodeUri", [ae], _h), S("getIntegerValue", [ae, ve], Bo), S("getNumberValue", [ae, Xe], Bo), S("getBooleanValue", [ae, Nr], Bo), S("getStringValue", [ae, ae], Bo), S("getColorValue", [ae, xr], fa), S("getColorValue", [ae, ae], fa), S("getUrlValue", [ae, Nn], da), S("getUrlValue", [ae, ae], da), Or("toString", [ve], Ln), Or("toString", [Xe], Ln), Or("toString", [Nr], Ln), Or("toString", [xr], Ln), Or("toString", [Nn], Ln), Or("toString", [ae], Ln), Or("toString", [xt], Ln), Or("toString", [Qt], Ln), S("decimalFormat", [ve, ae], Ni), S("decimalFormat", [Xe, ae], Ni), S("decimalFormat", [ve, ae, ae], Ni), S("decimalFormat", [Xe, ae, ae], Ni), Or("decimalFormat", [ve, ae], Ni), Or("decimalFormat", [Xe, ae], Ni), Or("decimalFormat", [ve, ae, ae], Ni), Or("decimalFormat", [Xe, ae, ae], Ni);
}
function Rn(e, r) {
return !e || !r ? e : e.padStart(r, "0");
}
const fl = {
G(e, r) {
let t;
return e < 4 ? t = "short" : e === 5 ? t = "narrow" : t = "long", r({
era: t
}, "era");
},
d(e, r) {
return Rn(r({
day: "numeric"
}, "day"), e > 1 ? e : 0);
},
D(e, r) {
return Rn(r({}, "dayofyear"), e > 1 ? e : 0);
},
F(e, r) {
return Rn(r({}, "dayofweekinmonth"), e > 1 ? e : 0);
},
M(e, r) {
let t;
return e === 1 ? t = "numeric" : e === 2 ? t = "2-digit" : e === 3 ? t = "short" : e === 5 ? t = "narrow" : t = "long", r({
month: t,
// to get a genitive case of month
day: "numeric"
}, "month");
},
y(e, r) {
return Rn(r({
year: e === 2 ? "2-digit" : "numeric"
}, "year"), e > 2 ? e : void 0);
},
Y(e, r) {
return Rn(r({
year: e === 2 ? "2-digit" : "numeric"
}, "weekyear"), e > 2 ? e : void 0);
},
u(e, r) {
return Rn(r({
year: "numeric"
}, "extendedyear"), e > 1 ? e : void 0);
},
E(e, r) {
let t;
return e <= 3 ? t = "short" : e === 5 ? t = "narrow" : t = "long", r({
weekday: t
}, "weekday");
},
e(e, r) {
return e > 2 ? fl.E(e, r) : Rn(r({}, "weekdaynumeric"), e > 1 ? e : void 0);
},
w(e, r) {
return Rn(r({}, "week"), e > 1 ? e : void 0);
},
W(e, r) {
return Rn(r({}, "weekofmonth"), e > 1 ? e : void 0);
},
H(e, r) {
const t = r({
hour: "numeric",
hour12: !1,
hourCycle: "h23"
}, "hour");
if (!t)
return;
const n = String(Number(t) % 24);
return Rn(n, e > 1 ? e : void 0);
},
h(e, r) {
return Rn(r({
hour: "numeric",
hour12: !0,
hourCycle: "h12"
}, "hour"), e > 1 ? e : void 0);
},
K(e, r) {
const t = r({
hour: "numeric",
hour12: !0,
hourCycle: "h11"
}, "hour");
if (!t)
return;
const n = String(Number(t) % 12);
return Rn(n, e > 1 ? e : void 0);
},
k(e, r) {
return Rn(r({
hour: "numeric",
hour12: !1,
hourCycle: "h24"
}, "hour"), e > 2 ? e : void 0);
},
a(e, r) {
return r({
hour: "numeric",
hour12: !0,
hourCycle: "h11",
dayPeriod: void 0
}, "dayPeriod");
},
m(e, r) {
return Rn(r({
minute: "numeric"
}, "minute"), e > 1 ? e : void 0);
},
s(e, r) {
return Rn(r({
second: "numeric"
}, "second"), e > 1 ? e : void 0);
},
S(e, r) {
const t = r({
fractionalSecondDigits: Math.min(3, e)
}, "fractionalSecond");
return t && e > 3 ? t.padEnd(e, "0") : t;
},
z(e, r) {
return r({
timeZoneName: e === 4 ? "long" : "short"
}, "timeZoneName");
},
Z(e, r) {
const t = -Number(r({}, "timezoneoffset")), n = Math.abs(t / 60), i = Math.floor(n) * 100 + (n - Math.floor(n)) * 60;
return (t >= 0 ? "+" : "-") + Rn(String(i), 4);
}
}, mh = /(\w)\1*|''|'(''|[^'])+