diff --git a/options.html b/options.html index 63b1679..6d9f9ed 100644 --- a/options.html +++ b/options.html @@ -141,8 +141,9 @@ - - + + +
diff --git a/tools/babel_asttool.js b/tools/babel_asttool.js index 24959a5..4b46d84 100644 --- a/tools/babel_asttool.js +++ b/tools/babel_asttool.js @@ -1,32266 +1,4 @@ -!function() { - return function e(t, n, r) { - function i(a, o) { - var l, c, p; - if (!n[a]) { - if (!t[a]) { - l = "function" == typeof require && require; - if (!o && l) return l(a, !0); - if (s) return s(a, !0); - throw (c = new Error("Cannot find module '" + a + "'")).code = "MODULE_NOT_FOUND", - c; - } - p = n[a] = { - exports: {} - }; - t[a][0].call(p.exports, function(e) { - return i(t[a][1][e] || e); - }, p, p.exports, e, t, n, r); - } - return n[a].exports; - } - for (var s = "function" == typeof require && require, a = 0; a < r.length; a++) i(r[a]); - return i; - }; -}()({ - 1: [ function(e, t, n) { - (function(t) { - (function() { - t.parser = e("@babel/parser"); - t.traverse = e("@babel/traverse").default; - t.t = e("@babel/types"); - t.generator = e("@babel/generator").default; - }).call(this); - }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}); - }, { - "@babel/generator": 16, - "@babel/parser": 30, - "@babel/traverse": 42, - "@babel/types": 108 - } ], - 2: [ function(e, t, n) { - (function(t) { - (function() { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.codeFrameColumns = a; - n.default = function(e, n, r, s = {}) { - if (!i) { - i = !0; - const e = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`."; - if (t.emitWarning) t.emitWarning(e, "DeprecationWarning"); else { - const t = new Error(e); - t.name = "DeprecationWarning"; - console.warn(new Error(e)); - } - } - r = Math.max(r, 0); - return a(e, { - start: { - column: r, - line: n - } - }, s); - }; - var r = e("@babel/highlight"); - let i = !1; - const s = /\r\n|[\n\r\u2028\u2029]/; - function a(e, t, n = {}) { - const i = (n.highlightCode || n.forceColor) && (0, r.shouldHighlight)(n); - const a = (0, r.getChalk)(n); - const o = function(e) { - return { - gutter: e.grey, - marker: e.red.bold, - message: e.red.bold - }; - }(a); - const l = (e, t) => i ? e(t) : t; - const c = e.split(s); - const {start: p, end: u, markerLines: d} = function(e, t, n) { - const r = Object.assign({ - column: 0, - line: -1 - }, e.start); - const i = Object.assign({}, r, e.end); - const {linesAbove: s = 2, linesBelow: a = 3} = n || {}; - const o = r.line; - const l = r.column; - const c = i.line; - const p = i.column; - let u = Math.max(o - (s + 1), 0); - let d = Math.min(t.length, c + a); - -1 === o && (u = 0); - -1 === c && (d = t.length); - const h = c - o; - const f = {}; - if (h) for (let e = 0; e <= h; e++) { - const n = e + o; - if (l) if (0 === e) { - const e = t[n - 1].length; - f[n] = [ l, e - l + 1 ]; - } else if (e === h) f[n] = [ 0, p ]; else { - const r = t[n - e].length; - f[n] = [ 0, r ]; - } else f[n] = !0; - } else f[o] = l === p ? !l || [ l, 0 ] : [ l, p - l ]; - return { - start: u, - end: d, - markerLines: f - }; - }(t, c, n); - const h = t.start && "number" == typeof t.start.column; - const f = String(u).length; - let m = (i ? (0, r.default)(e, n) : e).split(s).slice(p, u).map((e, t) => { - const r = p + 1 + t; - const i = ` ${` ${r}`.slice(-f)} |`; - const s = d[r]; - const a = !d[r + 1]; - if (s) { - let t = ""; - if (Array.isArray(s)) { - const r = e.slice(0, Math.max(s[0] - 1, 0)).replace(/[^\t]/g, " "); - const c = s[1] || 1; - t = [ "\n ", l(o.gutter, i.replace(/\d/g, " ")), " ", r, l(o.marker, "^").repeat(c) ].join(""); - a && n.message && (t += " " + l(o.message, n.message)); - } - return [ l(o.marker, ">"), l(o.gutter, i), e.length > 0 ? ` ${e}` : "", t ].join(""); - } - return ` ${l(o.gutter, i)}${e.length > 0 ? ` ${e}` : ""}`; - }).join("\n"); - n.message && !h && (m = `${" ".repeat(f + 1)}${n.message}\n${m}`); - return i ? a.reset(m) : m; - } - }).call(this); - }).call(this, e("_process")); - }, { - "@babel/highlight": 29, - _process: 160 - } ], - 3: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - const r = /^[ \t]+$/; - n.default = class { - constructor(e) { - this._map = null; - this._buf = ""; - this._last = 0; - this._queue = []; - this._position = { - line: 1, - column: 0 - }; - this._sourcePosition = { - identifierName: null, - line: null, - column: null, - filename: null - }; - this._disallowedPop = null; - this._map = e; - } - get() { - this._flush(); - const e = this._map; - const t = { - code: this._buf.trimRight(), - map: null, - rawMappings: null == e ? void 0 : e.getRawMappings() - }; - e && Object.defineProperty(t, "map", { - configurable: !0, - enumerable: !0, - get() { - return this.map = e.get(); - }, - set(e) { - Object.defineProperty(this, "map", { - value: e, - writable: !0 - }); - } - }); - return t; - } - append(e) { - this._flush(); - const {line: t, column: n, filename: r, identifierName: i, force: s} = this._sourcePosition; - this._append(e, t, n, i, r, s); - } - queue(e) { - if ("\n" === e) for (;this._queue.length > 0 && r.test(this._queue[0][0]); ) this._queue.shift(); - const {line: t, column: n, filename: i, identifierName: s, force: a} = this._sourcePosition; - this._queue.unshift([ e, t, n, s, i, a ]); - } - _flush() { - let e; - for (;e = this._queue.pop(); ) this._append(...e); - } - _append(e, t, n, r, i, s) { - this._buf += e; - this._last = e.charCodeAt(e.length - 1); - let a = e.indexOf("\n"); - let o = 0; - 0 !== a && this._mark(t, n, r, i, s); - for (;-1 !== a; ) { - this._position.line++; - this._position.column = 0; - (o = a + 1) < e.length && this._mark(++t, 0, r, i, s); - a = e.indexOf("\n", o); - } - this._position.column += e.length - o; - } - _mark(e, t, n, r, i) { - var s; - null == (s = this._map) || s.mark(this._position.line, this._position.column, e, t, n, r, i); - } - removeTrailingNewline() { - this._queue.length > 0 && "\n" === this._queue[0][0] && this._queue.shift(); - } - removeLastSemicolon() { - this._queue.length > 0 && ";" === this._queue[0][0] && this._queue.shift(); - } - getLastChar() { - let e; - return e = this._queue.length > 0 ? this._queue[0][0].charCodeAt(0) : this._last; - } - endsWithCharAndNewline() { - const e = this._queue; - if (e.length > 0) { - if (10 !== e[0][0].charCodeAt(0)) return; - return e.length > 1 ? e[1][0].charCodeAt(0) : this._last; - } - } - hasContent() { - return this._queue.length > 0 || !!this._last; - } - exactSource(e, t) { - this.source("start", e, !0); - t(); - this.source("end", e); - this._disallowPop("start", e); - } - source(e, t, n) { - e && !t || this._normalizePosition(e, t, this._sourcePosition, n); - } - withSource(e, t, n) { - if (!this._map) return n(); - const r = this._sourcePosition.line; - const i = this._sourcePosition.column; - const s = this._sourcePosition.filename; - const a = this._sourcePosition.identifierName; - this.source(e, t); - n(); - if (!(this._sourcePosition.force && this._sourcePosition.line === r && this._sourcePosition.column === i && this._sourcePosition.filename === s || this._disallowedPop && this._disallowedPop.line === r && this._disallowedPop.column === i && this._disallowedPop.filename === s)) { - this._sourcePosition.line = r; - this._sourcePosition.column = i; - this._sourcePosition.filename = s; - this._sourcePosition.identifierName = a; - this._sourcePosition.force = !1; - this._disallowedPop = null; - } - } - _disallowPop(e, t) { - e && !t || (this._disallowedPop = this._normalizePosition(e, t)); - } - _normalizePosition(e, t, n, r) { - const i = t ? t[e] : null; - void 0 === n && (n = { - identifierName: null, - line: null, - column: null, - filename: null, - force: !1 - }); - const s = n.line; - const a = n.column; - const o = n.filename; - n.identifierName = "start" === e && (null == t ? void 0 : t.identifierName) || null; - n.line = null == i ? void 0 : i.line; - n.column = null == i ? void 0 : i.column; - n.filename = null == t ? void 0 : t.filename; - (r || n.line !== s || n.column !== a || n.filename !== o) && (n.force = r); - return n; - } - getCurrentColumn() { - const e = this._queue.reduce((e, t) => t[0] + e, ""); - const t = e.lastIndexOf("\n"); - return -1 === t ? this._position.column + e.length : e.length - 1 - t; - } - getCurrentLine() { - const e = this._queue.reduce((e, t) => t[0] + e, ""); - let t = 0; - for (let n = 0; n < e.length; n++) "\n" === e[n] && t++; - return this._position.line + t; - } - }; - }, {} ], - 4: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.File = function(e) { - e.program && this.print(e.program.interpreter, e); - this.print(e.program, e); - }; - n.Program = function(e) { - this.printInnerComments(e, !1); - this.printSequence(e.directives, e); - e.directives && e.directives.length && this.newline(); - this.printSequence(e.body, e); - }; - n.BlockStatement = function(e) { - var t; - this.token("{"); - this.printInnerComments(e); - const n = null == (t = e.directives) ? void 0 : t.length; - if (e.body.length || n) { - this.newline(); - this.printSequence(e.directives, e, { - indent: !0 - }); - n && this.newline(); - this.printSequence(e.body, e, { - indent: !0 - }); - this.removeTrailingNewline(); - this.source("end", e.loc); - this.endsWith(10) || this.newline(); - this.rightBrace(); - } else { - this.source("end", e.loc); - this.token("}"); - } - }; - n.Directive = function(e) { - this.print(e.value, e); - this.semicolon(); - }; - n.DirectiveLiteral = function(e) { - const t = this.getPossibleRaw(e); - if (null != t) { - this.token(t); - return; - } - const {value: n} = e; - if (i.test(n)) { - if (r.test(n)) throw new Error("Malformed AST: it is not possible to print a directive containing both unescaped single and double quotes."); - this.token(`'${n}'`); - } else this.token(`"${n}"`); - }; - n.InterpreterDirective = function(e) { - this.token(`#!${e.value}\n`); - }; - n.Placeholder = function(e) { - this.token("%%"); - this.print(e.name); - this.token("%%"); - "Statement" === e.expectedNode && this.semicolon(); - }; - const r = /(?:^|[^\\])(?:\\\\)*'/; - const i = /(?:^|[^\\])(?:\\\\)*"/; - }, {} ], - 5: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.ClassExpression = n.ClassDeclaration = function(e, t) { - this.format.decoratorsBeforeExport && (i(t) || s(t)) || this.printJoin(e.decorators, e); - if (e.declare) { - this.word("declare"); - this.space(); - } - if (e.abstract) { - this.word("abstract"); - this.space(); - } - this.word("class"); - if (e.id) { - this.space(); - this.print(e.id, e); - } - this.print(e.typeParameters, e); - if (e.superClass) { - this.space(); - this.word("extends"); - this.space(); - this.print(e.superClass, e); - this.print(e.superTypeParameters, e); - } - if (e.implements) { - this.space(); - this.word("implements"); - this.space(); - this.printList(e.implements, e); - } - this.space(); - this.print(e.body, e); - }; - n.ClassBody = function(e) { - this.token("{"); - this.printInnerComments(e); - if (0 === e.body.length) this.token("}"); else { - this.newline(); - this.indent(); - this.printSequence(e.body, e); - this.dedent(); - this.endsWith(10) || this.newline(); - this.rightBrace(); - } - }; - n.ClassProperty = function(e) { - this.printJoin(e.decorators, e); - this.source("end", e.key.loc); - this.tsPrintClassMemberModifiers(e, !0); - if (e.computed) { - this.token("["); - this.print(e.key, e); - this.token("]"); - } else { - this._variance(e); - this.print(e.key, e); - } - e.optional && this.token("?"); - e.definite && this.token("!"); - this.print(e.typeAnnotation, e); - if (e.value) { - this.space(); - this.token("="); - this.space(); - this.print(e.value, e); - } - this.semicolon(); - }; - n.ClassPrivateProperty = function(e) { - this.printJoin(e.decorators, e); - if (e.static) { - this.word("static"); - this.space(); - } - this.print(e.key, e); - this.print(e.typeAnnotation, e); - if (e.value) { - this.space(); - this.token("="); - this.space(); - this.print(e.value, e); - } - this.semicolon(); - }; - n.ClassMethod = function(e) { - this._classMethodHead(e); - this.space(); - this.print(e.body, e); - }; - n.ClassPrivateMethod = function(e) { - this._classMethodHead(e); - this.space(); - this.print(e.body, e); - }; - n._classMethodHead = function(e) { - this.printJoin(e.decorators, e); - this.source("end", e.key.loc); - this.tsPrintClassMemberModifiers(e, !1); - this._methodHead(e); - }; - n.StaticBlock = function(e) { - this.word("static"); - this.space(); - this.token("{"); - if (0 === e.body.length) this.token("}"); else { - this.newline(); - this.printSequence(e.body, e, { - indent: !0 - }); - this.rightBrace(); - } - }; - var r = e("@babel/types"); - const {isExportDefaultDeclaration: i, isExportNamedDeclaration: s} = r; - }, { - "@babel/types": 108 - } ], - 6: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.UnaryExpression = function(e) { - if ("void" === e.operator || "delete" === e.operator || "typeof" === e.operator || "throw" === e.operator) { - this.word(e.operator); - this.space(); - } else this.token(e.operator); - this.print(e.argument, e); - }; - n.DoExpression = function(e) { - if (e.async) { - this.word("async"); - this.space(); - } - this.word("do"); - this.space(); - this.print(e.body, e); - }; - n.ParenthesizedExpression = function(e) { - this.token("("); - this.print(e.expression, e); - this.token(")"); - }; - n.UpdateExpression = function(e) { - if (e.prefix) { - this.token(e.operator); - this.print(e.argument, e); - } else { - this.startTerminatorless(!0); - this.print(e.argument, e); - this.endTerminatorless(); - this.token(e.operator); - } - }; - n.ConditionalExpression = function(e) { - this.print(e.test, e); - this.space(); - this.token("?"); - this.space(); - this.print(e.consequent, e); - this.space(); - this.token(":"); - this.space(); - this.print(e.alternate, e); - }; - n.NewExpression = function(e, t) { - this.word("new"); - this.space(); - this.print(e.callee, e); - if (this.format.minified && 0 === e.arguments.length && !e.optional && !s(t, { - callee: e - }) && !o(t) && !l(t)) return; - this.print(e.typeArguments, e); - this.print(e.typeParameters, e); - e.optional && this.token("?."); - this.token("("); - this.printList(e.arguments, e); - this.token(")"); - }; - n.SequenceExpression = function(e) { - this.printList(e.expressions, e); - }; - n.ThisExpression = function() { - this.word("this"); - }; - n.Super = function() { - this.word("super"); - }; - n.Decorator = function(e) { - this.token("@"); - this.print(e.expression, e); - this.newline(); - }; - n.OptionalMemberExpression = function(e) { - this.print(e.object, e); - if (!e.computed && o(e.property)) throw new TypeError("Got a MemberExpression for MemberExpression property"); - let t = e.computed; - a(e.property) && "number" == typeof e.property.value && (t = !0); - e.optional && this.token("?."); - if (t) { - this.token("["); - this.print(e.property, e); - this.token("]"); - } else { - e.optional || this.token("."); - this.print(e.property, e); - } - }; - n.OptionalCallExpression = function(e) { - this.print(e.callee, e); - this.print(e.typeArguments, e); - this.print(e.typeParameters, e); - e.optional && this.token("?."); - this.token("("); - this.printList(e.arguments, e); - this.token(")"); - }; - n.CallExpression = function(e) { - this.print(e.callee, e); - this.print(e.typeArguments, e); - this.print(e.typeParameters, e); - this.token("("); - this.printList(e.arguments, e); - this.token(")"); - }; - n.Import = function() { - this.word("import"); - }; - n.EmptyStatement = function() { - this.semicolon(!0); - }; - n.ExpressionStatement = function(e) { - this.print(e.expression, e); - this.semicolon(); - }; - n.AssignmentPattern = function(e) { - this.print(e.left, e); - e.left.optional && this.token("?"); - this.print(e.left.typeAnnotation, e); - this.space(); - this.token("="); - this.space(); - this.print(e.right, e); - }; - n.LogicalExpression = n.BinaryExpression = n.AssignmentExpression = function(e, t) { - const n = this.inForStatementInitCounter && "in" === e.operator && !i.needsParens(e, t); - n && this.token("("); - this.print(e.left, e); - this.space(); - "in" === e.operator || "instanceof" === e.operator ? this.word(e.operator) : this.token(e.operator); - this.space(); - this.print(e.right, e); - n && this.token(")"); - }; - n.BindExpression = function(e) { - this.print(e.object, e); - this.token("::"); - this.print(e.callee, e); - }; - n.MemberExpression = function(e) { - this.print(e.object, e); - if (!e.computed && o(e.property)) throw new TypeError("Got a MemberExpression for MemberExpression property"); - let t = e.computed; - a(e.property) && "number" == typeof e.property.value && (t = !0); - if (t) { - this.token("["); - this.print(e.property, e); - this.token("]"); - } else { - this.token("."); - this.print(e.property, e); - } - }; - n.MetaProperty = function(e) { - this.print(e.meta, e); - this.token("."); - this.print(e.property, e); - }; - n.PrivateName = function(e) { - this.token("#"); - this.print(e.id, e); - }; - n.V8IntrinsicIdentifier = function(e) { - this.token("%"); - this.word(e.name); - }; - n.ModuleExpression = function(e) { - this.word("module"); - this.space(); - this.token("{"); - if (0 === e.body.body.length) this.token("}"); else { - this.newline(); - this.printSequence(e.body.body, e, { - indent: !0 - }); - this.rightBrace(); - } - }; - n.AwaitExpression = n.YieldExpression = void 0; - r = e("@babel/types"); - i = e("../node"); - const {isCallExpression: s, isLiteral: a, isMemberExpression: o, isNewExpression: l} = r; - function c(e) { - return function(t) { - this.word(e); - t.delegate && this.token("*"); - if (t.argument) { - this.space(); - const e = this.startTerminatorless(); - this.print(t.argument, t); - this.endTerminatorless(e); - } - }; - } - const p = c("yield"); - n.YieldExpression = p; - const u = c("await"); - n.AwaitExpression = u; - }, { - "../node": 17, - "@babel/types": 108 - } ], - 7: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.AnyTypeAnnotation = function() { - this.word("any"); - }; - n.ArrayTypeAnnotation = function(e) { - this.print(e.elementType, e); - this.token("["); - this.token("]"); - }; - n.BooleanTypeAnnotation = function() { - this.word("boolean"); - }; - n.BooleanLiteralTypeAnnotation = function(e) { - this.word(e.value ? "true" : "false"); - }; - n.NullLiteralTypeAnnotation = function() { - this.word("null"); - }; - n.DeclareClass = function(e, t) { - if (!a(t)) { - this.word("declare"); - this.space(); - } - this.word("class"); - this.space(); - this._interfaceish(e); - }; - n.DeclareFunction = function(e, t) { - if (!a(t)) { - this.word("declare"); - this.space(); - } - this.word("function"); - this.space(); - this.print(e.id, e); - this.print(e.id.typeAnnotation.typeAnnotation, e); - if (e.predicate) { - this.space(); - this.print(e.predicate, e); - } - this.semicolon(); - }; - n.InferredPredicate = function() { - this.token("%"); - this.word("checks"); - }; - n.DeclaredPredicate = function(e) { - this.token("%"); - this.word("checks"); - this.token("("); - this.print(e.value, e); - this.token(")"); - }; - n.DeclareInterface = function(e) { - this.word("declare"); - this.space(); - this.InterfaceDeclaration(e); - }; - n.DeclareModule = function(e) { - this.word("declare"); - this.space(); - this.word("module"); - this.space(); - this.print(e.id, e); - this.space(); - this.print(e.body, e); - }; - n.DeclareModuleExports = function(e) { - this.word("declare"); - this.space(); - this.word("module"); - this.token("."); - this.word("exports"); - this.print(e.typeAnnotation, e); - }; - n.DeclareTypeAlias = function(e) { - this.word("declare"); - this.space(); - this.TypeAlias(e); - }; - n.DeclareOpaqueType = function(e, t) { - if (!a(t)) { - this.word("declare"); - this.space(); - } - this.OpaqueType(e); - }; - n.DeclareVariable = function(e, t) { - if (!a(t)) { - this.word("declare"); - this.space(); - } - this.word("var"); - this.space(); - this.print(e.id, e); - this.print(e.id.typeAnnotation, e); - this.semicolon(); - }; - n.DeclareExportDeclaration = function(e) { - this.word("declare"); - this.space(); - this.word("export"); - this.space(); - if (e.default) { - this.word("default"); - this.space(); - } - (function(e) { - if (e.declaration) { - const t = e.declaration; - this.print(t, e); - o(t) || this.semicolon(); - } else { - this.token("{"); - if (e.specifiers.length) { - this.space(); - this.printList(e.specifiers, e); - this.space(); - } - this.token("}"); - if (e.source) { - this.space(); - this.word("from"); - this.space(); - this.print(e.source, e); - } - this.semicolon(); - } - }).apply(this, arguments); - }; - n.DeclareExportAllDeclaration = function() { - this.word("declare"); - this.space(); - i.ExportAllDeclaration.apply(this, arguments); - }; - n.EnumDeclaration = function(e) { - const {id: t, body: n} = e; - this.word("enum"); - this.space(); - this.print(t, e); - this.print(n, e); - }; - n.EnumBooleanBody = function(e) { - const {explicitType: t} = e; - l(this, "boolean", t); - c(this, e); - }; - n.EnumNumberBody = function(e) { - const {explicitType: t} = e; - l(this, "number", t); - c(this, e); - }; - n.EnumStringBody = function(e) { - const {explicitType: t} = e; - l(this, "string", t); - c(this, e); - }; - n.EnumSymbolBody = function(e) { - l(this, "symbol", !0); - c(this, e); - }; - n.EnumDefaultedMember = function(e) { - const {id: t} = e; - this.print(t, e); - this.token(","); - }; - n.EnumBooleanMember = function(e) { - p(this, e); - }; - n.EnumNumberMember = function(e) { - p(this, e); - }; - n.EnumStringMember = function(e) { - p(this, e); - }; - n.ExistsTypeAnnotation = function() { - this.token("*"); - }; - n.FunctionTypeAnnotation = function(e, t) { - this.print(e.typeParameters, e); - this.token("("); - if (e.this) { - this.word("this"); - this.token(":"); - this.space(); - this.print(e.this.typeAnnotation, e); - if (e.params.length || e.rest) { - this.token(","); - this.space(); - } - } - this.printList(e.params, e); - if (e.rest) { - if (e.params.length) { - this.token(","); - this.space(); - } - this.token("..."); - this.print(e.rest, e); - } - this.token(")"); - if ("ObjectTypeCallProperty" === t.type || "DeclareFunction" === t.type || "ObjectTypeProperty" === t.type && t.method) this.token(":"); else { - this.space(); - this.token("=>"); - } - this.space(); - this.print(e.returnType, e); - }; - n.FunctionTypeParam = function(e) { - this.print(e.name, e); - e.optional && this.token("?"); - if (e.name) { - this.token(":"); - this.space(); - } - this.print(e.typeAnnotation, e); - }; - n.GenericTypeAnnotation = n.ClassImplements = n.InterfaceExtends = function(e) { - this.print(e.id, e); - this.print(e.typeParameters, e); - }; - n._interfaceish = function(e) { - var t; - this.print(e.id, e); - this.print(e.typeParameters, e); - if (null != (t = e.extends) && t.length) { - this.space(); - this.word("extends"); - this.space(); - this.printList(e.extends, e); - } - if (e.mixins && e.mixins.length) { - this.space(); - this.word("mixins"); - this.space(); - this.printList(e.mixins, e); - } - if (e.implements && e.implements.length) { - this.space(); - this.word("implements"); - this.space(); - this.printList(e.implements, e); - } - this.space(); - this.print(e.body, e); - }; - n._variance = function(e) { - e.variance && ("plus" === e.variance.kind ? this.token("+") : "minus" === e.variance.kind && this.token("-")); - }; - n.InterfaceDeclaration = function(e) { - this.word("interface"); - this.space(); - this._interfaceish(e); - }; - n.InterfaceTypeAnnotation = function(e) { - this.word("interface"); - if (e.extends && e.extends.length) { - this.space(); - this.word("extends"); - this.space(); - this.printList(e.extends, e); - } - this.space(); - this.print(e.body, e); - }; - n.IntersectionTypeAnnotation = function(e) { - this.printJoin(e.types, e, { - separator: u - }); - }; - n.MixedTypeAnnotation = function() { - this.word("mixed"); - }; - n.EmptyTypeAnnotation = function() { - this.word("empty"); - }; - n.NullableTypeAnnotation = function(e) { - this.token("?"); - this.print(e.typeAnnotation, e); - }; - n.NumberTypeAnnotation = function() { - this.word("number"); - }; - n.StringTypeAnnotation = function() { - this.word("string"); - }; - n.ThisTypeAnnotation = function() { - this.word("this"); - }; - n.TupleTypeAnnotation = function(e) { - this.token("["); - this.printList(e.types, e); - this.token("]"); - }; - n.TypeofTypeAnnotation = function(e) { - this.word("typeof"); - this.space(); - this.print(e.argument, e); - }; - n.TypeAlias = function(e) { - this.word("type"); - this.space(); - this.print(e.id, e); - this.print(e.typeParameters, e); - this.space(); - this.token("="); - this.space(); - this.print(e.right, e); - this.semicolon(); - }; - n.TypeAnnotation = function(e) { - this.token(":"); - this.space(); - e.optional && this.token("?"); - this.print(e.typeAnnotation, e); - }; - n.TypeParameterDeclaration = n.TypeParameterInstantiation = function(e) { - this.token("<"); - this.printList(e.params, e, {}); - this.token(">"); - }; - n.TypeParameter = function(e) { - this._variance(e); - this.word(e.name); - e.bound && this.print(e.bound, e); - if (e.default) { - this.space(); - this.token("="); - this.space(); - this.print(e.default, e); - } - }; - n.OpaqueType = function(e) { - this.word("opaque"); - this.space(); - this.word("type"); - this.space(); - this.print(e.id, e); - this.print(e.typeParameters, e); - if (e.supertype) { - this.token(":"); - this.space(); - this.print(e.supertype, e); - } - if (e.impltype) { - this.space(); - this.token("="); - this.space(); - this.print(e.impltype, e); - } - this.semicolon(); - }; - n.ObjectTypeAnnotation = function(e) { - e.exact ? this.token("{|") : this.token("{"); - const t = [ ...e.properties, ...e.callProperties || [], ...e.indexers || [], ...e.internalSlots || [] ]; - if (t.length) { - this.space(); - this.printJoin(t, e, { - addNewlines(e) { - if (e && !t[0]) return 1; - }, - indent: !0, - statement: !0, - iterator: () => { - if (1 !== t.length || e.inexact) { - this.token(","); - this.space(); - } - } - }); - this.space(); - } - if (e.inexact) { - this.indent(); - this.token("..."); - t.length && this.newline(); - this.dedent(); - } - e.exact ? this.token("|}") : this.token("}"); - }; - n.ObjectTypeInternalSlot = function(e) { - if (e.static) { - this.word("static"); - this.space(); - } - this.token("["); - this.token("["); - this.print(e.id, e); - this.token("]"); - this.token("]"); - e.optional && this.token("?"); - if (!e.method) { - this.token(":"); - this.space(); - } - this.print(e.value, e); - }; - n.ObjectTypeCallProperty = function(e) { - if (e.static) { - this.word("static"); - this.space(); - } - this.print(e.value, e); - }; - n.ObjectTypeIndexer = function(e) { - if (e.static) { - this.word("static"); - this.space(); - } - this._variance(e); - this.token("["); - if (e.id) { - this.print(e.id, e); - this.token(":"); - this.space(); - } - this.print(e.key, e); - this.token("]"); - this.token(":"); - this.space(); - this.print(e.value, e); - }; - n.ObjectTypeProperty = function(e) { - if (e.proto) { - this.word("proto"); - this.space(); - } - if (e.static) { - this.word("static"); - this.space(); - } - if ("get" === e.kind || "set" === e.kind) { - this.word(e.kind); - this.space(); - } - this._variance(e); - this.print(e.key, e); - e.optional && this.token("?"); - if (!e.method) { - this.token(":"); - this.space(); - } - this.print(e.value, e); - }; - n.ObjectTypeSpreadProperty = function(e) { - this.token("..."); - this.print(e.argument, e); - }; - n.QualifiedTypeIdentifier = function(e) { - this.print(e.qualification, e); - this.token("."); - this.print(e.id, e); - }; - n.SymbolTypeAnnotation = function() { - this.word("symbol"); - }; - n.UnionTypeAnnotation = function(e) { - this.printJoin(e.types, e, { - separator: d - }); - }; - n.TypeCastExpression = function(e) { - this.token("("); - this.print(e.expression, e); - this.print(e.typeAnnotation, e); - this.token(")"); - }; - n.Variance = function(e) { - "plus" === e.kind ? this.token("+") : this.token("-"); - }; - n.VoidTypeAnnotation = function() { - this.word("void"); - }; - n.IndexedAccessType = function(e) { - this.print(e.objectType, e); - this.token("["); - this.print(e.indexType, e); - this.token("]"); - }; - n.OptionalIndexedAccessType = function(e) { - this.print(e.objectType, e); - e.optional && this.token("?."); - this.token("["); - this.print(e.indexType, e); - this.token("]"); - }; - Object.defineProperty(n, "NumberLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return s.NumericLiteral; - } - }); - Object.defineProperty(n, "StringLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return s.StringLiteral; - } - }); - r = e("@babel/types"); - i = e("./modules"); - s = e("./types"); - const {isDeclareExportDeclaration: a, isStatement: o} = r; - function l(e, t, n) { - if (n) { - e.space(); - e.word("of"); - e.space(); - e.word(t); - } - e.space(); - } - function c(e, t) { - const {members: n} = t; - e.token("{"); - e.indent(); - e.newline(); - for (const r of n) { - e.print(r, t); - e.newline(); - } - if (t.hasUnknownMembers) { - e.token("..."); - e.newline(); - } - e.dedent(); - e.token("}"); - } - function p(e, t) { - const {id: n, init: r} = t; - e.print(n, t); - e.space(); - e.token("="); - e.space(); - e.print(r, t); - e.token(","); - } - function u() { - this.space(); - this.token("&"); - this.space(); - } - function d() { - this.space(); - this.token("|"); - this.space(); - } - }, { - "./modules": 11, - "./types": 14, - "@babel/types": 108 - } ], - 8: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l, c, p, u, d, h; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - r = e("./template-literals"); - Object.keys(r).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === r[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return r[e]; - } - })); - }); - i = e("./expressions"); - Object.keys(i).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === i[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return i[e]; - } - })); - }); - s = e("./statements"); - Object.keys(s).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === s[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return s[e]; - } - })); - }); - a = e("./classes"); - Object.keys(a).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === a[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return a[e]; - } - })); - }); - o = e("./methods"); - Object.keys(o).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === o[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return o[e]; - } - })); - }); - l = e("./modules"); - Object.keys(l).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === l[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return l[e]; - } - })); - }); - c = e("./types"); - Object.keys(c).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === c[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return c[e]; - } - })); - }); - p = e("./flow"); - Object.keys(p).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === p[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return p[e]; - } - })); - }); - u = e("./base"); - Object.keys(u).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === u[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return u[e]; - } - })); - }); - d = e("./jsx"); - Object.keys(d).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === d[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return d[e]; - } - })); - }); - h = e("./typescript"); - Object.keys(h).forEach(function(e) { - "default" !== e && "__esModule" !== e && (e in n && n[e] === h[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return h[e]; - } - })); - }); - }, { - "./base": 4, - "./classes": 5, - "./expressions": 6, - "./flow": 7, - "./jsx": 9, - "./methods": 10, - "./modules": 11, - "./statements": 12, - "./template-literals": 13, - "./types": 14, - "./typescript": 15 - } ], - 9: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.JSXAttribute = function(e) { - this.print(e.name, e); - if (e.value) { - this.token("="); - this.print(e.value, e); - } - }; - n.JSXIdentifier = function(e) { - this.word(e.name); - }; - n.JSXNamespacedName = function(e) { - this.print(e.namespace, e); - this.token(":"); - this.print(e.name, e); - }; - n.JSXMemberExpression = function(e) { - this.print(e.object, e); - this.token("."); - this.print(e.property, e); - }; - n.JSXSpreadAttribute = function(e) { - this.token("{"); - this.token("..."); - this.print(e.argument, e); - this.token("}"); - }; - n.JSXExpressionContainer = function(e) { - this.token("{"); - this.print(e.expression, e); - this.token("}"); - }; - n.JSXSpreadChild = function(e) { - this.token("{"); - this.token("..."); - this.print(e.expression, e); - this.token("}"); - }; - n.JSXText = function(e) { - const t = this.getPossibleRaw(e); - null != t ? this.token(t) : this.token(e.value); - }; - n.JSXElement = function(e) { - const t = e.openingElement; - this.print(t, e); - if (t.selfClosing) return; - this.indent(); - for (const t of e.children) this.print(t, e); - this.dedent(); - this.print(e.closingElement, e); - }; - n.JSXOpeningElement = function(e) { - this.token("<"); - this.print(e.name, e); - this.print(e.typeParameters, e); - if (e.attributes.length > 0) { - this.space(); - this.printJoin(e.attributes, e, { - separator: r - }); - } - if (e.selfClosing) { - this.space(); - this.token("/>"); - } else this.token(">"); - }; - n.JSXClosingElement = function(e) { - this.token(""); - }; - n.JSXEmptyExpression = function(e) { - this.printInnerComments(e); - }; - n.JSXFragment = function(e) { - this.print(e.openingFragment, e); - this.indent(); - for (const t of e.children) this.print(t, e); - this.dedent(); - this.print(e.closingFragment, e); - }; - n.JSXOpeningFragment = function() { - this.token("<"); - this.token(">"); - }; - n.JSXClosingFragment = function() { - this.token(""); - }; - function r() { - this.space(); - } - }, {} ], - 10: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n._params = function(e) { - this.print(e.typeParameters, e); - this.token("("); - this._parameters(e.params, e); - this.token(")"); - this.print(e.returnType, e); - }; - n._parameters = function(e, t) { - for (let n = 0; n < e.length; n++) { - this._param(e[n], t); - if (n < e.length - 1) { - this.token(","); - this.space(); - } - } - }; - n._param = function(e, t) { - this.printJoin(e.decorators, e); - this.print(e, t); - e.optional && this.token("?"); - this.print(e.typeAnnotation, e); - }; - n._methodHead = function(e) { - const t = e.kind; - const n = e.key; - if ("get" === t || "set" === t) { - this.word(t); - this.space(); - } - if (e.async) { - this._catchUp("start", n.loc); - this.word("async"); - this.space(); - } - "method" !== t && "init" !== t || e.generator && this.token("*"); - if (e.computed) { - this.token("["); - this.print(n, e); - this.token("]"); - } else this.print(n, e); - e.optional && this.token("?"); - this._params(e); - }; - n._predicate = function(e) { - if (e.predicate) { - e.returnType || this.token(":"); - this.space(); - this.print(e.predicate, e); - } - }; - n._functionHead = function(e) { - if (e.async) { - this.word("async"); - this.space(); - } - this.word("function"); - e.generator && this.token("*"); - this.space(); - e.id && this.print(e.id, e); - this._params(e); - this._predicate(e); - }; - n.FunctionDeclaration = n.FunctionExpression = function(e) { - this._functionHead(e); - this.space(); - this.print(e.body, e); - }; - n.ArrowFunctionExpression = function(e) { - if (e.async) { - this.word("async"); - this.space(); - } - const t = e.params[0]; - this.format.retainLines || this.format.auxiliaryCommentBefore || this.format.auxiliaryCommentAfter || 1 !== e.params.length || !i(t) || function(e, t) { - var n, r; - return !!(e.typeParameters || e.returnType || e.predicate || t.typeAnnotation || t.optional || null != (n = t.leadingComments) && n.length || null != (r = t.trailingComments) && r.length); - }(e, t) ? this._params(e) : this.print(t, e); - this._predicate(e); - this.space(); - this.token("=>"); - this.space(); - this.print(e.body, e); - }; - var r = e("@babel/types"); - const {isIdentifier: i} = r; - }, { - "@babel/types": 108 - } ], - 11: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.ImportSpecifier = function(e) { - if ("type" === e.importKind || "typeof" === e.importKind) { - this.word(e.importKind); - this.space(); - } - this.print(e.imported, e); - if (e.local && e.local.name !== e.imported.name) { - this.space(); - this.word("as"); - this.space(); - this.print(e.local, e); - } - }; - n.ImportDefaultSpecifier = function(e) { - this.print(e.local, e); - }; - n.ExportDefaultSpecifier = function(e) { - this.print(e.exported, e); - }; - n.ExportSpecifier = function(e) { - this.print(e.local, e); - if (e.exported && e.local.name !== e.exported.name) { - this.space(); - this.word("as"); - this.space(); - this.print(e.exported, e); - } - }; - n.ExportNamespaceSpecifier = function(e) { - this.token("*"); - this.space(); - this.word("as"); - this.space(); - this.print(e.exported, e); - }; - n.ExportAllDeclaration = function(e) { - this.word("export"); - this.space(); - if ("type" === e.exportKind) { - this.word("type"); - this.space(); - } - this.token("*"); - this.space(); - this.word("from"); - this.space(); - this.print(e.source, e); - this.printAssertions(e); - this.semicolon(); - }; - n.ExportNamedDeclaration = function(e) { - this.format.decoratorsBeforeExport && i(e.declaration) && this.printJoin(e.declaration.decorators, e); - this.word("export"); - this.space(); - p.apply(this, arguments); - }; - n.ExportDefaultDeclaration = function(e) { - this.format.decoratorsBeforeExport && i(e.declaration) && this.printJoin(e.declaration.decorators, e); - this.word("export"); - this.space(); - this.word("default"); - this.space(); - p.apply(this, arguments); - }; - n.ImportDeclaration = function(e) { - this.word("import"); - this.space(); - if ("type" === e.importKind || "typeof" === e.importKind) { - this.word(e.importKind); - this.space(); - } - const t = e.specifiers.slice(0); - if (null != t && t.length) { - for (;;) { - const n = t[0]; - if (!o(n) && !l(n)) break; - this.print(t.shift(), e); - if (t.length) { - this.token(","); - this.space(); - } - } - if (t.length) { - this.token("{"); - this.space(); - this.printList(t, e); - this.space(); - this.token("}"); - } - this.space(); - this.word("from"); - this.space(); - } - this.print(e.source, e); - this.printAssertions(e); - var n; - if (null != (n = e.attributes) && n.length) { - this.space(); - this.word("with"); - this.space(); - this.printList(e.attributes, e); - } - this.semicolon(); - }; - n.ImportAttribute = function(e) { - this.print(e.key); - this.token(":"); - this.space(); - this.print(e.value); - }; - n.ImportNamespaceSpecifier = function(e) { - this.token("*"); - this.space(); - this.word("as"); - this.space(); - this.print(e.local, e); - }; - var r = e("@babel/types"); - const {isClassDeclaration: i, isExportDefaultSpecifier: s, isExportNamespaceSpecifier: a, isImportDefaultSpecifier: o, isImportNamespaceSpecifier: l, isStatement: c} = r; - function p(e) { - if (e.declaration) { - const t = e.declaration; - this.print(t, e); - c(t) || this.semicolon(); - } else { - if ("type" === e.exportKind) { - this.word("type"); - this.space(); - } - const t = e.specifiers.slice(0); - let n = !1; - for (;;) { - const r = t[0]; - if (!s(r) && !a(r)) break; - n = !0; - this.print(t.shift(), e); - if (t.length) { - this.token(","); - this.space(); - } - } - if (t.length || !t.length && !n) { - this.token("{"); - if (t.length) { - this.space(); - this.printList(t, e); - this.space(); - } - this.token("}"); - } - if (e.source) { - this.space(); - this.word("from"); - this.space(); - this.print(e.source, e); - this.printAssertions(e); - } - this.semicolon(); - } - } - }, { - "@babel/types": 108 - } ], - 12: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.WithStatement = function(e) { - this.word("with"); - this.space(); - this.token("("); - this.print(e.object, e); - this.token(")"); - this.printBlock(e); - }; - n.IfStatement = function(e) { - this.word("if"); - this.space(); - this.token("("); - this.print(e.test, e); - this.token(")"); - this.space(); - const t = e.alternate && a(function e(t) { - if (!o(t.body)) return t; - return e(t.body); - }(e.consequent)); - if (t) { - this.token("{"); - this.newline(); - this.indent(); - } - this.printAndIndentOnComments(e.consequent, e); - if (t) { - this.dedent(); - this.newline(); - this.token("}"); - } - if (e.alternate) { - this.endsWith(125) && this.space(); - this.word("else"); - this.space(); - this.printAndIndentOnComments(e.alternate, e); - } - }; - n.ForStatement = function(e) { - this.word("for"); - this.space(); - this.token("("); - this.inForStatementInitCounter++; - this.print(e.init, e); - this.inForStatementInitCounter--; - this.token(";"); - if (e.test) { - this.space(); - this.print(e.test, e); - } - this.token(";"); - if (e.update) { - this.space(); - this.print(e.update, e); - } - this.token(")"); - this.printBlock(e); - }; - n.WhileStatement = function(e) { - this.word("while"); - this.space(); - this.token("("); - this.print(e.test, e); - this.token(")"); - this.printBlock(e); - }; - n.DoWhileStatement = function(e) { - this.word("do"); - this.space(); - this.print(e.body, e); - this.space(); - this.word("while"); - this.space(); - this.token("("); - this.print(e.test, e); - this.token(")"); - this.semicolon(); - }; - n.LabeledStatement = function(e) { - this.print(e.label, e); - this.token(":"); - this.space(); - this.print(e.body, e); - }; - n.TryStatement = function(e) { - this.word("try"); - this.space(); - this.print(e.block, e); - this.space(); - e.handlers ? this.print(e.handlers[0], e) : this.print(e.handler, e); - if (e.finalizer) { - this.space(); - this.word("finally"); - this.space(); - this.print(e.finalizer, e); - } - }; - n.CatchClause = function(e) { - this.word("catch"); - this.space(); - if (e.param) { - this.token("("); - this.print(e.param, e); - this.print(e.param.typeAnnotation, e); - this.token(")"); - this.space(); - } - this.print(e.body, e); - }; - n.SwitchStatement = function(e) { - this.word("switch"); - this.space(); - this.token("("); - this.print(e.discriminant, e); - this.token(")"); - this.space(); - this.token("{"); - this.printSequence(e.cases, e, { - indent: !0, - addNewlines(t, n) { - if (!t && e.cases[e.cases.length - 1] === n) return -1; - } - }); - this.token("}"); - }; - n.SwitchCase = function(e) { - if (e.test) { - this.word("case"); - this.space(); - this.print(e.test, e); - this.token(":"); - } else { - this.word("default"); - this.token(":"); - } - if (e.consequent.length) { - this.newline(); - this.printSequence(e.consequent, e, { - indent: !0 - }); - } - }; - n.DebuggerStatement = function() { - this.word("debugger"); - this.semicolon(); - }; - n.VariableDeclaration = function(e, t) { - if (e.declare) { - this.word("declare"); - this.space(); - } - this.word(e.kind); - this.space(); - let n = !1; - if (!i(t)) for (const t of e.declarations) t.init && (n = !0); - let r; - n && (r = "const" === e.kind ? g : y); - this.printList(e.declarations, e, { - separator: r - }); - if (i(t)) if (s(t)) { - if (t.init === e) return; - } else if (t.left === e) return; - this.semicolon(); - }; - n.VariableDeclarator = function(e) { - this.print(e.id, e); - e.definite && this.token("!"); - this.print(e.id.typeAnnotation, e); - if (e.init) { - this.space(); - this.token("="); - this.space(); - this.print(e.init, e); - } - }; - n.ThrowStatement = n.BreakStatement = n.ReturnStatement = n.ContinueStatement = n.ForOfStatement = n.ForInStatement = void 0; - var r = e("@babel/types"); - const {isFor: i, isForStatement: s, isIfStatement: a, isStatement: o} = r; - const l = function(e) { - return function(t) { - this.word("for"); - this.space(); - if ("of" === e && t.await) { - this.word("await"); - this.space(); - } - this.token("("); - this.print(t.left, t); - this.space(); - this.word(e); - this.space(); - this.print(t.right, t); - this.token(")"); - this.printBlock(t); - }; - }; - const c = l("in"); - n.ForInStatement = c; - const p = l("of"); - n.ForOfStatement = p; - function u(e, t = "label") { - return function(n) { - this.word(e); - const r = n[t]; - if (r) { - this.space(); - const e = "label" == t; - const i = this.startTerminatorless(e); - this.print(r, n); - this.endTerminatorless(i); - } - this.semicolon(); - }; - } - const d = u("continue"); - n.ContinueStatement = d; - const h = u("return", "argument"); - n.ReturnStatement = h; - const f = u("break"); - n.BreakStatement = f; - const m = u("throw", "argument"); - n.ThrowStatement = m; - function y() { - this.token(","); - this.newline(); - if (this.endsWith(10)) for (let e = 0; e < 4; e++) this.space(!0); - } - function g() { - this.token(","); - this.newline(); - if (this.endsWith(10)) for (let e = 0; e < 6; e++) this.space(!0); - } - }, { - "@babel/types": 108 - } ], - 13: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.TaggedTemplateExpression = function(e) { - this.print(e.tag, e); - this.print(e.typeParameters, e); - this.print(e.quasi, e); - }; - n.TemplateElement = function(e, t) { - const n = t.quasis[0] === e; - const r = t.quasis[t.quasis.length - 1] === e; - const i = (n ? "`" : "}") + e.value.raw + (r ? "`" : "${"); - this.token(i); - }; - n.TemplateLiteral = function(e) { - const t = e.quasis; - for (let n = 0; n < t.length; n++) { - this.print(t[n], e); - n + 1 < t.length && this.print(e.expressions[n], e); - } - }; - }, {} ], - 14: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.Identifier = function(e) { - this.exactSource(e.loc, () => { - this.word(e.name); - }); - }; - n.ArgumentPlaceholder = function() { - this.token("?"); - }; - n.SpreadElement = n.RestElement = function(e) { - this.token("..."); - this.print(e.argument, e); - }; - n.ObjectPattern = n.ObjectExpression = function(e) { - const t = e.properties; - this.token("{"); - this.printInnerComments(e); - if (t.length) { - this.space(); - this.printList(t, e, { - indent: !0, - statement: !0 - }); - this.space(); - } - this.token("}"); - }; - n.ObjectMethod = function(e) { - this.printJoin(e.decorators, e); - this._methodHead(e); - this.space(); - this.print(e.body, e); - }; - n.ObjectProperty = function(e) { - this.printJoin(e.decorators, e); - if (e.computed) { - this.token("["); - this.print(e.key, e); - this.token("]"); - } else { - if (s(e.value) && a(e.key) && e.key.name === e.value.left.name) { - this.print(e.value, e); - return; - } - this.print(e.key, e); - if (e.shorthand && a(e.key) && a(e.value) && e.key.name === e.value.name) return; - } - this.token(":"); - this.space(); - this.print(e.value, e); - }; - n.ArrayPattern = n.ArrayExpression = function(e) { - const t = e.elements; - const n = t.length; - this.token("["); - this.printInnerComments(e); - for (let r = 0; r < t.length; r++) { - const i = t[r]; - if (i) { - r > 0 && this.space(); - this.print(i, e); - r < n - 1 && this.token(","); - } else this.token(","); - } - this.token("]"); - }; - n.RecordExpression = function(e) { - const t = e.properties; - let n; - let r; - if ("bar" === this.format.recordAndTupleSyntaxType) { - n = "{|"; - r = "|}"; - } else { - if ("hash" !== this.format.recordAndTupleSyntaxType) throw new Error(`The "recordAndTupleSyntaxType" generator option must be "bar" or "hash" (${JSON.stringify(this.format.recordAndTupleSyntaxType)} received).`); - n = "#{"; - r = "}"; - } - this.token(n); - this.printInnerComments(e); - if (t.length) { - this.space(); - this.printList(t, e, { - indent: !0, - statement: !0 - }); - this.space(); - } - this.token(r); - }; - n.TupleExpression = function(e) { - const t = e.elements; - const n = t.length; - let r; - let i; - if ("bar" === this.format.recordAndTupleSyntaxType) { - r = "[|"; - i = "|]"; - } else { - if ("hash" !== this.format.recordAndTupleSyntaxType) throw new Error(`${this.format.recordAndTupleSyntaxType} is not a valid recordAndTuple syntax type`); - r = "#["; - i = "]"; - } - this.token(r); - this.printInnerComments(e); - for (let r = 0; r < t.length; r++) { - const i = t[r]; - if (i) { - r > 0 && this.space(); - this.print(i, e); - r < n - 1 && this.token(","); - } - } - this.token(i); - }; - n.RegExpLiteral = function(e) { - this.word(`/${e.pattern}/${e.flags}`); - }; - n.BooleanLiteral = function(e) { - this.word(e.value ? "true" : "false"); - }; - n.NullLiteral = function() { - this.word("null"); - }; - n.NumericLiteral = function(e) { - const t = this.getPossibleRaw(e); - const n = this.format.jsescOption; - const r = e.value + ""; - n.numbers ? this.number(i(e.value, n)) : null == t ? this.number(r) : this.format.minified ? this.number(t.length < r.length ? t : r) : this.number(t); - }; - n.StringLiteral = function(e) { - const t = this.getPossibleRaw(e); - if (!this.format.minified && null != t) { - this.token(t); - return; - } - const n = i(e.value, Object.assign(this.format.jsescOption, this.format.jsonCompatibleStrings && { - json: !0 - })); - return this.token(n); - }; - n.BigIntLiteral = function(e) { - const t = this.getPossibleRaw(e); - if (!this.format.minified && null != t) { - this.word(t); - return; - } - this.word(e.value + "n"); - }; - n.DecimalLiteral = function(e) { - const t = this.getPossibleRaw(e); - if (!this.format.minified && null != t) { - this.word(t); - return; - } - this.word(e.value + "m"); - }; - n.TopicReference = function() { - const {topicToken: e} = this.format; - switch (e) { - case "#": - this.token("#"); - break; - - default: - { - const t = JSON.stringify(e); - const n = `The "topicToken" generator option must be "#" (${t} received instead).`; - throw new Error(n); - } - } - }; - n.PipelineTopicExpression = function(e) { - this.print(e.expression, e); - }; - n.PipelineBareFunction = function(e) { - this.print(e.callee, e); - }; - n.PipelinePrimaryTopicReference = function() { - this.token("#"); - }; - r = e("@babel/types"); - i = e("jsesc"); - const {isAssignmentPattern: s, isIdentifier: a} = r; - }, { - "@babel/types": 108, - jsesc: 158 - } ], - 15: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.TSTypeAnnotation = function(e) { - this.token(":"); - this.space(); - e.optional && this.token("?"); - this.print(e.typeAnnotation, e); - }; - n.TSTypeParameterDeclaration = n.TSTypeParameterInstantiation = function(e) { - this.token("<"); - this.printList(e.params, e, {}); - this.token(">"); - }; - n.TSTypeParameter = function(e) { - this.word(e.name); - if (e.constraint) { - this.space(); - this.word("extends"); - this.space(); - this.print(e.constraint, e); - } - if (e.default) { - this.space(); - this.token("="); - this.space(); - this.print(e.default, e); - } - }; - n.TSParameterProperty = function(e) { - if (e.accessibility) { - this.word(e.accessibility); - this.space(); - } - if (e.readonly) { - this.word("readonly"); - this.space(); - } - this._param(e.parameter); - }; - n.TSDeclareFunction = function(e) { - if (e.declare) { - this.word("declare"); - this.space(); - } - this._functionHead(e); - this.token(";"); - }; - n.TSDeclareMethod = function(e) { - this._classMethodHead(e); - this.token(";"); - }; - n.TSQualifiedName = function(e) { - this.print(e.left, e); - this.token("."); - this.print(e.right, e); - }; - n.TSCallSignatureDeclaration = function(e) { - this.tsPrintSignatureDeclarationBase(e); - this.token(";"); - }; - n.TSConstructSignatureDeclaration = function(e) { - this.word("new"); - this.space(); - this.tsPrintSignatureDeclarationBase(e); - this.token(";"); - }; - n.TSPropertySignature = function(e) { - const {readonly: t, initializer: n} = e; - if (t) { - this.word("readonly"); - this.space(); - } - this.tsPrintPropertyOrMethodName(e); - this.print(e.typeAnnotation, e); - if (n) { - this.space(); - this.token("="); - this.space(); - this.print(n, e); - } - this.token(";"); - }; - n.tsPrintPropertyOrMethodName = function(e) { - e.computed && this.token("["); - this.print(e.key, e); - e.computed && this.token("]"); - e.optional && this.token("?"); - }; - n.TSMethodSignature = function(e) { - const {kind: t} = e; - if ("set" === t || "get" === t) { - this.word(t); - this.space(); - } - this.tsPrintPropertyOrMethodName(e); - this.tsPrintSignatureDeclarationBase(e); - this.token(";"); - }; - n.TSIndexSignature = function(e) { - const {readonly: t, static: n} = e; - if (n) { - this.word("static"); - this.space(); - } - if (t) { - this.word("readonly"); - this.space(); - } - this.token("["); - this._parameters(e.parameters, e); - this.token("]"); - this.print(e.typeAnnotation, e); - this.token(";"); - }; - n.TSAnyKeyword = function() { - this.word("any"); - }; - n.TSBigIntKeyword = function() { - this.word("bigint"); - }; - n.TSUnknownKeyword = function() { - this.word("unknown"); - }; - n.TSNumberKeyword = function() { - this.word("number"); - }; - n.TSObjectKeyword = function() { - this.word("object"); - }; - n.TSBooleanKeyword = function() { - this.word("boolean"); - }; - n.TSStringKeyword = function() { - this.word("string"); - }; - n.TSSymbolKeyword = function() { - this.word("symbol"); - }; - n.TSVoidKeyword = function() { - this.word("void"); - }; - n.TSUndefinedKeyword = function() { - this.word("undefined"); - }; - n.TSNullKeyword = function() { - this.word("null"); - }; - n.TSNeverKeyword = function() { - this.word("never"); - }; - n.TSIntrinsicKeyword = function() { - this.word("intrinsic"); - }; - n.TSThisType = function() { - this.word("this"); - }; - n.TSFunctionType = function(e) { - this.tsPrintFunctionOrConstructorType(e); - }; - n.TSConstructorType = function(e) { - if (e.abstract) { - this.word("abstract"); - this.space(); - } - this.word("new"); - this.space(); - this.tsPrintFunctionOrConstructorType(e); - }; - n.tsPrintFunctionOrConstructorType = function(e) { - const {typeParameters: t, parameters: n} = e; - this.print(t, e); - this.token("("); - this._parameters(n, e); - this.token(")"); - this.space(); - this.token("=>"); - this.space(); - this.print(e.typeAnnotation.typeAnnotation, e); - }; - n.TSTypeReference = function(e) { - this.print(e.typeName, e); - this.print(e.typeParameters, e); - }; - n.TSTypePredicate = function(e) { - if (e.asserts) { - this.word("asserts"); - this.space(); - } - this.print(e.parameterName); - if (e.typeAnnotation) { - this.space(); - this.word("is"); - this.space(); - this.print(e.typeAnnotation.typeAnnotation); - } - }; - n.TSTypeQuery = function(e) { - this.word("typeof"); - this.space(); - this.print(e.exprName); - }; - n.TSTypeLiteral = function(e) { - this.tsPrintTypeLiteralOrInterfaceBody(e.members, e); - }; - n.tsPrintTypeLiteralOrInterfaceBody = function(e, t) { - this.tsPrintBraced(e, t); - }; - n.tsPrintBraced = function(e, t) { - this.token("{"); - if (e.length) { - this.indent(); - this.newline(); - for (const n of e) { - this.print(n, t); - this.newline(); - } - this.dedent(); - this.rightBrace(); - } else this.token("}"); - }; - n.TSArrayType = function(e) { - this.print(e.elementType, e); - this.token("[]"); - }; - n.TSTupleType = function(e) { - this.token("["); - this.printList(e.elementTypes, e); - this.token("]"); - }; - n.TSOptionalType = function(e) { - this.print(e.typeAnnotation, e); - this.token("?"); - }; - n.TSRestType = function(e) { - this.token("..."); - this.print(e.typeAnnotation, e); - }; - n.TSNamedTupleMember = function(e) { - this.print(e.label, e); - e.optional && this.token("?"); - this.token(":"); - this.space(); - this.print(e.elementType, e); - }; - n.TSUnionType = function(e) { - this.tsPrintUnionOrIntersectionType(e, "|"); - }; - n.TSIntersectionType = function(e) { - this.tsPrintUnionOrIntersectionType(e, "&"); - }; - n.tsPrintUnionOrIntersectionType = function(e, t) { - this.printJoin(e.types, e, { - separator() { - this.space(); - this.token(t); - this.space(); - } - }); - }; - n.TSConditionalType = function(e) { - this.print(e.checkType); - this.space(); - this.word("extends"); - this.space(); - this.print(e.extendsType); - this.space(); - this.token("?"); - this.space(); - this.print(e.trueType); - this.space(); - this.token(":"); - this.space(); - this.print(e.falseType); - }; - n.TSInferType = function(e) { - this.token("infer"); - this.space(); - this.print(e.typeParameter); - }; - n.TSParenthesizedType = function(e) { - this.token("("); - this.print(e.typeAnnotation, e); - this.token(")"); - }; - n.TSTypeOperator = function(e) { - this.word(e.operator); - this.space(); - this.print(e.typeAnnotation, e); - }; - n.TSIndexedAccessType = function(e) { - this.print(e.objectType, e); - this.token("["); - this.print(e.indexType, e); - this.token("]"); - }; - n.TSMappedType = function(e) { - const {nameType: t, optional: n, readonly: i, typeParameter: s} = e; - this.token("{"); - this.space(); - if (i) { - r(this, i); - this.word("readonly"); - this.space(); - } - this.token("["); - this.word(s.name); - this.space(); - this.word("in"); - this.space(); - this.print(s.constraint, s); - if (t) { - this.space(); - this.word("as"); - this.space(); - this.print(t, e); - } - this.token("]"); - if (n) { - r(this, n); - this.token("?"); - } - this.token(":"); - this.space(); - this.print(e.typeAnnotation, e); - this.space(); - this.token("}"); - }; - n.TSLiteralType = function(e) { - this.print(e.literal, e); - }; - n.TSExpressionWithTypeArguments = function(e) { - this.print(e.expression, e); - this.print(e.typeParameters, e); - }; - n.TSInterfaceDeclaration = function(e) { - const {declare: t, id: n, typeParameters: r, extends: i, body: s} = e; - if (t) { - this.word("declare"); - this.space(); - } - this.word("interface"); - this.space(); - this.print(n, e); - this.print(r, e); - if (null != i && i.length) { - this.space(); - this.word("extends"); - this.space(); - this.printList(i, e); - } - this.space(); - this.print(s, e); - }; - n.TSInterfaceBody = function(e) { - this.tsPrintTypeLiteralOrInterfaceBody(e.body, e); - }; - n.TSTypeAliasDeclaration = function(e) { - const {declare: t, id: n, typeParameters: r, typeAnnotation: i} = e; - if (t) { - this.word("declare"); - this.space(); - } - this.word("type"); - this.space(); - this.print(n, e); - this.print(r, e); - this.space(); - this.token("="); - this.space(); - this.print(i, e); - this.token(";"); - }; - n.TSAsExpression = function(e) { - const {expression: t, typeAnnotation: n} = e; - this.print(t, e); - this.space(); - this.word("as"); - this.space(); - this.print(n, e); - }; - n.TSTypeAssertion = function(e) { - const {typeAnnotation: t, expression: n} = e; - this.token("<"); - this.print(t, e); - this.token(">"); - this.space(); - this.print(n, e); - }; - n.TSEnumDeclaration = function(e) { - const {declare: t, const: n, id: r, members: i} = e; - if (t) { - this.word("declare"); - this.space(); - } - if (n) { - this.word("const"); - this.space(); - } - this.word("enum"); - this.space(); - this.print(r, e); - this.space(); - this.tsPrintBraced(i, e); - }; - n.TSEnumMember = function(e) { - const {id: t, initializer: n} = e; - this.print(t, e); - if (n) { - this.space(); - this.token("="); - this.space(); - this.print(n, e); - } - this.token(","); - }; - n.TSModuleDeclaration = function(e) { - const {declare: t, id: n} = e; - if (t) { - this.word("declare"); - this.space(); - } - if (!e.global) { - this.word("Identifier" === n.type ? "namespace" : "module"); - this.space(); - } - this.print(n, e); - if (!e.body) { - this.token(";"); - return; - } - let r = e.body; - for (;"TSModuleDeclaration" === r.type; ) { - this.token("."); - this.print(r.id, r); - r = r.body; - } - this.space(); - this.print(r, e); - }; - n.TSModuleBlock = function(e) { - this.tsPrintBraced(e.body, e); - }; - n.TSImportType = function(e) { - const {argument: t, qualifier: n, typeParameters: r} = e; - this.word("import"); - this.token("("); - this.print(t, e); - this.token(")"); - if (n) { - this.token("."); - this.print(n, e); - } - r && this.print(r, e); - }; - n.TSImportEqualsDeclaration = function(e) { - const {isExport: t, id: n, moduleReference: r} = e; - if (t) { - this.word("export"); - this.space(); - } - this.word("import"); - this.space(); - this.print(n, e); - this.space(); - this.token("="); - this.space(); - this.print(r, e); - this.token(";"); - }; - n.TSExternalModuleReference = function(e) { - this.token("require("); - this.print(e.expression, e); - this.token(")"); - }; - n.TSNonNullExpression = function(e) { - this.print(e.expression, e); - this.token("!"); - }; - n.TSExportAssignment = function(e) { - this.word("export"); - this.space(); - this.token("="); - this.space(); - this.print(e.expression, e); - this.token(";"); - }; - n.TSNamespaceExportDeclaration = function(e) { - this.word("export"); - this.space(); - this.word("as"); - this.space(); - this.word("namespace"); - this.space(); - this.print(e.id, e); - }; - n.tsPrintSignatureDeclarationBase = function(e) { - const {typeParameters: t, parameters: n} = e; - this.print(t, e); - this.token("("); - this._parameters(n, e); - this.token(")"); - this.print(e.typeAnnotation, e); - }; - n.tsPrintClassMemberModifiers = function(e, t) { - if (t && e.declare) { - this.word("declare"); - this.space(); - } - if (e.accessibility) { - this.word(e.accessibility); - this.space(); - } - if (e.static) { - this.word("static"); - this.space(); - } - if (e.override) { - this.word("override"); - this.space(); - } - if (e.abstract) { - this.word("abstract"); - this.space(); - } - if (t && e.readonly) { - this.word("readonly"); - this.space(); - } - }; - function r(e, t) { - !0 !== t && e.token(t); - } - }, {} ], - 16: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - return new s(e, t, n).generate(); - }; - n.CodeGenerator = void 0; - r = e("./source-map"); - i = e("./printer"); - class s extends i.default { - constructor(e, t = {}, n) { - super(function(e, t) { - const n = { - auxiliaryCommentBefore: t.auxiliaryCommentBefore, - auxiliaryCommentAfter: t.auxiliaryCommentAfter, - shouldPrintComment: t.shouldPrintComment, - retainLines: t.retainLines, - retainFunctionParens: t.retainFunctionParens, - comments: null == t.comments || t.comments, - compact: t.compact, - minified: t.minified, - concise: t.concise, - indent: { - adjustMultilineComment: !0, - style: " ", - base: 0 - }, - decoratorsBeforeExport: !!t.decoratorsBeforeExport, - jsescOption: Object.assign({ - quotes: "double", - wrap: !0, - minimal: !1 - }, t.jsescOption), - recordAndTupleSyntaxType: t.recordAndTupleSyntaxType, - topicToken: t.topicToken - }; - n.jsonCompatibleStrings = t.jsonCompatibleStrings; - if (n.minified) { - n.compact = !0; - n.shouldPrintComment = n.shouldPrintComment || (() => n.comments); - } else n.shouldPrintComment = n.shouldPrintComment || (e => n.comments || e.indexOf("@license") >= 0 || e.indexOf("@preserve") >= 0); - if ("auto" === n.compact) { - n.compact = e.length > 5e5; - n.compact && console.error("[BABEL] Note: The code generator has deoptimised the styling of " + `${t.filename} as it exceeds the max of 500KB.`); - } - n.compact && (n.indent.adjustMultilineComment = !1); - return n; - }(n, t), t.sourceMaps ? new r.default(t, n) : null); - this.ast = void 0; - this.ast = e; - } - generate() { - return super.generate(this.ast); - } - } - n.CodeGenerator = class { - constructor(e, t, n) { - this._generator = void 0; - this._generator = new s(e, t, n); - } - generate() { - return this._generator.generate(); - } - }; - }, { - "./printer": 20, - "./source-map": 21 - } ], - 17: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.needsWhitespace = y; - n.needsWhitespaceBefore = function(e, t) { - return y(e, t, "before"); - }; - n.needsWhitespaceAfter = function(e, t) { - return y(e, t, "after"); - }; - n.needsParens = function(e, t, n) { - if (!t) return !1; - if (p(t) && t.callee === e && function e(t) { - if (o(t)) return !0; - return c(t) && e(t.object); - }(e)) return !0; - return m(d, e, t, n); - }; - r = e("./whitespace"); - i = e("./parentheses"); - s = e("@babel/types"); - const {FLIPPED_ALIAS_KEYS: a, isCallExpression: o, isExpressionStatement: l, isMemberExpression: c, isNewExpression: p} = s; - function u(e) { - const t = {}; - function n(e, n) { - const r = t[e]; - t[e] = r ? function(e, t, i) { - const s = r(e, t, i); - return null == s ? n(e, t, i) : s; - } : n; - } - for (const t of Object.keys(e)) { - const r = a[t]; - if (r) for (const i of r) n(i, e[t]); else n(t, e[t]); - } - return t; - } - const d = u(i); - const h = u(r.nodes); - const f = u(r.list); - function m(e, t, n, r) { - const i = e[t.type]; - return i ? i(t, n, r) : null; - } - function y(e, t, n) { - if (!e) return 0; - l(e) && (e = e.expression); - let r = m(h, e, t); - if (!r) { - const i = m(f, e, t); - if (i) for (let t = 0; t < i.length && !(r = y(i[t], e, n)); t++) ; - } - return "object" == typeof r && null !== r && r[n] || 0; - } - }, { - "./parentheses": 18, - "./whitespace": 19, - "@babel/types": 108 - } ], - 18: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.NullableTypeAnnotation = function(e, t) { - return i(t); - }; - n.FunctionTypeAnnotation = function(e, t, n) { - return X(t) || v(t) || i(t) || Y(t) && s(n[n.length - 3]); - }; - n.UpdateExpression = function(e, t) { - return Z(e, t) || Q(e, t); - }; - n.ObjectExpression = function(e, t, n) { - return ne(n, { - expressionStatement: !0, - arrowBody: !0 - }); - }; - n.DoExpression = function(e, t, n) { - return !e.async && ne(n, { - expressionStatement: !0 - }); - }; - n.Binary = function(e, t) { - if ("**" === e.operator && c(t, { - operator: "**" - })) return t.left === e; - if (Q(e, t)) return !0; - if (Z(e, t) || J(t) || o(t)) return !0; - if (l(t)) { - const n = t.operator; - const r = z[n]; - const i = e.operator; - const s = z[i]; - if (r === s && t.right === e && !A(t) || r > s) return !0; - } - }; - n.IntersectionTypeAnnotation = n.UnionTypeAnnotation = function(e, t) { - return i(t) || I(t) || v(t) || X(t); - }; - n.OptionalIndexedAccessType = function(e, t) { - return P(t, { - objectType: e - }); - }; - n.TSAsExpression = function() { - return !0; - }; - n.TSTypeAssertion = function() { - return !0; - }; - n.TSIntersectionType = n.TSUnionType = function(e, t) { - return L(t) || R(t) || F(t) || K(t) || U(t); - }; - n.TSInferType = function(e, t) { - return L(t) || R(t); - }; - n.BinaryExpression = function(e, t) { - return "in" === e.operator && (G(t) || T(t)); - }; - n.SequenceExpression = function(e, t) { - if (x(t) || q(t) || D(t) || E(t) && t.test === e || H(t) && t.test === e || b(t) && t.right === e || _(t) && t.discriminant === e || g(t) && t.expression === e) return !1; - return !0; - }; - n.AwaitExpression = n.YieldExpression = function(e, t) { - return l(t) || J(t) || Z(e, t) || o(t) && $(e) || f(t) && e === t.test || Q(e, t); - }; - n.ClassExpression = function(e, t, n) { - return ne(n, { - expressionStatement: !0, - exportDefault: !0 - }); - }; - n.UnaryLike = ee; - n.FunctionExpression = function(e, t, n) { - return ne(n, { - expressionStatement: !0, - exportDefault: !0 - }); - }; - n.ArrowFunctionExpression = function(e, t) { - return m(t) || te(e, t); - }; - n.ConditionalExpression = te; - n.OptionalCallExpression = n.OptionalMemberExpression = function(e, t) { - return p(t, { - callee: e - }) || w(t, { - object: e - }); - }; - n.AssignmentExpression = function(e, t) { - return !!O(e.left) || te(e, t); - }; - n.LogicalExpression = function(e, t) { - switch (e.operator) { - case "||": - return !!A(t) && ("??" === t.operator || "&&" === t.operator); - - case "&&": - return A(t, { - operator: "??" - }); - - case "??": - return A(t) && "??" !== t.operator; - } - }; - n.Identifier = function(e, t, n) { - if ("let" === e.name) { - const r = w(t, { - object: e, - computed: !0 - }) || k(t, { - object: e, - computed: !0, - optional: !1 - }); - return ne(n, { - expressionStatement: r, - forHead: r, - forInHead: r, - forOfHead: !0 - }); - } - return "async" === e.name && S(t) && e === t.left; - }; - var r = e("@babel/types"); - const {isArrayTypeAnnotation: i, isArrowFunctionExpression: s, isAssignmentExpression: a, isAwaitExpression: o, isBinary: l, isBinaryExpression: c, isCallExpression: p, isClassDeclaration: u, isClassExpression: d, isConditional: h, isConditionalExpression: f, isExportDeclaration: m, isExportDefaultDeclaration: y, isExpressionStatement: g, isFor: T, isForInStatement: b, isForOfStatement: S, isForStatement: x, isIfStatement: E, isIndexedAccessType: P, isIntersectionTypeAnnotation: v, isLogicalExpression: A, isMemberExpression: w, isNewExpression: C, isNullableTypeAnnotation: I, isObjectPattern: O, isOptionalCallExpression: N, isOptionalMemberExpression: k, isReturnStatement: D, isSequenceExpression: M, isSwitchStatement: _, isTSArrayType: L, isTSAsExpression: j, isTSIntersectionType: F, isTSNonNullExpression: B, isTSOptionalType: R, isTSRestType: U, isTSTypeAssertion: V, isTSUnionType: K, isTaggedTemplateExpression: W, isThrowStatement: q, isTypeAnnotation: Y, isUnaryLike: J, isUnionTypeAnnotation: X, isVariableDeclarator: G, isWhileStatement: H, isYieldExpression: $} = r; - const z = { - "||": 0, - "??": 0, - "&&": 1, - "|": 2, - "^": 3, - "&": 4, - "==": 5, - "===": 5, - "!=": 5, - "!==": 5, - "<": 6, - ">": 6, - "<=": 6, - ">=": 6, - in: 6, - instanceof: 6, - ">>": 7, - "<<": 7, - ">>>": 7, - "+": 8, - "-": 8, - "*": 9, - "/": 9, - "%": 9, - "**": 10 - }; - const Q = (e, t) => (u(t) || d(t)) && t.superClass === e; - const Z = (e, t) => (w(t) || k(t)) && t.object === e || (p(t) || N(t) || C(t)) && t.callee === e || W(t) && t.tag === e || B(t); - function ee(e, t) { - return Z(e, t) || c(t, { - operator: "**", - left: e - }) || Q(e, t); - } - function te(e, t) { - return !!(J(t) || l(t) || f(t, { - test: e - }) || o(t) || V(t) || j(t)) || ee(e, t); - } - function ne(e, {expressionStatement: t = !1, arrowBody: n = !1, exportDefault: r = !1, forHead: i = !1, forInHead: o = !1, forOfHead: c = !1}) { - let p = e.length - 1; - let u = e[p]; - let d = e[--p]; - for (;p >= 0; ) { - if (t && g(d, { - expression: u - }) || r && y(d, { - declaration: u - }) || n && s(d, { - body: u - }) || i && x(d, { - init: u - }) || o && b(d, { - left: u - }) || c && S(d, { - left: u - })) return !0; - if (!(Z(u, d) && !C(d) || M(d) && d.expressions[0] === u || h(d, { - test: u - }) || l(d, { - left: u - }) || a(d, { - left: u - }))) return !1; - u = d; - d = e[--p]; - } - return !1; - } - }, { - "@babel/types": 108 - } ], - 19: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.list = n.nodes = void 0; - var r = e("@babel/types"); - const {FLIPPED_ALIAS_KEYS: i, isArrayExpression: s, isAssignmentExpression: a, isBinary: o, isBlockStatement: l, isCallExpression: c, isFunction: p, isIdentifier: u, isLiteral: d, isMemberExpression: h, isObjectExpression: f, isOptionalCallExpression: m, isOptionalMemberExpression: y, isStringLiteral: g} = r; - function T(e, t = {}) { - if (h(e) || y(e)) { - T(e.object, t); - e.computed && T(e.property, t); - } else if (o(e) || a(e)) { - T(e.left, t); - T(e.right, t); - } else if (c(e) || m(e)) { - t.hasCall = !0; - T(e.callee, t); - } else p(e) ? t.hasFunction = !0 : u(e) && (t.hasHelper = t.hasHelper || b(e.callee)); - return t; - } - function b(e) { - return h(e) ? b(e.object) || b(e.property) : u(e) ? "require" === e.name || "_" === e.name[0] : c(e) ? b(e.callee) : !(!o(e) && !a(e)) && (u(e.left) && b(e.left) || b(e.right)); - } - function S(e) { - return d(e) || f(e) || s(e) || u(e) || h(e); - } - const x = { - AssignmentExpression(e) { - const t = T(e.right); - if (t.hasCall && t.hasHelper || t.hasFunction) return { - before: t.hasFunction, - after: !0 - }; - }, - SwitchCase: (e, t) => ({ - before: !!e.consequent.length || t.cases[0] === e, - after: !e.consequent.length && t.cases[t.cases.length - 1] === e - }), - LogicalExpression(e) { - if (p(e.left) || p(e.right)) return { - after: !0 - }; - }, - Literal(e) { - if (g(e) && "use strict" === e.value) return { - after: !0 - }; - }, - CallExpression(e) { - if (p(e.callee) || b(e)) return { - before: !0, - after: !0 - }; - }, - OptionalCallExpression(e) { - if (p(e.callee)) return { - before: !0, - after: !0 - }; - }, - VariableDeclaration(e) { - for (let t = 0; t < e.declarations.length; t++) { - const n = e.declarations[t]; - let r = b(n.id) && !S(n.init); - if (!r) { - const e = T(n.init); - r = b(n.init) && e.hasCall || e.hasFunction; - } - if (r) return { - before: !0, - after: !0 - }; - } - }, - IfStatement(e) { - if (l(e.consequent)) return { - before: !0, - after: !0 - }; - } - }; - n.nodes = x; - x.ObjectProperty = x.ObjectTypeProperty = x.ObjectMethod = function(e, t) { - if (t.properties[0] === e) return { - before: !0 - }; - }; - x.ObjectTypeCallProperty = function(e, t) { - var n; - if (t.callProperties[0] === e && (null == (n = t.properties) || !n.length)) return { - before: !0 - }; - }; - x.ObjectTypeIndexer = function(e, t) { - var n, r; - if (!(t.indexers[0] !== e || null != (n = t.properties) && n.length || null != (r = t.callProperties) && r.length)) return { - before: !0 - }; - }; - x.ObjectTypeInternalSlot = function(e, t) { - var n, r, i; - if (!(t.internalSlots[0] !== e || null != (n = t.properties) && n.length || null != (r = t.callProperties) && r.length || null != (i = t.indexers) && i.length)) return { - before: !0 - }; - }; - const E = { - VariableDeclaration: e => e.declarations.map(e => e.init), - ArrayExpression: e => e.elements, - ObjectExpression: e => e.properties - }; - n.list = E; - [ [ "Function", !0 ], [ "Class", !0 ], [ "Loop", !0 ], [ "LabeledStatement", !0 ], [ "SwitchStatement", !0 ], [ "TryStatement", !0 ] ].forEach(function([e, t]) { - "boolean" == typeof t && (t = { - after: t, - before: t - }); - [ e ].concat(i[e] || []).forEach(function(e) { - x[e] = function() { - return t; - }; - }); - }); - }, { - "@babel/types": 108 - } ], - 20: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("./buffer"); - i = e("./node"); - s = e("@babel/types"); - a = e("./generators"); - const {isProgram: l, isFile: c, isEmptyStatement: p} = s; - const u = /e/i; - const d = /\.0+$/; - const h = /^0[box]/; - const f = /^\s*[@#]__PURE__\s*$/; - const {needsParens: m, needsWhitespaceAfter: y, needsWhitespaceBefore: g} = i; - class T { - constructor(e, t) { - this.inForStatementInitCounter = 0; - this._printStack = []; - this._indent = 0; - this._insideAux = !1; - this._parenPushNewlineState = null; - this._noLineTerminator = !1; - this._printAuxAfterOnNextUserNode = !1; - this._printedComments = new WeakSet(); - this._endsWithInteger = !1; - this._endsWithWord = !1; - this.format = e; - this._buf = new r.default(t); - } - generate(e) { - this.print(e); - this._maybeAddAuxComment(); - return this._buf.get(); - } - indent() { - this.format.compact || this.format.concise || this._indent++; - } - dedent() { - this.format.compact || this.format.concise || this._indent--; - } - semicolon(e = !1) { - this._maybeAddAuxComment(); - this._append(";", !e); - } - rightBrace() { - this.format.minified && this._buf.removeLastSemicolon(); - this.token("}"); - } - space(e = !1) { - if (!this.format.compact) if (e) this._space(); else if (this._buf.hasContent()) { - const e = this.getLastChar(); - 32 !== e && 10 !== e && this._space(); - } - } - word(e) { - (this._endsWithWord || this.endsWith(47) && 47 === e.charCodeAt(0)) && this._space(); - this._maybeAddAuxComment(); - this._append(e); - this._endsWithWord = !0; - } - number(e) { - this.word(e); - this._endsWithInteger = Number.isInteger(+e) && !h.test(e) && !u.test(e) && !d.test(e) && 46 !== e.charCodeAt(e.length - 1); - } - token(e) { - const t = this.getLastChar(); - const n = e.charCodeAt(0); - ("--" === e && 33 === t || 43 === n && 43 === t || 45 === n && 45 === t || 46 === n && this._endsWithInteger) && this._space(); - this._maybeAddAuxComment(); - this._append(e); - } - newline(e = 1) { - if (this.format.retainLines || this.format.compact) return; - if (this.format.concise) { - this.space(); - return; - } - const t = this.endsWithCharAndNewline(); - if (10 !== t) { - 123 !== t && 58 !== t || e--; - if (!(e <= 0)) for (let t = 0; t < e; t++) this._newline(); - } - } - endsWith(e) { - return this.getLastChar() === e; - } - getLastChar() { - return this._buf.getLastChar(); - } - endsWithCharAndNewline() { - return this._buf.endsWithCharAndNewline(); - } - removeTrailingNewline() { - this._buf.removeTrailingNewline(); - } - exactSource(e, t) { - this._catchUp("start", e); - this._buf.exactSource(e, t); - } - source(e, t) { - this._catchUp(e, t); - this._buf.source(e, t); - } - withSource(e, t, n) { - this._catchUp(e, t); - this._buf.withSource(e, t, n); - } - _space() { - this._append(" ", !0); - } - _newline() { - this._append("\n", !0); - } - _append(e, t = !1) { - this._maybeAddParen(e); - this._maybeIndent(e); - t ? this._buf.queue(e) : this._buf.append(e); - this._endsWithWord = !1; - this._endsWithInteger = !1; - } - _maybeIndent(e) { - this._indent && this.endsWith(10) && 10 !== e.charCodeAt(0) && this._buf.queue(this._getIndent()); - } - _maybeAddParen(e) { - const t = this._parenPushNewlineState; - if (!t) return; - let n; - for (n = 0; n < e.length && " " === e[n]; n++) continue; - if (n === e.length) return; - const r = e[n]; - if ("\n" !== r) { - if ("/" !== r || n + 1 === e.length) { - this._parenPushNewlineState = null; - return; - } - const t = e[n + 1]; - if ("*" === t) { - if (f.test(e.slice(n + 2, e.length - 2))) return; - } else if ("/" !== t) { - this._parenPushNewlineState = null; - return; - } - } - this.token("("); - this.indent(); - t.printed = !0; - } - _catchUp(e, t) { - if (!this.format.retainLines) return; - const n = t ? t[e] : null; - if (null != (null == n ? void 0 : n.line)) { - const e = n.line - this._buf.getCurrentLine(); - for (let t = 0; t < e; t++) this._newline(); - } - } - _getIndent() { - return this.format.indent.style.repeat(this._indent); - } - startTerminatorless(e = !1) { - if (e) { - this._noLineTerminator = !0; - return null; - } - return this._parenPushNewlineState = { - printed: !1 - }; - } - endTerminatorless(e) { - this._noLineTerminator = !1; - if (null != e && e.printed) { - this.dedent(); - this.newline(); - this.token(")"); - } - } - print(e, t) { - if (!e) return; - const n = this.format.concise; - e._compact && (this.format.concise = !0); - const r = this[e.type]; - if (!r) throw new ReferenceError(`unknown node of type ${JSON.stringify(e.type)} with constructor ${JSON.stringify(null == e ? void 0 : e.constructor.name)}`); - this._printStack.push(e); - const i = this._insideAux; - this._insideAux = !e.loc; - this._maybeAddAuxComment(this._insideAux && !i); - let s = m(e, t, this._printStack); - this.format.retainFunctionParens && "FunctionExpression" === e.type && e.extra && e.extra.parenthesized && (s = !0); - s && this.token("("); - this._printLeadingComments(e); - const a = l(e) || c(e) ? null : e.loc; - this.withSource("start", a, () => { - r.call(this, e, t); - }); - this._printTrailingComments(e); - s && this.token(")"); - this._printStack.pop(); - this.format.concise = n; - this._insideAux = i; - } - _maybeAddAuxComment(e) { - e && this._printAuxBeforeComment(); - this._insideAux || this._printAuxAfterComment(); - } - _printAuxBeforeComment() { - if (this._printAuxAfterOnNextUserNode) return; - this._printAuxAfterOnNextUserNode = !0; - const e = this.format.auxiliaryCommentBefore; - e && this._printComment({ - type: "CommentBlock", - value: e - }); - } - _printAuxAfterComment() { - if (!this._printAuxAfterOnNextUserNode) return; - this._printAuxAfterOnNextUserNode = !1; - const e = this.format.auxiliaryCommentAfter; - e && this._printComment({ - type: "CommentBlock", - value: e - }); - } - getPossibleRaw(e) { - const t = e.extra; - if (t && null != t.raw && null != t.rawValue && e.value === t.rawValue) return t.raw; - } - printJoin(e, t, n = {}) { - if (null == e || !e.length) return; - n.indent && this.indent(); - const r = { - addNewlines: n.addNewlines - }; - for (let i = 0; i < e.length; i++) { - const s = e[i]; - if (s) { - n.statement && this._printNewline(!0, s, t, r); - this.print(s, t); - n.iterator && n.iterator(s, i); - n.separator && i < e.length - 1 && n.separator.call(this); - n.statement && this._printNewline(!1, s, t, r); - } - } - n.indent && this.dedent(); - } - printAndIndentOnComments(e, t) { - const n = e.leadingComments && e.leadingComments.length > 0; - n && this.indent(); - this.print(e, t); - n && this.dedent(); - } - printBlock(e) { - const t = e.body; - p(t) || this.space(); - this.print(t, e); - } - _printTrailingComments(e) { - this._printComments(this._getComments(!1, e)); - } - _printLeadingComments(e) { - this._printComments(this._getComments(!0, e), !0); - } - printInnerComments(e, t = !0) { - var n; - if (null != (n = e.innerComments) && n.length) { - t && this.indent(); - this._printComments(e.innerComments); - t && this.dedent(); - } - } - printSequence(e, t, n = {}) { - n.statement = !0; - return this.printJoin(e, t, n); - } - printList(e, t, n = {}) { - null == n.separator && (n.separator = b); - return this.printJoin(e, t, n); - } - _printNewline(e, t, n, r) { - if (this.format.retainLines || this.format.compact) return; - if (this.format.concise) { - this.space(); - return; - } - let i = 0; - if (this._buf.hasContent()) { - e || i++; - r.addNewlines && (i += r.addNewlines(e, t) || 0); - (e ? g : y)(t, n) && i++; - } - this.newline(Math.min(2, i)); - } - _getComments(e, t) { - return t && (e ? t.leadingComments : t.trailingComments) || []; - } - _printComment(e, t) { - if (!this.format.shouldPrintComment(e.value)) return; - if (e.ignore) return; - if (this._printedComments.has(e)) return; - this._printedComments.add(e); - const n = "CommentBlock" === e.type; - const r = n && !t && !this._noLineTerminator; - r && this._buf.hasContent() && this.newline(1); - const i = this.getLastChar(); - 91 !== i && 123 !== i && this.space(); - let s = n || this._noLineTerminator ? `/*${e.value}*/` : `//${e.value}\n`; - if (n && this.format.indent.adjustMultilineComment) { - var a; - const t = null == (a = e.loc) ? void 0 : a.start.column; - if (t) { - const e = new RegExp("\\n\\s{1," + t + "}", "g"); - s = s.replace(e, "\n"); - } - const n = Math.max(this._getIndent().length, this.format.retainLines ? 0 : this._buf.getCurrentColumn()); - s = s.replace(/\n(?!$)/g, `\n${" ".repeat(n)}`); - } - this.endsWith(47) && this._space(); - this.withSource("start", e.loc, () => { - this._append(s); - }); - r && this.newline(1); - } - _printComments(e, t) { - if (null != e && e.length) if (t && 1 === e.length && f.test(e[0].value)) this._printComment(e[0], this._buf.hasContent() && !this.endsWith(10)); else for (const t of e) this._printComment(t); - } - printAssertions(e) { - var t; - if (null != (t = e.assertions) && t.length) { - this.space(); - this.word("assert"); - this.space(); - this.token("{"); - this.space(); - this.printList(e.assertions, e); - this.space(); - this.token("}"); - } - } - } - Object.assign(T.prototype, a); - T.prototype.Noop = function() {}; - o = T; - n.default = o; - function b() { - this.token(","); - this.space(); - } - }, { - "./buffer": 3, - "./generators": 8, - "./node": 17, - "@babel/types": 108 - } ], - 21: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - var r = e("source-map"); - n.default = class { - constructor(e, t) { - this._cachedMap = void 0; - this._code = void 0; - this._opts = void 0; - this._rawMappings = void 0; - this._lastGenLine = void 0; - this._lastSourceLine = void 0; - this._lastSourceColumn = void 0; - this._cachedMap = null; - this._code = t; - this._opts = e; - this._rawMappings = []; - } - get() { - if (!this._cachedMap) { - const e = this._cachedMap = new r.SourceMapGenerator({ - sourceRoot: this._opts.sourceRoot - }); - const t = this._code; - "string" == typeof t ? e.setSourceContent(this._opts.sourceFileName.replace(/\\/g, "/"), t) : "object" == typeof t && Object.keys(t).forEach(n => { - e.setSourceContent(n.replace(/\\/g, "/"), t[n]); - }); - this._rawMappings.forEach(t => e.addMapping(t), e); - } - return this._cachedMap.toJSON(); - } - getRawMappings() { - return this._rawMappings.slice(); - } - mark(e, t, n, r, i, s, a) { - if ((this._lastGenLine === e || null !== n) && (a || this._lastGenLine !== e || this._lastSourceLine !== n || this._lastSourceColumn !== r)) { - this._cachedMap = null; - this._lastGenLine = e; - this._lastSourceLine = n; - this._lastSourceColumn = r; - this._rawMappings.push({ - name: i || void 0, - generated: { - line: e, - column: t - }, - source: null == n ? void 0 : (s || this._opts.sourceFileName).replace(/\\/g, "/"), - original: null == n ? void 0 : { - line: n, - column: r - } - }); - } - } - }; - }, { - "source-map": 171 - } ], - 22: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function({node: e, parent: t, scope: n, id: i}, s = !1) { - if (e.id) return; - if (!m(t) && !f(t, { - kind: "method" - }) || t.computed && !d(t.key)) { - if (T(t)) { - i = t.id; - if (u(i) && !s) { - const t = n.parent.getBinding(i.name); - if (t && t.constant && n.getBinding(i.name) === t) { - e.id = o(i); - e.id[a] = !0; - return; - } - } - } else if (c(t, { - operator: "=" - })) i = t.left; else if (!i) return; - } else i = t.key; - let P; - i && d(i) ? P = function(e) { - if (h(e)) return "null"; - if (y(e)) return `_${e.pattern}_${e.flags}`; - if (g(e)) return e.quasis.map(e => e.value.raw).join(""); - if (void 0 !== e.value) return e.value + ""; - return ""; - }(i) : i && u(i) && (P = i.name); - if (void 0 === P) return; - P = b(P); - (i = l(P))[a] = !0; - return function(e, t, n, i) { - if (e.selfReference) { - if (!i.hasBinding(n.name) || i.hasGlobal(n.name)) { - if (!p(t)) return; - let e = S; - t.generator && (e = x); - const s = e({ - FUNCTION: t, - FUNCTION_ID: n, - FUNCTION_KEY: i.generateUidIdentifier(n.name) - }).expression; - const a = s.callee.body.body[0].params; - for (let e = 0, n = (0, r.default)(t); e < n; e++) a.push(i.generateUidIdentifier("x")); - return s; - } - i.rename(n.name); - } - t.id = n; - i.getProgramParent().references[n.name] = !0; - }(function(e, t, n) { - const r = { - selfAssignment: !1, - selfReference: !1, - outerDeclar: n.getBindingIdentifier(t), - references: [], - name: t - }; - const i = n.getOwnBinding(t); - i ? "param" === i.kind && (r.selfReference = !0) : (r.outerDeclar || n.hasGlobal(t)) && n.traverse(e, E, r); - return r; - }(e, P, n), e, i, n) || e; - }; - r = e("@babel/helper-get-function-arity"); - i = e("@babel/template"); - s = e("@babel/types"); - const {NOT_LOCAL_BINDING: a, cloneNode: o, identifier: l, isAssignmentExpression: c, isFunction: p, isIdentifier: u, isLiteral: d, isNullLiteral: h, isObjectMethod: f, isObjectProperty: m, isRegExpLiteral: y, isTemplateLiteral: g, isVariableDeclarator: T, toBindingIdentifierName: b} = s; - const S = (0, i.default)("\n (function (FUNCTION_KEY) {\n function FUNCTION_ID() {\n return FUNCTION_KEY.apply(this, arguments);\n }\n\n FUNCTION_ID.toString = function () {\n return FUNCTION_KEY.toString();\n }\n\n return FUNCTION_ID;\n })(FUNCTION)\n"); - const x = (0, i.default)("\n (function (FUNCTION_KEY) {\n function* FUNCTION_ID() {\n return yield* FUNCTION_KEY.apply(this, arguments);\n }\n\n FUNCTION_ID.toString = function () {\n return FUNCTION_KEY.toString();\n };\n\n return FUNCTION_ID;\n })(FUNCTION)\n"); - const E = { - "ReferencedIdentifier|BindingIdentifier"(e, t) { - if (e.node.name !== t.name) return; - if (e.scope.getBindingIdentifier(t.name) === t.outerDeclar) { - t.selfReference = !0; - e.stop(); - } - } - }; - }, { - "@babel/helper-get-function-arity": 23, - "@babel/template": 33, - "@babel/types": 108 - } ], - 23: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - const t = e.params; - for (let e = 0; e < t.length; e++) { - const n = t[e]; - if (i(n) || s(n)) return e; - } - return t.length; - }; - var r = e("@babel/types"); - const {isAssignmentPattern: i, isRestElement: s} = r; - }, { - "@babel/types": 108 - } ], - 24: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n = "var") { - e.traverse(o, { - kind: n, - emit: t - }); - }; - var r = e("@babel/types"); - const {assignmentExpression: i, expressionStatement: s, identifier: a} = r; - const o = { - Scope(e, t) { - "let" === t.kind && e.skip(); - }, - FunctionParent(e) { - e.skip(); - }, - VariableDeclaration(e, t) { - if (t.kind && e.node.kind !== t.kind) return; - const n = []; - const r = e.get("declarations"); - let o; - for (const e of r) { - o = e.node.id; - e.node.init && n.push(s(i("=", e.node.id, e.node.init))); - for (const n of Object.keys(e.getBindingIdentifiers())) t.emit(a(n), n, null !== e.node.init); - } - e.parentPath.isFor({ - left: e.node - }) ? e.replaceWith(o) : e.replaceWithMultiple(n); - } - }; - }, { - "@babel/types": 108 - } ], - 25: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - if (!e.isExportDeclaration()) throw new Error("Only export declarations can be split."); - const t = e.isExportDefaultDeclaration(); - const n = e.get("declaration"); - const r = n.isClassDeclaration(); - if (t) { - const t = n.isFunctionDeclaration() || r; - const p = n.isScope() ? n.scope.parent : n.scope; - let u = n.node.id; - let d = !1; - if (!u) { - d = !0; - u = p.generateUidIdentifier("default"); - (t || n.isFunctionExpression() || n.isClassExpression()) && (n.node.id = i(u)); - } - const h = t ? n : l("var", [ c(i(u), n.node) ]); - const f = s(null, [ a(i(u), o("default")) ]); - e.insertAfter(f); - e.replaceWith(h); - d && p.registerDeclaration(e); - return e; - } - if (e.get("specifiers").length > 0) throw new Error("It doesn't make sense to split exported specifiers."); - const p = n.getOuterBindingIdentifiers(); - const u = Object.keys(p).map(e => a(o(e), o(e))); - const d = s(null, u); - e.insertAfter(d); - e.replaceWith(n.node); - return e; - }; - var r = e("@babel/types"); - const {cloneNode: i, exportNamedDeclaration: s, exportSpecifier: a, identifier: o, variableDeclaration: l, variableDeclarator: c} = r; - }, { - "@babel/types": 108 - } ], - 26: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.isIdentifierStart = p; - n.isIdentifierChar = u; - n.isIdentifierName = function(e) { - let t = !0; - for (let n = 0; n < e.length; n++) { - let r = e.charCodeAt(n); - if (55296 == (64512 & r) && n + 1 < e.length) { - const t = e.charCodeAt(++n); - 56320 == (64512 & t) && (r = 65536 + ((1023 & r) << 10) + (1023 & t)); - } - if (t) { - t = !1; - if (!p(r)) return !1; - } else if (!u(r)) return !1; - } - return !t; - }; - let r = "ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ"; - let i = "‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_"; - const s = new RegExp("[" + r + "]"); - const a = new RegExp("[" + r + i + "]"); - r = i = null; - const o = [ 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, 68, 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, 349, 41, 7, 1, 79, 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, 85, 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, 159, 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, 264, 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, 190, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1070, 4050, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 46, 2, 18, 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, 482, 44, 11, 6, 17, 0, 322, 29, 19, 43, 1269, 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, 4152, 8, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938 ]; - const l = [ 509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 154, 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, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 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, 406, 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, 19306, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 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, 262, 6, 10, 9, 357, 0, 62, 13, 1495, 6, 110, 6, 6, 9, 4759, 9, 787719, 239 ]; - function c(e, t) { - let n = 65536; - for (let r = 0, i = t.length; r < i; r += 2) { - if ((n += t[r]) > e) return !1; - if ((n += t[r + 1]) >= e) return !0; - } - return !1; - } - function p(e) { - return e < 65 ? 36 === e : e <= 90 || (e < 97 ? 95 === e : e <= 122 || (e <= 65535 ? e >= 170 && s.test(String.fromCharCode(e)) : c(e, o))); - } - function u(e) { - return e < 48 ? 36 === e : e < 58 || !(e < 65) && (e <= 90 || (e < 97 ? 95 === e : e <= 122 || (e <= 65535 ? e >= 170 && a.test(String.fromCharCode(e)) : c(e, o) || c(e, l)))); - } - }, {} ], - 27: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - Object.defineProperty(n, "isIdentifierName", { - enumerable: !0, - get: function() { - return r.isIdentifierName; - } - }); - Object.defineProperty(n, "isIdentifierChar", { - enumerable: !0, - get: function() { - return r.isIdentifierChar; - } - }); - Object.defineProperty(n, "isIdentifierStart", { - enumerable: !0, - get: function() { - return r.isIdentifierStart; - } - }); - Object.defineProperty(n, "isReservedWord", { - enumerable: !0, - get: function() { - return i.isReservedWord; - } - }); - Object.defineProperty(n, "isStrictBindOnlyReservedWord", { - enumerable: !0, - get: function() { - return i.isStrictBindOnlyReservedWord; - } - }); - Object.defineProperty(n, "isStrictBindReservedWord", { - enumerable: !0, - get: function() { - return i.isStrictBindReservedWord; - } - }); - Object.defineProperty(n, "isStrictReservedWord", { - enumerable: !0, - get: function() { - return i.isStrictReservedWord; - } - }); - Object.defineProperty(n, "isKeyword", { - enumerable: !0, - get: function() { - return i.isKeyword; - } - }); - r = e("./identifier"); - i = e("./keyword"); - }, { - "./identifier": 26, - "./keyword": 28 - } ], - 28: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.isReservedWord = l; - n.isStrictReservedWord = c; - n.isStrictBindOnlyReservedWord = p; - n.isStrictBindReservedWord = function(e, t) { - return c(e, t) || p(e); - }; - n.isKeyword = function(e) { - return s.has(e); - }; - const r = [ "implements", "interface", "let", "package", "private", "protected", "public", "static", "yield" ], i = [ "eval", "arguments" ]; - const s = new Set([ "break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete" ]); - const a = new Set(r); - const o = new Set(i); - function l(e, t) { - return t && "await" === e || "enum" === e; - } - function c(e, t) { - return l(e, t) || a.has(e); - } - function p(e) { - return o.has(e); - } - }, {} ], - 29: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.shouldHighlight = p; - n.getChalk = u; - n.default = function(e, t = {}) { - if (p(t)) { - const n = u(t); - const r = { - keyword: (n = n).cyan, - capitalized: n.yellow, - jsxIdentifier: n.yellow, - punctuator: n.yellow, - number: n.magenta, - string: n.green, - regex: n.magenta, - comment: n.grey, - invalid: n.white.bgRed.bold - }; - return function(e, t) { - let n = ""; - for (const {type: r, value: i} of c(t)) { - const t = e[r]; - n += t ? i.split(o).map(e => t(e)).join("\n") : i; - } - return n; - }(r, e); - } - return e; - var n; - }; - r = e("js-tokens"); - i = e("@babel/helper-validator-identifier"); - s = e("chalk"); - const a = new Set([ "as", "async", "from", "get", "of", "set" ]); - const o = /\r\n|[\n\r\u2028\u2029]/; - const l = /^[()[\]{}]$/; - let c; - { - const e = /^[a-z][\w-]*$/i; - const t = function(t, n, r) { - if ("name" === t.type) { - if ((0, i.isKeyword)(t.value) || (0, i.isStrictReservedWord)(t.value, !0) || a.has(t.value)) return "keyword"; - if (e.test(t.value) && ("<" === r[n - 1] || " 0; ) r = t[--i]; - null === r || r.start > n.start ? T(e, n.comments) : g(r, n.comments); - } - class S extends y { - addComment(e) { - this.filename && (e.loc.filename = this.filename); - this.state.comments.push(e); - } - processComment(e) { - const {commentStack: t} = this.state; - const n = t.length; - if (0 === n) return; - let r = n - 1; - const i = t[r]; - if (i.start === e.end) { - i.leadingNode = e; - r--; - } - const {start: s} = e; - for (;r >= 0; r--) { - const n = t[r]; - const i = n.end; - if (!(i > s)) { - i === s && (n.trailingNode = e); - break; - } - n.containingNode = e; - this.finalizeComment(n); - t.splice(r, 1); - } - } - finalizeComment(e) { - const {comments: t} = e; - if (null !== e.leadingNode || null !== e.trailingNode) { - null !== e.leadingNode && g(e.leadingNode, t); - null !== e.trailingNode && (e.trailingNode.leadingComments = t); - } else { - const {containingNode: n, start: r} = e; - if (44 === this.input.charCodeAt(r - 1)) switch (n.type) { - case "ObjectExpression": - case "ObjectPattern": - case "RecordExpression": - b(n, n.properties, e); - break; - - case "CallExpression": - case "OptionalCallExpression": - b(n, n.arguments, e); - break; - - case "FunctionDeclaration": - case "FunctionExpression": - case "ArrowFunctionExpression": - case "ObjectMethod": - case "ClassMethod": - case "ClassPrivateMethod": - b(n, n.params, e); - break; - - case "ArrayExpression": - case "ArrayPattern": - case "TupleExpression": - b(n, n.elements, e); - break; - - case "ExportNamedDeclaration": - case "ImportDeclaration": - b(n, n.specifiers, e); - break; - - default: - T(n, t); - } else T(n, t); - } - } - finalizeRemainingComments() { - const {commentStack: e} = this.state; - for (let t = e.length - 1; t >= 0; t--) this.finalizeComment(e[t]); - this.state.commentStack = []; - } - resetPreviousNodeTrailingComments(e) { - const {commentStack: t} = this.state; - const {length: n} = t; - if (0 === n) return; - const r = t[n - 1]; - r.leadingNode === e && (r.leadingNode = null); - } - } - const x = Object.freeze({ - SyntaxError: "BABEL_PARSER_SYNTAX_ERROR", - SourceTypeModuleError: "BABEL_PARSER_SOURCETYPE_MODULE_REQUIRED" - }); - const E = v({ - AccessorIsGenerator: "A %0ter cannot be a generator.", - ArgumentsInClass: "'arguments' is only allowed in functions and class methods.", - AsyncFunctionInSingleStatementContext: "Async functions can only be declared at the top level or inside a block.", - AwaitBindingIdentifier: "Can not use 'await' as identifier inside an async function.", - AwaitBindingIdentifierInStaticBlock: "Can not use 'await' as identifier inside a static block.", - AwaitExpressionFormalParameter: "'await' is not allowed in async function parameters.", - AwaitNotInAsyncContext: "'await' is only allowed within async functions and at the top levels of modules.", - AwaitNotInAsyncFunction: "'await' is only allowed within async functions.", - BadGetterArity: "A 'get' accesor must not have any formal parameters.", - BadSetterArity: "A 'set' accesor must have exactly one formal parameter.", - BadSetterRestParameter: "A 'set' accesor function argument must not be a rest parameter.", - ConstructorClassField: "Classes may not have a field named 'constructor'.", - ConstructorClassPrivateField: "Classes may not have a private field named '#constructor'.", - ConstructorIsAccessor: "Class constructor may not be an accessor.", - ConstructorIsAsync: "Constructor can't be an async function.", - ConstructorIsGenerator: "Constructor can't be a generator.", - DeclarationMissingInitializer: "'%0' require an initialization value.", - DecoratorBeforeExport: "Decorators must be placed *before* the 'export' keyword. You can set the 'decoratorsBeforeExport' option to false to use the 'export @decorator class {}' syntax.", - DecoratorConstructor: "Decorators can't be used with a constructor. Did you mean '@dec class { ... }'?", - DecoratorExportClass: "Using the export keyword between a decorator and a class is not allowed. Please use `export @dec class` instead.", - DecoratorSemicolon: "Decorators must not be followed by a semicolon.", - DecoratorStaticBlock: "Decorators can't be used with a static block.", - DeletePrivateField: "Deleting a private field is not allowed.", - DestructureNamedImport: "ES2015 named imports do not destructure. Use another statement for destructuring after the import.", - DuplicateConstructor: "Duplicate constructor in the same class.", - DuplicateDefaultExport: "Only one default export allowed per module.", - DuplicateExport: "`%0` has already been exported. Exported identifiers must be unique.", - DuplicateProto: "Redefinition of __proto__ property.", - DuplicateRegExpFlags: "Duplicate regular expression flag.", - ElementAfterRest: "Rest element must be last element.", - EscapedCharNotAnIdentifier: "Invalid Unicode escape.", - ExportBindingIsString: "A string literal cannot be used as an exported binding without `from`.\n- Did you mean `export { '%0' as '%1' } from 'some-module'`?", - ExportDefaultFromAsIdentifier: "'from' is not allowed as an identifier after 'export default'.", - ForInOfLoopInitializer: "'%0' loop variable declaration may not have an initializer.", - ForOfAsync: "The left-hand side of a for-of loop may not be 'async'.", - ForOfLet: "The left-hand side of a for-of loop may not start with 'let'.", - GeneratorInSingleStatementContext: "Generators can only be declared at the top level or inside a block.", - IllegalBreakContinue: "Unsyntactic %0.", - IllegalLanguageModeDirective: "Illegal 'use strict' directive in function with non-simple parameter list.", - IllegalReturn: "'return' outside of function.", - ImportBindingIsString: 'A string literal cannot be used as an imported binding.\n- Did you mean `import { "%0" as foo }`?', - ImportCallArgumentTrailingComma: "Trailing comma is disallowed inside import(...) arguments.", - ImportCallArity: "`import()` requires exactly %0.", - ImportCallNotNewExpression: "Cannot use new with import(...).", - ImportCallSpreadArgument: "`...` is not allowed in `import()`.", - InvalidBigIntLiteral: "Invalid BigIntLiteral.", - InvalidCodePoint: "Code point out of bounds.", - InvalidDecimal: "Invalid decimal.", - InvalidDigit: "Expected number in radix %0.", - InvalidEscapeSequence: "Bad character escape sequence.", - InvalidEscapeSequenceTemplate: "Invalid escape sequence in template.", - InvalidEscapedReservedWord: "Escape sequence in keyword %0.", - InvalidIdentifier: "Invalid identifier %0.", - InvalidLhs: "Invalid left-hand side in %0.", - InvalidLhsBinding: "Binding invalid left-hand side in %0.", - InvalidNumber: "Invalid number.", - InvalidOrMissingExponent: "Floating-point numbers require a valid exponent after the 'e'.", - InvalidOrUnexpectedToken: "Unexpected character '%0'.", - InvalidParenthesizedAssignment: "Invalid parenthesized assignment pattern.", - InvalidPrivateFieldResolution: "Private name #%0 is not defined.", - InvalidPropertyBindingPattern: "Binding member expression.", - InvalidRecordProperty: "Only properties and spread elements are allowed in record definitions.", - InvalidRestAssignmentPattern: "Invalid rest operator's argument.", - LabelRedeclaration: "Label '%0' is already declared.", - LetInLexicalBinding: "'let' is not allowed to be used as a name in 'let' or 'const' declarations.", - LineTerminatorBeforeArrow: "No line break is allowed before '=>'.", - MalformedRegExpFlags: "Invalid regular expression flag.", - MissingClassName: "A class name is required.", - MissingEqInAssignment: "Only '=' operator can be used for specifying default value.", - MissingSemicolon: "Missing semicolon.", - MissingUnicodeEscape: "Expecting Unicode escape sequence \\uXXXX.", - MixingCoalesceWithLogical: "Nullish coalescing operator(??) requires parens when mixing with logical operators.", - ModuleAttributeDifferentFromType: "The only accepted module attribute is `type`.", - ModuleAttributeInvalidValue: "Only string literals are allowed as module attribute values.", - ModuleAttributesWithDuplicateKeys: 'Duplicate key "%0" is not allowed in module attributes.', - ModuleExportNameHasLoneSurrogate: "An export name cannot include a lone surrogate, found '\\u%0'.", - ModuleExportUndefined: "Export '%0' is not defined.", - MultipleDefaultsInSwitch: "Multiple default clauses.", - NewlineAfterThrow: "Illegal newline after throw.", - NoCatchOrFinally: "Missing catch or finally clause.", - NumberIdentifier: "Identifier directly after number.", - NumericSeparatorInEscapeSequence: "Numeric separators are not allowed inside unicode escape sequences or hex escape sequences.", - ObsoleteAwaitStar: "'await*' has been removed from the async functions proposal. Use Promise.all() instead.", - OptionalChainingNoNew: "Constructors in/after an Optional Chain are not allowed.", - OptionalChainingNoTemplate: "Tagged Template Literals are not allowed in optionalChain.", - OverrideOnConstructor: "'override' modifier cannot appear on a constructor declaration.", - ParamDupe: "Argument name clash.", - PatternHasAccessor: "Object pattern can't contain getter or setter.", - PatternHasMethod: "Object pattern can't contain methods.", - PipeBodyIsTighter: "Unexpected %0 after pipeline body; any %0 expression acting as Hack-style pipe body must be parenthesized due to its loose operator precedence.", - PipeTopicRequiresHackPipes: 'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.', - PipeTopicUnbound: "Topic reference is unbound; it must be inside a pipe body.", - PipeTopicUnconfiguredToken: 'Invalid topic token %0. In order to use %0 as a topic reference, the pipelineOperator plugin must be configured with { "proposal": "hack", "topicToken": "%0" }.', - PipeTopicUnused: "Hack-style pipe body does not contain a topic reference; Hack-style pipes must use topic at least once.", - PipeUnparenthesizedBody: "Hack-style pipe body cannot be an unparenthesized %0 expression; please wrap it in parentheses.", - PipelineBodyNoArrow: 'Unexpected arrow "=>" after pipeline body; arrow function in pipeline body must be parenthesized.', - PipelineBodySequenceExpression: "Pipeline body may not be a comma-separated sequence expression.", - PipelineHeadSequenceExpression: "Pipeline head should not be a comma-separated sequence expression.", - PipelineTopicUnused: "Pipeline is in topic style but does not use topic reference.", - PrimaryTopicNotAllowed: "Topic reference was used in a lexical context without topic binding.", - PrimaryTopicRequiresSmartPipeline: 'Topic reference is used, but the pipelineOperator plugin was not passed a "proposal": "hack" or "smart" option.', - PrivateInExpectedIn: "Private names are only allowed in property accesses (`obj.#%0`) or in `in` expressions (`#%0 in obj`).", - PrivateNameRedeclaration: "Duplicate private name #%0.", - RecordExpressionBarIncorrectEndSyntaxType: "Record expressions ending with '|}' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - RecordExpressionBarIncorrectStartSyntaxType: "Record expressions starting with '{|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - RecordExpressionHashIncorrectStartSyntaxType: "Record expressions starting with '#{' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.", - RecordNoProto: "'__proto__' is not allowed in Record expressions.", - RestTrailingComma: "Unexpected trailing comma after rest element.", - SloppyFunction: "In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement.", - StaticPrototype: "Classes may not have static property named prototype.", - StrictDelete: "Deleting local variable in strict mode.", - StrictEvalArguments: "Assigning to '%0' in strict mode.", - StrictEvalArgumentsBinding: "Binding '%0' in strict mode.", - StrictFunction: "In strict mode code, functions can only be declared at top level or inside a block.", - StrictNumericEscape: "The only valid numeric escape in strict mode is '\\0'.", - StrictOctalLiteral: "Legacy octal literals are not allowed in strict mode.", - StrictWith: "'with' in strict mode.", - SuperNotAllowed: "`super()` is only valid inside a class constructor of a subclass. Maybe a typo in the method name ('constructor') or not extending another class?", - SuperPrivateField: "Private fields can't be accessed on super.", - TrailingDecorator: "Decorators must be attached to a class element.", - TupleExpressionBarIncorrectEndSyntaxType: "Tuple expressions ending with '|]' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - TupleExpressionBarIncorrectStartSyntaxType: "Tuple expressions starting with '[|' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'bar'.", - TupleExpressionHashIncorrectStartSyntaxType: "Tuple expressions starting with '#[' are only allowed when the 'syntaxType' option of the 'recordAndTuple' plugin is set to 'hash'.", - UnexpectedArgumentPlaceholder: "Unexpected argument placeholder.", - UnexpectedAwaitAfterPipelineBody: 'Unexpected "await" after pipeline body; await must have parentheses in minimal proposal.', - UnexpectedDigitAfterHash: "Unexpected digit after hash token.", - UnexpectedImportExport: "'import' and 'export' may only appear at the top level.", - UnexpectedKeyword: "Unexpected keyword '%0'.", - UnexpectedLeadingDecorator: "Leading decorators must be attached to a class declaration.", - UnexpectedLexicalDeclaration: "Lexical declaration cannot appear in a single-statement context.", - UnexpectedNewTarget: "`new.target` can only be used in functions or class properties.", - UnexpectedNumericSeparator: "A numeric separator is only allowed between two digits.", - UnexpectedPrivateField: "Private names can only be used as the name of a class element (i.e. class C { #p = 42; #m() {} } )\n or a property of member expression (i.e. this.#p).", - UnexpectedReservedWord: "Unexpected reserved word '%0'.", - UnexpectedSuper: "'super' is only allowed in object methods and classes.", - UnexpectedToken: "Unexpected token '%0'.", - UnexpectedTokenUnaryExponentiation: "Illegal expression. Wrap left hand side or entire exponentiation in parentheses.", - UnsupportedBind: "Binding should be performed on object property.", - UnsupportedDecoratorExport: "A decorated export must export a class declaration.", - UnsupportedDefaultExport: "Only expressions, functions or classes are allowed as the `default` export.", - UnsupportedImport: "`import` can only be used in `import()` or `import.meta`.", - UnsupportedMetaProperty: "The only valid meta property for %0 is %0.%1.", - UnsupportedParameterDecorator: "Decorators cannot be used to decorate parameters.", - UnsupportedPropertyDecorator: "Decorators cannot be used to decorate object literal properties.", - UnsupportedSuper: "'super' can only be used with function calls (i.e. super()) or in property accesses (i.e. super.prop or super[prop]).", - UnterminatedComment: "Unterminated comment.", - UnterminatedRegExp: "Unterminated regular expression.", - UnterminatedString: "Unterminated string constant.", - UnterminatedTemplate: "Unterminated template.", - VarRedeclaration: "Identifier '%0' has already been declared.", - YieldBindingIdentifier: "Can not use 'yield' as identifier inside a generator.", - YieldInParameter: "Yield expression is not allowed in formal parameters.", - ZeroDigitNumericSeparator: "Numeric separator can not be used after leading 0." - }, x.SyntaxError); - const P = v({ - ImportMetaOutsideModule: "import.meta may appear only with 'sourceType: \"module\"'", - ImportOutsideModule: "'import' and 'export' may appear only with 'sourceType: \"module\"'" - }, x.SourceTypeModuleError); - function v(e, t, n) { - const r = {}; - Object.keys(e).forEach(i => { - r[i] = Object.freeze({ - code: t, - reasonCode: function(e, t) { - return "flow" === t && "PatternIsOptional" === e ? "OptionalBindingPattern" : e; - }(i, n), - template: e[i] - }); - }); - return Object.freeze(r); - } - class A extends S { - getLocationForPosition(e) { - let t; - return t = e === this.state.start ? this.state.startLoc : e === this.state.lastTokStart ? this.state.lastTokStartLoc : e === this.state.end ? this.state.endLoc : e === this.state.lastTokEnd ? this.state.lastTokEndLoc : function(e, t) { - let n = 1; - let r = 0; - let i; - c.lastIndex = 0; - for (;(i = c.exec(e)) && i.index < t; ) { - n++; - r = c.lastIndex; - } - return new f(n, t - r); - }(this.input, e); - } - raise(e, {code: t, reasonCode: n, template: r}, ...i) { - return this.raiseWithData(e, { - code: t, - reasonCode: n - }, r, ...i); - } - raiseOverwrite(e, {code: t, template: n}, ...r) { - const i = this.getLocationForPosition(e); - const s = n.replace(/%(\d+)/g, (e, t) => r[t]) + ` (${i.line}:${i.column})`; - if (this.options.errorRecovery) { - const t = this.state.errors; - for (let n = t.length - 1; n >= 0; n--) { - const r = t[n]; - if (r.pos === e) return Object.assign(r, { - message: s - }); - if (r.pos < e) break; - } - } - return this._raise({ - code: t, - loc: i, - pos: e - }, s); - } - raiseWithData(e, t, n, ...r) { - const i = this.getLocationForPosition(e); - const s = n.replace(/%(\d+)/g, (e, t) => r[t]) + ` (${i.line}:${i.column})`; - return this._raise(Object.assign({ - loc: i, - pos: e - }, t), s); - } - _raise(e, t) { - const n = new SyntaxError(t); - Object.assign(n, e); - if (this.options.errorRecovery) { - this.isLookahead || this.state.errors.push(n); - return n; - } - throw n; - } - } - r = (e => (class extends e { - parseRegExpLiteral({pattern: e, flags: t}) { - let n = null; - try { - n = new RegExp(e, t); - } catch (e) {} - const r = this.estreeParseLiteral(n); - r.regex = { - pattern: e, - flags: t - }; - return r; - } - parseBigIntLiteral(e) { - let t; - try { - t = BigInt(e); - } catch (e) { - t = null; - } - const n = this.estreeParseLiteral(t); - n.bigint = String(n.value || e); - return n; - } - parseDecimalLiteral(e) { - const t = this.estreeParseLiteral(null); - t.decimal = String(t.value || e); - return t; - } - estreeParseLiteral(e) { - return this.parseLiteral(e, "Literal"); - } - parseStringLiteral(e) { - return this.estreeParseLiteral(e); - } - parseNumericLiteral(e) { - return this.estreeParseLiteral(e); - } - parseNullLiteral() { - return this.estreeParseLiteral(null); - } - parseBooleanLiteral(e) { - return this.estreeParseLiteral(e); - } - directiveToStmt(e) { - const t = e.value; - const n = this.startNodeAt(e.start, e.loc.start); - const r = this.startNodeAt(t.start, t.loc.start); - r.value = t.extra.expressionValue; - r.raw = t.extra.raw; - n.expression = this.finishNodeAt(r, "Literal", t.end, t.loc.end); - n.directive = t.extra.raw.slice(1, -1); - return this.finishNodeAt(n, "ExpressionStatement", e.end, e.loc.end); - } - initFunction(e, t) { - super.initFunction(e, t); - e.expression = !1; - } - checkDeclaration(e) { - null != e && this.isObjectProperty(e) ? this.checkDeclaration(e.value) : super.checkDeclaration(e); - } - getObjectOrClassMethodParams(e) { - return e.value.params; - } - isValidDirective(e) { - var t; - return "ExpressionStatement" === e.type && "Literal" === e.expression.type && "string" == typeof e.expression.value && !(null != (t = e.expression.extra) && t.parenthesized); - } - stmtToDirective(e) { - const t = e.expression.value; - const n = super.stmtToDirective(e); - this.addExtra(n.value, "expressionValue", t); - return n; - } - parseBlockBody(e, ...t) { - super.parseBlockBody(e, ...t); - const n = e.directives.map(e => this.directiveToStmt(e)); - e.body = n.concat(e.body); - delete e.directives; - } - pushClassMethod(e, t, n, r, i, s) { - this.parseMethod(t, n, r, i, s, "ClassMethod", !0); - if (t.typeParameters) { - t.value.typeParameters = t.typeParameters; - delete t.typeParameters; - } - e.body.push(t); - } - parsePrivateName() { - const e = super.parsePrivateName(); - return this.getPluginOption("estree", "classFeatures") ? this.convertPrivateNameToPrivateIdentifier(e) : e; - } - convertPrivateNameToPrivateIdentifier(e) { - const t = super.getPrivateNameSV(e); - delete (e = e).id; - e.name = t; - e.type = "PrivateIdentifier"; - return e; - } - isPrivateName(e) { - return this.getPluginOption("estree", "classFeatures") ? "PrivateIdentifier" === e.type : super.isPrivateName(e); - } - getPrivateNameSV(e) { - return this.getPluginOption("estree", "classFeatures") ? e.name : super.getPrivateNameSV(e); - } - parseLiteral(e, t) { - const n = super.parseLiteral(e, t); - n.raw = n.extra.raw; - delete n.extra; - return n; - } - parseFunctionBody(e, t, n = !1) { - super.parseFunctionBody(e, t, n); - e.expression = "BlockStatement" !== e.body.type; - } - parseMethod(e, t, n, r, i, s, a = !1) { - let o = this.startNode(); - o.kind = e.kind; - (o = super.parseMethod(o, t, n, r, i, s, a)).type = "FunctionExpression"; - delete o.kind; - e.value = o; - "ClassPrivateMethod" === s && (e.computed = !1); - s = "MethodDefinition"; - return this.finishNode(e, s); - } - parseClassProperty(...e) { - const t = super.parseClassProperty(...e); - this.getPluginOption("estree", "classFeatures") && (t.type = "PropertyDefinition"); - return t; - } - parseClassPrivateProperty(...e) { - const t = super.parseClassPrivateProperty(...e); - if (this.getPluginOption("estree", "classFeatures")) { - t.type = "PropertyDefinition"; - t.computed = !1; - } - return t; - } - parseObjectMethod(e, t, n, r, i) { - const s = super.parseObjectMethod(e, t, n, r, i); - if (s) { - s.type = "Property"; - "method" === s.kind && (s.kind = "init"); - s.shorthand = !1; - } - return s; - } - parseObjectProperty(e, t, n, r, i) { - const s = super.parseObjectProperty(e, t, n, r, i); - if (s) { - s.kind = "init"; - s.type = "Property"; - } - return s; - } - isAssignable(e, t) { - return null != e && this.isObjectProperty(e) ? this.isAssignable(e.value, t) : super.isAssignable(e, t); - } - toAssignable(e, t = !1) { - if (null != e && this.isObjectProperty(e)) { - this.toAssignable(e.value, t); - return e; - } - return super.toAssignable(e, t); - } - toAssignableObjectExpressionProp(e, ...t) { - "get" === e.kind || "set" === e.kind ? this.raise(e.key.start, E.PatternHasAccessor) : e.method ? this.raise(e.key.start, E.PatternHasMethod) : super.toAssignableObjectExpressionProp(e, ...t); - } - finishCallExpression(e, t) { - super.finishCallExpression(e, t); - if ("Import" === e.callee.type) { - e.type = "ImportExpression"; - e.source = e.arguments[0]; - if (this.hasPlugin("importAssertions")) { - var n; - e.attributes = null != (n = e.arguments[1]) ? n : null; - } - delete e.arguments; - delete e.callee; - } - return e; - } - toReferencedArguments(e) { - "ImportExpression" !== e.type && super.toReferencedArguments(e); - } - parseExport(e) { - super.parseExport(e); - switch (e.type) { - case "ExportAllDeclaration": - e.exported = null; - break; - - case "ExportNamedDeclaration": - if (1 === e.specifiers.length && "ExportNamespaceSpecifier" === e.specifiers[0].type) { - e.type = "ExportAllDeclaration"; - e.exported = e.specifiers[0].exported; - delete e.specifiers; - } - } - return e; - } - parseSubscript(e, t, n, r, i) { - const s = super.parseSubscript(e, t, n, r, i); - if (i.optionalChainMember) { - "OptionalMemberExpression" !== s.type && "OptionalCallExpression" !== s.type || (s.type = s.type.substring(8)); - if (i.stop) { - const e = this.startNodeAtNode(s); - e.expression = s; - return this.finishNode(e, "ChainExpression"); - } - } else "MemberExpression" !== s.type && "CallExpression" !== s.type || (s.optional = !1); - return s; - } - hasPropertyAsPrivateName(e) { - "ChainExpression" === e.type && (e = e.expression); - return super.hasPropertyAsPrivateName(e); - } - isOptionalChain(e) { - return "ChainExpression" === e.type; - } - isObjectProperty(e) { - return "Property" === e.type && "init" === e.kind && !e.method; - } - isObjectMethod(e) { - return e.method || "get" === e.kind || "set" === e.kind; - } - })); - class w { - constructor(e, t) { - this.token = void 0; - this.preserveSpace = void 0; - this.token = e; - this.preserveSpace = !!t; - } - } - const C = { - brace: new w("{"), - template: new w("`", !0) - }; - const I = !0; - class O { - constructor(e, t = {}) { - this.label = void 0; - this.keyword = void 0; - this.beforeExpr = void 0; - this.startsExpr = void 0; - this.rightAssociative = void 0; - this.isLoop = void 0; - this.isAssign = void 0; - this.prefix = void 0; - this.postfix = void 0; - this.binop = void 0; - this.label = e; - this.keyword = t.keyword; - this.beforeExpr = !!t.beforeExpr; - this.startsExpr = !!t.startsExpr; - this.rightAssociative = !!t.rightAssociative; - this.isLoop = !!t.isLoop; - this.isAssign = !!t.isAssign; - this.prefix = !!t.prefix; - this.postfix = !!t.postfix; - this.binop = null != t.binop ? t.binop : null; - this.updateContext = null; - } - } - const N = new Map(); - function k(e, t = {}) { - t.keyword = e; - const n = U(e, t); - N.set(e, n); - return n; - } - function D(e, t) { - return U(e, { - beforeExpr: I, - binop: t - }); - } - let M = -1; - const _ = []; - const L = []; - const j = []; - const F = []; - const B = []; - const R = []; - function U(e, t = {}) { - var n, r, i, s; - ++M; - L.push(e); - j.push(null != (n = t.binop) ? n : -1); - F.push(null != (r = t.beforeExpr) && r); - B.push(null != (i = t.startsExpr) && i); - R.push(null != (s = t.prefix) && s); - _.push(new O(e, t)); - return M; - } - const V = { - num: U("num", { - startsExpr: !0 - }), - bigint: U("bigint", { - startsExpr: !0 - }), - decimal: U("decimal", { - startsExpr: !0 - }), - regexp: U("regexp", { - startsExpr: !0 - }), - string: U("string", { - startsExpr: !0 - }), - name: U("name", { - startsExpr: !0 - }), - privateName: U("#name", { - startsExpr: !0 - }), - eof: U("eof"), - bracketL: U("[", { - beforeExpr: I, - startsExpr: !0 - }), - bracketHashL: U("#[", { - beforeExpr: I, - startsExpr: !0 - }), - bracketBarL: U("[|", { - beforeExpr: I, - startsExpr: !0 - }), - bracketR: U("]"), - bracketBarR: U("|]"), - braceL: U("{", { - beforeExpr: I, - startsExpr: !0 - }), - braceBarL: U("{|", { - beforeExpr: I, - startsExpr: !0 - }), - braceHashL: U("#{", { - beforeExpr: I, - startsExpr: !0 - }), - braceR: U("}", { - beforeExpr: I - }), - braceBarR: U("|}"), - parenL: U("(", { - beforeExpr: I, - startsExpr: !0 - }), - parenR: U(")"), - comma: U(",", { - beforeExpr: I - }), - semi: U(";", { - beforeExpr: I - }), - colon: U(":", { - beforeExpr: I - }), - doubleColon: U("::", { - beforeExpr: I - }), - dot: U("."), - question: U("?", { - beforeExpr: I - }), - questionDot: U("?."), - arrow: U("=>", { - beforeExpr: I - }), - template: U("template"), - ellipsis: U("...", { - beforeExpr: I - }), - backQuote: U("`", { - startsExpr: !0 - }), - dollarBraceL: U("${", { - beforeExpr: I, - startsExpr: !0 - }), - at: U("@"), - hash: U("#", { - startsExpr: !0 - }), - interpreterDirective: U("#!..."), - eq: U("=", { - beforeExpr: I, - isAssign: !0 - }), - assign: U("_=", { - beforeExpr: I, - isAssign: !0 - }), - slashAssign: U("_=", { - beforeExpr: I, - isAssign: !0 - }), - moduloAssign: U("_=", { - beforeExpr: I, - isAssign: !0 - }), - incDec: U("++/--", { - prefix: !0, - postfix: !0, - startsExpr: !0 - }), - bang: U("!", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - tilde: U("~", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - pipeline: D("|>", 0), - nullishCoalescing: D("??", 1), - logicalOR: D("||", 1), - logicalAND: D("&&", 2), - bitwiseOR: D("|", 3), - bitwiseXOR: D("^", 4), - bitwiseAND: D("&", 5), - equality: D("==/!=/===/!==", 6), - relational: D("/<=/>=", 7), - bitShift: D("<>/>>>", 8), - plusMin: U("+/-", { - beforeExpr: I, - binop: 9, - prefix: !0, - startsExpr: !0 - }), - modulo: U("%", { - binop: 10, - startsExpr: !0 - }), - star: U("*", { - binop: 10 - }), - slash: D("/", 10), - exponent: U("**", { - beforeExpr: I, - binop: 11, - rightAssociative: !0 - }), - _in: k("in", { - beforeExpr: I, - binop: 7 - }), - _instanceof: k("instanceof", { - beforeExpr: I, - binop: 7 - }), - _break: k("break"), - _case: k("case", { - beforeExpr: I - }), - _catch: k("catch"), - _continue: k("continue"), - _debugger: k("debugger"), - _default: k("default", { - beforeExpr: I - }), - _else: k("else", { - beforeExpr: I - }), - _finally: k("finally"), - _function: k("function", { - startsExpr: !0 - }), - _if: k("if"), - _return: k("return", { - beforeExpr: I - }), - _switch: k("switch"), - _throw: k("throw", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - _try: k("try"), - _var: k("var"), - _const: k("const"), - _with: k("with"), - _new: k("new", { - beforeExpr: I, - startsExpr: !0 - }), - _this: k("this", { - startsExpr: !0 - }), - _super: k("super", { - startsExpr: !0 - }), - _class: k("class", { - startsExpr: !0 - }), - _extends: k("extends", { - beforeExpr: I - }), - _export: k("export"), - _import: k("import", { - startsExpr: !0 - }), - _null: k("null", { - startsExpr: !0 - }), - _true: k("true", { - startsExpr: !0 - }), - _false: k("false", { - startsExpr: !0 - }), - _typeof: k("typeof", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - _void: k("void", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - _delete: k("delete", { - beforeExpr: I, - prefix: !0, - startsExpr: !0 - }), - _do: k("do", { - isLoop: !0, - beforeExpr: I - }), - _for: k("for", { - isLoop: !0 - }), - _while: k("while", { - isLoop: !0 - }), - jsxName: U("jsxName"), - jsxText: U("jsxText", { - beforeExpr: !0 - }), - jsxTagStart: U("jsxTagStart", { - startsExpr: !0 - }), - jsxTagEnd: U("jsxTagEnd"), - placeholder: U("%%", { - startsExpr: !0 - }) - }; - function K(e) { - return B[e]; - } - function W(e) { - return e >= 57 && e <= 91; - } - function q(e) { - return L[e]; - } - function Y(e) { - return j[e]; - } - function J(e) { - return _[e]; - } - _[16].updateContext = (e => { - e.pop(); - }); - _[13].updateContext = _[15].updateContext = _[31].updateContext = (e => { - e.push(C.brace); - }); - _[30].updateContext = (e => { - e[e.length - 1] === C.template ? e.pop() : e.push(C.template); - }); - _[94].updateContext = (e => { - e.push(C.j_expr, C.j_oTag); - }); - let X = "ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢎࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೝೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꟊꟐꟑꟓꟕ-ꟙꟲ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ"; - let G = "‌‍·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࢘-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-ᫎᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_"; - const H = new RegExp("[" + X + "]"); - const $ = new RegExp("[" + X + G + "]"); - X = G = null; - const z = [ 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, 68, 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, 349, 41, 7, 1, 79, 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, 85, 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, 159, 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, 264, 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, 190, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1070, 4050, 582, 8634, 568, 8, 30, 18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2, 290, 46, 2, 18, 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, 482, 44, 11, 6, 17, 0, 322, 29, 19, 43, 1269, 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, 4152, 8, 221, 3, 5761, 15, 7472, 3104, 541, 1507, 4938 ]; - const Q = [ 509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 154, 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, 161, 11, 6, 9, 7, 3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9, 84, 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, 406, 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, 19306, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 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, 262, 6, 10, 9, 357, 0, 62, 13, 1495, 6, 110, 6, 6, 9, 4759, 9, 787719, 239 ]; - function Z(e, t) { - let n = 65536; - for (let r = 0, i = t.length; r < i; r += 2) { - if ((n += t[r]) > e) return !1; - if ((n += t[r + 1]) >= e) return !0; - } - return !1; - } - function ee(e) { - return e < 65 ? 36 === e : e <= 90 || (e < 97 ? 95 === e : e <= 122 || (e <= 65535 ? e >= 170 && H.test(String.fromCharCode(e)) : Z(e, z))); - } - function te(e) { - return e < 48 ? 36 === e : e < 58 || !(e < 65) && (e <= 90 || (e < 97 ? 95 === e : e <= 122 || (e <= 65535 ? e >= 170 && $.test(String.fromCharCode(e)) : Z(e, z) || Z(e, Q)))); - } - const ne = [ "implements", "interface", "let", "package", "private", "protected", "public", "static", "yield" ], re = [ "eval", "arguments" ]; - const ie = new Set([ "break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete" ]); - const se = new Set(ne); - const ae = new Set(re); - function oe(e, t) { - return t && "await" === e || "enum" === e; - } - function le(e, t) { - return oe(e, t) || se.has(e); - } - function ce(e) { - return ae.has(e); - } - function pe(e, t) { - return le(e, t) || ce(e); - } - function ue(e) { - return ie.has(e); - } - const de = new Set([ "break", "case", "catch", "continue", "debugger", "default", "do", "else", "finally", "for", "function", "if", "return", "switch", "throw", "try", "var", "const", "while", "with", "new", "this", "super", "class", "extends", "export", "import", "null", "true", "false", "in", "instanceof", "typeof", "void", "delete", "implements", "interface", "let", "package", "private", "protected", "public", "static", "yield", "eval", "arguments", "enum", "await" ]); - const he = 0, fe = 1, me = 2, ye = 4, ge = 8, Te = 16, be = 32, Se = 64, xe = 128, Ee = fe | me | 256; - const Pe = 1, ve = 2, Ae = 4, we = 8, Ce = 16, Ie = 128, Oe = 256, Ne = 512, ke = 1024, De = 2048; - const Me = Pe | ve | we | Ie, _e = 0 | Pe | we | 0, Le = 0 | Pe | Ae | 0, je = 0 | Pe | Ce | 0, Fe = 0 | ve | Ie, Be = 0 | ve, Re = Pe | ve | we | Oe, Ue = 0 | ke, Ve = 64, Ke = 64 | Pe, We = Re | Ne, qe = 0 | ke, Ye = De; - const Je = 4, Xe = 3; - const Ge = 2 | Je, He = 1 | Je, $e = 2, ze = 1, Qe = 0; - class Ze { - constructor(e) { - this.var = new Set(); - this.lexical = new Set(); - this.functions = new Set(); - this.flags = e; - } - } - class et { - constructor(e, t) { - this.scopeStack = []; - this.undefinedExports = new Map(); - this.undefinedPrivateNames = new Map(); - this.raise = e; - this.inModule = t; - } - get inFunction() { - return (this.currentVarScopeFlags() & me) > 0; - } - get allowSuper() { - return (this.currentThisScopeFlags() & Te) > 0; - } - get allowDirectSuper() { - return (this.currentThisScopeFlags() & be) > 0; - } - get inClass() { - return (this.currentThisScopeFlags() & Se) > 0; - } - get inClassAndNotInNonArrowFunction() { - const e = this.currentThisScopeFlags(); - return (e & Se) > 0 && 0 == (e & me); - } - get inStaticBlock() { - for (let e = this.scopeStack.length - 1; ;e--) { - const {flags: t} = this.scopeStack[e]; - if (t & xe) return !0; - if (t & (Ee | Se)) return !1; - } - } - get inNonArrowFunction() { - return (this.currentThisScopeFlags() & me) > 0; - } - get treatFunctionsAsVar() { - return this.treatFunctionsAsVarInScope(this.currentScope()); - } - createScope(e) { - return new Ze(e); - } - enter(e) { - this.scopeStack.push(this.createScope(e)); - } - exit() { - this.scopeStack.pop(); - } - treatFunctionsAsVarInScope(e) { - return !!(e.flags & me || !this.inModule && e.flags & fe); - } - declareName(e, t, n) { - let r = this.currentScope(); - if (t & we || t & Ce) { - this.checkRedeclarationInScope(r, e, t, n); - t & Ce ? r.functions.add(e) : r.lexical.add(e); - t & we && this.maybeExportDefined(r, e); - } else if (t & Ae) for (let i = this.scopeStack.length - 1; i >= 0; --i) { - r = this.scopeStack[i]; - this.checkRedeclarationInScope(r, e, t, n); - r.var.add(e); - this.maybeExportDefined(r, e); - if (r.flags & Ee) break; - } - this.inModule && r.flags & fe && this.undefinedExports.delete(e); - } - maybeExportDefined(e, t) { - this.inModule && e.flags & fe && this.undefinedExports.delete(t); - } - checkRedeclarationInScope(e, t, n, r) { - this.isRedeclaredInScope(e, t, n) && this.raise(r, E.VarRedeclaration, t); - } - isRedeclaredInScope(e, t, n) { - return !!(n & Pe) && (n & we ? e.lexical.has(t) || e.functions.has(t) || e.var.has(t) : n & Ce ? e.lexical.has(t) || !this.treatFunctionsAsVarInScope(e) && e.var.has(t) : e.lexical.has(t) && !(e.flags & ge && e.lexical.values().next().value === t) || !this.treatFunctionsAsVarInScope(e) && e.functions.has(t)); - } - checkLocalExport(e) { - const {name: t} = e; - const n = this.scopeStack[0]; - n.lexical.has(t) || n.var.has(t) || n.functions.has(t) || this.undefinedExports.set(t, e.start); - } - currentScope() { - return this.scopeStack[this.scopeStack.length - 1]; - } - currentVarScopeFlags() { - for (let e = this.scopeStack.length - 1; ;e--) { - const {flags: t} = this.scopeStack[e]; - if (t & Ee) return t; - } - } - currentThisScopeFlags() { - for (let e = this.scopeStack.length - 1; ;e--) { - const {flags: t} = this.scopeStack[e]; - if (t & (Ee | Se) && !(t & ye)) return t; - } - } - } - class tt extends Ze { - constructor(...e) { - super(...e); - this.declareFunctions = new Set(); - } - } - class nt extends et { - createScope(e) { - return new tt(e); - } - declareName(e, t, n) { - const r = this.currentScope(); - if (t & De) { - this.checkRedeclarationInScope(r, e, t, n); - this.maybeExportDefined(r, e); - r.declareFunctions.add(e); - } else super.declareName(...arguments); - } - isRedeclaredInScope(e, t, n) { - return !!super.isRedeclaredInScope(...arguments) || !!(n & De) && (!e.declareFunctions.has(t) && (e.lexical.has(t) || e.functions.has(t))); - } - checkLocalExport(e) { - this.scopeStack[0].declareFunctions.has(e.name) || super.checkLocalExport(e); - } - } - class rt { - constructor() { - this.strict = void 0; - this.curLine = void 0; - this.startLoc = void 0; - this.endLoc = void 0; - this.errors = []; - this.potentialArrowAt = -1; - this.noArrowAt = []; - this.noArrowParamsConversionAt = []; - this.maybeInArrowParameters = !1; - this.inType = !1; - this.noAnonFunctionType = !1; - this.inPropertyName = !1; - this.hasFlowComment = !1; - this.isAmbientContext = !1; - this.inAbstractClass = !1; - this.topicContext = { - maxNumOfResolvableTopics: 0, - maxTopicIndex: null - }; - this.soloAwait = !1; - this.inFSharpPipelineDirectBody = !1; - this.labels = []; - this.decoratorStack = [ [] ]; - this.comments = []; - this.commentStack = []; - this.pos = 0; - this.lineStart = 0; - this.type = 7; - this.value = null; - this.start = 0; - this.end = 0; - this.lastTokEndLoc = null; - this.lastTokStartLoc = null; - this.lastTokStart = 0; - this.lastTokEnd = 0; - this.context = [ C.brace ]; - this.exprAllowed = !0; - this.containsEsc = !1; - this.strictErrors = new Map(); - this.tokensLength = 0; - } - init(e) { - this.strict = !1 !== e.strictMode && (!0 === e.strictMode || "module" === e.sourceType); - this.curLine = e.startLine; - this.startLoc = this.endLoc = this.curPosition(); - } - curPosition() { - return new f(this.curLine, this.pos - this.lineStart); - } - clone(e) { - const t = new rt(); - const n = Object.keys(this); - for (let r = 0, i = n.length; r < i; r++) { - const i = n[r]; - let s = this[i]; - !e && Array.isArray(s) && (s = s.slice()); - t[i] = s; - } - return t; - } - } - i = function(e) { - return e >= 48 && e <= 57; - }; - const it = new Set([ 103, 109, 115, 105, 121, 117, 100 ]); - const st = { - decBinOct: [ 46, 66, 69, 79, 95, 98, 101, 111 ], - hex: [ 46, 88, 95, 120 ] - }; - const at = {}; - at.bin = [ 48, 49 ]; - at.oct = [ ...at.bin, 50, 51, 52, 53, 54, 55 ]; - at.dec = [ ...at.oct, 56, 57 ]; - at.hex = [ ...at.dec, 65, 66, 67, 68, 69, 70, 97, 98, 99, 100, 101, 102 ]; - class ot { - constructor(e) { - this.type = e.type; - this.value = e.value; - this.start = e.start; - this.end = e.end; - this.loc = new m(e.startLoc, e.endLoc); - } - } - class lt extends A { - constructor(e, t) { - super(); - this.isLookahead = void 0; - this.tokens = []; - this.state = new rt(); - this.state.init(e); - this.input = t; - this.length = t.length; - this.isLookahead = !1; - } - pushToken(e) { - this.tokens.length = this.state.tokensLength; - this.tokens.push(e); - ++this.state.tokensLength; - } - next() { - this.checkKeywordEscapes(); - this.options.tokens && this.pushToken(new ot(this.state)); - this.state.lastTokEnd = this.state.end; - this.state.lastTokStart = this.state.start; - this.state.lastTokEndLoc = this.state.endLoc; - this.state.lastTokStartLoc = this.state.startLoc; - this.nextToken(); - } - eat(e) { - if (this.match(e)) { - this.next(); - return !0; - } - return !1; - } - match(e) { - return this.state.type === e; - } - createLookaheadState(e) { - return { - pos: e.pos, - value: null, - type: e.type, - start: e.start, - end: e.end, - lastTokEnd: e.end, - context: [ this.curContext() ], - inType: e.inType - }; - } - lookahead() { - const e = this.state; - this.state = this.createLookaheadState(e); - this.isLookahead = !0; - this.nextToken(); - this.isLookahead = !1; - const t = this.state; - this.state = e; - return t; - } - nextTokenStart() { - return this.nextTokenStartSince(this.state.pos); - } - nextTokenStartSince(e) { - u.lastIndex = e; - return u.test(this.input) ? u.lastIndex : e; - } - lookaheadCharCode() { - return this.input.charCodeAt(this.nextTokenStart()); - } - codePointAtPos(e) { - let t = this.input.charCodeAt(e); - if (55296 == (64512 & t) && ++e < this.input.length) { - const n = this.input.charCodeAt(e); - 56320 == (64512 & n) && (t = 65536 + ((1023 & t) << 10) + (1023 & n)); - } - return t; - } - setStrict(e) { - this.state.strict = e; - if (e) { - this.state.strictErrors.forEach((e, t) => this.raise(t, e)); - this.state.strictErrors.clear(); - } - } - curContext() { - return this.state.context[this.state.context.length - 1]; - } - nextToken() { - const e = this.curContext(); - e.preserveSpace || this.skipSpace(); - this.state.start = this.state.pos; - this.isLookahead || (this.state.startLoc = this.state.curPosition()); - this.state.pos >= this.length ? this.finishToken(7) : e === C.template ? this.readTmplToken() : this.getTokenFromCode(this.codePointAtPos(this.state.pos)); - } - skipBlockComment() { - let e; - this.isLookahead || (e = this.state.curPosition()); - const t = this.state.pos; - const n = this.input.indexOf("*/", t + 2); - if (-1 === n) throw this.raise(t, E.UnterminatedComment); - this.state.pos = n + 2; - c.lastIndex = t + 2; - for (;c.test(this.input) && c.lastIndex <= n; ) { - ++this.state.curLine; - this.state.lineStart = c.lastIndex; - } - if (this.isLookahead) return; - const r = { - type: "CommentBlock", - value: this.input.slice(t + 2, n), - start: t, - end: n + 2, - loc: new m(e, this.state.curPosition()) - }; - this.options.tokens && this.pushToken(r); - return r; - } - skipLineComment(e) { - const t = this.state.pos; - let n; - this.isLookahead || (n = this.state.curPosition()); - let r = this.input.charCodeAt(this.state.pos += e); - if (this.state.pos < this.length) for (;!p(r) && ++this.state.pos < this.length; ) r = this.input.charCodeAt(this.state.pos); - if (this.isLookahead) return; - const i = this.state.pos; - const s = { - type: "CommentLine", - value: this.input.slice(t + e, i), - start: t, - end: i, - loc: new m(n, this.state.curPosition()) - }; - this.options.tokens && this.pushToken(s); - return s; - } - skipSpace() { - const e = this.state.pos; - const t = []; - e: for (;this.state.pos < this.length; ) { - const n = this.input.charCodeAt(this.state.pos); - switch (n) { - case 32: - case 160: - case 9: - ++this.state.pos; - break; - - case 13: - 10 === this.input.charCodeAt(this.state.pos + 1) && ++this.state.pos; - - case 10: - case 8232: - case 8233: - ++this.state.pos; - ++this.state.curLine; - this.state.lineStart = this.state.pos; - break; - - case 47: - switch (this.input.charCodeAt(this.state.pos + 1)) { - case 42: - { - const e = this.skipBlockComment(); - if (void 0 !== e) { - this.addComment(e); - this.options.attachComment && t.push(e); - } - break; - } - - case 47: - { - const e = this.skipLineComment(2); - if (void 0 !== e) { - this.addComment(e); - this.options.attachComment && t.push(e); - } - break; - } - - default: - break e; - } - break; - - default: - if (h(n)) ++this.state.pos; else if (45 !== n || this.inModule) { - if (60 !== n || this.inModule) break e; - { - const e = this.state.pos; - if (33 !== this.input.charCodeAt(e + 1) || 45 !== this.input.charCodeAt(e + 2) || 45 !== this.input.charCodeAt(e + 3)) break e; - { - const e = this.skipLineComment(4); - if (void 0 !== e) { - this.addComment(e); - this.options.attachComment && t.push(e); - } - } - } - } else { - const n = this.state.pos; - if (45 !== this.input.charCodeAt(n + 1) || 62 !== this.input.charCodeAt(n + 2) || !(0 === e || this.state.lineStart > e)) break e; - { - const e = this.skipLineComment(3); - if (void 0 !== e) { - this.addComment(e); - this.options.attachComment && t.push(e); - } - } - } - } - } - if (t.length > 0) { - const n = { - start: e, - end: this.state.pos, - comments: t, - leadingNode: null, - trailingNode: null, - containingNode: null - }; - this.state.commentStack.push(n); - } - } - finishToken(e, t) { - this.state.end = this.state.pos; - const n = this.state.type; - this.state.type = e; - this.state.value = t; - if (!this.isLookahead) { - this.state.endLoc = this.state.curPosition(); - this.updateContext(n); - } - } - readToken_numberSign() { - if (0 === this.state.pos && this.readToken_interpreter()) return; - const e = this.state.pos + 1; - const t = this.codePointAtPos(e); - if (t >= 48 && t <= 57) throw this.raise(this.state.pos, E.UnexpectedDigitAfterHash); - if (123 === t || 91 === t && this.hasPlugin("recordAndTuple")) { - this.expectPlugin("recordAndTuple"); - if ("hash" !== this.getPluginOption("recordAndTuple", "syntaxType")) throw this.raise(this.state.pos, 123 === t ? E.RecordExpressionHashIncorrectStartSyntaxType : E.TupleExpressionHashIncorrectStartSyntaxType); - this.state.pos += 2; - 123 === t ? this.finishToken(15) : this.finishToken(9); - } else if (ee(t)) { - ++this.state.pos; - this.finishToken(6, this.readWord1(t)); - } else if (92 === t) { - ++this.state.pos; - this.finishToken(6, this.readWord1()); - } else this.finishOp(33, 1); - } - readToken_dot() { - const e = this.input.charCodeAt(this.state.pos + 1); - if (e >= 48 && e <= 57) this.readNumber(!0); else if (46 === e && 46 === this.input.charCodeAt(this.state.pos + 2)) { - this.state.pos += 3; - this.finishToken(29); - } else { - ++this.state.pos; - this.finishToken(24); - } - } - readToken_slash() { - 61 === this.input.charCodeAt(this.state.pos + 1) ? this.finishOp(37, 2) : this.finishOp(55, 1); - } - readToken_interpreter() { - if (0 !== this.state.pos || this.length < 2) return !1; - let e = this.input.charCodeAt(this.state.pos + 1); - if (33 !== e) return !1; - const t = this.state.pos; - this.state.pos += 1; - for (;!p(e) && ++this.state.pos < this.length; ) e = this.input.charCodeAt(this.state.pos); - const n = this.input.slice(t + 2, this.state.pos); - this.finishToken(34, n); - return !0; - } - readToken_mult_modulo(e) { - let t = 42 === e ? 54 : 53; - let n = 1; - let r = this.input.charCodeAt(this.state.pos + 1); - if (42 === e && 42 === r) { - n++; - r = this.input.charCodeAt(this.state.pos + 2); - t = 56; - } - if (61 === r && !this.state.inType) { - n++; - t = 37 === e ? 38 : 36; - } - this.finishOp(t, n); - } - readToken_pipe_amp(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - if (t !== e) { - if (124 === e) { - if (62 === t) { - this.finishOp(42, 2); - return; - } - if (this.hasPlugin("recordAndTuple") && 125 === t) { - if ("bar" !== this.getPluginOption("recordAndTuple", "syntaxType")) throw this.raise(this.state.pos, E.RecordExpressionBarIncorrectEndSyntaxType); - this.state.pos += 2; - this.finishToken(17); - return; - } - if (this.hasPlugin("recordAndTuple") && 93 === t) { - if ("bar" !== this.getPluginOption("recordAndTuple", "syntaxType")) throw this.raise(this.state.pos, E.TupleExpressionBarIncorrectEndSyntaxType); - this.state.pos += 2; - this.finishToken(12); - return; - } - } - 61 !== t ? this.finishOp(124 === e ? 46 : 48, 1) : this.finishOp(36, 2); - } else 61 === this.input.charCodeAt(this.state.pos + 2) ? this.finishOp(36, 3) : this.finishOp(124 === e ? 44 : 45, 2); - } - readToken_caret() { - 61 === this.input.charCodeAt(this.state.pos + 1) ? this.finishOp(36, 2) : this.finishOp(47, 1); - } - readToken_plus_min(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - t !== e ? 61 === t ? this.finishOp(36, 2) : this.finishOp(52, 1) : this.finishOp(39, 2); - } - readToken_lt_gt(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - let n = 1; - if (t !== e) { - 61 === t && (n = 2); - this.finishOp(50, n); - } else { - n = 62 === e && 62 === this.input.charCodeAt(this.state.pos + 2) ? 3 : 2; - if (61 === this.input.charCodeAt(this.state.pos + n)) { - this.finishOp(36, n + 1); - return; - } - this.finishOp(51, n); - } - } - readToken_eq_excl(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - if (61 !== t) if (61 !== e || 62 !== t) this.finishOp(61 === e ? 35 : 40, 1); else { - this.state.pos += 2; - this.finishToken(27); - } else this.finishOp(49, 61 === this.input.charCodeAt(this.state.pos + 2) ? 3 : 2); - } - readToken_question() { - const e = this.input.charCodeAt(this.state.pos + 1); - const t = this.input.charCodeAt(this.state.pos + 2); - if (63 === e) 61 === t ? this.finishOp(36, 3) : this.finishOp(43, 2); else if (46 !== e || t >= 48 && t <= 57) { - ++this.state.pos; - this.finishToken(25); - } else { - this.state.pos += 2; - this.finishToken(26); - } - } - getTokenFromCode(e) { - switch (e) { - case 46: - this.readToken_dot(); - return; - - case 40: - ++this.state.pos; - this.finishToken(18); - return; - - case 41: - ++this.state.pos; - this.finishToken(19); - return; - - case 59: - ++this.state.pos; - this.finishToken(21); - return; - - case 44: - ++this.state.pos; - this.finishToken(20); - return; - - case 91: - if (this.hasPlugin("recordAndTuple") && 124 === this.input.charCodeAt(this.state.pos + 1)) { - if ("bar" !== this.getPluginOption("recordAndTuple", "syntaxType")) throw this.raise(this.state.pos, E.TupleExpressionBarIncorrectStartSyntaxType); - this.state.pos += 2; - this.finishToken(10); - } else { - ++this.state.pos; - this.finishToken(8); - } - return; - - case 93: - ++this.state.pos; - this.finishToken(11); - return; - - case 123: - if (this.hasPlugin("recordAndTuple") && 124 === this.input.charCodeAt(this.state.pos + 1)) { - if ("bar" !== this.getPluginOption("recordAndTuple", "syntaxType")) throw this.raise(this.state.pos, E.RecordExpressionBarIncorrectStartSyntaxType); - this.state.pos += 2; - this.finishToken(14); - } else { - ++this.state.pos; - this.finishToken(13); - } - return; - - case 125: - ++this.state.pos; - this.finishToken(16); - return; - - case 58: - if (this.hasPlugin("functionBind") && 58 === this.input.charCodeAt(this.state.pos + 1)) this.finishOp(23, 2); else { - ++this.state.pos; - this.finishToken(22); - } - return; - - case 63: - this.readToken_question(); - return; - - case 96: - ++this.state.pos; - this.finishToken(30); - return; - - case 48: - { - const e = this.input.charCodeAt(this.state.pos + 1); - if (120 === e || 88 === e) { - this.readRadixNumber(16); - return; - } - if (111 === e || 79 === e) { - this.readRadixNumber(8); - return; - } - if (98 === e || 66 === e) { - this.readRadixNumber(2); - return; - } - } - - case 49: - case 50: - case 51: - case 52: - case 53: - case 54: - case 55: - case 56: - case 57: - this.readNumber(!1); - return; - - case 34: - case 39: - this.readString(e); - return; - - case 47: - this.readToken_slash(); - return; - - case 37: - case 42: - this.readToken_mult_modulo(e); - return; - - case 124: - case 38: - this.readToken_pipe_amp(e); - return; - - case 94: - this.readToken_caret(); - return; - - case 43: - case 45: - this.readToken_plus_min(e); - return; - - case 60: - case 62: - this.readToken_lt_gt(e); - return; - - case 61: - case 33: - this.readToken_eq_excl(e); - return; - - case 126: - this.finishOp(41, 1); - return; - - case 64: - ++this.state.pos; - this.finishToken(32); - return; - - case 35: - this.readToken_numberSign(); - return; - - case 92: - this.readWord(); - return; - - default: - if (ee(e)) { - this.readWord(e); - return; - } - } - throw this.raise(this.state.pos, E.InvalidOrUnexpectedToken, String.fromCodePoint(e)); - } - finishOp(e, t) { - const n = this.input.slice(this.state.pos, this.state.pos + t); - this.state.pos += t; - this.finishToken(e, n); - } - readRegexp() { - const e = this.state.start + 1; - let t, n; - let {pos: r} = this.state; - for (;;++r) { - if (r >= this.length) throw this.raise(e, E.UnterminatedRegExp); - const i = this.input.charCodeAt(r); - if (p(i)) throw this.raise(e, E.UnterminatedRegExp); - if (t) t = !1; else { - if (91 === i) n = !0; else if (93 === i && n) n = !1; else if (47 === i && !n) break; - t = 92 === i; - } - } - const i = this.input.slice(e, r); - ++r; - let s = ""; - for (;r < this.length; ) { - const e = this.codePointAtPos(r); - const t = String.fromCharCode(e); - if (it.has(e)) s.includes(t) && this.raise(r + 1, E.DuplicateRegExpFlags); else { - if (!te(e) && 92 !== e) break; - this.raise(r + 1, E.MalformedRegExpFlags); - } - ++r; - s += t; - } - this.state.pos = r; - this.finishToken(3, { - pattern: i, - flags: s - }); - } - readInt(e, t, n, r = !0) { - const s = this.state.pos; - const a = 16 === e ? st.hex : st.decBinOct; - const o = 16 === e ? at.hex : 10 === e ? at.dec : 8 === e ? at.oct : at.bin; - let l = !1; - let c = 0; - for (let s = 0, p = null == t ? 1 / 0 : t; s < p; ++s) { - const t = this.input.charCodeAt(this.state.pos); - let p; - if (95 !== t) { - if ((p = t >= 97 ? t - 97 + 10 : t >= 65 ? t - 65 + 10 : i(t) ? t - 48 : 1 / 0) >= e) if (this.options.errorRecovery && p <= 9) { - p = 0; - this.raise(this.state.start + s + 2, E.InvalidDigit, e); - } else { - if (!n) break; - p = 0; - l = !0; - } - ++this.state.pos; - c = c * e + p; - } else { - const e = this.input.charCodeAt(this.state.pos - 1); - const t = this.input.charCodeAt(this.state.pos + 1); - -1 === o.indexOf(t) ? this.raise(this.state.pos, E.UnexpectedNumericSeparator) : (a.indexOf(e) > -1 || a.indexOf(t) > -1 || Number.isNaN(t)) && this.raise(this.state.pos, E.UnexpectedNumericSeparator); - r || this.raise(this.state.pos, E.NumericSeparatorInEscapeSequence); - ++this.state.pos; - } - } - return this.state.pos === s || null != t && this.state.pos - s !== t || l ? null : c; - } - readRadixNumber(e) { - const t = this.state.pos; - let n = !1; - this.state.pos += 2; - const r = this.readInt(e); - null == r && this.raise(this.state.start + 2, E.InvalidDigit, e); - const i = this.input.charCodeAt(this.state.pos); - if (110 === i) { - ++this.state.pos; - n = !0; - } else if (109 === i) throw this.raise(t, E.InvalidDecimal); - if (ee(this.codePointAtPos(this.state.pos))) throw this.raise(this.state.pos, E.NumberIdentifier); - if (n) { - const e = this.input.slice(t, this.state.pos).replace(/[_n]/g, ""); - this.finishToken(1, e); - } else this.finishToken(0, r); - } - readNumber(e) { - const t = this.state.pos; - let n = !1; - let r = !1; - let i = !1; - let s = !1; - let a = !1; - e || null !== this.readInt(10) || this.raise(t, E.InvalidNumber); - const o = this.state.pos - t >= 2 && 48 === this.input.charCodeAt(t); - if (o) { - const e = this.input.slice(t, this.state.pos); - this.recordStrictModeErrors(t, E.StrictOctalLiteral); - if (!this.state.strict) { - const n = e.indexOf("_"); - n > 0 && this.raise(n + t, E.ZeroDigitNumericSeparator); - } - a = o && !/[89]/.test(e); - } - let l = this.input.charCodeAt(this.state.pos); - if (46 === l && !a) { - ++this.state.pos; - this.readInt(10); - n = !0; - l = this.input.charCodeAt(this.state.pos); - } - if ((69 === l || 101 === l) && !a) { - 43 !== (l = this.input.charCodeAt(++this.state.pos)) && 45 !== l || ++this.state.pos; - null === this.readInt(10) && this.raise(t, E.InvalidOrMissingExponent); - n = !0; - s = !0; - l = this.input.charCodeAt(this.state.pos); - } - if (110 === l) { - (n || o) && this.raise(t, E.InvalidBigIntLiteral); - ++this.state.pos; - r = !0; - } - if (109 === l) { - this.expectPlugin("decimal", this.state.pos); - (s || o) && this.raise(t, E.InvalidDecimal); - ++this.state.pos; - i = !0; - } - if (ee(this.codePointAtPos(this.state.pos))) throw this.raise(this.state.pos, E.NumberIdentifier); - const c = this.input.slice(t, this.state.pos).replace(/[_mn]/g, ""); - if (r) { - this.finishToken(1, c); - return; - } - if (i) { - this.finishToken(2, c); - return; - } - const p = a ? parseInt(c, 8) : parseFloat(c); - this.finishToken(0, p); - } - readCodePoint(e) { - let t; - if (123 === this.input.charCodeAt(this.state.pos)) { - const n = ++this.state.pos; - t = this.readHexChar(this.input.indexOf("}", this.state.pos) - this.state.pos, !0, e); - ++this.state.pos; - if (null !== t && t > 1114111) { - if (!e) return null; - this.raise(n, E.InvalidCodePoint); - } - } else t = this.readHexChar(4, !1, e); - return t; - } - readString(e) { - let t = "", n = ++this.state.pos; - for (;;) { - if (this.state.pos >= this.length) throw this.raise(this.state.start, E.UnterminatedString); - const r = this.input.charCodeAt(this.state.pos); - if (r === e) break; - if (92 === r) { - t += this.input.slice(n, this.state.pos); - t += this.readEscapedChar(!1); - n = this.state.pos; - } else if (8232 === r || 8233 === r) { - ++this.state.pos; - ++this.state.curLine; - this.state.lineStart = this.state.pos; - } else { - if (p(r)) throw this.raise(this.state.start, E.UnterminatedString); - ++this.state.pos; - } - } - t += this.input.slice(n, this.state.pos++); - this.finishToken(4, t); - } - readTmplToken() { - let e = "", t = this.state.pos, n = !1; - for (;;) { - if (this.state.pos >= this.length) throw this.raise(this.state.start, E.UnterminatedTemplate); - const r = this.input.charCodeAt(this.state.pos); - if (96 === r || 36 === r && 123 === this.input.charCodeAt(this.state.pos + 1)) { - if (this.state.pos === this.state.start && this.match(28)) { - if (36 === r) { - this.state.pos += 2; - this.finishToken(31); - return; - } - ++this.state.pos; - this.finishToken(30); - return; - } - e += this.input.slice(t, this.state.pos); - this.finishToken(28, n ? null : e); - return; - } - if (92 === r) { - e += this.input.slice(t, this.state.pos); - const r = this.readEscapedChar(!0); - null === r ? n = !0 : e += r; - t = this.state.pos; - } else if (p(r)) { - e += this.input.slice(t, this.state.pos); - ++this.state.pos; - switch (r) { - case 13: - 10 === this.input.charCodeAt(this.state.pos) && ++this.state.pos; - - case 10: - e += "\n"; - break; - - default: - e += String.fromCharCode(r); - } - ++this.state.curLine; - this.state.lineStart = this.state.pos; - t = this.state.pos; - } else ++this.state.pos; - } - } - recordStrictModeErrors(e, t) { - this.state.strict && !this.state.strictErrors.has(e) ? this.raise(e, t) : this.state.strictErrors.set(e, t); - } - readEscapedChar(e) { - const t = !e; - const n = this.input.charCodeAt(++this.state.pos); - ++this.state.pos; - switch (n) { - case 110: - return "\n"; - - case 114: - return "\r"; - - case 120: - { - const e = this.readHexChar(2, !1, t); - return null === e ? null : String.fromCharCode(e); - } - - case 117: - { - const e = this.readCodePoint(t); - return null === e ? null : String.fromCodePoint(e); - } - - case 116: - return "\t"; - - case 98: - return "\b"; - - case 118: - return "\v"; - - case 102: - return "\f"; - - case 13: - 10 === this.input.charCodeAt(this.state.pos) && ++this.state.pos; - - case 10: - this.state.lineStart = this.state.pos; - ++this.state.curLine; - - case 8232: - case 8233: - return ""; - - case 56: - case 57: - if (e) return null; - this.recordStrictModeErrors(this.state.pos - 1, E.StrictNumericEscape); - - default: - if (n >= 48 && n <= 55) { - const t = this.state.pos - 1; - let n = this.input.substr(this.state.pos - 1, 3).match(/^[0-7]+/)[0]; - let r = parseInt(n, 8); - if (r > 255) { - n = n.slice(0, -1); - r = parseInt(n, 8); - } - this.state.pos += n.length - 1; - const i = this.input.charCodeAt(this.state.pos); - if ("0" !== n || 56 === i || 57 === i) { - if (e) return null; - this.recordStrictModeErrors(t, E.StrictNumericEscape); - } - return String.fromCharCode(r); - } - return String.fromCharCode(n); - } - } - readHexChar(e, t, n) { - const r = this.state.pos; - const i = this.readInt(16, e, t, !1); - null === i && (n ? this.raise(r, E.InvalidEscapeSequence) : this.state.pos = r - 1); - return i; - } - readWord1(e) { - this.state.containsEsc = !1; - let t = ""; - const n = this.state.pos; - let r = this.state.pos; - void 0 !== e && (this.state.pos += e <= 65535 ? 1 : 2); - for (;this.state.pos < this.length; ) { - const e = this.codePointAtPos(this.state.pos); - if (te(e)) this.state.pos += e <= 65535 ? 1 : 2; else { - if (92 !== e) break; - { - this.state.containsEsc = !0; - t += this.input.slice(r, this.state.pos); - const e = this.state.pos; - const i = this.state.pos === n ? ee : te; - if (117 !== this.input.charCodeAt(++this.state.pos)) { - this.raise(this.state.pos, E.MissingUnicodeEscape); - r = this.state.pos - 1; - continue; - } - ++this.state.pos; - const s = this.readCodePoint(!0); - if (null !== s) { - i(s) || this.raise(e, E.EscapedCharNotAnIdentifier); - t += String.fromCodePoint(s); - } - r = this.state.pos; - } - } - } - return t + this.input.slice(r, this.state.pos); - } - readWord(e) { - const t = this.readWord1(e); - const n = N.get(t) || 5; - this.finishToken(n, t); - } - checkKeywordEscapes() { - const {type: e} = this.state; - W(e) && this.state.containsEsc && this.raise(this.state.start, E.InvalidEscapedReservedWord, q(e)); - } - updateContext(e) { - const {context: t, type: n} = this.state; - switch (n) { - case 16: - t.pop(); - break; - - case 13: - case 15: - case 31: - t.push(C.brace); - break; - - case 30: - t[t.length - 1] === C.template ? t.pop() : t.push(C.template); - } - } - } - class ct { - constructor() { - this.privateNames = new Set(); - this.loneAccessors = new Map(); - this.undefinedPrivateNames = new Map(); - } - } - class pt { - constructor(e) { - this.stack = []; - this.undefinedPrivateNames = new Map(); - this.raise = e; - } - current() { - return this.stack[this.stack.length - 1]; - } - enter() { - this.stack.push(new ct()); - } - exit() { - const e = this.stack.pop(); - const t = this.current(); - for (const [n, r] of Array.from(e.undefinedPrivateNames)) t ? t.undefinedPrivateNames.has(n) || t.undefinedPrivateNames.set(n, r) : this.raise(r, E.InvalidPrivateFieldResolution, n); - } - declarePrivateName(e, t, n) { - const r = this.current(); - let i = r.privateNames.has(e); - if (t & Xe) { - const n = i && r.loneAccessors.get(e); - if (n) { - (i = (n & Xe) === (t & Xe) || (n & Je) !== (t & Je)) || r.loneAccessors.delete(e); - } else i || r.loneAccessors.set(e, t); - } - i && this.raise(n, E.PrivateNameRedeclaration, e); - r.privateNames.add(e); - r.undefinedPrivateNames.delete(e); - } - usePrivateName(e, t) { - let n; - for (n of this.stack) if (n.privateNames.has(e)) return; - n ? n.undefinedPrivateNames.set(e, t) : this.raise(t, E.InvalidPrivateFieldResolution, e); - } - } - const ut = 0, dt = 1, ht = 2, ft = 3; - class mt { - constructor(e = ut) { - this.type = void 0; - this.type = e; - } - canBeArrowParameterDeclaration() { - return this.type === ht || this.type === dt; - } - isCertainlyParameterDeclaration() { - return this.type === ft; - } - } - class yt extends mt { - constructor(e) { - super(e); - this.errors = new Map(); - } - recordDeclarationError(e, t) { - this.errors.set(e, t); - } - clearDeclarationError(e) { - this.errors.delete(e); - } - iterateErrors(e) { - this.errors.forEach(e); - } - } - class gt { - constructor(e) { - this.stack = [ new mt() ]; - this.raise = e; - } - enter(e) { - this.stack.push(e); - } - exit() { - this.stack.pop(); - } - recordParameterInitializerError(e, t) { - const {stack: n} = this; - let r = n.length - 1; - let i = n[r]; - for (;!i.isCertainlyParameterDeclaration(); ) { - if (!i.canBeArrowParameterDeclaration()) return; - i.recordDeclarationError(e, t); - i = n[--r]; - } - this.raise(e, t); - } - recordParenthesizedIdentifierError(e, t) { - const {stack: n} = this; - const r = n[n.length - 1]; - if (r.isCertainlyParameterDeclaration()) this.raise(e, t); else { - if (!r.canBeArrowParameterDeclaration()) return; - r.recordDeclarationError(e, t); - } - } - recordAsyncArrowParametersError(e, t) { - const {stack: n} = this; - let r = n.length - 1; - let i = n[r]; - for (;i.canBeArrowParameterDeclaration(); ) { - i.type === ht && i.recordDeclarationError(e, t); - i = n[--r]; - } - } - validateAsPattern() { - const {stack: e} = this; - const t = e[e.length - 1]; - t.canBeArrowParameterDeclaration() && t.iterateErrors((t, n) => { - this.raise(n, t); - let r = e.length - 2; - let i = e[r]; - for (;i.canBeArrowParameterDeclaration(); ) { - i.clearDeclarationError(n); - i = e[--r]; - } - }); - } - } - function Tt() { - return new mt(); - } - const bt = 0, St = 1, xt = 2, Et = 4, Pt = 8; - class vt { - constructor() { - this.stacks = []; - } - enter(e) { - this.stacks.push(e); - } - exit() { - this.stacks.pop(); - } - currentFlags() { - return this.stacks[this.stacks.length - 1]; - } - get hasAwait() { - return (this.currentFlags() & xt) > 0; - } - get hasYield() { - return (this.currentFlags() & St) > 0; - } - get hasReturn() { - return (this.currentFlags() & Et) > 0; - } - get hasIn() { - return (this.currentFlags() & Pt) > 0; - } - } - function At(e, t) { - return (e ? xt : 0) | (t ? St : 0); - } - class wt extends lt { - addExtra(e, t, n) { - if (!e) return; - (e.extra = e.extra || {})[t] = n; - } - isRelational(e) { - return this.match(50) && this.state.value === e; - } - expectRelational(e) { - this.isRelational(e) ? this.next() : this.unexpected(null, 50); - } - isContextual(e) { - return this.match(5) && this.state.value === e && !this.state.containsEsc; - } - isUnparsedContextual(e, t) { - const n = e + t.length; - if (this.input.slice(e, n) === t) { - const e = this.input.charCodeAt(n); - return !(te(e) || 55296 == (64512 & e)); - } - return !1; - } - isLookaheadContextual(e) { - const t = this.nextTokenStart(); - return this.isUnparsedContextual(t, e); - } - eatContextual(e) { - return this.isContextual(e) && this.eat(5); - } - expectContextual(e, t) { - this.eatContextual(e) || this.unexpected(null, t); - } - canInsertSemicolon() { - return this.match(7) || this.match(16) || this.hasPrecedingLineBreak(); - } - hasPrecedingLineBreak() { - return l.test(this.input.slice(this.state.lastTokEnd, this.state.start)); - } - hasFollowingLineBreak() { - d.lastIndex = this.state.end; - return d.test(this.input); - } - isLineTerminator() { - return this.eat(21) || this.canInsertSemicolon(); - } - semicolon(e = !0) { - (e ? this.isLineTerminator() : this.eat(21)) || this.raise(this.state.lastTokEnd, E.MissingSemicolon); - } - expect(e, t) { - this.eat(e) || this.unexpected(t, e); - } - assertNoSpace(e = "Unexpected space.") { - this.state.start > this.state.lastTokEnd && this.raise(this.state.lastTokEnd, { - code: x.SyntaxError, - reasonCode: "UnexpectedSpace", - template: e - }); - } - unexpected(e, t = { - code: x.SyntaxError, - reasonCode: "UnexpectedToken", - template: "Unexpected token" - }) { - "number" == typeof t && (t = { - code: x.SyntaxError, - reasonCode: "UnexpectedToken", - template: `Unexpected token, expected "${q(t)}"` - }); - throw this.raise(null != e ? e : this.state.start, t); - } - expectPlugin(e, t) { - if (!this.hasPlugin(e)) throw this.raiseWithData(null != t ? t : this.state.start, { - missingPlugin: [ e ] - }, `This experimental syntax requires enabling the parser plugin: '${e}'`); - return !0; - } - expectOnePlugin(e, t) { - if (!e.some(e => this.hasPlugin(e))) throw this.raiseWithData(null != t ? t : this.state.start, { - missingPlugin: e - }, `This experimental syntax requires enabling one of the following parser plugin(s): '${e.join(", ")}'`); - } - tryParse(e, t = this.state.clone()) { - const n = { - node: null - }; - try { - const r = e((e = null) => { - n.node = e; - throw n; - }); - if (this.state.errors.length > t.errors.length) { - const e = this.state; - this.state = t; - this.state.tokensLength = e.tokensLength; - return { - node: r, - error: e.errors[t.errors.length], - thrown: !1, - aborted: !1, - failState: e - }; - } - return { - node: r, - error: null, - thrown: !1, - aborted: !1, - failState: null - }; - } catch (e) { - const r = this.state; - this.state = t; - if (e instanceof SyntaxError) return { - node: null, - error: e, - thrown: !0, - aborted: !1, - failState: r - }; - if (e === n) return { - node: n.node, - error: null, - thrown: !1, - aborted: !0, - failState: r - }; - throw e; - } - } - checkExpressionErrors(e, t) { - if (!e) return !1; - const {shorthandAssign: n, doubleProto: r, optionalParameters: i} = e; - if (!t) return n >= 0 || r >= 0 || i >= 0; - n >= 0 && this.unexpected(n); - r >= 0 && this.raise(r, E.DuplicateProto); - i >= 0 && this.unexpected(i); - } - isLiteralPropertyName() { - return this.match(5) || W(this.state.type) || this.match(4) || this.match(0) || this.match(1) || this.match(2); - } - isPrivateName(e) { - return "PrivateName" === e.type; - } - getPrivateNameSV(e) { - return e.id.name; - } - hasPropertyAsPrivateName(e) { - return ("MemberExpression" === e.type || "OptionalMemberExpression" === e.type) && this.isPrivateName(e.property); - } - isOptionalChain(e) { - return "OptionalMemberExpression" === e.type || "OptionalCallExpression" === e.type; - } - isObjectProperty(e) { - return "ObjectProperty" === e.type; - } - isObjectMethod(e) { - return "ObjectMethod" === e.type; - } - initializeScopes(e = "module" === this.options.sourceType) { - const t = this.state.labels; - this.state.labels = []; - const n = this.exportedIdentifiers; - this.exportedIdentifiers = new Set(); - const r = this.inModule; - this.inModule = e; - const i = this.scope; - const s = this.getScopeHandler(); - this.scope = new s(this.raise.bind(this), this.inModule); - const a = this.prodParam; - this.prodParam = new vt(); - const o = this.classScope; - this.classScope = new pt(this.raise.bind(this)); - const l = this.expressionScope; - this.expressionScope = new gt(this.raise.bind(this)); - return () => { - this.state.labels = t; - this.exportedIdentifiers = n; - this.inModule = r; - this.scope = i; - this.prodParam = a; - this.classScope = o; - this.expressionScope = l; - }; - } - enterInitialScopes() { - let e = bt; - this.inModule && (e |= xt); - this.scope.enter(fe); - this.prodParam.enter(e); - } - } - class Ct { - constructor() { - this.shorthandAssign = -1; - this.doubleProto = -1; - this.optionalParameters = -1; - } - } - class It { - constructor(e, t, n) { - this.type = ""; - this.start = t; - this.end = 0; - this.loc = new m(n); - null != e && e.options.ranges && (this.range = [ t, 0 ]); - null != e && e.filename && (this.loc.filename = e.filename); - } - } - const Ot = It.prototype; - Ot.__clone = function() { - const e = new It(); - const t = Object.keys(this); - for (let n = 0, r = t.length; n < r; n++) { - const r = t[n]; - "leadingComments" !== r && "trailingComments" !== r && "innerComments" !== r && (e[r] = this[r]); - } - return e; - }; - function Nt(e) { - const {type: t, start: n, end: r, loc: i, range: s, extra: a, name: o} = e; - const l = Object.create(Ot); - l.type = t; - l.start = n; - l.end = r; - l.loc = i; - l.range = s; - l.extra = a; - l.name = o; - "Placeholder" === t && (l.expectedNode = e.expectedNode); - return l; - } - function kt(e) { - const {type: t, start: n, end: r, loc: i, range: s, extra: a} = e; - if ("Placeholder" === t) return function(e) { - return Nt(e); - }(e); - const o = Object.create(Ot); - o.type = "StringLiteral"; - o.start = n; - o.end = r; - o.loc = i; - o.range = s; - o.extra = a; - o.value = e.value; - return o; - } - class Dt extends wt { - startNode() { - return new It(this, this.state.start, this.state.startLoc); - } - startNodeAt(e, t) { - return new It(this, e, t); - } - startNodeAtNode(e) { - return this.startNodeAt(e.start, e.loc.start); - } - finishNode(e, t) { - return this.finishNodeAt(e, t, this.state.lastTokEnd, this.state.lastTokEndLoc); - } - finishNodeAt(e, t, n, r) { - e.type = t; - e.end = n; - e.loc.end = r; - this.options.ranges && (e.range[1] = n); - this.options.attachComment && this.processComment(e); - return e; - } - resetStartLocation(e, t, n) { - e.start = t; - e.loc.start = n; - this.options.ranges && (e.range[0] = t); - } - resetEndLocation(e, t = this.state.lastTokEnd, n = this.state.lastTokEndLoc) { - e.end = t; - e.loc.end = n; - this.options.ranges && (e.range[1] = t); - } - resetStartLocationFromNode(e, t) { - this.resetStartLocation(e, t.start, t.loc.start); - } - } - const Mt = new Set([ "_", "any", "bool", "boolean", "empty", "extends", "false", "interface", "mixed", "null", "number", "static", "string", "true", "typeof", "void" ]); - const _t = v({ - AmbiguousConditionalArrow: "Ambiguous expression: wrap the arrow functions in parentheses to disambiguate.", - AmbiguousDeclareModuleKind: "Found both `declare module.exports` and `declare export` in the same module. Modules can only have 1 since they are either an ES module or they are a CommonJS module.", - AssignReservedType: "Cannot overwrite reserved type %0.", - DeclareClassElement: "The `declare` modifier can only appear on class fields.", - DeclareClassFieldInitializer: "Initializers are not allowed in fields with the `declare` modifier.", - DuplicateDeclareModuleExports: "Duplicate `declare module.exports` statement.", - EnumBooleanMemberNotInitialized: "Boolean enum members need to be initialized. Use either `%0 = true,` or `%0 = false,` in enum `%1`.", - EnumDuplicateMemberName: "Enum member names need to be unique, but the name `%0` has already been used before in enum `%1`.", - EnumInconsistentMemberValues: "Enum `%0` has inconsistent member initializers. Either use no initializers, or consistently use literals (either booleans, numbers, or strings) for all member initializers.", - EnumInvalidExplicitType: "Enum type `%1` is not valid. Use one of `boolean`, `number`, `string`, or `symbol` in enum `%0`.", - EnumInvalidExplicitTypeUnknownSupplied: "Supplied enum type is not valid. Use one of `boolean`, `number`, `string`, or `symbol` in enum `%0`.", - EnumInvalidMemberInitializerPrimaryType: "Enum `%0` has type `%2`, so the initializer of `%1` needs to be a %2 literal.", - EnumInvalidMemberInitializerSymbolType: "Symbol enum members cannot be initialized. Use `%1,` in enum `%0`.", - EnumInvalidMemberInitializerUnknownType: "The enum member initializer for `%1` needs to be a literal (either a boolean, number, or string) in enum `%0`.", - EnumInvalidMemberName: "Enum member names cannot start with lowercase 'a' through 'z'. Instead of using `%0`, consider using `%1`, in enum `%2`.", - EnumNumberMemberNotInitialized: "Number enum members need to be initialized, e.g. `%1 = 1` in enum `%0`.", - EnumStringMemberInconsistentlyInitailized: "String enum members need to consistently either all use initializers, or use no initializers, in enum `%0`.", - GetterMayNotHaveThisParam: "A getter cannot have a `this` parameter.", - ImportTypeShorthandOnlyInPureImport: "The `type` and `typeof` keywords on named imports can only be used on regular `import` statements. It cannot be used with `import type` or `import typeof` statements.", - InexactInsideExact: "Explicit inexact syntax cannot appear inside an explicit exact object type.", - InexactInsideNonObject: "Explicit inexact syntax cannot appear in class or interface definitions.", - InexactVariance: "Explicit inexact syntax cannot have variance.", - InvalidNonTypeImportInDeclareModule: "Imports within a `declare module` body must always be `import type` or `import typeof`.", - MissingTypeParamDefault: "Type parameter declaration needs a default, since a preceding type parameter declaration has a default.", - NestedDeclareModule: "`declare module` cannot be used inside another `declare module`.", - NestedFlowComment: "Cannot have a flow comment inside another flow comment.", - PatternIsOptional: "A binding pattern parameter cannot be optional in an implementation signature.", - SetterMayNotHaveThisParam: "A setter cannot have a `this` parameter.", - SpreadVariance: "Spread properties cannot have variance.", - ThisParamAnnotationRequired: "A type annotation is required for the `this` parameter.", - ThisParamBannedInConstructor: "Constructors cannot have a `this` parameter; constructors don't bind `this` like other functions.", - ThisParamMayNotBeOptional: "The `this` parameter cannot be optional.", - ThisParamMustBeFirst: "The `this` parameter must be the first function parameter.", - ThisParamNoDefault: "The `this` parameter may not have a default value.", - TypeBeforeInitializer: "Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.", - TypeCastInPattern: "The type cast expression is expected to be wrapped with parenthesis.", - UnexpectedExplicitInexactInObject: "Explicit inexact syntax must appear at the end of an inexact object.", - UnexpectedReservedType: "Unexpected reserved type %0.", - UnexpectedReservedUnderscore: "`_` is only allowed as a type argument to call or new.", - UnexpectedSpaceBetweenModuloChecks: "Spaces between `%` and `checks` are not allowed here.", - UnexpectedSpreadType: "Spread operator cannot appear in class or interface definitions.", - UnexpectedSubtractionOperand: 'Unexpected token, expected "number" or "bigint".', - UnexpectedTokenAfterTypeParameter: "Expected an arrow function after this type parameter declaration.", - UnexpectedTypeParameterBeforeAsyncArrowFunction: "Type parameters must come after the async keyword, e.g. instead of ` async () => {}`, use `async () => {}`.", - UnsupportedDeclareExportKind: "`declare export %0` is not supported. Use `%1` instead.", - UnsupportedStatementInDeclareModule: "Only declares and type imports are allowed inside declare module.", - UnterminatedFlowComment: "Unterminated flow-comment." - }, x.SyntaxError, "flow"); - function Lt(e) { - return "type" === e.importKind || "typeof" === e.importKind; - } - function jt(e) { - return (5 === e.type || W(e.type)) && "from" !== e.value; - } - const Ft = { - const: "declare export var", - let: "declare export var", - type: "export type", - interface: "export interface" - }; - const Bt = /\*?\s*@((?:no)?flow)\b/; - s = (e => (class extends e { - constructor(...e) { - super(...e); - this.flowPragma = void 0; - } - getScopeHandler() { - return nt; - } - shouldParseTypes() { - return this.getPluginOption("flow", "all") || "flow" === this.flowPragma; - } - shouldParseEnums() { - return !!this.getPluginOption("flow", "enums"); - } - finishToken(e, t) { - 4 !== e && 21 !== e && 34 !== e && void 0 === this.flowPragma && (this.flowPragma = null); - return super.finishToken(e, t); - } - addComment(e) { - if (void 0 === this.flowPragma) { - const t = Bt.exec(e.value); - if (t) if ("flow" === t[1]) this.flowPragma = "flow"; else { - if ("noflow" !== t[1]) throw new Error("Unexpected flow pragma"); - this.flowPragma = "noflow"; - } else ; - } - return super.addComment(e); - } - flowParseTypeInitialiser(e) { - const t = this.state.inType; - this.state.inType = !0; - this.expect(e || 22); - const n = this.flowParseType(); - this.state.inType = t; - return n; - } - flowParsePredicate() { - const e = this.startNode(); - const t = this.state.start; - this.next(); - this.expectContextual("checks"); - this.state.lastTokStart > t + 1 && this.raise(t, _t.UnexpectedSpaceBetweenModuloChecks); - if (this.eat(18)) { - e.value = this.parseExpression(); - this.expect(19); - return this.finishNode(e, "DeclaredPredicate"); - } - return this.finishNode(e, "InferredPredicate"); - } - flowParseTypeAndPredicateInitialiser() { - const e = this.state.inType; - this.state.inType = !0; - this.expect(22); - let t = null; - let n = null; - if (this.match(53)) { - this.state.inType = e; - n = this.flowParsePredicate(); - } else { - t = this.flowParseType(); - this.state.inType = e; - this.match(53) && (n = this.flowParsePredicate()); - } - return [ t, n ]; - } - flowParseDeclareClass(e) { - this.next(); - this.flowParseInterfaceish(e, !0); - return this.finishNode(e, "DeclareClass"); - } - flowParseDeclareFunction(e) { - this.next(); - const t = e.id = this.parseIdentifier(); - const n = this.startNode(); - const r = this.startNode(); - this.isRelational("<") ? n.typeParameters = this.flowParseTypeParameterDeclaration() : n.typeParameters = null; - this.expect(18); - const i = this.flowParseFunctionTypeParams(); - n.params = i.params; - n.rest = i.rest; - n.this = i._this; - this.expect(19); - [n.returnType, e.predicate] = this.flowParseTypeAndPredicateInitialiser(); - r.typeAnnotation = this.finishNode(n, "FunctionTypeAnnotation"); - t.typeAnnotation = this.finishNode(r, "TypeAnnotation"); - this.resetEndLocation(t); - this.semicolon(); - this.scope.declareName(e.id.name, Ye, e.id.start); - return this.finishNode(e, "DeclareFunction"); - } - flowParseDeclare(e, t) { - if (this.match(79)) return this.flowParseDeclareClass(e); - if (this.match(67)) return this.flowParseDeclareFunction(e); - if (this.match(73)) return this.flowParseDeclareVariable(e); - if (this.eatContextual("module")) { - if (this.match(24)) return this.flowParseDeclareModuleExports(e); - t && this.raise(this.state.lastTokStart, _t.NestedDeclareModule); - return this.flowParseDeclareModule(e); - } - if (this.isContextual("type")) return this.flowParseDeclareTypeAlias(e); - if (this.isContextual("opaque")) return this.flowParseDeclareOpaqueType(e); - if (this.isContextual("interface")) return this.flowParseDeclareInterface(e); - if (this.match(81)) return this.flowParseDeclareExportDeclaration(e, t); - throw this.unexpected(); - } - flowParseDeclareVariable(e) { - this.next(); - e.id = this.flowParseTypeAnnotatableIdentifier(!0); - this.scope.declareName(e.id.name, Le, e.id.start); - this.semicolon(); - return this.finishNode(e, "DeclareVariable"); - } - flowParseDeclareModule(e) { - this.scope.enter(he); - this.match(4) ? e.id = this.parseExprAtom() : e.id = this.parseIdentifier(); - const t = e.body = this.startNode(); - const n = t.body = []; - this.expect(13); - for (;!this.match(16); ) { - let e = this.startNode(); - if (this.match(82)) { - this.next(); - this.isContextual("type") || this.match(86) || this.raise(this.state.lastTokStart, _t.InvalidNonTypeImportInDeclareModule); - this.parseImport(e); - } else { - this.expectContextual("declare", _t.UnsupportedStatementInDeclareModule); - e = this.flowParseDeclare(e, !0); - } - n.push(e); - } - this.scope.exit(); - this.expect(16); - this.finishNode(t, "BlockStatement"); - let r = null; - let i = !1; - n.forEach(e => { - if ("DeclareExportAllDeclaration" === (e = e).type || "DeclareExportDeclaration" === e.type && (!e.declaration || "TypeAlias" !== e.declaration.type && "InterfaceDeclaration" !== e.declaration.type)) { - "CommonJS" === r && this.raise(e.start, _t.AmbiguousDeclareModuleKind); - r = "ES"; - } else if ("DeclareModuleExports" === e.type) { - i && this.raise(e.start, _t.DuplicateDeclareModuleExports); - "ES" === r && this.raise(e.start, _t.AmbiguousDeclareModuleKind); - r = "CommonJS"; - i = !0; - } - }); - var s; - e.kind = r || "CommonJS"; - return this.finishNode(e, "DeclareModule"); - } - flowParseDeclareExportDeclaration(e, t) { - this.expect(81); - if (this.eat(64)) { - if (this.match(67) || this.match(79)) e.declaration = this.flowParseDeclare(this.startNode()); else { - e.declaration = this.flowParseType(); - this.semicolon(); - } - e.default = !0; - return this.finishNode(e, "DeclareExportDeclaration"); - } - if (this.match(74) || this.isLet() || (this.isContextual("type") || this.isContextual("interface")) && !t) { - const e = this.state.value; - const t = Ft[e]; - throw this.raise(this.state.start, _t.UnsupportedDeclareExportKind, e, t); - } - if (this.match(73) || this.match(67) || this.match(79) || this.isContextual("opaque")) { - e.declaration = this.flowParseDeclare(this.startNode()); - e.default = !1; - return this.finishNode(e, "DeclareExportDeclaration"); - } - if (this.match(54) || this.match(13) || this.isContextual("interface") || this.isContextual("type") || this.isContextual("opaque")) { - if ("ExportNamedDeclaration" === (e = this.parseExport(e)).type) { - e.type = "ExportDeclaration"; - e.default = !1; - delete e.exportKind; - } - e.type = "Declare" + e.type; - return e; - } - throw this.unexpected(); - } - flowParseDeclareModuleExports(e) { - this.next(); - this.expectContextual("exports"); - e.typeAnnotation = this.flowParseTypeAnnotation(); - this.semicolon(); - return this.finishNode(e, "DeclareModuleExports"); - } - flowParseDeclareTypeAlias(e) { - this.next(); - this.flowParseTypeAlias(e); - e.type = "DeclareTypeAlias"; - return e; - } - flowParseDeclareOpaqueType(e) { - this.next(); - this.flowParseOpaqueType(e, !0); - e.type = "DeclareOpaqueType"; - return e; - } - flowParseDeclareInterface(e) { - this.next(); - this.flowParseInterfaceish(e); - return this.finishNode(e, "DeclareInterface"); - } - flowParseInterfaceish(e, t = !1) { - e.id = this.flowParseRestrictedIdentifier(!t, !0); - this.scope.declareName(e.id.name, t ? je : _e, e.id.start); - this.isRelational("<") ? e.typeParameters = this.flowParseTypeParameterDeclaration() : e.typeParameters = null; - e.extends = []; - e.implements = []; - e.mixins = []; - if (this.eat(80)) do { - e.extends.push(this.flowParseInterfaceExtends()); - } while (!t && this.eat(20)); - if (this.isContextual("mixins")) { - this.next(); - do { - e.mixins.push(this.flowParseInterfaceExtends()); - } while (this.eat(20)); - } - if (this.isContextual("implements")) { - this.next(); - do { - e.implements.push(this.flowParseInterfaceExtends()); - } while (this.eat(20)); - } - e.body = this.flowParseObjectType({ - allowStatic: t, - allowExact: !1, - allowSpread: !1, - allowProto: t, - allowInexact: !1 - }); - } - flowParseInterfaceExtends() { - const e = this.startNode(); - e.id = this.flowParseQualifiedTypeIdentifier(); - this.isRelational("<") ? e.typeParameters = this.flowParseTypeParameterInstantiation() : e.typeParameters = null; - return this.finishNode(e, "InterfaceExtends"); - } - flowParseInterface(e) { - this.flowParseInterfaceish(e); - return this.finishNode(e, "InterfaceDeclaration"); - } - checkNotUnderscore(e) { - "_" === e && this.raise(this.state.start, _t.UnexpectedReservedUnderscore); - } - checkReservedType(e, t, n) { - Mt.has(e) && this.raise(t, n ? _t.AssignReservedType : _t.UnexpectedReservedType, e); - } - flowParseRestrictedIdentifier(e, t) { - this.checkReservedType(this.state.value, this.state.start, t); - return this.parseIdentifier(e); - } - flowParseTypeAlias(e) { - e.id = this.flowParseRestrictedIdentifier(!1, !0); - this.scope.declareName(e.id.name, _e, e.id.start); - this.isRelational("<") ? e.typeParameters = this.flowParseTypeParameterDeclaration() : e.typeParameters = null; - e.right = this.flowParseTypeInitialiser(35); - this.semicolon(); - return this.finishNode(e, "TypeAlias"); - } - flowParseOpaqueType(e, t) { - this.expectContextual("type"); - e.id = this.flowParseRestrictedIdentifier(!0, !0); - this.scope.declareName(e.id.name, _e, e.id.start); - this.isRelational("<") ? e.typeParameters = this.flowParseTypeParameterDeclaration() : e.typeParameters = null; - e.supertype = null; - this.match(22) && (e.supertype = this.flowParseTypeInitialiser(22)); - e.impltype = null; - t || (e.impltype = this.flowParseTypeInitialiser(35)); - this.semicolon(); - return this.finishNode(e, "OpaqueType"); - } - flowParseTypeParameter(e = !1) { - const t = this.state.start; - const n = this.startNode(); - const r = this.flowParseVariance(); - const i = this.flowParseTypeAnnotatableIdentifier(); - n.name = i.name; - n.variance = r; - n.bound = i.typeAnnotation; - if (this.match(35)) { - this.eat(35); - n.default = this.flowParseType(); - } else e && this.raise(t, _t.MissingTypeParamDefault); - return this.finishNode(n, "TypeParameter"); - } - flowParseTypeParameterDeclaration() { - const e = this.state.inType; - const t = this.startNode(); - t.params = []; - this.state.inType = !0; - this.isRelational("<") || this.match(94) ? this.next() : this.unexpected(); - let n = !1; - do { - const e = this.flowParseTypeParameter(n); - t.params.push(e); - e.default && (n = !0); - this.isRelational(">") || this.expect(20); - } while (!this.isRelational(">")); - this.expectRelational(">"); - this.state.inType = e; - return this.finishNode(t, "TypeParameterDeclaration"); - } - flowParseTypeParameterInstantiation() { - const e = this.startNode(); - const t = this.state.inType; - e.params = []; - this.state.inType = !0; - this.expectRelational("<"); - const n = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = !1; - for (;!this.isRelational(">"); ) { - e.params.push(this.flowParseType()); - this.isRelational(">") || this.expect(20); - } - this.state.noAnonFunctionType = n; - this.expectRelational(">"); - this.state.inType = t; - return this.finishNode(e, "TypeParameterInstantiation"); - } - flowParseTypeParameterInstantiationCallOrNew() { - const e = this.startNode(); - const t = this.state.inType; - e.params = []; - this.state.inType = !0; - this.expectRelational("<"); - for (;!this.isRelational(">"); ) { - e.params.push(this.flowParseTypeOrImplicitInstantiation()); - this.isRelational(">") || this.expect(20); - } - this.expectRelational(">"); - this.state.inType = t; - return this.finishNode(e, "TypeParameterInstantiation"); - } - flowParseInterfaceType() { - const e = this.startNode(); - this.expectContextual("interface"); - e.extends = []; - if (this.eat(80)) do { - e.extends.push(this.flowParseInterfaceExtends()); - } while (this.eat(20)); - e.body = this.flowParseObjectType({ - allowStatic: !1, - allowExact: !1, - allowSpread: !1, - allowProto: !1, - allowInexact: !1 - }); - return this.finishNode(e, "InterfaceTypeAnnotation"); - } - flowParseObjectPropertyKey() { - return this.match(0) || this.match(4) ? this.parseExprAtom() : this.parseIdentifier(!0); - } - flowParseObjectTypeIndexer(e, t, n) { - e.static = t; - if (22 === this.lookahead().type) { - e.id = this.flowParseObjectPropertyKey(); - e.key = this.flowParseTypeInitialiser(); - } else { - e.id = null; - e.key = this.flowParseType(); - } - this.expect(11); - e.value = this.flowParseTypeInitialiser(); - e.variance = n; - return this.finishNode(e, "ObjectTypeIndexer"); - } - flowParseObjectTypeInternalSlot(e, t) { - e.static = t; - e.id = this.flowParseObjectPropertyKey(); - this.expect(11); - this.expect(11); - if (this.isRelational("<") || this.match(18)) { - e.method = !0; - e.optional = !1; - e.value = this.flowParseObjectTypeMethodish(this.startNodeAt(e.start, e.loc.start)); - } else { - e.method = !1; - this.eat(25) && (e.optional = !0); - e.value = this.flowParseTypeInitialiser(); - } - return this.finishNode(e, "ObjectTypeInternalSlot"); - } - flowParseObjectTypeMethodish(e) { - e.params = []; - e.rest = null; - e.typeParameters = null; - e.this = null; - this.isRelational("<") && (e.typeParameters = this.flowParseTypeParameterDeclaration()); - this.expect(18); - if (this.match(77)) { - e.this = this.flowParseFunctionTypeParam(!0); - e.this.name = null; - this.match(19) || this.expect(20); - } - for (;!this.match(19) && !this.match(29); ) { - e.params.push(this.flowParseFunctionTypeParam(!1)); - this.match(19) || this.expect(20); - } - this.eat(29) && (e.rest = this.flowParseFunctionTypeParam(!1)); - this.expect(19); - e.returnType = this.flowParseTypeInitialiser(); - return this.finishNode(e, "FunctionTypeAnnotation"); - } - flowParseObjectTypeCallProperty(e, t) { - const n = this.startNode(); - e.static = t; - e.value = this.flowParseObjectTypeMethodish(n); - return this.finishNode(e, "ObjectTypeCallProperty"); - } - flowParseObjectType({allowStatic: e, allowExact: t, allowSpread: n, allowProto: r, allowInexact: i}) { - const s = this.state.inType; - this.state.inType = !0; - const a = this.startNode(); - a.callProperties = []; - a.properties = []; - a.indexers = []; - a.internalSlots = []; - let o; - let l; - let c = !1; - if (t && this.match(14)) { - this.expect(14); - o = 17; - l = !0; - } else { - this.expect(13); - o = 16; - l = !1; - } - a.exact = l; - for (;!this.match(o); ) { - let t = !1; - let s = null; - let o = null; - const p = this.startNode(); - if (r && this.isContextual("proto")) { - const t = this.lookahead(); - if (22 !== t.type && 25 !== t.type) { - this.next(); - s = this.state.start; - e = !1; - } - } - if (e && this.isContextual("static")) { - const e = this.lookahead(); - if (22 !== e.type && 25 !== e.type) { - this.next(); - t = !0; - } - } - const u = this.flowParseVariance(); - if (this.eat(8)) { - null != s && this.unexpected(s); - if (this.eat(8)) { - u && this.unexpected(u.start); - a.internalSlots.push(this.flowParseObjectTypeInternalSlot(p, t)); - } else a.indexers.push(this.flowParseObjectTypeIndexer(p, t, u)); - } else if (this.match(18) || this.isRelational("<")) { - null != s && this.unexpected(s); - u && this.unexpected(u.start); - a.callProperties.push(this.flowParseObjectTypeCallProperty(p, t)); - } else { - let e = "init"; - if (this.isContextual("get") || this.isContextual("set")) { - const t = this.lookahead(); - if (5 === t.type || 4 === t.type || 0 === t.type) { - e = this.state.value; - this.next(); - } - } - const r = this.flowParseObjectTypeProperty(p, t, s, u, e, n, null != i ? i : !l); - if (null === r) { - c = !0; - o = this.state.lastTokStart; - } else a.properties.push(r); - } - this.flowObjectTypeSemicolon(); - !o || this.match(16) || this.match(17) || this.raise(o, _t.UnexpectedExplicitInexactInObject); - } - this.expect(o); - n && (a.inexact = c); - const p = this.finishNode(a, "ObjectTypeAnnotation"); - this.state.inType = s; - return p; - } - flowParseObjectTypeProperty(e, t, n, r, i, s, a) { - if (this.eat(29)) { - if (this.match(20) || this.match(21) || this.match(16) || this.match(17)) { - s ? a || this.raise(this.state.lastTokStart, _t.InexactInsideExact) : this.raise(this.state.lastTokStart, _t.InexactInsideNonObject); - r && this.raise(r.start, _t.InexactVariance); - return null; - } - s || this.raise(this.state.lastTokStart, _t.UnexpectedSpreadType); - null != n && this.unexpected(n); - r && this.raise(r.start, _t.SpreadVariance); - e.argument = this.flowParseType(); - return this.finishNode(e, "ObjectTypeSpreadProperty"); - } - { - e.key = this.flowParseObjectPropertyKey(); - e.static = t; - e.proto = null != n; - e.kind = i; - let a = !1; - if (this.isRelational("<") || this.match(18)) { - e.method = !0; - null != n && this.unexpected(n); - r && this.unexpected(r.start); - e.value = this.flowParseObjectTypeMethodish(this.startNodeAt(e.start, e.loc.start)); - "get" !== i && "set" !== i || this.flowCheckGetterSetterParams(e); - !s && "constructor" === e.key.name && e.value.this && this.raise(e.value.this.start, _t.ThisParamBannedInConstructor); - } else { - "init" !== i && this.unexpected(); - e.method = !1; - this.eat(25) && (a = !0); - e.value = this.flowParseTypeInitialiser(); - e.variance = r; - } - e.optional = a; - return this.finishNode(e, "ObjectTypeProperty"); - } - } - flowCheckGetterSetterParams(e) { - const t = "get" === e.kind ? 0 : 1; - const n = e.start; - const r = e.value.params.length + (e.value.rest ? 1 : 0); - e.value.this && this.raise(e.value.this.start, "get" === e.kind ? _t.GetterMayNotHaveThisParam : _t.SetterMayNotHaveThisParam); - r !== t && ("get" === e.kind ? this.raise(n, E.BadGetterArity) : this.raise(n, E.BadSetterArity)); - "set" === e.kind && e.value.rest && this.raise(n, E.BadSetterRestParameter); - } - flowObjectTypeSemicolon() { - this.eat(21) || this.eat(20) || this.match(16) || this.match(17) || this.unexpected(); - } - flowParseQualifiedTypeIdentifier(e, t, n) { - e = e || this.state.start; - t = t || this.state.startLoc; - let r = n || this.flowParseRestrictedIdentifier(!0); - for (;this.eat(24); ) { - const n = this.startNodeAt(e, t); - n.qualification = r; - n.id = this.flowParseRestrictedIdentifier(!0); - r = this.finishNode(n, "QualifiedTypeIdentifier"); - } - return r; - } - flowParseGenericType(e, t, n) { - const r = this.startNodeAt(e, t); - r.typeParameters = null; - r.id = this.flowParseQualifiedTypeIdentifier(e, t, n); - this.isRelational("<") && (r.typeParameters = this.flowParseTypeParameterInstantiation()); - return this.finishNode(r, "GenericTypeAnnotation"); - } - flowParseTypeofType() { - const e = this.startNode(); - this.expect(86); - e.argument = this.flowParsePrimaryType(); - return this.finishNode(e, "TypeofTypeAnnotation"); - } - flowParseTupleType() { - const e = this.startNode(); - e.types = []; - this.expect(8); - for (;this.state.pos < this.length && !this.match(11); ) { - e.types.push(this.flowParseType()); - if (this.match(11)) break; - this.expect(20); - } - this.expect(11); - return this.finishNode(e, "TupleTypeAnnotation"); - } - flowParseFunctionTypeParam(e) { - let t = null; - let n = !1; - let r = null; - const i = this.startNode(); - const s = this.lookahead(); - const a = 77 === this.state.type; - if (22 === s.type || 25 === s.type) { - a && !e && this.raise(i.start, _t.ThisParamMustBeFirst); - t = this.parseIdentifier(a); - if (this.eat(25)) { - n = !0; - a && this.raise(i.start, _t.ThisParamMayNotBeOptional); - } - r = this.flowParseTypeInitialiser(); - } else r = this.flowParseType(); - i.name = t; - i.optional = n; - i.typeAnnotation = r; - return this.finishNode(i, "FunctionTypeParam"); - } - reinterpretTypeAsFunctionTypeParam(e) { - const t = this.startNodeAt(e.start, e.loc.start); - t.name = null; - t.optional = !1; - t.typeAnnotation = e; - return this.finishNode(t, "FunctionTypeParam"); - } - flowParseFunctionTypeParams(e = []) { - let t = null; - let n = null; - if (this.match(77)) { - (n = this.flowParseFunctionTypeParam(!0)).name = null; - this.match(19) || this.expect(20); - } - for (;!this.match(19) && !this.match(29); ) { - e.push(this.flowParseFunctionTypeParam(!1)); - this.match(19) || this.expect(20); - } - this.eat(29) && (t = this.flowParseFunctionTypeParam(!1)); - return { - params: e, - rest: t, - _this: n - }; - } - flowIdentToTypeAnnotation(e, t, n, r) { - switch (r.name) { - case "any": - return this.finishNode(n, "AnyTypeAnnotation"); - - case "bool": - case "boolean": - return this.finishNode(n, "BooleanTypeAnnotation"); - - case "mixed": - return this.finishNode(n, "MixedTypeAnnotation"); - - case "empty": - return this.finishNode(n, "EmptyTypeAnnotation"); - - case "number": - return this.finishNode(n, "NumberTypeAnnotation"); - - case "string": - return this.finishNode(n, "StringTypeAnnotation"); - - case "symbol": - return this.finishNode(n, "SymbolTypeAnnotation"); - - default: - this.checkNotUnderscore(r.name); - return this.flowParseGenericType(e, t, r); - } - } - flowParsePrimaryType() { - const e = this.state.start; - const t = this.state.startLoc; - const n = this.startNode(); - let r; - let i; - let s = !1; - const a = this.state.noAnonFunctionType; - switch (this.state.type) { - case 5: - return this.isContextual("interface") ? this.flowParseInterfaceType() : this.flowIdentToTypeAnnotation(e, t, n, this.parseIdentifier()); - - case 13: - return this.flowParseObjectType({ - allowStatic: !1, - allowExact: !1, - allowSpread: !0, - allowProto: !1, - allowInexact: !0 - }); - - case 14: - return this.flowParseObjectType({ - allowStatic: !1, - allowExact: !0, - allowSpread: !0, - allowProto: !1, - allowInexact: !1 - }); - - case 8: - this.state.noAnonFunctionType = !1; - i = this.flowParseTupleType(); - this.state.noAnonFunctionType = a; - return i; - - case 50: - if ("<" === this.state.value) { - n.typeParameters = this.flowParseTypeParameterDeclaration(); - this.expect(18); - r = this.flowParseFunctionTypeParams(); - n.params = r.params; - n.rest = r.rest; - n.this = r._this; - this.expect(19); - this.expect(27); - n.returnType = this.flowParseType(); - return this.finishNode(n, "FunctionTypeAnnotation"); - } - break; - - case 18: - this.next(); - if (!this.match(19) && !this.match(29)) if (this.match(5) || this.match(77)) { - const e = this.lookahead().type; - s = 25 !== e && 22 !== e; - } else s = !0; - if (s) { - this.state.noAnonFunctionType = !1; - i = this.flowParseType(); - this.state.noAnonFunctionType = a; - if (this.state.noAnonFunctionType || !(this.match(20) || this.match(19) && 27 === this.lookahead().type)) { - this.expect(19); - return i; - } - this.eat(20); - } - r = i ? this.flowParseFunctionTypeParams([ this.reinterpretTypeAsFunctionTypeParam(i) ]) : this.flowParseFunctionTypeParams(); - n.params = r.params; - n.rest = r.rest; - n.this = r._this; - this.expect(19); - this.expect(27); - n.returnType = this.flowParseType(); - n.typeParameters = null; - return this.finishNode(n, "FunctionTypeAnnotation"); - - case 4: - return this.parseLiteral(this.state.value, "StringLiteralTypeAnnotation"); - - case 84: - case 85: - n.value = this.match(84); - this.next(); - return this.finishNode(n, "BooleanLiteralTypeAnnotation"); - - case 52: - if ("-" === this.state.value) { - this.next(); - if (this.match(0)) return this.parseLiteralAtNode(-this.state.value, "NumberLiteralTypeAnnotation", n); - if (this.match(1)) return this.parseLiteralAtNode(-this.state.value, "BigIntLiteralTypeAnnotation", n); - throw this.raise(this.state.start, _t.UnexpectedSubtractionOperand); - } - throw this.unexpected(); - - case 0: - return this.parseLiteral(this.state.value, "NumberLiteralTypeAnnotation"); - - case 1: - return this.parseLiteral(this.state.value, "BigIntLiteralTypeAnnotation"); - - case 87: - this.next(); - return this.finishNode(n, "VoidTypeAnnotation"); - - case 83: - this.next(); - return this.finishNode(n, "NullLiteralTypeAnnotation"); - - case 77: - this.next(); - return this.finishNode(n, "ThisTypeAnnotation"); - - case 54: - this.next(); - return this.finishNode(n, "ExistsTypeAnnotation"); - - case 86: - return this.flowParseTypeofType(); - - default: - if (W(this.state.type)) { - const e = q(this.state.type); - this.next(); - return super.createIdentifier(n, e); - } - } - throw this.unexpected(); - } - flowParsePostfixType() { - const e = this.state.start; - const t = this.state.startLoc; - let n = this.flowParsePrimaryType(); - let r = !1; - for (;(this.match(8) || this.match(26)) && !this.canInsertSemicolon(); ) { - const i = this.startNodeAt(e, t); - const s = this.eat(26); - r = r || s; - this.expect(8); - if (!s && this.match(11)) { - i.elementType = n; - this.next(); - n = this.finishNode(i, "ArrayTypeAnnotation"); - } else { - i.objectType = n; - i.indexType = this.flowParseType(); - this.expect(11); - if (r) { - i.optional = s; - n = this.finishNode(i, "OptionalIndexedAccessType"); - } else n = this.finishNode(i, "IndexedAccessType"); - } - } - return n; - } - flowParsePrefixType() { - const e = this.startNode(); - if (this.eat(25)) { - e.typeAnnotation = this.flowParsePrefixType(); - return this.finishNode(e, "NullableTypeAnnotation"); - } - return this.flowParsePostfixType(); - } - flowParseAnonFunctionWithoutParens() { - const e = this.flowParsePrefixType(); - if (!this.state.noAnonFunctionType && this.eat(27)) { - const t = this.startNodeAt(e.start, e.loc.start); - t.params = [ this.reinterpretTypeAsFunctionTypeParam(e) ]; - t.rest = null; - t.this = null; - t.returnType = this.flowParseType(); - t.typeParameters = null; - return this.finishNode(t, "FunctionTypeAnnotation"); - } - return e; - } - flowParseIntersectionType() { - const e = this.startNode(); - this.eat(48); - const t = this.flowParseAnonFunctionWithoutParens(); - e.types = [ t ]; - for (;this.eat(48); ) e.types.push(this.flowParseAnonFunctionWithoutParens()); - return 1 === e.types.length ? t : this.finishNode(e, "IntersectionTypeAnnotation"); - } - flowParseUnionType() { - const e = this.startNode(); - this.eat(46); - const t = this.flowParseIntersectionType(); - e.types = [ t ]; - for (;this.eat(46); ) e.types.push(this.flowParseIntersectionType()); - return 1 === e.types.length ? t : this.finishNode(e, "UnionTypeAnnotation"); - } - flowParseType() { - const e = this.state.inType; - this.state.inType = !0; - const t = this.flowParseUnionType(); - this.state.inType = e; - return t; - } - flowParseTypeOrImplicitInstantiation() { - if (5 === this.state.type && "_" === this.state.value) { - const e = this.state.start; - const t = this.state.startLoc; - const n = this.parseIdentifier(); - return this.flowParseGenericType(e, t, n); - } - return this.flowParseType(); - } - flowParseTypeAnnotation() { - const e = this.startNode(); - e.typeAnnotation = this.flowParseTypeInitialiser(); - return this.finishNode(e, "TypeAnnotation"); - } - flowParseTypeAnnotatableIdentifier(e) { - const t = e ? this.parseIdentifier() : this.flowParseRestrictedIdentifier(); - if (this.match(22)) { - t.typeAnnotation = this.flowParseTypeAnnotation(); - this.resetEndLocation(t); - } - return t; - } - typeCastToParameter(e) { - e.expression.typeAnnotation = e.typeAnnotation; - this.resetEndLocation(e.expression, e.typeAnnotation.end, e.typeAnnotation.loc.end); - return e.expression; - } - flowParseVariance() { - let e = null; - if (this.match(52)) { - e = this.startNode(); - "+" === this.state.value ? e.kind = "plus" : e.kind = "minus"; - this.next(); - this.finishNode(e, "Variance"); - } - return e; - } - parseFunctionBody(e, t, n = !1) { - return t ? this.forwardNoArrowParamsConversionAt(e, () => super.parseFunctionBody(e, !0, n)) : super.parseFunctionBody(e, !1, n); - } - parseFunctionBodyAndFinish(e, t, n = !1) { - if (this.match(22)) { - const t = this.startNode(); - [t.typeAnnotation, e.predicate] = this.flowParseTypeAndPredicateInitialiser(); - e.returnType = t.typeAnnotation ? this.finishNode(t, "TypeAnnotation") : null; - } - super.parseFunctionBodyAndFinish(e, t, n); - } - parseStatement(e, t) { - if (this.state.strict && this.match(5) && "interface" === this.state.value) { - const e = this.lookahead(); - if (5 === e.type || ue(e.value)) { - const e = this.startNode(); - this.next(); - return this.flowParseInterface(e); - } - } else if (this.shouldParseEnums() && this.isContextual("enum")) { - const e = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(e); - } - const n = super.parseStatement(e, t); - void 0 !== this.flowPragma || this.isValidDirective(n) || (this.flowPragma = null); - return n; - } - parseExpressionStatement(e, t) { - if ("Identifier" === t.type) if ("declare" === t.name) { - if (this.match(79) || this.match(5) || this.match(67) || this.match(73) || this.match(81)) return this.flowParseDeclare(e); - } else if (this.match(5)) { - if ("interface" === t.name) return this.flowParseInterface(e); - if ("type" === t.name) return this.flowParseTypeAlias(e); - if ("opaque" === t.name) return this.flowParseOpaqueType(e, !1); - } - return super.parseExpressionStatement(e, t); - } - shouldParseExportDeclaration() { - return this.isContextual("type") || this.isContextual("interface") || this.isContextual("opaque") || this.shouldParseEnums() && this.isContextual("enum") || super.shouldParseExportDeclaration(); - } - isExportDefaultSpecifier() { - return (!this.match(5) || !("type" === this.state.value || "interface" === this.state.value || "opaque" === this.state.value || this.shouldParseEnums() && "enum" === this.state.value)) && super.isExportDefaultSpecifier(); - } - parseExportDefaultExpression() { - if (this.shouldParseEnums() && this.isContextual("enum")) { - const e = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(e); - } - return super.parseExportDefaultExpression(); - } - parseConditional(e, t, n, r) { - if (!this.match(25)) return e; - if (this.state.maybeInArrowParameters) { - const t = this.lookaheadCharCode(); - if (44 === t || 61 === t || 58 === t || 41 === t) { - this.setOptionalParametersError(r); - return e; - } - } - this.expect(25); - const i = this.state.clone(); - const s = this.state.noArrowAt; - const a = this.startNodeAt(t, n); - let {consequent: o, failed: l} = this.tryParseConditionalConsequent(); - let [c, p] = this.getArrowLikeExpressions(o); - if (l || p.length > 0) { - const e = [ ...s ]; - if (p.length > 0) { - this.state = i; - this.state.noArrowAt = e; - for (let t = 0; t < p.length; t++) e.push(p[t].start); - ({consequent: o, failed: l} = this.tryParseConditionalConsequent()); - [c, p] = this.getArrowLikeExpressions(o); - } - l && c.length > 1 && this.raise(i.start, _t.AmbiguousConditionalArrow); - if (l && 1 === c.length) { - this.state = i; - e.push(c[0].start); - this.state.noArrowAt = e; - ({consequent: o, failed: l} = this.tryParseConditionalConsequent()); - } - } - this.getArrowLikeExpressions(o, !0); - this.state.noArrowAt = s; - this.expect(22); - a.test = e; - a.consequent = o; - a.alternate = this.forwardNoArrowParamsConversionAt(a, () => this.parseMaybeAssign(void 0, void 0)); - return this.finishNode(a, "ConditionalExpression"); - } - tryParseConditionalConsequent() { - this.state.noArrowParamsConversionAt.push(this.state.start); - const e = this.parseMaybeAssignAllowIn(); - const t = !this.match(22); - this.state.noArrowParamsConversionAt.pop(); - return { - consequent: e, - failed: t - }; - } - getArrowLikeExpressions(e, t) { - const n = [ e ]; - const r = []; - for (;0 !== n.length; ) { - const e = n.pop(); - if ("ArrowFunctionExpression" === e.type) { - e.typeParameters || !e.returnType ? this.finishArrowValidation(e) : r.push(e); - n.push(e.body); - } else if ("ConditionalExpression" === e.type) { - n.push(e.consequent); - n.push(e.alternate); - } - } - if (t) { - r.forEach(e => this.finishArrowValidation(e)); - return [ r, [] ]; - } - return function(e, t) { - const n = []; - const r = []; - for (let i = 0; i < e.length; i++) (t(e[i], i, e) ? n : r).push(e[i]); - return [ n, r ]; - }(r, e => e.params.every(e => this.isAssignable(e, !0))); - } - finishArrowValidation(e) { - var t; - this.toAssignableList(e.params, null == (t = e.extra) ? void 0 : t.trailingComma, !1); - this.scope.enter(me | ye); - super.checkParams(e, !1, !0); - this.scope.exit(); - } - forwardNoArrowParamsConversionAt(e, t) { - let n; - if (-1 !== this.state.noArrowParamsConversionAt.indexOf(e.start)) { - this.state.noArrowParamsConversionAt.push(this.state.start); - n = t(); - this.state.noArrowParamsConversionAt.pop(); - } else n = t(); - return n; - } - parseParenItem(e, t, n) { - e = super.parseParenItem(e, t, n); - if (this.eat(25)) { - e.optional = !0; - this.resetEndLocation(e); - } - if (this.match(22)) { - const r = this.startNodeAt(t, n); - r.expression = e; - r.typeAnnotation = this.flowParseTypeAnnotation(); - return this.finishNode(r, "TypeCastExpression"); - } - return e; - } - assertModuleNodeAllowed(e) { - "ImportDeclaration" === e.type && ("type" === e.importKind || "typeof" === e.importKind) || "ExportNamedDeclaration" === e.type && "type" === e.exportKind || "ExportAllDeclaration" === e.type && "type" === e.exportKind || super.assertModuleNodeAllowed(e); - } - parseExport(e) { - const t = super.parseExport(e); - "ExportNamedDeclaration" !== t.type && "ExportAllDeclaration" !== t.type || (t.exportKind = t.exportKind || "value"); - return t; - } - parseExportDeclaration(e) { - if (this.isContextual("type")) { - e.exportKind = "type"; - const t = this.startNode(); - this.next(); - if (this.match(13)) { - e.specifiers = this.parseExportSpecifiers(); - this.parseExportFrom(e); - return null; - } - return this.flowParseTypeAlias(t); - } - if (this.isContextual("opaque")) { - e.exportKind = "type"; - const t = this.startNode(); - this.next(); - return this.flowParseOpaqueType(t, !1); - } - if (this.isContextual("interface")) { - e.exportKind = "type"; - const t = this.startNode(); - this.next(); - return this.flowParseInterface(t); - } - if (this.shouldParseEnums() && this.isContextual("enum")) { - e.exportKind = "value"; - const t = this.startNode(); - this.next(); - return this.flowParseEnumDeclaration(t); - } - return super.parseExportDeclaration(e); - } - eatExportStar(e) { - if (super.eatExportStar(...arguments)) return !0; - if (this.isContextual("type") && 54 === this.lookahead().type) { - e.exportKind = "type"; - this.next(); - this.next(); - return !0; - } - return !1; - } - maybeParseExportNamespaceSpecifier(e) { - const t = this.state.start; - const n = super.maybeParseExportNamespaceSpecifier(e); - n && "type" === e.exportKind && this.unexpected(t); - return n; - } - parseClassId(e, t, n) { - super.parseClassId(e, t, n); - this.isRelational("<") && (e.typeParameters = this.flowParseTypeParameterDeclaration()); - } - parseClassMember(e, t, n) { - const r = this.state.start; - if (this.isContextual("declare")) { - if (this.parseClassMemberFromModifier(e, t)) return; - t.declare = !0; - } - super.parseClassMember(e, t, n); - t.declare && ("ClassProperty" !== t.type && "ClassPrivateProperty" !== t.type && "PropertyDefinition" !== t.type ? this.raise(r, _t.DeclareClassElement) : t.value && this.raise(t.value.start, _t.DeclareClassFieldInitializer)); - } - isIterator(e) { - return "iterator" === e || "asyncIterator" === e; - } - readIterator() { - const e = super.readWord1(); - const t = "@@" + e; - this.isIterator(e) && this.state.inType || this.raise(this.state.pos, E.InvalidIdentifier, t); - this.finishToken(5, t); - } - getTokenFromCode(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - if (123 === e && 124 === t) return this.finishOp(14, 2); - if (!this.state.inType || 62 !== e && 60 !== e) { - if (this.state.inType && 63 === e) return 46 === t ? this.finishOp(26, 2) : this.finishOp(25, 1); - if (function(e, t) { - return 64 === e && 64 === t; - }(e, t)) { - this.state.pos += 2; - return this.readIterator(); - } - return super.getTokenFromCode(e); - } - return this.finishOp(50, 1); - } - isAssignable(e, t) { - return "TypeCastExpression" === e.type ? this.isAssignable(e.expression, t) : super.isAssignable(e, t); - } - toAssignable(e, t = !1) { - return "TypeCastExpression" === e.type ? super.toAssignable(this.typeCastToParameter(e), t) : super.toAssignable(e, t); - } - toAssignableList(e, t, n) { - for (let t = 0; t < e.length; t++) { - const n = e[t]; - "TypeCastExpression" === (null == n ? void 0 : n.type) && (e[t] = this.typeCastToParameter(n)); - } - return super.toAssignableList(e, t, n); - } - toReferencedList(e, t) { - for (let r = 0; r < e.length; r++) { - var n; - const i = e[r]; - !i || "TypeCastExpression" !== i.type || null != (n = i.extra) && n.parenthesized || !(e.length > 1) && t || this.raise(i.typeAnnotation.start, _t.TypeCastInPattern); - } - return e; - } - parseArrayLike(e, t, n, r) { - const i = super.parseArrayLike(e, t, n, r); - t && !this.state.maybeInArrowParameters && this.toReferencedList(i.elements); - return i; - } - checkLVal(e, ...t) { - if ("TypeCastExpression" !== e.type) return super.checkLVal(e, ...t); - } - parseClassProperty(e) { - this.match(22) && (e.typeAnnotation = this.flowParseTypeAnnotation()); - return super.parseClassProperty(e); - } - parseClassPrivateProperty(e) { - this.match(22) && (e.typeAnnotation = this.flowParseTypeAnnotation()); - return super.parseClassPrivateProperty(e); - } - isClassMethod() { - return this.isRelational("<") || super.isClassMethod(); - } - isClassProperty() { - return this.match(22) || super.isClassProperty(); - } - isNonstaticConstructor(e) { - return !this.match(22) && super.isNonstaticConstructor(e); - } - pushClassMethod(e, t, n, r, i, s) { - t.variance && this.unexpected(t.variance.start); - delete t.variance; - this.isRelational("<") && (t.typeParameters = this.flowParseTypeParameterDeclaration()); - super.pushClassMethod(e, t, n, r, i, s); - if (t.params && i) { - const e = t.params; - e.length > 0 && this.isThisParam(e[0]) && this.raise(t.start, _t.ThisParamBannedInConstructor); - } else if ("MethodDefinition" === t.type && i && t.value.params) { - const e = t.value.params; - e.length > 0 && this.isThisParam(e[0]) && this.raise(t.start, _t.ThisParamBannedInConstructor); - } - } - pushClassPrivateMethod(e, t, n, r) { - t.variance && this.unexpected(t.variance.start); - delete t.variance; - this.isRelational("<") && (t.typeParameters = this.flowParseTypeParameterDeclaration()); - super.pushClassPrivateMethod(e, t, n, r); - } - parseClassSuper(e) { - super.parseClassSuper(e); - e.superClass && this.isRelational("<") && (e.superTypeParameters = this.flowParseTypeParameterInstantiation()); - if (this.isContextual("implements")) { - this.next(); - const t = e.implements = []; - do { - const e = this.startNode(); - e.id = this.flowParseRestrictedIdentifier(!0); - this.isRelational("<") ? e.typeParameters = this.flowParseTypeParameterInstantiation() : e.typeParameters = null; - t.push(this.finishNode(e, "ClassImplements")); - } while (this.eat(20)); - } - } - checkGetterSetterParams(e) { - super.checkGetterSetterParams(e); - const t = this.getObjectOrClassMethodParams(e); - if (t.length > 0) { - const n = t[0]; - this.isThisParam(n) && "get" === e.kind ? this.raise(n.start, _t.GetterMayNotHaveThisParam) : this.isThisParam(n) && this.raise(n.start, _t.SetterMayNotHaveThisParam); - } - } - parsePropertyName(e, t) { - const n = this.flowParseVariance(); - const r = super.parsePropertyName(e, t); - e.variance = n; - return r; - } - parseObjPropValue(e, t, n, r, i, s, a, o) { - e.variance && this.unexpected(e.variance.start); - delete e.variance; - let l; - if (this.isRelational("<") && !a) { - l = this.flowParseTypeParameterDeclaration(); - this.match(18) || this.unexpected(); - } - super.parseObjPropValue(e, t, n, r, i, s, a, o); - l && ((e.value || e).typeParameters = l); - } - parseAssignableListItemTypes(e) { - if (this.eat(25)) { - "Identifier" !== e.type && this.raise(e.start, _t.PatternIsOptional); - this.isThisParam(e) && this.raise(e.start, _t.ThisParamMayNotBeOptional); - e.optional = !0; - } - this.match(22) ? e.typeAnnotation = this.flowParseTypeAnnotation() : this.isThisParam(e) && this.raise(e.start, _t.ThisParamAnnotationRequired); - this.match(35) && this.isThisParam(e) && this.raise(e.start, _t.ThisParamNoDefault); - this.resetEndLocation(e); - return e; - } - parseMaybeDefault(e, t, n) { - const r = super.parseMaybeDefault(e, t, n); - "AssignmentPattern" === r.type && r.typeAnnotation && r.right.start < r.typeAnnotation.start && this.raise(r.typeAnnotation.start, _t.TypeBeforeInitializer); - return r; - } - shouldParseDefaultImport(e) { - return Lt(e) ? jt(this.state) : super.shouldParseDefaultImport(e); - } - parseImportSpecifierLocal(e, t, n, r) { - t.local = Lt(e) ? this.flowParseRestrictedIdentifier(!0, !0) : this.parseIdentifier(); - this.checkLVal(t.local, r, _e); - e.specifiers.push(this.finishNode(t, n)); - } - maybeParseDefaultImportSpecifier(e) { - e.importKind = "value"; - let t = null; - this.match(86) ? t = "typeof" : this.isContextual("type") && (t = "type"); - if (t) { - const n = this.lookahead(); - "type" === t && 54 === n.type && this.unexpected(n.start); - if (jt(n) || 13 === n.type || 54 === n.type) { - this.next(); - e.importKind = t; - } - } - return super.maybeParseDefaultImportSpecifier(e); - } - parseImportSpecifier(e) { - const t = this.startNode(); - const n = this.match(4); - const r = this.parseModuleExportName(); - let i = null; - "Identifier" === r.type && ("type" === r.name ? i = "type" : "typeof" === r.name && (i = "typeof")); - let s = !1; - if (this.isContextual("as") && !this.isLookaheadContextual("as")) { - const e = this.parseIdentifier(!0); - if (null === i || this.match(5) || W(this.state.type)) { - t.imported = r; - t.importKind = null; - t.local = this.parseIdentifier(); - } else { - t.imported = e; - t.importKind = i; - t.local = Nt(e); - } - } else { - if (null !== i && (this.match(5) || W(this.state.type))) { - t.imported = this.parseIdentifier(!0); - t.importKind = i; - } else { - if (n) throw this.raise(t.start, E.ImportBindingIsString, r.value); - t.imported = r; - t.importKind = null; - } - if (this.eatContextual("as")) t.local = this.parseIdentifier(); else { - s = !0; - t.local = Nt(t.imported); - } - } - const a = Lt(e); - const o = Lt(t); - a && o && this.raise(t.start, _t.ImportTypeShorthandOnlyInPureImport); - (a || o) && this.checkReservedType(t.local.name, t.local.start, !0); - !s || a || o || this.checkReservedWord(t.local.name, t.start, !0, !0); - this.checkLVal(t.local, "import specifier", _e); - e.specifiers.push(this.finishNode(t, "ImportSpecifier")); - } - parseBindingAtom() { - switch (this.state.type) { - case 77: - return this.parseIdentifier(!0); - - default: - return super.parseBindingAtom(); - } - } - parseFunctionParams(e, t) { - const n = e.kind; - "get" !== n && "set" !== n && this.isRelational("<") && (e.typeParameters = this.flowParseTypeParameterDeclaration()); - super.parseFunctionParams(e, t); - } - parseVarId(e, t) { - super.parseVarId(e, t); - if (this.match(22)) { - e.id.typeAnnotation = this.flowParseTypeAnnotation(); - this.resetEndLocation(e.id); - } - } - parseAsyncArrowFromCallExpression(e, t) { - if (this.match(22)) { - const t = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = !0; - e.returnType = this.flowParseTypeAnnotation(); - this.state.noAnonFunctionType = t; - } - return super.parseAsyncArrowFromCallExpression(e, t); - } - shouldParseAsyncArrow() { - return this.match(22) || super.shouldParseAsyncArrow(); - } - parseMaybeAssign(e, t) { - var n, r, i; - let s = null; - let a; - if (this.hasPlugin("jsx") && (this.match(94) || this.isRelational("<"))) { - s = this.state.clone(); - if (!(a = this.tryParse(() => super.parseMaybeAssign(e, t), s)).error) return a.node; - const {context: n} = this.state; - const r = n[n.length - 1]; - r === C.j_oTag ? n.length -= 2 : r === C.j_expr && (n.length -= 1); - } - if (null != (n = a) && n.error || this.isRelational("<")) { - s = s || this.state.clone(); - let n; - const o = this.tryParse(r => { - var i; - n = this.flowParseTypeParameterDeclaration(); - const s = this.forwardNoArrowParamsConversionAt(n, () => { - const r = super.parseMaybeAssign(e, t); - this.resetStartLocationFromNode(r, n); - return r; - }); - null != (i = s.extra) && i.parenthesized && r(); - const a = this.maybeUnwrapTypeCastExpression(s); - "ArrowFunctionExpression" !== a.type && r(); - a.typeParameters = n; - this.resetStartLocationFromNode(a, n); - return s; - }, s); - let l = null; - if (o.node && "ArrowFunctionExpression" === this.maybeUnwrapTypeCastExpression(o.node).type) { - if (!o.error && !o.aborted) { - o.node.async && this.raise(n.start, _t.UnexpectedTypeParameterBeforeAsyncArrowFunction); - return o.node; - } - l = o.node; - } - if (null != (r = a) && r.node) { - this.state = a.failState; - return a.node; - } - if (l) { - this.state = o.failState; - return l; - } - if (null != (i = a) && i.thrown) throw a.error; - if (o.thrown) throw o.error; - throw this.raise(n.start, _t.UnexpectedTokenAfterTypeParameter); - } - return super.parseMaybeAssign(e, t); - } - parseArrow(e) { - if (this.match(22)) { - const t = this.tryParse(() => { - const t = this.state.noAnonFunctionType; - this.state.noAnonFunctionType = !0; - const n = this.startNode(); - [n.typeAnnotation, e.predicate] = this.flowParseTypeAndPredicateInitialiser(); - this.state.noAnonFunctionType = t; - this.canInsertSemicolon() && this.unexpected(); - this.match(27) || this.unexpected(); - return n; - }); - if (t.thrown) return null; - t.error && (this.state = t.failState); - e.returnType = t.node.typeAnnotation ? this.finishNode(t.node, "TypeAnnotation") : null; - } - return super.parseArrow(e); - } - shouldParseArrow(e) { - return this.match(22) || super.shouldParseArrow(e); - } - setArrowFunctionParameters(e, t) { - -1 !== this.state.noArrowParamsConversionAt.indexOf(e.start) ? e.params = t : super.setArrowFunctionParameters(e, t); - } - checkParams(e, t, n) { - if (!n || -1 === this.state.noArrowParamsConversionAt.indexOf(e.start)) { - for (let t = 0; t < e.params.length; t++) this.isThisParam(e.params[t]) && t > 0 && this.raise(e.params[t].start, _t.ThisParamMustBeFirst); - return super.checkParams(...arguments); - } - } - parseParenAndDistinguishExpression(e) { - return super.parseParenAndDistinguishExpression(e && -1 === this.state.noArrowAt.indexOf(this.state.start)); - } - parseSubscripts(e, t, n, r) { - if ("Identifier" === e.type && "async" === e.name && -1 !== this.state.noArrowAt.indexOf(t)) { - this.next(); - const r = this.startNodeAt(t, n); - r.callee = e; - r.arguments = this.parseCallExpressionArguments(19, !1); - e = this.finishNode(r, "CallExpression"); - } else if ("Identifier" === e.type && "async" === e.name && this.isRelational("<")) { - const i = this.state.clone(); - const s = this.tryParse(e => this.parseAsyncArrowWithTypeParameters(t, n) || e(), i); - if (!s.error && !s.aborted) return s.node; - const a = this.tryParse(() => super.parseSubscripts(e, t, n, r), i); - if (a.node && !a.error) return a.node; - if (s.node) { - this.state = s.failState; - return s.node; - } - if (a.node) { - this.state = a.failState; - return a.node; - } - throw s.error || a.error; - } - return super.parseSubscripts(e, t, n, r); - } - parseSubscript(e, t, n, r, i) { - if (this.match(26) && this.isLookaheadToken_lt()) { - i.optionalChainMember = !0; - if (r) { - i.stop = !0; - return e; - } - this.next(); - const s = this.startNodeAt(t, n); - s.callee = e; - s.typeArguments = this.flowParseTypeParameterInstantiation(); - this.expect(18); - s.arguments = this.parseCallExpressionArguments(19, !1); - s.optional = !0; - return this.finishCallExpression(s, !0); - } - if (!r && this.shouldParseTypes() && this.isRelational("<")) { - const r = this.startNodeAt(t, n); - r.callee = e; - const s = this.tryParse(() => { - r.typeArguments = this.flowParseTypeParameterInstantiationCallOrNew(); - this.expect(18); - r.arguments = this.parseCallExpressionArguments(19, !1); - i.optionalChainMember && (r.optional = !1); - return this.finishCallExpression(r, i.optionalChainMember); - }); - if (s.node) { - s.error && (this.state = s.failState); - return s.node; - } - } - return super.parseSubscript(e, t, n, r, i); - } - parseNewArguments(e) { - let t = null; - this.shouldParseTypes() && this.isRelational("<") && (t = this.tryParse(() => this.flowParseTypeParameterInstantiationCallOrNew()).node); - e.typeArguments = t; - super.parseNewArguments(e); - } - parseAsyncArrowWithTypeParameters(e, t) { - const n = this.startNodeAt(e, t); - this.parseFunctionParams(n); - if (this.parseArrow(n)) return this.parseArrowExpression(n, void 0, !0); - } - readToken_mult_modulo(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - if (42 === e && 47 === t && this.state.hasFlowComment) { - this.state.hasFlowComment = !1; - this.state.pos += 2; - this.nextToken(); - } else super.readToken_mult_modulo(e); - } - readToken_pipe_amp(e) { - const t = this.input.charCodeAt(this.state.pos + 1); - 124 !== e || 125 !== t ? super.readToken_pipe_amp(e) : this.finishOp(17, 2); - } - parseTopLevel(e, t) { - const n = super.parseTopLevel(e, t); - this.state.hasFlowComment && this.raise(this.state.pos, _t.UnterminatedFlowComment); - return n; - } - skipBlockComment() { - if (this.hasPlugin("flowComments") && this.skipFlowComment()) { - this.state.hasFlowComment && this.unexpected(null, _t.NestedFlowComment); - this.hasFlowCommentCompletion(); - this.state.pos += this.skipFlowComment(); - this.state.hasFlowComment = !0; - } else { - if (!this.state.hasFlowComment) return super.skipBlockComment(); - { - const e = this.input.indexOf("*-/", this.state.pos += 2); - if (-1 === e) throw this.raise(this.state.pos - 2, E.UnterminatedComment); - this.state.pos = e + 3; - } - } - } - skipFlowComment() { - const {pos: e} = this.state; - let t = 2; - for (;[ 32, 9 ].includes(this.input.charCodeAt(e + t)); ) t++; - const n = this.input.charCodeAt(t + e); - const r = this.input.charCodeAt(t + e + 1); - return 58 === n && 58 === r ? t + 2 : "flow-include" === this.input.slice(t + e, t + e + 12) ? t + 12 : 58 === n && 58 !== r && t; - } - hasFlowCommentCompletion() { - if (-1 === this.input.indexOf("*/", this.state.pos)) throw this.raise(this.state.pos, E.UnterminatedComment); - } - flowEnumErrorBooleanMemberNotInitialized(e, {enumName: t, memberName: n}) { - this.raise(e, _t.EnumBooleanMemberNotInitialized, n, t); - } - flowEnumErrorInvalidMemberName(e, {enumName: t, memberName: n}) { - const r = n[0].toUpperCase() + n.slice(1); - this.raise(e, _t.EnumInvalidMemberName, n, r, t); - } - flowEnumErrorDuplicateMemberName(e, {enumName: t, memberName: n}) { - this.raise(e, _t.EnumDuplicateMemberName, n, t); - } - flowEnumErrorInconsistentMemberValues(e, {enumName: t}) { - this.raise(e, _t.EnumInconsistentMemberValues, t); - } - flowEnumErrorInvalidExplicitType(e, {enumName: t, suppliedType: n}) { - return this.raise(e, null === n ? _t.EnumInvalidExplicitTypeUnknownSupplied : _t.EnumInvalidExplicitType, t, n); - } - flowEnumErrorInvalidMemberInitializer(e, {enumName: t, explicitType: n, memberName: r}) { - let i = null; - switch (n) { - case "boolean": - case "number": - case "string": - i = _t.EnumInvalidMemberInitializerPrimaryType; - break; - - case "symbol": - i = _t.EnumInvalidMemberInitializerSymbolType; - break; - - default: - i = _t.EnumInvalidMemberInitializerUnknownType; - } - return this.raise(e, i, t, r, n); - } - flowEnumErrorNumberMemberNotInitialized(e, {enumName: t, memberName: n}) { - this.raise(e, _t.EnumNumberMemberNotInitialized, t, n); - } - flowEnumErrorStringMemberInconsistentlyInitailized(e, {enumName: t}) { - this.raise(e, _t.EnumStringMemberInconsistentlyInitailized, t); - } - flowEnumMemberInit() { - const e = this.state.start; - const t = () => this.match(20) || this.match(16); - switch (this.state.type) { - case 0: - { - const n = this.parseNumericLiteral(this.state.value); - return t() ? { - type: "number", - pos: n.start, - value: n - } : { - type: "invalid", - pos: e - }; - } - - case 4: - { - const n = this.parseStringLiteral(this.state.value); - return t() ? { - type: "string", - pos: n.start, - value: n - } : { - type: "invalid", - pos: e - }; - } - - case 84: - case 85: - { - const n = this.parseBooleanLiteral(this.match(84)); - return t() ? { - type: "boolean", - pos: n.start, - value: n - } : { - type: "invalid", - pos: e - }; - } - - default: - return { - type: "invalid", - pos: e - }; - } - } - flowEnumMemberRaw() { - const e = this.state.start; - return { - id: this.parseIdentifier(!0), - init: this.eat(35) ? this.flowEnumMemberInit() : { - type: "none", - pos: e - } - }; - } - flowEnumCheckExplicitTypeMismatch(e, t, n) { - const {explicitType: r} = t; - null !== r && r !== n && this.flowEnumErrorInvalidMemberInitializer(e, t); - } - flowEnumMembers({enumName: e, explicitType: t}) { - const n = new Set(); - const r = { - booleanMembers: [], - numberMembers: [], - stringMembers: [], - defaultedMembers: [] - }; - let i = !1; - for (;!this.match(16); ) { - if (this.eat(29)) { - i = !0; - break; - } - const s = this.startNode(); - const {id: a, init: o} = this.flowEnumMemberRaw(); - const l = a.name; - if ("" === l) continue; - /^[a-z]/.test(l) && this.flowEnumErrorInvalidMemberName(a.start, { - enumName: e, - memberName: l - }); - n.has(l) && this.flowEnumErrorDuplicateMemberName(a.start, { - enumName: e, - memberName: l - }); - n.add(l); - const c = { - enumName: e, - explicitType: t, - memberName: l - }; - s.id = a; - switch (o.type) { - case "boolean": - this.flowEnumCheckExplicitTypeMismatch(o.pos, c, "boolean"); - s.init = o.value; - r.booleanMembers.push(this.finishNode(s, "EnumBooleanMember")); - break; - - case "number": - this.flowEnumCheckExplicitTypeMismatch(o.pos, c, "number"); - s.init = o.value; - r.numberMembers.push(this.finishNode(s, "EnumNumberMember")); - break; - - case "string": - this.flowEnumCheckExplicitTypeMismatch(o.pos, c, "string"); - s.init = o.value; - r.stringMembers.push(this.finishNode(s, "EnumStringMember")); - break; - - case "invalid": - throw this.flowEnumErrorInvalidMemberInitializer(o.pos, c); - - case "none": - switch (t) { - case "boolean": - this.flowEnumErrorBooleanMemberNotInitialized(o.pos, c); - break; - - case "number": - this.flowEnumErrorNumberMemberNotInitialized(o.pos, c); - break; - - default: - r.defaultedMembers.push(this.finishNode(s, "EnumDefaultedMember")); - } - } - this.match(16) || this.expect(20); - } - return { - members: r, - hasUnknownMembers: i - }; - } - flowEnumStringMembers(e, t, {enumName: n}) { - if (0 === e.length) return t; - if (0 === t.length) return e; - if (t.length > e.length) { - for (const t of e) this.flowEnumErrorStringMemberInconsistentlyInitailized(t.start, { - enumName: n - }); - return t; - } - for (const e of t) this.flowEnumErrorStringMemberInconsistentlyInitailized(e.start, { - enumName: n - }); - return e; - } - flowEnumParseExplicitType({enumName: e}) { - if (this.eatContextual("of")) { - if (!this.match(5)) throw this.flowEnumErrorInvalidExplicitType(this.state.start, { - enumName: e, - suppliedType: null - }); - const {value: t} = this.state; - this.next(); - "boolean" !== t && "number" !== t && "string" !== t && "symbol" !== t && this.flowEnumErrorInvalidExplicitType(this.state.start, { - enumName: e, - suppliedType: t - }); - return t; - } - return null; - } - flowEnumBody(e, {enumName: t, nameLoc: n}) { - const r = this.flowEnumParseExplicitType({ - enumName: t - }); - this.expect(13); - const {members: i, hasUnknownMembers: s} = this.flowEnumMembers({ - enumName: t, - explicitType: r - }); - e.hasUnknownMembers = s; - switch (r) { - case "boolean": - e.explicitType = !0; - e.members = i.booleanMembers; - this.expect(16); - return this.finishNode(e, "EnumBooleanBody"); - - case "number": - e.explicitType = !0; - e.members = i.numberMembers; - this.expect(16); - return this.finishNode(e, "EnumNumberBody"); - - case "string": - e.explicitType = !0; - e.members = this.flowEnumStringMembers(i.stringMembers, i.defaultedMembers, { - enumName: t - }); - this.expect(16); - return this.finishNode(e, "EnumStringBody"); - - case "symbol": - e.members = i.defaultedMembers; - this.expect(16); - return this.finishNode(e, "EnumSymbolBody"); - - default: - { - const r = () => { - e.members = []; - this.expect(16); - return this.finishNode(e, "EnumStringBody"); - }; - e.explicitType = !1; - const s = i.booleanMembers.length; - const a = i.numberMembers.length; - const o = i.stringMembers.length; - const l = i.defaultedMembers.length; - if (s || a || o || l) { - if (s || a) { - if (!a && !o && s >= l) { - for (const e of i.defaultedMembers) this.flowEnumErrorBooleanMemberNotInitialized(e.start, { - enumName: t, - memberName: e.id.name - }); - e.members = i.booleanMembers; - this.expect(16); - return this.finishNode(e, "EnumBooleanBody"); - } - if (!s && !o && a >= l) { - for (const e of i.defaultedMembers) this.flowEnumErrorNumberMemberNotInitialized(e.start, { - enumName: t, - memberName: e.id.name - }); - e.members = i.numberMembers; - this.expect(16); - return this.finishNode(e, "EnumNumberBody"); - } - this.flowEnumErrorInconsistentMemberValues(n, { - enumName: t - }); - return r(); - } - e.members = this.flowEnumStringMembers(i.stringMembers, i.defaultedMembers, { - enumName: t - }); - this.expect(16); - return this.finishNode(e, "EnumStringBody"); - } - return r(); - } - } - } - flowParseEnumDeclaration(e) { - const t = this.parseIdentifier(); - e.id = t; - e.body = this.flowEnumBody(this.startNode(), { - enumName: t.name, - nameLoc: t.start - }); - return this.finishNode(e, "EnumDeclaration"); - } - isLookaheadToken_lt() { - const e = this.nextTokenStart(); - if (60 === this.input.charCodeAt(e)) { - const t = this.input.charCodeAt(e + 1); - return 60 !== t && 61 !== t; - } - return !1; - } - maybeUnwrapTypeCastExpression(e) { - return "TypeCastExpression" === e.type ? e.expression : e; - } - })); - const Rt = { - quot: '"', - amp: "&", - apos: "'", - lt: "<", - gt: ">", - nbsp: " ", - iexcl: "¡", - cent: "¢", - pound: "£", - curren: "¤", - yen: "¥", - brvbar: "¦", - sect: "§", - uml: "¨", - copy: "©", - ordf: "ª", - laquo: "«", - not: "¬", - shy: "­", - reg: "®", - macr: "¯", - deg: "°", - plusmn: "±", - sup2: "²", - sup3: "³", - acute: "´", - micro: "µ", - para: "¶", - middot: "·", - cedil: "¸", - sup1: "¹", - ordm: "º", - raquo: "»", - frac14: "¼", - frac12: "½", - frac34: "¾", - iquest: "¿", - Agrave: "À", - Aacute: "Á", - Acirc: "Â", - Atilde: "Ã", - Auml: "Ä", - Aring: "Å", - AElig: "Æ", - Ccedil: "Ç", - Egrave: "È", - Eacute: "É", - Ecirc: "Ê", - Euml: "Ë", - Igrave: "Ì", - Iacute: "Í", - Icirc: "Î", - Iuml: "Ï", - ETH: "Ð", - Ntilde: "Ñ", - Ograve: "Ò", - Oacute: "Ó", - Ocirc: "Ô", - Otilde: "Õ", - Ouml: "Ö", - times: "×", - Oslash: "Ø", - Ugrave: "Ù", - Uacute: "Ú", - Ucirc: "Û", - Uuml: "Ü", - Yacute: "Ý", - THORN: "Þ", - szlig: "ß", - agrave: "à", - aacute: "á", - acirc: "â", - atilde: "ã", - auml: "ä", - aring: "å", - aelig: "æ", - ccedil: "ç", - egrave: "è", - eacute: "é", - ecirc: "ê", - euml: "ë", - igrave: "ì", - iacute: "í", - icirc: "î", - iuml: "ï", - eth: "ð", - ntilde: "ñ", - ograve: "ò", - oacute: "ó", - ocirc: "ô", - otilde: "õ", - ouml: "ö", - divide: "÷", - oslash: "ø", - ugrave: "ù", - uacute: "ú", - ucirc: "û", - uuml: "ü", - yacute: "ý", - thorn: "þ", - yuml: "ÿ", - OElig: "Œ", - oelig: "œ", - Scaron: "Š", - scaron: "š", - Yuml: "Ÿ", - fnof: "ƒ", - circ: "ˆ", - tilde: "˜", - Alpha: "Α", - Beta: "Β", - Gamma: "Γ", - Delta: "Δ", - Epsilon: "Ε", - Zeta: "Ζ", - Eta: "Η", - Theta: "Θ", - Iota: "Ι", - Kappa: "Κ", - Lambda: "Λ", - Mu: "Μ", - Nu: "Ν", - Xi: "Ξ", - Omicron: "Ο", - Pi: "Π", - Rho: "Ρ", - Sigma: "Σ", - Tau: "Τ", - Upsilon: "Υ", - Phi: "Φ", - Chi: "Χ", - Psi: "Ψ", - Omega: "Ω", - alpha: "α", - beta: "β", - gamma: "γ", - delta: "δ", - epsilon: "ε", - zeta: "ζ", - eta: "η", - theta: "θ", - iota: "ι", - kappa: "κ", - lambda: "λ", - mu: "μ", - nu: "ν", - xi: "ξ", - omicron: "ο", - pi: "π", - rho: "ρ", - sigmaf: "ς", - sigma: "σ", - tau: "τ", - upsilon: "υ", - phi: "φ", - chi: "χ", - psi: "ψ", - omega: "ω", - thetasym: "ϑ", - upsih: "ϒ", - piv: "ϖ", - ensp: " ", - emsp: " ", - thinsp: " ", - zwnj: "‌", - zwj: "‍", - lrm: "‎", - rlm: "‏", - ndash: "–", - mdash: "—", - lsquo: "‘", - rsquo: "’", - sbquo: "‚", - ldquo: "“", - rdquo: "”", - bdquo: "„", - dagger: "†", - Dagger: "‡", - bull: "•", - hellip: "…", - permil: "‰", - prime: "′", - Prime: "″", - lsaquo: "‹", - rsaquo: "›", - oline: "‾", - frasl: "⁄", - euro: "€", - image: "ℑ", - weierp: "℘", - real: "ℜ", - trade: "™", - alefsym: "ℵ", - larr: "←", - uarr: "↑", - rarr: "→", - darr: "↓", - harr: "↔", - crarr: "↵", - lArr: "⇐", - uArr: "⇑", - rArr: "⇒", - dArr: "⇓", - hArr: "⇔", - forall: "∀", - part: "∂", - exist: "∃", - empty: "∅", - nabla: "∇", - isin: "∈", - notin: "∉", - ni: "∋", - prod: "∏", - sum: "∑", - minus: "−", - lowast: "∗", - radic: "√", - prop: "∝", - infin: "∞", - ang: "∠", - and: "∧", - or: "∨", - cap: "∩", - cup: "∪", - int: "∫", - there4: "∴", - sim: "∼", - cong: "≅", - asymp: "≈", - ne: "≠", - equiv: "≡", - le: "≤", - ge: "≥", - sub: "⊂", - sup: "⊃", - nsub: "⊄", - sube: "⊆", - supe: "⊇", - oplus: "⊕", - otimes: "⊗", - perp: "⊥", - sdot: "⋅", - lceil: "⌈", - rceil: "⌉", - lfloor: "⌊", - rfloor: "⌋", - lang: "〈", - rang: "〉", - loz: "◊", - spades: "♠", - clubs: "♣", - hearts: "♥", - diams: "♦" - }; - const Ut = /^[\da-fA-F]+$/; - const Vt = /^\d+$/; - const Kt = v({ - AttributeIsEmpty: "JSX attributes must only be assigned a non-empty expression.", - MissingClosingTagElement: "Expected corresponding JSX closing tag for <%0>.", - MissingClosingTagFragment: "Expected corresponding JSX closing tag for <>.", - UnexpectedSequenceExpression: "Sequence expressions cannot be directly nested inside JSX. Did you mean to wrap it in parentheses (...)?", - UnsupportedJsxValue: "JSX value should be either an expression or a quoted JSX text.", - UnterminatedJsxContent: "Unterminated JSX contents.", - UnwrappedAdjacentJSXElements: "Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...?" - }, x.SyntaxError, "jsx"); - C.j_oTag = new w("...", !0); - function Wt(e) { - return !!e && ("JSXOpeningFragment" === e.type || "JSXClosingFragment" === e.type); - } - function qt(e) { - if ("JSXIdentifier" === e.type) return e.name; - if ("JSXNamespacedName" === e.type) return e.namespace.name + ":" + e.name.name; - if ("JSXMemberExpression" === e.type) return qt(e.object) + "." + qt(e.property); - throw new Error("Node had unexpected type: " + e.type); - } - a = (e => (class extends e { - jsxReadToken() { - let e = ""; - let t = this.state.pos; - for (;;) { - if (this.state.pos >= this.length) throw this.raise(this.state.start, Kt.UnterminatedJsxContent); - const n = this.input.charCodeAt(this.state.pos); - switch (n) { - case 60: - case 123: - if (this.state.pos === this.state.start) { - if (60 === n && this.state.exprAllowed) { - ++this.state.pos; - return this.finishToken(94); - } - return super.getTokenFromCode(n); - } - e += this.input.slice(t, this.state.pos); - return this.finishToken(93, e); - - case 38: - e += this.input.slice(t, this.state.pos); - e += this.jsxReadEntity(); - t = this.state.pos; - break; - - case 62: - case 125: - default: - if (p(n)) { - e += this.input.slice(t, this.state.pos); - e += this.jsxReadNewLine(!0); - t = this.state.pos; - } else ++this.state.pos; - } - } - } - jsxReadNewLine(e) { - const t = this.input.charCodeAt(this.state.pos); - let n; - ++this.state.pos; - if (13 === t && 10 === this.input.charCodeAt(this.state.pos)) { - ++this.state.pos; - n = e ? "\n" : "\r\n"; - } else n = String.fromCharCode(t); - ++this.state.curLine; - this.state.lineStart = this.state.pos; - return n; - } - jsxReadString(e) { - let t = ""; - let n = ++this.state.pos; - for (;;) { - if (this.state.pos >= this.length) throw this.raise(this.state.start, E.UnterminatedString); - const r = this.input.charCodeAt(this.state.pos); - if (r === e) break; - if (38 === r) { - t += this.input.slice(n, this.state.pos); - t += this.jsxReadEntity(); - n = this.state.pos; - } else if (p(r)) { - t += this.input.slice(n, this.state.pos); - t += this.jsxReadNewLine(!1); - n = this.state.pos; - } else ++this.state.pos; - } - t += this.input.slice(n, this.state.pos++); - return this.finishToken(4, t); - } - jsxReadEntity() { - let e = ""; - let t = 0; - let n; - let r = this.input[this.state.pos]; - const i = ++this.state.pos; - for (;this.state.pos < this.length && t++ < 10; ) { - if (";" === (r = this.input[this.state.pos++])) { - if ("#" === e[0]) if ("x" === e[1]) { - e = e.substr(2); - Ut.test(e) && (n = String.fromCodePoint(parseInt(e, 16))); - } else { - e = e.substr(1); - Vt.test(e) && (n = String.fromCodePoint(parseInt(e, 10))); - } else n = Rt[e]; - break; - } - e += r; - } - if (!n) { - this.state.pos = i; - return "&"; - } - return n; - } - jsxReadWord() { - let e; - const t = this.state.pos; - do { - e = this.input.charCodeAt(++this.state.pos); - } while (te(e) || 45 === e); - return this.finishToken(92, this.input.slice(t, this.state.pos)); - } - jsxParseIdentifier() { - const e = this.startNode(); - this.match(92) ? e.name = this.state.value : W(this.state.type) ? e.name = q(this.state.type) : this.unexpected(); - this.next(); - return this.finishNode(e, "JSXIdentifier"); - } - jsxParseNamespacedName() { - const e = this.state.start; - const t = this.state.startLoc; - const n = this.jsxParseIdentifier(); - if (!this.eat(22)) return n; - const r = this.startNodeAt(e, t); - r.namespace = n; - r.name = this.jsxParseIdentifier(); - return this.finishNode(r, "JSXNamespacedName"); - } - jsxParseElementName() { - const e = this.state.start; - const t = this.state.startLoc; - let n = this.jsxParseNamespacedName(); - if ("JSXNamespacedName" === n.type) return n; - for (;this.eat(24); ) { - const r = this.startNodeAt(e, t); - r.object = n; - r.property = this.jsxParseIdentifier(); - n = this.finishNode(r, "JSXMemberExpression"); - } - return n; - } - jsxParseAttributeValue() { - let e; - switch (this.state.type) { - case 13: - e = this.startNode(); - this.next(); - "JSXEmptyExpression" === (e = this.jsxParseExpressionContainer(e)).expression.type && this.raise(e.start, Kt.AttributeIsEmpty); - return e; - - case 94: - case 4: - return this.parseExprAtom(); - - default: - throw this.raise(this.state.start, Kt.UnsupportedJsxValue); - } - } - jsxParseEmptyExpression() { - const e = this.startNodeAt(this.state.lastTokEnd, this.state.lastTokEndLoc); - return this.finishNodeAt(e, "JSXEmptyExpression", this.state.start, this.state.startLoc); - } - jsxParseSpreadChild(e) { - this.next(); - e.expression = this.parseExpression(); - this.expect(16); - return this.finishNode(e, "JSXSpreadChild"); - } - jsxParseExpressionContainer(e) { - if (this.match(16)) e.expression = this.jsxParseEmptyExpression(); else { - const t = this.parseExpression(); - e.expression = t; - } - this.expect(16); - return this.finishNode(e, "JSXExpressionContainer"); - } - jsxParseAttribute() { - const e = this.startNode(); - if (this.eat(13)) { - this.expect(29); - e.argument = this.parseMaybeAssignAllowIn(); - this.expect(16); - return this.finishNode(e, "JSXSpreadAttribute"); - } - e.name = this.jsxParseNamespacedName(); - e.value = this.eat(35) ? this.jsxParseAttributeValue() : null; - return this.finishNode(e, "JSXAttribute"); - } - jsxParseOpeningElementAt(e, t) { - const n = this.startNodeAt(e, t); - if (this.match(95)) { - this.expect(95); - return this.finishNode(n, "JSXOpeningFragment"); - } - n.name = this.jsxParseElementName(); - return this.jsxParseOpeningElementAfterName(n); - } - jsxParseOpeningElementAfterName(e) { - const t = []; - for (;!this.match(55) && !this.match(95); ) t.push(this.jsxParseAttribute()); - e.attributes = t; - e.selfClosing = this.eat(55); - this.expect(95); - return this.finishNode(e, "JSXOpeningElement"); - } - jsxParseClosingElementAt(e, t) { - const n = this.startNodeAt(e, t); - if (this.match(95)) { - this.expect(95); - return this.finishNode(n, "JSXClosingFragment"); - } - n.name = this.jsxParseElementName(); - this.expect(95); - return this.finishNode(n, "JSXClosingElement"); - } - jsxParseElementAt(e, t) { - const n = this.startNodeAt(e, t); - const r = []; - const i = this.jsxParseOpeningElementAt(e, t); - let s = null; - if (!i.selfClosing) { - e: for (;;) switch (this.state.type) { - case 94: - e = this.state.start; - t = this.state.startLoc; - this.next(); - if (this.eat(55)) { - s = this.jsxParseClosingElementAt(e, t); - break e; - } - r.push(this.jsxParseElementAt(e, t)); - break; - - case 93: - r.push(this.parseExprAtom()); - break; - - case 13: - { - const e = this.startNode(); - this.next(); - this.match(29) ? r.push(this.jsxParseSpreadChild(e)) : r.push(this.jsxParseExpressionContainer(e)); - break; - } - - default: - throw this.unexpected(); - } - Wt(i) && !Wt(s) ? this.raise(s.start, Kt.MissingClosingTagFragment) : !Wt(i) && Wt(s) ? this.raise(s.start, Kt.MissingClosingTagElement, qt(i.name)) : Wt(i) || Wt(s) || qt(s.name) !== qt(i.name) && this.raise(s.start, Kt.MissingClosingTagElement, qt(i.name)); - } - if (Wt(i)) { - n.openingFragment = i; - n.closingFragment = s; - } else { - n.openingElement = i; - n.closingElement = s; - } - n.children = r; - if (this.isRelational("<")) throw this.raise(this.state.start, Kt.UnwrappedAdjacentJSXElements); - return Wt(i) ? this.finishNode(n, "JSXFragment") : this.finishNode(n, "JSXElement"); - } - jsxParseElement() { - const e = this.state.start; - const t = this.state.startLoc; - this.next(); - return this.jsxParseElementAt(e, t); - } - parseExprAtom(e) { - if (this.match(93)) return this.parseLiteral(this.state.value, "JSXText"); - if (this.match(94)) return this.jsxParseElement(); - if (this.isRelational("<") && 33 !== this.input.charCodeAt(this.state.pos)) { - this.finishToken(94); - return this.jsxParseElement(); - } - return super.parseExprAtom(e); - } - createLookaheadState(e) { - const t = super.createLookaheadState(e); - t.inPropertyName = e.inPropertyName; - return t; - } - getTokenFromCode(e) { - if (this.state.inPropertyName) return super.getTokenFromCode(e); - const t = this.curContext(); - if (t === C.j_expr) return this.jsxReadToken(); - if (t === C.j_oTag || t === C.j_cTag) { - if (ee(e)) return this.jsxReadWord(); - if (62 === e) { - ++this.state.pos; - return this.finishToken(95); - } - if ((34 === e || 39 === e) && t === C.j_oTag) return this.jsxReadString(e); - } - if (60 === e && this.state.exprAllowed && 33 !== this.input.charCodeAt(this.state.pos + 1)) { - ++this.state.pos; - return this.finishToken(94); - } - return super.getTokenFromCode(e); - } - updateContext(e) { - super.updateContext(e); - const {context: t, type: n} = this.state; - if (55 === n && 94 === e) { - t.splice(-2, 2, C.j_cTag); - this.state.exprAllowed = !1; - } else if (94 === n) t.push(C.j_expr, C.j_oTag); else if (95 === n) { - const n = t.pop(); - if (n === C.j_oTag && 55 === e || n === C.j_cTag) { - t.pop(); - this.state.exprAllowed = t[t.length - 1] === C.j_expr; - } else this.state.exprAllowed = !0; - } else !W(n) || 24 !== e && 26 !== e ? this.state.exprAllowed = F[n] : this.state.exprAllowed = !1; - } - })); - class Yt extends Ze { - constructor(...e) { - super(...e); - this.types = new Set(); - this.enums = new Set(); - this.constEnums = new Set(); - this.classes = new Set(); - this.exportOnlyBindings = new Set(); - } - } - class Jt extends et { - createScope(e) { - return new Yt(e); - } - declareName(e, t, n) { - const r = this.currentScope(); - if (t & ke) { - this.maybeExportDefined(r, e); - r.exportOnlyBindings.add(e); - } else { - super.declareName(...arguments); - if (t & ve) { - if (!(t & Pe)) { - this.checkRedeclarationInScope(r, e, t, n); - this.maybeExportDefined(r, e); - } - r.types.add(e); - } - t & Oe && r.enums.add(e); - t & Ne && r.constEnums.add(e); - t & Ie && r.classes.add(e); - } - } - isRedeclaredInScope(e, t, n) { - if (e.enums.has(t)) { - if (n & Oe) { - return !!(n & Ne) !== e.constEnums.has(t); - } - return !0; - } - return n & Ie && e.classes.has(t) ? !!e.lexical.has(t) && !!(n & Pe) : !!(n & ve && e.types.has(t)) || super.isRedeclaredInScope(...arguments); - } - checkLocalExport(e) { - const t = this.scopeStack[0]; - const {name: n} = e; - t.types.has(n) || t.exportOnlyBindings.has(n) || super.checkLocalExport(e); - } - } - function Xt(e) { - if (!e) throw new Error("Assert fail"); - } - const Gt = v({ - AbstractMethodHasImplementation: "Method '%0' cannot have an implementation because it is marked abstract.", - AbstractPropertyHasInitializer: "Property '%0' cannot have an initializer because it is marked abstract.", - AccesorCannotDeclareThisParameter: "'get' and 'set' accessors cannot declare 'this' parameters.", - AccesorCannotHaveTypeParameters: "An accessor cannot have type parameters.", - ClassMethodHasDeclare: "Class methods cannot have the 'declare' modifier.", - ClassMethodHasReadonly: "Class methods cannot have the 'readonly' modifier.", - ConstructorHasTypeParameters: "Type parameters cannot appear on a constructor declaration.", - DeclareAccessor: "'declare' is not allowed in %0ters.", - DeclareClassFieldHasInitializer: "Initializers are not allowed in ambient contexts.", - DeclareFunctionHasImplementation: "An implementation cannot be declared in ambient contexts.", - DuplicateAccessibilityModifier: "Accessibility modifier already seen.", - DuplicateModifier: "Duplicate modifier: '%0'.", - EmptyHeritageClauseType: "'%0' list cannot be empty.", - EmptyTypeArguments: "Type argument list cannot be empty.", - EmptyTypeParameters: "Type parameter list cannot be empty.", - ExpectedAmbientAfterExportDeclare: "'export declare' must be followed by an ambient declaration.", - ImportAliasHasImportType: "An import alias can not use 'import type'.", - IncompatibleModifiers: "'%0' modifier cannot be used with '%1' modifier.", - IndexSignatureHasAbstract: "Index signatures cannot have the 'abstract' modifier.", - IndexSignatureHasAccessibility: "Index signatures cannot have an accessibility modifier ('%0').", - IndexSignatureHasDeclare: "Index signatures cannot have the 'declare' modifier.", - IndexSignatureHasOverride: "'override' modifier cannot appear on an index signature.", - IndexSignatureHasStatic: "Index signatures cannot have the 'static' modifier.", - InvalidModifierOnTypeMember: "'%0' modifier cannot appear on a type member.", - InvalidModifiersOrder: "'%0' modifier must precede '%1' modifier.", - InvalidTupleMemberLabel: "Tuple members must be labeled with a simple identifier.", - MissingInterfaceName: "'interface' declarations must be followed by an identifier.", - MixedLabeledAndUnlabeledElements: "Tuple members must all have names or all not have names.", - NonAbstractClassHasAbstractMethod: "Abstract methods can only appear within an abstract class.", - NonClassMethodPropertyHasAbstractModifer: "'abstract' modifier can only appear on a class, method, or property declaration.", - OptionalTypeBeforeRequired: "A required element cannot follow an optional element.", - OverrideNotInSubClass: "This member cannot have an 'override' modifier because its containing class does not extend another class.", - PatternIsOptional: "A binding pattern parameter cannot be optional in an implementation signature.", - PrivateElementHasAbstract: "Private elements cannot have the 'abstract' modifier.", - PrivateElementHasAccessibility: "Private elements cannot have an accessibility modifier ('%0').", - ReadonlyForMethodSignature: "'readonly' modifier can only appear on a property declaration or index signature.", - SetAccesorCannotHaveOptionalParameter: "A 'set' accessor cannot have an optional parameter.", - SetAccesorCannotHaveRestParameter: "A 'set' accessor cannot have rest parameter.", - SetAccesorCannotHaveReturnType: "A 'set' accessor cannot have a return type annotation.", - StaticBlockCannotHaveModifier: "Static class blocks cannot have any modifier.", - TypeAnnotationAfterAssign: "Type annotations must come before default assignments, e.g. instead of `age = 25: number` use `age: number = 25`.", - TypeImportCannotSpecifyDefaultAndNamed: "A type-only import can specify a default import or named bindings, but not both.", - UnexpectedParameterModifier: "A parameter property is only allowed in a constructor implementation.", - UnexpectedReadonly: "'readonly' type modifier is only permitted on array and tuple literal types.", - UnexpectedTypeAnnotation: "Did not expect a type annotation here.", - UnexpectedTypeCastInParameter: "Unexpected type cast in parameter position.", - UnsupportedImportTypeArgument: "Argument in a type import must be a string literal.", - UnsupportedParameterPropertyKind: "A parameter property may not be declared using a binding pattern.", - UnsupportedSignatureParameterKind: "Name in a signature must be an Identifier, ObjectPattern or ArrayPattern, instead got %0." - }, x.SyntaxError, "typescript"); - function Ht(e) { - return "private" === e || "public" === e || "protected" === e; - } - o = (e => (class extends e { - getScopeHandler() { - return Jt; - } - tsIsIdentifier() { - return this.match(5); - } - tsTokenCanFollowModifier() { - return (this.match(8) || this.match(13) || this.match(54) || this.match(29) || this.match(6) || this.isLiteralPropertyName()) && !this.hasPrecedingLineBreak(); - } - tsNextTokenCanFollowModifier() { - this.next(); - return this.tsTokenCanFollowModifier(); - } - tsParseModifier(e, t) { - if (!this.match(5)) return; - const n = this.state.value; - if (-1 !== e.indexOf(n)) { - if (t && this.tsIsStartOfStaticBlocks()) return; - if (this.tsTryParse(this.tsNextTokenCanFollowModifier.bind(this))) return n; - } - } - tsParseModifiers(e, t, n, r, i) { - const s = (t, n, r, i) => { - n === r && e[i] && this.raise(t, Gt.InvalidModifiersOrder, r, i); - }; - const a = (t, n, r, i) => { - (e[r] && n === i || e[i] && n === r) && this.raise(t, Gt.IncompatibleModifiers, r, i); - }; - for (;;) { - const o = this.state.start; - const l = this.tsParseModifier(t.concat(null != n ? n : []), i); - if (!l) break; - if (Ht(l)) if (e.accessibility) this.raise(o, Gt.DuplicateAccessibilityModifier); else { - s(o, l, l, "override"); - s(o, l, l, "static"); - s(o, l, l, "readonly"); - e.accessibility = l; - } else { - if (Object.hasOwnProperty.call(e, l)) this.raise(o, Gt.DuplicateModifier, l); else { - s(o, l, "static", "readonly"); - s(o, l, "static", "override"); - s(o, l, "override", "readonly"); - s(o, l, "abstract", "override"); - a(o, l, "declare", "override"); - a(o, l, "static", "abstract"); - } - e[l] = !0; - } - null != n && n.includes(l) && this.raise(o, r, l); - } - } - tsIsListTerminator(e) { - switch (e) { - case "EnumMembers": - case "TypeMembers": - return this.match(16); - - case "HeritageClauseElement": - return this.match(13); - - case "TupleElementTypes": - return this.match(11); - - case "TypeParametersOrArguments": - return this.isRelational(">"); - } - throw new Error("Unreachable"); - } - tsParseList(e, t) { - const n = []; - for (;!this.tsIsListTerminator(e); ) n.push(t()); - return n; - } - tsParseDelimitedList(e, t) { - return function(e) { - if (null == e) throw new Error(`Unexpected ${e} value.`); - return e; - }(this.tsParseDelimitedListWorker(e, t, !0)); - } - tsParseDelimitedListWorker(e, t, n) { - const r = []; - for (;!this.tsIsListTerminator(e); ) { - const i = t(); - if (null == i) return; - r.push(i); - if (!this.eat(20)) { - if (this.tsIsListTerminator(e)) break; - n && this.expect(20); - return; - } - } - return r; - } - tsParseBracketedList(e, t, n, r) { - r || (n ? this.expect(8) : this.expectRelational("<")); - const i = this.tsParseDelimitedList(e, t); - n ? this.expect(11) : this.expectRelational(">"); - return i; - } - tsParseImportType() { - const e = this.startNode(); - this.expect(82); - this.expect(18); - this.match(4) || this.raise(this.state.start, Gt.UnsupportedImportTypeArgument); - e.argument = this.parseExprAtom(); - this.expect(19); - this.eat(24) && (e.qualifier = this.tsParseEntityName(!0)); - this.isRelational("<") && (e.typeParameters = this.tsParseTypeArguments()); - return this.finishNode(e, "TSImportType"); - } - tsParseEntityName(e) { - let t = this.parseIdentifier(); - for (;this.eat(24); ) { - const n = this.startNodeAtNode(t); - n.left = t; - n.right = this.parseIdentifier(e); - t = this.finishNode(n, "TSQualifiedName"); - } - return t; - } - tsParseTypeReference() { - const e = this.startNode(); - e.typeName = this.tsParseEntityName(!1); - !this.hasPrecedingLineBreak() && this.isRelational("<") && (e.typeParameters = this.tsParseTypeArguments()); - return this.finishNode(e, "TSTypeReference"); - } - tsParseThisTypePredicate(e) { - this.next(); - const t = this.startNodeAtNode(e); - t.parameterName = e; - t.typeAnnotation = this.tsParseTypeAnnotation(!1); - t.asserts = !1; - return this.finishNode(t, "TSTypePredicate"); - } - tsParseThisTypeNode() { - const e = this.startNode(); - this.next(); - return this.finishNode(e, "TSThisType"); - } - tsParseTypeQuery() { - const e = this.startNode(); - this.expect(86); - this.match(82) ? e.exprName = this.tsParseImportType() : e.exprName = this.tsParseEntityName(!0); - return this.finishNode(e, "TSTypeQuery"); - } - tsParseTypeParameter() { - const e = this.startNode(); - e.name = this.tsParseTypeParameterName(); - e.constraint = this.tsEatThenParseType(80); - e.default = this.tsEatThenParseType(35); - return this.finishNode(e, "TSTypeParameter"); - } - tsTryParseTypeParameters() { - if (this.isRelational("<")) return this.tsParseTypeParameters(); - } - tsParseTypeParameters() { - const e = this.startNode(); - this.isRelational("<") || this.match(94) ? this.next() : this.unexpected(); - e.params = this.tsParseBracketedList("TypeParametersOrArguments", this.tsParseTypeParameter.bind(this), !1, !0); - 0 === e.params.length && this.raise(e.start, Gt.EmptyTypeParameters); - return this.finishNode(e, "TSTypeParameterDeclaration"); - } - tsTryNextParseConstantContext() { - if (74 === this.lookahead().type) { - this.next(); - return this.tsParseTypeReference(); - } - return null; - } - tsFillSignature(e, t) { - const n = 27 === e; - t.typeParameters = this.tsTryParseTypeParameters(); - this.expect(18); - t.parameters = this.tsParseBindingListForSignature(); - n ? t.typeAnnotation = this.tsParseTypeOrTypePredicateAnnotation(e) : this.match(e) && (t.typeAnnotation = this.tsParseTypeOrTypePredicateAnnotation(e)); - } - tsParseBindingListForSignature() { - return this.parseBindingList(19, 41).map(e => { - "Identifier" !== e.type && "RestElement" !== e.type && "ObjectPattern" !== e.type && "ArrayPattern" !== e.type && this.raise(e.start, Gt.UnsupportedSignatureParameterKind, e.type); - return e; - }); - } - tsParseTypeMemberSemicolon() { - this.eat(20) || this.isLineTerminator() || this.expect(21); - } - tsParseSignatureMember(e, t) { - this.tsFillSignature(22, t); - this.tsParseTypeMemberSemicolon(); - return this.finishNode(t, e); - } - tsIsUnambiguouslyIndexSignature() { - this.next(); - return this.eat(5) && this.match(22); - } - tsTryParseIndexSignature(e) { - if (!this.match(8) || !this.tsLookAhead(this.tsIsUnambiguouslyIndexSignature.bind(this))) return; - this.expect(8); - const t = this.parseIdentifier(); - t.typeAnnotation = this.tsParseTypeAnnotation(); - this.resetEndLocation(t); - this.expect(11); - e.parameters = [ t ]; - const n = this.tsTryParseTypeAnnotation(); - n && (e.typeAnnotation = n); - this.tsParseTypeMemberSemicolon(); - return this.finishNode(e, "TSIndexSignature"); - } - tsParsePropertyOrMethodSignature(e, t) { - this.eat(25) && (e.optional = !0); - const n = e; - if (this.match(18) || this.isRelational("<")) { - t && this.raise(e.start, Gt.ReadonlyForMethodSignature); - const r = n; - r.kind && this.isRelational("<") && this.raise(this.state.pos, Gt.AccesorCannotHaveTypeParameters); - this.tsFillSignature(22, r); - this.tsParseTypeMemberSemicolon(); - if ("get" === r.kind) { - if (r.parameters.length > 0) { - this.raise(this.state.pos, E.BadGetterArity); - this.isThisParam(r.parameters[0]) && this.raise(this.state.pos, Gt.AccesorCannotDeclareThisParameter); - } - } else if ("set" === r.kind) { - if (1 !== r.parameters.length) this.raise(this.state.pos, E.BadSetterArity); else { - const e = r.parameters[0]; - this.isThisParam(e) && this.raise(this.state.pos, Gt.AccesorCannotDeclareThisParameter); - "Identifier" === e.type && e.optional && this.raise(this.state.pos, Gt.SetAccesorCannotHaveOptionalParameter); - "RestElement" === e.type && this.raise(this.state.pos, Gt.SetAccesorCannotHaveRestParameter); - } - r.typeAnnotation && this.raise(r.typeAnnotation.start, Gt.SetAccesorCannotHaveReturnType); - } else r.kind = "method"; - return this.finishNode(r, "TSMethodSignature"); - } - { - const e = n; - t && (e.readonly = !0); - const r = this.tsTryParseTypeAnnotation(); - r && (e.typeAnnotation = r); - this.tsParseTypeMemberSemicolon(); - return this.finishNode(e, "TSPropertySignature"); - } - } - tsParseTypeMember() { - const e = this.startNode(); - if (this.match(18) || this.isRelational("<")) return this.tsParseSignatureMember("TSCallSignatureDeclaration", e); - if (this.match(76)) { - const t = this.startNode(); - this.next(); - if (this.match(18) || this.isRelational("<")) return this.tsParseSignatureMember("TSConstructSignatureDeclaration", e); - e.key = this.createIdentifier(t, "new"); - return this.tsParsePropertyOrMethodSignature(e, !1); - } - this.tsParseModifiers(e, [ "readonly" ], [ "declare", "abstract", "private", "protected", "public", "static", "override" ], Gt.InvalidModifierOnTypeMember); - const t = this.tsTryParseIndexSignature(e); - if (t) return t; - this.parsePropertyName(e, !1); - if (!e.computed && "Identifier" === e.key.type && ("get" === e.key.name || "set" === e.key.name) && this.tsTokenCanFollowModifier()) { - e.kind = e.key.name; - this.parsePropertyName(e, !1); - } - return this.tsParsePropertyOrMethodSignature(e, !!e.readonly); - } - tsParseTypeLiteral() { - const e = this.startNode(); - e.members = this.tsParseObjectTypeMembers(); - return this.finishNode(e, "TSTypeLiteral"); - } - tsParseObjectTypeMembers() { - this.expect(13); - const e = this.tsParseList("TypeMembers", this.tsParseTypeMember.bind(this)); - this.expect(16); - return e; - } - tsIsStartOfMappedType() { - this.next(); - if (this.eat(52)) return this.isContextual("readonly"); - this.isContextual("readonly") && this.next(); - if (!this.match(8)) return !1; - this.next(); - if (!this.tsIsIdentifier()) return !1; - this.next(); - return this.match(57); - } - tsParseMappedTypeParameter() { - const e = this.startNode(); - e.name = this.tsParseTypeParameterName(); - e.constraint = this.tsExpectThenParseType(57); - return this.finishNode(e, "TSTypeParameter"); - } - tsParseMappedType() { - const e = this.startNode(); - this.expect(13); - if (this.match(52)) { - e.readonly = this.state.value; - this.next(); - this.expectContextual("readonly"); - } else this.eatContextual("readonly") && (e.readonly = !0); - this.expect(8); - e.typeParameter = this.tsParseMappedTypeParameter(); - e.nameType = this.eatContextual("as") ? this.tsParseType() : null; - this.expect(11); - if (this.match(52)) { - e.optional = this.state.value; - this.next(); - this.expect(25); - } else this.eat(25) && (e.optional = !0); - e.typeAnnotation = this.tsTryParseType(); - this.semicolon(); - this.expect(16); - return this.finishNode(e, "TSMappedType"); - } - tsParseTupleType() { - const e = this.startNode(); - e.elementTypes = this.tsParseBracketedList("TupleElementTypes", this.tsParseTupleElementType.bind(this), !0, !1); - let t = !1; - let n = null; - e.elementTypes.forEach(e => { - var r; - let {type: i} = e; - !t || "TSRestType" === i || "TSOptionalType" === i || "TSNamedTupleMember" === i && e.optional || this.raise(e.start, Gt.OptionalTypeBeforeRequired); - t = t || "TSNamedTupleMember" === i && e.optional || "TSOptionalType" === i; - "TSRestType" === i && (i = (e = e.typeAnnotation).type); - const s = "TSNamedTupleMember" === i; - (n = null != (r = n) ? r : s) !== s && this.raise(e.start, Gt.MixedLabeledAndUnlabeledElements); - }); - return this.finishNode(e, "TSTupleType"); - } - tsParseTupleElementType() { - const {start: e, startLoc: t} = this.state; - const n = this.eat(29); - let r = this.tsParseType(); - const i = this.eat(25); - if (this.eat(22)) { - const e = this.startNodeAtNode(r); - e.optional = i; - if ("TSTypeReference" !== r.type || r.typeParameters || "Identifier" !== r.typeName.type) { - this.raise(r.start, Gt.InvalidTupleMemberLabel); - e.label = r; - } else e.label = r.typeName; - e.elementType = this.tsParseType(); - r = this.finishNode(e, "TSNamedTupleMember"); - } else if (i) { - const e = this.startNodeAtNode(r); - e.typeAnnotation = r; - r = this.finishNode(e, "TSOptionalType"); - } - if (n) { - const n = this.startNodeAt(e, t); - n.typeAnnotation = r; - r = this.finishNode(n, "TSRestType"); - } - return r; - } - tsParseParenthesizedType() { - const e = this.startNode(); - this.expect(18); - e.typeAnnotation = this.tsParseType(); - this.expect(19); - return this.finishNode(e, "TSParenthesizedType"); - } - tsParseFunctionOrConstructorType(e, t) { - const n = this.startNode(); - if ("TSConstructorType" === e) { - n.abstract = !!t; - t && this.next(); - this.next(); - } - this.tsFillSignature(27, n); - return this.finishNode(n, e); - } - tsParseLiteralTypeNode() { - const e = this.startNode(); - e.literal = (() => { - switch (this.state.type) { - case 0: - case 1: - case 4: - case 84: - case 85: - return this.parseExprAtom(); - - default: - throw this.unexpected(); - } - })(); - return this.finishNode(e, "TSLiteralType"); - } - tsParseTemplateLiteralType() { - const e = this.startNode(); - e.literal = this.parseTemplate(!1); - return this.finishNode(e, "TSLiteralType"); - } - parseTemplateSubstitution() { - return this.state.inType ? this.tsParseType() : super.parseTemplateSubstitution(); - } - tsParseThisTypeOrThisTypePredicate() { - const e = this.tsParseThisTypeNode(); - return this.isContextual("is") && !this.hasPrecedingLineBreak() ? this.tsParseThisTypePredicate(e) : e; - } - tsParseNonArrayType() { - switch (this.state.type) { - case 5: - case 87: - case 83: - { - const e = this.match(87) ? "TSVoidKeyword" : this.match(83) ? "TSNullKeyword" : function(e) { - switch (e) { - case "any": - return "TSAnyKeyword"; - - case "boolean": - return "TSBooleanKeyword"; - - case "bigint": - return "TSBigIntKeyword"; - - case "never": - return "TSNeverKeyword"; - - case "number": - return "TSNumberKeyword"; - - case "object": - return "TSObjectKeyword"; - - case "string": - return "TSStringKeyword"; - - case "symbol": - return "TSSymbolKeyword"; - - case "undefined": - return "TSUndefinedKeyword"; - - case "unknown": - return "TSUnknownKeyword"; - - default: - return; - } - }(this.state.value); - if (void 0 !== e && 46 !== this.lookaheadCharCode()) { - const t = this.startNode(); - this.next(); - return this.finishNode(t, e); - } - return this.tsParseTypeReference(); - } - - case 4: - case 0: - case 1: - case 84: - case 85: - return this.tsParseLiteralTypeNode(); - - case 52: - if ("-" === this.state.value) { - const e = this.startNode(); - const t = this.lookahead(); - if (0 !== t.type && 1 !== t.type) throw this.unexpected(); - e.literal = this.parseMaybeUnary(); - return this.finishNode(e, "TSLiteralType"); - } - break; - - case 77: - return this.tsParseThisTypeOrThisTypePredicate(); - - case 86: - return this.tsParseTypeQuery(); - - case 82: - return this.tsParseImportType(); - - case 13: - return this.tsLookAhead(this.tsIsStartOfMappedType.bind(this)) ? this.tsParseMappedType() : this.tsParseTypeLiteral(); - - case 8: - return this.tsParseTupleType(); - - case 18: - return this.tsParseParenthesizedType(); - - case 30: - return this.tsParseTemplateLiteralType(); - } - throw this.unexpected(); - } - tsParseArrayTypeOrHigher() { - let e = this.tsParseNonArrayType(); - for (;!this.hasPrecedingLineBreak() && this.eat(8); ) if (this.match(11)) { - const t = this.startNodeAtNode(e); - t.elementType = e; - this.expect(11); - e = this.finishNode(t, "TSArrayType"); - } else { - const t = this.startNodeAtNode(e); - t.objectType = e; - t.indexType = this.tsParseType(); - this.expect(11); - e = this.finishNode(t, "TSIndexedAccessType"); - } - return e; - } - tsParseTypeOperator(e) { - const t = this.startNode(); - this.expectContextual(e); - t.operator = e; - t.typeAnnotation = this.tsParseTypeOperatorOrHigher(); - "readonly" === e && this.tsCheckTypeAnnotationForReadOnly(t); - return this.finishNode(t, "TSTypeOperator"); - } - tsCheckTypeAnnotationForReadOnly(e) { - switch (e.typeAnnotation.type) { - case "TSTupleType": - case "TSArrayType": - return; - - default: - this.raise(e.start, Gt.UnexpectedReadonly); - } - } - tsParseInferType() { - const e = this.startNode(); - this.expectContextual("infer"); - const t = this.startNode(); - t.name = this.tsParseTypeParameterName(); - e.typeParameter = this.finishNode(t, "TSTypeParameter"); - return this.finishNode(e, "TSInferType"); - } - tsParseTypeOperatorOrHigher() { - const e = [ "keyof", "unique", "readonly" ].find(e => this.isContextual(e)); - return e ? this.tsParseTypeOperator(e) : this.isContextual("infer") ? this.tsParseInferType() : this.tsParseArrayTypeOrHigher(); - } - tsParseUnionOrIntersectionType(e, t, n) { - const r = this.startNode(); - const i = this.eat(n); - const s = []; - do { - s.push(t()); - } while (this.eat(n)); - if (1 === s.length && !i) return s[0]; - r.types = s; - return this.finishNode(r, e); - } - tsParseIntersectionTypeOrHigher() { - return this.tsParseUnionOrIntersectionType("TSIntersectionType", this.tsParseTypeOperatorOrHigher.bind(this), 48); - } - tsParseUnionTypeOrHigher() { - return this.tsParseUnionOrIntersectionType("TSUnionType", this.tsParseIntersectionTypeOrHigher.bind(this), 46); - } - tsIsStartOfFunctionType() { - return !!this.isRelational("<") || this.match(18) && this.tsLookAhead(this.tsIsUnambiguouslyStartOfFunctionType.bind(this)); - } - tsSkipParameterStart() { - if (this.match(5) || this.match(77)) { - this.next(); - return !0; - } - if (this.match(13)) { - let e = 1; - this.next(); - for (;e > 0; ) { - this.match(13) ? ++e : this.match(16) && --e; - this.next(); - } - return !0; - } - if (this.match(8)) { - let e = 1; - this.next(); - for (;e > 0; ) { - this.match(8) ? ++e : this.match(11) && --e; - this.next(); - } - return !0; - } - return !1; - } - tsIsUnambiguouslyStartOfFunctionType() { - this.next(); - if (this.match(19) || this.match(29)) return !0; - if (this.tsSkipParameterStart()) { - if (this.match(22) || this.match(20) || this.match(25) || this.match(35)) return !0; - if (this.match(19)) { - this.next(); - if (this.match(27)) return !0; - } - } - return !1; - } - tsParseTypeOrTypePredicateAnnotation(e) { - return this.tsInType(() => { - const t = this.startNode(); - this.expect(e); - const n = this.startNode(); - const r = !!this.tsTryParse(this.tsParseTypePredicateAsserts.bind(this)); - if (r && this.match(77)) { - let e = this.tsParseThisTypeOrThisTypePredicate(); - if ("TSThisType" === e.type) { - n.parameterName = e; - n.asserts = !0; - n.typeAnnotation = null; - e = this.finishNode(n, "TSTypePredicate"); - } else { - this.resetStartLocationFromNode(e, n); - e.asserts = !0; - } - t.typeAnnotation = e; - return this.finishNode(t, "TSTypeAnnotation"); - } - const i = this.tsIsIdentifier() && this.tsTryParse(this.tsParseTypePredicatePrefix.bind(this)); - if (!i) { - if (!r) return this.tsParseTypeAnnotation(!1, t); - n.parameterName = this.parseIdentifier(); - n.asserts = r; - n.typeAnnotation = null; - t.typeAnnotation = this.finishNode(n, "TSTypePredicate"); - return this.finishNode(t, "TSTypeAnnotation"); - } - const s = this.tsParseTypeAnnotation(!1); - n.parameterName = i; - n.typeAnnotation = s; - n.asserts = r; - t.typeAnnotation = this.finishNode(n, "TSTypePredicate"); - return this.finishNode(t, "TSTypeAnnotation"); - }); - } - tsTryParseTypeOrTypePredicateAnnotation() { - return this.match(22) ? this.tsParseTypeOrTypePredicateAnnotation(22) : void 0; - } - tsTryParseTypeAnnotation() { - return this.match(22) ? this.tsParseTypeAnnotation() : void 0; - } - tsTryParseType() { - return this.tsEatThenParseType(22); - } - tsParseTypePredicatePrefix() { - const e = this.parseIdentifier(); - if (this.isContextual("is") && !this.hasPrecedingLineBreak()) { - this.next(); - return e; - } - } - tsParseTypePredicateAsserts() { - if (!this.match(5) || "asserts" !== this.state.value) return !1; - const e = this.state.containsEsc; - this.next(); - if (!this.match(5) && !this.match(77)) return !1; - e && this.raise(this.state.lastTokStart, E.InvalidEscapedReservedWord, "asserts"); - return !0; - } - tsParseTypeAnnotation(e = !0, t = this.startNode()) { - this.tsInType(() => { - e && this.expect(22); - t.typeAnnotation = this.tsParseType(); - }); - return this.finishNode(t, "TSTypeAnnotation"); - } - tsParseType() { - Xt(this.state.inType); - const e = this.tsParseNonConditionalType(); - if (this.hasPrecedingLineBreak() || !this.eat(80)) return e; - const t = this.startNodeAtNode(e); - t.checkType = e; - t.extendsType = this.tsParseNonConditionalType(); - this.expect(25); - t.trueType = this.tsParseType(); - this.expect(22); - t.falseType = this.tsParseType(); - return this.finishNode(t, "TSConditionalType"); - } - isAbstractConstructorSignature() { - return this.isContextual("abstract") && 76 === this.lookahead().type; - } - tsParseNonConditionalType() { - return this.tsIsStartOfFunctionType() ? this.tsParseFunctionOrConstructorType("TSFunctionType") : this.match(76) ? this.tsParseFunctionOrConstructorType("TSConstructorType") : this.isAbstractConstructorSignature() ? this.tsParseFunctionOrConstructorType("TSConstructorType", !0) : this.tsParseUnionTypeOrHigher(); - } - tsParseTypeAssertion() { - const e = this.startNode(); - const t = this.tsTryNextParseConstantContext(); - e.typeAnnotation = t || this.tsNextThenParseType(); - this.expectRelational(">"); - e.expression = this.parseMaybeUnary(); - return this.finishNode(e, "TSTypeAssertion"); - } - tsParseHeritageClause(e) { - const t = this.state.start; - const n = this.tsParseDelimitedList("HeritageClauseElement", this.tsParseExpressionWithTypeArguments.bind(this)); - n.length || this.raise(t, Gt.EmptyHeritageClauseType, e); - return n; - } - tsParseExpressionWithTypeArguments() { - const e = this.startNode(); - e.expression = this.tsParseEntityName(!1); - this.isRelational("<") && (e.typeParameters = this.tsParseTypeArguments()); - return this.finishNode(e, "TSExpressionWithTypeArguments"); - } - tsParseInterfaceDeclaration(e) { - if (this.match(5)) { - e.id = this.parseIdentifier(); - this.checkLVal(e.id, "typescript interface declaration", Fe); - } else { - e.id = null; - this.raise(this.state.start, Gt.MissingInterfaceName); - } - e.typeParameters = this.tsTryParseTypeParameters(); - this.eat(80) && (e.extends = this.tsParseHeritageClause("extends")); - const t = this.startNode(); - t.body = this.tsInType(this.tsParseObjectTypeMembers.bind(this)); - e.body = this.finishNode(t, "TSInterfaceBody"); - return this.finishNode(e, "TSInterfaceDeclaration"); - } - tsParseTypeAliasDeclaration(e) { - e.id = this.parseIdentifier(); - this.checkLVal(e.id, "typescript type alias", Be); - e.typeParameters = this.tsTryParseTypeParameters(); - e.typeAnnotation = this.tsInType(() => { - this.expect(35); - if (this.isContextual("intrinsic") && 24 !== this.lookahead().type) { - const e = this.startNode(); - this.next(); - return this.finishNode(e, "TSIntrinsicKeyword"); - } - return this.tsParseType(); - }); - this.semicolon(); - return this.finishNode(e, "TSTypeAliasDeclaration"); - } - tsInNoContext(e) { - const t = this.state.context; - this.state.context = [ t[0] ]; - try { - return e(); - } finally { - this.state.context = t; - } - } - tsInType(e) { - const t = this.state.inType; - this.state.inType = !0; - try { - return e(); - } finally { - this.state.inType = t; - } - } - tsEatThenParseType(e) { - return this.match(e) ? this.tsNextThenParseType() : void 0; - } - tsExpectThenParseType(e) { - return this.tsDoThenParseType(() => this.expect(e)); - } - tsNextThenParseType() { - return this.tsDoThenParseType(() => this.next()); - } - tsDoThenParseType(e) { - return this.tsInType(() => { - e(); - return this.tsParseType(); - }); - } - tsParseEnumMember() { - const e = this.startNode(); - e.id = this.match(4) ? this.parseExprAtom() : this.parseIdentifier(!0); - this.eat(35) && (e.initializer = this.parseMaybeAssignAllowIn()); - return this.finishNode(e, "TSEnumMember"); - } - tsParseEnumDeclaration(e, t) { - t && (e.const = !0); - e.id = this.parseIdentifier(); - this.checkLVal(e.id, "typescript enum declaration", t ? We : Re); - this.expect(13); - e.members = this.tsParseDelimitedList("EnumMembers", this.tsParseEnumMember.bind(this)); - this.expect(16); - return this.finishNode(e, "TSEnumDeclaration"); - } - tsParseModuleBlock() { - const e = this.startNode(); - this.scope.enter(he); - this.expect(13); - this.parseBlockOrModuleBlockBody(e.body = [], void 0, !0, 16); - this.scope.exit(); - return this.finishNode(e, "TSModuleBlock"); - } - tsParseModuleOrNamespaceDeclaration(e, t = !1) { - e.id = this.parseIdentifier(); - t || this.checkLVal(e.id, "module or namespace declaration", qe); - if (this.eat(24)) { - const t = this.startNode(); - this.tsParseModuleOrNamespaceDeclaration(t, !0); - e.body = t; - } else { - this.scope.enter(256); - this.prodParam.enter(bt); - e.body = this.tsParseModuleBlock(); - this.prodParam.exit(); - this.scope.exit(); - } - return this.finishNode(e, "TSModuleDeclaration"); - } - tsParseAmbientExternalModuleDeclaration(e) { - if (this.isContextual("global")) { - e.global = !0; - e.id = this.parseIdentifier(); - } else this.match(4) ? e.id = this.parseExprAtom() : this.unexpected(); - if (this.match(13)) { - this.scope.enter(256); - this.prodParam.enter(bt); - e.body = this.tsParseModuleBlock(); - this.prodParam.exit(); - this.scope.exit(); - } else this.semicolon(); - return this.finishNode(e, "TSModuleDeclaration"); - } - tsParseImportEqualsDeclaration(e, t) { - e.isExport = t || !1; - e.id = this.parseIdentifier(); - this.checkLVal(e.id, "import equals declaration", _e); - this.expect(35); - const n = this.tsParseModuleReference(); - "type" === e.importKind && "TSExternalModuleReference" !== n.type && this.raise(n.start, Gt.ImportAliasHasImportType); - e.moduleReference = n; - this.semicolon(); - return this.finishNode(e, "TSImportEqualsDeclaration"); - } - tsIsExternalModuleReference() { - return this.isContextual("require") && 40 === this.lookaheadCharCode(); - } - tsParseModuleReference() { - return this.tsIsExternalModuleReference() ? this.tsParseExternalModuleReference() : this.tsParseEntityName(!1); - } - tsParseExternalModuleReference() { - const e = this.startNode(); - this.expectContextual("require"); - this.expect(18); - if (!this.match(4)) throw this.unexpected(); - e.expression = this.parseExprAtom(); - this.expect(19); - return this.finishNode(e, "TSExternalModuleReference"); - } - tsLookAhead(e) { - const t = this.state.clone(); - const n = e(); - this.state = t; - return n; - } - tsTryParseAndCatch(e) { - const t = this.tryParse(t => e() || t()); - if (!t.aborted && t.node) { - t.error && (this.state = t.failState); - return t.node; - } - } - tsTryParse(e) { - const t = this.state.clone(); - const n = e(); - if (void 0 !== n && !1 !== n) return n; - this.state = t; - } - tsTryParseDeclare(e) { - if (this.isLineTerminator()) return; - let t = this.state.type; - let n; - if (this.isContextual("let")) { - t = 73; - n = "let"; - } - return this.tsInAmbientContext(() => { - switch (t) { - case 67: - e.declare = !0; - return this.parseFunctionStatement(e, !1, !0); - - case 79: - e.declare = !0; - return this.parseClass(e, !0, !1); - - case 74: - if (this.match(74) && this.isLookaheadContextual("enum")) { - this.expect(74); - this.expectContextual("enum"); - return this.tsParseEnumDeclaration(e, !0); - } - - case 73: - n = n || this.state.value; - return this.parseVarStatement(e, n); - - case 5: - { - const t = this.state.value; - return "global" === t ? this.tsParseAmbientExternalModuleDeclaration(e) : this.tsParseDeclaration(e, t, !0); - } - } - }); - } - tsTryParseExportDeclaration() { - return this.tsParseDeclaration(this.startNode(), this.state.value, !0); - } - tsParseExpressionStatement(e, t) { - switch (t.name) { - case "declare": - { - const t = this.tsTryParseDeclare(e); - if (t) { - t.declare = !0; - return t; - } - break; - } - - case "global": - if (this.match(13)) { - this.scope.enter(256); - this.prodParam.enter(bt); - const n = e; - n.global = !0; - n.id = t; - n.body = this.tsParseModuleBlock(); - this.scope.exit(); - this.prodParam.exit(); - return this.finishNode(n, "TSModuleDeclaration"); - } - break; - - default: - return this.tsParseDeclaration(e, t.name, !1); - } - } - tsParseDeclaration(e, t, n) { - switch (t) { - case "abstract": - if (this.tsCheckLineTerminator(n) && (this.match(79) || this.match(5))) return this.tsParseAbstractDeclaration(e); - break; - - case "enum": - if (n || this.match(5)) { - n && this.next(); - return this.tsParseEnumDeclaration(e, !1); - } - break; - - case "interface": - if (this.tsCheckLineTerminator(n) && this.match(5)) return this.tsParseInterfaceDeclaration(e); - break; - - case "module": - if (this.tsCheckLineTerminator(n)) { - if (this.match(4)) return this.tsParseAmbientExternalModuleDeclaration(e); - if (this.match(5)) return this.tsParseModuleOrNamespaceDeclaration(e); - } - break; - - case "namespace": - if (this.tsCheckLineTerminator(n) && this.match(5)) return this.tsParseModuleOrNamespaceDeclaration(e); - break; - - case "type": - if (this.tsCheckLineTerminator(n) && this.match(5)) return this.tsParseTypeAliasDeclaration(e); - } - } - tsCheckLineTerminator(e) { - if (e) { - if (this.hasFollowingLineBreak()) return !1; - this.next(); - return !0; - } - return !this.isLineTerminator(); - } - tsTryParseGenericAsyncArrowFunction(e, t) { - if (!this.isRelational("<")) return; - const n = this.state.maybeInArrowParameters; - this.state.maybeInArrowParameters = !0; - const r = this.tsTryParseAndCatch(() => { - const n = this.startNodeAt(e, t); - n.typeParameters = this.tsParseTypeParameters(); - super.parseFunctionParams(n); - n.returnType = this.tsTryParseTypeOrTypePredicateAnnotation(); - this.expect(27); - return n; - }); - this.state.maybeInArrowParameters = n; - return r ? this.parseArrowExpression(r, null, !0) : void 0; - } - tsParseTypeArguments() { - const e = this.startNode(); - e.params = this.tsInType(() => this.tsInNoContext(() => { - this.expectRelational("<"); - return this.tsParseDelimitedList("TypeParametersOrArguments", this.tsParseType.bind(this)); - })); - 0 === e.params.length && this.raise(e.start, Gt.EmptyTypeArguments); - this.expectRelational(">"); - return this.finishNode(e, "TSTypeParameterInstantiation"); - } - tsIsDeclarationStart() { - if (this.match(5)) switch (this.state.value) { - case "abstract": - case "declare": - case "enum": - case "interface": - case "module": - case "namespace": - case "type": - return !0; - } - return !1; - } - isExportDefaultSpecifier() { - return !this.tsIsDeclarationStart() && super.isExportDefaultSpecifier(); - } - parseAssignableListItem(e, t) { - const n = this.state.start; - const r = this.state.startLoc; - let i; - let s = !1; - let a = !1; - if (void 0 !== e) { - const t = {}; - this.tsParseModifiers(t, [ "public", "private", "protected", "override", "readonly" ]); - i = t.accessibility; - a = t.override; - s = t.readonly; - !1 === e && (i || s || a) && this.raise(n, Gt.UnexpectedParameterModifier); - } - const o = this.parseMaybeDefault(); - this.parseAssignableListItemTypes(o); - const l = this.parseMaybeDefault(o.start, o.loc.start, o); - if (i || s || a) { - const e = this.startNodeAt(n, r); - t.length && (e.decorators = t); - i && (e.accessibility = i); - s && (e.readonly = s); - a && (e.override = a); - "Identifier" !== l.type && "AssignmentPattern" !== l.type && this.raise(e.start, Gt.UnsupportedParameterPropertyKind); - e.parameter = l; - return this.finishNode(e, "TSParameterProperty"); - } - t.length && (o.decorators = t); - return l; - } - parseFunctionBodyAndFinish(e, t, n = !1) { - this.match(22) && (e.returnType = this.tsParseTypeOrTypePredicateAnnotation(22)); - const r = "FunctionDeclaration" === t ? "TSDeclareFunction" : "ClassMethod" === t ? "TSDeclareMethod" : void 0; - if (r && !this.match(13) && this.isLineTerminator()) this.finishNode(e, r); else { - if ("TSDeclareFunction" === r && this.state.isAmbientContext) { - this.raise(e.start, Gt.DeclareFunctionHasImplementation); - if (e.declare) { - super.parseFunctionBodyAndFinish(e, r, n); - return; - } - } - super.parseFunctionBodyAndFinish(e, t, n); - } - } - registerFunctionStatementId(e) { - !e.body && e.id ? this.checkLVal(e.id, "function name", Ue) : super.registerFunctionStatementId(...arguments); - } - tsCheckForInvalidTypeCasts(e) { - e.forEach(e => { - "TSTypeCastExpression" === (null == e ? void 0 : e.type) && this.raise(e.typeAnnotation.start, Gt.UnexpectedTypeAnnotation); - }); - } - toReferencedList(e, t) { - this.tsCheckForInvalidTypeCasts(e); - return e; - } - parseArrayLike(...e) { - const t = super.parseArrayLike(...e); - "ArrayExpression" === t.type && this.tsCheckForInvalidTypeCasts(t.elements); - return t; - } - parseSubscript(e, t, n, r, i) { - if (!this.hasPrecedingLineBreak() && this.match(40)) { - this.state.exprAllowed = !1; - this.next(); - const r = this.startNodeAt(t, n); - r.expression = e; - return this.finishNode(r, "TSNonNullExpression"); - } - let s = !1; - if (this.match(26) && 60 === this.lookaheadCharCode()) { - if (r) { - i.stop = !0; - return e; - } - i.optionalChainMember = s = !0; - this.next(); - } - if (this.isRelational("<")) { - let a; - const o = this.tsTryParseAndCatch(() => { - if (!r && this.atPossibleAsyncArrow(e)) { - const e = this.tsTryParseGenericAsyncArrowFunction(t, n); - if (e) return e; - } - const o = this.startNodeAt(t, n); - o.callee = e; - const l = this.tsParseTypeArguments(); - if (l) { - if (s && !this.match(18)) { - a = this.state.pos; - this.unexpected(); - } - if (!r && this.eat(18)) { - o.arguments = this.parseCallExpressionArguments(19, !1); - this.tsCheckForInvalidTypeCasts(o.arguments); - o.typeParameters = l; - i.optionalChainMember && (o.optional = s); - return this.finishCallExpression(o, i.optionalChainMember); - } - if (this.match(30)) { - const r = this.parseTaggedTemplateExpression(e, t, n, i); - r.typeParameters = l; - return r; - } - } - this.unexpected(); - }); - a && this.unexpected(a, 18); - if (o) return o; - } - return super.parseSubscript(e, t, n, r, i); - } - parseNewArguments(e) { - if (this.isRelational("<")) { - const t = this.tsTryParseAndCatch(() => { - const e = this.tsParseTypeArguments(); - this.match(18) || this.unexpected(); - return e; - }); - t && (e.typeParameters = t); - } - super.parseNewArguments(e); - } - parseExprOp(e, t, n, r) { - if (Y(57) > r && !this.hasPrecedingLineBreak() && this.isContextual("as")) { - const i = this.startNodeAt(t, n); - i.expression = e; - const s = this.tsTryNextParseConstantContext(); - i.typeAnnotation = s || this.tsNextThenParseType(); - this.finishNode(i, "TSAsExpression"); - this.reScan_lt_gt(); - return this.parseExprOp(i, t, n, r); - } - return super.parseExprOp(e, t, n, r); - } - checkReservedWord(e, t, n, r) {} - checkDuplicateExports() {} - parseImport(e) { - e.importKind = "value"; - if (this.match(5) || this.match(54) || this.match(13)) { - let t = this.lookahead(); - if (this.isContextual("type") && 20 !== t.type && (5 !== t.type || "from" !== t.value) && 35 !== t.type) { - e.importKind = "type"; - this.next(); - t = this.lookahead(); - } - if (this.match(5) && 35 === t.type) return this.tsParseImportEqualsDeclaration(e); - } - const t = super.parseImport(e); - "type" === t.importKind && t.specifiers.length > 1 && "ImportDefaultSpecifier" === t.specifiers[0].type && this.raise(t.start, Gt.TypeImportCannotSpecifyDefaultAndNamed); - return t; - } - parseExport(e) { - if (this.match(82)) { - this.next(); - if (this.isContextual("type") && 61 !== this.lookaheadCharCode()) { - e.importKind = "type"; - this.next(); - } else e.importKind = "value"; - return this.tsParseImportEqualsDeclaration(e, !0); - } - if (this.eat(35)) { - const t = e; - t.expression = this.parseExpression(); - this.semicolon(); - return this.finishNode(t, "TSExportAssignment"); - } - if (this.eatContextual("as")) { - const t = e; - this.expectContextual("namespace"); - t.id = this.parseIdentifier(); - this.semicolon(); - return this.finishNode(t, "TSNamespaceExportDeclaration"); - } - if (this.isContextual("type") && 13 === this.lookahead().type) { - this.next(); - e.exportKind = "type"; - } else e.exportKind = "value"; - return super.parseExport(e); - } - isAbstractClass() { - return this.isContextual("abstract") && 79 === this.lookahead().type; - } - parseExportDefaultExpression() { - if (this.isAbstractClass()) { - const e = this.startNode(); - this.next(); - e.abstract = !0; - this.parseClass(e, !0, !0); - return e; - } - if ("interface" === this.state.value) { - const e = this.startNode(); - this.next(); - const t = this.tsParseInterfaceDeclaration(e); - if (t) return t; - } - return super.parseExportDefaultExpression(); - } - parseStatementContent(e, t) { - if (74 === this.state.type) { - const e = this.lookahead(); - if (5 === e.type && "enum" === e.value) { - const e = this.startNode(); - this.expect(74); - this.expectContextual("enum"); - return this.tsParseEnumDeclaration(e, !0); - } - } - return super.parseStatementContent(e, t); - } - parseAccessModifier() { - return this.tsParseModifier([ "public", "protected", "private" ]); - } - tsHasSomeModifiers(e, t) { - return t.some(t => Ht(t) ? e.accessibility === t : !!e[t]); - } - tsIsStartOfStaticBlocks() { - return this.isContextual("static") && 123 === this.lookaheadCharCode(); - } - parseClassMember(e, t, n) { - const r = [ "declare", "private", "public", "protected", "override", "abstract", "readonly", "static" ]; - this.tsParseModifiers(t, r, void 0, void 0, !0); - const i = () => { - if (this.tsIsStartOfStaticBlocks()) { - this.next(); - this.next(); - this.tsHasSomeModifiers(t, r) && this.raise(this.state.pos, Gt.StaticBlockCannotHaveModifier); - this.parseClassStaticBlock(e, t); - } else this.parseClassMemberWithIsStatic(e, t, n, !!t.static); - }; - t.declare ? this.tsInAmbientContext(i) : i(); - } - parseClassMemberWithIsStatic(e, t, n, r) { - const i = this.tsTryParseIndexSignature(t); - if (i) { - e.body.push(i); - t.abstract && this.raise(t.start, Gt.IndexSignatureHasAbstract); - t.accessibility && this.raise(t.start, Gt.IndexSignatureHasAccessibility, t.accessibility); - t.declare && this.raise(t.start, Gt.IndexSignatureHasDeclare); - t.override && this.raise(t.start, Gt.IndexSignatureHasOverride); - } else { - !this.state.inAbstractClass && t.abstract && this.raise(t.start, Gt.NonAbstractClassHasAbstractMethod); - t.override && (n.hadSuperClass || this.raise(t.start, Gt.OverrideNotInSubClass)); - super.parseClassMemberWithIsStatic(e, t, n, r); - } - } - parsePostMemberNameModifiers(e) { - this.eat(25) && (e.optional = !0); - e.readonly && this.match(18) && this.raise(e.start, Gt.ClassMethodHasReadonly); - e.declare && this.match(18) && this.raise(e.start, Gt.ClassMethodHasDeclare); - } - parseExpressionStatement(e, t) { - return ("Identifier" === t.type ? this.tsParseExpressionStatement(e, t) : void 0) || super.parseExpressionStatement(e, t); - } - shouldParseExportDeclaration() { - return !!this.tsIsDeclarationStart() || super.shouldParseExportDeclaration(); - } - parseConditional(e, t, n, r) { - if (!this.state.maybeInArrowParameters || !this.match(25)) return super.parseConditional(e, t, n, r); - const i = this.tryParse(() => super.parseConditional(e, t, n)); - if (!i.node) { - i.error && super.setOptionalParametersError(r, i.error); - return e; - } - i.error && (this.state = i.failState); - return i.node; - } - parseParenItem(e, t, n) { - e = super.parseParenItem(e, t, n); - if (this.eat(25)) { - e.optional = !0; - this.resetEndLocation(e); - } - if (this.match(22)) { - const r = this.startNodeAt(t, n); - r.expression = e; - r.typeAnnotation = this.tsParseTypeAnnotation(); - return this.finishNode(r, "TSTypeCastExpression"); - } - return e; - } - parseExportDeclaration(e) { - const t = this.state.start; - const n = this.state.startLoc; - const r = this.eatContextual("declare"); - if (r && (this.isContextual("declare") || !this.shouldParseExportDeclaration())) throw this.raise(this.state.start, Gt.ExpectedAmbientAfterExportDeclare); - let i; - this.match(5) && (i = this.tsTryParseExportDeclaration()); - i || (i = super.parseExportDeclaration(e)); - i && ("TSInterfaceDeclaration" === i.type || "TSTypeAliasDeclaration" === i.type || r) && (e.exportKind = "type"); - if (i && r) { - this.resetStartLocation(i, t, n); - i.declare = !0; - } - return i; - } - parseClassId(e, t, n) { - if ((!t || n) && this.isContextual("implements")) return; - super.parseClassId(e, t, n, e.declare ? Ue : Me); - const r = this.tsTryParseTypeParameters(); - r && (e.typeParameters = r); - } - parseClassPropertyAnnotation(e) { - !e.optional && this.eat(40) && (e.definite = !0); - const t = this.tsTryParseTypeAnnotation(); - t && (e.typeAnnotation = t); - } - parseClassProperty(e) { - this.parseClassPropertyAnnotation(e); - this.state.isAmbientContext && this.match(35) && this.raise(this.state.start, Gt.DeclareClassFieldHasInitializer); - if (e.abstract && this.match(35)) { - const {key: t} = e; - this.raise(this.state.start, Gt.AbstractPropertyHasInitializer, "Identifier" !== t.type || e.computed ? `[${this.input.slice(t.start, t.end)}]` : t.name); - } - return super.parseClassProperty(e); - } - parseClassPrivateProperty(e) { - e.abstract && this.raise(e.start, Gt.PrivateElementHasAbstract); - e.accessibility && this.raise(e.start, Gt.PrivateElementHasAccessibility, e.accessibility); - this.parseClassPropertyAnnotation(e); - return super.parseClassPrivateProperty(e); - } - pushClassMethod(e, t, n, r, i, s) { - const a = this.tsTryParseTypeParameters(); - a && i && this.raise(a.start, Gt.ConstructorHasTypeParameters); - !t.declare || "get" !== t.kind && "set" !== t.kind || this.raise(t.start, Gt.DeclareAccessor, t.kind); - a && (t.typeParameters = a); - super.pushClassMethod(e, t, n, r, i, s); - } - pushClassPrivateMethod(e, t, n, r) { - const i = this.tsTryParseTypeParameters(); - i && (t.typeParameters = i); - super.pushClassPrivateMethod(e, t, n, r); - } - parseClassSuper(e) { - super.parseClassSuper(e); - e.superClass && this.isRelational("<") && (e.superTypeParameters = this.tsParseTypeArguments()); - this.eatContextual("implements") && (e.implements = this.tsParseHeritageClause("implements")); - } - parseObjPropValue(e, ...t) { - const n = this.tsTryParseTypeParameters(); - n && (e.typeParameters = n); - super.parseObjPropValue(e, ...t); - } - parseFunctionParams(e, t) { - const n = this.tsTryParseTypeParameters(); - n && (e.typeParameters = n); - super.parseFunctionParams(e, t); - } - parseVarId(e, t) { - super.parseVarId(e, t); - "Identifier" === e.id.type && this.eat(40) && (e.definite = !0); - const n = this.tsTryParseTypeAnnotation(); - if (n) { - e.id.typeAnnotation = n; - this.resetEndLocation(e.id); - } - } - parseAsyncArrowFromCallExpression(e, t) { - this.match(22) && (e.returnType = this.tsParseTypeAnnotation()); - return super.parseAsyncArrowFromCallExpression(e, t); - } - parseMaybeAssign(...e) { - var t, n, r, i, s, a, o; - let l; - let c; - let p; - if (this.hasPlugin("jsx") && (this.match(94) || this.isRelational("<"))) { - l = this.state.clone(); - if (!(c = this.tryParse(() => super.parseMaybeAssign(...e), l)).error) return c.node; - const {context: t} = this.state; - t[t.length - 1] === C.j_oTag ? t.length -= 2 : t[t.length - 1] === C.j_expr && (t.length -= 1); - } - if (!(null != (t = c) && t.error || this.isRelational("<"))) return super.parseMaybeAssign(...e); - let u; - l = l || this.state.clone(); - const d = this.tryParse(t => { - var n, r; - u = this.tsParseTypeParameters(); - const i = super.parseMaybeAssign(...e); - ("ArrowFunctionExpression" !== i.type || null != (n = i.extra) && n.parenthesized) && t(); - 0 !== (null == (r = u) ? void 0 : r.params.length) && this.resetStartLocationFromNode(i, u); - i.typeParameters = u; - return i; - }, l); - if (!d.error && !d.aborted) return d.node; - if (!c) { - Xt(!this.hasPlugin("jsx")); - if (!(p = this.tryParse(() => super.parseMaybeAssign(...e), l)).error) return p.node; - } - if (null != (n = c) && n.node) { - this.state = c.failState; - return c.node; - } - if (d.node) { - this.state = d.failState; - return d.node; - } - if (null != (r = p) && r.node) { - this.state = p.failState; - return p.node; - } - if (null != (i = c) && i.thrown) throw c.error; - if (d.thrown) throw d.error; - if (null != (s = p) && s.thrown) throw p.error; - throw (null == (a = c) ? void 0 : a.error) || d.error || (null == (o = p) ? void 0 : o.error); - } - parseMaybeUnary(e) { - return !this.hasPlugin("jsx") && this.isRelational("<") ? this.tsParseTypeAssertion() : super.parseMaybeUnary(e); - } - parseArrow(e) { - if (this.match(22)) { - const t = this.tryParse(e => { - const t = this.tsParseTypeOrTypePredicateAnnotation(22); - !this.canInsertSemicolon() && this.match(27) || e(); - return t; - }); - if (t.aborted) return; - if (!t.thrown) { - t.error && (this.state = t.failState); - e.returnType = t.node; - } - } - return super.parseArrow(e); - } - parseAssignableListItemTypes(e) { - if (this.eat(25)) { - "Identifier" === e.type || this.state.isAmbientContext || this.state.inType || this.raise(e.start, Gt.PatternIsOptional); - e.optional = !0; - } - const t = this.tsTryParseTypeAnnotation(); - t && (e.typeAnnotation = t); - this.resetEndLocation(e); - return e; - } - isAssignable(e, t) { - switch (e.type) { - case "TSTypeCastExpression": - return this.isAssignable(e.expression, t); - - case "TSParameterProperty": - return !0; - - default: - return super.isAssignable(e, t); - } - } - toAssignable(e, t = !1) { - switch (e.type) { - case "TSTypeCastExpression": - return super.toAssignable(this.typeCastToParameter(e), t); - - case "TSParameterProperty": - return super.toAssignable(e, t); - - case "ParenthesizedExpression": - return this.toAssignableParenthesizedExpression(e, t); - - case "TSAsExpression": - case "TSNonNullExpression": - case "TSTypeAssertion": - e.expression = this.toAssignable(e.expression, t); - return e; - - default: - return super.toAssignable(e, t); - } - } - toAssignableParenthesizedExpression(e, t) { - switch (e.expression.type) { - case "TSAsExpression": - case "TSNonNullExpression": - case "TSTypeAssertion": - case "ParenthesizedExpression": - e.expression = this.toAssignable(e.expression, t); - return e; - - default: - return super.toAssignable(e, t); - } - } - checkLVal(e, t, ...n) { - var r; - switch (e.type) { - case "TSTypeCastExpression": - return; - - case "TSParameterProperty": - this.checkLVal(e.parameter, "parameter property", ...n); - return; - - case "TSAsExpression": - case "TSTypeAssertion": - if (!(n[0] || "parenthesized expression" === t || null != (r = e.extra) && r.parenthesized)) { - this.raise(e.start, E.InvalidLhs, t); - break; - } - this.checkLVal(e.expression, "parenthesized expression", ...n); - return; - - case "TSNonNullExpression": - this.checkLVal(e.expression, t, ...n); - return; - - default: - super.checkLVal(e, t, ...n); - return; - } - } - parseBindingAtom() { - switch (this.state.type) { - case 77: - return this.parseIdentifier(!0); - - default: - return super.parseBindingAtom(); - } - } - parseMaybeDecoratorArguments(e) { - if (this.isRelational("<")) { - const t = this.tsParseTypeArguments(); - if (this.match(18)) { - const n = super.parseMaybeDecoratorArguments(e); - n.typeParameters = t; - return n; - } - this.unexpected(this.state.start, 18); - } - return super.parseMaybeDecoratorArguments(e); - } - checkCommaAfterRest(e) { - this.state.isAmbientContext && this.match(20) && this.lookaheadCharCode() === e ? this.next() : super.checkCommaAfterRest(e); - } - isClassMethod() { - return this.isRelational("<") || super.isClassMethod(); - } - isClassProperty() { - return this.match(40) || this.match(22) || super.isClassProperty(); - } - parseMaybeDefault(...e) { - const t = super.parseMaybeDefault(...e); - "AssignmentPattern" === t.type && t.typeAnnotation && t.right.start < t.typeAnnotation.start && this.raise(t.typeAnnotation.start, Gt.TypeAnnotationAfterAssign); - return t; - } - getTokenFromCode(e) { - return !this.state.inType || 62 !== e && 60 !== e ? super.getTokenFromCode(e) : this.finishOp(50, 1); - } - reScan_lt_gt() { - if (this.match(50)) { - const e = this.input.charCodeAt(this.state.start); - if (60 === e || 62 === e) { - this.state.pos -= 1; - this.readToken_lt_gt(e); - } - } - } - toAssignableList(e) { - for (let t = 0; t < e.length; t++) { - const n = e[t]; - if (n) switch (n.type) { - case "TSTypeCastExpression": - e[t] = this.typeCastToParameter(n); - break; - - case "TSAsExpression": - case "TSTypeAssertion": - this.state.maybeInArrowParameters ? this.raise(n.start, Gt.UnexpectedTypeCastInParameter) : e[t] = this.typeCastToParameter(n); - } - } - return super.toAssignableList(...arguments); - } - typeCastToParameter(e) { - e.expression.typeAnnotation = e.typeAnnotation; - this.resetEndLocation(e.expression, e.typeAnnotation.end, e.typeAnnotation.loc.end); - return e.expression; - } - shouldParseArrow(e) { - return this.match(22) ? e.every(e => this.isAssignable(e, !0)) : super.shouldParseArrow(e); - } - shouldParseAsyncArrow() { - return this.match(22) || super.shouldParseAsyncArrow(); - } - canHaveLeadingDecorator() { - return super.canHaveLeadingDecorator() || this.isAbstractClass(); - } - jsxParseOpeningElementAfterName(e) { - if (this.isRelational("<")) { - const t = this.tsTryParseAndCatch(() => this.tsParseTypeArguments()); - t && (e.typeParameters = t); - } - return super.jsxParseOpeningElementAfterName(e); - } - getGetterSetterExpectedParamCount(e) { - const t = super.getGetterSetterExpectedParamCount(e); - const n = this.getObjectOrClassMethodParams(e)[0]; - return n && this.isThisParam(n) ? t + 1 : t; - } - parseCatchClauseParam() { - const e = super.parseCatchClauseParam(); - const t = this.tsTryParseTypeAnnotation(); - if (t) { - e.typeAnnotation = t; - this.resetEndLocation(e); - } - return e; - } - tsInAmbientContext(e) { - const t = this.state.isAmbientContext; - this.state.isAmbientContext = !0; - try { - return e(); - } finally { - this.state.isAmbientContext = t; - } - } - parseClass(e, ...t) { - const n = this.state.inAbstractClass; - this.state.inAbstractClass = !!e.abstract; - try { - return super.parseClass(e, ...t); - } finally { - this.state.inAbstractClass = n; - } - } - tsParseAbstractDeclaration(e) { - if (this.match(79)) { - e.abstract = !0; - return this.parseClass(e, !0, !1); - } - if (this.isContextual("interface")) { - if (!this.hasFollowingLineBreak()) { - e.abstract = !0; - this.raise(e.start, Gt.NonClassMethodPropertyHasAbstractModifer); - this.next(); - return this.tsParseInterfaceDeclaration(e); - } - } else this.unexpected(null, 79); - } - parseMethod(...e) { - const t = super.parseMethod(...e); - if (t.abstract) { - if (this.hasPlugin("estree") ? !!t.value.body : !!t.body) { - const {key: e} = t; - this.raise(t.start, Gt.AbstractMethodHasImplementation, "Identifier" !== e.type || t.computed ? `[${this.input.slice(e.start, e.end)}]` : e.name); - } - } - return t; - } - tsParseTypeParameterName() { - return this.parseIdentifier().name; - } - shouldParseAsAmbientContext() { - return !!this.getPluginOption("typescript", "dts"); - } - parse() { - this.shouldParseAsAmbientContext() && (this.state.isAmbientContext = !0); - return super.parse(); - } - getExpression() { - this.shouldParseAsAmbientContext() && (this.state.isAmbientContext = !0); - return super.getExpression(); - } - })); - const $t = v({ - ClassNameIsRequired: "A class name is required." - }, x.SyntaxError); - function zt(e, t) { - return e.some(e => Array.isArray(e) ? e[0] === t : e === t); - } - function Qt(e, t, n) { - const r = e.find(e => Array.isArray(e) ? e[0] === t : e === t); - return r && Array.isArray(r) ? r[1][n] : null; - } - const Zt = [ "minimal", "fsharp", "hack", "smart" ]; - const en = [ "%", "#" ]; - const tn = [ "hash", "bar" ]; - const nn = { - estree: r, - jsx: a, - flow: s, - typescript: o, - v8intrinsic: e => (class extends e { - parseV8Intrinsic() { - if (this.match(53)) { - const e = this.state.start; - const t = this.startNode(); - this.eat(53); - if (this.match(5)) { - const e = this.parseIdentifierName(this.state.start); - const n = this.createIdentifier(t, e); - n.type = "V8IntrinsicIdentifier"; - if (this.match(18)) return n; - } - this.unexpected(e); - } - } - parseExprAtom() { - return this.parseV8Intrinsic() || super.parseExprAtom(...arguments); - } - }), - placeholders: e => (class extends e { - parsePlaceholder(e) { - if (this.match(96)) { - const t = this.startNode(); - this.next(); - this.assertNoSpace("Unexpected space in placeholder."); - t.name = super.parseIdentifier(!0); - this.assertNoSpace("Unexpected space in placeholder."); - this.expect(96); - return this.finishPlaceholder(t, e); - } - } - finishPlaceholder(e, t) { - const n = !(!e.expectedNode || "Placeholder" !== e.type); - e.expectedNode = t; - return n ? e : this.finishNode(e, "Placeholder"); - } - getTokenFromCode(e) { - return 37 === e && 37 === this.input.charCodeAt(this.state.pos + 1) ? this.finishOp(96, 2) : super.getTokenFromCode(...arguments); - } - parseExprAtom() { - return this.parsePlaceholder("Expression") || super.parseExprAtom(...arguments); - } - parseIdentifier() { - return this.parsePlaceholder("Identifier") || super.parseIdentifier(...arguments); - } - checkReservedWord(e) { - void 0 !== e && super.checkReservedWord(...arguments); - } - parseBindingAtom() { - return this.parsePlaceholder("Pattern") || super.parseBindingAtom(...arguments); - } - checkLVal(e) { - "Placeholder" !== e.type && super.checkLVal(...arguments); - } - toAssignable(e) { - if (e && "Placeholder" === e.type && "Expression" === e.expectedNode) { - e.expectedNode = "Pattern"; - return e; - } - return super.toAssignable(...arguments); - } - isLet(e) { - if (super.isLet(e)) return !0; - if (!this.isContextual("let")) return !1; - if (e) return !1; - return 96 === this.lookahead().type; - } - verifyBreakContinue(e) { - e.label && "Placeholder" === e.label.type || super.verifyBreakContinue(...arguments); - } - parseExpressionStatement(e, t) { - if ("Placeholder" !== t.type || t.extra && t.extra.parenthesized) return super.parseExpressionStatement(...arguments); - if (this.match(22)) { - const n = e; - n.label = this.finishPlaceholder(t, "Identifier"); - this.next(); - n.body = this.parseStatement("label"); - return this.finishNode(n, "LabeledStatement"); - } - this.semicolon(); - e.name = t.name; - return this.finishPlaceholder(e, "Statement"); - } - parseBlock() { - return this.parsePlaceholder("BlockStatement") || super.parseBlock(...arguments); - } - parseFunctionId() { - return this.parsePlaceholder("Identifier") || super.parseFunctionId(...arguments); - } - parseClass(e, t, n) { - const r = t ? "ClassDeclaration" : "ClassExpression"; - this.next(); - this.takeDecorators(e); - const i = this.state.strict; - const s = this.parsePlaceholder("Identifier"); - if (s) if (this.match(80) || this.match(96) || this.match(13)) e.id = s; else { - if (n || !t) { - e.id = null; - e.body = this.finishPlaceholder(s, "ClassBody"); - return this.finishNode(e, r); - } - this.unexpected(null, $t.ClassNameIsRequired); - } else this.parseClassId(e, t, n); - this.parseClassSuper(e); - e.body = this.parsePlaceholder("ClassBody") || this.parseClassBody(!!e.superClass, i); - return this.finishNode(e, r); - } - parseExport(e) { - const t = this.parsePlaceholder("Identifier"); - if (!t) return super.parseExport(...arguments); - if (!this.isContextual("from") && !this.match(20)) { - e.specifiers = []; - e.source = null; - e.declaration = this.finishPlaceholder(t, "Declaration"); - return this.finishNode(e, "ExportNamedDeclaration"); - } - this.expectPlugin("exportDefaultFrom"); - const n = this.startNode(); - n.exported = t; - e.specifiers = [ this.finishNode(n, "ExportDefaultSpecifier") ]; - return super.parseExport(e); - } - isExportDefaultSpecifier() { - if (this.match(64)) { - const e = this.nextTokenStart(); - if (this.isUnparsedContextual(e, "from") && this.input.startsWith(q(96), this.nextTokenStartSince(e + 4))) return !0; - } - return super.isExportDefaultSpecifier(); - } - maybeParseExportDefaultSpecifier(e) { - return !!(e.specifiers && e.specifiers.length > 0) || super.maybeParseExportDefaultSpecifier(...arguments); - } - checkExport(e) { - const {specifiers: t} = e; - null != t && t.length && (e.specifiers = t.filter(e => "Placeholder" === e.exported.type)); - super.checkExport(e); - e.specifiers = t; - } - parseImport(e) { - const t = this.parsePlaceholder("Identifier"); - if (!t) return super.parseImport(...arguments); - e.specifiers = []; - if (!this.isContextual("from") && !this.match(20)) { - e.source = this.finishPlaceholder(t, "StringLiteral"); - this.semicolon(); - return this.finishNode(e, "ImportDeclaration"); - } - const n = this.startNodeAtNode(t); - n.local = t; - this.finishNode(n, "ImportDefaultSpecifier"); - e.specifiers.push(n); - if (this.eat(20)) { - this.maybeParseStarImportSpecifier(e) || this.parseNamedImportSpecifiers(e); - } - this.expectContextual("from"); - e.source = this.parseImportSource(); - this.semicolon(); - return this.finishNode(e, "ImportDeclaration"); - } - parseImportSource() { - return this.parsePlaceholder("StringLiteral") || super.parseImportSource(...arguments); - } - }) - }; - const rn = Object.keys(nn); - const sn = { - sourceType: "script", - sourceFilename: void 0, - startLine: 1, - allowAwaitOutsideFunction: !1, - allowReturnOutsideFunction: !1, - allowImportExportEverywhere: !1, - allowSuperOutsideMethod: !1, - allowUndeclaredExports: !1, - plugins: [], - strictMode: null, - ranges: !1, - tokens: !1, - createParenthesizedExpressions: !1, - errorRecovery: !1, - attachComment: !0 - }; - const an = e => "ParenthesizedExpression" === e.type ? an(e.expression) : e; - class on extends Dt { - toAssignable(e, t = !1) { - var n, r, i; - let s = void 0; - if ("ParenthesizedExpression" === e.type || null != (n = e.extra) && n.parenthesized) { - s = an(e); - t ? "Identifier" === s.type ? this.expressionScope.recordParenthesizedIdentifierError(e.start, E.InvalidParenthesizedAssignment) : "MemberExpression" !== s.type && this.raise(e.start, E.InvalidParenthesizedAssignment) : this.raise(e.start, E.InvalidParenthesizedAssignment); - } - switch (e.type) { - case "Identifier": - case "ObjectPattern": - case "ArrayPattern": - case "AssignmentPattern": - case "RestElement": - break; - - case "ObjectExpression": - e.type = "ObjectPattern"; - for (let n = 0, r = e.properties.length, s = r - 1; n < r; n++) { - const r = e.properties[n]; - const a = n === s; - this.toAssignableObjectExpressionProp(r, a, t); - a && "RestElement" === r.type && null != (i = e.extra) && i.trailingComma && this.raiseRestNotLast(e.extra.trailingComma); - } - break; - - case "ObjectProperty": - this.toAssignable(e.value, t); - break; - - case "SpreadElement": - { - this.checkToRestConversion(e); - e.type = "RestElement"; - const n = e.argument; - this.toAssignable(n, t); - break; - } - - case "ArrayExpression": - e.type = "ArrayPattern"; - this.toAssignableList(e.elements, null == (r = e.extra) ? void 0 : r.trailingComma, t); - break; - - case "AssignmentExpression": - "=" !== e.operator && this.raise(e.left.end, E.MissingEqInAssignment); - e.type = "AssignmentPattern"; - delete e.operator; - this.toAssignable(e.left, t); - break; - - case "ParenthesizedExpression": - this.toAssignable(s, t); - } - return e; - } - toAssignableObjectExpressionProp(e, t, n) { - if ("ObjectMethod" === e.type) { - const t = "get" === e.kind || "set" === e.kind ? E.PatternHasAccessor : E.PatternHasMethod; - this.raise(e.key.start, t); - } else "SpreadElement" !== e.type || t ? this.toAssignable(e, n) : this.raiseRestNotLast(e.start); - } - toAssignableList(e, t, n) { - let r = e.length; - if (r) { - const i = e[r - 1]; - if ("RestElement" === (null == i ? void 0 : i.type)) --r; else if ("SpreadElement" === (null == i ? void 0 : i.type)) { - i.type = "RestElement"; - let e = i.argument; - this.toAssignable(e, n); - "Identifier" !== (e = an(e)).type && "MemberExpression" !== e.type && "ArrayPattern" !== e.type && "ObjectPattern" !== e.type && this.unexpected(e.start); - t && this.raiseTrailingCommaAfterRest(t); - --r; - } - } - for (let t = 0; t < r; t++) { - const r = e[t]; - if (r) { - this.toAssignable(r, n); - "RestElement" === r.type && this.raiseRestNotLast(r.start); - } - } - return e; - } - isAssignable(e, t) { - switch (e.type) { - case "Identifier": - case "ObjectPattern": - case "ArrayPattern": - case "AssignmentPattern": - case "RestElement": - return !0; - - case "ObjectExpression": - { - const t = e.properties.length - 1; - return e.properties.every((e, n) => "ObjectMethod" !== e.type && (n === t || "SpreadElement" !== e.type) && this.isAssignable(e)); - } - - case "ObjectProperty": - return this.isAssignable(e.value); - - case "SpreadElement": - return this.isAssignable(e.argument); - - case "ArrayExpression": - return e.elements.every(e => null === e || this.isAssignable(e)); - - case "AssignmentExpression": - return "=" === e.operator; - - case "ParenthesizedExpression": - return this.isAssignable(e.expression); - - case "MemberExpression": - case "OptionalMemberExpression": - return !t; - - default: - return !1; - } - } - toReferencedList(e, t) { - return e; - } - toReferencedListDeep(e, t) { - this.toReferencedList(e, t); - for (const t of e) "ArrayExpression" === (null == t ? void 0 : t.type) && this.toReferencedListDeep(t.elements); - } - parseSpread(e, t) { - const n = this.startNode(); - this.next(); - n.argument = this.parseMaybeAssignAllowIn(e, void 0, t); - return this.finishNode(n, "SpreadElement"); - } - parseRestBinding() { - const e = this.startNode(); - this.next(); - e.argument = this.parseBindingAtom(); - return this.finishNode(e, "RestElement"); - } - parseBindingAtom() { - switch (this.state.type) { - case 8: - { - const e = this.startNode(); - this.next(); - e.elements = this.parseBindingList(11, 93, !0); - return this.finishNode(e, "ArrayPattern"); - } - - case 13: - return this.parseObjectLike(16, !0); - } - return this.parseIdentifier(); - } - parseBindingList(e, t, n, r) { - const i = []; - let s = !0; - for (;!this.eat(e); ) { - s ? s = !1 : this.expect(20); - if (n && this.match(20)) i.push(null); else { - if (this.eat(e)) break; - if (this.match(29)) { - i.push(this.parseAssignableListItemTypes(this.parseRestBinding())); - this.checkCommaAfterRest(t); - this.expect(e); - break; - } - { - const e = []; - this.match(32) && this.hasPlugin("decorators") && this.raise(this.state.start, E.UnsupportedParameterDecorator); - for (;this.match(32); ) e.push(this.parseDecorator()); - i.push(this.parseAssignableListItem(r, e)); - } - } - } - return i; - } - parseAssignableListItem(e, t) { - const n = this.parseMaybeDefault(); - this.parseAssignableListItemTypes(n); - const r = this.parseMaybeDefault(n.start, n.loc.start, n); - t.length && (n.decorators = t); - return r; - } - parseAssignableListItemTypes(e) { - return e; - } - parseMaybeDefault(e, t, n) { - var r, i, s; - t = null != (r = t) ? r : this.state.startLoc; - e = null != (i = e) ? i : this.state.start; - n = null != (s = n) ? s : this.parseBindingAtom(); - if (!this.eat(35)) return n; - const a = this.startNodeAt(e, t); - a.left = n; - a.right = this.parseMaybeAssignAllowIn(); - return this.finishNode(a, "AssignmentPattern"); - } - checkLVal(e, t, n = Ve, r, i, s = !1) { - switch (e.type) { - case "Identifier": - { - const {name: t} = e; - this.state.strict && (s ? pe(t, this.inModule) : ce(t)) && this.raise(e.start, n === Ve ? E.StrictEvalArguments : E.StrictEvalArgumentsBinding, t); - r && (r.has(t) ? this.raise(e.start, E.ParamDupe) : r.add(t)); - i && "let" === t && this.raise(e.start, E.LetInLexicalBinding); - n & Ve || this.scope.declareName(t, n, e.start); - break; - } - - case "MemberExpression": - n !== Ve && this.raise(e.start, E.InvalidPropertyBindingPattern); - break; - - case "ObjectPattern": - for (let t of e.properties) { - if (this.isObjectProperty(t)) t = t.value; else if (this.isObjectMethod(t)) continue; - this.checkLVal(t, "object destructuring pattern", n, r, i); - } - break; - - case "ArrayPattern": - for (const t of e.elements) t && this.checkLVal(t, "array destructuring pattern", n, r, i); - break; - - case "AssignmentPattern": - this.checkLVal(e.left, "assignment pattern", n, r); - break; - - case "RestElement": - this.checkLVal(e.argument, "rest element", n, r); - break; - - case "ParenthesizedExpression": - this.checkLVal(e.expression, "parenthesized expression", n, r); - break; - - default: - this.raise(e.start, n === Ve ? E.InvalidLhs : E.InvalidLhsBinding, t); - } - } - checkToRestConversion(e) { - "Identifier" !== e.argument.type && "MemberExpression" !== e.argument.type && this.raise(e.argument.start, E.InvalidRestAssignmentPattern); - } - checkCommaAfterRest(e) { - this.match(20) && (this.lookaheadCharCode() === e ? this.raiseTrailingCommaAfterRest(this.state.start) : this.raiseRestNotLast(this.state.start)); - } - raiseRestNotLast(e) { - throw this.raise(e, E.ElementAfterRest); - } - raiseTrailingCommaAfterRest(e) { - this.raise(e, E.RestTrailingComma); - } - } - const ln = new Map([ [ "ArrowFunctionExpression", "arrow function" ], [ "AssignmentExpression", "assignment" ], [ "ConditionalExpression", "conditional" ], [ "YieldExpression", "yield" ] ]); - class cn extends on { - checkProto(e, t, n, r) { - if ("SpreadElement" === e.type || this.isObjectMethod(e) || e.computed || e.shorthand) return; - const i = e.key; - if ("__proto__" === ("Identifier" === i.type ? i.name : i.value)) { - if (t) { - this.raise(i.start, E.RecordNoProto); - return; - } - n.used && (r ? -1 === r.doubleProto && (r.doubleProto = i.start) : this.raise(i.start, E.DuplicateProto)); - n.used = !0; - } - } - shouldExitDescending(e, t) { - return "ArrowFunctionExpression" === e.type && e.start === t; - } - getExpression() { - this.enterInitialScopes(); - this.nextToken(); - const e = this.parseExpression(); - this.match(7) || this.unexpected(); - this.finalizeRemainingComments(); - e.comments = this.state.comments; - e.errors = this.state.errors; - this.options.tokens && (e.tokens = this.tokens); - return e; - } - parseExpression(e, t) { - return e ? this.disallowInAnd(() => this.parseExpressionBase(t)) : this.allowInAnd(() => this.parseExpressionBase(t)); - } - parseExpressionBase(e) { - const t = this.state.start; - const n = this.state.startLoc; - const r = this.parseMaybeAssign(e); - if (this.match(20)) { - const i = this.startNodeAt(t, n); - i.expressions = [ r ]; - for (;this.eat(20); ) i.expressions.push(this.parseMaybeAssign(e)); - this.toReferencedList(i.expressions); - return this.finishNode(i, "SequenceExpression"); - } - return r; - } - parseMaybeAssignDisallowIn(e, t) { - return this.disallowInAnd(() => this.parseMaybeAssign(e, t)); - } - parseMaybeAssignAllowIn(e, t) { - return this.allowInAnd(() => this.parseMaybeAssign(e, t)); - } - setOptionalParametersError(e, t) { - var n; - e.optionalParameters = null != (n = null == t ? void 0 : t.pos) ? n : this.state.start; - } - parseMaybeAssign(e, t) { - const n = this.state.start; - const r = this.state.startLoc; - if (this.isContextual("yield") && this.prodParam.hasYield) { - let e = this.parseYield(); - t && (e = t.call(this, e, n, r)); - return e; - } - let i; - if (e) i = !1; else { - e = new Ct(); - i = !0; - } - (this.match(18) || this.match(5)) && (this.state.potentialArrowAt = this.state.start); - let s = this.parseMaybeConditional(e); - t && (s = t.call(this, s, n, r)); - if ((a = this.state.type) >= 35 && a <= 38) { - const t = this.startNodeAt(n, r); - const i = this.state.value; - t.operator = i; - if (this.match(35)) { - t.left = this.toAssignable(s, !0); - e.doubleProto = -1; - } else t.left = s; - e.shorthandAssign >= t.left.start && (e.shorthandAssign = -1); - this.checkLVal(s, "assignment expression"); - this.next(); - t.right = this.parseMaybeAssign(); - return this.finishNode(t, "AssignmentExpression"); - } - i && this.checkExpressionErrors(e, !0); - var a; - return s; - } - parseMaybeConditional(e) { - const t = this.state.start; - const n = this.state.startLoc; - const r = this.state.potentialArrowAt; - const i = this.parseExprOps(e); - return this.shouldExitDescending(i, r) ? i : this.parseConditional(i, t, n, e); - } - parseConditional(e, t, n, r) { - if (this.eat(25)) { - const r = this.startNodeAt(t, n); - r.test = e; - r.consequent = this.parseMaybeAssignAllowIn(); - this.expect(22); - r.alternate = this.parseMaybeAssign(); - return this.finishNode(r, "ConditionalExpression"); - } - return e; - } - parseMaybeUnaryOrPrivate(e) { - return this.match(6) ? this.parsePrivateName() : this.parseMaybeUnary(e); - } - parseExprOps(e) { - const t = this.state.start; - const n = this.state.startLoc; - const r = this.state.potentialArrowAt; - const i = this.parseMaybeUnaryOrPrivate(e); - return this.shouldExitDescending(i, r) ? i : this.parseExprOp(i, t, n, -1); - } - parseExprOp(e, t, n, r) { - if (this.isPrivateName(e)) { - const t = this.getPrivateNameSV(e); - const {start: n} = e; - (r >= Y(57) || !this.prodParam.hasIn || !this.match(57)) && this.raise(n, E.PrivateInExpectedIn, t); - this.classScope.usePrivateName(t, n); - } - const i = this.state.type; - if ((s = i) >= 42 && s <= 58 && (this.prodParam.hasIn || !this.match(57))) { - let s = Y(i); - if (s > r) { - if (42 === i) { - this.expectPlugin("pipelineOperator"); - if (this.state.inFSharpPipelineDirectBody) return e; - this.checkPipelineAtInfixOperator(e, t); - } - const a = this.startNodeAt(t, n); - a.left = e; - a.operator = this.state.value; - const o = 44 === i || 45 === i; - const l = 43 === i; - l && (s = Y(45)); - this.next(); - if (42 === i && "minimal" === this.getPluginOption("pipelineOperator", "proposal") && this.match(5) && "await" === this.state.value && this.prodParam.hasAwait) throw this.raise(this.state.start, E.UnexpectedAwaitAfterPipelineBody); - a.right = this.parseExprOpRightExpr(i, s); - this.finishNode(a, o || l ? "LogicalExpression" : "BinaryExpression"); - const c = this.state.type; - if (l && (44 === c || 45 === c) || o && 43 === c) throw this.raise(this.state.start, E.MixingCoalesceWithLogical); - return this.parseExprOp(a, t, n, r); - } - } - var s; - return e; - } - parseExprOpRightExpr(e, t) { - const n = this.state.start; - const r = this.state.startLoc; - switch (e) { - case 42: - switch (this.getPluginOption("pipelineOperator", "proposal")) { - case "hack": - return this.withTopicBindingContext(() => this.parseHackPipeBody()); - - case "smart": - return this.withTopicBindingContext(() => { - if (this.prodParam.hasYield && this.isContextual("yield")) throw this.raise(this.state.start, E.PipeBodyIsTighter, this.state.value); - return this.parseSmartPipelineBodyInStyle(this.parseExprOpBaseRightExpr(e, t), n, r); - }); - - case "fsharp": - return this.withSoloAwaitPermittingContext(() => this.parseFSharpPipelineBody(t)); - } - - default: - return this.parseExprOpBaseRightExpr(e, t); - } - } - parseExprOpBaseRightExpr(e, t) { - const n = this.state.start; - const r = this.state.startLoc; - return this.parseExprOp(this.parseMaybeUnaryOrPrivate(), n, r, 56 === e ? t - 1 : t); - } - parseHackPipeBody() { - var e; - const {start: t} = this.state; - const n = this.parseMaybeAssign(); - !ln.has(n.type) || null != (e = n.extra) && e.parenthesized || this.raise(t, E.PipeUnparenthesizedBody, ln.get(n.type)); - this.topicReferenceWasUsedInCurrentContext() || this.raise(t, E.PipeTopicUnused); - return n; - } - checkExponentialAfterUnary(e) { - this.match(56) && this.raise(e.argument.start, E.UnexpectedTokenUnaryExponentiation); - } - parseMaybeUnary(e, t) { - const n = this.state.start; - const r = this.state.startLoc; - const i = this.isContextual("await"); - if (i && this.isAwaitAllowed()) { - this.next(); - const e = this.parseAwait(n, r); - t || this.checkExponentialAfterUnary(e); - return e; - } - const s = this.match(39); - const a = this.startNode(); - if (o = this.state.type, R[o]) { - a.operator = this.state.value; - a.prefix = !0; - this.match(71) && this.expectPlugin("throwExpressions"); - const n = this.match(88); - this.next(); - a.argument = this.parseMaybeUnary(null, !0); - this.checkExpressionErrors(e, !0); - if (this.state.strict && n) { - const e = a.argument; - "Identifier" === e.type ? this.raise(a.start, E.StrictDelete) : this.hasPropertyAsPrivateName(e) && this.raise(a.start, E.DeletePrivateField); - } - if (!s) { - t || this.checkExponentialAfterUnary(a); - return this.finishNode(a, "UnaryExpression"); - } - } - var o; - const l = this.parseUpdate(a, s, e); - if (i) { - const {type: e} = this.state; - if ((this.hasPlugin("v8intrinsic") ? K(e) : K(e) && !this.match(53)) && !this.isAmbiguousAwait()) { - this.raiseOverwrite(n, E.AwaitNotInAsyncContext); - return this.parseAwait(n, r); - } - } - return l; - } - parseUpdate(e, t, n) { - if (t) { - this.checkLVal(e.argument, "prefix operation"); - return this.finishNode(e, "UpdateExpression"); - } - const r = this.state.start; - const i = this.state.startLoc; - let s = this.parseExprSubscripts(n); - if (this.checkExpressionErrors(n, !1)) return s; - for (;39 === this.state.type && !this.canInsertSemicolon(); ) { - const e = this.startNodeAt(r, i); - e.operator = this.state.value; - e.prefix = !1; - e.argument = s; - this.checkLVal(s, "postfix operation"); - this.next(); - s = this.finishNode(e, "UpdateExpression"); - } - return s; - } - parseExprSubscripts(e) { - const t = this.state.start; - const n = this.state.startLoc; - const r = this.state.potentialArrowAt; - const i = this.parseExprAtom(e); - return this.shouldExitDescending(i, r) ? i : this.parseSubscripts(i, t, n); - } - parseSubscripts(e, t, n, r) { - const i = { - optionalChainMember: !1, - maybeAsyncArrow: this.atPossibleAsyncArrow(e), - stop: !1 - }; - do { - e = this.parseSubscript(e, t, n, r, i); - i.maybeAsyncArrow = !1; - } while (!i.stop); - return e; - } - parseSubscript(e, t, n, r, i) { - if (!r && this.eat(23)) return this.parseBind(e, t, n, r, i); - if (this.match(30)) return this.parseTaggedTemplateExpression(e, t, n, i); - let s = !1; - if (this.match(26)) { - if (r && 40 === this.lookaheadCharCode()) { - i.stop = !0; - return e; - } - i.optionalChainMember = s = !0; - this.next(); - } - if (!r && this.match(18)) return this.parseCoverCallAndAsyncArrowHead(e, t, n, i, s); - { - const r = this.eat(8); - if (r || s || this.eat(24)) return this.parseMember(e, t, n, i, r, s); - i.stop = !0; - return e; - } - } - parseMember(e, t, n, r, i, s) { - const a = this.startNodeAt(t, n); - a.object = e; - a.computed = i; - const o = !i && this.match(6) && this.state.value; - const l = i ? this.parseExpression() : o ? this.parsePrivateName() : this.parseIdentifier(!0); - if (!1 !== o) { - "Super" === a.object.type && this.raise(t, E.SuperPrivateField); - this.classScope.usePrivateName(o, l.start); - } - a.property = l; - i && this.expect(11); - if (r.optionalChainMember) { - a.optional = s; - return this.finishNode(a, "OptionalMemberExpression"); - } - return this.finishNode(a, "MemberExpression"); - } - parseBind(e, t, n, r, i) { - const s = this.startNodeAt(t, n); - s.object = e; - s.callee = this.parseNoCallExpr(); - i.stop = !0; - return this.parseSubscripts(this.finishNode(s, "BindExpression"), t, n, r); - } - parseCoverCallAndAsyncArrowHead(e, t, n, r, i) { - const s = this.state.maybeInArrowParameters; - let a = null; - this.state.maybeInArrowParameters = !0; - this.next(); - let o = this.startNodeAt(t, n); - o.callee = e; - if (r.maybeAsyncArrow) { - this.expressionScope.enter(new yt(ht)); - a = new Ct(); - } - r.optionalChainMember && (o.optional = i); - o.arguments = i ? this.parseCallExpressionArguments(19) : this.parseCallExpressionArguments(19, "Import" === e.type, "Super" !== e.type, o, a); - this.finishCallExpression(o, r.optionalChainMember); - if (r.maybeAsyncArrow && this.shouldParseAsyncArrow() && !i) { - r.stop = !0; - this.expressionScope.validateAsPattern(); - this.expressionScope.exit(); - o = this.parseAsyncArrowFromCallExpression(this.startNodeAt(t, n), o); - } else { - if (r.maybeAsyncArrow) { - this.checkExpressionErrors(a, !0); - this.expressionScope.exit(); - } - this.toReferencedArguments(o); - } - this.state.maybeInArrowParameters = s; - return o; - } - toReferencedArguments(e, t) { - this.toReferencedListDeep(e.arguments, t); - } - parseTaggedTemplateExpression(e, t, n, r) { - const i = this.startNodeAt(t, n); - i.tag = e; - i.quasi = this.parseTemplate(!0); - r.optionalChainMember && this.raise(t, E.OptionalChainingNoTemplate); - return this.finishNode(i, "TaggedTemplateExpression"); - } - atPossibleAsyncArrow(e) { - return "Identifier" === e.type && "async" === e.name && this.state.lastTokEnd === e.end && !this.canInsertSemicolon() && e.end - e.start == 5 && e.start === this.state.potentialArrowAt; - } - finishCallExpression(e, t) { - if ("Import" === e.callee.type) { - 2 === e.arguments.length && (this.hasPlugin("moduleAttributes") || this.expectPlugin("importAssertions")); - if (0 === e.arguments.length || e.arguments.length > 2) this.raise(e.start, E.ImportCallArity, this.hasPlugin("importAssertions") || this.hasPlugin("moduleAttributes") ? "one or two arguments" : "one argument"); else for (const t of e.arguments) "SpreadElement" === t.type && this.raise(t.start, E.ImportCallSpreadArgument); - } - return this.finishNode(e, t ? "OptionalCallExpression" : "CallExpression"); - } - parseCallExpressionArguments(e, t, n, r, i) { - const s = []; - let a = !0; - const o = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = !1; - for (;!this.eat(e); ) { - if (a) a = !1; else { - this.expect(20); - if (this.match(e)) { - !t || this.hasPlugin("importAssertions") || this.hasPlugin("moduleAttributes") || this.raise(this.state.lastTokStart, E.ImportCallArgumentTrailingComma); - r && this.addExtra(r, "trailingComma", this.state.lastTokStart); - this.next(); - break; - } - } - s.push(this.parseExprListItem(!1, i, n)); - } - this.state.inFSharpPipelineDirectBody = o; - return s; - } - shouldParseAsyncArrow() { - return this.match(27) && !this.canInsertSemicolon(); - } - parseAsyncArrowFromCallExpression(e, t) { - var n; - this.resetPreviousNodeTrailingComments(t); - this.expect(27); - this.parseArrowExpression(e, t.arguments, !0, null == (n = t.extra) ? void 0 : n.trailingComma); - T(e, t.innerComments); - T(e, t.callee.trailingComments); - return e; - } - parseNoCallExpr() { - const e = this.state.start; - const t = this.state.startLoc; - return this.parseSubscripts(this.parseExprAtom(), e, t, !0); - } - parseExprAtom(e) { - let t; - switch (this.state.type) { - case 78: - return this.parseSuper(); - - case 82: - t = this.startNode(); - this.next(); - if (this.match(24)) return this.parseImportMetaProperty(t); - this.match(18) || this.raise(this.state.lastTokStart, E.UnsupportedImport); - return this.finishNode(t, "Import"); - - case 77: - t = this.startNode(); - this.next(); - return this.finishNode(t, "ThisExpression"); - - case 5: - { - if (this.isContextual("module") && 123 === this.lookaheadCharCode() && !this.hasFollowingLineBreak()) return this.parseModuleExpression(); - const e = this.state.potentialArrowAt === this.state.start; - const t = this.state.containsEsc; - const n = this.parseIdentifier(); - if (!t && "async" === n.name && !this.canInsertSemicolon()) { - if (this.match(67)) { - this.resetPreviousNodeTrailingComments(n); - this.next(); - return this.parseFunction(this.startNodeAtNode(n), void 0, !0); - } - if (this.match(5)) return 61 === this.lookaheadCharCode() ? this.parseAsyncArrowUnaryFunction(this.startNodeAtNode(n)) : n; - if (this.match(89)) { - this.resetPreviousNodeTrailingComments(n); - return this.parseDo(this.startNodeAtNode(n), !0); - } - } - if (e && this.match(27) && !this.canInsertSemicolon()) { - this.next(); - return this.parseArrowExpression(this.startNodeAtNode(n), [ n ], !1); - } - return n; - } - - case 89: - return this.parseDo(this.startNode(), !1); - - case 55: - case 37: - this.readRegexp(); - return this.parseRegExpLiteral(this.state.value); - - case 0: - return this.parseNumericLiteral(this.state.value); - - case 1: - return this.parseBigIntLiteral(this.state.value); - - case 2: - return this.parseDecimalLiteral(this.state.value); - - case 4: - return this.parseStringLiteral(this.state.value); - - case 83: - return this.parseNullLiteral(); - - case 84: - return this.parseBooleanLiteral(!0); - - case 85: - return this.parseBooleanLiteral(!1); - - case 18: - { - const e = this.state.potentialArrowAt === this.state.start; - return this.parseParenAndDistinguishExpression(e); - } - - case 10: - case 9: - return this.parseArrayLike(10 === this.state.type ? 12 : 11, !1, !0, e); - - case 8: - return this.parseArrayLike(11, !0, !1, e); - - case 14: - case 15: - return this.parseObjectLike(14 === this.state.type ? 17 : 16, !1, !0, e); - - case 13: - return this.parseObjectLike(16, !1, !1, e); - - case 67: - return this.parseFunctionOrFunctionSent(); - - case 32: - this.parseDecorators(); - - case 79: - t = this.startNode(); - this.takeDecorators(t); - return this.parseClass(t, !1); - - case 76: - return this.parseNewOrNewTarget(); - - case 30: - return this.parseTemplate(!1); - - case 23: - { - t = this.startNode(); - this.next(); - t.object = null; - const e = t.callee = this.parseNoCallExpr(); - if ("MemberExpression" === e.type) return this.finishNode(t, "BindExpression"); - throw this.raise(e.start, E.UnsupportedBind); - } - - case 6: - this.raise(this.state.start, E.PrivateInExpectedIn, this.state.value); - return this.parsePrivateName(); - - case 38: - if ("hack" !== this.getPluginOption("pipelineOperator", "proposal") || "%" !== this.getPluginOption("pipelineOperator", "topicToken")) throw this.unexpected(); - this.state.value = "%"; - this.state.type = 53; - this.state.pos--; - this.state.end--; - this.state.endLoc.column--; - - case 53: - case 33: - { - const e = this.getPluginOption("pipelineOperator", "proposal"); - if (e) { - t = this.startNode(); - const n = this.state.start; - const r = this.state.type; - this.next(); - return this.finishTopicReference(t, n, e, r); - } - } - - case 50: - if ("<" === this.state.value) { - const e = this.input.codePointAt(this.nextTokenStart()); - (ee(e) || 62 === e) && this.expectOnePlugin([ "jsx", "flow", "typescript" ]); - } - - default: - throw this.unexpected(); - } - } - finishTopicReference(e, t, n, r) { - if (this.testTopicReferenceConfiguration(n, t, r)) { - let r; - r = "smart" === n ? "PipelinePrimaryTopicReference" : "TopicReference"; - this.topicReferenceIsAllowedInCurrentContext() || ("smart" === n ? this.raise(t, E.PrimaryTopicNotAllowed) : this.raise(t, E.PipeTopicUnbound)); - this.registerTopicReference(); - return this.finishNode(e, r); - } - throw this.raise(t, E.PipeTopicUnconfiguredToken, q(r)); - } - testTopicReferenceConfiguration(e, t, n) { - switch (e) { - case "hack": - { - const e = this.getPluginOption("pipelineOperator", "topicToken"); - return q(n) === e; - } - - case "smart": - return 33 === n; - - default: - throw this.raise(t, E.PipeTopicRequiresHackPipes); - } - } - parseAsyncArrowUnaryFunction(e) { - this.prodParam.enter(At(!0, this.prodParam.hasYield)); - const t = [ this.parseIdentifier() ]; - this.prodParam.exit(); - this.hasPrecedingLineBreak() && this.raise(this.state.pos, E.LineTerminatorBeforeArrow); - this.expect(27); - this.parseArrowExpression(e, t, !0); - return e; - } - parseDo(e, t) { - this.expectPlugin("doExpressions"); - t && this.expectPlugin("asyncDoExpressions"); - e.async = t; - this.next(); - const n = this.state.labels; - this.state.labels = []; - if (t) { - this.prodParam.enter(xt); - e.body = this.parseBlock(); - this.prodParam.exit(); - } else e.body = this.parseBlock(); - this.state.labels = n; - return this.finishNode(e, "DoExpression"); - } - parseSuper() { - const e = this.startNode(); - this.next(); - !this.match(18) || this.scope.allowDirectSuper || this.options.allowSuperOutsideMethod ? this.scope.allowSuper || this.options.allowSuperOutsideMethod || this.raise(e.start, E.UnexpectedSuper) : this.raise(e.start, E.SuperNotAllowed); - this.match(18) || this.match(8) || this.match(24) || this.raise(e.start, E.UnsupportedSuper); - return this.finishNode(e, "Super"); - } - parseMaybePrivateName(e) { - if (this.match(6)) { - e || this.raise(this.state.start + 1, E.UnexpectedPrivateField); - return this.parsePrivateName(); - } - return this.parseIdentifier(!0); - } - parsePrivateName() { - const e = this.startNode(); - const t = this.startNodeAt(this.state.start + 1, new f(this.state.curLine, this.state.start + 1 - this.state.lineStart)); - const n = this.state.value; - this.next(); - e.id = this.createIdentifier(t, n); - return this.finishNode(e, "PrivateName"); - } - parseFunctionOrFunctionSent() { - const e = this.startNode(); - this.next(); - if (this.prodParam.hasYield && this.match(24)) { - const t = this.createIdentifier(this.startNodeAtNode(e), "function"); - this.next(); - return this.parseMetaProperty(e, t, "sent"); - } - return this.parseFunction(e); - } - parseMetaProperty(e, t, n) { - e.meta = t; - "function" === t.name && "sent" === n && (this.isContextual(n) ? this.expectPlugin("functionSent") : this.hasPlugin("functionSent") || this.unexpected()); - const r = this.state.containsEsc; - e.property = this.parseIdentifier(!0); - (e.property.name !== n || r) && this.raise(e.property.start, E.UnsupportedMetaProperty, t.name, n); - return this.finishNode(e, "MetaProperty"); - } - parseImportMetaProperty(e) { - const t = this.createIdentifier(this.startNodeAtNode(e), "import"); - this.next(); - if (this.isContextual("meta")) { - this.inModule || this.raise(t.start, P.ImportMetaOutsideModule); - this.sawUnambiguousESM = !0; - } - return this.parseMetaProperty(e, t, "meta"); - } - parseLiteralAtNode(e, t, n) { - this.addExtra(n, "rawValue", e); - this.addExtra(n, "raw", this.input.slice(n.start, this.state.end)); - n.value = e; - this.next(); - return this.finishNode(n, t); - } - parseLiteral(e, t) { - const n = this.startNode(); - return this.parseLiteralAtNode(e, t, n); - } - parseStringLiteral(e) { - return this.parseLiteral(e, "StringLiteral"); - } - parseNumericLiteral(e) { - return this.parseLiteral(e, "NumericLiteral"); - } - parseBigIntLiteral(e) { - return this.parseLiteral(e, "BigIntLiteral"); - } - parseDecimalLiteral(e) { - return this.parseLiteral(e, "DecimalLiteral"); - } - parseRegExpLiteral(e) { - const t = this.parseLiteral(e.value, "RegExpLiteral"); - t.pattern = e.pattern; - t.flags = e.flags; - return t; - } - parseBooleanLiteral(e) { - const t = this.startNode(); - t.value = e; - this.next(); - return this.finishNode(t, "BooleanLiteral"); - } - parseNullLiteral() { - const e = this.startNode(); - this.next(); - return this.finishNode(e, "NullLiteral"); - } - parseParenAndDistinguishExpression(e) { - const t = this.state.start; - const n = this.state.startLoc; - let r; - this.next(); - this.expressionScope.enter(new yt(dt)); - const i = this.state.maybeInArrowParameters; - const s = this.state.inFSharpPipelineDirectBody; - this.state.maybeInArrowParameters = !0; - this.state.inFSharpPipelineDirectBody = !1; - const a = this.state.start; - const o = this.state.startLoc; - const l = []; - const c = new Ct(); - let p = !0; - let u; - let d; - for (;!this.match(19); ) { - if (p) p = !1; else { - this.expect(20, -1 === c.optionalParameters ? null : c.optionalParameters); - if (this.match(19)) { - d = this.state.start; - break; - } - } - if (this.match(29)) { - const e = this.state.start; - const t = this.state.startLoc; - u = this.state.start; - l.push(this.parseParenItem(this.parseRestBinding(), e, t)); - this.checkCommaAfterRest(41); - break; - } - l.push(this.parseMaybeAssignAllowIn(c, this.parseParenItem)); - } - const h = this.state.lastTokEnd; - const f = this.state.lastTokEndLoc; - this.expect(19); - this.state.maybeInArrowParameters = i; - this.state.inFSharpPipelineDirectBody = s; - let m = this.startNodeAt(t, n); - if (e && this.shouldParseArrow(l) && (m = this.parseArrow(m))) { - this.expressionScope.validateAsPattern(); - this.expressionScope.exit(); - this.parseArrowExpression(m, l, !1); - return m; - } - this.expressionScope.exit(); - l.length || this.unexpected(this.state.lastTokStart); - d && this.unexpected(d); - u && this.unexpected(u); - this.checkExpressionErrors(c, !0); - this.toReferencedListDeep(l, !0); - if (l.length > 1) { - (r = this.startNodeAt(a, o)).expressions = l; - this.finishNode(r, "SequenceExpression"); - this.resetEndLocation(r, h, f); - } else r = l[0]; - if (!this.options.createParenthesizedExpressions) { - this.addExtra(r, "parenthesized", !0); - this.addExtra(r, "parenStart", t); - return r; - } - const y = this.startNodeAt(t, n); - y.expression = r; - this.finishNode(y, "ParenthesizedExpression"); - return y; - } - shouldParseArrow(e) { - return !this.canInsertSemicolon(); - } - parseArrow(e) { - if (this.eat(27)) return e; - } - parseParenItem(e, t, n) { - return e; - } - parseNewOrNewTarget() { - const e = this.startNode(); - this.next(); - if (this.match(24)) { - const t = this.createIdentifier(this.startNodeAtNode(e), "new"); - this.next(); - const n = this.parseMetaProperty(e, t, "target"); - this.scope.inNonArrowFunction || this.scope.inClass || this.raise(n.start, E.UnexpectedNewTarget); - return n; - } - return this.parseNew(e); - } - parseNew(e) { - e.callee = this.parseNoCallExpr(); - "Import" === e.callee.type ? this.raise(e.callee.start, E.ImportCallNotNewExpression) : this.isOptionalChain(e.callee) ? this.raise(this.state.lastTokEnd, E.OptionalChainingNoNew) : this.eat(26) && this.raise(this.state.start, E.OptionalChainingNoNew); - this.parseNewArguments(e); - return this.finishNode(e, "NewExpression"); - } - parseNewArguments(e) { - if (this.eat(18)) { - const t = this.parseExprList(19); - this.toReferencedList(t); - e.arguments = t; - } else e.arguments = []; - } - parseTemplateElement(e) { - const t = this.startNode(); - null === this.state.value && (e || this.raise(this.state.start + 1, E.InvalidEscapeSequenceTemplate)); - t.value = { - raw: this.input.slice(this.state.start, this.state.end).replace(/\r\n?/g, "\n"), - cooked: this.state.value - }; - this.next(); - t.tail = this.match(30); - return this.finishNode(t, "TemplateElement"); - } - parseTemplate(e) { - const t = this.startNode(); - this.next(); - t.expressions = []; - let n = this.parseTemplateElement(e); - t.quasis = [ n ]; - for (;!n.tail; ) { - this.expect(31); - t.expressions.push(this.parseTemplateSubstitution()); - this.expect(16); - t.quasis.push(n = this.parseTemplateElement(e)); - } - this.next(); - return this.finishNode(t, "TemplateLiteral"); - } - parseTemplateSubstitution() { - return this.parseExpression(); - } - parseObjectLike(e, t, n, r) { - n && this.expectPlugin("recordAndTuple"); - const i = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = !1; - const s = Object.create(null); - let a = !0; - const o = this.startNode(); - o.properties = []; - this.next(); - for (;!this.match(e); ) { - if (a) a = !1; else { - this.expect(20); - if (this.match(e)) { - this.addExtra(o, "trailingComma", this.state.lastTokStart); - break; - } - } - const i = this.parsePropertyDefinition(t, r); - t || this.checkProto(i, n, s, r); - n && !this.isObjectProperty(i) && "SpreadElement" !== i.type && this.raise(i.start, E.InvalidRecordProperty); - i.shorthand && this.addExtra(i, "shorthand", !0); - o.properties.push(i); - } - this.next(); - this.state.inFSharpPipelineDirectBody = i; - let l = "ObjectExpression"; - t ? l = "ObjectPattern" : n && (l = "RecordExpression"); - return this.finishNode(o, l); - } - maybeAsyncOrAccessorProp(e) { - return !e.computed && "Identifier" === e.key.type && (this.isLiteralPropertyName() || this.match(8) || this.match(54)); - } - parsePropertyDefinition(e, t) { - let n = []; - if (this.match(32)) { - this.hasPlugin("decorators") && this.raise(this.state.start, E.UnsupportedPropertyDecorator); - for (;this.match(32); ) n.push(this.parseDecorator()); - } - const r = this.startNode(); - let i = !1; - let s = !1; - let a = !1; - let o; - let l; - if (this.match(29)) { - n.length && this.unexpected(); - if (e) { - this.next(); - r.argument = this.parseIdentifier(); - this.checkCommaAfterRest(125); - return this.finishNode(r, "RestElement"); - } - return this.parseSpread(); - } - if (n.length) { - r.decorators = n; - n = []; - } - r.method = !1; - if (e || t) { - o = this.state.start; - l = this.state.startLoc; - } - e || (i = this.eat(54)); - const c = this.state.containsEsc; - const p = this.parsePropertyName(r, !1); - if (!e && !i && !c && this.maybeAsyncOrAccessorProp(r)) { - const e = p.name; - if ("async" === e && !this.hasPrecedingLineBreak()) { - s = !0; - this.resetPreviousNodeTrailingComments(p); - i = this.eat(54); - this.parsePropertyName(r, !1); - } - if ("get" === e || "set" === e) { - a = !0; - this.resetPreviousNodeTrailingComments(p); - r.kind = e; - if (this.match(54)) { - i = !0; - this.raise(this.state.pos, E.AccessorIsGenerator, e); - this.next(); - } - this.parsePropertyName(r, !1); - } - } - this.parseObjPropValue(r, o, l, i, s, e, a, t); - return r; - } - getGetterSetterExpectedParamCount(e) { - return "get" === e.kind ? 0 : 1; - } - getObjectOrClassMethodParams(e) { - return e.params; - } - checkGetterSetterParams(e) { - var t; - const n = this.getGetterSetterExpectedParamCount(e); - const r = this.getObjectOrClassMethodParams(e); - const i = e.start; - r.length !== n && ("get" === e.kind ? this.raise(i, E.BadGetterArity) : this.raise(i, E.BadSetterArity)); - "set" === e.kind && "RestElement" === (null == (t = r[r.length - 1]) ? void 0 : t.type) && this.raise(i, E.BadSetterRestParameter); - } - parseObjectMethod(e, t, n, r, i) { - if (i) { - this.parseMethod(e, t, !1, !1, !1, "ObjectMethod"); - this.checkGetterSetterParams(e); - return e; - } - if (n || t || this.match(18)) { - r && this.unexpected(); - e.kind = "method"; - e.method = !0; - return this.parseMethod(e, t, n, !1, !1, "ObjectMethod"); - } - } - parseObjectProperty(e, t, n, r, i) { - e.shorthand = !1; - if (this.eat(22)) { - e.value = r ? this.parseMaybeDefault(this.state.start, this.state.startLoc) : this.parseMaybeAssignAllowIn(i); - return this.finishNode(e, "ObjectProperty"); - } - if (!e.computed && "Identifier" === e.key.type) { - this.checkReservedWord(e.key.name, e.key.start, !0, !1); - if (r) e.value = this.parseMaybeDefault(t, n, Nt(e.key)); else if (this.match(35) && i) { - -1 === i.shorthandAssign && (i.shorthandAssign = this.state.start); - e.value = this.parseMaybeDefault(t, n, Nt(e.key)); - } else e.value = Nt(e.key); - e.shorthand = !0; - return this.finishNode(e, "ObjectProperty"); - } - } - parseObjPropValue(e, t, n, r, i, s, a, o) { - const l = this.parseObjectMethod(e, r, i, s, a) || this.parseObjectProperty(e, t, n, s, o); - l || this.unexpected(); - return l; - } - parsePropertyName(e, t) { - if (this.eat(8)) { - e.computed = !0; - e.key = this.parseMaybeAssignAllowIn(); - this.expect(11); - } else { - const n = this.state.inPropertyName; - this.state.inPropertyName = !0; - const r = this.state.type; - e.key = 0 === r || 4 === r || 1 === r || 2 === r ? this.parseExprAtom() : this.parseMaybePrivateName(t); - 6 !== r && (e.computed = !1); - this.state.inPropertyName = n; - } - return e.key; - } - initFunction(e, t) { - e.id = null; - e.generator = !1; - e.async = !!t; - } - parseMethod(e, t, n, r, i, s, a = !1) { - this.initFunction(e, n); - e.generator = !!t; - const o = r; - this.scope.enter(me | Te | (a ? Se : 0) | (i ? be : 0)); - this.prodParam.enter(At(n, e.generator)); - this.parseFunctionParams(e, o); - this.parseFunctionBodyAndFinish(e, s, !0); - this.prodParam.exit(); - this.scope.exit(); - return e; - } - parseArrayLike(e, t, n, r) { - n && this.expectPlugin("recordAndTuple"); - const i = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = !1; - const s = this.startNode(); - this.next(); - s.elements = this.parseExprList(e, !n, r, s); - this.state.inFSharpPipelineDirectBody = i; - return this.finishNode(s, n ? "TupleExpression" : "ArrayExpression"); - } - parseArrowExpression(e, t, n, r) { - this.scope.enter(me | ye); - let i = At(n, !1); - !this.match(8) && this.prodParam.hasIn && (i |= Pt); - this.prodParam.enter(i); - this.initFunction(e, n); - const s = this.state.maybeInArrowParameters; - if (t) { - this.state.maybeInArrowParameters = !0; - this.setArrowFunctionParameters(e, t, r); - } - this.state.maybeInArrowParameters = !1; - this.parseFunctionBody(e, !0); - this.prodParam.exit(); - this.scope.exit(); - this.state.maybeInArrowParameters = s; - return this.finishNode(e, "ArrowFunctionExpression"); - } - setArrowFunctionParameters(e, t, n) { - e.params = this.toAssignableList(t, n, !1); - } - parseFunctionBodyAndFinish(e, t, n = !1) { - this.parseFunctionBody(e, !1, n); - this.finishNode(e, t); - } - parseFunctionBody(e, t, n = !1) { - const r = t && !this.match(13); - this.expressionScope.enter(Tt()); - if (r) { - e.body = this.parseMaybeAssign(); - this.checkParams(e, !1, t, !1); - } else { - const r = this.state.strict; - const i = this.state.labels; - this.state.labels = []; - this.prodParam.enter(this.prodParam.currentFlags() | Et); - e.body = this.parseBlock(!0, !1, i => { - const s = !this.isSimpleParamList(e.params); - if (i && s) { - const t = "method" !== e.kind && "constructor" !== e.kind || !e.key ? e.start : e.key.end; - this.raise(t, E.IllegalLanguageModeDirective); - } - const a = !r && this.state.strict; - this.checkParams(e, !(this.state.strict || t || n || s), t, a); - this.state.strict && e.id && this.checkLVal(e.id, "function name", Ke, void 0, void 0, a); - }); - this.prodParam.exit(); - this.expressionScope.exit(); - this.state.labels = i; - } - } - isSimpleParamList(e) { - for (let t = 0, n = e.length; t < n; t++) if ("Identifier" !== e[t].type) return !1; - return !0; - } - checkParams(e, t, n, r = !0) { - const i = new Set(); - for (const n of e.params) this.checkLVal(n, "function parameter list", Le, t ? null : i, void 0, r); - } - parseExprList(e, t, n, r) { - const i = []; - let s = !0; - for (;!this.eat(e); ) { - if (s) s = !1; else { - this.expect(20); - if (this.match(e)) { - r && this.addExtra(r, "trailingComma", this.state.lastTokStart); - this.next(); - break; - } - } - i.push(this.parseExprListItem(t, n)); - } - return i; - } - parseExprListItem(e, t, n) { - let r; - if (this.match(20)) { - e || this.raise(this.state.pos, E.UnexpectedToken, ","); - r = null; - } else if (this.match(29)) { - const e = this.state.start; - const n = this.state.startLoc; - r = this.parseParenItem(this.parseSpread(t), e, n); - } else if (this.match(25)) { - this.expectPlugin("partialApplication"); - n || this.raise(this.state.start, E.UnexpectedArgumentPlaceholder); - const e = this.startNode(); - this.next(); - r = this.finishNode(e, "ArgumentPlaceholder"); - } else r = this.parseMaybeAssignAllowIn(t, this.parseParenItem); - return r; - } - parseIdentifier(e) { - const t = this.startNode(); - const n = this.parseIdentifierName(t.start, e); - return this.createIdentifier(t, n); - } - createIdentifier(e, t) { - e.name = t; - e.loc.identifierName = t; - return this.finishNode(e, "Identifier"); - } - parseIdentifierName(e, t) { - let n; - const {start: r, type: i} = this.state; - if (5 === i) n = this.state.value; else { - if (!W(i)) throw this.unexpected(); - n = q(i); - } - t ? this.state.type = 5 : this.checkReservedWord(n, r, W(i), !1); - this.next(); - return n; - } - checkReservedWord(e, t, n, r) { - if (e.length > 10) return; - if (!function(e) { - return de.has(e); - }(e)) return; - if ("yield" === e) { - if (this.prodParam.hasYield) { - this.raise(t, E.YieldBindingIdentifier); - return; - } - } else if ("await" === e) { - if (this.prodParam.hasAwait) { - this.raise(t, E.AwaitBindingIdentifier); - return; - } - if (this.scope.inStaticBlock) { - this.raise(t, E.AwaitBindingIdentifierInStaticBlock); - return; - } - this.expressionScope.recordAsyncArrowParametersError(t, E.AwaitBindingIdentifier); - } else if ("arguments" === e && this.scope.inClassAndNotInNonArrowFunction) { - this.raise(t, E.ArgumentsInClass); - return; - } - if (n && ue(e)) { - this.raise(t, E.UnexpectedKeyword, e); - return; - } - (this.state.strict ? r ? pe : le : oe)(e, this.inModule) && this.raise(t, E.UnexpectedReservedWord, e); - } - isAwaitAllowed() { - return !!this.prodParam.hasAwait || !(!this.options.allowAwaitOutsideFunction || this.scope.inFunction); - } - parseAwait(e, t) { - const n = this.startNodeAt(e, t); - this.expressionScope.recordParameterInitializerError(n.start, E.AwaitExpressionFormalParameter); - this.eat(54) && this.raise(n.start, E.ObsoleteAwaitStar); - this.scope.inFunction || this.options.allowAwaitOutsideFunction || (this.isAmbiguousAwait() ? this.ambiguousScriptDifferentAst = !0 : this.sawUnambiguousESM = !0); - this.state.soloAwait || (n.argument = this.parseMaybeUnary(null, !0)); - return this.finishNode(n, "AwaitExpression"); - } - isAmbiguousAwait() { - return this.hasPrecedingLineBreak() || this.match(52) || this.match(18) || this.match(8) || this.match(30) || this.match(3) || this.match(55) || this.hasPlugin("v8intrinsic") && this.match(53); - } - parseYield() { - const e = this.startNode(); - this.expressionScope.recordParameterInitializerError(e.start, E.YieldInParameter); - this.next(); - let t = !1; - let n = null; - if (!this.hasPrecedingLineBreak()) { - t = this.eat(54); - switch (this.state.type) { - case 21: - case 7: - case 16: - case 19: - case 11: - case 17: - case 22: - case 20: - if (!t) break; - - default: - n = this.parseMaybeAssign(); - } - } - e.delegate = t; - e.argument = n; - return this.finishNode(e, "YieldExpression"); - } - checkPipelineAtInfixOperator(e, t) { - "smart" === this.getPluginOption("pipelineOperator", "proposal") && "SequenceExpression" === e.type && this.raise(t, E.PipelineHeadSequenceExpression); - } - checkHackPipeBodyEarlyErrors(e) { - this.topicReferenceWasUsedInCurrentContext() || this.raise(e, E.PipeTopicUnused); - } - parseSmartPipelineBodyInStyle(e, t, n) { - const r = this.startNodeAt(t, n); - if (this.isSimpleReference(e)) { - r.callee = e; - return this.finishNode(r, "PipelineBareFunction"); - } - this.checkSmartPipeTopicBodyEarlyErrors(t); - r.expression = e; - return this.finishNode(r, "PipelineTopicExpression"); - } - isSimpleReference(e) { - switch (e.type) { - case "MemberExpression": - return !e.computed && this.isSimpleReference(e.object); - - case "Identifier": - return !0; - - default: - return !1; - } - } - checkSmartPipeTopicBodyEarlyErrors(e) { - if (this.match(27)) throw this.raise(this.state.start, E.PipelineBodyNoArrow); - this.topicReferenceWasUsedInCurrentContext() || this.raise(e, E.PipelineTopicUnused); - } - withTopicBindingContext(e) { - const t = this.state.topicContext; - this.state.topicContext = { - maxNumOfResolvableTopics: 1, - maxTopicIndex: null - }; - try { - return e(); - } finally { - this.state.topicContext = t; - } - } - withSmartMixTopicForbiddingContext(e) { - if ("smart" !== this.getPluginOption("pipelineOperator", "proposal")) return e(); - { - const t = this.state.topicContext; - this.state.topicContext = { - maxNumOfResolvableTopics: 0, - maxTopicIndex: null - }; - try { - return e(); - } finally { - this.state.topicContext = t; - } - } - } - withSoloAwaitPermittingContext(e) { - const t = this.state.soloAwait; - this.state.soloAwait = !0; - try { - return e(); - } finally { - this.state.soloAwait = t; - } - } - allowInAnd(e) { - const t = this.prodParam.currentFlags(); - if (Pt & ~t) { - this.prodParam.enter(t | Pt); - try { - return e(); - } finally { - this.prodParam.exit(); - } - } - return e(); - } - disallowInAnd(e) { - const t = this.prodParam.currentFlags(); - if (Pt & t) { - this.prodParam.enter(t & ~Pt); - try { - return e(); - } finally { - this.prodParam.exit(); - } - } - return e(); - } - registerTopicReference() { - this.state.topicContext.maxTopicIndex = 0; - } - topicReferenceIsAllowedInCurrentContext() { - return this.state.topicContext.maxNumOfResolvableTopics >= 1; - } - topicReferenceWasUsedInCurrentContext() { - return null != this.state.topicContext.maxTopicIndex && this.state.topicContext.maxTopicIndex >= 0; - } - parseFSharpPipelineBody(e) { - const t = this.state.start; - const n = this.state.startLoc; - this.state.potentialArrowAt = this.state.start; - const r = this.state.inFSharpPipelineDirectBody; - this.state.inFSharpPipelineDirectBody = !0; - const i = this.parseExprOp(this.parseMaybeUnaryOrPrivate(), t, n, e); - this.state.inFSharpPipelineDirectBody = r; - return i; - } - parseModuleExpression() { - this.expectPlugin("moduleBlocks"); - const e = this.startNode(); - this.next(); - this.eat(13); - const t = this.initializeScopes(!0); - this.enterInitialScopes(); - const n = this.startNode(); - try { - e.body = this.parseProgram(n, 16, "module"); - } finally { - t(); - } - this.eat(16); - return this.finishNode(e, "ModuleExpression"); - } - } - const pn = { - kind: "loop" - }, un = { - kind: "switch" - }; - const dn = 0, hn = 1, fn = 2, mn = 4; - const yn = /[\uD800-\uDFFF]/u; - const gn = /in(?:stanceof)?/y; - class Tn extends cn { - parseTopLevel(e, t) { - e.program = this.parseProgram(t); - e.comments = this.state.comments; - this.options.tokens && (e.tokens = function(e) { - for (let t = 0; t < e.length; t++) { - const n = e[t]; - const {type: r} = n; - if (6 !== r) "number" == typeof r && (n.type = J(r)); else { - const {loc: r, start: i, value: s, end: a} = n; - const o = i + 1; - const l = new f(r.start.line, r.start.column + 1); - e.splice(t, 1, new ot({ - type: J(33), - value: "#", - start: i, - end: o, - startLoc: r.start, - endLoc: l - }), new ot({ - type: J(5), - value: s, - start: o, - end: a, - startLoc: l, - endLoc: r.end - })); - t++; - } - } - return e; - }(this.tokens)); - return this.finishNode(e, "File"); - } - parseProgram(e, t = 7, n = this.options.sourceType) { - e.sourceType = n; - e.interpreter = this.parseInterpreterDirective(); - this.parseBlockBody(e, !0, !0, t); - if (this.inModule && !this.options.allowUndeclaredExports && this.scope.undefinedExports.size > 0) for (const [e] of Array.from(this.scope.undefinedExports)) { - const t = this.scope.undefinedExports.get(e); - this.raise(t, E.ModuleExportUndefined, e); - } - return this.finishNode(e, "Program"); - } - stmtToDirective(e) { - const t = e; - t.type = "Directive"; - t.value = t.expression; - delete t.expression; - const n = t.value; - const r = this.input.slice(n.start, n.end); - const i = n.value = r.slice(1, -1); - this.addExtra(n, "raw", r); - this.addExtra(n, "rawValue", i); - n.type = "DirectiveLiteral"; - return t; - } - parseInterpreterDirective() { - if (!this.match(34)) return null; - const e = this.startNode(); - e.value = this.state.value; - this.next(); - return this.finishNode(e, "InterpreterDirective"); - } - isLet(e) { - return !!this.isContextual("let") && this.isLetKeyword(e); - } - isLetKeyword(e) { - const t = this.nextTokenStart(); - const n = this.codePointAtPos(t); - if (92 === n || 91 === n) return !0; - if (e) return !1; - if (123 === n) return !0; - if (ee(n)) { - gn.lastIndex = t; - if (gn.test(this.input)) { - const e = this.codePointAtPos(gn.lastIndex); - if (!te(e) && 92 !== e) return !1; - } - return !0; - } - return !1; - } - parseStatement(e, t) { - this.match(32) && this.parseDecorators(!0); - return this.parseStatementContent(e, t); - } - parseStatementContent(e, t) { - let n = this.state.type; - const r = this.startNode(); - let i; - if (this.isLet(e)) { - n = 73; - i = "let"; - } - switch (n) { - case 59: - return this.parseBreakContinueStatement(r, !0); - - case 62: - return this.parseBreakContinueStatement(r, !1); - - case 63: - return this.parseDebuggerStatement(r); - - case 89: - return this.parseDoStatement(r); - - case 90: - return this.parseForStatement(r); - - case 67: - if (46 === this.lookaheadCharCode()) break; - e && (this.state.strict ? this.raise(this.state.start, E.StrictFunction) : "if" !== e && "label" !== e && this.raise(this.state.start, E.SloppyFunction)); - return this.parseFunctionStatement(r, !1, !e); - - case 79: - e && this.unexpected(); - return this.parseClass(r, !0); - - case 68: - return this.parseIfStatement(r); - - case 69: - return this.parseReturnStatement(r); - - case 70: - return this.parseSwitchStatement(r); - - case 71: - return this.parseThrowStatement(r); - - case 72: - return this.parseTryStatement(r); - - case 74: - case 73: - i = i || this.state.value; - e && "var" !== i && this.raise(this.state.start, E.UnexpectedLexicalDeclaration); - return this.parseVarStatement(r, i); - - case 91: - return this.parseWhileStatement(r); - - case 75: - return this.parseWithStatement(r); - - case 13: - return this.parseBlock(); - - case 21: - return this.parseEmptyStatement(r); - - case 82: - { - const e = this.lookaheadCharCode(); - if (40 === e || 46 === e) break; - } - - case 81: - { - this.options.allowImportExportEverywhere || t || this.raise(this.state.start, E.UnexpectedImportExport); - this.next(); - let e; - 82 === n ? "ImportDeclaration" !== (e = this.parseImport(r)).type || e.importKind && "value" !== e.importKind || (this.sawUnambiguousESM = !0) : ("ExportNamedDeclaration" !== (e = this.parseExport(r)).type || e.exportKind && "value" !== e.exportKind) && ("ExportAllDeclaration" !== e.type || e.exportKind && "value" !== e.exportKind) && "ExportDefaultDeclaration" !== e.type || (this.sawUnambiguousESM = !0); - this.assertModuleNodeAllowed(r); - return e; - } - - default: - if (this.isAsyncFunction()) { - e && this.raise(this.state.start, E.AsyncFunctionInSingleStatementContext); - this.next(); - return this.parseFunctionStatement(r, !0, !e); - } - } - const s = this.state.value; - const a = this.parseExpression(); - return 5 === n && "Identifier" === a.type && this.eat(22) ? this.parseLabeledStatement(r, s, a, e) : this.parseExpressionStatement(r, a); - } - assertModuleNodeAllowed(e) { - this.options.allowImportExportEverywhere || this.inModule || this.raise(e.start, P.ImportOutsideModule); - } - takeDecorators(e) { - const t = this.state.decoratorStack[this.state.decoratorStack.length - 1]; - if (t.length) { - e.decorators = t; - this.resetStartLocationFromNode(e, t[0]); - this.state.decoratorStack[this.state.decoratorStack.length - 1] = []; - } - } - canHaveLeadingDecorator() { - return this.match(79); - } - parseDecorators(e) { - const t = this.state.decoratorStack[this.state.decoratorStack.length - 1]; - for (;this.match(32); ) { - const e = this.parseDecorator(); - t.push(e); - } - if (this.match(81)) { - e || this.unexpected(); - this.hasPlugin("decorators") && !this.getPluginOption("decorators", "decoratorsBeforeExport") && this.raise(this.state.start, E.DecoratorExportClass); - } else if (!this.canHaveLeadingDecorator()) throw this.raise(this.state.start, E.UnexpectedLeadingDecorator); - } - parseDecorator() { - this.expectOnePlugin([ "decorators-legacy", "decorators" ]); - const e = this.startNode(); - this.next(); - if (this.hasPlugin("decorators")) { - this.state.decoratorStack.push([]); - const t = this.state.start; - const n = this.state.startLoc; - let r; - if (this.eat(18)) { - r = this.parseExpression(); - this.expect(19); - } else { - r = this.parseIdentifier(!1); - for (;this.eat(24); ) { - const e = this.startNodeAt(t, n); - e.object = r; - e.property = this.parseIdentifier(!0); - e.computed = !1; - r = this.finishNode(e, "MemberExpression"); - } - } - e.expression = this.parseMaybeDecoratorArguments(r); - this.state.decoratorStack.pop(); - } else e.expression = this.parseExprSubscripts(); - return this.finishNode(e, "Decorator"); - } - parseMaybeDecoratorArguments(e) { - if (this.eat(18)) { - const t = this.startNodeAtNode(e); - t.callee = e; - t.arguments = this.parseCallExpressionArguments(19, !1); - this.toReferencedList(t.arguments); - return this.finishNode(t, "CallExpression"); - } - return e; - } - parseBreakContinueStatement(e, t) { - this.next(); - if (this.isLineTerminator()) e.label = null; else { - e.label = this.parseIdentifier(); - this.semicolon(); - } - this.verifyBreakContinue(e, t); - return this.finishNode(e, t ? "BreakStatement" : "ContinueStatement"); - } - verifyBreakContinue(e, t) { - let n; - for (n = 0; n < this.state.labels.length; ++n) { - const r = this.state.labels[n]; - if (null == e.label || r.name === e.label.name) { - if (null != r.kind && (t || "loop" === r.kind)) break; - if (e.label && t) break; - } - } - n === this.state.labels.length && this.raise(e.start, E.IllegalBreakContinue, t ? "break" : "continue"); - } - parseDebuggerStatement(e) { - this.next(); - this.semicolon(); - return this.finishNode(e, "DebuggerStatement"); - } - parseHeaderExpression() { - this.expect(18); - const e = this.parseExpression(); - this.expect(19); - return e; - } - parseDoStatement(e) { - this.next(); - this.state.labels.push(pn); - e.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement("do")); - this.state.labels.pop(); - this.expect(91); - e.test = this.parseHeaderExpression(); - this.eat(21); - return this.finishNode(e, "DoWhileStatement"); - } - parseForStatement(e) { - this.next(); - this.state.labels.push(pn); - let t = -1; - this.isAwaitAllowed() && this.eatContextual("await") && (t = this.state.lastTokStart); - this.scope.enter(he); - this.expect(18); - if (this.match(21)) { - t > -1 && this.unexpected(t); - return this.parseFor(e, null); - } - const n = this.isContextual("let"); - const r = n && this.isLetKeyword(); - if (this.match(73) || this.match(74) || r) { - const n = this.startNode(); - const i = r ? "let" : this.state.value; - this.next(); - this.parseVar(n, !0, i); - this.finishNode(n, "VariableDeclaration"); - if ((this.match(57) || this.isContextual("of")) && 1 === n.declarations.length) return this.parseForIn(e, n, t); - t > -1 && this.unexpected(t); - return this.parseFor(e, n); - } - const i = this.match(5) && !this.state.containsEsc; - const s = new Ct(); - const a = this.parseExpression(!0, s); - const o = this.isContextual("of"); - o && (n ? this.raise(a.start, E.ForOfLet) : -1 === t && i && "Identifier" === a.type && "async" === a.name && this.raise(a.start, E.ForOfAsync)); - if (o || this.match(57)) { - this.toAssignable(a, !0); - const n = o ? "for-of statement" : "for-in statement"; - this.checkLVal(a, n); - return this.parseForIn(e, a, t); - } - this.checkExpressionErrors(s, !0); - t > -1 && this.unexpected(t); - return this.parseFor(e, a); - } - parseFunctionStatement(e, t, n) { - this.next(); - return this.parseFunction(e, hn | (n ? 0 : fn), t); - } - parseIfStatement(e) { - this.next(); - e.test = this.parseHeaderExpression(); - e.consequent = this.parseStatement("if"); - e.alternate = this.eat(65) ? this.parseStatement("if") : null; - return this.finishNode(e, "IfStatement"); - } - parseReturnStatement(e) { - this.prodParam.hasReturn || this.options.allowReturnOutsideFunction || this.raise(this.state.start, E.IllegalReturn); - this.next(); - if (this.isLineTerminator()) e.argument = null; else { - e.argument = this.parseExpression(); - this.semicolon(); - } - return this.finishNode(e, "ReturnStatement"); - } - parseSwitchStatement(e) { - this.next(); - e.discriminant = this.parseHeaderExpression(); - const t = e.cases = []; - this.expect(13); - this.state.labels.push(un); - this.scope.enter(he); - let n; - for (let e; !this.match(16); ) if (this.match(60) || this.match(64)) { - const r = this.match(60); - n && this.finishNode(n, "SwitchCase"); - t.push(n = this.startNode()); - n.consequent = []; - this.next(); - if (r) n.test = this.parseExpression(); else { - e && this.raise(this.state.lastTokStart, E.MultipleDefaultsInSwitch); - e = !0; - n.test = null; - } - this.expect(22); - } else n ? n.consequent.push(this.parseStatement(null)) : this.unexpected(); - this.scope.exit(); - n && this.finishNode(n, "SwitchCase"); - this.next(); - this.state.labels.pop(); - return this.finishNode(e, "SwitchStatement"); - } - parseThrowStatement(e) { - this.next(); - this.hasPrecedingLineBreak() && this.raise(this.state.lastTokEnd, E.NewlineAfterThrow); - e.argument = this.parseExpression(); - this.semicolon(); - return this.finishNode(e, "ThrowStatement"); - } - parseCatchClauseParam() { - const e = this.parseBindingAtom(); - const t = "Identifier" === e.type; - this.scope.enter(t ? ge : 0); - this.checkLVal(e, "catch clause", _e); - return e; - } - parseTryStatement(e) { - this.next(); - e.block = this.parseBlock(); - e.handler = null; - if (this.match(61)) { - const t = this.startNode(); - this.next(); - if (this.match(18)) { - this.expect(18); - t.param = this.parseCatchClauseParam(); - this.expect(19); - } else { - t.param = null; - this.scope.enter(he); - } - t.body = this.withSmartMixTopicForbiddingContext(() => this.parseBlock(!1, !1)); - this.scope.exit(); - e.handler = this.finishNode(t, "CatchClause"); - } - e.finalizer = this.eat(66) ? this.parseBlock() : null; - e.handler || e.finalizer || this.raise(e.start, E.NoCatchOrFinally); - return this.finishNode(e, "TryStatement"); - } - parseVarStatement(e, t) { - this.next(); - this.parseVar(e, !1, t); - this.semicolon(); - return this.finishNode(e, "VariableDeclaration"); - } - parseWhileStatement(e) { - this.next(); - e.test = this.parseHeaderExpression(); - this.state.labels.push(pn); - e.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement("while")); - this.state.labels.pop(); - return this.finishNode(e, "WhileStatement"); - } - parseWithStatement(e) { - this.state.strict && this.raise(this.state.start, E.StrictWith); - this.next(); - e.object = this.parseHeaderExpression(); - e.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement("with")); - return this.finishNode(e, "WithStatement"); - } - parseEmptyStatement(e) { - this.next(); - return this.finishNode(e, "EmptyStatement"); - } - parseLabeledStatement(e, t, n, r) { - for (const e of this.state.labels) e.name === t && this.raise(n.start, E.LabelRedeclaration, t); - const i = (s = this.state.type) >= 89 && s <= 91 ? "loop" : this.match(70) ? "switch" : null; - var s; - for (let t = this.state.labels.length - 1; t >= 0; t--) { - const n = this.state.labels[t]; - if (n.statementStart !== e.start) break; - n.statementStart = this.state.start; - n.kind = i; - } - this.state.labels.push({ - name: t, - kind: i, - statementStart: this.state.start - }); - e.body = this.parseStatement(r ? -1 === r.indexOf("label") ? r + "label" : r : "label"); - this.state.labels.pop(); - e.label = n; - return this.finishNode(e, "LabeledStatement"); - } - parseExpressionStatement(e, t) { - e.expression = t; - this.semicolon(); - return this.finishNode(e, "ExpressionStatement"); - } - parseBlock(e = !1, t = !0, n) { - const r = this.startNode(); - e && this.state.strictErrors.clear(); - this.expect(13); - t && this.scope.enter(he); - this.parseBlockBody(r, e, !1, 16, n); - t && this.scope.exit(); - return this.finishNode(r, "BlockStatement"); - } - isValidDirective(e) { - return "ExpressionStatement" === e.type && "StringLiteral" === e.expression.type && !e.expression.extra.parenthesized; - } - parseBlockBody(e, t, n, r, i) { - const s = e.body = []; - const a = e.directives = []; - this.parseBlockOrModuleBlockBody(s, t ? a : void 0, n, r, i); - } - parseBlockOrModuleBlockBody(e, t, n, r, i) { - const s = this.state.strict; - let a = !1; - let o = !1; - for (;!this.match(r); ) { - const r = this.parseStatement(null, n); - if (t && !o) { - if (this.isValidDirective(r)) { - const e = this.stmtToDirective(r); - t.push(e); - if (!a && "use strict" === e.value.value) { - a = !0; - this.setStrict(!0); - } - continue; - } - o = !0; - this.state.strictErrors.clear(); - } - e.push(r); - } - i && i.call(this, a); - s || this.setStrict(!1); - this.next(); - } - parseFor(e, t) { - e.init = t; - this.semicolon(!1); - e.test = this.match(21) ? null : this.parseExpression(); - this.semicolon(!1); - e.update = this.match(19) ? null : this.parseExpression(); - this.expect(19); - e.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement("for")); - this.scope.exit(); - this.state.labels.pop(); - return this.finishNode(e, "ForStatement"); - } - parseForIn(e, t, n) { - const r = this.match(57); - this.next(); - r ? n > -1 && this.unexpected(n) : e.await = n > -1; - "VariableDeclaration" !== t.type || null == t.declarations[0].init || r && !this.state.strict && "var" === t.kind && "Identifier" === t.declarations[0].id.type ? "AssignmentPattern" === t.type && this.raise(t.start, E.InvalidLhs, "for-loop") : this.raise(t.start, E.ForInOfLoopInitializer, r ? "for-in" : "for-of"); - e.left = t; - e.right = r ? this.parseExpression() : this.parseMaybeAssignAllowIn(); - this.expect(19); - e.body = this.withSmartMixTopicForbiddingContext(() => this.parseStatement("for")); - this.scope.exit(); - this.state.labels.pop(); - return this.finishNode(e, r ? "ForInStatement" : "ForOfStatement"); - } - parseVar(e, t, n) { - const r = e.declarations = []; - const i = this.hasPlugin("typescript"); - e.kind = n; - for (;;) { - const e = this.startNode(); - this.parseVarId(e, n); - if (this.eat(35)) e.init = t ? this.parseMaybeAssignDisallowIn() : this.parseMaybeAssignAllowIn(); else { - "const" !== n || this.match(57) || this.isContextual("of") ? "Identifier" === e.id.type || t && (this.match(57) || this.isContextual("of")) || this.raise(this.state.lastTokEnd, E.DeclarationMissingInitializer, "Complex binding patterns") : i || this.raise(this.state.lastTokEnd, E.DeclarationMissingInitializer, "Const declarations"); - e.init = null; - } - r.push(this.finishNode(e, "VariableDeclarator")); - if (!this.eat(20)) break; - } - return e; - } - parseVarId(e, t) { - e.id = this.parseBindingAtom(); - this.checkLVal(e.id, "variable declaration", "var" === t ? Le : _e, void 0, "var" !== t); - } - parseFunction(e, t = dn, n = !1) { - const r = t & hn; - const i = t & fn; - const s = !(!r || t & mn); - this.initFunction(e, n); - this.match(54) && i && this.raise(this.state.start, E.GeneratorInSingleStatementContext); - e.generator = this.eat(54); - r && (e.id = this.parseFunctionId(s)); - const a = this.state.maybeInArrowParameters; - this.state.maybeInArrowParameters = !1; - this.scope.enter(me); - this.prodParam.enter(At(n, e.generator)); - r || (e.id = this.parseFunctionId()); - this.parseFunctionParams(e, !1); - this.withSmartMixTopicForbiddingContext(() => { - this.parseFunctionBodyAndFinish(e, r ? "FunctionDeclaration" : "FunctionExpression"); - }); - this.prodParam.exit(); - this.scope.exit(); - r && !i && this.registerFunctionStatementId(e); - this.state.maybeInArrowParameters = a; - return e; - } - parseFunctionId(e) { - return e || this.match(5) ? this.parseIdentifier() : null; - } - parseFunctionParams(e, t) { - this.expect(18); - this.expressionScope.enter(new mt(ft)); - e.params = this.parseBindingList(19, 41, !1, t); - this.expressionScope.exit(); - } - registerFunctionStatementId(e) { - e.id && this.scope.declareName(e.id.name, this.state.strict || e.generator || e.async ? this.scope.treatFunctionsAsVar ? Le : _e : je, e.id.start); - } - parseClass(e, t, n) { - this.next(); - this.takeDecorators(e); - const r = this.state.strict; - this.state.strict = !0; - this.parseClassId(e, t, n); - this.parseClassSuper(e); - e.body = this.parseClassBody(!!e.superClass, r); - return this.finishNode(e, t ? "ClassDeclaration" : "ClassExpression"); - } - isClassProperty() { - return this.match(35) || this.match(21) || this.match(16); - } - isClassMethod() { - return this.match(18); - } - isNonstaticConstructor(e) { - return !(e.computed || e.static || "constructor" !== e.key.name && "constructor" !== e.key.value); - } - parseClassBody(e, t) { - this.classScope.enter(); - const n = { - hadConstructor: !1, - hadSuperClass: e - }; - let r = []; - const i = this.startNode(); - i.body = []; - this.expect(13); - this.withSmartMixTopicForbiddingContext(() => { - for (;!this.match(16); ) { - if (this.eat(21)) { - if (r.length > 0) throw this.raise(this.state.lastTokEnd, E.DecoratorSemicolon); - continue; - } - if (this.match(32)) { - r.push(this.parseDecorator()); - continue; - } - const e = this.startNode(); - if (r.length) { - e.decorators = r; - this.resetStartLocationFromNode(e, r[0]); - r = []; - } - this.parseClassMember(i, e, n); - "constructor" === e.kind && e.decorators && e.decorators.length > 0 && this.raise(e.start, E.DecoratorConstructor); - } - }); - this.state.strict = t; - this.next(); - if (r.length) throw this.raise(this.state.start, E.TrailingDecorator); - this.classScope.exit(); - return this.finishNode(i, "ClassBody"); - } - parseClassMemberFromModifier(e, t) { - const n = this.parseIdentifier(!0); - if (this.isClassMethod()) { - const r = t; - r.kind = "method"; - r.computed = !1; - r.key = n; - r.static = !1; - this.pushClassMethod(e, r, !1, !1, !1, !1); - return !0; - } - if (this.isClassProperty()) { - const r = t; - r.computed = !1; - r.key = n; - r.static = !1; - e.body.push(this.parseClassProperty(r)); - return !0; - } - this.resetPreviousNodeTrailingComments(n); - return !1; - } - parseClassMember(e, t, n) { - const r = this.isContextual("static"); - if (r) { - if (this.parseClassMemberFromModifier(e, t)) return; - if (this.eat(13)) { - this.parseClassStaticBlock(e, t); - return; - } - } - this.parseClassMemberWithIsStatic(e, t, n, r); - } - parseClassMemberWithIsStatic(e, t, n, r) { - const i = t; - const s = t; - const a = t; - const o = t; - const l = i; - const c = i; - t.static = r; - if (this.eat(54)) { - l.kind = "method"; - const t = this.match(6); - this.parseClassElementName(l); - if (t) { - this.pushClassPrivateMethod(e, s, !0, !1); - return; - } - this.isNonstaticConstructor(i) && this.raise(i.key.start, E.ConstructorIsGenerator); - this.pushClassMethod(e, i, !0, !1, !1, !1); - return; - } - const p = this.match(5) && !this.state.containsEsc; - const u = this.match(6); - const d = this.parseClassElementName(t); - const h = this.state.start; - this.parsePostMemberNameModifiers(c); - if (this.isClassMethod()) { - l.kind = "method"; - if (u) { - this.pushClassPrivateMethod(e, s, !1, !1); - return; - } - const r = this.isNonstaticConstructor(i); - let a = !1; - if (r) { - i.kind = "constructor"; - n.hadConstructor && !this.hasPlugin("typescript") && this.raise(d.start, E.DuplicateConstructor); - r && this.hasPlugin("typescript") && t.override && this.raise(d.start, E.OverrideOnConstructor); - n.hadConstructor = !0; - a = n.hadSuperClass; - } - this.pushClassMethod(e, i, !1, !1, r, a); - } else if (this.isClassProperty()) u ? this.pushClassPrivateProperty(e, o) : this.pushClassProperty(e, a); else if (p && "async" === d.name && !this.isLineTerminator()) { - this.resetPreviousNodeTrailingComments(d); - const t = this.eat(54); - c.optional && this.unexpected(h); - l.kind = "method"; - const n = this.match(6); - this.parseClassElementName(l); - this.parsePostMemberNameModifiers(c); - if (n) this.pushClassPrivateMethod(e, s, t, !0); else { - this.isNonstaticConstructor(i) && this.raise(i.key.start, E.ConstructorIsAsync); - this.pushClassMethod(e, i, t, !0, !1, !1); - } - } else if (!p || "get" !== d.name && "set" !== d.name || this.match(54) && this.isLineTerminator()) this.isLineTerminator() ? u ? this.pushClassPrivateProperty(e, o) : this.pushClassProperty(e, a) : this.unexpected(); else { - this.resetPreviousNodeTrailingComments(d); - l.kind = d.name; - const t = this.match(6); - this.parseClassElementName(i); - if (t) this.pushClassPrivateMethod(e, s, !1, !1); else { - this.isNonstaticConstructor(i) && this.raise(i.key.start, E.ConstructorIsAccessor); - this.pushClassMethod(e, i, !1, !1, !1, !1); - } - this.checkGetterSetterParams(i); - } - } - parseClassElementName(e) { - const {type: t, value: n, start: r} = this.state; - 5 !== t && 4 !== t || !e.static || "prototype" !== n || this.raise(r, E.StaticPrototype); - 6 === t && "constructor" === n && this.raise(r, E.ConstructorClassPrivateField); - return this.parsePropertyName(e, !0); - } - parseClassStaticBlock(e, t) { - var n; - this.expectPlugin("classStaticBlock", t.start); - this.scope.enter(Se | xe | Te); - const r = this.state.labels; - this.state.labels = []; - this.prodParam.enter(bt); - const i = t.body = []; - this.parseBlockOrModuleBlockBody(i, void 0, !1, 16); - this.prodParam.exit(); - this.scope.exit(); - this.state.labels = r; - e.body.push(this.finishNode(t, "StaticBlock")); - null != (n = t.decorators) && n.length && this.raise(t.start, E.DecoratorStaticBlock); - } - pushClassProperty(e, t) { - t.computed || "constructor" !== t.key.name && "constructor" !== t.key.value || this.raise(t.key.start, E.ConstructorClassField); - e.body.push(this.parseClassProperty(t)); - } - pushClassPrivateProperty(e, t) { - const n = this.parseClassPrivateProperty(t); - e.body.push(n); - this.classScope.declarePrivateName(this.getPrivateNameSV(n.key), Qe, n.key.start); - } - pushClassMethod(e, t, n, r, i, s) { - e.body.push(this.parseMethod(t, n, r, i, s, "ClassMethod", !0)); - } - pushClassPrivateMethod(e, t, n, r) { - const i = this.parseMethod(t, n, r, !1, !1, "ClassPrivateMethod", !0); - e.body.push(i); - const s = "get" === i.kind ? i.static ? Ge : $e : "set" === i.kind ? i.static ? He : ze : Qe; - this.classScope.declarePrivateName(this.getPrivateNameSV(i.key), s, i.key.start); - } - parsePostMemberNameModifiers(e) {} - parseClassPrivateProperty(e) { - this.parseInitializer(e); - this.semicolon(); - return this.finishNode(e, "ClassPrivateProperty"); - } - parseClassProperty(e) { - this.parseInitializer(e); - this.semicolon(); - return this.finishNode(e, "ClassProperty"); - } - parseInitializer(e) { - this.scope.enter(Se | Te); - this.expressionScope.enter(Tt()); - this.prodParam.enter(bt); - e.value = this.eat(35) ? this.parseMaybeAssignAllowIn() : null; - this.expressionScope.exit(); - this.prodParam.exit(); - this.scope.exit(); - } - parseClassId(e, t, n, r = Me) { - if (this.match(5)) { - e.id = this.parseIdentifier(); - t && this.checkLVal(e.id, "class name", r); - } else n || !t ? e.id = null : this.unexpected(null, E.MissingClassName); - } - parseClassSuper(e) { - e.superClass = this.eat(80) ? this.parseExprSubscripts() : null; - } - parseExport(e) { - const t = this.maybeParseExportDefaultSpecifier(e); - const n = !t || this.eat(20); - const r = n && this.eatExportStar(e); - const i = r && this.maybeParseExportNamespaceSpecifier(e); - const s = n && (!i || this.eat(20)); - const a = t || r; - if (r && !i) { - t && this.unexpected(); - this.parseExportFrom(e, !0); - return this.finishNode(e, "ExportAllDeclaration"); - } - const o = this.maybeParseExportNamedSpecifiers(e); - if (t && n && !r && !o || i && s && !o) throw this.unexpected(null, 13); - let l; - if (a || o) { - l = !1; - this.parseExportFrom(e, a); - } else l = this.maybeParseExportDeclaration(e); - if (a || o || l) { - this.checkExport(e, !0, !1, !!e.source); - return this.finishNode(e, "ExportNamedDeclaration"); - } - if (this.eat(64)) { - e.declaration = this.parseExportDefaultExpression(); - this.checkExport(e, !0, !0); - return this.finishNode(e, "ExportDefaultDeclaration"); - } - throw this.unexpected(null, 13); - } - eatExportStar(e) { - return this.eat(54); - } - maybeParseExportDefaultSpecifier(e) { - if (this.isExportDefaultSpecifier()) { - this.expectPlugin("exportDefaultFrom"); - const t = this.startNode(); - t.exported = this.parseIdentifier(!0); - e.specifiers = [ this.finishNode(t, "ExportDefaultSpecifier") ]; - return !0; - } - return !1; - } - maybeParseExportNamespaceSpecifier(e) { - if (this.isContextual("as")) { - e.specifiers || (e.specifiers = []); - const t = this.startNodeAt(this.state.lastTokStart, this.state.lastTokStartLoc); - this.next(); - t.exported = this.parseModuleExportName(); - e.specifiers.push(this.finishNode(t, "ExportNamespaceSpecifier")); - return !0; - } - return !1; - } - maybeParseExportNamedSpecifiers(e) { - if (this.match(13)) { - e.specifiers || (e.specifiers = []); - e.specifiers.push(...this.parseExportSpecifiers()); - e.source = null; - e.declaration = null; - return !0; - } - return !1; - } - maybeParseExportDeclaration(e) { - if (this.shouldParseExportDeclaration()) { - e.specifiers = []; - e.source = null; - e.declaration = this.parseExportDeclaration(e); - return !0; - } - return !1; - } - isAsyncFunction() { - if (!this.isContextual("async")) return !1; - const e = this.nextTokenStart(); - return !l.test(this.input.slice(this.state.pos, e)) && this.isUnparsedContextual(e, "function"); - } - parseExportDefaultExpression() { - const e = this.startNode(); - const t = this.isAsyncFunction(); - if (this.match(67) || t) { - this.next(); - t && this.next(); - return this.parseFunction(e, hn | mn, t); - } - if (this.match(79)) return this.parseClass(e, !0, !0); - if (this.match(32)) { - this.hasPlugin("decorators") && this.getPluginOption("decorators", "decoratorsBeforeExport") && this.raise(this.state.start, E.DecoratorBeforeExport); - this.parseDecorators(!1); - return this.parseClass(e, !0, !0); - } - if (this.match(74) || this.match(73) || this.isLet()) throw this.raise(this.state.start, E.UnsupportedDefaultExport); - { - const e = this.parseMaybeAssignAllowIn(); - this.semicolon(); - return e; - } - } - parseExportDeclaration(e) { - return this.parseStatement(null); - } - isExportDefaultSpecifier() { - if (this.match(5)) { - const e = this.state.value; - if ("async" === e && !this.state.containsEsc || "let" === e) return !1; - if (("type" === e || "interface" === e) && !this.state.containsEsc) { - const e = this.lookahead(); - if (5 === e.type && "from" !== e.value || 13 === e.type) { - this.expectOnePlugin([ "flow", "typescript" ]); - return !1; - } - } - } else if (!this.match(64)) return !1; - const e = this.nextTokenStart(); - const t = this.isUnparsedContextual(e, "from"); - if (44 === this.input.charCodeAt(e) || this.match(5) && t) return !0; - if (this.match(64) && t) { - const t = this.input.charCodeAt(this.nextTokenStartSince(e + 4)); - return 34 === t || 39 === t; - } - return !1; - } - parseExportFrom(e, t) { - if (this.eatContextual("from")) { - e.source = this.parseImportSource(); - this.checkExport(e); - const t = this.maybeParseImportAssertions(); - t && (e.assertions = t); - } else t ? this.unexpected() : e.source = null; - this.semicolon(); - } - shouldParseExportDeclaration() { - const {type: e} = this.state; - if (32 === e) { - this.expectOnePlugin([ "decorators", "decorators-legacy" ]); - if (this.hasPlugin("decorators")) { - if (!this.getPluginOption("decorators", "decoratorsBeforeExport")) return !0; - this.unexpected(this.state.start, E.DecoratorBeforeExport); - } - } - return 73 === e || 74 === e || 67 === e || 79 === e || this.isLet() || this.isAsyncFunction(); - } - checkExport(e, t, n, r) { - if (t) if (n) { - this.checkDuplicateExports(e, "default"); - if (this.hasPlugin("exportDefaultFrom")) { - var i; - const t = e.declaration; - "Identifier" !== t.type || "from" !== t.name || t.end - t.start != 4 || null != (i = t.extra) && i.parenthesized || this.raise(t.start, E.ExportDefaultFromAsIdentifier); - } - } else if (e.specifiers && e.specifiers.length) for (const t of e.specifiers) { - const {exported: e} = t; - const n = "Identifier" === e.type ? e.name : e.value; - this.checkDuplicateExports(t, n); - if (!r && t.local) { - const {local: e} = t; - if ("Identifier" !== e.type) this.raise(t.start, E.ExportBindingIsString, e.value, n); else { - this.checkReservedWord(e.name, e.start, !0, !1); - this.scope.checkLocalExport(e); - } - } - } else if (e.declaration) if ("FunctionDeclaration" === e.declaration.type || "ClassDeclaration" === e.declaration.type) { - const t = e.declaration.id; - if (!t) throw new Error("Assertion failure"); - this.checkDuplicateExports(e, t.name); - } else if ("VariableDeclaration" === e.declaration.type) for (const t of e.declaration.declarations) this.checkDeclaration(t.id); - if (this.state.decoratorStack[this.state.decoratorStack.length - 1].length) throw this.raise(e.start, E.UnsupportedDecoratorExport); - } - checkDeclaration(e) { - if ("Identifier" === e.type) this.checkDuplicateExports(e, e.name); else if ("ObjectPattern" === e.type) for (const t of e.properties) this.checkDeclaration(t); else if ("ArrayPattern" === e.type) for (const t of e.elements) t && this.checkDeclaration(t); else "ObjectProperty" === e.type ? this.checkDeclaration(e.value) : "RestElement" === e.type ? this.checkDeclaration(e.argument) : "AssignmentPattern" === e.type && this.checkDeclaration(e.left); - } - checkDuplicateExports(e, t) { - this.exportedIdentifiers.has(t) && this.raise(e.start, "default" === t ? E.DuplicateDefaultExport : E.DuplicateExport, t); - this.exportedIdentifiers.add(t); - } - parseExportSpecifiers() { - const e = []; - let t = !0; - this.expect(13); - for (;!this.eat(16); ) { - if (t) t = !1; else { - this.expect(20); - if (this.eat(16)) break; - } - const n = this.startNode(); - const r = this.match(4); - const i = this.parseModuleExportName(); - n.local = i; - this.eatContextual("as") ? n.exported = this.parseModuleExportName() : n.exported = r ? kt(i) : Nt(i); - e.push(this.finishNode(n, "ExportSpecifier")); - } - return e; - } - parseModuleExportName() { - if (this.match(4)) { - const e = this.parseStringLiteral(this.state.value); - const t = e.value.match(yn); - t && this.raise(e.start, E.ModuleExportNameHasLoneSurrogate, t[0].charCodeAt(0).toString(16)); - return e; - } - return this.parseIdentifier(!0); - } - parseImport(e) { - e.specifiers = []; - if (!this.match(4)) { - const t = !this.maybeParseDefaultImportSpecifier(e) || this.eat(20); - const n = t && this.maybeParseStarImportSpecifier(e); - t && !n && this.parseNamedImportSpecifiers(e); - this.expectContextual("from"); - } - e.source = this.parseImportSource(); - const t = this.maybeParseImportAssertions(); - if (t) e.assertions = t; else { - const t = this.maybeParseModuleAttributes(); - t && (e.attributes = t); - } - this.semicolon(); - return this.finishNode(e, "ImportDeclaration"); - } - parseImportSource() { - this.match(4) || this.unexpected(); - return this.parseExprAtom(); - } - shouldParseDefaultImport(e) { - return this.match(5); - } - parseImportSpecifierLocal(e, t, n, r) { - t.local = this.parseIdentifier(); - this.checkLVal(t.local, r, _e); - e.specifiers.push(this.finishNode(t, n)); - } - parseAssertEntries() { - const e = []; - const t = new Set(); - do { - if (this.match(16)) break; - const n = this.startNode(); - const r = this.state.value; - t.has(r) && this.raise(this.state.start, E.ModuleAttributesWithDuplicateKeys, r); - t.add(r); - this.match(4) ? n.key = this.parseStringLiteral(r) : n.key = this.parseIdentifier(!0); - this.expect(22); - if (!this.match(4)) throw this.unexpected(this.state.start, E.ModuleAttributeInvalidValue); - n.value = this.parseStringLiteral(this.state.value); - this.finishNode(n, "ImportAttribute"); - e.push(n); - } while (this.eat(20)); - return e; - } - maybeParseModuleAttributes() { - if (!this.match(75) || this.hasPrecedingLineBreak()) return this.hasPlugin("moduleAttributes") ? [] : null; - this.expectPlugin("moduleAttributes"); - this.next(); - const e = []; - const t = new Set(); - do { - const n = this.startNode(); - n.key = this.parseIdentifier(!0); - "type" !== n.key.name && this.raise(n.key.start, E.ModuleAttributeDifferentFromType, n.key.name); - t.has(n.key.name) && this.raise(n.key.start, E.ModuleAttributesWithDuplicateKeys, n.key.name); - t.add(n.key.name); - this.expect(22); - if (!this.match(4)) throw this.unexpected(this.state.start, E.ModuleAttributeInvalidValue); - n.value = this.parseStringLiteral(this.state.value); - this.finishNode(n, "ImportAttribute"); - e.push(n); - } while (this.eat(20)); - return e; - } - maybeParseImportAssertions() { - if (!this.isContextual("assert") || this.hasPrecedingLineBreak()) return this.hasPlugin("importAssertions") ? [] : null; - this.expectPlugin("importAssertions"); - this.next(); - this.eat(13); - const e = this.parseAssertEntries(); - this.eat(16); - return e; - } - maybeParseDefaultImportSpecifier(e) { - if (this.shouldParseDefaultImport(e)) { - this.parseImportSpecifierLocal(e, this.startNode(), "ImportDefaultSpecifier", "default import specifier"); - return !0; - } - return !1; - } - maybeParseStarImportSpecifier(e) { - if (this.match(54)) { - const t = this.startNode(); - this.next(); - this.expectContextual("as"); - this.parseImportSpecifierLocal(e, t, "ImportNamespaceSpecifier", "import namespace specifier"); - return !0; - } - return !1; - } - parseNamedImportSpecifiers(e) { - let t = !0; - this.expect(13); - for (;!this.eat(16); ) { - if (t) t = !1; else { - if (this.eat(22)) throw this.raise(this.state.start, E.DestructureNamedImport); - this.expect(20); - if (this.eat(16)) break; - } - this.parseImportSpecifier(e); - } - } - parseImportSpecifier(e) { - const t = this.startNode(); - const n = this.match(4); - t.imported = this.parseModuleExportName(); - if (this.eatContextual("as")) t.local = this.parseIdentifier(); else { - const {imported: e} = t; - if (n) throw this.raise(t.start, E.ImportBindingIsString, e.value); - this.checkReservedWord(e.name, t.start, !0, !0); - t.local = Nt(e); - } - this.checkLVal(t.local, "import specifier", _e); - e.specifiers.push(this.finishNode(t, "ImportSpecifier")); - } - isThisParam(e) { - return "Identifier" === e.type && "this" === e.name; - } - } - class bn extends Tn { - constructor(e, t) { - super(e = function(e) { - const t = {}; - for (const n of Object.keys(sn)) t[n] = e && null != e[n] ? e[n] : sn[n]; - return t; - }(e), t); - this.options = e; - this.initializeScopes(); - this.plugins = function(e) { - const t = new Map(); - for (const n of e) { - const [e, r] = Array.isArray(n) ? n : [ n, {} ]; - t.has(e) || t.set(e, r || {}); - } - return t; - }(this.options.plugins); - this.filename = e.sourceFilename; - } - getScopeHandler() { - return et; - } - parse() { - this.enterInitialScopes(); - const e = this.startNode(); - const t = this.startNode(); - this.nextToken(); - e.errors = null; - this.parseTopLevel(e, t); - e.errors = this.state.errors; - return e; - } - } - const Sn = function(e) { - const t = {}; - for (const n of Object.keys(e)) t[n] = J(e[n]); - return t; - }(V); - function xn(e, t) { - let n = bn; - if (null != e && e.plugins) { - !function(e) { - if (zt(e, "decorators")) { - if (zt(e, "decorators-legacy")) throw new Error("Cannot use the decorators and decorators-legacy plugin together"); - const t = Qt(e, "decorators", "decoratorsBeforeExport"); - if (null == t) throw new Error("The 'decorators' plugin requires a 'decoratorsBeforeExport' option, whose value must be a boolean. If you are migrating from Babylon/Babel 6 or want to use the old decorators proposal, you should use the 'decorators-legacy' plugin instead of 'decorators'."); - if ("boolean" != typeof t) throw new Error("'decoratorsBeforeExport' must be a boolean."); - } - if (zt(e, "flow") && zt(e, "typescript")) throw new Error("Cannot combine flow and typescript plugins."); - if (zt(e, "placeholders") && zt(e, "v8intrinsic")) throw new Error("Cannot combine placeholders and v8intrinsic plugins."); - if (zt(e, "pipelineOperator")) { - const t = Qt(e, "pipelineOperator", "proposal"); - if (!Zt.includes(t)) { - const e = Zt.map(e => `"${e}"`).join(", "); - throw new Error(`"pipelineOperator" requires "proposal" option whose value must be one of: ${e}.`); - } - const n = zt(e, "recordAndTuple") && "hash" === Qt(e, "recordAndTuple", "syntaxType"); - if ("hack" === t) { - if (zt(e, "placeholders")) throw new Error("Cannot combine placeholders plugin and Hack-style pipes."); - if (zt(e, "v8intrinsic")) throw new Error("Cannot combine v8intrinsic plugin and Hack-style pipes."); - const t = Qt(e, "pipelineOperator", "topicToken"); - if (!en.includes(t)) { - const e = en.map(e => `"${e}"`).join(", "); - throw new Error(`"pipelineOperator" in "proposal": "hack" mode also requires a "topicToken" option whose value must be one of: ${e}.`); - } - if ("#" === t && n) throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "hack", topicToken: "#" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.'); - } else if ("smart" === t && n) throw new Error('Plugin conflict between `["pipelineOperator", { proposal: "smart" }]` and `["recordAndtuple", { syntaxType: "hash"}]`.'); - } - if (zt(e, "moduleAttributes")) { - if (zt(e, "importAssertions")) throw new Error("Cannot combine importAssertions and moduleAttributes plugins."); - if ("may-2020" !== Qt(e, "moduleAttributes", "version")) throw new Error("The 'moduleAttributes' plugin requires a 'version' option, representing the last proposal update. Currently, the only supported value is 'may-2020'."); - } - if (zt(e, "recordAndTuple") && !tn.includes(Qt(e, "recordAndTuple", "syntaxType"))) throw new Error("'recordAndTuple' requires 'syntaxType' option whose value should be one of: " + tn.map(e => `'${e}'`).join(", ")); - if (zt(e, "asyncDoExpressions") && !zt(e, "doExpressions")) { - const e = new Error("'asyncDoExpressions' requires 'doExpressions', please add 'doExpressions' to parser plugins."); - e.missingPlugins = "doExpressions"; - throw e; - } - }(e.plugins); - n = function(e) { - const t = rn.filter(t => zt(e, t)); - const n = t.join("/"); - let r = En[n]; - if (!r) { - r = bn; - for (const e of t) r = nn[e](r); - En[n] = r; - } - return r; - }(e.plugins); - } - return new n(e, t); - } - const En = {}; - n.parse = function(e, t) { - var n; - if ("unambiguous" !== (null == (n = t) ? void 0 : n.sourceType)) return xn(t, e).parse(); - t = Object.assign({}, t); - try { - t.sourceType = "module"; - const n = xn(t, e); - const r = n.parse(); - if (n.sawUnambiguousESM) return r; - if (n.ambiguousScriptDifferentAst) try { - t.sourceType = "script"; - return xn(t, e).parse(); - } catch (e) {} else r.program.sourceType = "script"; - return r; - } catch (n) { - try { - t.sourceType = "script"; - return xn(t, e).parse(); - } catch (e) {} - throw n; - } - }; - n.parseExpression = function(e, t) { - const n = xn(t, e); - n.options.strictMode && (n.state.strict = !0); - return n.getExpression(); - }; - n.tokTypes = Sn; - }, {} ], - 31: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function e(t, n) { - const l = new WeakMap(); - const c = new WeakMap(); - const p = n || (0, r.validate)(null); - return Object.assign((n, ...a) => { - if ("string" == typeof n) { - if (a.length > 1) throw new Error("Unexpected extra params."); - return o((0, i.default)(t, n, (0, r.merge)(p, (0, r.validate)(a[0])))); - } - if (Array.isArray(n)) { - let e = l.get(n); - if (!e) { - e = (0, s.default)(t, n, p); - l.set(n, e); - } - return o(e(a)); - } - if ("object" == typeof n && n) { - if (a.length > 0) throw new Error("Unexpected extra params."); - return e(t, (0, r.merge)(p, (0, r.validate)(n))); - } - throw new Error(`Unexpected template param ${typeof n}`); - }, { - ast: (e, ...n) => { - if ("string" == typeof e) { - if (n.length > 1) throw new Error("Unexpected extra params."); - return (0, i.default)(t, e, (0, r.merge)((0, r.merge)(p, (0, r.validate)(n[0])), a))(); - } - if (Array.isArray(e)) { - let i = c.get(e); - if (!i) { - i = (0, s.default)(t, e, (0, r.merge)(p, a)); - c.set(e, i); - } - return i(n)(); - } - throw new Error(`Unexpected template param ${typeof e}`); - } - }); - }; - r = e("./options"); - i = e("./string"); - s = e("./literal"); - const a = (0, r.validate)({ - placeholderPattern: !1 - }); - function o(e) { - let t = ""; - try { - throw new Error(); - } catch (e) { - e.stack && (t = e.stack.split("\n").slice(3).join("\n")); - } - return n => { - try { - return e(n); - } catch (e) { - e.stack += `\n =============\n${t}`; - throw e; - } - }; - } - }, { - "./literal": 34, - "./options": 35, - "./string": 38 - } ], - 32: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.program = n.expression = n.statement = n.statements = n.smart = void 0; - var r = e("@babel/types"); - const {assertExpressionStatement: i} = r; - function s(e) { - return { - code: e => `/* @babel/template */;\n${e}`, - validate: () => {}, - unwrap: t => e(t.program.body.slice(1)) - }; - } - const a = s(e => e.length > 1 ? e : e[0]); - n.smart = a; - const o = s(e => e); - n.statements = o; - const l = s(e => { - if (0 === e.length) throw new Error("Found nothing to return."); - if (e.length > 1) throw new Error("Found multiple statements but wanted one"); - return e[0]; - }); - n.statement = l; - const c = { - code: e => `(\n${e}\n)`, - validate: e => { - if (e.program.body.length > 1) throw new Error("Found multiple statements but wanted one"); - if (0 === c.unwrap(e).start) throw new Error("Parse result included parens."); - }, - unwrap: ({program: e}) => { - const [t] = e.body; - i(t); - return t.expression; - } - }; - n.expression = c; - n.program = { - code: e => e, - validate: () => {}, - unwrap: e => e.program - }; - }, { - "@babel/types": 108 - } ], - 33: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = n.program = n.expression = n.statements = n.statement = n.smart = void 0; - r = e("./formatters"); - const a = (0, (i = e("./builder")).default)(r.smart); - n.smart = a; - const o = (0, i.default)(r.statement); - n.statement = o; - const l = (0, i.default)(r.statements); - n.statements = l; - const c = (0, i.default)(r.expression); - n.expression = c; - const p = (0, i.default)(r.program); - n.program = p; - s = Object.assign(a.bind(void 0), { - smart: a, - statement: o, - statements: l, - expression: c, - program: p, - ast: a.ast - }); - n.default = s; - }, { - "./builder": 31, - "./formatters": 32 - } ], - 34: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - const {metadata: o, names: l} = function(e, t, n) { - let r; - let s; - let o; - let l = ""; - do { - const c = a(t, l += "$"); - r = c.names; - s = new Set(r); - o = (0, i.default)(e, e.code(c.code), { - parser: n.parser, - placeholderWhitelist: new Set(c.names.concat(n.placeholderWhitelist ? Array.from(n.placeholderWhitelist) : [])), - placeholderPattern: n.placeholderPattern, - preserveComments: n.preserveComments, - syntacticPlaceholders: n.syntacticPlaceholders - }); - } while (o.placeholders.some(e => e.isDuplicate && s.has(e.name))); - return { - metadata: o, - names: r - }; - }(e, t, n); - return t => { - const n = {}; - t.forEach((e, t) => { - n[l[t]] = e; - }); - return t => { - const i = (0, r.normalizeReplacements)(t); - i && Object.keys(i).forEach(e => { - if (Object.prototype.hasOwnProperty.call(n, e)) throw new Error("Unexpected replacement overlap."); - }); - return e.unwrap((0, s.default)(o, i ? Object.assign(i, n) : n)); - }; - }; - }; - r = e("./options"); - i = e("./parse"); - s = e("./populate"); - function a(e, t) { - const n = []; - let r = e[0]; - for (let i = 1; i < e.length; i++) { - const s = `${t}${i - 1}`; - n.push(s); - r += s + e[i]; - } - return { - names: n, - code: r - }; - } - }, { - "./options": 35, - "./parse": 36, - "./populate": 37 - } ], - 35: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.merge = function(e, t) { - const {placeholderWhitelist: n = e.placeholderWhitelist, placeholderPattern: r = e.placeholderPattern, preserveComments: i = e.preserveComments, syntacticPlaceholders: s = e.syntacticPlaceholders} = t; - return { - parser: Object.assign({}, e.parser, t.parser), - placeholderWhitelist: n, - placeholderPattern: r, - preserveComments: i, - syntacticPlaceholders: s - }; - }; - n.validate = function(e) { - if (null != e && "object" != typeof e) throw new Error("Unknown template options."); - const t = e || {}, {placeholderWhitelist: n, placeholderPattern: i, preserveComments: s, syntacticPlaceholders: a} = t, o = function(e, t) { - var n, r, i, s; - if (null == e) return {}; - n = {}; - r = Object.keys(e); - for (s = 0; s < r.length; s++) { - i = r[s]; - t.indexOf(i) >= 0 || (n[i] = e[i]); - } - return n; - }(t, r); - if (null != n && !(n instanceof Set)) throw new Error("'.placeholderWhitelist' must be a Set, null, or undefined"); - if (null != i && !(i instanceof RegExp) && !1 !== i) throw new Error("'.placeholderPattern' must be a RegExp, false, null, or undefined"); - if (null != s && "boolean" != typeof s) throw new Error("'.preserveComments' must be a boolean, null, or undefined"); - if (null != a && "boolean" != typeof a) throw new Error("'.syntacticPlaceholders' must be a boolean, null, or undefined"); - if (!0 === a && (null != n || null != i)) throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'"); - return { - parser: o, - placeholderWhitelist: n || void 0, - placeholderPattern: null == i ? void 0 : i, - preserveComments: null == s ? void 0 : s, - syntacticPlaceholders: null == a ? void 0 : a - }; - }; - n.normalizeReplacements = function(e) { - if (Array.isArray(e)) return e.reduce((e, t, n) => { - e["$" + n] = t; - return e; - }, {}); - if ("object" == typeof e || null == e) return e || void 0; - throw new Error("Template replacements must be an array, object, null, or undefined"); - }; - const r = [ "placeholderWhitelist", "placeholderPattern", "preserveComments", "syntacticPlaceholders" ]; - }, {} ], - 36: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - const {placeholderWhitelist: r, placeholderPattern: a, preserveComments: o, syntacticPlaceholders: l} = n; - const c = function(e, t, n) { - const r = (t.plugins || []).slice(); - !1 !== n && r.push("placeholders"); - t = Object.assign({ - allowReturnOutsideFunction: !0, - allowSuperOutsideMethod: !0, - sourceType: "module" - }, t, { - plugins: r - }); - try { - return (0, i.parse)(e, t); - } catch (t) { - const n = t.loc; - if (n) { - t.message += "\n" + (0, s.codeFrameColumns)(e, { - start: n - }); - t.code = "BABEL_TEMPLATE_PARSE_ERROR"; - } - throw t; - } - }(t, n.parser, l); - m(c, { - preserveComments: o - }); - e.validate(c); - const p = { - placeholders: [], - placeholderNames: new Set() - }; - const u = { - placeholders: [], - placeholderNames: new Set() - }; - const d = { - value: void 0 - }; - y(c, T, { - syntactic: p, - legacy: u, - isLegacyRef: d, - placeholderWhitelist: r, - placeholderPattern: a, - syntacticPlaceholders: l - }); - return Object.assign({ - ast: c - }, d.value ? u : p); - }; - r = e("@babel/types"); - i = e("@babel/parser"); - s = e("@babel/code-frame"); - const {isCallExpression: a, isExpressionStatement: o, isFunction: l, isIdentifier: c, isJSXIdentifier: p, isNewExpression: u, isPlaceholder: d, isStatement: h, isStringLiteral: f, removePropertiesDeep: m, traverse: y} = r; - const g = /^[_$A-Z0-9]+$/; - function T(e, t, n) { - var r; - let i; - if (d(e)) { - if (!1 === n.syntacticPlaceholders) throw new Error("%%foo%%-style placeholders can't be used when '.syntacticPlaceholders' is false."); - i = e.name.name; - n.isLegacyRef.value = !1; - } else { - if (!1 === n.isLegacyRef.value || n.syntacticPlaceholders) return; - if (c(e) || p(e)) { - i = e.name; - n.isLegacyRef.value = !0; - } else { - if (!f(e)) return; - i = e.value; - n.isLegacyRef.value = !0; - } - } - if (!n.isLegacyRef.value && (null != n.placeholderPattern || null != n.placeholderWhitelist)) throw new Error("'.placeholderWhitelist' and '.placeholderPattern' aren't compatible with '.syntacticPlaceholders: true'"); - if (n.isLegacyRef.value && (!1 === n.placeholderPattern || !(n.placeholderPattern || g).test(i)) && (null == (r = n.placeholderWhitelist) || !r.has(i))) return; - t = t.slice(); - const {node: s, key: m} = t[t.length - 1]; - let y; - if (f(e) || d(e, { - expectedNode: "StringLiteral" - })) y = "string"; else if (u(s) && "arguments" === m || a(s) && "arguments" === m || l(s) && "params" === m) y = "param"; else if (o(s) && !d(e)) { - y = "statement"; - t = t.slice(0, -1); - } else y = h(e) && d(e) ? "statement" : "other"; - const {placeholders: T, placeholderNames: b} = n.isLegacyRef.value ? n.legacy : n.syntactic; - T.push({ - name: i, - type: y, - resolve: e => (function(e, t) { - let n = e; - for (let e = 0; e < t.length - 1; e++) { - const {key: r, index: i} = t[e]; - n = void 0 === i ? n[r] : n[r][i]; - } - const {key: r, index: i} = t[t.length - 1]; - return { - parent: n, - key: r, - index: i - }; - })(e, t), - isDuplicate: b.has(i) - }); - b.add(i); - } - }, { - "@babel/code-frame": 2, - "@babel/parser": 30, - "@babel/types": 108 - } ], - 37: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - const n = s(e.ast); - if (t) { - e.placeholders.forEach(e => { - if (!Object.prototype.hasOwnProperty.call(t, e.name)) { - const t = e.name; - throw new Error(`Error: No substitution given for "${t}". If this is not meant to be a\n placeholder you may want to consider passing one of the following options to @babel/template:\n - { placeholderPattern: false, placeholderWhitelist: new Set(['${t}'])}\n - { placeholderPattern: /^${t}$/ }`); - } - }); - Object.keys(t).forEach(t => { - if (!e.placeholderNames.has(t)) throw new Error(`Unknown substitution "${t}" given`); - }); - } - e.placeholders.slice().reverse().forEach(e => { - try { - !function(e, t, n) { - e.isDuplicate && (Array.isArray(n) ? n = n.map(e => s(e)) : "object" == typeof n && (n = s(n))); - const {parent: r, key: h, index: f} = e.resolve(t); - if ("string" === e.type) { - "string" == typeof n && (n = u(n)); - if (!n || !p(n)) throw new Error("Expected string substitution"); - } else if ("statement" === e.type) { - if (void 0 === f) n ? Array.isArray(n) ? n = i(n) : "string" == typeof n ? n = o(l(n)) : c(n) || (n = o(n)) : n = a(); else if (n && !Array.isArray(n)) { - "string" == typeof n && (n = l(n)); - c(n) || (n = o(n)); - } - } else if ("param" === e.type) { - "string" == typeof n && (n = l(n)); - if (void 0 === f) throw new Error("Assertion failure."); - } else { - "string" == typeof n && (n = l(n)); - if (Array.isArray(n)) throw new Error("Cannot replace single expression with an array."); - } - if (void 0 === f) { - d(r, h, n); - r[h] = n; - } else { - const t = r[h].slice(); - "statement" === e.type || "param" === e.type ? null == n ? t.splice(f, 1) : Array.isArray(n) ? t.splice(f, 1, ...n) : t[f] = n : t[f] = n; - d(r, h, t); - r[h] = t; - } - }(e, n, t && t[e.name] || null); - } catch (t) { - t.message = `@babel/template placeholder "${e.name}": ${t.message}`; - throw t; - } - }); - return n; - }; - var r = e("@babel/types"); - const {blockStatement: i, cloneNode: s, emptyStatement: a, expressionStatement: o, identifier: l, isStatement: c, isStringLiteral: p, stringLiteral: u, validate: d} = r; - }, { - "@babel/types": 108 - } ], - 38: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - t = e.code(t); - let a; - return o => { - const l = (0, r.normalizeReplacements)(o); - a || (a = (0, i.default)(e, t, n)); - return e.unwrap((0, s.default)(a, l)); - }; - }; - r = e("./options"); - i = e("./parse"); - s = e("./populate"); - }, { - "./options": 35, - "./parse": 36, - "./populate": 37 - } ], - 39: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.clear = function() { - s(); - a(); - }; - n.clearPath = s; - n.clearScope = a; - n.scope = n.path = void 0; - let r = new WeakMap(); - n.path = r; - let i = new WeakMap(); - n.scope = i; - function s() { - n.path = r = new WeakMap(); - } - function a() { - n.scope = i = new WeakMap(); - } - }, {} ], - 40: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("./path"); - i = e("@babel/types"); - const {VISITOR_KEYS: s} = i; - n.default = class { - constructor(e, t, n, r) { - this.queue = null; - this.priorityQueue = null; - this.parentPath = r; - this.scope = e; - this.state = n; - this.opts = t; - } - shouldVisit(e) { - const t = this.opts; - if (t.enter || t.exit) return !0; - if (t[e.type]) return !0; - const n = s[e.type]; - if (null == n || !n.length) return !1; - for (const t of n) if (e[t]) return !0; - return !1; - } - create(e, t, n, i) { - return r.default.get({ - parentPath: this.parentPath, - parent: e, - container: t, - key: n, - listKey: i - }); - } - maybeQueue(e, t) { - this.queue && (t ? this.queue.push(e) : this.priorityQueue.push(e)); - } - visitMultiple(e, t, n) { - if (0 === e.length) return !1; - const r = []; - for (let i = 0; i < e.length; i++) { - const s = e[i]; - s && this.shouldVisit(s) && r.push(this.create(t, e, i, n)); - } - return this.visitQueue(r); - } - visitSingle(e, t) { - return !!this.shouldVisit(e[t]) && this.visitQueue([ this.create(e, e, t) ]); - } - visitQueue(e) { - this.queue = e; - this.priorityQueue = []; - const t = new WeakSet(); - let n = !1; - for (const r of e) { - r.resync(); - 0 !== r.contexts.length && r.contexts[r.contexts.length - 1] === this || r.pushContext(this); - if (null === r.key) continue; - const {node: i} = r; - if (!t.has(i)) { - i && t.add(i); - if (r.visit()) { - n = !0; - break; - } - if (this.priorityQueue.length) { - n = this.visitQueue(this.priorityQueue); - this.priorityQueue = []; - this.queue = e; - if (n) break; - } - } - } - for (const t of e) t.popContext(); - this.queue = null; - return n; - } - visit(e, t) { - const n = e[t]; - return !!n && (Array.isArray(n) ? this.visitMultiple(n, e, t) : this.visitSingle(e, t)); - } - }; - }, { - "./path": 49, - "@babel/types": 108 - } ], - 41: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - n.default = class { - getCode() {} - getScope() {} - addHelper() { - throw new Error("Helpers are not supported by the default hub."); - } - buildError(e, t, n = TypeError) { - return new n(t); - } - }; - }, {} ], - 42: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l, c, p; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - Object.defineProperty(n, "NodePath", { - enumerable: !0, - get: function() { - return o.default; - } - }); - Object.defineProperty(n, "Scope", { - enumerable: !0, - get: function() { - return l.default; - } - }); - Object.defineProperty(n, "Hub", { - enumerable: !0, - get: function() { - return c.default; - } - }); - n.visitors = n.default = void 0; - r = e("./context"); - i = e("./visitors"); - n.visitors = i; - s = e("@babel/types"); - a = e("./cache"); - o = e("./path"); - l = e("./scope"); - c = e("./hub"); - const {VISITOR_KEYS: u, removeProperties: d, traverseFast: h} = s; - function f(e, t = {}, n, r, s) { - if (e) { - if (!t.noScope && !n && "Program" !== e.type && "File" !== e.type) throw new Error("You must pass a scope and parentPath unless traversing a Program/File. " + `Instead of that you tried to traverse a ${e.type} node without ` + "passing scope and parentPath."); - if (u[e.type]) { - i.explode(t); - f.node(e, t, n, r, s); - } - } - } - p = f; - n.default = p; - f.visitors = i; - f.verify = i.verify; - f.explode = i.explode; - f.cheap = function(e, t) { - return h(e, t); - }; - f.node = function(e, t, n, i, s, a) { - const o = u[e.type]; - if (!o) return; - const l = new r.default(n, t, i, s); - for (const t of o) if ((!a || !a[t]) && l.visit(e, t)) return; - }; - f.clearNode = function(e, t) { - d(e, t); - a.path.delete(e); - }; - f.removeProperties = function(e, t) { - h(e, f.clearNode, t); - return e; - }; - function m(e, t) { - if (e.node.type === t.type) { - t.has = !0; - e.stop(); - } - } - f.hasType = function(e, t, n) { - if (null != n && n.includes(e.type)) return !1; - if (e.type === t) return !0; - const r = { - has: !1, - type: t - }; - f(e, { - noScope: !0, - denylist: n, - enter: m - }, null, r); - return r.has; - }; - f.cache = a; - }, { - "./cache": 39, - "./context": 40, - "./hub": 41, - "./path": 49, - "./scope": 61, - "./visitors": 63, - "@babel/types": 108 - } ], - 43: [ function(e, t, n) { - "use strict"; - var r; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.findParent = function(e) { - let t = this; - for (;t = t.parentPath; ) if (e(t)) return t; - return null; - }; - n.find = function(e) { - let t = this; - do { - if (e(t)) return t; - } while (t = t.parentPath); - return null; - }; - n.getFunctionParent = function() { - return this.findParent(e => e.isFunction()); - }; - n.getStatementParent = function() { - let e = this; - do { - if (!e.parentPath || Array.isArray(e.container) && e.isStatement()) break; - e = e.parentPath; - } while (e); - if (e && (e.isProgram() || e.isFile())) throw new Error("File/Program node, we can't possibly find a statement parent to this"); - return e; - }; - n.getEarliestCommonAncestorFrom = function(e) { - return this.getDeepestCommonAncestorFrom(e, function(e, t, n) { - let r; - const s = i[e.type]; - for (const e of n) { - const n = e[t + 1]; - if (!r) { - r = n; - continue; - } - if (n.listKey && r.listKey === n.listKey && n.key < r.key) { - r = n; - continue; - } - const i = s.indexOf(r.parentKey); - const a = s.indexOf(n.parentKey); - i > a && (r = n); - } - return r; - }); - }; - n.getDeepestCommonAncestorFrom = function(e, t) { - if (!e.length) return this; - if (1 === e.length) return e[0]; - let n = 1 / 0; - let r, i; - const s = e.map(e => { - const t = []; - do { - t.unshift(e); - } while ((e = e.parentPath) && e !== this); - t.length < n && (n = t.length); - return t; - }); - const a = s[0]; - e: for (let e = 0; e < n; e++) { - const t = a[e]; - for (const n of s) if (n[e] !== t) break e; - r = e; - i = t; - } - if (i) return t ? t(i, r, s) : i; - throw new Error("Couldn't find intersection"); - }; - n.getAncestry = function() { - let e = this; - const t = []; - do { - t.push(e); - } while (e = e.parentPath); - return t; - }; - n.isAncestor = function(e) { - return e.isDescendant(this); - }; - n.isDescendant = function(e) { - return !!this.findParent(t => t === e); - }; - n.inType = function(...e) { - let t = this; - for (;t; ) { - for (const n of e) if (t.node.type === n) return !0; - t = t.parentPath; - } - return !1; - }; - r = e("@babel/types"); - e("./index"); - const {VISITOR_KEYS: i} = r; - }, { - "./index": 49, - "@babel/types": 108 - } ], - 44: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.shareCommentsWithSiblings = function() { - if ("string" == typeof this.key) return; - const e = this.node; - if (!e) return; - const t = e.trailingComments; - const n = e.leadingComments; - if (!t && !n) return; - const r = this.getSibling(this.key - 1); - const i = this.getSibling(this.key + 1); - const s = Boolean(r.node); - const a = Boolean(i.node); - s && !a ? r.addComments("trailing", t) : a && !s && i.addComments("leading", n); - }; - n.addComment = function(e, t, n) { - i(this.node, e, t, n); - }; - n.addComments = function(e, t) { - s(this.node, e, t); - }; - var r = e("@babel/types"); - const {addComment: i, addComments: s} = r; - }, { - "@babel/types": 108 - } ], - 45: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.call = function(e) { - const t = this.opts; - this.debug(e); - if (this.node && this._call(t[e])) return !0; - if (this.node) return this._call(t[this.node.type] && t[this.node.type][e]); - return !1; - }; - n._call = function(e) { - if (!e) return !1; - for (const t of e) { - if (!t) continue; - const e = this.node; - if (!e) return !0; - const n = t.call(this.state, this, this.state); - if (n && "object" == typeof n && "function" == typeof n.then) throw new Error("You appear to be using a plugin with an async traversal visitor, which your current version of Babel does not support. If you're using a published plugin, you may need to upgrade your @babel/core version."); - if (n) throw new Error(`Unexpected return value from visitor method ${t}`); - if (this.node !== e) return !0; - if (this._traverseFlags > 0) return !0; - } - return !1; - }; - n.isBlacklisted = n.isDenylisted = function() { - var e; - const t = null != (e = this.opts.denylist) ? e : this.opts.blacklist; - return t && t.indexOf(this.node.type) > -1; - }; - n.visit = function() { - if (!this.node) return !1; - if (this.isDenylisted()) return !1; - if (this.opts.shouldSkip && this.opts.shouldSkip(this)) return !1; - if (this.shouldSkip || this.call("enter") || this.shouldSkip) { - this.debug("Skip..."); - return this.shouldStop; - } - this.debug("Recursing into..."); - r.default.node(this.node, this.opts, this.scope, this.state, this, this.skipKeys); - this.call("exit"); - return this.shouldStop; - }; - n.skip = function() { - this.shouldSkip = !0; - }; - n.skipKey = function(e) { - null == this.skipKeys && (this.skipKeys = {}); - this.skipKeys[e] = !0; - }; - n.stop = function() { - this._traverseFlags |= i.SHOULD_SKIP | i.SHOULD_STOP; - }; - n.setScope = function() { - if (this.opts && this.opts.noScope) return; - let e = this.parentPath; - "key" === this.key && e.isMethod() && (e = e.parentPath); - let t; - for (;e && !t; ) { - if (e.opts && e.opts.noScope) return; - t = e.scope; - e = e.parentPath; - } - this.scope = this.getScope(t); - this.scope && this.scope.init(); - }; - n.setContext = function(e) { - null != this.skipKeys && (this.skipKeys = {}); - this._traverseFlags = 0; - if (e) { - this.context = e; - this.state = e.state; - this.opts = e.opts; - } - this.setScope(); - return this; - }; - n.resync = function() { - if (this.removed) return; - this._resyncParent(); - this._resyncList(); - this._resyncKey(); - }; - n._resyncParent = function() { - this.parentPath && (this.parent = this.parentPath.node); - }; - n._resyncKey = function() { - if (!this.container) return; - if (this.node === this.container[this.key]) return; - if (Array.isArray(this.container)) { - for (let e = 0; e < this.container.length; e++) if (this.container[e] === this.node) return this.setKey(e); - } else for (const e of Object.keys(this.container)) if (this.container[e] === this.node) return this.setKey(e); - this.key = null; - }; - n._resyncList = function() { - if (!this.parent || !this.inList) return; - const e = this.parent[this.listKey]; - if (this.container === e) return; - this.container = e || null; - }; - n._resyncRemoved = function() { - null != this.key && this.container && this.container[this.key] === this.node || this._markRemoved(); - }; - n.popContext = function() { - this.contexts.pop(); - this.contexts.length > 0 ? this.setContext(this.contexts[this.contexts.length - 1]) : this.setContext(void 0); - }; - n.pushContext = function(e) { - this.contexts.push(e); - this.setContext(e); - }; - n.setup = function(e, t, n, r) { - this.listKey = n; - this.container = t; - this.parentPath = e || this.parentPath; - this.setKey(r); - }; - n.setKey = function(e) { - var t; - this.key = e; - this.node = this.container[this.key]; - this.type = null == (t = this.node) ? void 0 : t.type; - }; - n.requeue = function(e = this) { - if (e.removed) return; - const t = this.contexts; - for (const n of t) n.maybeQueue(e); - }; - n._getQueueContexts = function() { - let e = this; - let t = this.contexts; - for (;!t.length && (e = e.parentPath); ) t = e.contexts; - return t; - }; - r = e("../index"); - i = e("./index"); - }, { - "../index": 42, - "./index": 49 - } ], - 46: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.toComputedKey = function() { - let e; - if (this.isMemberExpression()) e = this.node.property; else { - if (!this.isProperty() && !this.isMethod()) throw new ReferenceError("todo"); - e = this.node.key; - } - this.node.computed || h(e) && (e = P(e.name)); - return e; - }; - n.ensureBlock = function() { - const e = this.get("body"); - const t = e.node; - if (Array.isArray(e)) throw new Error("Can't convert array path to a block statement"); - if (!t) throw new Error("Can't convert node without a body"); - if (e.isBlockStatement()) return t; - const n = []; - let r = "body"; - let i; - let s; - if (e.isStatement()) { - s = "body"; - i = 0; - n.push(e.node); - } else { - r += ".body.0"; - if (this.isFunction()) { - i = "argument"; - n.push(S(e.node)); - } else { - i = "expression"; - n.push(u(e.node)); - } - } - this.node.body = l(n); - const a = this.get(r); - e.setup(a, s ? a.node[s] : a.node, s, i); - return this.node; - }; - n.arrowFunctionToShadowed = function() { - if (!this.isArrowFunctionExpression()) return; - this.arrowFunctionToExpression(); - }; - n.unwrapFunctionEnvironment = function() { - if (!this.isArrowFunctionExpression() && !this.isFunctionExpression() && !this.isFunctionDeclaration()) throw this.buildCodeFrameError("Can only unwrap the environment of a function."); - C(this); - }; - n.arrowFunctionToExpression = function({allowInsertArrow: e = !0, specCompliant: t = !1, noNewArrows: n = !t} = {}) { - if (!this.isArrowFunctionExpression()) throw this.buildCodeFrameError("Cannot convert non-arrow function to a function expression."); - const r = C(this, n, e); - this.ensureBlock(); - this.node.type = "FunctionExpression"; - if (!n) { - const e = r ? null : this.parentPath.scope.generateUidIdentifier("arrowCheckId"); - e && this.parentPath.scope.push({ - id: e, - init: T([]) - }); - this.get("body").unshiftContainer("body", u(c(this.hub.addHelper("newArrowCheck"), [ A(), d(e ? e.name : r) ]))); - this.replaceWith(c(m((0, i.default)(this, !0) || this.node, d("bind")), [ e ? d(e.name) : A() ])); - } - }; - r = e("@babel/types"); - i = e("@babel/helper-function-name"); - const {arrowFunctionExpression: s, assignmentExpression: a, binaryExpression: o, blockStatement: l, callExpression: c, conditionalExpression: p, expressionStatement: u, identifier: d, isIdentifier: h, jsxIdentifier: f, memberExpression: m, metaProperty: y, numericLiteral: g, objectExpression: T, restElement: b, returnStatement: S, sequenceExpression: x, spreadElement: E, stringLiteral: P, super: v, thisExpression: A, unaryExpression: w} = r; - function C(e, t = !0, n = !0) { - const r = e.findParent(e => e.isFunction() && !e.isArrowFunctionExpression() || e.isProgram() || e.isClassProperty({ - static: !1 - })); - const i = "constructor" === (null == r ? void 0 : r.node.kind); - if (r.isClassProperty()) throw e.buildCodeFrameError("Unable to transform arrow inside class property"); - const {thisPaths: l, argumentsPaths: u, newTargetPaths: h, superProps: T, superCalls: S} = function(e) { - const t = []; - const n = []; - const r = []; - const i = []; - const s = []; - e.traverse({ - ClassProperty(e) { - e.skip(); - }, - Function(e) { - e.isArrowFunctionExpression() || e.skip(); - }, - ThisExpression(e) { - t.push(e); - }, - JSXIdentifier(e) { - "this" === e.node.name && (e.parentPath.isJSXMemberExpression({ - object: e.node - }) || e.parentPath.isJSXOpeningElement({ - name: e.node - })) && t.push(e); - }, - CallExpression(e) { - e.get("callee").isSuper() && s.push(e); - }, - MemberExpression(e) { - e.get("object").isSuper() && i.push(e); - }, - ReferencedIdentifier(e) { - if ("arguments" !== e.node.name) return; - let t = e.scope; - do { - if (t.hasOwnBinding("arguments")) { - t.rename("arguments"); - return; - } - if (t.path.isFunction() && !t.path.isArrowFunctionExpression()) break; - } while (t = t.parent); - n.push(e); - }, - MetaProperty(e) { - e.get("meta").isIdentifier({ - name: "new" - }) && e.get("property").isIdentifier({ - name: "target" - }) && r.push(e); - } - }); - return { - thisPaths: t, - argumentsPaths: n, - newTargetPaths: r, - superProps: i, - superCalls: s - }; - }(e); - if (i && S.length > 0) { - if (!n) throw S[0].buildCodeFrameError("Unable to handle nested super() usage in arrow"); - const e = []; - r.traverse({ - Function(e) { - e.isArrowFunctionExpression() || e.skip(); - }, - ClassProperty(e) { - e.skip(); - }, - CallExpression(t) { - t.get("callee").isSuper() && e.push(t); - } - }); - const t = function(e) { - return O(e, "supercall", () => { - const t = e.scope.generateUidIdentifier("args"); - return s([ b(t) ], c(v(), [ E(d(t.name)) ])); - }); - }(r); - e.forEach(e => { - const n = d(t); - n.loc = e.node.callee.loc; - e.get("callee").replaceWith(n); - }); - } - if (u.length > 0) { - const e = O(r, "arguments", () => { - const e = () => d("arguments"); - return r.scope.path.isProgram() ? p(o("===", w("typeof", e()), P("undefined")), r.scope.buildUndefinedNode(), e()) : e(); - }); - u.forEach(t => { - const n = d(e); - n.loc = t.node.loc; - t.replaceWith(n); - }); - } - if (h.length > 0) { - const e = O(r, "newtarget", () => y(d("new"), d("target"))); - h.forEach(t => { - const n = d(e); - n.loc = t.node.loc; - t.replaceWith(n); - }); - } - if (T.length > 0) { - if (!n) throw T[0].buildCodeFrameError("Unable to handle nested super.prop usage"); - T.reduce((e, t) => e.concat(function(e) { - if (e.parentPath.isAssignmentExpression() && "=" !== e.parentPath.node.operator) { - const t = e.parentPath; - const n = t.node.operator.slice(0, -1); - const r = t.node.right; - t.node.operator = "="; - if (e.node.computed) { - const i = e.scope.generateDeclaredUidIdentifier("tmp"); - t.get("left").replaceWith(m(e.node.object, a("=", i, e.node.property), !0)); - t.get("right").replaceWith(o(n, m(e.node.object, d(i.name), !0), r)); - } else { - t.get("left").replaceWith(m(e.node.object, e.node.property)); - t.get("right").replaceWith(o(n, m(e.node.object, d(e.node.property.name)), r)); - } - return [ t.get("left"), t.get("right").get("left") ]; - } - if (e.parentPath.isUpdateExpression()) { - const t = e.parentPath; - const n = e.scope.generateDeclaredUidIdentifier("tmp"); - const r = e.node.computed ? e.scope.generateDeclaredUidIdentifier("prop") : null; - const i = [ a("=", n, m(e.node.object, r ? a("=", r, e.node.property) : e.node.property, e.node.computed)), a("=", m(e.node.object, r ? d(r.name) : e.node.property, e.node.computed), o("+", d(n.name), g(1))) ]; - e.parentPath.node.prefix || i.push(d(n.name)); - t.replaceWith(x(i)); - const s = t.get("expressions.0.right"); - const l = t.get("expressions.1.left"); - return [ s, l ]; - } - return [ e ]; - }(t)), []).forEach(e => { - const t = e.node.computed ? "" : e.get("property").node.name; - const n = e.parentPath.isAssignmentExpression({ - left: e.node - }); - const i = e.parentPath.isCallExpression({ - callee: e.node - }); - const o = function(e, t, n) { - return O(e, `superprop_${t ? "set" : "get"}:${n || ""}`, () => { - const r = []; - let i; - if (n) i = m(v(), d(n)); else { - const t = e.scope.generateUidIdentifier("prop"); - r.unshift(t); - i = m(v(), d(t.name), !0); - } - if (t) { - const t = e.scope.generateUidIdentifier("value"); - r.push(t); - i = a("=", i, d(t.name)); - } - return s(r, i); - }); - }(r, n, t); - const p = []; - e.node.computed && p.push(e.get("property").node); - if (n) { - const t = e.parentPath.node.right; - p.push(t); - } - const u = c(d(o), p); - if (i) { - e.parentPath.unshiftContainer("arguments", A()); - e.replaceWith(m(u, d("call"))); - l.push(e.parentPath.get("arguments.0")); - } else n ? e.parentPath.replaceWith(u) : e.replaceWith(u); - }); - } - let C; - if (l.length > 0 || !t) { - C = function(e, t) { - return O(e, "this", n => { - if (!t || !I(e)) return A(); - const r = new WeakSet(); - e.traverse({ - Function(e) { - e.isArrowFunctionExpression() || e.skip(); - }, - ClassProperty(e) { - e.skip(); - }, - CallExpression(e) { - if (e.get("callee").isSuper() && !r.has(e.node)) { - r.add(e.node); - e.replaceWithMultiple([ e.node, a("=", d(n), d("this")) ]); - } - } - }); - }); - }(r, i); - if (t || i && I(r)) { - l.forEach(e => { - const t = e.isJSX() ? f(C) : d(C); - t.loc = e.node.loc; - e.replaceWith(t); - }); - t || (C = null); - } - } - return C; - } - function I(e) { - return e.isClassMethod() && !!e.parentPath.parentPath.node.superClass; - } - function O(e, t, n) { - const r = "binding:" + t; - let i = e.getData(r); - if (!i) { - const s = e.scope.generateUidIdentifier(t); - i = s.name; - e.setData(r, i); - e.scope.push({ - id: s, - init: n(i) - }); - } - return i; - } - }, { - "@babel/helper-function-name": 22, - "@babel/types": 108 - } ], - 47: [ function(e, t, n) { - (function(e) { - (function() { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.evaluateTruthy = function() { - const e = this.evaluate(); - if (e.confident) return !!e.value; - }; - n.evaluate = function() { - const e = { - confident: !0, - deoptPath: null, - seen: new Map() - }; - let t = s(this, e); - e.confident || (t = void 0); - return { - confident: e.confident, - deopt: e.deoptPath, - value: t - }; - }; - const t = [ "String", "Number", "Math" ]; - const r = [ "random" ]; - function i(e, t) { - if (t.confident) { - t.deoptPath = e; - t.confident = !1; - } - } - function s(n, o) { - const {node: l} = n; - const {seen: c} = o; - if (!c.has(l)) { - const p = { - resolved: !1 - }; - c.set(l, p); - const u = function(n, o) { - if (!o.confident) return; - if (n.isSequenceExpression()) { - const e = n.get("expressions"); - return s(e[e.length - 1], o); - } - if (n.isStringLiteral() || n.isNumericLiteral() || n.isBooleanLiteral()) return n.node.value; - if (n.isNullLiteral()) return null; - if (n.isTemplateLiteral()) return a(n, n.node.quasis, o); - if (n.isTaggedTemplateExpression() && n.get("tag").isMemberExpression()) { - const e = n.get("tag.object"); - const {node: {name: t}} = e; - const r = n.get("tag.property"); - if (e.isIdentifier() && "String" === t && !n.scope.getBinding(t) && r.isIdentifier() && "raw" === r.node.name) return a(n, n.node.quasi.quasis, o, !0); - } - if (n.isConditionalExpression()) { - const e = s(n.get("test"), o); - if (!o.confident) return; - return s(e ? n.get("consequent") : n.get("alternate"), o); - } - if (n.isExpressionWrapper()) return s(n.get("expression"), o); - if (n.isMemberExpression() && !n.parentPath.isCallExpression({ - callee: n.node - })) { - const e = n.get("property"); - const t = n.get("object"); - if (t.isLiteral() && e.isIdentifier()) { - const n = t.node.value; - const r = typeof n; - if ("number" === r || "string" === r) return n[e.node.name]; - } - } - if (n.isReferencedIdentifier()) { - const e = n.scope.getBinding(n.node.name); - if (e && e.constantViolations.length > 0) return i(e.path, o); - if (e && n.node.start < e.path.node.end) return i(e.path, o); - if (null != e && e.hasValue) return e.value; - { - if ("undefined" === n.node.name) return e ? i(e.path, o) : void 0; - if ("Infinity" === n.node.name) return e ? i(e.path, o) : 1 / 0; - if ("NaN" === n.node.name) return e ? i(e.path, o) : NaN; - const t = n.resolve(); - return t === n ? i(n, o) : s(t, o); - } - } - if (n.isUnaryExpression({ - prefix: !0 - })) { - if ("void" === n.node.operator) return; - const e = n.get("argument"); - if ("typeof" === n.node.operator && (e.isFunction() || e.isClass())) return "function"; - const t = s(e, o); - if (!o.confident) return; - switch (n.node.operator) { - case "!": - return !t; - - case "+": - return +t; - - case "-": - return -t; - - case "~": - return ~t; - - case "typeof": - return typeof t; - } - } - if (n.isArrayExpression()) { - const e = []; - const t = n.get("elements"); - for (const n of t) { - const t = n.evaluate(); - if (!t.confident) return i(t.deopt, o); - e.push(t.value); - } - return e; - } - if (n.isObjectExpression()) { - const e = {}; - const t = n.get("properties"); - for (const n of t) { - if (n.isObjectMethod() || n.isSpreadElement()) return i(n, o); - const t = n.get("key"); - let r = t; - if (n.node.computed) { - if (!(r = r.evaluate()).confident) return i(r.deopt, o); - r = r.value; - } else r = r.isIdentifier() ? r.node.name : r.node.value; - const s = n.get("value"); - let a = s.evaluate(); - if (!a.confident) return i(a.deopt, o); - a = a.value; - e[r] = a; - } - return e; - } - if (n.isLogicalExpression()) { - const e = o.confident; - const t = s(n.get("left"), o); - const r = o.confident; - o.confident = e; - const i = s(n.get("right"), o); - const a = o.confident; - switch (n.node.operator) { - case "||": - o.confident = r && (!!t || a); - if (!o.confident) return; - return t || i; - - case "&&": - o.confident = r && (!t || a); - if (!o.confident) return; - return t && i; - } - } - if (n.isBinaryExpression()) { - const e = s(n.get("left"), o); - if (!o.confident) return; - const t = s(n.get("right"), o); - if (!o.confident) return; - switch (n.node.operator) { - case "-": - return e - t; - - case "+": - return e + t; - - case "/": - return e / t; - - case "*": - return e * t; - - case "%": - return e % t; - - case "**": - return Math.pow(e, t); - - case "<": - return e < t; - - case ">": - return e > t; - - case "<=": - return e <= t; - - case ">=": - return e >= t; - - case "==": - return e == t; - - case "!=": - return e != t; - - case "===": - return e === t; - - case "!==": - return e !== t; - - case "|": - return e | t; - - case "&": - return e & t; - - case "^": - return e ^ t; - - case "<<": - return e << t; - - case ">>": - return e >> t; - - case ">>>": - return e >>> t; - } - } - if (n.isCallExpression()) { - const i = n.get("callee"); - let a; - let l; - i.isIdentifier() && !n.scope.getBinding(i.node.name) && t.indexOf(i.node.name) >= 0 && (l = e[i.node.name]); - if (i.isMemberExpression()) { - const n = i.get("object"); - const s = i.get("property"); - if (n.isIdentifier() && s.isIdentifier() && t.indexOf(n.node.name) >= 0 && r.indexOf(s.node.name) < 0) { - a = e[n.node.name]; - l = a[s.node.name]; - } - if (n.isLiteral() && s.isIdentifier()) { - const e = typeof n.node.value; - if ("string" === e || "number" === e) { - a = n.node.value; - l = a[s.node.name]; - } - } - } - if (l) { - const e = n.get("arguments").map(e => s(e, o)); - if (!o.confident) return; - return l.apply(a, e); - } - } - i(n, o); - }(n, o); - if (o.confident) { - p.resolved = !0; - p.value = u; - } - return u; - } - { - const e = c.get(l); - if (e.resolved) return e.value; - i(n, o); - } - } - function a(e, t, n, r = !1) { - let i = ""; - let a = 0; - const o = e.get("expressions"); - for (const e of t) { - if (!n.confident) break; - i += r ? e.value.raw : e.value.cooked; - const t = o[a++]; - t && (i += String(s(t, n))); - } - if (n.confident) return i; - } - }).call(this); - }).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {}); - }, {} ], - 48: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.getOpposite = function() { - if ("left" === this.key) return this.getSibling("right"); - if ("right" === this.key) return this.getSibling("left"); - return null; - }; - n.getCompletionRecords = function() { - return y(this, { - canHaveBreak: !1, - shouldPopulateBreak: !1, - inCaseClause: !1 - }).map(e => e.path); - }; - n.getSibling = function(e) { - return r.default.get({ - parentPath: this.parentPath, - parent: this.parent, - container: this.container, - listKey: this.listKey, - key: e - }).setContext(this.context); - }; - n.getPrevSibling = function() { - return this.getSibling(this.key - 1); - }; - n.getNextSibling = function() { - return this.getSibling(this.key + 1); - }; - n.getAllNextSiblings = function() { - let e = this.key; - let t = this.getSibling(++e); - const n = []; - for (;t.node; ) { - n.push(t); - t = this.getSibling(++e); - } - return n; - }; - n.getAllPrevSiblings = function() { - let e = this.key; - let t = this.getSibling(--e); - const n = []; - for (;t.node; ) { - n.push(t); - t = this.getSibling(--e); - } - return n; - }; - n.get = function(e, t = !0) { - !0 === t && (t = this.context); - const n = e.split("."); - return 1 === n.length ? this._getKey(e, t) : this._getPattern(n, t); - }; - n._getKey = function(e, t) { - const n = this.node; - const i = n[e]; - return Array.isArray(i) ? i.map((s, a) => r.default.get({ - listKey: e, - parentPath: this, - parent: n, - container: i, - key: a - }).setContext(t)) : r.default.get({ - parentPath: this, - parent: n, - container: n, - key: e - }).setContext(t); - }; - n._getPattern = function(e, t) { - let n = this; - for (const r of e) n = "." === r ? n.parentPath : Array.isArray(n) ? n[r] : n.get(r, t); - return n; - }; - n.getBindingIdentifiers = function(e) { - return s(this.node, e); - }; - n.getOuterBindingIdentifiers = function(e) { - return a(this.node, e); - }; - n.getBindingIdentifierPaths = function(e = !1, t = !1) { - const n = [ this ]; - const r = Object.create(null); - for (;n.length; ) { - const i = n.shift(); - if (!i) continue; - if (!i.node) continue; - const a = s.keys[i.node.type]; - if (i.isIdentifier()) if (e) { - const e = r[i.node.name] = r[i.node.name] || []; - e.push(i); - } else r[i.node.name] = i; else if (i.isExportDeclaration()) { - const e = i.get("declaration"); - o(e) && n.push(e); - } else { - if (t) { - if (i.isFunctionDeclaration()) { - n.push(i.get("id")); - continue; - } - if (i.isFunctionExpression()) continue; - } - if (a) for (let e = 0; e < a.length; e++) { - const t = a[e]; - const r = i.get(t); - Array.isArray(r) ? n.push(...r) : r.node && n.push(r); - } - } - } - return r; - }; - n.getOuterBindingIdentifierPaths = function(e) { - return this.getBindingIdentifierPaths(e, !0); - }; - r = e("./index"); - i = e("@babel/types"); - const {getBindingIdentifiers: s, getOuterBindingIdentifiers: a, isDeclaration: o, numericLiteral: l, unaryExpression: c} = i; - const p = 0; - const u = 1; - function d(e, t, n) { - e && t.push(...y(e, n)); - return t; - } - function h(e) { - e.forEach(e => { - e.type = u; - }); - } - function f(e, t) { - e.forEach(e => { - e.path.isBreakStatement({ - label: null - }) && (t ? e.path.replaceWith(c("void", l(0))) : e.path.remove()); - }); - } - function m(e, t) { - const n = []; - if (t.canHaveBreak) { - let r = []; - for (let i = 0; i < e.length; i++) { - const s = e[i]; - const a = Object.assign({}, t, { - inCaseClause: !1 - }); - s.isBlockStatement() && (t.inCaseClause || t.shouldPopulateBreak) ? a.shouldPopulateBreak = !0 : a.shouldPopulateBreak = !1; - const o = y(s, a); - if (o.length > 0 && o.every(e => e.type === u)) { - if (r.length > 0 && o.every(e => e.path.isBreakStatement({ - label: null - }))) { - h(r); - n.push(...r); - if (r.some(e => e.path.isDeclaration())) { - n.push(...o); - f(o, !0); - } - f(o, !1); - } else { - n.push(...o); - t.shouldPopulateBreak || f(o, !0); - } - break; - } - if (i === e.length - 1) n.push(...o); else { - r = []; - for (let e = 0; e < o.length; e++) { - const t = o[e]; - t.type === u && n.push(t); - t.type === p && r.push(t); - } - } - } - } else if (e.length) for (let r = e.length - 1; r >= 0; r--) { - const i = y(e[r], t); - if (i.length > 1 || 1 === i.length && !i[0].path.isVariableDeclaration()) { - n.push(...i); - break; - } - } - return n; - } - function y(e, t) { - let n = []; - if (e.isIfStatement()) { - n = d(e.get("consequent"), n, t); - n = d(e.get("alternate"), n, t); - } else { - if (e.isDoExpression() || e.isFor() || e.isWhile() || e.isLabeledStatement()) return d(e.get("body"), n, t); - if (e.isProgram() || e.isBlockStatement()) return m(e.get("body"), t); - if (e.isFunction()) return y(e.get("body"), t); - if (e.isTryStatement()) { - n = d(e.get("block"), n, t); - n = d(e.get("handler"), n, t); - } else { - if (e.isCatchClause()) return d(e.get("body"), n, t); - if (e.isSwitchStatement()) return function(e, t, n) { - let r = []; - for (let i = 0; i < e.length; i++) { - const s = y(e[i], n); - const a = []; - const o = []; - for (const e of s) { - e.type === p && a.push(e); - e.type === u && o.push(e); - } - a.length && (r = a); - t.push(...o); - } - t.push(...r); - return t; - }(e.get("cases"), n, t); - if (e.isSwitchCase()) return m(e.get("consequent"), { - canHaveBreak: !0, - shouldPopulateBreak: !1, - inCaseClause: !0 - }); - e.isBreakStatement() ? n.push(function(e) { - return { - type: u, - path: e - }; - }(e)) : n.push(function(e) { - return { - type: p, - path: e - }; - }(e)); - } - } - return n; - } - }, { - "./index": 49, - "@babel/types": 108 - } ], - 49: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l, c, p, u, d, h, f, m, y, g, T, b, S, x, E; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = n.SHOULD_SKIP = n.SHOULD_STOP = n.REMOVED = void 0; - r = e("./lib/virtual-types"); - i = e("debug"); - s = e("../index"); - a = e("../scope"); - l = o = e("@babel/types"); - c = e("../cache"); - p = e("@babel/generator"); - u = e("./ancestry"); - d = e("./inference"); - h = e("./replacement"); - f = e("./evaluation"); - m = e("./conversion"); - y = e("./introspection"); - g = e("./context"); - T = e("./removal"); - b = e("./modification"); - S = e("./family"); - x = e("./comments"); - const {validate: P} = o; - const v = i("babel"); - const A = 1; - n.REMOVED = A; - const w = 2; - n.SHOULD_STOP = w; - const C = 4; - n.SHOULD_SKIP = C; - class I { - constructor(e, t) { - this.contexts = []; - this.state = null; - this.opts = null; - this._traverseFlags = 0; - this.skipKeys = null; - this.parentPath = null; - this.container = null; - this.listKey = null; - this.key = null; - this.node = null; - this.type = null; - this.parent = t; - this.hub = e; - this.data = null; - this.context = null; - this.scope = null; - } - static get({hub: e, parentPath: t, parent: n, container: r, listKey: i, key: s}) { - !e && t && (e = t.hub); - if (!n) throw new Error("To get a node path the parent needs to exist"); - const a = r[s]; - let o = c.path.get(n); - if (!o) { - o = new Map(); - c.path.set(n, o); - } - let l = o.get(a); - if (!l) { - l = new I(e, n); - a && o.set(a, l); - } - l.setup(t, r, i, s); - return l; - } - getScope(e) { - return this.isScope() ? new a.default(this) : e; - } - setData(e, t) { - null == this.data && (this.data = Object.create(null)); - return this.data[e] = t; - } - getData(e, t) { - null == this.data && (this.data = Object.create(null)); - let n = this.data[e]; - void 0 === n && void 0 !== t && (n = this.data[e] = t); - return n; - } - buildCodeFrameError(e, t = SyntaxError) { - return this.hub.buildError(this.node, e, t); - } - traverse(e, t) { - (0, s.default)(this.node, e, this.scope, t, this); - } - set(e, t) { - P(this.node, e, t); - this.node[e] = t; - } - getPathLocation() { - const e = []; - let t = this; - do { - let n = t.key; - t.inList && (n = `${t.listKey}[${n}]`); - e.unshift(n); - } while (t = t.parentPath); - return e.join("."); - } - debug(e) { - v.enabled && v(`${this.getPathLocation()} ${this.type}: ${e}`); - } - toString() { - return (0, p.default)(this.node).code; - } - get inList() { - return !!this.listKey; - } - set inList(e) { - e || (this.listKey = null); - } - get parentKey() { - return this.listKey || this.key; - } - get shouldSkip() { - return !!(this._traverseFlags & C); - } - set shouldSkip(e) { - e ? this._traverseFlags |= C : this._traverseFlags &= ~C; - } - get shouldStop() { - return !!(this._traverseFlags & w); - } - set shouldStop(e) { - e ? this._traverseFlags |= w : this._traverseFlags &= ~w; - } - get removed() { - return !!(this._traverseFlags & A); - } - set removed(e) { - e ? this._traverseFlags |= A : this._traverseFlags &= ~A; - } - } - Object.assign(I.prototype, u, d, h, f, m, y, g, T, b, S, x); - for (const e of l.TYPES) { - const t = `is${e}`; - const n = l[t]; - I.prototype[t] = function(e) { - return n(this.node, e); - }; - I.prototype[`assert${e}`] = function(t) { - if (!n(this.node, t)) throw new TypeError(`Expected node path of type ${e}`); - }; - } - for (const e of Object.keys(r)) { - if ("_" === e[0]) continue; - l.TYPES.indexOf(e) < 0 && l.TYPES.push(e); - const t = r[e]; - I.prototype[`is${e}`] = function(e) { - return t.checkPath(this, e); - }; - } - E = I; - n.default = E; - }, { - "../cache": 39, - "../index": 42, - "../scope": 61, - "./ancestry": 43, - "./comments": 44, - "./context": 45, - "./conversion": 46, - "./evaluation": 47, - "./family": 48, - "./inference": 50, - "./introspection": 53, - "./lib/virtual-types": 56, - "./modification": 57, - "./removal": 58, - "./replacement": 59, - "@babel/generator": 16, - "@babel/types": 108, - debug: 151 - } ], - 50: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.getTypeAnnotation = function() { - if (this.typeAnnotation) return this.typeAnnotation; - let e = this._getTypeAnnotation() || s(); - m(e) && (e = e.typeAnnotation); - return this.typeAnnotation = e; - }; - n._getTypeAnnotation = function() { - const e = this.node; - if (!e) { - if ("init" === this.key && this.parentPath.isVariableDeclarator()) { - const e = this.parentPath.parentPath; - const t = e.parentPath; - return "left" === e.key && t.isForInStatement() ? T() : "left" === e.key && t.isForOfStatement() ? s() : b(); - } - return; - } - if (e.typeAnnotation) return e.typeAnnotation; - if (S.has(e)) return; - S.add(e); - try { - var t; - let n = r[e.type]; - if (n) return n.call(this, e); - n = r[this.parentPath.type]; - if (null != (t = n) && t.validParent) return this.parentPath.getTypeAnnotation(); - } finally { - S.delete(e); - } - }; - n.isBaseType = function(e, t) { - return x(e, this.getTypeAnnotation(), t); - }; - n.couldBeBaseType = function(e) { - const t = this.getTypeAnnotation(); - if (a(t)) return !0; - if (y(t)) { - for (const n of t.types) if (a(n) || x(e, n, !0)) return !0; - return !1; - } - return x(e, t, !0); - }; - n.baseTypeStrictlyMatches = function(e) { - const t = this.getTypeAnnotation(); - const n = e.getTypeAnnotation(); - if (!a(t) && c(t)) return n.type === t.type; - return !1; - }; - n.isGenericType = function(e) { - const t = this.getTypeAnnotation(); - return p(t) && u(t.id, { - name: e - }); - }; - r = e("./inferers"); - i = e("@babel/types"); - const {anyTypeAnnotation: s, isAnyTypeAnnotation: a, isBooleanTypeAnnotation: o, isEmptyTypeAnnotation: l, isFlowBaseAnnotation: c, isGenericTypeAnnotation: p, isIdentifier: u, isMixedTypeAnnotation: d, isNumberTypeAnnotation: h, isStringTypeAnnotation: f, isTypeAnnotation: m, isUnionTypeAnnotation: y, isVoidTypeAnnotation: g, stringTypeAnnotation: T, voidTypeAnnotation: b} = i; - const S = new WeakSet(); - function x(e, t, n) { - if ("string" === e) return f(t); - if ("number" === e) return h(t); - if ("boolean" === e) return o(t); - if ("any" === e) return a(t); - if ("mixed" === e) return d(t); - if ("empty" === e) return l(t); - if ("void" === e) return g(t); - if (n) return !1; - throw new Error(`Unknown base type ${e}`); - } - }, { - "./inferers": 52, - "@babel/types": 108 - } ], - 51: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - if (!this.isReferenced()) return; - const t = this.scope.getBinding(e.name); - if (t) return t.identifier.typeAnnotation ? t.identifier.typeAnnotation : function(e, t, n) { - const r = []; - const i = []; - let o = d(e, t, i); - const p = function e(t, n, r) { - const i = function(e, t, n) { - let r; - for (;r = t.parentPath; ) { - if (r.isIfStatement() || r.isConditionalExpression()) { - if ("test" === t.key) return; - return r; - } - if (r.isFunction() && r.parentPath.scope.getBinding(n) !== e) return; - t = r; - } - }(t, n, r); - if (!i) return; - const o = i.get("test"); - const p = [ o ]; - const u = []; - for (let e = 0; e < p.length; e++) { - const t = p[e]; - if (t.isLogicalExpression()) { - if ("&&" === t.node.operator) { - p.push(t.get("left")); - p.push(t.get("right")); - } - } else if (t.isBinaryExpression()) { - const e = h(r, t); - e && u.push(e); - } - } - if (u.length) return c(u[0]) && a ? { - typeAnnotation: a(u), - ifStatement: i - } : s ? { - typeAnnotation: s(u), - ifStatement: i - } : { - typeAnnotation: l(u), - ifStatement: i - }; - return e(i, r); - }(e, t, n); - if (p) { - const t = d(e, p.ifStatement); - o = o.filter(e => t.indexOf(e) < 0); - r.push(p.typeAnnotation); - } - if (o.length) { - o.push(...i); - for (const e of o) r.push(e.getTypeAnnotation()); - } - if (!r.length) return; - if (c(r[0]) && a) return a(r); - if (s) return s(r); - return l(r); - }(t, this, e.name); - if ("undefined" === e.name) return u(); - if ("NaN" === e.name || "Infinity" === e.name) return p(); - e.name; - }; - var r = e("@babel/types"); - const {BOOLEAN_NUMBER_BINARY_OPERATORS: i, createFlowUnionType: s, createTSUnionType: a, createTypeAnnotationBasedOnTypeof: o, createUnionTypeAnnotation: l, isTSTypeAnnotation: c, numberTypeAnnotation: p, voidTypeAnnotation: u} = r; - function d(e, t, n) { - const r = e.constantViolations.slice(); - r.unshift(e.path); - return r.filter(e => { - const r = (e = e.resolve())._guessExecutionStatusRelativeTo(t); - n && "unknown" === r && n.push(e); - return "before" === r; - }); - } - function h(e, t) { - const n = t.node.operator; - const r = t.get("right").resolve(); - const s = t.get("left").resolve(); - let a; - s.isIdentifier({ - name: e - }) ? a = r : r.isIdentifier({ - name: e - }) && (a = s); - if (a) return "===" === n ? a.getTypeAnnotation() : i.indexOf(n) >= 0 ? p() : void 0; - if ("===" !== n && "==" !== n) return; - let l; - let c; - if (s.isUnaryExpression({ - operator: "typeof" - })) { - l = s; - c = r; - } else if (r.isUnaryExpression({ - operator: "typeof" - })) { - l = r; - c = s; - } - if (!l) return; - if (!l.get("argument").isIdentifier({ - name: e - })) return; - if (!(c = c.resolve()).isLiteral()) return; - const u = c.node.value; - return "string" == typeof u ? o(u) : void 0; - } - }, { - "@babel/types": 108 - } ], - 52: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.VariableDeclarator = function() { - var e; - if (!this.get("id").isIdentifier()) return; - const t = this.get("init"); - let n = t.getTypeAnnotation(); - "AnyTypeAnnotation" === (null == (e = n) ? void 0 : e.type) && t.isCallExpression() && t.get("callee").isIdentifier({ - name: "Array" - }) && !t.scope.hasBinding("Array", !0) && (n = C()); - return n; - }; - n.TypeCastExpression = w; - n.NewExpression = function(e) { - if (this.get("callee").isIdentifier()) return g(e.callee); - }; - n.TemplateLiteral = function() { - return E(); - }; - n.UnaryExpression = function(e) { - const t = e.operator; - if ("void" === t) return A(); - if (l.indexOf(t) >= 0) return x(); - if (c.indexOf(t) >= 0) return E(); - if (a.indexOf(t) >= 0) return d(); - }; - n.BinaryExpression = function(e) { - const t = e.operator; - if (o.indexOf(t) >= 0) return x(); - if (s.indexOf(t) >= 0) return d(); - if ("+" === t) { - const e = this.get("right"); - const t = this.get("left"); - return t.isBaseType("number") && e.isBaseType("number") ? x() : t.isBaseType("string") || e.isBaseType("string") ? E() : v([ E(), x() ]); - } - }; - n.LogicalExpression = function() { - const e = [ this.get("left").getTypeAnnotation(), this.get("right").getTypeAnnotation() ]; - if (b(e[0]) && m) return m(e); - if (f) return f(e); - return y(e); - }; - n.ConditionalExpression = function() { - const e = [ this.get("consequent").getTypeAnnotation(), this.get("alternate").getTypeAnnotation() ]; - if (b(e[0]) && m) return m(e); - if (f) return f(e); - return y(e); - }; - n.SequenceExpression = function() { - return this.get("expressions").pop().getTypeAnnotation(); - }; - n.ParenthesizedExpression = function() { - return this.get("expression").getTypeAnnotation(); - }; - n.AssignmentExpression = function() { - return this.get("right").getTypeAnnotation(); - }; - n.UpdateExpression = function(e) { - const t = e.operator; - if ("++" === t || "--" === t) return x(); - }; - n.StringLiteral = function() { - return E(); - }; - n.NumericLiteral = function() { - return x(); - }; - n.BooleanLiteral = function() { - return d(); - }; - n.NullLiteral = function() { - return S(); - }; - n.RegExpLiteral = function() { - return g(T("RegExp")); - }; - n.ObjectExpression = function() { - return g(T("Object")); - }; - n.ArrayExpression = C; - n.RestElement = I; - n.ClassDeclaration = n.ClassExpression = n.FunctionDeclaration = n.ArrowFunctionExpression = n.FunctionExpression = function() { - return g(T("Function")); - }; - n.CallExpression = function() { - const {callee: e} = this.node; - if (N(e)) return u(E()); - if (O(e) || k(e)) return u(p()); - if (D(e)) return u(P([ E(), p() ])); - return M(this.get("callee")); - }; - n.TaggedTemplateExpression = function() { - return M(this.get("tag")); - }; - Object.defineProperty(n, "Identifier", { - enumerable: !0, - get: function() { - return i.default; - } - }); - r = e("@babel/types"); - i = e("./inferer-reference"); - const {BOOLEAN_BINARY_OPERATORS: s, BOOLEAN_UNARY_OPERATORS: a, NUMBER_BINARY_OPERATORS: o, NUMBER_UNARY_OPERATORS: l, STRING_UNARY_OPERATORS: c, anyTypeAnnotation: p, arrayTypeAnnotation: u, booleanTypeAnnotation: d, buildMatchMemberExpression: h, createFlowUnionType: f, createTSUnionType: m, createUnionTypeAnnotation: y, genericTypeAnnotation: g, identifier: T, isTSTypeAnnotation: b, nullLiteralTypeAnnotation: S, numberTypeAnnotation: x, stringTypeAnnotation: E, tupleTypeAnnotation: P, unionTypeAnnotation: v, voidTypeAnnotation: A} = r; - function w(e) { - return e.typeAnnotation; - } - w.validParent = !0; - function C() { - return g(T("Array")); - } - function I() { - return C(); - } - I.validParent = !0; - const O = h("Array.from"); - const N = h("Object.keys"); - const k = h("Object.values"); - const D = h("Object.entries"); - function M(e) { - if ((e = e.resolve()).isFunction()) { - if (e.is("async")) return e.is("generator") ? g(T("AsyncIterator")) : g(T("Promise")); - if (e.node.returnType) return e.node.returnType; - } - } - }, { - "./inferer-reference": 51, - "@babel/types": 108 - } ], - 53: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.matchesPattern = function(e, t) { - return d(this.node, e, t); - }; - n.has = h; - n.isStatic = function() { - return this.scope.isStatic(this.node); - }; - n.isnt = function(e) { - return !this.has(e); - }; - n.equals = function(e, t) { - return this.node[e] === t; - }; - n.isNodeType = function(e) { - return u(this.type, e); - }; - n.canHaveVariableDeclarationOrExpression = function() { - return ("init" === this.key || "left" === this.key) && this.parentPath.isFor(); - }; - n.canSwapBetweenExpressionAndStatement = function(e) { - if ("body" !== this.key || !this.parentPath.isArrowFunctionExpression()) return !1; - if (this.isExpression()) return a(e); - if (this.isBlockStatement()) return o(e); - return !1; - }; - n.isCompletionRecord = function(e) { - let t = this; - let n = !0; - do { - const r = t.container; - if (t.isFunction() && !n) return !!e; - n = !1; - if (Array.isArray(r) && t.key !== r.length - 1) return !1; - } while ((t = t.parentPath) && !t.isProgram()); - return !0; - }; - n.isStatementOrBlock = function() { - return !this.parentPath.isLabeledStatement() && !a(this.container) && i.includes(this.key); - }; - n.referencesImport = function(e, t) { - if (!this.isReferencedIdentifier()) { - if ((this.isMemberExpression() || this.isOptionalMemberExpression()) && (this.node.computed ? p(this.node.property, { - value: t - }) : this.node.property.name === t)) { - const t = this.get("object"); - return t.isReferencedIdentifier() && t.referencesImport(e, "*"); - } - return !1; - } - const n = this.scope.getBinding(this.node.name); - if (!n || "module" !== n.kind) return !1; - const r = n.path; - const i = r.parentPath; - if (!i.isImportDeclaration()) return !1; - if (i.node.source.value !== e) return !1; - if (!t) return !0; - if (r.isImportDefaultSpecifier() && "default" === t) return !0; - if (r.isImportNamespaceSpecifier() && "*" === t) return !0; - if (r.isImportSpecifier() && l(r.node.imported, { - name: t - })) return !0; - return !1; - }; - n.getSource = function() { - const e = this.node; - if (e.end) { - const t = this.hub.getCode(); - if (t) return t.slice(e.start, e.end); - } - return ""; - }; - n.willIMaybeExecuteBefore = function(e) { - return "after" !== this._guessExecutionStatusRelativeTo(e); - }; - n._guessExecutionStatusRelativeTo = function(e) { - const t = { - this: m(this), - target: m(e) - }; - if (t.target.node !== t.this.node) return this._guessExecutionStatusRelativeToDifferentFunctions(t.target); - const n = { - target: e.getAncestry(), - this: this.getAncestry() - }; - if (n.target.indexOf(this) >= 0) return "after"; - if (n.this.indexOf(e) >= 0) return "before"; - let r; - const i = { - target: 0, - this: 0 - }; - for (;!r && i.this < n.this.length; ) { - const e = n.this[i.this]; - i.target = n.target.indexOf(e); - i.target >= 0 ? r = e : i.this++; - } - if (!r) throw new Error("Internal Babel error - The two compared nodes don't appear to belong to the same program."); - if (g(n.this, i.this - 1) || g(n.target, i.target - 1)) return "unknown"; - const a = { - this: n.this[i.this - 1], - target: n.target[i.target - 1] - }; - if (a.target.listKey && a.this.listKey && a.target.container === a.this.container) return a.target.key > a.this.key ? "before" : "after"; - const o = s[r.type]; - const l = { - this: o.indexOf(a.this.parentKey), - target: o.indexOf(a.target.parentKey) - }; - return l.target > l.this ? "before" : "after"; - }; - n._guessExecutionStatusRelativeToDifferentFunctions = function(e) { - if (!e.isFunctionDeclaration() || e.parentPath.isExportDeclaration()) return "unknown"; - const t = e.scope.getBinding(e.node.id.name); - if (!t.references) return "before"; - const n = t.referencePaths; - let r; - for (const t of n) { - const n = !!t.find(t => t.node === e.node); - if (n) continue; - if ("callee" !== t.key || !t.parentPath.isCallExpression()) return "unknown"; - if (T.has(t.node)) continue; - T.add(t.node); - const i = this._guessExecutionStatusRelativeTo(t); - T.delete(t.node); - if (r && r !== i) return "unknown"; - r = i; - } - return r; - }; - n.resolve = function(e, t) { - return this._resolve(e, t) || this; - }; - n._resolve = function(e, t) { - if (t && t.indexOf(this) >= 0) return; - (t = t || []).push(this); - if (this.isVariableDeclarator()) { - if (this.get("id").isIdentifier()) return this.get("init").resolve(e, t); - } else if (this.isReferencedIdentifier()) { - const n = this.scope.getBinding(this.node.name); - if (!n) return; - if (!n.constant) return; - if ("module" === n.kind) return; - if (n.path !== this) { - const r = n.path.resolve(e, t); - if (this.find(e => e.node === r.node)) return; - return r; - } - } else { - if (this.isTypeCastExpression()) return this.get("expression").resolve(e, t); - if (e && this.isMemberExpression()) { - const n = this.toComputedKey(); - if (!c(n)) return; - const r = n.value; - const i = this.get("object").resolve(e, t); - if (i.isObjectExpression()) { - const n = i.get("properties"); - for (const i of n) { - if (!i.isProperty()) continue; - const n = i.get("key"); - let s = i.isnt("computed") && n.isIdentifier({ - name: r - }); - if (s = s || n.isLiteral({ - value: r - })) return i.get("value").resolve(e, t); - } - } else if (i.isArrayExpression() && !isNaN(+r)) { - const n = i.get("elements"); - const s = n[r]; - if (s) return s.resolve(e, t); - } - } - } - }; - n.isConstantExpression = function() { - if (this.isIdentifier()) { - const e = this.scope.getBinding(this.node.name); - return !!e && e.constant; - } - if (this.isLiteral()) return !this.isRegExpLiteral() && (!this.isTemplateLiteral() || this.get("expressions").every(e => e.isConstantExpression())); - if (this.isUnaryExpression()) return "void" === this.node.operator && this.get("argument").isConstantExpression(); - if (this.isBinaryExpression()) return this.get("left").isConstantExpression() && this.get("right").isConstantExpression(); - return !1; - }; - n.isInStrictMode = function() { - return !!(this.isProgram() ? this : this.parentPath).find(e => { - if (e.isProgram({ - sourceType: "module" - })) return !0; - if (e.isClass()) return !0; - if (!e.isProgram() && !e.isFunction()) return !1; - if (e.isArrowFunctionExpression() && !e.get("body").isBlockStatement()) return !1; - const t = e.isFunction() ? e.node.body : e.node; - for (const e of t.directives) if ("use strict" === e.value.value) return !0; - }); - }; - n.is = void 0; - var r = e("@babel/types"); - const {STATEMENT_OR_BLOCK_KEYS: i, VISITOR_KEYS: s, isBlockStatement: a, isExpression: o, isIdentifier: l, isLiteral: c, isStringLiteral: p, isType: u, matchesPattern: d} = r; - function h(e) { - const t = this.node && this.node[e]; - return t && Array.isArray(t) ? !!t.length : !!t; - } - const f = h; - n.is = f; - function m(e) { - return (e.scope.getFunctionParent() || e.scope.getProgramParent()).path; - } - function y(e, t) { - switch (e) { - case "LogicalExpression": - return "right" === t; - - case "ConditionalExpression": - case "IfStatement": - return "consequent" === t || "alternate" === t; - - case "WhileStatement": - case "DoWhileStatement": - case "ForInStatement": - case "ForOfStatement": - return "body" === t; - - case "ForStatement": - return "body" === t || "update" === t; - - case "SwitchStatement": - return "cases" === t; - - case "TryStatement": - return "handler" === t; - - case "AssignmentPattern": - return "right" === t; - - case "OptionalMemberExpression": - return "property" === t; - - case "OptionalCallExpression": - return "arguments" === t; - - default: - return !1; - } - } - function g(e, t) { - for (let n = 0; n < t; n++) { - const t = e[n]; - if (y(t.parent.type, t.parentKey)) return !0; - } - return !1; - } - const T = new WeakSet(); - }, { - "@babel/types": 108 - } ], - 54: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - i = r = e("@babel/types"); - const {react: s} = r; - const {cloneNode: a, jsxExpressionContainer: o, variableDeclaration: l, variableDeclarator: c} = i; - const p = { - ReferencedIdentifier(e, t) { - if (e.isJSXIdentifier() && s.isCompatTag(e.node.name) && !e.parentPath.isJSXMemberExpression()) return; - if ("this" === e.node.name) { - let n = e.scope; - do { - if (n.path.isFunction() && !n.path.isArrowFunctionExpression()) break; - } while (n = n.parent); - n && t.breakOnScopePaths.push(n.path); - } - const n = e.scope.getBinding(e.node.name); - if (n) { - for (const r of n.constantViolations) if (r.scope !== n.path.scope) { - t.mutableBinding = !0; - e.stop(); - return; - } - n === t.scope.getBinding(e.node.name) && (t.bindings[e.node.name] = n); - } - } - }; - n.default = class { - constructor(e, t) { - this.breakOnScopePaths = void 0; - this.bindings = void 0; - this.mutableBinding = void 0; - this.scopes = void 0; - this.scope = void 0; - this.path = void 0; - this.attachAfter = void 0; - this.breakOnScopePaths = []; - this.bindings = {}; - this.mutableBinding = !1; - this.scopes = []; - this.scope = t; - this.path = e; - this.attachAfter = !1; - } - isCompatibleScope(e) { - for (const t of Object.keys(this.bindings)) { - const n = this.bindings[t]; - if (!e.bindingIdentifierEquals(t, n.identifier)) return !1; - } - return !0; - } - getCompatibleScopes() { - let e = this.path.scope; - do { - if (!this.isCompatibleScope(e)) break; - this.scopes.push(e); - if (this.breakOnScopePaths.indexOf(e.path) >= 0) break; - } while (e = e.parent); - } - getAttachmentPath() { - let e = this._getAttachmentPath(); - if (!e) return; - let t = e.scope; - t.path === e && (t = e.scope.parent); - if (t.path.isProgram() || t.path.isFunction()) for (const n of Object.keys(this.bindings)) { - if (!t.hasOwnBinding(n)) continue; - const r = this.bindings[n]; - if ("param" !== r.kind && "params" !== r.path.parentKey && this.getAttachmentParentForPath(r.path).key >= e.key) { - this.attachAfter = !0; - e = r.path; - for (const t of r.constantViolations) this.getAttachmentParentForPath(t).key > e.key && (e = t); - } - } - return e; - } - _getAttachmentPath() { - const e = this.scopes.pop(); - if (e) if (e.path.isFunction()) { - if (!this.hasOwnParamBindings(e)) return this.getNextScopeAttachmentParent(); - { - if (this.scope === e) return; - const t = e.path.get("body").get("body"); - for (let e = 0; e < t.length; e++) if (!t[e].node._blockHoist) return t[e]; - } - } else if (e.path.isProgram()) return this.getNextScopeAttachmentParent(); - } - getNextScopeAttachmentParent() { - const e = this.scopes.pop(); - if (e) return this.getAttachmentParentForPath(e.path); - } - getAttachmentParentForPath(e) { - do { - if (!e.parentPath || Array.isArray(e.container) && e.isStatement()) return e; - } while (e = e.parentPath); - } - hasOwnParamBindings(e) { - for (const t of Object.keys(this.bindings)) { - if (!e.hasOwnBinding(t)) continue; - const n = this.bindings[t]; - if ("param" === n.kind && n.constant) return !0; - } - return !1; - } - run() { - this.path.traverse(p, this); - if (this.mutableBinding) return; - this.getCompatibleScopes(); - const e = this.getAttachmentPath(); - if (!e) return; - if (e.getFunctionParent() === this.path.getFunctionParent()) return; - let t = e.scope.generateUidIdentifier("ref"); - const n = c(t, this.path.node); - const r = this.attachAfter ? "insertAfter" : "insertBefore"; - const [i] = e[r]([ e.isVariableDeclarator() ? n : l("var", [ n ]) ]); - const s = this.path.parentPath; - s.isJSXElement() && this.path.container === s.node.children && (t = o(t)); - this.path.replaceWith(a(t)); - return e.isVariableDeclarator() ? i.get("init") : i.get("declarations.0.init"); - } - }; - }, { - "@babel/types": 108 - } ], - 55: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.hooks = void 0; - n.hooks = [ function(e, t) { - if ("test" === e.key && (t.isWhile() || t.isSwitchCase()) || "declaration" === e.key && t.isExportDeclaration() || "body" === e.key && t.isLabeledStatement() || "declarations" === e.listKey && t.isVariableDeclaration() && 1 === t.node.declarations.length || "expression" === e.key && t.isExpressionStatement()) { - t.remove(); - return !0; - } - }, function(e, t) { - if (t.isSequenceExpression() && 1 === t.node.expressions.length) { - t.replaceWith(t.node.expressions[0]); - return !0; - } - }, function(e, t) { - if (t.isBinary()) { - "left" === e.key ? t.replaceWith(t.node.right) : t.replaceWith(t.node.left); - return !0; - } - }, function(e, t) { - if (t.isIfStatement() && ("consequent" === e.key || "alternate" === e.key) || "body" === e.key && (t.isLoop() || t.isArrowFunctionExpression())) { - e.replaceWith({ - type: "BlockStatement", - body: [] - }); - return !0; - } - } ]; - }, {} ], - 56: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.ForAwaitStatement = n.NumericLiteralTypeAnnotation = n.ExistentialTypeParam = n.SpreadProperty = n.RestProperty = n.Flow = n.Pure = n.Generated = n.User = n.Var = n.BlockScoped = n.Referenced = n.Scope = n.Expression = n.Statement = n.BindingIdentifier = n.ReferencedMemberExpression = n.ReferencedIdentifier = void 0; - var r = e("@babel/types"); - const {isBinding: i, isBlockScoped: s, isExportDeclaration: a, isExpression: o, isFlow: l, isForStatement: c, isForXStatement: p, isIdentifier: u, isImportDeclaration: d, isImportSpecifier: h, isJSXIdentifier: f, isJSXMemberExpression: m, isMemberExpression: y, isReferenced: g, isScope: T, isStatement: b, isVar: S, isVariableDeclaration: x, react: E} = r; - const {isCompatTag: P} = E; - const v = { - types: [ "Identifier", "JSXIdentifier" ], - checkPath(e, t) { - const {node: n, parent: r} = e; - if (!u(n, t) && !m(r, t)) { - if (!f(n, t)) return !1; - if (P(n.name)) return !1; - } - return g(n, r, e.parentPath.parent); - } - }; - n.ReferencedIdentifier = v; - const A = { - types: [ "MemberExpression" ], - checkPath: ({node: e, parent: t}) => y(e) && g(e, t) - }; - n.ReferencedMemberExpression = A; - const w = { - types: [ "Identifier" ], - checkPath(e) { - const {node: t, parent: n} = e; - const r = e.parentPath.parent; - return u(t) && i(t, n, r); - } - }; - n.BindingIdentifier = w; - const C = { - types: [ "Statement" ], - checkPath({node: e, parent: t}) { - if (b(e)) { - if (x(e)) { - if (p(t, { - left: e - })) return !1; - if (c(t, { - init: e - })) return !1; - } - return !0; - } - return !1; - } - }; - n.Statement = C; - const I = { - types: [ "Expression" ], - checkPath: e => e.isIdentifier() ? e.isReferencedIdentifier() : o(e.node) - }; - n.Expression = I; - const O = { - types: [ "Scopable", "Pattern" ], - checkPath: e => T(e.node, e.parent) - }; - n.Scope = O; - const N = { - checkPath: e => g(e.node, e.parent) - }; - n.Referenced = N; - const k = { - checkPath: e => s(e.node) - }; - n.BlockScoped = k; - const D = { - types: [ "VariableDeclaration" ], - checkPath: e => S(e.node) - }; - n.Var = D; - const M = { - checkPath: e => e.node && !!e.node.loc - }; - n.User = M; - const _ = { - checkPath: e => !e.isUser() - }; - n.Generated = _; - const L = { - checkPath: (e, t) => e.scope.isPure(e.node, t) - }; - n.Pure = L; - const j = { - types: [ "Flow", "ImportDeclaration", "ExportDeclaration", "ImportSpecifier" ], - checkPath: ({node: e}) => !!l(e) || (d(e) ? "type" === e.importKind || "typeof" === e.importKind : a(e) ? "type" === e.exportKind : !!h(e) && ("type" === e.importKind || "typeof" === e.importKind)) - }; - n.Flow = j; - const F = { - types: [ "RestElement" ], - checkPath: e => e.parentPath && e.parentPath.isObjectPattern() - }; - n.RestProperty = F; - const B = { - types: [ "RestElement" ], - checkPath: e => e.parentPath && e.parentPath.isObjectExpression() - }; - n.SpreadProperty = B; - n.ExistentialTypeParam = { - types: [ "ExistsTypeAnnotation" ] - }; - n.NumericLiteralTypeAnnotation = { - types: [ "NumberLiteralTypeAnnotation" ] - }; - const R = { - types: [ "ForOfStatement" ], - checkPath: ({node: e}) => !0 === e.await - }; - n.ForAwaitStatement = R; - }, { - "@babel/types": 108 - } ], - 57: [ function(e, t, n) { - "use strict"; - var r, i, s, a; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.insertBefore = function(e) { - this._assertUnremoved(); - const t = this._verifyNodeList(e); - const {parentPath: n} = this; - if (n.isExpressionStatement() || n.isLabeledStatement() || n.isExportNamedDeclaration() || n.isExportDefaultDeclaration() && this.isDeclaration()) return n.insertBefore(t); - if (this.isNodeType("Expression") && !this.isJSXElement() || n.isForStatement() && "init" === this.key) { - this.node && t.push(this.node); - return this.replaceExpressionWithStatements(t); - } - if (Array.isArray(this.container)) return this._containerInsertBefore(t); - if (this.isStatementOrBlock()) { - const e = this.node; - const n = e && (!this.isExpressionStatement() || null != e.expression); - this.replaceWith(p(n ? [ e ] : [])); - return this.unshiftContainer("body", t); - } - throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?"); - }; - n._containerInsert = function(e, t) { - this.updateSiblingKeys(e, t.length); - const n = []; - this.container.splice(e, 0, ...t); - for (let r = 0; r < t.length; r++) { - const t = e + r; - const i = this.getSibling(t); - n.push(i); - this.context && this.context.queue && i.pushContext(this.context); - } - const r = this._getQueueContexts(); - for (const e of n) { - e.setScope(); - e.debug("Inserted."); - for (const t of r) t.maybeQueue(e, !0); - } - return n; - }; - n._containerInsertBefore = function(e) { - return this._containerInsert(this.key, e); - }; - n._containerInsertAfter = function(e) { - return this._containerInsert(this.key + 1, e); - }; - n.insertAfter = function(e) { - this._assertUnremoved(); - const t = this._verifyNodeList(e); - const {parentPath: n} = this; - if (n.isExpressionStatement() || n.isLabeledStatement() || n.isExportNamedDeclaration() || n.isExportDefaultDeclaration() && this.isDeclaration()) return n.insertAfter(t.map(e => f(e) ? h(e) : e)); - if (this.isNodeType("Expression") && !this.isJSXElement() && !n.isJSXElement() || n.isForStatement() && "init" === this.key) { - if (this.node) { - const e = this.node; - let {scope: r} = this; - if (r.path.isPattern()) { - l(e); - this.replaceWith(u(o([], e), [])); - this.get("callee.body").insertAfter(t); - return [ this ]; - } - n.isMethod({ - computed: !0, - key: e - }) && (r = r.parent); - const i = r.generateDeclaredUidIdentifier(); - t.unshift(h(c("=", d(i), e))); - t.push(h(d(i))); - } - return this.replaceExpressionWithStatements(t); - } - if (Array.isArray(this.container)) return this._containerInsertAfter(t); - if (this.isStatementOrBlock()) { - const e = this.node; - const n = e && (!this.isExpressionStatement() || null != e.expression); - this.replaceWith(p(n ? [ e ] : [])); - return this.pushContainer("body", t); - } - throw new Error("We don't know what to do with this node type. We were previously a Statement but we can't fit in here?"); - }; - n.updateSiblingKeys = function(e, t) { - if (!this.parent) return; - const n = r.path.get(this.parent); - for (const [, r] of n) r.key >= e && (r.key += t); - }; - n._verifyNodeList = function(e) { - if (!e) return []; - Array.isArray(e) || (e = [ e ]); - for (let t = 0; t < e.length; t++) { - const n = e[t]; - let r; - n ? "object" != typeof n ? r = "contains a non-object node" : n.type ? n instanceof s.default && (r = "has a NodePath when it expected a raw object") : r = "without a type" : r = "has falsy node"; - if (r) { - const e = Array.isArray(n) ? "array" : typeof n; - throw new Error(`Node list ${r} with the index of ${t} and type of ${e}`); - } - } - return e; - }; - n.unshiftContainer = function(e, t) { - this._assertUnremoved(); - t = this._verifyNodeList(t); - return s.default.get({ - parentPath: this, - parent: this.node, - container: this.node[e], - listKey: e, - key: 0 - }).setContext(this.context)._containerInsertBefore(t); - }; - n.pushContainer = function(e, t) { - this._assertUnremoved(); - const n = this._verifyNodeList(t); - const r = this.node[e]; - return s.default.get({ - parentPath: this, - parent: this.node, - container: r, - listKey: e, - key: r.length - }).setContext(this.context).replaceWithMultiple(n); - }; - n.hoist = function(e = this.scope) { - return new i.default(this, e).run(); - }; - r = e("../cache"); - i = e("./lib/hoister"); - s = e("./index"); - a = e("@babel/types"); - const {arrowFunctionExpression: o, assertExpression: l, assignmentExpression: c, blockStatement: p, callExpression: u, cloneNode: d, expressionStatement: h, isExpression: f} = a; - }, { - "../cache": 39, - "./index": 49, - "./lib/hoister": 54, - "@babel/types": 108 - } ], - 58: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.remove = function() { - var e; - this._assertUnremoved(); - this.resync(); - null != (e = this.opts) && e.noScope || this._removeFromScope(); - if (this._callRemovalHooks()) { - this._markRemoved(); - return; - } - this.shareCommentsWithSiblings(); - this._remove(); - this._markRemoved(); - }; - n._removeFromScope = function() { - const e = this.getBindingIdentifiers(); - Object.keys(e).forEach(e => this.scope.removeBinding(e)); - }; - n._callRemovalHooks = function() { - for (const e of r.hooks) if (e(this, this.parentPath)) return !0; - }; - n._remove = function() { - if (Array.isArray(this.container)) { - this.container.splice(this.key, 1); - this.updateSiblingKeys(this.key, -1); - } else this._replaceWith(null); - }; - n._markRemoved = function() { - this._traverseFlags |= s.SHOULD_SKIP | s.REMOVED; - this.parent && i.path.get(this.parent).delete(this.node); - this.node = null; - }; - n._assertUnremoved = function() { - if (this.removed) throw this.buildCodeFrameError("NodePath has been removed so is read-only."); - }; - r = e("./lib/removal-hooks"); - i = e("../cache"); - s = e("./index"); - }, { - "../cache": 39, - "./index": 49, - "./lib/removal-hooks": 55 - } ], - 59: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l, c; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.replaceWithMultiple = function(e) { - var t; - this.resync(); - e = this._verifyNodeList(e); - b(e[0], this.node); - S(e[e.length - 1], this.node); - null == (t = a.path.get(this.parent)) || t.delete(this.node); - this.node = this.container[this.key] = null; - const n = this.insertAfter(e); - this.node ? this.requeue() : this.remove(); - return n; - }; - n.replaceWithSourceString = function(e) { - this.resync(); - try { - e = `(${e})`; - e = (0, o.parse)(e); - } catch (t) { - const n = t.loc; - if (n) { - t.message += " - make sure this is an expression.\n" + (0, r.codeFrameColumns)(e, { - start: { - line: n.line, - column: n.column + 1 - } - }); - t.code = "BABEL_REPLACE_SOURCE_ERROR"; - } - throw t; - } - e = e.program.body[0].expression; - i.default.removeProperties(e); - return this.replaceWith(e); - }; - n.replaceWith = function(e) { - this.resync(); - if (this.removed) throw new Error("You can't replace this node, we've already removed it"); - e instanceof s.default && (e = e.node); - if (!e) throw new Error("You passed `path.replaceWith()` a falsy node, use `path.remove()` instead"); - if (this.node === e) return [ this ]; - if (this.isProgram() && !P(e)) throw new Error("You can only replace a Program root node with another Program node"); - if (Array.isArray(e)) throw new Error("Don't use `path.replaceWith()` with an array of nodes, use `path.replaceWithMultiple()`"); - if ("string" == typeof e) throw new Error("Don't use `path.replaceWith()` with a source string, use `path.replaceWithSourceString()`"); - let t = ""; - if (this.isNodeType("Statement") && E(e) && !this.canHaveVariableDeclarationOrExpression() && !this.canSwapBetweenExpressionAndStatement(e) && !this.parentPath.isExportDefaultDeclaration()) { - e = g(e); - t = "expression"; - } - if (this.isNodeType("Expression") && v(e) && !this.canHaveVariableDeclarationOrExpression() && !this.canSwapBetweenExpressionAndStatement(e)) return this.replaceExpressionWithStatements([ e ]); - const n = this.node; - if (n) { - x(e, n); - A(n); - } - this._replaceWith(e); - this.type = e.type; - this.setScope(); - this.requeue(); - return [ t ? this.get(t) : this ]; - }; - n._replaceWith = function(e) { - var t; - if (!this.container) throw new ReferenceError("Container is falsy"); - this.inList ? I(this.parent, this.key, [ e ]) : I(this.parent, this.key, e); - this.debug(`Replace with ${null == e ? void 0 : e.type}`); - null == (t = a.path.get(this.parent)) || t.set(e, this).delete(this.node); - this.node = this.container[this.key] = e; - }; - n.replaceExpressionWithStatements = function(e) { - this.resync(); - const t = C(e, this.scope); - if (t) return this.replaceWith(t)[0].get("expressions"); - const n = this.getFunctionParent(); - const r = null == n ? void 0 : n.is("async"); - const s = null == n ? void 0 : n.is("generator"); - const a = u([], f(e)); - this.replaceWith(m(a, [])); - const o = this.get("callee"); - (0, c.default)(o.get("body"), e => { - this.scope.push({ - id: e - }); - }, "var"); - const l = this.get("callee").getCompletionRecords(); - for (const e of l) { - if (!e.isExpressionStatement()) continue; - const t = e.findParent(e => e.isLoop()); - if (t) { - let n = t.getData("expressionReplacementReturnUid"); - if (n) n = T(n.name); else { - n = o.scope.generateDeclaredUidIdentifier("ret"); - o.get("body").pushContainer("body", w(y(n))); - t.setData("expressionReplacementReturnUid", n); - } - e.get("expression").replaceWith(d("=", y(n), e.node.expression)); - } else e.replaceWith(w(e.node.expression)); - } - o.arrowFunctionToExpression(); - const g = o; - const b = r && i.default.hasType(this.get("callee.body").node, "AwaitExpression", p); - const S = s && i.default.hasType(this.get("callee.body").node, "YieldExpression", p); - if (b) { - g.set("async", !0); - S || this.replaceWith(h(this.node)); - } - if (S) { - g.set("generator", !0); - this.replaceWith(O(this.node, !0)); - } - return g.get("body.body"); - }; - n.replaceInline = function(e) { - this.resync(); - if (Array.isArray(e)) { - if (Array.isArray(this.container)) { - e = this._verifyNodeList(e); - const t = this._containerInsertAfter(e); - this.remove(); - return t; - } - return this.replaceWithMultiple(e); - } - return this.replaceWith(e); - }; - r = e("@babel/code-frame"); - i = e("../index"); - s = e("./index"); - a = e("../cache"); - o = e("@babel/parser"); - l = e("@babel/types"); - c = e("@babel/helper-hoist-variables"); - const {FUNCTION_TYPES: p, arrowFunctionExpression: u, assignmentExpression: d, awaitExpression: h, blockStatement: f, callExpression: m, cloneNode: y, expressionStatement: g, identifier: T, inheritLeadingComments: b, inheritTrailingComments: S, inheritsComments: x, isExpression: E, isProgram: P, isStatement: v, removeComments: A, returnStatement: w, toSequenceExpression: C, validate: I, yieldExpression: O} = l; - }, { - "../cache": 39, - "../index": 42, - "./index": 49, - "@babel/code-frame": 2, - "@babel/helper-hoist-variables": 24, - "@babel/parser": 30, - "@babel/types": 108 - } ], - 60: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - n.default = class { - constructor({identifier: e, scope: t, path: n, kind: r}) { - this.identifier = void 0; - this.scope = void 0; - this.path = void 0; - this.kind = void 0; - this.constantViolations = []; - this.constant = !0; - this.referencePaths = []; - this.referenced = !1; - this.references = 0; - this.identifier = e; - this.scope = t; - this.path = n; - this.kind = r; - this.clearValue(); - } - deoptValue() { - this.clearValue(); - this.hasDeoptedValue = !0; - } - setValue(e) { - if (!this.hasDeoptedValue) { - this.hasValue = !0; - this.value = e; - } - } - clearValue() { - this.hasDeoptedValue = !1; - this.hasValue = !1; - this.value = null; - } - reassign(e) { - this.constant = !1; - -1 === this.constantViolations.indexOf(e) && this.constantViolations.push(e); - } - reference(e) { - if (-1 === this.referencePaths.indexOf(e)) { - this.referenced = !0; - this.references++; - this.referencePaths.push(e); - } - } - dereference() { - this.references--; - this.referenced = !!this.references; - } - }; - }, {} ], - 61: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("./lib/renamer"); - i = e("../index"); - s = e("./binding"); - a = e("globals"); - o = e("@babel/types"); - l = e("../cache"); - const {NOT_LOCAL_BINDING: c, callExpression: p, cloneNode: u, getBindingIdentifiers: d, identifier: h, isArrayExpression: f, isBinary: m, isClass: y, isClassBody: g, isClassDeclaration: T, isExportAllDeclaration: b, isExportDefaultDeclaration: S, isExportNamedDeclaration: x, isFunctionDeclaration: E, isIdentifier: P, isImportDeclaration: v, isLiteral: A, isMethod: w, isModuleDeclaration: C, isModuleSpecifier: I, isObjectExpression: O, isProperty: N, isPureish: k, isSuper: D, isTaggedTemplateExpression: M, isTemplateLiteral: _, isThisExpression: L, isUnaryExpression: j, isVariableDeclaration: F, matchesPattern: B, memberExpression: R, numericLiteral: U, toIdentifier: V, unaryExpression: K, variableDeclaration: W, variableDeclarator: q} = o; - const Y = { - ForStatement(e) { - const t = e.get("init"); - if (t.isVar()) { - const {scope: n} = e; - (n.getFunctionParent() || n.getProgramParent()).registerBinding("var", t); - } - }, - Declaration(e) { - if (e.isBlockScoped()) return; - if (e.isImportDeclaration()) return; - if (e.isExportDeclaration()) return; - (e.scope.getFunctionParent() || e.scope.getProgramParent()).registerDeclaration(e); - }, - ImportDeclaration(e) { - e.scope.getBlockParent().registerDeclaration(e); - }, - ReferencedIdentifier(e, t) { - t.references.push(e); - }, - ForXStatement(e, t) { - const n = e.get("left"); - if (n.isPattern() || n.isIdentifier()) t.constantViolations.push(e); else if (n.isVar()) { - const {scope: t} = e; - (t.getFunctionParent() || t.getProgramParent()).registerBinding("var", n); - } - }, - ExportDeclaration: { - exit(e) { - const {node: t, scope: n} = e; - if (b(t)) return; - const r = t.declaration; - if (T(r) || E(r)) { - const t = r.id; - if (!t) return; - const i = n.getBinding(t.name); - null == i || i.reference(e); - } else if (F(r)) for (const t of r.declarations) for (const r of Object.keys(d(t))) { - const t = n.getBinding(r); - null == t || t.reference(e); - } - } - }, - LabeledStatement(e) { - e.scope.getBlockParent().registerDeclaration(e); - }, - AssignmentExpression(e, t) { - t.assignments.push(e); - }, - UpdateExpression(e, t) { - t.constantViolations.push(e); - }, - UnaryExpression(e, t) { - "delete" === e.node.operator && t.constantViolations.push(e); - }, - BlockScoped(e) { - let t = e.scope; - t.path === e && (t = t.parent); - t.getBlockParent().registerDeclaration(e); - if (e.isClassDeclaration() && e.node.id) { - const t = e.node.id.name; - e.scope.bindings[t] = e.scope.parent.getBinding(t); - } - }, - CatchClause(e) { - e.scope.registerBinding("let", e); - }, - Function(e) { - e.isFunctionExpression() && e.has("id") && !e.get("id").node[c] && e.scope.registerBinding("local", e.get("id"), e); - const t = e.get("params"); - for (const n of t) e.scope.registerBinding("param", n); - }, - ClassExpression(e) { - e.has("id") && !e.get("id").node[c] && e.scope.registerBinding("local", e); - } - }; - let J = 0; - class X { - constructor(e) { - this.uid = void 0; - this.path = void 0; - this.block = void 0; - this.labels = void 0; - this.inited = void 0; - this.bindings = void 0; - this.references = void 0; - this.globals = void 0; - this.uids = void 0; - this.data = void 0; - this.crawling = void 0; - const {node: t} = e; - const n = l.scope.get(t); - if ((null == n ? void 0 : n.path) === e) return n; - l.scope.set(t, this); - this.uid = J++; - this.block = t; - this.path = e; - this.labels = new Map(); - this.inited = !1; - } - get parent() { - var e; - let t, n = this.path; - do { - const e = "key" === n.key; - n = n.parentPath; - e && n.isMethod() && (n = n.parentPath); - n && n.isScope() && (t = n); - } while (n && !t); - return null == (e = t) ? void 0 : e.scope; - } - get parentBlock() { - return this.path.parent; - } - get hub() { - return this.path.hub; - } - traverse(e, t, n) { - (0, i.default)(e, t, this, n, this.path); - } - generateDeclaredUidIdentifier(e) { - const t = this.generateUidIdentifier(e); - this.push({ - id: t - }); - return u(t); - } - generateUidIdentifier(e) { - return h(this.generateUid(e)); - } - generateUid(e = "temp") { - e = V(e).replace(/^_+/, "").replace(/[0-9]+$/g, ""); - let t; - let n = 1; - do { - t = this._generateUid(e, n); - n++; - } while (this.hasLabel(t) || this.hasBinding(t) || this.hasGlobal(t) || this.hasReference(t)); - const r = this.getProgramParent(); - r.references[t] = !0; - r.uids[t] = !0; - return t; - } - _generateUid(e, t) { - let n = e; - t > 1 && (n += t); - return `_${n}`; - } - generateUidBasedOnNode(e, t) { - const n = []; - !function e(t, n) { - switch (null == t ? void 0 : t.type) { - default: - if (C(t)) if ((b(t) || x(t) || v(t)) && t.source) e(t.source, n); else if ((x(t) || v(t)) && t.specifiers && t.specifiers.length) for (const r of t.specifiers) e(r, n); else (S(t) || x(t)) && t.declaration && e(t.declaration, n); else I(t) ? e(t.local, n) : A(t) && n.push(t.value); - break; - - case "MemberExpression": - case "OptionalMemberExpression": - case "JSXMemberExpression": - e(t.object, n); - e(t.property, n); - break; - - case "Identifier": - case "JSXIdentifier": - n.push(t.name); - break; - - case "CallExpression": - case "OptionalCallExpression": - case "NewExpression": - e(t.callee, n); - break; - - case "ObjectExpression": - case "ObjectPattern": - for (const r of t.properties) e(r, n); - break; - - case "SpreadElement": - case "RestElement": - e(t.argument, n); - break; - - case "ObjectProperty": - case "ObjectMethod": - case "ClassProperty": - case "ClassMethod": - case "ClassPrivateProperty": - case "ClassPrivateMethod": - e(t.key, n); - break; - - case "ThisExpression": - n.push("this"); - break; - - case "Super": - n.push("super"); - break; - - case "Import": - n.push("import"); - break; - - case "DoExpression": - n.push("do"); - break; - - case "YieldExpression": - n.push("yield"); - e(t.argument, n); - break; - - case "AwaitExpression": - n.push("await"); - e(t.argument, n); - break; - - case "AssignmentExpression": - e(t.left, n); - break; - - case "VariableDeclarator": - e(t.id, n); - break; - - case "FunctionExpression": - case "FunctionDeclaration": - case "ClassExpression": - case "ClassDeclaration": - case "PrivateName": - e(t.id, n); - break; - - case "ParenthesizedExpression": - e(t.expression, n); - break; - - case "UnaryExpression": - case "UpdateExpression": - e(t.argument, n); - break; - - case "MetaProperty": - e(t.meta, n); - e(t.property, n); - break; - - case "JSXElement": - e(t.openingElement, n); - break; - - case "JSXOpeningElement": - n.push(t.name); - break; - - case "JSXFragment": - e(t.openingFragment, n); - break; - - case "JSXOpeningFragment": - n.push("Fragment"); - break; - - case "JSXNamespacedName": - e(t.namespace, n); - e(t.name, n); - } - }(e, n); - let r = n.join("$"); - r = r.replace(/^_/, "") || t || "ref"; - return this.generateUid(r.slice(0, 20)); - } - generateUidIdentifierBasedOnNode(e, t) { - return h(this.generateUidBasedOnNode(e, t)); - } - isStatic(e) { - if (L(e) || D(e)) return !0; - if (P(e)) { - const t = this.getBinding(e.name); - return t ? t.constant : this.hasBinding(e.name); - } - return !1; - } - maybeGenerateMemoised(e, t) { - if (this.isStatic(e)) return null; - { - const n = this.generateUidIdentifierBasedOnNode(e); - if (!t) { - this.push({ - id: n - }); - return u(n); - } - return n; - } - } - checkBlockScopedCollisions(e, t, n, r) { - if ("param" === t) return; - if ("local" === e.kind) return; - if ("let" === t || "let" === e.kind || "const" === e.kind || "module" === e.kind || "param" === e.kind && ("let" === t || "const" === t)) throw this.hub.buildError(r, `Duplicate declaration "${n}"`, TypeError); - } - rename(e, t, n) { - const i = this.getBinding(e); - if (i) { - t = t || this.generateUidIdentifier(e).name; - return new r.default(i, e, t).rename(n); - } - } - _renameFromMap(e, t, n, r) { - if (e[t]) { - e[n] = r; - e[t] = null; - } - } - dump() { - const e = "-".repeat(60); - console.log(e); - let t = this; - do { - console.log("#", t.block.type); - for (const e of Object.keys(t.bindings)) { - const n = t.bindings[e]; - console.log(" -", e, { - constant: n.constant, - references: n.references, - violations: n.constantViolations.length, - kind: n.kind - }); - } - } while (t = t.parent); - console.log(e); - } - toArray(e, t, n) { - if (P(e)) { - const t = this.getBinding(e.name); - if (null != t && t.constant && t.path.isGenericType("Array")) return e; - } - if (f(e)) return e; - if (P(e, { - name: "arguments" - })) return p(R(R(R(h("Array"), h("prototype")), h("slice")), h("call")), [ e ]); - let r; - const i = [ e ]; - if (!0 === t) r = "toConsumableArray"; else if (t) { - i.push(U(t)); - r = "slicedToArray"; - } else r = "toArray"; - if (n) { - i.unshift(this.hub.addHelper(r)); - r = "maybeArrayLike"; - } - return p(this.hub.addHelper(r), i); - } - hasLabel(e) { - return !!this.getLabel(e); - } - getLabel(e) { - return this.labels.get(e); - } - registerLabel(e) { - this.labels.set(e.node.label.name, e); - } - registerDeclaration(e) { - if (e.isLabeledStatement()) this.registerLabel(e); else if (e.isFunctionDeclaration()) this.registerBinding("hoisted", e.get("id"), e); else if (e.isVariableDeclaration()) { - const t = e.get("declarations"); - for (const n of t) this.registerBinding(e.node.kind, n); - } else if (e.isClassDeclaration()) this.registerBinding("let", e); else if (e.isImportDeclaration()) { - const t = e.get("specifiers"); - for (const e of t) this.registerBinding("module", e); - } else if (e.isExportDeclaration()) { - const t = e.get("declaration"); - (t.isClassDeclaration() || t.isFunctionDeclaration() || t.isVariableDeclaration()) && this.registerDeclaration(t); - } else this.registerBinding("unknown", e); - } - buildUndefinedNode() { - return K("void", U(0), !0); - } - registerConstantViolation(e) { - const t = e.getBindingIdentifiers(); - for (const n of Object.keys(t)) { - const t = this.getBinding(n); - t && t.reassign(e); - } - } - registerBinding(e, t, n = t) { - if (!e) throw new ReferenceError("no `kind`"); - if (t.isVariableDeclaration()) { - const n = t.get("declarations"); - for (const t of n) this.registerBinding(e, t); - return; - } - const r = this.getProgramParent(); - const i = t.getOuterBindingIdentifiers(!0); - for (const t of Object.keys(i)) { - r.references[t] = !0; - for (const r of i[t]) { - const i = this.getOwnBinding(t); - if (i) { - if (i.identifier === r) continue; - this.checkBlockScopedCollisions(i, e, t, r); - } - i ? this.registerConstantViolation(n) : this.bindings[t] = new s.default({ - identifier: r, - scope: this, - path: n, - kind: e - }); - } - } - } - addGlobal(e) { - this.globals[e.name] = e; - } - hasUid(e) { - let t = this; - do { - if (t.uids[e]) return !0; - } while (t = t.parent); - return !1; - } - hasGlobal(e) { - let t = this; - do { - if (t.globals[e]) return !0; - } while (t = t.parent); - return !1; - } - hasReference(e) { - return !!this.getProgramParent().references[e]; - } - isPure(e, t) { - if (P(e)) { - const n = this.getBinding(e.name); - return !!n && (!t || n.constant); - } - if (y(e)) return !(e.superClass && !this.isPure(e.superClass, t)) && this.isPure(e.body, t); - if (g(e)) { - for (const n of e.body) if (!this.isPure(n, t)) return !1; - return !0; - } - if (m(e)) return this.isPure(e.left, t) && this.isPure(e.right, t); - if (f(e)) { - for (const n of e.elements) if (!this.isPure(n, t)) return !1; - return !0; - } - if (O(e)) { - for (const n of e.properties) if (!this.isPure(n, t)) return !1; - return !0; - } - if (w(e)) return !(e.computed && !this.isPure(e.key, t)) && ("get" !== e.kind && "set" !== e.kind); - if (N(e)) return !(e.computed && !this.isPure(e.key, t)) && this.isPure(e.value, t); - if (j(e)) return this.isPure(e.argument, t); - if (M(e)) return B(e.tag, "String.raw") && !this.hasBinding("String", !0) && this.isPure(e.quasi, t); - if (_(e)) { - for (const n of e.expressions) if (!this.isPure(n, t)) return !1; - return !0; - } - return k(e); - } - setData(e, t) { - return this.data[e] = t; - } - getData(e) { - let t = this; - do { - const n = t.data[e]; - if (null != n) return n; - } while (t = t.parent); - } - removeData(e) { - let t = this; - do { - null != t.data[e] && (t.data[e] = null); - } while (t = t.parent); - } - init() { - if (!this.inited) { - this.inited = !0; - this.crawl(); - } - } - crawl() { - const e = this.path; - this.references = Object.create(null); - this.bindings = Object.create(null); - this.globals = Object.create(null); - this.uids = Object.create(null); - this.data = Object.create(null); - const t = this.getProgramParent(); - if (t.crawling) return; - const n = { - references: [], - constantViolations: [], - assignments: [] - }; - this.crawling = !0; - if ("Program" !== e.type && Y._exploded) { - for (const t of Y.enter) t(e, n); - const t = Y[e.type]; - if (t) for (const r of t.enter) r(e, n); - } - e.traverse(Y, n); - this.crawling = !1; - for (const e of n.assignments) { - const n = e.getBindingIdentifiers(); - for (const r of Object.keys(n)) e.scope.getBinding(r) || t.addGlobal(n[r]); - e.scope.registerConstantViolation(e); - } - for (const e of n.references) { - const n = e.scope.getBinding(e.node.name); - n ? n.reference(e) : t.addGlobal(e.node); - } - for (const e of n.constantViolations) e.scope.registerConstantViolation(e); - } - push(e) { - let t = this.path; - t.isBlockStatement() || t.isProgram() || (t = this.getBlockParent().path); - t.isSwitchStatement() && (t = (this.getFunctionParent() || this.getProgramParent()).path); - if (t.isLoop() || t.isCatchClause() || t.isFunction()) { - t.ensureBlock(); - t = t.get("body"); - } - const n = e.unique; - const r = e.kind || "var"; - const i = null == e._blockHoist ? 2 : e._blockHoist; - const s = `declaration:${r}:${i}`; - let a = !n && t.getData(s); - if (!a) { - const e = W(r, []); - e._blockHoist = i; - [a] = t.unshiftContainer("body", [ e ]); - n || t.setData(s, a); - } - const o = q(e.id, e.init); - a.node.declarations.push(o); - this.registerBinding(r, a.get("declarations").pop()); - } - getProgramParent() { - let e = this; - do { - if (e.path.isProgram()) return e; - } while (e = e.parent); - throw new Error("Couldn't find a Program"); - } - getFunctionParent() { - let e = this; - do { - if (e.path.isFunctionParent()) return e; - } while (e = e.parent); - return null; - } - getBlockParent() { - let e = this; - do { - if (e.path.isBlockParent()) return e; - } while (e = e.parent); - throw new Error("We couldn't find a BlockStatement, For, Switch, Function, Loop or Program..."); - } - getAllBindings() { - const e = Object.create(null); - let t = this; - do { - for (const n of Object.keys(t.bindings)) n in e == !1 && (e[n] = t.bindings[n]); - t = t.parent; - } while (t); - return e; - } - getAllBindingsOfKind(...e) { - const t = Object.create(null); - for (const n of e) { - let e = this; - do { - for (const r of Object.keys(e.bindings)) { - const i = e.bindings[r]; - i.kind === n && (t[r] = i); - } - e = e.parent; - } while (e); - } - return t; - } - bindingIdentifierEquals(e, t) { - return this.getBindingIdentifier(e) === t; - } - getBinding(e) { - let t = this; - let n; - do { - const i = t.getOwnBinding(e); - if (i) { - var r; - if (null == (r = n) || !r.isPattern() || "param" === i.kind) return i; - } - n = t.path; - } while (t = t.parent); - } - getOwnBinding(e) { - return this.bindings[e]; - } - getBindingIdentifier(e) { - var t; - return null == (t = this.getBinding(e)) ? void 0 : t.identifier; - } - getOwnBindingIdentifier(e) { - const t = this.bindings[e]; - return null == t ? void 0 : t.identifier; - } - hasOwnBinding(e) { - return !!this.getOwnBinding(e); - } - hasBinding(e, t) { - return !!e && (!!this.hasOwnBinding(e) || (!!this.parentHasBinding(e, t) || (!!this.hasUid(e) || (!(t || !X.globals.includes(e)) || !(t || !X.contextVariables.includes(e)))))); - } - parentHasBinding(e, t) { - var n; - return null == (n = this.parent) ? void 0 : n.hasBinding(e, t); - } - moveBindingTo(e, t) { - const n = this.getBinding(e); - if (n) { - n.scope.removeOwnBinding(e); - n.scope = t; - t.bindings[e] = n; - } - } - removeOwnBinding(e) { - delete this.bindings[e]; - } - removeBinding(e) { - var t; - null == (t = this.getBinding(e)) || t.scope.removeOwnBinding(e); - let n = this; - do { - n.uids[e] && (n.uids[e] = !1); - } while (n = n.parent); - } - } - n.default = X; - X.globals = Object.keys(a.builtin); - X.contextVariables = [ "arguments", "undefined", "Infinity", "NaN" ]; - }, { - "../cache": 39, - "../index": 42, - "./binding": 60, - "./lib/renamer": 62, - "@babel/types": 108, - globals: 155 - } ], - 62: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - e("../binding"); - r = e("@babel/helper-split-export-declaration"); - i = e("@babel/types"); - const {VISITOR_KEYS: s, assignmentExpression: a, identifier: o, toExpression: l, variableDeclaration: c, variableDeclarator: p} = i; - const u = { - ReferencedIdentifier({node: e}, t) { - e.name === t.oldName && (e.name = t.newName); - }, - Scope(e, t) { - e.scope.bindingIdentifierEquals(t.oldName, t.binding.identifier) || function(e) { - if (!e.isMethod() || !e.node.computed) { - e.skip(); - return; - } - const t = s[e.type]; - for (const n of t) "key" !== n && e.skipKey(n); - }(e); - }, - "AssignmentExpression|Declaration|VariableDeclarator"(e, t) { - if (e.isVariableDeclaration()) return; - const n = e.getOuterBindingIdentifiers(); - for (const e in n) e === t.oldName && (n[e].name = t.newName); - } - }; - n.default = class { - constructor(e, t, n) { - this.newName = n; - this.oldName = t; - this.binding = e; - } - maybeConvertFromExportDeclaration(e) { - const t = e.parentPath; - t.isExportDeclaration() && (t.isExportDefaultDeclaration() && !t.get("declaration").node.id || (0, - r.default)(t)); - } - maybeConvertFromClassFunctionDeclaration(e) {} - maybeConvertFromClassFunctionExpression(e) {} - rename(e) { - const {binding: t, oldName: n, newName: r} = this; - const {scope: i, path: s} = t; - const a = s.find(e => e.isDeclaration() || e.isFunctionExpression() || e.isClassExpression()); - a && a.getOuterBindingIdentifiers()[n] === t.identifier && this.maybeConvertFromExportDeclaration(a); - const o = e || i.block; - "SwitchStatement" === (null == o ? void 0 : o.type) ? o.cases.forEach(e => { - i.traverse(e, u, this); - }) : i.traverse(o, u, this); - if (!e) { - i.removeOwnBinding(n); - i.bindings[r] = t; - this.binding.identifier.name = r; - } - if (a) { - this.maybeConvertFromClassFunctionDeclaration(a); - this.maybeConvertFromClassFunctionExpression(a); - } - } - }; - }, { - "../binding": 60, - "@babel/helper-split-export-declaration": 25, - "@babel/types": 108 - } ], - 63: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.explode = l; - n.verify = c; - n.merge = function(e, t = [], n) { - const r = {}; - for (let i = 0; i < e.length; i++) { - const s = e[i]; - const a = t[i]; - l(s); - for (const e of Object.keys(s)) { - let t = s[e]; - (a || n) && (t = u(t, a, n)); - const i = r[e] = r[e] || {}; - m(i, t); - } - } - return r; - }; - r = e("./path/lib/virtual-types"); - i = e("@babel/types"); - const {DEPRECATED_KEYS: s, FLIPPED_ALIAS_KEYS: a, TYPES: o} = i; - function l(e) { - if (e._exploded) return e; - e._exploded = !0; - for (const t of Object.keys(e)) { - if (f(t)) continue; - const n = t.split("|"); - if (1 === n.length) continue; - const r = e[t]; - delete e[t]; - for (const t of n) e[t] = r; - } - c(e); - delete e.__esModule; - !function(e) { - for (const t of Object.keys(e)) { - if (f(t)) continue; - const n = e[t]; - "function" == typeof n && (e[t] = { - enter: n - }); - } - }(e); - d(e); - for (const t of Object.keys(e)) { - if (f(t)) continue; - const n = r[t]; - if (!n) continue; - const i = e[t]; - for (const e of Object.keys(i)) i[e] = h(n, i[e]); - delete e[t]; - if (n.types) for (const t of n.types) e[t] ? m(e[t], i) : e[t] = i; else m(e, i); - } - for (const t of Object.keys(e)) { - if (f(t)) continue; - const n = e[t]; - let r = a[t]; - const i = s[t]; - if (i) { - console.trace(`Visitor defined for ${t} but it has been renamed to ${i}`); - r = [ i ]; - } - if (r) { - delete e[t]; - for (const t of r) { - const r = e[t]; - r ? m(r, n) : e[t] = Object.assign({}, n); - } - } - } - for (const t of Object.keys(e)) f(t) || d(e[t]); - return e; - } - function c(e) { - if (!e._verified) { - if ("function" == typeof e) throw new Error("You passed `traverse()` a function when it expected a visitor object, are you sure you didn't mean `{ enter: Function }`?"); - for (const t of Object.keys(e)) { - "enter" !== t && "exit" !== t || p(t, e[t]); - if (f(t)) continue; - if (o.indexOf(t) < 0) throw new Error(`You gave us a visitor for the node type ${t} but it's not a valid type`); - const n = e[t]; - if ("object" == typeof n) for (const e of Object.keys(n)) { - if ("enter" !== e && "exit" !== e) throw new Error("You passed `traverse()` a visitor object with the property " + `${t} that has the invalid property ${e}`); - p(`${t}.${e}`, n[e]); - } - } - e._verified = !0; - } - } - function p(e, t) { - const n = [].concat(t); - for (const t of n) if ("function" != typeof t) throw new TypeError(`Non-function found defined in ${e} with type ${typeof t}`); - } - function u(e, t, n) { - const r = {}; - for (const i of Object.keys(e)) { - let s = e[i]; - if (Array.isArray(s)) { - s = s.map(function(e) { - let r = e; - t && (r = function(n) { - return e.call(t, n, t); - }); - n && (r = n(t.key, i, r)); - r !== e && (r.toString = (() => e.toString())); - return r; - }); - r[i] = s; - } - } - return r; - } - function d(e) { - e.enter && !Array.isArray(e.enter) && (e.enter = [ e.enter ]); - e.exit && !Array.isArray(e.exit) && (e.exit = [ e.exit ]); - } - function h(e, t) { - const n = function(n) { - if (e.checkPath(n)) return t.apply(this, arguments); - }; - n.toString = (() => t.toString()); - return n; - } - function f(e) { - return "_" === e[0] || ("enter" === e || "exit" === e || "shouldSkip" === e || ("denylist" === e || "noScope" === e || "skipKeys" === e || "blacklist" === e)); - } - function m(e, t) { - for (const n of Object.keys(t)) e[n] = [].concat(e[n] || [], t[n]); - } - }, { - "./path/lib/virtual-types": 56, - "@babel/types": 108 - } ], - 64: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - if (!(0, r.default)(e)) { - var t; - const n = null != (t = null == e ? void 0 : e.type) ? t : JSON.stringify(e); - throw new TypeError(`Not a valid node of type "${n}"`); - } - }; - var r = e("../validators/isNode"); - }, { - "../validators/isNode": 130 - } ], - 65: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.assertArrayExpression = function(e, t) { - i("ArrayExpression", e, t); - }; - n.assertAssignmentExpression = function(e, t) { - i("AssignmentExpression", e, t); - }; - n.assertBinaryExpression = function(e, t) { - i("BinaryExpression", e, t); - }; - n.assertInterpreterDirective = function(e, t) { - i("InterpreterDirective", e, t); - }; - n.assertDirective = function(e, t) { - i("Directive", e, t); - }; - n.assertDirectiveLiteral = function(e, t) { - i("DirectiveLiteral", e, t); - }; - n.assertBlockStatement = function(e, t) { - i("BlockStatement", e, t); - }; - n.assertBreakStatement = function(e, t) { - i("BreakStatement", e, t); - }; - n.assertCallExpression = function(e, t) { - i("CallExpression", e, t); - }; - n.assertCatchClause = function(e, t) { - i("CatchClause", e, t); - }; - n.assertConditionalExpression = function(e, t) { - i("ConditionalExpression", e, t); - }; - n.assertContinueStatement = function(e, t) { - i("ContinueStatement", e, t); - }; - n.assertDebuggerStatement = function(e, t) { - i("DebuggerStatement", e, t); - }; - n.assertDoWhileStatement = function(e, t) { - i("DoWhileStatement", e, t); - }; - n.assertEmptyStatement = function(e, t) { - i("EmptyStatement", e, t); - }; - n.assertExpressionStatement = function(e, t) { - i("ExpressionStatement", e, t); - }; - n.assertFile = function(e, t) { - i("File", e, t); - }; - n.assertForInStatement = function(e, t) { - i("ForInStatement", e, t); - }; - n.assertForStatement = function(e, t) { - i("ForStatement", e, t); - }; - n.assertFunctionDeclaration = function(e, t) { - i("FunctionDeclaration", e, t); - }; - n.assertFunctionExpression = function(e, t) { - i("FunctionExpression", e, t); - }; - n.assertIdentifier = function(e, t) { - i("Identifier", e, t); - }; - n.assertIfStatement = function(e, t) { - i("IfStatement", e, t); - }; - n.assertLabeledStatement = function(e, t) { - i("LabeledStatement", e, t); - }; - n.assertStringLiteral = function(e, t) { - i("StringLiteral", e, t); - }; - n.assertNumericLiteral = function(e, t) { - i("NumericLiteral", e, t); - }; - n.assertNullLiteral = function(e, t) { - i("NullLiteral", e, t); - }; - n.assertBooleanLiteral = function(e, t) { - i("BooleanLiteral", e, t); - }; - n.assertRegExpLiteral = function(e, t) { - i("RegExpLiteral", e, t); - }; - n.assertLogicalExpression = function(e, t) { - i("LogicalExpression", e, t); - }; - n.assertMemberExpression = function(e, t) { - i("MemberExpression", e, t); - }; - n.assertNewExpression = function(e, t) { - i("NewExpression", e, t); - }; - n.assertProgram = function(e, t) { - i("Program", e, t); - }; - n.assertObjectExpression = function(e, t) { - i("ObjectExpression", e, t); - }; - n.assertObjectMethod = function(e, t) { - i("ObjectMethod", e, t); - }; - n.assertObjectProperty = function(e, t) { - i("ObjectProperty", e, t); - }; - n.assertRestElement = function(e, t) { - i("RestElement", e, t); - }; - n.assertReturnStatement = function(e, t) { - i("ReturnStatement", e, t); - }; - n.assertSequenceExpression = function(e, t) { - i("SequenceExpression", e, t); - }; - n.assertParenthesizedExpression = function(e, t) { - i("ParenthesizedExpression", e, t); - }; - n.assertSwitchCase = function(e, t) { - i("SwitchCase", e, t); - }; - n.assertSwitchStatement = function(e, t) { - i("SwitchStatement", e, t); - }; - n.assertThisExpression = function(e, t) { - i("ThisExpression", e, t); - }; - n.assertThrowStatement = function(e, t) { - i("ThrowStatement", e, t); - }; - n.assertTryStatement = function(e, t) { - i("TryStatement", e, t); - }; - n.assertUnaryExpression = function(e, t) { - i("UnaryExpression", e, t); - }; - n.assertUpdateExpression = function(e, t) { - i("UpdateExpression", e, t); - }; - n.assertVariableDeclaration = function(e, t) { - i("VariableDeclaration", e, t); - }; - n.assertVariableDeclarator = function(e, t) { - i("VariableDeclarator", e, t); - }; - n.assertWhileStatement = function(e, t) { - i("WhileStatement", e, t); - }; - n.assertWithStatement = function(e, t) { - i("WithStatement", e, t); - }; - n.assertAssignmentPattern = function(e, t) { - i("AssignmentPattern", e, t); - }; - n.assertArrayPattern = function(e, t) { - i("ArrayPattern", e, t); - }; - n.assertArrowFunctionExpression = function(e, t) { - i("ArrowFunctionExpression", e, t); - }; - n.assertClassBody = function(e, t) { - i("ClassBody", e, t); - }; - n.assertClassExpression = function(e, t) { - i("ClassExpression", e, t); - }; - n.assertClassDeclaration = function(e, t) { - i("ClassDeclaration", e, t); - }; - n.assertExportAllDeclaration = function(e, t) { - i("ExportAllDeclaration", e, t); - }; - n.assertExportDefaultDeclaration = function(e, t) { - i("ExportDefaultDeclaration", e, t); - }; - n.assertExportNamedDeclaration = function(e, t) { - i("ExportNamedDeclaration", e, t); - }; - n.assertExportSpecifier = function(e, t) { - i("ExportSpecifier", e, t); - }; - n.assertForOfStatement = function(e, t) { - i("ForOfStatement", e, t); - }; - n.assertImportDeclaration = function(e, t) { - i("ImportDeclaration", e, t); - }; - n.assertImportDefaultSpecifier = function(e, t) { - i("ImportDefaultSpecifier", e, t); - }; - n.assertImportNamespaceSpecifier = function(e, t) { - i("ImportNamespaceSpecifier", e, t); - }; - n.assertImportSpecifier = function(e, t) { - i("ImportSpecifier", e, t); - }; - n.assertMetaProperty = function(e, t) { - i("MetaProperty", e, t); - }; - n.assertClassMethod = function(e, t) { - i("ClassMethod", e, t); - }; - n.assertObjectPattern = function(e, t) { - i("ObjectPattern", e, t); - }; - n.assertSpreadElement = function(e, t) { - i("SpreadElement", e, t); - }; - n.assertSuper = function(e, t) { - i("Super", e, t); - }; - n.assertTaggedTemplateExpression = function(e, t) { - i("TaggedTemplateExpression", e, t); - }; - n.assertTemplateElement = function(e, t) { - i("TemplateElement", e, t); - }; - n.assertTemplateLiteral = function(e, t) { - i("TemplateLiteral", e, t); - }; - n.assertYieldExpression = function(e, t) { - i("YieldExpression", e, t); - }; - n.assertAwaitExpression = function(e, t) { - i("AwaitExpression", e, t); - }; - n.assertImport = function(e, t) { - i("Import", e, t); - }; - n.assertBigIntLiteral = function(e, t) { - i("BigIntLiteral", e, t); - }; - n.assertExportNamespaceSpecifier = function(e, t) { - i("ExportNamespaceSpecifier", e, t); - }; - n.assertOptionalMemberExpression = function(e, t) { - i("OptionalMemberExpression", e, t); - }; - n.assertOptionalCallExpression = function(e, t) { - i("OptionalCallExpression", e, t); - }; - n.assertClassProperty = function(e, t) { - i("ClassProperty", e, t); - }; - n.assertClassPrivateProperty = function(e, t) { - i("ClassPrivateProperty", e, t); - }; - n.assertClassPrivateMethod = function(e, t) { - i("ClassPrivateMethod", e, t); - }; - n.assertPrivateName = function(e, t) { - i("PrivateName", e, t); - }; - n.assertAnyTypeAnnotation = function(e, t) { - i("AnyTypeAnnotation", e, t); - }; - n.assertArrayTypeAnnotation = function(e, t) { - i("ArrayTypeAnnotation", e, t); - }; - n.assertBooleanTypeAnnotation = function(e, t) { - i("BooleanTypeAnnotation", e, t); - }; - n.assertBooleanLiteralTypeAnnotation = function(e, t) { - i("BooleanLiteralTypeAnnotation", e, t); - }; - n.assertNullLiteralTypeAnnotation = function(e, t) { - i("NullLiteralTypeAnnotation", e, t); - }; - n.assertClassImplements = function(e, t) { - i("ClassImplements", e, t); - }; - n.assertDeclareClass = function(e, t) { - i("DeclareClass", e, t); - }; - n.assertDeclareFunction = function(e, t) { - i("DeclareFunction", e, t); - }; - n.assertDeclareInterface = function(e, t) { - i("DeclareInterface", e, t); - }; - n.assertDeclareModule = function(e, t) { - i("DeclareModule", e, t); - }; - n.assertDeclareModuleExports = function(e, t) { - i("DeclareModuleExports", e, t); - }; - n.assertDeclareTypeAlias = function(e, t) { - i("DeclareTypeAlias", e, t); - }; - n.assertDeclareOpaqueType = function(e, t) { - i("DeclareOpaqueType", e, t); - }; - n.assertDeclareVariable = function(e, t) { - i("DeclareVariable", e, t); - }; - n.assertDeclareExportDeclaration = function(e, t) { - i("DeclareExportDeclaration", e, t); - }; - n.assertDeclareExportAllDeclaration = function(e, t) { - i("DeclareExportAllDeclaration", e, t); - }; - n.assertDeclaredPredicate = function(e, t) { - i("DeclaredPredicate", e, t); - }; - n.assertExistsTypeAnnotation = function(e, t) { - i("ExistsTypeAnnotation", e, t); - }; - n.assertFunctionTypeAnnotation = function(e, t) { - i("FunctionTypeAnnotation", e, t); - }; - n.assertFunctionTypeParam = function(e, t) { - i("FunctionTypeParam", e, t); - }; - n.assertGenericTypeAnnotation = function(e, t) { - i("GenericTypeAnnotation", e, t); - }; - n.assertInferredPredicate = function(e, t) { - i("InferredPredicate", e, t); - }; - n.assertInterfaceExtends = function(e, t) { - i("InterfaceExtends", e, t); - }; - n.assertInterfaceDeclaration = function(e, t) { - i("InterfaceDeclaration", e, t); - }; - n.assertInterfaceTypeAnnotation = function(e, t) { - i("InterfaceTypeAnnotation", e, t); - }; - n.assertIntersectionTypeAnnotation = function(e, t) { - i("IntersectionTypeAnnotation", e, t); - }; - n.assertMixedTypeAnnotation = function(e, t) { - i("MixedTypeAnnotation", e, t); - }; - n.assertEmptyTypeAnnotation = function(e, t) { - i("EmptyTypeAnnotation", e, t); - }; - n.assertNullableTypeAnnotation = function(e, t) { - i("NullableTypeAnnotation", e, t); - }; - n.assertNumberLiteralTypeAnnotation = function(e, t) { - i("NumberLiteralTypeAnnotation", e, t); - }; - n.assertNumberTypeAnnotation = function(e, t) { - i("NumberTypeAnnotation", e, t); - }; - n.assertObjectTypeAnnotation = function(e, t) { - i("ObjectTypeAnnotation", e, t); - }; - n.assertObjectTypeInternalSlot = function(e, t) { - i("ObjectTypeInternalSlot", e, t); - }; - n.assertObjectTypeCallProperty = function(e, t) { - i("ObjectTypeCallProperty", e, t); - }; - n.assertObjectTypeIndexer = function(e, t) { - i("ObjectTypeIndexer", e, t); - }; - n.assertObjectTypeProperty = function(e, t) { - i("ObjectTypeProperty", e, t); - }; - n.assertObjectTypeSpreadProperty = function(e, t) { - i("ObjectTypeSpreadProperty", e, t); - }; - n.assertOpaqueType = function(e, t) { - i("OpaqueType", e, t); - }; - n.assertQualifiedTypeIdentifier = function(e, t) { - i("QualifiedTypeIdentifier", e, t); - }; - n.assertStringLiteralTypeAnnotation = function(e, t) { - i("StringLiteralTypeAnnotation", e, t); - }; - n.assertStringTypeAnnotation = function(e, t) { - i("StringTypeAnnotation", e, t); - }; - n.assertSymbolTypeAnnotation = function(e, t) { - i("SymbolTypeAnnotation", e, t); - }; - n.assertThisTypeAnnotation = function(e, t) { - i("ThisTypeAnnotation", e, t); - }; - n.assertTupleTypeAnnotation = function(e, t) { - i("TupleTypeAnnotation", e, t); - }; - n.assertTypeofTypeAnnotation = function(e, t) { - i("TypeofTypeAnnotation", e, t); - }; - n.assertTypeAlias = function(e, t) { - i("TypeAlias", e, t); - }; - n.assertTypeAnnotation = function(e, t) { - i("TypeAnnotation", e, t); - }; - n.assertTypeCastExpression = function(e, t) { - i("TypeCastExpression", e, t); - }; - n.assertTypeParameter = function(e, t) { - i("TypeParameter", e, t); - }; - n.assertTypeParameterDeclaration = function(e, t) { - i("TypeParameterDeclaration", e, t); - }; - n.assertTypeParameterInstantiation = function(e, t) { - i("TypeParameterInstantiation", e, t); - }; - n.assertUnionTypeAnnotation = function(e, t) { - i("UnionTypeAnnotation", e, t); - }; - n.assertVariance = function(e, t) { - i("Variance", e, t); - }; - n.assertVoidTypeAnnotation = function(e, t) { - i("VoidTypeAnnotation", e, t); - }; - n.assertEnumDeclaration = function(e, t) { - i("EnumDeclaration", e, t); - }; - n.assertEnumBooleanBody = function(e, t) { - i("EnumBooleanBody", e, t); - }; - n.assertEnumNumberBody = function(e, t) { - i("EnumNumberBody", e, t); - }; - n.assertEnumStringBody = function(e, t) { - i("EnumStringBody", e, t); - }; - n.assertEnumSymbolBody = function(e, t) { - i("EnumSymbolBody", e, t); - }; - n.assertEnumBooleanMember = function(e, t) { - i("EnumBooleanMember", e, t); - }; - n.assertEnumNumberMember = function(e, t) { - i("EnumNumberMember", e, t); - }; - n.assertEnumStringMember = function(e, t) { - i("EnumStringMember", e, t); - }; - n.assertEnumDefaultedMember = function(e, t) { - i("EnumDefaultedMember", e, t); - }; - n.assertIndexedAccessType = function(e, t) { - i("IndexedAccessType", e, t); - }; - n.assertOptionalIndexedAccessType = function(e, t) { - i("OptionalIndexedAccessType", e, t); - }; - n.assertJSXAttribute = function(e, t) { - i("JSXAttribute", e, t); - }; - n.assertJSXClosingElement = function(e, t) { - i("JSXClosingElement", e, t); - }; - n.assertJSXElement = function(e, t) { - i("JSXElement", e, t); - }; - n.assertJSXEmptyExpression = function(e, t) { - i("JSXEmptyExpression", e, t); - }; - n.assertJSXExpressionContainer = function(e, t) { - i("JSXExpressionContainer", e, t); - }; - n.assertJSXSpreadChild = function(e, t) { - i("JSXSpreadChild", e, t); - }; - n.assertJSXIdentifier = function(e, t) { - i("JSXIdentifier", e, t); - }; - n.assertJSXMemberExpression = function(e, t) { - i("JSXMemberExpression", e, t); - }; - n.assertJSXNamespacedName = function(e, t) { - i("JSXNamespacedName", e, t); - }; - n.assertJSXOpeningElement = function(e, t) { - i("JSXOpeningElement", e, t); - }; - n.assertJSXSpreadAttribute = function(e, t) { - i("JSXSpreadAttribute", e, t); - }; - n.assertJSXText = function(e, t) { - i("JSXText", e, t); - }; - n.assertJSXFragment = function(e, t) { - i("JSXFragment", e, t); - }; - n.assertJSXOpeningFragment = function(e, t) { - i("JSXOpeningFragment", e, t); - }; - n.assertJSXClosingFragment = function(e, t) { - i("JSXClosingFragment", e, t); - }; - n.assertNoop = function(e, t) { - i("Noop", e, t); - }; - n.assertPlaceholder = function(e, t) { - i("Placeholder", e, t); - }; - n.assertV8IntrinsicIdentifier = function(e, t) { - i("V8IntrinsicIdentifier", e, t); - }; - n.assertArgumentPlaceholder = function(e, t) { - i("ArgumentPlaceholder", e, t); - }; - n.assertBindExpression = function(e, t) { - i("BindExpression", e, t); - }; - n.assertImportAttribute = function(e, t) { - i("ImportAttribute", e, t); - }; - n.assertDecorator = function(e, t) { - i("Decorator", e, t); - }; - n.assertDoExpression = function(e, t) { - i("DoExpression", e, t); - }; - n.assertExportDefaultSpecifier = function(e, t) { - i("ExportDefaultSpecifier", e, t); - }; - n.assertRecordExpression = function(e, t) { - i("RecordExpression", e, t); - }; - n.assertTupleExpression = function(e, t) { - i("TupleExpression", e, t); - }; - n.assertDecimalLiteral = function(e, t) { - i("DecimalLiteral", e, t); - }; - n.assertStaticBlock = function(e, t) { - i("StaticBlock", e, t); - }; - n.assertModuleExpression = function(e, t) { - i("ModuleExpression", e, t); - }; - n.assertTopicReference = function(e, t) { - i("TopicReference", e, t); - }; - n.assertPipelineTopicExpression = function(e, t) { - i("PipelineTopicExpression", e, t); - }; - n.assertPipelineBareFunction = function(e, t) { - i("PipelineBareFunction", e, t); - }; - n.assertPipelinePrimaryTopicReference = function(e, t) { - i("PipelinePrimaryTopicReference", e, t); - }; - n.assertTSParameterProperty = function(e, t) { - i("TSParameterProperty", e, t); - }; - n.assertTSDeclareFunction = function(e, t) { - i("TSDeclareFunction", e, t); - }; - n.assertTSDeclareMethod = function(e, t) { - i("TSDeclareMethod", e, t); - }; - n.assertTSQualifiedName = function(e, t) { - i("TSQualifiedName", e, t); - }; - n.assertTSCallSignatureDeclaration = function(e, t) { - i("TSCallSignatureDeclaration", e, t); - }; - n.assertTSConstructSignatureDeclaration = function(e, t) { - i("TSConstructSignatureDeclaration", e, t); - }; - n.assertTSPropertySignature = function(e, t) { - i("TSPropertySignature", e, t); - }; - n.assertTSMethodSignature = function(e, t) { - i("TSMethodSignature", e, t); - }; - n.assertTSIndexSignature = function(e, t) { - i("TSIndexSignature", e, t); - }; - n.assertTSAnyKeyword = function(e, t) { - i("TSAnyKeyword", e, t); - }; - n.assertTSBooleanKeyword = function(e, t) { - i("TSBooleanKeyword", e, t); - }; - n.assertTSBigIntKeyword = function(e, t) { - i("TSBigIntKeyword", e, t); - }; - n.assertTSIntrinsicKeyword = function(e, t) { - i("TSIntrinsicKeyword", e, t); - }; - n.assertTSNeverKeyword = function(e, t) { - i("TSNeverKeyword", e, t); - }; - n.assertTSNullKeyword = function(e, t) { - i("TSNullKeyword", e, t); - }; - n.assertTSNumberKeyword = function(e, t) { - i("TSNumberKeyword", e, t); - }; - n.assertTSObjectKeyword = function(e, t) { - i("TSObjectKeyword", e, t); - }; - n.assertTSStringKeyword = function(e, t) { - i("TSStringKeyword", e, t); - }; - n.assertTSSymbolKeyword = function(e, t) { - i("TSSymbolKeyword", e, t); - }; - n.assertTSUndefinedKeyword = function(e, t) { - i("TSUndefinedKeyword", e, t); - }; - n.assertTSUnknownKeyword = function(e, t) { - i("TSUnknownKeyword", e, t); - }; - n.assertTSVoidKeyword = function(e, t) { - i("TSVoidKeyword", e, t); - }; - n.assertTSThisType = function(e, t) { - i("TSThisType", e, t); - }; - n.assertTSFunctionType = function(e, t) { - i("TSFunctionType", e, t); - }; - n.assertTSConstructorType = function(e, t) { - i("TSConstructorType", e, t); - }; - n.assertTSTypeReference = function(e, t) { - i("TSTypeReference", e, t); - }; - n.assertTSTypePredicate = function(e, t) { - i("TSTypePredicate", e, t); - }; - n.assertTSTypeQuery = function(e, t) { - i("TSTypeQuery", e, t); - }; - n.assertTSTypeLiteral = function(e, t) { - i("TSTypeLiteral", e, t); - }; - n.assertTSArrayType = function(e, t) { - i("TSArrayType", e, t); - }; - n.assertTSTupleType = function(e, t) { - i("TSTupleType", e, t); - }; - n.assertTSOptionalType = function(e, t) { - i("TSOptionalType", e, t); - }; - n.assertTSRestType = function(e, t) { - i("TSRestType", e, t); - }; - n.assertTSNamedTupleMember = function(e, t) { - i("TSNamedTupleMember", e, t); - }; - n.assertTSUnionType = function(e, t) { - i("TSUnionType", e, t); - }; - n.assertTSIntersectionType = function(e, t) { - i("TSIntersectionType", e, t); - }; - n.assertTSConditionalType = function(e, t) { - i("TSConditionalType", e, t); - }; - n.assertTSInferType = function(e, t) { - i("TSInferType", e, t); - }; - n.assertTSParenthesizedType = function(e, t) { - i("TSParenthesizedType", e, t); - }; - n.assertTSTypeOperator = function(e, t) { - i("TSTypeOperator", e, t); - }; - n.assertTSIndexedAccessType = function(e, t) { - i("TSIndexedAccessType", e, t); - }; - n.assertTSMappedType = function(e, t) { - i("TSMappedType", e, t); - }; - n.assertTSLiteralType = function(e, t) { - i("TSLiteralType", e, t); - }; - n.assertTSExpressionWithTypeArguments = function(e, t) { - i("TSExpressionWithTypeArguments", e, t); - }; - n.assertTSInterfaceDeclaration = function(e, t) { - i("TSInterfaceDeclaration", e, t); - }; - n.assertTSInterfaceBody = function(e, t) { - i("TSInterfaceBody", e, t); - }; - n.assertTSTypeAliasDeclaration = function(e, t) { - i("TSTypeAliasDeclaration", e, t); - }; - n.assertTSAsExpression = function(e, t) { - i("TSAsExpression", e, t); - }; - n.assertTSTypeAssertion = function(e, t) { - i("TSTypeAssertion", e, t); - }; - n.assertTSEnumDeclaration = function(e, t) { - i("TSEnumDeclaration", e, t); - }; - n.assertTSEnumMember = function(e, t) { - i("TSEnumMember", e, t); - }; - n.assertTSModuleDeclaration = function(e, t) { - i("TSModuleDeclaration", e, t); - }; - n.assertTSModuleBlock = function(e, t) { - i("TSModuleBlock", e, t); - }; - n.assertTSImportType = function(e, t) { - i("TSImportType", e, t); - }; - n.assertTSImportEqualsDeclaration = function(e, t) { - i("TSImportEqualsDeclaration", e, t); - }; - n.assertTSExternalModuleReference = function(e, t) { - i("TSExternalModuleReference", e, t); - }; - n.assertTSNonNullExpression = function(e, t) { - i("TSNonNullExpression", e, t); - }; - n.assertTSExportAssignment = function(e, t) { - i("TSExportAssignment", e, t); - }; - n.assertTSNamespaceExportDeclaration = function(e, t) { - i("TSNamespaceExportDeclaration", e, t); - }; - n.assertTSTypeAnnotation = function(e, t) { - i("TSTypeAnnotation", e, t); - }; - n.assertTSTypeParameterInstantiation = function(e, t) { - i("TSTypeParameterInstantiation", e, t); - }; - n.assertTSTypeParameterDeclaration = function(e, t) { - i("TSTypeParameterDeclaration", e, t); - }; - n.assertTSTypeParameter = function(e, t) { - i("TSTypeParameter", e, t); - }; - n.assertExpression = function(e, t) { - i("Expression", e, t); - }; - n.assertBinary = function(e, t) { - i("Binary", e, t); - }; - n.assertScopable = function(e, t) { - i("Scopable", e, t); - }; - n.assertBlockParent = function(e, t) { - i("BlockParent", e, t); - }; - n.assertBlock = function(e, t) { - i("Block", e, t); - }; - n.assertStatement = function(e, t) { - i("Statement", e, t); - }; - n.assertTerminatorless = function(e, t) { - i("Terminatorless", e, t); - }; - n.assertCompletionStatement = function(e, t) { - i("CompletionStatement", e, t); - }; - n.assertConditional = function(e, t) { - i("Conditional", e, t); - }; - n.assertLoop = function(e, t) { - i("Loop", e, t); - }; - n.assertWhile = function(e, t) { - i("While", e, t); - }; - n.assertExpressionWrapper = function(e, t) { - i("ExpressionWrapper", e, t); - }; - n.assertFor = function(e, t) { - i("For", e, t); - }; - n.assertForXStatement = function(e, t) { - i("ForXStatement", e, t); - }; - n.assertFunction = function(e, t) { - i("Function", e, t); - }; - n.assertFunctionParent = function(e, t) { - i("FunctionParent", e, t); - }; - n.assertPureish = function(e, t) { - i("Pureish", e, t); - }; - n.assertDeclaration = function(e, t) { - i("Declaration", e, t); - }; - n.assertPatternLike = function(e, t) { - i("PatternLike", e, t); - }; - n.assertLVal = function(e, t) { - i("LVal", e, t); - }; - n.assertTSEntityName = function(e, t) { - i("TSEntityName", e, t); - }; - n.assertLiteral = function(e, t) { - i("Literal", e, t); - }; - n.assertImmutable = function(e, t) { - i("Immutable", e, t); - }; - n.assertUserWhitespacable = function(e, t) { - i("UserWhitespacable", e, t); - }; - n.assertMethod = function(e, t) { - i("Method", e, t); - }; - n.assertObjectMember = function(e, t) { - i("ObjectMember", e, t); - }; - n.assertProperty = function(e, t) { - i("Property", e, t); - }; - n.assertUnaryLike = function(e, t) { - i("UnaryLike", e, t); - }; - n.assertPattern = function(e, t) { - i("Pattern", e, t); - }; - n.assertClass = function(e, t) { - i("Class", e, t); - }; - n.assertModuleDeclaration = function(e, t) { - i("ModuleDeclaration", e, t); - }; - n.assertExportDeclaration = function(e, t) { - i("ExportDeclaration", e, t); - }; - n.assertModuleSpecifier = function(e, t) { - i("ModuleSpecifier", e, t); - }; - n.assertPrivate = function(e, t) { - i("Private", e, t); - }; - n.assertFlow = function(e, t) { - i("Flow", e, t); - }; - n.assertFlowType = function(e, t) { - i("FlowType", e, t); - }; - n.assertFlowBaseAnnotation = function(e, t) { - i("FlowBaseAnnotation", e, t); - }; - n.assertFlowDeclaration = function(e, t) { - i("FlowDeclaration", e, t); - }; - n.assertFlowPredicate = function(e, t) { - i("FlowPredicate", e, t); - }; - n.assertEnumBody = function(e, t) { - i("EnumBody", e, t); - }; - n.assertEnumMember = function(e, t) { - i("EnumMember", e, t); - }; - n.assertJSX = function(e, t) { - i("JSX", e, t); - }; - n.assertTSTypeElement = function(e, t) { - i("TSTypeElement", e, t); - }; - n.assertTSType = function(e, t) { - i("TSType", e, t); - }; - n.assertTSBaseType = function(e, t) { - i("TSBaseType", e, t); - }; - n.assertNumberLiteral = function(e, t) { - console.trace("The node type NumberLiteral has been renamed to NumericLiteral"); - i("NumberLiteral", e, t); - }; - n.assertRegexLiteral = function(e, t) { - console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"); - i("RegexLiteral", e, t); - }; - n.assertRestProperty = function(e, t) { - console.trace("The node type RestProperty has been renamed to RestElement"); - i("RestProperty", e, t); - }; - n.assertSpreadProperty = function(e, t) { - console.trace("The node type SpreadProperty has been renamed to SpreadElement"); - i("SpreadProperty", e, t); - }; - var r = e("../../validators/is"); - function i(e, t, n) { - if (!(0, r.default)(e, t, n)) throw new Error(`Expected type "${e}" with option ${JSON.stringify(n)}, ` + `but instead got "${t.type}".`); - } - }, { - "../../validators/is": 125 - } ], - 66: [ function(e, t, n) {}, {} ], - 67: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, ...t) { - const n = r.BUILDER_KEYS[e]; - const s = t.length; - if (s > n.length) throw new Error(`${e}: Too many arguments passed. Received ${s} but can receive no more than ${n.length}`); - const a = { - type: e - }; - let o = 0; - n.forEach(n => { - const i = r.NODE_FIELDS[e][n]; - let l; - o < s && (l = t[o]); - void 0 === l && (l = Array.isArray(i.default) ? [] : i.default); - a[n] = l; - o++; - }); - for (const e of Object.keys(a)) (0, i.default)(a, e, a[e]); - return a; - }; - r = e("../definitions"); - i = e("../validators/validate"); - }, { - "../definitions": 102, - "../validators/validate": 143 - } ], - 68: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - const t = (0, i.default)(e); - return 1 === t.length ? t[0] : (0, r.unionTypeAnnotation)(t); - }; - r = e("../generated"); - i = e("../../modifications/flow/removeTypeDuplicates"); - }, { - "../../modifications/flow/removeTypeDuplicates": 110, - "../generated": 70 - } ], - 69: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - if ("string" === e) return (0, r.stringTypeAnnotation)(); - if ("number" === e) return (0, r.numberTypeAnnotation)(); - if ("undefined" === e) return (0, r.voidTypeAnnotation)(); - if ("boolean" === e) return (0, r.booleanTypeAnnotation)(); - if ("function" === e) return (0, r.genericTypeAnnotation)((0, r.identifier)("Function")); - if ("object" === e) return (0, r.genericTypeAnnotation)((0, r.identifier)("Object")); - if ("symbol" === e) return (0, r.genericTypeAnnotation)((0, r.identifier)("Symbol")); - if ("bigint" === e) return (0, r.anyTypeAnnotation)(); - throw new Error("Invalid typeof value: " + e); - }; - var r = e("../generated"); - }, { - "../generated": 70 - } ], - 70: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.arrayExpression = function(e) { - return (0, r.default)("ArrayExpression", ...arguments); - }; - n.assignmentExpression = function(e, t, n) { - return (0, r.default)("AssignmentExpression", ...arguments); - }; - n.binaryExpression = function(e, t, n) { - return (0, r.default)("BinaryExpression", ...arguments); - }; - n.interpreterDirective = function(e) { - return (0, r.default)("InterpreterDirective", ...arguments); - }; - n.directive = function(e) { - return (0, r.default)("Directive", ...arguments); - }; - n.directiveLiteral = function(e) { - return (0, r.default)("DirectiveLiteral", ...arguments); - }; - n.blockStatement = function(e, t) { - return (0, r.default)("BlockStatement", ...arguments); - }; - n.breakStatement = function(e) { - return (0, r.default)("BreakStatement", ...arguments); - }; - n.callExpression = function(e, t) { - return (0, r.default)("CallExpression", ...arguments); - }; - n.catchClause = function(e, t) { - return (0, r.default)("CatchClause", ...arguments); - }; - n.conditionalExpression = function(e, t, n) { - return (0, r.default)("ConditionalExpression", ...arguments); - }; - n.continueStatement = function(e) { - return (0, r.default)("ContinueStatement", ...arguments); - }; - n.debuggerStatement = function() { - return (0, r.default)("DebuggerStatement", ...arguments); - }; - n.doWhileStatement = function(e, t) { - return (0, r.default)("DoWhileStatement", ...arguments); - }; - n.emptyStatement = function() { - return (0, r.default)("EmptyStatement", ...arguments); - }; - n.expressionStatement = function(e) { - return (0, r.default)("ExpressionStatement", ...arguments); - }; - n.file = function(e, t, n) { - return (0, r.default)("File", ...arguments); - }; - n.forInStatement = function(e, t, n) { - return (0, r.default)("ForInStatement", ...arguments); - }; - n.forStatement = function(e, t, n, i) { - return (0, r.default)("ForStatement", ...arguments); - }; - n.functionDeclaration = function(e, t, n, i, s) { - return (0, r.default)("FunctionDeclaration", ...arguments); - }; - n.functionExpression = function(e, t, n, i, s) { - return (0, r.default)("FunctionExpression", ...arguments); - }; - n.identifier = function(e) { - return (0, r.default)("Identifier", ...arguments); - }; - n.ifStatement = function(e, t, n) { - return (0, r.default)("IfStatement", ...arguments); - }; - n.labeledStatement = function(e, t) { - return (0, r.default)("LabeledStatement", ...arguments); - }; - n.stringLiteral = function(e) { - return (0, r.default)("StringLiteral", ...arguments); - }; - n.numericLiteral = function(e) { - return (0, r.default)("NumericLiteral", ...arguments); - }; - n.nullLiteral = function() { - return (0, r.default)("NullLiteral", ...arguments); - }; - n.booleanLiteral = function(e) { - return (0, r.default)("BooleanLiteral", ...arguments); - }; - n.regExpLiteral = function(e, t) { - return (0, r.default)("RegExpLiteral", ...arguments); - }; - n.logicalExpression = function(e, t, n) { - return (0, r.default)("LogicalExpression", ...arguments); - }; - n.memberExpression = function(e, t, n, i) { - return (0, r.default)("MemberExpression", ...arguments); - }; - n.newExpression = function(e, t) { - return (0, r.default)("NewExpression", ...arguments); - }; - n.program = function(e, t, n, i) { - return (0, r.default)("Program", ...arguments); - }; - n.objectExpression = function(e) { - return (0, r.default)("ObjectExpression", ...arguments); - }; - n.objectMethod = function(e, t, n, i, s, a, o) { - return (0, r.default)("ObjectMethod", ...arguments); - }; - n.objectProperty = function(e, t, n, i, s) { - return (0, r.default)("ObjectProperty", ...arguments); - }; - n.restElement = function(e) { - return (0, r.default)("RestElement", ...arguments); - }; - n.returnStatement = function(e) { - return (0, r.default)("ReturnStatement", ...arguments); - }; - n.sequenceExpression = function(e) { - return (0, r.default)("SequenceExpression", ...arguments); - }; - n.parenthesizedExpression = function(e) { - return (0, r.default)("ParenthesizedExpression", ...arguments); - }; - n.switchCase = function(e, t) { - return (0, r.default)("SwitchCase", ...arguments); - }; - n.switchStatement = function(e, t) { - return (0, r.default)("SwitchStatement", ...arguments); - }; - n.thisExpression = function() { - return (0, r.default)("ThisExpression", ...arguments); - }; - n.throwStatement = function(e) { - return (0, r.default)("ThrowStatement", ...arguments); - }; - n.tryStatement = function(e, t, n) { - return (0, r.default)("TryStatement", ...arguments); - }; - n.unaryExpression = function(e, t, n) { - return (0, r.default)("UnaryExpression", ...arguments); - }; - n.updateExpression = function(e, t, n) { - return (0, r.default)("UpdateExpression", ...arguments); - }; - n.variableDeclaration = function(e, t) { - return (0, r.default)("VariableDeclaration", ...arguments); - }; - n.variableDeclarator = function(e, t) { - return (0, r.default)("VariableDeclarator", ...arguments); - }; - n.whileStatement = function(e, t) { - return (0, r.default)("WhileStatement", ...arguments); - }; - n.withStatement = function(e, t) { - return (0, r.default)("WithStatement", ...arguments); - }; - n.assignmentPattern = function(e, t) { - return (0, r.default)("AssignmentPattern", ...arguments); - }; - n.arrayPattern = function(e) { - return (0, r.default)("ArrayPattern", ...arguments); - }; - n.arrowFunctionExpression = function(e, t, n) { - return (0, r.default)("ArrowFunctionExpression", ...arguments); - }; - n.classBody = function(e) { - return (0, r.default)("ClassBody", ...arguments); - }; - n.classExpression = function(e, t, n, i) { - return (0, r.default)("ClassExpression", ...arguments); - }; - n.classDeclaration = function(e, t, n, i) { - return (0, r.default)("ClassDeclaration", ...arguments); - }; - n.exportAllDeclaration = function(e) { - return (0, r.default)("ExportAllDeclaration", ...arguments); - }; - n.exportDefaultDeclaration = function(e) { - return (0, r.default)("ExportDefaultDeclaration", ...arguments); - }; - n.exportNamedDeclaration = function(e, t, n) { - return (0, r.default)("ExportNamedDeclaration", ...arguments); - }; - n.exportSpecifier = function(e, t) { - return (0, r.default)("ExportSpecifier", ...arguments); - }; - n.forOfStatement = function(e, t, n, i) { - return (0, r.default)("ForOfStatement", ...arguments); - }; - n.importDeclaration = function(e, t) { - return (0, r.default)("ImportDeclaration", ...arguments); - }; - n.importDefaultSpecifier = function(e) { - return (0, r.default)("ImportDefaultSpecifier", ...arguments); - }; - n.importNamespaceSpecifier = function(e) { - return (0, r.default)("ImportNamespaceSpecifier", ...arguments); - }; - n.importSpecifier = function(e, t) { - return (0, r.default)("ImportSpecifier", ...arguments); - }; - n.metaProperty = function(e, t) { - return (0, r.default)("MetaProperty", ...arguments); - }; - n.classMethod = function(e, t, n, i, s, a, o, l) { - return (0, r.default)("ClassMethod", ...arguments); - }; - n.objectPattern = function(e) { - return (0, r.default)("ObjectPattern", ...arguments); - }; - n.spreadElement = function(e) { - return (0, r.default)("SpreadElement", ...arguments); - }; - n.super = function() { - return (0, r.default)("Super", ...arguments); - }; - n.taggedTemplateExpression = function(e, t) { - return (0, r.default)("TaggedTemplateExpression", ...arguments); - }; - n.templateElement = function(e, t) { - return (0, r.default)("TemplateElement", ...arguments); - }; - n.templateLiteral = function(e, t) { - return (0, r.default)("TemplateLiteral", ...arguments); - }; - n.yieldExpression = function(e, t) { - return (0, r.default)("YieldExpression", ...arguments); - }; - n.awaitExpression = function(e) { - return (0, r.default)("AwaitExpression", ...arguments); - }; - n.import = function() { - return (0, r.default)("Import", ...arguments); - }; - n.bigIntLiteral = function(e) { - return (0, r.default)("BigIntLiteral", ...arguments); - }; - n.exportNamespaceSpecifier = function(e) { - return (0, r.default)("ExportNamespaceSpecifier", ...arguments); - }; - n.optionalMemberExpression = function(e, t, n, i) { - return (0, r.default)("OptionalMemberExpression", ...arguments); - }; - n.optionalCallExpression = function(e, t, n) { - return (0, r.default)("OptionalCallExpression", ...arguments); - }; - n.classProperty = function(e, t, n, i, s, a) { - return (0, r.default)("ClassProperty", ...arguments); - }; - n.classPrivateProperty = function(e, t, n, i) { - return (0, r.default)("ClassPrivateProperty", ...arguments); - }; - n.classPrivateMethod = function(e, t, n, i, s) { - return (0, r.default)("ClassPrivateMethod", ...arguments); - }; - n.privateName = function(e) { - return (0, r.default)("PrivateName", ...arguments); - }; - n.anyTypeAnnotation = function() { - return (0, r.default)("AnyTypeAnnotation", ...arguments); - }; - n.arrayTypeAnnotation = function(e) { - return (0, r.default)("ArrayTypeAnnotation", ...arguments); - }; - n.booleanTypeAnnotation = function() { - return (0, r.default)("BooleanTypeAnnotation", ...arguments); - }; - n.booleanLiteralTypeAnnotation = function(e) { - return (0, r.default)("BooleanLiteralTypeAnnotation", ...arguments); - }; - n.nullLiteralTypeAnnotation = function() { - return (0, r.default)("NullLiteralTypeAnnotation", ...arguments); - }; - n.classImplements = function(e, t) { - return (0, r.default)("ClassImplements", ...arguments); - }; - n.declareClass = function(e, t, n, i) { - return (0, r.default)("DeclareClass", ...arguments); - }; - n.declareFunction = function(e) { - return (0, r.default)("DeclareFunction", ...arguments); - }; - n.declareInterface = function(e, t, n, i) { - return (0, r.default)("DeclareInterface", ...arguments); - }; - n.declareModule = function(e, t, n) { - return (0, r.default)("DeclareModule", ...arguments); - }; - n.declareModuleExports = function(e) { - return (0, r.default)("DeclareModuleExports", ...arguments); - }; - n.declareTypeAlias = function(e, t, n) { - return (0, r.default)("DeclareTypeAlias", ...arguments); - }; - n.declareOpaqueType = function(e, t, n) { - return (0, r.default)("DeclareOpaqueType", ...arguments); - }; - n.declareVariable = function(e) { - return (0, r.default)("DeclareVariable", ...arguments); - }; - n.declareExportDeclaration = function(e, t, n) { - return (0, r.default)("DeclareExportDeclaration", ...arguments); - }; - n.declareExportAllDeclaration = function(e) { - return (0, r.default)("DeclareExportAllDeclaration", ...arguments); - }; - n.declaredPredicate = function(e) { - return (0, r.default)("DeclaredPredicate", ...arguments); - }; - n.existsTypeAnnotation = function() { - return (0, r.default)("ExistsTypeAnnotation", ...arguments); - }; - n.functionTypeAnnotation = function(e, t, n, i) { - return (0, r.default)("FunctionTypeAnnotation", ...arguments); - }; - n.functionTypeParam = function(e, t) { - return (0, r.default)("FunctionTypeParam", ...arguments); - }; - n.genericTypeAnnotation = function(e, t) { - return (0, r.default)("GenericTypeAnnotation", ...arguments); - }; - n.inferredPredicate = function() { - return (0, r.default)("InferredPredicate", ...arguments); - }; - n.interfaceExtends = function(e, t) { - return (0, r.default)("InterfaceExtends", ...arguments); - }; - n.interfaceDeclaration = function(e, t, n, i) { - return (0, r.default)("InterfaceDeclaration", ...arguments); - }; - n.interfaceTypeAnnotation = function(e, t) { - return (0, r.default)("InterfaceTypeAnnotation", ...arguments); - }; - n.intersectionTypeAnnotation = function(e) { - return (0, r.default)("IntersectionTypeAnnotation", ...arguments); - }; - n.mixedTypeAnnotation = function() { - return (0, r.default)("MixedTypeAnnotation", ...arguments); - }; - n.emptyTypeAnnotation = function() { - return (0, r.default)("EmptyTypeAnnotation", ...arguments); - }; - n.nullableTypeAnnotation = function(e) { - return (0, r.default)("NullableTypeAnnotation", ...arguments); - }; - n.numberLiteralTypeAnnotation = function(e) { - return (0, r.default)("NumberLiteralTypeAnnotation", ...arguments); - }; - n.numberTypeAnnotation = function() { - return (0, r.default)("NumberTypeAnnotation", ...arguments); - }; - n.objectTypeAnnotation = function(e, t, n, i, s) { - return (0, r.default)("ObjectTypeAnnotation", ...arguments); - }; - n.objectTypeInternalSlot = function(e, t, n, i, s) { - return (0, r.default)("ObjectTypeInternalSlot", ...arguments); - }; - n.objectTypeCallProperty = function(e) { - return (0, r.default)("ObjectTypeCallProperty", ...arguments); - }; - n.objectTypeIndexer = function(e, t, n, i) { - return (0, r.default)("ObjectTypeIndexer", ...arguments); - }; - n.objectTypeProperty = function(e, t, n) { - return (0, r.default)("ObjectTypeProperty", ...arguments); - }; - n.objectTypeSpreadProperty = function(e) { - return (0, r.default)("ObjectTypeSpreadProperty", ...arguments); - }; - n.opaqueType = function(e, t, n, i) { - return (0, r.default)("OpaqueType", ...arguments); - }; - n.qualifiedTypeIdentifier = function(e, t) { - return (0, r.default)("QualifiedTypeIdentifier", ...arguments); - }; - n.stringLiteralTypeAnnotation = function(e) { - return (0, r.default)("StringLiteralTypeAnnotation", ...arguments); - }; - n.stringTypeAnnotation = function() { - return (0, r.default)("StringTypeAnnotation", ...arguments); - }; - n.symbolTypeAnnotation = function() { - return (0, r.default)("SymbolTypeAnnotation", ...arguments); - }; - n.thisTypeAnnotation = function() { - return (0, r.default)("ThisTypeAnnotation", ...arguments); - }; - n.tupleTypeAnnotation = function(e) { - return (0, r.default)("TupleTypeAnnotation", ...arguments); - }; - n.typeofTypeAnnotation = function(e) { - return (0, r.default)("TypeofTypeAnnotation", ...arguments); - }; - n.typeAlias = function(e, t, n) { - return (0, r.default)("TypeAlias", ...arguments); - }; - n.typeAnnotation = function(e) { - return (0, r.default)("TypeAnnotation", ...arguments); - }; - n.typeCastExpression = function(e, t) { - return (0, r.default)("TypeCastExpression", ...arguments); - }; - n.typeParameter = function(e, t, n) { - return (0, r.default)("TypeParameter", ...arguments); - }; - n.typeParameterDeclaration = function(e) { - return (0, r.default)("TypeParameterDeclaration", ...arguments); - }; - n.typeParameterInstantiation = function(e) { - return (0, r.default)("TypeParameterInstantiation", ...arguments); - }; - n.unionTypeAnnotation = function(e) { - return (0, r.default)("UnionTypeAnnotation", ...arguments); - }; - n.variance = function(e) { - return (0, r.default)("Variance", ...arguments); - }; - n.voidTypeAnnotation = function() { - return (0, r.default)("VoidTypeAnnotation", ...arguments); - }; - n.enumDeclaration = function(e, t) { - return (0, r.default)("EnumDeclaration", ...arguments); - }; - n.enumBooleanBody = function(e) { - return (0, r.default)("EnumBooleanBody", ...arguments); - }; - n.enumNumberBody = function(e) { - return (0, r.default)("EnumNumberBody", ...arguments); - }; - n.enumStringBody = function(e) { - return (0, r.default)("EnumStringBody", ...arguments); - }; - n.enumSymbolBody = function(e) { - return (0, r.default)("EnumSymbolBody", ...arguments); - }; - n.enumBooleanMember = function(e) { - return (0, r.default)("EnumBooleanMember", ...arguments); - }; - n.enumNumberMember = function(e, t) { - return (0, r.default)("EnumNumberMember", ...arguments); - }; - n.enumStringMember = function(e, t) { - return (0, r.default)("EnumStringMember", ...arguments); - }; - n.enumDefaultedMember = function(e) { - return (0, r.default)("EnumDefaultedMember", ...arguments); - }; - n.indexedAccessType = function(e, t) { - return (0, r.default)("IndexedAccessType", ...arguments); - }; - n.optionalIndexedAccessType = function(e, t) { - return (0, r.default)("OptionalIndexedAccessType", ...arguments); - }; - n.jSXAttribute = n.jsxAttribute = function(e, t) { - return (0, r.default)("JSXAttribute", ...arguments); - }; - n.jSXClosingElement = n.jsxClosingElement = function(e) { - return (0, r.default)("JSXClosingElement", ...arguments); - }; - n.jSXElement = n.jsxElement = function(e, t, n, i) { - return (0, r.default)("JSXElement", ...arguments); - }; - n.jSXEmptyExpression = n.jsxEmptyExpression = function() { - return (0, r.default)("JSXEmptyExpression", ...arguments); - }; - n.jSXExpressionContainer = n.jsxExpressionContainer = function(e) { - return (0, r.default)("JSXExpressionContainer", ...arguments); - }; - n.jSXSpreadChild = n.jsxSpreadChild = function(e) { - return (0, r.default)("JSXSpreadChild", ...arguments); - }; - n.jSXIdentifier = n.jsxIdentifier = function(e) { - return (0, r.default)("JSXIdentifier", ...arguments); - }; - n.jSXMemberExpression = n.jsxMemberExpression = function(e, t) { - return (0, r.default)("JSXMemberExpression", ...arguments); - }; - n.jSXNamespacedName = n.jsxNamespacedName = function(e, t) { - return (0, r.default)("JSXNamespacedName", ...arguments); - }; - n.jSXOpeningElement = n.jsxOpeningElement = function(e, t, n) { - return (0, r.default)("JSXOpeningElement", ...arguments); - }; - n.jSXSpreadAttribute = n.jsxSpreadAttribute = function(e) { - return (0, r.default)("JSXSpreadAttribute", ...arguments); - }; - n.jSXText = n.jsxText = function(e) { - return (0, r.default)("JSXText", ...arguments); - }; - n.jSXFragment = n.jsxFragment = function(e, t, n) { - return (0, r.default)("JSXFragment", ...arguments); - }; - n.jSXOpeningFragment = n.jsxOpeningFragment = function() { - return (0, r.default)("JSXOpeningFragment", ...arguments); - }; - n.jSXClosingFragment = n.jsxClosingFragment = function() { - return (0, r.default)("JSXClosingFragment", ...arguments); - }; - n.noop = function() { - return (0, r.default)("Noop", ...arguments); - }; - n.placeholder = function(e, t) { - return (0, r.default)("Placeholder", ...arguments); - }; - n.v8IntrinsicIdentifier = function(e) { - return (0, r.default)("V8IntrinsicIdentifier", ...arguments); - }; - n.argumentPlaceholder = function() { - return (0, r.default)("ArgumentPlaceholder", ...arguments); - }; - n.bindExpression = function(e, t) { - return (0, r.default)("BindExpression", ...arguments); - }; - n.importAttribute = function(e, t) { - return (0, r.default)("ImportAttribute", ...arguments); - }; - n.decorator = function(e) { - return (0, r.default)("Decorator", ...arguments); - }; - n.doExpression = function(e, t) { - return (0, r.default)("DoExpression", ...arguments); - }; - n.exportDefaultSpecifier = function(e) { - return (0, r.default)("ExportDefaultSpecifier", ...arguments); - }; - n.recordExpression = function(e) { - return (0, r.default)("RecordExpression", ...arguments); - }; - n.tupleExpression = function(e) { - return (0, r.default)("TupleExpression", ...arguments); - }; - n.decimalLiteral = function(e) { - return (0, r.default)("DecimalLiteral", ...arguments); - }; - n.staticBlock = function(e) { - return (0, r.default)("StaticBlock", ...arguments); - }; - n.moduleExpression = function(e) { - return (0, r.default)("ModuleExpression", ...arguments); - }; - n.topicReference = function() { - return (0, r.default)("TopicReference", ...arguments); - }; - n.pipelineTopicExpression = function(e) { - return (0, r.default)("PipelineTopicExpression", ...arguments); - }; - n.pipelineBareFunction = function(e) { - return (0, r.default)("PipelineBareFunction", ...arguments); - }; - n.pipelinePrimaryTopicReference = function() { - return (0, r.default)("PipelinePrimaryTopicReference", ...arguments); - }; - n.tSParameterProperty = n.tsParameterProperty = function(e) { - return (0, r.default)("TSParameterProperty", ...arguments); - }; - n.tSDeclareFunction = n.tsDeclareFunction = function(e, t, n, i) { - return (0, r.default)("TSDeclareFunction", ...arguments); - }; - n.tSDeclareMethod = n.tsDeclareMethod = function(e, t, n, i, s) { - return (0, r.default)("TSDeclareMethod", ...arguments); - }; - n.tSQualifiedName = n.tsQualifiedName = function(e, t) { - return (0, r.default)("TSQualifiedName", ...arguments); - }; - n.tSCallSignatureDeclaration = n.tsCallSignatureDeclaration = function(e, t, n) { - return (0, r.default)("TSCallSignatureDeclaration", ...arguments); - }; - n.tSConstructSignatureDeclaration = n.tsConstructSignatureDeclaration = function(e, t, n) { - return (0, r.default)("TSConstructSignatureDeclaration", ...arguments); - }; - n.tSPropertySignature = n.tsPropertySignature = function(e, t, n) { - return (0, r.default)("TSPropertySignature", ...arguments); - }; - n.tSMethodSignature = n.tsMethodSignature = function(e, t, n, i) { - return (0, r.default)("TSMethodSignature", ...arguments); - }; - n.tSIndexSignature = n.tsIndexSignature = function(e, t) { - return (0, r.default)("TSIndexSignature", ...arguments); - }; - n.tSAnyKeyword = n.tsAnyKeyword = function() { - return (0, r.default)("TSAnyKeyword", ...arguments); - }; - n.tSBooleanKeyword = n.tsBooleanKeyword = function() { - return (0, r.default)("TSBooleanKeyword", ...arguments); - }; - n.tSBigIntKeyword = n.tsBigIntKeyword = function() { - return (0, r.default)("TSBigIntKeyword", ...arguments); - }; - n.tSIntrinsicKeyword = n.tsIntrinsicKeyword = function() { - return (0, r.default)("TSIntrinsicKeyword", ...arguments); - }; - n.tSNeverKeyword = n.tsNeverKeyword = function() { - return (0, r.default)("TSNeverKeyword", ...arguments); - }; - n.tSNullKeyword = n.tsNullKeyword = function() { - return (0, r.default)("TSNullKeyword", ...arguments); - }; - n.tSNumberKeyword = n.tsNumberKeyword = function() { - return (0, r.default)("TSNumberKeyword", ...arguments); - }; - n.tSObjectKeyword = n.tsObjectKeyword = function() { - return (0, r.default)("TSObjectKeyword", ...arguments); - }; - n.tSStringKeyword = n.tsStringKeyword = function() { - return (0, r.default)("TSStringKeyword", ...arguments); - }; - n.tSSymbolKeyword = n.tsSymbolKeyword = function() { - return (0, r.default)("TSSymbolKeyword", ...arguments); - }; - n.tSUndefinedKeyword = n.tsUndefinedKeyword = function() { - return (0, r.default)("TSUndefinedKeyword", ...arguments); - }; - n.tSUnknownKeyword = n.tsUnknownKeyword = function() { - return (0, r.default)("TSUnknownKeyword", ...arguments); - }; - n.tSVoidKeyword = n.tsVoidKeyword = function() { - return (0, r.default)("TSVoidKeyword", ...arguments); - }; - n.tSThisType = n.tsThisType = function() { - return (0, r.default)("TSThisType", ...arguments); - }; - n.tSFunctionType = n.tsFunctionType = function(e, t, n) { - return (0, r.default)("TSFunctionType", ...arguments); - }; - n.tSConstructorType = n.tsConstructorType = function(e, t, n) { - return (0, r.default)("TSConstructorType", ...arguments); - }; - n.tSTypeReference = n.tsTypeReference = function(e, t) { - return (0, r.default)("TSTypeReference", ...arguments); - }; - n.tSTypePredicate = n.tsTypePredicate = function(e, t, n) { - return (0, r.default)("TSTypePredicate", ...arguments); - }; - n.tSTypeQuery = n.tsTypeQuery = function(e) { - return (0, r.default)("TSTypeQuery", ...arguments); - }; - n.tSTypeLiteral = n.tsTypeLiteral = function(e) { - return (0, r.default)("TSTypeLiteral", ...arguments); - }; - n.tSArrayType = n.tsArrayType = function(e) { - return (0, r.default)("TSArrayType", ...arguments); - }; - n.tSTupleType = n.tsTupleType = function(e) { - return (0, r.default)("TSTupleType", ...arguments); - }; - n.tSOptionalType = n.tsOptionalType = function(e) { - return (0, r.default)("TSOptionalType", ...arguments); - }; - n.tSRestType = n.tsRestType = function(e) { - return (0, r.default)("TSRestType", ...arguments); - }; - n.tSNamedTupleMember = n.tsNamedTupleMember = function(e, t, n) { - return (0, r.default)("TSNamedTupleMember", ...arguments); - }; - n.tSUnionType = n.tsUnionType = function(e) { - return (0, r.default)("TSUnionType", ...arguments); - }; - n.tSIntersectionType = n.tsIntersectionType = function(e) { - return (0, r.default)("TSIntersectionType", ...arguments); - }; - n.tSConditionalType = n.tsConditionalType = function(e, t, n, i) { - return (0, r.default)("TSConditionalType", ...arguments); - }; - n.tSInferType = n.tsInferType = function(e) { - return (0, r.default)("TSInferType", ...arguments); - }; - n.tSParenthesizedType = n.tsParenthesizedType = function(e) { - return (0, r.default)("TSParenthesizedType", ...arguments); - }; - n.tSTypeOperator = n.tsTypeOperator = function(e) { - return (0, r.default)("TSTypeOperator", ...arguments); - }; - n.tSIndexedAccessType = n.tsIndexedAccessType = function(e, t) { - return (0, r.default)("TSIndexedAccessType", ...arguments); - }; - n.tSMappedType = n.tsMappedType = function(e, t, n) { - return (0, r.default)("TSMappedType", ...arguments); - }; - n.tSLiteralType = n.tsLiteralType = function(e) { - return (0, r.default)("TSLiteralType", ...arguments); - }; - n.tSExpressionWithTypeArguments = n.tsExpressionWithTypeArguments = function(e, t) { - return (0, r.default)("TSExpressionWithTypeArguments", ...arguments); - }; - n.tSInterfaceDeclaration = n.tsInterfaceDeclaration = function(e, t, n, i) { - return (0, r.default)("TSInterfaceDeclaration", ...arguments); - }; - n.tSInterfaceBody = n.tsInterfaceBody = function(e) { - return (0, r.default)("TSInterfaceBody", ...arguments); - }; - n.tSTypeAliasDeclaration = n.tsTypeAliasDeclaration = function(e, t, n) { - return (0, r.default)("TSTypeAliasDeclaration", ...arguments); - }; - n.tSAsExpression = n.tsAsExpression = function(e, t) { - return (0, r.default)("TSAsExpression", ...arguments); - }; - n.tSTypeAssertion = n.tsTypeAssertion = function(e, t) { - return (0, r.default)("TSTypeAssertion", ...arguments); - }; - n.tSEnumDeclaration = n.tsEnumDeclaration = function(e, t) { - return (0, r.default)("TSEnumDeclaration", ...arguments); - }; - n.tSEnumMember = n.tsEnumMember = function(e, t) { - return (0, r.default)("TSEnumMember", ...arguments); - }; - n.tSModuleDeclaration = n.tsModuleDeclaration = function(e, t) { - return (0, r.default)("TSModuleDeclaration", ...arguments); - }; - n.tSModuleBlock = n.tsModuleBlock = function(e) { - return (0, r.default)("TSModuleBlock", ...arguments); - }; - n.tSImportType = n.tsImportType = function(e, t, n) { - return (0, r.default)("TSImportType", ...arguments); - }; - n.tSImportEqualsDeclaration = n.tsImportEqualsDeclaration = function(e, t) { - return (0, r.default)("TSImportEqualsDeclaration", ...arguments); - }; - n.tSExternalModuleReference = n.tsExternalModuleReference = function(e) { - return (0, r.default)("TSExternalModuleReference", ...arguments); - }; - n.tSNonNullExpression = n.tsNonNullExpression = function(e) { - return (0, r.default)("TSNonNullExpression", ...arguments); - }; - n.tSExportAssignment = n.tsExportAssignment = function(e) { - return (0, r.default)("TSExportAssignment", ...arguments); - }; - n.tSNamespaceExportDeclaration = n.tsNamespaceExportDeclaration = function(e) { - return (0, r.default)("TSNamespaceExportDeclaration", ...arguments); - }; - n.tSTypeAnnotation = n.tsTypeAnnotation = function(e) { - return (0, r.default)("TSTypeAnnotation", ...arguments); - }; - n.tSTypeParameterInstantiation = n.tsTypeParameterInstantiation = function(e) { - return (0, r.default)("TSTypeParameterInstantiation", ...arguments); - }; - n.tSTypeParameterDeclaration = n.tsTypeParameterDeclaration = function(e) { - return (0, r.default)("TSTypeParameterDeclaration", ...arguments); - }; - n.tSTypeParameter = n.tsTypeParameter = function(e, t, n) { - return (0, r.default)("TSTypeParameter", ...arguments); - }; - n.numberLiteral = function(...e) { - console.trace("The node type NumberLiteral has been renamed to NumericLiteral"); - return (0, r.default)("NumberLiteral", ...e); - }; - n.regexLiteral = function(...e) { - console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"); - return (0, r.default)("RegexLiteral", ...e); - }; - n.restProperty = function(...e) { - console.trace("The node type RestProperty has been renamed to RestElement"); - return (0, r.default)("RestProperty", ...e); - }; - n.spreadProperty = function(...e) { - console.trace("The node type SpreadProperty has been renamed to SpreadElement"); - return (0, r.default)("SpreadProperty", ...e); - }; - var r = e("../builder"); - }, { - "../builder": 67 - } ], - 71: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - Object.defineProperty(n, "ArrayExpression", { - enumerable: !0, - get: function() { - return r.arrayExpression; - } - }); - Object.defineProperty(n, "AssignmentExpression", { - enumerable: !0, - get: function() { - return r.assignmentExpression; - } - }); - Object.defineProperty(n, "BinaryExpression", { - enumerable: !0, - get: function() { - return r.binaryExpression; - } - }); - Object.defineProperty(n, "InterpreterDirective", { - enumerable: !0, - get: function() { - return r.interpreterDirective; - } - }); - Object.defineProperty(n, "Directive", { - enumerable: !0, - get: function() { - return r.directive; - } - }); - Object.defineProperty(n, "DirectiveLiteral", { - enumerable: !0, - get: function() { - return r.directiveLiteral; - } - }); - Object.defineProperty(n, "BlockStatement", { - enumerable: !0, - get: function() { - return r.blockStatement; - } - }); - Object.defineProperty(n, "BreakStatement", { - enumerable: !0, - get: function() { - return r.breakStatement; - } - }); - Object.defineProperty(n, "CallExpression", { - enumerable: !0, - get: function() { - return r.callExpression; - } - }); - Object.defineProperty(n, "CatchClause", { - enumerable: !0, - get: function() { - return r.catchClause; - } - }); - Object.defineProperty(n, "ConditionalExpression", { - enumerable: !0, - get: function() { - return r.conditionalExpression; - } - }); - Object.defineProperty(n, "ContinueStatement", { - enumerable: !0, - get: function() { - return r.continueStatement; - } - }); - Object.defineProperty(n, "DebuggerStatement", { - enumerable: !0, - get: function() { - return r.debuggerStatement; - } - }); - Object.defineProperty(n, "DoWhileStatement", { - enumerable: !0, - get: function() { - return r.doWhileStatement; - } - }); - Object.defineProperty(n, "EmptyStatement", { - enumerable: !0, - get: function() { - return r.emptyStatement; - } - }); - Object.defineProperty(n, "ExpressionStatement", { - enumerable: !0, - get: function() { - return r.expressionStatement; - } - }); - Object.defineProperty(n, "File", { - enumerable: !0, - get: function() { - return r.file; - } - }); - Object.defineProperty(n, "ForInStatement", { - enumerable: !0, - get: function() { - return r.forInStatement; - } - }); - Object.defineProperty(n, "ForStatement", { - enumerable: !0, - get: function() { - return r.forStatement; - } - }); - Object.defineProperty(n, "FunctionDeclaration", { - enumerable: !0, - get: function() { - return r.functionDeclaration; - } - }); - Object.defineProperty(n, "FunctionExpression", { - enumerable: !0, - get: function() { - return r.functionExpression; - } - }); - Object.defineProperty(n, "Identifier", { - enumerable: !0, - get: function() { - return r.identifier; - } - }); - Object.defineProperty(n, "IfStatement", { - enumerable: !0, - get: function() { - return r.ifStatement; - } - }); - Object.defineProperty(n, "LabeledStatement", { - enumerable: !0, - get: function() { - return r.labeledStatement; - } - }); - Object.defineProperty(n, "StringLiteral", { - enumerable: !0, - get: function() { - return r.stringLiteral; - } - }); - Object.defineProperty(n, "NumericLiteral", { - enumerable: !0, - get: function() { - return r.numericLiteral; - } - }); - Object.defineProperty(n, "NullLiteral", { - enumerable: !0, - get: function() { - return r.nullLiteral; - } - }); - Object.defineProperty(n, "BooleanLiteral", { - enumerable: !0, - get: function() { - return r.booleanLiteral; - } - }); - Object.defineProperty(n, "RegExpLiteral", { - enumerable: !0, - get: function() { - return r.regExpLiteral; - } - }); - Object.defineProperty(n, "LogicalExpression", { - enumerable: !0, - get: function() { - return r.logicalExpression; - } - }); - Object.defineProperty(n, "MemberExpression", { - enumerable: !0, - get: function() { - return r.memberExpression; - } - }); - Object.defineProperty(n, "NewExpression", { - enumerable: !0, - get: function() { - return r.newExpression; - } - }); - Object.defineProperty(n, "Program", { - enumerable: !0, - get: function() { - return r.program; - } - }); - Object.defineProperty(n, "ObjectExpression", { - enumerable: !0, - get: function() { - return r.objectExpression; - } - }); - Object.defineProperty(n, "ObjectMethod", { - enumerable: !0, - get: function() { - return r.objectMethod; - } - }); - Object.defineProperty(n, "ObjectProperty", { - enumerable: !0, - get: function() { - return r.objectProperty; - } - }); - Object.defineProperty(n, "RestElement", { - enumerable: !0, - get: function() { - return r.restElement; - } - }); - Object.defineProperty(n, "ReturnStatement", { - enumerable: !0, - get: function() { - return r.returnStatement; - } - }); - Object.defineProperty(n, "SequenceExpression", { - enumerable: !0, - get: function() { - return r.sequenceExpression; - } - }); - Object.defineProperty(n, "ParenthesizedExpression", { - enumerable: !0, - get: function() { - return r.parenthesizedExpression; - } - }); - Object.defineProperty(n, "SwitchCase", { - enumerable: !0, - get: function() { - return r.switchCase; - } - }); - Object.defineProperty(n, "SwitchStatement", { - enumerable: !0, - get: function() { - return r.switchStatement; - } - }); - Object.defineProperty(n, "ThisExpression", { - enumerable: !0, - get: function() { - return r.thisExpression; - } - }); - Object.defineProperty(n, "ThrowStatement", { - enumerable: !0, - get: function() { - return r.throwStatement; - } - }); - Object.defineProperty(n, "TryStatement", { - enumerable: !0, - get: function() { - return r.tryStatement; - } - }); - Object.defineProperty(n, "UnaryExpression", { - enumerable: !0, - get: function() { - return r.unaryExpression; - } - }); - Object.defineProperty(n, "UpdateExpression", { - enumerable: !0, - get: function() { - return r.updateExpression; - } - }); - Object.defineProperty(n, "VariableDeclaration", { - enumerable: !0, - get: function() { - return r.variableDeclaration; - } - }); - Object.defineProperty(n, "VariableDeclarator", { - enumerable: !0, - get: function() { - return r.variableDeclarator; - } - }); - Object.defineProperty(n, "WhileStatement", { - enumerable: !0, - get: function() { - return r.whileStatement; - } - }); - Object.defineProperty(n, "WithStatement", { - enumerable: !0, - get: function() { - return r.withStatement; - } - }); - Object.defineProperty(n, "AssignmentPattern", { - enumerable: !0, - get: function() { - return r.assignmentPattern; - } - }); - Object.defineProperty(n, "ArrayPattern", { - enumerable: !0, - get: function() { - return r.arrayPattern; - } - }); - Object.defineProperty(n, "ArrowFunctionExpression", { - enumerable: !0, - get: function() { - return r.arrowFunctionExpression; - } - }); - Object.defineProperty(n, "ClassBody", { - enumerable: !0, - get: function() { - return r.classBody; - } - }); - Object.defineProperty(n, "ClassExpression", { - enumerable: !0, - get: function() { - return r.classExpression; - } - }); - Object.defineProperty(n, "ClassDeclaration", { - enumerable: !0, - get: function() { - return r.classDeclaration; - } - }); - Object.defineProperty(n, "ExportAllDeclaration", { - enumerable: !0, - get: function() { - return r.exportAllDeclaration; - } - }); - Object.defineProperty(n, "ExportDefaultDeclaration", { - enumerable: !0, - get: function() { - return r.exportDefaultDeclaration; - } - }); - Object.defineProperty(n, "ExportNamedDeclaration", { - enumerable: !0, - get: function() { - return r.exportNamedDeclaration; - } - }); - Object.defineProperty(n, "ExportSpecifier", { - enumerable: !0, - get: function() { - return r.exportSpecifier; - } - }); - Object.defineProperty(n, "ForOfStatement", { - enumerable: !0, - get: function() { - return r.forOfStatement; - } - }); - Object.defineProperty(n, "ImportDeclaration", { - enumerable: !0, - get: function() { - return r.importDeclaration; - } - }); - Object.defineProperty(n, "ImportDefaultSpecifier", { - enumerable: !0, - get: function() { - return r.importDefaultSpecifier; - } - }); - Object.defineProperty(n, "ImportNamespaceSpecifier", { - enumerable: !0, - get: function() { - return r.importNamespaceSpecifier; - } - }); - Object.defineProperty(n, "ImportSpecifier", { - enumerable: !0, - get: function() { - return r.importSpecifier; - } - }); - Object.defineProperty(n, "MetaProperty", { - enumerable: !0, - get: function() { - return r.metaProperty; - } - }); - Object.defineProperty(n, "ClassMethod", { - enumerable: !0, - get: function() { - return r.classMethod; - } - }); - Object.defineProperty(n, "ObjectPattern", { - enumerable: !0, - get: function() { - return r.objectPattern; - } - }); - Object.defineProperty(n, "SpreadElement", { - enumerable: !0, - get: function() { - return r.spreadElement; - } - }); - Object.defineProperty(n, "Super", { - enumerable: !0, - get: function() { - return r.super; - } - }); - Object.defineProperty(n, "TaggedTemplateExpression", { - enumerable: !0, - get: function() { - return r.taggedTemplateExpression; - } - }); - Object.defineProperty(n, "TemplateElement", { - enumerable: !0, - get: function() { - return r.templateElement; - } - }); - Object.defineProperty(n, "TemplateLiteral", { - enumerable: !0, - get: function() { - return r.templateLiteral; - } - }); - Object.defineProperty(n, "YieldExpression", { - enumerable: !0, - get: function() { - return r.yieldExpression; - } - }); - Object.defineProperty(n, "AwaitExpression", { - enumerable: !0, - get: function() { - return r.awaitExpression; - } - }); - Object.defineProperty(n, "Import", { - enumerable: !0, - get: function() { - return r.import; - } - }); - Object.defineProperty(n, "BigIntLiteral", { - enumerable: !0, - get: function() { - return r.bigIntLiteral; - } - }); - Object.defineProperty(n, "ExportNamespaceSpecifier", { - enumerable: !0, - get: function() { - return r.exportNamespaceSpecifier; - } - }); - Object.defineProperty(n, "OptionalMemberExpression", { - enumerable: !0, - get: function() { - return r.optionalMemberExpression; - } - }); - Object.defineProperty(n, "OptionalCallExpression", { - enumerable: !0, - get: function() { - return r.optionalCallExpression; - } - }); - Object.defineProperty(n, "ClassProperty", { - enumerable: !0, - get: function() { - return r.classProperty; - } - }); - Object.defineProperty(n, "ClassPrivateProperty", { - enumerable: !0, - get: function() { - return r.classPrivateProperty; - } - }); - Object.defineProperty(n, "ClassPrivateMethod", { - enumerable: !0, - get: function() { - return r.classPrivateMethod; - } - }); - Object.defineProperty(n, "PrivateName", { - enumerable: !0, - get: function() { - return r.privateName; - } - }); - Object.defineProperty(n, "AnyTypeAnnotation", { - enumerable: !0, - get: function() { - return r.anyTypeAnnotation; - } - }); - Object.defineProperty(n, "ArrayTypeAnnotation", { - enumerable: !0, - get: function() { - return r.arrayTypeAnnotation; - } - }); - Object.defineProperty(n, "BooleanTypeAnnotation", { - enumerable: !0, - get: function() { - return r.booleanTypeAnnotation; - } - }); - Object.defineProperty(n, "BooleanLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return r.booleanLiteralTypeAnnotation; - } - }); - Object.defineProperty(n, "NullLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return r.nullLiteralTypeAnnotation; - } - }); - Object.defineProperty(n, "ClassImplements", { - enumerable: !0, - get: function() { - return r.classImplements; - } - }); - Object.defineProperty(n, "DeclareClass", { - enumerable: !0, - get: function() { - return r.declareClass; - } - }); - Object.defineProperty(n, "DeclareFunction", { - enumerable: !0, - get: function() { - return r.declareFunction; - } - }); - Object.defineProperty(n, "DeclareInterface", { - enumerable: !0, - get: function() { - return r.declareInterface; - } - }); - Object.defineProperty(n, "DeclareModule", { - enumerable: !0, - get: function() { - return r.declareModule; - } - }); - Object.defineProperty(n, "DeclareModuleExports", { - enumerable: !0, - get: function() { - return r.declareModuleExports; - } - }); - Object.defineProperty(n, "DeclareTypeAlias", { - enumerable: !0, - get: function() { - return r.declareTypeAlias; - } - }); - Object.defineProperty(n, "DeclareOpaqueType", { - enumerable: !0, - get: function() { - return r.declareOpaqueType; - } - }); - Object.defineProperty(n, "DeclareVariable", { - enumerable: !0, - get: function() { - return r.declareVariable; - } - }); - Object.defineProperty(n, "DeclareExportDeclaration", { - enumerable: !0, - get: function() { - return r.declareExportDeclaration; - } - }); - Object.defineProperty(n, "DeclareExportAllDeclaration", { - enumerable: !0, - get: function() { - return r.declareExportAllDeclaration; - } - }); - Object.defineProperty(n, "DeclaredPredicate", { - enumerable: !0, - get: function() { - return r.declaredPredicate; - } - }); - Object.defineProperty(n, "ExistsTypeAnnotation", { - enumerable: !0, - get: function() { - return r.existsTypeAnnotation; - } - }); - Object.defineProperty(n, "FunctionTypeAnnotation", { - enumerable: !0, - get: function() { - return r.functionTypeAnnotation; - } - }); - Object.defineProperty(n, "FunctionTypeParam", { - enumerable: !0, - get: function() { - return r.functionTypeParam; - } - }); - Object.defineProperty(n, "GenericTypeAnnotation", { - enumerable: !0, - get: function() { - return r.genericTypeAnnotation; - } - }); - Object.defineProperty(n, "InferredPredicate", { - enumerable: !0, - get: function() { - return r.inferredPredicate; - } - }); - Object.defineProperty(n, "InterfaceExtends", { - enumerable: !0, - get: function() { - return r.interfaceExtends; - } - }); - Object.defineProperty(n, "InterfaceDeclaration", { - enumerable: !0, - get: function() { - return r.interfaceDeclaration; - } - }); - Object.defineProperty(n, "InterfaceTypeAnnotation", { - enumerable: !0, - get: function() { - return r.interfaceTypeAnnotation; - } - }); - Object.defineProperty(n, "IntersectionTypeAnnotation", { - enumerable: !0, - get: function() { - return r.intersectionTypeAnnotation; - } - }); - Object.defineProperty(n, "MixedTypeAnnotation", { - enumerable: !0, - get: function() { - return r.mixedTypeAnnotation; - } - }); - Object.defineProperty(n, "EmptyTypeAnnotation", { - enumerable: !0, - get: function() { - return r.emptyTypeAnnotation; - } - }); - Object.defineProperty(n, "NullableTypeAnnotation", { - enumerable: !0, - get: function() { - return r.nullableTypeAnnotation; - } - }); - Object.defineProperty(n, "NumberLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return r.numberLiteralTypeAnnotation; - } - }); - Object.defineProperty(n, "NumberTypeAnnotation", { - enumerable: !0, - get: function() { - return r.numberTypeAnnotation; - } - }); - Object.defineProperty(n, "ObjectTypeAnnotation", { - enumerable: !0, - get: function() { - return r.objectTypeAnnotation; - } - }); - Object.defineProperty(n, "ObjectTypeInternalSlot", { - enumerable: !0, - get: function() { - return r.objectTypeInternalSlot; - } - }); - Object.defineProperty(n, "ObjectTypeCallProperty", { - enumerable: !0, - get: function() { - return r.objectTypeCallProperty; - } - }); - Object.defineProperty(n, "ObjectTypeIndexer", { - enumerable: !0, - get: function() { - return r.objectTypeIndexer; - } - }); - Object.defineProperty(n, "ObjectTypeProperty", { - enumerable: !0, - get: function() { - return r.objectTypeProperty; - } - }); - Object.defineProperty(n, "ObjectTypeSpreadProperty", { - enumerable: !0, - get: function() { - return r.objectTypeSpreadProperty; - } - }); - Object.defineProperty(n, "OpaqueType", { - enumerable: !0, - get: function() { - return r.opaqueType; - } - }); - Object.defineProperty(n, "QualifiedTypeIdentifier", { - enumerable: !0, - get: function() { - return r.qualifiedTypeIdentifier; - } - }); - Object.defineProperty(n, "StringLiteralTypeAnnotation", { - enumerable: !0, - get: function() { - return r.stringLiteralTypeAnnotation; - } - }); - Object.defineProperty(n, "StringTypeAnnotation", { - enumerable: !0, - get: function() { - return r.stringTypeAnnotation; - } - }); - Object.defineProperty(n, "SymbolTypeAnnotation", { - enumerable: !0, - get: function() { - return r.symbolTypeAnnotation; - } - }); - Object.defineProperty(n, "ThisTypeAnnotation", { - enumerable: !0, - get: function() { - return r.thisTypeAnnotation; - } - }); - Object.defineProperty(n, "TupleTypeAnnotation", { - enumerable: !0, - get: function() { - return r.tupleTypeAnnotation; - } - }); - Object.defineProperty(n, "TypeofTypeAnnotation", { - enumerable: !0, - get: function() { - return r.typeofTypeAnnotation; - } - }); - Object.defineProperty(n, "TypeAlias", { - enumerable: !0, - get: function() { - return r.typeAlias; - } - }); - Object.defineProperty(n, "TypeAnnotation", { - enumerable: !0, - get: function() { - return r.typeAnnotation; - } - }); - Object.defineProperty(n, "TypeCastExpression", { - enumerable: !0, - get: function() { - return r.typeCastExpression; - } - }); - Object.defineProperty(n, "TypeParameter", { - enumerable: !0, - get: function() { - return r.typeParameter; - } - }); - Object.defineProperty(n, "TypeParameterDeclaration", { - enumerable: !0, - get: function() { - return r.typeParameterDeclaration; - } - }); - Object.defineProperty(n, "TypeParameterInstantiation", { - enumerable: !0, - get: function() { - return r.typeParameterInstantiation; - } - }); - Object.defineProperty(n, "UnionTypeAnnotation", { - enumerable: !0, - get: function() { - return r.unionTypeAnnotation; - } - }); - Object.defineProperty(n, "Variance", { - enumerable: !0, - get: function() { - return r.variance; - } - }); - Object.defineProperty(n, "VoidTypeAnnotation", { - enumerable: !0, - get: function() { - return r.voidTypeAnnotation; - } - }); - Object.defineProperty(n, "EnumDeclaration", { - enumerable: !0, - get: function() { - return r.enumDeclaration; - } - }); - Object.defineProperty(n, "EnumBooleanBody", { - enumerable: !0, - get: function() { - return r.enumBooleanBody; - } - }); - Object.defineProperty(n, "EnumNumberBody", { - enumerable: !0, - get: function() { - return r.enumNumberBody; - } - }); - Object.defineProperty(n, "EnumStringBody", { - enumerable: !0, - get: function() { - return r.enumStringBody; - } - }); - Object.defineProperty(n, "EnumSymbolBody", { - enumerable: !0, - get: function() { - return r.enumSymbolBody; - } - }); - Object.defineProperty(n, "EnumBooleanMember", { - enumerable: !0, - get: function() { - return r.enumBooleanMember; - } - }); - Object.defineProperty(n, "EnumNumberMember", { - enumerable: !0, - get: function() { - return r.enumNumberMember; - } - }); - Object.defineProperty(n, "EnumStringMember", { - enumerable: !0, - get: function() { - return r.enumStringMember; - } - }); - Object.defineProperty(n, "EnumDefaultedMember", { - enumerable: !0, - get: function() { - return r.enumDefaultedMember; - } - }); - Object.defineProperty(n, "IndexedAccessType", { - enumerable: !0, - get: function() { - return r.indexedAccessType; - } - }); - Object.defineProperty(n, "OptionalIndexedAccessType", { - enumerable: !0, - get: function() { - return r.optionalIndexedAccessType; - } - }); - Object.defineProperty(n, "JSXAttribute", { - enumerable: !0, - get: function() { - return r.jsxAttribute; - } - }); - Object.defineProperty(n, "JSXClosingElement", { - enumerable: !0, - get: function() { - return r.jsxClosingElement; - } - }); - Object.defineProperty(n, "JSXElement", { - enumerable: !0, - get: function() { - return r.jsxElement; - } - }); - Object.defineProperty(n, "JSXEmptyExpression", { - enumerable: !0, - get: function() { - return r.jsxEmptyExpression; - } - }); - Object.defineProperty(n, "JSXExpressionContainer", { - enumerable: !0, - get: function() { - return r.jsxExpressionContainer; - } - }); - Object.defineProperty(n, "JSXSpreadChild", { - enumerable: !0, - get: function() { - return r.jsxSpreadChild; - } - }); - Object.defineProperty(n, "JSXIdentifier", { - enumerable: !0, - get: function() { - return r.jsxIdentifier; - } - }); - Object.defineProperty(n, "JSXMemberExpression", { - enumerable: !0, - get: function() { - return r.jsxMemberExpression; - } - }); - Object.defineProperty(n, "JSXNamespacedName", { - enumerable: !0, - get: function() { - return r.jsxNamespacedName; - } - }); - Object.defineProperty(n, "JSXOpeningElement", { - enumerable: !0, - get: function() { - return r.jsxOpeningElement; - } - }); - Object.defineProperty(n, "JSXSpreadAttribute", { - enumerable: !0, - get: function() { - return r.jsxSpreadAttribute; - } - }); - Object.defineProperty(n, "JSXText", { - enumerable: !0, - get: function() { - return r.jsxText; - } - }); - Object.defineProperty(n, "JSXFragment", { - enumerable: !0, - get: function() { - return r.jsxFragment; - } - }); - Object.defineProperty(n, "JSXOpeningFragment", { - enumerable: !0, - get: function() { - return r.jsxOpeningFragment; - } - }); - Object.defineProperty(n, "JSXClosingFragment", { - enumerable: !0, - get: function() { - return r.jsxClosingFragment; - } - }); - Object.defineProperty(n, "Noop", { - enumerable: !0, - get: function() { - return r.noop; - } - }); - Object.defineProperty(n, "Placeholder", { - enumerable: !0, - get: function() { - return r.placeholder; - } - }); - Object.defineProperty(n, "V8IntrinsicIdentifier", { - enumerable: !0, - get: function() { - return r.v8IntrinsicIdentifier; - } - }); - Object.defineProperty(n, "ArgumentPlaceholder", { - enumerable: !0, - get: function() { - return r.argumentPlaceholder; - } - }); - Object.defineProperty(n, "BindExpression", { - enumerable: !0, - get: function() { - return r.bindExpression; - } - }); - Object.defineProperty(n, "ImportAttribute", { - enumerable: !0, - get: function() { - return r.importAttribute; - } - }); - Object.defineProperty(n, "Decorator", { - enumerable: !0, - get: function() { - return r.decorator; - } - }); - Object.defineProperty(n, "DoExpression", { - enumerable: !0, - get: function() { - return r.doExpression; - } - }); - Object.defineProperty(n, "ExportDefaultSpecifier", { - enumerable: !0, - get: function() { - return r.exportDefaultSpecifier; - } - }); - Object.defineProperty(n, "RecordExpression", { - enumerable: !0, - get: function() { - return r.recordExpression; - } - }); - Object.defineProperty(n, "TupleExpression", { - enumerable: !0, - get: function() { - return r.tupleExpression; - } - }); - Object.defineProperty(n, "DecimalLiteral", { - enumerable: !0, - get: function() { - return r.decimalLiteral; - } - }); - Object.defineProperty(n, "StaticBlock", { - enumerable: !0, - get: function() { - return r.staticBlock; - } - }); - Object.defineProperty(n, "ModuleExpression", { - enumerable: !0, - get: function() { - return r.moduleExpression; - } - }); - Object.defineProperty(n, "TopicReference", { - enumerable: !0, - get: function() { - return r.topicReference; - } - }); - Object.defineProperty(n, "PipelineTopicExpression", { - enumerable: !0, - get: function() { - return r.pipelineTopicExpression; - } - }); - Object.defineProperty(n, "PipelineBareFunction", { - enumerable: !0, - get: function() { - return r.pipelineBareFunction; - } - }); - Object.defineProperty(n, "PipelinePrimaryTopicReference", { - enumerable: !0, - get: function() { - return r.pipelinePrimaryTopicReference; - } - }); - Object.defineProperty(n, "TSParameterProperty", { - enumerable: !0, - get: function() { - return r.tsParameterProperty; - } - }); - Object.defineProperty(n, "TSDeclareFunction", { - enumerable: !0, - get: function() { - return r.tsDeclareFunction; - } - }); - Object.defineProperty(n, "TSDeclareMethod", { - enumerable: !0, - get: function() { - return r.tsDeclareMethod; - } - }); - Object.defineProperty(n, "TSQualifiedName", { - enumerable: !0, - get: function() { - return r.tsQualifiedName; - } - }); - Object.defineProperty(n, "TSCallSignatureDeclaration", { - enumerable: !0, - get: function() { - return r.tsCallSignatureDeclaration; - } - }); - Object.defineProperty(n, "TSConstructSignatureDeclaration", { - enumerable: !0, - get: function() { - return r.tsConstructSignatureDeclaration; - } - }); - Object.defineProperty(n, "TSPropertySignature", { - enumerable: !0, - get: function() { - return r.tsPropertySignature; - } - }); - Object.defineProperty(n, "TSMethodSignature", { - enumerable: !0, - get: function() { - return r.tsMethodSignature; - } - }); - Object.defineProperty(n, "TSIndexSignature", { - enumerable: !0, - get: function() { - return r.tsIndexSignature; - } - }); - Object.defineProperty(n, "TSAnyKeyword", { - enumerable: !0, - get: function() { - return r.tsAnyKeyword; - } - }); - Object.defineProperty(n, "TSBooleanKeyword", { - enumerable: !0, - get: function() { - return r.tsBooleanKeyword; - } - }); - Object.defineProperty(n, "TSBigIntKeyword", { - enumerable: !0, - get: function() { - return r.tsBigIntKeyword; - } - }); - Object.defineProperty(n, "TSIntrinsicKeyword", { - enumerable: !0, - get: function() { - return r.tsIntrinsicKeyword; - } - }); - Object.defineProperty(n, "TSNeverKeyword", { - enumerable: !0, - get: function() { - return r.tsNeverKeyword; - } - }); - Object.defineProperty(n, "TSNullKeyword", { - enumerable: !0, - get: function() { - return r.tsNullKeyword; - } - }); - Object.defineProperty(n, "TSNumberKeyword", { - enumerable: !0, - get: function() { - return r.tsNumberKeyword; - } - }); - Object.defineProperty(n, "TSObjectKeyword", { - enumerable: !0, - get: function() { - return r.tsObjectKeyword; - } - }); - Object.defineProperty(n, "TSStringKeyword", { - enumerable: !0, - get: function() { - return r.tsStringKeyword; - } - }); - Object.defineProperty(n, "TSSymbolKeyword", { - enumerable: !0, - get: function() { - return r.tsSymbolKeyword; - } - }); - Object.defineProperty(n, "TSUndefinedKeyword", { - enumerable: !0, - get: function() { - return r.tsUndefinedKeyword; - } - }); - Object.defineProperty(n, "TSUnknownKeyword", { - enumerable: !0, - get: function() { - return r.tsUnknownKeyword; - } - }); - Object.defineProperty(n, "TSVoidKeyword", { - enumerable: !0, - get: function() { - return r.tsVoidKeyword; - } - }); - Object.defineProperty(n, "TSThisType", { - enumerable: !0, - get: function() { - return r.tsThisType; - } - }); - Object.defineProperty(n, "TSFunctionType", { - enumerable: !0, - get: function() { - return r.tsFunctionType; - } - }); - Object.defineProperty(n, "TSConstructorType", { - enumerable: !0, - get: function() { - return r.tsConstructorType; - } - }); - Object.defineProperty(n, "TSTypeReference", { - enumerable: !0, - get: function() { - return r.tsTypeReference; - } - }); - Object.defineProperty(n, "TSTypePredicate", { - enumerable: !0, - get: function() { - return r.tsTypePredicate; - } - }); - Object.defineProperty(n, "TSTypeQuery", { - enumerable: !0, - get: function() { - return r.tsTypeQuery; - } - }); - Object.defineProperty(n, "TSTypeLiteral", { - enumerable: !0, - get: function() { - return r.tsTypeLiteral; - } - }); - Object.defineProperty(n, "TSArrayType", { - enumerable: !0, - get: function() { - return r.tsArrayType; - } - }); - Object.defineProperty(n, "TSTupleType", { - enumerable: !0, - get: function() { - return r.tsTupleType; - } - }); - Object.defineProperty(n, "TSOptionalType", { - enumerable: !0, - get: function() { - return r.tsOptionalType; - } - }); - Object.defineProperty(n, "TSRestType", { - enumerable: !0, - get: function() { - return r.tsRestType; - } - }); - Object.defineProperty(n, "TSNamedTupleMember", { - enumerable: !0, - get: function() { - return r.tsNamedTupleMember; - } - }); - Object.defineProperty(n, "TSUnionType", { - enumerable: !0, - get: function() { - return r.tsUnionType; - } - }); - Object.defineProperty(n, "TSIntersectionType", { - enumerable: !0, - get: function() { - return r.tsIntersectionType; - } - }); - Object.defineProperty(n, "TSConditionalType", { - enumerable: !0, - get: function() { - return r.tsConditionalType; - } - }); - Object.defineProperty(n, "TSInferType", { - enumerable: !0, - get: function() { - return r.tsInferType; - } - }); - Object.defineProperty(n, "TSParenthesizedType", { - enumerable: !0, - get: function() { - return r.tsParenthesizedType; - } - }); - Object.defineProperty(n, "TSTypeOperator", { - enumerable: !0, - get: function() { - return r.tsTypeOperator; - } - }); - Object.defineProperty(n, "TSIndexedAccessType", { - enumerable: !0, - get: function() { - return r.tsIndexedAccessType; - } - }); - Object.defineProperty(n, "TSMappedType", { - enumerable: !0, - get: function() { - return r.tsMappedType; - } - }); - Object.defineProperty(n, "TSLiteralType", { - enumerable: !0, - get: function() { - return r.tsLiteralType; - } - }); - Object.defineProperty(n, "TSExpressionWithTypeArguments", { - enumerable: !0, - get: function() { - return r.tsExpressionWithTypeArguments; - } - }); - Object.defineProperty(n, "TSInterfaceDeclaration", { - enumerable: !0, - get: function() { - return r.tsInterfaceDeclaration; - } - }); - Object.defineProperty(n, "TSInterfaceBody", { - enumerable: !0, - get: function() { - return r.tsInterfaceBody; - } - }); - Object.defineProperty(n, "TSTypeAliasDeclaration", { - enumerable: !0, - get: function() { - return r.tsTypeAliasDeclaration; - } - }); - Object.defineProperty(n, "TSAsExpression", { - enumerable: !0, - get: function() { - return r.tsAsExpression; - } - }); - Object.defineProperty(n, "TSTypeAssertion", { - enumerable: !0, - get: function() { - return r.tsTypeAssertion; - } - }); - Object.defineProperty(n, "TSEnumDeclaration", { - enumerable: !0, - get: function() { - return r.tsEnumDeclaration; - } - }); - Object.defineProperty(n, "TSEnumMember", { - enumerable: !0, - get: function() { - return r.tsEnumMember; - } - }); - Object.defineProperty(n, "TSModuleDeclaration", { - enumerable: !0, - get: function() { - return r.tsModuleDeclaration; - } - }); - Object.defineProperty(n, "TSModuleBlock", { - enumerable: !0, - get: function() { - return r.tsModuleBlock; - } - }); - Object.defineProperty(n, "TSImportType", { - enumerable: !0, - get: function() { - return r.tsImportType; - } - }); - Object.defineProperty(n, "TSImportEqualsDeclaration", { - enumerable: !0, - get: function() { - return r.tsImportEqualsDeclaration; - } - }); - Object.defineProperty(n, "TSExternalModuleReference", { - enumerable: !0, - get: function() { - return r.tsExternalModuleReference; - } - }); - Object.defineProperty(n, "TSNonNullExpression", { - enumerable: !0, - get: function() { - return r.tsNonNullExpression; - } - }); - Object.defineProperty(n, "TSExportAssignment", { - enumerable: !0, - get: function() { - return r.tsExportAssignment; - } - }); - Object.defineProperty(n, "TSNamespaceExportDeclaration", { - enumerable: !0, - get: function() { - return r.tsNamespaceExportDeclaration; - } - }); - Object.defineProperty(n, "TSTypeAnnotation", { - enumerable: !0, - get: function() { - return r.tsTypeAnnotation; - } - }); - Object.defineProperty(n, "TSTypeParameterInstantiation", { - enumerable: !0, - get: function() { - return r.tsTypeParameterInstantiation; - } - }); - Object.defineProperty(n, "TSTypeParameterDeclaration", { - enumerable: !0, - get: function() { - return r.tsTypeParameterDeclaration; - } - }); - Object.defineProperty(n, "TSTypeParameter", { - enumerable: !0, - get: function() { - return r.tsTypeParameter; - } - }); - Object.defineProperty(n, "NumberLiteral", { - enumerable: !0, - get: function() { - return r.numberLiteral; - } - }); - Object.defineProperty(n, "RegexLiteral", { - enumerable: !0, - get: function() { - return r.regexLiteral; - } - }); - Object.defineProperty(n, "RestProperty", { - enumerable: !0, - get: function() { - return r.restProperty; - } - }); - Object.defineProperty(n, "SpreadProperty", { - enumerable: !0, - get: function() { - return r.spreadProperty; - } - }); - var r = e("./index"); - }, { - "./index": 70 - } ], - 72: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - const t = []; - for (let n = 0; n < e.children.length; n++) { - let s = e.children[n]; - if ((0, r.isJSXText)(s)) (0, i.default)(s, t); else { - (0, r.isJSXExpressionContainer)(s) && (s = s.expression); - (0, r.isJSXEmptyExpression)(s) || t.push(s); - } - } - return t; - }; - r = e("../../validators/generated"); - i = e("../../utils/react/cleanJSXElementLiteralChild"); - }, { - "../../utils/react/cleanJSXElementLiteralChild": 121, - "../../validators/generated": 124 - } ], - 73: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - const t = e.map(e => e.typeAnnotation); - const n = (0, i.default)(t); - return 1 === n.length ? n[0] : (0, r.tsUnionType)(n); - }; - r = e("../generated"); - i = e("../../modifications/typescript/removeTypeDuplicates"); - }, { - "../../modifications/typescript/removeTypeDuplicates": 115, - "../generated": 70 - } ], - 74: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.default)(e, !1); - }; - var r = e("./cloneNode"); - }, { - "./cloneNode": 77 - } ], - 75: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.default)(e); - }; - var r = e("./cloneNode"); - }, { - "./cloneNode": 77 - } ], - 76: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.default)(e, !0, !0); - }; - var r = e("./cloneNode"); - }, { - "./cloneNode": 77 - } ], - 77: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = l; - r = e("../definitions"); - i = e("../validators/generated"); - const s = Function.call.bind(Object.prototype.hasOwnProperty); - function a(e, t, n) { - return e && "string" == typeof e.type ? l(e, t, n) : e; - } - function o(e, t, n) { - return Array.isArray(e) ? e.map(e => a(e, t, n)) : a(e, t, n); - } - function l(e, t = !0, n = !1) { - if (!e) return e; - const {type: a} = e; - const l = { - type: e.type - }; - if ((0, i.isIdentifier)(e)) { - l.name = e.name; - s(e, "optional") && "boolean" == typeof e.optional && (l.optional = e.optional); - s(e, "typeAnnotation") && (l.typeAnnotation = t ? o(e.typeAnnotation, !0, n) : e.typeAnnotation); - } else { - if (!s(r.NODE_FIELDS, a)) throw new Error(`Unknown node type: "${a}"`); - for (const p of Object.keys(r.NODE_FIELDS[a])) s(e, p) && (l[p] = t ? (0, i.isFile)(e) && "comments" === p ? c(e.comments, t, n) : o(e[p], !0, n) : e[p]); - } - s(e, "loc") && (l.loc = n ? null : e.loc); - s(e, "leadingComments") && (l.leadingComments = c(e.leadingComments, t, n)); - s(e, "innerComments") && (l.innerComments = c(e.innerComments, t, n)); - s(e, "trailingComments") && (l.trailingComments = c(e.trailingComments, t, n)); - s(e, "extra") && (l.extra = Object.assign({}, e.extra)); - return l; - } - function c(e, t, n) { - return e && t ? e.map(({type: e, value: t, loc: r}) => n ? { - type: e, - value: t, - loc: null - } : { - type: e, - value: t, - loc: r - }) : e; - } - }, { - "../definitions": 102, - "../validators/generated": 124 - } ], - 78: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.default)(e, !1, !0); - }; - var r = e("./cloneNode"); - }, { - "./cloneNode": 77 - } ], - 79: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n, i) { - return (0, r.default)(e, t, [ { - type: i ? "CommentLine" : "CommentBlock", - value: n - } ]); - }; - var r = e("./addComments"); - }, { - "./addComments": 80 - } ], - 80: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - if (!n || !e) return e; - const r = `${t}Comments`; - e[r] ? "leading" === t ? e[r] = n.concat(e[r]) : e[r].push(...n) : e[r] = n; - return e; - }; - }, {} ], - 81: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - (0, r.default)("innerComments", e, t); - }; - var r = e("../utils/inherit"); - }, { - "../utils/inherit": 120 - } ], - 82: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - (0, r.default)("leadingComments", e, t); - }; - var r = e("../utils/inherit"); - }, { - "../utils/inherit": 120 - } ], - 83: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - (0, r.default)("trailingComments", e, t); - }; - var r = e("../utils/inherit"); - }, { - "../utils/inherit": 120 - } ], - 84: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - (0, r.default)(e, t); - (0, i.default)(e, t); - (0, s.default)(e, t); - return e; - }; - r = e("./inheritTrailingComments"); - i = e("./inheritLeadingComments"); - s = e("./inheritInnerComments"); - }, { - "./inheritInnerComments": 81, - "./inheritLeadingComments": 82, - "./inheritTrailingComments": 83 - } ], - 85: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - r.COMMENT_KEYS.forEach(t => { - e[t] = null; - }); - return e; - }; - var r = e("../constants"); - }, { - "../constants": 87 - } ], - 86: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.TSBASETYPE_TYPES = n.TSTYPE_TYPES = n.TSTYPEELEMENT_TYPES = n.JSX_TYPES = n.ENUMMEMBER_TYPES = n.ENUMBODY_TYPES = n.FLOWPREDICATE_TYPES = n.FLOWDECLARATION_TYPES = n.FLOWBASEANNOTATION_TYPES = n.FLOWTYPE_TYPES = n.FLOW_TYPES = n.PRIVATE_TYPES = n.MODULESPECIFIER_TYPES = n.EXPORTDECLARATION_TYPES = n.MODULEDECLARATION_TYPES = n.CLASS_TYPES = n.PATTERN_TYPES = n.UNARYLIKE_TYPES = n.PROPERTY_TYPES = n.OBJECTMEMBER_TYPES = n.METHOD_TYPES = n.USERWHITESPACABLE_TYPES = n.IMMUTABLE_TYPES = n.LITERAL_TYPES = n.TSENTITYNAME_TYPES = n.LVAL_TYPES = n.PATTERNLIKE_TYPES = n.DECLARATION_TYPES = n.PUREISH_TYPES = n.FUNCTIONPARENT_TYPES = n.FUNCTION_TYPES = n.FORXSTATEMENT_TYPES = n.FOR_TYPES = n.EXPRESSIONWRAPPER_TYPES = n.WHILE_TYPES = n.LOOP_TYPES = n.CONDITIONAL_TYPES = n.COMPLETIONSTATEMENT_TYPES = n.TERMINATORLESS_TYPES = n.STATEMENT_TYPES = n.BLOCK_TYPES = n.BLOCKPARENT_TYPES = n.SCOPABLE_TYPES = n.BINARY_TYPES = n.EXPRESSION_TYPES = void 0; - var r = e("../../definitions"); - const i = r.FLIPPED_ALIAS_KEYS.Expression; - n.EXPRESSION_TYPES = i; - const s = r.FLIPPED_ALIAS_KEYS.Binary; - n.BINARY_TYPES = s; - const a = r.FLIPPED_ALIAS_KEYS.Scopable; - n.SCOPABLE_TYPES = a; - const o = r.FLIPPED_ALIAS_KEYS.BlockParent; - n.BLOCKPARENT_TYPES = o; - const l = r.FLIPPED_ALIAS_KEYS.Block; - n.BLOCK_TYPES = l; - const c = r.FLIPPED_ALIAS_KEYS.Statement; - n.STATEMENT_TYPES = c; - const p = r.FLIPPED_ALIAS_KEYS.Terminatorless; - n.TERMINATORLESS_TYPES = p; - const u = r.FLIPPED_ALIAS_KEYS.CompletionStatement; - n.COMPLETIONSTATEMENT_TYPES = u; - const d = r.FLIPPED_ALIAS_KEYS.Conditional; - n.CONDITIONAL_TYPES = d; - const h = r.FLIPPED_ALIAS_KEYS.Loop; - n.LOOP_TYPES = h; - const f = r.FLIPPED_ALIAS_KEYS.While; - n.WHILE_TYPES = f; - const m = r.FLIPPED_ALIAS_KEYS.ExpressionWrapper; - n.EXPRESSIONWRAPPER_TYPES = m; - const y = r.FLIPPED_ALIAS_KEYS.For; - n.FOR_TYPES = y; - const g = r.FLIPPED_ALIAS_KEYS.ForXStatement; - n.FORXSTATEMENT_TYPES = g; - const T = r.FLIPPED_ALIAS_KEYS.Function; - n.FUNCTION_TYPES = T; - const b = r.FLIPPED_ALIAS_KEYS.FunctionParent; - n.FUNCTIONPARENT_TYPES = b; - const S = r.FLIPPED_ALIAS_KEYS.Pureish; - n.PUREISH_TYPES = S; - const x = r.FLIPPED_ALIAS_KEYS.Declaration; - n.DECLARATION_TYPES = x; - const E = r.FLIPPED_ALIAS_KEYS.PatternLike; - n.PATTERNLIKE_TYPES = E; - const P = r.FLIPPED_ALIAS_KEYS.LVal; - n.LVAL_TYPES = P; - const v = r.FLIPPED_ALIAS_KEYS.TSEntityName; - n.TSENTITYNAME_TYPES = v; - const A = r.FLIPPED_ALIAS_KEYS.Literal; - n.LITERAL_TYPES = A; - const w = r.FLIPPED_ALIAS_KEYS.Immutable; - n.IMMUTABLE_TYPES = w; - const C = r.FLIPPED_ALIAS_KEYS.UserWhitespacable; - n.USERWHITESPACABLE_TYPES = C; - const I = r.FLIPPED_ALIAS_KEYS.Method; - n.METHOD_TYPES = I; - const O = r.FLIPPED_ALIAS_KEYS.ObjectMember; - n.OBJECTMEMBER_TYPES = O; - const N = r.FLIPPED_ALIAS_KEYS.Property; - n.PROPERTY_TYPES = N; - const k = r.FLIPPED_ALIAS_KEYS.UnaryLike; - n.UNARYLIKE_TYPES = k; - const D = r.FLIPPED_ALIAS_KEYS.Pattern; - n.PATTERN_TYPES = D; - const M = r.FLIPPED_ALIAS_KEYS.Class; - n.CLASS_TYPES = M; - const _ = r.FLIPPED_ALIAS_KEYS.ModuleDeclaration; - n.MODULEDECLARATION_TYPES = _; - const L = r.FLIPPED_ALIAS_KEYS.ExportDeclaration; - n.EXPORTDECLARATION_TYPES = L; - const j = r.FLIPPED_ALIAS_KEYS.ModuleSpecifier; - n.MODULESPECIFIER_TYPES = j; - const F = r.FLIPPED_ALIAS_KEYS.Private; - n.PRIVATE_TYPES = F; - const B = r.FLIPPED_ALIAS_KEYS.Flow; - n.FLOW_TYPES = B; - const R = r.FLIPPED_ALIAS_KEYS.FlowType; - n.FLOWTYPE_TYPES = R; - const U = r.FLIPPED_ALIAS_KEYS.FlowBaseAnnotation; - n.FLOWBASEANNOTATION_TYPES = U; - const V = r.FLIPPED_ALIAS_KEYS.FlowDeclaration; - n.FLOWDECLARATION_TYPES = V; - const K = r.FLIPPED_ALIAS_KEYS.FlowPredicate; - n.FLOWPREDICATE_TYPES = K; - const W = r.FLIPPED_ALIAS_KEYS.EnumBody; - n.ENUMBODY_TYPES = W; - const q = r.FLIPPED_ALIAS_KEYS.EnumMember; - n.ENUMMEMBER_TYPES = q; - const Y = r.FLIPPED_ALIAS_KEYS.JSX; - n.JSX_TYPES = Y; - const J = r.FLIPPED_ALIAS_KEYS.TSTypeElement; - n.TSTYPEELEMENT_TYPES = J; - const X = r.FLIPPED_ALIAS_KEYS.TSType; - n.TSTYPE_TYPES = X; - const G = r.FLIPPED_ALIAS_KEYS.TSBaseType; - n.TSBASETYPE_TYPES = G; - }, { - "../../definitions": 102 - } ], - 87: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.NOT_LOCAL_BINDING = n.BLOCK_SCOPED_SYMBOL = n.INHERIT_KEYS = n.UNARY_OPERATORS = n.STRING_UNARY_OPERATORS = n.NUMBER_UNARY_OPERATORS = n.BOOLEAN_UNARY_OPERATORS = n.ASSIGNMENT_OPERATORS = n.BINARY_OPERATORS = n.NUMBER_BINARY_OPERATORS = n.BOOLEAN_BINARY_OPERATORS = n.COMPARISON_BINARY_OPERATORS = n.EQUALITY_BINARY_OPERATORS = n.BOOLEAN_NUMBER_BINARY_OPERATORS = n.UPDATE_OPERATORS = n.LOGICAL_OPERATORS = n.COMMENT_KEYS = n.FOR_INIT_KEYS = n.FLATTENABLE_KEYS = n.STATEMENT_OR_BLOCK_KEYS = void 0; - n.STATEMENT_OR_BLOCK_KEYS = [ "consequent", "body", "alternate" ]; - n.FLATTENABLE_KEYS = [ "body", "expressions" ]; - n.FOR_INIT_KEYS = [ "left", "init" ]; - n.COMMENT_KEYS = [ "leadingComments", "trailingComments", "innerComments" ]; - const r = [ "||", "&&", "??" ]; - n.LOGICAL_OPERATORS = r; - n.UPDATE_OPERATORS = [ "++", "--" ]; - const i = [ ">", "<", ">=", "<=" ]; - n.BOOLEAN_NUMBER_BINARY_OPERATORS = i; - const s = [ "==", "===", "!=", "!==" ]; - n.EQUALITY_BINARY_OPERATORS = s; - const a = [ ...s, "in", "instanceof" ]; - n.COMPARISON_BINARY_OPERATORS = a; - const o = [ ...a, ...i ]; - n.BOOLEAN_BINARY_OPERATORS = o; - const l = [ "-", "/", "%", "*", "**", "&", "|", ">>", ">>>", "<<", "^" ]; - n.NUMBER_BINARY_OPERATORS = l; - const c = [ "+", ...l, ...o ]; - n.BINARY_OPERATORS = c; - const p = [ "=", "+=", ...l.map(e => e + "="), ...r.map(e => e + "=") ]; - n.ASSIGNMENT_OPERATORS = p; - const u = [ "delete", "!" ]; - n.BOOLEAN_UNARY_OPERATORS = u; - const d = [ "+", "-", "~" ]; - n.NUMBER_UNARY_OPERATORS = d; - const h = [ "typeof" ]; - n.STRING_UNARY_OPERATORS = h; - const f = [ "void", "throw", ...u, ...d, ...h ]; - n.UNARY_OPERATORS = f; - n.INHERIT_KEYS = { - optional: [ "typeAnnotation", "typeParameters", "returnType" ], - force: [ "start", "loc", "end" ] - }; - const m = Symbol.for("var used to be block scoped"); - n.BLOCK_SCOPED_SYMBOL = m; - const y = Symbol.for("should not be considered a local binding"); - n.NOT_LOCAL_BINDING = y; - }, {} ], - 88: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t = "body") { - return e[t] = (0, r.default)(e[t], e); - }; - var r = e("./toBlock"); - }, { - "./toBlock": 91 - } ], - 89: [ function(e, t, n) { - "use strict"; - var r, i, s, a; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function e(t, n, o) { - const l = []; - let c = !0; - for (const p of t) { - (0, i.isEmptyStatement)(p) || (c = !1); - if ((0, i.isExpression)(p)) l.push(p); else if ((0, i.isExpressionStatement)(p)) l.push(p.expression); else if ((0, - i.isVariableDeclaration)(p)) { - if ("var" !== p.kind) return; - for (const e of p.declarations) { - const t = (0, r.default)(e); - for (const e of Object.keys(t)) o.push({ - kind: p.kind, - id: (0, a.default)(t[e]) - }); - e.init && l.push((0, s.assignmentExpression)("=", e.id, e.init)); - } - c = !0; - } else if ((0, i.isIfStatement)(p)) { - const t = p.consequent ? e([ p.consequent ], n, o) : n.buildUndefinedNode(); - const r = p.alternate ? e([ p.alternate ], n, o) : n.buildUndefinedNode(); - if (!t || !r) return; - l.push((0, s.conditionalExpression)(p.test, t, r)); - } else if ((0, i.isBlockStatement)(p)) { - const t = e(p.body, n, o); - if (!t) return; - l.push(t); - } else { - if (!(0, i.isEmptyStatement)(p)) return; - 0 === t.indexOf(p) && (c = !0); - } - } - c && l.push(n.buildUndefinedNode()); - return 1 === l.length ? l[0] : (0, s.sequenceExpression)(l); - }; - r = e("../retrievers/getBindingIdentifiers"); - i = e("../validators/generated"); - s = e("../builders/generated"); - a = e("../clone/cloneNode"); - }, { - "../builders/generated": 70, - "../clone/cloneNode": 77, - "../retrievers/getBindingIdentifiers": 116, - "../validators/generated": 124 - } ], - 90: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - "eval" !== (e = (0, r.default)(e)) && "arguments" !== e || (e = "_" + e); - return e; - }; - var r = e("./toIdentifier"); - }, { - "./toIdentifier": 94 - } ], - 91: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if ((0, r.isBlockStatement)(e)) return e; - let n = []; - if ((0, r.isEmptyStatement)(e)) n = []; else { - (0, r.isStatement)(e) || (e = (0, r.isFunction)(t) ? (0, i.returnStatement)(e) : (0, - i.expressionStatement)(e)); - n = [ e ]; - } - return (0, i.blockStatement)(n); - }; - r = e("../validators/generated"); - i = e("../builders/generated"); - }, { - "../builders/generated": 70, - "../validators/generated": 124 - } ], - 92: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t = e.key || e.property) { - !e.computed && (0, r.isIdentifier)(t) && (t = (0, i.stringLiteral)(t.name)); - return t; - }; - r = e("../validators/generated"); - i = e("../builders/generated"); - }, { - "../builders/generated": 70, - "../validators/generated": 124 - } ], - 93: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("../validators/generated"); - i = function(e) { - (0, r.isExpressionStatement)(e) && (e = e.expression); - if ((0, r.isExpression)(e)) return e; - (0, r.isClass)(e) ? e.type = "ClassExpression" : (0, r.isFunction)(e) && (e.type = "FunctionExpression"); - if (!(0, r.isExpression)(e)) throw new Error(`cannot turn ${e.type} to an expression`); - return e; - }; - n.default = i; - }, { - "../validators/generated": 124 - } ], - 94: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - e += ""; - let t = ""; - for (const n of e) t += (0, i.isIdentifierChar)(n.codePointAt(0)) ? n : "-"; - t = (t = t.replace(/^[-0-9]+/, "")).replace(/[-\s]+(.)?/g, function(e, t) { - return t ? t.toUpperCase() : ""; - }); - (0, r.default)(t) || (t = `_${t}`); - return t || "_"; - }; - r = e("../validators/isValidIdentifier"); - i = e("@babel/helper-validator-identifier"); - }, { - "../validators/isValidIdentifier": 138, - "@babel/helper-validator-identifier": 27 - } ], - 95: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = a; - r = e("../validators/generated"); - i = e("../clone/cloneNode"); - s = e("../modifications/removePropertiesDeep"); - function a(e, t = e.key) { - let n; - if ("method" === e.kind) return a.increment() + ""; - n = (0, r.isIdentifier)(t) ? t.name : (0, r.isStringLiteral)(t) ? JSON.stringify(t.value) : JSON.stringify((0, - s.default)((0, i.default)(t))); - e.computed && (n = `[${n}]`); - e.static && (n = `static:${n}`); - return n; - } - a.uid = 0; - a.increment = function() { - return a.uid >= Number.MAX_SAFE_INTEGER ? a.uid = 0 : a.uid++; - }; - }, { - "../clone/cloneNode": 77, - "../modifications/removePropertiesDeep": 114, - "../validators/generated": 124 - } ], - 96: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if (null == e || !e.length) return; - const n = []; - const i = (0, r.default)(e, t, n); - if (!i) return; - for (const e of n) t.push(e); - return i; - }; - var r = e("./gatherSequenceExpressions"); - }, { - "./gatherSequenceExpressions": 89 - } ], - 97: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("../validators/generated"); - i = e("../builders/generated"); - s = function(e, t) { - if ((0, r.isStatement)(e)) return e; - let n = !1; - let s; - if ((0, r.isClass)(e)) { - n = !0; - s = "ClassDeclaration"; - } else if ((0, r.isFunction)(e)) { - n = !0; - s = "FunctionDeclaration"; - } else if ((0, r.isAssignmentExpression)(e)) return (0, i.expressionStatement)(e); - n && !e.id && (s = !1); - if (!s) { - if (t) return !1; - throw new Error(`cannot turn ${e.type} to a statement`); - } - e.type = s; - return e; - }; - n.default = s; - }, { - "../builders/generated": 70, - "../validators/generated": 124 - } ], - 98: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("../validators/isValidIdentifier"); - i = e("../builders/generated"); - s = function e(t) { - if (void 0 === t) return (0, i.identifier)("undefined"); - if (!0 === t || !1 === t) return (0, i.booleanLiteral)(t); - if (null === t) return (0, i.nullLiteral)(); - if ("string" == typeof t) return (0, i.stringLiteral)(t); - if ("number" == typeof t) { - let e; - if (Number.isFinite(t)) e = (0, i.numericLiteral)(Math.abs(t)); else { - let n; - n = Number.isNaN(t) ? (0, i.numericLiteral)(0) : (0, i.numericLiteral)(1); - e = (0, i.binaryExpression)("/", n, (0, i.numericLiteral)(0)); - } - (t < 0 || Object.is(t, -0)) && (e = (0, i.unaryExpression)("-", e)); - return e; - } - if (function(e) { - return "[object RegExp]" === a(e); - }(t)) { - const e = t.source; - const n = t.toString().match(/\/([a-z]+|)$/)[1]; - return (0, i.regExpLiteral)(e, n); - } - if (Array.isArray(t)) return (0, i.arrayExpression)(t.map(e)); - if (function(e) { - if ("object" != typeof e || null === e || "[object Object]" !== Object.prototype.toString.call(e)) return !1; - const t = Object.getPrototypeOf(e); - return null === t || null === Object.getPrototypeOf(t); - }(t)) { - const n = []; - for (const s of Object.keys(t)) { - let a; - a = (0, r.default)(s) ? (0, i.identifier)(s) : (0, i.stringLiteral)(s); - n.push((0, i.objectProperty)(a, e(t[s]))); - } - return (0, i.objectExpression)(n); - } - throw new Error("don't know how to turn this value into a node"); - }; - n.default = s; - const a = Function.call.bind(Object.prototype.toString); - }, { - "../builders/generated": 70, - "../validators/isValidIdentifier": 138 - } ], - 99: [ function(e, t, n) { - (function(t) { - (function() { - "use strict"; - var r, i, s, a, o; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.classMethodOrDeclareMethodCommon = n.classMethodOrPropertyCommon = n.patternLikeCommon = n.functionDeclarationCommon = n.functionTypeAnnotationCommon = n.functionCommon = void 0; - r = e("../validators/is"); - i = e("../validators/isValidIdentifier"); - s = e("@babel/helper-validator-identifier"); - a = e("../constants"); - (0, (o = e("./utils")).default)("ArrayExpression", { - fields: { - elements: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeOrValueType)("null", "Expression", "SpreadElement"))), - default: t.env.BABEL_TYPES_8_BREAKING ? void 0 : [] - } - }, - visitor: [ "elements" ], - aliases: [ "Expression" ] - }); - (0, o.default)("AssignmentExpression", { - fields: { - operator: { - validate: function() { - if (!t.env.BABEL_TYPES_8_BREAKING) return (0, o.assertValueType)("string"); - const e = (0, o.assertOneOf)(...a.ASSIGNMENT_OPERATORS); - const n = (0, o.assertOneOf)("="); - return function(t, i, s) { - ((0, r.default)("Pattern", t.left) ? n : e)(t, i, s); - }; - }() - }, - left: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.assertNodeType)("Identifier", "MemberExpression", "ArrayPattern", "ObjectPattern") : (0, - o.assertNodeType)("LVal") - }, - right: { - validate: (0, o.assertNodeType)("Expression") - } - }, - builder: [ "operator", "left", "right" ], - visitor: [ "left", "right" ], - aliases: [ "Expression" ] - }); - (0, o.default)("BinaryExpression", { - builder: [ "operator", "left", "right" ], - fields: { - operator: { - validate: (0, o.assertOneOf)(...a.BINARY_OPERATORS) - }, - left: { - validate: function() { - const e = (0, o.assertNodeType)("Expression"); - const t = (0, o.assertNodeType)("Expression", "PrivateName"); - const n = function(n, r, i) { - ("in" === n.operator ? t : e)(n, r, i); - }; - n.oneOfNodeTypes = [ "Expression", "PrivateName" ]; - return n; - }() - }, - right: { - validate: (0, o.assertNodeType)("Expression") - } - }, - visitor: [ "left", "right" ], - aliases: [ "Binary", "Expression" ] - }); - (0, o.default)("InterpreterDirective", { - builder: [ "value" ], - fields: { - value: { - validate: (0, o.assertValueType)("string") - } - } - }); - (0, o.default)("Directive", { - visitor: [ "value" ], - fields: { - value: { - validate: (0, o.assertNodeType)("DirectiveLiteral") - } - } - }); - (0, o.default)("DirectiveLiteral", { - builder: [ "value" ], - fields: { - value: { - validate: (0, o.assertValueType)("string") - } - } - }); - (0, o.default)("BlockStatement", { - builder: [ "body", "directives" ], - visitor: [ "directives", "body" ], - fields: { - directives: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Directive"))), - default: [] - }, - body: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Statement"))) - } - }, - aliases: [ "Scopable", "BlockParent", "Block", "Statement" ] - }); - (0, o.default)("BreakStatement", { - visitor: [ "label" ], - fields: { - label: { - validate: (0, o.assertNodeType)("Identifier"), - optional: !0 - } - }, - aliases: [ "Statement", "Terminatorless", "CompletionStatement" ] - }); - (0, o.default)("CallExpression", { - visitor: [ "callee", "arguments", "typeParameters", "typeArguments" ], - builder: [ "callee", "arguments" ], - aliases: [ "Expression" ], - fields: Object.assign({ - callee: { - validate: (0, o.assertNodeType)("Expression", "V8IntrinsicIdentifier") - }, - arguments: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Expression", "SpreadElement", "JSXNamespacedName", "ArgumentPlaceholder"))) - } - }, t.env.BABEL_TYPES_8_BREAKING ? {} : { - optional: { - validate: (0, o.assertOneOf)(!0, !1), - optional: !0 - } - }, { - typeArguments: { - validate: (0, o.assertNodeType)("TypeParameterInstantiation"), - optional: !0 - }, - typeParameters: { - validate: (0, o.assertNodeType)("TSTypeParameterInstantiation"), - optional: !0 - } - }) - }); - (0, o.default)("CatchClause", { - visitor: [ "param", "body" ], - fields: { - param: { - validate: (0, o.assertNodeType)("Identifier", "ArrayPattern", "ObjectPattern"), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }, - aliases: [ "Scopable", "BlockParent" ] - }); - (0, o.default)("ConditionalExpression", { - visitor: [ "test", "consequent", "alternate" ], - fields: { - test: { - validate: (0, o.assertNodeType)("Expression") - }, - consequent: { - validate: (0, o.assertNodeType)("Expression") - }, - alternate: { - validate: (0, o.assertNodeType)("Expression") - } - }, - aliases: [ "Expression", "Conditional" ] - }); - (0, o.default)("ContinueStatement", { - visitor: [ "label" ], - fields: { - label: { - validate: (0, o.assertNodeType)("Identifier"), - optional: !0 - } - }, - aliases: [ "Statement", "Terminatorless", "CompletionStatement" ] - }); - (0, o.default)("DebuggerStatement", { - aliases: [ "Statement" ] - }); - (0, o.default)("DoWhileStatement", { - visitor: [ "test", "body" ], - fields: { - test: { - validate: (0, o.assertNodeType)("Expression") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - }, - aliases: [ "Statement", "BlockParent", "Loop", "While", "Scopable" ] - }); - (0, o.default)("EmptyStatement", { - aliases: [ "Statement" ] - }); - (0, o.default)("ExpressionStatement", { - visitor: [ "expression" ], - fields: { - expression: { - validate: (0, o.assertNodeType)("Expression") - } - }, - aliases: [ "Statement", "ExpressionWrapper" ] - }); - (0, o.default)("File", { - builder: [ "program", "comments", "tokens" ], - visitor: [ "program" ], - fields: { - program: { - validate: (0, o.assertNodeType)("Program") - }, - comments: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.assertEach)((0, o.assertNodeType)("CommentBlock", "CommentLine")) : Object.assign(() => {}, { - each: { - oneOfNodeTypes: [ "CommentBlock", "CommentLine" ] - } - }), - optional: !0 - }, - tokens: { - validate: (0, o.assertEach)(Object.assign(() => {}, { - type: "any" - })), - optional: !0 - } - } - }); - (0, o.default)("ForInStatement", { - visitor: [ "left", "right", "body" ], - aliases: [ "Scopable", "Statement", "For", "BlockParent", "Loop", "ForXStatement" ], - fields: { - left: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.assertNodeType)("VariableDeclaration", "Identifier", "MemberExpression", "ArrayPattern", "ObjectPattern") : (0, - o.assertNodeType)("VariableDeclaration", "LVal") - }, - right: { - validate: (0, o.assertNodeType)("Expression") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - } - }); - (0, o.default)("ForStatement", { - visitor: [ "init", "test", "update", "body" ], - aliases: [ "Scopable", "Statement", "For", "BlockParent", "Loop" ], - fields: { - init: { - validate: (0, o.assertNodeType)("VariableDeclaration", "Expression"), - optional: !0 - }, - test: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - }, - update: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - } - }); - const l = { - params: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Identifier", "Pattern", "RestElement"))) - }, - generator: { - default: !1 - }, - async: { - default: !1 - } - }; - n.functionCommon = l; - const c = { - returnType: { - validate: (0, o.assertNodeType)("TypeAnnotation", "TSTypeAnnotation", "Noop"), - optional: !0 - }, - typeParameters: { - validate: (0, o.assertNodeType)("TypeParameterDeclaration", "TSTypeParameterDeclaration", "Noop"), - optional: !0 - } - }; - n.functionTypeAnnotationCommon = c; - const p = Object.assign({}, l, { - declare: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - id: { - validate: (0, o.assertNodeType)("Identifier"), - optional: !0 - } - }); - n.functionDeclarationCommon = p; - (0, o.default)("FunctionDeclaration", { - builder: [ "id", "params", "body", "generator", "async" ], - visitor: [ "id", "params", "body", "returnType", "typeParameters" ], - fields: Object.assign({}, p, c, { - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }), - aliases: [ "Scopable", "Function", "BlockParent", "FunctionParent", "Statement", "Pureish", "Declaration" ], - validate: function() { - if (!t.env.BABEL_TYPES_8_BREAKING) return () => {}; - const e = (0, o.assertNodeType)("Identifier"); - return function(t, n, i) { - (0, r.default)("ExportDefaultDeclaration", t) || e(i, "id", i.id); - }; - }() - }); - (0, o.default)("FunctionExpression", { - inherits: "FunctionDeclaration", - aliases: [ "Scopable", "Function", "BlockParent", "FunctionParent", "Expression", "Pureish" ], - fields: Object.assign({}, l, c, { - id: { - validate: (0, o.assertNodeType)("Identifier"), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }) - }); - const u = { - typeAnnotation: { - validate: (0, o.assertNodeType)("TypeAnnotation", "TSTypeAnnotation", "Noop"), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))) - } - }; - n.patternLikeCommon = u; - (0, o.default)("Identifier", { - builder: [ "name" ], - visitor: [ "typeAnnotation", "decorators" ], - aliases: [ "Expression", "PatternLike", "LVal", "TSEntityName" ], - fields: Object.assign({}, u, { - name: { - validate: (0, o.chain)((0, o.assertValueType)("string"), Object.assign(function(e, n, r) { - if (t.env.BABEL_TYPES_8_BREAKING && !(0, i.default)(r, !1)) throw new TypeError(`"${r}" is not a valid identifier name`); - }, { - type: "string" - })) - }, - optional: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - } - }), - validate(e, n, i) { - if (!t.env.BABEL_TYPES_8_BREAKING) return; - const a = /\.(\w+)$/.exec(n); - if (!a) return; - const [, o] = a; - const l = { - computed: !1 - }; - if ("property" === o) { - if ((0, r.default)("MemberExpression", e, l)) return; - if ((0, r.default)("OptionalMemberExpression", e, l)) return; - } else if ("key" === o) { - if ((0, r.default)("Property", e, l)) return; - if ((0, r.default)("Method", e, l)) return; - } else if ("exported" === o) { - if ((0, r.default)("ExportSpecifier", e)) return; - } else if ("imported" === o) { - if ((0, r.default)("ImportSpecifier", e, { - imported: i - })) return; - } else if ("meta" === o && (0, r.default)("MetaProperty", e, { - meta: i - })) return; - if (((0, s.isKeyword)(i.name) || (0, s.isReservedWord)(i.name, !1)) && "this" !== i.name) throw new TypeError(`"${i.name}" is not a valid identifier`); - } - }); - (0, o.default)("IfStatement", { - visitor: [ "test", "consequent", "alternate" ], - aliases: [ "Statement", "Conditional" ], - fields: { - test: { - validate: (0, o.assertNodeType)("Expression") - }, - consequent: { - validate: (0, o.assertNodeType)("Statement") - }, - alternate: { - optional: !0, - validate: (0, o.assertNodeType)("Statement") - } - } - }); - (0, o.default)("LabeledStatement", { - visitor: [ "label", "body" ], - aliases: [ "Statement" ], - fields: { - label: { - validate: (0, o.assertNodeType)("Identifier") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - } - }); - (0, o.default)("StringLiteral", { - builder: [ "value" ], - fields: { - value: { - validate: (0, o.assertValueType)("string") - } - }, - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, o.default)("NumericLiteral", { - builder: [ "value" ], - deprecatedAlias: "NumberLiteral", - fields: { - value: { - validate: (0, o.assertValueType)("number") - } - }, - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, o.default)("NullLiteral", { - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, o.default)("BooleanLiteral", { - builder: [ "value" ], - fields: { - value: { - validate: (0, o.assertValueType)("boolean") - } - }, - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, o.default)("RegExpLiteral", { - builder: [ "pattern", "flags" ], - deprecatedAlias: "RegexLiteral", - aliases: [ "Expression", "Pureish", "Literal" ], - fields: { - pattern: { - validate: (0, o.assertValueType)("string") - }, - flags: { - validate: (0, o.chain)((0, o.assertValueType)("string"), Object.assign(function(e, n, r) { - if (!t.env.BABEL_TYPES_8_BREAKING) return; - const i = /[^gimsuy]/.exec(r); - if (i) throw new TypeError(`"${i[0]}" is not a valid RegExp flag`); - }, { - type: "string" - })), - default: "" - } - } - }); - (0, o.default)("LogicalExpression", { - builder: [ "operator", "left", "right" ], - visitor: [ "left", "right" ], - aliases: [ "Binary", "Expression" ], - fields: { - operator: { - validate: (0, o.assertOneOf)(...a.LOGICAL_OPERATORS) - }, - left: { - validate: (0, o.assertNodeType)("Expression") - }, - right: { - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("MemberExpression", { - builder: [ "object", "property", "computed", ...t.env.BABEL_TYPES_8_BREAKING ? [] : [ "optional" ] ], - visitor: [ "object", "property" ], - aliases: [ "Expression", "LVal" ], - fields: Object.assign({ - object: { - validate: (0, o.assertNodeType)("Expression") - }, - property: { - validate: function() { - const e = (0, o.assertNodeType)("Identifier", "PrivateName"); - const t = (0, o.assertNodeType)("Expression"); - const n = function(n, r, i) { - (n.computed ? t : e)(n, r, i); - }; - n.oneOfNodeTypes = [ "Expression", "Identifier", "PrivateName" ]; - return n; - }() - }, - computed: { - default: !1 - } - }, t.env.BABEL_TYPES_8_BREAKING ? {} : { - optional: { - validate: (0, o.assertOneOf)(!0, !1), - optional: !0 - } - }) - }); - (0, o.default)("NewExpression", { - inherits: "CallExpression" - }); - (0, o.default)("Program", { - visitor: [ "directives", "body" ], - builder: [ "body", "directives", "sourceType", "interpreter" ], - fields: { - sourceFile: { - validate: (0, o.assertValueType)("string") - }, - sourceType: { - validate: (0, o.assertOneOf)("script", "module"), - default: "script" - }, - interpreter: { - validate: (0, o.assertNodeType)("InterpreterDirective"), - default: null, - optional: !0 - }, - directives: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Directive"))), - default: [] - }, - body: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Statement"))) - } - }, - aliases: [ "Scopable", "BlockParent", "Block" ] - }); - (0, o.default)("ObjectExpression", { - visitor: [ "properties" ], - aliases: [ "Expression" ], - fields: { - properties: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ObjectMethod", "ObjectProperty", "SpreadElement"))) - } - } - }); - (0, o.default)("ObjectMethod", { - builder: [ "kind", "key", "params", "body", "computed", "generator", "async" ], - fields: Object.assign({}, l, c, { - kind: Object.assign({ - validate: (0, o.assertOneOf)("method", "get", "set") - }, t.env.BABEL_TYPES_8_BREAKING ? {} : { - default: "method" - }), - computed: { - default: !1 - }, - key: { - validate: function() { - const e = (0, o.assertNodeType)("Identifier", "StringLiteral", "NumericLiteral"); - const t = (0, o.assertNodeType)("Expression"); - const n = function(n, r, i) { - (n.computed ? t : e)(n, r, i); - }; - n.oneOfNodeTypes = [ "Expression", "Identifier", "StringLiteral", "NumericLiteral" ]; - return n; - }() - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }), - visitor: [ "key", "params", "body", "decorators", "returnType", "typeParameters" ], - aliases: [ "UserWhitespacable", "Function", "Scopable", "BlockParent", "FunctionParent", "Method", "ObjectMember" ] - }); - (0, o.default)("ObjectProperty", { - builder: [ "key", "value", "computed", "shorthand", ...t.env.BABEL_TYPES_8_BREAKING ? [] : [ "decorators" ] ], - fields: { - computed: { - default: !1 - }, - key: { - validate: function() { - const e = (0, o.assertNodeType)("Identifier", "StringLiteral", "NumericLiteral"); - const t = (0, o.assertNodeType)("Expression"); - const n = function(n, r, i) { - (n.computed ? t : e)(n, r, i); - }; - n.oneOfNodeTypes = [ "Expression", "Identifier", "StringLiteral", "NumericLiteral" ]; - return n; - }() - }, - value: { - validate: (0, o.assertNodeType)("Expression", "PatternLike") - }, - shorthand: { - validate: (0, o.chain)((0, o.assertValueType)("boolean"), Object.assign(function(e, n, r) { - if (t.env.BABEL_TYPES_8_BREAKING && r && e.computed) throw new TypeError("Property shorthand of ObjectProperty cannot be true if computed is true"); - }, { - type: "boolean" - }), function(e, n, i) { - if (t.env.BABEL_TYPES_8_BREAKING && i && !(0, r.default)("Identifier", e.key)) throw new TypeError("Property shorthand of ObjectProperty cannot be true if key is not an Identifier"); - }), - default: !1 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - } - }, - visitor: [ "key", "value", "decorators" ], - aliases: [ "UserWhitespacable", "Property", "ObjectMember" ], - validate: function() { - const e = (0, o.assertNodeType)("Identifier", "Pattern"); - const n = (0, o.assertNodeType)("Expression"); - return function(i, s, a) { - if (!t.env.BABEL_TYPES_8_BREAKING) return; - ((0, r.default)("ObjectPattern", i) ? e : n)(a, "value", a.value); - }; - }() - }); - (0, o.default)("RestElement", { - visitor: [ "argument", "typeAnnotation" ], - builder: [ "argument" ], - aliases: [ "LVal", "PatternLike" ], - deprecatedAlias: "RestProperty", - fields: Object.assign({}, u, { - argument: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.assertNodeType)("Identifier", "ArrayPattern", "ObjectPattern", "MemberExpression") : (0, - o.assertNodeType)("LVal") - }, - optional: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - } - }), - validate(e, n) { - if (!t.env.BABEL_TYPES_8_BREAKING) return; - const r = /(\w+)\[(\d+)\]/.exec(n); - if (!r) throw new Error("Internal Babel error: malformed key."); - const [, i, s] = r; - if (e[i].length > s + 1) throw new TypeError(`RestElement must be last element of ${i}`); - } - }); - (0, o.default)("ReturnStatement", { - visitor: [ "argument" ], - aliases: [ "Statement", "Terminatorless", "CompletionStatement" ], - fields: { - argument: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - } - } - }); - (0, o.default)("SequenceExpression", { - visitor: [ "expressions" ], - fields: { - expressions: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Expression"))) - } - }, - aliases: [ "Expression" ] - }); - (0, o.default)("ParenthesizedExpression", { - visitor: [ "expression" ], - aliases: [ "Expression", "ExpressionWrapper" ], - fields: { - expression: { - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("SwitchCase", { - visitor: [ "test", "consequent" ], - fields: { - test: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - }, - consequent: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Statement"))) - } - } - }); - (0, o.default)("SwitchStatement", { - visitor: [ "discriminant", "cases" ], - aliases: [ "Statement", "BlockParent", "Scopable" ], - fields: { - discriminant: { - validate: (0, o.assertNodeType)("Expression") - }, - cases: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("SwitchCase"))) - } - } - }); - (0, o.default)("ThisExpression", { - aliases: [ "Expression" ] - }); - (0, o.default)("ThrowStatement", { - visitor: [ "argument" ], - aliases: [ "Statement", "Terminatorless", "CompletionStatement" ], - fields: { - argument: { - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("TryStatement", { - visitor: [ "block", "handler", "finalizer" ], - aliases: [ "Statement" ], - fields: { - block: { - validate: (0, o.chain)((0, o.assertNodeType)("BlockStatement"), Object.assign(function(e) { - if (t.env.BABEL_TYPES_8_BREAKING && !e.handler && !e.finalizer) throw new TypeError("TryStatement expects either a handler or finalizer, or both"); - }, { - oneOfNodeTypes: [ "BlockStatement" ] - })) - }, - handler: { - optional: !0, - validate: (0, o.assertNodeType)("CatchClause") - }, - finalizer: { - optional: !0, - validate: (0, o.assertNodeType)("BlockStatement") - } - } - }); - (0, o.default)("UnaryExpression", { - builder: [ "operator", "argument", "prefix" ], - fields: { - prefix: { - default: !0 - }, - argument: { - validate: (0, o.assertNodeType)("Expression") - }, - operator: { - validate: (0, o.assertOneOf)(...a.UNARY_OPERATORS) - } - }, - visitor: [ "argument" ], - aliases: [ "UnaryLike", "Expression" ] - }); - (0, o.default)("UpdateExpression", { - builder: [ "operator", "argument", "prefix" ], - fields: { - prefix: { - default: !1 - }, - argument: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.assertNodeType)("Identifier", "MemberExpression") : (0, - o.assertNodeType)("Expression") - }, - operator: { - validate: (0, o.assertOneOf)(...a.UPDATE_OPERATORS) - } - }, - visitor: [ "argument" ], - aliases: [ "Expression" ] - }); - (0, o.default)("VariableDeclaration", { - builder: [ "kind", "declarations" ], - visitor: [ "declarations" ], - aliases: [ "Statement", "Declaration" ], - fields: { - declare: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - kind: { - validate: (0, o.assertOneOf)("var", "let", "const") - }, - declarations: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("VariableDeclarator"))) - } - }, - validate(e, n, i) { - if (t.env.BABEL_TYPES_8_BREAKING && (0, r.default)("ForXStatement", e, { - left: i - }) && 1 !== i.declarations.length) throw new TypeError(`Exactly one VariableDeclarator is required in the VariableDeclaration of a ${e.type}`); - } - }); - (0, o.default)("VariableDeclarator", { - visitor: [ "id", "init" ], - fields: { - id: { - validate: function() { - if (!t.env.BABEL_TYPES_8_BREAKING) return (0, o.assertNodeType)("LVal"); - const e = (0, o.assertNodeType)("Identifier", "ArrayPattern", "ObjectPattern"); - const n = (0, o.assertNodeType)("Identifier"); - return function(t, r, i) { - (t.init ? e : n)(t, r, i); - }; - }() - }, - definite: { - optional: !0, - validate: (0, o.assertValueType)("boolean") - }, - init: { - optional: !0, - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("WhileStatement", { - visitor: [ "test", "body" ], - aliases: [ "Statement", "BlockParent", "Loop", "While", "Scopable" ], - fields: { - test: { - validate: (0, o.assertNodeType)("Expression") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - } - }); - (0, o.default)("WithStatement", { - visitor: [ "object", "body" ], - aliases: [ "Statement" ], - fields: { - object: { - validate: (0, o.assertNodeType)("Expression") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - } - } - }); - (0, o.default)("AssignmentPattern", { - visitor: [ "left", "right", "decorators" ], - builder: [ "left", "right" ], - aliases: [ "Pattern", "PatternLike", "LVal" ], - fields: Object.assign({}, u, { - left: { - validate: (0, o.assertNodeType)("Identifier", "ObjectPattern", "ArrayPattern", "MemberExpression") - }, - right: { - validate: (0, o.assertNodeType)("Expression") - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - } - }) - }); - (0, o.default)("ArrayPattern", { - visitor: [ "elements", "typeAnnotation" ], - builder: [ "elements" ], - aliases: [ "Pattern", "PatternLike", "LVal" ], - fields: Object.assign({}, u, { - elements: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeOrValueType)("null", "PatternLike"))) - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - optional: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - } - }) - }); - (0, o.default)("ArrowFunctionExpression", { - builder: [ "params", "body", "async" ], - visitor: [ "params", "body", "returnType", "typeParameters" ], - aliases: [ "Scopable", "Function", "BlockParent", "FunctionParent", "Expression", "Pureish" ], - fields: Object.assign({}, l, c, { - expression: { - validate: (0, o.assertValueType)("boolean") - }, - body: { - validate: (0, o.assertNodeType)("BlockStatement", "Expression") - } - }) - }); - (0, o.default)("ClassBody", { - visitor: [ "body" ], - fields: { - body: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ClassMethod", "ClassPrivateMethod", "ClassProperty", "ClassPrivateProperty", "TSDeclareMethod", "TSIndexSignature"))) - } - } - }); - (0, o.default)("ClassExpression", { - builder: [ "id", "superClass", "body", "decorators" ], - visitor: [ "id", "body", "superClass", "mixins", "typeParameters", "superTypeParameters", "implements", "decorators" ], - aliases: [ "Scopable", "Class", "Expression" ], - fields: { - id: { - validate: (0, o.assertNodeType)("Identifier"), - optional: !0 - }, - typeParameters: { - validate: (0, o.assertNodeType)("TypeParameterDeclaration", "TSTypeParameterDeclaration", "Noop"), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("ClassBody") - }, - superClass: { - optional: !0, - validate: (0, o.assertNodeType)("Expression") - }, - superTypeParameters: { - validate: (0, o.assertNodeType)("TypeParameterInstantiation", "TSTypeParameterInstantiation"), - optional: !0 - }, - implements: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("TSExpressionWithTypeArguments", "ClassImplements"))), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - mixins: { - validate: (0, o.assertNodeType)("InterfaceExtends"), - optional: !0 - } - } - }); - (0, o.default)("ClassDeclaration", { - inherits: "ClassExpression", - aliases: [ "Scopable", "Class", "Statement", "Declaration" ], - fields: { - id: { - validate: (0, o.assertNodeType)("Identifier") - }, - typeParameters: { - validate: (0, o.assertNodeType)("TypeParameterDeclaration", "TSTypeParameterDeclaration", "Noop"), - optional: !0 - }, - body: { - validate: (0, o.assertNodeType)("ClassBody") - }, - superClass: { - optional: !0, - validate: (0, o.assertNodeType)("Expression") - }, - superTypeParameters: { - validate: (0, o.assertNodeType)("TypeParameterInstantiation", "TSTypeParameterInstantiation"), - optional: !0 - }, - implements: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("TSExpressionWithTypeArguments", "ClassImplements"))), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - mixins: { - validate: (0, o.assertNodeType)("InterfaceExtends"), - optional: !0 - }, - declare: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - abstract: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - } - }, - validate: function() { - const e = (0, o.assertNodeType)("Identifier"); - return function(n, i, s) { - t.env.BABEL_TYPES_8_BREAKING && ((0, r.default)("ExportDefaultDeclaration", n) || e(s, "id", s.id)); - }; - }() - }); - (0, o.default)("ExportAllDeclaration", { - visitor: [ "source" ], - aliases: [ "Statement", "Declaration", "ModuleDeclaration", "ExportDeclaration" ], - fields: { - source: { - validate: (0, o.assertNodeType)("StringLiteral") - }, - exportKind: (0, o.validateOptional)((0, o.assertOneOf)("type", "value")), - assertions: { - optional: !0, - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ImportAttribute"))) - } - } - }); - (0, o.default)("ExportDefaultDeclaration", { - visitor: [ "declaration" ], - aliases: [ "Statement", "Declaration", "ModuleDeclaration", "ExportDeclaration" ], - fields: { - declaration: { - validate: (0, o.assertNodeType)("FunctionDeclaration", "TSDeclareFunction", "ClassDeclaration", "Expression") - }, - exportKind: (0, o.validateOptional)((0, o.assertOneOf)("value")) - } - }); - (0, o.default)("ExportNamedDeclaration", { - visitor: [ "declaration", "specifiers", "source" ], - aliases: [ "Statement", "Declaration", "ModuleDeclaration", "ExportDeclaration" ], - fields: { - declaration: { - optional: !0, - validate: (0, o.chain)((0, o.assertNodeType)("Declaration"), Object.assign(function(e, n, r) { - if (t.env.BABEL_TYPES_8_BREAKING && r && e.specifiers.length) throw new TypeError("Only declaration or specifiers is allowed on ExportNamedDeclaration"); - }, { - oneOfNodeTypes: [ "Declaration" ] - }), function(e, n, r) { - if (t.env.BABEL_TYPES_8_BREAKING && r && e.source) throw new TypeError("Cannot export a declaration from a source"); - }) - }, - assertions: { - optional: !0, - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ImportAttribute"))) - }, - specifiers: { - default: [], - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)(function() { - const e = (0, o.assertNodeType)("ExportSpecifier", "ExportDefaultSpecifier", "ExportNamespaceSpecifier"); - const n = (0, o.assertNodeType)("ExportSpecifier"); - return t.env.BABEL_TYPES_8_BREAKING ? function(t, r, i) { - (t.source ? e : n)(t, r, i); - } : e; - }())) - }, - source: { - validate: (0, o.assertNodeType)("StringLiteral"), - optional: !0 - }, - exportKind: (0, o.validateOptional)((0, o.assertOneOf)("type", "value")) - } - }); - (0, o.default)("ExportSpecifier", { - visitor: [ "local", "exported" ], - aliases: [ "ModuleSpecifier" ], - fields: { - local: { - validate: (0, o.assertNodeType)("Identifier") - }, - exported: { - validate: (0, o.assertNodeType)("Identifier", "StringLiteral") - } - } - }); - (0, o.default)("ForOfStatement", { - visitor: [ "left", "right", "body" ], - builder: [ "left", "right", "body", "await" ], - aliases: [ "Scopable", "Statement", "For", "BlockParent", "Loop", "ForXStatement" ], - fields: { - left: { - validate: function() { - if (!t.env.BABEL_TYPES_8_BREAKING) return (0, o.assertNodeType)("VariableDeclaration", "LVal"); - const e = (0, o.assertNodeType)("VariableDeclaration"); - const n = (0, o.assertNodeType)("Identifier", "MemberExpression", "ArrayPattern", "ObjectPattern"); - return function(t, i, s) { - (0, r.default)("VariableDeclaration", s) ? e(t, i, s) : n(t, i, s); - }; - }() - }, - right: { - validate: (0, o.assertNodeType)("Expression") - }, - body: { - validate: (0, o.assertNodeType)("Statement") - }, - await: { - default: !1 - } - } - }); - (0, o.default)("ImportDeclaration", { - visitor: [ "specifiers", "source" ], - aliases: [ "Statement", "Declaration", "ModuleDeclaration" ], - fields: { - assertions: { - optional: !0, - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ImportAttribute"))) - }, - specifiers: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("ImportSpecifier", "ImportDefaultSpecifier", "ImportNamespaceSpecifier"))) - }, - source: { - validate: (0, o.assertNodeType)("StringLiteral") - }, - importKind: { - validate: (0, o.assertOneOf)("type", "typeof", "value"), - optional: !0 - } - } - }); - (0, o.default)("ImportDefaultSpecifier", { - visitor: [ "local" ], - aliases: [ "ModuleSpecifier" ], - fields: { - local: { - validate: (0, o.assertNodeType)("Identifier") - } - } - }); - (0, o.default)("ImportNamespaceSpecifier", { - visitor: [ "local" ], - aliases: [ "ModuleSpecifier" ], - fields: { - local: { - validate: (0, o.assertNodeType)("Identifier") - } - } - }); - (0, o.default)("ImportSpecifier", { - visitor: [ "local", "imported" ], - aliases: [ "ModuleSpecifier" ], - fields: { - local: { - validate: (0, o.assertNodeType)("Identifier") - }, - imported: { - validate: (0, o.assertNodeType)("Identifier", "StringLiteral") - }, - importKind: { - validate: (0, o.assertOneOf)("type", "typeof"), - optional: !0 - } - } - }); - (0, o.default)("MetaProperty", { - visitor: [ "meta", "property" ], - aliases: [ "Expression" ], - fields: { - meta: { - validate: (0, o.chain)((0, o.assertNodeType)("Identifier"), Object.assign(function(e, n, i) { - if (!t.env.BABEL_TYPES_8_BREAKING) return; - let s; - switch (i.name) { - case "function": - s = "sent"; - break; - - case "new": - s = "target"; - break; - - case "import": - s = "meta"; - } - if (!(0, r.default)("Identifier", e.property, { - name: s - })) throw new TypeError("Unrecognised MetaProperty"); - }, { - oneOfNodeTypes: [ "Identifier" ] - })) - }, - property: { - validate: (0, o.assertNodeType)("Identifier") - } - } - }); - const d = { - abstract: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - accessibility: { - validate: (0, o.assertOneOf)("public", "private", "protected"), - optional: !0 - }, - static: { - default: !1 - }, - override: { - default: !1 - }, - computed: { - default: !1 - }, - optional: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - key: { - validate: (0, o.chain)(function() { - const e = (0, o.assertNodeType)("Identifier", "StringLiteral", "NumericLiteral"); - const t = (0, o.assertNodeType)("Expression"); - return function(n, r, i) { - (n.computed ? t : e)(n, r, i); - }; - }(), (0, o.assertNodeType)("Identifier", "StringLiteral", "NumericLiteral", "Expression")) - } - }; - n.classMethodOrPropertyCommon = d; - const h = Object.assign({}, l, d, { - params: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Identifier", "Pattern", "RestElement", "TSParameterProperty"))) - }, - kind: { - validate: (0, o.assertOneOf)("get", "set", "method", "constructor"), - default: "method" - }, - access: { - validate: (0, o.chain)((0, o.assertValueType)("string"), (0, o.assertOneOf)("public", "private", "protected")), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - } - }); - n.classMethodOrDeclareMethodCommon = h; - (0, o.default)("ClassMethod", { - aliases: [ "Function", "Scopable", "BlockParent", "FunctionParent", "Method" ], - builder: [ "kind", "key", "params", "body", "computed", "static", "generator", "async" ], - visitor: [ "key", "params", "body", "decorators", "returnType", "typeParameters" ], - fields: Object.assign({}, h, c, { - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }) - }); - (0, o.default)("ObjectPattern", { - visitor: [ "properties", "typeAnnotation", "decorators" ], - builder: [ "properties" ], - aliases: [ "Pattern", "PatternLike", "LVal" ], - fields: Object.assign({}, u, { - properties: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("RestElement", "ObjectProperty"))) - } - }) - }); - (0, o.default)("SpreadElement", { - visitor: [ "argument" ], - aliases: [ "UnaryLike" ], - deprecatedAlias: "SpreadProperty", - fields: { - argument: { - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("Super", { - aliases: [ "Expression" ] - }); - (0, o.default)("TaggedTemplateExpression", { - visitor: [ "tag", "quasi", "typeParameters" ], - builder: [ "tag", "quasi" ], - aliases: [ "Expression" ], - fields: { - tag: { - validate: (0, o.assertNodeType)("Expression") - }, - quasi: { - validate: (0, o.assertNodeType)("TemplateLiteral") - }, - typeParameters: { - validate: (0, o.assertNodeType)("TypeParameterInstantiation", "TSTypeParameterInstantiation"), - optional: !0 - } - } - }); - (0, o.default)("TemplateElement", { - builder: [ "value", "tail" ], - fields: { - value: { - validate: (0, o.assertShape)({ - raw: { - validate: (0, o.assertValueType)("string") - }, - cooked: { - validate: (0, o.assertValueType)("string"), - optional: !0 - } - }) - }, - tail: { - default: !1 - } - } - }); - (0, o.default)("TemplateLiteral", { - visitor: [ "quasis", "expressions" ], - aliases: [ "Expression", "Literal" ], - fields: { - quasis: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("TemplateElement"))) - }, - expressions: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Expression", "TSType")), function(e, t, n) { - if (e.quasis.length !== n.length + 1) throw new TypeError(`Number of ${e.type} quasis should be exactly one more than the number of expressions.\nExpected ${n.length + 1} quasis but got ${e.quasis.length}`); - }) - } - } - }); - (0, o.default)("YieldExpression", { - builder: [ "argument", "delegate" ], - visitor: [ "argument" ], - aliases: [ "Expression", "Terminatorless" ], - fields: { - delegate: { - validate: (0, o.chain)((0, o.assertValueType)("boolean"), Object.assign(function(e, n, r) { - if (t.env.BABEL_TYPES_8_BREAKING && r && !e.argument) throw new TypeError("Property delegate of YieldExpression cannot be true if there is no argument"); - }, { - type: "boolean" - })), - default: !1 - }, - argument: { - optional: !0, - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("AwaitExpression", { - builder: [ "argument" ], - visitor: [ "argument" ], - aliases: [ "Expression", "Terminatorless" ], - fields: { - argument: { - validate: (0, o.assertNodeType)("Expression") - } - } - }); - (0, o.default)("Import", { - aliases: [ "Expression" ] - }); - (0, o.default)("BigIntLiteral", { - builder: [ "value" ], - fields: { - value: { - validate: (0, o.assertValueType)("string") - } - }, - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, o.default)("ExportNamespaceSpecifier", { - visitor: [ "exported" ], - aliases: [ "ModuleSpecifier" ], - fields: { - exported: { - validate: (0, o.assertNodeType)("Identifier") - } - } - }); - (0, o.default)("OptionalMemberExpression", { - builder: [ "object", "property", "computed", "optional" ], - visitor: [ "object", "property" ], - aliases: [ "Expression" ], - fields: { - object: { - validate: (0, o.assertNodeType)("Expression") - }, - property: { - validate: function() { - const e = (0, o.assertNodeType)("Identifier"); - const t = (0, o.assertNodeType)("Expression"); - const n = function(n, r, i) { - (n.computed ? t : e)(n, r, i); - }; - n.oneOfNodeTypes = [ "Expression", "Identifier" ]; - return n; - }() - }, - computed: { - default: !1 - }, - optional: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.chain)((0, o.assertValueType)("boolean"), (0, - o.assertOptionalChainStart)()) : (0, o.assertValueType)("boolean") - } - } - }); - (0, o.default)("OptionalCallExpression", { - visitor: [ "callee", "arguments", "typeParameters", "typeArguments" ], - builder: [ "callee", "arguments", "optional" ], - aliases: [ "Expression" ], - fields: { - callee: { - validate: (0, o.assertNodeType)("Expression") - }, - arguments: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Expression", "SpreadElement", "JSXNamespacedName", "ArgumentPlaceholder"))) - }, - optional: { - validate: t.env.BABEL_TYPES_8_BREAKING ? (0, o.chain)((0, o.assertValueType)("boolean"), (0, - o.assertOptionalChainStart)()) : (0, o.assertValueType)("boolean") - }, - typeArguments: { - validate: (0, o.assertNodeType)("TypeParameterInstantiation"), - optional: !0 - }, - typeParameters: { - validate: (0, o.assertNodeType)("TSTypeParameterInstantiation"), - optional: !0 - } - } - }); - (0, o.default)("ClassProperty", { - visitor: [ "key", "value", "typeAnnotation", "decorators" ], - builder: [ "key", "value", "typeAnnotation", "decorators", "computed", "static" ], - aliases: [ "Property" ], - fields: Object.assign({}, d, { - value: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - }, - definite: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - typeAnnotation: { - validate: (0, o.assertNodeType)("TypeAnnotation", "TSTypeAnnotation", "Noop"), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - readonly: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - declare: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - variance: { - validate: (0, o.assertNodeType)("Variance"), - optional: !0 - } - }) - }); - (0, o.default)("ClassPrivateProperty", { - visitor: [ "key", "value", "decorators", "typeAnnotation" ], - builder: [ "key", "value", "decorators", "static" ], - aliases: [ "Property", "Private" ], - fields: { - key: { - validate: (0, o.assertNodeType)("PrivateName") - }, - value: { - validate: (0, o.assertNodeType)("Expression"), - optional: !0 - }, - typeAnnotation: { - validate: (0, o.assertNodeType)("TypeAnnotation", "TSTypeAnnotation", "Noop"), - optional: !0 - }, - decorators: { - validate: (0, o.chain)((0, o.assertValueType)("array"), (0, o.assertEach)((0, o.assertNodeType)("Decorator"))), - optional: !0 - }, - readonly: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - definite: { - validate: (0, o.assertValueType)("boolean"), - optional: !0 - }, - variance: { - validate: (0, o.assertNodeType)("Variance"), - optional: !0 - } - } - }); - (0, o.default)("ClassPrivateMethod", { - builder: [ "kind", "key", "params", "body", "static" ], - visitor: [ "key", "params", "body", "decorators", "returnType", "typeParameters" ], - aliases: [ "Function", "Scopable", "BlockParent", "FunctionParent", "Method", "Private" ], - fields: Object.assign({}, h, c, { - key: { - validate: (0, o.assertNodeType)("PrivateName") - }, - body: { - validate: (0, o.assertNodeType)("BlockStatement") - } - }) - }); - (0, o.default)("PrivateName", { - visitor: [ "id" ], - aliases: [ "Private" ], - fields: { - id: { - validate: (0, o.assertNodeType)("Identifier") - } - } - }); - }).call(this); - }).call(this, e("_process")); - }, { - "../constants": 87, - "../validators/is": 125, - "../validators/isValidIdentifier": 138, - "./utils": 107, - "@babel/helper-validator-identifier": 27, - _process: 160 - } ], - 100: [ function(e, t, n) { - (function(t) { - (function() { - "use strict"; - var n = e("./utils"); - (0, n.default)("ArgumentPlaceholder", {}); - (0, n.default)("BindExpression", { - visitor: [ "object", "callee" ], - aliases: [ "Expression" ], - fields: t.env.BABEL_TYPES_8_BREAKING ? { - object: { - validate: (0, n.assertNodeType)("Expression") - }, - callee: { - validate: (0, n.assertNodeType)("Expression") - } - } : { - object: { - validate: Object.assign(() => {}, { - oneOfNodeTypes: [ "Expression" ] - }) - }, - callee: { - validate: Object.assign(() => {}, { - oneOfNodeTypes: [ "Expression" ] - }) - } - } - }); - (0, n.default)("ImportAttribute", { - visitor: [ "key", "value" ], - fields: { - key: { - validate: (0, n.assertNodeType)("Identifier", "StringLiteral") - }, - value: { - validate: (0, n.assertNodeType)("StringLiteral") - } - } - }); - (0, n.default)("Decorator", { - visitor: [ "expression" ], - fields: { - expression: { - validate: (0, n.assertNodeType)("Expression") - } - } - }); - (0, n.default)("DoExpression", { - visitor: [ "body" ], - builder: [ "body", "async" ], - aliases: [ "Expression" ], - fields: { - body: { - validate: (0, n.assertNodeType)("BlockStatement") - }, - async: { - validate: (0, n.assertValueType)("boolean"), - default: !1 - } - } - }); - (0, n.default)("ExportDefaultSpecifier", { - visitor: [ "exported" ], - aliases: [ "ModuleSpecifier" ], - fields: { - exported: { - validate: (0, n.assertNodeType)("Identifier") - } - } - }); - (0, n.default)("RecordExpression", { - visitor: [ "properties" ], - aliases: [ "Expression" ], - fields: { - properties: { - validate: (0, n.chain)((0, n.assertValueType)("array"), (0, n.assertEach)((0, n.assertNodeType)("ObjectProperty", "SpreadElement"))) - } - } - }); - (0, n.default)("TupleExpression", { - fields: { - elements: { - validate: (0, n.chain)((0, n.assertValueType)("array"), (0, n.assertEach)((0, n.assertNodeType)("Expression", "SpreadElement"))), - default: [] - } - }, - visitor: [ "elements" ], - aliases: [ "Expression" ] - }); - (0, n.default)("DecimalLiteral", { - builder: [ "value" ], - fields: { - value: { - validate: (0, n.assertValueType)("string") - } - }, - aliases: [ "Expression", "Pureish", "Literal", "Immutable" ] - }); - (0, n.default)("StaticBlock", { - visitor: [ "body" ], - fields: { - body: { - validate: (0, n.chain)((0, n.assertValueType)("array"), (0, n.assertEach)((0, n.assertNodeType)("Statement"))) - } - }, - aliases: [ "Scopable", "BlockParent" ] - }); - (0, n.default)("ModuleExpression", { - visitor: [ "body" ], - fields: { - body: { - validate: (0, n.assertNodeType)("Program") - } - }, - aliases: [ "Expression" ] - }); - (0, n.default)("TopicReference", { - aliases: [ "Expression" ] - }); - (0, n.default)("PipelineTopicExpression", { - builder: [ "expression" ], - visitor: [ "expression" ], - fields: { - expression: { - validate: (0, n.assertNodeType)("Expression") - } - }, - aliases: [ "Expression" ] - }); - (0, n.default)("PipelineBareFunction", { - builder: [ "callee" ], - visitor: [ "callee" ], - fields: { - callee: { - validate: (0, n.assertNodeType)("Expression") - } - }, - aliases: [ "Expression" ] - }); - (0, n.default)("PipelinePrimaryTopicReference", { - aliases: [ "Expression" ] - }); - }).call(this); - }).call(this, e("_process")); - }, { - "./utils": 107, - _process: 160 - } ], - 101: [ function(e, t, n) { - "use strict"; - var r = e("./utils"); - const i = (e, t = "TypeParameterDeclaration") => { - (0, r.default)(e, { - builder: [ "id", "typeParameters", "extends", "body" ], - visitor: [ "id", "typeParameters", "extends", "mixins", "implements", "body" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)(t), - extends: (0, r.validateOptional)((0, r.arrayOfType)("InterfaceExtends")), - mixins: (0, r.validateOptional)((0, r.arrayOfType)("InterfaceExtends")), - implements: (0, r.validateOptional)((0, r.arrayOfType)("ClassImplements")), - body: (0, r.validateType)("ObjectTypeAnnotation") - } - }); - }; - (0, r.default)("AnyTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("ArrayTypeAnnotation", { - visitor: [ "elementType" ], - aliases: [ "Flow", "FlowType" ], - fields: { - elementType: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("BooleanTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("BooleanLiteralTypeAnnotation", { - builder: [ "value" ], - aliases: [ "Flow", "FlowType" ], - fields: { - value: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("NullLiteralTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("ClassImplements", { - visitor: [ "id", "typeParameters" ], - aliases: [ "Flow" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TypeParameterInstantiation") - } - }); - i("DeclareClass"); - (0, r.default)("DeclareFunction", { - visitor: [ "id" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - predicate: (0, r.validateOptionalType)("DeclaredPredicate") - } - }); - i("DeclareInterface"); - (0, r.default)("DeclareModule", { - builder: [ "id", "body", "kind" ], - visitor: [ "id", "body" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)([ "Identifier", "StringLiteral" ]), - body: (0, r.validateType)("BlockStatement"), - kind: (0, r.validateOptional)((0, r.assertOneOf)("CommonJS", "ES")) - } - }); - (0, r.default)("DeclareModuleExports", { - visitor: [ "typeAnnotation" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - typeAnnotation: (0, r.validateType)("TypeAnnotation") - } - }); - (0, r.default)("DeclareTypeAlias", { - visitor: [ "id", "typeParameters", "right" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TypeParameterDeclaration"), - right: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("DeclareOpaqueType", { - visitor: [ "id", "typeParameters", "supertype" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TypeParameterDeclaration"), - supertype: (0, r.validateOptionalType)("FlowType"), - impltype: (0, r.validateOptionalType)("FlowType") - } - }); - (0, r.default)("DeclareVariable", { - visitor: [ "id" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier") - } - }); - (0, r.default)("DeclareExportDeclaration", { - visitor: [ "declaration", "specifiers", "source" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - declaration: (0, r.validateOptionalType)("Flow"), - specifiers: (0, r.validateOptional)((0, r.arrayOfType)([ "ExportSpecifier", "ExportNamespaceSpecifier" ])), - source: (0, r.validateOptionalType)("StringLiteral"), - default: (0, r.validateOptional)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("DeclareExportAllDeclaration", { - visitor: [ "source" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - source: (0, r.validateType)("StringLiteral"), - exportKind: (0, r.validateOptional)((0, r.assertOneOf)("type", "value")) - } - }); - (0, r.default)("DeclaredPredicate", { - visitor: [ "value" ], - aliases: [ "Flow", "FlowPredicate" ], - fields: { - value: (0, r.validateType)("Flow") - } - }); - (0, r.default)("ExistsTypeAnnotation", { - aliases: [ "Flow", "FlowType" ] - }); - (0, r.default)("FunctionTypeAnnotation", { - visitor: [ "typeParameters", "params", "rest", "returnType" ], - aliases: [ "Flow", "FlowType" ], - fields: { - typeParameters: (0, r.validateOptionalType)("TypeParameterDeclaration"), - params: (0, r.validate)((0, r.arrayOfType)("FunctionTypeParam")), - rest: (0, r.validateOptionalType)("FunctionTypeParam"), - this: (0, r.validateOptionalType)("FunctionTypeParam"), - returnType: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("FunctionTypeParam", { - visitor: [ "name", "typeAnnotation" ], - aliases: [ "Flow" ], - fields: { - name: (0, r.validateOptionalType)("Identifier"), - typeAnnotation: (0, r.validateType)("FlowType"), - optional: (0, r.validateOptional)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("GenericTypeAnnotation", { - visitor: [ "id", "typeParameters" ], - aliases: [ "Flow", "FlowType" ], - fields: { - id: (0, r.validateType)([ "Identifier", "QualifiedTypeIdentifier" ]), - typeParameters: (0, r.validateOptionalType)("TypeParameterInstantiation") - } - }); - (0, r.default)("InferredPredicate", { - aliases: [ "Flow", "FlowPredicate" ] - }); - (0, r.default)("InterfaceExtends", { - visitor: [ "id", "typeParameters" ], - aliases: [ "Flow" ], - fields: { - id: (0, r.validateType)([ "Identifier", "QualifiedTypeIdentifier" ]), - typeParameters: (0, r.validateOptionalType)("TypeParameterInstantiation") - } - }); - i("InterfaceDeclaration"); - (0, r.default)("InterfaceTypeAnnotation", { - visitor: [ "extends", "body" ], - aliases: [ "Flow", "FlowType" ], - fields: { - extends: (0, r.validateOptional)((0, r.arrayOfType)("InterfaceExtends")), - body: (0, r.validateType)("ObjectTypeAnnotation") - } - }); - (0, r.default)("IntersectionTypeAnnotation", { - visitor: [ "types" ], - aliases: [ "Flow", "FlowType" ], - fields: { - types: (0, r.validate)((0, r.arrayOfType)("FlowType")) - } - }); - (0, r.default)("MixedTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("EmptyTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("NullableTypeAnnotation", { - visitor: [ "typeAnnotation" ], - aliases: [ "Flow", "FlowType" ], - fields: { - typeAnnotation: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("NumberLiteralTypeAnnotation", { - builder: [ "value" ], - aliases: [ "Flow", "FlowType" ], - fields: { - value: (0, r.validate)((0, r.assertValueType)("number")) - } - }); - (0, r.default)("NumberTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("ObjectTypeAnnotation", { - visitor: [ "properties", "indexers", "callProperties", "internalSlots" ], - aliases: [ "Flow", "FlowType" ], - builder: [ "properties", "indexers", "callProperties", "internalSlots", "exact" ], - fields: { - properties: (0, r.validate)((0, r.arrayOfType)([ "ObjectTypeProperty", "ObjectTypeSpreadProperty" ])), - indexers: (0, r.validateOptional)((0, r.arrayOfType)("ObjectTypeIndexer")), - callProperties: (0, r.validateOptional)((0, r.arrayOfType)("ObjectTypeCallProperty")), - internalSlots: (0, r.validateOptional)((0, r.arrayOfType)("ObjectTypeInternalSlot")), - exact: { - validate: (0, r.assertValueType)("boolean"), - default: !1 - }, - inexact: (0, r.validateOptional)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("ObjectTypeInternalSlot", { - visitor: [ "id", "value", "optional", "static", "method" ], - aliases: [ "Flow", "UserWhitespacable" ], - fields: { - id: (0, r.validateType)("Identifier"), - value: (0, r.validateType)("FlowType"), - optional: (0, r.validate)((0, r.assertValueType)("boolean")), - static: (0, r.validate)((0, r.assertValueType)("boolean")), - method: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("ObjectTypeCallProperty", { - visitor: [ "value" ], - aliases: [ "Flow", "UserWhitespacable" ], - fields: { - value: (0, r.validateType)("FlowType"), - static: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("ObjectTypeIndexer", { - visitor: [ "id", "key", "value", "variance" ], - aliases: [ "Flow", "UserWhitespacable" ], - fields: { - id: (0, r.validateOptionalType)("Identifier"), - key: (0, r.validateType)("FlowType"), - value: (0, r.validateType)("FlowType"), - static: (0, r.validate)((0, r.assertValueType)("boolean")), - variance: (0, r.validateOptionalType)("Variance") - } - }); - (0, r.default)("ObjectTypeProperty", { - visitor: [ "key", "value", "variance" ], - aliases: [ "Flow", "UserWhitespacable" ], - fields: { - key: (0, r.validateType)([ "Identifier", "StringLiteral" ]), - value: (0, r.validateType)("FlowType"), - kind: (0, r.validate)((0, r.assertOneOf)("init", "get", "set")), - static: (0, r.validate)((0, r.assertValueType)("boolean")), - proto: (0, r.validate)((0, r.assertValueType)("boolean")), - optional: (0, r.validate)((0, r.assertValueType)("boolean")), - variance: (0, r.validateOptionalType)("Variance"), - method: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("ObjectTypeSpreadProperty", { - visitor: [ "argument" ], - aliases: [ "Flow", "UserWhitespacable" ], - fields: { - argument: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("OpaqueType", { - visitor: [ "id", "typeParameters", "supertype", "impltype" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TypeParameterDeclaration"), - supertype: (0, r.validateOptionalType)("FlowType"), - impltype: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("QualifiedTypeIdentifier", { - visitor: [ "id", "qualification" ], - aliases: [ "Flow" ], - fields: { - id: (0, r.validateType)("Identifier"), - qualification: (0, r.validateType)([ "Identifier", "QualifiedTypeIdentifier" ]) - } - }); - (0, r.default)("StringLiteralTypeAnnotation", { - builder: [ "value" ], - aliases: [ "Flow", "FlowType" ], - fields: { - value: (0, r.validate)((0, r.assertValueType)("string")) - } - }); - (0, r.default)("StringTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("SymbolTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("ThisTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("TupleTypeAnnotation", { - visitor: [ "types" ], - aliases: [ "Flow", "FlowType" ], - fields: { - types: (0, r.validate)((0, r.arrayOfType)("FlowType")) - } - }); - (0, r.default)("TypeofTypeAnnotation", { - visitor: [ "argument" ], - aliases: [ "Flow", "FlowType" ], - fields: { - argument: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("TypeAlias", { - visitor: [ "id", "typeParameters", "right" ], - aliases: [ "Flow", "FlowDeclaration", "Statement", "Declaration" ], - fields: { - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TypeParameterDeclaration"), - right: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("TypeAnnotation", { - aliases: [ "Flow" ], - visitor: [ "typeAnnotation" ], - fields: { - typeAnnotation: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("TypeCastExpression", { - visitor: [ "expression", "typeAnnotation" ], - aliases: [ "Flow", "ExpressionWrapper", "Expression" ], - fields: { - expression: (0, r.validateType)("Expression"), - typeAnnotation: (0, r.validateType)("TypeAnnotation") - } - }); - (0, r.default)("TypeParameter", { - aliases: [ "Flow" ], - visitor: [ "bound", "default", "variance" ], - fields: { - name: (0, r.validate)((0, r.assertValueType)("string")), - bound: (0, r.validateOptionalType)("TypeAnnotation"), - default: (0, r.validateOptionalType)("FlowType"), - variance: (0, r.validateOptionalType)("Variance") - } - }); - (0, r.default)("TypeParameterDeclaration", { - aliases: [ "Flow" ], - visitor: [ "params" ], - fields: { - params: (0, r.validate)((0, r.arrayOfType)("TypeParameter")) - } - }); - (0, r.default)("TypeParameterInstantiation", { - aliases: [ "Flow" ], - visitor: [ "params" ], - fields: { - params: (0, r.validate)((0, r.arrayOfType)("FlowType")) - } - }); - (0, r.default)("UnionTypeAnnotation", { - visitor: [ "types" ], - aliases: [ "Flow", "FlowType" ], - fields: { - types: (0, r.validate)((0, r.arrayOfType)("FlowType")) - } - }); - (0, r.default)("Variance", { - aliases: [ "Flow" ], - builder: [ "kind" ], - fields: { - kind: (0, r.validate)((0, r.assertOneOf)("minus", "plus")) - } - }); - (0, r.default)("VoidTypeAnnotation", { - aliases: [ "Flow", "FlowType", "FlowBaseAnnotation" ] - }); - (0, r.default)("EnumDeclaration", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "body" ], - fields: { - id: (0, r.validateType)("Identifier"), - body: (0, r.validateType)([ "EnumBooleanBody", "EnumNumberBody", "EnumStringBody", "EnumSymbolBody" ]) - } - }); - (0, r.default)("EnumBooleanBody", { - aliases: [ "EnumBody" ], - visitor: [ "members" ], - fields: { - explicitType: (0, r.validate)((0, r.assertValueType)("boolean")), - members: (0, r.validateArrayOfType)("EnumBooleanMember"), - hasUnknownMembers: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("EnumNumberBody", { - aliases: [ "EnumBody" ], - visitor: [ "members" ], - fields: { - explicitType: (0, r.validate)((0, r.assertValueType)("boolean")), - members: (0, r.validateArrayOfType)("EnumNumberMember"), - hasUnknownMembers: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("EnumStringBody", { - aliases: [ "EnumBody" ], - visitor: [ "members" ], - fields: { - explicitType: (0, r.validate)((0, r.assertValueType)("boolean")), - members: (0, r.validateArrayOfType)([ "EnumStringMember", "EnumDefaultedMember" ]), - hasUnknownMembers: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("EnumSymbolBody", { - aliases: [ "EnumBody" ], - visitor: [ "members" ], - fields: { - members: (0, r.validateArrayOfType)("EnumDefaultedMember"), - hasUnknownMembers: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - (0, r.default)("EnumBooleanMember", { - aliases: [ "EnumMember" ], - visitor: [ "id" ], - fields: { - id: (0, r.validateType)("Identifier"), - init: (0, r.validateType)("BooleanLiteral") - } - }); - (0, r.default)("EnumNumberMember", { - aliases: [ "EnumMember" ], - visitor: [ "id", "init" ], - fields: { - id: (0, r.validateType)("Identifier"), - init: (0, r.validateType)("NumericLiteral") - } - }); - (0, r.default)("EnumStringMember", { - aliases: [ "EnumMember" ], - visitor: [ "id", "init" ], - fields: { - id: (0, r.validateType)("Identifier"), - init: (0, r.validateType)("StringLiteral") - } - }); - (0, r.default)("EnumDefaultedMember", { - aliases: [ "EnumMember" ], - visitor: [ "id" ], - fields: { - id: (0, r.validateType)("Identifier") - } - }); - (0, r.default)("IndexedAccessType", { - visitor: [ "objectType", "indexType" ], - aliases: [ "Flow", "FlowType" ], - fields: { - objectType: (0, r.validateType)("FlowType"), - indexType: (0, r.validateType)("FlowType") - } - }); - (0, r.default)("OptionalIndexedAccessType", { - visitor: [ "objectType", "indexType" ], - aliases: [ "Flow", "FlowType" ], - fields: { - objectType: (0, r.validateType)("FlowType"), - indexType: (0, r.validateType)("FlowType"), - optional: (0, r.validate)((0, r.assertValueType)("boolean")) - } - }); - }, { - "./utils": 107 - } ], - 102: [ function(e, t, n) { - "use strict"; - var r, i, s; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - Object.defineProperty(n, "VISITOR_KEYS", { - enumerable: !0, - get: function() { - return i.VISITOR_KEYS; - } - }); - Object.defineProperty(n, "ALIAS_KEYS", { - enumerable: !0, - get: function() { - return i.ALIAS_KEYS; - } - }); - Object.defineProperty(n, "FLIPPED_ALIAS_KEYS", { - enumerable: !0, - get: function() { - return i.FLIPPED_ALIAS_KEYS; - } - }); - Object.defineProperty(n, "NODE_FIELDS", { - enumerable: !0, - get: function() { - return i.NODE_FIELDS; - } - }); - Object.defineProperty(n, "BUILDER_KEYS", { - enumerable: !0, - get: function() { - return i.BUILDER_KEYS; - } - }); - Object.defineProperty(n, "DEPRECATED_KEYS", { - enumerable: !0, - get: function() { - return i.DEPRECATED_KEYS; - } - }); - Object.defineProperty(n, "NODE_PARENT_VALIDATIONS", { - enumerable: !0, - get: function() { - return i.NODE_PARENT_VALIDATIONS; - } - }); - Object.defineProperty(n, "PLACEHOLDERS", { - enumerable: !0, - get: function() { - return s.PLACEHOLDERS; - } - }); - Object.defineProperty(n, "PLACEHOLDERS_ALIAS", { - enumerable: !0, - get: function() { - return s.PLACEHOLDERS_ALIAS; - } - }); - Object.defineProperty(n, "PLACEHOLDERS_FLIPPED_ALIAS", { - enumerable: !0, - get: function() { - return s.PLACEHOLDERS_FLIPPED_ALIAS; - } - }); - n.TYPES = void 0; - r = e("to-fast-properties"); - e("./core"); - e("./flow"); - e("./jsx"); - e("./misc"); - e("./experimental"); - e("./typescript"); - i = e("./utils"); - s = e("./placeholders"); - r(i.VISITOR_KEYS); - r(i.ALIAS_KEYS); - r(i.FLIPPED_ALIAS_KEYS); - r(i.NODE_FIELDS); - r(i.BUILDER_KEYS); - r(i.DEPRECATED_KEYS); - r(s.PLACEHOLDERS_ALIAS); - r(s.PLACEHOLDERS_FLIPPED_ALIAS); - const a = Object.keys(i.VISITOR_KEYS).concat(Object.keys(i.FLIPPED_ALIAS_KEYS)).concat(Object.keys(i.DEPRECATED_KEYS)); - n.TYPES = a; - }, { - "./core": 99, - "./experimental": 100, - "./flow": 101, - "./jsx": 103, - "./misc": 104, - "./placeholders": 105, - "./typescript": 106, - "./utils": 107, - "to-fast-properties": 173 - } ], - 103: [ function(e, t, n) { - "use strict"; - var r = e("./utils"); - (0, r.default)("JSXAttribute", { - visitor: [ "name", "value" ], - aliases: [ "JSX", "Immutable" ], - fields: { - name: { - validate: (0, r.assertNodeType)("JSXIdentifier", "JSXNamespacedName") - }, - value: { - optional: !0, - validate: (0, r.assertNodeType)("JSXElement", "JSXFragment", "StringLiteral", "JSXExpressionContainer") - } - } - }); - (0, r.default)("JSXClosingElement", { - visitor: [ "name" ], - aliases: [ "JSX", "Immutable" ], - fields: { - name: { - validate: (0, r.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName") - } - } - }); - (0, r.default)("JSXElement", { - builder: [ "openingElement", "closingElement", "children", "selfClosing" ], - visitor: [ "openingElement", "children", "closingElement" ], - aliases: [ "JSX", "Immutable", "Expression" ], - fields: { - openingElement: { - validate: (0, r.assertNodeType)("JSXOpeningElement") - }, - closingElement: { - optional: !0, - validate: (0, r.assertNodeType)("JSXClosingElement") - }, - children: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment"))) - }, - selfClosing: { - validate: (0, r.assertValueType)("boolean"), - optional: !0 - } - } - }); - (0, r.default)("JSXEmptyExpression", { - aliases: [ "JSX" ] - }); - (0, r.default)("JSXExpressionContainer", { - visitor: [ "expression" ], - aliases: [ "JSX", "Immutable" ], - fields: { - expression: { - validate: (0, r.assertNodeType)("Expression", "JSXEmptyExpression") - } - } - }); - (0, r.default)("JSXSpreadChild", { - visitor: [ "expression" ], - aliases: [ "JSX", "Immutable" ], - fields: { - expression: { - validate: (0, r.assertNodeType)("Expression") - } - } - }); - (0, r.default)("JSXIdentifier", { - builder: [ "name" ], - aliases: [ "JSX" ], - fields: { - name: { - validate: (0, r.assertValueType)("string") - } - } - }); - (0, r.default)("JSXMemberExpression", { - visitor: [ "object", "property" ], - aliases: [ "JSX" ], - fields: { - object: { - validate: (0, r.assertNodeType)("JSXMemberExpression", "JSXIdentifier") - }, - property: { - validate: (0, r.assertNodeType)("JSXIdentifier") - } - } - }); - (0, r.default)("JSXNamespacedName", { - visitor: [ "namespace", "name" ], - aliases: [ "JSX" ], - fields: { - namespace: { - validate: (0, r.assertNodeType)("JSXIdentifier") - }, - name: { - validate: (0, r.assertNodeType)("JSXIdentifier") - } - } - }); - (0, r.default)("JSXOpeningElement", { - builder: [ "name", "attributes", "selfClosing" ], - visitor: [ "name", "attributes" ], - aliases: [ "JSX", "Immutable" ], - fields: { - name: { - validate: (0, r.assertNodeType)("JSXIdentifier", "JSXMemberExpression", "JSXNamespacedName") - }, - selfClosing: { - default: !1 - }, - attributes: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("JSXAttribute", "JSXSpreadAttribute"))) - }, - typeParameters: { - validate: (0, r.assertNodeType)("TypeParameterInstantiation", "TSTypeParameterInstantiation"), - optional: !0 - } - } - }); - (0, r.default)("JSXSpreadAttribute", { - visitor: [ "argument" ], - aliases: [ "JSX" ], - fields: { - argument: { - validate: (0, r.assertNodeType)("Expression") - } - } - }); - (0, r.default)("JSXText", { - aliases: [ "JSX", "Immutable" ], - builder: [ "value" ], - fields: { - value: { - validate: (0, r.assertValueType)("string") - } - } - }); - (0, r.default)("JSXFragment", { - builder: [ "openingFragment", "closingFragment", "children" ], - visitor: [ "openingFragment", "children", "closingFragment" ], - aliases: [ "JSX", "Immutable", "Expression" ], - fields: { - openingFragment: { - validate: (0, r.assertNodeType)("JSXOpeningFragment") - }, - closingFragment: { - validate: (0, r.assertNodeType)("JSXClosingFragment") - }, - children: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("JSXText", "JSXExpressionContainer", "JSXSpreadChild", "JSXElement", "JSXFragment"))) - } - } - }); - (0, r.default)("JSXOpeningFragment", { - aliases: [ "JSX", "Immutable" ] - }); - (0, r.default)("JSXClosingFragment", { - aliases: [ "JSX", "Immutable" ] - }); - }, { - "./utils": 107 - } ], - 104: [ function(e, t, n) { - "use strict"; - var r = e("./utils"), i = e("./placeholders"); - (0, r.default)("Noop", { - visitor: [] - }); - (0, r.default)("Placeholder", { - visitor: [], - builder: [ "expectedNode", "name" ], - fields: { - name: { - validate: (0, r.assertNodeType)("Identifier") - }, - expectedNode: { - validate: (0, r.assertOneOf)(...i.PLACEHOLDERS) - } - } - }); - (0, r.default)("V8IntrinsicIdentifier", { - builder: [ "name" ], - fields: { - name: { - validate: (0, r.assertValueType)("string") - } - } - }); - }, { - "./placeholders": 105, - "./utils": 107 - } ], - 105: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.PLACEHOLDERS_FLIPPED_ALIAS = n.PLACEHOLDERS_ALIAS = n.PLACEHOLDERS = void 0; - var r = e("./utils"); - const i = [ "Identifier", "StringLiteral", "Expression", "Statement", "Declaration", "BlockStatement", "ClassBody", "Pattern" ]; - n.PLACEHOLDERS = i; - const s = { - Declaration: [ "Statement" ], - Pattern: [ "PatternLike", "LVal" ] - }; - n.PLACEHOLDERS_ALIAS = s; - for (const e of i) { - const t = r.ALIAS_KEYS[e]; - null != t && t.length && (s[e] = t); - } - const a = {}; - n.PLACEHOLDERS_FLIPPED_ALIAS = a; - Object.keys(s).forEach(e => { - s[e].forEach(t => { - Object.hasOwnProperty.call(a, t) || (a[t] = []); - a[t].push(e); - }); - }); - }, { - "./utils": 107 - } ], - 106: [ function(e, t, n) { - "use strict"; - var r = e("./utils"), i = e("./core"), s = e("../validators/is"); - const a = (0, r.assertValueType)("boolean"); - const o = { - returnType: { - validate: (0, r.assertNodeType)("TSTypeAnnotation", "Noop"), - optional: !0 - }, - typeParameters: { - validate: (0, r.assertNodeType)("TSTypeParameterDeclaration", "Noop"), - optional: !0 - } - }; - (0, r.default)("TSParameterProperty", { - aliases: [ "LVal" ], - visitor: [ "parameter" ], - fields: { - accessibility: { - validate: (0, r.assertOneOf)("public", "private", "protected"), - optional: !0 - }, - readonly: { - validate: (0, r.assertValueType)("boolean"), - optional: !0 - }, - parameter: { - validate: (0, r.assertNodeType)("Identifier", "AssignmentPattern") - }, - override: { - validate: (0, r.assertValueType)("boolean"), - optional: !0 - }, - decorators: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("Decorator"))), - optional: !0 - } - } - }); - (0, r.default)("TSDeclareFunction", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "typeParameters", "params", "returnType" ], - fields: Object.assign({}, i.functionDeclarationCommon, o) - }); - (0, r.default)("TSDeclareMethod", { - visitor: [ "decorators", "key", "typeParameters", "params", "returnType" ], - fields: Object.assign({}, i.classMethodOrDeclareMethodCommon, o) - }); - (0, r.default)("TSQualifiedName", { - aliases: [ "TSEntityName" ], - visitor: [ "left", "right" ], - fields: { - left: (0, r.validateType)("TSEntityName"), - right: (0, r.validateType)("Identifier") - } - }); - const l = { - typeParameters: (0, r.validateOptionalType)("TSTypeParameterDeclaration"), - parameters: (0, r.validateArrayOfType)([ "Identifier", "RestElement" ]), - typeAnnotation: (0, r.validateOptionalType)("TSTypeAnnotation") - }; - const c = { - aliases: [ "TSTypeElement" ], - visitor: [ "typeParameters", "parameters", "typeAnnotation" ], - fields: l - }; - (0, r.default)("TSCallSignatureDeclaration", c); - (0, r.default)("TSConstructSignatureDeclaration", c); - const p = { - key: (0, r.validateType)("Expression"), - computed: (0, r.validate)(a), - optional: (0, r.validateOptional)(a) - }; - (0, r.default)("TSPropertySignature", { - aliases: [ "TSTypeElement" ], - visitor: [ "key", "typeAnnotation", "initializer" ], - fields: Object.assign({}, p, { - readonly: (0, r.validateOptional)(a), - typeAnnotation: (0, r.validateOptionalType)("TSTypeAnnotation"), - initializer: (0, r.validateOptionalType)("Expression"), - kind: { - validate: (0, r.assertOneOf)("get", "set") - } - }) - }); - (0, r.default)("TSMethodSignature", { - aliases: [ "TSTypeElement" ], - visitor: [ "key", "typeParameters", "parameters", "typeAnnotation" ], - fields: Object.assign({}, l, p, { - kind: { - validate: (0, r.assertOneOf)("method", "get", "set") - } - }) - }); - (0, r.default)("TSIndexSignature", { - aliases: [ "TSTypeElement" ], - visitor: [ "parameters", "typeAnnotation" ], - fields: { - readonly: (0, r.validateOptional)(a), - static: (0, r.validateOptional)(a), - parameters: (0, r.validateArrayOfType)("Identifier"), - typeAnnotation: (0, r.validateOptionalType)("TSTypeAnnotation") - } - }); - const u = [ "TSAnyKeyword", "TSBooleanKeyword", "TSBigIntKeyword", "TSIntrinsicKeyword", "TSNeverKeyword", "TSNullKeyword", "TSNumberKeyword", "TSObjectKeyword", "TSStringKeyword", "TSSymbolKeyword", "TSUndefinedKeyword", "TSUnknownKeyword", "TSVoidKeyword" ]; - for (const e of u) (0, r.default)(e, { - aliases: [ "TSType", "TSBaseType" ], - visitor: [], - fields: {} - }); - (0, r.default)("TSThisType", { - aliases: [ "TSType", "TSBaseType" ], - visitor: [], - fields: {} - }); - const d = { - aliases: [ "TSType" ], - visitor: [ "typeParameters", "parameters", "typeAnnotation" ] - }; - (0, r.default)("TSFunctionType", Object.assign({}, d, { - fields: l - })); - (0, r.default)("TSConstructorType", Object.assign({}, d, { - fields: Object.assign({}, l, { - abstract: (0, r.validateOptional)(a) - }) - })); - (0, r.default)("TSTypeReference", { - aliases: [ "TSType" ], - visitor: [ "typeName", "typeParameters" ], - fields: { - typeName: (0, r.validateType)("TSEntityName"), - typeParameters: (0, r.validateOptionalType)("TSTypeParameterInstantiation") - } - }); - (0, r.default)("TSTypePredicate", { - aliases: [ "TSType" ], - visitor: [ "parameterName", "typeAnnotation" ], - builder: [ "parameterName", "typeAnnotation", "asserts" ], - fields: { - parameterName: (0, r.validateType)([ "Identifier", "TSThisType" ]), - typeAnnotation: (0, r.validateOptionalType)("TSTypeAnnotation"), - asserts: (0, r.validateOptional)(a) - } - }); - (0, r.default)("TSTypeQuery", { - aliases: [ "TSType" ], - visitor: [ "exprName" ], - fields: { - exprName: (0, r.validateType)([ "TSEntityName", "TSImportType" ]) - } - }); - (0, r.default)("TSTypeLiteral", { - aliases: [ "TSType" ], - visitor: [ "members" ], - fields: { - members: (0, r.validateArrayOfType)("TSTypeElement") - } - }); - (0, r.default)("TSArrayType", { - aliases: [ "TSType" ], - visitor: [ "elementType" ], - fields: { - elementType: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSTupleType", { - aliases: [ "TSType" ], - visitor: [ "elementTypes" ], - fields: { - elementTypes: (0, r.validateArrayOfType)([ "TSType", "TSNamedTupleMember" ]) - } - }); - (0, r.default)("TSOptionalType", { - aliases: [ "TSType" ], - visitor: [ "typeAnnotation" ], - fields: { - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSRestType", { - aliases: [ "TSType" ], - visitor: [ "typeAnnotation" ], - fields: { - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSNamedTupleMember", { - visitor: [ "label", "elementType" ], - builder: [ "label", "elementType", "optional" ], - fields: { - label: (0, r.validateType)("Identifier"), - optional: { - validate: a, - default: !1 - }, - elementType: (0, r.validateType)("TSType") - } - }); - const h = { - aliases: [ "TSType" ], - visitor: [ "types" ], - fields: { - types: (0, r.validateArrayOfType)("TSType") - } - }; - (0, r.default)("TSUnionType", h); - (0, r.default)("TSIntersectionType", h); - (0, r.default)("TSConditionalType", { - aliases: [ "TSType" ], - visitor: [ "checkType", "extendsType", "trueType", "falseType" ], - fields: { - checkType: (0, r.validateType)("TSType"), - extendsType: (0, r.validateType)("TSType"), - trueType: (0, r.validateType)("TSType"), - falseType: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSInferType", { - aliases: [ "TSType" ], - visitor: [ "typeParameter" ], - fields: { - typeParameter: (0, r.validateType)("TSTypeParameter") - } - }); - (0, r.default)("TSParenthesizedType", { - aliases: [ "TSType" ], - visitor: [ "typeAnnotation" ], - fields: { - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSTypeOperator", { - aliases: [ "TSType" ], - visitor: [ "typeAnnotation" ], - fields: { - operator: (0, r.validate)((0, r.assertValueType)("string")), - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSIndexedAccessType", { - aliases: [ "TSType" ], - visitor: [ "objectType", "indexType" ], - fields: { - objectType: (0, r.validateType)("TSType"), - indexType: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSMappedType", { - aliases: [ "TSType" ], - visitor: [ "typeParameter", "typeAnnotation", "nameType" ], - fields: { - readonly: (0, r.validateOptional)(a), - typeParameter: (0, r.validateType)("TSTypeParameter"), - optional: (0, r.validateOptional)(a), - typeAnnotation: (0, r.validateOptionalType)("TSType"), - nameType: (0, r.validateOptionalType)("TSType") - } - }); - (0, r.default)("TSLiteralType", { - aliases: [ "TSType", "TSBaseType" ], - visitor: [ "literal" ], - fields: { - literal: { - validate: function() { - const e = (0, r.assertNodeType)("NumericLiteral", "BigIntLiteral"); - const t = (0, r.assertOneOf)("-"); - const n = (0, r.assertNodeType)("NumericLiteral", "StringLiteral", "BooleanLiteral", "BigIntLiteral"); - function i(r, i, a) { - if ((0, s.default)("UnaryExpression", a)) { - t(a, "operator", a.operator); - e(a, "argument", a.argument); - } else n(r, i, a); - } - i.oneOfNodeTypes = [ "NumericLiteral", "StringLiteral", "BooleanLiteral", "BigIntLiteral", "UnaryExpression" ]; - return i; - }() - } - } - }); - (0, r.default)("TSExpressionWithTypeArguments", { - aliases: [ "TSType" ], - visitor: [ "expression", "typeParameters" ], - fields: { - expression: (0, r.validateType)("TSEntityName"), - typeParameters: (0, r.validateOptionalType)("TSTypeParameterInstantiation") - } - }); - (0, r.default)("TSInterfaceDeclaration", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "typeParameters", "extends", "body" ], - fields: { - declare: (0, r.validateOptional)(a), - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TSTypeParameterDeclaration"), - extends: (0, r.validateOptional)((0, r.arrayOfType)("TSExpressionWithTypeArguments")), - body: (0, r.validateType)("TSInterfaceBody") - } - }); - (0, r.default)("TSInterfaceBody", { - visitor: [ "body" ], - fields: { - body: (0, r.validateArrayOfType)("TSTypeElement") - } - }); - (0, r.default)("TSTypeAliasDeclaration", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "typeParameters", "typeAnnotation" ], - fields: { - declare: (0, r.validateOptional)(a), - id: (0, r.validateType)("Identifier"), - typeParameters: (0, r.validateOptionalType)("TSTypeParameterDeclaration"), - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSAsExpression", { - aliases: [ "Expression" ], - visitor: [ "expression", "typeAnnotation" ], - fields: { - expression: (0, r.validateType)("Expression"), - typeAnnotation: (0, r.validateType)("TSType") - } - }); - (0, r.default)("TSTypeAssertion", { - aliases: [ "Expression" ], - visitor: [ "typeAnnotation", "expression" ], - fields: { - typeAnnotation: (0, r.validateType)("TSType"), - expression: (0, r.validateType)("Expression") - } - }); - (0, r.default)("TSEnumDeclaration", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "members" ], - fields: { - declare: (0, r.validateOptional)(a), - const: (0, r.validateOptional)(a), - id: (0, r.validateType)("Identifier"), - members: (0, r.validateArrayOfType)("TSEnumMember"), - initializer: (0, r.validateOptionalType)("Expression") - } - }); - (0, r.default)("TSEnumMember", { - visitor: [ "id", "initializer" ], - fields: { - id: (0, r.validateType)([ "Identifier", "StringLiteral" ]), - initializer: (0, r.validateOptionalType)("Expression") - } - }); - (0, r.default)("TSModuleDeclaration", { - aliases: [ "Statement", "Declaration" ], - visitor: [ "id", "body" ], - fields: { - declare: (0, r.validateOptional)(a), - global: (0, r.validateOptional)(a), - id: (0, r.validateType)([ "Identifier", "StringLiteral" ]), - body: (0, r.validateType)([ "TSModuleBlock", "TSModuleDeclaration" ]) - } - }); - (0, r.default)("TSModuleBlock", { - aliases: [ "Scopable", "Block", "BlockParent" ], - visitor: [ "body" ], - fields: { - body: (0, r.validateArrayOfType)("Statement") - } - }); - (0, r.default)("TSImportType", { - aliases: [ "TSType" ], - visitor: [ "argument", "qualifier", "typeParameters" ], - fields: { - argument: (0, r.validateType)("StringLiteral"), - qualifier: (0, r.validateOptionalType)("TSEntityName"), - typeParameters: (0, r.validateOptionalType)("TSTypeParameterInstantiation") - } - }); - (0, r.default)("TSImportEqualsDeclaration", { - aliases: [ "Statement" ], - visitor: [ "id", "moduleReference" ], - fields: { - isExport: (0, r.validate)(a), - id: (0, r.validateType)("Identifier"), - moduleReference: (0, r.validateType)([ "TSEntityName", "TSExternalModuleReference" ]), - importKind: { - validate: (0, r.assertOneOf)("type", "value"), - optional: !0 - } - } - }); - (0, r.default)("TSExternalModuleReference", { - visitor: [ "expression" ], - fields: { - expression: (0, r.validateType)("StringLiteral") - } - }); - (0, r.default)("TSNonNullExpression", { - aliases: [ "Expression" ], - visitor: [ "expression" ], - fields: { - expression: (0, r.validateType)("Expression") - } - }); - (0, r.default)("TSExportAssignment", { - aliases: [ "Statement" ], - visitor: [ "expression" ], - fields: { - expression: (0, r.validateType)("Expression") - } - }); - (0, r.default)("TSNamespaceExportDeclaration", { - aliases: [ "Statement" ], - visitor: [ "id" ], - fields: { - id: (0, r.validateType)("Identifier") - } - }); - (0, r.default)("TSTypeAnnotation", { - visitor: [ "typeAnnotation" ], - fields: { - typeAnnotation: { - validate: (0, r.assertNodeType)("TSType") - } - } - }); - (0, r.default)("TSTypeParameterInstantiation", { - visitor: [ "params" ], - fields: { - params: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("TSType"))) - } - } - }); - (0, r.default)("TSTypeParameterDeclaration", { - visitor: [ "params" ], - fields: { - params: { - validate: (0, r.chain)((0, r.assertValueType)("array"), (0, r.assertEach)((0, r.assertNodeType)("TSTypeParameter"))) - } - } - }); - (0, r.default)("TSTypeParameter", { - builder: [ "constraint", "default", "name" ], - visitor: [ "constraint", "default" ], - fields: { - name: { - validate: (0, r.assertValueType)("string") - }, - constraint: { - validate: (0, r.assertNodeType)("TSType"), - optional: !0 - }, - default: { - validate: (0, r.assertNodeType)("TSType"), - optional: !0 - } - } - }); - }, { - "../validators/is": 125, - "./core": 99, - "./utils": 107 - } ], - 107: [ function(e, t, n) { - (function(t) { - (function() { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.validate = h; - n.typeIs = f; - n.validateType = function(e) { - return h(f(e)); - }; - n.validateOptional = function(e) { - return { - validate: e, - optional: !0 - }; - }; - n.validateOptionalType = function(e) { - return { - validate: f(e), - optional: !0 - }; - }; - n.arrayOf = m; - n.arrayOfType = y; - n.validateArrayOfType = function(e) { - return h(y(e)); - }; - n.assertEach = g; - n.assertOneOf = function(...e) { - function t(t, n, r) { - if (e.indexOf(r) < 0) throw new TypeError(`Property ${n} expected value to be one of ${JSON.stringify(e)} but got ${JSON.stringify(r)}`); - } - t.oneOf = e; - return t; - }; - n.assertNodeType = T; - n.assertNodeOrValueType = function(...e) { - function t(t, n, s) { - for (const a of e) if (d(s) === a || (0, r.default)(a, s)) { - (0, i.validateChild)(t, n, s); - return; - } - throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null == s ? void 0 : s.type)}`); - } - t.oneOfNodeOrValueTypes = e; - return t; - }; - n.assertValueType = b; - n.assertShape = function(e) { - function t(t, n, r) { - const s = []; - for (const n of Object.keys(e)) try { - (0, i.validateField)(t, n, r[n], e[n]); - } catch (e) { - if (e instanceof TypeError) { - s.push(e.message); - continue; - } - throw e; - } - if (s.length) throw new TypeError(`Property ${n} of ${t.type} expected to have the following:\n${s.join("\n")}`); - } - t.shapeOf = e; - return t; - }; - n.assertOptionalChainStart = function() { - return function(e) { - var t; - let n = e; - for (;e; ) { - const {type: e} = n; - if ("OptionalCallExpression" !== e) { - if ("OptionalMemberExpression" !== e) break; - if (n.optional) return; - n = n.object; - } else { - if (n.optional) return; - n = n.callee; - } - } - throw new TypeError(`Non-optional ${e.type} must chain from an optional OptionalMemberExpression or OptionalCallExpression. Found chain from ${null == (t = n) ? void 0 : t.type}`); - }; - }; - n.chain = S; - n.default = function(e, t = {}) { - const n = t.inherits && P[t.inherits] || {}; - let r = t.fields; - if (!r) { - r = {}; - if (n.fields) { - const e = Object.getOwnPropertyNames(n.fields); - for (const t of e) { - const e = n.fields[t]; - const i = e.default; - if (Array.isArray(i) ? i.length > 0 : i && "object" == typeof i) throw new Error("field defaults can only be primitives or empty arrays currently"); - r[t] = { - default: Array.isArray(i) ? [] : i, - optional: e.optional, - validate: e.validate - }; - } - } - } - const i = t.visitor || n.visitor || []; - const h = t.aliases || n.aliases || []; - const f = t.builder || n.builder || t.visitor || []; - for (const n of Object.keys(t)) if (-1 === x.indexOf(n)) throw new Error(`Unknown type option "${n}" on ${e}`); - t.deprecatedAlias && (p[t.deprecatedAlias] = e); - for (const e of i.concat(f)) r[e] = r[e] || {}; - for (const t of Object.keys(r)) { - const n = r[t]; - void 0 !== n.default && -1 === f.indexOf(t) && (n.optional = !0); - void 0 === n.default ? n.default = null : n.validate || null == n.default || (n.validate = b(d(n.default))); - for (const r of Object.keys(n)) if (-1 === E.indexOf(r)) throw new Error(`Unknown field key "${r}" on ${e}.${t}`); - } - s[e] = t.visitor = i; - c[e] = t.builder = f; - l[e] = t.fields = r; - a[e] = t.aliases = h; - h.forEach(t => { - o[t] = o[t] || []; - o[t].push(e); - }); - t.validate && (u[e] = t.validate); - P[e] = t; - }; - n.NODE_PARENT_VALIDATIONS = n.DEPRECATED_KEYS = n.BUILDER_KEYS = n.NODE_FIELDS = n.FLIPPED_ALIAS_KEYS = n.ALIAS_KEYS = n.VISITOR_KEYS = void 0; - r = e("../validators/is"); - i = e("../validators/validate"); - const s = {}; - n.VISITOR_KEYS = s; - const a = {}; - n.ALIAS_KEYS = a; - const o = {}; - n.FLIPPED_ALIAS_KEYS = o; - const l = {}; - n.NODE_FIELDS = l; - const c = {}; - n.BUILDER_KEYS = c; - const p = {}; - n.DEPRECATED_KEYS = p; - const u = {}; - n.NODE_PARENT_VALIDATIONS = u; - function d(e) { - return Array.isArray(e) ? "array" : null === e ? "null" : typeof e; - } - function h(e) { - return { - validate: e - }; - } - function f(e) { - return "string" == typeof e ? T(e) : T(...e); - } - function m(e) { - return S(b("array"), g(e)); - } - function y(e) { - return m(f(e)); - } - function g(e) { - function n(n, r, s) { - if (Array.isArray(s)) for (let a = 0; a < s.length; a++) { - const o = `${r}[${a}]`; - const l = s[a]; - e(n, o, l); - t.env.BABEL_TYPES_8_BREAKING && (0, i.validateChild)(n, o, l); - } - } - n.each = e; - return n; - } - function T(...e) { - function t(t, n, s) { - for (const a of e) if ((0, r.default)(a, s)) { - (0, i.validateChild)(t, n, s); - return; - } - throw new TypeError(`Property ${n} of ${t.type} expected node to be of a type ${JSON.stringify(e)} but instead got ${JSON.stringify(null == s ? void 0 : s.type)}`); - } - t.oneOfNodeTypes = e; - return t; - } - function b(e) { - function t(t, n, r) { - if (!(d(r) === e)) throw new TypeError(`Property ${n} expected type of ${e} but got ${d(r)}`); - } - t.type = e; - return t; - } - function S(...e) { - function t(...t) { - for (const n of e) n(...t); - } - t.chainOf = e; - if (e.length >= 2 && "type" in e[0] && "array" === e[0].type && !("each" in e[1])) throw new Error('An assertValueType("array") validator can only be followed by an assertEach(...) validator.'); - return t; - } - const x = [ "aliases", "builder", "deprecatedAlias", "fields", "inherits", "visitor", "validate" ]; - const E = [ "default", "optional", "validate" ]; - const P = {}; - }).call(this); - }).call(this, e("_process")); - }, { - "../validators/is": 125, - "../validators/validate": 143, - _process: 160 - } ], - 108: [ function(e, t, n) { - "use strict"; - var r, i, s, a, o, l, c, p, u, d, h, f, m, y, g, T, b, S, x, E, P, v, A, w, C, I, O, N, k, D, M, _, L, j, F, B, R, U, V, K, W, q, Y, J, X, G, H, $, z, Q, Z, ee, te, ne, re, ie, se, ae, oe, le, ce, pe, ue, de, he, fe, me; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - r = { - react: !0, - assertNode: !0, - createTypeAnnotationBasedOnTypeof: !0, - createUnionTypeAnnotation: !0, - createFlowUnionType: !0, - createTSUnionType: !0, - cloneNode: !0, - clone: !0, - cloneDeep: !0, - cloneDeepWithoutLoc: !0, - cloneWithoutLoc: !0, - addComment: !0, - addComments: !0, - inheritInnerComments: !0, - inheritLeadingComments: !0, - inheritsComments: !0, - inheritTrailingComments: !0, - removeComments: !0, - ensureBlock: !0, - toBindingIdentifierName: !0, - toBlock: !0, - toComputedKey: !0, - toExpression: !0, - toIdentifier: !0, - toKeyAlias: !0, - toSequenceExpression: !0, - toStatement: !0, - valueToNode: !0, - appendToMemberExpression: !0, - inherits: !0, - prependToMemberExpression: !0, - removeProperties: !0, - removePropertiesDeep: !0, - removeTypeDuplicates: !0, - getBindingIdentifiers: !0, - getOuterBindingIdentifiers: !0, - traverse: !0, - traverseFast: !0, - shallowEqual: !0, - is: !0, - isBinding: !0, - isBlockScoped: !0, - isImmutable: !0, - isLet: !0, - isNode: !0, - isNodesEquivalent: !0, - isPlaceholderType: !0, - isReferenced: !0, - isScope: !0, - isSpecifierDefault: !0, - isType: !0, - isValidES3Identifier: !0, - isValidIdentifier: !0, - isVar: !0, - matchesPattern: !0, - validate: !0, - buildMatchMemberExpression: !0 - }; - Object.defineProperty(n, "assertNode", { - enumerable: !0, - get: function() { - return o.default; - } - }); - Object.defineProperty(n, "createTypeAnnotationBasedOnTypeof", { - enumerable: !0, - get: function() { - return c.default; - } - }); - Object.defineProperty(n, "createUnionTypeAnnotation", { - enumerable: !0, - get: function() { - return p.default; - } - }); - Object.defineProperty(n, "createFlowUnionType", { - enumerable: !0, - get: function() { - return p.default; - } - }); - Object.defineProperty(n, "createTSUnionType", { - enumerable: !0, - get: function() { - return u.default; - } - }); - Object.defineProperty(n, "cloneNode", { - enumerable: !0, - get: function() { - return f.default; - } - }); - Object.defineProperty(n, "clone", { - enumerable: !0, - get: function() { - return m.default; - } - }); - Object.defineProperty(n, "cloneDeep", { - enumerable: !0, - get: function() { - return y.default; - } - }); - Object.defineProperty(n, "cloneDeepWithoutLoc", { - enumerable: !0, - get: function() { - return g.default; - } - }); - Object.defineProperty(n, "cloneWithoutLoc", { - enumerable: !0, - get: function() { - return T.default; - } - }); - Object.defineProperty(n, "addComment", { - enumerable: !0, - get: function() { - return b.default; - } - }); - Object.defineProperty(n, "addComments", { - enumerable: !0, - get: function() { - return S.default; - } - }); - Object.defineProperty(n, "inheritInnerComments", { - enumerable: !0, - get: function() { - return x.default; - } - }); - Object.defineProperty(n, "inheritLeadingComments", { - enumerable: !0, - get: function() { - return E.default; - } - }); - Object.defineProperty(n, "inheritsComments", { - enumerable: !0, - get: function() { - return P.default; - } - }); - Object.defineProperty(n, "inheritTrailingComments", { - enumerable: !0, - get: function() { - return v.default; - } - }); - Object.defineProperty(n, "removeComments", { - enumerable: !0, - get: function() { - return A.default; - } - }); - Object.defineProperty(n, "ensureBlock", { - enumerable: !0, - get: function() { - return I.default; - } - }); - Object.defineProperty(n, "toBindingIdentifierName", { - enumerable: !0, - get: function() { - return O.default; - } - }); - Object.defineProperty(n, "toBlock", { - enumerable: !0, - get: function() { - return N.default; - } - }); - Object.defineProperty(n, "toComputedKey", { - enumerable: !0, - get: function() { - return k.default; - } - }); - Object.defineProperty(n, "toExpression", { - enumerable: !0, - get: function() { - return D.default; - } - }); - Object.defineProperty(n, "toIdentifier", { - enumerable: !0, - get: function() { - return M.default; - } - }); - Object.defineProperty(n, "toKeyAlias", { - enumerable: !0, - get: function() { - return _.default; - } - }); - Object.defineProperty(n, "toSequenceExpression", { - enumerable: !0, - get: function() { - return L.default; - } - }); - Object.defineProperty(n, "toStatement", { - enumerable: !0, - get: function() { - return j.default; - } - }); - Object.defineProperty(n, "valueToNode", { - enumerable: !0, - get: function() { - return F.default; - } - }); - Object.defineProperty(n, "appendToMemberExpression", { - enumerable: !0, - get: function() { - return R.default; - } - }); - Object.defineProperty(n, "inherits", { - enumerable: !0, - get: function() { - return U.default; - } - }); - Object.defineProperty(n, "prependToMemberExpression", { - enumerable: !0, - get: function() { - return V.default; - } - }); - Object.defineProperty(n, "removeProperties", { - enumerable: !0, - get: function() { - return K.default; - } - }); - Object.defineProperty(n, "removePropertiesDeep", { - enumerable: !0, - get: function() { - return W.default; - } - }); - Object.defineProperty(n, "removeTypeDuplicates", { - enumerable: !0, - get: function() { - return q.default; - } - }); - Object.defineProperty(n, "getBindingIdentifiers", { - enumerable: !0, - get: function() { - return Y.default; - } - }); - Object.defineProperty(n, "getOuterBindingIdentifiers", { - enumerable: !0, - get: function() { - return J.default; - } - }); - Object.defineProperty(n, "traverse", { - enumerable: !0, - get: function() { - return X.default; - } - }); - Object.defineProperty(n, "traverseFast", { - enumerable: !0, - get: function() { - return G.default; - } - }); - Object.defineProperty(n, "shallowEqual", { - enumerable: !0, - get: function() { - return H.default; - } - }); - Object.defineProperty(n, "is", { - enumerable: !0, - get: function() { - return $.default; - } - }); - Object.defineProperty(n, "isBinding", { - enumerable: !0, - get: function() { - return z.default; - } - }); - Object.defineProperty(n, "isBlockScoped", { - enumerable: !0, - get: function() { - return Q.default; - } - }); - Object.defineProperty(n, "isImmutable", { - enumerable: !0, - get: function() { - return Z.default; - } - }); - Object.defineProperty(n, "isLet", { - enumerable: !0, - get: function() { - return ee.default; - } - }); - Object.defineProperty(n, "isNode", { - enumerable: !0, - get: function() { - return te.default; - } - }); - Object.defineProperty(n, "isNodesEquivalent", { - enumerable: !0, - get: function() { - return ne.default; - } - }); - Object.defineProperty(n, "isPlaceholderType", { - enumerable: !0, - get: function() { - return re.default; - } - }); - Object.defineProperty(n, "isReferenced", { - enumerable: !0, - get: function() { - return ie.default; - } - }); - Object.defineProperty(n, "isScope", { - enumerable: !0, - get: function() { - return se.default; - } - }); - Object.defineProperty(n, "isSpecifierDefault", { - enumerable: !0, - get: function() { - return ae.default; - } - }); - Object.defineProperty(n, "isType", { - enumerable: !0, - get: function() { - return oe.default; - } - }); - Object.defineProperty(n, "isValidES3Identifier", { - enumerable: !0, - get: function() { - return le.default; - } - }); - Object.defineProperty(n, "isValidIdentifier", { - enumerable: !0, - get: function() { - return ce.default; - } - }); - Object.defineProperty(n, "isVar", { - enumerable: !0, - get: function() { - return pe.default; - } - }); - Object.defineProperty(n, "matchesPattern", { - enumerable: !0, - get: function() { - return ue.default; - } - }); - Object.defineProperty(n, "validate", { - enumerable: !0, - get: function() { - return de.default; - } - }); - Object.defineProperty(n, "buildMatchMemberExpression", { - enumerable: !0, - get: function() { - return he.default; - } - }); - n.react = void 0; - i = e("./validators/react/isReactComponent"); - s = e("./validators/react/isCompatTag"); - a = e("./builders/react/buildChildren"); - o = e("./asserts/assertNode"); - l = e("./asserts/generated"); - Object.keys(l).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === l[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return l[e]; - } - })); - }); - c = e("./builders/flow/createTypeAnnotationBasedOnTypeof"); - p = e("./builders/flow/createFlowUnionType"); - u = e("./builders/typescript/createTSUnionType"); - d = e("./builders/generated"); - Object.keys(d).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === d[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return d[e]; - } - })); - }); - h = e("./builders/generated/uppercase"); - Object.keys(h).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === h[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return h[e]; - } - })); - }); - f = e("./clone/cloneNode"); - m = e("./clone/clone"); - y = e("./clone/cloneDeep"); - g = e("./clone/cloneDeepWithoutLoc"); - T = e("./clone/cloneWithoutLoc"); - b = e("./comments/addComment"); - S = e("./comments/addComments"); - x = e("./comments/inheritInnerComments"); - E = e("./comments/inheritLeadingComments"); - P = e("./comments/inheritsComments"); - v = e("./comments/inheritTrailingComments"); - A = e("./comments/removeComments"); - w = e("./constants/generated"); - Object.keys(w).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === w[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return w[e]; - } - })); - }); - C = e("./constants"); - Object.keys(C).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === C[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return C[e]; - } - })); - }); - I = e("./converters/ensureBlock"); - O = e("./converters/toBindingIdentifierName"); - N = e("./converters/toBlock"); - k = e("./converters/toComputedKey"); - D = e("./converters/toExpression"); - M = e("./converters/toIdentifier"); - _ = e("./converters/toKeyAlias"); - L = e("./converters/toSequenceExpression"); - j = e("./converters/toStatement"); - F = e("./converters/valueToNode"); - B = e("./definitions"); - Object.keys(B).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === B[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return B[e]; - } - })); - }); - R = e("./modifications/appendToMemberExpression"); - U = e("./modifications/inherits"); - V = e("./modifications/prependToMemberExpression"); - K = e("./modifications/removeProperties"); - W = e("./modifications/removePropertiesDeep"); - q = e("./modifications/flow/removeTypeDuplicates"); - Y = e("./retrievers/getBindingIdentifiers"); - J = e("./retrievers/getOuterBindingIdentifiers"); - X = e("./traverse/traverse"); - Object.keys(X).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === X[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return X[e]; - } - })); - }); - G = e("./traverse/traverseFast"); - H = e("./utils/shallowEqual"); - $ = e("./validators/is"); - z = e("./validators/isBinding"); - Q = e("./validators/isBlockScoped"); - Z = e("./validators/isImmutable"); - ee = e("./validators/isLet"); - te = e("./validators/isNode"); - ne = e("./validators/isNodesEquivalent"); - re = e("./validators/isPlaceholderType"); - ie = e("./validators/isReferenced"); - se = e("./validators/isScope"); - ae = e("./validators/isSpecifierDefault"); - oe = e("./validators/isType"); - le = e("./validators/isValidES3Identifier"); - ce = e("./validators/isValidIdentifier"); - pe = e("./validators/isVar"); - ue = e("./validators/matchesPattern"); - de = e("./validators/validate"); - he = e("./validators/buildMatchMemberExpression"); - fe = e("./validators/generated"); - Object.keys(fe).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === fe[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return fe[e]; - } - })); - }); - me = e("./ast-types/generated"); - Object.keys(me).forEach(function(e) { - "default" !== e && "__esModule" !== e && (Object.prototype.hasOwnProperty.call(r, e) || e in n && n[e] === me[e] || Object.defineProperty(n, e, { - enumerable: !0, - get: function() { - return me[e]; - } - })); - }); - const ye = { - isReactComponent: i.default, - isCompatTag: s.default, - buildChildren: a.default - }; - n.react = ye; - }, { - "./asserts/assertNode": 64, - "./asserts/generated": 65, - "./ast-types/generated": 66, - "./builders/flow/createFlowUnionType": 68, - "./builders/flow/createTypeAnnotationBasedOnTypeof": 69, - "./builders/generated": 70, - "./builders/generated/uppercase": 71, - "./builders/react/buildChildren": 72, - "./builders/typescript/createTSUnionType": 73, - "./clone/clone": 74, - "./clone/cloneDeep": 75, - "./clone/cloneDeepWithoutLoc": 76, - "./clone/cloneNode": 77, - "./clone/cloneWithoutLoc": 78, - "./comments/addComment": 79, - "./comments/addComments": 80, - "./comments/inheritInnerComments": 81, - "./comments/inheritLeadingComments": 82, - "./comments/inheritTrailingComments": 83, - "./comments/inheritsComments": 84, - "./comments/removeComments": 85, - "./constants": 87, - "./constants/generated": 86, - "./converters/ensureBlock": 88, - "./converters/toBindingIdentifierName": 90, - "./converters/toBlock": 91, - "./converters/toComputedKey": 92, - "./converters/toExpression": 93, - "./converters/toIdentifier": 94, - "./converters/toKeyAlias": 95, - "./converters/toSequenceExpression": 96, - "./converters/toStatement": 97, - "./converters/valueToNode": 98, - "./definitions": 102, - "./modifications/appendToMemberExpression": 109, - "./modifications/flow/removeTypeDuplicates": 110, - "./modifications/inherits": 111, - "./modifications/prependToMemberExpression": 112, - "./modifications/removeProperties": 113, - "./modifications/removePropertiesDeep": 114, - "./retrievers/getBindingIdentifiers": 116, - "./retrievers/getOuterBindingIdentifiers": 117, - "./traverse/traverse": 118, - "./traverse/traverseFast": 119, - "./utils/shallowEqual": 122, - "./validators/buildMatchMemberExpression": 123, - "./validators/generated": 124, - "./validators/is": 125, - "./validators/isBinding": 126, - "./validators/isBlockScoped": 127, - "./validators/isImmutable": 128, - "./validators/isLet": 129, - "./validators/isNode": 130, - "./validators/isNodesEquivalent": 131, - "./validators/isPlaceholderType": 132, - "./validators/isReferenced": 133, - "./validators/isScope": 134, - "./validators/isSpecifierDefault": 135, - "./validators/isType": 136, - "./validators/isValidES3Identifier": 137, - "./validators/isValidIdentifier": 138, - "./validators/isVar": 139, - "./validators/matchesPattern": 140, - "./validators/react/isCompatTag": 141, - "./validators/react/isReactComponent": 142, - "./validators/validate": 143 - } ], - 109: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n = !1) { - e.object = (0, r.memberExpression)(e.object, e.property, e.computed); - e.property = t; - e.computed = !!n; - return e; - }; - var r = e("../builders/generated"); - }, { - "../builders/generated": 70 - } ], - 110: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function e(t) { - const n = {}; - const s = {}; - const a = new Set(); - const o = []; - for (let l = 0; l < t.length; l++) { - const c = t[l]; - if (c && !(o.indexOf(c) >= 0)) { - if ((0, r.isAnyTypeAnnotation)(c)) return [ c ]; - if ((0, r.isFlowBaseAnnotation)(c)) s[c.type] = c; else if ((0, r.isUnionTypeAnnotation)(c)) { - if (!a.has(c.types)) { - t = t.concat(c.types); - a.add(c.types); - } - } else if ((0, r.isGenericTypeAnnotation)(c)) { - const t = i(c.id); - if (n[t]) { - let r = n[t]; - r.typeParameters ? c.typeParameters && (r.typeParameters.params = e(r.typeParameters.params.concat(c.typeParameters.params))) : r = c.typeParameters; - } else n[t] = c; - } else o.push(c); - } - } - for (const e of Object.keys(s)) o.push(s[e]); - for (const e of Object.keys(n)) o.push(n[e]); - return o; - }; - var r = e("../../validators/generated"); - function i(e) { - return (0, r.isIdentifier)(e) ? e.name : `${e.id.name}.${i(e.qualification)}`; - } - }, { - "../../validators/generated": 124 - } ], - 111: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if (!e || !t) return e; - for (const n of r.INHERIT_KEYS.optional) null == e[n] && (e[n] = t[n]); - for (const n of Object.keys(t)) "_" === n[0] && "__clone" !== n && (e[n] = t[n]); - for (const n of r.INHERIT_KEYS.force) e[n] = t[n]; - (0, i.default)(e, t); - return e; - }; - r = e("../constants"); - i = e("../comments/inheritsComments"); - }, { - "../comments/inheritsComments": 84, - "../constants": 87 - } ], - 112: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - e.object = (0, r.memberExpression)(t, e.object); - return e; - }; - var r = e("../builders/generated"); - }, { - "../builders/generated": 70 - } ], - 113: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t = {}) { - const n = t.preserveComments ? r : i; - for (const t of n) null != e[t] && (e[t] = void 0); - for (const t of Object.keys(e)) "_" === t[0] && null != e[t] && (e[t] = void 0); - const s = Object.getOwnPropertySymbols(e); - for (const t of s) e[t] = null; - }; - const r = [ "tokens", "start", "end", "loc", "raw", "rawValue" ]; - const i = e("../constants").COMMENT_KEYS.concat([ "comments" ]).concat(r); - }, { - "../constants": 87 - } ], - 114: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - (0, r.default)(e, i.default, t); - return e; - }; - r = e("../traverse/traverseFast"); - i = e("./removeProperties"); - }, { - "../traverse/traverseFast": 119, - "./removeProperties": 113 - } ], - 115: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - const t = {}; - const n = {}; - const i = new Set(); - const s = []; - for (let t = 0; t < e.length; t++) { - const a = e[t]; - if (a && !(s.indexOf(a) >= 0)) { - if ((0, r.isTSAnyKeyword)(a)) return [ a ]; - if ((0, r.isTSBaseType)(a)) n[a.type] = a; else if ((0, r.isTSUnionType)(a)) { - if (!i.has(a.types)) { - e.push(...a.types); - i.add(a.types); - } - } else s.push(a); - } - } - for (const e of Object.keys(n)) s.push(n[e]); - for (const e of Object.keys(t)) s.push(t[e]); - return s; - }; - var r = e("../../validators/generated"); - }, { - "../../validators/generated": 124 - } ], - 116: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = i; - var r = e("../validators/generated"); - function i(e, t, n) { - let s = [].concat(e); - const a = Object.create(null); - for (;s.length; ) { - const e = s.shift(); - if (!e) continue; - const o = i.keys[e.type]; - if ((0, r.isIdentifier)(e)) if (t) { - (a[e.name] = a[e.name] || []).push(e); - } else a[e.name] = e; else if (!(0, r.isExportDeclaration)(e) || (0, r.isExportAllDeclaration)(e)) { - if (n) { - if ((0, r.isFunctionDeclaration)(e)) { - s.push(e.id); - continue; - } - if ((0, r.isFunctionExpression)(e)) continue; - } - if (o) for (let t = 0; t < o.length; t++) { - const n = o[t]; - e[n] && (s = s.concat(e[n])); - } - } else (0, r.isDeclaration)(e.declaration) && s.push(e.declaration); - } - return a; - } - i.keys = { - DeclareClass: [ "id" ], - DeclareFunction: [ "id" ], - DeclareModule: [ "id" ], - DeclareVariable: [ "id" ], - DeclareInterface: [ "id" ], - DeclareTypeAlias: [ "id" ], - DeclareOpaqueType: [ "id" ], - InterfaceDeclaration: [ "id" ], - TypeAlias: [ "id" ], - OpaqueType: [ "id" ], - CatchClause: [ "param" ], - LabeledStatement: [ "label" ], - UnaryExpression: [ "argument" ], - AssignmentExpression: [ "left" ], - ImportSpecifier: [ "local" ], - ImportNamespaceSpecifier: [ "local" ], - ImportDefaultSpecifier: [ "local" ], - ImportDeclaration: [ "specifiers" ], - ExportSpecifier: [ "exported" ], - ExportNamespaceSpecifier: [ "exported" ], - ExportDefaultSpecifier: [ "exported" ], - FunctionDeclaration: [ "id", "params" ], - FunctionExpression: [ "id", "params" ], - ArrowFunctionExpression: [ "params" ], - ObjectMethod: [ "params" ], - ClassMethod: [ "params" ], - ClassPrivateMethod: [ "params" ], - ForInStatement: [ "left" ], - ForOfStatement: [ "left" ], - ClassDeclaration: [ "id" ], - ClassExpression: [ "id" ], - RestElement: [ "argument" ], - UpdateExpression: [ "argument" ], - ObjectProperty: [ "value" ], - AssignmentPattern: [ "left" ], - ArrayPattern: [ "elements" ], - ObjectPattern: [ "properties" ], - VariableDeclaration: [ "declarations" ], - VariableDeclarator: [ "id" ] - }; - }, { - "../validators/generated": 124 - } ], - 117: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = e("./getBindingIdentifiers"); - i = function(e, t) { - return (0, r.default)(e, t, !0); - }; - n.default = i; - }, { - "./getBindingIdentifiers": 116 - } ], - 118: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - "function" == typeof t && (t = { - enter: t - }); - const {enter: i, exit: s} = t; - !function e(t, n, i, s, a) { - const o = r.VISITOR_KEYS[t.type]; - if (!o) return; - n && n(t, a, s); - for (const r of o) { - const o = t[r]; - if (Array.isArray(o)) for (let l = 0; l < o.length; l++) { - const c = o[l]; - if (c) { - a.push({ - node: t, - key: r, - index: l - }); - e(c, n, i, s, a); - a.pop(); - } - } else if (o) { - a.push({ - node: t, - key: r - }); - e(o, n, i, s, a); - a.pop(); - } - } - i && i(t, a, s); - }(e, i, s, n, []); - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 119: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function e(t, n, i) { - if (!t) return; - const s = r.VISITOR_KEYS[t.type]; - if (!s) return; - i = i || {}; - n(t, i); - for (const r of s) { - const s = t[r]; - if (Array.isArray(s)) for (const t of s) e(t, n, i); else e(s, n, i); - } - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 120: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - t && n && (t[e] = Array.from(new Set([].concat(t[e], n[e]).filter(Boolean)))); - }; - }, {} ], - 121: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - const n = e.value.split(/\r\n|\n|\r/); - let i = 0; - for (let e = 0; e < n.length; e++) n[e].match(/[^ \t]/) && (i = e); - let s = ""; - for (let e = 0; e < n.length; e++) { - const t = n[e]; - const r = 0 === e; - const a = e === n.length - 1; - const o = e === i; - let l = t.replace(/\t/g, " "); - r || (l = l.replace(/^[ ]+/, "")); - a || (l = l.replace(/[ ]+$/, "")); - if (l) { - o || (l += " "); - s += l; - } - } - s && t.push((0, r.stringLiteral)(s)); - }; - var r = e("../../builders/generated"); - }, { - "../../builders/generated": 70 - } ], - 122: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - const n = Object.keys(t); - for (const r of n) if (e[r] !== t[r]) return !1; - return !0; - }; - }, {} ], - 123: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - const n = e.split("."); - return e => (0, r.default)(e, n, t); - }; - var r = e("./matchesPattern"); - }, { - "./matchesPattern": 140 - } ], - 124: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.isArrayExpression = function(e, t) { - if (!e) return !1; - if ("ArrayExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isAssignmentExpression = function(e, t) { - if (!e) return !1; - if ("AssignmentExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBinaryExpression = function(e, t) { - if (!e) return !1; - if ("BinaryExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isInterpreterDirective = function(e, t) { - if (!e) return !1; - if ("InterpreterDirective" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDirective = function(e, t) { - if (!e) return !1; - if ("Directive" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDirectiveLiteral = function(e, t) { - if (!e) return !1; - if ("DirectiveLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBlockStatement = function(e, t) { - if (!e) return !1; - if ("BlockStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBreakStatement = function(e, t) { - if (!e) return !1; - if ("BreakStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isCallExpression = function(e, t) { - if (!e) return !1; - if ("CallExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isCatchClause = function(e, t) { - if (!e) return !1; - if ("CatchClause" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isConditionalExpression = function(e, t) { - if (!e) return !1; - if ("ConditionalExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isContinueStatement = function(e, t) { - if (!e) return !1; - if ("ContinueStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDebuggerStatement = function(e, t) { - if (!e) return !1; - if ("DebuggerStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDoWhileStatement = function(e, t) { - if (!e) return !1; - if ("DoWhileStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEmptyStatement = function(e, t) { - if (!e) return !1; - if ("EmptyStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExpressionStatement = function(e, t) { - if (!e) return !1; - if ("ExpressionStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isFile = function(e, t) { - if (!e) return !1; - if ("File" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isForInStatement = function(e, t) { - if (!e) return !1; - if ("ForInStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isForStatement = function(e, t) { - if (!e) return !1; - if ("ForStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isFunctionDeclaration = function(e, t) { - if (!e) return !1; - if ("FunctionDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isFunctionExpression = function(e, t) { - if (!e) return !1; - if ("FunctionExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isIdentifier = function(e, t) { - if (!e) return !1; - if ("Identifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isIfStatement = function(e, t) { - if (!e) return !1; - if ("IfStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isLabeledStatement = function(e, t) { - if (!e) return !1; - if ("LabeledStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isStringLiteral = function(e, t) { - if (!e) return !1; - if ("StringLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNumericLiteral = function(e, t) { - if (!e) return !1; - if ("NumericLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNullLiteral = function(e, t) { - if (!e) return !1; - if ("NullLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBooleanLiteral = function(e, t) { - if (!e) return !1; - if ("BooleanLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isRegExpLiteral = function(e, t) { - if (!e) return !1; - if ("RegExpLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isLogicalExpression = function(e, t) { - if (!e) return !1; - if ("LogicalExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isMemberExpression = function(e, t) { - if (!e) return !1; - if ("MemberExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNewExpression = function(e, t) { - if (!e) return !1; - if ("NewExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isProgram = function(e, t) { - if (!e) return !1; - if ("Program" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectExpression = function(e, t) { - if (!e) return !1; - if ("ObjectExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectMethod = function(e, t) { - if (!e) return !1; - if ("ObjectMethod" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectProperty = function(e, t) { - if (!e) return !1; - if ("ObjectProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isRestElement = function(e, t) { - if (!e) return !1; - if ("RestElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isReturnStatement = function(e, t) { - if (!e) return !1; - if ("ReturnStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSequenceExpression = function(e, t) { - if (!e) return !1; - if ("SequenceExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isParenthesizedExpression = function(e, t) { - if (!e) return !1; - if ("ParenthesizedExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSwitchCase = function(e, t) { - if (!e) return !1; - if ("SwitchCase" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSwitchStatement = function(e, t) { - if (!e) return !1; - if ("SwitchStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isThisExpression = function(e, t) { - if (!e) return !1; - if ("ThisExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isThrowStatement = function(e, t) { - if (!e) return !1; - if ("ThrowStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTryStatement = function(e, t) { - if (!e) return !1; - if ("TryStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isUnaryExpression = function(e, t) { - if (!e) return !1; - if ("UnaryExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isUpdateExpression = function(e, t) { - if (!e) return !1; - if ("UpdateExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isVariableDeclaration = function(e, t) { - if (!e) return !1; - if ("VariableDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isVariableDeclarator = function(e, t) { - if (!e) return !1; - if ("VariableDeclarator" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isWhileStatement = function(e, t) { - if (!e) return !1; - if ("WhileStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isWithStatement = function(e, t) { - if (!e) return !1; - if ("WithStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isAssignmentPattern = function(e, t) { - if (!e) return !1; - if ("AssignmentPattern" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isArrayPattern = function(e, t) { - if (!e) return !1; - if ("ArrayPattern" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isArrowFunctionExpression = function(e, t) { - if (!e) return !1; - if ("ArrowFunctionExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassBody = function(e, t) { - if (!e) return !1; - if ("ClassBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassExpression = function(e, t) { - if (!e) return !1; - if ("ClassExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassDeclaration = function(e, t) { - if (!e) return !1; - if ("ClassDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportAllDeclaration = function(e, t) { - if (!e) return !1; - if ("ExportAllDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportDefaultDeclaration = function(e, t) { - if (!e) return !1; - if ("ExportDefaultDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportNamedDeclaration = function(e, t) { - if (!e) return !1; - if ("ExportNamedDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportSpecifier = function(e, t) { - if (!e) return !1; - if ("ExportSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isForOfStatement = function(e, t) { - if (!e) return !1; - if ("ForOfStatement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImportDeclaration = function(e, t) { - if (!e) return !1; - if ("ImportDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImportDefaultSpecifier = function(e, t) { - if (!e) return !1; - if ("ImportDefaultSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImportNamespaceSpecifier = function(e, t) { - if (!e) return !1; - if ("ImportNamespaceSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImportSpecifier = function(e, t) { - if (!e) return !1; - if ("ImportSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isMetaProperty = function(e, t) { - if (!e) return !1; - if ("MetaProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassMethod = function(e, t) { - if (!e) return !1; - if ("ClassMethod" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectPattern = function(e, t) { - if (!e) return !1; - if ("ObjectPattern" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSpreadElement = function(e, t) { - if (!e) return !1; - if ("SpreadElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSuper = function(e, t) { - if (!e) return !1; - if ("Super" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTaggedTemplateExpression = function(e, t) { - if (!e) return !1; - if ("TaggedTemplateExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTemplateElement = function(e, t) { - if (!e) return !1; - if ("TemplateElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTemplateLiteral = function(e, t) { - if (!e) return !1; - if ("TemplateLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isYieldExpression = function(e, t) { - if (!e) return !1; - if ("YieldExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isAwaitExpression = function(e, t) { - if (!e) return !1; - if ("AwaitExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImport = function(e, t) { - if (!e) return !1; - if ("Import" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBigIntLiteral = function(e, t) { - if (!e) return !1; - if ("BigIntLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportNamespaceSpecifier = function(e, t) { - if (!e) return !1; - if ("ExportNamespaceSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isOptionalMemberExpression = function(e, t) { - if (!e) return !1; - if ("OptionalMemberExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isOptionalCallExpression = function(e, t) { - if (!e) return !1; - if ("OptionalCallExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassProperty = function(e, t) { - if (!e) return !1; - if ("ClassProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassPrivateProperty = function(e, t) { - if (!e) return !1; - if ("ClassPrivateProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassPrivateMethod = function(e, t) { - if (!e) return !1; - if ("ClassPrivateMethod" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isPrivateName = function(e, t) { - if (!e) return !1; - if ("PrivateName" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isAnyTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("AnyTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isArrayTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("ArrayTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBooleanTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("BooleanTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBooleanLiteralTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("BooleanLiteralTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNullLiteralTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("NullLiteralTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isClassImplements = function(e, t) { - if (!e) return !1; - if ("ClassImplements" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareClass = function(e, t) { - if (!e) return !1; - if ("DeclareClass" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareFunction = function(e, t) { - if (!e) return !1; - if ("DeclareFunction" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareInterface = function(e, t) { - if (!e) return !1; - if ("DeclareInterface" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareModule = function(e, t) { - if (!e) return !1; - if ("DeclareModule" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareModuleExports = function(e, t) { - if (!e) return !1; - if ("DeclareModuleExports" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareTypeAlias = function(e, t) { - if (!e) return !1; - if ("DeclareTypeAlias" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareOpaqueType = function(e, t) { - if (!e) return !1; - if ("DeclareOpaqueType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareVariable = function(e, t) { - if (!e) return !1; - if ("DeclareVariable" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareExportDeclaration = function(e, t) { - if (!e) return !1; - if ("DeclareExportDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclareExportAllDeclaration = function(e, t) { - if (!e) return !1; - if ("DeclareExportAllDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDeclaredPredicate = function(e, t) { - if (!e) return !1; - if ("DeclaredPredicate" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExistsTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("ExistsTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isFunctionTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("FunctionTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isFunctionTypeParam = function(e, t) { - if (!e) return !1; - if ("FunctionTypeParam" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isGenericTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("GenericTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isInferredPredicate = function(e, t) { - if (!e) return !1; - if ("InferredPredicate" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isInterfaceExtends = function(e, t) { - if (!e) return !1; - if ("InterfaceExtends" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isInterfaceDeclaration = function(e, t) { - if (!e) return !1; - if ("InterfaceDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isInterfaceTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("InterfaceTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isIntersectionTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("IntersectionTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isMixedTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("MixedTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEmptyTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("EmptyTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNullableTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("NullableTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNumberLiteralTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("NumberLiteralTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNumberTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("NumberTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("ObjectTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeInternalSlot = function(e, t) { - if (!e) return !1; - if ("ObjectTypeInternalSlot" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeCallProperty = function(e, t) { - if (!e) return !1; - if ("ObjectTypeCallProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeIndexer = function(e, t) { - if (!e) return !1; - if ("ObjectTypeIndexer" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeProperty = function(e, t) { - if (!e) return !1; - if ("ObjectTypeProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isObjectTypeSpreadProperty = function(e, t) { - if (!e) return !1; - if ("ObjectTypeSpreadProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isOpaqueType = function(e, t) { - if (!e) return !1; - if ("OpaqueType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isQualifiedTypeIdentifier = function(e, t) { - if (!e) return !1; - if ("QualifiedTypeIdentifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isStringLiteralTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("StringLiteralTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isStringTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("StringTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSymbolTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("SymbolTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isThisTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("ThisTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTupleTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("TupleTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeofTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("TypeofTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeAlias = function(e, t) { - if (!e) return !1; - if ("TypeAlias" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("TypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeCastExpression = function(e, t) { - if (!e) return !1; - if ("TypeCastExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeParameter = function(e, t) { - if (!e) return !1; - if ("TypeParameter" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeParameterDeclaration = function(e, t) { - if (!e) return !1; - if ("TypeParameterDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTypeParameterInstantiation = function(e, t) { - if (!e) return !1; - if ("TypeParameterInstantiation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isUnionTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("UnionTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isVariance = function(e, t) { - if (!e) return !1; - if ("Variance" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isVoidTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("VoidTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumDeclaration = function(e, t) { - if (!e) return !1; - if ("EnumDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumBooleanBody = function(e, t) { - if (!e) return !1; - if ("EnumBooleanBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumNumberBody = function(e, t) { - if (!e) return !1; - if ("EnumNumberBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumStringBody = function(e, t) { - if (!e) return !1; - if ("EnumStringBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumSymbolBody = function(e, t) { - if (!e) return !1; - if ("EnumSymbolBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumBooleanMember = function(e, t) { - if (!e) return !1; - if ("EnumBooleanMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumNumberMember = function(e, t) { - if (!e) return !1; - if ("EnumNumberMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumStringMember = function(e, t) { - if (!e) return !1; - if ("EnumStringMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isEnumDefaultedMember = function(e, t) { - if (!e) return !1; - if ("EnumDefaultedMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isIndexedAccessType = function(e, t) { - if (!e) return !1; - if ("IndexedAccessType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isOptionalIndexedAccessType = function(e, t) { - if (!e) return !1; - if ("OptionalIndexedAccessType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXAttribute = function(e, t) { - if (!e) return !1; - if ("JSXAttribute" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXClosingElement = function(e, t) { - if (!e) return !1; - if ("JSXClosingElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXElement = function(e, t) { - if (!e) return !1; - if ("JSXElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXEmptyExpression = function(e, t) { - if (!e) return !1; - if ("JSXEmptyExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXExpressionContainer = function(e, t) { - if (!e) return !1; - if ("JSXExpressionContainer" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXSpreadChild = function(e, t) { - if (!e) return !1; - if ("JSXSpreadChild" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXIdentifier = function(e, t) { - if (!e) return !1; - if ("JSXIdentifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXMemberExpression = function(e, t) { - if (!e) return !1; - if ("JSXMemberExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXNamespacedName = function(e, t) { - if (!e) return !1; - if ("JSXNamespacedName" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXOpeningElement = function(e, t) { - if (!e) return !1; - if ("JSXOpeningElement" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXSpreadAttribute = function(e, t) { - if (!e) return !1; - if ("JSXSpreadAttribute" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXText = function(e, t) { - if (!e) return !1; - if ("JSXText" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXFragment = function(e, t) { - if (!e) return !1; - if ("JSXFragment" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXOpeningFragment = function(e, t) { - if (!e) return !1; - if ("JSXOpeningFragment" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isJSXClosingFragment = function(e, t) { - if (!e) return !1; - if ("JSXClosingFragment" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isNoop = function(e, t) { - if (!e) return !1; - if ("Noop" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isPlaceholder = function(e, t) { - if (!e) return !1; - if ("Placeholder" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isV8IntrinsicIdentifier = function(e, t) { - if (!e) return !1; - if ("V8IntrinsicIdentifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isArgumentPlaceholder = function(e, t) { - if (!e) return !1; - if ("ArgumentPlaceholder" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isBindExpression = function(e, t) { - if (!e) return !1; - if ("BindExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isImportAttribute = function(e, t) { - if (!e) return !1; - if ("ImportAttribute" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDecorator = function(e, t) { - if (!e) return !1; - if ("Decorator" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDoExpression = function(e, t) { - if (!e) return !1; - if ("DoExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExportDefaultSpecifier = function(e, t) { - if (!e) return !1; - if ("ExportDefaultSpecifier" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isRecordExpression = function(e, t) { - if (!e) return !1; - if ("RecordExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTupleExpression = function(e, t) { - if (!e) return !1; - if ("TupleExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isDecimalLiteral = function(e, t) { - if (!e) return !1; - if ("DecimalLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isStaticBlock = function(e, t) { - if (!e) return !1; - if ("StaticBlock" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isModuleExpression = function(e, t) { - if (!e) return !1; - if ("ModuleExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTopicReference = function(e, t) { - if (!e) return !1; - if ("TopicReference" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isPipelineTopicExpression = function(e, t) { - if (!e) return !1; - if ("PipelineTopicExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isPipelineBareFunction = function(e, t) { - if (!e) return !1; - if ("PipelineBareFunction" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isPipelinePrimaryTopicReference = function(e, t) { - if (!e) return !1; - if ("PipelinePrimaryTopicReference" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSParameterProperty = function(e, t) { - if (!e) return !1; - if ("TSParameterProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSDeclareFunction = function(e, t) { - if (!e) return !1; - if ("TSDeclareFunction" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSDeclareMethod = function(e, t) { - if (!e) return !1; - if ("TSDeclareMethod" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSQualifiedName = function(e, t) { - if (!e) return !1; - if ("TSQualifiedName" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSCallSignatureDeclaration = function(e, t) { - if (!e) return !1; - if ("TSCallSignatureDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSConstructSignatureDeclaration = function(e, t) { - if (!e) return !1; - if ("TSConstructSignatureDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSPropertySignature = function(e, t) { - if (!e) return !1; - if ("TSPropertySignature" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSMethodSignature = function(e, t) { - if (!e) return !1; - if ("TSMethodSignature" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSIndexSignature = function(e, t) { - if (!e) return !1; - if ("TSIndexSignature" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSAnyKeyword = function(e, t) { - if (!e) return !1; - if ("TSAnyKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSBooleanKeyword = function(e, t) { - if (!e) return !1; - if ("TSBooleanKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSBigIntKeyword = function(e, t) { - if (!e) return !1; - if ("TSBigIntKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSIntrinsicKeyword = function(e, t) { - if (!e) return !1; - if ("TSIntrinsicKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNeverKeyword = function(e, t) { - if (!e) return !1; - if ("TSNeverKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNullKeyword = function(e, t) { - if (!e) return !1; - if ("TSNullKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNumberKeyword = function(e, t) { - if (!e) return !1; - if ("TSNumberKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSObjectKeyword = function(e, t) { - if (!e) return !1; - if ("TSObjectKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSStringKeyword = function(e, t) { - if (!e) return !1; - if ("TSStringKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSSymbolKeyword = function(e, t) { - if (!e) return !1; - if ("TSSymbolKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSUndefinedKeyword = function(e, t) { - if (!e) return !1; - if ("TSUndefinedKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSUnknownKeyword = function(e, t) { - if (!e) return !1; - if ("TSUnknownKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSVoidKeyword = function(e, t) { - if (!e) return !1; - if ("TSVoidKeyword" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSThisType = function(e, t) { - if (!e) return !1; - if ("TSThisType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSFunctionType = function(e, t) { - if (!e) return !1; - if ("TSFunctionType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSConstructorType = function(e, t) { - if (!e) return !1; - if ("TSConstructorType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeReference = function(e, t) { - if (!e) return !1; - if ("TSTypeReference" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypePredicate = function(e, t) { - if (!e) return !1; - if ("TSTypePredicate" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeQuery = function(e, t) { - if (!e) return !1; - if ("TSTypeQuery" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeLiteral = function(e, t) { - if (!e) return !1; - if ("TSTypeLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSArrayType = function(e, t) { - if (!e) return !1; - if ("TSArrayType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTupleType = function(e, t) { - if (!e) return !1; - if ("TSTupleType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSOptionalType = function(e, t) { - if (!e) return !1; - if ("TSOptionalType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSRestType = function(e, t) { - if (!e) return !1; - if ("TSRestType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNamedTupleMember = function(e, t) { - if (!e) return !1; - if ("TSNamedTupleMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSUnionType = function(e, t) { - if (!e) return !1; - if ("TSUnionType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSIntersectionType = function(e, t) { - if (!e) return !1; - if ("TSIntersectionType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSConditionalType = function(e, t) { - if (!e) return !1; - if ("TSConditionalType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSInferType = function(e, t) { - if (!e) return !1; - if ("TSInferType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSParenthesizedType = function(e, t) { - if (!e) return !1; - if ("TSParenthesizedType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeOperator = function(e, t) { - if (!e) return !1; - if ("TSTypeOperator" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSIndexedAccessType = function(e, t) { - if (!e) return !1; - if ("TSIndexedAccessType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSMappedType = function(e, t) { - if (!e) return !1; - if ("TSMappedType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSLiteralType = function(e, t) { - if (!e) return !1; - if ("TSLiteralType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSExpressionWithTypeArguments = function(e, t) { - if (!e) return !1; - if ("TSExpressionWithTypeArguments" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSInterfaceDeclaration = function(e, t) { - if (!e) return !1; - if ("TSInterfaceDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSInterfaceBody = function(e, t) { - if (!e) return !1; - if ("TSInterfaceBody" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeAliasDeclaration = function(e, t) { - if (!e) return !1; - if ("TSTypeAliasDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSAsExpression = function(e, t) { - if (!e) return !1; - if ("TSAsExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeAssertion = function(e, t) { - if (!e) return !1; - if ("TSTypeAssertion" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSEnumDeclaration = function(e, t) { - if (!e) return !1; - if ("TSEnumDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSEnumMember = function(e, t) { - if (!e) return !1; - if ("TSEnumMember" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSModuleDeclaration = function(e, t) { - if (!e) return !1; - if ("TSModuleDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSModuleBlock = function(e, t) { - if (!e) return !1; - if ("TSModuleBlock" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSImportType = function(e, t) { - if (!e) return !1; - if ("TSImportType" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSImportEqualsDeclaration = function(e, t) { - if (!e) return !1; - if ("TSImportEqualsDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSExternalModuleReference = function(e, t) { - if (!e) return !1; - if ("TSExternalModuleReference" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNonNullExpression = function(e, t) { - if (!e) return !1; - if ("TSNonNullExpression" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSExportAssignment = function(e, t) { - if (!e) return !1; - if ("TSExportAssignment" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSNamespaceExportDeclaration = function(e, t) { - if (!e) return !1; - if ("TSNamespaceExportDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeAnnotation = function(e, t) { - if (!e) return !1; - if ("TSTypeAnnotation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeParameterInstantiation = function(e, t) { - if (!e) return !1; - if ("TSTypeParameterInstantiation" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeParameterDeclaration = function(e, t) { - if (!e) return !1; - if ("TSTypeParameterDeclaration" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isTSTypeParameter = function(e, t) { - if (!e) return !1; - if ("TSTypeParameter" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isExpression = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ArrayExpression" === n || "AssignmentExpression" === n || "BinaryExpression" === n || "CallExpression" === n || "ConditionalExpression" === n || "FunctionExpression" === n || "Identifier" === n || "StringLiteral" === n || "NumericLiteral" === n || "NullLiteral" === n || "BooleanLiteral" === n || "RegExpLiteral" === n || "LogicalExpression" === n || "MemberExpression" === n || "NewExpression" === n || "ObjectExpression" === n || "SequenceExpression" === n || "ParenthesizedExpression" === n || "ThisExpression" === n || "UnaryExpression" === n || "UpdateExpression" === n || "ArrowFunctionExpression" === n || "ClassExpression" === n || "MetaProperty" === n || "Super" === n || "TaggedTemplateExpression" === n || "TemplateLiteral" === n || "YieldExpression" === n || "AwaitExpression" === n || "Import" === n || "BigIntLiteral" === n || "OptionalMemberExpression" === n || "OptionalCallExpression" === n || "TypeCastExpression" === n || "JSXElement" === n || "JSXFragment" === n || "BindExpression" === n || "DoExpression" === n || "RecordExpression" === n || "TupleExpression" === n || "DecimalLiteral" === n || "ModuleExpression" === n || "TopicReference" === n || "PipelineTopicExpression" === n || "PipelineBareFunction" === n || "PipelinePrimaryTopicReference" === n || "TSAsExpression" === n || "TSTypeAssertion" === n || "TSNonNullExpression" === n || "Placeholder" === n && ("Expression" === e.expectedNode || "Identifier" === e.expectedNode || "StringLiteral" === e.expectedNode)) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isBinary = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BinaryExpression" === n || "LogicalExpression" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isScopable = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BlockStatement" === n || "CatchClause" === n || "DoWhileStatement" === n || "ForInStatement" === n || "ForStatement" === n || "FunctionDeclaration" === n || "FunctionExpression" === n || "Program" === n || "ObjectMethod" === n || "SwitchStatement" === n || "WhileStatement" === n || "ArrowFunctionExpression" === n || "ClassExpression" === n || "ClassDeclaration" === n || "ForOfStatement" === n || "ClassMethod" === n || "ClassPrivateMethod" === n || "StaticBlock" === n || "TSModuleBlock" === n || "Placeholder" === n && "BlockStatement" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isBlockParent = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BlockStatement" === n || "CatchClause" === n || "DoWhileStatement" === n || "ForInStatement" === n || "ForStatement" === n || "FunctionDeclaration" === n || "FunctionExpression" === n || "Program" === n || "ObjectMethod" === n || "SwitchStatement" === n || "WhileStatement" === n || "ArrowFunctionExpression" === n || "ForOfStatement" === n || "ClassMethod" === n || "ClassPrivateMethod" === n || "StaticBlock" === n || "TSModuleBlock" === n || "Placeholder" === n && "BlockStatement" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isBlock = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BlockStatement" === n || "Program" === n || "TSModuleBlock" === n || "Placeholder" === n && "BlockStatement" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isStatement = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BlockStatement" === n || "BreakStatement" === n || "ContinueStatement" === n || "DebuggerStatement" === n || "DoWhileStatement" === n || "EmptyStatement" === n || "ExpressionStatement" === n || "ForInStatement" === n || "ForStatement" === n || "FunctionDeclaration" === n || "IfStatement" === n || "LabeledStatement" === n || "ReturnStatement" === n || "SwitchStatement" === n || "ThrowStatement" === n || "TryStatement" === n || "VariableDeclaration" === n || "WhileStatement" === n || "WithStatement" === n || "ClassDeclaration" === n || "ExportAllDeclaration" === n || "ExportDefaultDeclaration" === n || "ExportNamedDeclaration" === n || "ForOfStatement" === n || "ImportDeclaration" === n || "DeclareClass" === n || "DeclareFunction" === n || "DeclareInterface" === n || "DeclareModule" === n || "DeclareModuleExports" === n || "DeclareTypeAlias" === n || "DeclareOpaqueType" === n || "DeclareVariable" === n || "DeclareExportDeclaration" === n || "DeclareExportAllDeclaration" === n || "InterfaceDeclaration" === n || "OpaqueType" === n || "TypeAlias" === n || "EnumDeclaration" === n || "TSDeclareFunction" === n || "TSInterfaceDeclaration" === n || "TSTypeAliasDeclaration" === n || "TSEnumDeclaration" === n || "TSModuleDeclaration" === n || "TSImportEqualsDeclaration" === n || "TSExportAssignment" === n || "TSNamespaceExportDeclaration" === n || "Placeholder" === n && ("Statement" === e.expectedNode || "Declaration" === e.expectedNode || "BlockStatement" === e.expectedNode)) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isTerminatorless = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BreakStatement" === n || "ContinueStatement" === n || "ReturnStatement" === n || "ThrowStatement" === n || "YieldExpression" === n || "AwaitExpression" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isCompletionStatement = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("BreakStatement" === n || "ContinueStatement" === n || "ReturnStatement" === n || "ThrowStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isConditional = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ConditionalExpression" === n || "IfStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isLoop = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("DoWhileStatement" === n || "ForInStatement" === n || "ForStatement" === n || "WhileStatement" === n || "ForOfStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isWhile = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("DoWhileStatement" === n || "WhileStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isExpressionWrapper = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ExpressionStatement" === n || "ParenthesizedExpression" === n || "TypeCastExpression" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFor = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ForInStatement" === n || "ForStatement" === n || "ForOfStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isForXStatement = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ForInStatement" === n || "ForOfStatement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFunction = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("FunctionDeclaration" === n || "FunctionExpression" === n || "ObjectMethod" === n || "ArrowFunctionExpression" === n || "ClassMethod" === n || "ClassPrivateMethod" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFunctionParent = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("FunctionDeclaration" === n || "FunctionExpression" === n || "ObjectMethod" === n || "ArrowFunctionExpression" === n || "ClassMethod" === n || "ClassPrivateMethod" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isPureish = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("FunctionDeclaration" === n || "FunctionExpression" === n || "StringLiteral" === n || "NumericLiteral" === n || "NullLiteral" === n || "BooleanLiteral" === n || "RegExpLiteral" === n || "ArrowFunctionExpression" === n || "BigIntLiteral" === n || "DecimalLiteral" === n || "Placeholder" === n && "StringLiteral" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isDeclaration = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("FunctionDeclaration" === n || "VariableDeclaration" === n || "ClassDeclaration" === n || "ExportAllDeclaration" === n || "ExportDefaultDeclaration" === n || "ExportNamedDeclaration" === n || "ImportDeclaration" === n || "DeclareClass" === n || "DeclareFunction" === n || "DeclareInterface" === n || "DeclareModule" === n || "DeclareModuleExports" === n || "DeclareTypeAlias" === n || "DeclareOpaqueType" === n || "DeclareVariable" === n || "DeclareExportDeclaration" === n || "DeclareExportAllDeclaration" === n || "InterfaceDeclaration" === n || "OpaqueType" === n || "TypeAlias" === n || "EnumDeclaration" === n || "TSDeclareFunction" === n || "TSInterfaceDeclaration" === n || "TSTypeAliasDeclaration" === n || "TSEnumDeclaration" === n || "TSModuleDeclaration" === n || "Placeholder" === n && "Declaration" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isPatternLike = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("Identifier" === n || "RestElement" === n || "AssignmentPattern" === n || "ArrayPattern" === n || "ObjectPattern" === n || "Placeholder" === n && ("Pattern" === e.expectedNode || "Identifier" === e.expectedNode)) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isLVal = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("Identifier" === n || "MemberExpression" === n || "RestElement" === n || "AssignmentPattern" === n || "ArrayPattern" === n || "ObjectPattern" === n || "TSParameterProperty" === n || "Placeholder" === n && ("Pattern" === e.expectedNode || "Identifier" === e.expectedNode)) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isTSEntityName = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("Identifier" === n || "TSQualifiedName" === n || "Placeholder" === n && "Identifier" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isLiteral = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("StringLiteral" === n || "NumericLiteral" === n || "NullLiteral" === n || "BooleanLiteral" === n || "RegExpLiteral" === n || "TemplateLiteral" === n || "BigIntLiteral" === n || "DecimalLiteral" === n || "Placeholder" === n && "StringLiteral" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isImmutable = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("StringLiteral" === n || "NumericLiteral" === n || "NullLiteral" === n || "BooleanLiteral" === n || "BigIntLiteral" === n || "JSXAttribute" === n || "JSXClosingElement" === n || "JSXElement" === n || "JSXExpressionContainer" === n || "JSXSpreadChild" === n || "JSXOpeningElement" === n || "JSXText" === n || "JSXFragment" === n || "JSXOpeningFragment" === n || "JSXClosingFragment" === n || "DecimalLiteral" === n || "Placeholder" === n && "StringLiteral" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isUserWhitespacable = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ObjectMethod" === n || "ObjectProperty" === n || "ObjectTypeInternalSlot" === n || "ObjectTypeCallProperty" === n || "ObjectTypeIndexer" === n || "ObjectTypeProperty" === n || "ObjectTypeSpreadProperty" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isMethod = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ObjectMethod" === n || "ClassMethod" === n || "ClassPrivateMethod" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isObjectMember = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ObjectMethod" === n || "ObjectProperty" === n) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isProperty = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ObjectProperty" === n || "ClassProperty" === n || "ClassPrivateProperty" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isUnaryLike = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("UnaryExpression" === n || "SpreadElement" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isPattern = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("AssignmentPattern" === n || "ArrayPattern" === n || "ObjectPattern" === n || "Placeholder" === n && "Pattern" === e.expectedNode) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isClass = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ClassExpression" === n || "ClassDeclaration" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isModuleDeclaration = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ExportAllDeclaration" === n || "ExportDefaultDeclaration" === n || "ExportNamedDeclaration" === n || "ImportDeclaration" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isExportDeclaration = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ExportAllDeclaration" === n || "ExportDefaultDeclaration" === n || "ExportNamedDeclaration" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isModuleSpecifier = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ExportSpecifier" === n || "ImportDefaultSpecifier" === n || "ImportNamespaceSpecifier" === n || "ImportSpecifier" === n || "ExportNamespaceSpecifier" === n || "ExportDefaultSpecifier" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isPrivate = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("ClassPrivateProperty" === n || "ClassPrivateMethod" === n || "PrivateName" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFlow = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("AnyTypeAnnotation" === n || "ArrayTypeAnnotation" === n || "BooleanTypeAnnotation" === n || "BooleanLiteralTypeAnnotation" === n || "NullLiteralTypeAnnotation" === n || "ClassImplements" === n || "DeclareClass" === n || "DeclareFunction" === n || "DeclareInterface" === n || "DeclareModule" === n || "DeclareModuleExports" === n || "DeclareTypeAlias" === n || "DeclareOpaqueType" === n || "DeclareVariable" === n || "DeclareExportDeclaration" === n || "DeclareExportAllDeclaration" === n || "DeclaredPredicate" === n || "ExistsTypeAnnotation" === n || "FunctionTypeAnnotation" === n || "FunctionTypeParam" === n || "GenericTypeAnnotation" === n || "InferredPredicate" === n || "InterfaceExtends" === n || "InterfaceDeclaration" === n || "InterfaceTypeAnnotation" === n || "IntersectionTypeAnnotation" === n || "MixedTypeAnnotation" === n || "EmptyTypeAnnotation" === n || "NullableTypeAnnotation" === n || "NumberLiteralTypeAnnotation" === n || "NumberTypeAnnotation" === n || "ObjectTypeAnnotation" === n || "ObjectTypeInternalSlot" === n || "ObjectTypeCallProperty" === n || "ObjectTypeIndexer" === n || "ObjectTypeProperty" === n || "ObjectTypeSpreadProperty" === n || "OpaqueType" === n || "QualifiedTypeIdentifier" === n || "StringLiteralTypeAnnotation" === n || "StringTypeAnnotation" === n || "SymbolTypeAnnotation" === n || "ThisTypeAnnotation" === n || "TupleTypeAnnotation" === n || "TypeofTypeAnnotation" === n || "TypeAlias" === n || "TypeAnnotation" === n || "TypeCastExpression" === n || "TypeParameter" === n || "TypeParameterDeclaration" === n || "TypeParameterInstantiation" === n || "UnionTypeAnnotation" === n || "Variance" === n || "VoidTypeAnnotation" === n || "IndexedAccessType" === n || "OptionalIndexedAccessType" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFlowType = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("AnyTypeAnnotation" === n || "ArrayTypeAnnotation" === n || "BooleanTypeAnnotation" === n || "BooleanLiteralTypeAnnotation" === n || "NullLiteralTypeAnnotation" === n || "ExistsTypeAnnotation" === n || "FunctionTypeAnnotation" === n || "GenericTypeAnnotation" === n || "InterfaceTypeAnnotation" === n || "IntersectionTypeAnnotation" === n || "MixedTypeAnnotation" === n || "EmptyTypeAnnotation" === n || "NullableTypeAnnotation" === n || "NumberLiteralTypeAnnotation" === n || "NumberTypeAnnotation" === n || "ObjectTypeAnnotation" === n || "StringLiteralTypeAnnotation" === n || "StringTypeAnnotation" === n || "SymbolTypeAnnotation" === n || "ThisTypeAnnotation" === n || "TupleTypeAnnotation" === n || "TypeofTypeAnnotation" === n || "UnionTypeAnnotation" === n || "VoidTypeAnnotation" === n || "IndexedAccessType" === n || "OptionalIndexedAccessType" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFlowBaseAnnotation = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("AnyTypeAnnotation" === n || "BooleanTypeAnnotation" === n || "NullLiteralTypeAnnotation" === n || "MixedTypeAnnotation" === n || "EmptyTypeAnnotation" === n || "NumberTypeAnnotation" === n || "StringTypeAnnotation" === n || "SymbolTypeAnnotation" === n || "ThisTypeAnnotation" === n || "VoidTypeAnnotation" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFlowDeclaration = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("DeclareClass" === n || "DeclareFunction" === n || "DeclareInterface" === n || "DeclareModule" === n || "DeclareModuleExports" === n || "DeclareTypeAlias" === n || "DeclareOpaqueType" === n || "DeclareVariable" === n || "DeclareExportDeclaration" === n || "DeclareExportAllDeclaration" === n || "InterfaceDeclaration" === n || "OpaqueType" === n || "TypeAlias" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isFlowPredicate = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("DeclaredPredicate" === n || "InferredPredicate" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isEnumBody = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("EnumBooleanBody" === n || "EnumNumberBody" === n || "EnumStringBody" === n || "EnumSymbolBody" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isEnumMember = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("EnumBooleanMember" === n || "EnumNumberMember" === n || "EnumStringMember" === n || "EnumDefaultedMember" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isJSX = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("JSXAttribute" === n || "JSXClosingElement" === n || "JSXElement" === n || "JSXEmptyExpression" === n || "JSXExpressionContainer" === n || "JSXSpreadChild" === n || "JSXIdentifier" === n || "JSXMemberExpression" === n || "JSXNamespacedName" === n || "JSXOpeningElement" === n || "JSXSpreadAttribute" === n || "JSXText" === n || "JSXFragment" === n || "JSXOpeningFragment" === n || "JSXClosingFragment" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isTSTypeElement = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("TSCallSignatureDeclaration" === n || "TSConstructSignatureDeclaration" === n || "TSPropertySignature" === n || "TSMethodSignature" === n || "TSIndexSignature" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isTSType = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("TSAnyKeyword" === n || "TSBooleanKeyword" === n || "TSBigIntKeyword" === n || "TSIntrinsicKeyword" === n || "TSNeverKeyword" === n || "TSNullKeyword" === n || "TSNumberKeyword" === n || "TSObjectKeyword" === n || "TSStringKeyword" === n || "TSSymbolKeyword" === n || "TSUndefinedKeyword" === n || "TSUnknownKeyword" === n || "TSVoidKeyword" === n || "TSThisType" === n || "TSFunctionType" === n || "TSConstructorType" === n || "TSTypeReference" === n || "TSTypePredicate" === n || "TSTypeQuery" === n || "TSTypeLiteral" === n || "TSArrayType" === n || "TSTupleType" === n || "TSOptionalType" === n || "TSRestType" === n || "TSUnionType" === n || "TSIntersectionType" === n || "TSConditionalType" === n || "TSInferType" === n || "TSParenthesizedType" === n || "TSTypeOperator" === n || "TSIndexedAccessType" === n || "TSMappedType" === n || "TSLiteralType" === n || "TSExpressionWithTypeArguments" === n || "TSImportType" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isTSBaseType = function(e, t) { - if (!e) return !1; - const n = e.type; - if ("TSAnyKeyword" === n || "TSBooleanKeyword" === n || "TSBigIntKeyword" === n || "TSIntrinsicKeyword" === n || "TSNeverKeyword" === n || "TSNullKeyword" === n || "TSNumberKeyword" === n || "TSObjectKeyword" === n || "TSStringKeyword" === n || "TSSymbolKeyword" === n || "TSUndefinedKeyword" === n || "TSUnknownKeyword" === n || "TSVoidKeyword" === n || "TSThisType" === n || "TSLiteralType" === n) return void 0 === t || (0, - r.default)(e, t); - return !1; - }; - n.isNumberLiteral = function(e, t) { - console.trace("The node type NumberLiteral has been renamed to NumericLiteral"); - if (!e) return !1; - if ("NumberLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isRegexLiteral = function(e, t) { - console.trace("The node type RegexLiteral has been renamed to RegExpLiteral"); - if (!e) return !1; - if ("RegexLiteral" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isRestProperty = function(e, t) { - console.trace("The node type RestProperty has been renamed to RestElement"); - if (!e) return !1; - if ("RestProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - n.isSpreadProperty = function(e, t) { - console.trace("The node type SpreadProperty has been renamed to SpreadElement"); - if (!e) return !1; - if ("SpreadProperty" === e.type) return void 0 === t || (0, r.default)(e, t); - return !1; - }; - var r = e("../../utils/shallowEqual"); - }, { - "../../utils/shallowEqual": 122 - } ], - 125: [ function(e, t, n) { - "use strict"; - var r, i, s, a; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - if (!t) return !1; - if (!(0, i.default)(t.type, e)) return !n && "Placeholder" === t.type && e in a.FLIPPED_ALIAS_KEYS && (0, - s.default)(t.expectedNode, e); - return void 0 === n || (0, r.default)(t, n); - }; - r = e("../utils/shallowEqual"); - i = e("./isType"); - s = e("./isPlaceholderType"); - a = e("../definitions"); - }, { - "../definitions": 102, - "../utils/shallowEqual": 122, - "./isPlaceholderType": 132, - "./isType": 136 - } ], - 126: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - if (n && "Identifier" === e.type && "ObjectProperty" === t.type && "ObjectExpression" === n.type) return !1; - const i = r.default.keys[t.type]; - if (i) for (let n = 0; n < i.length; n++) { - const r = i[n]; - const s = t[r]; - if (Array.isArray(s)) { - if (s.indexOf(e) >= 0) return !0; - } else if (s === e) return !0; - } - return !1; - }; - var r = e("../retrievers/getBindingIdentifiers"); - }, { - "../retrievers/getBindingIdentifiers": 116 - } ], - 127: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.isFunctionDeclaration)(e) || (0, r.isClassDeclaration)(e) || (0, i.default)(e); - }; - r = e("./generated"); - i = e("./isLet"); - }, { - "./generated": 124, - "./isLet": 129 - } ], - 128: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - if ((0, r.default)(e.type, "Immutable")) return !0; - if ((0, i.isIdentifier)(e)) return "undefined" === e.name; - return !1; - }; - r = e("./isType"); - i = e("./generated"); - }, { - "./generated": 124, - "./isType": 136 - } ], - 129: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.isVariableDeclaration)(e) && ("var" !== e.kind || e[i.BLOCK_SCOPED_SYMBOL]); - }; - r = e("./generated"); - i = e("../constants"); - }, { - "../constants": 87, - "./generated": 124 - } ], - 130: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return !(!e || !r.VISITOR_KEYS[e.type]); - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 131: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function e(t, n) { - if ("object" != typeof t || "object" != typeof n || null == t || null == n) return t === n; - if (t.type !== n.type) return !1; - const i = Object.keys(r.NODE_FIELDS[t.type] || t.type); - const s = r.VISITOR_KEYS[t.type]; - for (const r of i) { - if (typeof t[r] != typeof n[r]) return !1; - if (null != t[r] || null != n[r]) { - if (null == t[r] || null == n[r]) return !1; - if (Array.isArray(t[r])) { - if (!Array.isArray(n[r])) return !1; - if (t[r].length !== n[r].length) return !1; - for (let i = 0; i < t[r].length; i++) if (!e(t[r][i], n[r][i])) return !1; - } else if ("object" != typeof t[r] || null != s && s.includes(r)) { - if (!e(t[r], n[r])) return !1; - } else for (const e of Object.keys(t[r])) if (t[r][e] !== n[r][e]) return !1; - } - } - return !0; - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 132: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if (e === t) return !0; - const n = r.PLACEHOLDERS_ALIAS[e]; - if (n) for (const e of n) if (t === e) return !0; - return !1; - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 133: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - switch (t.type) { - case "MemberExpression": - case "OptionalMemberExpression": - return t.property === e ? !!t.computed : t.object === e; - - case "JSXMemberExpression": - return t.object === e; - - case "VariableDeclarator": - return t.init === e; - - case "ArrowFunctionExpression": - return t.body === e; - - case "PrivateName": - return !1; - - case "ClassMethod": - case "ClassPrivateMethod": - case "ObjectMethod": - return t.key === e && !!t.computed; - - case "ObjectProperty": - return t.key === e ? !!t.computed : !n || "ObjectPattern" !== n.type; - - case "ClassProperty": - return t.key !== e || !!t.computed; - - case "ClassPrivateProperty": - return t.key !== e; - - case "ClassDeclaration": - case "ClassExpression": - return t.superClass === e; - - case "AssignmentExpression": - case "AssignmentPattern": - return t.right === e; - - case "LabeledStatement": - case "CatchClause": - case "RestElement": - return !1; - - case "BreakStatement": - case "ContinueStatement": - return !1; - - case "FunctionDeclaration": - case "FunctionExpression": - return !1; - - case "ExportNamespaceSpecifier": - case "ExportDefaultSpecifier": - return !1; - - case "ExportSpecifier": - return (null == n || !n.source) && t.local === e; - - case "ImportDefaultSpecifier": - case "ImportNamespaceSpecifier": - case "ImportSpecifier": - case "ImportAttribute": - case "JSXAttribute": - return !1; - - case "ObjectPattern": - case "ArrayPattern": - case "MetaProperty": - return !1; - - case "ObjectTypeProperty": - return t.key !== e; - - case "TSEnumMember": - return t.id !== e; - - case "TSPropertySignature": - return t.key !== e || !!t.computed; - } - return !0; - }; - }, {} ], - 134: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if ((0, r.isBlockStatement)(e) && ((0, r.isFunction)(t) || (0, r.isCatchClause)(t))) return !1; - if ((0, r.isPattern)(e) && ((0, r.isFunction)(t) || (0, r.isCatchClause)(t))) return !0; - return (0, r.isScopable)(e); - }; - var r = e("./generated"); - }, { - "./generated": 124 - } ], - 135: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.isImportDefaultSpecifier)(e) || (0, r.isIdentifier)(e.imported || e.exported, { - name: "default" - }); - }; - var r = e("./generated"); - }, { - "./generated": 124 - } ], - 136: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t) { - if (e === t) return !0; - if (r.ALIAS_KEYS[t]) return !1; - const n = r.FLIPPED_ALIAS_KEYS[t]; - if (n) { - if (n[0] === e) return !0; - for (const t of n) if (e === t) return !0; - } - return !1; - }; - var r = e("../definitions"); - }, { - "../definitions": 102 - } ], - 137: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.default)(e) && !i.has(e); - }; - var r = e("./isValidIdentifier"); - const i = new Set([ "abstract", "boolean", "byte", "char", "double", "enum", "final", "float", "goto", "implements", "int", "interface", "long", "native", "package", "private", "protected", "public", "short", "static", "synchronized", "throws", "transient", "volatile" ]); - }, { - "./isValidIdentifier": 138 - } ], - 138: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t = !0) { - if ("string" != typeof e) return !1; - if (t && ((0, r.isKeyword)(e) || (0, r.isStrictReservedWord)(e, !0))) return !1; - return (0, r.isIdentifierName)(e); - }; - var r = e("@babel/helper-validator-identifier"); - }, { - "@babel/helper-validator-identifier": 27 - } ], - 139: [ function(e, t, n) { - "use strict"; - var r, i; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return (0, r.isVariableDeclaration)(e, { - kind: "var" - }) && !e[i.BLOCK_SCOPED_SYMBOL]; - }; - r = e("./generated"); - i = e("../constants"); - }, { - "../constants": 87, - "./generated": 124 - } ], - 140: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - if (!(0, r.isMemberExpression)(e)) return !1; - const i = Array.isArray(t) ? t : t.split("."); - const s = []; - let a; - for (a = e; (0, r.isMemberExpression)(a); a = a.object) s.push(a.property); - s.push(a); - if (s.length < i.length) return !1; - if (!n && s.length > i.length) return !1; - for (let e = 0, t = s.length - 1; e < i.length; e++, t--) { - const n = s[t]; - let a; - if ((0, r.isIdentifier)(n)) a = n.name; else if ((0, r.isStringLiteral)(n)) a = n.value; else { - if (!(0, r.isThisExpression)(n)) return !1; - a = "this"; - } - if (i[e] !== a) return !1; - } - return !0; - }; - var r = e("./generated"); - }, { - "./generated": 124 - } ], - 141: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e) { - return !!e && /^[a-z]/.test(e); - }; - }, {} ], - 142: [ function(e, t, n) { - "use strict"; - var r; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = void 0; - r = (0, e("../buildMatchMemberExpression").default)("React.Component"); - n.default = r; - }, { - "../buildMatchMemberExpression": 123 - } ], - 143: [ function(e, t, n) { - "use strict"; - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = function(e, t, n) { - if (!e) return; - const a = r.NODE_FIELDS[e.type]; - if (!a) return; - const o = a[t]; - i(e, t, n, o); - s(e, t, n); - }; - n.validateField = i; - n.validateChild = s; - var r = e("../definitions"); - function i(e, t, n, r) { - null != r && r.validate && (r.optional && null == n || r.validate(e, t, n)); - } - function s(e, t, n) { - if (null == n) return; - const i = r.NODE_PARENT_VALIDATIONS[n.type]; - i && i(e, t, n); - } - }, { - "../definitions": 102 - } ], - 144: [ function(e, t, n) { - "use strict"; - const r = e("color-convert"); - const i = (e, t) => (function() { - return `[${e.apply(r, arguments) + t}m`; - }); - const s = (e, t) => (function() { - const n = e.apply(r, arguments); - return `[${38 + t};5;${n}m`; - }); - const a = (e, t) => (function() { - const n = e.apply(r, arguments); - return `[${38 + t};2;${n[0]};${n[1]};${n[2]}m`; - }); - Object.defineProperty(t, "exports", { - enumerable: !0, - get: function() { - const e = new Map(); - const t = { - modifier: { - reset: [ 0, 0 ], - bold: [ 1, 22 ], - dim: [ 2, 22 ], - italic: [ 3, 23 ], - underline: [ 4, 24 ], - inverse: [ 7, 27 ], - hidden: [ 8, 28 ], - strikethrough: [ 9, 29 ] - }, - color: { - black: [ 30, 39 ], - red: [ 31, 39 ], - green: [ 32, 39 ], - yellow: [ 33, 39 ], - blue: [ 34, 39 ], - magenta: [ 35, 39 ], - cyan: [ 36, 39 ], - white: [ 37, 39 ], - gray: [ 90, 39 ], - redBright: [ 91, 39 ], - greenBright: [ 92, 39 ], - yellowBright: [ 93, 39 ], - blueBright: [ 94, 39 ], - magentaBright: [ 95, 39 ], - cyanBright: [ 96, 39 ], - whiteBright: [ 97, 39 ] - }, - bgColor: { - bgBlack: [ 40, 49 ], - bgRed: [ 41, 49 ], - bgGreen: [ 42, 49 ], - bgYellow: [ 43, 49 ], - bgBlue: [ 44, 49 ], - bgMagenta: [ 45, 49 ], - bgCyan: [ 46, 49 ], - bgWhite: [ 47, 49 ], - bgBlackBright: [ 100, 49 ], - bgRedBright: [ 101, 49 ], - bgGreenBright: [ 102, 49 ], - bgYellowBright: [ 103, 49 ], - bgBlueBright: [ 104, 49 ], - bgMagentaBright: [ 105, 49 ], - bgCyanBright: [ 106, 49 ], - bgWhiteBright: [ 107, 49 ] - } - }; - t.color.grey = t.color.gray; - for (const n of Object.keys(t)) { - const r = t[n]; - for (const n of Object.keys(r)) { - const i = r[n]; - t[n] = { - open: `[${i[0]}m`, - close: `[${i[1]}m` - }; - r[n] = t[n]; - e.set(i[0], i[1]); - } - Object.defineProperty(t, n, { - value: r, - enumerable: !1 - }); - Object.defineProperty(t, "codes", { - value: e, - enumerable: !1 - }); - } - const n = e => e; - const o = (e, t, n) => [ e, t, n ]; - t.color.close = ""; - t.bgColor.close = ""; - t.color.ansi = { - ansi: i(n, 0) - }; - t.color.ansi256 = { - ansi256: s(n, 0) - }; - t.color.ansi16m = { - rgb: a(o, 0) - }; - t.bgColor.ansi = { - ansi: i(n, 10) - }; - t.bgColor.ansi256 = { - ansi256: s(n, 10) - }; - t.bgColor.ansi16m = { - rgb: a(o, 10) - }; - for (let e of Object.keys(r)) { - if ("object" != typeof r[e]) continue; - const n = r[e]; - "ansi16" === e && (e = "ansi"); - if ("ansi16" in n) { - t.color.ansi[e] = i(n.ansi16, 0); - t.bgColor.ansi[e] = i(n.ansi16, 10); - } - if ("ansi256" in n) { - t.color.ansi256[e] = s(n.ansi256, 0); - t.bgColor.ansi256[e] = s(n.ansi256, 10); - } - if ("rgb" in n) { - t.color.ansi16m[e] = a(n.rgb, 0); - t.bgColor.ansi16m[e] = a(n.rgb, 10); - } - } - return t; - } - }); - }, { - "color-convert": 148 - } ], - 145: [ function(e, t, n) { - (function(n) { - (function() { - "use strict"; - const r = e("escape-string-regexp"); - const i = e("ansi-styles"); - const s = e("supports-color").stdout; - const a = e("./templates.js"); - const o = "win32" === n.platform && !(n.env.TERM || "").toLowerCase().startsWith("xterm"); - const l = [ "ansi", "ansi", "ansi256", "ansi16m" ]; - const c = new Set([ "gray" ]); - const p = Object.create(null); - function u(e, t) { - t = t || {}; - const n = s ? s.level : 0; - e.level = void 0 === t.level ? n : t.level; - e.enabled = "enabled" in t ? t.enabled : e.level > 0; - } - function d(e) { - if (!this || !(this instanceof d) || this.template) { - const t = {}; - u(t, e); - t.template = function() { - const e = [].slice.call(arguments); - return function(e, t) { - if (!Array.isArray(t)) return [].slice.call(arguments, 1).join(" "); - const n = [].slice.call(arguments, 2); - const r = [ t.raw[0] ]; - for (let e = 1; e < t.length; e++) { - r.push(String(n[e - 1]).replace(/[{}\\]/g, "\\$&")); - r.push(String(t.raw[e])); - } - return a(e, r.join("")); - }.apply(null, [ t.template ].concat(e)); - }; - Object.setPrototypeOf(t, d.prototype); - Object.setPrototypeOf(t.template, t); - t.template.constructor = d; - return t.template; - } - u(this, e); - } - o && (i.blue.open = ""); - for (const e of Object.keys(i)) { - i[e].closeRe = new RegExp(r(i[e].close), "g"); - p[e] = { - get() { - const t = i[e]; - return f.call(this, this._styles ? this._styles.concat(t) : [ t ], this._empty, e); - } - }; - } - p.visible = { - get() { - return f.call(this, this._styles || [], !0, "visible"); - } - }; - i.color.closeRe = new RegExp(r(i.color.close), "g"); - for (const e of Object.keys(i.color.ansi)) c.has(e) || (p[e] = { - get() { - const t = this.level; - return function() { - const n = { - open: i.color[l[t]][e].apply(null, arguments), - close: i.color.close, - closeRe: i.color.closeRe - }; - return f.call(this, this._styles ? this._styles.concat(n) : [ n ], this._empty, e); - }; - } - }); - i.bgColor.closeRe = new RegExp(r(i.bgColor.close), "g"); - for (const e of Object.keys(i.bgColor.ansi)) { - if (c.has(e)) continue; - p["bg" + e[0].toUpperCase() + e.slice(1)] = { - get() { - const t = this.level; - return function() { - const n = { - open: i.bgColor[l[t]][e].apply(null, arguments), - close: i.bgColor.close, - closeRe: i.bgColor.closeRe - }; - return f.call(this, this._styles ? this._styles.concat(n) : [ n ], this._empty, e); - }; - } - }; - } - const h = Object.defineProperties(() => {}, p); - function f(e, t, n) { - const r = function() { - return function() { - const e = arguments; - const t = e.length; - let n = String(arguments[0]); - if (0 === t) return ""; - if (t > 1) for (let r = 1; r < t; r++) n += " " + e[r]; - if (!this.enabled || this.level <= 0 || !n) return this._empty ? "" : n; - const r = i.dim.open; - o && this.hasGrey && (i.dim.open = ""); - for (const e of this._styles.slice().reverse()) n = (n = e.open + n.replace(e.closeRe, e.open) + e.close).replace(/\r?\n/g, `${e.close}$&${e.open}`); - i.dim.open = r; - return n; - }.apply(r, arguments); - }; - r._styles = e; - r._empty = t; - const s = this; - Object.defineProperty(r, "level", { - enumerable: !0, - get: () => s.level, - set(e) { - s.level = e; - } - }); - Object.defineProperty(r, "enabled", { - enumerable: !0, - get: () => s.enabled, - set(e) { - s.enabled = e; - } - }); - r.hasGrey = this.hasGrey || "gray" === n || "grey" === n; - r.__proto__ = h; - return r; - } - Object.defineProperties(d.prototype, p); - t.exports = d(); - t.exports.supportsColor = s; - t.exports.default = t.exports; - }).call(this); - }).call(this, e("_process")); - }, { - "./templates.js": 146, - _process: 160, - "ansi-styles": 144, - "escape-string-regexp": 153, - "supports-color": 172 - } ], - 146: [ function(e, t, n) { - "use strict"; - const r = /(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi; - const i = /(?:^|\.)(\w+)(?:\(([^)]*)\))?/g; - const s = /^(['"])((?:\\.|(?!\1)[^\\])*)\1$/; - const a = /\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi; - const o = new Map([ [ "n", "\n" ], [ "r", "\r" ], [ "t", "\t" ], [ "b", "\b" ], [ "f", "\f" ], [ "v", "\v" ], [ "0", "\0" ], [ "\\", "\\" ], [ "e", "" ], [ "a", "" ] ]); - function l(e) { - return "u" === e[0] && 5 === e.length || "x" === e[0] && 3 === e.length ? String.fromCharCode(parseInt(e.slice(1), 16)) : o.get(e) || e; - } - function c(e, t) { - const n = []; - const r = t.trim().split(/\s*,\s*/g); - let i; - for (const t of r) if (isNaN(t)) { - if (!(i = t.match(s))) throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`); - n.push(i[2].replace(a, (e, t, n) => t ? l(t) : n)); - } else n.push(Number(t)); - return n; - } - function p(e, t) { - const n = {}; - for (const e of t) for (const t of e.styles) n[t[0]] = e.inverse ? null : t.slice(1); - let r = e; - for (const e of Object.keys(n)) if (Array.isArray(n[e])) { - if (!(e in r)) throw new Error(`Unknown Chalk style: ${e}`); - r = n[e].length > 0 ? r[e].apply(r, n[e]) : r[e]; - } - return r; - } - t.exports = ((e, t) => { - const n = []; - const s = []; - let a = []; - t.replace(r, (t, r, o, u, d, h) => { - if (r) a.push(l(r)); else if (u) { - const t = a.join(""); - a = []; - s.push(0 === n.length ? t : p(e, n)(t)); - n.push({ - inverse: o, - styles: function(e) { - i.lastIndex = 0; - const t = []; - let n; - for (;null !== (n = i.exec(e)); ) { - const e = n[1]; - if (n[2]) { - const r = c(e, n[2]); - t.push([ e ].concat(r)); - } else t.push([ e ]); - } - return t; - }(u) - }); - } else if (d) { - if (0 === n.length) throw new Error("Found extraneous } in Chalk template literal"); - s.push(p(e, n)(a.join(""))); - a = []; - n.pop(); - } else a.push(h); - }); - s.push(a.join("")); - if (n.length > 0) { - const e = `Chalk template literal is missing ${n.length} closing bracket${1 === n.length ? "" : "s"} (\`}\`)`; - throw new Error(e); - } - return s.join(""); - }); - }, {} ], - 147: [ function(e, t, n) { - var r, i, s, a, o, l = e("color-name"), c = {}; - for (r in l) l.hasOwnProperty(r) && (c[l[r]] = r); - i = t.exports = { - rgb: { - channels: 3, - labels: "rgb" - }, - hsl: { - channels: 3, - labels: "hsl" - }, - hsv: { - channels: 3, - labels: "hsv" - }, - hwb: { - channels: 3, - labels: "hwb" - }, - cmyk: { - channels: 4, - labels: "cmyk" - }, - xyz: { - channels: 3, - labels: "xyz" - }, - lab: { - channels: 3, - labels: "lab" - }, - lch: { - channels: 3, - labels: "lch" - }, - hex: { - channels: 1, - labels: [ "hex" ] - }, - keyword: { - channels: 1, - labels: [ "keyword" ] - }, - ansi16: { - channels: 1, - labels: [ "ansi16" ] - }, - ansi256: { - channels: 1, - labels: [ "ansi256" ] - }, - hcg: { - channels: 3, - labels: [ "h", "c", "g" ] - }, - apple: { - channels: 3, - labels: [ "r16", "g16", "b16" ] - }, - gray: { - channels: 1, - labels: [ "gray" ] - } - }; - for (s in i) if (i.hasOwnProperty(s)) { - if (!("channels" in i[s])) throw new Error("missing channels property: " + s); - if (!("labels" in i[s])) throw new Error("missing channel labels property: " + s); - if (i[s].labels.length !== i[s].channels) throw new Error("channel and label counts mismatch: " + s); - a = i[s].channels; - o = i[s].labels; - delete i[s].channels; - delete i[s].labels; - Object.defineProperty(i[s], "channels", { - value: a - }); - Object.defineProperty(i[s], "labels", { - value: o - }); - } - i.rgb.hsl = function(e) { - var t, n, r = e[0] / 255, i = e[1] / 255, s = e[2] / 255, a = Math.min(r, i, s), o = Math.max(r, i, s), l = o - a; - o === a ? t = 0 : r === o ? t = (i - s) / l : i === o ? t = 2 + (s - r) / l : s === o && (t = 4 + (r - i) / l); - (t = Math.min(60 * t, 360)) < 0 && (t += 360); - n = (a + o) / 2; - return [ t, 100 * (o === a ? 0 : n <= .5 ? l / (o + a) : l / (2 - o - a)), 100 * n ]; - }; - i.rgb.hsv = function(e) { - var t, n, r, i, s, a = e[0] / 255, o = e[1] / 255, l = e[2] / 255, c = Math.max(a, o, l), p = c - Math.min(a, o, l), u = function(e) { - return (c - e) / 6 / p + .5; - }; - if (0 === p) i = s = 0; else { - s = p / c; - t = u(a); - n = u(o); - r = u(l); - a === c ? i = r - n : o === c ? i = 1 / 3 + t - r : l === c && (i = 2 / 3 + n - t); - i < 0 ? i += 1 : i > 1 && (i -= 1); - } - return [ 360 * i, 100 * s, 100 * c ]; - }; - i.rgb.hwb = function(e) { - var t = e[0], n = e[1], r = e[2], s = i.rgb.hsl(e)[0], a = 1 / 255 * Math.min(t, Math.min(n, r)); - return [ s, 100 * a, 100 * (r = 1 - 1 / 255 * Math.max(t, Math.max(n, r))) ]; - }; - i.rgb.cmyk = function(e) { - var t = e[0] / 255, n = e[1] / 255, r = e[2] / 255, i = Math.min(1 - t, 1 - n, 1 - r), s = (1 - t - i) / (1 - i) || 0, a = (1 - n - i) / (1 - i) || 0, o = (1 - r - i) / (1 - i) || 0; - return [ 100 * s, 100 * a, 100 * o, 100 * i ]; - }; - i.rgb.keyword = function(e) { - var t, n, r, i, s, a = c[e]; - if (a) return a; - t = 1 / 0; - for (r in l) if (l.hasOwnProperty(r)) { - i = l[r]; - if ((s = (o = e, p = i, Math.pow(o[0] - p[0], 2) + Math.pow(o[1] - p[1], 2) + Math.pow(o[2] - p[2], 2))) < t) { - t = s; - n = r; - } - } - var o, p; - return n; - }; - i.keyword.rgb = function(e) { - return l[e]; - }; - i.rgb.xyz = function(e) { - var t = e[0] / 255, n = e[1] / 255, r = e[2] / 255; - return [ 100 * (.4124 * (t = t > .04045 ? Math.pow((t + .055) / 1.055, 2.4) : t / 12.92) + .3576 * (n = n > .04045 ? Math.pow((n + .055) / 1.055, 2.4) : n / 12.92) + .1805 * (r = r > .04045 ? Math.pow((r + .055) / 1.055, 2.4) : r / 12.92)), 100 * (.2126 * t + .7152 * n + .0722 * r), 100 * (.0193 * t + .1192 * n + .9505 * r) ]; - }; - i.rgb.lab = function(e) { - var t = i.rgb.xyz(e), n = t[0], r = t[1], s = t[2]; - r /= 100; - s /= 108.883; - n = (n /= 95.047) > .008856 ? Math.pow(n, 1 / 3) : 7.787 * n + 16 / 116; - return [ 116 * (r = r > .008856 ? Math.pow(r, 1 / 3) : 7.787 * r + 16 / 116) - 16, 500 * (n - r), 200 * (r - (s = s > .008856 ? Math.pow(s, 1 / 3) : 7.787 * s + 16 / 116)) ]; - }; - i.hsl.rgb = function(e) { - var t, n, r, i, s, a, o = e[0] / 360, l = e[1] / 100, c = e[2] / 100; - if (0 === l) return [ s = 255 * c, s, s ]; - t = 2 * c - (n = c < .5 ? c * (1 + l) : c + l - c * l); - i = [ 0, 0, 0 ]; - for (a = 0; a < 3; a++) { - (r = o + 1 / 3 * -(a - 1)) < 0 && r++; - r > 1 && r--; - s = 6 * r < 1 ? t + 6 * (n - t) * r : 2 * r < 1 ? n : 3 * r < 2 ? t + (n - t) * (2 / 3 - r) * 6 : t; - i[a] = 255 * s; - } - return i; - }; - i.hsl.hsv = function(e) { - var t, n = e[0], r = e[1] / 100, i = e[2] / 100, s = r, a = Math.max(i, .01); - r *= (i *= 2) <= 1 ? i : 2 - i; - s *= a <= 1 ? a : 2 - a; - t = (i + r) / 2; - return [ n, 100 * (0 === i ? 2 * s / (a + s) : 2 * r / (i + r)), 100 * t ]; - }; - i.hsv.rgb = function(e) { - var t = e[0] / 60, n = e[1] / 100, r = e[2] / 100, i = Math.floor(t) % 6, s = t - Math.floor(t), a = 255 * r * (1 - n), o = 255 * r * (1 - n * s), l = 255 * r * (1 - n * (1 - s)); - r *= 255; - switch (i) { - case 0: - return [ r, l, a ]; - - case 1: - return [ o, r, a ]; - - case 2: - return [ a, r, l ]; - - case 3: - return [ a, o, r ]; - - case 4: - return [ l, a, r ]; - - case 5: - return [ r, a, o ]; - } - }; - i.hsv.hsl = function(e) { - var t = e[0], n = e[1] / 100, r = e[2] / 100, i = Math.max(r, .01), s = (2 - n) * r, a = (2 - n) * i, o = n * i; - return [ t, 100 * (o = (o /= a <= 1 ? a : 2 - a) || 0), 100 * (s /= 2) ]; - }; - i.hwb.rgb = function(e) { - var t, n, r, i, s, a, o, l = e[0] / 360, c = e[1] / 100, p = e[2] / 100, u = c + p; - if (u > 1) { - c /= u; - p /= u; - } - t = Math.floor(6 * l); - n = 1 - p; - r = 6 * l - t; - 0 != (1 & t) && (r = 1 - r); - i = c + r * (n - c); - switch (t) { - default: - case 6: - case 0: - s = n; - a = i; - o = c; - break; - - case 1: - s = i; - a = n; - o = c; - break; - - case 2: - s = c; - a = n; - o = i; - break; - - case 3: - s = c; - a = i; - o = n; - break; - - case 4: - s = i; - a = c; - o = n; - break; - - case 5: - s = n; - a = c; - o = i; - } - return [ 255 * s, 255 * a, 255 * o ]; - }; - i.cmyk.rgb = function(e) { - var t = e[0] / 100, n = e[1] / 100, r = e[2] / 100, i = e[3] / 100, s = 1 - Math.min(1, t * (1 - i) + i), a = 1 - Math.min(1, n * (1 - i) + i), o = 1 - Math.min(1, r * (1 - i) + i); - return [ 255 * s, 255 * a, 255 * o ]; - }; - i.xyz.rgb = function(e) { - var t = e[0] / 100, n = e[1] / 100, r = e[2] / 100, i = 3.2406 * t + -1.5372 * n + -.4986 * r, s = -.9689 * t + 1.8758 * n + .0415 * r, a = .0557 * t + -.204 * n + 1.057 * r; - i = i > .0031308 ? 1.055 * Math.pow(i, 1 / 2.4) - .055 : 12.92 * i; - s = s > .0031308 ? 1.055 * Math.pow(s, 1 / 2.4) - .055 : 12.92 * s; - a = a > .0031308 ? 1.055 * Math.pow(a, 1 / 2.4) - .055 : 12.92 * a; - return [ 255 * (i = Math.min(Math.max(0, i), 1)), 255 * (s = Math.min(Math.max(0, s), 1)), 255 * (a = Math.min(Math.max(0, a), 1)) ]; - }; - i.xyz.lab = function(e) { - var t = e[0], n = e[1], r = e[2]; - n /= 100; - r /= 108.883; - t = (t /= 95.047) > .008856 ? Math.pow(t, 1 / 3) : 7.787 * t + 16 / 116; - return [ 116 * (n = n > .008856 ? Math.pow(n, 1 / 3) : 7.787 * n + 16 / 116) - 16, 500 * (t - n), 200 * (n - (r = r > .008856 ? Math.pow(r, 1 / 3) : 7.787 * r + 16 / 116)) ]; - }; - i.lab.xyz = function(e) { - var t = e[0], n = e[1], r = e[2], i = (t + 16) / 116, s = n / 500 + i, a = i - r / 200, o = Math.pow(i, 3), l = Math.pow(s, 3), c = Math.pow(a, 3); - i = o > .008856 ? o : (i - 16 / 116) / 7.787; - s = l > .008856 ? l : (s - 16 / 116) / 7.787; - a = c > .008856 ? c : (a - 16 / 116) / 7.787; - return [ s *= 95.047, i *= 100, a *= 108.883 ]; - }; - i.lab.lch = function(e) { - var t = e[0], n = e[1], r = e[2], i = Math.atan2(r, n), s = 360 * i / 2 / Math.PI; - s < 0 && (s += 360); - return [ t, Math.sqrt(n * n + r * r), s ]; - }; - i.lch.lab = function(e) { - var t = e[0], n = e[1], r = e[2], i = r / 360 * 2 * Math.PI, s = n * Math.cos(i), a = n * Math.sin(i); - return [ t, s, a ]; - }; - i.rgb.ansi16 = function(e) { - var t, n = e[0], r = e[1], s = e[2], a = 1 in arguments ? arguments[1] : i.rgb.hsv(e)[2]; - if (0 === (a = Math.round(a / 50))) return 30; - t = 30 + (Math.round(s / 255) << 2 | Math.round(r / 255) << 1 | Math.round(n / 255)); - 2 === a && (t += 60); - return t; - }; - i.hsv.ansi16 = function(e) { - return i.rgb.ansi16(i.hsv.rgb(e), e[2]); - }; - i.rgb.ansi256 = function(e) { - var t = e[0], n = e[1], r = e[2]; - return t === n && n === r ? t < 8 ? 16 : t > 248 ? 231 : Math.round((t - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(t / 255 * 5) + 6 * Math.round(n / 255 * 5) + Math.round(r / 255 * 5); - }; - i.ansi16.rgb = function(e) { - var t, n = e % 10; - if (0 === n || 7 === n) { - e > 50 && (n += 3.5); - return [ n = n / 10.5 * 255, n, n ]; - } - return [ (1 & n) * (t = .5 * (1 + ~~(e > 50))) * 255, (n >> 1 & 1) * t * 255, (n >> 2 & 1) * t * 255 ]; - }; - i.ansi256.rgb = function(e) { - var t, n; - if (e >= 232) return [ t = 10 * (e - 232) + 8, t, t ]; - e -= 16; - return [ Math.floor(e / 36) / 5 * 255, Math.floor((n = e % 36) / 6) / 5 * 255, n % 6 / 5 * 255 ]; - }; - i.rgb.hex = function(e) { - var t = ((255 & Math.round(e[0])) << 16) + ((255 & Math.round(e[1])) << 8) + (255 & Math.round(e[2])), n = t.toString(16).toUpperCase(); - return "000000".substring(n.length) + n; - }; - i.hex.rgb = function(e) { - var t, n, r = e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); - if (!r) return [ 0, 0, 0 ]; - t = r[0]; - 3 === r[0].length && (t = t.split("").map(function(e) { - return e + e; - }).join("")); - return [ (n = parseInt(t, 16)) >> 16 & 255, n >> 8 & 255, 255 & n ]; - }; - i.rgb.hcg = function(e) { - var t, n, r = e[0] / 255, i = e[1] / 255, s = e[2] / 255, a = Math.max(Math.max(r, i), s), o = Math.min(Math.min(r, i), s), l = a - o; - t = l < 1 ? o / (1 - l) : 0; - n = l <= 0 ? 0 : a === r ? (i - s) / l % 6 : a === i ? 2 + (s - r) / l : 4 + (r - i) / l + 4; - n /= 6; - return [ 360 * (n %= 1), 100 * l, 100 * t ]; - }; - i.hsl.hcg = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = 1, i = 0; - (r = n < .5 ? 2 * t * n : 2 * t * (1 - n)) < 1 && (i = (n - .5 * r) / (1 - r)); - return [ e[0], 100 * r, 100 * i ]; - }; - i.hsv.hcg = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = t * n, i = 0; - r < 1 && (i = (n - r) / (1 - r)); - return [ e[0], 100 * r, 100 * i ]; - }; - i.hcg.rgb = function(e) { - var t, n, r, i, s, a = e[0] / 360, o = e[1] / 100, l = e[2] / 100; - if (0 === o) return [ 255 * l, 255 * l, 255 * l ]; - t = [ 0, 0, 0 ]; - i = 1 - (r = (n = a % 1 * 6) % 1); - s = 0; - switch (Math.floor(n)) { - case 0: - t[0] = 1; - t[1] = r; - t[2] = 0; - break; - - case 1: - t[0] = i; - t[1] = 1; - t[2] = 0; - break; - - case 2: - t[0] = 0; - t[1] = 1; - t[2] = r; - break; - - case 3: - t[0] = 0; - t[1] = i; - t[2] = 1; - break; - - case 4: - t[0] = r; - t[1] = 0; - t[2] = 1; - break; - - default: - t[0] = 1; - t[1] = 0; - t[2] = i; - } - s = (1 - o) * l; - return [ 255 * (o * t[0] + s), 255 * (o * t[1] + s), 255 * (o * t[2] + s) ]; - }; - i.hcg.hsv = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = t + n * (1 - t), i = 0; - r > 0 && (i = t / r); - return [ e[0], 100 * i, 100 * r ]; - }; - i.hcg.hsl = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = n * (1 - t) + .5 * t, i = 0; - r > 0 && r < .5 ? i = t / (2 * r) : r >= .5 && r < 1 && (i = t / (2 * (1 - r))); - return [ e[0], 100 * i, 100 * r ]; - }; - i.hcg.hwb = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = t + n * (1 - t); - return [ e[0], 100 * (r - t), 100 * (1 - r) ]; - }; - i.hwb.hcg = function(e) { - var t = e[1] / 100, n = e[2] / 100, r = 1 - n, i = r - t, s = 0; - i < 1 && (s = (r - i) / (1 - i)); - return [ e[0], 100 * i, 100 * s ]; - }; - i.apple.rgb = function(e) { - return [ e[0] / 65535 * 255, e[1] / 65535 * 255, e[2] / 65535 * 255 ]; - }; - i.rgb.apple = function(e) { - return [ e[0] / 255 * 65535, e[1] / 255 * 65535, e[2] / 255 * 65535 ]; - }; - i.gray.rgb = function(e) { - return [ e[0] / 100 * 255, e[0] / 100 * 255, e[0] / 100 * 255 ]; - }; - i.gray.hsl = i.gray.hsv = function(e) { - return [ 0, 0, e[0] ]; - }; - i.gray.hwb = function(e) { - return [ 0, 100, e[0] ]; - }; - i.gray.cmyk = function(e) { - return [ 0, 0, 0, e[0] ]; - }; - i.gray.lab = function(e) { - return [ e[0], 0, 0 ]; - }; - i.gray.hex = function(e) { - var t = 255 & Math.round(e[0] / 100 * 255), n = (t << 16) + (t << 8) + t, r = n.toString(16).toUpperCase(); - return "000000".substring(r.length) + r; - }; - i.rgb.gray = function(e) { - return [ (e[0] + e[1] + e[2]) / 3 / 255 * 100 ]; - }; - }, { - "color-name": 150 - } ], - 148: [ function(e, t, n) { - var r = e("./conversions"), i = e("./route"), s = {}, a = Object.keys(r); - a.forEach(function(e) { - var t; - s[e] = {}; - Object.defineProperty(s[e], "channels", { - value: r[e].channels - }); - Object.defineProperty(s[e], "labels", { - value: r[e].labels - }); - t = i(e); - Object.keys(t).forEach(function(n) { - var r = t[n]; - s[e][n] = function(e) { - var t = function(t) { - var n, r, i; - if (void 0 === t || null === t) return t; - arguments.length > 1 && (t = Array.prototype.slice.call(arguments)); - if ("object" == typeof (n = e(t))) for (r = n.length, i = 0; i < r; i++) n[i] = Math.round(n[i]); - return n; - }; - "conversion" in e && (t.conversion = e.conversion); - return t; - }(r); - s[e][n].raw = function(e) { - var t = function(t) { - if (void 0 === t || null === t) return t; - arguments.length > 1 && (t = Array.prototype.slice.call(arguments)); - return e(t); - }; - "conversion" in e && (t.conversion = e.conversion); - return t; - }(r); - }); - }); - t.exports = s; - }, { - "./conversions": 147, - "./route": 149 - } ], - 149: [ function(e, t, n) { - var r = e("./conversions"); - function i(e) { - var t, n, i, s, a, o, l = function() { - var e, t, n = {}, i = Object.keys(r); - for (e = i.length, t = 0; t < e; t++) n[i[t]] = { - distance: -1, - parent: null - }; - return n; - }(), c = [ e ]; - l[e].distance = 0; - for (;c.length; ) { - t = c.pop(); - for (i = (n = Object.keys(r[t])).length, s = 0; s < i; s++) if (-1 === (o = l[a = n[s]]).distance) { - o.distance = l[t].distance + 1; - o.parent = t; - c.unshift(a); - } - } - return l; - } - function s(e, t) { - return function(n) { - return t(e(n)); - }; - } - function a(e, t) { - var n = [ t[e].parent, e ], i = r[t[e].parent][e], a = t[e].parent; - for (;t[a].parent; ) { - n.unshift(t[a].parent); - i = s(r[t[a].parent][a], i); - a = t[a].parent; - } - i.conversion = n; - return i; - } - t.exports = function(e) { - var t, n, r, s = i(e), o = {}, l = Object.keys(s); - for (t = l.length, n = 0; n < t; n++) null !== s[r = l[n]].parent && (o[r] = a(r, s)); - return o; - }; - }, { - "./conversions": 147 - } ], - 150: [ function(e, t, n) { - "use strict"; - t.exports = { - aliceblue: [ 240, 248, 255 ], - antiquewhite: [ 250, 235, 215 ], - aqua: [ 0, 255, 255 ], - aquamarine: [ 127, 255, 212 ], - azure: [ 240, 255, 255 ], - beige: [ 245, 245, 220 ], - bisque: [ 255, 228, 196 ], - black: [ 0, 0, 0 ], - blanchedalmond: [ 255, 235, 205 ], - blue: [ 0, 0, 255 ], - blueviolet: [ 138, 43, 226 ], - brown: [ 165, 42, 42 ], - burlywood: [ 222, 184, 135 ], - cadetblue: [ 95, 158, 160 ], - chartreuse: [ 127, 255, 0 ], - chocolate: [ 210, 105, 30 ], - coral: [ 255, 127, 80 ], - cornflowerblue: [ 100, 149, 237 ], - cornsilk: [ 255, 248, 220 ], - crimson: [ 220, 20, 60 ], - cyan: [ 0, 255, 255 ], - darkblue: [ 0, 0, 139 ], - darkcyan: [ 0, 139, 139 ], - darkgoldenrod: [ 184, 134, 11 ], - darkgray: [ 169, 169, 169 ], - darkgreen: [ 0, 100, 0 ], - darkgrey: [ 169, 169, 169 ], - darkkhaki: [ 189, 183, 107 ], - darkmagenta: [ 139, 0, 139 ], - darkolivegreen: [ 85, 107, 47 ], - darkorange: [ 255, 140, 0 ], - darkorchid: [ 153, 50, 204 ], - darkred: [ 139, 0, 0 ], - darksalmon: [ 233, 150, 122 ], - darkseagreen: [ 143, 188, 143 ], - darkslateblue: [ 72, 61, 139 ], - darkslategray: [ 47, 79, 79 ], - darkslategrey: [ 47, 79, 79 ], - darkturquoise: [ 0, 206, 209 ], - darkviolet: [ 148, 0, 211 ], - deeppink: [ 255, 20, 147 ], - deepskyblue: [ 0, 191, 255 ], - dimgray: [ 105, 105, 105 ], - dimgrey: [ 105, 105, 105 ], - dodgerblue: [ 30, 144, 255 ], - firebrick: [ 178, 34, 34 ], - floralwhite: [ 255, 250, 240 ], - forestgreen: [ 34, 139, 34 ], - fuchsia: [ 255, 0, 255 ], - gainsboro: [ 220, 220, 220 ], - ghostwhite: [ 248, 248, 255 ], - gold: [ 255, 215, 0 ], - goldenrod: [ 218, 165, 32 ], - gray: [ 128, 128, 128 ], - green: [ 0, 128, 0 ], - greenyellow: [ 173, 255, 47 ], - grey: [ 128, 128, 128 ], - honeydew: [ 240, 255, 240 ], - hotpink: [ 255, 105, 180 ], - indianred: [ 205, 92, 92 ], - indigo: [ 75, 0, 130 ], - ivory: [ 255, 255, 240 ], - khaki: [ 240, 230, 140 ], - lavender: [ 230, 230, 250 ], - lavenderblush: [ 255, 240, 245 ], - lawngreen: [ 124, 252, 0 ], - lemonchiffon: [ 255, 250, 205 ], - lightblue: [ 173, 216, 230 ], - lightcoral: [ 240, 128, 128 ], - lightcyan: [ 224, 255, 255 ], - lightgoldenrodyellow: [ 250, 250, 210 ], - lightgray: [ 211, 211, 211 ], - lightgreen: [ 144, 238, 144 ], - lightgrey: [ 211, 211, 211 ], - lightpink: [ 255, 182, 193 ], - lightsalmon: [ 255, 160, 122 ], - lightseagreen: [ 32, 178, 170 ], - lightskyblue: [ 135, 206, 250 ], - lightslategray: [ 119, 136, 153 ], - lightslategrey: [ 119, 136, 153 ], - lightsteelblue: [ 176, 196, 222 ], - lightyellow: [ 255, 255, 224 ], - lime: [ 0, 255, 0 ], - limegreen: [ 50, 205, 50 ], - linen: [ 250, 240, 230 ], - magenta: [ 255, 0, 255 ], - maroon: [ 128, 0, 0 ], - mediumaquamarine: [ 102, 205, 170 ], - mediumblue: [ 0, 0, 205 ], - mediumorchid: [ 186, 85, 211 ], - mediumpurple: [ 147, 112, 219 ], - mediumseagreen: [ 60, 179, 113 ], - mediumslateblue: [ 123, 104, 238 ], - mediumspringgreen: [ 0, 250, 154 ], - mediumturquoise: [ 72, 209, 204 ], - mediumvioletred: [ 199, 21, 133 ], - midnightblue: [ 25, 25, 112 ], - mintcream: [ 245, 255, 250 ], - mistyrose: [ 255, 228, 225 ], - moccasin: [ 255, 228, 181 ], - navajowhite: [ 255, 222, 173 ], - navy: [ 0, 0, 128 ], - oldlace: [ 253, 245, 230 ], - olive: [ 128, 128, 0 ], - olivedrab: [ 107, 142, 35 ], - orange: [ 255, 165, 0 ], - orangered: [ 255, 69, 0 ], - orchid: [ 218, 112, 214 ], - palegoldenrod: [ 238, 232, 170 ], - palegreen: [ 152, 251, 152 ], - paleturquoise: [ 175, 238, 238 ], - palevioletred: [ 219, 112, 147 ], - papayawhip: [ 255, 239, 213 ], - peachpuff: [ 255, 218, 185 ], - peru: [ 205, 133, 63 ], - pink: [ 255, 192, 203 ], - plum: [ 221, 160, 221 ], - powderblue: [ 176, 224, 230 ], - purple: [ 128, 0, 128 ], - rebeccapurple: [ 102, 51, 153 ], - red: [ 255, 0, 0 ], - rosybrown: [ 188, 143, 143 ], - royalblue: [ 65, 105, 225 ], - saddlebrown: [ 139, 69, 19 ], - salmon: [ 250, 128, 114 ], - sandybrown: [ 244, 164, 96 ], - seagreen: [ 46, 139, 87 ], - seashell: [ 255, 245, 238 ], - sienna: [ 160, 82, 45 ], - silver: [ 192, 192, 192 ], - skyblue: [ 135, 206, 235 ], - slateblue: [ 106, 90, 205 ], - slategray: [ 112, 128, 144 ], - slategrey: [ 112, 128, 144 ], - snow: [ 255, 250, 250 ], - springgreen: [ 0, 255, 127 ], - steelblue: [ 70, 130, 180 ], - tan: [ 210, 180, 140 ], - teal: [ 0, 128, 128 ], - thistle: [ 216, 191, 216 ], - tomato: [ 255, 99, 71 ], - turquoise: [ 64, 224, 208 ], - violet: [ 238, 130, 238 ], - wheat: [ 245, 222, 179 ], - white: [ 255, 255, 255 ], - whitesmoke: [ 245, 245, 245 ], - yellow: [ 255, 255, 0 ], - yellowgreen: [ 154, 205, 50 ] - }; - }, {} ], - 151: [ function(e, t, n) { - (function(r) { - (function() { - n.formatArgs = function(e) { - e[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + e[0] + (this.useColors ? "%c " : " ") + "+" + t.exports.humanize(this.diff); - if (!this.useColors) return; - const n = "color: " + this.color; - e.splice(1, 0, n, "color: inherit"); - let r = 0; - let i = 0; - e[0].replace(/%[a-zA-Z%]/g, e => { - "%%" !== e && "%c" === e && (i = ++r); - }); - e.splice(i, 0, n); - }; - n.save = function(e) { - try { - e ? n.storage.setItem("debug", e) : n.storage.removeItem("debug"); - } catch (e) {} - }; - n.load = function() { - let e; - try { - e = n.storage.getItem("debug"); - } catch (e) {} - !e && void 0 !== r && "env" in r && (e = r.env.DEBUG); - return e; - }; - n.useColors = function() { - if ("undefined" != typeof window && window.process && ("renderer" === window.process.type || window.process.__nwjs)) return !0; - if ("undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)) return !1; - return "undefined" != typeof document && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance || "undefined" != typeof window && window.console && (window.console.firebug || window.console.exception && window.console.table) || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/) && parseInt(RegExp.$1, 10) >= 31 || "undefined" != typeof navigator && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/); - }; - n.storage = function() { - try { - return localStorage; - } catch (e) {} - }(); - n.destroy = (() => { - let e = !1; - return () => { - if (!e) { - e = !0; - console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); - } - }; - })(); - n.colors = [ "#0000CC", "#0000FF", "#0033CC", "#0033FF", "#0066CC", "#0066FF", "#0099CC", "#0099FF", "#00CC00", "#00CC33", "#00CC66", "#00CC99", "#00CCCC", "#00CCFF", "#3300CC", "#3300FF", "#3333CC", "#3333FF", "#3366CC", "#3366FF", "#3399CC", "#3399FF", "#33CC00", "#33CC33", "#33CC66", "#33CC99", "#33CCCC", "#33CCFF", "#6600CC", "#6600FF", "#6633CC", "#6633FF", "#66CC00", "#66CC33", "#9900CC", "#9900FF", "#9933CC", "#9933FF", "#99CC00", "#99CC33", "#CC0000", "#CC0033", "#CC0066", "#CC0099", "#CC00CC", "#CC00FF", "#CC3300", "#CC3333", "#CC3366", "#CC3399", "#CC33CC", "#CC33FF", "#CC6600", "#CC6633", "#CC9900", "#CC9933", "#CCCC00", "#CCCC33", "#FF0000", "#FF0033", "#FF0066", "#FF0099", "#FF00CC", "#FF00FF", "#FF3300", "#FF3333", "#FF3366", "#FF3399", "#FF33CC", "#FF33FF", "#FF6600", "#FF6633", "#FF9900", "#FF9933", "#FFCC00", "#FFCC33" ]; - n.log = console.debug || console.log || (() => {}); - t.exports = e("./common")(n); - const {formatters: i} = t.exports; - i.j = function(e) { - try { - return JSON.stringify(e); - } catch (e) { - return "[UnexpectedJSONParseError]: " + e.message; - } - }; - }).call(this); - }).call(this, e("_process")); - }, { - "./common": 152, - _process: 160 - } ], - 152: [ function(e, t, n) { - t.exports = function(t) { - n.debug = n; - n.default = n; - n.coerce = function(e) { - return e instanceof Error ? e.stack || e.message : e; - }; - n.disable = function() { - const e = [ ...n.names.map(i), ...n.skips.map(i).map(e => "-" + e) ].join(","); - n.enable(""); - return e; - }; - n.enable = function(e) { - n.save(e); - n.namespaces = e; - n.names = []; - n.skips = []; - let t; - const r = ("string" == typeof e ? e : "").split(/[\s,]+/); - const i = r.length; - for (t = 0; t < i; t++) r[t] && ("-" === (e = r[t].replace(/\*/g, ".*?"))[0] ? n.skips.push(new RegExp("^" + e.substr(1) + "$")) : n.names.push(new RegExp("^" + e + "$"))); - }; - n.enabled = function(e) { - if ("*" === e[e.length - 1]) return !0; - let t; - let r; - for (t = 0, r = n.skips.length; t < r; t++) if (n.skips[t].test(e)) return !1; - for (t = 0, r = n.names.length; t < r; t++) if (n.names[t].test(e)) return !0; - return !1; - }; - n.humanize = e("ms"); - n.destroy = function() { - console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."); - }; - Object.keys(t).forEach(e => { - n[e] = t[e]; - }); - n.names = []; - n.skips = []; - n.formatters = {}; - n.selectColor = function(e) { - let t = 0; - for (let n = 0; n < e.length; n++) { - t = (t << 5) - t + e.charCodeAt(n); - t |= 0; - } - return n.colors[Math.abs(t) % n.colors.length]; - }; - function n(e) { - let t; - let i = null; - let s; - let a; - function o(...e) { - if (!o.enabled) return; - const r = o; - const i = Number(new Date()); - const s = i - (t || i); - r.diff = s; - r.prev = t; - r.curr = i; - t = i; - e[0] = n.coerce(e[0]); - "string" != typeof e[0] && e.unshift("%O"); - let a = 0; - e[0] = e[0].replace(/%([a-zA-Z%])/g, (t, i) => { - if ("%%" === t) return "%"; - a++; - const s = n.formatters[i]; - if ("function" == typeof s) { - const n = e[a]; - t = s.call(r, n); - e.splice(a, 1); - a--; - } - return t; - }); - n.formatArgs.call(r, e); - (r.log || n.log).apply(r, e); - } - o.namespace = e; - o.useColors = n.useColors(); - o.color = n.selectColor(e); - o.extend = r; - o.destroy = n.destroy; - Object.defineProperty(o, "enabled", { - enumerable: !0, - configurable: !1, - get: () => { - if (null !== i) return i; - if (s !== n.namespaces) { - s = n.namespaces; - a = n.enabled(e); - } - return a; - }, - set: e => { - i = e; - } - }); - "function" == typeof n.init && n.init(o); - return o; - } - function r(e, t) { - const r = n(this.namespace + (void 0 === t ? ":" : t) + e); - r.log = this.log; - return r; - } - function i(e) { - return e.toString().substring(2, e.toString().length - 2).replace(/\.\*\?$/, "*"); - } - n.enable(n.load()); - return n; - }; - }, { - ms: 159 - } ], - 153: [ function(e, t, n) { - "use strict"; - var r = /[|\\{}()[\]^$+*?.]/g; - t.exports = function(e) { - if ("string" != typeof e) throw new TypeError("Expected a string"); - return e.replace(r, "\\$&"); - }; - }, {} ], - 154: [ function(e, t, n) { - t.exports = { - builtin: { - Array: !1, - ArrayBuffer: !1, - Atomics: !1, - BigInt: !1, - BigInt64Array: !1, - BigUint64Array: !1, - Boolean: !1, - constructor: !1, - DataView: !1, - Date: !1, - decodeURI: !1, - decodeURIComponent: !1, - encodeURI: !1, - encodeURIComponent: !1, - Error: !1, - escape: !1, - eval: !1, - EvalError: !1, - Float32Array: !1, - Float64Array: !1, - Function: !1, - globalThis: !1, - hasOwnProperty: !1, - Infinity: !1, - Int16Array: !1, - Int32Array: !1, - Int8Array: !1, - isFinite: !1, - isNaN: !1, - isPrototypeOf: !1, - JSON: !1, - Map: !1, - Math: !1, - NaN: !1, - Number: !1, - Object: !1, - parseFloat: !1, - parseInt: !1, - Promise: !1, - propertyIsEnumerable: !1, - Proxy: !1, - RangeError: !1, - ReferenceError: !1, - Reflect: !1, - RegExp: !1, - Set: !1, - SharedArrayBuffer: !1, - String: !1, - Symbol: !1, - SyntaxError: !1, - toLocaleString: !1, - toString: !1, - TypeError: !1, - Uint16Array: !1, - Uint32Array: !1, - Uint8Array: !1, - Uint8ClampedArray: !1, - undefined: !1, - unescape: !1, - URIError: !1, - valueOf: !1, - WeakMap: !1, - WeakSet: !1 - }, - es5: { - Array: !1, - Boolean: !1, - constructor: !1, - Date: !1, - decodeURI: !1, - decodeURIComponent: !1, - encodeURI: !1, - encodeURIComponent: !1, - Error: !1, - escape: !1, - eval: !1, - EvalError: !1, - Function: !1, - hasOwnProperty: !1, - Infinity: !1, - isFinite: !1, - isNaN: !1, - isPrototypeOf: !1, - JSON: !1, - Math: !1, - NaN: !1, - Number: !1, - Object: !1, - parseFloat: !1, - parseInt: !1, - propertyIsEnumerable: !1, - RangeError: !1, - ReferenceError: !1, - RegExp: !1, - String: !1, - SyntaxError: !1, - toLocaleString: !1, - toString: !1, - TypeError: !1, - undefined: !1, - unescape: !1, - URIError: !1, - valueOf: !1 - }, - es2015: { - Array: !1, - ArrayBuffer: !1, - Boolean: !1, - constructor: !1, - DataView: !1, - Date: !1, - decodeURI: !1, - decodeURIComponent: !1, - encodeURI: !1, - encodeURIComponent: !1, - Error: !1, - escape: !1, - eval: !1, - EvalError: !1, - Float32Array: !1, - Float64Array: !1, - Function: !1, - hasOwnProperty: !1, - Infinity: !1, - Int16Array: !1, - Int32Array: !1, - Int8Array: !1, - isFinite: !1, - isNaN: !1, - isPrototypeOf: !1, - JSON: !1, - Map: !1, - Math: !1, - NaN: !1, - Number: !1, - Object: !1, - parseFloat: !1, - parseInt: !1, - Promise: !1, - propertyIsEnumerable: !1, - Proxy: !1, - RangeError: !1, - ReferenceError: !1, - Reflect: !1, - RegExp: !1, - Set: !1, - String: !1, - Symbol: !1, - SyntaxError: !1, - toLocaleString: !1, - toString: !1, - TypeError: !1, - Uint16Array: !1, - Uint32Array: !1, - Uint8Array: !1, - Uint8ClampedArray: !1, - undefined: !1, - unescape: !1, - URIError: !1, - valueOf: !1, - WeakMap: !1, - WeakSet: !1 - }, - es2017: { - Array: !1, - ArrayBuffer: !1, - Atomics: !1, - Boolean: !1, - constructor: !1, - DataView: !1, - Date: !1, - decodeURI: !1, - decodeURIComponent: !1, - encodeURI: !1, - encodeURIComponent: !1, - Error: !1, - escape: !1, - eval: !1, - EvalError: !1, - Float32Array: !1, - Float64Array: !1, - Function: !1, - hasOwnProperty: !1, - Infinity: !1, - Int16Array: !1, - Int32Array: !1, - Int8Array: !1, - isFinite: !1, - isNaN: !1, - isPrototypeOf: !1, - JSON: !1, - Map: !1, - Math: !1, - NaN: !1, - Number: !1, - Object: !1, - parseFloat: !1, - parseInt: !1, - Promise: !1, - propertyIsEnumerable: !1, - Proxy: !1, - RangeError: !1, - ReferenceError: !1, - Reflect: !1, - RegExp: !1, - Set: !1, - SharedArrayBuffer: !1, - String: !1, - Symbol: !1, - SyntaxError: !1, - toLocaleString: !1, - toString: !1, - TypeError: !1, - Uint16Array: !1, - Uint32Array: !1, - Uint8Array: !1, - Uint8ClampedArray: !1, - undefined: !1, - unescape: !1, - URIError: !1, - valueOf: !1, - WeakMap: !1, - WeakSet: !1 - }, - browser: { - AbortController: !1, - AbortSignal: !1, - addEventListener: !1, - alert: !1, - AnalyserNode: !1, - Animation: !1, - AnimationEffectReadOnly: !1, - AnimationEffectTiming: !1, - AnimationEffectTimingReadOnly: !1, - AnimationEvent: !1, - AnimationPlaybackEvent: !1, - AnimationTimeline: !1, - applicationCache: !1, - ApplicationCache: !1, - ApplicationCacheErrorEvent: !1, - atob: !1, - Attr: !1, - Audio: !1, - AudioBuffer: !1, - AudioBufferSourceNode: !1, - AudioContext: !1, - AudioDestinationNode: !1, - AudioListener: !1, - AudioNode: !1, - AudioParam: !1, - AudioProcessingEvent: !1, - AudioScheduledSourceNode: !1, - "AudioWorkletGlobalScope ": !1, - AudioWorkletNode: !1, - AudioWorkletProcessor: !1, - BarProp: !1, - BaseAudioContext: !1, - BatteryManager: !1, - BeforeUnloadEvent: !1, - BiquadFilterNode: !1, - Blob: !1, - BlobEvent: !1, - blur: !1, - BroadcastChannel: !1, - btoa: !1, - BudgetService: !1, - ByteLengthQueuingStrategy: !1, - Cache: !1, - caches: !1, - CacheStorage: !1, - cancelAnimationFrame: !1, - cancelIdleCallback: !1, - CanvasCaptureMediaStreamTrack: !1, - CanvasGradient: !1, - CanvasPattern: !1, - CanvasRenderingContext2D: !1, - ChannelMergerNode: !1, - ChannelSplitterNode: !1, - CharacterData: !1, - clearInterval: !1, - clearTimeout: !1, - clientInformation: !1, - ClipboardEvent: !1, - close: !1, - closed: !1, - CloseEvent: !1, - Comment: !1, - CompositionEvent: !1, - confirm: !1, - console: !1, - ConstantSourceNode: !1, - ConvolverNode: !1, - CountQueuingStrategy: !1, - createImageBitmap: !1, - Credential: !1, - CredentialsContainer: !1, - crypto: !1, - Crypto: !1, - CryptoKey: !1, - CSS: !1, - CSSConditionRule: !1, - CSSFontFaceRule: !1, - CSSGroupingRule: !1, - CSSImportRule: !1, - CSSKeyframeRule: !1, - CSSKeyframesRule: !1, - CSSMediaRule: !1, - CSSNamespaceRule: !1, - CSSPageRule: !1, - CSSRule: !1, - CSSRuleList: !1, - CSSStyleDeclaration: !1, - CSSStyleRule: !1, - CSSStyleSheet: !1, - CSSSupportsRule: !1, - CustomElementRegistry: !1, - customElements: !1, - CustomEvent: !1, - DataTransfer: !1, - DataTransferItem: !1, - DataTransferItemList: !1, - defaultstatus: !1, - defaultStatus: !1, - DelayNode: !1, - DeviceMotionEvent: !1, - DeviceOrientationEvent: !1, - devicePixelRatio: !1, - dispatchEvent: !1, - document: !1, - Document: !1, - DocumentFragment: !1, - DocumentType: !1, - DOMError: !1, - DOMException: !1, - DOMImplementation: !1, - DOMMatrix: !1, - DOMMatrixReadOnly: !1, - DOMParser: !1, - DOMPoint: !1, - DOMPointReadOnly: !1, - DOMQuad: !1, - DOMRect: !1, - DOMRectReadOnly: !1, - DOMStringList: !1, - DOMStringMap: !1, - DOMTokenList: !1, - DragEvent: !1, - DynamicsCompressorNode: !1, - Element: !1, - ErrorEvent: !1, - event: !1, - Event: !1, - EventSource: !1, - EventTarget: !1, - external: !1, - fetch: !1, - File: !1, - FileList: !1, - FileReader: !1, - find: !1, - focus: !1, - FocusEvent: !1, - FontFace: !1, - FontFaceSetLoadEvent: !1, - FormData: !1, - frameElement: !1, - frames: !1, - GainNode: !1, - Gamepad: !1, - GamepadButton: !1, - GamepadEvent: !1, - getComputedStyle: !1, - getSelection: !1, - HashChangeEvent: !1, - Headers: !1, - history: !1, - History: !1, - HTMLAllCollection: !1, - HTMLAnchorElement: !1, - HTMLAreaElement: !1, - HTMLAudioElement: !1, - HTMLBaseElement: !1, - HTMLBodyElement: !1, - HTMLBRElement: !1, - HTMLButtonElement: !1, - HTMLCanvasElement: !1, - HTMLCollection: !1, - HTMLContentElement: !1, - HTMLDataElement: !1, - HTMLDataListElement: !1, - HTMLDetailsElement: !1, - HTMLDialogElement: !1, - HTMLDirectoryElement: !1, - HTMLDivElement: !1, - HTMLDListElement: !1, - HTMLDocument: !1, - HTMLElement: !1, - HTMLEmbedElement: !1, - HTMLFieldSetElement: !1, - HTMLFontElement: !1, - HTMLFormControlsCollection: !1, - HTMLFormElement: !1, - HTMLFrameElement: !1, - HTMLFrameSetElement: !1, - HTMLHeadElement: !1, - HTMLHeadingElement: !1, - HTMLHRElement: !1, - HTMLHtmlElement: !1, - HTMLIFrameElement: !1, - HTMLImageElement: !1, - HTMLInputElement: !1, - HTMLLabelElement: !1, - HTMLLegendElement: !1, - HTMLLIElement: !1, - HTMLLinkElement: !1, - HTMLMapElement: !1, - HTMLMarqueeElement: !1, - HTMLMediaElement: !1, - HTMLMenuElement: !1, - HTMLMetaElement: !1, - HTMLMeterElement: !1, - HTMLModElement: !1, - HTMLObjectElement: !1, - HTMLOListElement: !1, - HTMLOptGroupElement: !1, - HTMLOptionElement: !1, - HTMLOptionsCollection: !1, - HTMLOutputElement: !1, - HTMLParagraphElement: !1, - HTMLParamElement: !1, - HTMLPictureElement: !1, - HTMLPreElement: !1, - HTMLProgressElement: !1, - HTMLQuoteElement: !1, - HTMLScriptElement: !1, - HTMLSelectElement: !1, - HTMLShadowElement: !1, - HTMLSlotElement: !1, - HTMLSourceElement: !1, - HTMLSpanElement: !1, - HTMLStyleElement: !1, - HTMLTableCaptionElement: !1, - HTMLTableCellElement: !1, - HTMLTableColElement: !1, - HTMLTableElement: !1, - HTMLTableRowElement: !1, - HTMLTableSectionElement: !1, - HTMLTemplateElement: !1, - HTMLTextAreaElement: !1, - HTMLTimeElement: !1, - HTMLTitleElement: !1, - HTMLTrackElement: !1, - HTMLUListElement: !1, - HTMLUnknownElement: !1, - HTMLVideoElement: !1, - IDBCursor: !1, - IDBCursorWithValue: !1, - IDBDatabase: !1, - IDBFactory: !1, - IDBIndex: !1, - IDBKeyRange: !1, - IDBObjectStore: !1, - IDBOpenDBRequest: !1, - IDBRequest: !1, - IDBTransaction: !1, - IDBVersionChangeEvent: !1, - IdleDeadline: !1, - IIRFilterNode: !1, - Image: !1, - ImageBitmap: !1, - ImageBitmapRenderingContext: !1, - ImageCapture: !1, - ImageData: !1, - indexedDB: !1, - innerHeight: !1, - innerWidth: !1, - InputEvent: !1, - IntersectionObserver: !1, - IntersectionObserverEntry: !1, - Intl: !1, - isSecureContext: !1, - KeyboardEvent: !1, - KeyframeEffect: !1, - KeyframeEffectReadOnly: !1, - length: !1, - localStorage: !1, - location: !0, - Location: !1, - locationbar: !1, - matchMedia: !1, - MediaDeviceInfo: !1, - MediaDevices: !1, - MediaElementAudioSourceNode: !1, - MediaEncryptedEvent: !1, - MediaError: !1, - MediaKeyMessageEvent: !1, - MediaKeySession: !1, - MediaKeyStatusMap: !1, - MediaKeySystemAccess: !1, - MediaList: !1, - MediaQueryList: !1, - MediaQueryListEvent: !1, - MediaRecorder: !1, - MediaSettingsRange: !1, - MediaSource: !1, - MediaStream: !1, - MediaStreamAudioDestinationNode: !1, - MediaStreamAudioSourceNode: !1, - MediaStreamEvent: !1, - MediaStreamTrack: !1, - MediaStreamTrackEvent: !1, - menubar: !1, - MessageChannel: !1, - MessageEvent: !1, - MessagePort: !1, - MIDIAccess: !1, - MIDIConnectionEvent: !1, - MIDIInput: !1, - MIDIInputMap: !1, - MIDIMessageEvent: !1, - MIDIOutput: !1, - MIDIOutputMap: !1, - MIDIPort: !1, - MimeType: !1, - MimeTypeArray: !1, - MouseEvent: !1, - moveBy: !1, - moveTo: !1, - MutationEvent: !1, - MutationObserver: !1, - MutationRecord: !1, - name: !1, - NamedNodeMap: !1, - NavigationPreloadManager: !1, - navigator: !1, - Navigator: !1, - NetworkInformation: !1, - Node: !1, - NodeFilter: !1, - NodeIterator: !1, - NodeList: !1, - Notification: !1, - OfflineAudioCompletionEvent: !1, - OfflineAudioContext: !1, - offscreenBuffering: !1, - OffscreenCanvas: !0, - onabort: !0, - onafterprint: !0, - onanimationend: !0, - onanimationiteration: !0, - onanimationstart: !0, - onappinstalled: !0, - onauxclick: !0, - onbeforeinstallprompt: !0, - onbeforeprint: !0, - onbeforeunload: !0, - onblur: !0, - oncancel: !0, - oncanplay: !0, - oncanplaythrough: !0, - onchange: !0, - onclick: !0, - onclose: !0, - oncontextmenu: !0, - oncuechange: !0, - ondblclick: !0, - ondevicemotion: !0, - ondeviceorientation: !0, - ondeviceorientationabsolute: !0, - ondrag: !0, - ondragend: !0, - ondragenter: !0, - ondragleave: !0, - ondragover: !0, - ondragstart: !0, - ondrop: !0, - ondurationchange: !0, - onemptied: !0, - onended: !0, - onerror: !0, - onfocus: !0, - ongotpointercapture: !0, - onhashchange: !0, - oninput: !0, - oninvalid: !0, - onkeydown: !0, - onkeypress: !0, - onkeyup: !0, - onlanguagechange: !0, - onload: !0, - onloadeddata: !0, - onloadedmetadata: !0, - onloadstart: !0, - onlostpointercapture: !0, - onmessage: !0, - onmessageerror: !0, - onmousedown: !0, - onmouseenter: !0, - onmouseleave: !0, - onmousemove: !0, - onmouseout: !0, - onmouseover: !0, - onmouseup: !0, - onmousewheel: !0, - onoffline: !0, - ononline: !0, - onpagehide: !0, - onpageshow: !0, - onpause: !0, - onplay: !0, - onplaying: !0, - onpointercancel: !0, - onpointerdown: !0, - onpointerenter: !0, - onpointerleave: !0, - onpointermove: !0, - onpointerout: !0, - onpointerover: !0, - onpointerup: !0, - onpopstate: !0, - onprogress: !0, - onratechange: !0, - onrejectionhandled: !0, - onreset: !0, - onresize: !0, - onscroll: !0, - onsearch: !0, - onseeked: !0, - onseeking: !0, - onselect: !0, - onstalled: !0, - onstorage: !0, - onsubmit: !0, - onsuspend: !0, - ontimeupdate: !0, - ontoggle: !0, - ontransitionend: !0, - onunhandledrejection: !0, - onunload: !0, - onvolumechange: !0, - onwaiting: !0, - onwheel: !0, - open: !1, - openDatabase: !1, - opener: !1, - Option: !1, - origin: !1, - OscillatorNode: !1, - outerHeight: !1, - outerWidth: !1, - PageTransitionEvent: !1, - pageXOffset: !1, - pageYOffset: !1, - PannerNode: !1, - parent: !1, - Path2D: !1, - PaymentAddress: !1, - PaymentRequest: !1, - PaymentRequestUpdateEvent: !1, - PaymentResponse: !1, - performance: !1, - Performance: !1, - PerformanceEntry: !1, - PerformanceLongTaskTiming: !1, - PerformanceMark: !1, - PerformanceMeasure: !1, - PerformanceNavigation: !1, - PerformanceNavigationTiming: !1, - PerformanceObserver: !1, - PerformanceObserverEntryList: !1, - PerformancePaintTiming: !1, - PerformanceResourceTiming: !1, - PerformanceTiming: !1, - PeriodicWave: !1, - Permissions: !1, - PermissionStatus: !1, - personalbar: !1, - PhotoCapabilities: !1, - Plugin: !1, - PluginArray: !1, - PointerEvent: !1, - PopStateEvent: !1, - postMessage: !1, - Presentation: !1, - PresentationAvailability: !1, - PresentationConnection: !1, - PresentationConnectionAvailableEvent: !1, - PresentationConnectionCloseEvent: !1, - PresentationConnectionList: !1, - PresentationReceiver: !1, - PresentationRequest: !1, - print: !1, - ProcessingInstruction: !1, - ProgressEvent: !1, - PromiseRejectionEvent: !1, - prompt: !1, - PushManager: !1, - PushSubscription: !1, - PushSubscriptionOptions: !1, - queueMicrotask: !1, - RadioNodeList: !1, - Range: !1, - ReadableStream: !1, - registerProcessor: !1, - RemotePlayback: !1, - removeEventListener: !1, - Request: !1, - requestAnimationFrame: !1, - requestIdleCallback: !1, - resizeBy: !1, - ResizeObserver: !1, - ResizeObserverEntry: !1, - resizeTo: !1, - Response: !1, - RTCCertificate: !1, - RTCDataChannel: !1, - RTCDataChannelEvent: !1, - RTCDtlsTransport: !1, - RTCIceCandidate: !1, - RTCIceGatherer: !1, - RTCIceTransport: !1, - RTCPeerConnection: !1, - RTCPeerConnectionIceEvent: !1, - RTCRtpContributingSource: !1, - RTCRtpReceiver: !1, - RTCRtpSender: !1, - RTCSctpTransport: !1, - RTCSessionDescription: !1, - RTCStatsReport: !1, - RTCTrackEvent: !1, - screen: !1, - Screen: !1, - screenLeft: !1, - ScreenOrientation: !1, - screenTop: !1, - screenX: !1, - screenY: !1, - ScriptProcessorNode: !1, - scroll: !1, - scrollbars: !1, - scrollBy: !1, - scrollTo: !1, - scrollX: !1, - scrollY: !1, - SecurityPolicyViolationEvent: !1, - Selection: !1, - self: !1, - ServiceWorker: !1, - ServiceWorkerContainer: !1, - ServiceWorkerRegistration: !1, - sessionStorage: !1, - setInterval: !1, - setTimeout: !1, - ShadowRoot: !1, - SharedWorker: !1, - SourceBuffer: !1, - SourceBufferList: !1, - speechSynthesis: !1, - SpeechSynthesisEvent: !1, - SpeechSynthesisUtterance: !1, - StaticRange: !1, - status: !1, - statusbar: !1, - StereoPannerNode: !1, - stop: !1, - Storage: !1, - StorageEvent: !1, - StorageManager: !1, - styleMedia: !1, - StyleSheet: !1, - StyleSheetList: !1, - SubtleCrypto: !1, - SVGAElement: !1, - SVGAngle: !1, - SVGAnimatedAngle: !1, - SVGAnimatedBoolean: !1, - SVGAnimatedEnumeration: !1, - SVGAnimatedInteger: !1, - SVGAnimatedLength: !1, - SVGAnimatedLengthList: !1, - SVGAnimatedNumber: !1, - SVGAnimatedNumberList: !1, - SVGAnimatedPreserveAspectRatio: !1, - SVGAnimatedRect: !1, - SVGAnimatedString: !1, - SVGAnimatedTransformList: !1, - SVGAnimateElement: !1, - SVGAnimateMotionElement: !1, - SVGAnimateTransformElement: !1, - SVGAnimationElement: !1, - SVGCircleElement: !1, - SVGClipPathElement: !1, - SVGComponentTransferFunctionElement: !1, - SVGDefsElement: !1, - SVGDescElement: !1, - SVGDiscardElement: !1, - SVGElement: !1, - SVGEllipseElement: !1, - SVGFEBlendElement: !1, - SVGFEColorMatrixElement: !1, - SVGFEComponentTransferElement: !1, - SVGFECompositeElement: !1, - SVGFEConvolveMatrixElement: !1, - SVGFEDiffuseLightingElement: !1, - SVGFEDisplacementMapElement: !1, - SVGFEDistantLightElement: !1, - SVGFEDropShadowElement: !1, - SVGFEFloodElement: !1, - SVGFEFuncAElement: !1, - SVGFEFuncBElement: !1, - SVGFEFuncGElement: !1, - SVGFEFuncRElement: !1, - SVGFEGaussianBlurElement: !1, - SVGFEImageElement: !1, - SVGFEMergeElement: !1, - SVGFEMergeNodeElement: !1, - SVGFEMorphologyElement: !1, - SVGFEOffsetElement: !1, - SVGFEPointLightElement: !1, - SVGFESpecularLightingElement: !1, - SVGFESpotLightElement: !1, - SVGFETileElement: !1, - SVGFETurbulenceElement: !1, - SVGFilterElement: !1, - SVGForeignObjectElement: !1, - SVGGElement: !1, - SVGGeometryElement: !1, - SVGGradientElement: !1, - SVGGraphicsElement: !1, - SVGImageElement: !1, - SVGLength: !1, - SVGLengthList: !1, - SVGLinearGradientElement: !1, - SVGLineElement: !1, - SVGMarkerElement: !1, - SVGMaskElement: !1, - SVGMatrix: !1, - SVGMetadataElement: !1, - SVGMPathElement: !1, - SVGNumber: !1, - SVGNumberList: !1, - SVGPathElement: !1, - SVGPatternElement: !1, - SVGPoint: !1, - SVGPointList: !1, - SVGPolygonElement: !1, - SVGPolylineElement: !1, - SVGPreserveAspectRatio: !1, - SVGRadialGradientElement: !1, - SVGRect: !1, - SVGRectElement: !1, - SVGScriptElement: !1, - SVGSetElement: !1, - SVGStopElement: !1, - SVGStringList: !1, - SVGStyleElement: !1, - SVGSVGElement: !1, - SVGSwitchElement: !1, - SVGSymbolElement: !1, - SVGTextContentElement: !1, - SVGTextElement: !1, - SVGTextPathElement: !1, - SVGTextPositioningElement: !1, - SVGTitleElement: !1, - SVGTransform: !1, - SVGTransformList: !1, - SVGTSpanElement: !1, - SVGUnitTypes: !1, - SVGUseElement: !1, - SVGViewElement: !1, - TaskAttributionTiming: !1, - Text: !1, - TextDecoder: !1, - TextEncoder: !1, - TextEvent: !1, - TextMetrics: !1, - TextTrack: !1, - TextTrackCue: !1, - TextTrackCueList: !1, - TextTrackList: !1, - TimeRanges: !1, - toolbar: !1, - top: !1, - Touch: !1, - TouchEvent: !1, - TouchList: !1, - TrackEvent: !1, - TransitionEvent: !1, - TreeWalker: !1, - UIEvent: !1, - URL: !1, - URLSearchParams: !1, - ValidityState: !1, - visualViewport: !1, - VisualViewport: !1, - VTTCue: !1, - WaveShaperNode: !1, - WebAssembly: !1, - WebGL2RenderingContext: !1, - WebGLActiveInfo: !1, - WebGLBuffer: !1, - WebGLContextEvent: !1, - WebGLFramebuffer: !1, - WebGLProgram: !1, - WebGLQuery: !1, - WebGLRenderbuffer: !1, - WebGLRenderingContext: !1, - WebGLSampler: !1, - WebGLShader: !1, - WebGLShaderPrecisionFormat: !1, - WebGLSync: !1, - WebGLTexture: !1, - WebGLTransformFeedback: !1, - WebGLUniformLocation: !1, - WebGLVertexArrayObject: !1, - WebSocket: !1, - WheelEvent: !1, - window: !1, - Window: !1, - Worker: !1, - WritableStream: !1, - XMLDocument: !1, - XMLHttpRequest: !1, - XMLHttpRequestEventTarget: !1, - XMLHttpRequestUpload: !1, - XMLSerializer: !1, - XPathEvaluator: !1, - XPathExpression: !1, - XPathResult: !1, - XSLTProcessor: !1 - }, - worker: { - addEventListener: !1, - applicationCache: !1, - atob: !1, - Blob: !1, - BroadcastChannel: !1, - btoa: !1, - Cache: !1, - caches: !1, - clearInterval: !1, - clearTimeout: !1, - close: !0, - console: !1, - fetch: !1, - FileReaderSync: !1, - FormData: !1, - Headers: !1, - IDBCursor: !1, - IDBCursorWithValue: !1, - IDBDatabase: !1, - IDBFactory: !1, - IDBIndex: !1, - IDBKeyRange: !1, - IDBObjectStore: !1, - IDBOpenDBRequest: !1, - IDBRequest: !1, - IDBTransaction: !1, - IDBVersionChangeEvent: !1, - ImageData: !1, - importScripts: !0, - indexedDB: !1, - location: !1, - MessageChannel: !1, - MessagePort: !1, - name: !1, - navigator: !1, - Notification: !1, - onclose: !0, - onconnect: !0, - onerror: !0, - onlanguagechange: !0, - onmessage: !0, - onoffline: !0, - ononline: !0, - onrejectionhandled: !0, - onunhandledrejection: !0, - performance: !1, - Performance: !1, - PerformanceEntry: !1, - PerformanceMark: !1, - PerformanceMeasure: !1, - PerformanceNavigation: !1, - PerformanceResourceTiming: !1, - PerformanceTiming: !1, - postMessage: !0, - Promise: !1, - queueMicrotask: !1, - removeEventListener: !1, - Request: !1, - Response: !1, - self: !0, - ServiceWorkerRegistration: !1, - setInterval: !1, - setTimeout: !1, - TextDecoder: !1, - TextEncoder: !1, - URL: !1, - URLSearchParams: !1, - WebSocket: !1, - Worker: !1, - WorkerGlobalScope: !1, - XMLHttpRequest: !1 - }, - node: { - __dirname: !1, - __filename: !1, - Buffer: !1, - clearImmediate: !1, - clearInterval: !1, - clearTimeout: !1, - console: !1, - exports: !0, - global: !1, - Intl: !1, - module: !1, - process: !1, - queueMicrotask: !1, - require: !1, - setImmediate: !1, - setInterval: !1, - setTimeout: !1, - TextDecoder: !1, - TextEncoder: !1, - URL: !1, - URLSearchParams: !1 - }, - commonjs: { - exports: !0, - global: !1, - module: !1, - require: !1 - }, - amd: { - define: !1, - require: !1 - }, - mocha: { - after: !1, - afterEach: !1, - before: !1, - beforeEach: !1, - context: !1, - describe: !1, - it: !1, - mocha: !1, - run: !1, - setup: !1, - specify: !1, - suite: !1, - suiteSetup: !1, - suiteTeardown: !1, - teardown: !1, - test: !1, - xcontext: !1, - xdescribe: !1, - xit: !1, - xspecify: !1 - }, - jasmine: { - afterAll: !1, - afterEach: !1, - beforeAll: !1, - beforeEach: !1, - describe: !1, - expect: !1, - fail: !1, - fdescribe: !1, - fit: !1, - it: !1, - jasmine: !1, - pending: !1, - runs: !1, - spyOn: !1, - spyOnProperty: !1, - waits: !1, - waitsFor: !1, - xdescribe: !1, - xit: !1 - }, - jest: { - afterAll: !1, - afterEach: !1, - beforeAll: !1, - beforeEach: !1, - describe: !1, - expect: !1, - fdescribe: !1, - fit: !1, - it: !1, - jest: !1, - pit: !1, - require: !1, - test: !1, - xdescribe: !1, - xit: !1, - xtest: !1 - }, - qunit: { - asyncTest: !1, - deepEqual: !1, - equal: !1, - expect: !1, - module: !1, - notDeepEqual: !1, - notEqual: !1, - notOk: !1, - notPropEqual: !1, - notStrictEqual: !1, - ok: !1, - propEqual: !1, - QUnit: !1, - raises: !1, - start: !1, - stop: !1, - strictEqual: !1, - test: !1, - throws: !1 - }, - phantomjs: { - console: !0, - exports: !0, - phantom: !0, - require: !0, - WebPage: !0 - }, - couch: { - emit: !1, - exports: !1, - getRow: !1, - log: !1, - module: !1, - provides: !1, - require: !1, - respond: !1, - send: !1, - start: !1, - sum: !1 - }, - rhino: { - defineClass: !1, - deserialize: !1, - gc: !1, - help: !1, - importClass: !1, - importPackage: !1, - java: !1, - load: !1, - loadClass: !1, - Packages: !1, - print: !1, - quit: !1, - readFile: !1, - readUrl: !1, - runCommand: !1, - seal: !1, - serialize: !1, - spawn: !1, - sync: !1, - toint32: !1, - version: !1 - }, - nashorn: { - __DIR__: !1, - __FILE__: !1, - __LINE__: !1, - com: !1, - edu: !1, - exit: !1, - java: !1, - Java: !1, - javafx: !1, - JavaImporter: !1, - javax: !1, - JSAdapter: !1, - load: !1, - loadWithNewGlobal: !1, - org: !1, - Packages: !1, - print: !1, - quit: !1 - }, - wsh: { - ActiveXObject: !0, - Enumerator: !0, - GetObject: !0, - ScriptEngine: !0, - ScriptEngineBuildVersion: !0, - ScriptEngineMajorVersion: !0, - ScriptEngineMinorVersion: !0, - VBArray: !0, - WScript: !0, - WSH: !0, - XDomainRequest: !0 - }, - jquery: { - $: !1, - jQuery: !1 - }, - yui: { - YAHOO: !1, - YAHOO_config: !1, - YUI: !1, - YUI_config: !1 - }, - shelljs: { - cat: !1, - cd: !1, - chmod: !1, - config: !1, - cp: !1, - dirs: !1, - echo: !1, - env: !1, - error: !1, - exec: !1, - exit: !1, - find: !1, - grep: !1, - ln: !1, - ls: !1, - mkdir: !1, - mv: !1, - popd: !1, - pushd: !1, - pwd: !1, - rm: !1, - sed: !1, - set: !1, - target: !1, - tempdir: !1, - test: !1, - touch: !1, - which: !1 - }, - prototypejs: { - $: !1, - $$: !1, - $A: !1, - $break: !1, - $continue: !1, - $F: !1, - $H: !1, - $R: !1, - $w: !1, - Abstract: !1, - Ajax: !1, - Autocompleter: !1, - Builder: !1, - Class: !1, - Control: !1, - Draggable: !1, - Draggables: !1, - Droppables: !1, - Effect: !1, - Element: !1, - Enumerable: !1, - Event: !1, - Field: !1, - Form: !1, - Hash: !1, - Insertion: !1, - ObjectRange: !1, - PeriodicalExecuter: !1, - Position: !1, - Prototype: !1, - Scriptaculous: !1, - Selector: !1, - Sortable: !1, - SortableObserver: !1, - Sound: !1, - Template: !1, - Toggle: !1, - Try: !1 - }, - meteor: { - _: !1, - $: !1, - Accounts: !1, - AccountsClient: !1, - AccountsCommon: !1, - AccountsServer: !1, - App: !1, - Assets: !1, - Blaze: !1, - check: !1, - Cordova: !1, - DDP: !1, - DDPRateLimiter: !1, - DDPServer: !1, - Deps: !1, - EJSON: !1, - Email: !1, - HTTP: !1, - Log: !1, - Match: !1, - Meteor: !1, - Mongo: !1, - MongoInternals: !1, - Npm: !1, - Package: !1, - Plugin: !1, - process: !1, - Random: !1, - ReactiveDict: !1, - ReactiveVar: !1, - Router: !1, - ServiceConfiguration: !1, - Session: !1, - share: !1, - Spacebars: !1, - Template: !1, - Tinytest: !1, - Tracker: !1, - UI: !1, - Utils: !1, - WebApp: !1, - WebAppInternals: !1 - }, - mongo: { - _isWindows: !1, - _rand: !1, - BulkWriteResult: !1, - cat: !1, - cd: !1, - connect: !1, - db: !1, - getHostName: !1, - getMemInfo: !1, - hostname: !1, - ISODate: !1, - listFiles: !1, - load: !1, - ls: !1, - md5sumFile: !1, - mkdir: !1, - Mongo: !1, - NumberInt: !1, - NumberLong: !1, - ObjectId: !1, - PlanCache: !1, - print: !1, - printjson: !1, - pwd: !1, - quit: !1, - removeFile: !1, - rs: !1, - sh: !1, - UUID: !1, - version: !1, - WriteResult: !1 - }, - applescript: { - $: !1, - Application: !1, - Automation: !1, - console: !1, - delay: !1, - Library: !1, - ObjC: !1, - ObjectSpecifier: !1, - Path: !1, - Progress: !1, - Ref: !1 - }, - serviceworker: { - addEventListener: !1, - applicationCache: !1, - atob: !1, - Blob: !1, - BroadcastChannel: !1, - btoa: !1, - Cache: !1, - caches: !1, - CacheStorage: !1, - clearInterval: !1, - clearTimeout: !1, - Client: !1, - clients: !1, - Clients: !1, - close: !0, - console: !1, - ExtendableEvent: !1, - ExtendableMessageEvent: !1, - fetch: !1, - FetchEvent: !1, - FileReaderSync: !1, - FormData: !1, - Headers: !1, - IDBCursor: !1, - IDBCursorWithValue: !1, - IDBDatabase: !1, - IDBFactory: !1, - IDBIndex: !1, - IDBKeyRange: !1, - IDBObjectStore: !1, - IDBOpenDBRequest: !1, - IDBRequest: !1, - IDBTransaction: !1, - IDBVersionChangeEvent: !1, - ImageData: !1, - importScripts: !1, - indexedDB: !1, - location: !1, - MessageChannel: !1, - MessagePort: !1, - name: !1, - navigator: !1, - Notification: !1, - onclose: !0, - onconnect: !0, - onerror: !0, - onfetch: !0, - oninstall: !0, - onlanguagechange: !0, - onmessage: !0, - onmessageerror: !0, - onnotificationclick: !0, - onnotificationclose: !0, - onoffline: !0, - ononline: !0, - onpush: !0, - onpushsubscriptionchange: !0, - onrejectionhandled: !0, - onsync: !0, - onunhandledrejection: !0, - performance: !1, - Performance: !1, - PerformanceEntry: !1, - PerformanceMark: !1, - PerformanceMeasure: !1, - PerformanceNavigation: !1, - PerformanceResourceTiming: !1, - PerformanceTiming: !1, - postMessage: !0, - Promise: !1, - queueMicrotask: !1, - registration: !1, - removeEventListener: !1, - Request: !1, - Response: !1, - self: !1, - ServiceWorker: !1, - ServiceWorkerContainer: !1, - ServiceWorkerGlobalScope: !1, - ServiceWorkerMessageEvent: !1, - ServiceWorkerRegistration: !1, - setInterval: !1, - setTimeout: !1, - skipWaiting: !1, - TextDecoder: !1, - TextEncoder: !1, - URL: !1, - URLSearchParams: !1, - WebSocket: !1, - WindowClient: !1, - Worker: !1, - WorkerGlobalScope: !1, - XMLHttpRequest: !1 - }, - atomtest: { - advanceClock: !1, - fakeClearInterval: !1, - fakeClearTimeout: !1, - fakeSetInterval: !1, - fakeSetTimeout: !1, - resetTimeouts: !1, - waitsForPromise: !1 - }, - embertest: { - andThen: !1, - click: !1, - currentPath: !1, - currentRouteName: !1, - currentURL: !1, - fillIn: !1, - find: !1, - findAll: !1, - findWithAssert: !1, - keyEvent: !1, - pauseTest: !1, - resumeTest: !1, - triggerEvent: !1, - visit: !1, - wait: !1 - }, - protractor: { - $: !1, - $$: !1, - browser: !1, - by: !1, - By: !1, - DartObject: !1, - element: !1, - protractor: !1 - }, - "shared-node-browser": { - clearInterval: !1, - clearTimeout: !1, - console: !1, - setInterval: !1, - setTimeout: !1, - URL: !1, - URLSearchParams: !1 - }, - webextensions: { - browser: !1, - chrome: !1, - opr: !1 - }, - greasemonkey: { - cloneInto: !1, - createObjectIn: !1, - exportFunction: !1, - GM: !1, - GM_addStyle: !1, - GM_deleteValue: !1, - GM_getResourceText: !1, - GM_getResourceURL: !1, - GM_getValue: !1, - GM_info: !1, - GM_listValues: !1, - GM_log: !1, - GM_openInTab: !1, - GM_registerMenuCommand: !1, - GM_setClipboard: !1, - GM_setValue: !1, - GM_xmlhttpRequest: !1, - unsafeWindow: !1 - }, - devtools: { - $: !1, - $_: !1, - $$: !1, - $0: !1, - $1: !1, - $2: !1, - $3: !1, - $4: !1, - $x: !1, - chrome: !1, - clear: !1, - copy: !1, - debug: !1, - dir: !1, - dirxml: !1, - getEventListeners: !1, - inspect: !1, - keys: !1, - monitor: !1, - monitorEvents: !1, - profile: !1, - profileEnd: !1, - queryObjects: !1, - table: !1, - undebug: !1, - unmonitor: !1, - unmonitorEvents: !1, - values: !1 - } - }; - }, {} ], - 155: [ function(e, t, n) { - "use strict"; - t.exports = e("./globals.json"); - }, { - "./globals.json": 154 - } ], - 156: [ function(e, t, n) { - t.exports = function(e) { - return null != e && (r(e) || function(e) { - return "function" == typeof e.readFloatLE && "function" == typeof e.slice && r(e.slice(0, 0)); - }(e) || !!e._isBuffer); - }; - function r(e) { - return !!e.constructor && "function" == typeof e.constructor.isBuffer && e.constructor.isBuffer(e); - } - }, {} ], - 157: [ function(e, t, n) { - Object.defineProperty(n, "__esModule", { - value: !0 - }); - n.default = /((['"])(?:(?!\2|\\).|\\(?:\r\n|[\s\S]))*(\2)?|`(?:[^`\\$]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{[^}]*\}?)*\}?)*(`)?)|(\/\/.*)|(\/\*(?:[^*]|\*(?!\/))*(\*\/)?)|(\/(?!\*)(?:\[(?:(?![\]\\]).|\\.)*\]|(?![\/\]\\]).|\\.)+\/(?:(?!\s*(?:\b|[\u0080-\uFFFF$\\'"~({]|[+\-!](?!=)|\.?\d))|[gmiyus]{1,6}\b(?![\u0080-\uFFFF$\\]|\s*(?:[+\-*%&|^<>!=?({]|\/(?![\/*])))))|(0[xX][\da-fA-F]+|0[oO][0-7]+|0[bB][01]+|(?:\d*\.\d+|\d+\.?)(?:[eE][+-]?\d+)?)|((?!\d)(?:(?!\s)[$\w\u0080-\uFFFF]|\\u[\da-fA-F]{4}|\\u\{[\da-fA-F]+\})+)|(--|\+\+|&&|\|\||=>|\.{3}|(?:[+\-\/%&|^]|\*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[\](){}])|(\s+)|(^$|[\s\S])/g; - n.matchToToken = function(e) { - var t = { - type: "invalid", - value: e[0], - closed: void 0 - }; - e[1] ? (t.type = "string", t.closed = !(!e[3] && !e[4])) : e[5] ? t.type = "comment" : e[6] ? (t.type = "comment", - t.closed = !!e[7]) : e[8] ? t.type = "regex" : e[9] ? t.type = "number" : e[10] ? t.type = "name" : e[11] ? t.type = "punctuator" : e[12] && (t.type = "whitespace"); - return t; - }; - }, {} ], - 158: [ function(e, t, n) { - (function(e) { - (function() { - "use strict"; - const n = {}; - const r = n.hasOwnProperty; - const i = (e, t) => { - for (const n in e) r.call(e, n) && t(n, e[n]); - }; - const s = n.toString; - const a = Array.isArray; - const o = e.isBuffer; - const l = { - '"': '\\"', - "'": "\\'", - "\\": "\\\\", - "\b": "\\b", - "\f": "\\f", - "\n": "\\n", - "\r": "\\r", - "\t": "\\t" - }; - const c = /["'\\\b\f\n\r\t]/; - const p = /[0-9]/; - const u = /[ !#-&\(-\[\]-_a-~]/; - const d = (e, t) => { - const n = () => { - T = g; - ++t.indentLevel; - g = t.indent.repeat(t.indentLevel); - }; - const r = { - escapeEverything: !1, - minimal: !1, - isScriptContext: !1, - quotes: "single", - wrap: !1, - es6: !1, - json: !1, - compact: !0, - lowercaseHex: !1, - numbers: "decimal", - indent: "\t", - indentLevel: 0, - __inline1__: !1, - __inline2__: !1 - }; - const h = t && t.json; - if (h) { - r.quotes = "double"; - r.wrap = !0; - } - "single" != (t = ((e, t) => { - if (!t) return e; - i(t, (t, n) => { - e[t] = n; - }); - return e; - })(r, t)).quotes && "double" != t.quotes && "backtick" != t.quotes && (t.quotes = "single"); - const f = "double" == t.quotes ? '"' : "backtick" == t.quotes ? "`" : "'"; - const m = t.compact; - const y = t.lowercaseHex; - let g = t.indent.repeat(t.indentLevel); - let T = ""; - const b = t.__inline1__; - const S = t.__inline2__; - const x = m ? "" : "\n"; - let E; - let P = !0; - const v = "binary" == t.numbers; - const A = "octal" == t.numbers; - const w = "decimal" == t.numbers; - const C = "hexadecimal" == t.numbers; - h && e && (e => "function" == typeof e)(e.toJSON) && (e = e.toJSON()); - if (!(e => "string" == typeof e || "[object String]" == s.call(e))(e)) { - if ((e => "[object Map]" == s.call(e))(e)) { - if (0 == e.size) return "new Map()"; - if (!m) { - t.__inline1__ = !0; - t.__inline2__ = !1; - } - return "new Map(" + d(Array.from(e), t) + ")"; - } - if ((e => "[object Set]" == s.call(e))(e)) return 0 == e.size ? "new Set()" : "new Set(" + d(Array.from(e), t) + ")"; - if (o(e)) return 0 == e.length ? "Buffer.from([])" : "Buffer.from(" + d(Array.from(e), t) + ")"; - if (a(e)) { - E = []; - t.wrap = !0; - if (b) { - t.__inline1__ = !1; - t.__inline2__ = !0; - } - S || n(); - ((e, t) => { - const n = e.length; - let r = -1; - for (;++r < n; ) t(e[r]); - })(e, e => { - P = !1; - S && (t.__inline2__ = !1); - E.push((m || S ? "" : g) + d(e, t)); - }); - return P ? "[]" : S ? "[" + E.join(", ") + "]" : "[" + x + E.join("," + x) + x + (m ? "" : T) + "]"; - } - if (!(e => "number" == typeof e || "[object Number]" == s.call(e))(e)) { - if ((e => "[object Object]" == s.call(e))(e)) { - E = []; - t.wrap = !0; - n(); - i(e, (e, n) => { - P = !1; - E.push((m ? "" : g) + d(e, t) + ":" + (m ? "" : " ") + d(n, t)); - }); - return P ? "{}" : "{" + x + E.join("," + x) + x + (m ? "" : T) + "}"; - } - return h ? JSON.stringify(e) || "null" : String(e); - } - if (h) return JSON.stringify(e); - if (w) return String(e); - if (C) { - let t = e.toString(16); - y || (t = t.toUpperCase()); - return "0x" + t; - } - if (v) return "0b" + e.toString(2); - if (A) return "0o" + e.toString(8); - } - const I = e; - let O = -1; - const N = I.length; - E = ""; - for (;++O < N; ) { - const e = I.charAt(O); - if (t.es6) { - const e = I.charCodeAt(O); - if (e >= 55296 && e <= 56319 && N > O + 1) { - const t = I.charCodeAt(O + 1); - if (t >= 56320 && t <= 57343) { - let n = (1024 * (e - 55296) + t - 56320 + 65536).toString(16); - y || (n = n.toUpperCase()); - E += "\\u{" + n + "}"; - ++O; - continue; - } - } - } - if (!t.escapeEverything) { - if (u.test(e)) { - E += e; - continue; - } - if ('"' == e) { - E += f == e ? '\\"' : e; - continue; - } - if ("`" == e) { - E += f == e ? "\\`" : e; - continue; - } - if ("'" == e) { - E += f == e ? "\\'" : e; - continue; - } - } - if ("\0" == e && !h && !p.test(I.charAt(O + 1))) { - E += "\\0"; - continue; - } - if (c.test(e)) { - E += l[e]; - continue; - } - const n = e.charCodeAt(0); - if (t.minimal && 8232 != n && 8233 != n) { - E += e; - continue; - } - let r = n.toString(16); - y || (r = r.toUpperCase()); - const i = r.length > 2 || h; - const s = "\\" + (i ? "u" : "x") + ("0000" + r).slice(i ? -4 : -2); - E += s; - } - t.wrap && (E = f + E + f); - "`" == f && (E = E.replace(/\$\{/g, "\\${")); - return t.isScriptContext ? E.replace(/<\/(script|style)/gi, "<\\/$1").replace(/0;)a()}function u(e){return r.text.substr(r.pos,e.length)==e}function f(e,n){var t=r.text.indexOf(e,r.pos);if(n&&-1==t)throw ft;return t}function c(){r.tokline=r.line;r.tokcol=r.col;r.tokpos=r.pos}var l=!1;function p(t,i,o){r.regex_allowed="operator"==t&&!lt(i)||"keyword"==t&&jn(i)||"punc"==t&&Xn(i)||"arrow"==t;if("punc"==t&&"."==i)l=!0;else if(!o)l=!1;var a={type:t,value:i,line:r.tokline,col:r.tokcol,pos:r.tokpos,endline:r.line,endcol:r.col,endpos:r.pos,nlb:r.newline_before,file:n};if(/^(?:num|string|regexp)$/i.test(t))a.raw=e.substring(a.pos,a.endpos);if(!o){a.comments_before=r.comments_before;a.comments_after=r.comments_before=[]}r.newline_before=!1;return new F(a)}function d(){for(;Yn(o());)a()}function h(e){st(e,n,r.tokline,r.tokcol,r.tokpos)}function v(e){var n=!1,t=!1,i=!1,r="."==e;var s=function(e){var n,t="",i=0;for(;(n=o())&&e(n,i++);)t+=a();return t}(function(o,a){switch(o.charCodeAt(0)){case 98:case 66:return i=!0;case 111:case 79:case 120:case 88:return i?!1:i=!0;case 101:case 69:return i?!0:n?!1:n=t=!0;case 45:return t||0==a&&!e;case 43:return t;case(t=!1,46):return!r&&!i&&!n?r=!0:!1;}return Hn.test(o)});if(e)s=e+s;if(Rn.test(s)&&T.has_directive("use strict"))h("Legacy octal literals are not allowed in strict mode");var u=function(e){if(In.test(e))return parseInt(e.substr(2),16);else if(Rn.test(e))return parseInt(e.substr(1),8);else if(Un.test(e))return parseInt(e.substr(2),8);else if(Pn.test(e))return parseInt(e.substr(2),2);else if(Ln.test(e))return parseFloat(e);else{var n=parseFloat(e);if(n==e)return n}}(s);if(!isNaN(u))return p("num",u);else h("Invalid syntax: "+s)}function m(e){var n=a(!0,e);switch(n.charCodeAt(0)){case 110:return"\n";case 114:return"\r";case 116:return"\t";case 98:return"\b";case 118:return"\x0B";case 102:return"\f";case 120:return String.fromCharCode(_(2));case 117:if("{"==o()){a(!0);if("}"===o())h("Expecting hex-character between {}");for(;"0"==o();)a(!0);var t,i=f("}",!0)-r.pos;if(i>6||(t=_(i))>1114111)h("Unicode reference out of bounce");a(!0);return function(e){if(e>65535)return String.fromCharCode(55296+((e-=65536)>>10))+String.fromCharCode(e%1024+56320);return String.fromCharCode(e)}(t)}return String.fromCharCode(_(4));case 10:return"";case 13:if("\n"==o()){a(!0,e);return""}}if(n>="0"&&n<="7")return function(e){var n=o();if(n>="0"&&n<="7")if((e+=a(!0))[0]<="3"&&(n=o())>="0"&&n<="7")e+=a(!0);if("0"===e)return"\0";if(e.length>0&&T.has_directive("use strict"))h("Legacy octal escape sequences are not allowed in strict mode");return String.fromCharCode(parseInt(e,8))}(n);return n}function _(e){var n=0;for(;e>0;--e){var t=parseInt(a(!0),16);if(isNaN(t))h("Invalid hex-character pattern in string");n=n<<4|t}return n}var D=S("Unterminated string constant",function(e){var n=a(),t="";for(;;){var i=a(!0,!0);if("\\"==i)i=m(!0);else if(Jn(i))h("Unterminated string constant");else if(i==n)break;t+=i}var r=p("string",t);r.quote=e;return r});var g=S("Unterminated template",function(e){if(e)r.template_braces.push(r.brace_counter);var n,t,i="",s="";a(!0,!0);for(;"`"!=(n=a(!0,!0));){if("\r"==n){if("\n"==o())++r.pos;n="\n"}else if("$"==n&&"{"==o()){a(!0,!0);r.brace_counter++;(t=p(e?"template_head":"template_substitution",i)).begin=e;t.raw=s;t.end=!1;return t}s+=n;if("\\"==n){var u=r.pos;n=m();s+=r.text.substr(u,r.pos-u)}i+=n}r.template_braces.pop();(t=p(e?"template_head":"template_substitution",i)).begin=e;t.raw=s;t.end=!0;return t});function b(e){var n=r.regex_allowed;var t,i=function(){var e=r.text;for(var n=r.pos,t=r.text.length;n=0;r.regex_allowed=e;return T});var E=S("Unterminated identifier name",function(){var e,n="",t=!1;var i=function(){t=!0;a();if("u"!==o())h("Expecting UnicodeEscapeSequence -- uXXXX or u{XXXX}");return m()};if("\\"===(n=o())){if(!it(n=i()))h("First identifier char is an invalid identifier char")}else if(it(n))a();else return"";for(;null!=(e=o());){if("\\"===(e=o())){if(!rt(e=i()))h("Invalid escaped identifier char")}else{if(!rt(e))break;a()}n+=e}if(zn(n)&&t)h("Escaped characters are not allowed in keywords");return n});var A=S("Unterminated regular expression",function(e){var n,t=!1,i=!1;for(;n=a(!0);)if(Jn(n))h("Unexpected line terminator");else if(t){e+="\\"+n;t=!1}else if("["==n){i=!0;e+=n}else if("]"==n&&i){i=!1;e+=n}else if("/"==n&&!i)break;else if("\\"==n)t=!0;else e+=n;var r=E();try{var o=RegExp(e,r);o.raw_source=e;return p("regexp",o)}catch(e){h(e.message)}});function w(e){return p("operator",function e(n){if(!o())return n;var t=n+o();if(Vn(t)){a();return e(t)}else return n}(e||a()))}function x(){a();switch(o()){case"/":a();return b("comment1");case"*":a();return y();}return r.regex_allowed?A(""):w("/")}function C(){a();if(">"===o()){a();return p("arrow","=>")}else return w("=")}function k(){a();if(nt(o().charCodeAt(0)))return v(".");if("."===o()){a();a();return p("expand","...")}return p("punc",".")}function B(){var e=E();if(l)return p("name",e);return qn(e)?p("atom",e):!Mn(e)?p("name",e):Vn(e)?p("operator",e):p("keyword",e)}function S(e,n){return function(t){try{return n(t)}catch(n){if(n===ft)h(e);else throw n}}}function T(e){if(null!=e)return A(e);if(i&&0==r.pos&&u("#!")){c();s(2);b("comment5")}for(;;){d();c();if(t){if(u("")&&r.newline_before){s(3);b("comment4");continue}}var n=o();if(!n)return p("eof");var f=n.charCodeAt(0);switch(f){case 34:case 39:return D(n);case 46:return k();case 47:var l=x();if(l===T)continue;return l;case 61:return C();case 96:return g(!0);case 123:r.brace_counter++;break;case 125:r.brace_counter--;if(r.template_braces.length>0&&r.template_braces[r.template_braces.length-1]===r.brace_counter)return g(!1);}if(nt(f))return v();if(Gn(n))return p("punc",a());if(Nn(n))return w();if(92==f||it(n))return B();break}h("Unexpected character '"+n+"'")}T.next=a;T.peek=o;T.context=function(e){if(e)r=e;return r};T.add_directive=function(e){r.directive_stack[r.directive_stack.length-1].push(e);if(void 0===r.directives[e])r.directives[e]=1;else r.directives[e]++};T.push_directives_stack=function(){r.directive_stack.push([])};T.pop_directives_stack=function(){var e=r.directive_stack[r.directive_stack.length-1];for(var n=0;n0};return T}(e,n.filename,n.html5_comments,n.shebang):e,token:null,prev:null,peeked:null,in_function:0,in_async:-1,in_generator:-1,in_directives:!0,in_loop:0,labels:[]};t.token=s();function r(e,n){return ut(t.token,e,n)}function o(){return t.peeked||(t.peeked=t.input())}function s(){t.prev=t.token;if(t.peeked){t.token=t.peeked;t.peeked=null}else t.token=t.input();t.in_directives=t.in_directives&&("string"==t.token.type||r("punc",";"));return t.token}function u(){return t.prev}function f(e,n,i,r){var o=t.input.context();st(e,o.filename,null!=n?n:o.tokline,null!=i?i:o.tokcol,null!=r?r:o.tokpos)}function c(e,n){f(n,e.line,e.col)}function l(e){if(null==e)e=t.token;c(e,"Unexpected token: "+e.type+" ("+e.value+")")}function p(e,n){if(r(e,n))return s();c(t.token,"Unexpected token "+t.token.type+" \xAB"+t.token.value+"\xBB, expected "+e+" \xAB"+n+"\xBB")}function d(e){return p("punc",e)}function h(e){return e.nlb||!g(e.comments_before,function(e){return!e.nlb})}function v(){return!n.strict&&(r("eof")||r("punc","}")||h(t.token))}function m(){return t.in_generator===t.in_function}function _(){return t.in_async===t.in_function}function D(e){if(r("punc",";"))s();else if(!e&&!v())l()}function b(){d("(");var e=St(!0);d(")");return e}function E(e){return function(){var n=t.token;var i=e.apply(null,arguments);var r=u();i.start=n;i.end=r;return i}}function A(){if(r("operator","/")||r("operator","/=")){t.peeked=null;t.token=t.input(t.token.value.substr(1))}}var x=E(function(e){A();switch(t.token.type){case"string":if(t.in_directives){var a=o();if(-1==t.token.raw.indexOf("\\")&&(ut(a,"punc",";")||ut(a,"punc","}")||h(a)||ut(a,"eof")))t.input.add_directive(t.token.value);else t.in_directives=!1}var m=t.in_directives,g=S();return m?new k(g.body):g;case"template_head":case"num":case"regexp":case"operator":case"atom":return S();case"name":if("async"==t.token.value&&ut(o(),"keyword","function")){s();s();return j(Z,!1,!0,e)}if("import"==t.token.value&&!ut(o(),"punc","(")){s();var y=function(){var e=u();var n;var i;if(r("name"))n=bt(fn);if(r("punc",","))s();if((i=mt(!0))||n)p("name","from");var o=t.token;if("string"!==o.type)l();s();return new Ee({start:e,imported_name:n,imported_names:i,module_name:new gn({start:o,value:o.value,quote:o.quote,end:o}),end:t.token})}();D();return y}return ut(o(),"punc",":")?function(){var e=bt(ln);if("await"===e.name&&_())c(t.prev,"await cannot be used as label inside async function");if(i(function(n){return n.name==e.name},t.labels))f("Label "+e.name+" defined twice");d(":");t.labels.push(e);var n=x();t.labels.pop();if(!(n instanceof z))e.references.forEach(function(n){if(n instanceof ue){n=n.label.start;f("Continue label `"+e.name+"` refers to non-IterationStatement.",n.line,n.col,n.pos)}});return new q({body:n,label:e})}():S();case"punc":switch(t.token.value){case"{":return new O({start:t.token,body:le(),end:u()});case"[":case"(":return S();case";":t.in_directives=!1;s();return new $;default:l();}case"keyword":switch(t.token.value){case"break":s();return T(se);case"continue":s();return T(ue);case"debugger":s();D();return new C;case"do":s();var E=Tt(x);p("keyword","while");var F=b();D(!0);return new N({body:E,condition:F});case"while":s();return new H({condition:b(),body:Tt(x)});case"for":s();return function(){d("(");var e=null;if(!r("punc",";")){e=r("keyword","var")?(s(),We(!0)):r("keyword","let")?(s(),Ke(!0)):r("keyword","const")?(s(),Dn(!0)):St(!0,!0);var n=r("operator","in");var t=r("name","of");if(n||t){if(e instanceof _e){if(e.definitions.length>1)f("Only one variable declaration allowed in for..in loop",e.start.line,e.start.col,e.start.pos)}else if(!(Ct(e)||(e=kt(e))instanceof K))f("Invalid left-hand side in for..in loop",e.start.line,e.start.col,e.start.pos);s();if(n)return function(e){var n=St(!0);d(")");return new R({init:e,object:n,body:Tt(x)})}(e);else return function(e){var n=e instanceof _e?e.definitions[0].name:null;var t=St(!0);d(")");return new U({init:e,name:n,object:t,body:Tt(x)})}(e)}}return function(e){d(";");var n=r("punc",";")?null:St(!0);d(";");var t=r("punc",")")?null:St(!0);d(")");return new I({init:e,condition:n,step:t,body:Tt(x)})}(e)}();case"class":s();return ot(Ye);case"function":s();return j(Z,!1,!1,e);case"if":s();return function(){var e=b(),n=x(),t=null;if(r("keyword","else")){s();t=x()}return new fe({condition:e,body:n,alternative:t})}();case"return":if(0==t.in_function&&!n.bare_returns)f("'return' outside of function");s();var w=null;if(r("punc",";"))s();else if(!v()){w=St(!0);D()}return new re({value:w});case"switch":s();return new ce({expression:b(),body:Tt(Te)});case"throw":s();if(h(t.token))f("Illegal newline after 'throw'");w=St(!0);D();return new oe({value:w});case"try":s();return function(){var e=le(),n=null,i=null;if(r("keyword","catch")){var o=t.token;s();d("(");var a=te(void 0,un);d(")");n=new ve({start:o,argname:a,body:le(),end:u()})}if(r("keyword","finally")){o=t.token;s();i=new me({start:o,body:le(),end:u()})}if(!n&&!i)f("Missing catch/finally blocks");return new he({body:e,bcatch:n,bfinally:i})}();case"var":s();y=We();D();return y;case"let":s();y=Ke();D();return y;case"const":s();y=Dn();D();return y;case"with":if(t.input.has_directive("use strict"))f("Strict mode may not include a with statement");s();return new P({expression:b(),body:x()});case"export":if(!ut(o(),"punc","(")){s();return function(){var e=t.token;var n;var i;if(r("keyword","default")){n=!0;s()}else if(i=mt(!1))if(r("name","from")){s();var a=t.token;if("string"!==a.type)l();s();return new Ae({start:e,is_default:n,exported_names:i,module_name:new gn({start:a,value:a.value,quote:a.quote,end:a}),end:u()})}else return new Ae({start:e,is_default:n,exported_names:i,end:u()});var f;var c;var p;if(r("punc","{")||n&&(r("keyword","class")||r("keyword","function"))&&ut(o(),"punc")){c=St(!1);D()}else if((f=x(n))instanceof _e&&n)l(f.start);else if(f instanceof _e||f instanceof J||f instanceof Ye)p=f;else if(f instanceof B)c=f.body;else l(f.start);return new Ae({start:e,is_default:n,exported_value:c,exported_definition:p,end:u()})}()}}}l()});function S(e){return new B({body:(e=St(!0),D(),e)})}function T(e){var n,r=null;if(!v())r=bt(vn,!0);if(null!=r){if(!(n=i(function(e){return e.name==r.name},t.labels)))f("Undefined label "+r.name);r.thedef=n}else if(0==t.in_loop)f(e.TYPE+" not inside a loop or switch");D();var o=new e({label:r});if(n)n.references.push(o);return o}var M=function(e,n,i){if(h(t.token))f("Unexpected newline before arrow (=>)");p("arrow","=>");var o=ae(r("punc","{"),!1,i);return new G({start:e,end:o.end,async:i,argnames:n,body:o})};var j=function(e,n,i,o){if(n&&i)f("generators cannot be async");t.token;var a=e===Z;var c=r("operator","*");if(c)s();var p=r("name")?bt(a?tn:on):null;if(a&&!p)if(o)e=X;else l();if(p&&e!==W&&!(p instanceof Ge))l(u());var d=[];var h=ae(!0,c||n,i,p,d);return new e({start:d.start,end:h.end,is_generator:c,async:i,name:p,argnames:d,body:h})};function L(e,n){var t={};var i=!1;var r=!1;var o=!1;var a=!!n;var s={add_parameter:function(n){if(void 0!==t["$"+n.value]){if(!1===i)i=n;s.check_strict()}else{t["$"+n.value]=!0;if(e)switch(n.value){case"arguments":case"eval":case"yield":if(a)c(n,"Unexpected "+n.value+" identifier as parameter inside strict mode");break;default:if(zn(n.value))l();}}},mark_default_assignment:function(e){if(!1===r)r=e},mark_spread:function(e){if(!1===o)o=e},mark_strict_mode:function(){a=!0},is_strict:function(){return!1!==r||!1!==o||a},check_strict:function(){if(s.is_strict()&&!1!==i)c(i,"Parameter "+i.value+" was used already")}};return s}function te(e,n){var i;var o=!1;if(void 0===e)e=L(!0,t.input.has_directive("use strict"));if(r("expand","...")){o=t.token;e.mark_spread(t.token);s()}i=ie(e,n);if(r("operator","=")&&!1===o){e.mark_default_assignment(t.token);s();i=new je({start:i.start,left:i,operator:"=",right:St(!1),end:t.token})}if(!1!==o){if(!r("punc",")"))l();i=new Y({start:o,expression:i,end:o})}e.check_strict();return i}function ie(e,n){var i=[];var a=!0;var c=!1;var p;var h=t.token;if(void 0===e)e=L(!1,t.input.has_directive("use strict"));n=void 0===n?nn:n;if(r("punc","[")){s();for(;!r("punc","]");){if(a)a=!1;else d(",");if(r("expand","...")){c=!0;p=t.token;e.mark_spread(t.token);s()}if(r("punc"))switch(t.token.value){case",":i.push(new xn({start:t.token,end:t.token}));continue;case"]":break;case"[":case"{":i.push(ie(e,n));break;default:l();}else if(r("name")){e.add_parameter(t.token);i.push(bt(n))}else f("Invalid function parameter");if(r("operator","=")&&!1===c){e.mark_default_assignment(t.token);s();i[i.length-1]=new je({start:i[i.length-1].start,left:i[i.length-1],operator:"=",right:St(!1),end:t.token})}if(c){if(!r("punc","]"))f("Rest element must be last element");i[i.length-1]=new Y({start:p,expression:i[i.length-1],end:p})}}d("]");e.check_strict();return new K({start:h,names:i,is_array:!0,end:u()})}else if(r("punc","{")){s();for(;!r("punc","}");){if(a)a=!1;else d(",");if(r("expand","...")){c=!0;p=t.token;e.mark_spread(t.token);s()}if(r("name")&&(ut(o(),"punc")||ut(o(),"operator"))&&-1!==[",","}","="].indexOf(o().value)){e.add_parameter(t.token);var v=u();var m=bt(n);if(c)i.push(new Y({start:p,expression:m,end:m.end}));else i.push(new Re({start:v,key:m.name,value:m,end:m.end}))}else if(r("punc","}"))continue;else{var _=t.token;var D=_t();if(null===D)l(u());else if("name"===u().type&&!r("punc",":"))i.push(new Re({start:u(),key:D,value:new n({start:u(),name:D,end:u()}),end:u()}));else{d(":");i.push(new Re({start:_,quote:_.quote,key:D,value:ie(e,n),end:u()}))}}if(c){if(!r("punc","}"))f("Rest element must be last element")}else if(r("operator","=")){e.mark_default_assignment(t.token);s();i[i.length-1].value=new je({start:i[i.length-1].value.start,left:i[i.length-1].value,operator:"=",right:St(!1),end:t.token})}}d("}");e.check_strict();return new K({start:h,names:i,is_array:!1,end:u()})}else if(r("name")){e.add_parameter(t.token);return bt(n)}else f("Invalid function parameter")}function ae(e,i,o,a,u){var f=t.in_loop;var c=t.labels;var p=t.in_generator;var h=t.in_async;++t.in_function;if(i)t.in_generator=t.in_function;if(o)t.in_async=t.in_function;if(u)!function(e){t.token;var i=L(!0,t.input.has_directive("use strict"));d("(");for(;!r("punc",")");){var o=te(i);e.push(o);if(!r("punc",")")){d(",");if(r("punc",")")&&n.ecma<8)l()}if(o instanceof Y)break}s()}(u);if(e)t.in_directives=!0;t.in_loop=0;t.labels=[];if(e){t.input.push_directives_stack();var v=le();if(a)gt(a);if(u)u.forEach(gt);t.input.pop_directives_stack()}else v=St(!1);--t.in_function;t.in_loop=f;t.labels=c;t.in_generator=p;t.in_async=h;return v}function le(){d("{");var e=[];for(;!r("punc","}");){if(r("eof"))l();e.push(x())}s();return e}function Te(){d("{");var e,n=[],i=null,o=null;for(;!r("punc","}");){if(r("eof"))l();if(r("keyword","case")){if(o)o.end=u();i=[];o=new de({start:(e=t.token,s(),e),expression:St(!0),body:i});n.push(o);d(":")}else if(r("keyword","default")){if(o)o.end=u();i=[];o=new pe({start:(e=t.token,s(),d(":"),e),body:i});n.push(o)}else{if(!i)l();i.push(x())}}if(o)o.end=u();s();return n}function Ve(e,n){var i=[];var o;for(;;){var a="var"===n?Ze:"const"===n?Qe:"let"===n?en:null;if(r("punc","{")||r("punc","["))o=new Fe({start:t.token,name:ie(void 0,a),value:r("operator","=")?(p("operator","="),St(!1,e)):null,end:u()});else if("import"==(o=new Fe({start:t.token,name:bt(a),value:r("operator","=")?(s(),St(!1,e)):!e&&"const"===n?f("Missing initializer in const declaration"):null,end:u()})).name.name)f("Unexpected token: import");i.push(o);if(!r("punc",","))break;s()}return i}var We=function(e){return new De({start:u(),definitions:Ve(e,"var"),end:u()})};var Ke=function(e){return new ge({start:u(),definitions:Ve(e,"let"),end:u()})};var Dn=function(e){return new be({start:u(),definitions:Ve(e,"const"),end:u()})};function En(){var e,n=t.token;switch(n.type){case"name":e=Dt(pn);break;case"num":e=new bn({start:n,end:n,value:n.value});break;case"string":e=new gn({start:n,end:n,value:n.value,quote:n.quote});break;case"regexp":e=new yn({start:n,end:n,value:n.value});break;case"atom":switch(n.value){case"false":e=new Bn({start:n,end:n});break;case"true":e=new Sn({start:n,end:n});break;case"null":e=new An({start:n,end:n});}}s();return e}function Fn(e,n,t,i){var r=function(e,n){if(n)return new je({start:e.start,left:e,operator:"=",right:n,end:n.end});return e};if(e instanceof He)return r(new K({start:e.start,end:e.end,is_array:!1,names:e.properties.map(Fn)}),i);else if(e instanceof Re){e.value=Fn(e.value,0,e.key);return r(e,i)}else if(e instanceof xn)return e;else if(e instanceof K){e.names=e.names.map(Fn);return r(e,i)}else if(e instanceof pn)return r(new nn({name:e.name,start:e.start,end:e.end}),i);else if(e instanceof Y){e.expression=Fn(e.expression);return r(e,i)}else if(e instanceof Ne)return r(new K({start:e.start,end:e.end,is_array:!0,names:e.elements.map(Fn)}),i);else if(e instanceof ze)return r(Fn(e.left,0,0,e.right),i);else if(e instanceof je){e.left=Fn(e.left,0,e.left);return e}else f("Invalid function parameter",e.start.line,e.start.col)}var wn=function(e,i){if(r("operator","new"))return function(e){var i=t.token;p("operator","new");if(r("punc",".")){s();p("name","target");return Et(new Xe({start:i,end:u()}),e)}var o,a=wn(!1);if(r("punc","(")){s();o=kn(")",n.ecma>=8)}else o=[];var f=new xe({start:i,expression:a,args:o,end:u()});yt(f);return Et(f,e)}(e);var a=t.token;var f=r("name","async")&&En();if(r("punc")){switch(t.token.value){case"(":if(f&&!e)break;var c=function(e,i){var o;var a;var f;var c=[];d("(");for(;!r("punc",")");){if(o)l(o);if(r("expand","...")){o=t.token;if(i)a=t.token;s();c.push(new Y({start:u(),expression:St(),end:t.token}))}else c.push(St());if(!r("punc",")")){d(",");if(r("punc",")")){if(n.ecma<8)l();f=u();if(i)a=f}}}d(")");if(e&&r("arrow","=>")){if(o&&f)l(f)}else if(a)l(a);return c}(i,!f);if(i&&r("arrow","=>"))return M(a,c.map(Fn),!!f);var h=f?new we({expression:f,args:c}):1==c.length?c[0]:new Ce({expressions:c});if(h.start){var v=a.comments_before.length;[].unshift.apply(h.start.comments_before,a.comments_before);a.comments_before=h.start.comments_before;a.comments_before_length=v;if(0==v&&a.comments_before.length>0){var m=a.comments_before[0];if(!m.nlb){m.nlb=a.nlb;a.nlb=!1}}a.comments_after=h.start.comments_after}h.start=a;var _=u();if(h.end){_.comments_before=h.end.comments_before;[].push.apply(h.end.comments_after,_.comments_after);_.comments_after=h.end.comments_after}h.end=_;if(h instanceof we)yt(h);return Et(h,e);case"[":return Et($n(),e);case"{":return Et(tt(),e);}if(!f)l()}if(i&&r("name")&&ut(o(),"arrow")){var D=new nn({name:t.token.value,start:a,end:a});s();return M(a,[D],!!f)}if(r("keyword","function")){s();var g=j(X,!1,!!f);g.start=a;g.end=u();return Et(g,e)}if(f)return Et(f,e);if(r("keyword","class")){s();var b=ot(Je);b.start=a;b.end=u();return Et(b,e)}if(r("template_head"))return Et(Cn(),e);if(ht(t.token.type))return Et(En(),e);l()};function Cn(){var e=[],n=t.token;e.push(new ne({start:t.token,raw:t.token.raw,value:t.token.value,end:t.token}));for(;!1===t.token.end;){s();A();e.push(St(!0));if(!ut("template_substitution"))l();e.push(new ne({start:t.token,raw:t.token.raw,value:t.token.value,end:t.token}))}s();return new ee({start:n,segments:e,end:t.token})}function kn(e,n,i){var o=!0,a=[];for(;!r("punc",e);){if(o)o=!1;else d(",");if(n&&r("punc",e))break;if(r("punc",",")&&i)a.push(new xn({start:t.token,end:t.token}));else if(r("expand","...")){s();a.push(new Y({start:u(),expression:St(),end:t.token}))}else a.push(St(!1))}s();return a}var $n=E(function(){d("[");return new Ne({elements:kn("]",!n.strict,!0)})});var Zn=E(function(e,n){return j(W,e,n)});var tt=E(function(){var e=t.token,i=!0,o=[];d("{");for(;!r("punc","}");){if(i)i=!1;else d(",");if(!n.strict&&r("punc","}"))break;if("expand"==(e=t.token).type){s();o.push(new Y({start:e,expression:St(!1),end:u()}));continue}var a=_t();var f;if(!r("punc",":")){var c=at(a,e);if(c){o.push(c);continue}f=new pn({start:u(),name:a,end:u()})}else if(null===a)l(u());else{s();f=St(!1)}if(r("operator","=")){s();f=new ze({start:e,left:f,operator:"=",right:St(!1),end:u()})}o.push(new Re({start:e,quote:e.quote,key:a instanceof w?a:""+a,value:f,end:u()}))}s();return new He({properties:o})});function ot(e){var n,i,o,a,f=[];t.input.push_directives_stack();t.input.add_directive("use strict");if("name"==t.token.type&&"extends"!=t.token.value)o=bt(e===Ye?an:sn);if(e===Ye&&!o)l();if("extends"==t.token.value){s();a=St(!0)}d("{");if(r("punc",";"))s();for(;!r("punc","}");){n=t.token;if(!(i=at(_t(),n,!0)))l();f.push(i);if(r("punc",";"))s()}t.input.pop_directives_stack();s();return new e({start:n,name:o,extends:a,properties:f,end:u()})}function at(e,n,i){var o=function(e,n){if("string"==typeof e||"number"==typeof e)return new rn({start:n,name:""+e,end:u()});else if(null===e)l();return e};var a=!1;var s=!1;var f=!1;var c=n;if(i&&"static"===e&&!r("punc","(")){s=!0;c=t.token;e=_t()}if("async"===e&&!r("punc","(")&&!r("punc",",")&&!r("punc","}")){a=!0;c=t.token;e=_t()}if(null===e){f=!0;c=t.token;if(null===(e=_t()))l()}if(r("punc","(")){e=o(e,n);return new Le({start:n,static:s,is_generator:f,async:a,key:e,quote:e instanceof rn?c.quote:void 0,value:Zn(f,a),end:u()})}c=t.token;if("get"==e){if(!r("punc")||r("punc","[")){e=o(_t(),n);return new Pe({start:n,static:s,key:e,quote:e instanceof rn?c.quote:void 0,value:Zn(),end:u()})}}else if("set"==e)if(!r("punc")||r("punc","[")){e=o(_t(),n);return new Ue({start:n,static:s,key:e,quote:e instanceof rn?c.quote:void 0,value:Zn(),end:u()})}}function vt(e){function n(e){return new e({name:_t(),start:u(),end:u()})}var i=e?cn:hn;var o=e?fn:dn;var a=t.token;var f;var c;if(e)f=n(i);else c=n(o);if(r("name","as")){s();if(e)c=n(o);else f=n(i)}else if(e)c=new o(f);else f=new i(c);return new ye({start:a,foreign_name:f,name:c,end:u()})}function mt(e){var n;if(r("punc","{")){s();n=[];for(;!r("punc","}");){n.push(vt(e));if(r("punc",","))s()}s()}else if(r("operator","*")){var i;s();if(e&&r("name","as")){s();i=bt(cn)}n=[function(e,n){var i=e?cn:hn;var r=e?fn:dn;var o=t.token;var a;var s=u();n=n||new r({name:"*",start:o,end:s});a=new i({name:"*",start:o,end:s});return new ye({start:o,foreign_name:a,name:n,end:s})}(e,i)]}return n}function _t(){var e=t.token;switch(e.type){case"punc":if("["===e.value){s();var n=St(!1);d("]");return n}else l(e);case"operator":if("*"===e.value){s();return null}if(-1===["delete","in","instanceof","new","typeof","void"].indexOf(e.value))l(e);case"name":if("yield"==e.value)if(m())c(e,"Yield cannot be used as identifier inside generators");else if(!ut(o(),"punc",":")&&!ut(o(),"punc","(")&&t.input.has_directive("use strict"))c(e,"Unexpected yield identifier inside strict mode");case"string":case"num":case"keyword":case"atom":s();return e.value;default:l(e);}}function Dt(e){var n=t.token.value;return new("this"==n?mn:"super"==n?_n:e)({name:n+"",start:t.token,end:t.token})}function gt(e){var n=e.name;if(m()&&"yield"==n)c(e.start,"Yield cannot be used as identifier inside generators");if(t.input.has_directive("use strict")){if("yield"==n)c(e.start,"Unexpected yield identifier inside strict mode");if(e instanceof Ge&&("arguments"==n||"eval"==n))c(e.start,"Unexpected "+n+" in strict mode")}}function bt(e,n){if(!r("name")){if(!n)f("Name expected");return null}var t=Dt(e);gt(t);s();return t}function yt(e){var n=e.start;var t=n.comments_before;var i=y(n,"comments_before_length")?n.comments_before_length:t.length;for(;--i>=0;){var r=t[i];if(/[@#]__PURE__/.test(r.value)){e.pure=r;break}}}var Et=function(e,n){var i=e.start;if(r("punc",".")){s();return Et(new Be({start:i,expression:e,property:function(){var e=t.token;if("name"!=e.type)l();s();return e.value}(),end:u()}),n)}if(r("punc","[")){s();var o=St(!0);d("]");return Et(new Se({start:i,expression:e,property:o,end:u()}),n)}if(n&&r("punc","(")){s();var a=new we({start:i,expression:e,args:At(),end:u()});yt(a);return Et(a,!0)}if(r("template_head"))return Et(new Q({start:i,prefix:e,template_string:Cn()}),n);return e};var At=E(function(){var e=[];for(;!r("punc",")");){if(r("expand","...")){s();e.push(new Y({start:u(),expression:St(!1)}))}else e.push(St(!1));if(!r("punc",")")){d(",");if(r("punc",")")&&n.ecma<8)l()}}s();return e});var Ft=function(e,n){var i=t.token;if("name"==i.type&&"await"==i.value)if(_()){s();return function(){if(!_())f("Unexpected await expression outside async function",t.prev.line,t.prev.col,t.prev.pos);return new Tn({expression:Ft(!0)})}()}else if(t.input.has_directive("use strict"))c(t.token,"Unexpected await identifier inside strict mode");if(r("operator")&&ct(i.value)){s();A();var o=wt(Oe,i,Ft(e));o.start=i;o.end=u();return o}var a=wn(e,n);for(;r("operator")&<(t.token.value)&&!h(t.token);){if(a instanceof G)l();(a=wt($e,t.token,a)).start=i;a.end=t.token;s()}return a};function wt(e,n,i){var r=n.value;switch(r){case"++":case"--":if(!Ct(i))f("Invalid use of "+r+" operator",n.line,n.col,n.pos);break;case"delete":if(i instanceof pn&&t.input.has_directive("use strict"))f("Calling delete on expression not allowed in strict mode",i.start.line,i.start.col,i.start.pos);}return new e({operator:r,expression:i})}var xt=function(e,n,i){var o=r("operator")?t.token.value:null;if("in"==o&&i)o=null;if("**"==o&&e instanceof Oe&&!ut(e.start,"punc","(")&&"--"!==e.operator&&"++"!==e.operator)l(e.start);var a=null!=o?dt[o]:null;if(null!=a&&(a>n||"**"===o&&n===a)){s();var u=xt(Ft(!0),a,i);return xt(new Me({start:e.start,left:e,operator:o,right:u,end:u.end}),n,i)}return e};function Ct(e){return e instanceof ke||e instanceof pn}function kt(e){if(e instanceof He)e=new K({start:e.start,names:e.properties.map(kt),is_array:!1,end:e.end});else if(e instanceof Ne){var n=[];for(var t=0;t=0;){var a=i[o];if(r==(a.mangled_name||a.unmangleable(n)&&a.name))continue e}return r}}L.DEFMETHOD("next_mangled",function(e){return Dt(this,e)});V.DEFMETHOD("next_mangled",function(e){var n;do{n=Dt(this,e)}while(t(n,this.mangled_names));return n});X.DEFMETHOD("next_mangled",function(e,n){var t=n.orig[0]instanceof nn&&this.name&&this.name.definition();var i=t?t.mangled_name||t.name:null;for(;;){var r=Dt(this,e);if(!i||i!=r)return r}});We.DEFMETHOD("unmangleable",function(e){var n=this.definition();return!n||n.unmangleable(e)});ln.DEFMETHOD("unmangleable",f);We.DEFMETHOD("unreferenced",function(){return 0==this.definition().references.length&&!(this.scope.uses_eval||this.scope.uses_with)});We.DEFMETHOD("definition",function(){return this.thedef});We.DEFMETHOD("global",function(){return this.definition().global});V.DEFMETHOD("_default_mangler_options",function(e){e=a(e,{eval:!1,ie8:!1,keep_classnames:!1,keep_fnames:!1,reserved:[],toplevel:!1});if(!Array.isArray(e.reserved))e.reserved=[];h(e.reserved,"arguments");return e});V.DEFMETHOD("mangle_names",function(e){e=this._default_mangler_options(e);var n=-1;var i=[];var r=this.mangled_names=[];if(e.cache){this.globals.each(a);if(e.cache.props)e.cache.props.each(function(e){h(r,e)})}var o=new $n(function(t,r){if(t instanceof q){var o=n;r();n=o;return!0}if(t instanceof L){t.variables.each(a);return}if(t.is_block_scope()){t.block_scope.variables.each(a);return}if(t instanceof ln){var s;do{s=gt(++n)}while(!tt(s));t.mangled_name=s;return!0}if(!e.ie8&&t instanceof un){i.push(t.definition());return}});this.walk(o);i.forEach(function(n){n.mangle(e)});function a(n){if(!t(n.name,e.reserved))i.push(n)}});V.DEFMETHOD("find_colliding_names",function(e){var n=e.cache&&e.cache.props;var t=Object.create(null);e.reserved.forEach(i);this.globals.each(r);this.walk(new $n(function(e){if(e instanceof L)e.variables.each(r);if(e instanceof un)r(e.definition())}));return t;function i(e){t[e]=!0}function r(t){var r=t.name;if(t.global&&n&&n.has(r))r=n.get(r);else if(!t.unmangleable(e))return;i(r)}});V.DEFMETHOD("expand_names",function(e){gt.reset();gt.sort();e=this._default_mangler_options(e);var n=this.find_colliding_names(e);var i=0;this.globals.each(r);this.walk(new $n(function(e){if(e instanceof L)e.variables.each(r);if(e instanceof un)r(e.definition())}));function r(r){if(r.global&&e.cache)return;if(r.unmangleable(e))return;if(t(r.name,e.reserved))return;var o=r.redefined();r.name=o?o.name:function(){var e;do{e=gt(i++)}while(n[e]||!tt(e));return e}();r.orig.forEach(function(e){e.name=r.name});r.references.forEach(function(e){e.name=r.name})}});w.DEFMETHOD("tail_node",l);Ce.DEFMETHOD("tail_node",function(){return this.expressions[this.expressions.length-1]});V.DEFMETHOD("compute_char_frequency",function(e){e=this._default_mangler_options(e);try{w.prototype.print=function(n,t){this._print(n,t);if(this instanceof We&&!this.unmangleable(e))gt.consider(this.name,-1);else if(e.properties)if(this instanceof Be)gt.consider(this.property,-1);else if(this instanceof Se)!function e(n){if(n instanceof gn)gt.consider(n.value,-1);else if(n instanceof qe){e(n.consequent);e(n.alternative)}else if(n instanceof Ce)e(n.tail_node())}(this.property)};gt.consider(this.print_to_string(),1)}finally{w.prototype.print=w.prototype._print}gt.sort()});var gt=function(){var e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_".split("");var n="0123456789".split("");var t,i;function r(){i=Object.create(null);e.forEach(function(e){i[e]=0});n.forEach(function(e){i[e]=0})}a.consider=function(e,n){for(var t=e.length;--t>=0;)i[e[t]]+=n};function o(e,n){return i[n]-i[e]}a.sort=function(){t=_(e,o).concat(_(n,o));t=UglifyJS.charlist?UglifyJS.charlist:t};a.reset=r;r();function a(e){var n="",i=UglifyJS.charlist?UglifyJS.charlist.length:54;e++;do{n+=t[--e%i];e=Math.floor(e/i);i=UglifyJS.charlist?UglifyJS.charlist.length:64}while(e>0);return n}return a}();var bt=/^$|[;{][\s\n]*$/;function yt(e){return"comment2"==e.type&&/@preserve|@license|@cc_on/i.test(e.value)}function Et(e){var n=!e;if(void 0===(e=a(e,{ascii_only:!1,beautify:!1,bracketize:!1,comments:!1,ecma:5,ie8:!1,indent_level:4,indent_start:0,inline_script:!0,keep_quoted_props:!1,max_line_len:!1,preamble:null,preserve_line:!1,quote_keys:!1,quote_style:0,safari10:!1,semicolons:!0,shebang:!0,shorthand:void 0,source_map:null,webkit:!1,width:80,wrap_iife:!1},!0)).shorthand)e.shorthand=e.ecma>5;var t=f;if(e.comments){var i=e.comments;if("string"==typeof e.comments&&/^\/.*\/[a-zA-Z]*$/.test(e.comments)){var r=e.comments.lastIndexOf("/");i=RegExp(e.comments.substr(1,r-1),e.comments.substr(r+1))}if(i instanceof RegExp)t=function(e){return"comment5"!=e.type&&i.test(e.value)};else if("function"==typeof i)t=function(e){return"comment5"!=e.type&&i(this,e)};else if("some"===i)t=yt;else t=c}var o=0;var s=0;var l=1;var p=0;var d="";var h=e.ascii_only?function(n,t){if(e.ecma>=6)n=n.replace(/[\ud800-\udbff][\udc00-\udfff]/g,function(e){return"\\u{"+function(e,n){if(Qn(e.charAt(0)))return 65536+(e.charCodeAt(0)-55296<<10)+e.charCodeAt(1)-56320;return e.charCodeAt(0)}(e).toString(16)+"}"});return n.replace(/[\u0000-\u001f\u007f-\uffff]/g,function(e){var n=e.charCodeAt(0).toString(16);if(n.length<=2&&!t){for(;n.length<2;)n="0"+n;return"\\x"+n}else{for(;n.length<4;)n="0"+n;return"\\u"+n}})}:function(e){var n="";for(var t=0,i=e.length;tr?o():a();}}(n,t);if(e.inline_script)i=(i=(i=i.replace(/<\x2fscript([>\/\t\n\f\r ])/gi,"<\\/script$1")).replace(/\x3c!--/g,"\\x3c!--")).replace(/--\x3e/g,"--\\x3e");return i}var m=!1;var _=!1;var b=0;var y=!1;var E=!1;var A=-1;var F="";var C,k,B=e.source_map&&[];var S=B?function(){B.forEach(function(n){try{e.source_map.add(n.token.file,n.line,n.col,n.token.line,n.token.col,!n.name&&"name"==n.token.type?n.token.value:n.name)}catch(e){w.warn("Couldn't figure out mapping for {file}:{line},{col} \u2192 {cline},{ccol} [{name}]",{file:n.token.file,line:n.token.line,col:n.token.col,cline:n.line,ccol:n.col,name:n.name||""})}});B=[]}:u;var T=e.max_line_len?function(){if(s>e.max_line_len){if(b){var n=d.slice(0,b);var t=d.slice(b);if(B){var i=t.length-s;B.forEach(function(e){e.line++;e.col+=i})}d=n+"\n"+t;l++;p++;s=t.length}if(s>e.max_line_len)w.warn("Output exceeds {max_line_len} characters",e)}if(b){b=0;S()}}:u;var O=D("( [ + * / - , . `");function $(n){var t=Kn(n+="",0);var i=Kn(F,F.length-1);if(y&&t){y=!1;if("\n"!=t){$("\n");q()}}if(E&&t){E=!1;if(!/[\s;})]/.test(t))M()}A=-1;i=F.charAt(F.length-1);if(_){_=!1;if(":"==i&&"}"==t||(!t||";}".indexOf(t)<0)&&";"!=i){if(e.semicolons||O(t)){d+=";";s++;p++}else{T();d+="\n";p++;l++;s=0;if(/^\s+$/.test(n))_=!0}if(!e.beautify)m=!1}}if(!e.beautify&&e.preserve_line&&P[P.length-1]){var r=P[P.length-1].start.line;for(;l0){T();s=o[a].length}F=n}var M=e.beautify?function(){$(" ")}:function(){m=!0};var q=e.beautify?function(n){if(e.beautify)$((t=n?.5:0,function e(n,t){if(t<=0)return"";if(1==t)return n;var i=e(n,t>>1);i+=i;if(1&t)i+=n;return i}(" ",e.indent_start+o-t*e.indent_level)));var t}:u;var z=e.beautify?function(e,n){if(!0===e)e=I();var t=o;o=e;var i=n();o=t;return i}:function(e,n){return n()};var j=e.beautify?function(){if(A<0)return $("\n");if("\n"!=d[A]){d=d.slice(0,A)+"\n"+d.slice(A);p++;l++}A++}:e.max_line_len?function(){T();b=d.length}:u;var N=e.beautify?function(){$(";")}:function(){_=!0};function H(){_=!1;$(";")}function I(){return o+e.indent_level}function R(){if(b)T();return d}function U(){var e=d.lastIndexOf("\n");return /^ *$/.test(d.slice(e+1))}var P=[];return{get:R,toString:R,indent:q,indentation:function(){return o},current_width:function(){return s-o},should_break:function(){return e.width&&this.current_width()>=e.width},newline:j,print:$,star:function(){$("*")},space:M,comma:function(){$(",");M()},colon:function(){$(":");M()},last:function(){return F},semicolon:N,force_semicolon:H,to_utf8:h,print_name:function(e){$(function(e){e=e.toString();return h(e,!0)}(e))},print_string:function(e,n,t){var i=v(e,n);if(!0===t&&-1===i.indexOf("\\")){if(!bt.test(d))H();H()}$(i)},print_template_string_chars:function(e){var n=v(e,"`").replace(/\${/g,"\\${");return $(n.substr(1,n.length-2))},encode_string:v,next_indent:I,with_indent:z,with_block:function(e){var n;$("{");j();z(I(),function(){n=e()});q();$("}");return n},with_parens:function(e){$("(");var n=e();$(")");return n},with_square:function(e){$("[");var n=e();$("]");return n},add_mapping:B?function(e,n){C=e;k=n}:u,option:function(n){return e[n]},prepend_comments:n?u:function(n){var i=this;var r=n.start;if(!r)return;if(r.comments_before&&r.comments_before._dumped===i)return;var o=r.comments_before;if(!o)o=r.comments_before=[];o._dumped=i;if(n instanceof ie&&n.value){var a=new $n(function(e){var n=a.parent();if(n instanceof ie||n instanceof Me&&n.left===e||"Call"==n.TYPE&&n.expression===e||n instanceof qe&&n.condition===e||n instanceof Be&&n.expression===e||n instanceof Ce&&n.expressions[0]===e||n instanceof Se&&n.expression===e||n instanceof $e){if(!e.start)return;var t=e.start.comments_before;if(t&&t._dumped!==i){t._dumped=i;o=o.concat(t)}}else return!0});a.push(n);n.value.walk(a)}if(0==p){if(o.length>0&&e.shebang&&"comment5"==o[0].type){$("#!"+o.shift().value+"\n");q()}var s=e.preamble;if(s)$(s.replace(/\r\n?|[\n\u2028\u2029]|\s*$/g,"\n"))}if(0==(o=o.filter(t,n)).length)return;var u=U();o.forEach(function(e,n){if(!u)if(e.nlb){$("\n");q();u=!0}else if(n>0)M();if(/comment[134]/.test(e.type)){$("//"+e.value.replace(/[@#]__PURE__/g," ")+"\n");q();u=!0}else if("comment2"==e.type){$("/*"+e.value.replace(/[@#]__PURE__/g," ")+"*/");u=!1}});if(!u)if(r.nlb){$("\n");q()}else M()},append_comments:n||t===f?u:function(e,n){var i=e.end;if(!i)return;var r=i[n?"comments_before":"comments_after"];if(!r||r._dumped===this)return;if(!(e instanceof x||g(r,function(e){return!/comment[134]/.test(e.type)})))return;r._dumped=this;var o=d.length;r.filter(t,e).forEach(function(e,t){E=!1;if(y){$("\n");q();y=!1}else if(e.nlb&&(t>0||!U())){$("\n");q()}else if(t>0||!n)M();if(/comment[134]/.test(e.type)){$("//"+e.value.replace(/[@#]__PURE__/g," "));y=!0}else if("comment2"==e.type){$("/*"+e.value.replace(/[@#]__PURE__/g," ")+"*/");E=!0}});if(d.length>o)A=o},line:function(){return l},col:function(){return s},pos:function(){return p},push_node:function(e){P.push(e)},pop_node:function(){return P.pop()},parent:function(e){return P[P.length-2-(e||0)]}}}!function(){function e(e,n){e.DEFMETHOD("_codegen",n)}var n=!1;var t=null;var i=null;w.DEFMETHOD("print",function(e,n){var r=this,o=r._codegen;if(r instanceof L)t=r;else if(!i&&r instanceof k&&"use asm"==r.value)i=t;function a(){e.prepend_comments(r);r.add_source_map(e);o(r,e);e.append_comments(r)}e.push_node(r);if(n||r.needs_parens(e))e.with_parens(a);else a();e.pop_node();if(r===i)i=null});w.DEFMETHOD("_print",w.prototype.print);w.DEFMETHOD("print_to_string",function(e){var n=Et(e);this.print(n);return n.get()});function r(e,n){if(Array.isArray(e))e.forEach(function(e){r(e,n)});else e.DEFMETHOD("needs_parens",n)}r(w,f);r(X,function(e){if(E(e))return!0;if(e.option("webkit"))if((n=e.parent())instanceof ke&&n.expression===this)return!0;if(e.option("wrap_iife")){var n;return(n=e.parent())instanceof we&&n.expression===this}return!1});r(G,function(e){var n=e.parent();return n instanceof ke&&n.expression===this});r([Je,He],E);r(Te,function(e){var n=e.parent();return n instanceof ke&&n.expression===this||n instanceof we&&n.expression===this||n instanceof Me&&"**"===n.operator&&this instanceof Oe&&n.left===this&&"++"!==this.operator&&"--"!==this.operator});r(Tn,function(e){var n=e.parent();return n instanceof ke&&n.expression===this||n instanceof we&&n.expression===this||e.option("safari10")&&n instanceof Oe});r(Ce,function(e){var n=e.parent();return n instanceof we||n instanceof Te||n instanceof Me||n instanceof Fe||n instanceof ke||n instanceof Ne||n instanceof Ie||n instanceof qe||n instanceof G||n instanceof je||n instanceof Y||n instanceof U&&this===n.object||n instanceof On});r(Me,function(e){var n=e.parent();if(n instanceof we&&n.expression===this)return!0;if(n instanceof Te)return!0;if(n instanceof ke&&n.expression===this)return!0;if(n instanceof Me){var t=n.operator,i=dt[t];var r=this.operator,o=dt[r];if(i>o||i==o&&this===n.right)return!0}});r(On,function(e){var n=e.parent();if(n instanceof Me&&"="!==n.operator)return!0;if(n instanceof we&&n.expression===this)return!0;if(n instanceof qe&&n.condition===this)return!0;if(n instanceof Te)return!0;if(n instanceof ke&&n.expression===this)return!0});r(ke,function(e){var n=e.parent();if(n instanceof xe&&n.expression===this){var t=!1;this.walk(new $n(function(e){if(t||e instanceof L)return!0;if(e instanceof we){t=!0;return!0}}));return t}});r(we,function(e){var n,t=e.parent();if(t instanceof xe&&t.expression===this)return!0;return this.expression instanceof X&&t instanceof ke&&t.expression===this&&(n=e.parent(1))instanceof ze&&n.left===t});r(xe,function(e){var n=e.parent();if(!p(this,e)&&(n instanceof ke||n instanceof we&&n.expression===this))return!0});r(bn,function(e){var n=e.parent();if(n instanceof ke&&n.expression===this){var t=this.getValue();if(t<0||/^0/.test(d(t)))return!0}});r([ze,qe],function(e){var n=e.parent();if(n instanceof Te)return!0;if(n instanceof Me&&!(n instanceof ze))return!0;if(n instanceof we&&n.expression===this)return!0;if(n instanceof qe&&n.condition===this)return!0;if(n instanceof ke&&n.expression===this)return!0;if(this instanceof ze&&this.left instanceof K&&!1===this.left.is_array)return!0});e(k,function(e,n){n.print_string(e.value,e.quote);n.semicolon()});e(Y,function(e,n){n.print("...");e.expression.print(n)});e(K,function(e,n){n.print(e.is_array?"[":"{");var t=e.names.length;e.names.forEach(function(e,i){if(i>0)n.comma();e.print(n);if(i==t-1&&e instanceof xn)n.comma()});n.print(e.is_array?"]":"}")});e(C,function(e,n){n.print("debugger");n.semicolon()});function o(e,t,i,r){var o=e.length-1;n=r;e.forEach(function(e,r){if(!0===n&&!(e instanceof k||e instanceof $||e instanceof B&&e.body instanceof gn))n=!1;if(!(e instanceof $)){i.indent();e.print(i);if(r!=o||!t){i.newline();if(t)i.newline()}}if(!0===n&&e instanceof B&&e.body instanceof gn)n=!1});n=!1}M.DEFMETHOD("_do_print_body",function(e){l(this.body,e)});e(x,function(e,n){e.body.print(n);n.semicolon()});e(V,function(e,n){o(e.body,!0,n,!0);n.print("")});e(q,function(e,n){e.label.print(n);n.colon();e.body.print(n)});e(B,function(e,n){e.body.print(n);n.semicolon()});function a(e,n,t){if(e.body.length>0)n.with_block(function(){o(e.body,!1,n,t)});else{n.print("{");n.with_indent(n.next_indent(),function(){n.append_comments(e,!0)});n.print("}")}}e(O,function(e,n){a(e,n)});e($,function(e,n){n.semicolon()});e(N,function(e,n){n.print("do");n.space();h(e.body,n);n.space();n.print("while");n.space();n.with_parens(function(){e.condition.print(n)});n.semicolon()});e(H,function(e,n){n.print("while");n.space();n.with_parens(function(){e.condition.print(n)});n.space();e._do_print_body(n)});e(I,function(e,n){n.print("for");n.space();n.with_parens(function(){if(e.init){if(e.init instanceof _e)e.init.print(n);else s(e.init,n,!0);n.print(";");n.space()}else n.print(";");if(e.condition){e.condition.print(n);n.print(";");n.space()}else n.print(";");if(e.step)e.step.print(n)});n.space();e._do_print_body(n)});e(R,function(e,n){n.print("for");n.space();n.with_parens(function(){e.init.print(n);n.space();n.print(e instanceof U?"of":"in");n.space();e.object.print(n)});n.space();e._do_print_body(n)});e(P,function(e,n){n.print("with");n.space();n.with_parens(function(){e.expression.print(n)});n.space();e._do_print_body(n)});J.DEFMETHOD("_do_print",function(e,n){var t=this;if(!n){if(t.async){e.print("async");e.space()}e.print("function");if(t.is_generator)e.star();if(t.name)e.space()}if(t.name instanceof We)t.name.print(e);else if(n&&t.name instanceof w)e.with_square(function(){t.name.print(e)});e.with_parens(function(){t.argnames.forEach(function(n,t){if(t)e.comma();n.print(e)})});e.space();a(t,e,!0)});e(J,function(e,n){e._do_print(n)});e(Q,function(e,n){e.prefix.print(n);e.template_string.print(n)});e(ee,function(e,n){var t=n.parent()instanceof Q;n.print("`");for(var i=0;i");e.space();if(n.body instanceof w)n.body.print(e);else a(n,e);if(i)e.print(")")});ie.DEFMETHOD("_do_print",function(e,n){e.print(n);if(this.value){e.space();this.value.print(e)}e.semicolon()});e(re,function(e,n){e._do_print(n,"return")});e(oe,function(e,n){e._do_print(n,"throw")});e(On,function(e,n){var t=e.is_star?"*":"";n.print("yield"+t);if(e.expression){n.space();e.expression.print(n)}});e(Tn,function(e,n){n.print("await");n.space();var t=e.expression;var i=!(t instanceof we||t instanceof pn||t instanceof ke||t instanceof Te||t instanceof Dn);if(i)n.print("(");e.expression.print(n);if(i)n.print(")")});ae.DEFMETHOD("_do_print",function(e,n){e.print(n);if(this.label){e.space();this.label.print(e)}e.semicolon()});e(se,function(e,n){e._do_print(n,"break")});e(ue,function(e,n){e._do_print(n,"continue")});e(fe,function(e,n){n.print("if");n.space();n.with_parens(function(){e.condition.print(n)});n.space();if(e.alternative){!function(e,n){var t=e.body;if(n.option("bracketize")||n.option("ie8")&&t instanceof N)return h(t,n);if(!t)return n.force_semicolon();for(;;)if(t instanceof fe){if(!t.alternative){h(e.body,n);return}t=t.alternative}else if(t instanceof M)t=t.body;else break;l(e.body,n)}(e,n);n.space();n.print("else");n.space();if(e.alternative instanceof fe)e.alternative.print(n);else l(e.alternative,n)}else e._do_print_body(n)});e(ce,function(e,n){n.print("switch");n.space();n.with_parens(function(){e.expression.print(n)});n.space();var t=e.body.length-1;if(t<0)n.print("{}");else n.with_block(function(){e.body.forEach(function(e,i){n.indent(!0);e.print(n);if(i0)n.newline()})})});le.DEFMETHOD("_do_print_body",function(e){e.newline();this.body.forEach(function(n){e.indent();n.print(e);e.newline()})});e(pe,function(e,n){n.print("default:");e._do_print_body(n)});e(de,function(e,n){n.print("case");n.space();e.expression.print(n);n.print(":");e._do_print_body(n)});e(he,function(e,n){n.print("try");n.space();a(e,n);if(e.bcatch){n.space();e.bcatch.print(n)}if(e.bfinally){n.space();e.bfinally.print(n)}});e(ve,function(e,n){n.print("catch");n.space();n.with_parens(function(){e.argname.print(n)});n.space();a(e,n)});e(me,function(e,n){n.print("finally");n.space();a(e,n)});_e.DEFMETHOD("_do_print",function(e,n){e.print(n);e.space();this.definitions.forEach(function(n,t){if(t)e.comma();n.print(e)});var t=e.parent();if(!(t instanceof I||t instanceof R)||t.init!==this)e.semicolon()});e(ge,function(e,n){e._do_print(n,"let")});e(De,function(e,n){e._do_print(n,"var")});e(be,function(e,n){e._do_print(n,"const")});e(Ee,function(e,n){n.print("import");n.space();if(e.imported_name)e.imported_name.print(n);if(e.imported_name&&e.imported_names){n.print(",");n.space()}if(e.imported_names)if(1===e.imported_names.length&&"*"===e.imported_names[0].foreign_name.name)e.imported_names[0].print(n);else{n.print("{");e.imported_names.forEach(function(t,i){n.space();t.print(n);if(i0){e.comma();if(e.should_break()){e.newline();e.indent()}}n.print(e)})});e(Ce,function(e,n){e._do_print(n)});e(Be,function(e,n){var t=e.expression;t.print(n);var i=e.property;if(n.option("ie8")&&zn(i)){n.print("[");n.add_mapping(e.end);n.print_string(i);n.print("]")}else{if(t instanceof bn&&t.getValue()>=0)if(!/[xa-f.)]/i.test(n.last()))n.print(".");n.print(".");n.add_mapping(e.end);n.print_name(i)}});e(Se,function(e,n){e.expression.print(n);n.print("[");e.property.print(n);n.print("]")});e(Oe,function(e,n){var t=e.operator;n.print(t);if(/^[a-z]/i.test(t)||/[+-]$/.test(t)&&e.expression instanceof Oe&&/^[+-]/.test(e.expression.operator))n.space();e.expression.print(n)});e($e,function(e,n){e.expression.print(n);n.print(e.operator)});e(Me,function(e,n){var t=e.operator;e.left.print(n);if(">"==t[0]&&e.left instanceof $e&&"--"==e.left.operator)n.print(" ");else n.space();n.print(t);if(("<"==t||"<<"==t)&&e.right instanceof Oe&&"!"==e.right.operator&&e.right.expression instanceof Oe&&"--"==e.right.expression.operator)n.print(" ");else n.space();e.right.print(n)});e(qe,function(e,n){e.condition.print(n);n.space();n.print("?");n.space();e.consequent.print(n);n.space();n.colon();e.alternative.print(n)});e(Ne,function(e,n){n.with_square(function(){var t=e.elements,i=t.length;if(i>0)n.space();t.forEach(function(e,t){if(t)n.comma();e.print(n);if(t===i-1&&e instanceof xn)n.comma()});if(i>0)n.space()})});e(He,function(e,n){if(e.properties.length>0)n.with_block(function(){e.properties.forEach(function(e,t){if(t){n.print(",");n.newline()}n.indent();e.print(n)});n.newline()});else n.print("{}")});e(Ve,function(e,n){n.print("class");n.space();if(e.name){e.name.print(n);n.space()}if(e.extends){var t=!(e.extends instanceof pn||e.extends instanceof ke||e.extends instanceof Je||e.extends instanceof X);n.print("extends");if(t)n.print("(");else n.space();e.extends.print(n);if(t)n.print(")");else n.space()}if(e.properties.length>0)n.with_block(function(){e.properties.forEach(function(e,t){if(t)n.newline();n.indent();e.print(n)});n.newline()});else n.print("{}")});e(Xe,function(e,n){n.print("new.target")});function c(e,n,t){if(t.option("quote_keys"))t.print_string(e);else if(""+ +e==e&&e>=0)t.print(d(e));else if(zn(e)?!t.option("ie8"):ot(e)){if(n&&t.option("keep_quoted_props"))t.print_string(e,n);else t.print_name(e);}else t.print_string(e,n)}e(Re,function(e,n){function t(e){var n=e.definition();return n?n.mangled_name||n.name:e.name}var i=n.option("shorthand");if(i&&e.value instanceof We&&ot(e.key)&&t(e.value)===e.key&&tt(e.key))c(e.key,e.quote,n);else if(i&&e.value instanceof je&&e.value.left instanceof We&&ot(e.key)&&t(e.value.left)===e.key){c(e.key,e.quote,n);n.space();n.print("=");n.space();e.value.right.print(n)}else{if(!(e.key instanceof w))c(e.key,e.quote,n);else n.with_square(function(){e.key.print(n)});n.colon();e.value.print(n)}});Ie.DEFMETHOD("_print_getter_setter",function(e,n){var t=this;if(t.static){n.print("static");n.space()}if(e){n.print(e);n.space()}if(t.key instanceof rn)c(t.key.name,t.quote,n);else n.with_square(function(){t.key.print(n)});t.value._do_print(n,!0)});e(Ue,function(e,n){e._print_getter_setter("set",n)});e(Pe,function(e,n){e._print_getter_setter("get",n)});e(Le,function(e,n){e._print_getter_setter(e.is_generator?"*":e.async&&"async",n)});We.DEFMETHOD("_do_print",function(e){var n=this.definition();e.print_name(n?n.mangled_name||n.name:this.name)});e(We,function(e,n){e._do_print(n)});e(xn,u);e(mn,function(e,n){n.print("this")});e(_n,function(e,n){n.print("super")});e(Dn,function(e,n){n.print(e.getValue())});e(gn,function(e,t){t.print_string(e.getValue(),e.quote,n)});e(bn,function(e,n){if(i&&e.start&&null!=e.start.raw)n.print(e.start.raw);else n.print(d(e.getValue()))});e(yn,function(e,n){var t=e.getValue();var i=t.toString();if(t.raw_source)i="/"+t.raw_source+i.slice(i.lastIndexOf("/"));i=n.to_utf8(i);n.print(i);var r=n.parent();if(r instanceof Me&&/^in/.test(r.operator)&&r.left===e)n.print(" ")});function l(e,n){if(n.option("bracketize"))h(e,n);else if(!e||e instanceof $)n.force_semicolon();else e.print(n)}function p(e,n){if(e.args.length>0)return!0;return n.option("beautify")}function d(e){var n,t=e.toString(10),i=[t.replace(/^0\./,".").replace("e+","e")];if(Math.floor(e)===e){if(e>=0)i.push("0x"+e.toString(16).toLowerCase(),"0"+e.toString(8));else i.push("-0x"+(-e).toString(16).toLowerCase(),"-0"+(-e).toString(8));if(n=/^(.*?)(0+)$/.exec(e))i.push(n[1]+"e"+n[2].length)}else if(n=/^0?\.(0+)(.*)$/.exec(e))i.push(n[2]+"e-"+(n[1].length+n[2].length),t.substr(t.indexOf(".")));return function(e){var n=e[0],t=n.length;for(var i=1;i=0}}var s=this.options.toplevel;this.toplevel="string"==typeof s?{funcs:/funcs/.test(s),vars:/vars/.test(s)}:{funcs:s,vars:s};var u=this.options.sequences;this.sequences_limit=1==u?800:0|u;this.warnings_produced={}}At.prototype=new mt;s(At.prototype,{option:function(e){return this.options[e]},exposed:function(e){if(e.export)return!0;if(e.global)for(var n=0,t=e.orig.length;n0||this.option("reduce_vars"))e.reset_opt_flags(this);e=e.transform(this);if(n>1){var a=0;e.walk(new $n(function(){a++}));this.info("pass "+o+": last_count: "+t+", count: "+a);if(a=0)r.body[a]=r.body[a].transform(i)}else if(r instanceof fe){r.body=r.body.transform(i);if(r.alternative)r.alternative=r.alternative.transform(i)}else if(r instanceof P)r.body=r.body.transform(i);return r});t.transform(i)});!function(e){e(w,u);function n(e,n){n.assignments=0;n.direct_access=!1;n.escaped=!1;if(n.scope.uses_eval||n.scope.uses_with)n.fixed=!1;else if(n.orig[0]instanceof Qe||!e.exposed(n))n.fixed=n.init;else n.fixed=!1;n.recursive_refs=0;n.references=[];n.should_replace=void 0;n.single_use=void 0}function t(e,t,i){i.variables.each(function(i){n(t,i);if(null===i.fixed){i.safe_ids=e.safe_ids;a(e,i,!0)}else if(i.fixed){e.loop_ids[i.id]=e.in_loop;a(e,i,!0)}})}function i(e,t){if(t.block_scope)t.block_scope.variables.each(function(t){n(e,t)})}function r(e){e.safe_ids=Object.create(e.safe_ids)}function o(e){e.safe_ids=Object.getPrototypeOf(e.safe_ids)}function a(e,n,t){e.safe_ids[n.id]=t}function f(e,n){if(e.safe_ids[n.id]){if(null==n.fixed){var t=n.orig[0];if(t instanceof nn||"arguments"==t.name)return!1;n.fixed=s(wn,t)}return!0}return n.fixed instanceof Z}function c(e,n,t){if(void 0===n.fixed)return!0;if(null===n.fixed&&n.safe_ids){n.safe_ids[n.id]=!1;delete n.safe_ids;return!0}if(!y(e.safe_ids,n.id))return!1;if(!f(e,n))return!1;if(!1===n.fixed)return!1;if(null!=n.fixed&&(!t||n.references.length>n.assignments))return!1;return g(n.orig,function(e){return!(e instanceof Qe||e instanceof tn||e instanceof on)})}function l(e,n){if((n=ln(n))instanceof w)return;var t;if(e instanceof Ne){var i=e.elements;if("length"==n)return _(i.length,e);if("number"==typeof n&&n in i)t=i[n]}else if(e instanceof He){n=""+n;var r=e.properties;for(var o=r.length;--o>=0;){if(!(r[o]instanceof Re))return;if(!t&&r[o].key===n)t=r[o].value}}return t instanceof pn&&t.fixed_value()||t}var p=new $n(function(e){if(!(e instanceof We))return;var n=e.definition();if(!n)return;if(e instanceof pn)n.references.push(e);n.fixed=!1});e(W,function(e,n,i){r(e);t(e,i,this);n();o(e);return!0});e(G,h);e(ze,function(e){var n=this;if(n.left instanceof K){n.left.walk(p);return}if("="!=n.operator||!(n.left instanceof pn))return;var t=n.left.definition();if(c(e,t,n.right)){t.references.push(n.left);t.assignments++;t.fixed=function(){return n.right};a(e,t,!1);n.right.walk(e);a(e,t,!0);return!0}});e(Me,function(e){if(!vn(this.operator))return;this.left.walk(e);r(e);this.right.walk(e);o(e);return!0});e(T,function(e,n,t){i(t,this)});e(Je,function(e,n){this.inlined=!1;r(e);n();o(e);return!0});e(qe,function(e){this.condition.walk(e);r(e);this.consequent.walk(e);o(e);r(e);this.alternative.walk(e);o(e);return!0});function d(e,n,i){this.inlined=!1;var r=e.safe_ids;e.safe_ids=Object.create(null);t(e,i,this);n();e.safe_ids=r;return!0}e(Ye,d);e(Z,d);e(N,function(e,n,t){i(t,this);var a=e.in_loop;e.in_loop=this;r(e);this.body.walk(e);this.condition.walk(e);o(e);e.in_loop=a;return!0});e(I,function(e,n,t){i(t,this);if(this.init)this.init.walk(e);var a=e.in_loop;e.in_loop=this;if(this.condition){r(e);this.condition.walk(e);o(e)}r(e);this.body.walk(e);o(e);if(this.step){r(e);this.step.walk(e);o(e)}e.in_loop=a;return!0});e(R,function(e,n,t){i(t,this);this.init.walk(p);this.object.walk(e);var a=e.in_loop;e.in_loop=this;r(e);this.body.walk(e);o(e);e.in_loop=a;return!0});function h(e,n,i){var u=this;u.inlined=!1;r(e);t(e,i,u);var f;if(!u.name&&(f=e.parent())instanceof we&&f.expression===u)u.argnames.forEach(function(n,t){if(!n.definition)return;var i=n.definition();if(!u.uses_arguments&&void 0===i.fixed){i.fixed=function(){return f.args[t]||s(wn,f)};e.loop_ids[i.id]=e.in_loop;a(e,i,!0)}else i.fixed=!1});n();o(e);return!0}e(X,h);e(fe,function(e){this.condition.walk(e);r(e);this.body.walk(e);o(e);if(this.alternative){r(e);this.alternative.walk(e);o(e)}return!0});e(q,function(e){r(e);this.body.walk(e);o(e);return!0});e(le,function(e,n){r(e);n();o(e);return!0});e(un,function(){this.definition().fixed=!1});e(pn,function(e,n,t){var i=this.definition();i.references.push(this);if(1==i.references.length&&!i.fixed&&i.orig[0]instanceof tn)e.loop_ids[i.id]=e.in_loop;var r;if(void 0===i.fixed||!f(e,i)||"m"==i.single_use)i.fixed=!1;else if(i.fixed){if((r=this.fixed_value())instanceof J&&Pn(e,i))i.recursive_refs++;else if(r&&!t.exposed(i)&&function(e,n,t){return n.option("unused")&&!t.scope.uses_eval&&!t.scope.uses_with&&t.references.length-t.recursive_refs==1&&e.loop_ids[t.id]===e.in_loop}(e,t,i))i.single_use=r instanceof J||r instanceof Ve||i.scope===this.scope&&r.is_constant_expression();else i.single_use=!1;if(function e(n,t,i,r,o){var a=n.parent(r);if(En(t,a)||!o&&a instanceof we&&a.expression===t&&!(i instanceof G)&&!(i instanceof Ve)&&(!(i instanceof X)||!(a instanceof xe)&&i.contains_this()))return!0;else if(a instanceof Ne)return e(n,a,a,r+1);else if(a instanceof Re&&t===a.value){var s=n.parent(r+1);return e(n,s,s,r+2)}else if(a instanceof ke&&a.expression===t)return!o&&e(n,a,l(i,a.property),r+1)}(e,this,r,0,function(e){if(!e)return!1;return e.is_constant()||e instanceof J||e instanceof mn}(r)))if(i.single_use)i.single_use="m";else i.fixed=!1}!function e(n,t,i,r,o,a,s){var u=n.parent(a);if(o){if(o.is_constant())return;if(o instanceof Je)return}if(u instanceof ze&&"="==u.operator&&r===u.right||u instanceof we&&r!==u.expression||u instanceof ie&&r===u.value&&r.scope!==t.scope||u instanceof Fe&&r===u.value||u instanceof On&&r===u.value&&r.scope!==t.scope){if(s>1&&(!o||!o.is_constant_expression(i)))s=1;if(!t.escaped||t.escaped>s)t.escaped=s;return}else if(u instanceof Ne||u instanceof Tn||u instanceof Me&&vn(u.operator)||u instanceof qe&&r!==u.condition||u instanceof Y||u instanceof Ce&&r===u.tail_node())e(n,t,i,u,u,a+1,s);else if(u instanceof Re&&r===u.value){var f=n.parent(a+1);e(n,t,i,f,f,a+2,s)}else if(u instanceof ke&&r===u.expression){e(n,t,i,u,o=l(o,u.property),a+1,s+1);if(o)return}if(0==a)t.direct_access=!0}(e,i,this.scope,this,r,0,1)});e(V,function(e,i,r){this.globals.each(function(e){n(r,e)});t(e,r,this)});e(he,function(e,n,t){i(t,this);r(e);S(this,e);o(e);if(this.bcatch){r(e);this.bcatch.walk(e);o(e)}if(this.bfinally)this.bfinally.walk(e);return!0});e(Fe,function(e,n){var t=this;if(t.name instanceof K){t.name.walk(p);return}var i=t.name.definition();if(c(e,i,t.value)){if(t.value){i.fixed=function(){return t.value};e.loop_ids[i.id]=e.in_loop;a(e,i,!1);n()}a(e,i,!0);return!0}else if(t.value)i.fixed=!1});e(H,function(e,n,t){i(t,this);var a=e.in_loop;e.in_loop=this;r(e);this.condition.walk(e);this.body.walk(e);o(e);e.in_loop=a;return!0})}(function(e,n){e.DEFMETHOD("reduce_vars",n)});V.DEFMETHOD("reset_opt_flags",function(e){var n=e.option("reduce_vars");var t=new $n(function(i,r){i._squeezed=!1;i._optimized=!1;if(n)return i.reduce_vars(t,r,e)});t.safe_ids=Object.create(null);t.in_loop=null;t.loop_ids=Object.create(null);this.walk(t)});We.DEFMETHOD("fixed_value",function(){var e=this.definition().fixed;if(!e||e instanceof w)return e;return e()});pn.DEFMETHOD("is_immutable",function(){var e=this.definition().orig;return 1==e.length&&e[0]instanceof on});function n(e){return e instanceof G||e instanceof X}function r(e){if(e instanceof mn)return!0;if(e instanceof pn)return e.definition().orig[0]instanceof on;if(e instanceof ke){if((e=e.expression)instanceof pn){if(e.is_immutable())return!1;e=e.fixed_value()}if(!e)return!0;if(e instanceof yn)return!1;if(e instanceof Dn)return!0;return r(e)}return!1}function o(e,n){if(!(e instanceof pn))return!1;var t=e.definition().orig;for(var i=t.length;--i>=0;)if(t[i]instanceof n)return!0}function a(e,n){var t,i=0;for(;(t=e.parent(i++))&&!(t instanceof L);)if(t instanceof ve){t=t.argname.definition().scope;break}return t.find_variable(n)}function s(e,n,t){if(!t)t={};if(n){if(!t.start)t.start=n.start;if(!t.end)t.end=n.end}return new e(t)}function h(e,n){if(1==n.length)return n[0];return s(Ce,e,{expressions:n.reduce(F,[])})}function _(e,n){switch(typeof e){case"string":return s(gn,n,{value:e});case"number":if(isNaN(e))return s(Fn,n);if(isFinite(e))return 1/e<0?s(Oe,n,{operator:"-",expression:s(bn,n,{value:-e})}):s(bn,n,{value:e});return e<0?s(Oe,n,{operator:"-",expression:s(Cn,n)}):s(Cn,n);case"boolean":return s(e?Sn:Bn,n);case"undefined":return s(wn,n);default:if(null===e)return s(An,n,{value:null});if(e instanceof RegExp)return s(yn,n,{value:e});throw Error(v("Can't handle constant of type: {type}",{type:typeof e}));}}function A(e,n,t){if(e instanceof Oe&&"delete"==e.operator||e instanceof we&&e.expression===n&&(t instanceof ke||t instanceof pn&&"eval"==t.name))return h(n,[s(bn,n,{value:0}),t]);return t}function F(e,n){if(n instanceof Ce)e.push.apply(e,n.expressions);else e.push(n);return e}function M(e){if(null===e)return[];if(e instanceof O)return e.body;if(e instanceof $)return[];if(e instanceof x)return[e];throw Error("Can't convert thing to statement array")}function U(e){if(null===e)return!0;if(e instanceof $)return!0;if(e instanceof O)return 0==e.body.length;return!1}function me(e){return!(e instanceof Ye||e instanceof Z||e instanceof ge||e instanceof be||e instanceof Ae||e instanceof Ee)}function ye(e){if(e instanceof z)return e.body instanceof O?e.body:e;return e}function Ue(e){if("Call"!=e.TYPE)return!1;return e.expression instanceof X||Ue(e.expression)}function Xe(e){return e instanceof pn&&e.definition().undeclared}var en=D("Array Boolean clearInterval clearTimeout console Date decodeURI decodeURIComponent encodeURI encodeURIComponent Error escape eval EvalError Function isFinite isNaN JSON Math Number parseFloat parseInt RangeError ReferenceError RegExp Object setInterval setTimeout String SyntaxError TypeError unescape URIError");pn.DEFMETHOD("is_declared",function(e){return!this.definition().undeclared||e.option("unsafe")&&en(this.name)});var an=D("Infinity NaN undefined");function sn(e){return e instanceof Cn||e instanceof Fn||e instanceof wn}function fn(e,i){var a=i.find_parent(L).get_defun_scope();var u,f=10;do{u=!1;l(e);if(i.option("dead_code"))v(e,i);if(i.option("if_return"))p(e,i);if(i.sequences_limit>0){D(e,i);y(e,i)}if(i.option("join_vars"))x(e);if(i.option("collapse_vars"))c(e,i)}while(u&&f-->0);function c(e,i){if(a.uses_eval||a.uses_with)return e;var f;var c=[];var l=i.self()instanceof he;var p=e.length;var h=new mt(function(e,n){if($)return e;if(e instanceof ce){if(!O){if(e!==m[_])return e;_++}e.expression=e.expression.transform(h);for(var t=0,r=e.body.length;!$&&t0;){var _=0;var D=(m=c.pop())[m.length-1];var b=null;var y=null;var E=X(D);if(!E||r(E)||E.has_side_effects(i))continue;var F=Q(D);if(E instanceof pn)F[E.name]=!1;var w=b;if(!w&&E instanceof pn)if((U=E.definition()).references.length-U.replaced==(D instanceof Fe?1:2))w=!0;var x=ne(D);var k=D.may_throw(i);var S=D.name instanceof nn;var O=S;var $=!1,M=0,q=!f||!O;if(!q){for(var N=i.self().argnames.lastIndexOf(D.name)+1;!$&&NM)M=!1;else{$=!1;_=0;O=S;for(H=p;!$&&H=0;){var p=r.argnames[l];var d=e.args[l];f.unshift(s(Fe,p,{name:p,value:d}));if(p.name in u)continue;u[p.name]=!0;if(p instanceof Y){var h=e.args.slice(l);if(g(h,function(e){return!V(r,e,o)}))c.unshift([s(Fe,p,{name:p.expression,value:s(Ne,e,{elements:h})})])}else{if(!d)d=s(wn,p).transform(i);else if(V(r,d,o))d=null;if(d)c.unshift([s(Fe,p,{name:p,value:d})])}}}}function W(e){m.push(e);if(e instanceof ze){if(!e.left.has_side_effects(i))c.push(m.slice());W(e.right)}else if(e instanceof Me){W(e.left);W(e.right)}else if(e instanceof we){W(e.expression);e.args.forEach(W)}else if(e instanceof de)W(e.expression);else if(e instanceof qe){W(e.condition);W(e.consequent);W(e.alternative)}else if(e instanceof _e&&(i.option("unused")||!(e instanceof be)))e.definitions.forEach(W);else if(e instanceof j){W(e.condition);if(!(e.body instanceof T))W(e.body)}else if(e instanceof ie){if(e.value)W(e.value)}else if(e instanceof I){if(e.init)W(e.init);if(e.condition)W(e.condition);if(e.step)W(e.step);if(!(e.body instanceof T))W(e.body)}else if(e instanceof R){W(e.object);if(!(e.body instanceof T))W(e.body)}else if(e instanceof fe){W(e.condition);if(!(e.body instanceof T))W(e.body);if(e.alternative&&!(e.alternative instanceof T))W(e.alternative)}else if(e instanceof Ce)e.expressions.forEach(W);else if(e instanceof B)W(e.body);else if(e instanceof ce){W(e.expression);e.body.forEach(W)}else if(e instanceof Te){if("++"==e.operator||"--"==e.operator)c.push(m.slice())}else if(e instanceof Fe)if(e.value){c.push(m.slice());W(e.value)}m.pop()}function X(e){if(e instanceof Fe&&e.name instanceof Ge){var n=e.name.definition();if(!t(e.name,n.orig))return;var r=n.orig.length-n.eliminated;var a=n.references.length-n.replaced;if(r>1&&!(e.name instanceof nn)||(a>1?function(n){var t=e.value;if(!(t instanceof pn))return;if("arguments"==t.name)return;var i=t.definition();if(i.undeclared)return;return b=i}():!i.exposed(n)))return s(pn,e.name,e.name)}else{var u=e[e instanceof ze?"left":"expression"];return!o(u,Qe)&&u}}function Z(e){return e[e instanceof ze?"right":"value"]}function Q(e){var n=Object.create(null);if(e instanceof Te)return n;var t=new $n(function(e,i){var r=e;for(;r instanceof ke;)r=r.expression;if(r instanceof pn||r instanceof mn)n[r.name]=n[r.name]||En(e,t.parent())});Z(e).walk(t);return n}function ee(n){if(n.name instanceof nn){var t=i.parent(),r=i.self().argnames;var o=r.indexOf(n.name);if(o<0)t.args.length=Math.min(t.args.length,r.length-1);else{var a=t.args;if(a[o])a[o]=s(bn,a[o],{value:0})}return!0}var u=!1;return e[p].transform(new mt(function(e,t,i){if(u)return e;if(e===n||e.body===n){u=!0;if(e instanceof Fe){e.value=null;return e}return i?d.skip:null}},function(e){if(e instanceof Ce)switch(e.expressions.length){case 0:return null;case 1:return e.expressions[0];}}))}function ne(e){if(e instanceof Te)return!1;return Z(e).has_side_effects(i)}}function l(e){var n=[];for(var t=0;t=0;){var i=e[t];if(i instanceof fe&&i.body instanceof re)if(++n>1)return!0}return!1}(e);var r=t instanceof J;for(var o=e.length;--o>=0;){var a=e[o];var f=b(o);var c=e[f];if(r&&!c&&a instanceof re){if(!a.value){u=!0;e.splice(o,1);continue}if(a.value instanceof Oe&&"void"==a.value.operator){u=!0;e[o]=s(B,a,{body:a.value.expression});continue}}if(a instanceof fe){if(v(p=Rn(a.body))){if(p.label)m(p.label.thedef.references,p);u=!0;(a=a.clone()).condition=a.condition.negate(n);var l=g(a.body,p);a.body=s(O,a,{body:M(a.alternative).concat(D())});a.alternative=s(O,a,{body:l});e[o]=a.transform(n);continue}var p;if(v(p=Rn(a.alternative))){if(p.label)m(p.label.thedef.references,p);u=!0;(a=a.clone()).body=s(O,a.body,{body:M(a.body).concat(D())});l=g(a.alternative,p);a.alternative=s(O,a.alternative,{body:l});e[o]=a.transform(n);continue}}if(a instanceof fe&&a.body instanceof re){var d=a.body.value;if(!d&&!a.alternative&&(r&&!c||c instanceof re&&!c.value)){u=!0;e[o]=s(B,a.condition,{body:a.condition});continue}if(d&&!a.alternative&&c instanceof re&&c.value){u=!0;(a=a.clone()).alternative=c;e.splice(o,1,a.transform(n));e.splice(f,1);continue}if(d&&!a.alternative&&(!c&&r&&i||c instanceof re)){u=!0;(a=a.clone()).alternative=c||s(re,a,{value:null});e.splice(o,1,a.transform(n));if(c)e.splice(f,1);continue}var h=e[y(o)];if(n.option("sequences")&&r&&!a.alternative&&h instanceof fe&&h.body instanceof re&&b(f)==e.length&&c instanceof B){u=!0;(a=a.clone()).alternative=s(O,c,{body:[c,s(re,c,{value:null})]});e.splice(o,1,a.transform(n));e.splice(f,1);continue}}}function v(i){if(!i)return!1;for(var a=o+1,s=e.length;a=0;){var i=e[t];if(!(i instanceof De&&_(i)))break}return t}}function v(e,n){var t;var i=n.self();for(var r=0,o=0,a=e.length;r=n.sequences_limit)r();var c=f.body;if(t.length>0)c=c.drop_side_effect_free(n);if(c)F(t,c)}else if(f instanceof _e&&_(f)||f instanceof Z)e[i++]=f;else{r();e[i++]=f}}r();e.length=i;if(i!=a)u=!0}function b(e,n){if(!(e instanceof O))return e;var t=null;for(var i=0,r=e.body.length;i0){var d=c.length;c.push(s(fe,a,{condition:a.condition,body:l||s($,a.body),alternative:p}));c.unshift(r,1);[].splice.apply(e,c);o+=d;r+=d+1;i=null;u=!0;continue}}e[r++]=a;i=a instanceof B?a:null}e.length=r}function E(e,n){if(!(e instanceof _e))return;var t=e.definitions[e.definitions.length-1];if(!(t.value instanceof He))return;var r;if(n instanceof ze)r=[n];else if(n instanceof Ce)r=n.expressions.slice();if(!r)return;var o=!1;do{var u=r[0];if(!(u instanceof ze))break;if("="!=u.operator)break;if(!(u.left instanceof ke))break;var f=u.left.expression;if(!(f instanceof pn))break;if(t.name.name!=f.name)break;if(!u.right.is_constant_expression(a))break;var c=u.left.property;if(c instanceof w)c=c.evaluate(i);if(c instanceof w)break;c=""+c;if(i.option("ecma")<6&&i.has_directive("use strict"))if(!g(t.value.properties,function(e){return e.key!=c&&e.key.name!=c}))break;t.value.properties.push(s(Re,u,{key:c,value:u.right}));r.shift();o=!0}while(r.length);return o&&r}function x(e){var n;for(var t=0,i=-1,r=e.length;t=0;)if(this.properties[t]._dot_throw(e))return!0;return!1});e(Ie,f);e(Pe,c);e(Y,function(e){return this.expression._dot_throw(e)});e(X,f);e(G,f);e($e,f);e(Oe,function(){return"void"==this.operator});e(Me,function(e){return("&&"==this.operator||"||"==this.operator)&&(this.left._dot_throw(e)||this.right._dot_throw(e))});e(ze,function(e){return"="==this.operator&&this.right._dot_throw(e)});e(qe,function(e){return this.consequent._dot_throw(e)||this.alternative._dot_throw(e)});e(Be,function(e){if(!n(e))return!1;if(this.expression instanceof X&&"prototype"==this.property)return!1;return!0});e(Ce,function(e){return this.tail_node()._dot_throw(e)});e(pn,function(e){if(this.is_undefined)return!0;if(!n(e))return!1;if(Xe(this)&&this.is_declared(e))return!1;if(this.is_immutable())return!1;var t=this.fixed_value();return!t||t._dot_throw(e)})}(function(e,n){e.DEFMETHOD("_dot_throw",n)});!function(e){var n=["!","delete"];var i=["in","instanceof","==","!=","===","!==","<","<=",">=",">"];e(w,f);e(Oe,function(){return t(this.operator,n)});e(Me,function(){return t(this.operator,i)||vn(this.operator)&&this.left.is_boolean()&&this.right.is_boolean()});e(qe,function(){return this.consequent.is_boolean()&&this.alternative.is_boolean()});e(ze,function(){return"="==this.operator&&this.right.is_boolean()});e(Ce,function(){return this.tail_node().is_boolean()});e(Sn,c);e(Bn,c)}(function(e,n){e.DEFMETHOD("is_boolean",n)});!function(e){e(w,f);e(bn,c);var n=D("+ - ~ ++ --");e(Te,function(){return n(this.operator)});var t=D("- * / % & | ^ << >> >>>");e(Me,function(e){return t(this.operator)||"+"==this.operator&&this.left.is_number(e)&&this.right.is_number(e)});e(ze,function(e){return t(this.operator.slice(0,-1))||"="==this.operator&&this.right.is_number(e)});e(Ce,function(e){return this.tail_node().is_number(e)});e(qe,function(e){return this.consequent.is_number(e)&&this.alternative.is_number(e)})}(function(e,n){e.DEFMETHOD("is_number",n)});!function(e){e(w,f);e(gn,c);e(ee,function(){return 1===this.segments.length});e(Oe,function(){return"typeof"==this.operator});e(Me,function(e){return"+"==this.operator&&(this.left.is_string(e)||this.right.is_string(e))});e(ze,function(e){return("="==this.operator||"+="==this.operator)&&this.right.is_string(e)});e(Ce,function(e){return this.tail_node().is_string(e)});e(qe,function(e){return this.consequent.is_string(e)&&this.alternative.is_string(e)})}(function(e,n){e.DEFMETHOD("is_string",n)});var vn=D("&& ||");var _n=D("delete ++ --");function En(e,n){if(n instanceof Te&&_n(n.operator))return n.expression;if(n instanceof ze&&n.left===e)return e}!function(e){w.DEFMETHOD("resolve_defines",function(e){if(!e.option("global_defs"))return;var n=this._find_defs(e,"");if(n){var t,i=this,r=0;do{t=i;i=e.parent(r++)}while(i instanceof ke&&i.expression===t);if(En(t,i))e.warn("global_defs "+this.print_to_string()+" redefined [{file}:{line},{col}]",this.start);else return n}});e(w,u);e(Be,function(e,n){return this.expression._find_defs(e,"."+this.property+n)});e(pn,function(e,n){if(!this.global())return;var t;var i=e.option("global_defs");if(i&&y(i,t=this.name+n)){var r=function e(n,t){if(n instanceof w)return s(n.CTOR,t,n);if(Array.isArray(n))return s(Ne,t,{elements:n.map(function(n){return e(n,t)})});if(n&&"object"==typeof n){var i=[];for(var r in n)if(y(n,r))i.push(s(Re,t,{key:r,value:e(n[r],t)}));return s(He,t,{properties:i})}return _(n,t)}(i[t],this);var o=e.find_parent(V);r.walk(new $n(function(e){if(e instanceof pn){e.scope=o;e.thedef=o.def_global(e)}}));return r}})}(function(e,n){e.DEFMETHOD("_find_defs",n)});function Mn(e,n){return e.print_to_string().length>n.print_to_string().length?n:e}function qn(e,n,t){return(E(e)?function(e,n){return Mn(s(B,e,{body:e}),s(B,n,{body:n})).body}:Mn)(n,t)}function zn(e){for(var n in e)e[n]=D(e[n])}var jn=["constructor","toString","valueOf"];var Nn={Array:["indexOf","join","lastIndexOf","slice"].concat(jn),Boolean:jn,Number:["toExponential","toFixed","toPrecision"].concat(jn),Object:jn,RegExp:["test"].concat(jn),String:["charAt","charCodeAt","concat","indexOf","italics","lastIndexOf","match","replace","search","slice","split","substr","substring","trim"].concat(jn)};zn(Nn);var Hn={Array:["isArray"],Math:["abs","acos","asin","atan","ceil","cos","exp","floor","log","round","sin","sqrt","tan","atan2","pow","max","min"],Number:["isFinite","isNaN"],Object:["create","getOwnPropertyDescriptor","getOwnPropertyNames","getPrototypeOf","isExtensible","isFrozen","isSealed","keys"],String:["fromCharCode"]};zn(Hn);!function(e){w.DEFMETHOD("evaluate",function(e){if(!e.option("evaluate"))return this;var n=this._eval(e,1);return!n||n instanceof RegExp||"object"!=typeof n?n:this});var n=D("! ~ - + void");w.DEFMETHOD("is_constant",function(){if(this instanceof Dn)return!(this instanceof yn);else return this instanceof Oe&&this.expression instanceof Dn&&n(this.operator)});e(x,function(){throw Error(v("Cannot evaluate a statement [{file}:{line},{col}]",this.start))});e(J,l);e(Ve,l);e(w,l);e(Dn,function(){return this.getValue()});e(ee,function(){if(1!==this.segments.length)return this;return this.segments[0].value});e(Ne,function(e,n){if(e.option("unsafe")){var t=[];for(var i=0,r=this.elements.length;i>":r=t>>i;break;case">>>":r=t>>>i;break;case"==":r=t==i;break;case"===":r=t===i;break;case"!=":r=t!=i;break;case"!==":r=t!==i;break;case"<":r=t":r=t>i;break;case">=":r=t>=i;break;default:return this;}if(isNaN(r)&&e.find_parent(P))return this;return r});e(qe,function(e,n){var t=this.condition._eval(e,n);if(t===this.condition)return this;var i=t?this.consequent:this.alternative;var r=i._eval(e,n);return r===i?this:r});e(pn,function(e,n){var t=this.fixed_value();if(!t)return this;var i;if(y(t,"_eval"))i=t._eval();else{this._eval=l;i=t._eval(e,n);delete this._eval;if(i===t)return this;t._eval=function(){return i}}if(i&&"object"==typeof i){var r=this.definition().escaped;if(r&&n>r)return this}return i});var t={Array:Array,Math:Math,Number:Number,Object:Object,String:String};var i={Math:["E","LN10","LN2","LOG2E","LOG10E","PI","SQRT1_2","SQRT2"],Number:["MAX_VALUE","MIN_VALUE","NaN","NEGATIVE_INFINITY","POSITIVE_INFINITY"]};zn(i);e(ke,function(e,n){if(e.option("unsafe")){var r=this.property;if(r instanceof w)if((r=r._eval(e,n))===this.property)return this;var o=this.expression;var a;if(Xe(o)){if(!(i[o.name]||f)(r))return this;a=t[o.name]}else if(!(a=o._eval(e,n+1))||a===o||!y(a,r))return this;return a[r]}return this});e(we,function(e,n){var i=this.expression;if(e.option("unsafe")&&i instanceof ke){var r=i.property;if(r instanceof w)if((r=r._eval(e,n))===i.property)return this;var o;var a=i.expression;if(Xe(a)){if(!(Hn[a.name]||f)(r))return this;o=t[a.name]}else if((o=a._eval(e,n+1))===a||!(o&&Nn[o.constructor.name]||f)(r))return this;var s=[];for(var u=0,c=this.args.length;u";return r;case"<":r.operator=">=";return r;case">=":r.operator="<";return r;case">":r.operator="<=";return r;}switch(o){case"==":r.operator="!=";return r;case"!=":r.operator="==";return r;case"===":r.operator="!==";return r;case"!==":r.operator="===";return r;case"&&":r.operator="||";r.left=r.left.negate(e,i);r.right=r.right.negate(e);return t(this,r,i);case"||":r.operator="&&";r.left=r.left.negate(e,i);r.right=r.right.negate(e);return t(this,r,i);}return n(this)})}(function(e,n){e.DEFMETHOD("negate",function(e,t){return n.call(this,e,t)})});var In=D("Boolean decodeURI decodeURIComponent Date encodeURI encodeURIComponent Error escape EvalError isFinite isNaN Number Object parseFloat parseInt RangeError ReferenceError String SyntaxError TypeError unescape URIError");we.DEFMETHOD("is_expr_pure",function(e){if(e.option("unsafe")){var n=this.expression;if(Xe(n)&&In(n.name))return!0;if(n instanceof Be&&Xe(n.expression)&&(Hn[n.expression.name]||f)(n.property))return!0}return this.pure||!e.pure_funcs(this)});w.DEFMETHOD("is_call_pure",f);Be.DEFMETHOD("is_call_pure",function(e){if(!e.option("unsafe"))return;var n=this.expression;var t=f;if(n instanceof Ne)t=Nn.Array;else if(n.is_boolean())t=Nn.Boolean;else if(n.is_number(e))t=Nn.Number;else if(n instanceof yn)t=Nn.RegExp;else if(n.is_string(e))t=Nn.String;else if(!this.may_throw_on_access(e))t=Nn.Object;return t(this.property)});!function(e){e(w,c);e($,f);e(Dn,f);e(mn,f);function n(e,n){for(var t=e.length;--t>=0;)if(e[t].has_side_effects(n))return!0;return!1}e(T,function(e){return n(this.body,e)});e(we,function(e){if(!this.is_expr_pure(e)&&(!this.expression.is_call_pure(e)||this.expression.has_side_effects(e)))return!0;return n(this.args,e)});e(ce,function(e){return this.expression.has_side_effects(e)||n(this.body,e)});e(de,function(e){return this.expression.has_side_effects(e)||n(this.body,e)});e(he,function(e){return n(this.body,e)||this.bcatch&&this.bcatch.has_side_effects(e)||this.bfinally&&this.bfinally.has_side_effects(e)});e(fe,function(e){return this.condition.has_side_effects(e)||this.body&&this.body.has_side_effects(e)||this.alternative&&this.alternative.has_side_effects(e)});e(q,function(e){return this.body.has_side_effects(e)});e(B,function(e){return this.body.has_side_effects(e)});e(J,f);e(Ve,f);e(Ye,c);e(Me,function(e){return this.left.has_side_effects(e)||this.right.has_side_effects(e)});e(ze,c);e(qe,function(e){return this.condition.has_side_effects(e)||this.consequent.has_side_effects(e)||this.alternative.has_side_effects(e)});e(Te,function(e){return _n(this.operator)||this.expression.has_side_effects(e)});e(pn,function(e){return!this.is_declared(e)});e(Ge,f);e(He,function(e){return n(this.properties,e)});e(Ie,function(e){if(this.key instanceof Re&&this.key.has_side_effects(e))return!0;return this.value.has_side_effects(e)});e(Ne,function(e){return n(this.elements,e)});e(Be,function(e){return this.expression.may_throw_on_access(e)||this.expression.has_side_effects(e)});e(Se,function(e){return this.expression.may_throw_on_access(e)||this.expression.has_side_effects(e)||this.property.has_side_effects(e)});e(Ce,function(e){return n(this.expressions,e)});e(_e,function(e){return n(this.definitions,e)});e(Fe,function(e){return this.value});e(ne,f);e(ee,function(e){return n(this.segments,e)})}(function(e,n){e.DEFMETHOD("has_side_effects",n)});!function(e){e(w,c);e(Ve,f);e(Dn,f);e($,f);e(J,f);e(Ge,f);e(mn,f);function n(e,n){for(var t=e.length;--t>=0;)if(e[t].may_throw(n))return!0;return!1}e(Ne,function(e){return n(this.elements,e)});e(ze,function(e){return"="!=this.operator&&this.left.may_throw(e)||this.right.may_throw(e)});e(Me,function(e){return this.left.may_throw(e)||this.right.may_throw(e)});e(T,function(e){return n(this.body,e)});e(we,function(e){if(n(this.args,e))return!0;if(this.is_expr_pure(e))return!1;if(this.expression.may_throw(e))return!0;return!(this.expression instanceof J)||n(this.expression.body,e)});e(de,function(e){return this.expression.may_throw(e)||n(this.body,e)});e(qe,function(e){return this.condition.may_throw(e)||this.consequent.may_throw(e)||this.alternative.may_throw(e)});e(_e,function(e){return n(this.definitions,e)});e(Be,function(e){return this.expression.may_throw_on_access(e)||this.expression.may_throw(e)});e(fe,function(e){return this.condition.may_throw(e)||this.body&&this.body.may_throw(e)||this.alternative&&this.alternative.may_throw(e)});e(q,function(e){return this.body.may_throw(e)});e(He,function(e){return n(this.properties,e)});e(Ie,function(e){return this.value.may_throw(e)});e(Ce,function(e){return n(this.expressions,e)});e(B,function(e){return this.body.may_throw(e)});e(Se,function(e){return this.expression.may_throw_on_access(e)||this.expression.may_throw(e)||this.property.may_throw(e)});e(ce,function(e){return this.expression.may_throw(e)||n(this.body,e)});e(pn,function(e){return!this.is_declared(e)});e(he,function(e){return n(this.body,e)||this.bcatch&&this.bcatch.may_throw(e)||this.bfinally&&this.bfinally.may_throw(e)});e(Te,function(e){if("typeof"==this.operator&&this.expression instanceof pn)return!1;return this.expression.may_throw(e)});e(Fe,function(e){if(!this.value)return!1;return this.value.may_throw(e)})}(function(e,n){e.DEFMETHOD("may_throw",n)});!function(e){function n(e){for(var n=e.length;--n>=0;)if(!e[n].is_constant_expression())return!1;return!0}function i(e){var n=this;var i=!0;n.walk(new $n(function(r){if(!i)return!0;if(r instanceof pn){if(n.inlined){i=!1;return!0}var o=r.definition();if(t(o,n.enclosed)&&!n.variables.has(o.name)){if(e){var a=e.find_variable(r);if(o.undeclared?!a:a===o){i="f";return!0}}i=!1}return!0}if(r instanceof mn&&n instanceof G){i=!1;return!0}}));return i}e(w,f);e(Dn,c);e(Ve,i);e(J,i);e(Te,function(){return this.expression.is_constant_expression()});e(Me,function(){return this.left.is_constant_expression()&&this.right.is_constant_expression()});e(Ne,function(){return n(this.elements)});e(He,function(){return n(this.properties)});e(Ie,function(){return!(this.key instanceof w)&&this.value.is_constant_expression()})}(function(e,n){e.DEFMETHOD("is_constant_expression",n)});function Rn(e){return e&&e.aborts()}!function(e){e(x,p);e(te,l);function n(){var e=this.body.length;return e>0&&Rn(this.body[e-1])}e(Ee,function(){return null});e(O,n);e(le,n);e(fe,function(){return this.alternative&&Rn(this.body)&&Rn(this.alternative)&&this})}(function(e,n){e.DEFMETHOD("aborts",n)});e(k,function(e,n){if(n.has_directive(e.value)!==e)return s($,e);return e});e(C,function(e,n){if(n.option("drop_debugger"))return s($,e);return e});e(q,function(e,n){if(e.body instanceof se&&n.loopcontrol_target(e.body)===e.body)return s($,e);return 0==e.label.references.length?e.body:e});e(T,function(e,n){fn(e.body,n);return e});e(O,function(e,n){fn(e.body,n);switch(e.body.length){case 1:if(!n.has_directive("use strict")&&n.parent()instanceof fe||me(e.body[0]))return e.body[0];break;case 0:return s($,e);}return e});L.DEFMETHOD("drop_unused",function(e){if(!e.option("unused"))return;if(e.has_directive("use asm"))return;var n=this;if(n.uses_eval||n.uses_with)return;var t=!(n instanceof V)||e.toplevel.funcs;var i=!(n instanceof V)||e.toplevel.vars;var r=/keep_assign/.test(e.option("unused"))?f:function(e){if(e instanceof ze&&(e.write_only||"="==e.operator))return e.left;if(e instanceof Te&&e.write_only)return e.expression};var a=[];var u=Object.create(null);var c=Object.create(null);if(n instanceof V&&e.top_retain)n.variables.each(function(n){if(e.top_retain(n)&&!(n.id in u)){u[n.id]=!0;a.push(n)}});var l=new b;var p=new b;var v=null;var _=this;var D=new $n(function(r,o){if(r===n)return;if(r instanceof Z||r instanceof Ye){var s=r.name.definition();if((f=D.parent()instanceof Ae)||!t&&_===n)if(s.global&&!(s.id in u)){u[s.id]=!0;a.push(s)}p.add(s.id,r);return!0}if(r instanceof nn&&_===n)l.add(r.definition().id,r);if(r instanceof _e&&_===n){var f=D.parent()instanceof Ae;r.definitions.forEach(function(n){if(n.name instanceof Ze)l.add(n.name.definition().id,n);if(f||!i)n.name.walk(new $n(function(e){if(e instanceof Ge){var n=e.definition();if((f||n.global)&&!(n.id in u)){u[n.id]=!0;a.push(n)}}}));if(n.value){if(n.name instanceof K){var t=v;v=n.value;n.walk(D);v=t}else{var r=n.name.definition();p.add(r.id,n.value);if(n.name.fixed_value()===n.value)c[r.id]=n}if(n.value.has_side_effects(e))n.value.walk(D)}});return!0}if(r.destructuring&&v)p.add(r.name,v);return w(r,o)});n.walk(D);D=new $n(w);for(var y=0;y1)o.name=null;if(o instanceof J&&!(o instanceof W)){var D=!e.option("keep_fargs");for(var b=o.argnames,y=b.length;--y>=0;){var E;if((E=b[y])instanceof Y)E=E.expression;if(E instanceof je)E=E.left;if(!(E instanceof K||E.definition().id in u)){E.__unused=!0;if(D){b.pop();e[E.unreferenced()?"warn":"info"]("Dropping unused function argument {name} [{file}:{line},{col}]",j(E))}}else D=!1}}if((o instanceof Z||o instanceof Ye)&&o!==n){var w;if(!((w=o.name.definition()).id in u||!t&&w.global)){e[o.name.unreferenced()?"warn":"info"]("Dropping unused function {name} [{file}:{line},{col}]",j(o.name));w.eliminated++;return s($,o)}}if(o instanceof _e&&!(p instanceof R&&p.init===o)){var x=!(p instanceof V||o instanceof De);var C=[],k=[],S=[];var T=[];o.definitions.forEach(function(n){if(n.value)n.value=n.value.transform(F);if(n.name instanceof K)return S.push(n);var t=n.name.definition();if(x&&t.global)return S.push(n);if(!i&&!x||t.id in u){if(n.value&&t.id in c&&c[t.id]!==n)n.value=n.value.drop_side_effect_free(e);if(n.name instanceof Ze){var r=l.get(t.id);if(r.length>1&&(!n.value||t.orig.indexOf(n.name)>t.eliminated)){e.warn("Dropping duplicated definition of variable {name} [{file}:{line},{col}]",j(n.name));if(n.value){var a=s(pn,n.name,n.name);t.references.push(a);var f=s(ze,n,{operator:"=",left:a,right:n.value});if(c[t.id]===n)c[t.id]=f;T.push(f.transform(F))}m(r,n);t.eliminated++;return}}if(n.value){if(T.length>0){if(S.length>0){T.push(n.value);n.value=h(n.value,T)}else C.push(s(B,o,{body:h(o,T)}));T=[]}S.push(n)}else k.push(n)}else if(t.orig[0]instanceof un){if(p=n.value&&n.value.drop_side_effect_free(e))T.push(p);n.value=null;k.push(n)}else{var p;if(p=n.value&&n.value.drop_side_effect_free(e)){e.warn("Side effects in initialization of unused variable {name} [{file}:{line},{col}]",j(n.name));T.push(p)}else e[n.name.unreferenced()?"warn":"info"]("Dropping unused variable {name} [{file}:{line},{col}]",j(n.name));t.eliminated++}});if(k.length>0||S.length>0){o.definitions=k.concat(S);C.push(o)}if(T.length>0)C.push(s(B,o,{body:h(o,T)}));switch(C.length){case 0:return f?d.skip:s($,o);case 1:return C[0];default:return f?d.splice(C):s(O,o,{body:C});}}if(o instanceof I){a(o,this);if(o.init instanceof O){M=o.init;o.init=M.body.pop();M.body.push(o)}if(o.init instanceof B)o.init=o.init.body;else if(U(o.init))o.init=null;return!M?o:f?d.splice(M.body):M}if(o instanceof q&&o.body instanceof I){a(o,this);if(o.body instanceof O){var M=o.body;o.body=M.body.pop();M.body.push(o);return f?d.splice(M.body):M}return o}if(o instanceof O){a(o,this);if(f&&g(o.body,me))return d.splice(o.body);return o}if(o instanceof L){var z=_;_=o;a(o,this);_=z;return o}function j(e){return{name:e.name,file:e.start.file,line:e.start.line,col:e.start.col}}});n.transform(F);function w(e,t){var i,s=r(e);if(s instanceof pn&&!o(e.left,Ke)&&n.variables.get(s.name)===(i=s.definition())){if(e instanceof ze){e.right.walk(D);if(e.left.fixed_value()===e.right)c[i.id]=e}return!0}if(e instanceof pn){if(!((i=e.definition()).id in u)){u[i.id]=!0;a.push(i);if(i=i.redefined()){u[i.id]=!0;a.push(i)}}return!0}if(e instanceof L){var f=_;_=e;t();_=f;return!0}}});L.DEFMETHOD("hoist_declarations",function(e){var n=this;if(e.has_directive("use asm"))return n;if(!Array.isArray(n.body))return n;var t=e.option("hoist_funs");var r=e.option("hoist_vars");if(t||r){var o=[];var a=[];var u=new b,f=0,c=0;n.walk(new $n(function(e){if(e instanceof L&&e!==n)return!0;if(e instanceof De){++c;return!0}}));r=r&&c>1;var l=new mt(function(i){if(i!==n){if(i instanceof k){o.push(i);return s($,i)}if(t&&i instanceof Z&&!(l.parent()instanceof Ae)&&l.parent()===n){a.push(i);return s($,i)}if(r&&i instanceof De){i.definitions.forEach(function(e){if(e.name instanceof K)return;u.set(e.name.name,e);++f});var c=i.to_assignments(e);var p=l.parent();if(p instanceof R&&p.init===i){if(null==c){var d=i.definitions[0].name;return s(pn,d,d)}return c}if(p instanceof I&&p.init===i)return c;if(!c)return s($,i);return s(B,i,{body:c})}if(i instanceof L)return i}});n=n.transform(l);if(f>0){var p=[];u.each(function(e,t){if(n instanceof J&&i(function(n){return n.name==e.name.name},n.args_as_names()))u.del(t);else{(e=e.clone()).value=null;p.push(e);u.set(t,e)}});if(p.length>0){for(var d=0;d0)a[0].body=o.concat(a[0].body);e.body=a;for(;t=a[a.length-1];){var h=t.body[t.body.length-1];if(h instanceof se&&n.loopcontrol_target(h)===e)t.body.pop();if(t.body.length||t instanceof de&&(u||t.expression.has_side_effects(n)))break;if(a.pop()===u)u=null}if(0==a.length)return s(O,e,{body:o.concat(s(B,e.expression,{body:e.expression}))}).optimize(n);if(1==a.length&&(a[0]===f||a[0]===u)){var v=!1;var m=new $n(function(n){if(v||n instanceof J||n instanceof B)return!0;if(n instanceof se&&m.loopcontrol_target(n)===e)v=!0});e.walk(m);if(!v){var D=a[0].body.slice();var g;if(g=a[0].expression)D.unshift(s(B,g,{body:g}));D.unshift(s(B,e.expression,{body:e.expression}));return s(O,e,{body:D}).optimize(n)}}return e;function b(e,t){if(t&&!Rn(t))t.body=t.body.concat(e.body);else cn(n,e,o)}});e(he,function(e,n){fn(e.body,n);if(e.bcatch&&e.bfinally&&g(e.bfinally.body,U))e.bfinally=null;if(n.option("dead_code")&&g(e.body,U)){var t=[];if(e.bcatch){cn(n,e.bcatch,t);t.forEach(function(e){if(!(e instanceof _e))return;e.definitions.forEach(function(e){var n=e.name.definition().redefined();if(!n)return;e.name=e.name.clone();e.name.thedef=n})})}if(e.bfinally)t=t.concat(e.bfinally.body);return s(O,e,{body:t}).optimize(n)}return e});_e.DEFMETHOD("remove_initializers",function(){var e=[];this.definitions.forEach(function(n){if(n.name instanceof Ge){n.value=null;e.push(n)}else n.name.walk(new $n(function(t){if(t instanceof Ge)e.push(s(Fe,n,{name:t,value:null}))}))});this.definitions=e});_e.DEFMETHOD("to_assignments",function(e){var n=e.option("reduce_vars");var t=this.definitions.reduce(function(e,t){if(t.value&&!(t.name instanceof K)){var i=s(pn,t.name,t.name);e.push(s(ze,t,{operator:"=",left:i,right:t.value}));if(n)i.definition().fixed=!1}else if(t.value){var r=s(Fe,t,{name:t.name,value:t.value});var o=s(De,t,{definitions:[r]});e.push(o)}(t=t.name.definition()).eliminated++;t.replaced--;return e},[]);if(0==t.length)return null;return h(this,t)});e(_e,function(e,n){if(0==e.definitions.length)return s($,e);return e});e(Ee,function(e,n){return e});e(we,function(e,t){var i=e.expression;var r=i;var o=g(e.args,function(e){return!(e instanceof Y)});if(t.option("reduce_vars")&&r instanceof pn)r=r.fixed_value();var a=r instanceof J;if(t.option("unused")&&o&&a&&!r.uses_arguments&&!r.uses_eval){var u=0,f=0;for(var c=0,l=e.args.length;c=r.argnames.length;if(p||r.argnames[c].__unused){if(E=e.args[c].drop_side_effect_free(t))e.args[u++]=E;else if(!p){e.args[u++]=s(bn,e.args[c],{value:0});continue}}else e.args[u++]=e.args[c];f=u}e.args.length=f}if(t.option("unsafe"))if(Xe(i))switch(i.name){case"Array":if(1!=e.args.length)return s(Ne,e,{elements:e.args}).optimize(t);break;case"Object":if(0==e.args.length)return s(He,e,{properties:[]});break;case"String":if(0==e.args.length)return s(gn,e,{value:""});if(e.args.length<=1)return s(Me,e,{left:e.args[0],operator:"+",right:s(gn,e,{value:""})}).optimize(t);break;case"Number":if(0==e.args.length)return s(bn,e,{value:0});if(1==e.args.length)return s(Oe,e,{expression:e.args[0],operator:"+"}).optimize(t);case"Boolean":if(0==e.args.length)return s(Bn,e);if(1==e.args.length)return s(Oe,e,{expression:s(Oe,e,{expression:e.args[0],operator:"!"}),operator:"!"}).optimize(t);break;case"RegExp":var d=[];if(g(e.args,function(e){var n=e.evaluate(t);d.unshift(n);return e!==n}))try{return qn(t,e,s(yn,e,{value:RegExp.apply(RegExp,d)}))}catch(n){t.warn("Error converting {expr} [{file}:{line},{col}]",{expr:e.print_to_string(),file:e.start.file,line:e.start.line,col:e.start.col})}break;case"Symbol":e.args=[];return e;}else if(i instanceof Be)switch(i.property){case"toString":if(0==e.args.length&&!i.expression.may_throw_on_access(t))return s(Me,e,{left:s(gn,e,{value:""}),operator:"+",right:i.expression}).optimize(t);break;case"join":if(i.expression instanceof Ne)e:{var v;if(e.args.length>0)if((v=e.args[0].evaluate(t))===e.args[0])break e;var m=[];var D=[];for(c=0,l=i.expression.elements.length;c0){m.push(s(gn,e,{value:D.join(v)}));D.length=0}m.push(b)}}if(D.length>0)m.push(s(gn,e,{value:D.join(v)}));if(0==m.length)return s(gn,e,{value:""});if(1==m.length){if(m[0].is_string(t))return m[0];return s(Me,m[0],{operator:"+",left:s(gn,e,{value:""}),right:m[0]})}if(""==v){var y;if(m[0].is_string(t)||m[1].is_string(t))y=m.shift();else y=s(gn,e,{value:""});return m.reduce(function(e,n){return s(Me,n,{operator:"+",left:e,right:n})},y).optimize(t)}var E;(E=e.clone()).expression=E.expression.clone();E.expression.expression=E.expression.expression.clone();E.expression.expression.elements=m;return qn(t,e,E)}break;case"charAt":if(i.expression.is_string(t)){var A=e.args[0];var F=A?A.evaluate(t):0;if(F!==A)return s(Se,i,{expression:i.expression,property:_(0|F,A||i)}).optimize(t)}break;case"apply":if(2==e.args.length&&e.args[1]instanceof Ne){(q=e.args[1].elements.slice()).unshift(e.args[0]);return s(we,e,{expression:s(Be,i,{expression:i.expression,property:"call"}),args:q}).optimize(t)}break;case"call":var x=i.expression;if(x instanceof pn)x=x.fixed_value();if(x instanceof J&&!x.contains_this())return h(this,[e.args[0],s(we,e,{expression:i.expression,args:e.args.slice(1)})]).optimize(t);}if(t.option("unsafe_Function")&&Xe(i)&&"Function"==i.name){if(0==e.args.length)return s(X,e,{argnames:[],body:[]}).optimize(t);if(g(e.args,function(e){return e instanceof gn}))try{var C=vt($="n(function("+e.args.slice(0,-1).map(function(e){return e.value}).join(",")+"){"+e.args[e.args.length-1].value+"})");var k={ie8:t.option("ie8")};C.figure_out_scope(k);var S=new At(t.options);(C=C.transform(S)).figure_out_scope(k);gt.reset();C.compute_char_frequency(k);C.mangle_names(k);var T;C.walk(new $n(function(e){if(T)return!0;if(n(e)){T=e;return!0}}));if(T.body instanceof w)T.body=[s(re,T.body,{value:T.body})];var $=Et();O.prototype._codegen.call(T,T,$);e.args=[s(gn,e,{value:T.argnames.map(function(e){return e.print_to_string()}).join(",")}),s(gn,e.args[e.args.length-1],{value:$.get().replace(/^\{|\}$/g,"")})];return e}catch(n){if(n instanceof at){t.warn("Error parsing code passed to new Function [{file}:{line},{col}]",e.args[e.args.length-1].start);t.warn(n.toString())}else throw n}}var M=a&&r.body;if(M instanceof w)M=s(re,M,{value:M});else if(M)M=M[0];if(t.option("inline")&&M instanceof re)if(!(N=M.value)||N.is_constant_expression()){var q=e.args.concat(N||s(wn,e));return h(e,q).optimize(t)}if(a&&!r.is_generator&&!r.async){var j,N,H,I,R=-1;if(t.option("inline")&&o&&!r.uses_arguments&&!r.uses_eval&&!(r.name&&r instanceof X)&&(N=function(e){var n=r.body instanceof w?[r.body]:r.body;var i=n.length;if(t.option("inline")<3)return 1==i&&Z(e);e=null;for(var o=0;o=0;){var s=o.definitions[a].name;if(e[s.name]||an(s.name)||H.var_names()[s.name])return!1;if(I)I.push(s.definition())}}return!0}(e,i>=3&&n))return!1;if(!function(e,n){for(var t=0,i=r.argnames.length;t=2&&n))return!1;return!I||0==I.length||!Vn(r,I)}())return h(e,function(){var n=[];var i=[];!function(n,t){var i=r.argnames.length;for(var o=e.args.length;--o>=i;)t.push(e.args[o]);for(o=i;--o>=0;){var a=r.argnames[o];var u=e.args[o];if(a.__unused||!a.name||H.var_names()[a.name]){if(u)t.push(u)}else{var f=s(Ze,a,a);a.definition().orig.push(f);if(!u&&I)u=s(wn,e);Q(n,t,f,u)}}n.reverse();t.reverse()}(n,i);!function(e,n){var t=n.length;for(var i=0,o=r.body.length;i0&&hn(t[o],n);)o--;if(o0){var o;(o=this.clone()).right=h(this.right,n.slice(r));(n=n.slice(0,r)).push(o);return h(this,n).optimize(e)}}}return this});var Un=D("== === != !== * & | ^");e(Me,function(e,n){function t(){return e.left.is_constant()||e.right.is_constant()||!e.left.has_side_effects(n)&&!e.right.has_side_effects(n)}function i(n){if(t()){if(n)e.operator=n;var i=e.left;e.left=e.right;e.right=i}}if(Un(e.operator))if(e.right.is_constant()&&!e.left.is_constant())if(!(e.left instanceof Me&&dt[e.left.operator]>=dt[e.operator]))i();e=e.lift_sequences(n);if(n.option("comparisons"))switch(e.operator){case"===":case"!==":if(e.left.is_string(n)&&e.right.is_string(n)||e.left.is_number(n)&&e.right.is_number(n)||e.left.is_boolean()&&e.right.is_boolean()||e.left.equivalent_to(e.right))e.operator=e.operator.substr(0,2);case"==":case"!=":if(n.option("typeofs")&&e.left instanceof gn&&"undefined"==e.left.value&&e.right instanceof Oe&&"typeof"==e.right.operator){var r=e.right.expression;if(r instanceof pn?r.is_declared(n):!(r instanceof ke&&n.option("ie8"))){e.right=r;e.left=s(wn,e.left).optimize(n);if(2==e.operator.length)e.operator+="="}}else if(e.left instanceof pn&&e.right instanceof pn&&e.left.definition()===e.right.definition()&&((o=e.left.fixed_value())instanceof Ne||o instanceof J||o instanceof He||o instanceof Ve))return s("="==e.operator[0]?Sn:Bn,e);}var o;if("+"==e.operator&&n.in_boolean_context()){var a=e.left.evaluate(n);var u=e.right.evaluate(n);if(a&&"string"==typeof a){n.warn("+ in boolean context always true [{file}:{line},{col}]",e.start);return h(e,[e.right,s(Sn,e)]).optimize(n)}if(u&&"string"==typeof u){n.warn("+ in boolean context always true [{file}:{line},{col}]",e.start);return h(e,[e.left,s(Sn,e)]).optimize(n)}}if(n.option("comparisons")&&e.is_boolean()){if(!(n.parent()instanceof Me)||n.parent()instanceof ze){var f=s(Oe,e,{operator:"!",expression:e.negate(n,E(n))});e=qn(n,e,f)}if(n.option("unsafe_comps"))switch(e.operator){case"<":i(">");break;case"<=":i(">=");}}if("+"==e.operator){if(e.right instanceof gn&&""==e.right.getValue()&&e.left.is_string(n))return e.left;if(e.left instanceof gn&&""==e.left.getValue()&&e.right.is_string(n))return e.right;if(e.left instanceof Me&&"+"==e.left.operator&&e.left.left instanceof gn&&""==e.left.left.getValue()&&e.right.is_string(n)){e.left=e.left.right;return e.transform(n)}}if(n.option("evaluate")){switch(e.operator){case"&&":if(!(a=e.left.truthy?!0:e.left.falsy?!1:e.left.evaluate(n))){n.warn("Condition left of && always false [{file}:{line},{col}]",e.start);return A(n.parent(),n.self(),e.left).optimize(n)}else if(!(a instanceof w)){n.warn("Condition left of && always true [{file}:{line},{col}]",e.start);return h(e,[e.left,e.right]).optimize(n)}if(!(u=e.right.evaluate(n))){if(n.in_boolean_context()){n.warn("Boolean && always false [{file}:{line},{col}]",e.start);return h(e,[e.left,s(Bn,e)]).optimize(n)}else e.falsy=!0;}else if(!(u instanceof w))if("&&"==(c=n.parent()).operator&&c.left===n.self()||n.in_boolean_context()){n.warn("Dropping side-effect-free && [{file}:{line},{col}]",e.start);return e.left.optimize(n)}if("||"==e.left.operator)if(!(l=e.left.right.evaluate(n)))return s(qe,e,{condition:e.left.left,consequent:e.right,alternative:e.left.right}).optimize(n);break;case"||":if(!(a=e.left.truthy?!0:e.left.falsy?!1:e.left.evaluate(n))){n.warn("Condition left of || always false [{file}:{line},{col}]",e.start);return h(e,[e.left,e.right]).optimize(n)}else if(!(a instanceof w)){n.warn("Condition left of || always true [{file}:{line},{col}]",e.start);return A(n.parent(),n.self(),e.left).optimize(n)}if(!(u=e.right.evaluate(n))){var c;if("||"==(c=n.parent()).operator&&c.left===n.self()||n.in_boolean_context()){n.warn("Dropping side-effect-free || [{file}:{line},{col}]",e.start);return e.left.optimize(n)}}else if(!(u instanceof w))if(n.in_boolean_context()){n.warn("Boolean || always true [{file}:{line},{col}]",e.start);return h(e,[e.left,s(Sn,e)]).optimize(n)}else e.truthy=!0;if("&&"==e.left.operator){var l;if((l=e.left.right.evaluate(n))&&!(l instanceof w))return s(qe,e,{condition:e.left.left,consequent:e.left.right,alternative:e.right}).optimize(n)}}var p=!0;switch(e.operator){case"+":if(e.left instanceof Dn&&e.right instanceof Me&&"+"==e.right.operator&&e.right.left instanceof Dn&&e.right.is_string(n))e=s(Me,e,{operator:"+",left:s(gn,e.left,{value:""+e.left.getValue()+e.right.left.getValue(),start:e.left.start,end:e.right.left.end}),right:e.right.right});if(e.right instanceof Dn&&e.left instanceof Me&&"+"==e.left.operator&&e.left.right instanceof Dn&&e.left.is_string(n))e=s(Me,e,{operator:"+",left:e.left.left,right:s(gn,e.right,{value:""+e.left.right.getValue()+e.right.getValue(),start:e.left.right.start,end:e.right.end})});if(e.left instanceof Me&&"+"==e.left.operator&&e.left.is_string(n)&&e.left.right instanceof Dn&&e.right instanceof Me&&"+"==e.right.operator&&e.right.left instanceof Dn&&e.right.is_string(n))e=s(Me,e,{operator:"+",left:s(Me,e.left,{operator:"+",left:e.left.left,right:s(gn,e.left.right,{value:""+e.left.right.getValue()+e.right.left.getValue(),start:e.left.right.start,end:e.right.left.end})}),right:e.right.right});if(e.right instanceof Oe&&"-"==e.right.operator&&e.left.is_number(n)){e=s(Me,e,{operator:"-",left:e.left,right:e.right.expression});break}if(e.left instanceof Oe&&"-"==e.left.operator&&t()&&e.right.is_number(n)){e=s(Me,e,{operator:"-",left:e.right,right:e.left.expression});break}case"*":p=n.option("unsafe_math");case"&":case"|":case"^":if(e.left.is_number(n)&&e.right.is_number(n)&&t()&&!(e.left instanceof Me&&e.left.operator!=e.operator&&dt[e.left.operator]>=dt[e.operator])){var d=s(Me,e,{operator:e.operator,left:e.right,right:e.left});if(e.right instanceof Dn&&!(e.left instanceof Dn))e=qn(n,d,e);else e=qn(n,e,d)}if(p&&e.is_number(n)){if(e.right instanceof Me&&e.right.operator==e.operator)e=s(Me,e,{operator:e.operator,left:s(Me,e.left,{operator:e.operator,left:e.left,right:e.right.left,start:e.left.start,end:e.right.left.end}),right:e.right.right});if(e.right instanceof Dn&&e.left instanceof Me&&e.left.operator==e.operator)if(e.left.left instanceof Dn)e=s(Me,e,{operator:e.operator,left:s(Me,e.left,{operator:e.operator,left:e.left.left,right:e.right,start:e.left.left.start,end:e.right.end}),right:e.left.right});else if(e.left.right instanceof Dn)e=s(Me,e,{operator:e.operator,left:s(Me,e.left,{operator:e.operator,left:e.left.right,right:e.right,start:e.left.right.start,end:e.right.end}),right:e.left.left});if(e.left instanceof Me&&e.left.operator==e.operator&&e.left.right instanceof Dn&&e.right instanceof Me&&e.right.operator==e.operator&&e.right.left instanceof Dn)e=s(Me,e,{operator:e.operator,left:s(Me,e.left,{operator:e.operator,left:s(Me,e.left.left,{operator:e.operator,left:e.left.right,right:e.right.left,start:e.left.right.start,end:e.right.left.end}),right:e.left.left}),right:e.right.right})}}}if(e.right instanceof Me&&e.right.operator==e.operator&&(vn(e.operator)||"+"==e.operator&&(e.right.left.is_string(n)||e.left.is_string(n)&&e.right.right.is_string(n)))){e.left=s(Me,e.left,{operator:e.operator,left:e.left,right:e.right.left});e.right=e.right.right;return e.transform(n)}var v=e.evaluate(n);if(v!==e){v=_(v,e).optimize(n);return qn(n,v,e)}return e});e(dn,function(e,n){return e});function Pn(e,n){var t;for(var i=0;t=e.parent(i);i++)if(t instanceof J){var r=t.name;if(r&&r.definition()===n)break}return t}e(pn,function(e,t){var i=e.resolve_defines(t);if(i)return i.optimize(t);if(!t.option("ie8")&&Xe(e)&&(!e.scope.uses_with||!t.find_parent(P)))switch(e.name){case"undefined":return s(wn,e).optimize(t);case"NaN":return s(Fn,e).optimize(t);case"Infinity":return s(Cn,e).optimize(t);}if(t.option("reduce_vars")&&En(e,t.parent())!==e){var r=e.definition();var o=e.fixed_value();var a=r.single_use;if(a&&(o instanceof J||o instanceof Ve))if(r.scope!==e.scope&&(!t.option("reduce_funcs")&&o instanceof J||1==r.escaped||o.inlined))a=!1;else if(Pn(t,r))a=!1;else if(r.scope!==e.scope||r.orig[0]instanceof nn)if("f"==(a=o.is_constant_expression(e.scope))){var u=e.scope;do{if(u instanceof Z||n(u))u.inlined=!0}while(u=u.parent_scope)}if(a&&o){if(o instanceof Ye)o=s(Je,o,o);if(o instanceof Z){o._squeezed=!0;o=s(X,o,o)}var f;if(r.recursive_refs>0&&o.name instanceof tn){var c=(f=o.clone(!0)).name.definition();var l=f.variables.get(f.name.name);var p=l&&l.orig[0];if(!(p instanceof on)){(p=s(on,f.name,f.name)).scope=f;f.name=p;l=f.def_function(p)}f.walk(new $n(function(e){if(e instanceof pn&&e.definition()===c){e.thedef=l;l.references.push(e)}}))}else if((f=o.optimize(t))===o)f=o.clone(!0);return f}if(o&&void 0===r.should_replace){var d;if(o instanceof mn){if(!(r.orig[0]instanceof nn)&&g(r.references,function(e){return r.scope===e.scope}))d=o}else{var h=o.evaluate(t);if(h!==o&&(t.option("unsafe_regexp")||!(h instanceof RegExp)))d=_(h,o)}if(d){var v=d.optimize(t).print_to_string().length;var m;if(function(e){var n;o.walk(new $n(function(e){if(e instanceof pn)n=!0;if(n)return!0}));return n}())m=function(){var e=d.optimize(t);return e===d?e.clone(!0):e};else{v=Math.min(v,o.print_to_string().length);m=function(){var e=Mn(d.optimize(t),o);return e===d||e===o?e.clone(!0):e}}var D=r.name.length;var b=0;if(t.option("unused")&&!t.exposed(r))b=(D+2+v)/r.references.length;r.should_replace=v<=D+b?m:!1}else r.should_replace=!1}if(r.should_replace)return r.should_replace()}return e});function Ln(e,n){return e instanceof pn||e.TYPE===n.TYPE}e(wn,function(e,n){if(n.option("unsafe_undefined")){var t=a(n,"undefined");if(t){var i=s(pn,e,{name:"undefined",scope:t.scope,thedef:t});i.is_undefined=!0;return i}}var r=En(n.self(),n.parent());if(r&&Ln(r,e))return e;return s(Oe,e,{operator:"void",expression:s(bn,e,{value:0})})});e(Cn,function(e,n){var t=En(n.self(),n.parent());if(t&&Ln(t,e))return e;if(n.option("keep_infinity")&&(!t||Ln(t,e))&&!a(n,"Infinity"))return e;return s(Me,e,{operator:"/",left:s(bn,e,{value:1}),right:s(bn,e,{value:0})})});e(Fn,function(e,n){var t=En(n.self(),n.parent());if(t&&!Ln(t,e)||a(n,"NaN"))return s(Me,e,{operator:"/",left:s(bn,e,{value:0}),right:s(bn,e,{value:0})});return e});function Vn(e,n){var i=!1;var r=new $n(function(e){if(i)return!0;if(e instanceof pn&&t(e.definition(),n))return i=!0});var o=new $n(function(n){if(i)return!0;if(n instanceof L&&n!==e){var t=o.parent();if(t instanceof we&&t.expression===n)return;n.walk(r);return!0}});e.walk(o);return i}var Yn=["+","-","/","*","%",">>","<<",">>>","|","^","&"];var Jn=["*","|","^","&"];e(ze,function(e,n){var i;if(n.option("dead_code")&&e.left instanceof pn&&(i=e.left.definition()).scope===n.find_parent(J)){var r,o=0,a=e;do{r=a;if((a=n.parent(o++))instanceof ie){if(u(o,a instanceof oe))break;if(Vn(i.scope,[i]))break;if("="==e.operator)return e.right;return s(Me,e,{operator:e.operator.slice(0,-1),left:e.left,right:e.right}).optimize(n)}}while(a instanceof Me&&a.right===r||a instanceof Ce&&a.tail_node()===r)}if("="==(e=e.lift_sequences(n)).operator&&e.left instanceof pn&&e.right instanceof Me)if(e.right.left instanceof pn&&e.right.left.name==e.left.name&&t(e.right.operator,Yn)){e.operator=e.right.operator+"=";e.right=e.right.right}else if(e.right.right instanceof pn&&e.right.right.name==e.left.name&&t(e.right.operator,Jn)&&!e.right.left.has_side_effects(n)){e.operator=e.right.operator+"=";e.right=e.right.left}return e;function u(t,i){var r=e.left.definition().scope;var o;for(;(o=n.parent(t++))!==r;)if(o instanceof he){if(o.bfinally)return!0;if(i&&o.bcatch)return!0}}});e(je,function(e,n){if(!n.option("evaluate"))return e;var t=e.right.evaluate(n);if(void 0===t)e=e.left;else if(t!==e.right){t=_(t,e.right);e.right=Mn(t,e.right)}return e});e(qe,function(e,n){if(!n.option("conditionals"))return e;if(e.condition instanceof Ce){var t=e.condition.expressions.slice();e.condition=t.pop();t.push(e);return h(e,t)}var i=e.condition.evaluate(n);if(i!==e.condition)if(i){n.warn("Condition always true [{file}:{line},{col}]",e.start);return A(n.parent(),n.self(),e.consequent)}else{n.warn("Condition always false [{file}:{line},{col}]",e.start);return A(n.parent(),n.self(),e.alternative)}var r=i.negate(n,E(n));if(qn(n,i,r)===r)e=s(qe,e,{condition:r,consequent:e.alternative,alternative:e.consequent});var o=e.condition;var a=e.consequent;var u=e.alternative;if(o instanceof pn&&a instanceof pn&&o.definition()===a.definition())return s(Me,e,{operator:"||",left:o,right:u});if(a instanceof ze&&u instanceof ze&&a.operator==u.operator&&a.left.equivalent_to(u.left)&&(!e.condition.has_side_effects(n)||"="==a.operator&&!a.left.has_side_effects(n)))return s(ze,e,{operator:a.operator,left:a.left,right:s(qe,e,{condition:e.condition,consequent:a.right,alternative:u.right})});var f;if(a instanceof we&&u.TYPE===a.TYPE&&a.args.length>0&&a.args.length==u.args.length&&a.expression.equivalent_to(u.expression)&&!e.condition.has_side_effects(n)&&!a.expression.has_side_effects(n)&&"number"==typeof(f=function(){var e=a.args;var n=u.args;for(var t=0,i=e.length;tu;)if(v=f[p].drop_side_effect_free(n)){l.unshift(v);if(c&&v.has_side_effects(n))c=!1}var d=f[u];if(d instanceof Y)break e;d=d instanceof xn?s(wn,d):d;if(!c)l.unshift(d);for(;--p>=0;){var v;if((v=f[p])instanceof Y)break e;if(v=v.drop_side_effect_free(n))l.unshift(v);else u--}if(c){l.push(d);return h(e,l).optimize(n)}else return s(Se,e,{expression:s(Ne,t,{elements:l}),property:s(bn,i,{value:u})})}}var m=e.evaluate(n);if(m!==e)return qn(n,m=_(m,e).optimize(n),e);return e});J.DEFMETHOD("contains_this",function(){var e;var n=this;n.walk(new $n(function(t){if(e)return!0;if(t instanceof mn)return e=!0;if(t!==n&&t instanceof L&&!(t instanceof G))return!0}));return e});ke.DEFMETHOD("flatten_object",function(e,n){if(!n.option("properties"))return;var t=n.option("unsafe_arrows")&&n.option("ecma")>=6;var i=this.expression;if(i instanceof He){var r=i.properties;for(var o=r.length;--o>=0;){var a=r[o];if(""+(a instanceof Le?a.key.name:a.key)==e){if(!g(r,function(e){return e instanceof Re||t&&e instanceof Le&&!e.is_generator}))break;var u=a.value;if((u instanceof W||u instanceof X)&&!(n.parent()instanceof xe)&&u.contains_this())break;return s(Se,this,{expression:s(Ne,i,{elements:r.map(function(e){var n=e.value;if(n instanceof W)n=s(X,n,n);var t=e.key;if(t instanceof w&&!(t instanceof rn))return h(e,[t,n]);return n})}),property:s(bn,this,{value:o})})}}}});e(Be,function(e,n){if("arguments"==e.property||"caller"==e.property)n.warn("Function.protoype.{prop} not supported [{file}:{line},{col}]",{prop:e.property,file:e.start.file,line:e.start.line,col:e.start.col});var t=e.resolve_defines(n);if(t)return t.optimize(n);if(En(e,n.parent()))return e;if(n.option("unsafe_proto")&&e.expression instanceof Be&&"prototype"==e.expression.property){var i=e.expression.expression;if(Xe(i))switch(i.name){case"Array":e.expression=s(Ne,e.expression,{elements:[]});break;case"Function":e.expression=s(X,e.expression,{argnames:[],body:[]});break;case"Number":e.expression=s(bn,e.expression,{value:0});break;case"Object":e.expression=s(He,e.expression,{properties:[]});break;case"RegExp":e.expression=s(yn,e.expression,{value:/t/});break;case"String":e.expression=s(gn,e.expression,{value:""});}}var r=e.flatten_object(e.property,n);if(r)return r.optimize(n);var o=e.evaluate(n);if(o!==e)return qn(n,o=_(o,e).optimize(n),e);return e});function Wn(e,n){if(n.in_boolean_context())return qn(n,e,h(e,[e,s(Sn,e)]).optimize(n));return e}e(Ne,Wn);e(He,Wn);e(yn,Wn);e(re,function(e,n){if(e.value&&hn(e.value,n))e.value=null;return e});e(G,function(e,n){if(!(e.body instanceof w))fn(e.body,n);if(n.option("arrows")&&1==e.body.length&&e.body[0]instanceof re){var t=e.body[0].value;e.body=t?t:[]}return e});e(X,function(e,n){fn(e.body,n);if(n.option("unsafe_arrows")&&n.option("ecma")>=6&&!e.name&&!e.is_generator&&!e.uses_arguments&&!e.uses_eval){var t=!1;e.walk(new $n(function(e){if(t)return!0;if(e instanceof mn){t=!0;return!0}}));if(!t)return s(G,e,e).optimize(n)}return e});e(Ve,function(e,n){return e});e(On,function(e,n){if(e.expression&&!e.is_star&&hn(e.expression,n))e.expression=null;return e});e(Fe,function(e,n){var t=n.option("global_defs");if(t&&y(t,e.name.name))n.warn("global_defs "+e.name.name+" redefined [{file}:{line},{col}]",e.start);return e});e(ee,function(e,n){if(!n.option("evaluate")||n.parent()instanceof Q)return e;var t=[];for(var i=0;i=6&&(!(t instanceof RegExp)||t.test(e.key+""))){var i=e.key;var r=e.value;if((r instanceof G&&Array.isArray(r.body)&&!r.contains_this()||r instanceof X)&&!r.name)return s(Le,e,{async:r.async,is_generator:r.is_generator,key:i instanceof w?i:s(rn,e,{name:i}),value:s(W,r,r),quote:e.quote})}return e})}();!function(){var n=function(e){var n=!0;for(var t=0;t1||e.guardedHandlers&&e.guardedHandlers.length)throw Error("Multiple catch clauses are not supported.");return new he({start:r(e),end:o(e),body:u(e.block).body,bcatch:u(n[0]),bfinally:e.finalizer?new me(u(e.finalizer)):null})},Property:function(e){var n=e.key;var t={start:r(n),end:o(e.value),key:"Identifier"==n.type?n.name:n.value,value:u(e.value)};if("init"==e.kind)return new Re(t);t.key=new rn({name:t.key});t.value=new W(t.value);if("get"==e.kind)return new Pe(t);if("set"==e.kind)return new Ue(t)},ArrayExpression:function(e){return new Ne({start:r(e),end:o(e),elements:e.elements.map(function(e){return null===e?new xn:u(e)})})},ObjectExpression:function(e){return new He({start:r(e),end:o(e),properties:e.properties.map(function(e){e.type="Property";return u(e)})})},SequenceExpression:function(e){return new Ce({start:r(e),end:o(e),expressions:e.expressions.map(u)})},MemberExpression:function(e){return new(e.computed?Se:Be)({start:r(e),end:o(e),property:e.computed?u(e.property):e.property.name,expression:u(e.object)})},SwitchCase:function(e){return new(e.test?de:pe)({start:r(e),end:o(e),expression:u(e.test),body:e.consequent.map(u)})},VariableDeclaration:function(e){return new("const"===e.kind?be:De)({start:r(e),end:o(e),definitions:e.declarations.map(u)})},Literal:function(e){var n=e.value,t={start:r(e),end:o(e)};if(null===n)return new An(t);switch(typeof n){case"string":t.value=n;return new gn(t);case"number":t.value=n;return new bn(t);case"boolean":return new(n?Sn:Bn)(t);default:var i=e.regex;if(i&&i.pattern)t.value=RegExp(i.pattern,i.flags).toString();else t.value=e.regex&&e.raw?e.raw:n;return new yn(t);}},Identifier:function(e){var n=s[s.length-2];return new("LabeledStatement"==n.type?ln:"VariableDeclarator"==n.type&&n.id===e?"const"==n.kind?Qe:Ze:"FunctionExpression"==n.type?n.id===e?on:nn:"FunctionDeclaration"==n.type?n.id===e?tn:nn:"CatchClause"==n.type?un:"BreakStatement"==n.type||"ContinueStatement"==n.type?vn:pn)({start:r(e),end:o(e),name:e.name})}};t.UpdateExpression=t.UnaryExpression=function(e){return new(("prefix"in e?e.prefix:"UnaryExpression"==e.type?1:0)?Oe:$e)({start:r(e),end:o(e),operator:e.operator,expression:u(e.argument)})};a("EmptyStatement",$);a("BlockStatement",O,"body@body");a("IfStatement",fe,"test>condition, consequent>body, alternate>alternative");a("LabeledStatement",q,"label>label, body>body");a("BreakStatement",se,"label>label");a("ContinueStatement",ue,"label>label");a("WithStatement",P,"object>expression, body>body");a("SwitchStatement",ce,"discriminant>expression, cases@body");a("ReturnStatement",re,"argument>value");a("ThrowStatement",oe,"argument>value");a("WhileStatement",H,"test>condition, body>body");a("DoWhileStatement",N,"test>condition, body>body");a("ForStatement",I,"init>init, test>condition, update>step, body>body");a("ForInStatement",R,"left>init, right>object, body>body");a("DebuggerStatement",C);a("VariableDeclarator",Fe,"id>name, init>value");a("CatchClause",ve,"param>argname, body%body");a("ThisExpression",mn);a("BinaryExpression",Me,"operator=operator, left>left, right>right");a("LogicalExpression",Me,"operator=operator, left>left, right>right");a("AssignmentExpression",ze,"operator=operator, left>left, right>right");a("ConditionalExpression",qe,"test>condition, consequent>consequent, alternate>alternative");a("NewExpression",xe,"callee>expression, arguments@args");a("CallExpression",we,"callee>expression, arguments@args");f(V,function(e){return p("Program",e)});f(Z,function(e){return{type:"FunctionDeclaration",id:c(e.name),params:e.argnames.map(c),body:p("BlockStatement",e)}});f(X,function(e){return{type:"FunctionExpression",id:c(e.name),params:e.argnames.map(c),body:p("BlockStatement",e)}});f(k,function(e){return{type:"ExpressionStatement",expression:{type:"Literal",value:e.value}}});f(B,function(e){return{type:"ExpressionStatement",expression:c(e.body)}});f(le,function(e){return{type:"SwitchCase",test:c(e.expression),consequent:e.body.map(c)}});f(he,function(e){return{type:"TryStatement",block:l(e),handler:c(e.bcatch),guardedHandlers:[],finalizer:c(e.bfinally)}});f(ve,function(e){return{type:"CatchClause",param:c(e.argname),guard:null,body:l(e)}});f(_e,function(e){return{type:"VariableDeclaration",kind:e instanceof be?"const":"var",declarations:e.definitions.map(c)}});f(Ce,function(e){return{type:"SequenceExpression",expressions:e.expressions.map(c)}});f(ke,function(e){var n=e instanceof Se;return{type:"MemberExpression",object:c(e.expression),computed:n,property:n?c(e.property):{type:"Identifier",name:e.property}}});f(Te,function(e){return{type:"++"==e.operator||"--"==e.operator?"UpdateExpression":"UnaryExpression",operator:e.operator,prefix:e instanceof Oe,argument:c(e.expression)}});f(Me,function(e){return{type:"&&"==e.operator||"||"==e.operator?"LogicalExpression":"BinaryExpression",left:c(e.left),operator:e.operator,right:c(e.right)}});f(Ne,function(e){return{type:"ArrayExpression",elements:e.elements.map(c)}});f(He,function(e){return{type:"ObjectExpression",properties:e.properties.map(c)}});f(Ie,function(e){var n={type:"Literal",value:e.key instanceof rn?e.key.name:e.key};var t;if(e instanceof Re)t="init";else if(e instanceof Pe)t="get";else if(e instanceof Ue)t="set";return{type:"Property",kind:t,key:n,value:c(e.value)}});f(We,function(e){var n=e.definition();return{type:"Identifier",name:n?n.mangled_name||n.name:e.name}});f(yn,function(e){var n=e.value;return{type:"Literal",value:n,raw:n.toString(),regex:{pattern:n.source,flags:n.toString().match(/[gimuy]*$/)[0]}}});f(Dn,function(e){var n=e.value;if("number"==typeof n&&(n<0||0===n&&1/n<0))return{type:"UnaryExpression",operator:"-",prefix:!0,argument:{type:"Literal",value:-n,raw:e.start.raw}};return{type:"Literal",value:n,raw:e.start.raw}});f(En,function(e){return{type:"Identifier",name:e.value+""}});kn.DEFMETHOD("to_mozilla_ast",Dn.prototype.to_mozilla_ast);An.DEFMETHOD("to_mozilla_ast",Dn.prototype.to_mozilla_ast);xn.DEFMETHOD("to_mozilla_ast",function(){return null});T.DEFMETHOD("to_mozilla_ast",O.prototype.to_mozilla_ast);J.DEFMETHOD("to_mozilla_ast",X.prototype.to_mozilla_ast);function i(e){if("Literal"==e.type)return null!=e.raw?e.raw:e.value+""}function r(e){var n=e.loc,t=n&&n.start;var r=e.range;return new F({file:n&&n.source,line:t&&t.line,col:t&&t.column,pos:r?r[0]:e.start,endline:t&&t.line,endcol:t&&t.column,endpos:r?r[0]:e.start,raw:i(e)})}function o(e){var n=e.loc,t=n&&n.end;var r=e.range;return new F({file:n&&n.source,line:t&&t.line,col:t&&t.column,pos:r?r[1]:e.end,endline:t&&t.line,endcol:t&&t.column,endpos:r?r[1]:e.end,raw:i(e)})}function a(n,i,a){var s="function From_Moz_"+n+"(M){\n";s+="return new U2."+i.name+"({\nstart: my_start_token(M),\nend: my_end_token(M)";var d="function To_Moz_"+n+"(M){\n";d+="return {\ntype: "+JSON.stringify(n);if(a)a.split(/\s*,\s*/).forEach(function(e){var n=/([a-z0-9$_]+)(=|@|>|%)([a-z0-9$_]+)/i.exec(e);if(!n)throw Error("Can't understand property map: "+e);var t=n[1],i=n[2],r=n[3];s+=",\n"+r+": ";d+=",\n"+t+": ";switch(i){case"@":s+="M."+t+".map(from_moz)";d+="M."+r+".map(to_moz)";break;case">":s+="from_moz(M."+t+")";d+="to_moz(M."+r+")";break;case"=":s+="M."+t;d+="M."+r;break;case"%":s+="from_moz(M."+t+").body";d+="to_moz_block(M)";break;default:throw Error("Can't understand operator in propmap: "+e);}});d+="\n}\n}";s=Function("U2","my_start_token","my_end_token","from_moz","return("+(s+="\n})\n}")+")")(e,r,o,u);d=Function("to_moz","to_moz_block","to_moz_scope","return("+d+")")(c,l,p);t[n]=s;f(i,d)}var s=null;function u(e){s.push(e);var n=null!=e?t[e.type](e):null;s.pop();return n}w.from_mozilla_ast=function(e){var n=s;s=[];var t=u(e);s=n;return t};function f(e,n){e.DEFMETHOD("to_mozilla_ast",function(){return function(e,n,t){var i=e.start;var r=e.end;if(null!=i.pos&&null!=r.endpos)n.range=[i.pos,r.endpos];if(i.line){n.loc={start:{line:i.line,column:i.col},end:r.endline?{line:r.endline,column:r.endcol}:null};if(i.file)n.loc.source=i.file}return n}(this,n(this))})}function c(e){return null!=e?e.to_mozilla_ast():null}function l(e){return{type:"BlockStatement",body:e.body.map(c)}}function p(e,n){var t=n.body.map(c);if(n.body[0]instanceof B&&n.body[0].body instanceof gn)t.unshift(c(new $(n.body[0])));return{type:e,body:t}}}();function Ft(e,n){e.walk(new $n(function(e){if(e instanceof Ce)Ft(e.tail_node(),n);else if(e instanceof gn)n(e.value);else if(e instanceof qe){Ft(e.consequent,n);Ft(e.alternative,n)}return!0}))}var wt="undefined"==typeof atob?function(e){return new Buffer(e,"base64").toString()}:atob;var xt="undefined"==typeof btoa?function(e){return new Buffer(e).toString("base64")}:btoa;function Ct(e){var n=/\n\/\/# sourceMappingURL=data:application\/json(;.*?)?;base64,(.*)/.exec(e);if(!n){w.warn("inline source map not found");return null}return wt(n[2])}function kt(e,n,t){if(n[e])t.forEach(function(t){if(n[t]){if("object"!=typeof n[t])n[t]={};if(!(e in n[t]))n[t][e]=n[e]}})}function Bt(e){if(!e)return;if(!("props"in e))e.props=new b;else if(!(e.props instanceof b))e.props=b.fromObject(e.props)}function St(e){return{props:e.props.toObject()}}e.Dictionary=b;e.TreeWalker=$n;e.TreeTransformer=mt;e.minify=function(e,n){var t=w.warn_function;try{var i=(n=a(n,{compress:{},ecma:void 0,ie8:!1,keep_classnames:void 0,keep_fnames:!1,mangle:{},nameCache:null,output:{},parse:{},rename:void 0,safari10:!1,sourceMap:!1,timings:!1,toplevel:!1,warnings:!1,wrap:!1},!0)).timings&&{start:Date.now()};if(void 0===n.keep_classnames)n.keep_classnames=n.keep_fnames;if(void 0===n.rename)n.rename=n.compress&&n.mangle;kt("ecma",n,["parse","compress","output"]);kt("ie8",n,["compress","mangle","output"]);kt("keep_classnames",n,["compress","mangle"]);kt("keep_fnames",n,["compress","mangle"]);kt("safari10",n,["mangle","output"]);kt("toplevel",n,["compress","mangle"]);kt("warnings",n,["compress"]);var r;if(n.mangle){n.mangle=a(n.mangle,{cache:n.nameCache&&(n.nameCache.vars||{}),eval:!1,ie8:!1,keep_classnames:!1,keep_fnames:!1,properties:!1,reserved:[],safari10:!1,toplevel:!1},!0);if(n.mangle.properties){if("object"!=typeof n.mangle.properties)n.mangle.properties={};if(n.mangle.properties.keep_quoted){r=n.mangle.properties.reserved;if(!Array.isArray(r))r=[];n.mangle.properties.reserved=r}if(n.nameCache&&!("cache"in n.mangle.properties))n.mangle.properties.cache=n.nameCache.props||{}}Bt(n.mangle.cache);Bt(n.mangle.properties.cache)}if(n.sourceMap)n.sourceMap=a(n.sourceMap,{content:null,filename:null,includeSources:!1,root:null,url:null},!0);var o=[];if(n.warnings&&!w.warn_function)w.warn_function=function(e){o.push(e)};if(i)i.parse=Date.now();var s;if(e instanceof V)s=e;else{if("string"==typeof e)e=[e];n.parse=n.parse||{};n.parse.toplevel=null;for(var u in e)if(y(e,u)){n.parse.filename=u;n.parse.toplevel=vt(e[u],n.parse);if(n.sourceMap&&"inline"==n.sourceMap.content){if(Object.keys(e).length>1)throw Error("inline source map only works with singular input");n.sourceMap.content=Ct(e[u])}}s=n.parse.toplevel}if(r)!function(e,n){function t(e){h(n,e)}s.walk(new $n(function(e){if(e instanceof Re&&e.quote)t(e.key);else if(e instanceof Ie&&e.quote)t(e.key.name);else if(e instanceof Se)Ft(e.property,t)}))}(0,r);if(n.wrap)s=s.wrap_commonjs(n.wrap);if(i)i.rename=Date.now();if(0){s.figure_out_scope(n.mangle);s.expand_names(n.mangle)}if(i)i.compress=Date.now();if(n.compress)s=new At(n.compress).compress(s);if(i)i.scope=Date.now();if(n.mangle)s.figure_out_scope(n.mangle);if(i)i.mangle=Date.now();if(n.mangle){gt.reset();s.compute_char_frequency(n.mangle);s.mangle_names(n.mangle)}if(i)i.properties=Date.now();if(n.mangle&&n.mangle.properties)s=function(e,n){var t=(n=a(n,{builtins:!1,cache:null,debug:!1,keep_quoted:!1,only_cache:!1,regex:null,reserved:null},!0)).reserved;if(!Array.isArray(t))t=[];if(!n.builtins)!function(e){var n={};var t="object"==typeof global?global:self;["Symbol","Map","Promise","Proxy","Reflect","Set","WeakMap","WeakSet"].forEach(function(e){n[e]=t[e]||Function()});["null","true","false","Infinity","-Infinity","undefined"].forEach(i);[Object,Array,Function,Number,String,Boolean,Error,Math,Date,RegExp,n.Symbol,ArrayBuffer,DataView,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,eval,EvalError,Float32Array,Float64Array,Int8Array,Int16Array,Int32Array,isFinite,isNaN,JSON,n.Map,parseFloat,parseInt,n.Promise,n.Proxy,RangeError,ReferenceError,n.Reflect,n.Set,SyntaxError,TypeError,Uint8Array,Uint8ClampedArray,Uint16Array,Uint32Array,URIError,n.WeakMap,n.WeakSet].forEach(function(e){Object.getOwnPropertyNames(e).map(i);if(e.prototype)Object.getOwnPropertyNames(e.prototype).map(i)});function i(n){h(e,n)}}(t);var i=-1;var r;if(n.cache)(r=n.cache.props).each(function(e){h(t,e)});else r=new b;var o=n.regex;var s=!1!==n.debug;var u;if(s)u=!0===n.debug?"":n.debug;var f=[];var c=[];e.walk(new $n(function(e){if(e instanceof Re)d(e.key);else if(e instanceof Ie)d(e.key.name);else if(e instanceof Be)d(e.property);else if(e instanceof Se)Ft(e.property,d)}));return e.transform(new mt(function(e){if(e instanceof Re)e.key=v(e.key);else if(e instanceof Ie)e.key.name=v(e.key.name);else if(e instanceof Be)e.property=v(e.property);else if(!n.keep_quoted&&e instanceof Se)e.property=function e(n){return n.transform(new mt(function(n){if(n instanceof Ce){var t=n.expressions.length-1;n.expressions[t]=e(n.expressions[t])}else if(n instanceof gn)n.value=v(n.value);else if(n instanceof qe){n.consequent=e(n.consequent);n.alternative=e(n.alternative)}return n}))}(e.property)}));function l(e){if(c.indexOf(e)>=0)return!1;if(t.indexOf(e)>=0)return!1;if(n.only_cache)return r.has(e);if(/^-?[0-9]+(\.[0-9]+)?(e[+-][0-9]+)?$/.test(e))return!1;return!0}function p(e){if(o&&!o.test(e))return!1;if(t.indexOf(e)>=0)return!1;return r.has(e)||f.indexOf(e)>=0}function d(e){if(l(e))h(f,e);if(!p(e))h(c,e)}function v(e){if(!p(e))return e;var n=r.get(e);if(!n){if(s){var t="_$"+e+"$"+u+"_";if(l(t))n=t}if(!n)do{n=gt(++i)}while(!l(n));r.set(e,n)}return n}}(s,n.mangle.properties);if(i)i.output=Date.now();var f={};if(n.output.ast)f.ast=s;if(!y(n.output,"code")||n.output.code){if(n.sourceMap){if("string"==typeof n.sourceMap.content)n.sourceMap.content=JSON.parse(n.sourceMap.content);n.output.source_map=function(e){e=a(e,{file:null,root:null,orig:null,orig_line_diff:0,dest_line_diff:0});var n=new MOZ_SourceMap.SourceMapGenerator({file:e.file,sourceRoot:e.root});var t=e.orig&&new MOZ_SourceMap.SourceMapConsumer(e.orig);if(t&&Array.isArray(e.orig.sources))t._sources.toArray().forEach(function(e){var i=t.sourceContentFor(e,!0);if(i)n.setSourceContent(e,i)});return{add:function(i,r,o,a,s,u){if(t){var f=t.originalPositionFor({line:a,column:s});if(null===f.source)return;i=f.source;a=f.line;s=f.column;u=f.name||u}n.addMapping({generated:{line:r+e.dest_line_diff,column:o},original:{line:a+e.orig_line_diff,column:s},source:i,name:u})},get:function(){return n},toString:function(){return JSON.stringify(n.toJSON())}}}({file:n.sourceMap.filename,orig:n.sourceMap.content,root:n.sourceMap.root});if(n.sourceMap.includeSources)if(e instanceof V)throw Error("original source content unavailable");else for(var u in e)if(y(e,u))n.output.source_map.get().setSourceContent(u,e[u])}delete n.output.ast;delete n.output.code;var c=Et(n.output);s.print(c);f.code=c.get();if(n.sourceMap){f.map=n.output.source_map.toString();if("inline"==n.sourceMap.url)f.code+="\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,"+xt(f.map);else if(n.sourceMap.url)f.code+="\n//# sourceMappingURL="+n.sourceMap.url}}if(n.nameCache&&n.mangle){if(n.mangle.cache)n.nameCache.vars=St(n.mangle.cache);if(n.mangle.properties&&n.mangle.properties.cache)n.nameCache.props=St(n.mangle.properties.cache)}if(i){i.end=Date.now();f.timings={parse:.001*(i.rename-i.parse),rename:.001*(i.compress-i.rename),compress:.001*(i.scope-i.compress),scope:.001*(i.mangle-i.scope),mangle:.001*(i.properties-i.mangle),properties:.001*(i.output-i.properties),output:.001*(i.end-i.output),total:.001*(i.end-i.start)}}if(o.length)f.warnings=o;return f}catch(e){return{error:e}}finally{w.warn_function=t}};e.parse=vt;e._push_uniq=h} _uglify_es("undefined" == typeof UglifyJS ? UglifyJS = {} : UglifyJS);