@danielx/civet 0.7.32 → 0.7.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.mjs CHANGED
@@ -28,9 +28,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
28
28
  mod
29
29
  ));
30
30
 
31
- // node_modules/@danielx/hera/dist/machine.js
31
+ // node_modules/.pnpm/@danielx+hera@0.8.16/node_modules/@danielx/hera/dist/machine.js
32
32
  var require_machine = __commonJS({
33
- "node_modules/@danielx/hera/dist/machine.js"(exports, module) {
33
+ "node_modules/.pnpm/@danielx+hera@0.8.16/node_modules/@danielx/hera/dist/machine.js"(exports, module) {
34
34
  "use strict";
35
35
  var __defProp2 = Object.defineProperty;
36
36
  var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
@@ -60,7 +60,7 @@ var require_machine = __commonJS({
60
60
  $N: () => $N2,
61
61
  $P: () => $P2,
62
62
  $Q: () => $Q2,
63
- $R: () => $R100,
63
+ $R: () => $R99,
64
64
  $R$0: () => $R$02,
65
65
  $S: () => $S2,
66
66
  $T: () => $T2,
@@ -97,7 +97,7 @@ var require_machine = __commonJS({
97
97
  return;
98
98
  };
99
99
  }
100
- function $R100(regExp) {
100
+ function $R99(regExp) {
101
101
  return function(_ctx, state2) {
102
102
  const { input, pos } = state2;
103
103
  regExp.lastIndex = state2.pos;
@@ -1065,12 +1065,11 @@ function convertOptionalType(suffix) {
1065
1065
  ]);
1066
1066
  }
1067
1067
  var typeNeedsNoParens = /* @__PURE__ */ new Set([
1068
- "IdentifierType",
1068
+ "TypeIdentifier",
1069
1069
  "ImportType",
1070
- "LiteralType",
1070
+ "TypeLiteral",
1071
1071
  "TupleType",
1072
- "ParenthesizedType",
1073
- "UnaryType"
1072
+ "TypeParenthesized"
1074
1073
  ]);
1075
1074
  function parenthesizeType(type) {
1076
1075
  if (typeNeedsNoParens.has(type.type)) {
@@ -1560,27 +1559,34 @@ function gatherBindingPatternTypeSuffix(pattern) {
1560
1559
 
1561
1560
  // source/parser/function.civet
1562
1561
  function isVoidType(t) {
1563
- return t?.type === "LiteralType" && t.t.type === "VoidType";
1562
+ return t?.type === "TypeLiteral" && t.t.type === "VoidType";
1564
1563
  }
1565
1564
  function isPromiseVoidType(t) {
1566
- return t?.type === "IdentifierType" && t.raw === "Promise" && t.args?.types?.length === 1 && isVoidType(t.args.types[0]);
1565
+ return t?.type === "TypeIdentifier" && t.raw === "Promise" && t.args?.types?.length === 1 && isVoidType(t.args.types[0]);
1567
1566
  }
1568
1567
  function isGeneratorVoidType(t) {
1569
- return t?.type === "IdentifierType" && (t.raw === "Iterator" || t.raw === "Generator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1568
+ return t?.type === "TypeIdentifier" && (t.raw === "Iterator" || t.raw === "Generator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1570
1569
  }
1571
1570
  function isAsyncGeneratorVoidType(t) {
1572
- return t?.type === "IdentifierType" && (t.raw === "AsyncIterator" || t.raw === "AsyncGenerator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1571
+ return t?.type === "TypeIdentifier" && (t.raw === "AsyncIterator" || t.raw === "AsyncGenerator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1573
1572
  }
1574
1573
  function implicitFunctionBlock(f) {
1575
1574
  if (f.abstract || f.block || f.signature?.optional)
1576
1575
  return;
1577
1576
  const { name, parent } = f;
1578
- if (parent?.type === "ExportDeclaration")
1579
- return;
1580
- const expressions = parent?.expressions ?? parent?.elements;
1581
- const currentIndex = expressions?.findIndex(([, def]) => def === f);
1582
- const following = currentIndex >= 0 && expressions[currentIndex + 1]?.[1];
1583
- if (f.type === following?.type && name && name === following.name) {
1577
+ let ancestor = parent;
1578
+ let child = f;
1579
+ if (ancestor?.type === "ExportDeclaration") {
1580
+ child = ancestor;
1581
+ ancestor = ancestor.parent;
1582
+ }
1583
+ const expressions = ancestor?.expressions ?? ancestor?.elements;
1584
+ const currentIndex = expressions?.findIndex(([, def]) => def === child);
1585
+ let following = currentIndex >= 0 && expressions[currentIndex + 1]?.[1];
1586
+ if (following?.type === "ExportDeclaration") {
1587
+ following = following.declaration;
1588
+ }
1589
+ if (f.type === following?.type && name != null && name === following.name) {
1584
1590
  f.ts = true;
1585
1591
  } else {
1586
1592
  const block = makeEmptyBlock();
@@ -1760,14 +1766,13 @@ function assignResults(node, collect) {
1760
1766
  if (isExit(exp)) {
1761
1767
  return;
1762
1768
  }
1769
+ exp = exp;
1763
1770
  const outer = exp;
1764
- let { type } = exp;
1765
- if (type === "LabelledStatement") {
1771
+ if (exp.type === "LabelledStatement") {
1766
1772
  exp = exp.statement;
1767
- ({ type } = exp);
1768
1773
  }
1769
1774
  let ref4;
1770
- switch (type) {
1775
+ switch (exp.type) {
1771
1776
  case "BreakStatement":
1772
1777
  case "ContinueStatement":
1773
1778
  case "DebuggerStatement":
@@ -3702,24 +3707,21 @@ function processDeclarationConditionStatement(s) {
3702
3707
  }
3703
3708
  });
3704
3709
  if (conditions.length) {
3710
+ let children = condition.children;
3705
3711
  if (s.negated) {
3706
3712
  let m;
3707
3713
  if (!(m = condition.expression, typeof m === "object" && m != null && "type" in m && m.type === "UnaryExpression" && "children" in m && Array.isArray(m.children) && len2(m.children, 2) && m.children[0] === "!" && typeof m.children[1] === "object" && m.children[1] != null && "type" in m.children[1] && m.children[1].type === "ParenthesizedExpression")) {
3708
3714
  throw new Error("Unsupported negated condition");
3709
3715
  }
3710
- const { children } = condition.expression.children[1];
3711
- const close = children.pop();
3712
- conditions.forEach((c) => {
3713
- return children.push(" && ", c);
3714
- });
3715
- children.push(close);
3716
- } else {
3717
- condition.children.unshift("(");
3718
- conditions.forEach((c) => {
3719
- return condition.children.push(" && ", c);
3720
- });
3721
- condition.children.push(")");
3716
+ ;
3717
+ ({ children } = condition.expression.children[1]);
3718
+ }
3719
+ children.unshift("(");
3720
+ for (let i1 = 0, len1 = conditions.length; i1 < len1; i1++) {
3721
+ const c = conditions[i1];
3722
+ children.push(" && ", c);
3722
3723
  }
3724
+ children.push(")");
3723
3725
  }
3724
3726
  }
3725
3727
  const { blockPrefix } = condition.expression;
@@ -3772,9 +3774,6 @@ function processDeclarationConditionStatement(s) {
3772
3774
  }
3773
3775
  } else {
3774
3776
  const block = blockWithPrefix(blockPrefix, s.then);
3775
- if (block.bare && e && !block.semicolon) {
3776
- block.children.push(block.semicolon = ";");
3777
- }
3778
3777
  s.children = s.children.map(($2) => $2 === s.then ? block : $2);
3779
3778
  s.then = block;
3780
3779
  updateParentPointers(s);
@@ -4417,7 +4416,7 @@ function processForInOf($0, getRef) {
4417
4416
  }
4418
4417
  case "in": {
4419
4418
  const expRef2 = maybeRef(exp);
4420
- if (expRef2 !== exp) {
4419
+ if (!(expRef2 === exp)) {
4421
4420
  hoistDec = {
4422
4421
  type: "Declaration",
4423
4422
  children: ["let ", expRef2],
@@ -4428,36 +4427,46 @@ function processForInOf($0, getRef) {
4428
4427
  children: [" ", expRef2, " =", exp]
4429
4428
  };
4430
4429
  }
4431
- let { binding } = declaration;
4432
- if (binding?.type !== "Identifier") {
4430
+ const { binding } = declaration;
4431
+ let { pattern } = binding;
4432
+ if (!(pattern.type === "Identifier")) {
4433
4433
  const keyRef = makeRef("key");
4434
4434
  blockPrefix.push(["", [
4435
4435
  declaration,
4436
4436
  " = ",
4437
4437
  keyRef
4438
4438
  ], ";"]);
4439
+ pattern = keyRef;
4439
4440
  declaration = {
4440
4441
  type: "ForDeclaration",
4441
- binding: binding = keyRef,
4442
+ binding: {
4443
+ type: "Binding",
4444
+ pattern,
4445
+ children: [pattern],
4446
+ names: [],
4447
+ suffix: binding.suffix
4448
+ },
4442
4449
  children: ["const ", keyRef],
4443
4450
  names: []
4444
4451
  };
4445
4452
  }
4446
4453
  if (own) {
4447
4454
  const hasPropRef = getRef("hasProp");
4448
- blockPrefix.push(["", ["if (!", hasPropRef, "(", insertTrimmingSpace(expRef2, ""), ", ", insertTrimmingSpace(binding, ""), ")) continue"], ";"]);
4455
+ blockPrefix.push(["", ["if (!", hasPropRef, "(", insertTrimmingSpace(expRef2, ""), ", ", insertTrimmingSpace(pattern, ""), ")) continue"], ";"]);
4449
4456
  }
4450
4457
  if (decl2) {
4451
4458
  blockPrefix.push(["", {
4452
4459
  type: "Declaration",
4453
- children: [insertTrimmingSpace(ws2, ""), decl2, " = ", insertTrimmingSpace(expRef2, ""), "[", insertTrimmingSpace(binding, ""), "]"],
4460
+ children: [insertTrimmingSpace(ws2, ""), decl2, " = ", insertTrimmingSpace(expRef2, ""), "[", insertTrimmingSpace(pattern, ""), "]"],
4454
4461
  names: decl2.names
4455
4462
  }, ";"]);
4456
4463
  }
4464
+ ;
4457
4465
  break;
4458
4466
  }
4459
- default:
4467
+ default: {
4460
4468
  throw new Error(`for item, index must use 'of' or 'in' instead of '${inOf.token}'`);
4469
+ }
4461
4470
  }
4462
4471
  return {
4463
4472
  declaration,
@@ -4469,11 +4478,12 @@ function processForInOf($0, getRef) {
4469
4478
  }
4470
4479
 
4471
4480
  // source/parser/auto-dec.civet
4481
+ var concatAssign = (lhs, rhs) => (rhs?.[Symbol.isConcatSpreadable] ?? Array.isArray(rhs) ? lhs.push.apply(lhs, rhs) : lhs.push(rhs), lhs);
4472
4482
  function findDecs(statements) {
4473
- const predicate = ($) => $.type === "Declaration";
4474
- const declarations = gatherNodes(statements, predicate);
4483
+ const declarations = gatherNodes(statements, ($) => $.type === "Declaration");
4475
4484
  const declarationNames = declarations.flatMap((d) => d.names);
4476
- return new Set(declarationNames);
4485
+ const globals = getConfig().globals || [];
4486
+ return new Set(globals.concat(declarationNames));
4477
4487
  }
4478
4488
  function createConstLetDecs(statements, scopes, letOrConst) {
4479
4489
  function findVarDecs(statements2, decs) {
@@ -4484,7 +4494,7 @@ function createConstLetDecs(statements, scopes, letOrConst) {
4484
4494
  }
4485
4495
  let declaredIdentifiers = findVarDecs(statements);
4486
4496
  function hasDec(name) {
4487
- return declaredIdentifiers.has(name) || scopes.some((s) => s.has(name));
4497
+ return declaredIdentifiers.has(name) || scopes.some(($1) => $1.has(name));
4488
4498
  }
4489
4499
  function gatherBlockOrOther(statement) {
4490
4500
  return gatherNodes(statement, (s) => s.type === "BlockStatement" || s.type === "AssignmentExpression" || s.type === "Declaration").flatMap((node) => {
@@ -4555,14 +4565,15 @@ function createConstLetDecs(statements, scopes, letOrConst) {
4555
4565
  }
4556
4566
  function createVarDecs(block, scopes, pushVar) {
4557
4567
  function hasDec(name) {
4558
- return scopes.some((s) => s.has(name));
4568
+ return scopes.some(($2) => $2.has(name));
4559
4569
  }
4560
4570
  function findAssignments(statements2, decs2) {
4561
- let assignmentStatements2 = gatherNodes(statements2, (node) => {
4562
- return node.type === "AssignmentExpression";
4563
- });
4571
+ let assignmentStatements2 = gatherNodes(statements2, ($3) => $3.type === "AssignmentExpression");
4564
4572
  if (assignmentStatements2.length) {
4565
- assignmentStatements2 = assignmentStatements2.concat(findAssignments(assignmentStatements2.map((s) => s.children), decs2));
4573
+ concatAssign(
4574
+ assignmentStatements2,
4575
+ findAssignments(assignmentStatements2.map((s) => s.children), decs2)
4576
+ );
4566
4577
  }
4567
4578
  return assignmentStatements2;
4568
4579
  }
@@ -4577,7 +4588,7 @@ function createVarDecs(block, scopes, pushVar) {
4577
4588
  scopes.push(decs);
4578
4589
  const varIds = [];
4579
4590
  const assignmentStatements = findAssignments(statements, scopes);
4580
- const undeclaredIdentifiers = assignmentStatements.flatMap(($1) => $1?.names || []);
4591
+ const undeclaredIdentifiers = assignmentStatements.flatMap(($4) => $4?.names || []);
4581
4592
  undeclaredIdentifiers.filter((x, i, a) => {
4582
4593
  if (!hasDec(x))
4583
4594
  return a.indexOf(x) === i;
@@ -5324,7 +5335,7 @@ function expressionizeIfStatement(statement) {
5324
5335
  function expressionizeTypeIf([ifOp, condition, t, e]) {
5325
5336
  const children = [
5326
5337
  "(",
5327
- insertTrimmingSpace(condition, ""),
5338
+ trimFirstSpace(condition),
5328
5339
  "?"
5329
5340
  ];
5330
5341
  if (!xor(ifOp.negated, condition.negated)) {
@@ -5507,7 +5518,7 @@ function processCallMemberExpression(node) {
5507
5518
  [name, value] = [value, name];
5508
5519
  }
5509
5520
  if (!suppressPrefix) {
5510
- value = prefix.concat(insertTrimmingSpace(value, ""));
5521
+ value = prefix.concat(trimFirstSpace(value));
5511
5522
  }
5512
5523
  if (wValue)
5513
5524
  value.unshift(wValue);
@@ -5733,7 +5744,7 @@ function convertObjectToJSXAttributes(obj) {
5733
5744
  if (part.name.type === "ComputedPropertyName") {
5734
5745
  rest.push(part);
5735
5746
  } else {
5736
- parts.push([part.name, "={", insertTrimmingSpace(part.value, ""), "}"]);
5747
+ parts.push([part.name, "={", trimFirstSpace(part.value), "}"]);
5737
5748
  }
5738
5749
  break;
5739
5750
  case "SpreadProperty":
@@ -5758,7 +5769,7 @@ function convertObjectToJSXAttributes(obj) {
5758
5769
  }
5759
5770
  function makeGetterMethod(name, ws, value, returnType, block, kind = { token: "get" }, autoReturn = true) {
5760
5771
  const { token } = kind;
5761
- ws = insertTrimmingSpace(ws, "");
5772
+ ws = trimFirstSpace(ws);
5762
5773
  let setVal;
5763
5774
  const parameters = token === "get" ? {
5764
5775
  type: "Parameters",
@@ -6119,7 +6130,7 @@ function attachPostfixStatementAsExpression(exp, post) {
6119
6130
  }
6120
6131
  }
6121
6132
  function processTypes(node) {
6122
- return gatherRecursiveAll(node, (n) => n.type === "UnaryType").forEach((unary) => {
6133
+ return gatherRecursiveAll(node, (n) => n.type === "TypeUnary").forEach((unary) => {
6123
6134
  let last;
6124
6135
  let count = 0;
6125
6136
  let ref10;
@@ -6130,6 +6141,12 @@ function processTypes(node) {
6130
6141
  if (!count) {
6131
6142
  return;
6132
6143
  }
6144
+ let ref11;
6145
+ if (unary.suffix.length || unary.prefix.length)
6146
+ ref11 = unary;
6147
+ else
6148
+ ref11 = unary.t;
6149
+ const t = ref11;
6133
6150
  if (unary.parent?.type === "TypeTuple") {
6134
6151
  if (count === 1) {
6135
6152
  unary.suffix.push(last);
@@ -6138,18 +6155,22 @@ function processTypes(node) {
6138
6155
  replaceNode(unary, [
6139
6156
  getTrimmingSpace(unary),
6140
6157
  "(",
6141
- parenthesizeType(insertTrimmingSpace(unary, "")),
6158
+ parenthesizeType(trimFirstSpace(t)),
6142
6159
  " | null)",
6143
6160
  last
6144
6161
  ]);
6145
6162
  } else {
6146
- replaceNode(unary, [
6147
- getTrimmingSpace(unary),
6148
- "(",
6149
- parenthesizeType(insertTrimmingSpace(unary, "")),
6150
- count === 1 ? " | undefined" : " | undefined | null",
6151
- ")"
6152
- ]);
6163
+ replaceNode(unary, {
6164
+ type: "TypeParenthesized",
6165
+ ts: true,
6166
+ children: [
6167
+ getTrimmingSpace(unary),
6168
+ "(",
6169
+ parenthesizeType(trimFirstSpace(t)),
6170
+ count === 1 ? " | undefined" : " | undefined | null",
6171
+ ")"
6172
+ ]
6173
+ });
6153
6174
  }
6154
6175
  });
6155
6176
  }
@@ -6157,11 +6178,11 @@ function processStatementExpressions(statements) {
6157
6178
  gatherRecursiveAll(statements, ($7) => $7.type === "StatementExpression").forEach((_exp) => {
6158
6179
  const exp = _exp;
6159
6180
  const { statement } = exp;
6160
- let ref11;
6181
+ let ref12;
6161
6182
  switch (statement.type) {
6162
6183
  case "IfStatement": {
6163
- if (ref11 = expressionizeIfStatement(statement)) {
6164
- const expression = ref11;
6184
+ if (ref12 = expressionizeIfStatement(statement)) {
6185
+ const expression = ref12;
6165
6186
  return replaceNode(statement, expression, exp);
6166
6187
  } else {
6167
6188
  return replaceNode(statement, wrapIIFE([["", statement]]), exp);
@@ -6389,8 +6410,8 @@ function processPlaceholders(statements) {
6389
6410
  for (let i4 = 0, len3 = placeholders.length; i4 < len3; i4++) {
6390
6411
  const placeholder = placeholders[i4];
6391
6412
  typeSuffix ??= placeholder.typeSuffix;
6392
- let ref12;
6393
- replaceNode((ref12 = placeholder.children)[ref12.length - 1], ref);
6413
+ let ref13;
6414
+ replaceNode((ref13 = placeholder.children)[ref13.length - 1], ref);
6394
6415
  }
6395
6416
  const { parent } = ancestor;
6396
6417
  const body = maybeUnwrap(ancestor);
@@ -6407,16 +6428,16 @@ function processPlaceholders(statements) {
6407
6428
  }
6408
6429
  case "PipelineExpression": {
6409
6430
  const i = findChildIndex(parent, ancestor);
6410
- let ref13;
6431
+ let ref14;
6411
6432
  if (i === 1) {
6412
- ref13 = ancestor === parent.children[i];
6433
+ ref14 = ancestor === parent.children[i];
6413
6434
  } else if (i === 2) {
6414
- ref13 = ancestor === parent.children[i][findChildIndex(parent.children[i], ancestor)][3];
6435
+ ref14 = ancestor === parent.children[i][findChildIndex(parent.children[i], ancestor)][3];
6415
6436
  } else {
6416
- ref13 = void 0;
6437
+ ref14 = void 0;
6417
6438
  }
6418
6439
  ;
6419
- outer = ref13;
6440
+ outer = ref14;
6420
6441
  break;
6421
6442
  }
6422
6443
  case "AssignmentExpression":
@@ -6431,9 +6452,9 @@ function processPlaceholders(statements) {
6431
6452
  fnExp = makeLeftHandSideExpression(fnExp);
6432
6453
  }
6433
6454
  replaceNode(ancestor, fnExp, parent);
6434
- let ref14;
6435
- if (ref14 = getTrimmingSpace(body)) {
6436
- const ws = ref14;
6455
+ let ref15;
6456
+ if (ref15 = getTrimmingSpace(body)) {
6457
+ const ws = ref15;
6437
6458
  inplaceInsertTrimmingSpace(body, "");
6438
6459
  inplacePrepend(ws, fnExp);
6439
6460
  }
@@ -6478,8 +6499,8 @@ function reorderBindingRestProperty(props) {
6478
6499
  }
6479
6500
  ];
6480
6501
  }
6481
- let ref15;
6482
- if (Array.isArray(rest.delim) && (ref15 = rest.delim)[ref15.length - 1]?.token === ",") {
6502
+ let ref16;
6503
+ if (Array.isArray(rest.delim) && (ref16 = rest.delim)[ref16.length - 1]?.token === ",") {
6483
6504
  rest.delim = rest.delim.slice(0, -1);
6484
6505
  rest.children = [...rest.children.slice(0, -1), rest.delim];
6485
6506
  }
@@ -7243,6 +7264,7 @@ var grammar = {
7243
7264
  NamespaceDeclaration,
7244
7265
  OptionalEquals,
7245
7266
  TypeLexicalDeclaration,
7267
+ TypeLetOrConstDeclaration,
7246
7268
  TypeDeclarationBinding,
7247
7269
  InterfaceExtendsClause,
7248
7270
  InterfaceExtendsTarget,
@@ -7578,47 +7600,47 @@ var $L171 = (0, import_lib3.$L)("infer");
7578
7600
  var $L172 = (0, import_lib3.$L)("let");
7579
7601
  var $L173 = (0, import_lib3.$L)("const");
7580
7602
  var $L174 = (0, import_lib3.$L)("is");
7581
- var $L175 = (0, import_lib3.$L)("like");
7582
- var $L176 = (0, import_lib3.$L)("loop");
7583
- var $L177 = (0, import_lib3.$L)("new");
7584
- var $L178 = (0, import_lib3.$L)("not");
7585
- var $L179 = (0, import_lib3.$L)("of");
7586
- var $L180 = (0, import_lib3.$L)("[");
7587
- var $L181 = (0, import_lib3.$L)("operator");
7588
- var $L182 = (0, import_lib3.$L)("override");
7589
- var $L183 = (0, import_lib3.$L)("own");
7590
- var $L184 = (0, import_lib3.$L)("public");
7591
- var $L185 = (0, import_lib3.$L)("private");
7592
- var $L186 = (0, import_lib3.$L)("protected");
7593
- var $L187 = (0, import_lib3.$L)("||>");
7594
- var $L188 = (0, import_lib3.$L)("|\u25B7");
7595
- var $L189 = (0, import_lib3.$L)("|>=");
7596
- var $L190 = (0, import_lib3.$L)("\u25B7=");
7597
- var $L191 = (0, import_lib3.$L)("|>");
7598
- var $L192 = (0, import_lib3.$L)("\u25B7");
7599
- var $L193 = (0, import_lib3.$L)("readonly");
7600
- var $L194 = (0, import_lib3.$L)("return");
7601
- var $L195 = (0, import_lib3.$L)("satisfies");
7602
- var $L196 = (0, import_lib3.$L)("'");
7603
- var $L197 = (0, import_lib3.$L)("static");
7604
- var $L198 = (0, import_lib3.$L)("${");
7605
- var $L199 = (0, import_lib3.$L)("super");
7606
- var $L200 = (0, import_lib3.$L)("switch");
7607
- var $L201 = (0, import_lib3.$L)("target");
7608
- var $L202 = (0, import_lib3.$L)("then");
7609
- var $L203 = (0, import_lib3.$L)("this");
7610
- var $L204 = (0, import_lib3.$L)("throw");
7611
- var $L205 = (0, import_lib3.$L)('"""');
7612
- var $L206 = (0, import_lib3.$L)("'''");
7613
- var $L207 = (0, import_lib3.$L)("///");
7614
- var $L208 = (0, import_lib3.$L)("```");
7615
- var $L209 = (0, import_lib3.$L)("try");
7616
- var $L210 = (0, import_lib3.$L)("typeof");
7617
- var $L211 = (0, import_lib3.$L)("undefined");
7618
- var $L212 = (0, import_lib3.$L)("unless");
7619
- var $L213 = (0, import_lib3.$L)("until");
7620
- var $L214 = (0, import_lib3.$L)("using");
7621
- var $L215 = (0, import_lib3.$L)("var");
7603
+ var $L175 = (0, import_lib3.$L)("var");
7604
+ var $L176 = (0, import_lib3.$L)("like");
7605
+ var $L177 = (0, import_lib3.$L)("loop");
7606
+ var $L178 = (0, import_lib3.$L)("new");
7607
+ var $L179 = (0, import_lib3.$L)("not");
7608
+ var $L180 = (0, import_lib3.$L)("of");
7609
+ var $L181 = (0, import_lib3.$L)("[");
7610
+ var $L182 = (0, import_lib3.$L)("operator");
7611
+ var $L183 = (0, import_lib3.$L)("override");
7612
+ var $L184 = (0, import_lib3.$L)("own");
7613
+ var $L185 = (0, import_lib3.$L)("public");
7614
+ var $L186 = (0, import_lib3.$L)("private");
7615
+ var $L187 = (0, import_lib3.$L)("protected");
7616
+ var $L188 = (0, import_lib3.$L)("||>");
7617
+ var $L189 = (0, import_lib3.$L)("|\u25B7");
7618
+ var $L190 = (0, import_lib3.$L)("|>=");
7619
+ var $L191 = (0, import_lib3.$L)("\u25B7=");
7620
+ var $L192 = (0, import_lib3.$L)("|>");
7621
+ var $L193 = (0, import_lib3.$L)("\u25B7");
7622
+ var $L194 = (0, import_lib3.$L)("readonly");
7623
+ var $L195 = (0, import_lib3.$L)("return");
7624
+ var $L196 = (0, import_lib3.$L)("satisfies");
7625
+ var $L197 = (0, import_lib3.$L)("'");
7626
+ var $L198 = (0, import_lib3.$L)("static");
7627
+ var $L199 = (0, import_lib3.$L)("${");
7628
+ var $L200 = (0, import_lib3.$L)("super");
7629
+ var $L201 = (0, import_lib3.$L)("switch");
7630
+ var $L202 = (0, import_lib3.$L)("target");
7631
+ var $L203 = (0, import_lib3.$L)("then");
7632
+ var $L204 = (0, import_lib3.$L)("this");
7633
+ var $L205 = (0, import_lib3.$L)("throw");
7634
+ var $L206 = (0, import_lib3.$L)('"""');
7635
+ var $L207 = (0, import_lib3.$L)("'''");
7636
+ var $L208 = (0, import_lib3.$L)("///");
7637
+ var $L209 = (0, import_lib3.$L)("```");
7638
+ var $L210 = (0, import_lib3.$L)("try");
7639
+ var $L211 = (0, import_lib3.$L)("typeof");
7640
+ var $L212 = (0, import_lib3.$L)("undefined");
7641
+ var $L213 = (0, import_lib3.$L)("unless");
7642
+ var $L214 = (0, import_lib3.$L)("until");
7643
+ var $L215 = (0, import_lib3.$L)("using");
7622
7644
  var $L216 = (0, import_lib3.$L)("void");
7623
7645
  var $L217 = (0, import_lib3.$L)("when");
7624
7646
  var $L218 = (0, import_lib3.$L)("while");
@@ -7673,75 +7695,74 @@ var $R27 = (0, import_lib3.$R)(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
7673
7695
  var $R28 = (0, import_lib3.$R)(new RegExp("[:.]", "suy"));
7674
7696
  var $R29 = (0, import_lib3.$R)(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
7675
7697
  var $R30 = (0, import_lib3.$R)(new RegExp("(?=loop|comptime|do|for|until|while)", "suy"));
7676
- var $R31 = (0, import_lib3.$R)(new RegExp("(?=[\\s\\),])", "suy"));
7677
- var $R32 = (0, import_lib3.$R)(new RegExp('[^;"\\s]+', "suy"));
7678
- var $R33 = (0, import_lib3.$R)(new RegExp("(?=[0-9.])", "suy"));
7679
- var $R34 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
7680
- var $R35 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
7681
- var $R36 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
7682
- var $R37 = (0, import_lib3.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
7683
- var $R38 = (0, import_lib3.$R)(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
7684
- var $R39 = (0, import_lib3.$R)(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
7685
- var $R40 = (0, import_lib3.$R)(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
7686
- var $R41 = (0, import_lib3.$R)(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
7687
- var $R42 = (0, import_lib3.$R)(new RegExp("(?=[0-9])", "suy"));
7688
- var $R43 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
7689
- var $R44 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|[^"])*', "suy"));
7690
- var $R45 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^'])*", "suy"));
7691
- var $R46 = (0, import_lib3.$R)(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
7692
- var $R47 = (0, import_lib3.$R)(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
7693
- var $R48 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
7694
- var $R49 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
7695
- var $R50 = (0, import_lib3.$R)(new RegExp("(?:\\\\.)", "suy"));
7696
- var $R51 = (0, import_lib3.$R)(new RegExp("[\\s]+", "suy"));
7697
- var $R52 = (0, import_lib3.$R)(new RegExp("\\/(?!\\/\\/)", "suy"));
7698
- var $R53 = (0, import_lib3.$R)(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
7699
- var $R54 = (0, import_lib3.$R)(new RegExp("[*\\/\\r\\n]", "suy"));
7700
- var $R55 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
7701
- var $R56 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
7702
- var $R57 = (0, import_lib3.$R)(new RegExp("(?=[`'\"])", "suy"));
7703
- var $R58 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
7704
- var $R59 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
7705
- var $R60 = (0, import_lib3.$R)(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
7706
- var $R61 = (0, import_lib3.$R)(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
7707
- var $R62 = (0, import_lib3.$R)(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
7708
- var $R63 = (0, import_lib3.$R)(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
7709
- var $R64 = (0, import_lib3.$R)(new RegExp("(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
7710
- var $R65 = (0, import_lib3.$R)(new RegExp("(?=\\/|#)", "suy"));
7711
- var $R66 = (0, import_lib3.$R)(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
7712
- var $R67 = (0, import_lib3.$R)(new RegExp(".", "suy"));
7713
- var $R68 = (0, import_lib3.$R)(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
7714
- var $R69 = (0, import_lib3.$R)(new RegExp("[^]*?###", "suy"));
7715
- var $R70 = (0, import_lib3.$R)(new RegExp("###(?!#)", "suy"));
7716
- var $R71 = (0, import_lib3.$R)(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
7717
- var $R72 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
7718
- var $R73 = (0, import_lib3.$R)(new RegExp("(?=\\s|\\/|#)", "suy"));
7719
- var $R74 = (0, import_lib3.$R)(new RegExp("(?!\\p{ID_Continue})", "suy"));
7720
- var $R75 = (0, import_lib3.$R)(new RegExp("[=:]", "suy"));
7721
- var $R76 = (0, import_lib3.$R)(new RegExp("['\u2019]s", "suy"));
7722
- var $R77 = (0, import_lib3.$R)(new RegExp("\\s", "suy"));
7723
- var $R78 = (0, import_lib3.$R)(new RegExp("(?=[<])", "suy"));
7724
- var $R79 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
7725
- var $R80 = (0, import_lib3.$R)(new RegExp("[!+-]", "suy"));
7726
- var $R81 = (0, import_lib3.$R)(new RegExp("[\\s>]|\\/>", "suy"));
7727
- var $R82 = (0, import_lib3.$R)(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
7728
- var $R83 = (0, import_lib3.$R)(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
7729
- var $R84 = (0, import_lib3.$R)(new RegExp("[<>]", "suy"));
7730
- var $R85 = (0, import_lib3.$R)(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
7731
- var $R86 = (0, import_lib3.$R)(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
7732
- var $R87 = (0, import_lib3.$R)(new RegExp("[^{}<>\\r\\n]+", "suy"));
7733
- var $R88 = (0, import_lib3.$R)(new RegExp("[+-]?", "suy"));
7734
- var $R89 = (0, import_lib3.$R)(new RegExp("(?=if|unless)", "suy"));
7735
- var $R90 = (0, import_lib3.$R)(new RegExp("[|&<!=\\-\u21D2\u2192]", "suy"));
7736
- var $R91 = (0, import_lib3.$R)(new RegExp("(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
7737
- var $R92 = (0, import_lib3.$R)(new RegExp("#![^\\r\\n]*", "suy"));
7738
- var $R93 = (0, import_lib3.$R)(new RegExp("[\\t ]*", "suy"));
7739
- var $R94 = (0, import_lib3.$R)(new RegExp("[\\s]*", "suy"));
7740
- var $R95 = (0, import_lib3.$R)(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
7741
- var $R96 = (0, import_lib3.$R)(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
7742
- var $R97 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
7743
- var $R98 = (0, import_lib3.$R)(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
7744
- var $R99 = (0, import_lib3.$R)(new RegExp("[^]*", "suy"));
7698
+ var $R31 = (0, import_lib3.$R)(new RegExp('[^;"\\s]+', "suy"));
7699
+ var $R32 = (0, import_lib3.$R)(new RegExp("(?=[0-9.])", "suy"));
7700
+ var $R33 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
7701
+ var $R34 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
7702
+ var $R35 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
7703
+ var $R36 = (0, import_lib3.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
7704
+ var $R37 = (0, import_lib3.$R)(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
7705
+ var $R38 = (0, import_lib3.$R)(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
7706
+ var $R39 = (0, import_lib3.$R)(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
7707
+ var $R40 = (0, import_lib3.$R)(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
7708
+ var $R41 = (0, import_lib3.$R)(new RegExp("(?=[0-9])", "suy"));
7709
+ var $R42 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
7710
+ var $R43 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|[^"])*', "suy"));
7711
+ var $R44 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^'])*", "suy"));
7712
+ var $R45 = (0, import_lib3.$R)(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
7713
+ var $R46 = (0, import_lib3.$R)(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
7714
+ var $R47 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
7715
+ var $R48 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
7716
+ var $R49 = (0, import_lib3.$R)(new RegExp("(?:\\\\.)", "suy"));
7717
+ var $R50 = (0, import_lib3.$R)(new RegExp("[\\s]+", "suy"));
7718
+ var $R51 = (0, import_lib3.$R)(new RegExp("\\/(?!\\/\\/)", "suy"));
7719
+ var $R52 = (0, import_lib3.$R)(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
7720
+ var $R53 = (0, import_lib3.$R)(new RegExp("[*\\/\\r\\n]", "suy"));
7721
+ var $R54 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
7722
+ var $R55 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
7723
+ var $R56 = (0, import_lib3.$R)(new RegExp("(?=[`'\"])", "suy"));
7724
+ var $R57 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
7725
+ var $R58 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
7726
+ var $R59 = (0, import_lib3.$R)(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
7727
+ var $R60 = (0, import_lib3.$R)(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
7728
+ var $R61 = (0, import_lib3.$R)(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
7729
+ var $R62 = (0, import_lib3.$R)(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
7730
+ var $R63 = (0, import_lib3.$R)(new RegExp("(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
7731
+ var $R64 = (0, import_lib3.$R)(new RegExp("(?=\\/|#)", "suy"));
7732
+ var $R65 = (0, import_lib3.$R)(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
7733
+ var $R66 = (0, import_lib3.$R)(new RegExp(".", "suy"));
7734
+ var $R67 = (0, import_lib3.$R)(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
7735
+ var $R68 = (0, import_lib3.$R)(new RegExp("[^]*?###", "suy"));
7736
+ var $R69 = (0, import_lib3.$R)(new RegExp("###(?!#)", "suy"));
7737
+ var $R70 = (0, import_lib3.$R)(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
7738
+ var $R71 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
7739
+ var $R72 = (0, import_lib3.$R)(new RegExp("(?=\\s|\\/|#)", "suy"));
7740
+ var $R73 = (0, import_lib3.$R)(new RegExp("(?!\\p{ID_Continue})", "suy"));
7741
+ var $R74 = (0, import_lib3.$R)(new RegExp("[=:]", "suy"));
7742
+ var $R75 = (0, import_lib3.$R)(new RegExp("['\u2019]s", "suy"));
7743
+ var $R76 = (0, import_lib3.$R)(new RegExp("\\s", "suy"));
7744
+ var $R77 = (0, import_lib3.$R)(new RegExp("(?=[<])", "suy"));
7745
+ var $R78 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
7746
+ var $R79 = (0, import_lib3.$R)(new RegExp("[!+-]", "suy"));
7747
+ var $R80 = (0, import_lib3.$R)(new RegExp("[\\s>]|\\/>", "suy"));
7748
+ var $R81 = (0, import_lib3.$R)(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
7749
+ var $R82 = (0, import_lib3.$R)(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
7750
+ var $R83 = (0, import_lib3.$R)(new RegExp("[<>]", "suy"));
7751
+ var $R84 = (0, import_lib3.$R)(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
7752
+ var $R85 = (0, import_lib3.$R)(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
7753
+ var $R86 = (0, import_lib3.$R)(new RegExp("[^{}<>\\r\\n]+", "suy"));
7754
+ var $R87 = (0, import_lib3.$R)(new RegExp("[+-]?", "suy"));
7755
+ var $R88 = (0, import_lib3.$R)(new RegExp("(?=if|unless)", "suy"));
7756
+ var $R89 = (0, import_lib3.$R)(new RegExp("[|&<!=\\-\u21D2\u2192]", "suy"));
7757
+ var $R90 = (0, import_lib3.$R)(new RegExp("(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
7758
+ var $R91 = (0, import_lib3.$R)(new RegExp("#![^\\r\\n]*", "suy"));
7759
+ var $R92 = (0, import_lib3.$R)(new RegExp("[\\t ]*", "suy"));
7760
+ var $R93 = (0, import_lib3.$R)(new RegExp("[\\s]*", "suy"));
7761
+ var $R94 = (0, import_lib3.$R)(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([\\p{ID_Continue}.,+-]*))?", "suy"));
7762
+ var $R95 = (0, import_lib3.$R)(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
7763
+ var $R96 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
7764
+ var $R97 = (0, import_lib3.$R)(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
7765
+ var $R98 = (0, import_lib3.$R)(new RegExp("[^]*", "suy"));
7745
7766
  var Program$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Reset, Init, (0, import_lib3.$E)(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7746
7767
  var reset = $1;
7747
7768
  var init = $2;
@@ -9568,17 +9589,24 @@ var Parameters$$ = [Parameters$0, Parameters$1];
9568
9589
  function Parameters(ctx, state2) {
9569
9590
  return (0, import_lib3.$EVENT_C)(ctx, state2, "Parameters", Parameters$$);
9570
9591
  }
9571
- var ShortArrowParameters$0 = ObjectBindingPattern;
9572
- var ShortArrowParameters$1 = ArrayBindingPattern;
9573
- var ShortArrowParameters$$ = [ShortArrowParameters$0, ShortArrowParameters$1];
9592
+ var ShortArrowParameters$0 = (0, import_lib3.$TV)((0, import_lib3.$C)(ObjectBindingPattern, ArrayBindingPattern), function($skip, $loc, $0, $1) {
9593
+ var binding = $0;
9594
+ const { typeSuffix } = binding;
9595
+ return {
9596
+ type: "Parameter",
9597
+ children: [binding, typeSuffix],
9598
+ names: binding.names,
9599
+ typeSuffix
9600
+ };
9601
+ });
9574
9602
  function ShortArrowParameters(ctx, state2) {
9575
- return (0, import_lib3.$EVENT_C)(ctx, state2, "ShortArrowParameters", ShortArrowParameters$$);
9603
+ return (0, import_lib3.$EVENT)(ctx, state2, "ShortArrowParameters", ShortArrowParameters$0);
9576
9604
  }
9577
9605
  var ArrowParameters$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(ShortArrowParameters), function($skip, $loc, $0, $1) {
9578
9606
  return {
9579
9607
  type: "Parameters",
9580
- children: ["(", $0, ")"],
9581
- names: $0.names
9608
+ children: ["(", $1, ")"],
9609
+ names: $1.names
9582
9610
  };
9583
9611
  });
9584
9612
  var ArrowParameters$1 = Parameters;
@@ -12667,6 +12695,14 @@ var IfStatement$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$C)
12667
12695
  kind = { ...kind, token: "if" };
12668
12696
  condition = negateCondition(condition);
12669
12697
  }
12698
+ if (block.bare && e) {
12699
+ const semicolon = ";";
12700
+ block = {
12701
+ ...block,
12702
+ semicolon,
12703
+ children: [...block.children, semicolon]
12704
+ };
12705
+ }
12670
12706
  return {
12671
12707
  type: "IfStatement",
12672
12708
  children: [kind, ws, condition, block, e],
@@ -12680,6 +12716,13 @@ var IfStatement$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(IfClause, BlockOrEm
12680
12716
  var clause = $1;
12681
12717
  var block = $2;
12682
12718
  var e = $3;
12719
+ if (block.bare && e) {
12720
+ block = {
12721
+ ...block,
12722
+ semicolon: ";",
12723
+ children: [...block.children, ";"]
12724
+ };
12725
+ }
12683
12726
  return {
12684
12727
  type: "IfStatement",
12685
12728
  children: [...clause.children, block, e],
@@ -13102,23 +13145,13 @@ var ForRangeParameters$$ = [ForRangeParameters$0, ForRangeParameters$1];
13102
13145
  function ForRangeParameters(ctx, state2) {
13103
13146
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForRangeParameters", ForRangeParameters$$);
13104
13147
  }
13105
- var ForInOfDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Var, ForBinding), function($skip, $loc, $0, $1, $2) {
13106
- var binding = $2;
13107
- return {
13108
- type: "ForDeclaration",
13109
- children: $0,
13110
- declare: $1,
13111
- binding,
13112
- names: binding.names
13113
- };
13114
- });
13115
- var ForInOfDeclaration$1 = ForDeclaration;
13116
- var ForInOfDeclaration$2 = LeftHandSideExpression;
13117
- var ForInOfDeclaration$$ = [ForInOfDeclaration$0, ForInOfDeclaration$1, ForInOfDeclaration$2];
13148
+ var ForInOfDeclaration$0 = ForDeclaration;
13149
+ var ForInOfDeclaration$1 = LeftHandSideExpression;
13150
+ var ForInOfDeclaration$$ = [ForInOfDeclaration$0, ForInOfDeclaration$1];
13118
13151
  function ForInOfDeclaration(ctx, state2) {
13119
13152
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForInOfDeclaration", ForInOfDeclaration$$);
13120
13153
  }
13121
- var ForDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(LetOrConst, ForBinding), function($skip, $loc, $0, $1, $2) {
13154
+ var ForDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(LetOrConstOrVar, ForBinding), function($skip, $loc, $0, $1, $2) {
13122
13155
  var c = $1;
13123
13156
  var binding = $2;
13124
13157
  return {
@@ -13129,9 +13162,9 @@ var ForDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(LetOrConst, ForB
13129
13162
  names: binding.names
13130
13163
  };
13131
13164
  });
13132
- var ForDeclaration$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(InsertConst, ForBinding, (0, import_lib3.$EXPECT)($R31, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
13165
+ var ForDeclaration$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(InsertConst, (0, import_lib3.$N)(ActualMemberExpression), ForBinding), function($skip, $loc, $0, $1, $2, $3) {
13133
13166
  var c = $1;
13134
- var binding = $2;
13167
+ var binding = $3;
13135
13168
  return {
13136
13169
  type: "ForDeclaration",
13137
13170
  children: [c, binding],
@@ -13144,11 +13177,22 @@ var ForDeclaration$$ = [ForDeclaration$0, ForDeclaration$1];
13144
13177
  function ForDeclaration(ctx, state2) {
13145
13178
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForDeclaration", ForDeclaration$$);
13146
13179
  }
13147
- var ForBinding$0 = BindingIdentifier;
13148
- var ForBinding$1 = BindingPattern;
13149
- var ForBinding$$ = [ForBinding$0, ForBinding$1];
13180
+ var ForBinding$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$C)(BindingPattern, BindingIdentifier), (0, import_lib3.$E)(TypeSuffix)), function($skip, $loc, $0, $1, $2) {
13181
+ var pattern = $1;
13182
+ var suffix = $2;
13183
+ suffix ??= pattern.typeSuffix;
13184
+ return {
13185
+ type: "Binding",
13186
+ children: [pattern, suffix],
13187
+ names: pattern.names,
13188
+ pattern,
13189
+ suffix,
13190
+ splices: [],
13191
+ thisAssignments: []
13192
+ };
13193
+ });
13150
13194
  function ForBinding(ctx, state2) {
13151
- return (0, import_lib3.$EVENT_C)(ctx, state2, "ForBinding", ForBinding$$);
13195
+ return (0, import_lib3.$EVENT)(ctx, state2, "ForBinding", ForBinding$0);
13152
13196
  }
13153
13197
  var SwitchStatement$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Switch, (0, import_lib3.$C)(EmptyCondition, Condition), CaseBlock), function($skip, $loc, $0, $1, $2, $3) {
13154
13198
  var condition = $2;
@@ -14079,7 +14123,7 @@ var UnprocessedModuleSpecifier$$ = [UnprocessedModuleSpecifier$0, UnprocessedMod
14079
14123
  function UnprocessedModuleSpecifier(ctx, state2) {
14080
14124
  return (0, import_lib3.$EVENT_C)(ctx, state2, "UnprocessedModuleSpecifier", UnprocessedModuleSpecifier$$);
14081
14125
  }
14082
- var UnquotedSpecifier$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($R32, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
14126
+ var UnquotedSpecifier$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($R31, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
14083
14127
  var spec = $0;
14084
14128
  return { $loc, token: `"${spec}"` };
14085
14129
  });
@@ -14338,7 +14382,7 @@ var VariableDeclarationList$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Lexical
14338
14382
  function VariableDeclarationList(ctx, state2) {
14339
14383
  return (0, import_lib3.$EVENT)(ctx, state2, "VariableDeclarationList", VariableDeclarationList$0);
14340
14384
  }
14341
- var NumericLiteral$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R33, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
14385
+ var NumericLiteral$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R32, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
14342
14386
  var token = $2;
14343
14387
  return { type: "NumericLiteral", $loc, token };
14344
14388
  });
@@ -14354,36 +14398,36 @@ var NumericLiteralKind$$ = [NumericLiteralKind$0, NumericLiteralKind$1, NumericL
14354
14398
  function NumericLiteralKind(ctx, state2) {
14355
14399
  return (0, import_lib3.$EVENT_C)(ctx, state2, "NumericLiteralKind", NumericLiteralKind$$);
14356
14400
  }
14357
- var DecimalBigIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R34, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
14401
+ var DecimalBigIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R33, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
14358
14402
  function DecimalBigIntegerLiteral(ctx, state2) {
14359
14403
  return (0, import_lib3.$EVENT)(ctx, state2, "DecimalBigIntegerLiteral", DecimalBigIntegerLiteral$0);
14360
14404
  }
14361
- var DecimalLiteral$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R35, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
14405
+ var DecimalLiteral$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R34, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
14362
14406
  return $1 + ".";
14363
14407
  });
14364
- var DecimalLiteral$1 = (0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R36, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), (0, import_lib3.$E)(ExponentPart)));
14365
- var DecimalLiteral$2 = (0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R37, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), (0, import_lib3.$E)(ExponentPart)));
14408
+ var DecimalLiteral$1 = (0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R35, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), (0, import_lib3.$E)(ExponentPart)));
14409
+ var DecimalLiteral$2 = (0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R36, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), (0, import_lib3.$E)(ExponentPart)));
14366
14410
  var DecimalLiteral$$ = [DecimalLiteral$0, DecimalLiteral$1, DecimalLiteral$2];
14367
14411
  function DecimalLiteral(ctx, state2) {
14368
14412
  return (0, import_lib3.$EVENT_C)(ctx, state2, "DecimalLiteral", DecimalLiteral$$);
14369
14413
  }
14370
- var ExponentPart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R38, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
14414
+ var ExponentPart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R37, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
14371
14415
  function ExponentPart(ctx, state2) {
14372
14416
  return (0, import_lib3.$EVENT)(ctx, state2, "ExponentPart", ExponentPart$0);
14373
14417
  }
14374
- var BinaryIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R39, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
14418
+ var BinaryIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R38, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
14375
14419
  function BinaryIntegerLiteral(ctx, state2) {
14376
14420
  return (0, import_lib3.$EVENT)(ctx, state2, "BinaryIntegerLiteral", BinaryIntegerLiteral$0);
14377
14421
  }
14378
- var OctalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R40, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
14422
+ var OctalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R39, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
14379
14423
  function OctalIntegerLiteral(ctx, state2) {
14380
14424
  return (0, import_lib3.$EVENT)(ctx, state2, "OctalIntegerLiteral", OctalIntegerLiteral$0);
14381
14425
  }
14382
- var HexIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R41, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
14426
+ var HexIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R40, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
14383
14427
  function HexIntegerLiteral(ctx, state2) {
14384
14428
  return (0, import_lib3.$EVENT)(ctx, state2, "HexIntegerLiteral", HexIntegerLiteral$0);
14385
14429
  }
14386
- var IntegerLiteral$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R42, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
14430
+ var IntegerLiteral$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R41, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
14387
14431
  var token = $2;
14388
14432
  return { $loc, token };
14389
14433
  });
@@ -14399,7 +14443,7 @@ var IntegerLiteralKind$$ = [IntegerLiteralKind$0, IntegerLiteralKind$1, IntegerL
14399
14443
  function IntegerLiteralKind(ctx, state2) {
14400
14444
  return (0, import_lib3.$EVENT_C)(ctx, state2, "IntegerLiteralKind", IntegerLiteralKind$$);
14401
14445
  }
14402
- var DecimalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R43, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
14446
+ var DecimalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R42, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
14403
14447
  function DecimalIntegerLiteral(ctx, state2) {
14404
14448
  return (0, import_lib3.$EVENT)(ctx, state2, "DecimalIntegerLiteral", DecimalIntegerLiteral$0);
14405
14449
  }
@@ -14423,25 +14467,25 @@ var StringLiteral$$ = [StringLiteral$0, StringLiteral$1];
14423
14467
  function StringLiteral(ctx, state2) {
14424
14468
  return (0, import_lib3.$EVENT_C)(ctx, state2, "StringLiteral", StringLiteral$$);
14425
14469
  }
14426
- var DoubleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R44, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14470
+ var DoubleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R43, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14427
14471
  return { $loc, token: $0 };
14428
14472
  });
14429
14473
  function DoubleStringCharacters(ctx, state2) {
14430
14474
  return (0, import_lib3.$EVENT)(ctx, state2, "DoubleStringCharacters", DoubleStringCharacters$0);
14431
14475
  }
14432
- var SingleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R45, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14476
+ var SingleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R44, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14433
14477
  return { $loc, token: $0 };
14434
14478
  });
14435
14479
  function SingleStringCharacters(ctx, state2) {
14436
14480
  return (0, import_lib3.$EVENT)(ctx, state2, "SingleStringCharacters", SingleStringCharacters$0);
14437
14481
  }
14438
- var TripleDoubleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R46, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14482
+ var TripleDoubleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R45, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14439
14483
  return { $loc, token: $0 };
14440
14484
  });
14441
14485
  function TripleDoubleStringCharacters(ctx, state2) {
14442
14486
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleDoubleStringCharacters", TripleDoubleStringCharacters$0);
14443
14487
  }
14444
- var TripleSingleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R47, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14488
+ var TripleSingleStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R46, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14445
14489
  return { $loc, token: $0 };
14446
14490
  });
14447
14491
  function TripleSingleStringCharacters(ctx, state2) {
@@ -14464,7 +14508,7 @@ var CoffeeInterpolatedDoubleQuotedString$0 = (0, import_lib3.$TS)((0, import_lib
14464
14508
  function CoffeeInterpolatedDoubleQuotedString(ctx, state2) {
14465
14509
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeInterpolatedDoubleQuotedString", CoffeeInterpolatedDoubleQuotedString$0);
14466
14510
  }
14467
- var CoffeeDoubleQuotedStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R48, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14511
+ var CoffeeDoubleQuotedStringCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R47, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14468
14512
  return { $loc, token: $0 };
14469
14513
  });
14470
14514
  function CoffeeDoubleQuotedStringCharacters(ctx, state2) {
@@ -14484,7 +14528,7 @@ var RegularExpressionClass$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, i
14484
14528
  function RegularExpressionClass(ctx, state2) {
14485
14529
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionClass", RegularExpressionClass$0);
14486
14530
  }
14487
- var RegularExpressionClassCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R49, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14531
+ var RegularExpressionClassCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R48, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14488
14532
  return { $loc, token: $0 };
14489
14533
  });
14490
14534
  function RegularExpressionClassCharacters(ctx, state2) {
@@ -14541,7 +14585,7 @@ var HeregexPart$1 = (0, import_lib3.$T)((0, import_lib3.$S)(CoffeeStringSubstitu
14541
14585
  var HeregexPart$2 = (0, import_lib3.$T)((0, import_lib3.$S)(TemplateSubstitution), function(value) {
14542
14586
  return { "type": "Substitution", "children": value[0] };
14543
14587
  });
14544
- var HeregexPart$3 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R50, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14588
+ var HeregexPart$3 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R49, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14545
14589
  let token = $0;
14546
14590
  switch ($0[1]) {
14547
14591
  case "\n":
@@ -14559,13 +14603,13 @@ var HeregexPart$3 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R50, "Heregex
14559
14603
  var HeregexPart$4 = (0, import_lib3.$TS)((0, import_lib3.$S)(HeregexComment), function($skip, $loc, $0, $1) {
14560
14604
  return { $loc, token: "" };
14561
14605
  });
14562
- var HeregexPart$5 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R51, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14606
+ var HeregexPart$5 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R50, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14563
14607
  return { $loc, token: "" };
14564
14608
  });
14565
- var HeregexPart$6 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R52, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14609
+ var HeregexPart$6 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R51, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14566
14610
  return { $loc, token: "\\/" };
14567
14611
  });
14568
- var HeregexPart$7 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R53, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14612
+ var HeregexPart$7 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R52, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14569
14613
  return { $loc, token: $0 };
14570
14614
  });
14571
14615
  var HeregexPart$$ = [HeregexPart$0, HeregexPart$1, HeregexPart$2, HeregexPart$3, HeregexPart$4, HeregexPart$5, HeregexPart$6, HeregexPart$7];
@@ -14578,7 +14622,7 @@ var HeregexComment$$ = [HeregexComment$0, HeregexComment$1];
14578
14622
  function HeregexComment(ctx, state2) {
14579
14623
  return (0, import_lib3.$EVENT_C)(ctx, state2, "HeregexComment", HeregexComment$$);
14580
14624
  }
14581
- var RegularExpressionBody$0 = (0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R54, "RegularExpressionBody /[*\\/\\r\\n]/"))), (0, import_lib3.$Q)(RegExpPart));
14625
+ var RegularExpressionBody$0 = (0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R53, "RegularExpressionBody /[*\\/\\r\\n]/"))), (0, import_lib3.$Q)(RegExpPart));
14582
14626
  function RegularExpressionBody(ctx, state2) {
14583
14627
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionBody", RegularExpressionBody$0);
14584
14628
  }
@@ -14588,15 +14632,15 @@ var RegExpPart$$ = [RegExpPart$0, RegExpPart$1];
14588
14632
  function RegExpPart(ctx, state2) {
14589
14633
  return (0, import_lib3.$EVENT_C)(ctx, state2, "RegExpPart", RegExpPart$$);
14590
14634
  }
14591
- var RegExpCharacter$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R55, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
14635
+ var RegExpCharacter$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R54, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
14592
14636
  function RegExpCharacter(ctx, state2) {
14593
14637
  return (0, import_lib3.$EVENT)(ctx, state2, "RegExpCharacter", RegExpCharacter$0);
14594
14638
  }
14595
- var RegularExpressionFlags$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R56, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
14639
+ var RegularExpressionFlags$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R55, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
14596
14640
  function RegularExpressionFlags(ctx, state2) {
14597
14641
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionFlags", RegularExpressionFlags$0);
14598
14642
  }
14599
- var TemplateLiteral$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R57, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
14643
+ var TemplateLiteral$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R56, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
14600
14644
  return value[1];
14601
14645
  });
14602
14646
  function TemplateLiteral(ctx, state2) {
@@ -14636,28 +14680,28 @@ var TemplateSubstitution$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Substituti
14636
14680
  function TemplateSubstitution(ctx, state2) {
14637
14681
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateSubstitution", TemplateSubstitution$0);
14638
14682
  }
14639
- var TemplateCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R58, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14683
+ var TemplateCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R57, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14640
14684
  return { $loc, token: $0 };
14641
14685
  });
14642
14686
  function TemplateCharacters(ctx, state2) {
14643
14687
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateCharacters", TemplateCharacters$0);
14644
14688
  }
14645
- var TemplateBlockCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R59, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14689
+ var TemplateBlockCharacters$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R58, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14646
14690
  return { $loc, token: $0 };
14647
14691
  });
14648
14692
  function TemplateBlockCharacters(ctx, state2) {
14649
14693
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateBlockCharacters", TemplateBlockCharacters$0);
14650
14694
  }
14651
- var ReservedWord$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R60, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
14652
- var ReservedWord$1 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R61, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
14653
- var ReservedWord$2 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R62, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
14654
- var ReservedWord$3 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R63, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
14655
- var ReservedWord$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R64, "ReservedWord /(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
14695
+ var ReservedWord$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R59, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
14696
+ var ReservedWord$1 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R60, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
14697
+ var ReservedWord$2 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R61, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
14698
+ var ReservedWord$3 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R62, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
14699
+ var ReservedWord$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R63, "ReservedWord /(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
14656
14700
  var ReservedWord$$ = [ReservedWord$0, ReservedWord$1, ReservedWord$2, ReservedWord$3, ReservedWord$4];
14657
14701
  function ReservedWord(ctx, state2) {
14658
14702
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ReservedWord", ReservedWord$$);
14659
14703
  }
14660
- var Comment$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R65, "Comment /(?=\\/|#)/"), _Comment), function(value) {
14704
+ var Comment$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R64, "Comment /(?=\\/|#)/"), _Comment), function(value) {
14661
14705
  return value[1];
14662
14706
  });
14663
14707
  function Comment(ctx, state2) {
@@ -14675,7 +14719,7 @@ var SingleLineComment$$ = [SingleLineComment$0, SingleLineComment$1];
14675
14719
  function SingleLineComment(ctx, state2) {
14676
14720
  return (0, import_lib3.$EVENT_C)(ctx, state2, "SingleLineComment", SingleLineComment$$);
14677
14721
  }
14678
- var JSSingleLineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R66, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14722
+ var JSSingleLineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R65, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14679
14723
  return { type: "Comment", $loc, token: $0 };
14680
14724
  });
14681
14725
  function JSSingleLineComment(ctx, state2) {
@@ -14687,30 +14731,30 @@ var MultiLineComment$$ = [MultiLineComment$0, MultiLineComment$1];
14687
14731
  function MultiLineComment(ctx, state2) {
14688
14732
  return (0, import_lib3.$EVENT_C)(ctx, state2, "MultiLineComment", MultiLineComment$$);
14689
14733
  }
14690
- var JSMultiLineComment$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L130, 'JSMultiLineComment "/*"'), (0, import_lib3.$Q)((0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$EXPECT)($L131, 'JSMultiLineComment "*/"')), (0, import_lib3.$EXPECT)($R67, "JSMultiLineComment /./"))), (0, import_lib3.$EXPECT)($L131, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
14734
+ var JSMultiLineComment$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L130, 'JSMultiLineComment "/*"'), (0, import_lib3.$Q)((0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$EXPECT)($L131, 'JSMultiLineComment "*/"')), (0, import_lib3.$EXPECT)($R66, "JSMultiLineComment /./"))), (0, import_lib3.$EXPECT)($L131, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
14691
14735
  return { type: "Comment", $loc, token: $1 };
14692
14736
  });
14693
14737
  function JSMultiLineComment(ctx, state2) {
14694
14738
  return (0, import_lib3.$EVENT)(ctx, state2, "JSMultiLineComment", JSMultiLineComment$0);
14695
14739
  }
14696
- var CoffeeSingleLineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R68, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14740
+ var CoffeeSingleLineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R67, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14697
14741
  return { type: "Comment", $loc, token: `//${$1}` };
14698
14742
  });
14699
14743
  function CoffeeSingleLineComment(ctx, state2) {
14700
14744
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeSingleLineComment", CoffeeSingleLineComment$0);
14701
14745
  }
14702
- var CoffeeMultiLineComment$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(CoffeeHereCommentStart, (0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R69, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
14746
+ var CoffeeMultiLineComment$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(CoffeeHereCommentStart, (0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R68, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
14703
14747
  $2 = $2.slice(0, $2.length - 3).replace(/\*\//g, "* /");
14704
14748
  return { type: "Comment", $loc, token: `/*${$2}*/` };
14705
14749
  });
14706
14750
  function CoffeeMultiLineComment(ctx, state2) {
14707
14751
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeMultiLineComment", CoffeeMultiLineComment$0);
14708
14752
  }
14709
- var CoffeeHereCommentStart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R70, "CoffeeHereCommentStart /###(?!#)/"));
14753
+ var CoffeeHereCommentStart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R69, "CoffeeHereCommentStart /###(?!#)/"));
14710
14754
  function CoffeeHereCommentStart(ctx, state2) {
14711
14755
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
14712
14756
  }
14713
- var InlineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R71, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14757
+ var InlineComment$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R70, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14714
14758
  return { $loc, token: $0 };
14715
14759
  });
14716
14760
  function InlineComment(ctx, state2) {
@@ -14724,7 +14768,7 @@ var TrailingComment$0 = (0, import_lib3.$S)((0, import_lib3.$E)(_), (0, import_l
14724
14768
  function TrailingComment(ctx, state2) {
14725
14769
  return (0, import_lib3.$EVENT)(ctx, state2, "TrailingComment", TrailingComment$0);
14726
14770
  }
14727
- var _$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R72, "_ /(?=[ \\t\\/\\\\])/"), (0, import_lib3.$P)((0, import_lib3.$C)(NonNewlineWhitespace, InlineComment))), function(value) {
14771
+ var _$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R71, "_ /(?=[ \\t\\/\\\\])/"), (0, import_lib3.$P)((0, import_lib3.$C)(NonNewlineWhitespace, InlineComment))), function(value) {
14728
14772
  return value[1];
14729
14773
  });
14730
14774
  function _(ctx, state2) {
@@ -14747,7 +14791,7 @@ var Trimmed_$0 = (0, import_lib3.$TV)(_, function($skip, $loc, $0, $1) {
14747
14791
  function Trimmed_(ctx, state2) {
14748
14792
  return (0, import_lib3.$EVENT)(ctx, state2, "Trimmed_", Trimmed_$0);
14749
14793
  }
14750
- var __$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R73, "__ /(?=\\s|\\/|#)/"), (0, import_lib3.$Q)((0, import_lib3.$C)(Whitespace, Comment))), function(value) {
14794
+ var __$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R72, "__ /(?=\\s|\\/|#)/"), (0, import_lib3.$Q)((0, import_lib3.$C)(Whitespace, Comment))), function(value) {
14751
14795
  return value[1];
14752
14796
  });
14753
14797
  var __$1 = (0, import_lib3.$EXPECT)($L0, '__ ""');
@@ -14755,7 +14799,7 @@ var __$$ = [__$0, __$1];
14755
14799
  function __(ctx, state2) {
14756
14800
  return (0, import_lib3.$EVENT_C)(ctx, state2, "__", __$$);
14757
14801
  }
14758
- var Whitespace$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R51, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14802
+ var Whitespace$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R50, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14759
14803
  return { $loc, token: $0 };
14760
14804
  });
14761
14805
  function Whitespace(ctx, state2) {
@@ -14793,7 +14837,7 @@ var SemicolonDelimiter$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_l
14793
14837
  function SemicolonDelimiter(ctx, state2) {
14794
14838
  return (0, import_lib3.$EVENT)(ctx, state2, "SemicolonDelimiter", SemicolonDelimiter$0);
14795
14839
  }
14796
- var NonIdContinue$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R74, "NonIdContinue /(?!\\p{ID_Continue})/"));
14840
+ var NonIdContinue$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R73, "NonIdContinue /(?!\\p{ID_Continue})/"));
14797
14841
  function NonIdContinue(ctx, state2) {
14798
14842
  return (0, import_lib3.$EVENT)(ctx, state2, "NonIdContinue", NonIdContinue$0);
14799
14843
  }
@@ -14911,7 +14955,7 @@ var CoffeeSubstitutionStart$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L
14911
14955
  function CoffeeSubstitutionStart(ctx, state2) {
14912
14956
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeSubstitutionStart", CoffeeSubstitutionStart$0);
14913
14957
  }
14914
- var Colon$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L16, 'Colon ":"'), (0, import_lib3.$N)((0, import_lib3.$EXPECT)($R75, "Colon /[=:]/"))), function($skip, $loc, $0, $1, $2) {
14958
+ var Colon$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L16, 'Colon ":"'), (0, import_lib3.$N)((0, import_lib3.$EXPECT)($R74, "Colon /[=:]/"))), function($skip, $loc, $0, $1, $2) {
14915
14959
  return { $loc, token: $1 };
14916
14960
  });
14917
14961
  function Colon(ctx, state2) {
@@ -14962,7 +15006,7 @@ function Do(ctx, state2) {
14962
15006
  var Dot$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
14963
15007
  return { $loc, token: $1 };
14964
15008
  });
14965
- var Dot$1 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R76, "Dot /['\u2019]s/"), Trimmed_), function($skip, $loc, $0, $1, $2) {
15009
+ var Dot$1 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R75, "Dot /['\u2019]s/"), Trimmed_), function($skip, $loc, $0, $1, $2) {
14966
15010
  var ws = $2;
14967
15011
  return [
14968
15012
  { $loc, token: "." },
@@ -15089,7 +15133,7 @@ var If$0 = (0, import_lib3.$TV)((0, import_lib3.$TEXT)((0, import_lib3.$S)((0, i
15089
15133
  function If(ctx, state2) {
15090
15134
  return (0, import_lib3.$EVENT)(ctx, state2, "If", If$0);
15091
15135
  }
15092
- var Import$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L15, 'Import "import"'), (0, import_lib3.$Y)((0, import_lib3.$EXPECT)($R77, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
15136
+ var Import$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L15, 'Import "import"'), (0, import_lib3.$Y)((0, import_lib3.$EXPECT)($R76, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
15093
15137
  return { $loc, token: $1 };
15094
15138
  });
15095
15139
  function Import(ctx, state2) {
@@ -15125,37 +15169,37 @@ var Is$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L1
15125
15169
  function Is(ctx, state2) {
15126
15170
  return (0, import_lib3.$EVENT)(ctx, state2, "Is", Is$0);
15127
15171
  }
15128
- var LetOrConstOrVar$0 = LetOrConst;
15129
- var LetOrConstOrVar$1 = Var;
15130
- var LetOrConstOrVar$$ = [LetOrConstOrVar$0, LetOrConstOrVar$1];
15172
+ var LetOrConstOrVar$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L172, 'LetOrConstOrVar "let"'), (0, import_lib3.$EXPECT)($L173, 'LetOrConstOrVar "const"'), (0, import_lib3.$EXPECT)($L175, 'LetOrConstOrVar "var"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15173
+ return { $loc, token: $1 };
15174
+ });
15131
15175
  function LetOrConstOrVar(ctx, state2) {
15132
- return (0, import_lib3.$EVENT_C)(ctx, state2, "LetOrConstOrVar", LetOrConstOrVar$$);
15176
+ return (0, import_lib3.$EVENT)(ctx, state2, "LetOrConstOrVar", LetOrConstOrVar$0);
15133
15177
  }
15134
- var Like$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L175, 'Like "like"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15178
+ var Like$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L176, 'Like "like"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15135
15179
  return { $loc, token: $1 };
15136
15180
  });
15137
15181
  function Like(ctx, state2) {
15138
15182
  return (0, import_lib3.$EVENT)(ctx, state2, "Like", Like$0);
15139
15183
  }
15140
- var Loop$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L176, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15184
+ var Loop$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L177, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15141
15185
  return { $loc, token: "while" };
15142
15186
  });
15143
15187
  function Loop(ctx, state2) {
15144
15188
  return (0, import_lib3.$EVENT)(ctx, state2, "Loop", Loop$0);
15145
15189
  }
15146
- var New$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L177, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15190
+ var New$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L178, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15147
15191
  return { $loc, token: $1 };
15148
15192
  });
15149
15193
  function New(ctx, state2) {
15150
15194
  return (0, import_lib3.$EVENT)(ctx, state2, "New", New$0);
15151
15195
  }
15152
- var Not$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L178, 'Not "not"'), NonIdContinue, (0, import_lib3.$N)((0, import_lib3.$S)((0, import_lib3.$E)(_), (0, import_lib3.$EXPECT)($L16, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
15196
+ var Not$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L179, 'Not "not"'), NonIdContinue, (0, import_lib3.$N)((0, import_lib3.$S)((0, import_lib3.$E)(_), (0, import_lib3.$EXPECT)($L16, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
15153
15197
  return { $loc, token: "!" };
15154
15198
  });
15155
15199
  function Not(ctx, state2) {
15156
15200
  return (0, import_lib3.$EVENT)(ctx, state2, "Not", Not$0);
15157
15201
  }
15158
- var Of$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L179, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15202
+ var Of$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L180, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15159
15203
  return { $loc, token: $1 };
15160
15204
  });
15161
15205
  function Of(ctx, state2) {
@@ -15173,7 +15217,7 @@ var OpenBrace$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L1, 'OpenBrace
15173
15217
  function OpenBrace(ctx, state2) {
15174
15218
  return (0, import_lib3.$EVENT)(ctx, state2, "OpenBrace", OpenBrace$0);
15175
15219
  }
15176
- var OpenBracket$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L180, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15220
+ var OpenBracket$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L181, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15177
15221
  return { $loc, token: $1 };
15178
15222
  });
15179
15223
  function OpenBracket(ctx, state2) {
@@ -15185,49 +15229,49 @@ var OpenParen$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L4, 'OpenParen
15185
15229
  function OpenParen(ctx, state2) {
15186
15230
  return (0, import_lib3.$EVENT)(ctx, state2, "OpenParen", OpenParen$0);
15187
15231
  }
15188
- var Operator$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L181, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15232
+ var Operator$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L182, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15189
15233
  return { $loc, token: $1 };
15190
15234
  });
15191
15235
  function Operator(ctx, state2) {
15192
15236
  return (0, import_lib3.$EVENT)(ctx, state2, "Operator", Operator$0);
15193
15237
  }
15194
- var Override$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L182, 'Override "override"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15238
+ var Override$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L183, 'Override "override"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15195
15239
  return { $loc, token: $1, ts: true };
15196
15240
  });
15197
15241
  function Override(ctx, state2) {
15198
15242
  return (0, import_lib3.$EVENT)(ctx, state2, "Override", Override$0);
15199
15243
  }
15200
- var Own$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L183, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15244
+ var Own$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L184, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15201
15245
  return { $loc, token: $1 };
15202
15246
  });
15203
15247
  function Own(ctx, state2) {
15204
15248
  return (0, import_lib3.$EVENT)(ctx, state2, "Own", Own$0);
15205
15249
  }
15206
- var Public$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L184, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15250
+ var Public$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L185, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15207
15251
  return { $loc, token: $1 };
15208
15252
  });
15209
15253
  function Public(ctx, state2) {
15210
15254
  return (0, import_lib3.$EVENT)(ctx, state2, "Public", Public$0);
15211
15255
  }
15212
- var Private$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L185, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15256
+ var Private$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L186, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15213
15257
  return { $loc, token: $1 };
15214
15258
  });
15215
15259
  function Private(ctx, state2) {
15216
15260
  return (0, import_lib3.$EVENT)(ctx, state2, "Private", Private$0);
15217
15261
  }
15218
- var Protected$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L186, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15262
+ var Protected$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L187, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15219
15263
  return { $loc, token: $1 };
15220
15264
  });
15221
15265
  function Protected(ctx, state2) {
15222
15266
  return (0, import_lib3.$EVENT)(ctx, state2, "Protected", Protected$0);
15223
15267
  }
15224
- var Pipe$0 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L187, 'Pipe "||>"'), (0, import_lib3.$EXPECT)($L188, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
15268
+ var Pipe$0 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L188, 'Pipe "||>"'), (0, import_lib3.$EXPECT)($L189, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
15225
15269
  return { $loc, token: "||>" };
15226
15270
  });
15227
- var Pipe$1 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L189, 'Pipe "|>="'), (0, import_lib3.$EXPECT)($L190, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
15271
+ var Pipe$1 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L190, 'Pipe "|>="'), (0, import_lib3.$EXPECT)($L191, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
15228
15272
  return { $loc, token: "|>=" };
15229
15273
  });
15230
- var Pipe$2 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L191, 'Pipe "|>"'), (0, import_lib3.$EXPECT)($L192, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
15274
+ var Pipe$2 = (0, import_lib3.$TV)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L192, 'Pipe "|>"'), (0, import_lib3.$EXPECT)($L193, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
15231
15275
  return { $loc, token: "|>" };
15232
15276
  });
15233
15277
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -15240,19 +15284,19 @@ var QuestionMark$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L6, 'Questio
15240
15284
  function QuestionMark(ctx, state2) {
15241
15285
  return (0, import_lib3.$EVENT)(ctx, state2, "QuestionMark", QuestionMark$0);
15242
15286
  }
15243
- var Readonly$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L193, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15287
+ var Readonly$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L194, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15244
15288
  return { $loc, token: $1, ts: true };
15245
15289
  });
15246
15290
  function Readonly(ctx, state2) {
15247
15291
  return (0, import_lib3.$EVENT)(ctx, state2, "Readonly", Readonly$0);
15248
15292
  }
15249
- var Return$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L194, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15293
+ var Return$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L195, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15250
15294
  return { $loc, token: $1 };
15251
15295
  });
15252
15296
  function Return(ctx, state2) {
15253
15297
  return (0, import_lib3.$EVENT)(ctx, state2, "Return", Return$0);
15254
15298
  }
15255
- var Satisfies$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L195, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15299
+ var Satisfies$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L196, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15256
15300
  return { $loc, token: $1 };
15257
15301
  });
15258
15302
  function Satisfies(ctx, state2) {
@@ -15264,7 +15308,7 @@ var Semicolon$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L119, 'Semicolo
15264
15308
  function Semicolon(ctx, state2) {
15265
15309
  return (0, import_lib3.$EVENT)(ctx, state2, "Semicolon", Semicolon$0);
15266
15310
  }
15267
- var SingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L196, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
15311
+ var SingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L197, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
15268
15312
  return { $loc, token: $1 };
15269
15313
  });
15270
15314
  function SingleQuote(ctx, state2) {
@@ -15276,7 +15320,7 @@ var Star$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L75, 'Star "*"'), fu
15276
15320
  function Star(ctx, state2) {
15277
15321
  return (0, import_lib3.$EVENT)(ctx, state2, "Star", Star$0);
15278
15322
  }
15279
- var Static$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L197, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15323
+ var Static$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L198, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15280
15324
  return { $loc, token: $1 };
15281
15325
  });
15282
15326
  var Static$1 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L136, 'Static "@"'), (0, import_lib3.$N)((0, import_lib3.$C)((0, import_lib3.$EXPECT)($L4, 'Static "("'), (0, import_lib3.$EXPECT)($L136, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
@@ -15286,109 +15330,109 @@ var Static$$ = [Static$0, Static$1];
15286
15330
  function Static(ctx, state2) {
15287
15331
  return (0, import_lib3.$EVENT_C)(ctx, state2, "Static", Static$$);
15288
15332
  }
15289
- var SubstitutionStart$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L198, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
15333
+ var SubstitutionStart$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L199, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
15290
15334
  return { $loc, token: $1 };
15291
15335
  });
15292
15336
  function SubstitutionStart(ctx, state2) {
15293
15337
  return (0, import_lib3.$EVENT)(ctx, state2, "SubstitutionStart", SubstitutionStart$0);
15294
15338
  }
15295
- var Super$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L199, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15339
+ var Super$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L200, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15296
15340
  return { $loc, token: $1 };
15297
15341
  });
15298
15342
  function Super(ctx, state2) {
15299
15343
  return (0, import_lib3.$EVENT)(ctx, state2, "Super", Super$0);
15300
15344
  }
15301
- var Switch$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L200, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15345
+ var Switch$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L201, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15302
15346
  return { $loc, token: $1 };
15303
15347
  });
15304
15348
  function Switch(ctx, state2) {
15305
15349
  return (0, import_lib3.$EVENT)(ctx, state2, "Switch", Switch$0);
15306
15350
  }
15307
- var Target$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L201, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15351
+ var Target$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L202, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15308
15352
  return { $loc, token: $1 };
15309
15353
  });
15310
15354
  function Target(ctx, state2) {
15311
15355
  return (0, import_lib3.$EVENT)(ctx, state2, "Target", Target$0);
15312
15356
  }
15313
- var Then$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(__, (0, import_lib3.$EXPECT)($L202, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
15357
+ var Then$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(__, (0, import_lib3.$EXPECT)($L203, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
15314
15358
  return { $loc, token: "" };
15315
15359
  });
15316
15360
  function Then(ctx, state2) {
15317
15361
  return (0, import_lib3.$EVENT)(ctx, state2, "Then", Then$0);
15318
15362
  }
15319
- var This$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L203, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15363
+ var This$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L204, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15320
15364
  return { $loc, token: $1 };
15321
15365
  });
15322
15366
  function This(ctx, state2) {
15323
15367
  return (0, import_lib3.$EVENT)(ctx, state2, "This", This$0);
15324
15368
  }
15325
- var Throw$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L204, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15369
+ var Throw$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L205, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15326
15370
  return { $loc, token: $1 };
15327
15371
  });
15328
15372
  function Throw(ctx, state2) {
15329
15373
  return (0, import_lib3.$EVENT)(ctx, state2, "Throw", Throw$0);
15330
15374
  }
15331
- var TripleDoubleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L205, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
15375
+ var TripleDoubleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L206, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
15332
15376
  return { $loc, token: "`" };
15333
15377
  });
15334
15378
  function TripleDoubleQuote(ctx, state2) {
15335
15379
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleDoubleQuote", TripleDoubleQuote$0);
15336
15380
  }
15337
- var TripleSingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L206, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
15381
+ var TripleSingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L207, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
15338
15382
  return { $loc, token: "`" };
15339
15383
  });
15340
15384
  function TripleSingleQuote(ctx, state2) {
15341
15385
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSingleQuote", TripleSingleQuote$0);
15342
15386
  }
15343
- var TripleSlash$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L207, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
15387
+ var TripleSlash$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L208, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
15344
15388
  return { $loc, token: "/" };
15345
15389
  });
15346
15390
  function TripleSlash(ctx, state2) {
15347
15391
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSlash", TripleSlash$0);
15348
15392
  }
15349
- var TripleTick$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L208, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
15393
+ var TripleTick$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L209, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
15350
15394
  return { $loc, token: "`" };
15351
15395
  });
