@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/browser.js CHANGED
@@ -38,9 +38,9 @@ var Civet = (() => {
38
38
  ));
39
39
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
40
40
 
41
- // node_modules/@danielx/hera/dist/machine.js
41
+ // node_modules/.pnpm/@danielx+hera@0.8.16/node_modules/@danielx/hera/dist/machine.js
42
42
  var require_machine = __commonJS({
43
- "node_modules/@danielx/hera/dist/machine.js"(exports, module) {
43
+ "node_modules/.pnpm/@danielx+hera@0.8.16/node_modules/@danielx/hera/dist/machine.js"(exports, module) {
44
44
  "use strict";
45
45
  var __defProp2 = Object.defineProperty;
46
46
  var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
@@ -70,7 +70,7 @@ var Civet = (() => {
70
70
  $N: () => $N2,
71
71
  $P: () => $P2,
72
72
  $Q: () => $Q2,
73
- $R: () => $R100,
73
+ $R: () => $R99,
74
74
  $R$0: () => $R$02,
75
75
  $S: () => $S2,
76
76
  $T: () => $T2,
@@ -107,7 +107,7 @@ var Civet = (() => {
107
107
  return;
108
108
  };
109
109
  }
110
- function $R100(regExp) {
110
+ function $R99(regExp) {
111
111
  return function(_ctx, state2) {
112
112
  const { input, pos } = state2;
113
113
  regExp.lastIndex = state2.pos;
@@ -1094,12 +1094,11 @@ ${body}`;
1094
1094
  ]);
1095
1095
  }
1096
1096
  var typeNeedsNoParens = /* @__PURE__ */ new Set([
1097
- "IdentifierType",
1097
+ "TypeIdentifier",
1098
1098
  "ImportType",
1099
- "LiteralType",
1099
+ "TypeLiteral",
1100
1100
  "TupleType",
1101
- "ParenthesizedType",
1102
- "UnaryType"
1101
+ "TypeParenthesized"
1103
1102
  ]);
1104
1103
  function parenthesizeType(type) {
1105
1104
  if (typeNeedsNoParens.has(type.type)) {
@@ -1589,27 +1588,34 @@ ${body}`;
1589
1588
 
1590
1589
  // source/parser/function.civet
1591
1590
  function isVoidType(t) {
1592
- return t?.type === "LiteralType" && t.t.type === "VoidType";
1591
+ return t?.type === "TypeLiteral" && t.t.type === "VoidType";
1593
1592
  }
1594
1593
  function isPromiseVoidType(t) {
1595
- return t?.type === "IdentifierType" && t.raw === "Promise" && t.args?.types?.length === 1 && isVoidType(t.args.types[0]);
1594
+ return t?.type === "TypeIdentifier" && t.raw === "Promise" && t.args?.types?.length === 1 && isVoidType(t.args.types[0]);
1596
1595
  }
1597
1596
  function isGeneratorVoidType(t) {
1598
- return t?.type === "IdentifierType" && (t.raw === "Iterator" || t.raw === "Generator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1597
+ return t?.type === "TypeIdentifier" && (t.raw === "Iterator" || t.raw === "Generator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1599
1598
  }
1600
1599
  function isAsyncGeneratorVoidType(t) {
1601
- return t?.type === "IdentifierType" && (t.raw === "AsyncIterator" || t.raw === "AsyncGenerator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1600
+ return t?.type === "TypeIdentifier" && (t.raw === "AsyncIterator" || t.raw === "AsyncGenerator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1602
1601
  }
1603
1602
  function implicitFunctionBlock(f) {
1604
1603
  if (f.abstract || f.block || f.signature?.optional)
1605
1604
  return;
1606
1605
  const { name, parent } = f;
1607
- if (parent?.type === "ExportDeclaration")
1608
- return;
1609
- const expressions = parent?.expressions ?? parent?.elements;
1610
- const currentIndex = expressions?.findIndex(([, def]) => def === f);
1611
- const following = currentIndex >= 0 && expressions[currentIndex + 1]?.[1];
1612
- if (f.type === following?.type && name && name === following.name) {
1606
+ let ancestor = parent;
1607
+ let child = f;
1608
+ if (ancestor?.type === "ExportDeclaration") {
1609
+ child = ancestor;
1610
+ ancestor = ancestor.parent;
1611
+ }
1612
+ const expressions = ancestor?.expressions ?? ancestor?.elements;
1613
+ const currentIndex = expressions?.findIndex(([, def]) => def === child);
1614
+ let following = currentIndex >= 0 && expressions[currentIndex + 1]?.[1];
1615
+ if (following?.type === "ExportDeclaration") {
1616
+ following = following.declaration;
1617
+ }
1618
+ if (f.type === following?.type && name != null && name === following.name) {
1613
1619
  f.ts = true;
1614
1620
  } else {
1615
1621
  const block = makeEmptyBlock();
@@ -1789,14 +1795,13 @@ ${body}`;
1789
1795
  if (isExit(exp)) {
1790
1796
  return;
1791
1797
  }
1798
+ exp = exp;
1792
1799
  const outer = exp;
1793
- let { type } = exp;
1794
- if (type === "LabelledStatement") {
1800
+ if (exp.type === "LabelledStatement") {
1795
1801
  exp = exp.statement;
1796
- ({ type } = exp);
1797
1802
  }
1798
1803
  let ref4;
1799
- switch (type) {
1804
+ switch (exp.type) {
1800
1805
  case "BreakStatement":
1801
1806
  case "ContinueStatement":
1802
1807
  case "DebuggerStatement":
@@ -3731,24 +3736,21 @@ ${body}`;
3731
3736
  }
3732
3737
  });
3733
3738
  if (conditions.length) {
3739
+ let children = condition.children;
3734
3740
  if (s.negated) {
3735
3741
  let m;
3736
3742
  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")) {
3737
3743
  throw new Error("Unsupported negated condition");
3738
3744
  }
3739
- const { children } = condition.expression.children[1];
3740
- const close = children.pop();
3741
- conditions.forEach((c) => {
3742
- return children.push(" && ", c);
3743
- });
3744
- children.push(close);
3745
- } else {
3746
- condition.children.unshift("(");
3747
- conditions.forEach((c) => {
3748
- return condition.children.push(" && ", c);
3749
- });
3750
- condition.children.push(")");
3745
+ ;
3746
+ ({ children } = condition.expression.children[1]);
3747
+ }
3748
+ children.unshift("(");
3749
+ for (let i1 = 0, len1 = conditions.length; i1 < len1; i1++) {
3750
+ const c = conditions[i1];
3751
+ children.push(" && ", c);
3751
3752
  }
3753
+ children.push(")");
3752
3754
  }
3753
3755
  }
3754
3756
  const { blockPrefix } = condition.expression;
@@ -3801,9 +3803,6 @@ ${body}`;
3801
3803
  }
3802
3804
  } else {
3803
3805
  const block = blockWithPrefix(blockPrefix, s.then);
3804
- if (block.bare && e && !block.semicolon) {
3805
- block.children.push(block.semicolon = ";");
3806
- }
3807
3806
  s.children = s.children.map(($2) => $2 === s.then ? block : $2);
3808
3807
  s.then = block;
3809
3808
  updateParentPointers(s);
@@ -4446,7 +4445,7 @@ ${body}`;
4446
4445
  }
4447
4446
  case "in": {
4448
4447
  const expRef2 = maybeRef(exp);
4449
- if (expRef2 !== exp) {
4448
+ if (!(expRef2 === exp)) {
4450
4449
  hoistDec = {
4451
4450
  type: "Declaration",
4452
4451
  children: ["let ", expRef2],
@@ -4457,36 +4456,46 @@ ${body}`;
4457
4456
  children: [" ", expRef2, " =", exp]
4458
4457
  };
4459
4458
  }
4460
- let { binding } = declaration;
4461
- if (binding?.type !== "Identifier") {
4459
+ const { binding } = declaration;
4460
+ let { pattern } = binding;
4461
+ if (!(pattern.type === "Identifier")) {
4462
4462
  const keyRef = makeRef("key");
4463
4463
  blockPrefix.push(["", [
4464
4464
  declaration,
4465
4465
  " = ",
4466
4466
  keyRef
4467
4467
  ], ";"]);
4468
+ pattern = keyRef;
4468
4469
  declaration = {
4469
4470
  type: "ForDeclaration",
4470
- binding: binding = keyRef,
4471
+ binding: {
4472
+ type: "Binding",
4473
+ pattern,
4474
+ children: [pattern],
4475
+ names: [],
4476
+ suffix: binding.suffix
4477
+ },
4471
4478
  children: ["const ", keyRef],
4472
4479
  names: []
4473
4480
  };
4474
4481
  }
4475
4482
  if (own) {
4476
4483
  const hasPropRef = getRef("hasProp");
4477
- blockPrefix.push(["", ["if (!", hasPropRef, "(", insertTrimmingSpace(expRef2, ""), ", ", insertTrimmingSpace(binding, ""), ")) continue"], ";"]);
4484
+ blockPrefix.push(["", ["if (!", hasPropRef, "(", insertTrimmingSpace(expRef2, ""), ", ", insertTrimmingSpace(pattern, ""), ")) continue"], ";"]);
4478
4485
  }
4479
4486
  if (decl2) {
4480
4487
  blockPrefix.push(["", {
4481
4488
  type: "Declaration",
4482
- children: [insertTrimmingSpace(ws2, ""), decl2, " = ", insertTrimmingSpace(expRef2, ""), "[", insertTrimmingSpace(binding, ""), "]"],
4489
+ children: [insertTrimmingSpace(ws2, ""), decl2, " = ", insertTrimmingSpace(expRef2, ""), "[", insertTrimmingSpace(pattern, ""), "]"],
4483
4490
  names: decl2.names
4484
4491
  }, ";"]);
4485
4492
  }
4493
+ ;
4486
4494
  break;
4487
4495
  }
4488
- default:
4496
+ default: {
4489
4497
  throw new Error(`for item, index must use 'of' or 'in' instead of '${inOf.token}'`);
4498
+ }
4490
4499
  }
4491
4500
  return {
4492
4501
  declaration,
@@ -4498,11 +4507,12 @@ ${body}`;
4498
4507
  }
4499
4508
 
4500
4509
  // source/parser/auto-dec.civet
4510
+ var concatAssign = (lhs, rhs) => (rhs?.[Symbol.isConcatSpreadable] ?? Array.isArray(rhs) ? lhs.push.apply(lhs, rhs) : lhs.push(rhs), lhs);
4501
4511
  function findDecs(statements) {
4502
- const predicate = ($) => $.type === "Declaration";
4503
- const declarations = gatherNodes(statements, predicate);
4512
+ const declarations = gatherNodes(statements, ($) => $.type === "Declaration");
4504
4513
  const declarationNames = declarations.flatMap((d) => d.names);
4505
- return new Set(declarationNames);
4514
+ const globals = getConfig().globals || [];
4515
+ return new Set(globals.concat(declarationNames));
4506
4516
  }
4507
4517
  function createConstLetDecs(statements, scopes, letOrConst) {
4508
4518
  function findVarDecs(statements2, decs) {
@@ -4513,7 +4523,7 @@ ${body}`;
4513
4523
  }
4514
4524
  let declaredIdentifiers = findVarDecs(statements);
4515
4525
  function hasDec(name) {
4516
- return declaredIdentifiers.has(name) || scopes.some((s) => s.has(name));
4526
+ return declaredIdentifiers.has(name) || scopes.some(($1) => $1.has(name));
4517
4527
  }
4518
4528
  function gatherBlockOrOther(statement) {
4519
4529
  return gatherNodes(statement, (s) => s.type === "BlockStatement" || s.type === "AssignmentExpression" || s.type === "Declaration").flatMap((node) => {
@@ -4584,14 +4594,15 @@ ${body}`;
4584
4594
  }
4585
4595
  function createVarDecs(block, scopes, pushVar) {
4586
4596
  function hasDec(name) {
4587
- return scopes.some((s) => s.has(name));
4597
+ return scopes.some(($2) => $2.has(name));
4588
4598
  }
4589
4599
  function findAssignments(statements2, decs2) {
4590
- let assignmentStatements2 = gatherNodes(statements2, (node) => {
4591
- return node.type === "AssignmentExpression";
4592
- });
4600
+ let assignmentStatements2 = gatherNodes(statements2, ($3) => $3.type === "AssignmentExpression");
4593
4601
  if (assignmentStatements2.length) {
4594
- assignmentStatements2 = assignmentStatements2.concat(findAssignments(assignmentStatements2.map((s) => s.children), decs2));
4602
+ concatAssign(
4603
+ assignmentStatements2,
4604
+ findAssignments(assignmentStatements2.map((s) => s.children), decs2)
4605
+ );
4595
4606
  }
4596
4607
  return assignmentStatements2;
4597
4608
  }
@@ -4606,7 +4617,7 @@ ${body}`;
4606
4617
  scopes.push(decs);
4607
4618
  const varIds = [];
4608
4619
  const assignmentStatements = findAssignments(statements, scopes);
4609
- const undeclaredIdentifiers = assignmentStatements.flatMap(($1) => $1?.names || []);
4620
+ const undeclaredIdentifiers = assignmentStatements.flatMap(($4) => $4?.names || []);
4610
4621
  undeclaredIdentifiers.filter((x, i, a) => {
4611
4622
  if (!hasDec(x))
4612
4623
  return a.indexOf(x) === i;
@@ -5368,7 +5379,7 @@ ${js}`
5368
5379
  function expressionizeTypeIf([ifOp, condition, t, e]) {
5369
5380
  const children = [
5370
5381
  "(",
5371
- insertTrimmingSpace(condition, ""),
5382
+ trimFirstSpace(condition),
5372
5383
  "?"
5373
5384
  ];
5374
5385
  if (!xor(ifOp.negated, condition.negated)) {
@@ -5551,7 +5562,7 @@ ${js}`
5551
5562
  [name, value] = [value, name];
5552
5563
  }
5553
5564
  if (!suppressPrefix) {
5554
- value = prefix.concat(insertTrimmingSpace(value, ""));
5565
+ value = prefix.concat(trimFirstSpace(value));
5555
5566
  }
5556
5567
  if (wValue)
5557
5568
  value.unshift(wValue);
@@ -5777,7 +5788,7 @@ ${js}`
5777
5788
  if (part.name.type === "ComputedPropertyName") {
5778
5789
  rest.push(part);
5779
5790
  } else {
5780
- parts.push([part.name, "={", insertTrimmingSpace(part.value, ""), "}"]);
5791
+ parts.push([part.name, "={", trimFirstSpace(part.value), "}"]);
5781
5792
  }
5782
5793
  break;
5783
5794
  case "SpreadProperty":
@@ -5802,7 +5813,7 @@ ${js}`
5802
5813
  }
5803
5814
  function makeGetterMethod(name, ws, value, returnType, block, kind = { token: "get" }, autoReturn = true) {
5804
5815
  const { token } = kind;
5805
- ws = insertTrimmingSpace(ws, "");
5816
+ ws = trimFirstSpace(ws);
5806
5817
  let setVal;
5807
5818
  const parameters = token === "get" ? {
5808
5819
  type: "Parameters",
@@ -6163,7 +6174,7 @@ ${js}`
6163
6174
  }
6164
6175
  }
6165
6176
  function processTypes(node) {
6166
- return gatherRecursiveAll(node, (n) => n.type === "UnaryType").forEach((unary) => {
6177
+ return gatherRecursiveAll(node, (n) => n.type === "TypeUnary").forEach((unary) => {
6167
6178
  let last;
6168
6179
  let count = 0;
6169
6180
  let ref10;
@@ -6174,6 +6185,12 @@ ${js}`
6174
6185
  if (!count) {
6175
6186
  return;
6176
6187
  }
6188
+ let ref11;
6189
+ if (unary.suffix.length || unary.prefix.length)
6190
+ ref11 = unary;
6191
+ else
6192
+ ref11 = unary.t;
6193
+ const t = ref11;
6177
6194
  if (unary.parent?.type === "TypeTuple") {
6178
6195
  if (count === 1) {
6179
6196
  unary.suffix.push(last);
@@ -6182,18 +6199,22 @@ ${js}`
6182
6199
  replaceNode(unary, [
6183
6200
  getTrimmingSpace(unary),
6184
6201
  "(",
6185
- parenthesizeType(insertTrimmingSpace(unary, "")),
6202
+ parenthesizeType(trimFirstSpace(t)),
6186
6203
  " | null)",
6187
6204
  last
6188
6205
  ]);
6189
6206
  } else {
6190
- replaceNode(unary, [
6191
- getTrimmingSpace(unary),
6192
- "(",
6193
- parenthesizeType(insertTrimmingSpace(unary, "")),
6194
- count === 1 ? " | undefined" : " | undefined | null",
6195
- ")"
6196
- ]);
6207
+ replaceNode(unary, {
6208
+ type: "TypeParenthesized",
6209
+ ts: true,
6210
+ children: [
6211
+ getTrimmingSpace(unary),
6212
+ "(",
6213
+ parenthesizeType(trimFirstSpace(t)),
6214
+ count === 1 ? " | undefined" : " | undefined | null",
6215
+ ")"
6216
+ ]
6217
+ });
6197
6218
  }
6198
6219
  });
6199
6220
  }
@@ -6201,11 +6222,11 @@ ${js}`
6201
6222
  gatherRecursiveAll(statements, ($7) => $7.type === "StatementExpression").forEach((_exp) => {
6202
6223
  const exp = _exp;
6203
6224
  const { statement } = exp;
6204
- let ref11;
6225
+ let ref12;
6205
6226
  switch (statement.type) {
6206
6227
  case "IfStatement": {
6207
- if (ref11 = expressionizeIfStatement(statement)) {
6208
- const expression = ref11;
6228
+ if (ref12 = expressionizeIfStatement(statement)) {
6229
+ const expression = ref12;
6209
6230
  return replaceNode(statement, expression, exp);
6210
6231
  } else {
6211
6232
  return replaceNode(statement, wrapIIFE([["", statement]]), exp);
@@ -6433,8 +6454,8 @@ ${js}`
6433
6454
  for (let i4 = 0, len3 = placeholders.length; i4 < len3; i4++) {
6434
6455
  const placeholder = placeholders[i4];
6435
6456
  typeSuffix ??= placeholder.typeSuffix;
6436
- let ref12;
6437
- replaceNode((ref12 = placeholder.children)[ref12.length - 1], ref);
6457
+ let ref13;
6458
+ replaceNode((ref13 = placeholder.children)[ref13.length - 1], ref);
6438
6459
  }
6439
6460
  const { parent } = ancestor;
6440
6461
  const body = maybeUnwrap(ancestor);
@@ -6451,16 +6472,16 @@ ${js}`
6451
6472
  }
6452
6473
  case "PipelineExpression": {
6453
6474
  const i = findChildIndex(parent, ancestor);
6454
- let ref13;
6475
+ let ref14;
6455
6476
  if (i === 1) {
6456
- ref13 = ancestor === parent.children[i];
6477
+ ref14 = ancestor === parent.children[i];
6457
6478
  } else if (i === 2) {
6458
- ref13 = ancestor === parent.children[i][findChildIndex(parent.children[i], ancestor)][3];
6479
+ ref14 = ancestor === parent.children[i][findChildIndex(parent.children[i], ancestor)][3];
6459
6480
  } else {
6460
- ref13 = void 0;
6481
+ ref14 = void 0;
6461
6482
  }
6462
6483
  ;
6463
- outer = ref13;
6484
+ outer = ref14;
6464
6485
  break;
6465
6486
  }
6466
6487
  case "AssignmentExpression":
@@ -6475,9 +6496,9 @@ ${js}`
6475
6496
  fnExp = makeLeftHandSideExpression(fnExp);
6476
6497
  }
6477
6498
  replaceNode(ancestor, fnExp, parent);
6478
- let ref14;
6479
- if (ref14 = getTrimmingSpace(body)) {
6480
- const ws = ref14;
6499
+ let ref15;
6500
+ if (ref15 = getTrimmingSpace(body)) {
6501
+ const ws = ref15;
6481
6502
  inplaceInsertTrimmingSpace(body, "");
6482
6503
  inplacePrepend(ws, fnExp);
6483
6504
  }
@@ -6522,8 +6543,8 @@ ${js}`
6522
6543
  }
6523
6544
  ];
6524
6545
  }
6525
- let ref15;
6526
- if (Array.isArray(rest.delim) && (ref15 = rest.delim)[ref15.length - 1]?.token === ",") {
6546
+ let ref16;
6547
+ if (Array.isArray(rest.delim) && (ref16 = rest.delim)[ref16.length - 1]?.token === ",") {
6527
6548
  rest.delim = rest.delim.slice(0, -1);
6528
6549
  rest.children = [...rest.children.slice(0, -1), rest.delim];
6529
6550
  }
@@ -7287,6 +7308,7 @@ ${js}`
7287
7308
  NamespaceDeclaration,
7288
7309
  OptionalEquals,
7289
7310
  TypeLexicalDeclaration,
7311
+ TypeLetOrConstDeclaration,
7290
7312
  TypeDeclarationBinding,
7291
7313
  InterfaceExtendsClause,
7292
7314
  InterfaceExtendsTarget,
@@ -7622,47 +7644,47 @@ ${js}`
7622
7644
  var $L172 = (0, import_lib3.$L)("let");
7623
7645
  var $L173 = (0, import_lib3.$L)("const");
7624
7646
  var $L174 = (0, import_lib3.$L)("is");
7625
- var $L175 = (0, import_lib3.$L)("like");
7626
- var $L176 = (0, import_lib3.$L)("loop");
7627
- var $L177 = (0, import_lib3.$L)("new");
7628
- var $L178 = (0, import_lib3.$L)("not");
7629
- var $L179 = (0, import_lib3.$L)("of");
7630
- var $L180 = (0, import_lib3.$L)("[");
7631
- var $L181 = (0, import_lib3.$L)("operator");
7632
- var $L182 = (0, import_lib3.$L)("override");
7633
- var $L183 = (0, import_lib3.$L)("own");
7634
- var $L184 = (0, import_lib3.$L)("public");
7635
- var $L185 = (0, import_lib3.$L)("private");
7636
- var $L186 = (0, import_lib3.$L)("protected");
7637
- var $L187 = (0, import_lib3.$L)("||>");
7638
- var $L188 = (0, import_lib3.$L)("|\u25B7");
7639
- var $L189 = (0, import_lib3.$L)("|>=");
7640
- var $L190 = (0, import_lib3.$L)("\u25B7=");
7641
- var $L191 = (0, import_lib3.$L)("|>");
7642
- var $L192 = (0, import_lib3.$L)("\u25B7");
7643
- var $L193 = (0, import_lib3.$L)("readonly");
7644
- var $L194 = (0, import_lib3.$L)("return");
7645
- var $L195 = (0, import_lib3.$L)("satisfies");
7646
- var $L196 = (0, import_lib3.$L)("'");
7647
- var $L197 = (0, import_lib3.$L)("static");
7648
- var $L198 = (0, import_lib3.$L)("${");
7649
- var $L199 = (0, import_lib3.$L)("super");
7650
- var $L200 = (0, import_lib3.$L)("switch");
7651
- var $L201 = (0, import_lib3.$L)("target");
7652
- var $L202 = (0, import_lib3.$L)("then");
7653
- var $L203 = (0, import_lib3.$L)("this");
7654
- var $L204 = (0, import_lib3.$L)("throw");
7655
- var $L205 = (0, import_lib3.$L)('"""');
7656
- var $L206 = (0, import_lib3.$L)("'''");
7657
- var $L207 = (0, import_lib3.$L)("///");
7658
- var $L208 = (0, import_lib3.$L)("```");
7659
- var $L209 = (0, import_lib3.$L)("try");
7660
- var $L210 = (0, import_lib3.$L)("typeof");
7661
- var $L211 = (0, import_lib3.$L)("undefined");
7662
- var $L212 = (0, import_lib3.$L)("unless");
7663
- var $L213 = (0, import_lib3.$L)("until");
7664
- var $L214 = (0, import_lib3.$L)("using");
7665
- var $L215 = (0, import_lib3.$L)("var");
7647
+ var $L175 = (0, import_lib3.$L)("var");
7648
+ var $L176 = (0, import_lib3.$L)("like");
7649
+ var $L177 = (0, import_lib3.$L)("loop");
7650
+ var $L178 = (0, import_lib3.$L)("new");
7651
+ var $L179 = (0, import_lib3.$L)("not");
7652
+ var $L180 = (0, import_lib3.$L)("of");
7653
+ var $L181 = (0, import_lib3.$L)("[");
7654
+ var $L182 = (0, import_lib3.$L)("operator");
7655
+ var $L183 = (0, import_lib3.$L)("override");
7656
+ var $L184 = (0, import_lib3.$L)("own");
7657
+ var $L185 = (0, import_lib3.$L)("public");
7658
+ var $L186 = (0, import_lib3.$L)("private");
7659
+ var $L187 = (0, import_lib3.$L)("protected");
7660
+ var $L188 = (0, import_lib3.$L)("||>");
7661
+ var $L189 = (0, import_lib3.$L)("|\u25B7");
7662
+ var $L190 = (0, import_lib3.$L)("|>=");
7663
+ var $L191 = (0, import_lib3.$L)("\u25B7=");
7664
+ var $L192 = (0, import_lib3.$L)("|>");
7665
+ var $L193 = (0, import_lib3.$L)("\u25B7");
7666
+ var $L194 = (0, import_lib3.$L)("readonly");
7667
+ var $L195 = (0, import_lib3.$L)("return");
7668
+ var $L196 = (0, import_lib3.$L)("satisfies");
7669
+ var $L197 = (0, import_lib3.$L)("'");
7670
+ var $L198 = (0, import_lib3.$L)("static");
7671
+ var $L199 = (0, import_lib3.$L)("${");
7672
+ var $L200 = (0, import_lib3.$L)("super");
7673
+ var $L201 = (0, import_lib3.$L)("switch");
7674
+ var $L202 = (0, import_lib3.$L)("target");
7675
+ var $L203 = (0, import_lib3.$L)("then");
7676
+ var $L204 = (0, import_lib3.$L)("this");
7677
+ var $L205 = (0, import_lib3.$L)("throw");
7678
+ var $L206 = (0, import_lib3.$L)('"""');
7679
+ var $L207 = (0, import_lib3.$L)("'''");
7680
+ var $L208 = (0, import_lib3.$L)("///");
7681
+ var $L209 = (0, import_lib3.$L)("```");
7682
+ var $L210 = (0, import_lib3.$L)("try");
7683
+ var $L211 = (0, import_lib3.$L)("typeof");
7684
+ var $L212 = (0, import_lib3.$L)("undefined");
7685
+ var $L213 = (0, import_lib3.$L)("unless");
7686
+ var $L214 = (0, import_lib3.$L)("until");
7687
+ var $L215 = (0, import_lib3.$L)("using");
7666
7688
  var $L216 = (0, import_lib3.$L)("void");
7667
7689
  var $L217 = (0, import_lib3.$L)("when");
7668
7690
  var $L218 = (0, import_lib3.$L)("while");
@@ -7717,75 +7739,74 @@ ${js}`
7717
7739
  var $R28 = (0, import_lib3.$R)(new RegExp("[:.]", "suy"));
7718
7740
  var $R29 = (0, import_lib3.$R)(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
7719
7741
  var $R30 = (0, import_lib3.$R)(new RegExp("(?=loop|comptime|do|for|until|while)", "suy"));
7720
- var $R31 = (0, import_lib3.$R)(new RegExp("(?=[\\s\\),])", "suy"));
7721
- var $R32 = (0, import_lib3.$R)(new RegExp('[^;"\\s]+', "suy"));
7722
- var $R33 = (0, import_lib3.$R)(new RegExp("(?=[0-9.])", "suy"));
7723
- var $R34 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
7724
- var $R35 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
7725
- var $R36 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
7726
- var $R37 = (0, import_lib3.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
7727
- var $R38 = (0, import_lib3.$R)(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
7728
- var $R39 = (0, import_lib3.$R)(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
7729
- var $R40 = (0, import_lib3.$R)(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
7730
- var $R41 = (0, import_lib3.$R)(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
7731
- var $R42 = (0, import_lib3.$R)(new RegExp("(?=[0-9])", "suy"));
7732
- var $R43 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
7733
- var $R44 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|[^"])*', "suy"));
7734
- var $R45 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^'])*", "suy"));
7735
- var $R46 = (0, import_lib3.$R)(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
7736
- var $R47 = (0, import_lib3.$R)(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
7737
- var $R48 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
7738
- var $R49 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
7739
- var $R50 = (0, import_lib3.$R)(new RegExp("(?:\\\\.)", "suy"));
7740
- var $R51 = (0, import_lib3.$R)(new RegExp("[\\s]+", "suy"));
7741
- var $R52 = (0, import_lib3.$R)(new RegExp("\\/(?!\\/\\/)", "suy"));
7742
- var $R53 = (0, import_lib3.$R)(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
7743
- var $R54 = (0, import_lib3.$R)(new RegExp("[*\\/\\r\\n]", "suy"));
7744
- var $R55 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
7745
- var $R56 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
7746
- var $R57 = (0, import_lib3.$R)(new RegExp("(?=[`'\"])", "suy"));
7747
- var $R58 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
7748
- var $R59 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
7749
- var $R60 = (0, import_lib3.$R)(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
7750
- var $R61 = (0, import_lib3.$R)(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
7751
- var $R62 = (0, import_lib3.$R)(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
7752
- var $R63 = (0, import_lib3.$R)(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
7753
- 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"));
7754
- var $R65 = (0, import_lib3.$R)(new RegExp("(?=\\/|#)", "suy"));
7755
- var $R66 = (0, import_lib3.$R)(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
7756
- var $R67 = (0, import_lib3.$R)(new RegExp(".", "suy"));
7757
- var $R68 = (0, import_lib3.$R)(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
7758
- var $R69 = (0, import_lib3.$R)(new RegExp("[^]*?###", "suy"));
7759
- var $R70 = (0, import_lib3.$R)(new RegExp("###(?!#)", "suy"));
7760
- var $R71 = (0, import_lib3.$R)(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
7761
- var $R72 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
7762
- var $R73 = (0, import_lib3.$R)(new RegExp("(?=\\s|\\/|#)", "suy"));
7763
- var $R74 = (0, import_lib3.$R)(new RegExp("(?!\\p{ID_Continue})", "suy"));
7764
- var $R75 = (0, import_lib3.$R)(new RegExp("[=:]", "suy"));
7765
- var $R76 = (0, import_lib3.$R)(new RegExp("['\u2019]s", "suy"));
7766
- var $R77 = (0, import_lib3.$R)(new RegExp("\\s", "suy"));
7767
- var $R78 = (0, import_lib3.$R)(new RegExp("(?=[<])", "suy"));
7768
- var $R79 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
7769
- var $R80 = (0, import_lib3.$R)(new RegExp("[!+-]", "suy"));
7770
- var $R81 = (0, import_lib3.$R)(new RegExp("[\\s>]|\\/>", "suy"));
7771
- var $R82 = (0, import_lib3.$R)(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
7772
- var $R83 = (0, import_lib3.$R)(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
7773
- var $R84 = (0, import_lib3.$R)(new RegExp("[<>]", "suy"));
7774
- var $R85 = (0, import_lib3.$R)(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
7775
- var $R86 = (0, import_lib3.$R)(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
7776
- var $R87 = (0, import_lib3.$R)(new RegExp("[^{}<>\\r\\n]+", "suy"));
7777
- var $R88 = (0, import_lib3.$R)(new RegExp("[+-]?", "suy"));
7778
- var $R89 = (0, import_lib3.$R)(new RegExp("(?=if|unless)", "suy"));
7779
- var $R90 = (0, import_lib3.$R)(new RegExp("[|&<!=\\-\u21D2\u2192]", "suy"));
7780
- var $R91 = (0, import_lib3.$R)(new RegExp("(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
7781
- var $R92 = (0, import_lib3.$R)(new RegExp("#![^\\r\\n]*", "suy"));
7782
- var $R93 = (0, import_lib3.$R)(new RegExp("[\\t ]*", "suy"));
7783
- var $R94 = (0, import_lib3.$R)(new RegExp("[\\s]*", "suy"));
7784
- var $R95 = (0, import_lib3.$R)(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
7785
- var $R96 = (0, import_lib3.$R)(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
7786
- var $R97 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
7787
- var $R98 = (0, import_lib3.$R)(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
7788
- var $R99 = (0, import_lib3.$R)(new RegExp("[^]*", "suy"));
7742
+ var $R31 = (0, import_lib3.$R)(new RegExp('[^;"\\s]+', "suy"));
7743
+ var $R32 = (0, import_lib3.$R)(new RegExp("(?=[0-9.])", "suy"));
7744
+ var $R33 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
7745
+ var $R34 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
7746
+ var $R35 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
7747
+ var $R36 = (0, import_lib3.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
7748
+ var $R37 = (0, import_lib3.$R)(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
7749
+ var $R38 = (0, import_lib3.$R)(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
7750
+ var $R39 = (0, import_lib3.$R)(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
7751
+ var $R40 = (0, import_lib3.$R)(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
7752
+ var $R41 = (0, import_lib3.$R)(new RegExp("(?=[0-9])", "suy"));
7753
+ var $R42 = (0, import_lib3.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
7754
+ var $R43 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|[^"])*', "suy"));
7755
+ var $R44 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^'])*", "suy"));
7756
+ var $R45 = (0, import_lib3.$R)(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
7757
+ var $R46 = (0, import_lib3.$R)(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
7758
+ var $R47 = (0, import_lib3.$R)(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
7759
+ var $R48 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
7760
+ var $R49 = (0, import_lib3.$R)(new RegExp("(?:\\\\.)", "suy"));
7761
+ var $R50 = (0, import_lib3.$R)(new RegExp("[\\s]+", "suy"));
7762
+ var $R51 = (0, import_lib3.$R)(new RegExp("\\/(?!\\/\\/)", "suy"));
7763
+ var $R52 = (0, import_lib3.$R)(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
7764
+ var $R53 = (0, import_lib3.$R)(new RegExp("[*\\/\\r\\n]", "suy"));
7765
+ var $R54 = (0, import_lib3.$R)(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
7766
+ var $R55 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
7767
+ var $R56 = (0, import_lib3.$R)(new RegExp("(?=[`'\"])", "suy"));
7768
+ var $R57 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
7769
+ var $R58 = (0, import_lib3.$R)(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
7770
+ var $R59 = (0, import_lib3.$R)(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
7771
+ var $R60 = (0, import_lib3.$R)(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
7772
+ var $R61 = (0, import_lib3.$R)(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
7773
+ var $R62 = (0, import_lib3.$R)(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
7774
+ 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"));
7775
+ var $R64 = (0, import_lib3.$R)(new RegExp("(?=\\/|#)", "suy"));
7776
+ var $R65 = (0, import_lib3.$R)(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
7777
+ var $R66 = (0, import_lib3.$R)(new RegExp(".", "suy"));
7778
+ var $R67 = (0, import_lib3.$R)(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
7779
+ var $R68 = (0, import_lib3.$R)(new RegExp("[^]*?###", "suy"));
7780
+ var $R69 = (0, import_lib3.$R)(new RegExp("###(?!#)", "suy"));
7781
+ var $R70 = (0, import_lib3.$R)(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
7782
+ var $R71 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
7783
+ var $R72 = (0, import_lib3.$R)(new RegExp("(?=\\s|\\/|#)", "suy"));
7784
+ var $R73 = (0, import_lib3.$R)(new RegExp("(?!\\p{ID_Continue})", "suy"));
7785
+ var $R74 = (0, import_lib3.$R)(new RegExp("[=:]", "suy"));
7786
+ var $R75 = (0, import_lib3.$R)(new RegExp("['\u2019]s", "suy"));
7787
+ var $R76 = (0, import_lib3.$R)(new RegExp("\\s", "suy"));
7788
+ var $R77 = (0, import_lib3.$R)(new RegExp("(?=[<])", "suy"));
7789
+ var $R78 = (0, import_lib3.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
7790
+ var $R79 = (0, import_lib3.$R)(new RegExp("[!+-]", "suy"));
7791
+ var $R80 = (0, import_lib3.$R)(new RegExp("[\\s>]|\\/>", "suy"));
7792
+ var $R81 = (0, import_lib3.$R)(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
7793
+ var $R82 = (0, import_lib3.$R)(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
7794
+ var $R83 = (0, import_lib3.$R)(new RegExp("[<>]", "suy"));
7795
+ var $R84 = (0, import_lib3.$R)(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
7796
+ var $R85 = (0, import_lib3.$R)(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
7797
+ var $R86 = (0, import_lib3.$R)(new RegExp("[^{}<>\\r\\n]+", "suy"));
7798
+ var $R87 = (0, import_lib3.$R)(new RegExp("[+-]?", "suy"));
7799
+ var $R88 = (0, import_lib3.$R)(new RegExp("(?=if|unless)", "suy"));
7800
+ var $R89 = (0, import_lib3.$R)(new RegExp("[|&<!=\\-\u21D2\u2192]", "suy"));
7801
+ var $R90 = (0, import_lib3.$R)(new RegExp("(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
7802
+ var $R91 = (0, import_lib3.$R)(new RegExp("#![^\\r\\n]*", "suy"));
7803
+ var $R92 = (0, import_lib3.$R)(new RegExp("[\\t ]*", "suy"));
7804
+ var $R93 = (0, import_lib3.$R)(new RegExp("[\\s]*", "suy"));
7805
+ var $R94 = (0, import_lib3.$R)(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([\\p{ID_Continue}.,+-]*))?", "suy"));
7806
+ var $R95 = (0, import_lib3.$R)(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
7807
+ var $R96 = (0, import_lib3.$R)(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
7808
+ var $R97 = (0, import_lib3.$R)(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
7809
+ var $R98 = (0, import_lib3.$R)(new RegExp("[^]*", "suy"));
7789
7810
  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) {
7790
7811
  var reset = $1;
7791
7812
  var init = $2;
@@ -9612,17 +9633,24 @@ ${js}`
9612
9633
  function Parameters(ctx, state2) {
9613
9634
  return (0, import_lib3.$EVENT_C)(ctx, state2, "Parameters", Parameters$$);
9614
9635
  }
9615
- var ShortArrowParameters$0 = ObjectBindingPattern;
9616
- var ShortArrowParameters$1 = ArrayBindingPattern;
9617
- var ShortArrowParameters$$ = [ShortArrowParameters$0, ShortArrowParameters$1];
9636
+ var ShortArrowParameters$0 = (0, import_lib3.$TV)((0, import_lib3.$C)(ObjectBindingPattern, ArrayBindingPattern), function($skip, $loc, $0, $1) {
9637
+ var binding = $0;
9638
+ const { typeSuffix } = binding;
9639
+ return {
9640
+ type: "Parameter",
9641
+ children: [binding, typeSuffix],
9642
+ names: binding.names,
9643
+ typeSuffix
9644
+ };
9645
+ });
9618
9646
  function ShortArrowParameters(ctx, state2) {
9619
- return (0, import_lib3.$EVENT_C)(ctx, state2, "ShortArrowParameters", ShortArrowParameters$$);
9647
+ return (0, import_lib3.$EVENT)(ctx, state2, "ShortArrowParameters", ShortArrowParameters$0);
9620
9648
  }
9621
9649
  var ArrowParameters$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(ShortArrowParameters), function($skip, $loc, $0, $1) {
9622
9650
  return {
9623
9651
  type: "Parameters",
9624
- children: ["(", $0, ")"],
9625
- names: $0.names
9652
+ children: ["(", $1, ")"],
9653
+ names: $1.names
9626
9654
  };
9627
9655
  });
9628
9656
  var ArrowParameters$1 = Parameters;
@@ -12711,6 +12739,14 @@ ${js}`
12711
12739
  kind = { ...kind, token: "if" };
12712
12740
  condition = negateCondition(condition);
12713
12741
  }
12742
+ if (block.bare && e) {
12743
+ const semicolon = ";";
12744
+ block = {
12745
+ ...block,
12746
+ semicolon,
12747
+ children: [...block.children, semicolon]
12748
+ };
12749
+ }
12714
12750
  return {
12715
12751
  type: "IfStatement",
12716
12752
  children: [kind, ws, condition, block, e],
@@ -12724,6 +12760,13 @@ ${js}`
12724
12760
  var clause = $1;
12725
12761
  var block = $2;
12726
12762
  var e = $3;
12763
+ if (block.bare && e) {
12764
+ block = {
12765
+ ...block,
12766
+ semicolon: ";",
12767
+ children: [...block.children, ";"]
12768
+ };
12769
+ }
12727
12770
  return {
12728
12771
  type: "IfStatement",
12729
12772
  children: [...clause.children, block, e],
@@ -13146,23 +13189,13 @@ ${js}`
13146
13189
  function ForRangeParameters(ctx, state2) {
13147
13190
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForRangeParameters", ForRangeParameters$$);
13148
13191
  }
13149
- var ForInOfDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(Var, ForBinding), function($skip, $loc, $0, $1, $2) {
13150
- var binding = $2;
13151
- return {
13152
- type: "ForDeclaration",
13153
- children: $0,
13154
- declare: $1,
13155
- binding,
13156
- names: binding.names
13157
- };
13158
- });
13159
- var ForInOfDeclaration$1 = ForDeclaration;
13160
- var ForInOfDeclaration$2 = LeftHandSideExpression;
13161
- var ForInOfDeclaration$$ = [ForInOfDeclaration$0, ForInOfDeclaration$1, ForInOfDeclaration$2];
13192
+ var ForInOfDeclaration$0 = ForDeclaration;
13193
+ var ForInOfDeclaration$1 = LeftHandSideExpression;
13194
+ var ForInOfDeclaration$$ = [ForInOfDeclaration$0, ForInOfDeclaration$1];
13162
13195
  function ForInOfDeclaration(ctx, state2) {
13163
13196
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForInOfDeclaration", ForInOfDeclaration$$);
13164
13197
  }
13165
- var ForDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(LetOrConst, ForBinding), function($skip, $loc, $0, $1, $2) {
13198
+ var ForDeclaration$0 = (0, import_lib3.$TS)((0, import_lib3.$S)(LetOrConstOrVar, ForBinding), function($skip, $loc, $0, $1, $2) {
13166
13199
  var c = $1;
13167
13200
  var binding = $2;
13168
13201
  return {
@@ -13173,9 +13206,9 @@ ${js}`
13173
13206
  names: binding.names
13174
13207
  };
13175
13208
  });
13176
- 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) {
13209
+ 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) {
13177
13210
  var c = $1;
13178
- var binding = $2;
13211
+ var binding = $3;
13179
13212
  return {
13180
13213
  type: "ForDeclaration",
13181
13214
  children: [c, binding],
@@ -13188,11 +13221,22 @@ ${js}`
13188
13221
  function ForDeclaration(ctx, state2) {
13189
13222
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForDeclaration", ForDeclaration$$);
13190
13223
  }
13191
- var ForBinding$0 = BindingIdentifier;
13192
- var ForBinding$1 = BindingPattern;
13193
- var ForBinding$$ = [ForBinding$0, ForBinding$1];
13224
+ 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) {
13225
+ var pattern = $1;
13226
+ var suffix = $2;
13227
+ suffix ??= pattern.typeSuffix;
13228
+ return {
13229
+ type: "Binding",
13230
+ children: [pattern, suffix],
13231
+ names: pattern.names,
13232
+ pattern,
13233
+ suffix,
13234
+ splices: [],
13235
+ thisAssignments: []
13236
+ };
13237
+ });
13194
13238
  function ForBinding(ctx, state2) {
13195
- return (0, import_lib3.$EVENT_C)(ctx, state2, "ForBinding", ForBinding$$);
13239
+ return (0, import_lib3.$EVENT)(ctx, state2, "ForBinding", ForBinding$0);
13196
13240
  }
13197
13241
  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) {
13198
13242
  var condition = $2;
@@ -14123,7 +14167,7 @@ ${js}`
14123
14167
  function UnprocessedModuleSpecifier(ctx, state2) {
14124
14168
  return (0, import_lib3.$EVENT_C)(ctx, state2, "UnprocessedModuleSpecifier", UnprocessedModuleSpecifier$$);
14125
14169
  }
14126
- var UnquotedSpecifier$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($R32, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
14170
+ var UnquotedSpecifier$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($R31, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
14127
14171
  var spec = $0;
14128
14172
  return { $loc, token: `"${spec}"` };
14129
14173
  });
@@ -14382,7 +14426,7 @@ ${js}`
14382
14426
  function VariableDeclarationList(ctx, state2) {
14383
14427
  return (0, import_lib3.$EVENT)(ctx, state2, "VariableDeclarationList", VariableDeclarationList$0);
14384
14428
  }
14385
- 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) {
14429
+ 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) {
14386
14430
  var token = $2;
14387
14431
  return { type: "NumericLiteral", $loc, token };
14388
14432
  });
@@ -14398,36 +14442,36 @@ ${js}`
14398
14442
  function NumericLiteralKind(ctx, state2) {
14399
14443
  return (0, import_lib3.$EVENT_C)(ctx, state2, "NumericLiteralKind", NumericLiteralKind$$);
14400
14444
  }
14401
- var DecimalBigIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R34, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
14445
+ var DecimalBigIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R33, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
14402
14446
  function DecimalBigIntegerLiteral(ctx, state2) {
14403
14447
  return (0, import_lib3.$EVENT)(ctx, state2, "DecimalBigIntegerLiteral", DecimalBigIntegerLiteral$0);
14404
14448
  }
14405
- 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) {
14449
+ 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) {
14406
14450
  return $1 + ".";
14407
14451
  });
14408
- 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)));
14409
- 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)));
14452
+ 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)));
14453
+ 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)));
14410
14454
  var DecimalLiteral$$ = [DecimalLiteral$0, DecimalLiteral$1, DecimalLiteral$2];
14411
14455
  function DecimalLiteral(ctx, state2) {
14412
14456
  return (0, import_lib3.$EVENT_C)(ctx, state2, "DecimalLiteral", DecimalLiteral$$);
14413
14457
  }
14414
- var ExponentPart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R38, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
14458
+ var ExponentPart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R37, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
14415
14459
  function ExponentPart(ctx, state2) {
14416
14460
  return (0, import_lib3.$EVENT)(ctx, state2, "ExponentPart", ExponentPart$0);
14417
14461
  }
14418
- var BinaryIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R39, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
14462
+ var BinaryIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R38, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
14419
14463
  function BinaryIntegerLiteral(ctx, state2) {
14420
14464
  return (0, import_lib3.$EVENT)(ctx, state2, "BinaryIntegerLiteral", BinaryIntegerLiteral$0);
14421
14465
  }
14422
- var OctalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R40, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
14466
+ var OctalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R39, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
14423
14467
  function OctalIntegerLiteral(ctx, state2) {
14424
14468
  return (0, import_lib3.$EVENT)(ctx, state2, "OctalIntegerLiteral", OctalIntegerLiteral$0);
14425
14469
  }
14426
- 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?/"));
14470
+ 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?/"));
14427
14471
  function HexIntegerLiteral(ctx, state2) {
14428
14472
  return (0, import_lib3.$EVENT)(ctx, state2, "HexIntegerLiteral", HexIntegerLiteral$0);
14429
14473
  }
14430
- 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) {
14474
+ 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) {
14431
14475
  var token = $2;
14432
14476
  return { $loc, token };
14433
14477
  });
@@ -14443,7 +14487,7 @@ ${js}`
14443
14487
  function IntegerLiteralKind(ctx, state2) {
14444
14488
  return (0, import_lib3.$EVENT_C)(ctx, state2, "IntegerLiteralKind", IntegerLiteralKind$$);
14445
14489
  }
14446
- var DecimalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R43, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
14490
+ var DecimalIntegerLiteral$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R42, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
14447
14491
  function DecimalIntegerLiteral(ctx, state2) {
14448
14492
  return (0, import_lib3.$EVENT)(ctx, state2, "DecimalIntegerLiteral", DecimalIntegerLiteral$0);
14449
14493
  }
@@ -14467,25 +14511,25 @@ ${js}`
14467
14511
  function StringLiteral(ctx, state2) {
14468
14512
  return (0, import_lib3.$EVENT_C)(ctx, state2, "StringLiteral", StringLiteral$$);
14469
14513
  }
14470
- 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) {
14514
+ 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) {
14471
14515
  return { $loc, token: $0 };
14472
14516
  });
14473
14517
  function DoubleStringCharacters(ctx, state2) {
14474
14518
  return (0, import_lib3.$EVENT)(ctx, state2, "DoubleStringCharacters", DoubleStringCharacters$0);
14475
14519
  }
14476
- 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) {
14520
+ 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) {
14477
14521
  return { $loc, token: $0 };
14478
14522
  });
14479
14523
  function SingleStringCharacters(ctx, state2) {
14480
14524
  return (0, import_lib3.$EVENT)(ctx, state2, "SingleStringCharacters", SingleStringCharacters$0);
14481
14525
  }
14482
- 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) {
14526
+ 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) {
14483
14527
  return { $loc, token: $0 };
14484
14528
  });
14485
14529
  function TripleDoubleStringCharacters(ctx, state2) {
14486
14530
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleDoubleStringCharacters", TripleDoubleStringCharacters$0);
14487
14531
  }
14488
- 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) {
14532
+ 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) {
14489
14533
  return { $loc, token: $0 };
14490
14534
  });
14491
14535
  function TripleSingleStringCharacters(ctx, state2) {
@@ -14508,7 +14552,7 @@ ${js}`
14508
14552
  function CoffeeInterpolatedDoubleQuotedString(ctx, state2) {
14509
14553
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeInterpolatedDoubleQuotedString", CoffeeInterpolatedDoubleQuotedString$0);
14510
14554
  }
14511
- 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) {
14555
+ 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) {
14512
14556
  return { $loc, token: $0 };
14513
14557
  });
14514
14558
  function CoffeeDoubleQuotedStringCharacters(ctx, state2) {
@@ -14528,7 +14572,7 @@ ${js}`
14528
14572
  function RegularExpressionClass(ctx, state2) {
14529
14573
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionClass", RegularExpressionClass$0);
14530
14574
  }
14531
- 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) {
14575
+ 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) {
14532
14576
  return { $loc, token: $0 };
14533
14577
  });
14534
14578
  function RegularExpressionClassCharacters(ctx, state2) {
@@ -14585,7 +14629,7 @@ ${js}`
14585
14629
  var HeregexPart$2 = (0, import_lib3.$T)((0, import_lib3.$S)(TemplateSubstitution), function(value) {
14586
14630
  return { "type": "Substitution", "children": value[0] };
14587
14631
  });
14588
- 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) {
14632
+ 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) {
14589
14633
  let token = $0;
14590
14634
  switch ($0[1]) {
14591
14635
  case "\n":
@@ -14603,13 +14647,13 @@ ${js}`
14603
14647
  var HeregexPart$4 = (0, import_lib3.$TS)((0, import_lib3.$S)(HeregexComment), function($skip, $loc, $0, $1) {
14604
14648
  return { $loc, token: "" };
14605
14649
  });
14606
- 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) {
14650
+ 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) {
14607
14651
  return { $loc, token: "" };
14608
14652
  });
14609
- 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) {
14653
+ 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) {
14610
14654
  return { $loc, token: "\\/" };
14611
14655
  });
14612
- 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) {
14656
+ 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) {
14613
14657
  return { $loc, token: $0 };
14614
14658
  });
14615
14659
  var HeregexPart$$ = [HeregexPart$0, HeregexPart$1, HeregexPart$2, HeregexPart$3, HeregexPart$4, HeregexPart$5, HeregexPart$6, HeregexPart$7];
@@ -14622,7 +14666,7 @@ ${js}`
14622
14666
  function HeregexComment(ctx, state2) {
14623
14667
  return (0, import_lib3.$EVENT_C)(ctx, state2, "HeregexComment", HeregexComment$$);
14624
14668
  }
14625
- 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));
14669
+ 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));
14626
14670
  function RegularExpressionBody(ctx, state2) {
14627
14671
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionBody", RegularExpressionBody$0);
14628
14672
  }
@@ -14632,15 +14676,15 @@ ${js}`
14632
14676
  function RegExpPart(ctx, state2) {
14633
14677
  return (0, import_lib3.$EVENT_C)(ctx, state2, "RegExpPart", RegExpPart$$);
14634
14678
  }
14635
- var RegExpCharacter$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R55, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
14679
+ var RegExpCharacter$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R54, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
14636
14680
  function RegExpCharacter(ctx, state2) {
14637
14681
  return (0, import_lib3.$EVENT)(ctx, state2, "RegExpCharacter", RegExpCharacter$0);
14638
14682
  }
14639
- var RegularExpressionFlags$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R56, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
14683
+ var RegularExpressionFlags$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R55, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
14640
14684
  function RegularExpressionFlags(ctx, state2) {
14641
14685
  return (0, import_lib3.$EVENT)(ctx, state2, "RegularExpressionFlags", RegularExpressionFlags$0);
14642
14686
  }
14643
- var TemplateLiteral$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R57, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
14687
+ var TemplateLiteral$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R56, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
14644
14688
  return value[1];
14645
14689
  });
14646
14690
  function TemplateLiteral(ctx, state2) {
@@ -14680,28 +14724,28 @@ ${js}`
14680
14724
  function TemplateSubstitution(ctx, state2) {
14681
14725
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateSubstitution", TemplateSubstitution$0);
14682
14726
  }
14683
- 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) {
14727
+ 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) {
14684
14728
  return { $loc, token: $0 };
14685
14729
  });
14686
14730
  function TemplateCharacters(ctx, state2) {
14687
14731
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateCharacters", TemplateCharacters$0);
14688
14732
  }
14689
- 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) {
14733
+ 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) {
14690
14734
  return { $loc, token: $0 };
14691
14735
  });
14692
14736
  function TemplateBlockCharacters(ctx, state2) {
14693
14737
  return (0, import_lib3.$EVENT)(ctx, state2, "TemplateBlockCharacters", TemplateBlockCharacters$0);
14694
14738
  }
14695
- 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);
14696
- var ReservedWord$1 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R61, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
14697
- var ReservedWord$2 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R62, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
14698
- var ReservedWord$3 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R63, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
14699
- 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})/"));
14739
+ 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);
14740
+ var ReservedWord$1 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R60, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
14741
+ var ReservedWord$2 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R61, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
14742
+ var ReservedWord$3 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R62, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
14743
+ 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})/"));
14700
14744
  var ReservedWord$$ = [ReservedWord$0, ReservedWord$1, ReservedWord$2, ReservedWord$3, ReservedWord$4];
14701
14745
  function ReservedWord(ctx, state2) {
14702
14746
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ReservedWord", ReservedWord$$);
14703
14747
  }
14704
- var Comment$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R65, "Comment /(?=\\/|#)/"), _Comment), function(value) {
14748
+ var Comment$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R64, "Comment /(?=\\/|#)/"), _Comment), function(value) {
14705
14749
  return value[1];
14706
14750
  });
14707
14751
  function Comment(ctx, state2) {
@@ -14719,7 +14763,7 @@ ${js}`
14719
14763
  function SingleLineComment(ctx, state2) {
14720
14764
  return (0, import_lib3.$EVENT_C)(ctx, state2, "SingleLineComment", SingleLineComment$$);
14721
14765
  }
14722
- 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) {
14766
+ 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) {
14723
14767
  return { type: "Comment", $loc, token: $0 };
14724
14768
  });
14725
14769
  function JSSingleLineComment(ctx, state2) {
@@ -14731,30 +14775,30 @@ ${js}`
14731
14775
  function MultiLineComment(ctx, state2) {
14732
14776
  return (0, import_lib3.$EVENT_C)(ctx, state2, "MultiLineComment", MultiLineComment$$);
14733
14777
  }
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)($R67, "JSMultiLineComment /./"))), (0, import_lib3.$EXPECT)($L131, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
14778
+ 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) {
14735
14779
  return { type: "Comment", $loc, token: $1 };
14736
14780
  });
14737
14781
  function JSMultiLineComment(ctx, state2) {
14738
14782
  return (0, import_lib3.$EVENT)(ctx, state2, "JSMultiLineComment", JSMultiLineComment$0);
14739
14783
  }
14740
- 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) {
14784
+ 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) {
14741
14785
  return { type: "Comment", $loc, token: `//${$1}` };
14742
14786
  });
14743
14787
  function CoffeeSingleLineComment(ctx, state2) {
14744
14788
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeSingleLineComment", CoffeeSingleLineComment$0);
14745
14789
  }
14746
- 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) {
14790
+ 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) {
14747
14791
  $2 = $2.slice(0, $2.length - 3).replace(/\*\//g, "* /");
14748
14792
  return { type: "Comment", $loc, token: `/*${$2}*/` };
14749
14793
  });
14750
14794
  function CoffeeMultiLineComment(ctx, state2) {
14751
14795
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeMultiLineComment", CoffeeMultiLineComment$0);
14752
14796
  }
14753
- var CoffeeHereCommentStart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R70, "CoffeeHereCommentStart /###(?!#)/"));
14797
+ var CoffeeHereCommentStart$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R69, "CoffeeHereCommentStart /###(?!#)/"));
14754
14798
  function CoffeeHereCommentStart(ctx, state2) {
14755
14799
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
14756
14800
  }
14757
- 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) {
14801
+ 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) {
14758
14802
  return { $loc, token: $0 };
14759
14803
  });
14760
14804
  function InlineComment(ctx, state2) {
@@ -14768,7 +14812,7 @@ ${js}`
14768
14812
  function TrailingComment(ctx, state2) {
14769
14813
  return (0, import_lib3.$EVENT)(ctx, state2, "TrailingComment", TrailingComment$0);
14770
14814
  }
14771
- 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) {
14815
+ 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) {
14772
14816
  return value[1];
14773
14817
  });
14774
14818
  function _(ctx, state2) {
@@ -14791,7 +14835,7 @@ ${js}`
14791
14835
  function Trimmed_(ctx, state2) {
14792
14836
  return (0, import_lib3.$EVENT)(ctx, state2, "Trimmed_", Trimmed_$0);
14793
14837
  }
14794
- 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) {
14838
+ 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) {
14795
14839
  return value[1];
14796
14840
  });
14797
14841
  var __$1 = (0, import_lib3.$EXPECT)($L0, '__ ""');
@@ -14799,7 +14843,7 @@ ${js}`
14799
14843
  function __(ctx, state2) {
14800
14844
  return (0, import_lib3.$EVENT_C)(ctx, state2, "__", __$$);
14801
14845
  }
14802
- 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) {
14846
+ 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) {
14803
14847
  return { $loc, token: $0 };
14804
14848
  });
14805
14849
  function Whitespace(ctx, state2) {
@@ -14837,7 +14881,7 @@ ${js}`
14837
14881
  function SemicolonDelimiter(ctx, state2) {
14838
14882
  return (0, import_lib3.$EVENT)(ctx, state2, "SemicolonDelimiter", SemicolonDelimiter$0);
14839
14883
  }
14840
- var NonIdContinue$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R74, "NonIdContinue /(?!\\p{ID_Continue})/"));
14884
+ var NonIdContinue$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R73, "NonIdContinue /(?!\\p{ID_Continue})/"));
14841
14885
  function NonIdContinue(ctx, state2) {
14842
14886
  return (0, import_lib3.$EVENT)(ctx, state2, "NonIdContinue", NonIdContinue$0);
14843
14887
  }
@@ -14955,7 +14999,7 @@ ${js}`
14955
14999
  function CoffeeSubstitutionStart(ctx, state2) {
14956
15000
  return (0, import_lib3.$EVENT)(ctx, state2, "CoffeeSubstitutionStart", CoffeeSubstitutionStart$0);
14957
15001
  }
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)($R75, "Colon /[=:]/"))), function($skip, $loc, $0, $1, $2) {
15002
+ 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) {
14959
15003
  return { $loc, token: $1 };
14960
15004
  });
14961
15005
  function Colon(ctx, state2) {
@@ -15006,7 +15050,7 @@ ${js}`
15006
15050
  var Dot$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
15007
15051
  return { $loc, token: $1 };
15008
15052
  });
15009
- 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) {
15053
+ 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) {
15010
15054
  var ws = $2;
15011
15055
  return [
15012
15056
  { $loc, token: "." },
@@ -15133,7 +15177,7 @@ ${js}`
15133
15177
  function If(ctx, state2) {
15134
15178
  return (0, import_lib3.$EVENT)(ctx, state2, "If", If$0);
15135
15179
  }
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)($R77, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
15180
+ 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) {
15137
15181
  return { $loc, token: $1 };
15138
15182
  });
15139
15183
  function Import(ctx, state2) {
@@ -15169,37 +15213,37 @@ ${js}`
15169
15213
  function Is(ctx, state2) {
15170
15214
  return (0, import_lib3.$EVENT)(ctx, state2, "Is", Is$0);
15171
15215
  }
15172
- var LetOrConstOrVar$0 = LetOrConst;
15173
- var LetOrConstOrVar$1 = Var;
15174
- var LetOrConstOrVar$$ = [LetOrConstOrVar$0, LetOrConstOrVar$1];
15216
+ 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) {
15217
+ return { $loc, token: $1 };
15218
+ });
15175
15219
  function LetOrConstOrVar(ctx, state2) {
15176
- return (0, import_lib3.$EVENT_C)(ctx, state2, "LetOrConstOrVar", LetOrConstOrVar$$);
15220
+ return (0, import_lib3.$EVENT)(ctx, state2, "LetOrConstOrVar", LetOrConstOrVar$0);
15177
15221
  }
15178
- 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) {
15222
+ 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) {
15179
15223
  return { $loc, token: $1 };
15180
15224
  });
15181
15225
  function Like(ctx, state2) {
15182
15226
  return (0, import_lib3.$EVENT)(ctx, state2, "Like", Like$0);
15183
15227
  }
15184
- 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) {
15228
+ 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) {
15185
15229
  return { $loc, token: "while" };
15186
15230
  });
15187
15231
  function Loop(ctx, state2) {
15188
15232
  return (0, import_lib3.$EVENT)(ctx, state2, "Loop", Loop$0);
15189
15233
  }
15190
- 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) {
15234
+ 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) {
15191
15235
  return { $loc, token: $1 };
15192
15236
  });
15193
15237
  function New(ctx, state2) {
15194
15238
  return (0, import_lib3.$EVENT)(ctx, state2, "New", New$0);
15195
15239
  }
15196
- 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) {
15240
+ 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) {
15197
15241
  return { $loc, token: "!" };
15198
15242
  });
15199
15243
  function Not(ctx, state2) {
15200
15244
  return (0, import_lib3.$EVENT)(ctx, state2, "Not", Not$0);
15201
15245
  }
15202
- 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) {
15246
+ 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) {
15203
15247
  return { $loc, token: $1 };
15204
15248
  });
15205
15249
  function Of(ctx, state2) {
@@ -15217,7 +15261,7 @@ ${js}`
15217
15261
  function OpenBrace(ctx, state2) {
15218
15262
  return (0, import_lib3.$EVENT)(ctx, state2, "OpenBrace", OpenBrace$0);
15219
15263
  }
15220
- var OpenBracket$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L180, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15264
+ var OpenBracket$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L181, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15221
15265
  return { $loc, token: $1 };
15222
15266
  });
15223
15267
  function OpenBracket(ctx, state2) {
@@ -15229,49 +15273,49 @@ ${js}`
15229
15273
  function OpenParen(ctx, state2) {
15230
15274
  return (0, import_lib3.$EVENT)(ctx, state2, "OpenParen", OpenParen$0);
15231
15275
  }
15232
- 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) {
15276
+ 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) {
15233
15277
  return { $loc, token: $1 };
15234
15278
  });
15235
15279
  function Operator(ctx, state2) {
15236
15280
  return (0, import_lib3.$EVENT)(ctx, state2, "Operator", Operator$0);
15237
15281
  }
15238
- 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) {
15282
+ 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) {
15239
15283
  return { $loc, token: $1, ts: true };
15240
15284
  });
15241
15285
  function Override(ctx, state2) {
15242
15286
  return (0, import_lib3.$EVENT)(ctx, state2, "Override", Override$0);
15243
15287
  }
15244
- 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) {
15288
+ 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) {
15245
15289
  return { $loc, token: $1 };
15246
15290
  });
15247
15291
  function Own(ctx, state2) {
15248
15292
  return (0, import_lib3.$EVENT)(ctx, state2, "Own", Own$0);
15249
15293
  }
15250
- 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) {
15294
+ 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) {
15251
15295
  return { $loc, token: $1 };
15252
15296
  });
15253
15297
  function Public(ctx, state2) {
15254
15298
  return (0, import_lib3.$EVENT)(ctx, state2, "Public", Public$0);
15255
15299
  }
15256
- 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) {
15300
+ 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) {
15257
15301
  return { $loc, token: $1 };
15258
15302
  });
15259
15303
  function Private(ctx, state2) {
15260
15304
  return (0, import_lib3.$EVENT)(ctx, state2, "Private", Private$0);
15261
15305
  }
15262
- 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) {
15306
+ 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) {
15263
15307
  return { $loc, token: $1 };
15264
15308
  });
15265
15309
  function Protected(ctx, state2) {
15266
15310
  return (0, import_lib3.$EVENT)(ctx, state2, "Protected", Protected$0);
15267
15311
  }
15268
- 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) {
15312
+ 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) {
15269
15313
  return { $loc, token: "||>" };
15270
15314
  });
