@danielx/civet 0.6.73 → 0.6.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -1243,15 +1243,15 @@ function hoistRefDecs(statements) {
1243
1243
  }
1244
1244
  function insertHoistDec(block, node, dec) {
1245
1245
  const { expressions } = block;
1246
- const index = expressions.findIndex((exp) => exp === node || Array.isArray(exp) && exp[1] === node);
1247
- if (index < 0)
1246
+ const index = expressions.findIndex((exp) => {
1247
+ return exp === node || Array.isArray(exp) && exp[1] === node;
1248
+ });
1249
+ if (index < 0) {
1248
1250
  throw new Error("Couldn't find expression in block for hoistable declaration.");
1249
- if (expressions[index] === node) {
1250
- expressions.splice(index, 0, ["", dec, ";"]);
1251
- } else {
1252
- const indent = expressions[index][0];
1253
- expressions.splice(index, 0, [indent, dec, ";"]);
1254
1251
  }
1252
+ const statement = [expressions[index][0], dec, ";"];
1253
+ expressions[index][0] = "";
1254
+ expressions.splice(index, 0, statement);
1255
1255
  addParentPointers(dec, block);
1256
1256
  }
1257
1257
  function patternAsValue(pattern) {
@@ -1417,6 +1417,9 @@ function isPromiseVoidType(t) {
1417
1417
  function isGeneratorVoidType(t) {
1418
1418
  return t?.type === "IdentifierType" && (t.raw === "Iterator" || t.raw === "Generator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1419
1419
  }
1420
+ function isAsyncGeneratorVoidType(t) {
1421
+ return t?.type === "IdentifierType" && (t.raw === "AsyncIterator" || t.raw === "AsyncGenerator") && t.args?.types?.length >= 2 && isVoidType(t.args.types[1]);
1422
+ }
1420
1423
  function isWhitespaceOrEmpty(node) {
1421
1424
  if (!node)
1422
1425
  return true;
@@ -1819,6 +1822,7 @@ function makeLeftHandSideExpression(expression) {
1819
1822
  case "IterationExpression":
1820
1823
  case "CallExpression":
1821
1824
  case "MemberExpression":
1825
+ case "NewExpression":
1822
1826
  case "ParenthesizedExpression":
1823
1827
  case "IfExpression":
1824
1828
  case "DebuggerExpression":
@@ -1866,6 +1870,9 @@ function quoteString(str) {
1866
1870
  }
1867
1871
  }
1868
1872
  function lastAccessInCallExpression(exp) {
1873
+ if (exp.type === "Identifier") {
1874
+ return exp;
1875
+ }
1869
1876
  let children, i;
1870
1877
  do {
1871
1878
  ({ children } = exp);
@@ -2068,7 +2075,7 @@ function processCoffeeInterpolation(s, parts, e, $loc) {
2068
2075
  children: [s, parts, e]
2069
2076
  };
2070
2077
  }
2071
- function processAssignmentDeclaration(decl, id, suffix, ws, assign, e) {
2078
+ function processAssignmentDeclaration(decl, pattern, suffix, ws, assign, e) {
2072
2079
  decl = {
2073
2080
  ...decl,
2074
2081
  $loc: {
@@ -2076,23 +2083,23 @@ function processAssignmentDeclaration(decl, id, suffix, ws, assign, e) {
2076
2083
  length: assign.$loc.length + 1
2077
2084
  }
2078
2085
  };
2079
- let [splices, thisAssignments] = gatherBindingCode(id);
2086
+ let [splices, assignments] = gatherBindingCode(pattern);
2080
2087
  splices = splices.map((s) => [", ", s]);
2081
- thisAssignments = thisAssignments.map((a) => ["", a, ";"]);
2088
+ const thisAssignments = assignments.map((a) => ["", a, ";"]);
2082
2089
  const initializer = [ws, assign, e];
2083
2090
  const binding = makeNode({
2084
2091
  type: "Binding",
2085
- pattern: id,
2092
+ pattern,
2086
2093
  initializer,
2087
2094
  splices,
2088
2095
  suffix,
2089
2096
  thisAssignments,
2090
- children: [id, suffix, initializer]
2097
+ children: [pattern, suffix, initializer]
2091
2098
  });
2092
2099
  const children = [decl, binding];
2093
2100
  return makeNode({
2094
2101
  type: "Declaration",
2095
- names: id.names,
2102
+ names: pattern.names,
2096
2103
  decl,
2097
2104
  bindings: [binding],
2098
2105
  splices,
@@ -2205,9 +2212,7 @@ function processDeclarationConditionStatement(s) {
2205
2212
  }
2206
2213
  }
2207
2214
  function processDeclarations(statements) {
2208
- gatherRecursiveAll(statements, (n) => {
2209
- return n.type === "Declaration";
2210
- }).forEach(({ bindings }) => {
2215
+ gatherRecursiveAll(statements, ($) => $.type === "Declaration").forEach(({ bindings }) => {
2211
2216
  return bindings?.forEach((binding) => {
2212
2217
  const suffix = binding.suffix;
2213
2218
  if (suffix && suffix.optional && suffix.t) {
@@ -2253,7 +2258,7 @@ function processReturn(f, implicitReturns) {
2253
2258
  const { async, generator, set } = modifier;
2254
2259
  const isMethod = f.type === "MethodDefinition";
2255
2260
  const isConstructor = isMethod && name === "constructor";
2256
- const isVoid = isVoidType(returnType2?.t) || async && isPromiseVoidType(returnType2?.t) || !async && generator && isGeneratorVoidType(returnType2?.t);
2261
+ const isVoid = isVoidType(returnType2?.t) || async && (isPromiseVoidType(returnType2?.t) || generator && isAsyncGeneratorVoidType(returnType2?.t)) || !async && generator && isGeneratorVoidType(returnType2?.t);
2257
2262
  if (block?.type === "BlockStatement") {
2258
2263
  if (isVoid || set || isConstructor) {
2259
2264
  if (block.bare && block.implicitlyReturned) {
@@ -2412,7 +2417,7 @@ function processAssignments(statements) {
2412
2417
  }
2413
2418
  function processBlocks(statements) {
2414
2419
  insertSemicolon(statements);
2415
- gatherRecursive(statements, ($) => $.type === "BlockStatement").forEach(function({ expressions }) {
2420
+ gatherRecursive(statements, ($3) => $3.type === "BlockStatement").forEach(function({ expressions }) {
2416
2421
  return processBlocks(expressions);
2417
2422
  });
2418
2423
  }
@@ -2671,8 +2676,8 @@ function nonMatcherBindings(pattern) {
2671
2676
  }
2672
2677
  }
2673
2678
  function aggregateDuplicateBindings(bindings, ReservedWord) {
2674
- const props = gatherRecursiveAll(bindings, ($3) => $3.type === "BindingProperty");
2675
- const arrayBindings = gatherRecursiveAll(bindings, ($4) => $4.type === "ArrayBindingPattern");
2679
+ const props = gatherRecursiveAll(bindings, ($4) => $4.type === "BindingProperty");
2680
+ const arrayBindings = gatherRecursiveAll(bindings, ($5) => $5.type === "ArrayBindingPattern");
2676
2681
  arrayBindings.forEach((a) => {
2677
2682
  const { elements } = a;
2678
2683
  return elements.forEach((element) => {
@@ -2730,7 +2735,7 @@ function aggregateDuplicateBindings(bindings, ReservedWord) {
2730
2735
  return declarations;
2731
2736
  }
2732
2737
  function processPatternMatching(statements, ReservedWord) {
2733
- gatherRecursiveAll(statements, ($5) => $5.type === "SwitchStatement").forEach((s) => {
2738
+ gatherRecursiveAll(statements, ($6) => $6.type === "SwitchStatement").forEach((s) => {
2734
2739
  const { caseBlock } = s;
2735
2740
  const { clauses } = caseBlock;
2736
2741
  for (const c of clauses) {
@@ -2744,7 +2749,7 @@ function processPatternMatching(statements, ReservedWord) {
2744
2749
  }
2745
2750
  let errors = false;
2746
2751
  let isPattern = false;
2747
- if (clauses.some(($6) => $6.type === "PatternClause")) {
2752
+ if (clauses.some(($7) => $7.type === "PatternClause")) {
2748
2753
  isPattern = true;
2749
2754
  clauses.forEach((c) => {
2750
2755
  if (!(c.type === "PatternClause" || c.type === "DefaultClause")) {
@@ -2972,7 +2977,7 @@ function processPipelineExpressions(statements) {
2972
2977
  };
2973
2978
  }
2974
2979
  children.push(arg);
2975
- if (!children.some(($7) => $7?.type === "ReturnStatement") && children.some(($8) => $8 === ",")) {
2980
+ if (!children.some(($8) => $8?.type === "ReturnStatement") && children.some(($9) => $9 === ",")) {
2976
2981
  const { parent } = s;
2977
2982
  const parenthesizedExpression = makeLeftHandSideExpression({ ...s });
2978
2983
  Object.assign(s, parenthesizedExpression, {
@@ -3095,7 +3100,7 @@ function createVarDecs(statements, scopes, pushVar) {
3095
3100
  scopes.push(decs);
3096
3101
  const varIds = [];
3097
3102
  const assignmentStatements = findAssignments(statements, scopes);
3098
- const undeclaredIdentifiers = assignmentStatements.flatMap(($9) => $9?.names || []);
3103
+ const undeclaredIdentifiers = assignmentStatements.flatMap(($10) => $10?.names || []);
3099
3104
  undeclaredIdentifiers.filter((x, i, a) => {
3100
3105
  if (!hasDec(x))
3101
3106
  return a.indexOf(x) === i;
@@ -4473,6 +4478,7 @@ var require_parser = __commonJS({
4473
4478
  LexicalDeclaration,
4474
4479
  ConstAssignment,
4475
4480
  LetAssignment,
4481
+ TypeAssignment,
4476
4482
  LexicalBinding,
4477
4483
  Initializer,
4478
4484
  VariableStatement,
@@ -4748,7 +4754,7 @@ var require_parser = __commonJS({
4748
4754
  InlineBasicInterfaceProperty,
4749
4755
  InlineInterfacePropertyDelimiter,
4750
4756
  TypeBinaryOp,
4751
- FunctionType,
4757
+ TypeFunction,
4752
4758
  TypeArrowFunction,
4753
4759
  TypeArguments,
4754
4760
  TypeArgument,
@@ -4790,6 +4796,7 @@ var require_parser = __commonJS({
4790
4796
  InsertDot,
4791
4797
  InsertBreak,
4792
4798
  InsertVar,
4799
+ InsertType,
4793
4800
  CoffeeBinaryExistentialEnabled,
4794
4801
  CoffeeBooleansEnabled,
4795
4802
  CoffeeClassesEnabled,
@@ -4836,100 +4843,100 @@ var require_parser = __commonJS({
4836
4843
  var $L17 = $L("implements");
4837
4844
  var $L18 = $L("<:");
4838
4845
  var $L19 = $L("import");
4839
- var $L20 = $L("!");
4840
- var $L21 = $L("^");
4841
- var $L22 = $L("-");
4842
- var $L23 = $L("import.meta");
4843
- var $L24 = $L("return.value");
4844
- var $L25 = $L(",");
4845
- var $L26 = $L("(&)");
4846
- var $L27 = $L("->");
4847
- var $L28 = $L("\u2192");
4848
- var $L29 = $L("}");
4849
- var $L30 = $L("null");
4850
- var $L31 = $L("true");
4851
- var $L32 = $L("false");
4852
- var $L33 = $L("yes");
4853
- var $L34 = $L("on");
4854
- var $L35 = $L("no");
4855
- var $L36 = $L("off");
4856
- var $L37 = $L(">");
4857
- var $L38 = $L("]");
4858
- var $L39 = $L("**=");
4859
- var $L40 = $L("*=");
4860
- var $L41 = $L("/=");
4861
- var $L42 = $L("%=");
4862
- var $L43 = $L("+=");
4863
- var $L44 = $L("-=");
4864
- var $L45 = $L("<<=");
4865
- var $L46 = $L(">>>=");
4866
- var $L47 = $L(">>=");
4867
- var $L48 = $L("&&=");
4868
- var $L49 = $L("&=");
4869
- var $L50 = $L("^=");
4870
- var $L51 = $L("||=");
4871
- var $L52 = $L("|=");
4872
- var $L53 = $L("??=");
4873
- var $L54 = $L("?=");
4874
- var $L55 = $L("and=");
4875
- var $L56 = $L("or=");
4876
- var $L57 = $L("**");
4877
- var $L58 = $L("*");
4878
- var $L59 = $L("/");
4879
- var $L60 = $L("%%");
4880
- var $L61 = $L("%");
4881
- var $L62 = $L("+");
4882
- var $L63 = $L("<=");
4883
- var $L64 = $L("\u2264");
4884
- var $L65 = $L(">=");
4885
- var $L66 = $L("\u2265");
4886
- var $L67 = $L("<?");
4887
- var $L68 = $L("!<?");
4888
- var $L69 = $L("<<");
4889
- var $L70 = $L("\xAB");
4890
- var $L71 = $L(">>>");
4891
- var $L72 = $L("\u22D9");
4892
- var $L73 = $L(">>");
4893
- var $L74 = $L("\xBB");
4894
- var $L75 = $L("!==");
4895
- var $L76 = $L("\u2262");
4896
- var $L77 = $L("!=");
4897
- var $L78 = $L("\u2260");
4898
- var $L79 = $L("isnt");
4899
- var $L80 = $L("===");
4900
- var $L81 = $L("\u2263");
4901
- var $L82 = $L("\u2A76");
4902
- var $L83 = $L("==");
4903
- var $L84 = $L("\u2261");
4904
- var $L85 = $L("\u2A75");
4905
- var $L86 = $L("and");
4906
- var $L87 = $L("&&");
4907
- var $L88 = $L("or");
4908
- var $L89 = $L("||");
4909
- var $L90 = $L("\u2016");
4910
- var $L91 = $L("^^");
4911
- var $L92 = $L("xor");
4912
- var $L93 = $L("xnor");
4913
- var $L94 = $L("??");
4914
- var $L95 = $L("\u2047");
4915
- var $L96 = $L("instanceof");
4916
- var $L97 = $L("\u2208");
4917
- var $L98 = $L("\u220B");
4918
- var $L99 = $L("\u220C");
4919
- var $L100 = $L("\u2209");
4920
- var $L101 = $L("&");
4921
- var $L102 = $L("|");
4922
- var $L103 = $L("$:");
4923
- var $L104 = $L(";");
4924
- var $L105 = $L("break");
4925
- var $L106 = $L("continue");
4926
- var $L107 = $L("debugger");
4927
- var $L108 = $L("require");
4928
- var $L109 = $L("with");
4929
- var $L110 = $L("assert");
4930
- var $L111 = $L(":=");
4931
- var $L112 = $L("\u2254");
4932
- var $L113 = $L(".=");
4846
+ var $L20 = $L("^");
4847
+ var $L21 = $L("-");
4848
+ var $L22 = $L("import.meta");
4849
+ var $L23 = $L("return.value");
4850
+ var $L24 = $L(",");
4851
+ var $L25 = $L("(&)");
4852
+ var $L26 = $L("->");
4853
+ var $L27 = $L("\u2192");
4854
+ var $L28 = $L("}");
4855
+ var $L29 = $L("null");
4856
+ var $L30 = $L("true");
4857
+ var $L31 = $L("false");
4858
+ var $L32 = $L("yes");
4859
+ var $L33 = $L("on");
4860
+ var $L34 = $L("no");
4861
+ var $L35 = $L("off");
4862
+ var $L36 = $L(">");
4863
+ var $L37 = $L("]");
4864
+ var $L38 = $L("**=");
4865
+ var $L39 = $L("*=");
4866
+ var $L40 = $L("/=");
4867
+ var $L41 = $L("%=");
4868
+ var $L42 = $L("+=");
4869
+ var $L43 = $L("-=");
4870
+ var $L44 = $L("<<=");
4871
+ var $L45 = $L(">>>=");
4872
+ var $L46 = $L(">>=");
4873
+ var $L47 = $L("&&=");
4874
+ var $L48 = $L("&=");
4875
+ var $L49 = $L("^=");
4876
+ var $L50 = $L("||=");
4877
+ var $L51 = $L("|=");
4878
+ var $L52 = $L("??=");
4879
+ var $L53 = $L("?=");
4880
+ var $L54 = $L("and=");
4881
+ var $L55 = $L("or=");
4882
+ var $L56 = $L("**");
4883
+ var $L57 = $L("*");
4884
+ var $L58 = $L("/");
4885
+ var $L59 = $L("%%");
4886
+ var $L60 = $L("%");
4887
+ var $L61 = $L("+");
4888
+ var $L62 = $L("<=");
4889
+ var $L63 = $L("\u2264");
4890
+ var $L64 = $L(">=");
4891
+ var $L65 = $L("\u2265");
4892
+ var $L66 = $L("<?");
4893
+ var $L67 = $L("!<?");
4894
+ var $L68 = $L("<<");
4895
+ var $L69 = $L("\xAB");
4896
+ var $L70 = $L(">>>");
4897
+ var $L71 = $L("\u22D9");
4898
+ var $L72 = $L(">>");
4899
+ var $L73 = $L("\xBB");
4900
+ var $L74 = $L("!==");
4901
+ var $L75 = $L("\u2262");
4902
+ var $L76 = $L("!=");
4903
+ var $L77 = $L("\u2260");
4904
+ var $L78 = $L("isnt");
4905
+ var $L79 = $L("===");
4906
+ var $L80 = $L("\u2263");
4907
+ var $L81 = $L("\u2A76");
4908
+ var $L82 = $L("==");
4909
+ var $L83 = $L("\u2261");
4910
+ var $L84 = $L("\u2A75");
4911
+ var $L85 = $L("and");
4912
+ var $L86 = $L("&&");
4913
+ var $L87 = $L("or");
4914
+ var $L88 = $L("||");
4915
+ var $L89 = $L("\u2016");
4916
+ var $L90 = $L("^^");
4917
+ var $L91 = $L("xor");
4918
+ var $L92 = $L("xnor");
4919
+ var $L93 = $L("??");
4920
+ var $L94 = $L("\u2047");
4921
+ var $L95 = $L("instanceof");
4922
+ var $L96 = $L("\u2208");
4923
+ var $L97 = $L("\u220B");
4924
+ var $L98 = $L("\u220C");
4925
+ var $L99 = $L("\u2209");
4926
+ var $L100 = $L("&");
4927
+ var $L101 = $L("|");
4928
+ var $L102 = $L("$:");
4929
+ var $L103 = $L(";");
4930
+ var $L104 = $L("break");
4931
+ var $L105 = $L("continue");
4932
+ var $L106 = $L("debugger");
4933
+ var $L107 = $L("require");
4934
+ var $L108 = $L("with");
4935
+ var $L109 = $L("assert");
4936
+ var $L110 = $L(":=");
4937
+ var $L111 = $L("\u2254");
4938
+ var $L112 = $L(".=");
4939
+ var $L113 = $L("::=");
4933
4940
  var $L114 = $L("/*");
4934
4941
  var $L115 = $L("*/");
4935
4942
  var $L116 = $L("\\");
@@ -4958,80 +4965,81 @@ var require_parser = __commonJS({
4958
4965
  var $L139 = $L('"');
4959
4966
  var $L140 = $L("each");
4960
4967
  var $L141 = $L("else");
4961
- var $L142 = $L("export");
4962
- var $L143 = $L("extends");
4963
- var $L144 = $L("finally");
4964
- var $L145 = $L("for");
4965
- var $L146 = $L("from");
4966
- var $L147 = $L("function");
4967
- var $L148 = $L("get");
4968
- var $L149 = $L("set");
4969
- var $L150 = $L("#");
4970
- var $L151 = $L("if");
4971
- var $L152 = $L("in");
4972
- var $L153 = $L("infer");
4973
- var $L154 = $L("let");
4974
- var $L155 = $L("const");
4975
- var $L156 = $L("is");
4976
- var $L157 = $L("loop");
4977
- var $L158 = $L("new");
4978
- var $L159 = $L("not");
4979
- var $L160 = $L("of");
4980
- var $L161 = $L("[");
4981
- var $L162 = $L("operator");
4982
- var $L163 = $L("own");
4983
- var $L164 = $L("public");
4984
- var $L165 = $L("private");
4985
- var $L166 = $L("protected");
4986
- var $L167 = $L("||>");
4987
- var $L168 = $L("|\u25B7");
4988
- var $L169 = $L("|>=");
4989
- var $L170 = $L("\u25B7=");
4990
- var $L171 = $L("|>");
4991
- var $L172 = $L("\u25B7");
4992
- var $L173 = $L("readonly");
4993
- var $L174 = $L("return");
4994
- var $L175 = $L("satisfies");
4995
- var $L176 = $L("'");
4996
- var $L177 = $L("static");
4997
- var $L178 = $L("${");
4998
- var $L179 = $L("super");
4999
- var $L180 = $L("switch");
5000
- var $L181 = $L("target");
5001
- var $L182 = $L("then");
5002
- var $L183 = $L("this");
5003
- var $L184 = $L("throw");
5004
- var $L185 = $L('"""');
5005
- var $L186 = $L("'''");
5006
- var $L187 = $L("///");
5007
- var $L188 = $L("```");
5008
- var $L189 = $L("try");
5009
- var $L190 = $L("typeof");
5010
- var $L191 = $L("unless");
5011
- var $L192 = $L("until");
5012
- var $L193 = $L("using");
5013
- var $L194 = $L("var");
5014
- var $L195 = $L("void");
5015
- var $L196 = $L("when");
5016
- var $L197 = $L("while");
5017
- var $L198 = $L("yield");
5018
- var $L199 = $L("/>");
5019
- var $L200 = $L("</");
5020
- var $L201 = $L("<>");
5021
- var $L202 = $L("</>");
5022
- var $L203 = $L("<!--");
5023
- var $L204 = $L("-->");
5024
- var $L205 = $L("type");
5025
- var $L206 = $L("enum");
5026
- var $L207 = $L("interface");
5027
- var $L208 = $L("global");
5028
- var $L209 = $L("module");
5029
- var $L210 = $L("namespace");
5030
- var $L211 = $L("asserts");
5031
- var $L212 = $L("keyof");
5032
- var $L213 = $L("???");
5033
- var $L214 = $L("[]");
5034
- var $L215 = $L("civet");
4968
+ var $L142 = $L("!");
4969
+ var $L143 = $L("export");
4970
+ var $L144 = $L("extends");
4971
+ var $L145 = $L("finally");
4972
+ var $L146 = $L("for");
4973
+ var $L147 = $L("from");
4974
+ var $L148 = $L("function");
4975
+ var $L149 = $L("get");
4976
+ var $L150 = $L("set");
4977
+ var $L151 = $L("#");
4978
+ var $L152 = $L("if");
4979
+ var $L153 = $L("in");
4980
+ var $L154 = $L("infer");
4981
+ var $L155 = $L("let");
4982
+ var $L156 = $L("const");
4983
+ var $L157 = $L("is");
4984
+ var $L158 = $L("loop");
4985
+ var $L159 = $L("new");
4986
+ var $L160 = $L("not");
4987
+ var $L161 = $L("of");
4988
+ var $L162 = $L("[");
4989
+ var $L163 = $L("operator");
4990
+ var $L164 = $L("own");
4991
+ var $L165 = $L("public");
4992
+ var $L166 = $L("private");
4993
+ var $L167 = $L("protected");
4994
+ var $L168 = $L("||>");
4995
+ var $L169 = $L("|\u25B7");
4996
+ var $L170 = $L("|>=");
4997
+ var $L171 = $L("\u25B7=");
4998
+ var $L172 = $L("|>");
4999
+ var $L173 = $L("\u25B7");
5000
+ var $L174 = $L("readonly");
5001
+ var $L175 = $L("return");
5002
+ var $L176 = $L("satisfies");
5003
+ var $L177 = $L("'");
5004
+ var $L178 = $L("static");
5005
+ var $L179 = $L("${");
5006
+ var $L180 = $L("super");
5007
+ var $L181 = $L("switch");
5008
+ var $L182 = $L("target");
5009
+ var $L183 = $L("then");
5010
+ var $L184 = $L("this");
5011
+ var $L185 = $L("throw");
5012
+ var $L186 = $L('"""');
5013
+ var $L187 = $L("'''");
5014
+ var $L188 = $L("///");
5015
+ var $L189 = $L("```");
5016
+ var $L190 = $L("try");
5017
+ var $L191 = $L("typeof");
5018
+ var $L192 = $L("unless");
5019
+ var $L193 = $L("until");
5020
+ var $L194 = $L("using");
5021
+ var $L195 = $L("var");
5022
+ var $L196 = $L("void");
5023
+ var $L197 = $L("when");
5024
+ var $L198 = $L("while");
5025
+ var $L199 = $L("yield");
5026
+ var $L200 = $L("/>");
5027
+ var $L201 = $L("</");
5028
+ var $L202 = $L("<>");
5029
+ var $L203 = $L("</>");
5030
+ var $L204 = $L("<!--");
5031
+ var $L205 = $L("-->");
5032
+ var $L206 = $L("type");
5033
+ var $L207 = $L("enum");
5034
+ var $L208 = $L("interface");
5035
+ var $L209 = $L("global");
5036
+ var $L210 = $L("module");
5037
+ var $L211 = $L("namespace");
5038
+ var $L212 = $L("asserts");
5039
+ var $L213 = $L("keyof");
5040
+ var $L214 = $L("???");
5041
+ var $L215 = $L("[]");
5042
+ var $L216 = $L("civet");
5035
5043
  var $R0 = $R(new RegExp("(?=debugger|if|unless|do|for|loop|until|while|switch|throw|try)", "suy"));
5036
5044
  var $R1 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
5037
5045
  var $R2 = $R(new RegExp("[0-9]", "suy"));
@@ -5049,70 +5057,70 @@ var require_parser = __commonJS({
5049
5057
  var $R14 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5050
5058
  var $R15 = $R(new RegExp("(?=\\[)", "suy"));
5051
5059
  var $R16 = $R(new RegExp("[!+-]", "suy"));
5052
- var $R17 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
5053
- var $R18 = $R(new RegExp("!\\^\\^?", "suy"));
5054
- var $R19 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
5055
- var $R20 = $R(new RegExp("[:.]", "suy"));
5056
- var $R21 = $R(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
5057
- var $R22 = $R(new RegExp("(?=loop|do|for|until|while)", "suy"));
5058
- var $R23 = $R(new RegExp("(?=[\\s\\),])", "suy"));
5059
- var $R24 = $R(new RegExp('[^;"\\s]+', "suy"));
5060
- var $R25 = $R(new RegExp("(?=[0-9.])", "suy"));
5061
- var $R26 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
5062
- var $R27 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
5063
- var $R28 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
5064
- var $R29 = $R(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
5065
- var $R30 = $R(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
5066
- var $R31 = $R(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
5067
- var $R32 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
5068
- var $R33 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
5069
- var $R34 = $R(new RegExp("(?=[0-9])", "suy"));
5070
- var $R35 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
5071
- var $R36 = $R(new RegExp('(?:\\\\.|[^"])*', "suy"));
5072
- var $R37 = $R(new RegExp("(?:\\\\.|[^'])*", "suy"));
5073
- var $R38 = $R(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
5074
- var $R39 = $R(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
5075
- var $R40 = $R(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
5076
- var $R41 = $R(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
5077
- var $R42 = $R(new RegExp("(?:\\\\.)", "suy"));
5078
- var $R43 = $R(new RegExp("[\\s]+", "suy"));
5079
- var $R44 = $R(new RegExp("\\/(?!\\/\\/)", "suy"));
5080
- var $R45 = $R(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
5081
- var $R46 = $R(new RegExp("[*\\/\\r\\n]", "suy"));
5082
- var $R47 = $R(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
5083
- var $R48 = $R(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5084
- var $R49 = $R(new RegExp("(?=[`'\"])", "suy"));
5085
- var $R50 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
5086
- var $R51 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
5087
- var $R52 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
5088
- var $R53 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
5089
- var $R54 = $R(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
5090
- var $R55 = $R(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
5091
- var $R56 = $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"));
5092
- var $R57 = $R(new RegExp("(?=\\/|#)", "suy"));
5093
- var $R58 = $R(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
5094
- var $R59 = $R(new RegExp(".", "suy"));
5095
- var $R60 = $R(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
5096
- var $R61 = $R(new RegExp("[^]*?###", "suy"));
5097
- var $R62 = $R(new RegExp("###(?!#)", "suy"));
5098
- var $R63 = $R(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
5099
- var $R64 = $R(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
5100
- var $R65 = $R(new RegExp("[ \\t]+", "suy"));
5101
- var $R66 = $R(new RegExp("(?=\\s|\\/|#)", "suy"));
5102
- var $R67 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
5103
- var $R68 = $R(new RegExp("['\u2019]s", "suy"));
5104
- var $R69 = $R(new RegExp("\\s", "suy"));
5105
- var $R70 = $R(new RegExp("(?=[<])", "suy"));
5106
- var $R71 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
5107
- var $R72 = $R(new RegExp("[\\s>]|\\/>", "suy"));
5108
- var $R73 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
5109
- var $R74 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
5110
- var $R75 = $R(new RegExp("[<>]", "suy"));
5111
- var $R76 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
5112
- var $R77 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
5113
- var $R78 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
5114
- var $R79 = $R(new RegExp("[+-]?", "suy"));
5115
- var $R80 = $R(new RegExp("[+-]", "suy"));
5060
+ var $R17 = $R(new RegExp("[+-]", "suy"));
5061
+ var $R18 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
5062
+ var $R19 = $R(new RegExp("!\\^\\^?", "suy"));
5063
+ var $R20 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
5064
+ var $R21 = $R(new RegExp("[:.]", "suy"));
5065
+ var $R22 = $R(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
5066
+ var $R23 = $R(new RegExp("(?=loop|do|for|until|while)", "suy"));
5067
+ var $R24 = $R(new RegExp("(?=[\\s\\),])", "suy"));
5068
+ var $R25 = $R(new RegExp('[^;"\\s]+', "suy"));
5069
+ var $R26 = $R(new RegExp("(?=[0-9.])", "suy"));
5070
+ var $R27 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
5071
+ var $R28 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
5072
+ var $R29 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
5073
+ var $R30 = $R(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
5074
+ var $R31 = $R(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
5075
+ var $R32 = $R(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
5076
+ var $R33 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
5077
+ var $R34 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
5078
+ var $R35 = $R(new RegExp("(?=[0-9])", "suy"));
5079
+ var $R36 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
5080
+ var $R37 = $R(new RegExp('(?:\\\\.|[^"])*', "suy"));
5081
+ var $R38 = $R(new RegExp("(?:\\\\.|[^'])*", "suy"));
5082
+ var $R39 = $R(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
5083
+ var $R40 = $R(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
5084
+ var $R41 = $R(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
5085
+ var $R42 = $R(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
5086
+ var $R43 = $R(new RegExp("(?:\\\\.)", "suy"));
5087
+ var $R44 = $R(new RegExp("[\\s]+", "suy"));
5088
+ var $R45 = $R(new RegExp("\\/(?!\\/\\/)", "suy"));
5089
+ var $R46 = $R(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
5090
+ var $R47 = $R(new RegExp("[*\\/\\r\\n]", "suy"));
5091
+ var $R48 = $R(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
5092
+ var $R49 = $R(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5093
+ var $R50 = $R(new RegExp("(?=[`'\"])", "suy"));
5094
+ var $R51 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
5095
+ var $R52 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
5096
+ var $R53 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
5097
+ var $R54 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
5098
+ var $R55 = $R(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
5099
+ var $R56 = $R(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
5100
+ var $R57 = $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"));
5101
+ var $R58 = $R(new RegExp("(?=\\/|#)", "suy"));
5102
+ var $R59 = $R(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
5103
+ var $R60 = $R(new RegExp(".", "suy"));
5104
+ var $R61 = $R(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
5105
+ var $R62 = $R(new RegExp("[^]*?###", "suy"));
5106
+ var $R63 = $R(new RegExp("###(?!#)", "suy"));
5107
+ var $R64 = $R(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
5108
+ var $R65 = $R(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
5109
+ var $R66 = $R(new RegExp("[ \\t]+", "suy"));
5110
+ var $R67 = $R(new RegExp("(?=\\s|\\/|#)", "suy"));
5111
+ var $R68 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
5112
+ var $R69 = $R(new RegExp("['\u2019]s", "suy"));
5113
+ var $R70 = $R(new RegExp("\\s", "suy"));
5114
+ var $R71 = $R(new RegExp("(?=[<])", "suy"));
5115
+ var $R72 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
5116
+ var $R73 = $R(new RegExp("[\\s>]|\\/>", "suy"));
5117
+ var $R74 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
5118
+ var $R75 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
5119
+ var $R76 = $R(new RegExp("[<>]", "suy"));
5120
+ var $R77 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
5121
+ var $R78 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
5122
+ var $R79 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
5123
+ var $R80 = $R(new RegExp("[+-]?", "suy"));
5116
5124
  var $R81 = $R(new RegExp("(?=if|unless)", "suy"));
5117
5125
  var $R82 = $R(new RegExp("#![^\\r\\n]*", "suy"));
5118
5126
  var $R83 = $R(new RegExp("[\\t ]*", "suy"));
@@ -6261,7 +6269,14 @@ var require_parser = __commonJS({
6261
6269
  function AtThis(ctx, state) {
6262
6270
  return $EVENT(ctx, state, "AtThis", AtThis$0);
6263
6271
  }
6264
- var LeftHandSideExpression$0 = $S($P($S(New, $N($C($EXPECT($L7, 'LeftHandSideExpression "."'), $EXPECT($L14, 'LeftHandSideExpression ":"'))), __)), CallExpression);
6272
+ var LeftHandSideExpression$0 = $TS($S($P($S(New, $N($C($EXPECT($L7, 'LeftHandSideExpression "."'), $EXPECT($L14, 'LeftHandSideExpression ":"'))), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
6273
+ var expression = $2;
6274
+ return {
6275
+ type: "NewExpression",
6276
+ children: $0,
6277
+ expression
6278
+ };
6279
+ });
6265
6280
  var LeftHandSideExpression$1 = CallExpression;
6266
6281
  var LeftHandSideExpression$$ = [LeftHandSideExpression$0, LeftHandSideExpression$1];
6267
6282
  function LeftHandSideExpression(ctx, state) {
@@ -6324,10 +6339,8 @@ var require_parser = __commonJS({
6324
6339
  children: $0
6325
6340
  };
6326
6341
  });
6327
- var OptionalShorthand$1 = NonNullAssertion;
6328
- var OptionalShorthand$$ = [OptionalShorthand$0, OptionalShorthand$1];
6329
6342
  function OptionalShorthand(ctx, state) {
6330
- return $EVENT_C(ctx, state, "OptionalShorthand", OptionalShorthand$$);
6343
+ return $EVENT(ctx, state, "OptionalShorthand", OptionalShorthand$0);
6331
6344
  }
6332
6345
  var OptionalDot$0 = $S($Q(InlineComment), Dot);
6333
6346
  var OptionalDot$1 = InsertDot;
@@ -6335,8 +6348,8 @@ var require_parser = __commonJS({
6335
6348
  function OptionalDot(ctx, state) {
6336
6349
  return $EVENT_C(ctx, state, "OptionalDot", OptionalDot$$);
6337
6350
  }
6338
- var NonNullAssertion$0 = $T($S($EXPECT($L20, 'NonNullAssertion "!"'), $N($EXPECT($L21, 'NonNullAssertion "^"'))), function(value) {
6339
- return { "type": "NonNullAssertion", "ts": true, "children": value[0] };
6351
+ var NonNullAssertion$0 = $T($S(ExclamationPoint, $N($EXPECT($L20, 'NonNullAssertion "^"'))), function(value) {
6352
+ return { "type": "NonNullAssertion", "ts": true, "children": [value[0]] };
6340
6353
  });
6341
6354
  function NonNullAssertion(ctx, state) {
6342
6355
  return $EVENT(ctx, state, "NonNullAssertion", NonNullAssertion$0);
@@ -6388,13 +6401,15 @@ var require_parser = __commonJS({
6388
6401
  var dot = $1;
6389
6402
  var comments = $2;
6390
6403
  var content = $3;
6404
+ if (!dot && !comments.length)
6405
+ return content;
6391
6406
  if (dot) {
6392
6407
  if (dot.type === "Optional" && content.type === "SliceExpression") {
6393
6408
  return [...dot.children.slice(0, -1), ...comments, content];
6394
6409
  }
6395
- return $0.flat();
6410
+ return [dot, ...comments, content];
6396
6411
  }
6397
- return content;
6412
+ return [...comments, content];
6398
6413
  });
6399
6414
  var MemberExpressionRestBody$1 = PropertyAccess;
6400
6415
  var MemberExpressionRestBody$2 = PropertyGlob;
@@ -6530,7 +6545,7 @@ var require_parser = __commonJS({
6530
6545
  ]
6531
6546
  };
6532
6547
  });
6533
- var PropertyAccess$1 = $TS($S(AccessStart, $EXPECT($L22, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6548
+ var PropertyAccess$1 = $TS($S(AccessStart, $EXPECT($L21, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6534
6549
  var dot = $1;
6535
6550
  var neg = $2;
6536
6551
  var num = $3;
@@ -6606,7 +6621,7 @@ var require_parser = __commonJS({
6606
6621
  return $EVENT_C(ctx, state, "SuperProperty", SuperProperty$$);
6607
6622
  }
6608
6623
  var MetaProperty$0 = $S(New, Dot, Target);
6609
- var MetaProperty$1 = $TS($S($EXPECT($L23, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6624
+ var MetaProperty$1 = $TS($S($EXPECT($L22, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6610
6625
  return { $loc, token: $1 };
6611
6626
  });
6612
6627
  var MetaProperty$2 = ReturnValue;
@@ -6614,7 +6629,7 @@ var require_parser = __commonJS({
6614
6629
  function MetaProperty(ctx, state) {
6615
6630
  return $EVENT_C(ctx, state, "MetaProperty", MetaProperty$$);
6616
6631
  }
6617
- var ReturnValue$0 = $TV($C($S($EXPECT($L24, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6632
+ var ReturnValue$0 = $TV($C($S($EXPECT($L23, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6618
6633
  return { type: "ReturnValue", children: [$1[0]] };
6619
6634
  });
6620
6635
  function ReturnValue(ctx, state) {
@@ -7127,7 +7142,7 @@ var require_parser = __commonJS({
7127
7142
  children: [ws, binding]
7128
7143
  };
7129
7144
  });
7130
- var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L25, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
7145
+ var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L24, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
7131
7146
  return {
7132
7147
  children: [{
7133
7148
  type: "ElisionElement",
@@ -7253,7 +7268,7 @@ var require_parser = __commonJS({
7253
7268
  block
7254
7269
  };
7255
7270
  });
7256
- var FunctionExpression$1 = $TV($EXPECT($L26, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
7271
+ var FunctionExpression$1 = $TV($EXPECT($L25, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
7257
7272
  return makeAmpersandFunction();
7258
7273
  });
7259
7274
  var FunctionExpression$2 = $TS($S(OpenParen, BinaryOp, CloseParen), function($skip, $loc, $0, $1, $2, $3) {
@@ -7354,22 +7369,7 @@ var require_parser = __commonJS({
7354
7369
  };
7355
7370
  });
7356
7371
  var FunctionExpression$5 = AmpersandFunctionExpression;
7357
- var FunctionExpression$6 = $TS($S(Identifier, __, ConstAssignment, $Q(_), ThinArrowFunction), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7358
- var id = $1;
7359
- var ws = $4;
7360
- var fn = $5;
7361
- return {
7362
- ...fn,
7363
- id,
7364
- children: [
7365
- ...fn.children.slice(0, 3),
7366
- insertTrimmingSpace(ws, " "),
7367
- id,
7368
- ...fn.children.slice(3)
7369
- ]
7370
- };
7371
- });
7372
- var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1, FunctionExpression$2, FunctionExpression$3, FunctionExpression$4, FunctionExpression$5, FunctionExpression$6];
7372
+ var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1, FunctionExpression$2, FunctionExpression$3, FunctionExpression$4, FunctionExpression$5];
7373
7373
  function FunctionExpression(ctx, state) {
7374
7374
  return $EVENT_C(ctx, state, "FunctionExpression", FunctionExpression$$);
7375
7375
  }
@@ -7599,7 +7599,7 @@ var require_parser = __commonJS({
7599
7599
  function ThinArrowFunction(ctx, state) {
7600
7600
  return $EVENT(ctx, state, "ThinArrowFunction", ThinArrowFunction$0);
7601
7601
  }
7602
- var Arrow$0 = $TV($C($EXPECT($L27, 'Arrow "->"'), $EXPECT($L28, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7602
+ var Arrow$0 = $TV($C($EXPECT($L26, 'Arrow "->"'), $EXPECT($L27, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7603
7603
  return { $loc, token: "->" };
7604
7604
  });
7605
7605
  function Arrow(ctx, state) {
@@ -7899,7 +7899,7 @@ var require_parser = __commonJS({
7899
7899
  }
7900
7900
  var BracedContent$0 = NestedBlockStatements;
7901
7901
  var BracedContent$1 = SingleLineStatements;
7902
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L29, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7902
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L28, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7903
7903
  const expressions = [];
7904
7904
  return {
7905
7905
  type: "BlockStatement",
@@ -7969,7 +7969,7 @@ var require_parser = __commonJS({
7969
7969
  function LiteralContent(ctx, state) {
7970
7970
  return $EVENT_C(ctx, state, "LiteralContent", LiteralContent$$);
7971
7971
  }
7972
- var NullLiteral$0 = $TS($S($EXPECT($L30, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7972
+ var NullLiteral$0 = $TS($S($EXPECT($L29, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7973
7973
  return { $loc, token: $1 };
7974
7974
  });
7975
7975
  function NullLiteral(ctx, state) {
@@ -7984,17 +7984,17 @@ var require_parser = __commonJS({
7984
7984
  var _BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
7985
7985
  return value[1];
7986
7986
  });
7987
- var _BooleanLiteral$1 = $TS($S($C($EXPECT($L31, '_BooleanLiteral "true"'), $EXPECT($L32, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7987
+ var _BooleanLiteral$1 = $TS($S($C($EXPECT($L30, '_BooleanLiteral "true"'), $EXPECT($L31, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7988
7988
  return { $loc, token: $1 };
7989
7989
  });
7990
7990
  var _BooleanLiteral$$ = [_BooleanLiteral$0, _BooleanLiteral$1];
7991
7991
  function _BooleanLiteral(ctx, state) {
7992
7992
  return $EVENT_C(ctx, state, "_BooleanLiteral", _BooleanLiteral$$);
7993
7993
  }
7994
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L33, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L34, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7994
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L32, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L33, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7995
7995
  return { $loc, token: "true" };
7996
7996
  });
7997
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L35, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L36, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7997
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L34, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L35, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7998
7998
  return { $loc, token: "false" };
7999
7999
  });
8000
8000
  var CoffeeScriptBooleanLiteral$$ = [CoffeeScriptBooleanLiteral$0, CoffeeScriptBooleanLiteral$1];
@@ -8026,7 +8026,7 @@ var require_parser = __commonJS({
8026
8026
  function IdentifierReference(ctx, state) {
8027
8027
  return $EVENT(ctx, state, "IdentifierReference", IdentifierReference$0);
8028
8028
  }
8029
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L37, 'UpcomingAssignment ">"')))));
8029
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L36, 'UpcomingAssignment ">"')))));
8030
8030
  function UpcomingAssignment(ctx, state) {
8031
8031
  return $EVENT(ctx, state, "UpcomingAssignment", UpcomingAssignment$0);
8032
8032
  }
@@ -8184,7 +8184,7 @@ var require_parser = __commonJS({
8184
8184
  return $EVENT(ctx, state, "NestedElement", NestedElement$0);
8185
8185
  }
8186
8186
  var ArrayElementDelimiter$0 = $S(__, Comma);
8187
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L38, 'ArrayElementDelimiter "]"')));
8187
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L37, 'ArrayElementDelimiter "]"')));
8188
8188
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
8189
8189
  return value[1];
8190
8190
  });
@@ -8438,7 +8438,7 @@ var require_parser = __commonJS({
8438
8438
  return $EVENT(ctx, state, "InlineObjectPropertyDelimiter", InlineObjectPropertyDelimiter$0);
8439
8439
  }
8440
8440
  var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
8441
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L29, 'ObjectPropertyDelimiter "}"')));
8441
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L28, 'ObjectPropertyDelimiter "}"')));
8442
8442
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
8443
8443
  return value[1];
8444
8444
  });
@@ -8494,22 +8494,26 @@ var require_parser = __commonJS({
8494
8494
  value: exp
8495
8495
  };
8496
8496
  });
8497
- var PropertyDefinition$4 = $TS($S($E(_), $N(EOS), CallExpression), function($skip, $loc, $0, $1, $2, $3) {
8497
+ var PropertyDefinition$4 = $TS($S($E(_), $N(EOS), $Q(UnaryOp), CallExpression, $E(UnaryPostfix)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8498
8498
  var ws = $1;
8499
- var value = $3;
8500
- switch (value.type) {
8501
- case "Identifier":
8502
- return { ...value, children: [ws, ...value.children] };
8503
- case "ObjectExpression":
8504
- let first = value.properties[0];
8505
- if (first) {
8506
- first = {
8507
- ...first,
8508
- children: [ws, ...first.children],
8509
- hoistDec: value.hoistDec
8510
- };
8511
- }
8512
- return [first, ...value.properties.slice(1)];
8499
+ var pre = $3;
8500
+ var value = $4;
8501
+ var post = $5;
8502
+ if (!pre.length && !post) {
8503
+ switch (value.type) {
8504
+ case "Identifier":
8505
+ return { ...value, children: [ws, ...value.children] };
8506
+ case "ObjectExpression":
8507
+ let first = value.properties[0];
8508
+ if (first) {
8509
+ first = {
8510
+ ...first,
8511
+ children: [ws, ...first.children],
8512
+ hoistDec: value.hoistDec
8513
+ };
8514
+ }
8515
+ return [first, ...value.properties.slice(1)];
8516
+ }
8513
8517
  }
8514
8518
  const last = lastAccessInCallExpression(value);
8515
8519
  if (!last)
@@ -8557,7 +8561,7 @@ var require_parser = __commonJS({
8557
8561
  name = name.slice(1);
8558
8562
  return {
8559
8563
  type: "Property",
8560
- children: [ws, name, ": ", value],
8564
+ children: [ws, name, ": ", processUnaryExpression(pre, value, post)],
8561
8565
  name,
8562
8566
  names: [],
8563
8567
  value,
@@ -8626,7 +8630,7 @@ var require_parser = __commonJS({
8626
8630
  implicit: true
8627
8631
  };
8628
8632
  });
8629
- var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L22, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8633
+ var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($R17, "ComputedPropertyName /[+-]/"), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8630
8634
  const expression = [$2, $3];
8631
8635
  return {
8632
8636
  type: "ComputedPropertyName",
@@ -8664,7 +8668,7 @@ var require_parser = __commonJS({
8664
8668
  ts: true
8665
8669
  };
8666
8670
  });
8667
- var MethodDefinition$1 = $TS($S(MethodSignature, $N(PropertyAccess), $E(BracedBlock)), function($skip, $loc, $0, $1, $2, $3) {
8671
+ var MethodDefinition$1 = $TS($S(MethodSignature, $N($C(PropertyAccess, UnaryPostfix, NonNullAssertion)), $E(BracedBlock)), function($skip, $loc, $0, $1, $2, $3) {
8668
8672
  var signature = $1;
8669
8673
  var block = $3;
8670
8674
  let children = $0;
@@ -8931,10 +8935,10 @@ var require_parser = __commonJS({
8931
8935
  function OperatorAssignmentOp(ctx, state) {
8932
8936
  return $EVENT_C(ctx, state, "OperatorAssignmentOp", OperatorAssignmentOp$$);
8933
8937
  }
8934
- var AssignmentOpSymbol$0 = $EXPECT($L39, 'AssignmentOpSymbol "**="');
8935
- var AssignmentOpSymbol$1 = $EXPECT($L40, 'AssignmentOpSymbol "*="');
8936
- var AssignmentOpSymbol$2 = $EXPECT($L41, 'AssignmentOpSymbol "/="');
8937
- var AssignmentOpSymbol$3 = $EXPECT($L42, 'AssignmentOpSymbol "%="');
8938
+ var AssignmentOpSymbol$0 = $EXPECT($L38, 'AssignmentOpSymbol "**="');
8939
+ var AssignmentOpSymbol$1 = $EXPECT($L39, 'AssignmentOpSymbol "*="');
8940
+ var AssignmentOpSymbol$2 = $EXPECT($L40, 'AssignmentOpSymbol "/="');
8941
+ var AssignmentOpSymbol$3 = $EXPECT($L41, 'AssignmentOpSymbol "%="');
8938
8942
  var AssignmentOpSymbol$4 = $TS($S($C($EXPECT($L8, 'AssignmentOpSymbol "++"'), $EXPECT($L10, 'AssignmentOpSymbol "\u29FA"')), Equals), function($skip, $loc, $0, $1, $2) {
8939
8943
  return {
8940
8944
  special: true,
@@ -8943,18 +8947,18 @@ var require_parser = __commonJS({
8943
8947
  children: [$2]
8944
8948
  };
8945
8949
  });
8946
- var AssignmentOpSymbol$5 = $EXPECT($L43, 'AssignmentOpSymbol "+="');
8947
- var AssignmentOpSymbol$6 = $EXPECT($L44, 'AssignmentOpSymbol "-="');
8948
- var AssignmentOpSymbol$7 = $EXPECT($L45, 'AssignmentOpSymbol "<<="');
8949
- var AssignmentOpSymbol$8 = $EXPECT($L46, 'AssignmentOpSymbol ">>>="');
8950
- var AssignmentOpSymbol$9 = $EXPECT($L47, 'AssignmentOpSymbol ">>="');
8951
- var AssignmentOpSymbol$10 = $EXPECT($L48, 'AssignmentOpSymbol "&&="');
8952
- var AssignmentOpSymbol$11 = $EXPECT($L49, 'AssignmentOpSymbol "&="');
8953
- var AssignmentOpSymbol$12 = $EXPECT($L50, 'AssignmentOpSymbol "^="');
8954
- var AssignmentOpSymbol$13 = $EXPECT($L51, 'AssignmentOpSymbol "||="');
8955
- var AssignmentOpSymbol$14 = $EXPECT($L52, 'AssignmentOpSymbol "|="');
8956
- var AssignmentOpSymbol$15 = $EXPECT($L53, 'AssignmentOpSymbol "??="');
8957
- var AssignmentOpSymbol$16 = $T($EXPECT($L54, 'AssignmentOpSymbol "?="'), function(value) {
8950
+ var AssignmentOpSymbol$5 = $EXPECT($L42, 'AssignmentOpSymbol "+="');
8951
+ var AssignmentOpSymbol$6 = $EXPECT($L43, 'AssignmentOpSymbol "-="');
8952
+ var AssignmentOpSymbol$7 = $EXPECT($L44, 'AssignmentOpSymbol "<<="');
8953
+ var AssignmentOpSymbol$8 = $EXPECT($L45, 'AssignmentOpSymbol ">>>="');
8954
+ var AssignmentOpSymbol$9 = $EXPECT($L46, 'AssignmentOpSymbol ">>="');
8955
+ var AssignmentOpSymbol$10 = $EXPECT($L47, 'AssignmentOpSymbol "&&="');
8956
+ var AssignmentOpSymbol$11 = $EXPECT($L48, 'AssignmentOpSymbol "&="');
8957
+ var AssignmentOpSymbol$12 = $EXPECT($L49, 'AssignmentOpSymbol "^="');
8958
+ var AssignmentOpSymbol$13 = $EXPECT($L50, 'AssignmentOpSymbol "||="');
8959
+ var AssignmentOpSymbol$14 = $EXPECT($L51, 'AssignmentOpSymbol "|="');
8960
+ var AssignmentOpSymbol$15 = $EXPECT($L52, 'AssignmentOpSymbol "??="');
8961
+ var AssignmentOpSymbol$16 = $T($EXPECT($L53, 'AssignmentOpSymbol "?="'), function(value) {
8958
8962
  return "??=";
8959
8963
  });
8960
8964
  var AssignmentOpSymbol$17 = $T($S($EXPECT($L3, 'AssignmentOpSymbol "="'), $N($EXPECT($L3, 'AssignmentOpSymbol "="'))), function(value) {
@@ -8967,10 +8971,10 @@ var require_parser = __commonJS({
8967
8971
  function AssignmentOpSymbol(ctx, state) {
8968
8972
  return $EVENT_C(ctx, state, "AssignmentOpSymbol", AssignmentOpSymbol$$);
8969
8973
  }
8970
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L55, 'CoffeeWordAssignmentOp "and="'), function(value) {
8974
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L54, 'CoffeeWordAssignmentOp "and="'), function(value) {
8971
8975
  return "&&=";
8972
8976
  });
8973
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L56, 'CoffeeWordAssignmentOp "or="'), function(value) {
8977
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L55, 'CoffeeWordAssignmentOp "or="'), function(value) {
8974
8978
  return "||=";
8975
8979
  });
8976
8980
  var CoffeeWordAssignmentOp$$ = [CoffeeWordAssignmentOp$0, CoffeeWordAssignmentOp$1];
@@ -9004,7 +9008,7 @@ var require_parser = __commonJS({
9004
9008
  function IdentifierBinaryOp(ctx, state) {
9005
9009
  return $EVENT(ctx, state, "IdentifierBinaryOp", IdentifierBinaryOp$0);
9006
9010
  }
9007
- var BinaryOp$0 = $T($S($EXPECT($R17, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])/"), _BinaryOp), function(value) {
9011
+ var BinaryOp$0 = $T($S($EXPECT($R18, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])/"), _BinaryOp), function(value) {
9008
9012
  var op = value[1];
9009
9013
  return op;
9010
9014
  });
@@ -9039,33 +9043,33 @@ var require_parser = __commonJS({
9039
9043
  function _BinaryOp(ctx, state) {
9040
9044
  return $EVENT_C(ctx, state, "_BinaryOp", _BinaryOp$$);
9041
9045
  }
9042
- var BinaryOpSymbol$0 = $EXPECT($L57, 'BinaryOpSymbol "**"');
9043
- var BinaryOpSymbol$1 = $EXPECT($L58, 'BinaryOpSymbol "*"');
9044
- var BinaryOpSymbol$2 = $EXPECT($L59, 'BinaryOpSymbol "/"');
9045
- var BinaryOpSymbol$3 = $TV($EXPECT($L60, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
9046
+ var BinaryOpSymbol$0 = $EXPECT($L56, 'BinaryOpSymbol "**"');
9047
+ var BinaryOpSymbol$1 = $EXPECT($L57, 'BinaryOpSymbol "*"');
9048
+ var BinaryOpSymbol$2 = $EXPECT($L58, 'BinaryOpSymbol "/"');
9049
+ var BinaryOpSymbol$3 = $TV($EXPECT($L59, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
9046
9050
  return {
9047
9051
  call: module2.getRef("modulo"),
9048
9052
  special: true
9049
9053
  };
9050
9054
  });
9051
- var BinaryOpSymbol$4 = $EXPECT($L61, 'BinaryOpSymbol "%"');
9055
+ var BinaryOpSymbol$4 = $EXPECT($L60, 'BinaryOpSymbol "%"');
9052
9056
  var BinaryOpSymbol$5 = $TV($C($EXPECT($L8, 'BinaryOpSymbol "++"'), $EXPECT($L10, 'BinaryOpSymbol "\u29FA"')), function($skip, $loc, $0, $1) {
9053
9057
  return {
9054
9058
  method: "concat",
9055
9059
  special: true
9056
9060
  };
9057
9061
  });
9058
- var BinaryOpSymbol$6 = $EXPECT($L62, 'BinaryOpSymbol "+"');
9059
- var BinaryOpSymbol$7 = $EXPECT($L22, 'BinaryOpSymbol "-"');
9060
- var BinaryOpSymbol$8 = $EXPECT($L63, 'BinaryOpSymbol "<="');
9061
- var BinaryOpSymbol$9 = $T($EXPECT($L64, 'BinaryOpSymbol "\u2264"'), function(value) {
9062
+ var BinaryOpSymbol$6 = $EXPECT($L61, 'BinaryOpSymbol "+"');
9063
+ var BinaryOpSymbol$7 = $EXPECT($L21, 'BinaryOpSymbol "-"');
9064
+ var BinaryOpSymbol$8 = $EXPECT($L62, 'BinaryOpSymbol "<="');
9065
+ var BinaryOpSymbol$9 = $T($EXPECT($L63, 'BinaryOpSymbol "\u2264"'), function(value) {
9062
9066
  return "<=";
9063
9067
  });
9064
- var BinaryOpSymbol$10 = $EXPECT($L65, 'BinaryOpSymbol ">="');
9065
- var BinaryOpSymbol$11 = $T($EXPECT($L66, 'BinaryOpSymbol "\u2265"'), function(value) {
9068
+ var BinaryOpSymbol$10 = $EXPECT($L64, 'BinaryOpSymbol ">="');
9069
+ var BinaryOpSymbol$11 = $T($EXPECT($L65, 'BinaryOpSymbol "\u2265"'), function(value) {
9066
9070
  return ">=";
9067
9071
  });
9068
- var BinaryOpSymbol$12 = $TV($EXPECT($L67, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
9072
+ var BinaryOpSymbol$12 = $TV($EXPECT($L66, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
9069
9073
  return {
9070
9074
  $loc,
9071
9075
  token: "instanceof",
@@ -9073,7 +9077,7 @@ var require_parser = __commonJS({
9073
9077
  special: true
9074
9078
  };
9075
9079
  });
9076
- var BinaryOpSymbol$13 = $TV($EXPECT($L68, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
9080
+ var BinaryOpSymbol$13 = $TV($EXPECT($L67, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
9077
9081
  return {
9078
9082
  $loc,
9079
9083
  token: "instanceof",
@@ -9082,74 +9086,74 @@ var require_parser = __commonJS({
9082
9086
  negated: true
9083
9087
  };
9084
9088
  });
9085
- var BinaryOpSymbol$14 = $EXPECT($L69, 'BinaryOpSymbol "<<"');
9086
- var BinaryOpSymbol$15 = $T($EXPECT($L70, 'BinaryOpSymbol "\xAB"'), function(value) {
9089
+ var BinaryOpSymbol$14 = $EXPECT($L68, 'BinaryOpSymbol "<<"');
9090
+ var BinaryOpSymbol$15 = $T($EXPECT($L69, 'BinaryOpSymbol "\xAB"'), function(value) {
9087
9091
  return "<<";
9088
9092
  });
9089
9093
  var BinaryOpSymbol$16 = $EXPECT($L16, 'BinaryOpSymbol "<"');
9090
- var BinaryOpSymbol$17 = $EXPECT($L71, 'BinaryOpSymbol ">>>"');
9091
- var BinaryOpSymbol$18 = $T($EXPECT($L72, 'BinaryOpSymbol "\u22D9"'), function(value) {
9094
+ var BinaryOpSymbol$17 = $EXPECT($L70, 'BinaryOpSymbol ">>>"');
9095
+ var BinaryOpSymbol$18 = $T($EXPECT($L71, 'BinaryOpSymbol "\u22D9"'), function(value) {
9092
9096
  return ">>>";
9093
9097
  });
9094
- var BinaryOpSymbol$19 = $EXPECT($L73, 'BinaryOpSymbol ">>"');
9095
- var BinaryOpSymbol$20 = $T($EXPECT($L74, 'BinaryOpSymbol "\xBB"'), function(value) {
9098
+ var BinaryOpSymbol$19 = $EXPECT($L72, 'BinaryOpSymbol ">>"');
9099
+ var BinaryOpSymbol$20 = $T($EXPECT($L73, 'BinaryOpSymbol "\xBB"'), function(value) {
9096
9100
  return ">>";
9097
9101
  });
9098
- var BinaryOpSymbol$21 = $EXPECT($L37, 'BinaryOpSymbol ">"');
9099
- var BinaryOpSymbol$22 = $EXPECT($L75, 'BinaryOpSymbol "!=="');
9100
- var BinaryOpSymbol$23 = $T($EXPECT($L76, 'BinaryOpSymbol "\u2262"'), function(value) {
9102
+ var BinaryOpSymbol$21 = $EXPECT($L36, 'BinaryOpSymbol ">"');
9103
+ var BinaryOpSymbol$22 = $EXPECT($L74, 'BinaryOpSymbol "!=="');
9104
+ var BinaryOpSymbol$23 = $T($EXPECT($L75, 'BinaryOpSymbol "\u2262"'), function(value) {
9101
9105
  return "!==";
9102
9106
  });
9103
- var BinaryOpSymbol$24 = $TV($C($EXPECT($L77, 'BinaryOpSymbol "!="'), $EXPECT($L78, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
9107
+ var BinaryOpSymbol$24 = $TV($C($EXPECT($L76, 'BinaryOpSymbol "!="'), $EXPECT($L77, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
9104
9108
  if (module2.config.coffeeEq)
9105
9109
  return "!==";
9106
9110
  return "!=";
9107
9111
  });
9108
- var BinaryOpSymbol$25 = $TS($S($EXPECT($L79, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9112
+ var BinaryOpSymbol$25 = $TS($S($EXPECT($L78, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9109
9113
  if (module2.config.coffeeIsnt)
9110
9114
  return "!==";
9111
9115
  return $skip;
9112
9116
  });
9113
- var BinaryOpSymbol$26 = $EXPECT($L80, 'BinaryOpSymbol "==="');
9114
- var BinaryOpSymbol$27 = $T($C($EXPECT($L81, 'BinaryOpSymbol "\u2263"'), $EXPECT($L82, 'BinaryOpSymbol "\u2A76"')), function(value) {
9117
+ var BinaryOpSymbol$26 = $EXPECT($L79, 'BinaryOpSymbol "==="');
9118
+ var BinaryOpSymbol$27 = $T($C($EXPECT($L80, 'BinaryOpSymbol "\u2263"'), $EXPECT($L81, 'BinaryOpSymbol "\u2A76"')), function(value) {
9115
9119
  return "===";
9116
9120
  });
9117
- var BinaryOpSymbol$28 = $TV($C($EXPECT($L83, 'BinaryOpSymbol "=="'), $EXPECT($L84, 'BinaryOpSymbol "\u2261"'), $EXPECT($L85, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
9121
+ var BinaryOpSymbol$28 = $TV($C($EXPECT($L82, 'BinaryOpSymbol "=="'), $EXPECT($L83, 'BinaryOpSymbol "\u2261"'), $EXPECT($L84, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
9118
9122
  if (module2.config.coffeeEq)
9119
9123
  return "===";
9120
9124
  return "==";
9121
9125
  });
9122
- var BinaryOpSymbol$29 = $T($S($EXPECT($L86, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
9126
+ var BinaryOpSymbol$29 = $T($S($EXPECT($L85, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
9123
9127
  return "&&";
9124
9128
  });
9125
- var BinaryOpSymbol$30 = $EXPECT($L87, 'BinaryOpSymbol "&&"');
9126
- var BinaryOpSymbol$31 = $T($S($EXPECT($L88, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
9129
+ var BinaryOpSymbol$30 = $EXPECT($L86, 'BinaryOpSymbol "&&"');
9130
+ var BinaryOpSymbol$31 = $T($S($EXPECT($L87, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
9127
9131
  return "||";
9128
9132
  });
9129
- var BinaryOpSymbol$32 = $EXPECT($L89, 'BinaryOpSymbol "||"');
9130
- var BinaryOpSymbol$33 = $T($EXPECT($L90, 'BinaryOpSymbol "\u2016"'), function(value) {
9133
+ var BinaryOpSymbol$32 = $EXPECT($L88, 'BinaryOpSymbol "||"');
9134
+ var BinaryOpSymbol$33 = $T($EXPECT($L89, 'BinaryOpSymbol "\u2016"'), function(value) {
9131
9135
  return "||";
9132
9136
  });
9133
- var BinaryOpSymbol$34 = $TV($C($EXPECT($L91, 'BinaryOpSymbol "^^"'), $S($EXPECT($L92, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9137
+ var BinaryOpSymbol$34 = $TV($C($EXPECT($L90, 'BinaryOpSymbol "^^"'), $S($EXPECT($L91, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9134
9138
  return {
9135
9139
  call: module2.getRef("xor"),
9136
9140
  special: true
9137
9141
  };
9138
9142
  });
9139
- var BinaryOpSymbol$35 = $TV($C($EXPECT($R18, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L93, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9143
+ var BinaryOpSymbol$35 = $TV($C($EXPECT($R19, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L92, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9140
9144
  return {
9141
9145
  call: module2.getRef("xnor"),
9142
9146
  special: true
9143
9147
  };
9144
9148
  });
9145
- var BinaryOpSymbol$36 = $EXPECT($L94, 'BinaryOpSymbol "??"');
9146
- var BinaryOpSymbol$37 = $T($EXPECT($L95, 'BinaryOpSymbol "\u2047"'), function(value) {
9149
+ var BinaryOpSymbol$36 = $EXPECT($L93, 'BinaryOpSymbol "??"');
9150
+ var BinaryOpSymbol$37 = $T($EXPECT($L94, 'BinaryOpSymbol "\u2047"'), function(value) {
9147
9151
  return "??";
9148
9152
  });
9149
9153
  var BinaryOpSymbol$38 = $T($S($EXPECT($L6, 'BinaryOpSymbol "?"'), CoffeeBinaryExistentialEnabled), function(value) {
9150
9154
  return "??";
9151
9155
  });
9152
- var BinaryOpSymbol$39 = $TS($S($EXPECT($L96, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9156
+ var BinaryOpSymbol$39 = $TS($S($EXPECT($L95, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9153
9157
  return {
9154
9158
  $loc,
9155
9159
  token: $1,
@@ -9166,7 +9170,7 @@ var require_parser = __commonJS({
9166
9170
  var op = $3;
9167
9171
  return { ...op, $loc };
9168
9172
  });
9169
- var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L97, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
9173
+ var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L96, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
9170
9174
  return {
9171
9175
  method: "includes",
9172
9176
  relational: true,
@@ -9174,14 +9178,14 @@ var require_parser = __commonJS({
9174
9178
  special: true
9175
9179
  };
9176
9180
  });
9177
- var BinaryOpSymbol$43 = $TV($EXPECT($L98, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
9181
+ var BinaryOpSymbol$43 = $TV($EXPECT($L97, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
9178
9182
  return {
9179
9183
  method: "includes",
9180
9184
  relational: true,
9181
9185
  special: true
9182
9186
  };
9183
9187
  });
9184
- var BinaryOpSymbol$44 = $TV($EXPECT($L99, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
9188
+ var BinaryOpSymbol$44 = $TV($EXPECT($L98, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
9185
9189
  return {
9186
9190
  method: "includes",
9187
9191
  relational: true,
@@ -9189,7 +9193,7 @@ var require_parser = __commonJS({
9189
9193
  negated: true
9190
9194
  };
9191
9195
  });
9192
- var BinaryOpSymbol$45 = $TV($C($S(Is, __, OmittedNegation, __, In), $EXPECT($L100, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
9196
+ var BinaryOpSymbol$45 = $TV($C($S(Is, __, OmittedNegation, __, In), $EXPECT($L99, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
9193
9197
  return {
9194
9198
  method: "includes",
9195
9199
  relational: true,
@@ -9222,9 +9226,9 @@ var require_parser = __commonJS({
9222
9226
  return "===";
9223
9227
  });
9224
9228
  var BinaryOpSymbol$48 = In;
9225
- var BinaryOpSymbol$49 = $EXPECT($L101, 'BinaryOpSymbol "&"');
9226
- var BinaryOpSymbol$50 = $EXPECT($L21, 'BinaryOpSymbol "^"');
9227
- var BinaryOpSymbol$51 = $EXPECT($L102, 'BinaryOpSymbol "|"');
9229
+ var BinaryOpSymbol$49 = $EXPECT($L100, 'BinaryOpSymbol "&"');
9230
+ var BinaryOpSymbol$50 = $EXPECT($L20, 'BinaryOpSymbol "^"');
9231
+ var BinaryOpSymbol$51 = $EXPECT($L101, 'BinaryOpSymbol "|"');
9228
9232
  var BinaryOpSymbol$$ = [BinaryOpSymbol$0, BinaryOpSymbol$1, BinaryOpSymbol$2, BinaryOpSymbol$3, BinaryOpSymbol$4, BinaryOpSymbol$5, BinaryOpSymbol$6, BinaryOpSymbol$7, BinaryOpSymbol$8, BinaryOpSymbol$9, BinaryOpSymbol$10, BinaryOpSymbol$11, BinaryOpSymbol$12, BinaryOpSymbol$13, BinaryOpSymbol$14, BinaryOpSymbol$15, BinaryOpSymbol$16, BinaryOpSymbol$17, BinaryOpSymbol$18, BinaryOpSymbol$19, BinaryOpSymbol$20, BinaryOpSymbol$21, BinaryOpSymbol$22, BinaryOpSymbol$23, BinaryOpSymbol$24, BinaryOpSymbol$25, BinaryOpSymbol$26, BinaryOpSymbol$27, BinaryOpSymbol$28, BinaryOpSymbol$29, BinaryOpSymbol$30, BinaryOpSymbol$31, BinaryOpSymbol$32, BinaryOpSymbol$33, BinaryOpSymbol$34, BinaryOpSymbol$35, BinaryOpSymbol$36, BinaryOpSymbol$37, BinaryOpSymbol$38, BinaryOpSymbol$39, BinaryOpSymbol$40, BinaryOpSymbol$41, BinaryOpSymbol$42, BinaryOpSymbol$43, BinaryOpSymbol$44, BinaryOpSymbol$45, BinaryOpSymbol$46, BinaryOpSymbol$47, BinaryOpSymbol$48, BinaryOpSymbol$49, BinaryOpSymbol$50, BinaryOpSymbol$51];
9229
9233
  function BinaryOpSymbol(ctx, state) {
9230
9234
  return $EVENT_C(ctx, state, "BinaryOpSymbol", BinaryOpSymbol$$);
@@ -9262,7 +9266,7 @@ var require_parser = __commonJS({
9262
9266
  function CoffeeOfOp(ctx, state) {
9263
9267
  return $EVENT_C(ctx, state, "CoffeeOfOp", CoffeeOfOp$$);
9264
9268
  }
9265
- var NotOp$0 = $TS($S($EXPECT($L96, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9269
+ var NotOp$0 = $TS($S($EXPECT($L95, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9266
9270
  return {
9267
9271
  $loc,
9268
9272
  token: "instanceof",
@@ -9283,24 +9287,24 @@ var require_parser = __commonJS({
9283
9287
  function NotOp(ctx, state) {
9284
9288
  return $EVENT_C(ctx, state, "NotOp", NotOp$$);
9285
9289
  }
9286
- var Xor$0 = $EXPECT($L91, 'Xor "^^"');
9287
- var Xor$1 = $S($EXPECT($L92, 'Xor "xor"'), NonIdContinue);
9290
+ var Xor$0 = $EXPECT($L90, 'Xor "^^"');
9291
+ var Xor$1 = $S($EXPECT($L91, 'Xor "xor"'), NonIdContinue);
9288
9292
  var Xor$$ = [Xor$0, Xor$1];
9289
9293
  function Xor(ctx, state) {
9290
9294
  return $EVENT_C(ctx, state, "Xor", Xor$$);
9291
9295
  }
9292
- var Xnor$0 = $R$0($EXPECT($R18, "Xnor /!\\^\\^?/"));
9293
- var Xnor$1 = $EXPECT($L93, 'Xnor "xnor"');
9296
+ var Xnor$0 = $R$0($EXPECT($R19, "Xnor /!\\^\\^?/"));
9297
+ var Xnor$1 = $EXPECT($L92, 'Xnor "xnor"');
9294
9298
  var Xnor$$ = [Xnor$0, Xnor$1];
9295
9299
  function Xnor(ctx, state) {
9296
9300
  return $EVENT_C(ctx, state, "Xnor", Xnor$$);
9297
9301
  }
9298
- var UnaryOp$0 = $TR($EXPECT($R19, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9302
+ var UnaryOp$0 = $TR($EXPECT($R20, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9299
9303
  return { $loc, token: $0 };
9300
9304
  });
9301
9305
  var UnaryOp$1 = AwaitOp;
9302
- var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($R$0($EXPECT($R20, "UnaryOp /[:.]/"))), $E(_));
9303
- var UnaryOp$3 = $T($S(Not, $N($EXPECT($R20, "UnaryOp /[:.]/")), $E($EXPECT($L15, 'UnaryOp " "')), $E(_)), function(value) {
9306
+ var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($R$0($EXPECT($R21, "UnaryOp /[:.]/"))), $E(_));
9307
+ var UnaryOp$3 = $T($S(Not, $N($EXPECT($R21, "UnaryOp /[:.]/")), $E($EXPECT($L15, 'UnaryOp " "')), $E(_)), function(value) {
9304
9308
  return [value[0], value[3]];
9305
9309
  });
9306
9310
  var UnaryOp$$ = [UnaryOp$0, UnaryOp$1, UnaryOp$2, UnaryOp$3];
@@ -9331,7 +9335,7 @@ var require_parser = __commonJS({
9331
9335
  return $EVENT_C(ctx, state, "ModuleItem", ModuleItem$$);
9332
9336
  }
9333
9337
  var StatementListItem$0 = Declaration;
9334
- var StatementListItem$1 = $TS($S($N($EXPECT($L103, 'StatementListItem "$:"')), ImplicitObjectLiteral), function($skip, $loc, $0, $1, $2) {
9338
+ var StatementListItem$1 = $TS($S($N($EXPECT($L102, 'StatementListItem "$:"')), ImplicitObjectLiteral), function($skip, $loc, $0, $1, $2) {
9335
9339
  return makeLeftHandSideExpression($2);
9336
9340
  });
9337
9341
  var StatementListItem$2 = PostfixedStatement;
@@ -9398,7 +9402,7 @@ var require_parser = __commonJS({
9398
9402
  function NonPipelinePostfixedExpression(ctx, state) {
9399
9403
  return $EVENT(ctx, state, "NonPipelinePostfixedExpression", NonPipelinePostfixedExpression$0);
9400
9404
  }
9401
- var PostfixStatement$0 = $T($S($EXPECT($R21, "PostfixStatement /(?=for|if|loop|unless|until|while)/"), _PostfixStatement), function(value) {
9405
+ var PostfixStatement$0 = $T($S($EXPECT($R22, "PostfixStatement /(?=for|if|loop|unless|until|while)/"), _PostfixStatement), function(value) {
9402
9406
  return value[1];
9403
9407
  });
9404
9408
  function PostfixStatement(ctx, state) {
@@ -9441,7 +9445,7 @@ var require_parser = __commonJS({
9441
9445
  function NoCommaStatement(ctx, state) {
9442
9446
  return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
9443
9447
  }
9444
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L104, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9448
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L103, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9445
9449
  return { type: "EmptyStatement", children: $1 || [] };
9446
9450
  });
9447
9451
  function EmptyStatement(ctx, state) {
@@ -9472,7 +9476,7 @@ var require_parser = __commonJS({
9472
9476
  var w = $3;
9473
9477
  return [id, colon, w];
9474
9478
  });
9475
- var Label$1 = $S($EXPECT($L103, 'Label "$:"'), Whitespace);
9479
+ var Label$1 = $S($EXPECT($L102, 'Label "$:"'), Whitespace);
9476
9480
  var Label$$ = [Label$0, Label$1];
9477
9481
  function Label(ctx, state) {
9478
9482
  return $EVENT_C(ctx, state, "Label", Label$$);
@@ -9645,7 +9649,7 @@ var require_parser = __commonJS({
9645
9649
  function BlockExpressionPart(ctx, state) {
9646
9650
  return $EVENT(ctx, state, "BlockExpressionPart", BlockExpressionPart$0);
9647
9651
  }
9648
- var IterationStatement$0 = $T($S($EXPECT($R22, "IterationStatement /(?=loop|do|for|until|while)/"), _IterationStatement), function(value) {
9652
+ var IterationStatement$0 = $T($S($EXPECT($R23, "IterationStatement /(?=loop|do|for|until|while)/"), _IterationStatement), function(value) {
9649
9653
  return value[1];
9650
9654
  });
9651
9655
  function IterationStatement(ctx, state) {
@@ -9998,7 +10002,7 @@ var require_parser = __commonJS({
9998
10002
  names: binding.names
9999
10003
  };
10000
10004
  });
10001
- var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R23, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
10005
+ var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R24, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
10002
10006
  var c = $1;
10003
10007
  var binding = $2;
10004
10008
  return {
@@ -10333,8 +10337,8 @@ var require_parser = __commonJS({
10333
10337
  function Condition(ctx, state) {
10334
10338
  return $EVENT_C(ctx, state, "Condition", Condition$$);
10335
10339
  }
10336
- var DeclarationCondition$0 = $TS($S(ForbidIndentedApplication, $E(LexicalDeclaration), RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3) {
10337
- var declaration = $2;
10340
+ var DeclarationCondition$0 = $TS($S(ForbidBracedApplication, ForbidIndentedApplication, ForbidNewlineBinaryOp, $E(LexicalDeclaration), RestoreNewlineBinaryOp, RestoreBracedApplication, RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
10341
+ var declaration = $4;
10338
10342
  if (!declaration)
10339
10343
  return $skip;
10340
10344
  return {
@@ -10581,19 +10585,19 @@ var require_parser = __commonJS({
10581
10585
  function ThrowStatement(ctx, state) {
10582
10586
  return $EVENT(ctx, state, "ThrowStatement", ThrowStatement$0);
10583
10587
  }
10584
- var Break$0 = $TS($S($EXPECT($L105, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10588
+ var Break$0 = $TS($S($EXPECT($L104, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10585
10589
  return { $loc, token: $1 };
10586
10590
  });
10587
10591
  function Break(ctx, state) {
10588
10592
  return $EVENT(ctx, state, "Break", Break$0);
10589
10593
  }
10590
- var Continue$0 = $TS($S($EXPECT($L106, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10594
+ var Continue$0 = $TS($S($EXPECT($L105, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10591
10595
  return { $loc, token: $1 };
10592
10596
  });
10593
10597
  function Continue(ctx, state) {
10594
10598
  return $EVENT(ctx, state, "Continue", Continue$0);
10595
10599
  }
10596
- var Debugger$0 = $TS($S($EXPECT($L107, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10600
+ var Debugger$0 = $TS($S($EXPECT($L106, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10597
10601
  return { $loc, token: $1 };
10598
10602
  });
10599
10603
  function Debugger(ctx, state) {
@@ -10630,7 +10634,7 @@ var require_parser = __commonJS({
10630
10634
  function MaybeNestedExpression(ctx, state) {
10631
10635
  return $EVENT_C(ctx, state, "MaybeNestedExpression", MaybeNestedExpression$$);
10632
10636
  }
10633
- var ImportDeclaration$0 = $TS($S(Import, _, Identifier, $E(_), Equals, __, $EXPECT($L108, 'ImportDeclaration "require"'), NonIdContinue, Arguments), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10637
+ var ImportDeclaration$0 = $TS($S(Import, _, Identifier, $E(_), Equals, __, $EXPECT($L107, 'ImportDeclaration "require"'), NonIdContinue, Arguments), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10634
10638
  const imp = [
10635
10639
  { ...$1, ts: true },
10636
10640
  { ...$1, token: "const", js: true }
@@ -10724,7 +10728,7 @@ var require_parser = __commonJS({
10724
10728
  function FromClause(ctx, state) {
10725
10729
  return $EVENT(ctx, state, "FromClause", FromClause$0);
10726
10730
  }
10727
- var ImportAssertion$0 = $S($E(_), $C($EXPECT($L109, 'ImportAssertion "with"'), $EXPECT($L110, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10731
+ var ImportAssertion$0 = $S($E(_), $C($EXPECT($L108, 'ImportAssertion "with"'), $EXPECT($L109, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10728
10732
  function ImportAssertion(ctx, state) {
10729
10733
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
10730
10734
  }
@@ -10819,7 +10823,7 @@ var require_parser = __commonJS({
10819
10823
  function UnprocessedModuleSpecifier(ctx, state) {
10820
10824
  return $EVENT_C(ctx, state, "UnprocessedModuleSpecifier", UnprocessedModuleSpecifier$$);
10821
10825
  }
10822
- var UnquotedSpecifier$0 = $TV($EXPECT($R24, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
10826
+ var UnquotedSpecifier$0 = $TV($EXPECT($R25, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
10823
10827
  var spec = $0;
10824
10828
  return { $loc, token: `"${spec}"` };
10825
10829
  });
@@ -10972,34 +10976,34 @@ var require_parser = __commonJS({
10972
10976
  thisAssignments: bindings.flatMap((b) => b.thisAssignments)
10973
10977
  };
10974
10978
  });
10975
- var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10979
+ var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, PostfixedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10976
10980
  return processAssignmentDeclaration(...$0);
10977
10981
  });
10978
- var LexicalDeclaration$2 = $TS($S(InsertLet, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, LetAssignment, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10979
- var l = $1;
10980
- var id = $2;
10981
- var suffix = $3;
10982
- var ws = $4;
10983
- var la = $5;
10984
- var e = $6;
10982
+ var LexicalDeclaration$2 = $TS($S(InsertLet, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, LetAssignment, PostfixedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10985
10983
  return processAssignmentDeclaration(...$0);
10986
10984
  });
10987
10985
  var LexicalDeclaration$$ = [LexicalDeclaration$0, LexicalDeclaration$1, LexicalDeclaration$2];
10988
10986
  function LexicalDeclaration(ctx, state) {
10989
10987
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
10990
10988
  }
10991
- var ConstAssignment$0 = $TV($C($EXPECT($L111, 'ConstAssignment ":="'), $EXPECT($L112, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10989
+ var ConstAssignment$0 = $TV($C($EXPECT($L110, 'ConstAssignment ":="'), $EXPECT($L111, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10992
10990
  return { $loc, token: "=" };
10993
10991
  });
10994
10992
  function ConstAssignment(ctx, state) {
10995
10993
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
10996
10994
  }
10997
- var LetAssignment$0 = $TV($EXPECT($L113, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10995
+ var LetAssignment$0 = $TV($EXPECT($L112, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10998
10996
  return { $loc, token: "=" };
10999
10997
  });
11000
10998
  function LetAssignment(ctx, state) {
11001
10999
  return $EVENT(ctx, state, "LetAssignment", LetAssignment$0);
11002
11000
  }
11001
+ var TypeAssignment$0 = $TV($EXPECT($L113, 'TypeAssignment "::="'), function($skip, $loc, $0, $1) {
11002
+ return { $loc, token: "=" };
11003
+ });
11004
+ function TypeAssignment(ctx, state) {
11005
+ return $EVENT(ctx, state, "TypeAssignment", TypeAssignment$0);
11006
+ }
11003
11007
  var LexicalBinding$0 = $TS($S(BindingPattern, $E(TypeSuffix), Initializer), function($skip, $loc, $0, $1, $2, $3) {
11004
11008
  var pattern = $1;
11005
11009
  var suffix = $2;
@@ -11063,7 +11067,7 @@ var require_parser = __commonJS({
11063
11067
  function VariableDeclarationList(ctx, state) {
11064
11068
  return $EVENT(ctx, state, "VariableDeclarationList", VariableDeclarationList$0);
11065
11069
  }
11066
- var NumericLiteral$0 = $TS($S($EXPECT($R25, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
11070
+ var NumericLiteral$0 = $TS($S($EXPECT($R26, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
11067
11071
  var token = $2;
11068
11072
  return { type: "NumericLiteral", $loc, token };
11069
11073
  });
@@ -11079,36 +11083,36 @@ var require_parser = __commonJS({
11079
11083
  function NumericLiteralKind(ctx, state) {
11080
11084
  return $EVENT_C(ctx, state, "NumericLiteralKind", NumericLiteralKind$$);
11081
11085
  }
11082
- var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R26, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
11086
+ var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R27, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
11083
11087
  function DecimalBigIntegerLiteral(ctx, state) {
11084
11088
  return $EVENT(ctx, state, "DecimalBigIntegerLiteral", DecimalBigIntegerLiteral$0);
11085
11089
  }
11086
- var DecimalLiteral$0 = $TV($TEXT($EXPECT($R27, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
11090
+ var DecimalLiteral$0 = $TV($TEXT($EXPECT($R28, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
11087
11091
  return $1 + ".";
11088
11092
  });
11089
- var DecimalLiteral$1 = $TEXT($S($EXPECT($R28, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), $E(ExponentPart)));
11090
- var DecimalLiteral$2 = $TEXT($S($EXPECT($R29, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), $E(ExponentPart)));
11093
+ var DecimalLiteral$1 = $TEXT($S($EXPECT($R29, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), $E(ExponentPart)));
11094
+ var DecimalLiteral$2 = $TEXT($S($EXPECT($R30, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), $E(ExponentPart)));
11091
11095
  var DecimalLiteral$$ = [DecimalLiteral$0, DecimalLiteral$1, DecimalLiteral$2];
11092
11096
  function DecimalLiteral(ctx, state) {
11093
11097
  return $EVENT_C(ctx, state, "DecimalLiteral", DecimalLiteral$$);
11094
11098
  }
11095
- var ExponentPart$0 = $R$0($EXPECT($R30, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
11099
+ var ExponentPart$0 = $R$0($EXPECT($R31, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
11096
11100
  function ExponentPart(ctx, state) {
11097
11101
  return $EVENT(ctx, state, "ExponentPart", ExponentPart$0);
11098
11102
  }
11099
- var BinaryIntegerLiteral$0 = $R$0($EXPECT($R31, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
11103
+ var BinaryIntegerLiteral$0 = $R$0($EXPECT($R32, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
11100
11104
  function BinaryIntegerLiteral(ctx, state) {
11101
11105
  return $EVENT(ctx, state, "BinaryIntegerLiteral", BinaryIntegerLiteral$0);
11102
11106
  }
11103
- var OctalIntegerLiteral$0 = $R$0($EXPECT($R32, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
11107
+ var OctalIntegerLiteral$0 = $R$0($EXPECT($R33, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
11104
11108
  function OctalIntegerLiteral(ctx, state) {
11105
11109
  return $EVENT(ctx, state, "OctalIntegerLiteral", OctalIntegerLiteral$0);
11106
11110
  }
11107
- var HexIntegerLiteral$0 = $R$0($EXPECT($R33, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
11111
+ var HexIntegerLiteral$0 = $R$0($EXPECT($R34, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
11108
11112
  function HexIntegerLiteral(ctx, state) {
11109
11113
  return $EVENT(ctx, state, "HexIntegerLiteral", HexIntegerLiteral$0);
11110
11114
  }
11111
- var IntegerLiteral$0 = $TS($S($EXPECT($R34, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
11115
+ var IntegerLiteral$0 = $TS($S($EXPECT($R35, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
11112
11116
  var token = $2;
11113
11117
  return { $loc, token };
11114
11118
  });
@@ -11124,7 +11128,7 @@ var require_parser = __commonJS({
11124
11128
  function IntegerLiteralKind(ctx, state) {
11125
11129
  return $EVENT_C(ctx, state, "IntegerLiteralKind", IntegerLiteralKind$$);
11126
11130
  }
11127
- var DecimalIntegerLiteral$0 = $R$0($EXPECT($R35, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
11131
+ var DecimalIntegerLiteral$0 = $R$0($EXPECT($R36, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
11128
11132
  function DecimalIntegerLiteral(ctx, state) {
11129
11133
  return $EVENT(ctx, state, "DecimalIntegerLiteral", DecimalIntegerLiteral$0);
11130
11134
  }
@@ -11148,25 +11152,25 @@ var require_parser = __commonJS({
11148
11152
  function StringLiteral(ctx, state) {
11149
11153
  return $EVENT_C(ctx, state, "StringLiteral", StringLiteral$$);
11150
11154
  }
11151
- var DoubleStringCharacters$0 = $TR($EXPECT($R36, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11155
+ var DoubleStringCharacters$0 = $TR($EXPECT($R37, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11152
11156
  return { $loc, token: $0 };
11153
11157
  });
11154
11158
  function DoubleStringCharacters(ctx, state) {
11155
11159
  return $EVENT(ctx, state, "DoubleStringCharacters", DoubleStringCharacters$0);
11156
11160
  }
11157
- var SingleStringCharacters$0 = $TR($EXPECT($R37, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11161
+ var SingleStringCharacters$0 = $TR($EXPECT($R38, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11158
11162
  return { $loc, token: $0 };
11159
11163
  });
11160
11164
  function SingleStringCharacters(ctx, state) {
11161
11165
  return $EVENT(ctx, state, "SingleStringCharacters", SingleStringCharacters$0);
11162
11166
  }
11163
- var TripleDoubleStringCharacters$0 = $TR($EXPECT($R38, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11167
+ var TripleDoubleStringCharacters$0 = $TR($EXPECT($R39, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11164
11168
  return { $loc, token: $0 };
11165
11169
  });
11166
11170
  function TripleDoubleStringCharacters(ctx, state) {
11167
11171
  return $EVENT(ctx, state, "TripleDoubleStringCharacters", TripleDoubleStringCharacters$0);
11168
11172
  }
11169
- var TripleSingleStringCharacters$0 = $TR($EXPECT($R39, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11173
+ var TripleSingleStringCharacters$0 = $TR($EXPECT($R40, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11170
11174
  return { $loc, token: $0 };
11171
11175
  });
11172
11176
  function TripleSingleStringCharacters(ctx, state) {
@@ -11185,14 +11189,14 @@ var require_parser = __commonJS({
11185
11189
  function CoffeeInterpolatedDoubleQuotedString(ctx, state) {
11186
11190
  return $EVENT(ctx, state, "CoffeeInterpolatedDoubleQuotedString", CoffeeInterpolatedDoubleQuotedString$0);
11187
11191
  }
11188
- var CoffeeDoubleQuotedStringCharacters$0 = $TR($EXPECT($R40, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11192
+ var CoffeeDoubleQuotedStringCharacters$0 = $TR($EXPECT($R41, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11189
11193
  return { $loc, token: $0 };
11190
11194
  });
11191
11195
  function CoffeeDoubleQuotedStringCharacters(ctx, state) {
11192
11196
  return $EVENT(ctx, state, "CoffeeDoubleQuotedStringCharacters", CoffeeDoubleQuotedStringCharacters$0);
11193
11197
  }
11194
11198
  var RegularExpressionLiteral$0 = HeregexLiteral;
11195
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L59, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L59, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
11199
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L58, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L58, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
11196
11200
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
11197
11201
  });
11198
11202
  var RegularExpressionLiteral$$ = [RegularExpressionLiteral$0, RegularExpressionLiteral$1];
@@ -11205,7 +11209,7 @@ var require_parser = __commonJS({
11205
11209
  function RegularExpressionClass(ctx, state) {
11206
11210
  return $EVENT(ctx, state, "RegularExpressionClass", RegularExpressionClass$0);
11207
11211
  }
11208
- var RegularExpressionClassCharacters$0 = $TR($EXPECT($R41, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11212
+ var RegularExpressionClassCharacters$0 = $TR($EXPECT($R42, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11209
11213
  return { $loc, token: $0 };
11210
11214
  });
11211
11215
  function RegularExpressionClassCharacters(ctx, state) {
@@ -11262,7 +11266,7 @@ var require_parser = __commonJS({
11262
11266
  var HeregexPart$2 = $T($S(TemplateSubstitution), function(value) {
11263
11267
  return { "type": "Substitution", "children": value[0] };
11264
11268
  });
11265
- var HeregexPart$3 = $TR($EXPECT($R42, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11269
+ var HeregexPart$3 = $TR($EXPECT($R43, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11266
11270
  let token = $0;
11267
11271
  switch ($0[1]) {
11268
11272
  case "\n":
@@ -11280,13 +11284,13 @@ var require_parser = __commonJS({
11280
11284
  var HeregexPart$4 = $TS($S(HeregexComment), function($skip, $loc, $0, $1) {
11281
11285
  return { $loc, token: "" };
11282
11286
  });
11283
- var HeregexPart$5 = $TR($EXPECT($R43, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11287
+ var HeregexPart$5 = $TR($EXPECT($R44, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11284
11288
  return { $loc, token: "" };
11285
11289
  });
11286
- var HeregexPart$6 = $TR($EXPECT($R44, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11290
+ var HeregexPart$6 = $TR($EXPECT($R45, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11287
11291
  return { $loc, token: "\\/" };
11288
11292
  });
11289
- var HeregexPart$7 = $TR($EXPECT($R45, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11293
+ var HeregexPart$7 = $TR($EXPECT($R46, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11290
11294
  return { $loc, token: $0 };
11291
11295
  });
11292
11296
  var HeregexPart$$ = [HeregexPart$0, HeregexPart$1, HeregexPart$2, HeregexPart$3, HeregexPart$4, HeregexPart$5, HeregexPart$6, HeregexPart$7];
@@ -11299,7 +11303,7 @@ var require_parser = __commonJS({
11299
11303
  function HeregexComment(ctx, state) {
11300
11304
  return $EVENT_C(ctx, state, "HeregexComment", HeregexComment$$);
11301
11305
  }
11302
- var RegularExpressionBody$0 = $S($N($R$0($EXPECT($R46, "RegularExpressionBody /[*\\/\\r\\n]/"))), $Q(RegExpPart));
11306
+ var RegularExpressionBody$0 = $S($N($R$0($EXPECT($R47, "RegularExpressionBody /[*\\/\\r\\n]/"))), $Q(RegExpPart));
11303
11307
  function RegularExpressionBody(ctx, state) {
11304
11308
  return $EVENT(ctx, state, "RegularExpressionBody", RegularExpressionBody$0);
11305
11309
  }
@@ -11309,15 +11313,15 @@ var require_parser = __commonJS({
11309
11313
  function RegExpPart(ctx, state) {
11310
11314
  return $EVENT_C(ctx, state, "RegExpPart", RegExpPart$$);
11311
11315
  }
11312
- var RegExpCharacter$0 = $R$0($EXPECT($R47, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
11316
+ var RegExpCharacter$0 = $R$0($EXPECT($R48, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
11313
11317
  function RegExpCharacter(ctx, state) {
11314
11318
  return $EVENT(ctx, state, "RegExpCharacter", RegExpCharacter$0);
11315
11319
  }
11316
- var RegularExpressionFlags$0 = $R$0($EXPECT($R48, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
11320
+ var RegularExpressionFlags$0 = $R$0($EXPECT($R49, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
11317
11321
  function RegularExpressionFlags(ctx, state) {
11318
11322
  return $EVENT(ctx, state, "RegularExpressionFlags", RegularExpressionFlags$0);
11319
11323
  }
11320
- var TemplateLiteral$0 = $T($S($EXPECT($R49, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
11324
+ var TemplateLiteral$0 = $T($S($EXPECT($R50, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
11321
11325
  return value[1];
11322
11326
  });
11323
11327
  function TemplateLiteral(ctx, state) {
@@ -11353,28 +11357,28 @@ var require_parser = __commonJS({
11353
11357
  function TemplateSubstitution(ctx, state) {
11354
11358
  return $EVENT(ctx, state, "TemplateSubstitution", TemplateSubstitution$0);
11355
11359
  }
11356
- var TemplateCharacters$0 = $TR($EXPECT($R50, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11360
+ var TemplateCharacters$0 = $TR($EXPECT($R51, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11357
11361
  return { $loc, token: $0 };
11358
11362
  });
11359
11363
  function TemplateCharacters(ctx, state) {
11360
11364
  return $EVENT(ctx, state, "TemplateCharacters", TemplateCharacters$0);
11361
11365
  }
11362
- var TemplateBlockCharacters$0 = $TR($EXPECT($R51, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11366
+ var TemplateBlockCharacters$0 = $TR($EXPECT($R52, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11363
11367
  return { $loc, token: $0 };
11364
11368
  });
11365
11369
  function TemplateBlockCharacters(ctx, state) {
11366
11370
  return $EVENT(ctx, state, "TemplateBlockCharacters", TemplateBlockCharacters$0);
11367
11371
  }
11368
- var ReservedWord$0 = $S($R$0($EXPECT($R52, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
11369
- var ReservedWord$1 = $S($R$0($EXPECT($R53, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
11370
- var ReservedWord$2 = $S($R$0($EXPECT($R54, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
11371
- var ReservedWord$3 = $S($R$0($EXPECT($R55, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
11372
- var ReservedWord$4 = $R$0($EXPECT($R56, "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})/"));
11372
+ var ReservedWord$0 = $S($R$0($EXPECT($R53, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
11373
+ var ReservedWord$1 = $S($R$0($EXPECT($R54, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
11374
+ var ReservedWord$2 = $S($R$0($EXPECT($R55, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
11375
+ var ReservedWord$3 = $S($R$0($EXPECT($R56, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
11376
+ var ReservedWord$4 = $R$0($EXPECT($R57, "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})/"));
11373
11377
  var ReservedWord$$ = [ReservedWord$0, ReservedWord$1, ReservedWord$2, ReservedWord$3, ReservedWord$4];
11374
11378
  function ReservedWord(ctx, state) {
11375
11379
  return $EVENT_C(ctx, state, "ReservedWord", ReservedWord$$);
11376
11380
  }
11377
- var Comment$0 = $T($S($EXPECT($R57, "Comment /(?=\\/|#)/"), _Comment), function(value) {
11381
+ var Comment$0 = $T($S($EXPECT($R58, "Comment /(?=\\/|#)/"), _Comment), function(value) {
11378
11382
  return value[1];
11379
11383
  });
11380
11384
  function Comment(ctx, state) {
@@ -11392,7 +11396,7 @@ var require_parser = __commonJS({
11392
11396
  function SingleLineComment(ctx, state) {
11393
11397
  return $EVENT_C(ctx, state, "SingleLineComment", SingleLineComment$$);
11394
11398
  }
11395
- var JSSingleLineComment$0 = $TR($EXPECT($R58, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11399
+ var JSSingleLineComment$0 = $TR($EXPECT($R59, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11396
11400
  return { type: "Comment", $loc, token: $0 };
11397
11401
  });
11398
11402
  function JSSingleLineComment(ctx, state) {
@@ -11404,30 +11408,30 @@ var require_parser = __commonJS({
11404
11408
  function MultiLineComment(ctx, state) {
11405
11409
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
11406
11410
  }
11407
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L114, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L115, 'JSMultiLineComment "*/"')), $EXPECT($R59, "JSMultiLineComment /./"))), $EXPECT($L115, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
11411
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L114, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L115, 'JSMultiLineComment "*/"')), $EXPECT($R60, "JSMultiLineComment /./"))), $EXPECT($L115, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
11408
11412
  return { type: "Comment", $loc, token: $1 };
11409
11413
  });
11410
11414
  function JSMultiLineComment(ctx, state) {
11411
11415
  return $EVENT(ctx, state, "JSMultiLineComment", JSMultiLineComment$0);
11412
11416
  }
11413
- var CoffeeSingleLineComment$0 = $TR($EXPECT($R60, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11417
+ var CoffeeSingleLineComment$0 = $TR($EXPECT($R61, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11414
11418
  return { type: "Comment", $loc, token: `//${$1}` };
11415
11419
  });
11416
11420
  function CoffeeSingleLineComment(ctx, state) {
11417
11421
  return $EVENT(ctx, state, "CoffeeSingleLineComment", CoffeeSingleLineComment$0);
11418
11422
  }
11419
- var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($EXPECT($R61, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
11423
+ var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($EXPECT($R62, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
11420
11424
  $2 = $2.slice(0, $2.length - 3).replace(/\*\//g, "* /");
11421
11425
  return { type: "Comment", $loc, token: `/*${$2}*/` };
11422
11426
  });
11423
11427
  function CoffeeMultiLineComment(ctx, state) {
11424
11428
  return $EVENT(ctx, state, "CoffeeMultiLineComment", CoffeeMultiLineComment$0);
11425
11429
  }
11426
- var CoffeeHereCommentStart$0 = $R$0($EXPECT($R62, "CoffeeHereCommentStart /###(?!#)/"));
11430
+ var CoffeeHereCommentStart$0 = $R$0($EXPECT($R63, "CoffeeHereCommentStart /###(?!#)/"));
11427
11431
  function CoffeeHereCommentStart(ctx, state) {
11428
11432
  return $EVENT(ctx, state, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
11429
11433
  }
11430
- var InlineComment$0 = $TR($EXPECT($R63, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11434
+ var InlineComment$0 = $TR($EXPECT($R64, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11431
11435
  return { $loc, token: $0 };
11432
11436
  });
11433
11437
  function InlineComment(ctx, state) {
@@ -11441,13 +11445,13 @@ var require_parser = __commonJS({
11441
11445
  function TrailingComment(ctx, state) {
11442
11446
  return $EVENT(ctx, state, "TrailingComment", TrailingComment$0);
11443
11447
  }
11444
- var _$0 = $T($S($EXPECT($R64, "_ /(?=[ \\t\\/\\\\])/"), $P($C(NonNewlineWhitespace, InlineComment))), function(value) {
11448
+ var _$0 = $T($S($EXPECT($R65, "_ /(?=[ \\t\\/\\\\])/"), $P($C(NonNewlineWhitespace, InlineComment))), function(value) {
11445
11449
  return value[1];
11446
11450
  });
11447
11451
  function _(ctx, state) {
11448
11452
  return $EVENT(ctx, state, "_", _$0);
11449
11453
  }
11450
- var NonNewlineWhitespace$0 = $TR($EXPECT($R65, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11454
+ var NonNewlineWhitespace$0 = $TR($EXPECT($R66, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11451
11455
  return { $loc, token: $0 };
11452
11456
  });
11453
11457
  var NonNewlineWhitespace$1 = $T($S($EXPECT($L116, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
@@ -11464,7 +11468,7 @@ var require_parser = __commonJS({
11464
11468
  function Trimmed_(ctx, state) {
11465
11469
  return $EVENT(ctx, state, "Trimmed_", Trimmed_$0);
11466
11470
  }
11467
- var __$0 = $T($S($EXPECT($R66, "__ /(?=\\s|\\/|#)/"), $Q($C(Whitespace, Comment))), function(value) {
11471
+ var __$0 = $T($S($EXPECT($R67, "__ /(?=\\s|\\/|#)/"), $Q($C(Whitespace, Comment))), function(value) {
11468
11472
  return value[1];
11469
11473
  });
11470
11474
  var __$1 = $EXPECT($L0, '__ ""');
@@ -11472,7 +11476,7 @@ var require_parser = __commonJS({
11472
11476
  function __(ctx, state) {
11473
11477
  return $EVENT_C(ctx, state, "__", __$$);
11474
11478
  }
11475
- var Whitespace$0 = $TR($EXPECT($R43, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11479
+ var Whitespace$0 = $TR($EXPECT($R44, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11476
11480
  return { $loc, token: $0 };
11477
11481
  });
11478
11482
  function Whitespace(ctx, state) {
@@ -11496,7 +11500,7 @@ var require_parser = __commonJS({
11496
11500
  }
11497
11501
  var StatementDelimiter$0 = $Y(EOS);
11498
11502
  var StatementDelimiter$1 = SemicolonDelimiter;
11499
- var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L29, 'StatementDelimiter "}"'), $EXPECT($L117, 'StatementDelimiter ")"'), $EXPECT($L38, 'StatementDelimiter "]"'))));
11503
+ var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L28, 'StatementDelimiter "}"'), $EXPECT($L117, 'StatementDelimiter ")"'), $EXPECT($L37, 'StatementDelimiter "]"'))));
11500
11504
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2];
11501
11505
  function StatementDelimiter(ctx, state) {
11502
11506
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -11510,7 +11514,7 @@ var require_parser = __commonJS({
11510
11514
  function SemicolonDelimiter(ctx, state) {
11511
11515
  return $EVENT(ctx, state, "SemicolonDelimiter", SemicolonDelimiter$0);
11512
11516
  }
11513
- var NonIdContinue$0 = $R$0($EXPECT($R67, "NonIdContinue /(?!\\p{ID_Continue})/"));
11517
+ var NonIdContinue$0 = $R$0($EXPECT($R68, "NonIdContinue /(?!\\p{ID_Continue})/"));
11514
11518
  function NonIdContinue(ctx, state) {
11515
11519
  return $EVENT(ctx, state, "NonIdContinue", NonIdContinue$0);
11516
11520
  }
@@ -11526,7 +11530,7 @@ var require_parser = __commonJS({
11526
11530
  function Abstract(ctx, state) {
11527
11531
  return $EVENT(ctx, state, "Abstract", Abstract$0);
11528
11532
  }
11529
- var Ampersand$0 = $TV($EXPECT($L101, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11533
+ var Ampersand$0 = $TV($EXPECT($L100, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11530
11534
  return { $loc, token: $1 };
11531
11535
  });
11532
11536
  function Ampersand(ctx, state) {
@@ -11574,7 +11578,7 @@ var require_parser = __commonJS({
11574
11578
  function By(ctx, state) {
11575
11579
  return $EVENT(ctx, state, "By", By$0);
11576
11580
  }
11577
- var Caret$0 = $TV($EXPECT($L21, 'Caret "^"'), function($skip, $loc, $0, $1) {
11581
+ var Caret$0 = $TV($EXPECT($L20, 'Caret "^"'), function($skip, $loc, $0, $1) {
11578
11582
  return { $loc, token: $1 };
11579
11583
  });
11580
11584
  function Caret(ctx, state) {
@@ -11598,19 +11602,19 @@ var require_parser = __commonJS({
11598
11602
  function Class(ctx, state) {
11599
11603
  return $EVENT(ctx, state, "Class", Class$0);
11600
11604
  }
11601
- var CloseAngleBracket$0 = $TV($EXPECT($L37, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
11605
+ var CloseAngleBracket$0 = $TV($EXPECT($L36, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
11602
11606
  return { $loc, token: $1 };
11603
11607
  });
11604
11608
  function CloseAngleBracket(ctx, state) {
11605
11609
  return $EVENT(ctx, state, "CloseAngleBracket", CloseAngleBracket$0);
11606
11610
  }
11607
- var CloseBrace$0 = $TV($EXPECT($L29, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11611
+ var CloseBrace$0 = $TV($EXPECT($L28, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11608
11612
  return { $loc, token: $1 };
11609
11613
  });
11610
11614
  function CloseBrace(ctx, state) {
11611
11615
  return $EVENT(ctx, state, "CloseBrace", CloseBrace$0);
11612
11616
  }
11613
- var CloseBracket$0 = $TV($EXPECT($L38, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11617
+ var CloseBracket$0 = $TV($EXPECT($L37, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11614
11618
  return { $loc, token: $1 };
11615
11619
  });
11616
11620
  function CloseBracket(ctx, state) {
@@ -11634,7 +11638,7 @@ var require_parser = __commonJS({
11634
11638
  function Colon(ctx, state) {
11635
11639
  return $EVENT(ctx, state, "Colon", Colon$0);
11636
11640
  }
11637
- var Comma$0 = $TV($EXPECT($L25, 'Comma ","'), function($skip, $loc, $0, $1) {
11641
+ var Comma$0 = $TV($EXPECT($L24, 'Comma ","'), function($skip, $loc, $0, $1) {
11638
11642
  return { $loc, token: $1 };
11639
11643
  });
11640
11644
  function Comma(ctx, state) {
@@ -11673,7 +11677,7 @@ var require_parser = __commonJS({
11673
11677
  var Dot$0 = $TV($EXPECT($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
11674
11678
  return { $loc, token: $1 };
11675
11679
  });
11676
- var Dot$1 = $TS($S($EXPECT($R68, "Dot /['\u2019]s/"), _), function($skip, $loc, $0, $1, $2) {
11680
+ var Dot$1 = $TS($S($EXPECT($R69, "Dot /['\u2019]s/"), _), function($skip, $loc, $0, $1, $2) {
11677
11681
  var ws = $2;
11678
11682
  return [
11679
11683
  { $loc, token: "." },
@@ -11734,97 +11738,97 @@ var require_parser = __commonJS({
11734
11738
  function Equals(ctx, state) {
11735
11739
  return $EVENT(ctx, state, "Equals", Equals$0);
11736
11740
  }
11737
- var ExclamationPoint$0 = $TV($EXPECT($L20, 'ExclamationPoint "!"'), function($skip, $loc, $0, $1) {
11741
+ var ExclamationPoint$0 = $TV($EXPECT($L142, 'ExclamationPoint "!"'), function($skip, $loc, $0, $1) {
11738
11742
  return { $loc, token: $1 };
11739
11743
  });
11740
11744
  function ExclamationPoint(ctx, state) {
11741
11745
  return $EVENT(ctx, state, "ExclamationPoint", ExclamationPoint$0);
11742
11746
  }
11743
- var Export$0 = $TS($S($EXPECT($L142, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11747
+ var Export$0 = $TS($S($EXPECT($L143, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11744
11748
  return { $loc, token: $1 };
11745
11749
  });
11746
11750
  function Export(ctx, state) {
11747
11751
  return $EVENT(ctx, state, "Export", Export$0);
11748
11752
  }
11749
- var Extends$0 = $TS($S($EXPECT($L143, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11753
+ var Extends$0 = $TS($S($EXPECT($L144, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11750
11754
  return { $loc, token: $1 };
11751
11755
  });
11752
11756
  function Extends(ctx, state) {
11753
11757
  return $EVENT(ctx, state, "Extends", Extends$0);
11754
11758
  }
11755
- var Finally$0 = $TS($S($EXPECT($L144, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11759
+ var Finally$0 = $TS($S($EXPECT($L145, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11756
11760
  return { $loc, token: $1 };
11757
11761
  });
11758
11762
  function Finally(ctx, state) {
11759
11763
  return $EVENT(ctx, state, "Finally", Finally$0);
11760
11764
  }
11761
- var For$0 = $TS($S($EXPECT($L145, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11765
+ var For$0 = $TS($S($EXPECT($L146, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11762
11766
  return { $loc, token: $1 };
11763
11767
  });
11764
11768
  function For(ctx, state) {
11765
11769
  return $EVENT(ctx, state, "For", For$0);
11766
11770
  }
11767
- var From$0 = $TS($S($EXPECT($L146, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11771
+ var From$0 = $TS($S($EXPECT($L147, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11768
11772
  return { $loc, token: $1 };
11769
11773
  });
11770
11774
  function From(ctx, state) {
11771
11775
  return $EVENT(ctx, state, "From", From$0);
11772
11776
  }
11773
- var Function$0 = $TS($S($EXPECT($L147, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11777
+ var Function$0 = $TS($S($EXPECT($L148, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11774
11778
  return { $loc, token: $1 };
11775
11779
  });
11776
11780
  function Function(ctx, state) {
11777
11781
  return $EVENT(ctx, state, "Function", Function$0);
11778
11782
  }
11779
- var GetOrSet$0 = $TS($S($C($EXPECT($L148, 'GetOrSet "get"'), $EXPECT($L149, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11783
+ var GetOrSet$0 = $TS($S($C($EXPECT($L149, 'GetOrSet "get"'), $EXPECT($L150, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11780
11784
  return { $loc, token: $1, type: "GetOrSet" };
11781
11785
  });
11782
11786
  function GetOrSet(ctx, state) {
11783
11787
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
11784
11788
  }
11785
- var Hash$0 = $TV($EXPECT($L150, 'Hash "#"'), function($skip, $loc, $0, $1) {
11789
+ var Hash$0 = $TV($EXPECT($L151, 'Hash "#"'), function($skip, $loc, $0, $1) {
11786
11790
  return { $loc, token: $1 };
11787
11791
  });
11788
11792
  function Hash(ctx, state) {
11789
11793
  return $EVENT(ctx, state, "Hash", Hash$0);
11790
11794
  }
11791
- var If$0 = $TV($TEXT($S($EXPECT($L151, 'If "if"'), NonIdContinue, $E($EXPECT($L15, 'If " "')))), function($skip, $loc, $0, $1) {
11795
+ var If$0 = $TV($TEXT($S($EXPECT($L152, 'If "if"'), NonIdContinue, $E($EXPECT($L15, 'If " "')))), function($skip, $loc, $0, $1) {
11792
11796
  return { $loc, token: $1 };
11793
11797
  });
11794
11798
  function If(ctx, state) {
11795
11799
  return $EVENT(ctx, state, "If", If$0);
11796
11800
  }
11797
- var Import$0 = $TS($S($EXPECT($L19, 'Import "import"'), $Y($EXPECT($R69, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11801
+ var Import$0 = $TS($S($EXPECT($L19, 'Import "import"'), $Y($EXPECT($R70, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11798
11802
  return { $loc, token: $1 };
11799
11803
  });
11800
11804
  function Import(ctx, state) {
11801
11805
  return $EVENT(ctx, state, "Import", Import$0);
11802
11806
  }
11803
- var In$0 = $TS($S($EXPECT($L152, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11807
+ var In$0 = $TS($S($EXPECT($L153, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11804
11808
  return { $loc, token: $1 };
11805
11809
  });
11806
11810
  function In(ctx, state) {
11807
11811
  return $EVENT(ctx, state, "In", In$0);
11808
11812
  }
11809
- var Infer$0 = $TS($S($EXPECT($L153, 'Infer "infer"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11813
+ var Infer$0 = $TS($S($EXPECT($L154, 'Infer "infer"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11810
11814
  return { $loc, token: $1 };
11811
11815
  });
11812
11816
  function Infer(ctx, state) {
11813
11817
  return $EVENT(ctx, state, "Infer", Infer$0);
11814
11818
  }
11815
- var LetOrConst$0 = $TS($S($C($EXPECT($L154, 'LetOrConst "let"'), $EXPECT($L155, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11819
+ var LetOrConst$0 = $TS($S($C($EXPECT($L155, 'LetOrConst "let"'), $EXPECT($L156, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11816
11820
  return { $loc, token: $1 };
11817
11821
  });
11818
11822
  function LetOrConst(ctx, state) {
11819
11823
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
11820
11824
  }
11821
- var Const$0 = $TS($S($EXPECT($L155, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11825
+ var Const$0 = $TS($S($EXPECT($L156, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11822
11826
  return { $loc, token: $1 };
11823
11827
  });
11824
11828
  function Const(ctx, state) {
11825
11829
  return $EVENT(ctx, state, "Const", Const$0);
11826
11830
  }
11827
- var Is$0 = $TS($S($EXPECT($L156, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11831
+ var Is$0 = $TS($S($EXPECT($L157, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11828
11832
  return { $loc, token: $1 };
11829
11833
  });
11830
11834
  function Is(ctx, state) {
@@ -11836,25 +11840,25 @@ var require_parser = __commonJS({
11836
11840
  function LetOrConstOrVar(ctx, state) {
11837
11841
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
11838
11842
  }
11839
- var Loop$0 = $TS($S($EXPECT($L157, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11843
+ var Loop$0 = $TS($S($EXPECT($L158, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11840
11844
  return { $loc, token: "while(true)" };
11841
11845
  });
11842
11846
  function Loop(ctx, state) {
11843
11847
  return $EVENT(ctx, state, "Loop", Loop$0);
11844
11848
  }
11845
- var New$0 = $TS($S($EXPECT($L158, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11849
+ var New$0 = $TS($S($EXPECT($L159, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11846
11850
  return { $loc, token: $1 };
11847
11851
  });
11848
11852
  function New(ctx, state) {
11849
11853
  return $EVENT(ctx, state, "New", New$0);
11850
11854
  }
11851
- var Not$0 = $TS($S($EXPECT($L159, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L14, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11855
+ var Not$0 = $TS($S($EXPECT($L160, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L14, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11852
11856
  return { $loc, token: "!" };
11853
11857
  });
11854
11858
  function Not(ctx, state) {
11855
11859
  return $EVENT(ctx, state, "Not", Not$0);
11856
11860
  }
11857
- var Of$0 = $TS($S($EXPECT($L160, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11861
+ var Of$0 = $TS($S($EXPECT($L161, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11858
11862
  return { $loc, token: $1 };
11859
11863
  });
11860
11864
  function Of(ctx, state) {
@@ -11872,7 +11876,7 @@ var require_parser = __commonJS({
11872
11876
  function OpenBrace(ctx, state) {
11873
11877
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
11874
11878
  }
11875
- var OpenBracket$0 = $TV($EXPECT($L161, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11879
+ var OpenBracket$0 = $TV($EXPECT($L162, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11876
11880
  return { $loc, token: $1 };
11877
11881
  });
11878
11882
  function OpenBracket(ctx, state) {
@@ -11884,43 +11888,43 @@ var require_parser = __commonJS({
11884
11888
  function OpenParen(ctx, state) {
11885
11889
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
11886
11890
  }
11887
- var Operator$0 = $TS($S($EXPECT($L162, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11891
+ var Operator$0 = $TS($S($EXPECT($L163, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11888
11892
  return { $loc, token: $1 };
11889
11893
  });
11890
11894
  function Operator(ctx, state) {
11891
11895
  return $EVENT(ctx, state, "Operator", Operator$0);
11892
11896
  }
11893
- var Own$0 = $TS($S($EXPECT($L163, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11897
+ var Own$0 = $TS($S($EXPECT($L164, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11894
11898
  return { $loc, token: $1 };
11895
11899
  });
11896
11900
  function Own(ctx, state) {
11897
11901
  return $EVENT(ctx, state, "Own", Own$0);
11898
11902
  }
11899
- var Public$0 = $TS($S($EXPECT($L164, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11903
+ var Public$0 = $TS($S($EXPECT($L165, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11900
11904
  return { $loc, token: $1 };
11901
11905
  });
11902
11906
  function Public(ctx, state) {
11903
11907
  return $EVENT(ctx, state, "Public", Public$0);
11904
11908
  }
11905
- var Private$0 = $TS($S($EXPECT($L165, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11909
+ var Private$0 = $TS($S($EXPECT($L166, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11906
11910
  return { $loc, token: $1 };
11907
11911
  });
11908
11912
  function Private(ctx, state) {
11909
11913
  return $EVENT(ctx, state, "Private", Private$0);
11910
11914
  }
11911
- var Protected$0 = $TS($S($EXPECT($L166, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11915
+ var Protected$0 = $TS($S($EXPECT($L167, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11912
11916
  return { $loc, token: $1 };
11913
11917
  });
11914
11918
  function Protected(ctx, state) {
11915
11919
  return $EVENT(ctx, state, "Protected", Protected$0);
11916
11920
  }
11917
- var Pipe$0 = $TV($C($EXPECT($L167, 'Pipe "||>"'), $EXPECT($L168, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11921
+ var Pipe$0 = $TV($C($EXPECT($L168, 'Pipe "||>"'), $EXPECT($L169, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11918
11922
  return { $loc, token: "||>" };
11919
11923
  });
11920
- var Pipe$1 = $TV($C($EXPECT($L169, 'Pipe "|>="'), $EXPECT($L170, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11924
+ var Pipe$1 = $TV($C($EXPECT($L170, 'Pipe "|>="'), $EXPECT($L171, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11921
11925
  return { $loc, token: "|>=" };
11922
11926
  });
11923
- var Pipe$2 = $TV($C($EXPECT($L171, 'Pipe "|>"'), $EXPECT($L172, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11927
+ var Pipe$2 = $TV($C($EXPECT($L172, 'Pipe "|>"'), $EXPECT($L173, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11924
11928
  return { $loc, token: "|>" };
11925
11929
  });
11926
11930
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -11933,43 +11937,43 @@ var require_parser = __commonJS({
11933
11937
  function QuestionMark(ctx, state) {
11934
11938
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
11935
11939
  }
11936
- var Readonly$0 = $TS($S($EXPECT($L173, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11940
+ var Readonly$0 = $TS($S($EXPECT($L174, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11937
11941
  return { $loc, token: $1, ts: true };
11938
11942
  });
11939
11943
  function Readonly(ctx, state) {
11940
11944
  return $EVENT(ctx, state, "Readonly", Readonly$0);
11941
11945
  }
11942
- var Return$0 = $TS($S($EXPECT($L174, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11946
+ var Return$0 = $TS($S($EXPECT($L175, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11943
11947
  return { $loc, token: $1 };
11944
11948
  });
11945
11949
  function Return(ctx, state) {
11946
11950
  return $EVENT(ctx, state, "Return", Return$0);
11947
11951
  }
11948
- var Satisfies$0 = $TS($S($EXPECT($L175, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11952
+ var Satisfies$0 = $TS($S($EXPECT($L176, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11949
11953
  return { $loc, token: $1 };
11950
11954
  });
11951
11955
  function Satisfies(ctx, state) {
11952
11956
  return $EVENT(ctx, state, "Satisfies", Satisfies$0);
11953
11957
  }
11954
- var Semicolon$0 = $TV($EXPECT($L104, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11958
+ var Semicolon$0 = $TV($EXPECT($L103, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11955
11959
  return { $loc, token: $1 };
11956
11960
  });
11957
11961
  function Semicolon(ctx, state) {
11958
11962
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
11959
11963
  }
11960
- var SingleQuote$0 = $TV($EXPECT($L176, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11964
+ var SingleQuote$0 = $TV($EXPECT($L177, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11961
11965
  return { $loc, token: $1 };
11962
11966
  });
11963
11967
  function SingleQuote(ctx, state) {
11964
11968
  return $EVENT(ctx, state, "SingleQuote", SingleQuote$0);
11965
11969
  }
11966
- var Star$0 = $TV($EXPECT($L58, 'Star "*"'), function($skip, $loc, $0, $1) {
11970
+ var Star$0 = $TV($EXPECT($L57, 'Star "*"'), function($skip, $loc, $0, $1) {
11967
11971
  return { $loc, token: $1 };
11968
11972
  });
11969
11973
  function Star(ctx, state) {
11970
11974
  return $EVENT(ctx, state, "Star", Star$0);
11971
11975
  }
11972
- var Static$0 = $TS($S($EXPECT($L177, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11976
+ var Static$0 = $TS($S($EXPECT($L178, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11973
11977
  return { $loc, token: $1 };
11974
11978
  });
11975
11979
  var Static$1 = $TS($S($EXPECT($L120, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L120, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
@@ -11979,127 +11983,127 @@ var require_parser = __commonJS({
11979
11983
  function Static(ctx, state) {
11980
11984
  return $EVENT_C(ctx, state, "Static", Static$$);
11981
11985
  }
11982
- var SubstitutionStart$0 = $TV($EXPECT($L178, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11986
+ var SubstitutionStart$0 = $TV($EXPECT($L179, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11983
11987
  return { $loc, token: $1 };
11984
11988
  });
11985
11989
  function SubstitutionStart(ctx, state) {
11986
11990
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
11987
11991
  }
11988
- var Super$0 = $TS($S($EXPECT($L179, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11992
+ var Super$0 = $TS($S($EXPECT($L180, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11989
11993
  return { $loc, token: $1 };
11990
11994
  });
11991
11995
  function Super(ctx, state) {
11992
11996
  return $EVENT(ctx, state, "Super", Super$0);
11993
11997
  }
11994
- var Switch$0 = $TS($S($EXPECT($L180, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11998
+ var Switch$0 = $TS($S($EXPECT($L181, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11995
11999
  return { $loc, token: $1 };
11996
12000
  });
11997
12001
  function Switch(ctx, state) {
11998
12002
  return $EVENT(ctx, state, "Switch", Switch$0);
11999
12003
  }
12000
- var Target$0 = $TS($S($EXPECT($L181, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12004
+ var Target$0 = $TS($S($EXPECT($L182, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12001
12005
  return { $loc, token: $1 };
12002
12006
  });
12003
12007
  function Target(ctx, state) {
12004
12008
  return $EVENT(ctx, state, "Target", Target$0);
12005
12009
  }
12006
- var Then$0 = $TS($S(__, $EXPECT($L182, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
12010
+ var Then$0 = $TS($S(__, $EXPECT($L183, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
12007
12011
  return { $loc, token: "" };
12008
12012
  });
12009
12013
  function Then(ctx, state) {
12010
12014
  return $EVENT(ctx, state, "Then", Then$0);
12011
12015
  }
12012
- var This$0 = $TS($S($EXPECT($L183, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12016
+ var This$0 = $TS($S($EXPECT($L184, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12013
12017
  return { $loc, token: $1 };
12014
12018
  });
12015
12019
  function This(ctx, state) {
12016
12020
  return $EVENT(ctx, state, "This", This$0);
12017
12021
  }
12018
- var Throw$0 = $TS($S($EXPECT($L184, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12022
+ var Throw$0 = $TS($S($EXPECT($L185, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12019
12023
  return { $loc, token: $1 };
12020
12024
  });
12021
12025
  function Throw(ctx, state) {
12022
12026
  return $EVENT(ctx, state, "Throw", Throw$0);
12023
12027
  }
12024
- var TripleDoubleQuote$0 = $TV($EXPECT($L185, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
12028
+ var TripleDoubleQuote$0 = $TV($EXPECT($L186, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
12025
12029
  return { $loc, token: "`" };
12026
12030
  });
12027
12031
  function TripleDoubleQuote(ctx, state) {
12028
12032
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
12029
12033
  }
12030
- var TripleSingleQuote$0 = $TV($EXPECT($L186, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
12034
+ var TripleSingleQuote$0 = $TV($EXPECT($L187, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
12031
12035
  return { $loc, token: "`" };
12032
12036
  });
12033
12037
  function TripleSingleQuote(ctx, state) {
12034
12038
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
12035
12039
  }
12036
- var TripleSlash$0 = $TV($EXPECT($L187, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
12040
+ var TripleSlash$0 = $TV($EXPECT($L188, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
12037
12041
  return { $loc, token: "/" };
12038
12042
  });
12039
12043
  function TripleSlash(ctx, state) {
12040
12044
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
12041
12045
  }
12042
- var TripleTick$0 = $TV($EXPECT($L188, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
12046
+ var TripleTick$0 = $TV($EXPECT($L189, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
12043
12047
  return { $loc, token: "`" };
12044
12048
  });
12045
12049
  function TripleTick(ctx, state) {
12046
12050
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
12047
12051
  }
12048
- var Try$0 = $TS($S($EXPECT($L189, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12052
+ var Try$0 = $TS($S($EXPECT($L190, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12049
12053
  return { $loc, token: $1 };
12050
12054
  });
12051
12055
  function Try(ctx, state) {
12052
12056
  return $EVENT(ctx, state, "Try", Try$0);
12053
12057
  }
12054
- var Typeof$0 = $TS($S($EXPECT($L190, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12058
+ var Typeof$0 = $TS($S($EXPECT($L191, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12055
12059
  return { $loc, token: $1 };
12056
12060
  });
12057
12061
  function Typeof(ctx, state) {
12058
12062
  return $EVENT(ctx, state, "Typeof", Typeof$0);
12059
12063
  }
12060
- var Unless$0 = $TS($S($EXPECT($L191, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12064
+ var Unless$0 = $TS($S($EXPECT($L192, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12061
12065
  return { $loc, token: $1, negated: true };
12062
12066
  });
12063
12067
  function Unless(ctx, state) {
12064
12068
  return $EVENT(ctx, state, "Unless", Unless$0);
12065
12069
  }
12066
- var Until$0 = $TS($S($EXPECT($L192, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12070
+ var Until$0 = $TS($S($EXPECT($L193, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12067
12071
  return { $loc, token: $1 };
12068
12072
  });
12069
12073
  function Until(ctx, state) {
12070
12074
  return $EVENT(ctx, state, "Until", Until$0);
12071
12075
  }
12072
- var Using$0 = $TS($S($EXPECT($L193, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12076
+ var Using$0 = $TS($S($EXPECT($L194, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12073
12077
  return { $loc, token: $1 };
12074
12078
  });
12075
12079
  function Using(ctx, state) {
12076
12080
  return $EVENT(ctx, state, "Using", Using$0);
12077
12081
  }
12078
- var Var$0 = $TS($S($EXPECT($L194, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12082
+ var Var$0 = $TS($S($EXPECT($L195, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12079
12083
  return { $loc, token: $1 };
12080
12084
  });
12081
12085
  function Var(ctx, state) {
12082
12086
  return $EVENT(ctx, state, "Var", Var$0);
12083
12087
  }
12084
- var Void$0 = $TS($S($EXPECT($L195, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12088
+ var Void$0 = $TS($S($EXPECT($L196, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12085
12089
  return { $loc, token: $1 };
12086
12090
  });
12087
12091
  function Void(ctx, state) {
12088
12092
  return $EVENT(ctx, state, "Void", Void$0);
12089
12093
  }
12090
- var When$0 = $TS($S($EXPECT($L196, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12094
+ var When$0 = $TS($S($EXPECT($L197, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12091
12095
  return { $loc, token: "case" };
12092
12096
  });
12093
12097
  function When(ctx, state) {
12094
12098
  return $EVENT(ctx, state, "When", When$0);
12095
12099
  }
12096
- var While$0 = $TS($S($EXPECT($L197, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12100
+ var While$0 = $TS($S($EXPECT($L198, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12097
12101
  return { $loc, token: $1 };
12098
12102
  });
12099
12103
  function While(ctx, state) {
12100
12104
  return $EVENT(ctx, state, "While", While$0);
12101
12105
  }
12102
- var Yield$0 = $TS($S($EXPECT($L198, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12106
+ var Yield$0 = $TS($S($EXPECT($L199, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12103
12107
  return { $loc, token: $1, type: "Yield" };
12104
12108
  });
12105
12109
  function Yield(ctx, state) {
@@ -12128,7 +12132,7 @@ var require_parser = __commonJS({
12128
12132
  function JSXImplicitFragment(ctx, state) {
12129
12133
  return $EVENT(ctx, state, "JSXImplicitFragment", JSXImplicitFragment$0);
12130
12134
  }
12131
- var JSXTag$0 = $T($S($EXPECT($R70, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
12135
+ var JSXTag$0 = $T($S($EXPECT($R71, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
12132
12136
  return value[1];
12133
12137
  });
12134
12138
  function JSXTag(ctx, state) {
@@ -12178,7 +12182,7 @@ var require_parser = __commonJS({
12178
12182
  function JSXElement(ctx, state) {
12179
12183
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
12180
12184
  }
12181
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L16, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L199, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12185
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L16, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L200, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12182
12186
  return { type: "JSXElement", children: $0, tag: $2 };
12183
12187
  });
12184
12188
  function JSXSelfClosingElement(ctx, state) {
@@ -12197,7 +12201,7 @@ var require_parser = __commonJS({
12197
12201
  function PopJSXStack(ctx, state) {
12198
12202
  return $EVENT(ctx, state, "PopJSXStack", PopJSXStack$0);
12199
12203
  }
12200
- var JSXOpeningElement$0 = $S($EXPECT($L16, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L37, 'JSXOpeningElement ">"'));
12204
+ var JSXOpeningElement$0 = $S($EXPECT($L16, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L36, 'JSXOpeningElement ">"'));
12201
12205
  function JSXOpeningElement(ctx, state) {
12202
12206
  return $EVENT(ctx, state, "JSXOpeningElement", JSXOpeningElement$0);
12203
12207
  }
@@ -12212,7 +12216,7 @@ var require_parser = __commonJS({
12212
12216
  function JSXOptionalClosingElement(ctx, state) {
12213
12217
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
12214
12218
  }
12215
- var JSXClosingElement$0 = $S($EXPECT($L200, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L37, 'JSXClosingElement ">"'));
12219
+ var JSXClosingElement$0 = $S($EXPECT($L201, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L36, 'JSXClosingElement ">"'));
12216
12220
  function JSXClosingElement(ctx, state) {
12217
12221
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
12218
12222
  }
@@ -12233,7 +12237,7 @@ var require_parser = __commonJS({
12233
12237
  ];
12234
12238
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
12235
12239
  });
12236
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L201, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12240
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L202, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12237
12241
  var children = $3;
12238
12242
  $0 = $0.slice(1);
12239
12243
  return {
@@ -12246,7 +12250,7 @@ var require_parser = __commonJS({
12246
12250
  function JSXFragment(ctx, state) {
12247
12251
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
12248
12252
  }
12249
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L201, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
12253
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L202, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
12250
12254
  module2.JSXTagStack.push("");
12251
12255
  return $1;
12252
12256
  });
@@ -12263,11 +12267,11 @@ var require_parser = __commonJS({
12263
12267
  function JSXOptionalClosingFragment(ctx, state) {
12264
12268
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
12265
12269
  }
12266
- var JSXClosingFragment$0 = $EXPECT($L202, 'JSXClosingFragment "</>"');
12270
+ var JSXClosingFragment$0 = $EXPECT($L203, 'JSXClosingFragment "</>"');
12267
12271
  function JSXClosingFragment(ctx, state) {
12268
12272
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
12269
12273
  }
12270
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L150, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
12274
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L151, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
12271
12275
  return module2.config.defaultElement;
12272
12276
  });
12273
12277
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -12275,7 +12279,7 @@ var require_parser = __commonJS({
12275
12279
  function JSXElementName(ctx, state) {
12276
12280
  return $EVENT_C(ctx, state, "JSXElementName", JSXElementName$$);
12277
12281
  }
12278
- var JSXIdentifierName$0 = $R$0($EXPECT($R71, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
12282
+ var JSXIdentifierName$0 = $R$0($EXPECT($R72, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
12279
12283
  function JSXIdentifierName(ctx, state) {
12280
12284
  return $EVENT(ctx, state, "JSXIdentifierName", JSXIdentifierName$0);
12281
12285
  }
@@ -12445,7 +12449,7 @@ var require_parser = __commonJS({
12445
12449
  }
12446
12450
  return $skip;
12447
12451
  });
12448
- var JSXAttribute$5 = $TS($S($EXPECT($L150, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12452
+ var JSXAttribute$5 = $TS($S($EXPECT($L151, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12449
12453
  return [" ", "id=", $2];
12450
12454
  });
12451
12455
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -12464,11 +12468,11 @@ var require_parser = __commonJS({
12464
12468
  function JSXAttribute(ctx, state) {
12465
12469
  return $EVENT_C(ctx, state, "JSXAttribute", JSXAttribute$$);
12466
12470
  }
12467
- var JSXAttributeSpace$0 = $R$0($EXPECT($R72, "JSXAttributeSpace /[\\s>]|\\/>/"));
12471
+ var JSXAttributeSpace$0 = $R$0($EXPECT($R73, "JSXAttributeSpace /[\\s>]|\\/>/"));
12468
12472
  function JSXAttributeSpace(ctx, state) {
12469
12473
  return $EVENT(ctx, state, "JSXAttributeSpace", JSXAttributeSpace$0);
12470
12474
  }
12471
- var JSXShorthandString$0 = $TR($EXPECT($R73, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12475
+ var JSXShorthandString$0 = $TR($EXPECT($R74, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12472
12476
  return quoteString($0);
12473
12477
  });
12474
12478
  var JSXShorthandString$1 = $TS($S(TemplateLiteral), function($skip, $loc, $0, $1) {
@@ -12502,7 +12506,7 @@ var require_parser = __commonJS({
12502
12506
  }
12503
12507
  return [open, value, close];
12504
12508
  });
12505
- var JSXAttributeValue$4 = $R$0($EXPECT($R74, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
12509
+ var JSXAttributeValue$4 = $R$0($EXPECT($R75, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
12506
12510
  var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
12507
12511
  function JSXAttributeValue(ctx, state) {
12508
12512
  return $EVENT_C(ctx, state, "JSXAttributeValue", JSXAttributeValue$$);
@@ -12515,7 +12519,7 @@ var require_parser = __commonJS({
12515
12519
  function InlineJSXAttributeValue(ctx, state) {
12516
12520
  return $EVENT(ctx, state, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
12517
12521
  }
12518
- var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R75, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
12522
+ var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R76, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
12519
12523
  var op = $2;
12520
12524
  var rhs = $3;
12521
12525
  return [[], op, [], rhs];
@@ -12532,7 +12536,7 @@ var require_parser = __commonJS({
12532
12536
  function InlineJSXUnaryExpression(ctx, state) {
12533
12537
  return $EVENT(ctx, state, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
12534
12538
  }
12535
- var InlineJSXUnaryOp$0 = $TR($EXPECT($R76, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12539
+ var InlineJSXUnaryOp$0 = $TR($EXPECT($R77, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12536
12540
  return { $loc, token: $0 };
12537
12541
  });
12538
12542
  function InlineJSXUnaryOp(ctx, state) {
@@ -12622,14 +12626,19 @@ var require_parser = __commonJS({
12622
12626
  function InlineJSXMemberExpression(ctx, state) {
12623
12627
  return $EVENT(ctx, state, "InlineJSXMemberExpression", InlineJSXMemberExpression$0);
12624
12628
  }
12625
- var InlineJSXMemberExpressionRest$0 = $TS($S($E(OptionalShorthand), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
12626
- if ($1) {
12627
- if ($1.type === "Optional" && $2.type === "SliceExpression") {
12628
- return [$1.children[0], $2];
12629
+ var InlineJSXMemberExpressionRest$0 = $TS($S($E(OptionalShorthand), $Q(InlineComment), MemberBracketContent), function($skip, $loc, $0, $1, $2, $3) {
12630
+ var dot = $1;
12631
+ var comments = $2;
12632
+ var content = $3;
12633
+ if (!dot && !comments.length)
12634
+ return content;
12635
+ if (dot) {
12636
+ if (dot.type === "Optional" && content.type === "SliceExpression") {
12637
+ return [...dot.children.slice(0, -1), ...comments, content];
12629
12638
  }
12630
- return $0;
12639
+ return [dot, ...comments, content];
12631
12640
  }
12632
- return $2;
12641
+ return [...comments, content];
12633
12642
  });
12634
12643
  var InlineJSXMemberExpressionRest$1 = PropertyAccess;
12635
12644
  var InlineJSXMemberExpressionRest$2 = PropertyGlob;
@@ -12682,7 +12691,7 @@ var require_parser = __commonJS({
12682
12691
  }
12683
12692
  return $skip;
12684
12693
  });
12685
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L29, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12694
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L28, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12686
12695
  return { children: [], jsxChildren: [] };
12687
12696
  });
12688
12697
  var JSXNestedChildren$$ = [JSXNestedChildren$0, JSXNestedChildren$1];
@@ -12737,19 +12746,19 @@ var require_parser = __commonJS({
12737
12746
  function JSXChild(ctx, state) {
12738
12747
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
12739
12748
  }
12740
- var JSXComment$0 = $TS($S($EXPECT($L203, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L204, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12749
+ var JSXComment$0 = $TS($S($EXPECT($L204, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L205, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12741
12750
  return ["{/*", $2, "*/}"];
12742
12751
  });
12743
12752
  function JSXComment(ctx, state) {
12744
12753
  return $EVENT(ctx, state, "JSXComment", JSXComment$0);
12745
12754
  }
12746
- var JSXCommentContent$0 = $TR($EXPECT($R77, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12755
+ var JSXCommentContent$0 = $TR($EXPECT($R78, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12747
12756
  return { $loc, token: $0.replace(/\*\//g, "* /") };
12748
12757
  });
12749
12758
  function JSXCommentContent(ctx, state) {
12750
12759
  return $EVENT(ctx, state, "JSXCommentContent", JSXCommentContent$0);
12751
12760
  }
12752
- var JSXText$0 = $TR($EXPECT($R78, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12761
+ var JSXText$0 = $TR($EXPECT($R79, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12753
12762
  return {
12754
12763
  type: "JSXText",
12755
12764
  token: $0,
@@ -12848,7 +12857,7 @@ var require_parser = __commonJS({
12848
12857
  function TypeDeclarationRest(ctx, state) {
12849
12858
  return $EVENT_C(ctx, state, "TypeDeclarationRest", TypeDeclarationRest$$);
12850
12859
  }
12851
- var TypeAliasDeclaration$0 = $TS($S(TypeKeyword, $E(_), IdentifierName, $E(TypeParameters), OptionalEquals, $C($S($E(_), Type), $S(__, Type))), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12860
+ var TypeAliasDeclaration$0 = $TS($S(TypeKeyword, $E(_), IdentifierName, $E(TypeParameters), OptionalEquals, $C(MaybeIndentedType, $S(__, Type))), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12852
12861
  var id = $3;
12853
12862
  return {
12854
12863
  type: "TypeDeclaration",
@@ -12857,8 +12866,18 @@ var require_parser = __commonJS({
12857
12866
  ts: true
12858
12867
  };
12859
12868
  });
12869
+ var TypeAliasDeclaration$1 = $TS($S(InsertType, IdentifierName, $E(TypeParameters), __, TypeAssignment, $C(MaybeIndentedType, $S(__, Type))), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12870
+ var id = $2;
12871
+ return {
12872
+ type: "TypeDeclaration",
12873
+ id,
12874
+ children: $0,
12875
+ ts: true
12876
+ };
12877
+ });
12878
+ var TypeAliasDeclaration$$ = [TypeAliasDeclaration$0, TypeAliasDeclaration$1];
12860
12879
  function TypeAliasDeclaration(ctx, state) {
12861
- return $EVENT(ctx, state, "TypeAliasDeclaration", TypeAliasDeclaration$0);
12880
+ return $EVENT_C(ctx, state, "TypeAliasDeclaration", TypeAliasDeclaration$$);
12862
12881
  }
12863
12882
  var InterfaceDeclaration$0 = $TS($S(Interface, $E(_), IdentifierName, $E(TypeParameters), $E(InterfaceExtendsClause), InterfaceBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12864
12883
  var id = $3;
@@ -12914,37 +12933,37 @@ var require_parser = __commonJS({
12914
12933
  function InterfaceExtendsTarget(ctx, state) {
12915
12934
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
12916
12935
  }
12917
- var TypeKeyword$0 = $TS($S($EXPECT($L205, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12936
+ var TypeKeyword$0 = $TS($S($EXPECT($L206, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12918
12937
  return { $loc, token: $1 };
12919
12938
  });
12920
12939
  function TypeKeyword(ctx, state) {
12921
12940
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
12922
12941
  }
12923
- var Enum$0 = $TS($S($EXPECT($L206, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12942
+ var Enum$0 = $TS($S($EXPECT($L207, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12924
12943
  return { $loc, token: $1 };
12925
12944
  });
12926
12945
  function Enum(ctx, state) {
12927
12946
  return $EVENT(ctx, state, "Enum", Enum$0);
12928
12947
  }
12929
- var Interface$0 = $TS($S($EXPECT($L207, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12948
+ var Interface$0 = $TS($S($EXPECT($L208, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12930
12949
  return { $loc, token: $1 };
12931
12950
  });
12932
12951
  function Interface(ctx, state) {
12933
12952
  return $EVENT(ctx, state, "Interface", Interface$0);
12934
12953
  }
12935
- var Global$0 = $TS($S($EXPECT($L208, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12954
+ var Global$0 = $TS($S($EXPECT($L209, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12936
12955
  return { $loc, token: $1 };
12937
12956
  });
12938
12957
  function Global(ctx, state) {
12939
12958
  return $EVENT(ctx, state, "Global", Global$0);
12940
12959
  }
12941
- var Module$0 = $TS($S($EXPECT($L209, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12960
+ var Module$0 = $TS($S($EXPECT($L210, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12942
12961
  return { $loc, token: $1 };
12943
12962
  });
12944
12963
  function Module(ctx, state) {
12945
12964
  return $EVENT(ctx, state, "Module", Module$0);
12946
12965
  }
12947
- var Namespace$0 = $TS($S($EXPECT($L210, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12966
+ var Namespace$0 = $TS($S($EXPECT($L211, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12948
12967
  return { $loc, token: $1 };
12949
12968
  });
12950
12969
  function Namespace(ctx, state) {
@@ -13160,7 +13179,7 @@ var require_parser = __commonJS({
13160
13179
  function TypeProperty(ctx, state) {
13161
13180
  return $EVENT(ctx, state, "TypeProperty", TypeProperty$0);
13162
13181
  }
13163
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R79, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R80, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
13182
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R80, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R17, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
13164
13183
  function TypeIndexSignature(ctx, state) {
13165
13184
  return $EVENT(ctx, state, "TypeIndexSignature", TypeIndexSignature$0);
13166
13185
  }
@@ -13218,7 +13237,7 @@ var require_parser = __commonJS({
13218
13237
  function ReturnTypeSuffix(ctx, state) {
13219
13238
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
13220
13239
  }
13221
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L211, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
13240
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L212, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
13222
13241
  var asserts = $1;
13223
13242
  var t = $2;
13224
13243
  if (asserts) {
@@ -13239,7 +13258,7 @@ var require_parser = __commonJS({
13239
13258
  function ReturnType(ctx, state) {
13240
13259
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
13241
13260
  }
13242
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L156, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
13261
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L157, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
13243
13262
  var lhs = $1;
13244
13263
  var rhs = $2;
13245
13264
  if (!rhs)
@@ -13297,8 +13316,8 @@ var require_parser = __commonJS({
13297
13316
  function TypeUnarySuffix(ctx, state) {
13298
13317
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
13299
13318
  }
13300
- var TypeUnaryOp$0 = $S($EXPECT($L212, 'TypeUnaryOp "keyof"'), NonIdContinue);
13301
- var TypeUnaryOp$1 = $S($EXPECT($L173, 'TypeUnaryOp "readonly"'), NonIdContinue);
13319
+ var TypeUnaryOp$0 = $S($EXPECT($L213, 'TypeUnaryOp "keyof"'), NonIdContinue);
13320
+ var TypeUnaryOp$1 = $S($EXPECT($L174, 'TypeUnaryOp "readonly"'), NonIdContinue);
13302
13321
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1];
13303
13322
  function TypeUnaryOp(ctx, state) {
13304
13323
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -13328,7 +13347,7 @@ var require_parser = __commonJS({
13328
13347
  function TypeIndexedAccess(ctx, state) {
13329
13348
  return $EVENT_C(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$$);
13330
13349
  }
13331
- var UnknownAlias$0 = $TV($EXPECT($L213, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
13350
+ var UnknownAlias$0 = $TV($EXPECT($L214, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
13332
13351
  return { $loc, token: "unknown" };
13333
13352
  });
13334
13353
  function UnknownAlias(ctx, state) {
@@ -13345,7 +13364,7 @@ var require_parser = __commonJS({
13345
13364
  return { ...$2, children: [$1, ...$2.children] };
13346
13365
  });
13347
13366
  var TypePrimary$3 = InterfaceBlock;
13348
- var TypePrimary$4 = $S($E(_), FunctionType);
13367
+ var TypePrimary$4 = $S($E(_), TypeFunction);
13349
13368
  var TypePrimary$5 = $S($E(_), InlineInterfaceLiteral);
13350
13369
  var TypePrimary$6 = $TS($S($E(_), ImportType), function($skip, $loc, $0, $1, $2) {
13351
13370
  var t = $2;
@@ -13534,10 +13553,10 @@ var require_parser = __commonJS({
13534
13553
  }
13535
13554
  var TypeLiteral$0 = TypeTemplateLiteral;
13536
13555
  var TypeLiteral$1 = Literal;
13537
- var TypeLiteral$2 = $TS($S($EXPECT($L195, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13556
+ var TypeLiteral$2 = $TS($S($EXPECT($L196, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13538
13557
  return { type: "VoidType", $loc, token: $1 };
13539
13558
  });
13540
- var TypeLiteral$3 = $TV($EXPECT($L214, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13559
+ var TypeLiteral$3 = $TV($EXPECT($L215, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13541
13560
  return { $loc, token: "[]" };
13542
13561
  });
13543
13562
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -13556,33 +13575,33 @@ var require_parser = __commonJS({
13556
13575
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
13557
13576
  return value[1];
13558
13577
  });
13559
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L14, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L117, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L38, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L29, 'InlineInterfacePropertyDelimiter "}"'))));
13578
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L14, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L117, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L37, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L28, 'InlineInterfacePropertyDelimiter "}"'))));
13560
13579
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
13561
13580
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
13562
13581
  function InlineInterfacePropertyDelimiter(ctx, state) {
13563
13582
  return $EVENT_C(ctx, state, "InlineInterfacePropertyDelimiter", InlineInterfacePropertyDelimiter$$);
13564
13583
  }
13565
- var TypeBinaryOp$0 = $TV($EXPECT($L102, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
13584
+ var TypeBinaryOp$0 = $TV($EXPECT($L101, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
13566
13585
  return { $loc, token: "|" };
13567
13586
  });
13568
- var TypeBinaryOp$1 = $TV($EXPECT($L101, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
13587
+ var TypeBinaryOp$1 = $TV($EXPECT($L100, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
13569
13588
  return { $loc, token: "&" };
13570
13589
  });
13571
13590
  var TypeBinaryOp$$ = [TypeBinaryOp$0, TypeBinaryOp$1];
13572
13591
  function TypeBinaryOp(ctx, state) {
13573
13592
  return $EVENT_C(ctx, state, "TypeBinaryOp", TypeBinaryOp$$);
13574
13593
  }
13575
- var FunctionType$0 = $TS($S($E($S($E($S(Abstract, $E(_))), New, $E(_))), Parameters, __, TypeArrowFunction, $E(ReturnType)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
13594
+ var TypeFunction$0 = $TS($S($E($S($E($S(Abstract, $E(_))), New, $E(_))), Parameters, __, TypeArrowFunction, $E(ReturnType)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
13576
13595
  var type = $5;
13577
13596
  if (type) {
13578
13597
  return $0;
13579
13598
  }
13580
13599
  return [...$0, "void"];
13581
13600
  });
13582
- function FunctionType(ctx, state) {
13583
- return $EVENT(ctx, state, "FunctionType", FunctionType$0);
13601
+ function TypeFunction(ctx, state) {
13602
+ return $EVENT(ctx, state, "TypeFunction", TypeFunction$0);
13584
13603
  }
13585
- var TypeArrowFunction$0 = $TV($C($EXPECT($L12, 'TypeArrowFunction "=>"'), $EXPECT($L13, 'TypeArrowFunction "\u21D2"'), $EXPECT($L27, 'TypeArrowFunction "->"'), $EXPECT($L28, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
13604
+ var TypeArrowFunction$0 = $TV($C($EXPECT($L12, 'TypeArrowFunction "=>"'), $EXPECT($L13, 'TypeArrowFunction "\u21D2"'), $EXPECT($L26, 'TypeArrowFunction "->"'), $EXPECT($L27, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
13586
13605
  return { $loc, token: "=>" };
13587
13606
  });
13588
13607
  function TypeArrowFunction(ctx, state) {
@@ -13608,8 +13627,8 @@ var require_parser = __commonJS({
13608
13627
  function TypeArgumentDelimiter(ctx, state) {
13609
13628
  return $EVENT(ctx, state, "TypeArgumentDelimiter", TypeArgumentDelimiter$0);
13610
13629
  }
13611
- var TypeParameters$0 = $TS($S($E(_), OpenAngleBracket, $P(TypeParameter), __, CloseAngleBracket), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
13612
- var parameters = $3;
13630
+ var TypeParameters$0 = $TS($S(OpenAngleBracket, $P(TypeParameter), __, CloseAngleBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
13631
+ var parameters = $2;
13613
13632
  return {
13614
13633
  type: "TypeParameters",
13615
13634
  parameters,
@@ -13620,11 +13639,11 @@ var require_parser = __commonJS({
13620
13639
  function TypeParameters(ctx, state) {
13621
13640
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
13622
13641
  }
13623
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L155, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13642
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L156, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13624
13643
  function TypeParameter(ctx, state) {
13625
13644
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
13626
13645
  }
13627
- var TypeConstraint$0 = $S(__, $EXPECT($L143, 'TypeConstraint "extends"'), NonIdContinue, Type);
13646
+ var TypeConstraint$0 = $S(__, ExtendsToken, Type);
13628
13647
  function TypeConstraint(ctx, state) {
13629
13648
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
13630
13649
  }
@@ -13633,7 +13652,7 @@ var require_parser = __commonJS({
13633
13652
  return $EVENT(ctx, state, "TypeInitializer", TypeInitializer$0);
13634
13653
  }
13635
13654
  var TypeParameterDelimiter$0 = $S($E(_), Comma);
13636
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L37, 'TypeParameterDelimiter ">"')));
13655
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L36, 'TypeParameterDelimiter ">"')));
13637
13656
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
13638
13657
  return value[1];
13639
13658
  });
@@ -13663,7 +13682,7 @@ var require_parser = __commonJS({
13663
13682
  function CivetPrologue(ctx, state) {
13664
13683
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
13665
13684
  }
13666
- var CivetPrologueContent$0 = $TS($S($EXPECT($L215, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R85, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13685
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L216, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R85, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13667
13686
  var options = $3;
13668
13687
  return {
13669
13688
  type: "CivetPrologue",
@@ -13847,6 +13866,12 @@ var require_parser = __commonJS({
13847
13866
  function InsertVar(ctx, state) {
13848
13867
  return $EVENT(ctx, state, "InsertVar", InsertVar$0);
13849
13868
  }
13869
+ var InsertType$0 = $TV($EXPECT($L0, 'InsertType ""'), function($skip, $loc, $0, $1) {
13870
+ return { $loc, token: "type " };
13871
+ });
13872
+ function InsertType(ctx, state) {
13873
+ return $EVENT(ctx, state, "InsertType", InsertType$0);
13874
+ }
13850
13875
  var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L0, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
13851
13876
  if (module2.config.coffeeBinaryExistential)
13852
13877
  return;
@@ -14066,9 +14091,9 @@ var require_parser = __commonJS({
14066
14091
  hasProp(hasPropRef) {
14067
14092
  const typeSuffix = {
14068
14093
  ts: true,
14069
- children: [": <T>(object: T, prop: keyof T) => boolean"]
14094
+ children: [": <T>(object: T, prop: PropertyKey) => boolean"]
14070
14095
  };
14071
- module2.prelude.push(["", [preludeVar, hasPropRef, typeSuffix, " = {}.constructor.hasOwn", asAny, ";\n"]]);
14096
+ module2.prelude.push(["", [preludeVar, hasPropRef, typeSuffix, " = ({}.constructor", asAny, ").hasOwn;\n"]]);
14072
14097
  },
14073
14098
  is(isRef) {
14074
14099
  const typeSuffix = {
@@ -14758,6 +14783,7 @@ var require_parser = __commonJS({
14758
14783
  exports2.LexicalDeclaration = LexicalDeclaration;
14759
14784
  exports2.ConstAssignment = ConstAssignment;
14760
14785
  exports2.LetAssignment = LetAssignment;
14786
+ exports2.TypeAssignment = TypeAssignment;
14761
14787
  exports2.LexicalBinding = LexicalBinding;
14762
14788
  exports2.Initializer = Initializer;
14763
14789
  exports2.VariableStatement = VariableStatement;
@@ -15033,7 +15059,7 @@ var require_parser = __commonJS({
15033
15059
  exports2.InlineBasicInterfaceProperty = InlineBasicInterfaceProperty;
15034
15060
  exports2.InlineInterfacePropertyDelimiter = InlineInterfacePropertyDelimiter;
15035
15061
  exports2.TypeBinaryOp = TypeBinaryOp;
15036
- exports2.FunctionType = FunctionType;
15062
+ exports2.TypeFunction = TypeFunction;
15037
15063
  exports2.TypeArrowFunction = TypeArrowFunction;
15038
15064
  exports2.TypeArguments = TypeArguments;
15039
15065
  exports2.TypeArgument = TypeArgument;
@@ -15075,6 +15101,7 @@ var require_parser = __commonJS({
15075
15101
  exports2.InsertDot = InsertDot;
15076
15102
  exports2.InsertBreak = InsertBreak;
15077
15103
  exports2.InsertVar = InsertVar;
15104
+ exports2.InsertType = InsertType;
15078
15105
  exports2.CoffeeBinaryExistentialEnabled = CoffeeBinaryExistentialEnabled;
15079
15106
  exports2.CoffeeBooleansEnabled = CoffeeBooleansEnabled;
15080
15107
  exports2.CoffeeClassesEnabled = CoffeeClassesEnabled;