15352
15396
  function TripleTick(ctx, state2) {
15353
15397
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleTick", TripleTick$0);
15354
15398
  }
15355
- var Try$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L209, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15399
+ var Try$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L210, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15356
15400
  return { $loc, token: $1 };
15357
15401
  });
15358
15402
  function Try(ctx, state2) {
15359
15403
  return (0, import_lib3.$EVENT)(ctx, state2, "Try", Try$0);
15360
15404
  }
15361
- var Typeof$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L210, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15405
+ var Typeof$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L211, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15362
15406
  return { $loc, token: $1 };
15363
15407
  });
15364
15408
  function Typeof(ctx, state2) {
15365
15409
  return (0, import_lib3.$EVENT)(ctx, state2, "Typeof", Typeof$0);
15366
15410
  }
15367
- var Undefined$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L211, 'Undefined "undefined"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15411
+ var Undefined$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L212, 'Undefined "undefined"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15368
15412
  return { $loc, token: $1 };
15369
15413
  });
15370
15414
  function Undefined(ctx, state2) {
15371
15415
  return (0, import_lib3.$EVENT)(ctx, state2, "Undefined", Undefined$0);
15372
15416
  }
15373
- var Unless$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L212, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15417
+ var Unless$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L213, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15374
15418
  return { $loc, token: $1, negated: true };