15271
- 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) {
15315
+ 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) {
15272
15316
  return { $loc, token: "|>=" };
15273
15317
  });
15274
- 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) {
15318
+ 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) {
15275
15319
  return { $loc, token: "|>" };
15276
15320
  });
15277
15321
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -15284,19 +15328,19 @@ ${js}`
15284
15328
  function QuestionMark(ctx, state2) {
15285
15329
  return (0, import_lib3.$EVENT)(ctx, state2, "QuestionMark", QuestionMark$0);
15286
15330
  }
15287
- 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) {
15331
+ 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) {
15288
15332
  return { $loc, token: $1, ts: true };
15289
15333
  });
15290
15334
  function Readonly(ctx, state2) {
15291
15335
  return (0, import_lib3.$EVENT)(ctx, state2, "Readonly", Readonly$0);
15292
15336
  }
15293
- 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) {
15337
+ 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) {
15294
15338
  return { $loc, token: $1 };
15295
15339
  });
15296
15340
  function Return(ctx, state2) {
15297
15341
  return (0, import_lib3.$EVENT)(ctx, state2, "Return", Return$0);
15298
15342
  }
15299
- 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) {
15343
+ 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) {
15300
15344
  return { $loc, token: $1 };
15301
15345
  });
15302
15346
  function Satisfies(ctx, state2) {
@@ -15308,7 +15352,7 @@ ${js}`
15308
15352
  function Semicolon(ctx, state2) {
15309
15353
  return (0, import_lib3.$EVENT)(ctx, state2, "Semicolon", Semicolon$0);
15310
15354
  }
