prettier-plugin-edgejs
Version:
EdgeJS Prettier Plugin
1,923 lines (1,922 loc) • 226 kB
JavaScript
import po from "uglify-js";
var wi = typeof global == "object" && global && global.Object === Object && global, mo = typeof self == "object" && self && self.Object === Object && self, Se = wi || mo || Function("return this")(), ue = Se.Symbol, Ui = Object.prototype, go = Ui.hasOwnProperty, Eo = Ui.toString, ut = ue ? ue.toStringTag : void 0;
function To(t) {
var e = go.call(t, ut), n = t[ut];
try {
t[ut] = void 0;
var r = !0;
} catch {
}
var i = Eo.call(t);
return r && (e ? t[ut] = n : delete t[ut]), i;
}
var yo = Object.prototype, Ao = yo.toString;
function _o(t) {
return Ao.call(t);
}
var vo = "[object Null]", Ro = "[object Undefined]", kr = ue ? ue.toStringTag : void 0;
function Be(t) {
return t == null ? t === void 0 ? Ro : vo : kr && kr in Object(t) ? To(t) : _o(t);
}
function Ee(t) {
return t != null && typeof t == "object";
}
var Oo = "[object Symbol]";
function en(t) {
return typeof t == "symbol" || Ee(t) && Be(t) == Oo;
}
function tn(t, e) {
for (var n = -1, r = t == null ? 0 : t.length, i = Array(r); ++n < r; )
i[n] = e(t[n], n, t);
return i;
}
var x = Array.isArray, br = ue ? ue.prototype : void 0, xr = br ? br.toString : void 0;
function Di(t) {
if (typeof t == "string")
return t;
if (x(t))
return tn(t, Di) + "";
if (en(t))
return xr ? xr.call(t) : "";
var e = t + "";
return e == "0" && 1 / t == -1 / 0 ? "-0" : e;
}
var So = /\s/;
function Io(t) {
for (var e = t.length; e-- && So.test(t.charAt(e)); )
;
return e;
}
var No = /^\s+/;
function Lo(t) {
return t && t.slice(0, Io(t) + 1).replace(No, "");
}
function le(t) {
var e = typeof t;
return t != null && (e == "object" || e == "function");
}
var Mr = NaN, Co = /^[-+]0x[0-9a-f]+$/i, ko = /^0b[01]+$/i, bo = /^0o[0-7]+$/i, xo = parseInt;
function Mo(t) {
if (typeof t == "number")
return t;
if (en(t))
return Mr;
if (le(t)) {
var e = typeof t.valueOf == "function" ? t.valueOf() : t;
t = le(e) ? e + "" : e;
}
if (typeof t != "string")
return t === 0 ? t : +t;
t = Lo(t);
var n = ko.test(t);
return n || bo.test(t) ? xo(t.slice(2), n ? 2 : 8) : Co.test(t) ? Mr : +t;
}
var Pr = 1 / 0, Po = 17976931348623157e292;
function wo(t) {
if (!t)
return t === 0 ? t : 0;
if (t = Mo(t), t === Pr || t === -Pr) {
var e = t < 0 ? -1 : 1;
return e * Po;
}
return t === t ? t : 0;
}
function nn(t) {
var e = wo(t), n = e % 1;
return e === e ? n ? e - n : e : 0;
}
function tt(t) {
return t;
}
var Uo = "[object AsyncFunction]", Do = "[object Function]", $o = "[object GeneratorFunction]", Fo = "[object Proxy]";
function Ue(t) {
if (!le(t))
return !1;
var e = Be(t);
return e == Do || e == $o || e == Uo || e == Fo;
}
var yn = Se["__core-js_shared__"], wr = function() {
var t = /[^.]+$/.exec(yn && yn.keys && yn.keys.IE_PROTO || "");
return t ? "Symbol(src)_1." + t : "";
}();
function jo(t) {
return !!wr && wr in t;
}
var Go = Function.prototype, Bo = Go.toString;
function Xe(t) {
if (t != null) {
try {
return Bo.call(t);
} catch {
}
try {
return t + "";
} catch {
}
}
return "";
}
var Vo = /[\\^$.*+?()[\]{}|]/g, Ko = /^\[object .+?Constructor\]$/, Ho = Function.prototype, Wo = Object.prototype, zo = Ho.toString, Yo = Wo.hasOwnProperty, Xo = RegExp(
"^" + zo.call(Yo).replace(Vo, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
);
function qo(t) {
if (!le(t) || jo(t))
return !1;
var e = Ue(t) ? Xo : Ko;
return e.test(Xe(t));
}
function Zo(t, e) {
return t?.[e];
}
function qe(t, e) {
var n = Zo(t, e);
return qo(n) ? n : void 0;
}
var bn = qe(Se, "WeakMap"), Ur = Object.create, Qo = /* @__PURE__ */ function() {
function t() {
}
return function(e) {
if (!le(e))
return {};
if (Ur)
return Ur(e);
t.prototype = e;
var n = new t();
return t.prototype = void 0, n;
};
}();
function Jo(t, e, n) {
switch (n.length) {
case 0:
return t.call(e);
case 1:
return t.call(e, n[0]);
case 2:
return t.call(e, n[0], n[1]);
case 3:
return t.call(e, n[0], n[1], n[2]);
}
return t.apply(e, n);
}
function V() {
}
function ea(t, e) {
var n = -1, r = t.length;
for (e || (e = Array(r)); ++n < r; )
e[n] = t[n];
return e;
}
var ta = 800, na = 16, ra = Date.now;
function ia(t) {
var e = 0, n = 0;
return function() {
var r = ra(), i = na - (r - n);
if (n = r, i > 0) {
if (++e >= ta)
return arguments[0];
} else
e = 0;
return t.apply(void 0, arguments);
};
}
function sa(t) {
return function() {
return t;
};
}
var Vt = function() {
try {
var t = qe(Object, "defineProperty");
return t({}, "", {}), t;
} catch {
}
}(), oa = Vt ? function(t, e) {
return Vt(t, "toString", {
configurable: !0,
enumerable: !1,
value: sa(e),
writable: !0
});
} : tt, aa = ia(oa);
function $i(t, e) {
for (var n = -1, r = t == null ? 0 : t.length; ++n < r && e(t[n], n, t) !== !1; )
;
return t;
}
function Fi(t, e, n, r) {
for (var i = t.length, s = n + -1; ++s < i; )
if (e(t[s], s, t))
return s;
return -1;
}
function ca(t) {
return t !== t;
}
function ua(t, e, n) {
for (var r = n - 1, i = t.length; ++r < i; )
if (t[r] === e)
return r;
return -1;
}
function Qn(t, e, n) {
return e === e ? ua(t, e, n) : Fi(t, ca, n);
}
function ji(t, e) {
var n = t == null ? 0 : t.length;
return !!n && Qn(t, e, 0) > -1;
}
var la = 9007199254740991, ha = /^(?:0|[1-9]\d*)$/;
function rn(t, e) {
var n = typeof t;
return e = e ?? la, !!e && (n == "number" || n != "symbol" && ha.test(t)) && t > -1 && t % 1 == 0 && t < e;
}
function Jn(t, e, n) {
e == "__proto__" && Vt ? Vt(t, e, {
configurable: !0,
enumerable: !0,
value: n,
writable: !0
}) : t[e] = n;
}
function _t(t, e) {
return t === e || t !== t && e !== e;
}
var fa = Object.prototype, da = fa.hasOwnProperty;
function sn(t, e, n) {
var r = t[e];
(!(da.call(t, e) && _t(r, n)) || n === void 0 && !(e in t)) && Jn(t, e, n);
}
function er(t, e, n, r) {
var i = !n;
n || (n = {});
for (var s = -1, o = e.length; ++s < o; ) {
var a = e[s], c = void 0;
c === void 0 && (c = t[a]), i ? Jn(n, a, c) : sn(n, a, c);
}
return n;
}
var Dr = Math.max;
function pa(t, e, n) {
return e = Dr(e === void 0 ? t.length - 1 : e, 0), function() {
for (var r = arguments, i = -1, s = Dr(r.length - e, 0), o = Array(s); ++i < s; )
o[i] = r[e + i];
i = -1;
for (var a = Array(e + 1); ++i < e; )
a[i] = r[i];
return a[e] = n(o), Jo(t, this, a);
};
}
function tr(t, e) {
return aa(pa(t, e, tt), t + "");
}
var ma = 9007199254740991;
function nr(t) {
return typeof t == "number" && t > -1 && t % 1 == 0 && t <= ma;
}
function Ie(t) {
return t != null && nr(t.length) && !Ue(t);
}
function Gi(t, e, n) {
if (!le(n))
return !1;
var r = typeof e;
return (r == "number" ? Ie(n) && rn(e, n.length) : r == "string" && e in n) ? _t(n[e], t) : !1;
}
function ga(t) {
return tr(function(e, n) {
var r = -1, i = n.length, s = i > 1 ? n[i - 1] : void 0, o = i > 2 ? n[2] : void 0;
for (s = t.length > 3 && typeof s == "function" ? (i--, s) : void 0, o && Gi(n[0], n[1], o) && (s = i < 3 ? void 0 : s, i = 1), e = Object(e); ++r < i; ) {
var a = n[r];
a && t(e, a, r, s);
}
return e;
});
}
var Ea = Object.prototype;
function vt(t) {
var e = t && t.constructor, n = typeof e == "function" && e.prototype || Ea;
return t === n;
}
function Ta(t, e) {
for (var n = -1, r = Array(t); ++n < t; )
r[n] = e(n);
return r;
}
var ya = "[object Arguments]";
function $r(t) {
return Ee(t) && Be(t) == ya;
}
var Bi = Object.prototype, Aa = Bi.hasOwnProperty, _a = Bi.propertyIsEnumerable, on = $r(/* @__PURE__ */ function() {
return arguments;
}()) ? $r : function(t) {
return Ee(t) && Aa.call(t, "callee") && !_a.call(t, "callee");
};
function va() {
return !1;
}
var Vi = typeof exports == "object" && exports && !exports.nodeType && exports, Fr = Vi && typeof module == "object" && module && !module.nodeType && module, Ra = Fr && Fr.exports === Vi, jr = Ra ? Se.Buffer : void 0, Oa = jr ? jr.isBuffer : void 0, Et = Oa || va, Sa = "[object Arguments]", Ia = "[object Array]", Na = "[object Boolean]", La = "[object Date]", Ca = "[object Error]", ka = "[object Function]", ba = "[object Map]", xa = "[object Number]", Ma = "[object Object]", Pa = "[object RegExp]", wa = "[object Set]", Ua = "[object String]", Da = "[object WeakMap]", $a = "[object ArrayBuffer]", Fa = "[object DataView]", ja = "[object Float32Array]", Ga = "[object Float64Array]", Ba = "[object Int8Array]", Va = "[object Int16Array]", Ka = "[object Int32Array]", Ha = "[object Uint8Array]", Wa = "[object Uint8ClampedArray]", za = "[object Uint16Array]", Ya = "[object Uint32Array]", $ = {};
$[ja] = $[Ga] = $[Ba] = $[Va] = $[Ka] = $[Ha] = $[Wa] = $[za] = $[Ya] = !0;
$[Sa] = $[Ia] = $[$a] = $[Na] = $[Fa] = $[La] = $[Ca] = $[ka] = $[ba] = $[xa] = $[Ma] = $[Pa] = $[wa] = $[Ua] = $[Da] = !1;
function Xa(t) {
return Ee(t) && nr(t.length) && !!$[Be(t)];
}
function an(t) {
return function(e) {
return t(e);
};
}
var Ki = typeof exports == "object" && exports && !exports.nodeType && exports, mt = Ki && typeof module == "object" && module && !module.nodeType && module, qa = mt && mt.exports === Ki, An = qa && wi.process, je = function() {
try {
var t = mt && mt.require && mt.require("util").types;
return t || An && An.binding && An.binding("util");
} catch {
}
}(), Gr = je && je.isTypedArray, rr = Gr ? an(Gr) : Xa, Za = Object.prototype, Qa = Za.hasOwnProperty;
function Hi(t, e) {
var n = x(t), r = !n && on(t), i = !n && !r && Et(t), s = !n && !r && !i && rr(t), o = n || r || i || s, a = o ? Ta(t.length, String) : [], c = a.length;
for (var u in t)
(e || Qa.call(t, u)) && !(o && // Safari 9 has enumerable `arguments.length` in strict mode.
(u == "length" || // Node.js 0.10 has enumerable non-index properties on buffers.
i && (u == "offset" || u == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays.
s && (u == "buffer" || u == "byteLength" || u == "byteOffset") || // Skip index properties.
rn(u, c))) && a.push(u);
return a;
}
function Wi(t, e) {
return function(n) {
return t(e(n));
};
}
var Ja = Wi(Object.keys, Object), ec = Object.prototype, tc = ec.hasOwnProperty;
function zi(t) {
if (!vt(t))
return Ja(t);
var e = [];
for (var n in Object(t))
tc.call(t, n) && n != "constructor" && e.push(n);
return e;
}
function he(t) {
return Ie(t) ? Hi(t) : zi(t);
}
var nc = Object.prototype, rc = nc.hasOwnProperty, ne = ga(function(t, e) {
if (vt(e) || Ie(e)) {
er(e, he(e), t);
return;
}
for (var n in e)
rc.call(e, n) && sn(t, n, e[n]);
});
function ic(t) {
var e = [];
if (t != null)
for (var n in Object(t))
e.push(n);
return e;
}
var sc = Object.prototype, oc = sc.hasOwnProperty;
function ac(t) {
if (!le(t))
return ic(t);
var e = vt(t), n = [];
for (var r in t)
r == "constructor" && (e || !oc.call(t, r)) || n.push(r);
return n;
}
function Yi(t) {
return Ie(t) ? Hi(t, !0) : ac(t);
}
var cc = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, uc = /^\w*$/;
function ir(t, e) {
if (x(t))
return !1;
var n = typeof t;
return n == "number" || n == "symbol" || n == "boolean" || t == null || en(t) ? !0 : uc.test(t) || !cc.test(t) || e != null && t in Object(e);
}
var Tt = qe(Object, "create");
function lc() {
this.__data__ = Tt ? Tt(null) : {}, this.size = 0;
}
function hc(t) {
var e = this.has(t) && delete this.__data__[t];
return this.size -= e ? 1 : 0, e;
}
var fc = "__lodash_hash_undefined__", dc = Object.prototype, pc = dc.hasOwnProperty;
function mc(t) {
var e = this.__data__;
if (Tt) {
var n = e[t];
return n === fc ? void 0 : n;
}
return pc.call(e, t) ? e[t] : void 0;
}
var gc = Object.prototype, Ec = gc.hasOwnProperty;
function Tc(t) {
var e = this.__data__;
return Tt ? e[t] !== void 0 : Ec.call(e, t);
}
var yc = "__lodash_hash_undefined__";
function Ac(t, e) {
var n = this.__data__;
return this.size += this.has(t) ? 0 : 1, n[t] = Tt && e === void 0 ? yc : e, this;
}
function We(t) {
var e = -1, n = t == null ? 0 : t.length;
for (this.clear(); ++e < n; ) {
var r = t[e];
this.set(r[0], r[1]);
}
}
We.prototype.clear = lc;
We.prototype.delete = hc;
We.prototype.get = mc;
We.prototype.has = Tc;
We.prototype.set = Ac;
function _c() {
this.__data__ = [], this.size = 0;
}
function cn(t, e) {
for (var n = t.length; n--; )
if (_t(t[n][0], e))
return n;
return -1;
}
var vc = Array.prototype, Rc = vc.splice;
function Oc(t) {
var e = this.__data__, n = cn(e, t);
if (n < 0)
return !1;
var r = e.length - 1;
return n == r ? e.pop() : Rc.call(e, n, 1), --this.size, !0;
}
function Sc(t) {
var e = this.__data__, n = cn(e, t);
return n < 0 ? void 0 : e[n][1];
}
function Ic(t) {
return cn(this.__data__, t) > -1;
}
function Nc(t, e) {
var n = this.__data__, r = cn(n, t);
return r < 0 ? (++this.size, n.push([t, e])) : n[r][1] = e, this;
}
function De(t) {
var e = -1, n = t == null ? 0 : t.length;
for (this.clear(); ++e < n; ) {
var r = t[e];
this.set(r[0], r[1]);
}
}
De.prototype.clear = _c;
De.prototype.delete = Oc;
De.prototype.get = Sc;
De.prototype.has = Ic;
De.prototype.set = Nc;
var yt = qe(Se, "Map");
function Lc() {
this.size = 0, this.__data__ = {
hash: new We(),
map: new (yt || De)(),
string: new We()
};
}
function Cc(t) {
var e = typeof t;
return e == "string" || e == "number" || e == "symbol" || e == "boolean" ? t !== "__proto__" : t === null;
}
function un(t, e) {
var n = t.__data__;
return Cc(e) ? n[typeof e == "string" ? "string" : "hash"] : n.map;
}
function kc(t) {
var e = un(this, t).delete(t);
return this.size -= e ? 1 : 0, e;
}
function bc(t) {
return un(this, t).get(t);
}
function xc(t) {
return un(this, t).has(t);
}
function Mc(t, e) {
var n = un(this, t), r = n.size;
return n.set(t, e), this.size += n.size == r ? 0 : 1, this;
}
function $e(t) {
var e = -1, n = t == null ? 0 : t.length;
for (this.clear(); ++e < n; ) {
var r = t[e];
this.set(r[0], r[1]);
}
}
$e.prototype.clear = Lc;
$e.prototype.delete = kc;
$e.prototype.get = bc;
$e.prototype.has = xc;
$e.prototype.set = Mc;
var Pc = "Expected a function";
function sr(t, e) {
if (typeof t != "function" || e != null && typeof e != "function")
throw new TypeError(Pc);
var n = function() {
var r = arguments, i = e ? e.apply(this, r) : r[0], s = n.cache;
if (s.has(i))
return s.get(i);
var o = t.apply(this, r);
return n.cache = s.set(i, o) || s, o;
};
return n.cache = new (sr.Cache || $e)(), n;
}
sr.Cache = $e;
var wc = 500;
function Uc(t) {
var e = sr(t, function(r) {
return n.size === wc && n.clear(), r;
}), n = e.cache;
return e;
}
var Dc = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, $c = /\\(\\)?/g, Fc = Uc(function(t) {
var e = [];
return t.charCodeAt(0) === 46 && e.push(""), t.replace(Dc, function(n, r, i, s) {
e.push(i ? s.replace($c, "$1") : r || n);
}), e;
});
function jc(t) {
return t == null ? "" : Di(t);
}
function ln(t, e) {
return x(t) ? t : ir(t, e) ? [t] : Fc(jc(t));
}
function Rt(t) {
if (typeof t == "string" || en(t))
return t;
var e = t + "";
return e == "0" && 1 / t == -1 / 0 ? "-0" : e;
}
function or(t, e) {
e = ln(e, t);
for (var n = 0, r = e.length; t != null && n < r; )
t = t[Rt(e[n++])];
return n && n == r ? t : void 0;
}
function Gc(t, e, n) {
var r = t == null ? void 0 : or(t, e);
return r === void 0 ? n : r;
}
function ar(t, e) {
for (var n = -1, r = e.length, i = t.length; ++n < r; )
t[i + n] = e[n];
return t;
}
var Br = ue ? ue.isConcatSpreadable : void 0;
function Bc(t) {
return x(t) || on(t) || !!(Br && t && t[Br]);
}
function cr(t, e, n, r, i) {
var s = -1, o = t.length;
for (n || (n = Bc), i || (i = []); ++s < o; ) {
var a = t[s];
n(a) ? ar(i, a) : r || (i[i.length] = a);
}
return i;
}
function me(t) {
var e = t == null ? 0 : t.length;
return e ? cr(t) : [];
}
var Xi = Wi(Object.getPrototypeOf, Object);
function qi(t, e, n) {
var r = -1, i = t.length;
e < 0 && (e = -e > i ? 0 : i + e), n = n > i ? i : n, n < 0 && (n += i), i = e > n ? 0 : n - e >>> 0, e >>>= 0;
for (var s = Array(i); ++r < i; )
s[r] = t[r + e];
return s;
}
function Vc(t, e, n, r) {
var i = -1, s = t == null ? 0 : t.length;
for (r && s && (n = t[++i]); ++i < s; )
n = e(n, t[i], i, t);
return n;
}
function Kc() {
this.__data__ = new De(), this.size = 0;
}
function Hc(t) {
var e = this.__data__, n = e.delete(t);
return this.size = e.size, n;
}
function Wc(t) {
return this.__data__.get(t);
}
function zc(t) {
return this.__data__.has(t);
}
var Yc = 200;
function Xc(t, e) {
var n = this.__data__;
if (n instanceof De) {
var r = n.__data__;
if (!yt || r.length < Yc - 1)
return r.push([t, e]), this.size = ++n.size, this;
n = this.__data__ = new $e(r);
}
return n.set(t, e), this.size = n.size, this;
}
function Oe(t) {
var e = this.__data__ = new De(t);
this.size = e.size;
}
Oe.prototype.clear = Kc;
Oe.prototype.delete = Hc;
Oe.prototype.get = Wc;
Oe.prototype.has = zc;
Oe.prototype.set = Xc;
function qc(t, e) {
return t && er(e, he(e), t);
}
var Zi = typeof exports == "object" && exports && !exports.nodeType && exports, Vr = Zi && typeof module == "object" && module && !module.nodeType && module, Zc = Vr && Vr.exports === Zi, Kr = Zc ? Se.Buffer : void 0, Hr = Kr ? Kr.allocUnsafe : void 0;
function Qc(t, e) {
var n = t.length, r = Hr ? Hr(n) : new t.constructor(n);
return t.copy(r), r;
}
function ur(t, e) {
for (var n = -1, r = t == null ? 0 : t.length, i = 0, s = []; ++n < r; ) {
var o = t[n];
e(o, n, t) && (s[i++] = o);
}
return s;
}
function Qi() {
return [];
}
var Jc = Object.prototype, eu = Jc.propertyIsEnumerable, Wr = Object.getOwnPropertySymbols, lr = Wr ? function(t) {
return t == null ? [] : (t = Object(t), ur(Wr(t), function(e) {
return eu.call(t, e);
}));
} : Qi;
function tu(t, e) {
return er(t, lr(t), e);
}
var nu = Object.getOwnPropertySymbols, ru = nu ? function(t) {
for (var e = []; t; )
ar(e, lr(t)), t = Xi(t);
return e;
} : Qi;
function Ji(t, e, n) {
var r = e(t);
return x(t) ? r : ar(r, n(t));
}
function xn(t) {
return Ji(t, he, lr);
}
function iu(t) {
return Ji(t, Yi, ru);
}
var Mn = qe(Se, "DataView"), Pn = qe(Se, "Promise"), et = qe(Se, "Set"), zr = "[object Map]", su = "[object Object]", Yr = "[object Promise]", Xr = "[object Set]", qr = "[object WeakMap]", Zr = "[object DataView]", ou = Xe(Mn), au = Xe(yt), cu = Xe(Pn), uu = Xe(et), lu = Xe(bn), ae = Be;
(Mn && ae(new Mn(new ArrayBuffer(1))) != Zr || yt && ae(new yt()) != zr || Pn && ae(Pn.resolve()) != Yr || et && ae(new et()) != Xr || bn && ae(new bn()) != qr) && (ae = function(t) {
var e = Be(t), n = e == su ? t.constructor : void 0, r = n ? Xe(n) : "";
if (r)
switch (r) {
case ou:
return Zr;
case au:
return zr;
case cu:
return Yr;
case uu:
return Xr;
case lu:
return qr;
}
return e;
});
var hu = Object.prototype, fu = hu.hasOwnProperty;
function du(t) {
var e = t.length, n = new t.constructor(e);
return e && typeof t[0] == "string" && fu.call(t, "index") && (n.index = t.index, n.input = t.input), n;
}
var Kt = Se.Uint8Array;
function pu(t) {
var e = new t.constructor(t.byteLength);
return new Kt(e).set(new Kt(t)), e;
}
function mu(t, e) {
var n = t.buffer;
return new t.constructor(n, t.byteOffset, t.byteLength);
}
var gu = /\w*$/;
function Eu(t) {
var e = new t.constructor(t.source, gu.exec(t));
return e.lastIndex = t.lastIndex, e;
}
var Qr = ue ? ue.prototype : void 0, Jr = Qr ? Qr.valueOf : void 0;
function Tu(t) {
return Jr ? Object(Jr.call(t)) : {};
}
function yu(t, e) {
var n = t.buffer;
return new t.constructor(n, t.byteOffset, t.length);
}
var Au = "[object Boolean]", _u = "[object Date]", vu = "[object Map]", Ru = "[object Number]", Ou = "[object RegExp]", Su = "[object Set]", Iu = "[object String]", Nu = "[object Symbol]", Lu = "[object ArrayBuffer]", Cu = "[object DataView]", ku = "[object Float32Array]", bu = "[object Float64Array]", xu = "[object Int8Array]", Mu = "[object Int16Array]", Pu = "[object Int32Array]", wu = "[object Uint8Array]", Uu = "[object Uint8ClampedArray]", Du = "[object Uint16Array]", $u = "[object Uint32Array]";
function Fu(t, e, n) {
var r = t.constructor;
switch (e) {
case Lu:
return pu(t);
case Au:
case _u:
return new r(+t);
case Cu:
return mu(t);
case ku:
case bu:
case xu:
case Mu:
case Pu:
case wu:
case Uu:
case Du:
case $u:
return yu(t);
case vu:
return new r();
case Ru:
case Iu:
return new r(t);
case Ou:
return Eu(t);
case Su:
return new r();
case Nu:
return Tu(t);
}
}
function ju(t) {
return typeof t.constructor == "function" && !vt(t) ? Qo(Xi(t)) : {};
}
var Gu = "[object Map]";
function Bu(t) {
return Ee(t) && ae(t) == Gu;
}
var ei = je && je.isMap, Vu = ei ? an(ei) : Bu, Ku = "[object Set]";
function Hu(t) {
return Ee(t) && ae(t) == Ku;
}
var ti = je && je.isSet, Wu = ti ? an(ti) : Hu, es = "[object Arguments]", zu = "[object Array]", Yu = "[object Boolean]", Xu = "[object Date]", qu = "[object Error]", ts = "[object Function]", Zu = "[object GeneratorFunction]", Qu = "[object Map]", Ju = "[object Number]", ns = "[object Object]", el = "[object RegExp]", tl = "[object Set]", nl = "[object String]", rl = "[object Symbol]", il = "[object WeakMap]", sl = "[object ArrayBuffer]", ol = "[object DataView]", al = "[object Float32Array]", cl = "[object Float64Array]", ul = "[object Int8Array]", ll = "[object Int16Array]", hl = "[object Int32Array]", fl = "[object Uint8Array]", dl = "[object Uint8ClampedArray]", pl = "[object Uint16Array]", ml = "[object Uint32Array]", U = {};
U[es] = U[zu] = U[sl] = U[ol] = U[Yu] = U[Xu] = U[al] = U[cl] = U[ul] = U[ll] = U[hl] = U[Qu] = U[Ju] = U[ns] = U[el] = U[tl] = U[nl] = U[rl] = U[fl] = U[dl] = U[pl] = U[ml] = !0;
U[qu] = U[ts] = U[il] = !1;
function Ut(t, e, n, r, i, s) {
var o;
if (o !== void 0)
return o;
if (!le(t))
return t;
var a = x(t);
if (a)
return o = du(t), ea(t, o);
var c = ae(t), u = c == ts || c == Zu;
if (Et(t))
return Qc(t);
if (c == ns || c == es || u && !i)
return o = u ? {} : ju(t), tu(t, qc(o, t));
if (!U[c])
return i ? t : {};
o = Fu(t, c), s || (s = new Oe());
var l = s.get(t);
if (l)
return l;
s.set(t, o), Wu(t) ? t.forEach(function(_) {
o.add(Ut(_, e, n, _, t, s));
}) : Vu(t) && t.forEach(function(_, E) {
o.set(E, Ut(_, e, n, E, t, s));
});
var h = xn, f = a ? void 0 : h(t);
return $i(f || t, function(_, E) {
f && (E = _, _ = t[E]), sn(o, E, Ut(_, e, n, E, t, s));
}), o;
}
var gl = 4;
function z(t) {
return Ut(t, gl);
}
function Ot(t) {
for (var e = -1, n = t == null ? 0 : t.length, r = 0, i = []; ++e < n; ) {
var s = t[e];
s && (i[r++] = s);
}
return i;
}
var El = "__lodash_hash_undefined__";
function Tl(t) {
return this.__data__.set(t, El), this;
}
function yl(t) {
return this.__data__.has(t);
}
function nt(t) {
var e = -1, n = t == null ? 0 : t.length;
for (this.__data__ = new $e(); ++e < n; )
this.add(t[e]);
}
nt.prototype.add = nt.prototype.push = Tl;
nt.prototype.has = yl;
function rs(t, e) {
for (var n = -1, r = t == null ? 0 : t.length; ++n < r; )
if (e(t[n], n, t))
return !0;
return !1;
}
function hr(t, e) {
return t.has(e);
}
var Al = 1, _l = 2;
function is(t, e, n, r, i, s) {
var o = n & Al, a = t.length, c = e.length;
if (a != c && !(o && c > a))
return !1;
var u = s.get(t), l = s.get(e);
if (u && l)
return u == e && l == t;
var h = -1, f = !0, _ = n & _l ? new nt() : void 0;
for (s.set(t, e), s.set(e, t); ++h < a; ) {
var E = t[h], y = e[h];
if (r)
var R = o ? r(y, E, h, e, t, s) : r(E, y, h, t, e, s);
if (R !== void 0) {
if (R)
continue;
f = !1;
break;
}
if (_) {
if (!rs(e, function(g, T) {
if (!hr(_, T) && (E === g || i(E, g, n, r, s)))
return _.push(T);
})) {
f = !1;
break;
}
} else if (!(E === y || i(E, y, n, r, s))) {
f = !1;
break;
}
}
return s.delete(t), s.delete(e), f;
}
function vl(t) {
var e = -1, n = Array(t.size);
return t.forEach(function(r, i) {
n[++e] = [i, r];
}), n;
}
function fr(t) {
var e = -1, n = Array(t.size);
return t.forEach(function(r) {
n[++e] = r;
}), n;
}
var Rl = 1, Ol = 2, Sl = "[object Boolean]", Il = "[object Date]", Nl = "[object Error]", Ll = "[object Map]", Cl = "[object Number]", kl = "[object RegExp]", bl = "[object Set]", xl = "[object String]", Ml = "[object Symbol]", Pl = "[object ArrayBuffer]", wl = "[object DataView]", ni = ue ? ue.prototype : void 0, _n = ni ? ni.valueOf : void 0;
function Ul(t, e, n, r, i, s, o) {
switch (n) {
case wl:
if (t.byteLength != e.byteLength || t.byteOffset != e.byteOffset)
return !1;
t = t.buffer, e = e.buffer;
case Pl:
return !(t.byteLength != e.byteLength || !s(new Kt(t), new Kt(e)));
case Sl:
case Il:
case Cl:
return _t(+t, +e);
case Nl:
return t.name == e.name && t.message == e.message;
case kl:
case xl:
return t == e + "";
case Ll:
var a = vl;
case bl:
var c = r & Rl;
if (a || (a = fr), t.size != e.size && !c)
return !1;
var u = o.get(t);
if (u)
return u == e;
r |= Ol, o.set(t, e);
var l = is(a(t), a(e), r, i, s, o);
return o.delete(t), l;
case Ml:
if (_n)
return _n.call(t) == _n.call(e);
}
return !1;
}
var Dl = 1, $l = Object.prototype, Fl = $l.hasOwnProperty;
function jl(t, e, n, r, i, s) {
var o = n & Dl, a = xn(t), c = a.length, u = xn(e), l = u.length;
if (c != l && !o)
return !1;
for (var h = c; h--; ) {
var f = a[h];
if (!(o ? f in e : Fl.call(e, f)))
return !1;
}
var _ = s.get(t), E = s.get(e);
if (_ && E)
return _ == e && E == t;
var y = !0;
s.set(t, e), s.set(e, t);
for (var R = o; ++h < c; ) {
f = a[h];
var g = t[f], T = e[f];
if (r)
var p = o ? r(T, g, f, e, t, s) : r(g, T, f, t, e, s);
if (!(p === void 0 ? g === T || i(g, T, n, r, s) : p)) {
y = !1;
break;
}
R || (R = f == "constructor");
}
if (y && !R) {
var A = t.constructor, I = e.constructor;
A != I && "constructor" in t && "constructor" in e && !(typeof A == "function" && A instanceof A && typeof I == "function" && I instanceof I) && (y = !1);
}
return s.delete(t), s.delete(e), y;
}
var Gl = 1, ri = "[object Arguments]", ii = "[object Array]", kt = "[object Object]", Bl = Object.prototype, si = Bl.hasOwnProperty;
function Vl(t, e, n, r, i, s) {
var o = x(t), a = x(e), c = o ? ii : ae(t), u = a ? ii : ae(e);
c = c == ri ? kt : c, u = u == ri ? kt : u;
var l = c == kt, h = u == kt, f = c == u;
if (f && Et(t)) {
if (!Et(e))
return !1;
o = !0, l = !1;
}
if (f && !l)
return s || (s = new Oe()), o || rr(t) ? is(t, e, n, r, i, s) : Ul(t, e, c, n, r, i, s);
if (!(n & Gl)) {
var _ = l && si.call(t, "__wrapped__"), E = h && si.call(e, "__wrapped__");
if (_ || E) {
var y = _ ? t.value() : t, R = E ? e.value() : e;
return s || (s = new Oe()), i(y, R, n, r, s);
}
}
return f ? (s || (s = new Oe()), jl(t, e, n, r, i, s)) : !1;
}
function dr(t, e, n, r, i) {
return t === e ? !0 : t == null || e == null || !Ee(t) && !Ee(e) ? t !== t && e !== e : Vl(t, e, n, r, dr, i);
}
var Kl = 1, Hl = 2;
function Wl(t, e, n, r) {
var i = n.length, s = i;
if (t == null)
return !s;
for (t = Object(t); i--; ) {
var o = n[i];
if (o[2] ? o[1] !== t[o[0]] : !(o[0] in t))
return !1;
}
for (; ++i < s; ) {
o = n[i];
var a = o[0], c = t[a], u = o[1];
if (o[2]) {
if (c === void 0 && !(a in t))
return !1;
} else {
var l = new Oe(), h;
if (!(h === void 0 ? dr(u, c, Kl | Hl, r, l) : h))
return !1;
}
}
return !0;
}
function ss(t) {
return t === t && !le(t);
}
function zl(t) {
for (var e = he(t), n = e.length; n--; ) {
var r = e[n], i = t[r];
e[n] = [r, i, ss(i)];
}
return e;
}
function os(t, e) {
return function(n) {
return n == null ? !1 : n[t] === e && (e !== void 0 || t in Object(n));
};
}
function Yl(t) {
var e = zl(t);
return e.length == 1 && e[0][2] ? os(e[0][0], e[0][1]) : function(n) {
return n === t || Wl(n, t, e);
};
}
function Xl(t, e) {
return t != null && e in Object(t);
}
function as(t, e, n) {
e = ln(e, t);
for (var r = -1, i = e.length, s = !1; ++r < i; ) {
var o = Rt(e[r]);
if (!(s = t != null && n(t, o)))
break;
t = t[o];
}
return s || ++r != i ? s : (i = t == null ? 0 : t.length, !!i && nr(i) && rn(o, i) && (x(t) || on(t)));
}
function ql(t, e) {
return t != null && as(t, e, Xl);
}
var Zl = 1, Ql = 2;
function Jl(t, e) {
return ir(t) && ss(e) ? os(Rt(t), e) : function(n) {
var r = Gc(n, t);
return r === void 0 && r === e ? ql(n, t) : dr(e, r, Zl | Ql);
};
}
function eh(t) {
return function(e) {
return e?.[t];
};
}
function th(t) {
return function(e) {
return or(e, t);
};
}
function nh(t) {
return ir(t) ? eh(Rt(t)) : th(t);
}
function Ne(t) {
return typeof t == "function" ? t : t == null ? tt : typeof t == "object" ? x(t) ? Jl(t[0], t[1]) : Yl(t) : nh(t);
}
function rh(t, e, n, r) {
for (var i = -1, s = t == null ? 0 : t.length; ++i < s; ) {
var o = t[i];
e(r, o, n(o), t);
}
return r;
}
function ih(t) {
return function(e, n, r) {
for (var i = -1, s = Object(e), o = r(e), a = o.length; a--; ) {
var c = o[++i];
if (n(s[c], c, s) === !1)
break;
}
return e;
};
}
var sh = ih();
function oh(t, e) {
return t && sh(t, e, he);
}
function ah(t, e) {
return function(n, r) {
if (n == null)
return n;
if (!Ie(n))
return t(n, r);
for (var i = n.length, s = -1, o = Object(n); ++s < i && r(o[s], s, o) !== !1; )
;
return n;
};
}
var Ze = ah(oh);
function ch(t, e, n, r) {
return Ze(t, function(i, s, o) {
e(r, i, n(i), o);
}), r;
}
function uh(t, e) {
return function(n, r) {
var i = x(n) ? rh : ch, s = {};
return i(n, t, Ne(r), s);
};
}
var cs = Object.prototype, lh = cs.hasOwnProperty, pr = tr(function(t, e) {
t = Object(t);
var n = -1, r = e.length, i = r > 2 ? e[2] : void 0;
for (i && Gi(e[0], e[1], i) && (r = 1); ++n < r; )
for (var s = e[n], o = Yi(s), a = -1, c = o.length; ++a < c; ) {
var u = o[a], l = t[u];
(l === void 0 || _t(l, cs[u]) && !lh.call(t, u)) && (t[u] = s[u]);
}
return t;
});
function oi(t) {
return Ee(t) && Ie(t);
}
var hh = 200;
function fh(t, e, n, r) {
var i = -1, s = ji, o = !0, a = t.length, c = [], u = e.length;
if (!a)
return c;
e.length >= hh && (s = hr, o = !1, e = new nt(e));
e:
for (; ++i < a; ) {
var l = t[i], h = l;
if (l = l !== 0 ? l : 0, o && h === h) {
for (var f = u; f--; )
if (e[f] === h)
continue e;
c.push(l);
} else s(e, h, r) || c.push(l);
}
return c;
}
var hn = tr(function(t, e) {
return oi(t) ? fh(t, cr(e, 1, oi, !0)) : [];
});
function rt(t) {
var e = t == null ? 0 : t.length;
return e ? t[e - 1] : void 0;
}
function W(t, e, n) {
var r = t == null ? 0 : t.length;
return r ? (e = e === void 0 ? 1 : nn(e), qi(t, e < 0 ? 0 : e, r)) : [];
}
function At(t, e, n) {
var r = t == null ? 0 : t.length;
return r ? (e = e === void 0 ? 1 : nn(e), e = r - e, qi(t, 0, e < 0 ? 0 : e)) : [];
}
function dh(t) {
return typeof t == "function" ? t : tt;
}
function N(t, e) {
var n = x(t) ? $i : Ze;
return n(t, dh(e));
}
function ph(t, e) {
for (var n = -1, r = t == null ? 0 : t.length; ++n < r; )
if (!e(t[n], n, t))
return !1;
return !0;
}
function mh(t, e) {
var n = !0;
return Ze(t, function(r, i, s) {
return n = !!e(r, i, s), n;
}), n;
}
function ge(t, e, n) {
var r = x(t) ? ph : mh;
return r(t, Ne(e));
}
function us(t, e) {
var n = [];
return Ze(t, function(r, i, s) {
e(r, i, s) && n.push(r);
}), n;
}
function fe(t, e) {
var n = x(t) ? ur : us;
return n(t, Ne(e));
}
function gh(t) {
return function(e, n, r) {
var i = Object(e);
if (!Ie(e)) {
var s = Ne(n);
e = he(e), n = function(a) {
return s(i[a], a, i);
};
}
var o = t(e, n, r);
return o > -1 ? i[s ? e[o] : o] : void 0;
};
}
var Eh = Math.max;
function Th(t, e, n) {
var r = t == null ? 0 : t.length;
if (!r)
return -1;
var i = n == null ? 0 : nn(n);
return i < 0 && (i = Eh(r + i, 0)), Fi(t, Ne(e), i);
}
var it = gh(Th);
function Te(t) {
return t && t.length ? t[0] : void 0;
}
function yh(t, e) {
var n = -1, r = Ie(t) ? Array(t.length) : [];
return Ze(t, function(i, s, o) {
r[++n] = e(i, s, o);
}), r;
}
function v(t, e) {
var n = x(t) ? tn : yh;
return n(t, Ne(e));
}
function ce(t, e) {
return cr(v(t, e));
}
var Ah = Object.prototype, _h = Ah.hasOwnProperty, vh = uh(function(t, e, n) {
_h.call(t, n) ? t[n].push(e) : Jn(t, n, [e]);
}), Rh = Object.prototype, Oh = Rh.hasOwnProperty;
function Sh(t, e) {
return t != null && Oh.call(t, e);
}
function S(t, e) {
return t != null && as(t, e, Sh);
}
var Ih = "[object String]";
function J(t) {
return typeof t == "string" || !x(t) && Ee(t) && Be(t) == Ih;
}
function Nh(t, e) {
return tn(e, function(n) {
return t[n];
});
}
function K(t) {
return t == null ? [] : Nh(t, he(t));
}
var Lh = Math.max;
function Z(t, e, n, r) {
t = Ie(t) ? t : K(t), n = n ? nn(n) : 0;
var i = t.length;
return n < 0 && (n = Lh(i + n, 0)), J(t) ? n <= i && t.indexOf(e, n) > -1 : !!i && Qn(t, e, n) > -1;
}
function ai(t, e, n) {
var r = t == null ? 0 : t.length;
if (!r)
return -1;
var i = 0;
return Qn(t, e, i);
}
var Ch = "[object Map]", kh = "[object Set]", bh = Object.prototype, xh = bh.hasOwnProperty;
function D(t) {
if (t == null)
return !0;
if (Ie(t) && (x(t) || typeof t == "string" || typeof t.splice == "function" || Et(t) || rr(t) || on(t)))
return !t.length;
var e = ae(t);
if (e == Ch || e == kh)
return !t.size;
if (vt(t))
return !zi(t).length;
for (var n in t)
if (xh.call(t, n))
return !1;
return !0;
}
var Mh = "[object RegExp]";
function Ph(t) {
return Ee(t) && Be(t) == Mh;
}
var ci = je && je.isRegExp, Me = ci ? an(ci) : Ph;
function Pe(t) {
return t === void 0;
}
var wh = "Expected a function";
function Uh(t) {
if (typeof t != "function")
throw new TypeError(wh);
return function() {
var e = arguments;
switch (e.length) {
case 0:
return !t.call(this);
case 1:
return !t.call(this, e[0]);
case 2:
return !t.call(this, e[0], e[1]);
case 3:
return !t.call(this, e[0], e[1], e[2]);
}
return !t.apply(this, e);
};
}
function Dh(t, e, n, r) {
if (!le(t))
return t;
e = ln(e, t);
for (var i = -1, s = e.length, o = s - 1, a = t; a != null && ++i < s; ) {
var c = Rt(e[i]), u = n;
if (c === "__proto__" || c === "constructor" || c === "prototype")
return t;
if (i != o) {
var l = a[c];
u = void 0, u === void 0 && (u = le(l) ? l : rn(e[i + 1]) ? [] : {});
}
sn(a, c, u), a = a[c];
}
return t;
}
function $h(t, e, n) {
for (var r = -1, i = e.length, s = {}; ++r < i; ) {
var o = e[r], a = or(t, o);
n(a, o) && Dh(s, ln(o, t), a);
}
return s;
}
function ye(t, e) {
if (t == null)
return {};
var n = tn(iu(t), function(r) {
return [r];
});
return e = Ne(e), $h(t, n, function(r, i) {
return e(r, i[0]);
});
}
function Fh(t, e, n, r, i) {
return i(t, function(s, o, a) {
n = r ? (r = !1, s) : e(n, s, o, a);
}), n;
}
function re(t, e, n) {
var r = x(t) ? Vc : Fh, i = arguments.length < 3;
return r(t, Ne(e), n, i, Ze);
}
function fn(t, e) {
var n = x(t) ? ur : us;
return n(t, Uh(Ne(e)));
}
function jh(t, e) {
var n;
return Ze(t, function(r, i, s) {
return n = e(r, i, s), !n;
}), !!n;
}
function ls(t, e, n) {
var r = x(t) ? rs : jh;
return r(t, Ne(e));
}
var Gh = 1 / 0, Bh = et && 1 / fr(new et([, -0]))[1] == Gh ? function(t) {
return new et(t);
} : V, Vh = 200;
function Kh(t, e, n) {
var r = -1, i = ji, s = t.length, o = !0, a = [], c = a;
if (s >= Vh) {
var u = Bh(t);
if (u)
return fr(u);
o = !1, i = hr, c = new nt();
} else
c = a;
e:
for (; ++r < s; ) {
var l = t[r], h = l;
if (l = l !== 0 ? l : 0, o && h === h) {
for (var f = c.length; f--; )
if (c[f] === h)
continue e;
a.push(l);
} else i(c, h, n) || (c !== a && c.push(h), a.push(l));
}
return a;
}
function mr(t) {
return t && t.length ? Kh(t) : [];
}
function wn(t) {
console && console.error && console.error(`Error: ${t}`);
}
function hs(t) {
console && console.warn && console.warn(`Warning: ${t}`);
}
function fs(t) {
const e = (/* @__PURE__ */ new Date()).getTime(), n = t();
return { time: (/* @__PURE__ */ new Date()).getTime() - e, value: n };
}
function ds(t) {
function e() {
}
e.prototype = t;
const n = new e();
function r() {
return typeof n.bar;
}
return r(), r(), t;
}
function Hh(t) {
return Wh(t) ? t.LABEL : t.name;
}
function Wh(t) {
return J(t.LABEL) && t.LABEL !== "";
}
class Le {
get definition() {
return this._definition;
}
set definition(e) {
this._definition = e;
}
constructor(e) {
this._definition = e;
}
accept(e) {
e.visit(this), N(this.definition, (n) => {
n.accept(e);
});
}
}
class ie extends Le {
constructor(e) {
super([]), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
set definition(e) {
}
get definition() {
return this.referencedRule !== void 0 ? this.referencedRule.definition : [];
}
accept(e) {
e.visit(this);
}
}
class st extends Le {
constructor(e) {
super(e.definition), this.orgText = "", ne(this, ye(e, (n) => n !== void 0));
}
}
class ee extends Le {
constructor(e) {
super(e.definition), this.ignoreAmbiguities = !1, ne(this, ye(e, (n) => n !== void 0));
}
}
class Q extends Le {
constructor(e) {
super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
}
class Ce extends Le {
constructor(e) {
super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
}
class ke extends Le {
constructor(e) {
super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
}
class H extends Le {
constructor(e) {
super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
}
class Ae extends Le {
constructor(e) {
super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
}
class _e extends Le {
get definition() {
return this._definition;
}
set definition(e) {
this._definition = e;
}
constructor(e) {
super(e.definition), this.idx = 1, this.ignoreAmbiguities = !1, this.hasPredicates = !1, ne(this, ye(e, (n) => n !== void 0));
}
}
class F {
constructor(e) {
this.idx = 1, ne(this, ye(e, (n) => n !== void 0));
}
accept(e) {
e.visit(this);
}
}
function zh(t) {
return v(t, Dt);
}
function Dt(t) {
function e(n) {
return v(n, Dt);
}
if (t instanceof ie) {
const n = {
type: "NonTerminal",
name: t.nonTerminalName,
idx: t.idx
};
return J(t.label) && (n.label = t.label), n;
} else {
if (t instanceof ee)
return {
type: "Alternative",
definition: e(t.definition)
};
if (t instanceof Q)
return {
type: "Option",
idx: t.idx,
definition: e(t.definition)
};
if (t instanceof Ce)
return {
type: "RepetitionMandatory",
idx: t.idx,
definition: e(t.definition)
};
if (t instanceof ke)
return {
type: "RepetitionMandatoryWithSeparator",
idx: t.idx,
separator: Dt(new F({ terminalType: t.separator })),
definition: e(t.definition)
};
if (t instanceof Ae)
return {
type: "RepetitionWithSeparator",
idx: t.idx,
separator: Dt(new F({ terminalType: t.separator })),
definition: e(t.definition)
};
if (t instanceof H)
return {
type: "Repetition",
idx: t.idx,
definition: e(t.definition)
};
if (t instanceof _e)
return {
type: "Alternation",
idx: t.idx,
definition: e(t.definition)
};
if (t instanceof F) {
const n = {
type: "Terminal",
name: t.terminalType.name,
label: Hh(t.terminalType),
idx: t.idx
};
J(t.label) && (n.terminalLabel = t.label);
const r = t.terminalType.PATTERN;
return t.terminalType.PATTERN && (n.pattern = Me(r) ? r.source : r), n;
} else {
if (t instanceof st)
return {
type: "Rule",
name: t.name,
orgText: t.orgText,
definition: e(t.definition)
};
throw Error("non exhaustive match");
}
}
}
class ot {
visit(e) {
const n = e;
switch (n.constructor) {
case ie:
return this.visitNonTerminal(n);
case ee:
return this.visitAlternative(n);
case Q:
return this.visitOption(n);
case Ce:
return this.visitRepetitionMandatory(n);
case ke:
return this.visitRepetitionMandatoryWithSeparator(n);
case Ae:
return this.visitRepetitionWithSeparator(n);
case H:
return this.visitRepetition(n);
case _e:
return this.visitAlternation(n);
case F:
return this.visitTerminal(n);
case st:
return this.visitRule(n);
/* c8 ignore next 2 */
default:
throw Error("non exhaustive match");
}
}
/* c8 ignore next */
visitNonTerminal(e) {
}
/* c8 ignore next */
visitAlternative(e) {
}
/* c8 ignore next */
visitOption(e) {
}
/* c8 ignore next */
visitRepetition(e) {
}
/* c8 ignore next */
visitRepetitionMandatory(e) {
}
/* c8 ignore next 3 */
visitRepetitionMandatoryWithSeparator(e) {
}
/* c8 ignore next */
visitRepetitionWithSeparator(e) {
}
/* c8 ignore next */
visitAlternation(e) {
}
/* c8 ignore next */
visitTerminal(e) {
}
/* c8 ignore next */
visitRule(e) {
}
}
function Yh(t) {
return t instanceof ee || t instanceof Q || t instanceof H || t instanceof Ce || t instanceof ke || t instanceof Ae || t instanceof F || t instanceof st;
}
function Ht(t, e = []) {
return t instanceof Q || t instanceof H || t instanceof Ae ? !0 : t instanceof _e ? ls(t.definition, (n) => Ht(n, e)) : t instanceof ie && Z(e, t) ? !1 : t instanceof Le ? (t instanceof ie && e.push(t), ge(t.definition, (n) => Ht(n, e))) : !1;
}
function Xh(t) {
return t instanceof _e;
}
function Re(t) {
if (t instanceof ie)
return "SUBRULE";
if (t instanceof Q)
return "OPTION";
if (t instanceof _e)
return "OR";
if (t instanceof Ce)
return "AT_LEAST_ONE";
if (t instanceof ke)
return "AT_LEAST_ONE_SEP";
if (t instanceof Ae)
return "MANY_SEP";
if (t instanceof H)
return "MANY";
if (t instanceof F)
return "CONSUME";
throw Error("non exhaustive match");
}
class dn {
walk(e, n = []) {
N(e.definition, (r, i) => {
const s = W(e.definition, i + 1);
if (r instanceof ie)
this.walkProdRef(r, s, n);
else if (r instanceof F)
this.walkTerminal(r, s, n);
else if (r instanceof ee)
this.walkFlat(r, s, n);
else if (r instanceof Q)
this.walkOption(r, s, n);
else if (r instanceof Ce)
this.walkAtLeastOne(r, s, n);
else if (r instanceof ke)
this.walkAtLeastOneSep(r, s, n);
else if (r instanceof Ae)
this.walkManySep(r, s, n);
else if (r instanceof H)
this.walkMany(r, s, n);
else if (r instanceof _e)
this.walkOr(r, s, n);
else
throw Error("non exhaustive match");
});
}
walkTerminal(e, n, r) {
}
walkProdRef(e, n, r) {
}
walkFlat(e, n, r) {
const i = n.concat(r);
this.walk(e, i);
}
walkOption(e, n, r) {
const i = n.concat(r);
this.walk(e, i);
}
walkAtLeastOne(e, n, r) {
const i = [
new Q({ definition: e.definition })
].concat(n, r);
this.walk(e, i);
}
walkAtLeastOneSep(e, n, r) {
const i = ui(e, n, r);
this.walk(e, i);
}
walkMany(e, n, r) {
const i = [
new Q({ definition: e.definition })
].concat(n, r);
this.walk(e, i);
}
walkManySep(e, n, r) {
const i = ui(e, n, r);
this.walk(e, i);
}
walkOr(e, n, r) {
const i = n.concat(r);
N(e.definition, (s) => {
const o = new ee({ definition: [s] });
this.walk(o, i);
});
}
}
function ui(t, e, n) {
return [
new Q({
definition: [
new F({ terminalType: t.separator })
].concat(t.definition)
})
].concat(e, n);
}
function St(t) {
if (t instanceof ie)
return St(t.referencedRule);
if (t instanceof F)
return Qh(t);
if (Yh(t))
return qh(t);
if (Xh(t))
return Zh(t);
throw Error("non exhaustive match");
}
function qh(t) {
let e = [];
const n = t.definition;
let r = 0, i = n.length > r, s, o = !0;
for (; i && o; )
s = n[r], o = Ht(s), e = e.concat(St(s)), r = r + 1, i = n.length > r;
return mr(e);
}
function Zh(t) {
const e = v(t.definition, (n) => St(n));
return mr(me(e));
}
function Qh(t) {
return [t.terminalType];
}
const ps = "_~IN~_";
class Jh extends dn {
constructor(e) {
super(), this.topProd = e, this.follows = {};
}
startWalking() {
return this.walk(this.topProd), this.follows;
}
walkTerminal(e, n, r) {
}
walkProdRef(e, n, r) {
const i = tf(e.referencedRule, e.idx) + this.topProd.name, s = n.concat(r), o = new ee({ definition: s }), a = St(o);
this.follows[i] = a;
}
}
function ef(t) {
const e = {};
return N(t, (n) => {
const r = new Jh(n).startWalking();
ne(e, r);
}), e;
}
function tf(t, e) {
return t.name + e + ps;
}
function L(t) {
return t.charCodeAt(0);
}
function vn(t, e) {
Array.isArray(t) ? t.forEach(function(n) {
e.push(n);
}) : e.push(t);
}
function lt(t, e) {
if (t[e] === !0)
throw "duplicate flag " + e;
t[e], t[e] = !0;
}
function Je(t) {
if (t === void 0)
throw Error("Internal Error - Should never get here!");
return !0;
}
function nf() {
throw Error("Internal Error - Should never get here!");
}
function li(t) {
return t.type === "Character";
}
const Wt = [];
for (let t = L("0"); t <= L("9"); t++)
Wt.push(t);
const zt = [L("_")].concat(Wt);
for (let t = L("a"); t <= L("z"); t++)
zt.push(t);
for (let t = L("A"); t <= L("Z"); t++)
zt.push(t);
const hi = [
L(" "),
L("\f"),
L(`
`),
L("\r"),
L(" "),
L("\v"),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L(" "),
L("\u2028"),
L("\u2029"),
L(" "),
L(" "),
L(" "),
L("\uFEFF")
], rf = /[0-9a-fA-F]/, bt = /[0-9]/, sf = /[1-9]/;
class of {
constructor() {
this.idx = 0, this.input = "", this.groupIdx = 0;
}
saveState() {
return {
idx: this.idx,
input: this.input,
groupIdx: this.groupIdx
};
}
restoreState(e) {
this.idx = e.idx, this.input = e.input, this.groupIdx = e.groupIdx;
}
pattern(e) {
this.idx = 0, this.input = e, this.groupIdx = 0, this.consumeChar("/");
const n = this.disjunction();
this.consumeChar("/");
const r = {
type: "Flags",
loc: { begin: this.idx, end: e.length },
global: !1,
ignoreCase: !1,
multiLine: !1,
unicode: !1,
sticky: !1
};
for (; this.isRegExpFlag(); )
switch (this.popChar()) {
case "g":
lt(r, "global");
break;
case "i":
lt(r, "ignoreCase");
break;
case "m":
lt(r, "multiLine");
break;
case "u":
lt(r, "unicode");
break;
case "y":
lt(r, "sticky");
break;
}
if (this.idx !== this.input.length)
throw Error("Redundant input: " + this.input.substring(this.idx));
return {
type: "Pattern",
flags: r,
value: n,
loc: this.loc(0)
};
}
disjunction() {
const e = [], n = this.idx;
for (e.push(this.alternative()); this.peekChar() === "|"; )
this.consumeChar("|"), e.push(this.alternative());
return { type: "Disjunction", value: e, loc: this.loc(n) };
}
alternative() {
const e = [], n = this.idx;
for (; this.isTerm(); )
e.push(this.term());
return { type: "Alternative", value: e, loc: this.loc(n) };
}
term() {
return this.isAssertion() ? this.assertion() : this.atom();
}
assertion() {
const e = this.idx;
switch (this.popChar()) {
case "^":
return {
type: "StartAnchor",
loc: this.loc(e)
};
case "$":
return { type: "EndAnchor", loc: this.loc(e) };
// '\b' or '\B'
case "\\":
switch (this.popChar()) {
case "b":
return {