UNPKG

@sheetxl/studio-vanilla

Version:

SheetXL Studio - Vanilla entry point for integrating SheetXL UI.

1,556 lines 219 kB
import { F as $s, n as D, t as ft, j as Ye, $ as Ws, H as Xt, a as jn, b as Gs, d as Ks, G as Xe, W as zs, M as se, X as Ue, _ as Fe } from "./elB9a338Kjeh3S89.js"; /** * @license @sheetxl/studio-vanilla - SheetXL Studio - Vanilla entry point for integrating SheetXL UI. - v0.7.27 * * (C) 2025-present SheetXL Inc. & Michael T. Ford * License: The license can be found at https://www.sheetxl.com/license. */ var Mo = typeof global == "object" && global && global.Object === Object && global, Vs = typeof self == "object" && self && self.Object === Object && self, wt = Mo || Vs || Function("return this")(), It = wt.Symbol, Uo = Object.prototype, Hs = Uo.hasOwnProperty, Ys = Uo.toString, ye = It ? It.toStringTag : void 0, Xs = Object.prototype.toString, Zr = It ? It.toStringTag : void 0; function Jt(t) { return t == null ? t === void 0 ? "[object Undefined]" : "[object Null]" : Zr && Zr in Object(t) ? (function(n) { var r = Hs.call(n, ye), i = n[ye]; try { n[ye] = void 0; var o = !0; } catch { } var s = Ys.call(n); return o && (r ? n[ye] = i : delete n[ye]), s; })(t) : (e = t, Xs.call(e)); var e; } function Ot(t) { return t != null && typeof t == "object"; } function On(t) { return typeof t == "symbol" || Ot(t) && Jt(t) == "[object Symbol]"; } function Sn(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 B = Array.isArray, Qr = It ? It.prototype : void 0, Jr = Qr ? Qr.toString : void 0; function Fo(t) { if (typeof t == "string") return t; if (B(t)) return Sn(t, Fo) + ""; if (On(t)) return Jr ? Jr.call(t) : ""; var e = t + ""; return e == "0" && 1 / t == -1 / 0 ? "-0" : e; } var qs = /\s/, Zs = /^\s+/; function Nt(t) { var e = typeof t; return t != null && (e == "object" || e == "function"); } var Qs = /^[-+]0x[0-9a-f]+$/i, Js = /^0b[01]+$/i, ta = /^0o[0-7]+$/i, ea = parseInt, na = 1 / 0; function ra(t) { return t ? (t = (function(e) { if (typeof e == "number") return e; if (On(e)) return NaN; if (Nt(e)) { var n = typeof e.valueOf == "function" ? e.valueOf() : e; e = Nt(n) ? n + "" : n; } if (typeof e != "string") return e === 0 ? e : +e; e = (function(i) { return i && i.slice(0, (function(o) { for (var s = o.length; s-- && qs.test(o.charAt(s)); ) ; return s; })(i) + 1).replace(Zs, ""); })(e); var r = Js.test(e); return r || ta.test(e) ? ea(e.slice(2), r ? 2 : 8) : Qs.test(e) ? NaN : +e; })(t)) === na || t === -1 / 0 ? 17976931348623157e292 * (t < 0 ? -1 : 1) : t == t ? t : 0 : t === 0 ? t : 0; } function _n(t) { var e = ra(t), n = e % 1; return e == e ? n ? e - n : e : 0; } function Ee(t) { return t; } function Yt(t) { if (!Nt(t)) return !1; var e = Jt(t); return e == "[object Function]" || e == "[object GeneratorFunction]" || e == "[object AsyncFunction]" || e == "[object Proxy]"; } var ti, Bn = wt["__core-js_shared__"], ei = (ti = /[^.]+$/.exec(Bn && Bn.keys && Bn.keys.IE_PROTO || "")) ? "Symbol(src)_1." + ti : "", ia = Function.prototype.toString; function ae(t) { if (t != null) { try { return ia.call(t); } catch { } try { return t + ""; } catch { } } return ""; } var oa = /^\[object .+?Constructor\]$/, sa = Function.prototype, aa = Object.prototype, ca = sa.toString, ua = aa.hasOwnProperty, la = RegExp("^" + ca.call(ua).replace(/[\\^$.*+?()[\]{}|]/g, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"); function ce(t, e) { var n, r, i = (n = t, r = e, n?.[r]); return (function(o) { return !(!Nt(o) || (s = o, ei && ei in s)) && (Yt(o) ? la : oa).test(ae(o)); var s; })(i) ? i : void 0; } var dr = ce(wt, "WeakMap"), ni = Object.create, ha = /* @__PURE__ */ (function() { function t() { } return function(e) { if (!Nt(e)) return {}; if (ni) return ni(e); t.prototype = e; var n = new t(); return t.prototype = void 0, n; }; })(); function Z() { } var ri, $n, Wn, fa = Date.now, pn = (function() { try { var t = ce(Object, "defineProperty"); return t({}, "", {}), t; } catch { } })(), da = pn ? function(t, e) { return pn(t, "toString", { configurable: !0, enumerable: !1, value: (n = e, function() { return n; }), writable: !0 }); var n; } : Ee, pa = (ri = da, $n = 0, Wn = 0, function() { var t = fa(), e = 16 - (t - Wn); if (Wn = t, e > 0) { if (++$n >= 800) return arguments[0]; } else $n = 0; return ri.apply(void 0, arguments); }); function Do(t, e) { for (var n = -1, r = t == null ? 0 : t.length; ++n < r && e(t[n], n, t) !== !1; ) ; return t; } function jo(t, e, n, r) { for (var i = t.length, o = n + -1; ++o < i; ) if (e(t[o], o, t)) return o; return -1; } function ma(t) { return t != t; } function Ur(t, e, n) { return e == e ? (function(r, i, o) { for (var s = o - 1, a = r.length; ++s < a; ) if (r[s] === i) return s; return -1; })(t, e, n) : jo(t, ma, n); } function Bo(t, e) { return !(t == null || !t.length) && Ur(t, e, 0) > -1; } var Ea = /^(?:0|[1-9]\d*)$/; function Ln(t, e) { var n = typeof t; return !!(e = e ?? 9007199254740991) && (n == "number" || n != "symbol" && Ea.test(t)) && t > -1 && t % 1 == 0 && t < e; } function Fr(t, e, n) { e == "__proto__" && pn ? pn(t, e, { configurable: !0, enumerable: !0, value: n, writable: !0 }) : t[e] = n; } function ze(t, e) { return t === e || t != t && e != e; } var ga = Object.prototype.hasOwnProperty; function xn(t, e, n) { var r = t[e]; ga.call(t, e) && ze(r, n) && (n !== void 0 || e in t) || Fr(t, e, n); } function pr(t, e, n, r) { var i = !n; n || (n = {}); for (var o = -1, s = e.length; ++o < s; ) { var a = e[o], c = void 0; c === void 0 && (c = t[a]), i ? Fr(n, a, c) : xn(n, a, c); } return n; } var ii = Math.max; function Dr(t, e) { return pa((function(n, r, i) { return r = ii(r === void 0 ? n.length - 1 : r, 0), function() { for (var o = arguments, s = -1, a = ii(o.length - r, 0), c = Array(a); ++s < a; ) c[s] = o[r + s]; s = -1; for (var u = Array(r + 1); ++s < r; ) u[s] = o[s]; return u[r] = i(c), (function(l, h, N) { switch (N.length) { case 0: return l.call(h); case 1: return l.call(h, N[0]); case 2: return l.call(h, N[0], N[1]); case 3: return l.call(h, N[0], N[1], N[2]); } return l.apply(h, N); })(n, this, u); }; })(t, e, Ee), t + ""); } function jr(t) { return typeof t == "number" && t > -1 && t % 1 == 0 && t <= 9007199254740991; } function Mt(t) { return t != null && jr(t.length) && !Yt(t); } function $o(t, e, n) { if (!Nt(n)) return !1; var r = typeof e; return !!(r == "number" ? Mt(n) && Ln(e, n.length) : r == "string" && e in n) && ze(n[e], t); } var Ta = Object.prototype; function Ve(t) { var e = t && t.constructor; return t === (typeof e == "function" && e.prototype || Ta); } function oi(t) { return Ot(t) && Jt(t) == "[object Arguments]"; } var Wo = Object.prototype, Aa = Wo.hasOwnProperty, Ia = Wo.propertyIsEnumerable, Cn = oi(/* @__PURE__ */ (function() { return arguments; })()) ? oi : function(t) { return Ot(t) && Aa.call(t, "callee") && !Ia.call(t, "callee"); }, Go = typeof exports == "object" && exports && !exports.nodeType && exports, si = Go && typeof module == "object" && module && !module.nodeType && module, ai = si && si.exports === Go ? wt.Buffer : void 0, De = (ai ? ai.isBuffer : void 0) || function() { return !1; }, z = {}; function kn(t) { return function(e) { return t(e); }; } z["[object Float32Array]"] = z["[object Float64Array]"] = z["[object Int8Array]"] = z["[object Int16Array]"] = z["[object Int32Array]"] = z["[object Uint8Array]"] = z["[object Uint8ClampedArray]"] = z["[object Uint16Array]"] = z["[object Uint32Array]"] = !0, z["[object Arguments]"] = z["[object Array]"] = z["[object ArrayBuffer]"] = z["[object Boolean]"] = z["[object DataView]"] = z["[object Date]"] = z["[object Error]"] = z["[object Function]"] = z["[object Map]"] = z["[object Number]"] = z["[object Object]"] = z["[object RegExp]"] = z["[object Set]"] = z["[object String]"] = z["[object WeakMap]"] = !1; var Ko = typeof exports == "object" && exports && !exports.nodeType && exports, ke = Ko && typeof module == "object" && module && !module.nodeType && module, Gn = ke && ke.exports === Ko && Mo.process, Zt = (function() { try { return ke && ke.require && ke.require("util").types || Gn && Gn.binding && Gn.binding("util"); } catch { } })(), ci = Zt && Zt.isTypedArray, Br = ci ? kn(ci) : function(t) { return Ot(t) && jr(t.length) && !!z[Jt(t)]; }, Na = Object.prototype.hasOwnProperty; function zo(t, e) { var n = B(t), r = !n && Cn(t), i = !n && !r && De(t), o = !n && !r && !i && Br(t), s = n || r || i || o, a = s ? (function(l, h) { for (var N = -1, S = Array(l); ++N < l; ) S[N] = h(N); return S; })(t.length, String) : [], c = a.length; for (var u in t) !e && !Na.call(t, u) || s && (u == "length" || i && (u == "offset" || u == "parent") || o && (u == "buffer" || u == "byteLength" || u == "byteOffset") || Ln(u, c)) || a.push(u); return a; } function Vo(t, e) { return function(n) { return t(e(n)); }; } var ya = Vo(Object.keys, Object), Ra = Object.prototype.hasOwnProperty; function Ho(t) { if (!Ve(t)) return ya(t); var e = []; for (var n in Object(t)) Ra.call(t, n) && n != "constructor" && e.push(n); return e; } function yt(t) { return Mt(t) ? zo(t) : Ho(t); } var Kn, va = Object.prototype.hasOwnProperty, pt = (Kn = function(t, e) { if (Ve(e) || Mt(e)) pr(e, yt(e), t); else for (var n in e) va.call(e, n) && xn(t, n, e[n]); }, Dr(function(t, e) { var n = -1, r = e.length, i = r > 1 ? e[r - 1] : void 0, o = r > 2 ? e[2] : void 0; for (i = Kn.length > 3 && typeof i == "function" ? (r--, i) : void 0, o && $o(e[0], e[1], o) && (i = r < 3 ? void 0 : i, r = 1), t = Object(t); ++n < r; ) { var s = e[n]; s && Kn(t, s); } return t; })), Oa = Object.prototype.hasOwnProperty; function Yo(t) { return Mt(t) ? zo(t, !0) : (function(e) { if (!Nt(e)) return (function(o) { var s = []; if (o != null) for (var a in Object(o)) s.push(a); return s; })(e); var n = Ve(e), r = []; for (var i in e) (i != "constructor" || !n && Oa.call(e, i)) && r.push(i); return r; })(t); } var Sa = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, _a = /^\w*$/; function mr(t, e) { if (B(t)) return !1; var n = typeof t; return !(n != "number" && n != "symbol" && n != "boolean" && t != null && !On(t)) || _a.test(t) || !Sa.test(t) || e != null && t in Object(e); } var Re = ce(Object, "create"), La = Object.prototype.hasOwnProperty, xa = Object.prototype.hasOwnProperty; function re(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]); } } function qe(t, e) { for (var n = t.length; n--; ) if (ze(t[n][0], e)) return n; return -1; } re.prototype.clear = function() { this.__data__ = Re ? Re(null) : {}, this.size = 0; }, re.prototype.delete = function(t) { var e = this.has(t) && delete this.__data__[t]; return this.size -= e ? 1 : 0, e; }, re.prototype.get = function(t) { var e = this.__data__; if (Re) { var n = e[t]; return n === "__lodash_hash_undefined__" ? void 0 : n; } return La.call(e, t) ? e[t] : void 0; }, re.prototype.has = function(t) { var e = this.__data__; return Re ? e[t] !== void 0 : xa.call(e, t); }, re.prototype.set = function(t, e) { var n = this.__data__; return this.size += this.has(t) ? 0 : 1, n[t] = Re && e === void 0 ? "__lodash_hash_undefined__" : e, this; }; var Ca = Array.prototype.splice; function Vt(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]); } } Vt.prototype.clear = function() { this.__data__ = [], this.size = 0; }, Vt.prototype.delete = function(t) { var e = this.__data__, n = qe(e, t); return !(n < 0 || (n == e.length - 1 ? e.pop() : Ca.call(e, n, 1), --this.size, 0)); }, Vt.prototype.get = function(t) { var e = this.__data__, n = qe(e, t); return n < 0 ? void 0 : e[n][1]; }, Vt.prototype.has = function(t) { return qe(this.__data__, t) > -1; }, Vt.prototype.set = function(t, e) { var n = this.__data__, r = qe(n, t); return r < 0 ? (++this.size, n.push([t, e])) : n[r][1] = e, this; }; var je = ce(wt, "Map"); function Ze(t, e) { var n, r, i = t.__data__; return ((r = typeof (n = e)) == "string" || r == "number" || r == "symbol" || r == "boolean" ? n !== "__proto__" : n === null) ? i[typeof e == "string" ? "string" : "hash"] : i.map; } function Gt(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]); } } function $r(t, e) { if (typeof t != "function" || e != null && typeof e != "function") throw new TypeError("Expected a function"); var n = function() { var r = arguments, i = e ? e.apply(this, r) : r[0], o = n.cache; if (o.has(i)) return o.get(i); var s = t.apply(this, r); return n.cache = o.set(i, s) || o, s; }; return n.cache = new ($r.Cache || Gt)(), n; } Gt.prototype.clear = function() { this.size = 0, this.__data__ = { hash: new re(), map: new (je || Vt)(), string: new re() }; }, Gt.prototype.delete = function(t) { var e = Ze(this, t).delete(t); return this.size -= e ? 1 : 0, e; }, Gt.prototype.get = function(t) { return Ze(this, t).get(t); }, Gt.prototype.has = function(t) { return Ze(this, t).has(t); }, Gt.prototype.set = function(t, e) { var n = Ze(this, t), r = n.size; return n.set(t, e), this.size += n.size == r ? 0 : 1, this; }, $r.Cache = Gt; var ka = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, ba = /\\(\\)?/g, Pa = (function() { var t = $r(function(n) { var r = []; return n.charCodeAt(0) === 46 && r.push(""), n.replace(ka, function(i, o, s, a) { r.push(s ? a.replace(ba, "$1") : o || i); }), r; }, function(n) { return e.size === 500 && e.clear(), n; }), e = t.cache; return t; })(); function bn(t, e) { return B(t) ? t : mr(t, e) ? [t] : Pa((function(n) { return n == null ? "" : Fo(n); })(t)); } function Be(t) { if (typeof t == "string" || On(t)) return t; var e = t + ""; return e == "0" && 1 / t == -1 / 0 ? "-0" : e; } function Er(t, e) { for (var n = 0, r = (e = bn(e, t)).length; t != null && n < r; ) t = t[Be(e[n++])]; return n && n == r ? t : void 0; } function Wr(t, e) { for (var n = -1, r = e.length, i = t.length; ++n < r; ) t[i + n] = e[n]; return t; } var ui = It ? It.isConcatSpreadable : void 0; function wa(t) { return B(t) || Cn(t) || !!(ui && t && t[ui]); } function Gr(t, e, n, r, i) { var o = -1, s = t.length; for (n || (n = wa), i || (i = []); ++o < s; ) { var a = t[o]; n(a) ? Wr(i, a) : r || (i[i.length] = a); } return i; } function Rt(t) { return t != null && t.length ? Gr(t) : []; } var Xo = Vo(Object.getPrototypeOf, Object); function qo(t, e, n) { var r = -1, i = t.length; e < 0 && (e = -e > i ? 0 : i + e), (n = n > i ? i : n) < 0 && (n += i), i = e > n ? 0 : n - e >>> 0, e >>>= 0; for (var o = Array(i); ++r < i; ) o[r] = t[r + e]; return o; } function Ma(t, e, n, r) { var i = -1, o = t == null ? 0 : t.length; for (r && o && (n = t[++i]); ++i < o; ) n = e(n, t[i], i, t); return n; } function bt(t) { var e = this.__data__ = new Vt(t); this.size = e.size; } bt.prototype.clear = function() { this.__data__ = new Vt(), this.size = 0; }, bt.prototype.delete = function(t) { var e = this.__data__, n = e.delete(t); return this.size = e.size, n; }, bt.prototype.get = function(t) { return this.__data__.get(t); }, bt.prototype.has = function(t) { return this.__data__.has(t); }, bt.prototype.set = function(t, e) { var n = this.__data__; if (n instanceof Vt) { var r = n.__data__; if (!je || r.length < 199) return r.push([t, e]), this.size = ++n.size, this; n = this.__data__ = new Gt(r); } return n.set(t, e), this.size = n.size, this; }; var Zo = typeof exports == "object" && exports && !exports.nodeType && exports, li = Zo && typeof module == "object" && module && !module.nodeType && module, hi = li && li.exports === Zo ? wt.Buffer : void 0, fi = hi ? hi.allocUnsafe : void 0; function Kr(t, e) { for (var n = -1, r = t == null ? 0 : t.length, i = 0, o = []; ++n < r; ) { var s = t[n]; e(s, n, t) && (o[i++] = s); } return o; } function Qo() { return []; } var Ua = Object.prototype.propertyIsEnumerable, di = Object.getOwnPropertySymbols, zr = di ? function(t) { return t == null ? [] : (t = Object(t), Kr(di(t), function(e) { return Ua.call(t, e); })); } : Qo, Fa = Object.getOwnPropertySymbols ? function(t) { for (var e = []; t; ) Wr(e, zr(t)), t = Xo(t); return e; } : Qo; function Jo(t, e, n) { var r = e(t); return B(t) ? r : Wr(r, n(t)); } function gr(t) { return Jo(t, yt, zr); } var Tr = ce(wt, "DataView"), Ar = ce(wt, "Promise"), pe = ce(wt, "Set"), pi = "[object Map]", mi = "[object Promise]", Ei = "[object Set]", gi = "[object WeakMap]", Ti = "[object DataView]", Da = ae(Tr), ja = ae(je), Ba = ae(Ar), $a = ae(pe), Wa = ae(dr), At = Jt; (Tr && At(new Tr(new ArrayBuffer(1))) != Ti || je && At(new je()) != pi || Ar && At(Ar.resolve()) != mi || pe && At(new pe()) != Ei || dr && At(new dr()) != gi) && (At = function(t) { var e = Jt(t), n = e == "[object Object]" ? t.constructor : void 0, r = n ? ae(n) : ""; if (r) switch (r) { case Da: return Ti; case ja: return pi; case Ba: return mi; case $a: return Ei; case Wa: return gi; } return e; }); var Ga = Object.prototype.hasOwnProperty, mn = wt.Uint8Array, Ka = /\w*$/, Ai = It ? It.prototype : void 0, Ii = Ai ? Ai.valueOf : void 0, Ni = Zt && Zt.isMap, za = Ni ? kn(Ni) : function(t) { return Ot(t) && At(t) == "[object Map]"; }, yi = Zt && Zt.isSet, Va = yi ? kn(yi) : function(t) { return Ot(t) && At(t) == "[object Set]"; }, ts = "[object Arguments]", es = "[object Function]", ns = "[object Object]", G = {}; function sn(t, e, n, r, i, o) { var s; if (s !== void 0) return s; if (!Nt(t)) return t; var a, c, u, l = B(t); if (l) return c = (a = t).length, u = new a.constructor(c), c && typeof a[0] == "string" && Ga.call(a, "index") && (u.index = a.index, u.input = a.input), (function(m, y) { var p = -1, T = m.length; for (y || (y = Array(T)); ++p < T; ) y[p] = m[p]; return y; })(t, s = u); var h = At(t), N = h == es || h == "[object GeneratorFunction]"; if (De(t)) return (function(m) { var y = m.length, p = fi ? fi(y) : new m.constructor(y); return m.copy(p), p; })(t); if (h == ns || h == ts || N && !i) return s = N ? {} : (function(m) { return typeof m.constructor != "function" || Ve(m) ? {} : ha(Xo(m)); })(t), (function(m, y) { return pr(m, zr(m), y); })(t, (function(m, y) { return m && pr(y, yt(y), m); })(s, t)); if (!G[h]) return i ? t : {}; s = (function(m, y) { var p, T, g, A, v, f, d, I = m.constructor; switch (y) { case "[object ArrayBuffer]": return v = new (A = m).constructor(A.byteLength), new mn(v).set(new mn(A)), v; case "[object Boolean]": case "[object Date]": return new I(+m); case "[object DataView]": return g = (T = m).buffer, new T.constructor(g, T.byteOffset, T.byteLength); case "[object Float32Array]": case "[object Float64Array]": case "[object Int8Array]": case "[object Int16Array]": case "[object Int32Array]": case "[object Uint8Array]": case "[object Uint8ClampedArray]": case "[object Uint16Array]": case "[object Uint32Array]": return d = (f = m).buffer, new f.constructor(d, f.byteOffset, f.length); case "[object Map]": case "[object Set]": return new I(); case "[object Number]": case "[object String]": return new I(m); case "[object RegExp]": return (function(E) { var R = new E.constructor(E.source, Ka.exec(E)); return R.lastIndex = E.lastIndex, R; })(m); case "[object Symbol]": return p = m, Ii ? Object(Ii.call(p)) : {}; } })(t, h), o || (o = new bt()); var S = o.get(t); if (S) return S; o.set(t, s), Va(t) ? t.forEach(function(m) { s.add(sn(m, e, n, m, t, o)); }) : za(t) && t.forEach(function(m, y) { s.set(y, sn(m, e, n, y, t, o)); }); var _ = l ? void 0 : gr(t); return Do(_ || t, function(m, y) { _ && (m = t[y = m]), xn(s, y, sn(m, e, n, y, t, o)); }), s; } function et(t) { return sn(t, 4); } function $e(t) { for (var e = -1, n = t == null ? 0 : t.length, r = 0, i = []; ++e < n; ) { var o = t[e]; o && (i[r++] = o); } return i; } function me(t) { var e = -1, n = t == null ? 0 : t.length; for (this.__data__ = new Gt(); ++e < n; ) this.add(t[e]); } 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 Vr(t, e) { return t.has(e); } function Ri(t, e, n, r, i, o) { var s = 1 & n, a = t.length, c = e.length; if (a != c && !(s && c > a)) return !1; var u = o.get(t), l = o.get(e); if (u && l) return u == e && l == t; var h = -1, N = !0, S = 2 & n ? new me() : void 0; for (o.set(t, e), o.set(e, t); ++h < a; ) { var _ = t[h], m = e[h]; if (r) var y = s ? r(m, _, h, e, t, o) : r(_, m, h, t, e, o); if (y !== void 0) { if (y) continue; N = !1; break; } if (S) { if (!rs(e, function(p, T) { if (!Vr(S, T) && (_ === p || i(_, p, n, r, o))) return S.push(T); })) { N = !1; break; } } else if (_ !== m && !i(_, m, n, r, o)) { N = !1; break; } } return o.delete(t), o.delete(e), N; } function Ha(t) { var e = -1, n = Array(t.size); return t.forEach(function(r, i) { n[++e] = [i, r]; }), n; } function Hr(t) { var e = -1, n = Array(t.size); return t.forEach(function(r) { n[++e] = r; }), n; } G[ts] = G["[object Array]"] = G["[object ArrayBuffer]"] = G["[object DataView]"] = G["[object Boolean]"] = G["[object Date]"] = G["[object Float32Array]"] = G["[object Float64Array]"] = G["[object Int8Array]"] = G["[object Int16Array]"] = G["[object Int32Array]"] = G["[object Map]"] = G["[object Number]"] = G[ns] = G["[object RegExp]"] = G["[object Set]"] = G["[object String]"] = G["[object Symbol]"] = G["[object Uint8Array]"] = G["[object Uint8ClampedArray]"] = G["[object Uint16Array]"] = G["[object Uint32Array]"] = !0, G["[object Error]"] = G[es] = G["[object WeakMap]"] = !1, me.prototype.add = me.prototype.push = function(t) { return this.__data__.set(t, "__lodash_hash_undefined__"), this; }, me.prototype.has = function(t) { return this.__data__.has(t); }; var vi = It ? It.prototype : void 0, zn = vi ? vi.valueOf : void 0, Ya = Object.prototype.hasOwnProperty, Oi = "[object Arguments]", Si = "[object Array]", Qe = "[object Object]", _i = Object.prototype.hasOwnProperty; function Ir(t, e, n, r, i) { return t === e || (t == null || e == null || !Ot(t) && !Ot(e) ? t != t && e != e : (function(o, s, a, c, u, l) { var h = B(o), N = B(s), S = h ? Si : At(o), _ = N ? Si : At(s), m = (S = S == Oi ? Qe : S) == Qe, y = (_ = _ == Oi ? Qe : _) == Qe, p = S == _; if (p && De(o)) { if (!De(s)) return !1; h = !0, m = !1; } if (p && !m) return l || (l = new bt()), h || Br(o) ? Ri(o, s, a, c, u, l) : (function(f, d, I, E, R, M, L) { switch (I) { case "[object DataView]": if (f.byteLength != d.byteLength || f.byteOffset != d.byteOffset) return !1; f = f.buffer, d = d.buffer; case "[object ArrayBuffer]": return !(f.byteLength != d.byteLength || !M(new mn(f), new mn(d))); case "[object Boolean]": case "[object Date]": case "[object Number]": return ze(+f, +d); case "[object Error]": return f.name == d.name && f.message == d.message; case "[object RegExp]": case "[object String]": return f == d + ""; case "[object Map]": var O = Ha; case "[object Set]": var P = 1 & E; if (O || (O = Hr), f.size != d.size && !P) return !1; var x = L.get(f); if (x) return x == d; E |= 2, L.set(f, d); var C = Ri(O(f), O(d), E, R, M, L); return L.delete(f), C; case "[object Symbol]": if (zn) return zn.call(f) == zn.call(d); } return !1; })(o, s, S, a, c, u, l); if (!(1 & a)) { var T = m && _i.call(o, "__wrapped__"), g = y && _i.call(s, "__wrapped__"); if (T || g) { var A = T ? o.value() : o, v = g ? s.value() : s; return l || (l = new bt()), u(A, v, a, c, l); } } return !!p && (l || (l = new bt()), (function(f, d, I, E, R, M) { var L = 1 & I, O = gr(f), P = O.length; if (P != gr(d).length && !L) return !1; for (var x = P; x--; ) { var C = O[x]; if (!(L ? C in d : Ya.call(d, C))) return !1; } var $ = M.get(f), X = M.get(d); if ($ && X) return $ == d && X == f; var W = !0; M.set(f, d), M.set(d, f); for (var rt = L; ++x < P; ) { var Et = f[C = O[x]], Ct = d[C]; if (E) var Ne = L ? E(Ct, Et, C, d, f, M) : E(Et, Ct, C, f, d, M); if (!(Ne === void 0 ? Et === Ct || R(Et, Ct, I, E, M) : Ne)) { W = !1; break; } rt || (rt = C == "constructor"); } if (W && !rt) { var nt = f.constructor, te = d.constructor; nt == te || !("constructor" in f) || !("constructor" in d) || typeof nt == "function" && nt instanceof nt && typeof te == "function" && te instanceof te || (W = !1); } return M.delete(f), M.delete(d), W; })(o, s, a, c, u, l)); })(t, e, n, r, Ir, i)); } function Li(t) { return t == t && !Nt(t); } function xi(t, e) { return function(n) { return n != null && n[t] === e && (e !== void 0 || t in Object(n)); }; } function Xa(t, e) { return t != null && e in Object(t); } function is(t, e, n) { for (var r = -1, i = (e = bn(e, t)).length, o = !1; ++r < i; ) { var s = Be(e[r]); if (!(o = t != null && n(t, s))) break; t = t[s]; } return o || ++r != i ? o : !!(i = t == null ? 0 : t.length) && jr(i) && Ln(s, i) && (B(t) || Cn(t)); } function Pt(t) { return typeof t == "function" ? t : t == null ? Ee : typeof t == "object" ? B(t) ? (function(e, n) { return mr(e) && Li(n) ? xi(Be(e), n) : function(r) { var i, o, s = (o = (i = r) == null ? void 0 : Er(i, e)) === void 0 ? void 0 : o; return s === void 0 && s === n ? (function(a, c) { return a != null && is(a, c, Xa); })(r, e) : Ir(n, s, 3); }; })(t[0], t[1]) : (function(e) { var n = (function(r) { for (var i = yt(r), o = i.length; o--; ) { var s = i[o], a = r[s]; i[o] = [s, a, Li(a)]; } return i; })(e); return n.length == 1 && n[0][2] ? xi(n[0][0], n[0][1]) : function(r) { return r === e || (function(i, o, s) { var a = s.length, c = a; if (i == null) return !c; for (i = Object(i); a--; ) { var u = s[a]; if (u[2] ? u[1] !== i[u[0]] : !(u[0] in i)) return !1; } for (; ++a < c; ) { var l = (u = s[a])[0], h = i[l], N = u[1]; if (u[2]) { if (h === void 0 && !(l in i)) return !1; } else if (!Ir(N, h, 3, void 0, new bt())) return !1; } return !0; })(r, 0, n); }; })(t) : (function(e) { return mr(e) ? (n = Be(e), function(r) { return r?.[n]; }) : /* @__PURE__ */ (function(r) { return function(i) { return Er(i, r); }; })(e); var n; })(t); } function qa(t, e, n, r) { for (var i = -1, o = t == null ? 0 : t.length; ++i < o; ) { var s = t[i]; e(r, s, n(s), t); } return r; } var Ci, ue = (Ci = function(t, e) { return t && (function(n, r, i) { for (var o = -1, s = Object(n), a = i(n), c = a.length; c--; ) { var u = a[++o]; if (r(s[u], u, s) === !1) break; } return n; })(t, e, yt); }, function(t, e) { if (t == null) return t; if (!Mt(t)) return Ci(t, e); for (var n = t.length, r = -1, i = Object(t); ++r < n && e(i[r], r, i) !== !1; ) ; return t; }); function Za(t, e, n, r) { return ue(t, function(i, o, s) { e(r, i, n(i), s); }), r; } var os = Object.prototype, Qa = os.hasOwnProperty, Nr = Dr(function(t, e) { t = Object(t); var n = -1, r = e.length, i = r > 2 ? e[2] : void 0; for (i && $o(e[0], e[1], i) && (r = 1); ++n < r; ) for (var o = e[n], s = Yo(o), a = -1, c = s.length; ++a < c; ) { var u = s[a], l = t[u]; (l === void 0 || ze(l, os[u]) && !Qa.call(t, u)) && (t[u] = o[u]); } return t; }); function ki(t) { return Ot(t) && Mt(t); } var En = Dr(function(t, e) { return ki(t) ? (function(n, r) { var i = -1, o = Bo, s = !0, a = n.length, c = [], u = r.length; if (!a) return c; r.length >= 200 && (o = Vr, s = !1, r = new me(r)); t: for (; ++i < a; ) { var l = n[i], h = l; if (l = l !== 0 ? l : 0, s && h == h) { for (var N = u; N--; ) if (r[N] === h) continue t; c.push(l); } else o(r, h, void 0) || c.push(l); } return c; })(t, Gr(e, 0, ki, !0)) : []; }); function ge(t) { var e = t == null ? 0 : t.length; return e ? t[e - 1] : void 0; } function tt(t, e, n) { var r = t == null ? 0 : t.length; return r ? qo(t, (e = e === void 0 ? 1 : _n(e)) < 0 ? 0 : e, r) : []; } function We(t, e, n) { var r = t == null ? 0 : t.length; return r ? qo(t, 0, (e = r - (e = e === void 0 ? 1 : _n(e))) < 0 ? 0 : e) : []; } function w(t, e) { var n; return (B(t) ? Do : ue)(t, typeof (n = e) == "function" ? n : Ee); } function Ja(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 tc(t, e) { var n = !0; return ue(t, function(r, i, o) { return n = !!e(r, i, o); }), n; } function vt(t, e, n) { return (B(t) ? Ja : tc)(t, Pt(e)); } function ss(t, e) { var n = []; return ue(t, function(r, i, o) { e(r, i, o) && n.push(r); }), n; } function gt(t, e) { return (B(t) ? Kr : ss)(t, Pt(e)); } var bi, ec = Math.max, Te = (bi = function(t, e, n) { var r = t == null ? 0 : t.length; if (!r) return -1; var i = n == null ? 0 : _n(n); return i < 0 && (i = ec(r + i, 0)), jo(t, Pt(e), i); }, function(t, e, n) { var r = Object(t); if (!Mt(t)) { var i = Pt(e); t = yt(t), e = function(s) { return i(r[s], s, r); }; } var o = bi(t, e, n); return o > -1 ? r[i ? t[o] : o] : void 0; }); function St(t) { return t && t.length ? t[0] : void 0; } function nc(t, e) { var n = -1, r = Mt(t) ? Array(t.length) : []; return ue(t, function(i, o, s) { r[++n] = e(i, o, s); }), r; } function k(t, e) { return (B(t) ? Sn : nc)(t, Pt(e)); } function Tt(t, e) { return Gr(k(t, e)); } var Pi, rc = Object.prototype.hasOwnProperty, ic = (Pi = function(t, e, n) { rc.call(t, n) ? t[n].push(e) : Fr(t, n, [e]); }, function(t, e) { return (B(t) ? qa : Za)(t, Pi, Pt(e), {}); }), oc = Object.prototype.hasOwnProperty; function sc(t, e) { return t != null && oc.call(t, e); } function b(t, e) { return t != null && is(t, e, sc); } function ut(t) { return typeof t == "string" || !B(t) && Ot(t) && Jt(t) == "[object String]"; } function Q(t) { return t == null ? [] : (function(e, n) { return Sn(n, function(r) { return e[r]; }); })(t, yt(t)); } var ac = Math.max; function at(t, e, n, r) { t = Mt(t) ? t : Q(t), n = n ? _n(n) : 0; var i = t.length; return n < 0 && (n = ac(i + n, 0)), ut(t) ? n <= i && t.indexOf(e, n) > -1 : !!i && Ur(t, e, n) > -1; } function wi(t, e, n) { return t != null && t.length ? Ur(t, e, 0) : -1; } var cc = Object.prototype.hasOwnProperty; function K(t) { if (t == null) return !0; if (Mt(t) && (B(t) || typeof t == "string" || typeof t.splice == "function" || De(t) || Br(t) || Cn(t))) return !t.length; var e = At(t); if (e == "[object Map]" || e == "[object Set]") return !t.size; if (Ve(t)) return !Ho(t).length; for (var n in t) if (cc.call(t, n)) return !1; return !0; } var Mi = Zt && Zt.isRegExp, Kt = Mi ? kn(Mi) : function(t) { return Ot(t) && Jt(t) == "[object RegExp]"; }; function Ht(t) { return t === void 0; } function uc(t, e, n, r) { if (!Nt(t)) return t; for (var i = -1, o = (e = bn(e, t)).length, s = o - 1, a = t; a != null && ++i < o; ) { var c = Be(e[i]), u = n; if (c === "__proto__" || c === "constructor" || c === "prototype") return t; if (i != s) { var l = a[c]; (u = void 0) == null && (u = Nt(l) ? l : Ln(e[i + 1]) ? [] : {}); } xn(a, c, u), a = a[c]; } return t; } function _t(t, e) { if (t == null) return {}; var n = Sn(Jo(t, Yo, Fa), function(r) { return [r]; }); return e = Pt(e), (function(r, i, o) { for (var s = -1, a = i.length, c = {}; ++s < a; ) { var u = i[s], l = Er(r, u); o(l, u) && uc(c, bn(u, r), l); } return c; })(t, n, function(r, i) { return e(r, i[0]); }); } function lc(t, e, n, r, i) { return i(t, function(o, s, a) { n = r ? (r = !1, o) : e(n, o, s, a); }), n; } function dt(t, e, n) { var r = B(t) ? Ma : lc, i = arguments.length < 3; return r(t, Pt(e), n, i, ue); } function an(t, e) { return (B(t) ? Kr : ss)(t, (function(n) { if (typeof n != "function") throw new TypeError("Expected a function"); return function() { var r = arguments; switch (r.length) { case 0: return !n.call(this); case 1: return !n.call(this, r[0]); case 2: return !n.call(this, r[0], r[1]); case 3: return !n.call(this, r[0], r[1], r[2]); } return !n.apply(this, r); }; })(Pt(e))); } function hc(t, e) { var n; return ue(t, function(r, i, o) { return !(n = e(r, i, o)); }), !!n; } function as(t, e, n) { return (B(t) ? rs : hc)(t, Pt(e)); } var fc = pe && 1 / Hr(new pe([, -0]))[1] == 1 / 0 ? function(t) { return new pe(t); } : Z; function yr(t) { return t && t.length ? (function(e) { var n = -1, r = Bo, i = e.length, o = !0, s = [], a = s; if (i >= 200) { var c = fc(e); if (c) return Hr(c); o = !1, r = Vr, a = new me(); } else a = s; t: for (; ++n < i; ) { var u = e[n], l = u; if (u = u !== 0 ? u : 0, o && l == l) { for (var h = a.length; h--; ) if (a[h] === l) continue t; s.push(u); } else r(a, l, void 0) || (a !== s && a.push(l), s.push(u)); } return s; })(t) : []; } function Rr(t) { console && console.error && console.error(`Error: ${t}`); } function cs(t) { console && console.warn && console.warn(`Warning: ${t}`); } function us(t) { const e = (/* @__PURE__ */ new Date()).getTime(), n = t(); return { time: (/* @__PURE__ */ new Date()).getTime() - e, value: n }; } function ls(t) { function e() { } e.prototype = t; const n = new e(); function r() { return typeof n.bar; } return r(), r(), t; } function dc(t) { return ut((e = t).LABEL) && e.LABEL !== "" ? t.LABEL : t.name; var e; } class Ut { get definition() { return this._definition; } set definition(e) { this._definition = e; } constructor(e) { this._definition = e; } accept(e) { e.visit(this), w(this.definition, (n) => { n.accept(e); }); } } class mt extends Ut { constructor(e) { super([]), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } set definition(e) { } get definition() { return this.referencedRule !== void 0 ? this.referencedRule.definition : []; } accept(e) { e.visit(this); } } class Ae extends Ut { constructor(e) { super(e.definition), this.orgText = "", pt(this, _t(e, (n) => n !== void 0)); } } class ht extends Ut { constructor(e) { super(e.definition), this.ignoreAmbiguities = !1, pt(this, _t(e, (n) => n !== void 0)); } } class lt extends Ut { constructor(e) { super(e.definition), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } } class Ft extends Ut { constructor(e) { super(e.definition), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } } class Dt extends Ut { constructor(e) { super(e.definition), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } } class J extends Ut { constructor(e) { super(e.definition), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } } class Lt extends Ut { constructor(e) { super(e.definition), this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } } class xt extends Ut { 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, pt(this, _t(e, (n) => n !== void 0)); } } class V { constructor(e) { this.idx = 1, pt(this, _t(e, (n) => n !== void 0)); } accept(e) { e.visit(this); } } function cn(t) { function e(n) { return k(n, cn); } if (t instanceof mt) { const n = { type: "NonTerminal", name: t.nonTerminalName, idx: t.idx }; return ut(t.label) && (n.label = t.label), n; } if (t instanceof ht) return { type: "Alternative", definition: e(t.definition) }; if (t instanceof lt) return { type: "Option", idx: t.idx, definition: e(t.definition) }; if (t instanceof Ft) return { type: "RepetitionMandatory", idx: t.idx, definition: e(t.definition) }; if (t instanceof Dt) return { type: "RepetitionMandatoryWithSeparator", idx: t.idx, separator: cn(new V({ terminalType: t.separator })), definition: e(t.definition) }; if (t instanceof Lt) return { type: "RepetitionWithSeparator", idx: t.idx, separator: cn(new V({ terminalType: t.separator })), definition: e(t.definition) }; if (t instanceof J) return { type: "Repetition", idx: t.idx, definition: e(t.definition) }; if (t instanceof xt) return { type: "Alternation", idx: t.idx, definition: e(t.definition) }; if (t instanceof V) { const n = { type: "Terminal", name: t.terminalType.name, label: dc(t.terminalType), idx: t.idx }; ut(t.label) && (n.terminalLabel = t.label); const r = t.terminalType.PATTERN; return t.terminalType.PATTERN && (n.pattern = Kt(r) ? r.source : r), n; } if (t instanceof Ae) return { type: "Rule", name: t.name, orgText: t.orgText, definition: e(t.definition) }; throw Error("non exhaustive match"); } class Ie { visit(e) { const n = e; switch (n.constructor) { case mt: return this.visitNonTerminal(n); case ht: return this.visitAlternative(n); case lt: return this.visitOption(n); case Ft: return this.visitRepetitionMandatory(n); case Dt: return this.visitRepetitionMandatoryWithSeparator(n); case Lt: return this.visitRepetitionWithSeparator(n); case J: return this.visitRepetition(n); case xt: return this.visitAlternation(n); case V: return this.visitTerminal(n); case Ae: return this.visitRule(n); default: throw Error("non exhaustive match"); } } visitNonTerminal(e) { } visitAlternative(e) { } visitOption(e) { } visitRepetition(e) { } visitRepetitionMandatory(e) { } visitRepetitionMandatoryWithSeparator(e) { } visitRepetitionWithSeparator(e) { } visitAlternation(e) { } visitTerminal(e) { } visitRule(e) { } } function gn(t, e = []) { return t instanceof lt || t instanceof J || t instanceof Lt || (t instanceof xt ? as(t.definition, (n) => gn(n, e)) : !(t instanceof mt && at(e, t)) && t instanceof Ut && (t instanceof mt && e.push(t), vt(t.definition, (n) => gn(n, e)))); } function kt(t) { if (t instanceof mt) return "SUBRULE"; if (t instanceof lt) return "OPTION"; if (t instanceof xt) return "OR"; if (t instanceof Ft) return "AT_LEAST_ONE"; if (t instanceof Dt) return "AT_LEAST_ONE_SEP"; if (t instanceof Lt) return "MANY_SEP"; if (t instanceof J) return "MANY"; if (t instanceof V) return "CONSUME"; throw Error("non exhaustive match"); } class Pn { walk(e, n = []) { w(e.definition, (r, i) => { const o = tt(e.definition, i + 1); if (r instanceof mt) this.walkProdRef(r, o, n); else if (r instanceof V) this.walkTerminal(r, o, n); else if (r instanceof ht) this.walkFlat(r, o, n); else if (r instanceof lt) this.walkOption(r, o, n); else if (r instanceof Ft) this.walkAtLeastOne(r, o, n); else if (r instanceof Dt) this.walkAtLeastOneSep(r, o, n); else if (r instanceof Lt) this.walkManySep(r, o, n); else if (r instanceof J) this.walkMany(r, o, n); else { if (!(r instanceof xt)) throw Error("non exhaustive match"); this.walkOr(r, o, n); } }); } 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 lt({ 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 lt({ 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); w(e.definition, (o) => { const s = new ht({ definition: [o] }); this.walk(s, i); }); } } function Ui(t, e, n) { return [new lt({ definition: [new V({ terminalType: t.separator })].concat(t.definition) })].concat(e, n); } function be(t) { if (t instanceof mt) return be(t.referencedRule); if (t instanceof V) return [t.terminalType]; if ((e = t) instanceof ht || e instanceof lt || e instanceof J || e instanceof Ft || e instanceof Dt || e instanceof Lt || e instanceof V || e instanceof Ae) return (function(n) { let r = []; const i = n.definition; let o, s = 0, a = i.length > s, c = !0; for (; a && c; ) o = i[s], c = gn(o), r = r.concat(be(o)), s += 1, a = i.length > s; return yr(r); })(t); var e; if ((function(n) { return n instanceof xt; })(t)) return (function(n) { return yr(Rt(k(n.definition, (r) => be(r)))); })(t); throw Error("non exhaustive match"); } const hs = "_~IN~_"; class pc extends Pn { 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 = (o = e.referencedRule, s = e.idx, o.name + s + hs + this.topProd.name); var o, s; const a = n.concat(r), c = be(new ht({ definition: a })); this.follows[i] = c; } } function U(t) { return t.charCodeAt(0); } function Vn(t, e) { Array.isArray(t) ? t.forEach(function(n) { e.push(n); }) : e.push(t); } function ve(t, e) { if (t[e] === !0) throw "duplicate flag " + e; t[e], t[e] = !0; } function le(t) { if (t === void 0) throw Error("Internal Error - Should never get here!"); return !0; } function Fi(t) { return t.type === "Character"; } const Tn = []; for (let t = U("0"); t <= U("9"); t++) Tn.push(t); const An = [U("_")].concat(Tn); for (let t = U("a"); t <= U("z"); t++) An.push(t); for (let t = U("A"); t <= U("Z"); t++) An.push(t); const Di = [U(" "), U("\f"), U(` `), U("\r"), U(" "), U("\v"), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U(" "), U("\u2028"), U("\u2029"), U(" "), U(" "), U(" "), U("\uFEFF")], mc = /[0-9a-fA-F]/, Je = /[0-9]/, Ec = /[1-9]/; class vr { visitChildren(e) { for (const n in e) { const r = e[n]; e.hasOwnProperty(n) && (r.type !== void 0 ? this.visit(r) : Array.isArray(r) && r.forEach((i) => { this.visit(i); }, this)); } } visit(e) { switch (e.type) { case "Pattern": this.visitPattern(e); break; case "Flags": this.visitFlags(e); break; case "Disjunction": this.visitDisjunction(e); break; case "Alternative": this.visitAlternative(e); break; case "StartAnchor": this.visitStartAnchor(e); break; case "EndAnchor": this.visitEndAnchor(e); break; case "WordBoundary": this.visitWordBoundary(e); break; case "NonWordBoundary": this.visitNonWordBoundary(e); break; case "Lookahead": this.visitLookahead(e); break; case "NegativeLookahead": this.visitNegativeLookahead(e); break; case "Character": this.visitCharacter(e); break; case "Set": this.visitSet(e); break; case "Group": this.visitGroup(e); break; case "GroupBackReference": this.visitGroupBackReference(e); break; case "Quantifier": this.visitQuantifier(e); } this.visitChildren(e); } visitPattern(e) { } visitFlags(e) { } visitDisjunction(e) { } visitAlternative(e) { } visitStartAnchor(e) { } visitEndAnchor(e) { } visitWordBoundary(e) { } visitNonWordBoundary(e) { } visitLookahead(e) { } visitNegativeLookahead(e) { } visitCharacter(e) { } visitSet(e) { } visitGroup(e) { } visitGroupBackReference(e) { } visitQuantifier(e) { } } let un = {}; const gc = new class { constructor() { this.idx = 0, this.input = "", this.groupIdx = 0; } saveState() { return { idx: this.idx, input: this.input, groupIdx: this.groupIdx }; } restoreState(t) { this.idx = t.idx, this.input = t.input, this.groupIdx = t.groupIdx; } pattern(t) { this.idx = 0, this.input = t, this.groupIdx = 0, this.consumeChar("/"); const e = this.disjunction(); this.consumeChar("/"); const n = { type: "Flags", loc: { begin: this.idx, end: t.length }, global: !1, ignoreCase: !1, multiLine: !1, unicode: !1, sticky: !1 }; for (; this.isRegExpFlag(); ) switch (this.popChar()) { case "g": ve(n, "global"); break; case "i": ve(n, "ignoreCase"); break; case "m": ve(n, "multiLine"); break; case "u": ve(n, "unicode"); break; case "y": ve(n, "sticky"); } if (this.idx !== this.input.length) throw Error("Redundant input: " + this.input.substring(this.idx)); return { type: "Pattern", flags: n, value: e, loc: this.loc(0) }; } disjunction() { const t = [], e = this.idx; for (t.push(this.alternative()); this.peekChar() === "|"; ) this.consumeChar("|"), t.push(this.alternative()); return { type: "Disjunction", value: t, loc: this.loc(e) }; } alternative() { const t = [], e = this.idx; for (; this.isTerm(); ) t.push(this.term()); return { type: "Alternative", value: t, loc: this.loc(e) }; } term() { return this.isAssertion() ? this.assertion() : this.atom(); } assertion() { const t = this.idx; switch (this.popChar()) { case "^": return { type: "StartAnchor", loc: this.loc(t) }; case "$": return { type: "EndAnchor", loc: this.loc(t) }; case "\\": switch (this.popChar()) { case "b": return { type: "WordBoundary", loc: this.loc(t) }; case "B": return { type: "NonWordBoundary", loc: this.loc(t) }; } throw Error("Invalid Assertion Escape"); case "(": let e; switch (this.consumeChar("?"), this.popChar()) { case "=": e = "Lookahead"; break; case "!": e = "NegativeLookahead"; } le(e); const n = this.disjunction(); return this.consumeChar(")"), { type: e, value: n, loc: this.loc(t) }; } return (function() { throw Error("Internal Error - Should never get here!"); })(); } quantifier(t = !1) { let e; const n = this.idx; switch (this.popChar()) { case "*": e = { atLeast: 0, atMost: 1 / 0 }; break; case "+": e = { atLeast: 1, atMost: 1 / 0 }; break; case "?": e = { atLeast: 0, atMost: 1 }; break; case "{": const r = this.integerIncludingZero(); switch (this.popChar()) { case "}": e = { atLeast: r, atMost: r }; break; case ",": let i; this.isDigit() ? (i = this.integerIncludingZero(), e = { atLeast: r, atMost: i }) : e = { atLeast: r, atMost: 1 / 0 }, this.consumeChar("}"); } if (t === !0 && e === void 0) return; le(e); } if (t !== !0 || e !== void 0) return le(e) ? (this.peekChar(0) === "?" ? (this.consumeChar("?"), e.greedy = !1) : e.greedy = !0, e.type = "Quantifier", e.loc = this.loc(n), e) : void 0; } atom() { let t; const e = this.idx; switch (this.peekChar()) { case ".": t = this.dotAll(); break; case "\\": t = this.atomEscape(); break; case "[": t = this.characterClass(); break; case "(": t = this.group(); } if (t === void 0 && this.isPatternCharacter() && (t = this.patternCharacter()), le(t)) return t.loc = this.loc(e), this.isQuantifier() && (t.quantifier = thi