15311
- var SingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L196, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
15355
+ var SingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L197, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
15312
15356
  return { $loc, token: $1 };
15313
15357
  });
15314
15358
  function SingleQuote(ctx, state2) {
@@ -15320,7 +15364,7 @@ ${js}`
15320
15364
  function Star(ctx, state2) {
15321
15365
  return (0, import_lib3.$EVENT)(ctx, state2, "Star", Star$0);
15322
15366
  }
15323
- 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) {
15367
+ 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) {
15324
15368
  return { $loc, token: $1 };
15325
15369
  });
15326
15370
  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) {
@@ -15330,109 +15374,109 @@ ${js}`
15330
15374
  function Static(ctx, state2) {
15331
15375
  return (0, import_lib3.$EVENT_C)(ctx, state2, "Static", Static$$);
15332
15376
  }
15333
- var SubstitutionStart$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L198, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
15377
+ var SubstitutionStart$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L199, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
15334
15378
  return { $loc, token: $1 };
15335
15379
  });
15336
15380
  function SubstitutionStart(ctx, state2) {
15337
15381
  return (0, import_lib3.$EVENT)(ctx, state2, "SubstitutionStart", SubstitutionStart$0);
15338
15382
  }
15339
- 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) {
15383
+ 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) {
15340
15384
  return { $loc, token: $1 };
15341
15385
  });