15375
15419
  });
15376
15420
  function Unless(ctx, state2) {
15377
15421
  return (0, import_lib3.$EVENT)(ctx, state2, "Unless", Unless$0);
15378
15422
  }
15379
- var Until$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L213, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15423
+ var Until$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L214, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15380
15424
  return { $loc, token: $1, negated: true };
15381
15425
  });
15382
15426
  function Until(ctx, state2) {
15383
15427
  return (0, import_lib3.$EVENT)(ctx, state2, "Until", Until$0);
15384
15428
  }
15385
- var Using$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L214, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15429
+ var Using$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L215, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15386
15430
  return { $loc, token: $1 };
15387
15431
  });
15388
15432
  function Using(ctx, state2) {
15389
15433
  return (0, import_lib3.$EVENT)(ctx, state2, "Using", Using$0);
15390
15434
  }
15391
- var Var$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L215, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15435
+ var Var$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L175, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15392
15436
  return { $loc, token: $1 };
15393
15437
  });
15394
15438
  function Var(ctx, state2) {
@@ -15447,7 +15491,7 @@ var JSXImplicitFragment$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(JSXTag, (0,
15447
15491
  function JSXImplicitFragment(ctx, state2) {
15448
15492
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXImplicitFragment", JSXImplicitFragment$0);
15449
15493
  }
15450
- var JSXTag$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R78, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
15494
+ var JSXTag$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R77, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
15451
15495
  return value[1];
15452
15496
  });
15453
15497
  function JSXTag(ctx, state2) {
@@ -15594,7 +15638,7 @@ var JSXElementName$$ = [JSXElementName$0, JSXElementName$1];
15594
15638
  function JSXElementName(ctx, state2) {
15595
15639
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXElementName", JSXElementName$$);
15596
15640
  }
15597
- var JSXIdentifierName$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R79, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
15641
+ var JSXIdentifierName$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R78, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
15598
15642
  function JSXIdentifierName(ctx, state2) {
15599
15643
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXIdentifierName", JSXIdentifierName$0);
15600
15644
  }
@@ -15773,7 +15817,7 @@ var JSXAttribute$6 = (0, import_lib3.$TS)((0, import_lib3.$S)(Dot, JSXShorthandS
15773
15817
  class: $2
15774
15818
  };
15775
15819
  });
15776
- var JSXAttribute$7 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R80, "JSXAttribute /[!+-]/")), JSXAttributeName, (0, import_lib3.$Y)(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
15820
+ var JSXAttribute$7 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$TEXT)((0, import_lib3.$EXPECT)($R79, "JSXAttribute /[!+-]/")), JSXAttributeName, (0, import_lib3.$Y)(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
15777
15821
  var toggle = $1;
15778
15822
  var id = $2;
15779
15823
  const value = toggle === "+" ? "true" : "false";
@@ -15783,11 +15827,11 @@ var JSXAttribute$$ = [JSXAttribute$0, JSXAttribute$1, JSXAttribute$2, JSXAttribu
15783
15827
  function JSXAttribute(ctx, state2) {
15784
15828
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXAttribute", JSXAttribute$$);
15785
15829
  }
15786
- var JSXAttributeSpace$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R81, "JSXAttributeSpace /[\\s>]|\\/>/"));
15830
+ var JSXAttributeSpace$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R80, "JSXAttributeSpace /[\\s>]|\\/>/"));
15787
15831
  function JSXAttributeSpace(ctx, state2) {
15788
15832
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXAttributeSpace", JSXAttributeSpace$0);
15789
15833
  }
