UNPKG

@divkitframework/divkit

Version:
1,262 lines 737 kB
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*|''|'(''|[^'])+