15342
15386
  function Super(ctx, state2) {
15343
15387
  return (0, import_lib3.$EVENT)(ctx, state2, "Super", Super$0);
15344
15388
  }
15345
- 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) {
15389
+ 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) {
15346
15390
  return { $loc, token: $1 };
15347
15391
  });
15348
15392
  function Switch(ctx, state2) {
15349
15393
  return (0, import_lib3.$EVENT)(ctx, state2, "Switch", Switch$0);
15350
15394
  }
15351
- 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) {
15395
+ 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) {
15352
15396
  return { $loc, token: $1 };
15353
15397
  });
15354
15398
  function Target(ctx, state2) {
15355
15399
  return (0, import_lib3.$EVENT)(ctx, state2, "Target", Target$0);
15356
15400
  }
15357
- 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) {
15401
+ 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) {
15358
15402
  return { $loc, token: "" };
15359
15403
  });
15360
15404
  function Then(ctx, state2) {
15361
15405
  return (0, import_lib3.$EVENT)(ctx, state2, "Then", Then$0);
15362
15406
  }
15363
- 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) {
15407
+ 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) {
15364
15408
  return { $loc, token: $1 };
15365
15409
  });
15366
15410
  function This(ctx, state2) {
15367
15411
  return (0, import_lib3.$EVENT)(ctx, state2, "This", This$0);
15368
15412
  }