15790
- var JSXShorthandString$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R82, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15834
+ var JSXShorthandString$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R81, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15791
15835
  return quoteString($0);
15792
15836
  });
15793
15837
  var JSXShorthandString$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(TemplateLiteral), function($skip, $loc, $0, $1) {
@@ -15834,7 +15878,7 @@ var JSXAttributeValue$3 = (0, import_lib3.$TS)((0, import_lib3.$S)(InsertInlineO
15834
15878
  }
15835
15879
  return [open, value, close];
15836
15880
  });
15837
- var JSXAttributeValue$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R83, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
15881
+ var JSXAttributeValue$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R82, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
15838
15882
  var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
15839
15883
  function JSXAttributeValue(ctx, state2) {
15840
15884
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXAttributeValue", JSXAttributeValue$$);
@@ -15847,7 +15891,7 @@ var InlineJSXAttributeValue$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(InlineJ
15847
15891
  function InlineJSXAttributeValue(ctx, state2) {
15848
15892
  return (0, import_lib3.$EVENT)(ctx, state2, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
15849
15893
  }
15850
- var InlineJSXBinaryOpRHS$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$EXPECT)($R84, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
15894
+ var InlineJSXBinaryOpRHS$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$N)((0, import_lib3.$EXPECT)($R83, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
15851
15895
  var op = $2;
15852
15896
  var rhs = $3;
15853
15897
  return [[], op, [], rhs];
@@ -15864,7 +15908,7 @@ var InlineJSXUnaryExpression$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, im
15864
15908
  function InlineJSXUnaryExpression(ctx, state2) {
15865
15909
  return (0, import_lib3.$EVENT)(ctx, state2, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
15866
15910
  }
15867
- var InlineJSXUnaryOp$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R85, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15911
+ var InlineJSXUnaryOp$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R84, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15868
15912
  return { $loc, token: $0 };
15869
15913
  });
15870
15914
  function InlineJSXUnaryOp(ctx, state2) {
@@ -16115,13 +16159,13 @@ var JSXComment$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXP
16115
16159
  function JSXComment(ctx, state2) {
16116
16160
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXComment", JSXComment$0);
16117
16161
  }
16118
- var JSXCommentContent$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R86, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16162
+ var JSXCommentContent$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R85, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16119
16163
  return { $loc, token: $0.replace(/\*\//g, "* /") };
16120
16164
  });
16121
16165
  function JSXCommentContent(ctx, state2) {
16122
16166
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXCommentContent", JSXCommentContent$0);
16123
16167
  }
16124
- var JSXText$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R87, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16168
+ var JSXText$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R86, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16125
16169
  return {
16126
16170
  type: "JSXText",
16127
16171
  token: $0,
@@ -16268,8 +16312,14 @@ var UsingJSModeError$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L0, 'Usi
16268
16312
  function UsingJSModeError(ctx, state2) {
16269
16313
  return (0, import_lib3.$EVENT)(ctx, state2, "UsingJSModeError", UsingJSModeError$0);
16270
16314
  }
16271
- var TypeDeclaration$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), (0, import_lib3.$S)(Declare, (0, import_lib3.$E)(_)), TypeLexicalDeclaration), function(value) {
16272
- return { "ts": true, "children": value };
16315
+ var TypeDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), (0, import_lib3.$S)(Declare, (0, import_lib3.$E)(_)), TypeLexicalDeclaration), function($skip, $loc, $0, $1, $2, $3) {
16316
+ var d = $3;
16317
+ return {
16318
+ type: "Declaration",
16319
+ ts: true,
16320
+ children: $0,
16321
+ names: d.names ?? []
16322
+ };
16273
16323
  });
16274
16324
  var TypeDeclaration$1 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), (0, import_lib3.$E)((0, import_lib3.$S)(Declare, (0, import_lib3.$E)(_))), TypeDeclarationRest), function($skip, $loc, $0, $1, $2, $3) {
16275
16325
  var export_ = $1;
@@ -16349,7 +16399,7 @@ var OptionalEquals$$ = [OptionalEquals$0, OptionalEquals$1];
16349
16399
  function OptionalEquals(ctx, state2) {
16350
16400
  return (0, import_lib3.$EVENT_C)(ctx, state2, "OptionalEquals", OptionalEquals$$);
16351
16401
  }
16352
- var TypeLexicalDeclaration$0 = (0, import_lib3.$S)(__, LetOrConstOrVar, TypeDeclarationBinding, (0, import_lib3.$Q)((0, import_lib3.$S)(CommaDelimiter, __, TypeDeclarationBinding)));
16402
+ var TypeLexicalDeclaration$0 = TypeLetOrConstDeclaration;
16353
16403
  var TypeLexicalDeclaration$1 = (0, import_lib3.$S)(__, EnumDeclaration);
16354
16404
  var TypeLexicalDeclaration$2 = ClassSignature;
16355
16405
  var TypeLexicalDeclaration$3 = (0, import_lib3.$S)(Namespace, (0, import_lib3.$E)(_), IdentifierName, DeclareBlock);
@@ -16359,7 +16409,27 @@ var TypeLexicalDeclaration$$ = [TypeLexicalDeclaration$0, TypeLexicalDeclaration
16359
16409
  function TypeLexicalDeclaration(ctx, state2) {
16360
16410
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeLexicalDeclaration", TypeLexicalDeclaration$$);
16361
16411
  }
16362
- var TypeDeclarationBinding$0 = (0, import_lib3.$S)((0, import_lib3.$C)(BindingPattern, BindingIdentifier), (0, import_lib3.$E)(TypeSuffix));
16412
+ var TypeLetOrConstDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(__, LetOrConstOrVar, TypeDeclarationBinding, (0, import_lib3.$Q)((0, import_lib3.$S)(CommaDelimiter, __, TypeDeclarationBinding))), function($skip, $loc, $0, $1, $2, $3, $4) {
16413
+ var first = $3;
16414
+ var rest = $4;
16415
+ const names = first.names.concat(...rest.map((b) => b[2].names));
16416
+ return {
16417
+ type: "TypeLexicalDeclaration",
16418
+ children: $0,
16419
+ ts: true,
16420
+ names
16421
+ };
16422
+ });
16423
+ function TypeLetOrConstDeclaration(ctx, state2) {
16424
+ return (0, import_lib3.$EVENT)(ctx, state2, "TypeLetOrConstDeclaration", TypeLetOrConstDeclaration$0);
16425
+ }
16426
+ var TypeDeclarationBinding$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$C)(BindingPattern, BindingIdentifier), (0, import_lib3.$E)(TypeSuffix)), function($skip, $loc, $0, $1, $2) {
16427
+ return {
16428
+ type: "TypeDeclarationBinding",
16429
+ children: $0,
16430
+ names: $1.names
16431
+ };
16432
+ });
16363
16433
  function TypeDeclarationBinding(ctx, state2) {
16364
16434
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeDeclarationBinding", TypeDeclarationBinding$0);
16365
16435
  }
