UNPKG

sigma-ui

Version:
684 lines (683 loc) 183 kB
import "./chunk-PZ5AY32C.js"; // ../../node_modules/.pnpm/prettier@3.5.0/node_modules/prettier/plugins/acorn.mjs var di = Object.create; var we = Object.defineProperty; var mi = Object.getOwnPropertyDescriptor; var xi = Object.getOwnPropertyNames; var yi = Object.getPrototypeOf; var gi = Object.prototype.hasOwnProperty; var $e = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports); var vi = (e, t) => { for (var i in t) we(e, i, { get: t[i], enumerable: true }); }; var bi = (e, t, i, s) => { if (t && typeof t == "object" || typeof t == "function") for (let r of xi(t)) !gi.call(e, r) && r !== i && we(e, r, { get: () => t[r], enumerable: !(s = mi(t, r)) || s.enumerable }); return e; }; var et = (e, t, i) => (i = e != null ? di(yi(e)) : {}, bi(t || !e || !e.__esModule ? we(i, "default", { value: e, enumerable: true }) : i, e)); var Gt = $e((Qs, qt) => { qt.exports = {}; }); var Je = $e((Ys, Ge) => { "use strict"; var ns = Gt(), os = /^[\da-fA-F]+$/, us = /^\d+$/, Jt = /* @__PURE__ */ new WeakMap(); function Kt(e) { e = e.Parser.acorn || e; let t = Jt.get(e); if (!t) { let i = e.tokTypes, s = e.TokContext, r = e.TokenType, n = new s("<tag", false), o = new s("</tag", false), u = new s("<tag>...</tag>", true, true), p = { tc_oTag: n, tc_cTag: o, tc_expr: u }, d = { jsxName: new r("jsxName"), jsxText: new r("jsxText", { beforeExpr: true }), jsxTagStart: new r("jsxTagStart", { startsExpr: true }), jsxTagEnd: new r("jsxTagEnd") }; d.jsxTagStart.updateContext = function() { this.context.push(u), this.context.push(n), this.exprAllowed = false; }, d.jsxTagEnd.updateContext = function(f) { let C = this.context.pop(); C === n && f === i.slash || C === o ? (this.context.pop(), this.exprAllowed = this.curContext() === u) : this.exprAllowed = true; }, t = { tokContexts: p, tokTypes: d }, Jt.set(e, t); } return t; } function ne(e) { if (!e) return e; if (e.type === "JSXIdentifier") return e.name; if (e.type === "JSXNamespacedName") return e.namespace.name + ":" + e.name.name; if (e.type === "JSXMemberExpression") return ne(e.object) + "." + ne(e.property); } Ge.exports = function(e) { return e = e || {}, function(t) { return ps({ allowNamespaces: e.allowNamespaces !== false, allowNamespacedObjects: !!e.allowNamespacedObjects }, t); }; }; Object.defineProperty(Ge.exports, "tokTypes", { get: function() { return Kt(void 0).tokTypes; }, configurable: true, enumerable: true }); function ps(e, t) { let i = t.acorn || void 0, s = Kt(i), r = i.tokTypes, n = s.tokTypes, o = i.tokContexts, u = s.tokContexts.tc_oTag, p = s.tokContexts.tc_cTag, d = s.tokContexts.tc_expr, f = i.isNewLine, C = i.isIdentifierStart, B = i.isIdentifierChar; return class extends t { static get acornJsx() { return s; } jsx_readToken() { let h = "", m = this.pos; for (; ; ) { this.pos >= this.input.length && this.raise(this.start, "Unterminated JSX contents"); let x = this.input.charCodeAt(this.pos); switch (x) { case 60: case 123: return this.pos === this.start ? x === 60 && this.exprAllowed ? (++this.pos, this.finishToken(n.jsxTagStart)) : this.getTokenFromCode(x) : (h += this.input.slice(m, this.pos), this.finishToken(n.jsxText, h)); case 38: h += this.input.slice(m, this.pos), h += this.jsx_readEntity(), m = this.pos; break; case 62: case 125: this.raise(this.pos, "Unexpected token `" + this.input[this.pos] + "`. Did you mean `" + (x === 62 ? "&gt;" : "&rbrace;") + '` or `{"' + this.input[this.pos] + '"}`?'); default: f(x) ? (h += this.input.slice(m, this.pos), h += this.jsx_readNewLine(true), m = this.pos) : ++this.pos; } } } jsx_readNewLine(h) { let m = this.input.charCodeAt(this.pos), x; return ++this.pos, m === 13 && this.input.charCodeAt(this.pos) === 10 ? (++this.pos, x = h ? ` ` : `\r `) : x = String.fromCharCode(m), this.options.locations && (++this.curLine, this.lineStart = this.pos), x; } jsx_readString(h) { let m = "", x = ++this.pos; for (; ; ) { this.pos >= this.input.length && this.raise(this.start, "Unterminated string constant"); let g = this.input.charCodeAt(this.pos); if (g === h) break; g === 38 ? (m += this.input.slice(x, this.pos), m += this.jsx_readEntity(), x = this.pos) : f(g) ? (m += this.input.slice(x, this.pos), m += this.jsx_readNewLine(false), x = this.pos) : ++this.pos; } return m += this.input.slice(x, this.pos++), this.finishToken(r.string, m); } jsx_readEntity() { let h = "", m = 0, x, g = this.input[this.pos]; g !== "&" && this.raise(this.pos, "Entity must start with an ampersand"); let w = ++this.pos; for (; this.pos < this.input.length && m++ < 10; ) { if (g = this.input[this.pos++], g === ";") { h[0] === "#" ? h[1] === "x" ? (h = h.substr(2), os.test(h) && (x = String.fromCharCode(parseInt(h, 16)))) : (h = h.substr(1), us.test(h) && (x = String.fromCharCode(parseInt(h, 10)))) : x = ns[h]; break; } h += g; } return x || (this.pos = w, "&"); } jsx_readWord() { let h, m = this.pos; do h = this.input.charCodeAt(++this.pos); while (B(h) || h === 45); return this.finishToken(n.jsxName, this.input.slice(m, this.pos)); } jsx_parseIdentifier() { let h = this.startNode(); return this.type === n.jsxName ? h.name = this.value : this.type.keyword ? h.name = this.type.keyword : this.unexpected(), this.next(), this.finishNode(h, "JSXIdentifier"); } jsx_parseNamespacedName() { let h = this.start, m = this.startLoc, x = this.jsx_parseIdentifier(); if (!e.allowNamespaces || !this.eat(r.colon)) return x; var g = this.startNodeAt(h, m); return g.namespace = x, g.name = this.jsx_parseIdentifier(), this.finishNode(g, "JSXNamespacedName"); } jsx_parseElementName() { if (this.type === n.jsxTagEnd) return ""; let h = this.start, m = this.startLoc, x = this.jsx_parseNamespacedName(); for (this.type === r.dot && x.type === "JSXNamespacedName" && !e.allowNamespacedObjects && this.unexpected(); this.eat(r.dot); ) { let g = this.startNodeAt(h, m); g.object = x, g.property = this.jsx_parseIdentifier(), x = this.finishNode(g, "JSXMemberExpression"); } return x; } jsx_parseAttributeValue() { switch (this.type) { case r.braceL: let h = this.jsx_parseExpressionContainer(); return h.expression.type === "JSXEmptyExpression" && this.raise(h.start, "JSX attributes must only be assigned a non-empty expression"), h; case n.jsxTagStart: case r.string: return this.parseExprAtom(); default: this.raise(this.start, "JSX value should be either an expression or a quoted JSX text"); } } jsx_parseEmptyExpression() { let h = this.startNodeAt(this.lastTokEnd, this.lastTokEndLoc); return this.finishNodeAt(h, "JSXEmptyExpression", this.start, this.startLoc); } jsx_parseExpressionContainer() { let h = this.startNode(); return this.next(), h.expression = this.type === r.braceR ? this.jsx_parseEmptyExpression() : this.parseExpression(), this.expect(r.braceR), this.finishNode(h, "JSXExpressionContainer"); } jsx_parseAttribute() { let h = this.startNode(); return this.eat(r.braceL) ? (this.expect(r.ellipsis), h.argument = this.parseMaybeAssign(), this.expect(r.braceR), this.finishNode(h, "JSXSpreadAttribute")) : (h.name = this.jsx_parseNamespacedName(), h.value = this.eat(r.eq) ? this.jsx_parseAttributeValue() : null, this.finishNode(h, "JSXAttribute")); } jsx_parseOpeningElementAt(h, m) { let x = this.startNodeAt(h, m); x.attributes = []; let g = this.jsx_parseElementName(); for (g && (x.name = g); this.type !== r.slash && this.type !== n.jsxTagEnd; ) x.attributes.push(this.jsx_parseAttribute()); return x.selfClosing = this.eat(r.slash), this.expect(n.jsxTagEnd), this.finishNode(x, g ? "JSXOpeningElement" : "JSXOpeningFragment"); } jsx_parseClosingElementAt(h, m) { let x = this.startNodeAt(h, m), g = this.jsx_parseElementName(); return g && (x.name = g), this.expect(n.jsxTagEnd), this.finishNode(x, g ? "JSXClosingElement" : "JSXClosingFragment"); } jsx_parseElementAt(h, m) { let x = this.startNodeAt(h, m), g = [], w = this.jsx_parseOpeningElementAt(h, m), he = null; if (!w.selfClosing) { e: for (; ; ) switch (this.type) { case n.jsxTagStart: if (h = this.start, m = this.startLoc, this.next(), this.eat(r.slash)) { he = this.jsx_parseClosingElementAt(h, m); break e; } g.push(this.jsx_parseElementAt(h, m)); break; case n.jsxText: g.push(this.parseExprAtom()); break; case r.braceL: g.push(this.jsx_parseExpressionContainer()); break; default: this.unexpected(); } ne(he.name) !== ne(w.name) && this.raise(he.start, "Expected corresponding JSX closing tag for <" + ne(w.name) + ">"); } let Ee = w.name ? "Element" : "Fragment"; return x["opening" + Ee] = w, x["closing" + Ee] = he, x.children = g, this.type === r.relational && this.value === "<" && this.raise(this.start, "Adjacent JSX elements must be wrapped in an enclosing tag"), this.finishNode(x, "JSX" + Ee); } jsx_parseText() { let h = this.parseLiteral(this.value); return h.type = "JSXText", h; } jsx_parseElement() { let h = this.start, m = this.startLoc; return this.next(), this.jsx_parseElementAt(h, m); } parseExprAtom(h) { return this.type === n.jsxText ? this.jsx_parseText() : this.type === n.jsxTagStart ? this.jsx_parseElement() : super.parseExprAtom(h); } readToken(h) { let m = this.curContext(); if (m === d) return this.jsx_readToken(); if (m === u || m === p) { if (C(h)) return this.jsx_readWord(); if (h == 62) return ++this.pos, this.finishToken(n.jsxTagEnd); if ((h === 34 || h === 39) && m == u) return this.jsx_readString(h); } return h === 60 && this.exprAllowed && this.input.charCodeAt(this.pos + 1) !== 33 ? (++this.pos, this.finishToken(n.jsxTagStart)) : super.readToken(h); } updateContext(h) { if (this.type == r.braceL) { var m = this.curContext(); m == u ? this.context.push(o.b_expr) : m == d ? this.context.push(o.b_tmpl) : super.updateContext(h), this.exprAllowed = true; } else if (this.type === r.slash && h === n.jsxTagStart) this.context.length -= 2, this.context.push(p), this.exprAllowed = false; else return super.updateContext(h); } }; } }); var Ze = {}; vi(Ze, { parsers: () => zs }); var Si = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 7, 9, 32, 4, 318, 1, 80, 3, 71, 10, 50, 3, 123, 2, 54, 14, 32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 68, 8, 2, 0, 3, 0, 2, 3, 2, 4, 2, 0, 15, 1, 83, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 7, 19, 58, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 343, 9, 54, 7, 2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 10, 5350, 0, 7, 14, 11465, 27, 2343, 9, 87, 9, 39, 4, 60, 6, 26, 9, 535, 9, 470, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4178, 9, 519, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3, 149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499, 13, 245, 1, 2, 9, 726, 6, 110, 6, 6, 9, 4759, 9, 787719, 239]; var nt = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14, 29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 4, 51, 13, 310, 10, 21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16, 3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 39, 27, 10, 22, 251, 41, 7, 1, 17, 2, 60, 28, 11, 0, 9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2, 24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 31, 9, 2, 0, 3, 0, 2, 37, 2, 0, 26, 0, 2, 0, 45, 52, 19, 3, 21, 2, 31, 47, 21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95, 7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 200, 32, 32, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5, 2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 26, 3994, 6, 582, 6842, 29, 1763, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 433, 44, 212, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 42, 9, 8936, 3, 2, 6, 2, 1, 2, 290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2, 3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30, 7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 229, 29, 3, 0, 496, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0, 3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2, 0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 4191]; var Ci = "\u200C\u200D\xB7\u0300-\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0897-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\uFF65"; var ot = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C8A\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CD\uA7D0\uA7D1\uA7D3\uA7D5-\uA7DC\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC"; var Ae = { 3: "abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile", 5: "class enum extends super const export import", 6: "enum", strict: "implements interface let package private protected public static yield", strictBind: "eval arguments" }; var Pe = "break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this"; var _i = { 5: Pe, "5module": Pe + " export import", 6: Pe + " const class extends export import super" }; var Ti = /^in(stanceof)?$/; var ki = new RegExp("[" + ot + "]"); var Ei = new RegExp("[" + ot + Ci + "]"); function Ne(e, t) { for (var i = 65536, s = 0; s < t.length; s += 2) { if (i += t[s], i > e) return false; if (i += t[s + 1], i >= e) return true; } return false; } function M(e, t) { return e < 65 ? e === 36 : e < 91 ? true : e < 97 ? e === 95 : e < 123 ? true : e <= 65535 ? e >= 170 && ki.test(String.fromCharCode(e)) : t === false ? false : Ne(e, nt); } function H(e, t) { return e < 48 ? e === 36 : e < 58 ? true : e < 65 ? false : e < 91 ? true : e < 97 ? e === 95 : e < 123 ? true : e <= 65535 ? e >= 170 && Ei.test(String.fromCharCode(e)) : t === false ? false : Ne(e, nt) || Ne(e, Si); } var S = function(t, i) { i === void 0 && (i = {}), this.label = t, this.keyword = i.keyword, this.beforeExpr = !!i.beforeExpr, this.startsExpr = !!i.startsExpr, this.isLoop = !!i.isLoop, this.isAssign = !!i.isAssign, this.prefix = !!i.prefix, this.postfix = !!i.postfix, this.binop = i.binop || null, this.updateContext = null; }; function P(e, t) { return new S(e, { beforeExpr: true, binop: t }); } var I = { beforeExpr: true }; var A = { startsExpr: true }; var Oe = {}; function b(e, t) { return t === void 0 && (t = {}), t.keyword = e, Oe[e] = new S(e, t); } var a = { num: new S("num", A), regexp: new S("regexp", A), string: new S("string", A), name: new S("name", A), privateId: new S("privateId", A), eof: new S("eof"), bracketL: new S("[", { beforeExpr: true, startsExpr: true }), bracketR: new S("]"), braceL: new S("{", { beforeExpr: true, startsExpr: true }), braceR: new S("}"), parenL: new S("(", { beforeExpr: true, startsExpr: true }), parenR: new S(")"), comma: new S(",", I), semi: new S(";", I), colon: new S(":", I), dot: new S("."), question: new S("?", I), questionDot: new S("?."), arrow: new S("=>", I), template: new S("template"), invalidTemplate: new S("invalidTemplate"), ellipsis: new S("...", I), backQuote: new S("`", A), dollarBraceL: new S("${", { beforeExpr: true, startsExpr: true }), eq: new S("=", { beforeExpr: true, isAssign: true }), assign: new S("_=", { beforeExpr: true, isAssign: true }), incDec: new S("++/--", { prefix: true, postfix: true, startsExpr: true }), prefix: new S("!/~", { beforeExpr: true, prefix: true, startsExpr: true }), logicalOR: P("||", 1), logicalAND: P("&&", 2), bitwiseOR: P("|", 3), bitwiseXOR: P("^", 4), bitwiseAND: P("&", 5), equality: P("==/!=/===/!==", 6), relational: P("</>/<=/>=", 7), bitShift: P("<</>>/>>>", 8), plusMin: new S("+/-", { beforeExpr: true, binop: 9, prefix: true, startsExpr: true }), modulo: P("%", 10), star: P("*", 10), slash: P("/", 10), starstar: new S("**", { beforeExpr: true }), coalesce: P("??", 1), _break: b("break"), _case: b("case", I), _catch: b("catch"), _continue: b("continue"), _debugger: b("debugger"), _default: b("default", I), _do: b("do", { isLoop: true, beforeExpr: true }), _else: b("else", I), _finally: b("finally"), _for: b("for", { isLoop: true }), _function: b("function", A), _if: b("if"), _return: b("return", I), _switch: b("switch"), _throw: b("throw", I), _try: b("try"), _var: b("var"), _const: b("const"), _while: b("while", { isLoop: true }), _with: b("with"), _new: b("new", { beforeExpr: true, startsExpr: true }), _this: b("this", A), _super: b("super", A), _class: b("class", A), _extends: b("extends", I), _export: b("export"), _import: b("import", A), _null: b("null", A), _true: b("true", A), _false: b("false", A), _in: b("in", { beforeExpr: true, binop: 7 }), _instanceof: b("instanceof", { beforeExpr: true, binop: 7 }), _typeof: b("typeof", { beforeExpr: true, prefix: true, startsExpr: true }), _void: b("void", { beforeExpr: true, prefix: true, startsExpr: true }), _delete: b("delete", { beforeExpr: true, prefix: true, startsExpr: true }) }; var L = /\r\n?|\n|\u2028|\u2029/; var wi = new RegExp(L.source, "g"); function Q(e) { return e === 10 || e === 13 || e === 8232 || e === 8233; } function ut(e, t, i) { i === void 0 && (i = e.length); for (var s = t; s < i; s++) { var r = e.charCodeAt(s); if (Q(r)) return s < i - 1 && r === 13 && e.charCodeAt(s + 1) === 10 ? s + 2 : s + 1; } return -1; } var pt = /[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/; var N = /(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g; var ht = Object.prototype; var Ai = ht.hasOwnProperty; var Pi = ht.toString; var Y = Object.hasOwn || function(e, t) { return Ai.call(e, t); }; var tt = Array.isArray || function(e) { return Pi.call(e) === "[object Array]"; }; var it = /* @__PURE__ */ Object.create(null); function K(e) { return it[e] || (it[e] = new RegExp("^(?:" + e.replace(/ /g, "|") + ")$")); } function U(e) { return e <= 65535 ? String.fromCharCode(e) : (e -= 65536, String.fromCharCode((e >> 10) + 55296, (e & 1023) + 56320)); } var Ii = /(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/; var ie = function(t, i) { this.line = t, this.column = i; }; ie.prototype.offset = function(t) { return new ie(this.line, this.column + t); }; var xe = function(t, i, s) { this.start = i, this.end = s, t.sourceFile !== null && (this.source = t.sourceFile); }; function ct(e, t) { for (var i = 1, s = 0; ; ) { var r = ut(e, s, t); if (r < 0) return new ie(i, t - s); ++i, s = r; } } var Ve = { ecmaVersion: null, sourceType: "script", onInsertedSemicolon: null, onTrailingComma: null, allowReserved: null, allowReturnOutsideFunction: false, allowImportExportEverywhere: false, allowAwaitOutsideFunction: null, allowSuperOutsideMethod: null, allowHashBang: false, checkPrivateFields: true, locations: false, onToken: null, onComment: null, ranges: false, program: null, sourceFile: null, directSourceFile: null, preserveParens: false }; var st = false; function Ni(e) { var t = {}; for (var i in Ve) t[i] = e && Y(e, i) ? e[i] : Ve[i]; if (t.ecmaVersion === "latest" ? t.ecmaVersion = 1e8 : t.ecmaVersion == null ? (!st && typeof console == "object" && console.warn && (st = true, console.warn(`Since Acorn 8.0.0, options.ecmaVersion is required. Defaulting to 2020, but this will stop working in the future.`)), t.ecmaVersion = 11) : t.ecmaVersion >= 2015 && (t.ecmaVersion -= 2009), t.allowReserved == null && (t.allowReserved = t.ecmaVersion < 5), (!e || e.allowHashBang == null) && (t.allowHashBang = t.ecmaVersion >= 14), tt(t.onToken)) { var s = t.onToken; t.onToken = function(r) { return s.push(r); }; } return tt(t.onComment) && (t.onComment = Vi(t, t.onComment)), t; } function Vi(e, t) { return function(i, s, r, n, o, u) { var p = { type: i ? "Block" : "Line", value: s, start: r, end: n }; e.locations && (p.loc = new xe(this, o, u)), e.ranges && (p.range = [r, n]), t.push(p); }; } var se = 1; var Z = 2; var Be = 4; var lt = 8; var ft = 16; var dt = 32; var De = 64; var mt = 128; var re = 256; var Fe = se | Z | re; function je(e, t) { return Z | (e ? Be : 0) | (t ? lt : 0); } var le = 0; var Me = 1; var G = 2; var xt = 3; var yt = 4; var gt = 5; var T = function(t, i, s) { this.options = t = Ni(t), this.sourceFile = t.sourceFile, this.keywords = K(_i[t.ecmaVersion >= 6 ? 6 : t.sourceType === "module" ? "5module" : 5]); var r = ""; t.allowReserved !== true && (r = Ae[t.ecmaVersion >= 6 ? 6 : t.ecmaVersion === 5 ? 5 : 3], t.sourceType === "module" && (r += " await")), this.reservedWords = K(r); var n = (r ? r + " " : "") + Ae.strict; this.reservedWordsStrict = K(n), this.reservedWordsStrictBind = K(n + " " + Ae.strictBind), this.input = String(i), this.containsEsc = false, s ? (this.pos = s, this.lineStart = this.input.lastIndexOf(` `, s - 1) + 1, this.curLine = this.input.slice(0, this.lineStart).split(L).length) : (this.pos = this.lineStart = 0, this.curLine = 1), this.type = a.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc = this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = true, this.inModule = t.sourceType === "module", this.strict = this.inModule || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.potentialArrowInForAwait = false, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = /* @__PURE__ */ Object.create(null), this.pos === 0 && t.allowHashBang && this.input.slice(0, 2) === "#!" && this.skipLineComment(2), this.scopeStack = [], this.enterScope(se), this.regexpState = null, this.privateNameStack = []; }; var F = { inFunction: { configurable: true }, inGenerator: { configurable: true }, inAsync: { configurable: true }, canAwait: { configurable: true }, allowSuper: { configurable: true }, allowDirectSuper: { configurable: true }, treatFunctionsAsVar: { configurable: true }, allowNewDotTarget: { configurable: true }, inClassStaticBlock: { configurable: true } }; T.prototype.parse = function() { var t = this.options.program || this.startNode(); return this.nextToken(), this.parseTopLevel(t); }; F.inFunction.get = function() { return (this.currentVarScope().flags & Z) > 0; }; F.inGenerator.get = function() { return (this.currentVarScope().flags & lt) > 0 && !this.currentVarScope().inClassFieldInit; }; F.inAsync.get = function() { return (this.currentVarScope().flags & Be) > 0 && !this.currentVarScope().inClassFieldInit; }; F.canAwait.get = function() { for (var e = this.scopeStack.length - 1; e >= 0; e--) { var t = this.scopeStack[e]; if (t.inClassFieldInit || t.flags & re) return false; if (t.flags & Z) return (t.flags & Be) > 0; } return this.inModule && this.options.ecmaVersion >= 13 || this.options.allowAwaitOutsideFunction; }; F.allowSuper.get = function() { var e = this.currentThisScope(), t = e.flags, i = e.inClassFieldInit; return (t & De) > 0 || i || this.options.allowSuperOutsideMethod; }; F.allowDirectSuper.get = function() { return (this.currentThisScope().flags & mt) > 0; }; F.treatFunctionsAsVar.get = function() { return this.treatFunctionsAsVarInScope(this.currentScope()); }; F.allowNewDotTarget.get = function() { var e = this.currentThisScope(), t = e.flags, i = e.inClassFieldInit; return (t & (Z | re)) > 0 || i; }; F.inClassStaticBlock.get = function() { return (this.currentVarScope().flags & re) > 0; }; T.extend = function() { for (var t = [], i = arguments.length; i--; ) t[i] = arguments[i]; for (var s = this, r = 0; r < t.length; r++) s = t[r](s); return s; }; T.parse = function(t, i) { return new this(i, t).parse(); }; T.parseExpressionAt = function(t, i, s) { var r = new this(s, t, i); return r.nextToken(), r.parseExpression(); }; T.tokenizer = function(t, i) { return new this(i, t); }; Object.defineProperties(T.prototype, F); var k = T.prototype; var Li = /^(?:'((?:\\[^]|[^'\\])*?)'|"((?:\\[^]|[^"\\])*?)")/; k.strictDirective = function(e) { if (this.options.ecmaVersion < 5) return false; for (; ; ) { N.lastIndex = e, e += N.exec(this.input)[0].length; var t = Li.exec(this.input.slice(e)); if (!t) return false; if ((t[1] || t[2]) === "use strict") { N.lastIndex = e + t[0].length; var i = N.exec(this.input), s = i.index + i[0].length, r = this.input.charAt(s); return r === ";" || r === "}" || L.test(i[0]) && !(/[(`.[+\-/*%<>=,?^&]/.test(r) || r === "!" && this.input.charAt(s + 1) === "="); } e += t[0].length, N.lastIndex = e, e += N.exec(this.input)[0].length, this.input[e] === ";" && e++; } }; k.eat = function(e) { return this.type === e ? (this.next(), true) : false; }; k.isContextual = function(e) { return this.type === a.name && this.value === e && !this.containsEsc; }; k.eatContextual = function(e) { return this.isContextual(e) ? (this.next(), true) : false; }; k.expectContextual = function(e) { this.eatContextual(e) || this.unexpected(); }; k.canInsertSemicolon = function() { return this.type === a.eof || this.type === a.braceR || L.test(this.input.slice(this.lastTokEnd, this.start)); }; k.insertSemicolon = function() { if (this.canInsertSemicolon()) return this.options.onInsertedSemicolon && this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc), true; }; k.semicolon = function() { !this.eat(a.semi) && !this.insertSemicolon() && this.unexpected(); }; k.afterTrailingComma = function(e, t) { if (this.type === e) return this.options.onTrailingComma && this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc), t || this.next(), true; }; k.expect = function(e) { this.eat(e) || this.unexpected(); }; k.unexpected = function(e) { this.raise(e ?? this.start, "Unexpected token"); }; var ye = function() { this.shorthandAssign = this.trailingComma = this.parenthesizedAssign = this.parenthesizedBind = this.doubleProto = -1; }; k.checkPatternErrors = function(e, t) { if (e) { e.trailingComma > -1 && this.raiseRecoverable(e.trailingComma, "Comma is not permitted after the rest element"); var i = t ? e.parenthesizedAssign : e.parenthesizedBind; i > -1 && this.raiseRecoverable(i, t ? "Assigning to rvalue" : "Parenthesized pattern"); } }; k.checkExpressionErrors = function(e, t) { if (!e) return false; var i = e.shorthandAssign, s = e.doubleProto; if (!t) return i >= 0 || s >= 0; i >= 0 && this.raise(i, "Shorthand property assignments are valid only in destructuring patterns"), s >= 0 && this.raiseRecoverable(s, "Redefinition of __proto__ property"); }; k.checkYieldAwaitInDefaultParams = function() { this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos) && this.raise(this.yieldPos, "Yield expression cannot be a default value"), this.awaitPos && this.raise(this.awaitPos, "Await expression cannot be a default value"); }; k.isSimpleAssignTarget = function(e) { return e.type === "ParenthesizedExpression" ? this.isSimpleAssignTarget(e.expression) : e.type === "Identifier" || e.type === "MemberExpression"; }; var l = T.prototype; l.parseTopLevel = function(e) { var t = /* @__PURE__ */ Object.create(null); for (e.body || (e.body = []); this.type !== a.eof; ) { var i = this.parseStatement(null, true, t); e.body.push(i); } if (this.inModule) for (var s = 0, r = Object.keys(this.undefinedExports); s < r.length; s += 1) { var n = r[s]; this.raiseRecoverable(this.undefinedExports[n].start, "Export '" + n + "' is not defined"); } return this.adaptDirectivePrologue(e.body), this.next(), e.sourceType = this.options.sourceType, this.finishNode(e, "Program"); }; var Ue = { kind: "loop" }; var Ri = { kind: "switch" }; l.isLet = function(e) { if (this.options.ecmaVersion < 6 || !this.isContextual("let")) return false; N.lastIndex = this.pos; var t = N.exec(this.input), i = this.pos + t[0].length, s = this.input.charCodeAt(i); if (s === 91 || s === 92) return true; if (e) return false; if (s === 123 || s > 55295 && s < 56320) return true; if (M(s, true)) { for (var r = i + 1; H(s = this.input.charCodeAt(r), true); ) ++r; if (s === 92 || s > 55295 && s < 56320) return true; var n = this.input.slice(i, r); if (!Ti.test(n)) return true; } return false; }; l.isAsyncFunction = function() { if (this.options.ecmaVersion < 8 || !this.isContextual("async")) return false; N.lastIndex = this.pos; var e = N.exec(this.input), t = this.pos + e[0].length, i; return !L.test(this.input.slice(this.pos, t)) && this.input.slice(t, t + 8) === "function" && (t + 8 === this.input.length || !(H(i = this.input.charCodeAt(t + 8)) || i > 55295 && i < 56320)); }; l.parseStatement = function(e, t, i) { var s = this.type, r = this.startNode(), n; switch (this.isLet(e) && (s = a._var, n = "let"), s) { case a._break: case a._continue: return this.parseBreakContinueStatement(r, s.keyword); case a._debugger: return this.parseDebuggerStatement(r); case a._do: return this.parseDoStatement(r); case a._for: return this.parseForStatement(r); case a._function: return e && (this.strict || e !== "if" && e !== "label") && this.options.ecmaVersion >= 6 && this.unexpected(), this.parseFunctionStatement(r, false, !e); case a._class: return e && this.unexpected(), this.parseClass(r, true); case a._if: return this.parseIfStatement(r); case a._return: return this.parseReturnStatement(r); case a._switch: return this.parseSwitchStatement(r); case a._throw: return this.parseThrowStatement(r); case a._try: return this.parseTryStatement(r); case a._const: case a._var: return n = n || this.value, e && n !== "var" && this.unexpected(), this.parseVarStatement(r, n); case a._while: return this.parseWhileStatement(r); case a._with: return this.parseWithStatement(r); case a.braceL: return this.parseBlock(true, r); case a.semi: return this.parseEmptyStatement(r); case a._export: case a._import: if (this.options.ecmaVersion > 10 && s === a._import) { N.lastIndex = this.pos; var o = N.exec(this.input), u = this.pos + o[0].length, p = this.input.charCodeAt(u); if (p === 40 || p === 46) return this.parseExpressionStatement(r, this.parseExpression()); } return this.options.allowImportExportEverywhere || (t || this.raise(this.start, "'import' and 'export' may only appear at the top level"), this.inModule || this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'")), s === a._import ? this.parseImport(r) : this.parseExport(r, i); default: if (this.isAsyncFunction()) return e && this.unexpected(), this.next(), this.parseFunctionStatement(r, true, !e); var d = this.value, f = this.parseExpression(); return s === a.name && f.type === "Identifier" && this.eat(a.colon) ? this.parseLabeledStatement(r, d, f, e) : this.parseExpressionStatement(r, f); } }; l.parseBreakContinueStatement = function(e, t) { var i = t === "break"; this.next(), this.eat(a.semi) || this.insertSemicolon() ? e.label = null : this.type !== a.name ? this.unexpected() : (e.label = this.parseIdent(), this.semicolon()); for (var s = 0; s < this.labels.length; ++s) { var r = this.labels[s]; if ((e.label == null || r.name === e.label.name) && (r.kind != null && (i || r.kind === "loop") || e.label && i)) break; } return s === this.labels.length && this.raise(e.start, "Unsyntactic " + t), this.finishNode(e, i ? "BreakStatement" : "ContinueStatement"); }; l.parseDebuggerStatement = function(e) { return this.next(), this.semicolon(), this.finishNode(e, "DebuggerStatement"); }; l.parseDoStatement = function(e) { return this.next(), this.labels.push(Ue), e.body = this.parseStatement("do"), this.labels.pop(), this.expect(a._while), e.test = this.parseParenExpression(), this.options.ecmaVersion >= 6 ? this.eat(a.semi) : this.semicolon(), this.finishNode(e, "DoWhileStatement"); }; l.parseForStatement = function(e) { this.next(); var t = this.options.ecmaVersion >= 9 && this.canAwait && this.eatContextual("await") ? this.lastTokStart : -1; if (this.labels.push(Ue), this.enterScope(0), this.expect(a.parenL), this.type === a.semi) return t > -1 && this.unexpected(t), this.parseFor(e, null); var i = this.isLet(); if (this.type === a._var || this.type === a._const || i) { var s = this.startNode(), r = i ? "let" : this.value; return this.next(), this.parseVar(s, true, r), this.finishNode(s, "VariableDeclaration"), (this.type === a._in || this.options.ecmaVersion >= 6 && this.isContextual("of")) && s.declarations.length === 1 ? (this.options.ecmaVersion >= 9 && (this.type === a._in ? t > -1 && this.unexpected(t) : e.await = t > -1), this.parseForIn(e, s)) : (t > -1 && this.unexpected(t), this.parseFor(e, s)); } var n = this.isContextual("let"), o = false, u = this.containsEsc, p = new ye(), d = this.start, f = t > -1 ? this.parseExprSubscripts(p, "await") : this.parseExpression(true, p); return this.type === a._in || (o = this.options.ecmaVersion >= 6 && this.isContextual("of")) ? (t > -1 ? (this.type === a._in && this.unexpected(t), e.await = true) : o && this.options.ecmaVersion >= 8 && (f.start === d && !u && f.type === "Identifier" && f.name === "async" ? this.unexpected() : this.options.ecmaVersion >= 9 && (e.await = false)), n && o && this.raise(f.start, "The left-hand side of a for-of loop may not start with 'let'."), this.toAssignable(f, false, p), this.checkLValPattern(f), this.parseForIn(e, f)) : (this.checkExpressionErrors(p, true), t > -1 && this.unexpected(t), this.parseFor(e, f)); }; l.parseFunctionStatement = function(e, t, i) { return this.next(), this.parseFunction(e, te | (i ? 0 : Le), false, t); }; l.parseIfStatement = function(e) { return this.next(), e.test = this.parseParenExpression(), e.consequent = this.parseStatement("if"), e.alternate = this.eat(a._else) ? this.parseStatement("if") : null, this.finishNode(e, "IfStatement"); }; l.parseReturnStatement = function(e) { return !this.inFunction && !this.options.allowReturnOutsideFunction && this.raise(this.start, "'return' outside of function"), this.next(), this.eat(a.semi) || this.insertSemicolon() ? e.argument = null : (e.argument = this.parseExpression(), this.semicolon()), this.finishNode(e, "ReturnStatement"); }; l.parseSwitchStatement = function(e) { this.next(), e.discriminant = this.parseParenExpression(), e.cases = [], this.expect(a.braceL), this.labels.push(Ri), this.enterScope(0); for (var t, i = false; this.type !== a.braceR; ) if (this.type === a._case || this.type === a._default) { var s = this.type === a._case; t && this.finishNode(t, "SwitchCase"), e.cases.push(t = this.startNode()), t.consequent = [], this.next(), s ? t.test = this.parseExpression() : (i && this.raiseRecoverable(this.lastTokStart, "Multiple default clauses"), i = true, t.test = null), this.expect(a.colon); } else t || this.unexpected(), t.consequent.push(this.parseStatement(null)); return this.exitScope(), t && this.finishNode(t, "SwitchCase"), this.next(), this.labels.pop(), this.finishNode(e, "SwitchStatement"); }; l.parseThrowStatement = function(e) { return this.next(), L.test(this.input.slice(this.lastTokEnd, this.start)) && this.raise(this.lastTokEnd, "Illegal newline after throw"), e.argument = this.parseExpression(), this.semicolon(), this.finishNode(e, "ThrowStatement"); }; var Oi = []; l.parseCatchClauseParam = function() { var e = this.parseBindingAtom(), t = e.type === "Identifier"; return this.enterScope(t ? dt : 0), this.checkLValPattern(e, t ? yt : G), this.expect(a.parenR), e; }; l.parseTryStatement = function(e) { if (this.next(), e.block = this.parseBlock(), e.handler = null, this.type === a._catch) { var t = this.startNode(); this.next(), this.eat(a.parenL) ? t.param = this.parseCatchClauseParam() : (this.options.ecmaVersion < 10 && this.unexpected(), t.param = null, this.enterScope(0)), t.body = this.parseBlock(false), this.exitScope(), e.handler = this.finishNode(t, "CatchClause"); } return e.finalizer = this.eat(a._finally) ? this.parseBlock() : null, !e.handler && !e.finalizer && this.raise(e.start, "Missing catch or finally clause"), this.finishNode(e, "TryStatement"); }; l.parseVarStatement = function(e, t, i) { return this.next(), this.parseVar(e, false, t, i), this.semicolon(), this.finishNode(e, "VariableDeclaration"); }; l.parseWhileStatement = function(e) { return this.next(), e.test = this.parseParenExpression(), this.labels.push(Ue), e.body = this.parseStatement("while"), this.labels.pop(), this.finishNode(e, "WhileStatement"); }; l.parseWithStatement = function(e) { return this.strict && this.raise(this.start, "'with' in strict mode"), this.next(), e.object = this.parseParenExpression(), e.body = this.parseStatement("with"), this.finishNode(e, "WithStatement"); }; l.parseEmptyStatement = function(e) { return this.next(), this.finishNode(e, "EmptyStatement"); }; l.parseLabeledStatement = function(e, t, i, s) { for (var r = 0, n = this.labels; r < n.length; r += 1) { var o = n[r]; o.name === t && this.raise(i.start, "Label '" + t + "' is already declared"); } for (var u = this.type.isLoop ? "loop" : this.type === a._switch ? "switch" : null, p = this.labels.length - 1; p >= 0; p--) { var d = this.labels[p]; if (d.statementStart === e.start) d.statementStart = this.start, d.kind = u; else break; } return this.labels.push({ name: t, kind: u, statementStart: this.start }), e.body = this.parseStatement(s ? s.indexOf("label") === -1 ? s + "label" : s : "label"), this.labels.pop(), e.label = i, this.finishNode(e, "LabeledStatement"); }; l.parseExpressionStatement = function(e, t) { return e.expression = t, this.semicolon(), this.finishNode(e, "ExpressionStatement"); }; l.parseBlock = function(e, t, i) { for (e === void 0 && (e = true), t === void 0 && (t = this.startNode()), t.body = [], this.expect(a.braceL), e && this.enterScope(0); this.type !== a.braceR; ) { var s = this.parseStatement(null); t.body.push(s); } return i && (this.strict = false), this.next(), e && this.exitScope(), this.finishNode(t, "BlockStatement"); }; l.parseFor = function(e, t) { return e.init = t, this.expect(a.semi), e.test = this.type === a.semi ? null : this.parseExpression(), this.expect(a.semi), e.update = this.type === a.parenR ? null : this.parseExpression(), this.expect(a.parenR), e.body = this.parseStatement("for"), this.exitScope(), this.labels.pop(), this.finishNode(e, "ForStatement"); }; l.parseForIn = function(e, t) { var i = this.type === a._in; return this.next(), t.type === "VariableDeclaration" && t.declarations[0].init != null && (!i || this.options.ecmaVersion < 8 || this.strict || t.kind !== "var" || t.declarations[0].id.type !== "Identifier") && this.raise(t.start, (i ? "for-in" : "for-of") + " loop variable declaration may not have an initializer"), e.left = t, e.right = i ? this.parseExpression() : this.parseMaybeAssign(), this.expect(a.parenR), e.body = this.parseStatement("for"), this.exitScope(), this.labels.pop(), this.finishNode(e, i ? "ForInStatement" : "ForOfStatement"); }; l.parseVar = function(e, t, i, s) { for (e.declarations = [], e.kind = i; ; ) { var r = this.startNode(); if (this.parseVarId(r, i), this.eat(a.eq) ? r.init = this.parseMaybeAssign(t) : !s && i === "const" && !(this.type === a._in || this.options.ecmaVersion >= 6 && this.isContextual("of")) ? this.unexpected() : !s && r.id.type !== "Identifier" && !(t && (this.type === a._in || this.isContextual("of"))) ? this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value") : r.init = null, e.declarations.push(this.finishNode(r, "VariableDeclarator")), !this.eat(a.comma)) break; } return e; }; l.parseVarId = function(e, t) { e.id = this.parseBindingAtom(), this.checkLValPattern(e.id, t === "var" ? Me : G, false); }; var te = 1; var Le = 2; var vt = 4; l.parseFunction = function(e, t, i, s, r) { this.initFunction(e), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !s) && (this.type === a.star && t & Le && this.unexpected(), e.generator = this.eat(a.star)), this.options.ecmaVersion >= 8 && (e.async = !!s), t & te && (e.id = t & vt && this.type !== a.name ? null : this.parseIdent(), e.id && !(t & Le) && this.checkLValSimple(e.id, this.strict || e.generator || e.async ? this.treatFunctionsAsVar ? Me : G : xt)); var n = this.yieldPos, o = this.awaitPos, u = this.awaitIdentPos; return this.yieldPos = 0, t