15369
- 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) {
15413
+ 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) {
15370
15414
  return { $loc, token: $1 };
15371
15415
  });
15372
15416
  function Throw(ctx, state2) {
15373
15417
  return (0, import_lib3.$EVENT)(ctx, state2, "Throw", Throw$0);
15374
15418
  }
15375
- var TripleDoubleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L205, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
15419
+ var TripleDoubleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L206, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
15376
15420
  return { $loc, token: "`" };
15377
15421
  });
15378
15422
  function TripleDoubleQuote(ctx, state2) {
15379
15423
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleDoubleQuote", TripleDoubleQuote$0);
15380
15424
  }
15381
- var TripleSingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L206, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
15425
+ var TripleSingleQuote$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L207, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
15382
15426
  return { $loc, token: "`" };
15383
15427
  });
15384
15428
  function TripleSingleQuote(ctx, state2) {
15385
15429
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSingleQuote", TripleSingleQuote$0);
15386
15430
  }
15387
- var TripleSlash$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L207, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
15431
+ var TripleSlash$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L208, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
15388
15432
  return { $loc, token: "/" };
15389
15433
  });
15390
15434
  function TripleSlash(ctx, state2) {
15391
15435
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSlash", TripleSlash$0);
15392
15436
  }
15393
- var TripleTick$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L208, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
15437
+ var TripleTick$0 = (0, import_lib3.$TV)((0, import_lib3.$EXPECT)($L209, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
15394
15438
  return { $loc, token: "`" };
15395
15439
  });