@@ -16495,13 +16565,14 @@ var NestedDeclareElement$0 = (0, import_lib3.$S)(Nested, DeclareElement, Interfa
16495
16565
  function NestedDeclareElement(ctx, state2) {
16496
16566
  return (0, import_lib3.$EVENT)(ctx, state2, "NestedDeclareElement", NestedDeclareElement$0);
16497
16567
  }
16498
- var DeclareElement$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)(Decorators), (0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), TypeLexicalDeclaration), function(value) {
16568
+ var DeclareElement$0 = (0, import_lib3.$S)((0, import_lib3.$E)(Decorators), Export, __, Default, __, (0, import_lib3.$C)(Identifier, ClassSignature, InterfaceDeclaration));
16569
+ var DeclareElement$1 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)(Decorators), (0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), TypeLexicalDeclaration), function(value) {
16499
16570
  return { "ts": true, "children": value };
16500
16571
  });
16501
- var DeclareElement$1 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), TypeDeclarationRest), function(value) {
16572
+ var DeclareElement$2 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Export, (0, import_lib3.$E)(_))), TypeDeclarationRest), function(value) {
16502
16573
  return { "ts": true, "children": value };
16503
16574
  });
16504
- var DeclareElement$$ = [DeclareElement$0, DeclareElement$1];
16575
+ var DeclareElement$$ = [DeclareElement$0, DeclareElement$1, DeclareElement$2];
16505
16576
  function DeclareElement(ctx, state2) {
16506
16577
  return (0, import_lib3.$EVENT_C)(ctx, state2, "DeclareElement", DeclareElement$$);
16507
16578
  }