15396
15440
  function TripleTick(ctx, state2) {
15397
15441
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleTick", TripleTick$0);
15398
15442
  }
15399
- 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) {
15443
+ 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) {
15400
15444
  return { $loc, token: $1 };
15401
15445
  });
15402
15446
  function Try(ctx, state2) {
15403
15447
  return (0, import_lib3.$EVENT)(ctx, state2, "Try", Try$0);
15404
15448
  }
15405
- 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) {
15449
+ 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) {
15406
15450
  return { $loc, token: $1 };
15407
15451
  });
15408
15452
  function Typeof(ctx, state2) {
15409
15453
  return (0, import_lib3.$EVENT)(ctx, state2, "Typeof", Typeof$0);
15410
15454
  }
15411
- 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) {
15455
+ 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) {
15412
15456
  return { $loc, token: $1 };
15413
15457
  });
15414
15458
  function Undefined(ctx, state2) {
15415
15459
  return (0, import_lib3.$EVENT)(ctx, state2, "Undefined", Undefined$0);
15416
15460
  }
15417
- 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) {
15461
+ 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) {
15418
15462
  return { $loc, token: $1, negated: true };
15419
15463
  });
15420
15464
  function Unless(ctx, state2) {
15421
15465
  return (0, import_lib3.$EVENT)(ctx, state2, "Unless", Unless$0);
15422
15466
  }
15423
- 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) {
15467
+ 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) {
15424
15468
  return { $loc, token: $1, negated: true };
15425
15469
  });
15426
15470
  function Until(ctx, state2) {
15427
15471
  return (0, import_lib3.$EVENT)(ctx, state2, "Until", Until$0);
15428
15472
  }
15429
- 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) {
15473
+ 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) {
15430
15474
  return { $loc, token: $1 };
15431
15475
  });
15432
15476
  function Using(ctx, state2) {
15433
15477
  return (0, import_lib3.$EVENT)(ctx, state2, "Using", Using$0);
15434
15478
  }
15435
- 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) {
15479
+ 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) {
15436
15480
  return { $loc, token: $1 };
15437
15481
  });
15438
15482
  function Var(ctx, state2) {
@@ -15491,7 +15535,7 @@ ${js}`
15491
15535
  function JSXImplicitFragment(ctx, state2) {
15492
15536
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXImplicitFragment", JSXImplicitFragment$0);
15493
15537
  }
15494
- var JSXTag$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R78, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
15538
+ var JSXTag$0 = (0, import_lib3.$T)((0, import_lib3.$S)((0, import_lib3.$EXPECT)($R77, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
15495
15539
  return value[1];
15496
15540
  });
15497
15541
  function JSXTag(ctx, state2) {
@@ -15638,7 +15682,7 @@ ${js}`
15638
15682
  function JSXElementName(ctx, state2) {
15639
15683
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXElementName", JSXElementName$$);
15640
15684
  }
15641
- var JSXIdentifierName$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R79, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
15685
+ var JSXIdentifierName$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R78, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
15642
15686
  function JSXIdentifierName(ctx, state2) {
15643
15687
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXIdentifierName", JSXIdentifierName$0);
15644
15688
  }
@@ -15817,7 +15861,7 @@ ${js}`
15817
15861
  class: $2
15818
15862
  };
15819
15863
  });
15820
- 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) {
15864
+ 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) {
15821
15865
  var toggle = $1;
15822
15866
  var id = $2;
15823
15867
  const value = toggle === "+" ? "true" : "false";
@@ -15827,11 +15871,11 @@ ${js}`
15827
15871
  function JSXAttribute(ctx, state2) {
15828
15872
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXAttribute", JSXAttribute$$);
15829
15873
  }
15830
- var JSXAttributeSpace$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R81, "JSXAttributeSpace /[\\s>]|\\/>/"));
15874
+ var JSXAttributeSpace$0 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R80, "JSXAttributeSpace /[\\s>]|\\/>/"));
15831
15875
  function JSXAttributeSpace(ctx, state2) {
15832
15876
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXAttributeSpace", JSXAttributeSpace$0);
15833
15877
  }
15834
- 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) {
15878
+ 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) {
15835
15879
  return quoteString($0);
15836
15880
  });
15837
15881
  var JSXShorthandString$1 = (0, import_lib3.$TS)((0, import_lib3.$S)(TemplateLiteral), function($skip, $loc, $0, $1) {
@@ -15878,7 +15922,7 @@ ${js}`
15878
15922
  }
15879
15923
  return [open, value, close];
15880
15924
  });
15881
- var JSXAttributeValue$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R83, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
15925
+ var JSXAttributeValue$4 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R82, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
15882
15926
  var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
15883
15927
  function JSXAttributeValue(ctx, state2) {
15884
15928
  return (0, import_lib3.$EVENT_C)(ctx, state2, "JSXAttributeValue", JSXAttributeValue$$);
@@ -15891,7 +15935,7 @@ ${js}`
15891
15935
  function InlineJSXAttributeValue(ctx, state2) {
15892
15936
  return (0, import_lib3.$EVENT)(ctx, state2, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
15893
15937
  }
15894
- 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) {
15938
+ 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) {
15895
15939
  var op = $2;
15896
15940
  var rhs = $3;
15897
15941
  return [[], op, [], rhs];
@@ -15908,7 +15952,7 @@ ${js}`
15908
15952
  function InlineJSXUnaryExpression(ctx, state2) {
15909
15953
  return (0, import_lib3.$EVENT)(ctx, state2, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
15910
15954
  }
15911
- 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) {
15955
+ 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) {
15912
15956
  return { $loc, token: $0 };
15913
15957
  });
15914
15958
  function InlineJSXUnaryOp(ctx, state2) {
@@ -16159,13 +16203,13 @@ ${js}`
16159
16203
  function JSXComment(ctx, state2) {
16160
16204
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXComment", JSXComment$0);
16161
16205
  }
16162
- 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) {
16206
+ 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) {
16163
16207
  return { $loc, token: $0.replace(/\*\//g, "* /") };
16164
16208
  });
16165
16209
  function JSXCommentContent(ctx, state2) {
16166
16210
  return (0, import_lib3.$EVENT)(ctx, state2, "JSXCommentContent", JSXCommentContent$0);
16167
16211
  }
16168
- 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) {
16212
+ 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) {
16169
16213
  return {
16170
16214
  type: "JSXText",
16171
16215
  token: $0,
@@ -16312,8 +16356,14 @@ ${js}`
16312
16356
  function UsingJSModeError(ctx, state2) {
16313
16357
  return (0, import_lib3.$EVENT)(ctx, state2, "UsingJSModeError", UsingJSModeError$0);
16314
16358
  }
16315
- 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) {
16316
- return { "ts": true, "children": value };
16359
+ 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) {
16360
+ var d = $3;
16361
+ return {
16362
+ type: "Declaration",
16363
+ ts: true,
16364
+ children: $0,
16365
+ names: d.names ?? []
16366
+ };
16317
16367
  });
16318
16368
  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) {
16319
16369
  var export_ = $1;
@@ -16393,7 +16443,7 @@ ${js}`
16393
16443
  function OptionalEquals(ctx, state2) {
16394
16444
  return (0, import_lib3.$EVENT_C)(ctx, state2, "OptionalEquals", OptionalEquals$$);
16395
16445
  }
16396
- var TypeLexicalDeclaration$0 = (0, import_lib3.$S)(__, LetOrConstOrVar, TypeDeclarationBinding, (0, import_lib3.$Q)((0, import_lib3.$S)(CommaDelimiter, __, TypeDeclarationBinding)));
16446
+ var TypeLexicalDeclaration$0 = TypeLetOrConstDeclaration;
16397
16447
  var TypeLexicalDeclaration$1 = (0, import_lib3.$S)(__, EnumDeclaration);
16398
16448
  var TypeLexicalDeclaration$2 = ClassSignature;
16399
16449
  var TypeLexicalDeclaration$3 = (0, import_lib3.$S)(Namespace, (0, import_lib3.$E)(_), IdentifierName, DeclareBlock);
@@ -16403,7 +16453,27 @@ ${js}`
16403
16453
  function TypeLexicalDeclaration(ctx, state2) {
16404
16454
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeLexicalDeclaration", TypeLexicalDeclaration$$);
16405
16455
  }
16406
- var TypeDeclarationBinding$0 = (0, import_lib3.$S)((0, import_lib3.$C)(BindingPattern, BindingIdentifier), (0, import_lib3.$E)(TypeSuffix));
16456
+ 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) {
16457
+ var first = $3;
16458
+ var rest = $4;
16459
+ const names = first.names.concat(...rest.map((b) => b[2].names));
16460
+ return {
16461
+ type: "TypeLexicalDeclaration",
16462
+ children: $0,
16463
+ ts: true,
16464
+ names
16465
+ };
16466
+ });
16467
+ function TypeLetOrConstDeclaration(ctx, state2) {
16468
+ return (0, import_lib3.$EVENT)(ctx, state2, "TypeLetOrConstDeclaration", TypeLetOrConstDeclaration$0);
16469
+ }
16470
+ 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) {
16471
+ return {
16472
+ type: "TypeDeclarationBinding",
16473
+ children: $0,
16474
+ names: $1.names
16475
+ };
16476
+ });
16407
16477
  function TypeDeclarationBinding(ctx, state2) {
16408
16478
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeDeclarationBinding", TypeDeclarationBinding$0);
16409
16479
  }
@@ -16539,13 +16609,14 @@ ${js}`
16539
16609
  function NestedDeclareElement(ctx, state2) {
16540
16610
  return (0, import_lib3.$EVENT)(ctx, state2, "NestedDeclareElement", NestedDeclareElement$0);
16541
16611
  }
16542
- 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) {
16612
+ var DeclareElement$0 = (0, import_lib3.$S)((0, import_lib3.$E)(Decorators), Export, __, Default, __, (0, import_lib3.$C)(Identifier, ClassSignature, InterfaceDeclaration));
16613
+ 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) {
16543
16614
  return { "ts": true, "children": value };
16544
16615
  });
16545
- 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) {
16616
+ 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) {
16546
16617
  return { "ts": true, "children": value };
16547
16618
  });