@@ -16628,7 +16699,7 @@ var TypeProperty$0 = (0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)
16628
16699
  function TypeProperty(ctx, state2) {
16629
16700
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeProperty", TypeProperty$0);
16630
16701
  }
16631
- var TypeIndexSignature$0 = (0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R88, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, (0, import_lib3.$E)((0, import_lib3.$S)(__, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R13, "TypeIndexSignature /[+-]/")), (0, import_lib3.$Y)((0, import_lib3.$S)((0, import_lib3.$E)(_), QuestionMark)))));
16702
+ var TypeIndexSignature$0 = (0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R87, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, (0, import_lib3.$E)((0, import_lib3.$S)(__, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R13, "TypeIndexSignature /[+-]/")), (0, import_lib3.$Y)((0, import_lib3.$S)((0, import_lib3.$E)(_), QuestionMark)))));
16632
16703
  function TypeIndexSignature(ctx, state2) {
16633
16704
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeIndexSignature", TypeIndexSignature$0);
16634
16705
  }
@@ -16771,7 +16842,7 @@ var TypeUnary$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$Q)((
16771
16842
  if (!prefix.length && !suffix.length)
16772
16843
  return t;
16773
16844
  return {
16774
- type: "UnaryType",
16845
+ type: "TypeUnary",
16775
16846
  prefix,
16776
16847
  suffix,
16777
16848
  t,
@@ -16789,7 +16860,7 @@ function TypeUnarySuffix(ctx, state2) {
16789
16860
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeUnarySuffix", TypeUnarySuffix$$);
16790
16861
  }
16791
16862
  var TypeUnaryOp$0 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L233, 'TypeUnaryOp "keyof"'), NonIdContinue);
16792
- var TypeUnaryOp$1 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L193, 'TypeUnaryOp "readonly"'), NonIdContinue);
16863
+ var TypeUnaryOp$1 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L194, 'TypeUnaryOp "readonly"'), NonIdContinue);
16793
16864
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1];
16794
16865
  function TypeUnaryOp(ctx, state2) {
16795
16866
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeUnaryOp", TypeUnaryOp$$);
@@ -16849,14 +16920,14 @@ var TypePrimary$6 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)
16849
16920
  var TypePrimary$7 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), TypeLiteral), function($skip, $loc, $0, $1, $2) {
16850
16921
  var t = $2;
16851
16922
  return {
16852
- type: "LiteralType",
16923
+ type: "TypeLiteral",
16853
16924
  t,
16854
16925
  children: $0
16855
16926
  };
16856
16927
  });
16857
16928
  var TypePrimary$8 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), UnknownAlias), function($skip, $loc, $0, $1, $2) {
16858
16929
  return {
16859
- type: "IdentifierType",
16930
+ type: "TypeIdentifier",
16860
16931
  children: $0,
16861
16932
  raw: $2.token,
16862
16933
  args: void 0
@@ -16865,7 +16936,7 @@ var TypePrimary$8 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)
16865
16936
  var TypePrimary$9 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), Identifier, (0, import_lib3.$Q)((0, import_lib3.$S)(Dot, IdentifierName)), (0, import_lib3.$E)((0, import_lib3.$C)(TypeArguments, ImplicitTypeArguments))), function($skip, $loc, $0, $1, $2, $3, $4) {
16866
16937
  var args = $4;
16867
16938
  return {
16868
- type: "IdentifierType",
16939
+ type: "TypeIdentifier",
16869
16940
  children: $0,
16870
16941
  raw: [$2.name, ...$3.map(([dot, id]) => dot.token + id.name)].join(""),
16871
16942
  args
@@ -16875,7 +16946,7 @@ var TypePrimary$10 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E
16875
16946
  if (!$4)
16876
16947
  return $skip;
16877
16948
  return {
16878
- type: "ParenthesizedType",
16949
+ type: "TypeParenthesized",
16879
16950
  children: [$1, $2, $4, $6, $7]
16880
16951
  // omit AllowAll/RestoreAll
16881
16952
  };
@@ -17096,7 +17167,7 @@ var TypeWithPostfix$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(TypeConditional
17096
17167
  function TypeWithPostfix(ctx, state2) {
17097
17168
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeWithPostfix", TypeWithPostfix$0);
17098
17169
  }
17099
- var TypeConditional$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), (0, import_lib3.$EXPECT)($R89, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
17170
+ var TypeConditional$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), (0, import_lib3.$EXPECT)($R88, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
17100
17171
  return prepend($1, expressionizeTypeIf($3));
17101
17172
  });
17102
17173
  var TypeConditional$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(TypeCondition, NotDedented, QuestionMark, __, Type, __, Colon, __, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
@@ -17241,16 +17312,20 @@ function TypeBinaryOp(ctx, state2) {
17241
17312
  }
17242
17313
  var TypeFunction$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)((0, import_lib3.$S)(Abstract, (0, import_lib3.$E)(_))), (0, import_lib3.$E)((0, import_lib3.$S)(New, (0, import_lib3.$E)(_))), Parameters, __, TypeArrowFunction, (0, import_lib3.$E)(ReturnType)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
17243
17314
  var type = $6;
17244
- const ret = [...$0];
17315
+ const children = [...$0];
17245
17316
  if ($1 && !$2) {
17246
- ret[1] = {
17317
+ children[1] = {
17247
17318
  type: "Error",
17248
17319
  message: "abstract function types must be constructors (abstract new)"
17249
17320
  };
17250
17321
  }
17251
17322
  if (!type)
17252
- ret.push("void");
17253
- return ret;
17323
+ children.push("void");
17324
+ return {
17325
+ type: "TypeFunction",
17326
+ children,
17327
+ ts: true
17328
+ };
17254
17329
  });