16548
- var DeclareElement$$ = [DeclareElement$0, DeclareElement$1];
16619
+ var DeclareElement$$ = [DeclareElement$0, DeclareElement$1, DeclareElement$2];
16549
16620
  function DeclareElement(ctx, state2) {
16550
16621
  return (0, import_lib3.$EVENT_C)(ctx, state2, "DeclareElement", DeclareElement$$);
16551
16622
  }
@@ -16672,7 +16743,7 @@ ${js}`
16672
16743
  function TypeProperty(ctx, state2) {
16673
16744
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeProperty", TypeProperty$0);
16674
16745
  }
16675
- 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)))));
16746
+ 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)))));
16676
16747
  function TypeIndexSignature(ctx, state2) {
16677
16748
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeIndexSignature", TypeIndexSignature$0);
16678
16749
  }
@@ -16815,7 +16886,7 @@ ${js}`
16815
16886
  if (!prefix.length && !suffix.length)
16816
16887
  return t;
16817
16888
  return {
16818
- type: "UnaryType",
16889
+ type: "TypeUnary",
16819
16890
  prefix,
16820
16891
  suffix,
16821
16892
  t,
@@ -16833,7 +16904,7 @@ ${js}`
16833
16904
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeUnarySuffix", TypeUnarySuffix$$);
16834
16905
  }
16835
16906
  var TypeUnaryOp$0 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L233, 'TypeUnaryOp "keyof"'), NonIdContinue);
16836
- var TypeUnaryOp$1 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L193, 'TypeUnaryOp "readonly"'), NonIdContinue);
16907
+ var TypeUnaryOp$1 = (0, import_lib3.$S)((0, import_lib3.$EXPECT)($L194, 'TypeUnaryOp "readonly"'), NonIdContinue);
16837
16908
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1];
16838
16909
  function TypeUnaryOp(ctx, state2) {
16839
16910
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeUnaryOp", TypeUnaryOp$$);
@@ -16893,14 +16964,14 @@ ${js}`
16893
16964
  var TypePrimary$7 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), TypeLiteral), function($skip, $loc, $0, $1, $2) {
16894
16965
  var t = $2;
16895
16966
  return {
16896
- type: "LiteralType",
16967
+ type: "TypeLiteral",
16897
16968
  t,
16898
16969
  children: $0
16899
16970
  };
16900
16971
  });
16901
16972
  var TypePrimary$8 = (0, import_lib3.$TS)((0, import_lib3.$S)((0, import_lib3.$E)(_), UnknownAlias), function($skip, $loc, $0, $1, $2) {
16902
16973
  return {
16903
- type: "IdentifierType",
16974
+ type: "TypeIdentifier",
16904
16975
  children: $0,
16905
16976
  raw: $2.token,
16906
16977
  args: void 0
@@ -16909,7 +16980,7 @@ ${js}`
16909
16980
  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) {
16910
16981
  var args = $4;
16911
16982
  return {
16912
- type: "IdentifierType",
16983
+ type: "TypeIdentifier",
16913
16984
  children: $0,
16914
16985
  raw: [$2.name, ...$3.map(([dot, id]) => dot.token + id.name)].join(""),
16915
16986
  args
@@ -16919,7 +16990,7 @@ ${js}`
16919
16990
  if (!$4)
16920
16991
  return $skip;
16921
16992
  return {
16922
- type: "ParenthesizedType",
16993
+ type: "TypeParenthesized",
16923
16994
  children: [$1, $2, $4, $6, $7]
16924
16995
  // omit AllowAll/RestoreAll
16925
16996
  };
@@ -17140,7 +17211,7 @@ ${js}`
17140
17211
  function TypeWithPostfix(ctx, state2) {
17141
17212
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeWithPostfix", TypeWithPostfix$0);
17142
17213
  }
17143
- 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) {
17214
+ 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) {
17144
17215
  return prepend($1, expressionizeTypeIf($3));
17145
17216
  });
17146
17217
  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) {
@@ -17285,16 +17356,20 @@ ${js}`
17285
17356
  }
17286
17357
  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) {
17287
17358
  var type = $6;
17288
- const ret = [...$0];
17359
+ const children = [...$0];
17289
17360
  if ($1 && !$2) {
17290
- ret[1] = {
17361
+ children[1] = {
17291
17362
  type: "Error",
17292
17363
  message: "abstract function types must be constructors (abstract new)"
17293
17364
  };
17294
17365
  }
17295
17366
  if (!type)
17296
- ret.push("void");
17297
- return ret;
17367
+ children.push("void");
17368
+ return {
17369
+ type: "TypeFunction",
17370
+ children,
17371
+ ts: true
17372
+ };
17298
17373
  });
17299
17374
  function TypeFunction(ctx, state2) {
17300
17375
  return (0, import_lib3.$EVENT)(ctx, state2, "TypeFunction", TypeFunction$0);
@@ -17338,8 +17413,8 @@ ${js}`
17338
17413
  return (0, import_lib3.$EVENT_C)(ctx, state2, "TypeApplicationStart", TypeApplicationStart$$);
17339
17414
  }
17340
17415
  var ForbiddenImplicitTypeCalls$0 = ReservedBinary;
17341
- var ForbiddenImplicitTypeCalls$1 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R90, "ForbiddenImplicitTypeCalls /[|&<!=\\-\u21D2\u2192]/"));
17342
- var ForbiddenImplicitTypeCalls$2 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R91, "ForbiddenImplicitTypeCalls /(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
17416
+ var ForbiddenImplicitTypeCalls$1 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R89, "ForbiddenImplicitTypeCalls /[|&<!=\\-\u21D2\u2192]/"));
17417
+ var ForbiddenImplicitTypeCalls$2 = (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R90, "ForbiddenImplicitTypeCalls /(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
17343
17418
  var ForbiddenImplicitTypeCalls$$ = [ForbiddenImplicitTypeCalls$0, ForbiddenImplicitTypeCalls$1, ForbiddenImplicitTypeCalls$2];
17344
17419
  function ForbiddenImplicitTypeCalls(ctx, state2) {
17345
17420
  return (0, import_lib3.$EVENT_C)(ctx, state2, "ForbiddenImplicitTypeCalls", ForbiddenImplicitTypeCalls$$);
@@ -17449,15 +17524,15 @@ ${js}`
17449
17524
  function ThisType(ctx, state2) {
17450
17525
  return (0, import_lib3.$EVENT)(ctx, state2, "ThisType", ThisType$0);
17451
17526
  }
17452
- var Shebang$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R92, "Shebang /#![^\\r\\n]*/")), EOL);
17527
+ var Shebang$0 = (0, import_lib3.$S)((0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R91, "Shebang /#![^\\r\\n]*/")), EOL);
17453
17528
  function Shebang(ctx, state2) {
17454
17529
  return (0, import_lib3.$EVENT)(ctx, state2, "Shebang", Shebang$0);
17455
17530
  }
17456
- 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) {
17531
+ 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) {
17457
17532
  var content = value[2];
17458
17533
  return content;
17459
17534
  });
17460
- 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) {
17535
+ 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) {
17461
17536
  var content = value[2];
17462
17537
  return content;
17463
17538
  });
@@ -17465,7 +17540,7 @@ ${js}`
17465
17540
  function CivetPrologue(ctx, state2) {
17466
17541
  return (0, import_lib3.$EVENT_C)(ctx, state2, "CivetPrologue", CivetPrologue$$);
17467
17542
  }
17468
- 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) {
17543
+ 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) {
17469
17544
  var options = $3;
17470
17545
  return {
17471
17546
  type: "CivetPrologue",
@@ -17476,28 +17551,33 @@ ${js}`
17476
17551
  function CivetPrologueContent(ctx, state2) {
17477
17552
  return (0, import_lib3.$EVENT)(ctx, state2, "CivetPrologueContent", CivetPrologueContent$0);
17478
17553
  }
17479
- 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) {
17554
+ 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) {
17480
17555
  const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
17481
17556
  if (l)
17482
17557
  return l.toUpperCase();
17483
17558
  return "";
17484
17559
  });
17485
17560
  let value = $3 ? $4 : $1 === "-" ? false : true;
17486
- if (optionName === "tab") {
17487
- value = parseFloat(value);
17488
- if (isNaN(value))
17489
- value = 0;
17561
+ switch (optionName) {
17562
+ case "tab":
17563
+ value = parseFloat(value);
17564
+ if (isNaN(value))
17565
+ value = 0;
17566
+ break;
17567
+ case "globals":
17568
+ value = value.split(",").filter(Boolean);
17569
+ break;
17490
17570
  }
17491
17571
  return [optionName, value];
17492
17572
  });
17493
17573
  function CivetOption(ctx, state2) {
17494
17574
  return (0, import_lib3.$EVENT)(ctx, state2, "CivetOption", CivetOption$0);
17495
17575
  }
17496
- 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);
17576
+ 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);
17497
17577
  function UnknownPrologue(ctx, state2) {
17498
17578
  return (0, import_lib3.$EVENT)(ctx, state2, "UnknownPrologue", UnknownPrologue$0);
17499
17579
  }
17500
- 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));
17580
+ 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));
17501
17581
  function TripleSlashDirective(ctx, state2) {
17502
17582
  return (0, import_lib3.$EVENT)(ctx, state2, "TripleSlashDirective", TripleSlashDirective$0);
17503
17583
  }
@@ -17513,13 +17593,13 @@ ${js}`
17513
17593
  function PrologueString(ctx, state2) {
17514
17594
  return (0, import_lib3.$EVENT_C)(ctx, state2, "PrologueString", PrologueString$$);
17515
17595
  }
17516
- 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) {
17596
+ 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) {
17517
17597
  return value[1];
17518
17598
  });
17519
17599
  function EOS(ctx, state2) {
17520
17600
  return (0, import_lib3.$EVENT)(ctx, state2, "EOS", EOS$0);
17521
17601
  }
17522
- 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) {
17602
+ 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) {
17523
17603
  return { $loc, token: $0 };
17524
17604
  });
17525
17605
  function EOL(ctx, state2) {
@@ -17839,6 +17919,7 @@ ${js}`
17839
17919
  coffeeOf: false,
17840
17920
  coffeePrototype: false,
17841
17921
  defaultElement: "div",
17922
+ globals: [],
17842
17923
  implicitReturns: true,
17843
17924
  jsxCode: false,
17844
17925
  objectIs: false,
@@ -17916,7 +17997,7 @@ ${js}`
17916
17997
  function Prologue(ctx, state2) {
17917
17998
  return (0, import_lib3.$EVENT)(ctx, state2, "Prologue", Prologue$0);
17918
17999
  }
17919
- var ProloguePrefix$0 = (0, import_lib3.$S)(Prologue, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R99, "ProloguePrefix /[^]*/")));
18000
+ var ProloguePrefix$0 = (0, import_lib3.$S)(Prologue, (0, import_lib3.$R$0)((0, import_lib3.$EXPECT)($R98, "ProloguePrefix /[^]*/")));
17920
18001
  function ProloguePrefix(ctx, state2) {
17921
18002
  return (0, import_lib3.$EVENT)(ctx, state2, "ProloguePrefix", ProloguePrefix$0);
17922
18003
  }
@@ -18673,6 +18754,9 @@ ${counts}`;
18673
18754
  }
18674
18755
  const [stateKey, tagKey] = getStateKey();
18675
18756
  const key = [tagKey, stateKey, state2.pos, ruleName];
18757
+ if (result != null) {
18758
+ result = { ...result };
18759
+ }
18676
18760
  stateCache.set(key, result);
18677
18761
  if (getConfig().verbose && result) {
18678
18762
  console.log(`Parsed ${JSON.stringify(state2.input.slice(state2.pos, result.pos))} [pos ${state2.pos}-${result.pos}] as ${ruleName}`);