17255
17330
  function TypeFunction(ctx, state2) {
17256
17331
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeFunction", TypeFunction$0);
@@ -17294,8 +17369,8 @@ function TypeApplicationStart(ctx, state2) {
17294
17369
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeApplicationStart", TypeApplicationStart$$);
17295
17370
  }
17296
17371
  var ForbiddenImplicitTypeCalls$0 = ReservedBinary;
17297
- var ForbiddenImplicitTypeCalls$1 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R90, "ForbiddenImplicitTypeCalls /[|&<!=\\-\u21D2\u2192]/"));
17298
- var ForbiddenImplicitTypeCalls$2 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R91, "ForbiddenImplicitTypeCalls /(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
17372
+ var ForbiddenImplicitTypeCalls$1 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R89, "ForbiddenImplicitTypeCalls /[|&<!=\\-\u21D2\u2192]/"));
17373
+ var ForbiddenImplicitTypeCalls$2 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R90, "ForbiddenImplicitTypeCalls /(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
17299
17374
  var ForbiddenImplicitTypeCalls$$ = [ForbiddenImplicitTypeCalls$0, ForbiddenImplicitTypeCalls$1, ForbiddenImplicitTypeCalls$2];
17300
17375
  function ForbiddenImplicitTypeCalls(ctx, state2) {
17301
17376
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForbiddenImplicitTypeCalls", ForbiddenImplicitTypeCalls$$);
@@ -17405,15 +17480,15 @@ var ThisType$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$E)(_),
17405
17480
  function ThisType(ctx, state2) {
17406
17481
  return (0, import_lib3.$EVENT)(ctx, state2, "ThisType", ThisType$0);
17407
17482
  }
17408
- var Shebang$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R92, "Shebang /#![^\\r\\n]*/")), EOL);
17483
+ var Shebang$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R91, "Shebang /#![^\\r\\n]*/")), EOL);
17409
17484
  function Shebang(ctx, state2) {
17410
17485
  return (0, import_lib3.$EVENT)(ctx, state2, "Shebang", Shebang$0);
17411
17486
  }
17412
- var CivetPrologue$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R93, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, (0, import_lib3.$EXPECT)($R20, "CivetPrologue /[ \\t]*/"), (0, import_lib3.$C)(EOL, (0, import_lib3.$Y)(RestOfLine))), function(value) {
17487
+ var CivetPrologue$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R92, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, (0, import_lib3.$EXPECT)($R20, "CivetPrologue /[ \\t]*/"), (0, import_lib3.$C)(EOL, (0, import_lib3.$Y)(RestOfLine))), function(value) {
17413
17488
  var content = value[2];
17414
17489
  return content;
17415
17490
  });
17416
- var CivetPrologue$1 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R93, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, (0, import_lib3.$EXPECT)($R20, "CivetPrologue /[ \\t]*/"), (0, import_lib3.$C)(EOL, (0, import_lib3.$Y)(RestOfLine))), function(value) {
17491
+ var CivetPrologue$1 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R92, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, (0, import_lib3.$EXPECT)($R20, "CivetPrologue /[ \\t]*/"), (0, import_lib3.$C)(EOL, (0, import_lib3.$Y)(RestOfLine))), function(value) {
17417
17492
  var content = value[2];
17418
17493
  return content;
17419
17494
  });
@@ -17421,7 +17496,7 @@ var CivetPrologue$$ = [CivetPrologue$0, CivetPrologue$1];
17421
17496
  function CivetPrologue(ctx, state2) {
17422
17497
  return (0, import_lib3.$EVENT_C)(ctx, state2, "CivetPrologue", CivetPrologue$$);
17423
17498
  }
17424
- var CivetPrologueContent$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L238, 'CivetPrologueContent "civet"'), NonIdContinue, (0, import_lib3.$Q)(CivetOption), (0, import_lib3.$EXPECT)($R94, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
17499
+ var CivetPrologueContent$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($L238, 'CivetPrologueContent "civet"'), NonIdContinue, (0, import_lib3.$Q)(CivetOption), (0, import_lib3.$EXPECT)($R93, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
17425
17500
  var options = $3;
17426
17501
  return {
17427
17502
  type: "CivetPrologue",
@@ -17432,28 +17507,33 @@ var CivetPrologueContent$0 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import
17432
17507
  function CivetPrologueContent(ctx, state2) {
17433
17508
  return (0, import_lib3.$EVENT)(ctx, state2, "CivetPrologueContent", CivetPrologueContent$0);
17434
17509
  }
17435
- var CivetOption$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R95, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
17510
+ var CivetOption$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R94, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([\\p{ID_Continue}.,+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
17436
17511
  const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
17437
17512
  if (l)
17438
17513
  return l.toUpperCase();
17439
17514
  return "";
17440
17515
  });
17441
17516
  let value = $3 ? $4 : $1 === "-" ? false : true;
17442
- if (optionName === "tab") {
17443
- value = parseFloat(value);
17444
- if (isNaN(value))
17445
- value = 0;
17517
+ switch (optionName) {
17518
+ case "tab":
17519
+ value = parseFloat(value);
17520
+ if (isNaN(value))
17521
+ value = 0;
17522
+ break;
17523
+ case "globals":
17524
+ value = value.split(",").filter(Boolean);
17525
+ break;
17446
17526
  }
17447
17527
  return [optionName, value];
17448
17528
  });
17449
17529
  function CivetOption(ctx, state2) {
17450
17530
  return (0, import_lib3.$EVENT)(ctx, state2, "CivetOption", CivetOption$0);
17451
17531
  }
17452
- var UnknownPrologue$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R93, "UnknownPrologue /[\\t ]*/")), StringLiteral, (0, import_lib3.$TEXT)(SimpleStatementDelimiter), EOS);
17532
+ var UnknownPrologue$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R92, "UnknownPrologue /[\\t ]*/")), StringLiteral, (0, import_lib3.$TEXT)(SimpleStatementDelimiter), EOS);
17453
17533
  function UnknownPrologue(ctx, state2) {
17454
17534
  return (0, import_lib3.$EVENT)(ctx, state2, "UnknownPrologue", UnknownPrologue$0);
17455
17535
  }
17456
- var TripleSlashDirective$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R96, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), (0, import_lib3.$E)(EOS));
17536
+ var TripleSlashDirective$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R95, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), (0, import_lib3.$E)(EOS));
17457
17537
  function TripleSlashDirective(ctx, state2) {
17458
17538
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSlashDirective", TripleSlashDirective$0);
17459
17539
  }
@@ -17469,13 +17549,13 @@ var PrologueString$$ = [PrologueString$0, PrologueString$1];
17469
17549
  function PrologueString(ctx, state2) {
17470
17550
  return (0, import_lib3.$EVENT_C)(ctx, state2, "PrologueString", PrologueString$$);
17471
17551
  }
17472
- var EOS$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R97, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), (0, import_lib3.$P)(RestOfLine)), function(value) {
17552
+ var EOS$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R96, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), (0, import_lib3.$P)(RestOfLine)), function(value) {
17473
17553
  return value[1];
17474
17554
  });
17475
17555
  function EOS(ctx, state2) {
17476
17556
  return (0, import_lib3.$EVENT)(ctx, state2, "EOS", EOS$0);
17477
17557
  }
17478
- var EOL$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R98, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
17558
+ var EOL$0 = (0, import_lib3.$TR)((0, import_lib3.$EXPECT)($R97, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
17479
17559
  return { $loc, token: $0 };
17480
17560
  });
17481
17561
  function EOL(ctx, state2) {
@@ -17795,6 +17875,7 @@ var Reset$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L0, 'Reset ""'), fu
17795
17875
  coffeeOf: false,
17796
17876
  coffeePrototype: false,
17797
17877
  defaultElement: "div",
17878
+ globals: [],
17798
17879
  implicitReturns: true,
17799
17880
  jsxCode: false,
17800
17881
  objectIs: false,
@@ -17872,7 +17953,7 @@ var Prologue$0 = (0, import_lib3.$Q)((0, import_lib3.$C)(TripleSlashDirective, (
17872
17953
  function Prologue(ctx, state2) {
17873
17954
  return (0, import_lib3.$EVENT)(ctx, state2, "Prologue", Prologue$0);
17874
17955
  }
17875
- var ProloguePrefix$0 = (0, import_lib3.$S)(Prologue, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R99, "ProloguePrefix /[^]*/")));
17956
+ var ProloguePrefix$0 = (0, import_lib3.$S)(Prologue, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R98, "ProloguePrefix /[^]*/")));
17876
17957
  function ProloguePrefix(ctx, state2) {
17877
17958
  return (0, import_lib3.$EVENT)(ctx, state2, "ProloguePrefix", ProloguePrefix$0);
17878
17959
  }
@@ -18629,6 +18710,9 @@ var makeCache = function({ hits, trace } = {}) {
18629
18710
  }
18630
18711
  const [stateKey, tagKey] = getStateKey();
18631
18712
  const key = [tagKey, stateKey, state2.pos, ruleName];
18713
+ if (result != null) {
18714
+ result = { ...result };
18715
+ }
18632
18716
  stateCache.set(key, result);
18633
18717
  if (getConfig().verbose && result) {
18634
18718
  console.log(`Parsed ${JSON.stringify(state2.input.slice(state2.pos, result.pos))} [pos ${state2.pos}-${result.pos}] as ${ruleName}`);