@danielx/civet 0.6.70 → 0.6.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.mjs CHANGED
@@ -73,6 +73,7 @@ __export(lib_exports, {
73
73
  isWhitespaceOrEmpty: () => isWhitespaceOrEmpty,
74
74
  lastAccessInCallExpression: () => lastAccessInCallExpression,
75
75
  literalValue: () => literalValue,
76
+ makeAmpersandFunction: () => makeAmpersandFunction,
76
77
  makeAsConst: () => makeAsConst,
77
78
  makeEmptyBlock: () => makeEmptyBlock,
78
79
  makeExpressionStatement: () => makeExpressionStatement,
@@ -144,6 +145,30 @@ function makeNode(node) {
144
145
  updateParentPointers(node);
145
146
  return node;
146
147
  }
148
+ function makeAmpersandFunction(bodyAfterRef = []) {
149
+ const ref = makeRef("$");
150
+ const body = [ref, ...bodyAfterRef];
151
+ const parameters = {
152
+ type: "Parameters",
153
+ children: [ref],
154
+ names: []
155
+ };
156
+ const block = {
157
+ expressions: body
158
+ };
159
+ return {
160
+ type: "ArrowFunction",
161
+ signature: {
162
+ modifier: {}
163
+ },
164
+ children: [parameters, " => ", body],
165
+ ref,
166
+ body,
167
+ ampersandBlock: true,
168
+ block,
169
+ parameters
170
+ };
171
+ }
147
172
  function addPostfixStatement(statement, ws, post) {
148
173
  const expressions = [
149
174
  ...post.blockPrefix || [],
@@ -3616,9 +3641,9 @@ var require_machine = __commonJS({
3616
3641
  Validator: () => Validator
3617
3642
  });
3618
3643
  module.exports = __toCommonJS(machine_exports);
3619
- function $EXPECT(parser2, expectation) {
3644
+ function $EXPECT(parser, expectation) {
3620
3645
  return function(ctx, state) {
3621
- const result = parser2(ctx, state);
3646
+ const result = parser(ctx, state);
3622
3647
  if (!result)
3623
3648
  ctx.fail(state.pos, expectation);
3624
3649
  return result;
@@ -3805,9 +3830,9 @@ var require_machine = __commonJS({
3805
3830
  };
3806
3831
  };
3807
3832
  }
3808
- function $T(parser2, fn) {
3833
+ function $T(parser, fn) {
3809
3834
  return function(ctx, state) {
3810
- const result = parser2(ctx, state);
3835
+ const result = parser(ctx, state);
3811
3836
  if (!result)
3812
3837
  return;
3813
3838
  if (ctx.tokenize)
@@ -3818,9 +3843,9 @@ var require_machine = __commonJS({
3818
3843
  return result;
3819
3844
  };
3820
3845
  }
3821
- function $TR(parser2, fn) {
3846
+ function $TR(parser, fn) {
3822
3847
  return function(ctx, state) {
3823
- const result = parser2(ctx, state);
3848
+ const result = parser(ctx, state);
3824
3849
  if (!result)
3825
3850
  return;
3826
3851
  if (ctx.tokenize)
@@ -3834,9 +3859,9 @@ var require_machine = __commonJS({
3834
3859
  return result;
3835
3860
  };
3836
3861
  }
3837
- function $TS(parser2, fn) {
3862
+ function $TS(parser, fn) {
3838
3863
  return function(ctx, state) {
3839
- const result = parser2(ctx, state);
3864
+ const result = parser(ctx, state);
3840
3865
  if (!result)
3841
3866
  return;
3842
3867
  if (ctx.tokenize)
@@ -3850,9 +3875,9 @@ var require_machine = __commonJS({
3850
3875
  return result;
3851
3876
  };
3852
3877
  }
3853
- function $TV(parser2, fn) {
3878
+ function $TV(parser, fn) {
3854
3879
  return function(ctx, state) {
3855
- const result = parser2(ctx, state);
3880
+ const result = parser(ctx, state);
3856
3881
  if (!result)
3857
3882
  return;
3858
3883
  if (ctx.tokenize)
@@ -3866,9 +3891,9 @@ var require_machine = __commonJS({
3866
3891
  return result;
3867
3892
  };
3868
3893
  }
3869
- function $R$0(parser2) {
3894
+ function $R$0(parser) {
3870
3895
  return function(ctx, state) {
3871
- const result = parser2(ctx, state);
3896
+ const result = parser(ctx, state);
3872
3897
  if (!result)
3873
3898
  return;
3874
3899
  const value = result.value[0];
@@ -4095,6 +4120,7 @@ var require_parser = __commonJS({
4095
4120
  UnaryWithoutParenthesizedAssignmentBody,
4096
4121
  UnaryPostfix,
4097
4122
  TypePostfix,
4123
+ NWTypePostfix,
4098
4124
  UpdateExpression,
4099
4125
  UpdateExpressionSymbol,
4100
4126
  AssignmentExpression,
@@ -4207,6 +4233,7 @@ var require_parser = __commonJS({
4207
4233
  OperatorDeclaration,
4208
4234
  OperatorSignature,
4209
4235
  AmpersandBlockRHS,
4236
+ AmpersandTypeSuffix,
4210
4237
  AmpersandBlockRHSBody,
4211
4238
  ThinArrowFunction,
4212
4239
  Arrow,
@@ -4263,8 +4290,10 @@ var require_parser = __commonJS({
4263
4290
  NestedImplicitPropertyDefinition,
4264
4291
  NestedPropertyDefinitions,
4265
4292
  NestedPropertyDefinition,
4293
+ ImplicitObjectLiteral,
4294
+ ImplicitObjectPropertyDelimiter,
4266
4295
  InlineObjectLiteral,
4267
- ImplicitInlineObjectPropertyDelimiter,
4296
+ InlineObjectPropertyDelimiter,
4268
4297
  ObjectPropertyDelimiter,
4269
4298
  PropertyDefinition,
4270
4299
  NamedProperty,
@@ -4871,118 +4900,119 @@ var require_parser = __commonJS({
4871
4900
  var $L100 = $L("\u2209");
4872
4901
  var $L101 = $L("&");
4873
4902
  var $L102 = $L("|");
4874
- var $L103 = $L(";");
4875
- var $L104 = $L("$:");
4903
+ var $L103 = $L("$:");
4904
+ var $L104 = $L(";");
4876
4905
  var $L105 = $L("break");
4877
4906
  var $L106 = $L("continue");
4878
4907
  var $L107 = $L("debugger");
4879
- var $L108 = $L("with");
4880
- var $L109 = $L("assert");
4881
- var $L110 = $L(":=");
4882
- var $L111 = $L("\u2254");
4883
- var $L112 = $L(".=");
4884
- var $L113 = $L("/*");
4885
- var $L114 = $L("*/");
4886
- var $L115 = $L("\\");
4887
- var $L116 = $L(")");
4888
- var $L117 = $L("abstract");
4889
- var $L118 = $L("as");
4890
- var $L119 = $L("@");
4891
- var $L120 = $L("@@");
4892
- var $L121 = $L("async");
4893
- var $L122 = $L("await");
4894
- var $L123 = $L("`");
4895
- var $L124 = $L("by");
4896
- var $L125 = $L("case");
4897
- var $L126 = $L("catch");
4898
- var $L127 = $L("class");
4899
- var $L128 = $L("#{");
4900
- var $L129 = $L("declare");
4901
- var $L130 = $L("default");
4902
- var $L131 = $L("delete");
4903
- var $L132 = $L("do");
4904
- var $L133 = $L("..");
4905
- var $L134 = $L("\u2025");
4906
- var $L135 = $L("...");
4907
- var $L136 = $L("\u2026");
4908
- var $L137 = $L("::");
4909
- var $L138 = $L('"');
4910
- var $L139 = $L("each");
4911
- var $L140 = $L("else");
4912
- var $L141 = $L("export");
4913
- var $L142 = $L("extends");
4914
- var $L143 = $L("finally");
4915
- var $L144 = $L("for");
4916
- var $L145 = $L("from");
4917
- var $L146 = $L("function");
4918
- var $L147 = $L("get");
4919
- var $L148 = $L("set");
4920
- var $L149 = $L("#");
4921
- var $L150 = $L("if");
4922
- var $L151 = $L("in");
4923
- var $L152 = $L("let");
4924
- var $L153 = $L("const");
4925
- var $L154 = $L("is");
4926
- var $L155 = $L("loop");
4927
- var $L156 = $L("new");
4928
- var $L157 = $L("not");
4929
- var $L158 = $L("of");
4930
- var $L159 = $L("[");
4931
- var $L160 = $L("operator");
4932
- var $L161 = $L("own");
4933
- var $L162 = $L("public");
4934
- var $L163 = $L("private");
4935
- var $L164 = $L("protected");
4936
- var $L165 = $L("||>");
4937
- var $L166 = $L("|\u25B7");
4938
- var $L167 = $L("|>=");
4939
- var $L168 = $L("\u25B7=");
4940
- var $L169 = $L("|>");
4941
- var $L170 = $L("\u25B7");
4942
- var $L171 = $L("readonly");
4943
- var $L172 = $L("return");
4944
- var $L173 = $L("satisfies");
4945
- var $L174 = $L("'");
4946
- var $L175 = $L("static");
4947
- var $L176 = $L("${");
4948
- var $L177 = $L("super");
4949
- var $L178 = $L("switch");
4950
- var $L179 = $L("target");
4951
- var $L180 = $L("then");
4952
- var $L181 = $L("this");
4953
- var $L182 = $L("throw");
4954
- var $L183 = $L('"""');
4955
- var $L184 = $L("'''");
4956
- var $L185 = $L("///");
4957
- var $L186 = $L("```");
4958
- var $L187 = $L("try");
4959
- var $L188 = $L("typeof");
4960
- var $L189 = $L("unless");
4961
- var $L190 = $L("until");
4962
- var $L191 = $L("using");
4963
- var $L192 = $L("var");
4964
- var $L193 = $L("void");
4965
- var $L194 = $L("when");
4966
- var $L195 = $L("while");
4967
- var $L196 = $L("yield");
4968
- var $L197 = $L("/>");
4969
- var $L198 = $L("</");
4970
- var $L199 = $L("<>");
4971
- var $L200 = $L("</>");
4972
- var $L201 = $L("<!--");
4973
- var $L202 = $L("-->");
4974
- var $L203 = $L("type");
4975
- var $L204 = $L("enum");
4976
- var $L205 = $L("interface");
4977
- var $L206 = $L("global");
4978
- var $L207 = $L("module");
4979
- var $L208 = $L("namespace");
4980
- var $L209 = $L("asserts");
4981
- var $L210 = $L("keyof");
4982
- var $L211 = $L("infer");
4983
- var $L212 = $L("???");
4984
- var $L213 = $L("[]");
4985
- var $L214 = $L("civet");
4908
+ var $L108 = $L("require");
4909
+ var $L109 = $L("with");
4910
+ var $L110 = $L("assert");
4911
+ var $L111 = $L(":=");
4912
+ var $L112 = $L("\u2254");
4913
+ var $L113 = $L(".=");
4914
+ var $L114 = $L("/*");
4915
+ var $L115 = $L("*/");
4916
+ var $L116 = $L("\\");
4917
+ var $L117 = $L(")");
4918
+ var $L118 = $L("abstract");
4919
+ var $L119 = $L("as");
4920
+ var $L120 = $L("@");
4921
+ var $L121 = $L("@@");
4922
+ var $L122 = $L("async");
4923
+ var $L123 = $L("await");
4924
+ var $L124 = $L("`");
4925
+ var $L125 = $L("by");
4926
+ var $L126 = $L("case");
4927
+ var $L127 = $L("catch");
4928
+ var $L128 = $L("class");
4929
+ var $L129 = $L("#{");
4930
+ var $L130 = $L("declare");
4931
+ var $L131 = $L("default");
4932
+ var $L132 = $L("delete");
4933
+ var $L133 = $L("do");
4934
+ var $L134 = $L("..");
4935
+ var $L135 = $L("\u2025");
4936
+ var $L136 = $L("...");
4937
+ var $L137 = $L("\u2026");
4938
+ var $L138 = $L("::");
4939
+ var $L139 = $L('"');
4940
+ var $L140 = $L("each");
4941
+ var $L141 = $L("else");
4942
+ var $L142 = $L("export");
4943
+ var $L143 = $L("extends");
4944
+ var $L144 = $L("finally");
4945
+ var $L145 = $L("for");
4946
+ var $L146 = $L("from");
4947
+ var $L147 = $L("function");
4948
+ var $L148 = $L("get");
4949
+ var $L149 = $L("set");
4950
+ var $L150 = $L("#");
4951
+ var $L151 = $L("if");
4952
+ var $L152 = $L("in");
4953
+ var $L153 = $L("let");
4954
+ var $L154 = $L("const");
4955
+ var $L155 = $L("is");
4956
+ var $L156 = $L("loop");
4957
+ var $L157 = $L("new");
4958
+ var $L158 = $L("not");
4959
+ var $L159 = $L("of");
4960
+ var $L160 = $L("[");
4961
+ var $L161 = $L("operator");
4962
+ var $L162 = $L("own");
4963
+ var $L163 = $L("public");
4964
+ var $L164 = $L("private");
4965
+ var $L165 = $L("protected");
4966
+ var $L166 = $L("||>");
4967
+ var $L167 = $L("|\u25B7");
4968
+ var $L168 = $L("|>=");
4969
+ var $L169 = $L("\u25B7=");
4970
+ var $L170 = $L("|>");
4971
+ var $L171 = $L("\u25B7");
4972
+ var $L172 = $L("readonly");
4973
+ var $L173 = $L("return");
4974
+ var $L174 = $L("satisfies");
4975
+ var $L175 = $L("'");
4976
+ var $L176 = $L("static");
4977
+ var $L177 = $L("${");
4978
+ var $L178 = $L("super");
4979
+ var $L179 = $L("switch");
4980
+ var $L180 = $L("target");
4981
+ var $L181 = $L("then");
4982
+ var $L182 = $L("this");
4983
+ var $L183 = $L("throw");
4984
+ var $L184 = $L('"""');
4985
+ var $L185 = $L("'''");
4986
+ var $L186 = $L("///");
4987
+ var $L187 = $L("```");
4988
+ var $L188 = $L("try");
4989
+ var $L189 = $L("typeof");
4990
+ var $L190 = $L("unless");
4991
+ var $L191 = $L("until");
4992
+ var $L192 = $L("using");
4993
+ var $L193 = $L("var");
4994
+ var $L194 = $L("void");
4995
+ var $L195 = $L("when");
4996
+ var $L196 = $L("while");
4997
+ var $L197 = $L("yield");
4998
+ var $L198 = $L("/>");
4999
+ var $L199 = $L("</");
5000
+ var $L200 = $L("<>");
5001
+ var $L201 = $L("</>");
5002
+ var $L202 = $L("<!--");
5003
+ var $L203 = $L("-->");
5004
+ var $L204 = $L("type");
5005
+ var $L205 = $L("enum");
5006
+ var $L206 = $L("interface");
5007
+ var $L207 = $L("global");
5008
+ var $L208 = $L("module");
5009
+ var $L209 = $L("namespace");
5010
+ var $L210 = $L("asserts");
5011
+ var $L211 = $L("keyof");
5012
+ var $L212 = $L("infer");
5013
+ var $L213 = $L("???");
5014
+ var $L214 = $L("[]");
5015
+ var $L215 = $L("civet");
4986
5016
  var $R0 = $R(new RegExp("(?=debugger|if|unless|do|for|loop|until|while|switch|throw|try)", "suy"));
4987
5017
  var $R1 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
4988
5018
  var $R2 = $R(new RegExp("[0-9]", "suy"));
@@ -5547,20 +5577,27 @@ var require_parser = __commonJS({
5547
5577
  function UnaryPostfix(ctx, state) {
5548
5578
  return $EVENT_C(ctx, state, "UnaryPostfix", UnaryPostfix$$);
5549
5579
  }
5550
- var TypePostfix$0 = $TS($S(_, As, $E(ExclamationPoint), Type), function($skip, $loc, $0, $1, $2, $3, $4) {
5580
+ var TypePostfix$0 = $TS($S(_, NWTypePostfix), function($skip, $loc, $0, $1, $2) {
5551
5581
  var ws = $1;
5552
- var as = $2;
5553
- var ex = $3;
5554
- var type = $4;
5582
+ var postfix = $2;
5583
+ return [ws, ...postfix];
5584
+ });
5585
+ function TypePostfix(ctx, state) {
5586
+ return $EVENT(ctx, state, "TypePostfix", TypePostfix$0);
5587
+ }
5588
+ var NWTypePostfix$0 = $TS($S(As, $E(ExclamationPoint), Type), function($skip, $loc, $0, $1, $2, $3) {
5589
+ var as = $1;
5590
+ var ex = $2;
5591
+ var type = $3;
5555
5592
  if (ex) {
5556
- return [{ $loc: ex.$loc, token: " as unknown" }, ws, as, type];
5593
+ return [{ $loc: ex.$loc, token: "as unknown " }, as, type];
5557
5594
  }
5558
- return [ws, as, type];
5595
+ return [as, type];
5559
5596
  });
5560
- var TypePostfix$1 = $S(_, Satisfies, Type);
5561
- var TypePostfix$$ = [TypePostfix$0, TypePostfix$1];
5562
- function TypePostfix(ctx, state) {
5563
- return $EVENT_C(ctx, state, "TypePostfix", TypePostfix$$);
5597
+ var NWTypePostfix$1 = $S(Satisfies, Type);
5598
+ var NWTypePostfix$$ = [NWTypePostfix$0, NWTypePostfix$1];
5599
+ function NWTypePostfix(ctx, state) {
5600
+ return $EVENT_C(ctx, state, "NWTypePostfix", NWTypePostfix$$);
5564
5601
  }
5565
5602
  var UpdateExpression$0 = $TS($S(UpdateExpressionSymbol, UnaryWithoutParenthesizedAssignment), function($skip, $loc, $0, $1, $2) {
5566
5603
  return {
@@ -5755,36 +5792,19 @@ var require_parser = __commonJS({
5755
5792
  var head = $2;
5756
5793
  var body = $3;
5757
5794
  if (head.token === "&") {
5758
- const ref = makeRef("$");
5759
- const arrowBody = {
5795
+ head = makeAmpersandFunction();
5796
+ }
5797
+ if (head.type === "ArrowFunction" && head.ampersandBlock) {
5798
+ const expressions = [{
5760
5799
  type: "PipelineExpression",
5761
- children: [ws, ref, body]
5762
- };
5763
- const parameters = {
5764
- type: "Parameters",
5765
- children: [ref],
5766
- names: []
5767
- };
5768
- const expressions = [arrowBody];
5769
- const block = {
5770
- bare: true,
5771
- expressions,
5772
- children: [expressions]
5773
- };
5774
- const children = [parameters, " => ", block];
5800
+ children: [ws, head.block.expressions[0], body]
5801
+ }];
5802
+ const block = { ...head.block, expressions, children: [expressions] };
5775
5803
  return {
5776
- type: "ArrowFunction",
5777
- signature: {
5778
- modifier: {
5779
- children: []
5780
- }
5781
- },
5782
- children,
5783
- ref,
5784
- body: [arrowBody],
5785
- ampersandBlock: true,
5786
- parameters,
5787
- block
5804
+ ...head,
5805
+ block,
5806
+ body: expressions,
5807
+ children: [...head.children.slice(0, -1), block]
5788
5808
  };
5789
5809
  }
5790
5810
  return {
@@ -5807,11 +5827,14 @@ var require_parser = __commonJS({
5807
5827
  var PipelineTailItem$2 = $T($S(Return, $N(AccessStart)), function(value) {
5808
5828
  return value[0];
5809
5829
  });
5810
- var PipelineTailItem$3 = AmpersandFunctionExpression;
5811
- var PipelineTailItem$4 = $T($S($N(Ampersand), PipelineHeadItem), function(value) {
5830
+ var PipelineTailItem$3 = $TS($S(NWTypePostfix, $Q(TypePostfix)), function($skip, $loc, $0, $1, $2) {
5831
+ return makeAmpersandFunction([" ", $1, ...$2]);
5832
+ });
5833
+ var PipelineTailItem$4 = AmpersandFunctionExpression;
5834
+ var PipelineTailItem$5 = $T($S($N(Ampersand), PipelineHeadItem), function(value) {
5812
5835
  return value[1];
5813
5836
  });
5814
- var PipelineTailItem$$ = [PipelineTailItem$0, PipelineTailItem$1, PipelineTailItem$2, PipelineTailItem$3, PipelineTailItem$4];
5837
+ var PipelineTailItem$$ = [PipelineTailItem$0, PipelineTailItem$1, PipelineTailItem$2, PipelineTailItem$3, PipelineTailItem$4, PipelineTailItem$5];
5815
5838
  function PipelineTailItem(ctx, state) {
5816
5839
  return $EVENT_C(ctx, state, "PipelineTailItem", PipelineTailItem$$);
5817
5840
  }
@@ -7199,27 +7222,7 @@ var require_parser = __commonJS({
7199
7222
  };
7200
7223
  });
7201
7224
  var FunctionExpression$1 = $TV($EXPECT($L26, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
7202
- const ref = makeRef("$"), body = [ref];
7203
- const parameters = {
7204
- type: "Parameters",
7205
- children: [ref],
7206
- names: []
7207
- };
7208
- const block = {
7209
- expressions: [ref]
7210
- };
7211
- return {
7212
- type: "ArrowFunction",
7213
- signature: {
7214
- modifier: {}
7215
- },
7216
- children: [parameters, " => ", body],
7217
- ref,
7218
- body,
7219
- ampersandBlock: true,
7220
- block,
7221
- parameters
7222
- };
7225
+ return makeAmpersandFunction();
7223
7226
  });
7224
7227
  var FunctionExpression$2 = $TS($S(OpenParen, BinaryOp, CloseParen), function($skip, $loc, $0, $1, $2, $3) {
7225
7228
  var open = $1;
@@ -7343,15 +7346,11 @@ var require_parser = __commonJS({
7343
7346
  var rhs = $3;
7344
7347
  if (!prefix.length && !rhs)
7345
7348
  return $skip;
7346
- let body, ref;
7349
+ let body, ref, typeSuffix;
7347
7350
  if (!rhs) {
7348
7351
  body = ref = makeRef("$");
7349
7352
  } else {
7350
- let exp = rhs;
7351
- while (!exp.ref && exp.expression) {
7352
- exp = exp.expression;
7353
- }
7354
- ({ ref } = exp);
7353
+ ({ ref, typeSuffix } = rhs);
7355
7354
  if (!ref) {
7356
7355
  throw new Error("Could not find ref in ampersand shorthand block");
7357
7356
  }
@@ -7365,7 +7364,7 @@ var require_parser = __commonJS({
7365
7364
  }
7366
7365
  const parameters = {
7367
7366
  type: "Parameters",
7368
- children: [ref],
7367
+ children: typeSuffix ? ["(", ref, typeSuffix, ")"] : [ref],
7369
7368
  names: []
7370
7369
  };
7371
7370
  const expressions = [body];
@@ -7465,12 +7464,19 @@ var require_parser = __commonJS({
7465
7464
  function AmpersandBlockRHS(ctx, state) {
7466
7465
  return $EVENT(ctx, state, "AmpersandBlockRHS", AmpersandBlockRHS$0);
7467
7466
  }
7468
- var AmpersandBlockRHSBody$0 = $TS($S($E($S($N(_), $P(CallExpressionRest))), $E(QuestionMark), $E($S(WAssignmentOp, $Q($S(NotDedented, UpdateExpression, WAssignmentOp)), NonPipelineExtendedExpression)), $E($S($N($EXPECT($R10, "AmpersandBlockRHSBody /[&]/")), $P(BinaryOpRHS)))), function($skip, $loc, $0, $1, $2, $3, $4) {
7469
- var callExpRest = $1;
7470
- var unaryPostfix = $2;
7471
- var assign = $3;
7472
- var binopRHS = $4;
7473
- if (!callExpRest && !binopRHS && !unaryPostfix)
7467
+ var AmpersandTypeSuffix$0 = $T($S($Y($S($E(_), $E(QuestionMark), $E(_), Colon)), TypeSuffix), function(value) {
7468
+ return value[1];
7469
+ });
7470
+ function AmpersandTypeSuffix(ctx, state) {
7471
+ return $EVENT(ctx, state, "AmpersandTypeSuffix", AmpersandTypeSuffix$0);
7472
+ }
7473
+ var AmpersandBlockRHSBody$0 = $TS($S($E(AmpersandTypeSuffix), $E($S($N(_), $P(CallExpressionRest))), $E(UnaryPostfix), $E($S(WAssignmentOp, $Q($S(NotDedented, UpdateExpression, WAssignmentOp)), NonPipelineExtendedExpression)), $E($S($N($EXPECT($R10, "AmpersandBlockRHSBody /[&]/")), $P(BinaryOpRHS)))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7474
+ var typeSuffix = $1;
7475
+ var callExpRest = $2;
7476
+ var unaryPostfix = $3;
7477
+ var assign = $4;
7478
+ var binopRHS = $5;
7479
+ if (!typeSuffix && !callExpRest && !binopRHS && !unaryPostfix)
7474
7480
  return $skip;
7475
7481
  const ref = makeRef("$");
7476
7482
  let exp = {
@@ -7497,16 +7503,16 @@ var require_parser = __commonJS({
7497
7503
  names: null,
7498
7504
  lhs,
7499
7505
  assigned: exp,
7500
- exp: rhs,
7501
- ref
7506
+ exp: rhs
7502
7507
  };
7503
7508
  }
7504
7509
  if (binopRHS) {
7505
7510
  exp = {
7506
- children: processBinaryOpExpression([exp, binopRHS[1]]),
7507
- ref
7511
+ children: processBinaryOpExpression([exp, binopRHS[1]])
7508
7512
  };
7509
7513
  }
7514
+ exp.ref = ref;
7515
+ exp.typeSuffix = typeSuffix;
7510
7516
  return exp;
7511
7517
  });
7512
7518
  function AmpersandBlockRHSBody(ctx, state) {
@@ -7778,13 +7784,12 @@ var require_parser = __commonJS({
7778
7784
  return block;
7779
7785
  });
7780
7786
  var NonSingleBracedBlock$1 = ImplicitNestedBlock;
7781
- var NonSingleBracedBlock$2 = $TS($S(InsertOpenBrace, $Y(EOS), ObjectLiteral, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
7782
- var s = $3;
7787
+ var NonSingleBracedBlock$2 = $TS($S(InsertOpenBrace, NestedImplicitObjectLiteral, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3) {
7788
+ var s = $2;
7783
7789
  return {
7784
7790
  type: "BlockStatement",
7785
7791
  expressions: [s],
7786
- // Remove &EOS assertion
7787
- children: [$1, s, $3]
7792
+ children: $0
7788
7793
  };
7789
7794
  });
7790
7795
  var NonSingleBracedBlock$$ = [NonSingleBracedBlock$0, NonSingleBracedBlock$1, NonSingleBracedBlock$2];
@@ -8182,7 +8187,10 @@ var require_parser = __commonJS({
8182
8187
  return $EVENT(ctx, state, "ElementListRest", ElementListRest$0);
8183
8188
  }
8184
8189
  var ArrayElementExpression$0 = JSXTag;
8185
- var ArrayElementExpression$1 = $TS($S($E(ExtendedExpression), __, DotDotDot, $Y(ArrayElementDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
8190
+ var ArrayElementExpression$1 = $T($S(ImplicitObjectLiteral, $Y(ArrayElementDelimiter)), function(value) {
8191
+ return value[0];
8192
+ });
8193
+ var ArrayElementExpression$2 = $TS($S($E(ExtendedExpression), __, DotDotDot, $Y(ArrayElementDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
8186
8194
  var exp = $1;
8187
8195
  var ws = $2;
8188
8196
  var dots = $3;
@@ -8195,7 +8203,7 @@ var require_parser = __commonJS({
8195
8203
  names: exp.names
8196
8204
  };
8197
8205
  });
8198
- var ArrayElementExpression$2 = $TS($S($E($S($E($S(__, DotDotDot, __)), PostfixedExpression)), $Y(ArrayElementDelimiter)), function($skip, $loc, $0, $1, $2) {
8206
+ var ArrayElementExpression$3 = $TS($S($E($S($E($S(__, DotDotDot, __)), PostfixedExpression)), $Y(ArrayElementDelimiter)), function($skip, $loc, $0, $1, $2) {
8199
8207
  var expMaybeSpread = $1;
8200
8208
  if (expMaybeSpread) {
8201
8209
  const [spread, exp] = expMaybeSpread;
@@ -8218,7 +8226,7 @@ var require_parser = __commonJS({
8218
8226
  children: []
8219
8227
  };
8220
8228
  });
8221
- var ArrayElementExpression$$ = [ArrayElementExpression$0, ArrayElementExpression$1, ArrayElementExpression$2];
8229
+ var ArrayElementExpression$$ = [ArrayElementExpression$0, ArrayElementExpression$1, ArrayElementExpression$2, ArrayElementExpression$3];
8222
8230
  function ArrayElementExpression(ctx, state) {
8223
8231
  return $EVENT_C(ctx, state, "ArrayElementExpression", ArrayElementExpression$$);
8224
8232
  }
@@ -8282,8 +8290,10 @@ var require_parser = __commonJS({
8282
8290
  function BracedObjectLiteralContent(ctx, state) {
8283
8291
  return $EVENT_C(ctx, state, "BracedObjectLiteralContent", BracedObjectLiteralContent$$);
8284
8292
  }
8285
- var NestedImplicitObjectLiteral$0 = $TS($S(InsertOpenBrace, NestedImplicitPropertyDefinitions, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8286
- var properties = $2;
8293
+ var NestedImplicitObjectLiteral$0 = $TS($S(InsertOpenBrace, PushIndent, $E(NestedImplicitPropertyDefinitions), PopIndent, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
8294
+ var properties = $3;
8295
+ if (!properties)
8296
+ return $skip;
8287
8297
  return {
8288
8298
  type: "ObjectExpression",
8289
8299
  properties,
@@ -8293,10 +8303,8 @@ var require_parser = __commonJS({
8293
8303
  function NestedImplicitObjectLiteral(ctx, state) {
8294
8304
  return $EVENT(ctx, state, "NestedImplicitObjectLiteral", NestedImplicitObjectLiteral$0);
8295
8305
  }
8296
- var NestedImplicitPropertyDefinitions$0 = $TS($S(PushIndent, $Q(NestedImplicitPropertyDefinition), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
8297
- var defs = $2;
8298
- if (!defs.length)
8299
- return $skip;
8306
+ var NestedImplicitPropertyDefinitions$0 = $TV($P(NestedImplicitPropertyDefinition), function($skip, $loc, $0, $1) {
8307
+ var defs = $0;
8300
8308
  return defs.flat();
8301
8309
  });
8302
8310
  function NestedImplicitPropertyDefinitions(ctx, state) {
@@ -8348,7 +8356,7 @@ var require_parser = __commonJS({
8348
8356
  function NestedPropertyDefinition(ctx, state) {
8349
8357
  return $EVENT(ctx, state, "NestedPropertyDefinition", NestedPropertyDefinition$0);
8350
8358
  }
8351
- var InlineObjectLiteral$0 = $TS($S(InsertInlineOpenBrace, SnugNamedProperty, $Q($S(ImplicitInlineObjectPropertyDelimiter, NamedProperty)), $E($S($E(_), Comma, $Y(Dedented))), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8359
+ var ImplicitObjectLiteral$0 = $TS($S(InsertInlineOpenBrace, SnugNamedProperty, $Q($S(ImplicitObjectPropertyDelimiter, NamedProperty)), $E($S($E(_), Comma)), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8352
8360
  var open = $1;
8353
8361
  var first = $2;
8354
8362
  var rest = $3;
@@ -8359,16 +8367,34 @@ var require_parser = __commonJS({
8359
8367
  children: [open, first, ...rest, trailing, close]
8360
8368
  };
8361
8369
  });
8362
- function InlineObjectLiteral(ctx, state) {
8363
- return $EVENT(ctx, state, "InlineObjectLiteral", InlineObjectLiteral$0);
8370
+ function ImplicitObjectLiteral(ctx, state) {
8371
+ return $EVENT(ctx, state, "ImplicitObjectLiteral", ImplicitObjectLiteral$0);
8364
8372
  }
8365
- var ImplicitInlineObjectPropertyDelimiter$0 = $S($E(_), Comma, $C(NotDedented, $E(_)));
8366
- var ImplicitInlineObjectPropertyDelimiter$1 = $T($S($Y($S(Nested, NamedProperty)), InsertComma, $C(Nested, $E(_))), function(value) {
8373
+ var ImplicitObjectPropertyDelimiter$0 = $S($E(_), Comma, $C(NotDedented, $E(_)));
8374
+ var ImplicitObjectPropertyDelimiter$1 = $T($S($Y($S(Nested, NamedProperty)), InsertComma, Nested), function(value) {
8367
8375
  return [value[1], value[2]];
8368
8376
  });
8369
- var ImplicitInlineObjectPropertyDelimiter$$ = [ImplicitInlineObjectPropertyDelimiter$0, ImplicitInlineObjectPropertyDelimiter$1];
8370
- function ImplicitInlineObjectPropertyDelimiter(ctx, state) {
8371
- return $EVENT_C(ctx, state, "ImplicitInlineObjectPropertyDelimiter", ImplicitInlineObjectPropertyDelimiter$$);
8377
+ var ImplicitObjectPropertyDelimiter$$ = [ImplicitObjectPropertyDelimiter$0, ImplicitObjectPropertyDelimiter$1];
8378
+ function ImplicitObjectPropertyDelimiter(ctx, state) {
8379
+ return $EVENT_C(ctx, state, "ImplicitObjectPropertyDelimiter", ImplicitObjectPropertyDelimiter$$);
8380
+ }
8381
+ var InlineObjectLiteral$0 = $TS($S(InsertInlineOpenBrace, SnugNamedProperty, $Q($S(InlineObjectPropertyDelimiter, NamedProperty)), $E($S($E(_), Comma, $Y(Dedented))), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8382
+ var open = $1;
8383
+ var first = $2;
8384
+ var rest = $3;
8385
+ var trailing = $4;
8386
+ var close = $5;
8387
+ return {
8388
+ type: "ObjectExpression",
8389
+ children: [open, first, ...rest, trailing, close]
8390
+ };
8391
+ });
8392
+ function InlineObjectLiteral(ctx, state) {
8393
+ return $EVENT(ctx, state, "InlineObjectLiteral", InlineObjectLiteral$0);
8394
+ }
8395
+ var InlineObjectPropertyDelimiter$0 = $S($E(_), Comma, $C(NotDedented, $E(_)));
8396
+ function InlineObjectPropertyDelimiter(ctx, state) {
8397
+ return $EVENT(ctx, state, "InlineObjectPropertyDelimiter", InlineObjectPropertyDelimiter$0);
8372
8398
  }
8373
8399
  var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
8374
8400
  var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L29, 'ObjectPropertyDelimiter "}"')));
@@ -9259,8 +9285,11 @@ var require_parser = __commonJS({
9259
9285
  return $EVENT_C(ctx, state, "ModuleItem", ModuleItem$$);
9260
9286
  }
9261
9287
  var StatementListItem$0 = Declaration;
9262
- var StatementListItem$1 = PostfixedStatement;
9263
- var StatementListItem$$ = [StatementListItem$0, StatementListItem$1];
9288
+ var StatementListItem$1 = $TS($S($N($EXPECT($L103, 'StatementListItem "$:"')), ImplicitObjectLiteral), function($skip, $loc, $0, $1, $2) {
9289
+ return makeLeftHandSideExpression($2);
9290
+ });
9291
+ var StatementListItem$2 = PostfixedStatement;
9292
+ var StatementListItem$$ = [StatementListItem$0, StatementListItem$1, StatementListItem$2];
9264
9293
  function StatementListItem(ctx, state) {
9265
9294
  return $EVENT_C(ctx, state, "StatementListItem", StatementListItem$$);
9266
9295
  }
@@ -9366,7 +9395,7 @@ var require_parser = __commonJS({
9366
9395
  function NoCommaStatement(ctx, state) {
9367
9396
  return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
9368
9397
  }
9369
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L103, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9398
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L104, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9370
9399
  return { type: "EmptyStatement", children: $1 || [] };
9371
9400
  });
9372
9401
  function EmptyStatement(ctx, state) {
@@ -9397,7 +9426,7 @@ var require_parser = __commonJS({
9397
9426
  var w = $3;
9398
9427
  return [id, colon, w];
9399
9428
  });
9400
- var Label$1 = $S($EXPECT($L104, 'Label "$:"'), Whitespace);
9429
+ var Label$1 = $S($EXPECT($L103, 'Label "$:"'), Whitespace);
9401
9430
  var Label$$ = [Label$0, Label$1];
9402
9431
  function Label(ctx, state) {
9403
9432
  return $EVENT_C(ctx, state, "Label", Label$$);
@@ -10555,16 +10584,26 @@ var require_parser = __commonJS({
10555
10584
  function MaybeNestedExpression(ctx, state) {
10556
10585
  return $EVENT_C(ctx, state, "MaybeNestedExpression", MaybeNestedExpression$$);
10557
10586
  }
10558
- var ImportDeclaration$0 = $T($S(Import, __, TypeKeyword, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
10587
+ 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) {
10588
+ const imp = [
10589
+ { ...$1, ts: true },
10590
+ { ...$1, token: "const", js: true }
10591
+ ];
10592
+ return {
10593
+ type: "ImportDeclaration",
10594
+ children: [imp, $0.slice(1)]
10595
+ };
10596
+ });
10597
+ var ImportDeclaration$1 = $T($S(Import, __, TypeKeyword, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
10559
10598
  return { "type": "ImportDeclaration", "ts": true, "children": value };
10560
10599
  });
10561
- var ImportDeclaration$1 = $T($S(Import, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
10600
+ var ImportDeclaration$2 = $T($S(Import, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
10562
10601
  return { "type": "ImportDeclaration", "children": value };
10563
10602
  });
10564
- var ImportDeclaration$2 = $T($S(Import, __, ModuleSpecifier, $E(ImportAssertion)), function(value) {
10603
+ var ImportDeclaration$3 = $T($S(Import, __, ModuleSpecifier, $E(ImportAssertion)), function(value) {
10565
10604
  return { "type": "ImportDeclaration", "children": value };
10566
10605
  });
10567
- var ImportDeclaration$3 = $TS($S(ImpliedImport, $E($S(TypeKeyword, __)), ImportClause, __, FromClause, $E(ImportAssertion)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10606
+ var ImportDeclaration$4 = $TS($S(ImpliedImport, $E($S(TypeKeyword, __)), ImportClause, __, FromClause, $E(ImportAssertion)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10568
10607
  var i = $1;
10569
10608
  var t = $2;
10570
10609
  var c = $3;
@@ -10580,7 +10619,7 @@ var require_parser = __commonJS({
10580
10619
  return children;
10581
10620
  return { type: "ImportDeclaration", ts: true, children };
10582
10621
  });
10583
- var ImportDeclaration$$ = [ImportDeclaration$0, ImportDeclaration$1, ImportDeclaration$2, ImportDeclaration$3];
10622
+ var ImportDeclaration$$ = [ImportDeclaration$0, ImportDeclaration$1, ImportDeclaration$2, ImportDeclaration$3, ImportDeclaration$4];
10584
10623
  function ImportDeclaration(ctx, state) {
10585
10624
  return $EVENT_C(ctx, state, "ImportDeclaration", ImportDeclaration$$);
10586
10625
  }
@@ -10639,7 +10678,7 @@ var require_parser = __commonJS({
10639
10678
  function FromClause(ctx, state) {
10640
10679
  return $EVENT(ctx, state, "FromClause", FromClause$0);
10641
10680
  }
10642
- var ImportAssertion$0 = $S($E(_), $C($EXPECT($L108, 'ImportAssertion "with"'), $EXPECT($L109, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10681
+ var ImportAssertion$0 = $S($E(_), $C($EXPECT($L109, 'ImportAssertion "with"'), $EXPECT($L110, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10643
10682
  function ImportAssertion(ctx, state) {
10644
10683
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
10645
10684
  }
@@ -10713,10 +10752,17 @@ var require_parser = __commonJS({
10713
10752
  return $EVENT_C(ctx, state, "ModuleExportName", ModuleExportName$$);
10714
10753
  }
10715
10754
  var ModuleSpecifier$0 = $TS($S(UnprocessedModuleSpecifier), function($skip, $loc, $0, $1) {
10716
- if (!module.config.rewriteTsImports)
10717
- return $1;
10718
- const { token } = $1;
10719
- return { $loc, token: token.replace(/\.([mc])?ts(['"])$/, ".$1js$2") };
10755
+ let { token } = $1;
10756
+ if (module.config.rewriteTsImports) {
10757
+ token = token.replace(/\.([mc])?ts(['"])$/, ".$1js$2");
10758
+ }
10759
+ if (module.config.rewriteCivetImports) {
10760
+ token = token.replace(
10761
+ /\.civet(['"])$/,
10762
+ `${module.config.rewriteCivetImports.replace(/\$/g, "$$")}$1`
10763
+ );
10764
+ }
10765
+ return { ...$1, token };
10720
10766
  });
10721
10767
  function ModuleSpecifier(ctx, state) {
10722
10768
  return $EVENT(ctx, state, "ModuleSpecifier", ModuleSpecifier$0);
@@ -10738,18 +10784,28 @@ var require_parser = __commonJS({
10738
10784
  function ImportedBinding(ctx, state) {
10739
10785
  return $EVENT(ctx, state, "ImportedBinding", ImportedBinding$0);
10740
10786
  }
10741
- var ExportDeclaration$0 = $TS($S($E(Decorators), Export, __, Default, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10787
+ var ExportDeclaration$0 = $TS($S(Export, $E(_), Equals, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
10788
+ const exp = [
10789
+ { ...$1, ts: true },
10790
+ { ...$1, token: "module.exports", js: true }
10791
+ ];
10792
+ return {
10793
+ type: "ExportDeclaration",
10794
+ children: [exp, $0.slice(1)]
10795
+ };
10796
+ });
10797
+ var ExportDeclaration$1 = $TS($S($E(Decorators), Export, __, Default, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10742
10798
  var declaration = $6;
10743
10799
  return { type: "ExportDeclaration", declaration, children: $0 };
10744
10800
  });
10745
- var ExportDeclaration$1 = $TS($S(Export, __, ExportFromClause, __, FromClause), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10801
+ var ExportDeclaration$2 = $TS($S(Export, __, ExportFromClause, __, FromClause), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10746
10802
  return { type: "ExportDeclaration", ts: $3.ts, children: $0 };
10747
10803
  });
10748
- var ExportDeclaration$2 = $TS($S($E(Decorators), Export, __, $C(Declaration, VariableStatement, TypeAndNamedExports, ExportVarDec)), function($skip, $loc, $0, $1, $2, $3, $4) {
10804
+ var ExportDeclaration$3 = $TS($S($E(Decorators), Export, __, $C(Declaration, VariableStatement, TypeAndNamedExports, ExportVarDec)), function($skip, $loc, $0, $1, $2, $3, $4) {
10749
10805
  var declaration = $4;
10750
10806
  return { type: "ExportDeclaration", declaration, ts: declaration.ts, children: $0 };
10751
10807
  });
10752
- var ExportDeclaration$$ = [ExportDeclaration$0, ExportDeclaration$1, ExportDeclaration$2];
10808
+ var ExportDeclaration$$ = [ExportDeclaration$0, ExportDeclaration$1, ExportDeclaration$2, ExportDeclaration$3];
10753
10809
  function ExportDeclaration(ctx, state) {
10754
10810
  return $EVENT_C(ctx, state, "ExportDeclaration", ExportDeclaration$$);
10755
10811
  }
@@ -10777,7 +10833,7 @@ var require_parser = __commonJS({
10777
10833
  return $EVENT(ctx, state, "TypeAndNamedExports", TypeAndNamedExports$0);
10778
10834
  }
10779
10835
  var NamedExports$0 = $S(OpenBrace, $Q(ExportSpecifier), $E($S(__, Comma)), __, CloseBrace);
10780
- var NamedExports$1 = $TS($S(InsertInlineOpenBrace, ImplicitExportSpecifier, $Q($S(ImplicitInlineObjectPropertyDelimiter, ImplicitExportSpecifier)), InsertCloseBrace, $Y($C(StatementDelimiter, $S(__, From)))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10836
+ var NamedExports$1 = $TS($S(InsertInlineOpenBrace, ImplicitExportSpecifier, $Q($S(ImplicitObjectPropertyDelimiter, ImplicitExportSpecifier)), InsertCloseBrace, $Y($C(StatementDelimiter, $S(__, From)))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10781
10837
  var open = $1;
10782
10838
  var first = $2;
10783
10839
  var rest = $3;
@@ -10859,13 +10915,13 @@ var require_parser = __commonJS({
10859
10915
  function LexicalDeclaration(ctx, state) {
10860
10916
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
10861
10917
  }
10862
- var ConstAssignment$0 = $TV($C($EXPECT($L110, 'ConstAssignment ":="'), $EXPECT($L111, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10918
+ var ConstAssignment$0 = $TV($C($EXPECT($L111, 'ConstAssignment ":="'), $EXPECT($L112, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10863
10919
  return { $loc, token: "=" };
10864
10920
  });
10865
10921
  function ConstAssignment(ctx, state) {
10866
10922
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
10867
10923
  }
10868
- var LetAssignment$0 = $TV($EXPECT($L112, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10924
+ var LetAssignment$0 = $TV($EXPECT($L113, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10869
10925
  return { $loc, token: "=" };
10870
10926
  });
10871
10927
  function LetAssignment(ctx, state) {
@@ -11271,7 +11327,7 @@ var require_parser = __commonJS({
11271
11327
  function MultiLineComment(ctx, state) {
11272
11328
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
11273
11329
  }
11274
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L113, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L114, 'JSMultiLineComment "*/"')), $EXPECT($R59, "JSMultiLineComment /./"))), $EXPECT($L114, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
11330
+ 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) {
11275
11331
  return { type: "Comment", $loc, token: $1 };
11276
11332
  });
11277
11333
  function JSMultiLineComment(ctx, state) {
@@ -11317,7 +11373,7 @@ var require_parser = __commonJS({
11317
11373
  var NonNewlineWhitespace$0 = $TR($EXPECT($R65, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11318
11374
  return { $loc, token: $0 };
11319
11375
  });
11320
- var NonNewlineWhitespace$1 = $T($S($EXPECT($L115, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
11376
+ var NonNewlineWhitespace$1 = $T($S($EXPECT($L116, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
11321
11377
  return " ";
11322
11378
  });
11323
11379
  var NonNewlineWhitespace$$ = [NonNewlineWhitespace$0, NonNewlineWhitespace$1];
@@ -11363,7 +11419,7 @@ var require_parser = __commonJS({
11363
11419
  }
11364
11420
  var StatementDelimiter$0 = $Y(EOS);
11365
11421
  var StatementDelimiter$1 = SemicolonDelimiter;
11366
- var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L29, 'StatementDelimiter "}"'), $EXPECT($L116, 'StatementDelimiter ")"'), $EXPECT($L38, 'StatementDelimiter "]"'))));
11422
+ var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L29, 'StatementDelimiter "}"'), $EXPECT($L117, 'StatementDelimiter ")"'), $EXPECT($L38, 'StatementDelimiter "]"'))));
11367
11423
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2];
11368
11424
  function StatementDelimiter(ctx, state) {
11369
11425
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -11387,7 +11443,7 @@ var require_parser = __commonJS({
11387
11443
  function Loc(ctx, state) {
11388
11444
  return $EVENT(ctx, state, "Loc", Loc$0);
11389
11445
  }
11390
- var Abstract$0 = $TV($TEXT($S($EXPECT($L117, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L15, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11446
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L118, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L15, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11391
11447
  return { $loc, token: $1, ts: true };
11392
11448
  });
11393
11449
  function Abstract(ctx, state) {
@@ -11399,43 +11455,43 @@ var require_parser = __commonJS({
11399
11455
  function Ampersand(ctx, state) {
11400
11456
  return $EVENT(ctx, state, "Ampersand", Ampersand$0);
11401
11457
  }
11402
- var As$0 = $TS($S($EXPECT($L118, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11458
+ var As$0 = $TS($S($EXPECT($L119, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11403
11459
  return { $loc, token: $1 };
11404
11460
  });
11405
11461
  function As(ctx, state) {
11406
11462
  return $EVENT(ctx, state, "As", As$0);
11407
11463
  }
11408
- var At$0 = $TV($EXPECT($L119, 'At "@"'), function($skip, $loc, $0, $1) {
11464
+ var At$0 = $TV($EXPECT($L120, 'At "@"'), function($skip, $loc, $0, $1) {
11409
11465
  return { $loc, token: $1 };
11410
11466
  });
11411
11467
  function At(ctx, state) {
11412
11468
  return $EVENT(ctx, state, "At", At$0);
11413
11469
  }
11414
- var AtAt$0 = $TV($EXPECT($L120, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11470
+ var AtAt$0 = $TV($EXPECT($L121, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11415
11471
  return { $loc, token: "@" };
11416
11472
  });
11417
11473
  function AtAt(ctx, state) {
11418
11474
  return $EVENT(ctx, state, "AtAt", AtAt$0);
11419
11475
  }
11420
- var Async$0 = $TS($S($EXPECT($L121, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11476
+ var Async$0 = $TS($S($EXPECT($L122, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11421
11477
  return { $loc, token: $1, type: "Async" };
11422
11478
  });
11423
11479
  function Async(ctx, state) {
11424
11480
  return $EVENT(ctx, state, "Async", Async$0);
11425
11481
  }
11426
- var Await$0 = $TS($S($EXPECT($L122, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11482
+ var Await$0 = $TS($S($EXPECT($L123, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11427
11483
  return { $loc, token: $1, type: "Await" };
11428
11484
  });
11429
11485
  function Await(ctx, state) {
11430
11486
  return $EVENT(ctx, state, "Await", Await$0);
11431
11487
  }
11432
- var Backtick$0 = $TV($EXPECT($L123, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11488
+ var Backtick$0 = $TV($EXPECT($L124, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11433
11489
  return { $loc, token: $1 };
11434
11490
  });
11435
11491
  function Backtick(ctx, state) {
11436
11492
  return $EVENT(ctx, state, "Backtick", Backtick$0);
11437
11493
  }
11438
- var By$0 = $TS($S($EXPECT($L124, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11494
+ var By$0 = $TS($S($EXPECT($L125, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11439
11495
  return { $loc, token: $1 };
11440
11496
  });
11441
11497
  function By(ctx, state) {
@@ -11447,19 +11503,19 @@ var require_parser = __commonJS({
11447
11503
  function Caret(ctx, state) {
11448
11504
  return $EVENT(ctx, state, "Caret", Caret$0);
11449
11505
  }
11450
- var Case$0 = $TS($S($EXPECT($L125, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11506
+ var Case$0 = $TS($S($EXPECT($L126, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11451
11507
  return { $loc, token: $1 };
11452
11508
  });
11453
11509
  function Case(ctx, state) {
11454
11510
  return $EVENT(ctx, state, "Case", Case$0);
11455
11511
  }
11456
- var Catch$0 = $TS($S($EXPECT($L126, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11512
+ var Catch$0 = $TS($S($EXPECT($L127, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11457
11513
  return { $loc, token: $1 };
11458
11514
  });
11459
11515
  function Catch(ctx, state) {
11460
11516
  return $EVENT(ctx, state, "Catch", Catch$0);
11461
11517
  }
11462
- var Class$0 = $TS($S($EXPECT($L127, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11518
+ var Class$0 = $TS($S($EXPECT($L128, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11463
11519
  return { $loc, token: $1 };
11464
11520
  });
11465
11521
  function Class(ctx, state) {
@@ -11483,13 +11539,13 @@ var require_parser = __commonJS({
11483
11539
  function CloseBracket(ctx, state) {
11484
11540
  return $EVENT(ctx, state, "CloseBracket", CloseBracket$0);
11485
11541
  }
11486
- var CloseParen$0 = $TV($EXPECT($L116, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11542
+ var CloseParen$0 = $TV($EXPECT($L117, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11487
11543
  return { $loc, token: $1 };
11488
11544
  });
11489
11545
  function CloseParen(ctx, state) {
11490
11546
  return $EVENT(ctx, state, "CloseParen", CloseParen$0);
11491
11547
  }
11492
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L128, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11548
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L129, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11493
11549
  return { $loc, token: "${" };
11494
11550
  });
11495
11551
  function CoffeeSubstitutionStart(ctx, state) {
@@ -11507,31 +11563,31 @@ var require_parser = __commonJS({
11507
11563
  function Comma(ctx, state) {
11508
11564
  return $EVENT(ctx, state, "Comma", Comma$0);
11509
11565
  }
11510
- var ConstructorShorthand$0 = $TV($EXPECT($L119, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11566
+ var ConstructorShorthand$0 = $TV($EXPECT($L120, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11511
11567
  return { $loc, token: "constructor" };
11512
11568
  });
11513
11569
  function ConstructorShorthand(ctx, state) {
11514
11570
  return $EVENT(ctx, state, "ConstructorShorthand", ConstructorShorthand$0);
11515
11571
  }
11516
- var Declare$0 = $TS($S($EXPECT($L129, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11572
+ var Declare$0 = $TS($S($EXPECT($L130, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11517
11573
  return { $loc, token: $1 };
11518
11574
  });
11519
11575
  function Declare(ctx, state) {
11520
11576
  return $EVENT(ctx, state, "Declare", Declare$0);
11521
11577
  }
11522
- var Default$0 = $TS($S($EXPECT($L130, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11578
+ var Default$0 = $TS($S($EXPECT($L131, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11523
11579
  return { $loc, token: $1 };
11524
11580
  });
11525
11581
  function Default(ctx, state) {
11526
11582
  return $EVENT(ctx, state, "Default", Default$0);
11527
11583
  }
11528
- var Delete$0 = $TS($S($EXPECT($L131, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11584
+ var Delete$0 = $TS($S($EXPECT($L132, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11529
11585
  return { $loc, token: $1 };
11530
11586
  });
11531
11587
  function Delete(ctx, state) {
11532
11588
  return $EVENT(ctx, state, "Delete", Delete$0);
11533
11589
  }
11534
- var Do$0 = $TS($S($EXPECT($L132, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11590
+ var Do$0 = $TS($S($EXPECT($L133, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11535
11591
  return { $loc, token: $1 };
11536
11592
  });
11537
11593
  function Do(ctx, state) {
@@ -11551,45 +11607,45 @@ var require_parser = __commonJS({
11551
11607
  function Dot(ctx, state) {
11552
11608
  return $EVENT_C(ctx, state, "Dot", Dot$$);
11553
11609
  }
11554
- var DotDot$0 = $TS($S($EXPECT($L133, 'DotDot ".."'), $N($EXPECT($L7, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11610
+ var DotDot$0 = $TS($S($EXPECT($L134, 'DotDot ".."'), $N($EXPECT($L7, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11555
11611
  return { $loc, token: $1 };
11556
11612
  });
11557
- var DotDot$1 = $TV($EXPECT($L134, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11613
+ var DotDot$1 = $TV($EXPECT($L135, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11558
11614
  return { $loc, token: ".." };
11559
11615
  });
11560
11616
  var DotDot$$ = [DotDot$0, DotDot$1];
11561
11617
  function DotDot(ctx, state) {
11562
11618
  return $EVENT_C(ctx, state, "DotDot", DotDot$$);
11563
11619
  }
11564
- var DotDotDot$0 = $TV($EXPECT($L135, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11620
+ var DotDotDot$0 = $TV($EXPECT($L136, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11565
11621
  return { $loc, token: $1 };
11566
11622
  });
11567
- var DotDotDot$1 = $TV($EXPECT($L136, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11623
+ var DotDotDot$1 = $TV($EXPECT($L137, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11568
11624
  return { $loc, token: "..." };
11569
11625
  });
11570
11626
  var DotDotDot$$ = [DotDotDot$0, DotDotDot$1];
11571
11627
  function DotDotDot(ctx, state) {
11572
11628
  return $EVENT_C(ctx, state, "DotDotDot", DotDotDot$$);
11573
11629
  }
11574
- var DoubleColon$0 = $TV($EXPECT($L137, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11630
+ var DoubleColon$0 = $TV($EXPECT($L138, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11575
11631
  return { $loc, token: $1 };
11576
11632
  });
11577
11633
  function DoubleColon(ctx, state) {
11578
11634
  return $EVENT(ctx, state, "DoubleColon", DoubleColon$0);
11579
11635
  }
11580
- var DoubleQuote$0 = $TV($EXPECT($L138, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11636
+ var DoubleQuote$0 = $TV($EXPECT($L139, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11581
11637
  return { $loc, token: $1 };
11582
11638
  });
11583
11639
  function DoubleQuote(ctx, state) {
11584
11640
  return $EVENT(ctx, state, "DoubleQuote", DoubleQuote$0);
11585
11641
  }
11586
- var Each$0 = $TS($S($EXPECT($L139, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11642
+ var Each$0 = $TS($S($EXPECT($L140, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11587
11643
  return { $loc, token: $1 };
11588
11644
  });
11589
11645
  function Each(ctx, state) {
11590
11646
  return $EVENT(ctx, state, "Each", Each$0);
11591
11647
  }
11592
- var Else$0 = $TS($S($EXPECT($L140, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11648
+ var Else$0 = $TS($S($EXPECT($L141, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11593
11649
  return { $loc, token: $1 };
11594
11650
  });
11595
11651
  function Else(ctx, state) {
@@ -11607,55 +11663,55 @@ var require_parser = __commonJS({
11607
11663
  function ExclamationPoint(ctx, state) {
11608
11664
  return $EVENT(ctx, state, "ExclamationPoint", ExclamationPoint$0);
11609
11665
  }
11610
- var Export$0 = $TS($S($EXPECT($L141, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11666
+ var Export$0 = $TS($S($EXPECT($L142, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11611
11667
  return { $loc, token: $1 };
11612
11668
  });
11613
11669
  function Export(ctx, state) {
11614
11670
  return $EVENT(ctx, state, "Export", Export$0);
11615
11671
  }
11616
- var Extends$0 = $TS($S($EXPECT($L142, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11672
+ var Extends$0 = $TS($S($EXPECT($L143, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11617
11673
  return { $loc, token: $1 };
11618
11674
  });
11619
11675
  function Extends(ctx, state) {
11620
11676
  return $EVENT(ctx, state, "Extends", Extends$0);
11621
11677
  }
11622
- var Finally$0 = $TS($S($EXPECT($L143, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11678
+ var Finally$0 = $TS($S($EXPECT($L144, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11623
11679
  return { $loc, token: $1 };
11624
11680
  });
11625
11681
  function Finally(ctx, state) {
11626
11682
  return $EVENT(ctx, state, "Finally", Finally$0);
11627
11683
  }
11628
- var For$0 = $TS($S($EXPECT($L144, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11684
+ var For$0 = $TS($S($EXPECT($L145, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11629
11685
  return { $loc, token: $1 };
11630
11686
  });
11631
11687
  function For(ctx, state) {
11632
11688
  return $EVENT(ctx, state, "For", For$0);
11633
11689
  }
11634
- var From$0 = $TS($S($EXPECT($L145, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11690
+ var From$0 = $TS($S($EXPECT($L146, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11635
11691
  return { $loc, token: $1 };
11636
11692
  });
11637
11693
  function From(ctx, state) {
11638
11694
  return $EVENT(ctx, state, "From", From$0);
11639
11695
  }
11640
- var Function$0 = $TS($S($EXPECT($L146, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11696
+ var Function$0 = $TS($S($EXPECT($L147, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11641
11697
  return { $loc, token: $1 };
11642
11698
  });
11643
11699
  function Function(ctx, state) {
11644
11700
  return $EVENT(ctx, state, "Function", Function$0);
11645
11701
  }
11646
- var GetOrSet$0 = $TS($S($C($EXPECT($L147, 'GetOrSet "get"'), $EXPECT($L148, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11702
+ var GetOrSet$0 = $TS($S($C($EXPECT($L148, 'GetOrSet "get"'), $EXPECT($L149, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11647
11703
  return { $loc, token: $1, type: "GetOrSet" };
11648
11704
  });
11649
11705
  function GetOrSet(ctx, state) {
11650
11706
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
11651
11707
  }
11652
- var Hash$0 = $TV($EXPECT($L149, 'Hash "#"'), function($skip, $loc, $0, $1) {
11708
+ var Hash$0 = $TV($EXPECT($L150, 'Hash "#"'), function($skip, $loc, $0, $1) {
11653
11709
  return { $loc, token: $1 };
11654
11710
  });
11655
11711
  function Hash(ctx, state) {
11656
11712
  return $EVENT(ctx, state, "Hash", Hash$0);
11657
11713
  }
11658
- var If$0 = $TV($TEXT($S($EXPECT($L150, 'If "if"'), NonIdContinue, $E($EXPECT($L15, 'If " "')))), function($skip, $loc, $0, $1) {
11714
+ var If$0 = $TV($TEXT($S($EXPECT($L151, 'If "if"'), NonIdContinue, $E($EXPECT($L15, 'If " "')))), function($skip, $loc, $0, $1) {
11659
11715
  return { $loc, token: $1 };
11660
11716
  });
11661
11717
  function If(ctx, state) {
@@ -11667,25 +11723,25 @@ var require_parser = __commonJS({
11667
11723
  function Import(ctx, state) {
11668
11724
  return $EVENT(ctx, state, "Import", Import$0);
11669
11725
  }
11670
- var In$0 = $TS($S($EXPECT($L151, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11726
+ var In$0 = $TS($S($EXPECT($L152, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11671
11727
  return { $loc, token: $1 };
11672
11728
  });
11673
11729
  function In(ctx, state) {
11674
11730
  return $EVENT(ctx, state, "In", In$0);
11675
11731
  }
11676
- var LetOrConst$0 = $TS($S($C($EXPECT($L152, 'LetOrConst "let"'), $EXPECT($L153, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11732
+ var LetOrConst$0 = $TS($S($C($EXPECT($L153, 'LetOrConst "let"'), $EXPECT($L154, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11677
11733
  return { $loc, token: $1 };
11678
11734
  });
11679
11735
  function LetOrConst(ctx, state) {
11680
11736
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
11681
11737
  }
11682
- var Const$0 = $TS($S($EXPECT($L153, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11738
+ var Const$0 = $TS($S($EXPECT($L154, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11683
11739
  return { $loc, token: $1 };
11684
11740
  });
11685
11741
  function Const(ctx, state) {
11686
11742
  return $EVENT(ctx, state, "Const", Const$0);
11687
11743
  }
11688
- var Is$0 = $TS($S($EXPECT($L154, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11744
+ var Is$0 = $TS($S($EXPECT($L155, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11689
11745
  return { $loc, token: $1 };
11690
11746
  });
11691
11747
  function Is(ctx, state) {
@@ -11697,25 +11753,25 @@ var require_parser = __commonJS({
11697
11753
  function LetOrConstOrVar(ctx, state) {
11698
11754
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
11699
11755
  }
11700
- var Loop$0 = $TS($S($EXPECT($L155, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11756
+ var Loop$0 = $TS($S($EXPECT($L156, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11701
11757
  return { $loc, token: "while(true)" };
11702
11758
  });
11703
11759
  function Loop(ctx, state) {
11704
11760
  return $EVENT(ctx, state, "Loop", Loop$0);
11705
11761
  }
11706
- var New$0 = $TS($S($EXPECT($L156, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11762
+ var New$0 = $TS($S($EXPECT($L157, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11707
11763
  return { $loc, token: $1 };
11708
11764
  });
11709
11765
  function New(ctx, state) {
11710
11766
  return $EVENT(ctx, state, "New", New$0);
11711
11767
  }
11712
- var Not$0 = $TS($S($EXPECT($L157, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L14, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11768
+ var Not$0 = $TS($S($EXPECT($L158, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L14, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11713
11769
  return { $loc, token: "!" };
11714
11770
  });
11715
11771
  function Not(ctx, state) {
11716
11772
  return $EVENT(ctx, state, "Not", Not$0);
11717
11773
  }
11718
- var Of$0 = $TS($S($EXPECT($L158, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11774
+ var Of$0 = $TS($S($EXPECT($L159, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11719
11775
  return { $loc, token: $1 };
11720
11776
  });
11721
11777
  function Of(ctx, state) {
@@ -11733,7 +11789,7 @@ var require_parser = __commonJS({
11733
11789
  function OpenBrace(ctx, state) {
11734
11790
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
11735
11791
  }
11736
- var OpenBracket$0 = $TV($EXPECT($L159, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11792
+ var OpenBracket$0 = $TV($EXPECT($L160, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11737
11793
  return { $loc, token: $1 };
11738
11794
  });
11739
11795
  function OpenBracket(ctx, state) {
@@ -11745,43 +11801,43 @@ var require_parser = __commonJS({
11745
11801
  function OpenParen(ctx, state) {
11746
11802
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
11747
11803
  }
11748
- var Operator$0 = $TS($S($EXPECT($L160, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11804
+ var Operator$0 = $TS($S($EXPECT($L161, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11749
11805
  return { $loc, token: $1 };
11750
11806
  });
11751
11807
  function Operator(ctx, state) {
11752
11808
  return $EVENT(ctx, state, "Operator", Operator$0);
11753
11809
  }
11754
- var Own$0 = $TS($S($EXPECT($L161, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11810
+ var Own$0 = $TS($S($EXPECT($L162, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11755
11811
  return { $loc, token: $1 };
11756
11812
  });
11757
11813
  function Own(ctx, state) {
11758
11814
  return $EVENT(ctx, state, "Own", Own$0);
11759
11815
  }
11760
- var Public$0 = $TS($S($EXPECT($L162, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11816
+ var Public$0 = $TS($S($EXPECT($L163, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11761
11817
  return { $loc, token: $1 };
11762
11818
  });
11763
11819
  function Public(ctx, state) {
11764
11820
  return $EVENT(ctx, state, "Public", Public$0);
11765
11821
  }
11766
- var Private$0 = $TS($S($EXPECT($L163, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11822
+ var Private$0 = $TS($S($EXPECT($L164, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11767
11823
  return { $loc, token: $1 };
11768
11824
  });
11769
11825
  function Private(ctx, state) {
11770
11826
  return $EVENT(ctx, state, "Private", Private$0);
11771
11827
  }
11772
- var Protected$0 = $TS($S($EXPECT($L164, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11828
+ var Protected$0 = $TS($S($EXPECT($L165, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11773
11829
  return { $loc, token: $1 };
11774
11830
  });
11775
11831
  function Protected(ctx, state) {
11776
11832
  return $EVENT(ctx, state, "Protected", Protected$0);
11777
11833
  }
11778
- var Pipe$0 = $TV($C($EXPECT($L165, 'Pipe "||>"'), $EXPECT($L166, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11834
+ var Pipe$0 = $TV($C($EXPECT($L166, 'Pipe "||>"'), $EXPECT($L167, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11779
11835
  return { $loc, token: "||>" };
11780
11836
  });
11781
- var Pipe$1 = $TV($C($EXPECT($L167, 'Pipe "|>="'), $EXPECT($L168, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11837
+ var Pipe$1 = $TV($C($EXPECT($L168, 'Pipe "|>="'), $EXPECT($L169, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11782
11838
  return { $loc, token: "|>=" };
11783
11839
  });
11784
- var Pipe$2 = $TV($C($EXPECT($L169, 'Pipe "|>"'), $EXPECT($L170, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11840
+ var Pipe$2 = $TV($C($EXPECT($L170, 'Pipe "|>"'), $EXPECT($L171, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11785
11841
  return { $loc, token: "|>" };
11786
11842
  });
11787
11843
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -11794,31 +11850,31 @@ var require_parser = __commonJS({
11794
11850
  function QuestionMark(ctx, state) {
11795
11851
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
11796
11852
  }
11797
- var Readonly$0 = $TS($S($EXPECT($L171, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11853
+ var Readonly$0 = $TS($S($EXPECT($L172, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11798
11854
  return { $loc, token: $1, ts: true };
11799
11855
  });
11800
11856
  function Readonly(ctx, state) {
11801
11857
  return $EVENT(ctx, state, "Readonly", Readonly$0);
11802
11858
  }
11803
- var Return$0 = $TS($S($EXPECT($L172, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11859
+ var Return$0 = $TS($S($EXPECT($L173, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11804
11860
  return { $loc, token: $1 };
11805
11861
  });
11806
11862
  function Return(ctx, state) {
11807
11863
  return $EVENT(ctx, state, "Return", Return$0);
11808
11864
  }
11809
- var Satisfies$0 = $TS($S($EXPECT($L173, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11865
+ var Satisfies$0 = $TS($S($EXPECT($L174, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11810
11866
  return { $loc, token: $1 };
11811
11867
  });
11812
11868
  function Satisfies(ctx, state) {
11813
11869
  return $EVENT(ctx, state, "Satisfies", Satisfies$0);
11814
11870
  }
11815
- var Semicolon$0 = $TV($EXPECT($L103, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11871
+ var Semicolon$0 = $TV($EXPECT($L104, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11816
11872
  return { $loc, token: $1 };
11817
11873
  });
11818
11874
  function Semicolon(ctx, state) {
11819
11875
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
11820
11876
  }
11821
- var SingleQuote$0 = $TV($EXPECT($L174, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11877
+ var SingleQuote$0 = $TV($EXPECT($L175, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11822
11878
  return { $loc, token: $1 };
11823
11879
  });
11824
11880
  function SingleQuote(ctx, state) {
@@ -11830,137 +11886,137 @@ var require_parser = __commonJS({
11830
11886
  function Star(ctx, state) {
11831
11887
  return $EVENT(ctx, state, "Star", Star$0);
11832
11888
  }
11833
- var Static$0 = $TS($S($EXPECT($L175, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11889
+ var Static$0 = $TS($S($EXPECT($L176, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11834
11890
  return { $loc, token: $1 };
11835
11891
  });
11836
- var Static$1 = $TS($S($EXPECT($L119, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L119, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11892
+ var Static$1 = $TS($S($EXPECT($L120, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L120, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11837
11893
  return { $loc, token: "static " };
11838
11894
  });
11839
11895
  var Static$$ = [Static$0, Static$1];
11840
11896
  function Static(ctx, state) {
11841
11897
  return $EVENT_C(ctx, state, "Static", Static$$);
11842
11898
  }
11843
- var SubstitutionStart$0 = $TV($EXPECT($L176, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11899
+ var SubstitutionStart$0 = $TV($EXPECT($L177, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11844
11900
  return { $loc, token: $1 };
11845
11901
  });
11846
11902
  function SubstitutionStart(ctx, state) {
11847
11903
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
11848
11904
  }
11849
- var Super$0 = $TS($S($EXPECT($L177, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11905
+ var Super$0 = $TS($S($EXPECT($L178, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11850
11906
  return { $loc, token: $1 };
11851
11907
  });
11852
11908
  function Super(ctx, state) {
11853
11909
  return $EVENT(ctx, state, "Super", Super$0);
11854
11910
  }
11855
- var Switch$0 = $TS($S($EXPECT($L178, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11911
+ var Switch$0 = $TS($S($EXPECT($L179, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11856
11912
  return { $loc, token: $1 };
11857
11913
  });
11858
11914
  function Switch(ctx, state) {
11859
11915
  return $EVENT(ctx, state, "Switch", Switch$0);
11860
11916
  }
11861
- var Target$0 = $TS($S($EXPECT($L179, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11917
+ var Target$0 = $TS($S($EXPECT($L180, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11862
11918
  return { $loc, token: $1 };
11863
11919
  });
11864
11920
  function Target(ctx, state) {
11865
11921
  return $EVENT(ctx, state, "Target", Target$0);
11866
11922
  }
11867
- var Then$0 = $TS($S(__, $EXPECT($L180, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11923
+ var Then$0 = $TS($S(__, $EXPECT($L181, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11868
11924
  return { $loc, token: "" };
11869
11925
  });
11870
11926
  function Then(ctx, state) {
11871
11927
  return $EVENT(ctx, state, "Then", Then$0);
11872
11928
  }
11873
- var This$0 = $TS($S($EXPECT($L181, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11929
+ var This$0 = $TS($S($EXPECT($L182, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11874
11930
  return { $loc, token: $1 };
11875
11931
  });
11876
11932
  function This(ctx, state) {
11877
11933
  return $EVENT(ctx, state, "This", This$0);
11878
11934
  }
11879
- var Throw$0 = $TS($S($EXPECT($L182, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11935
+ var Throw$0 = $TS($S($EXPECT($L183, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11880
11936
  return { $loc, token: $1 };
11881
11937
  });
11882
11938
  function Throw(ctx, state) {
11883
11939
  return $EVENT(ctx, state, "Throw", Throw$0);
11884
11940
  }
11885
- var TripleDoubleQuote$0 = $TV($EXPECT($L183, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11941
+ var TripleDoubleQuote$0 = $TV($EXPECT($L184, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11886
11942
  return { $loc, token: "`" };
11887
11943
  });
11888
11944
  function TripleDoubleQuote(ctx, state) {
11889
11945
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
11890
11946
  }
11891
- var TripleSingleQuote$0 = $TV($EXPECT($L184, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11947
+ var TripleSingleQuote$0 = $TV($EXPECT($L185, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11892
11948
  return { $loc, token: "`" };
11893
11949
  });
11894
11950
  function TripleSingleQuote(ctx, state) {
11895
11951
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
11896
11952
  }
11897
- var TripleSlash$0 = $TV($EXPECT($L185, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11953
+ var TripleSlash$0 = $TV($EXPECT($L186, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11898
11954
  return { $loc, token: "/" };
11899
11955
  });
11900
11956
  function TripleSlash(ctx, state) {
11901
11957
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
11902
11958
  }
11903
- var TripleTick$0 = $TV($EXPECT($L186, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11959
+ var TripleTick$0 = $TV($EXPECT($L187, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11904
11960
  return { $loc, token: "`" };
11905
11961
  });
11906
11962
  function TripleTick(ctx, state) {
11907
11963
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
11908
11964
  }
11909
- var Try$0 = $TS($S($EXPECT($L187, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11965
+ var Try$0 = $TS($S($EXPECT($L188, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11910
11966
  return { $loc, token: $1 };
11911
11967
  });
11912
11968
  function Try(ctx, state) {
11913
11969
  return $EVENT(ctx, state, "Try", Try$0);
11914
11970
  }
11915
- var Typeof$0 = $TS($S($EXPECT($L188, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11971
+ var Typeof$0 = $TS($S($EXPECT($L189, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11916
11972
  return { $loc, token: $1 };
11917
11973
  });
11918
11974
  function Typeof(ctx, state) {
11919
11975
  return $EVENT(ctx, state, "Typeof", Typeof$0);
11920
11976
  }
11921
- var Unless$0 = $TS($S($EXPECT($L189, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11977
+ var Unless$0 = $TS($S($EXPECT($L190, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11922
11978
  return { $loc, token: $1, negated: true };
11923
11979
  });
11924
11980
  function Unless(ctx, state) {
11925
11981
  return $EVENT(ctx, state, "Unless", Unless$0);
11926
11982
  }
11927
- var Until$0 = $TS($S($EXPECT($L190, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11983
+ var Until$0 = $TS($S($EXPECT($L191, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11928
11984
  return { $loc, token: $1 };
11929
11985
  });
11930
11986
  function Until(ctx, state) {
11931
11987
  return $EVENT(ctx, state, "Until", Until$0);
11932
11988
  }
11933
- var Using$0 = $TS($S($EXPECT($L191, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11989
+ var Using$0 = $TS($S($EXPECT($L192, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11934
11990
  return { $loc, token: $1 };
11935
11991
  });
11936
11992
  function Using(ctx, state) {
11937
11993
  return $EVENT(ctx, state, "Using", Using$0);
11938
11994
  }
11939
- var Var$0 = $TS($S($EXPECT($L192, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11995
+ var Var$0 = $TS($S($EXPECT($L193, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11940
11996
  return { $loc, token: $1 };
11941
11997
  });
11942
11998
  function Var(ctx, state) {
11943
11999
  return $EVENT(ctx, state, "Var", Var$0);
11944
12000
  }
11945
- var Void$0 = $TS($S($EXPECT($L193, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12001
+ var Void$0 = $TS($S($EXPECT($L194, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11946
12002
  return { $loc, token: $1 };
11947
12003
  });
11948
12004
  function Void(ctx, state) {
11949
12005
  return $EVENT(ctx, state, "Void", Void$0);
11950
12006
  }
11951
- var When$0 = $TS($S($EXPECT($L194, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12007
+ var When$0 = $TS($S($EXPECT($L195, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11952
12008
  return { $loc, token: "case" };
11953
12009
  });
11954
12010
  function When(ctx, state) {
11955
12011
  return $EVENT(ctx, state, "When", When$0);
11956
12012
  }
11957
- var While$0 = $TS($S($EXPECT($L195, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12013
+ var While$0 = $TS($S($EXPECT($L196, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11958
12014
  return { $loc, token: $1 };
11959
12015
  });
11960
12016
  function While(ctx, state) {
11961
12017
  return $EVENT(ctx, state, "While", While$0);
11962
12018
  }
11963
- var Yield$0 = $TS($S($EXPECT($L196, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12019
+ var Yield$0 = $TS($S($EXPECT($L197, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11964
12020
  return { $loc, token: $1, type: "Yield" };
11965
12021
  });
11966
12022
  function Yield(ctx, state) {
@@ -12039,7 +12095,7 @@ var require_parser = __commonJS({
12039
12095
  function JSXElement(ctx, state) {
12040
12096
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
12041
12097
  }
12042
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L16, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L197, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12098
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L16, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L198, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12043
12099
  return { type: "JSXElement", children: $0, tag: $2 };
12044
12100
  });
12045
12101
  function JSXSelfClosingElement(ctx, state) {
@@ -12073,7 +12129,7 @@ var require_parser = __commonJS({
12073
12129
  function JSXOptionalClosingElement(ctx, state) {
12074
12130
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
12075
12131
  }
12076
- var JSXClosingElement$0 = $S($EXPECT($L198, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L37, 'JSXClosingElement ">"'));
12132
+ var JSXClosingElement$0 = $S($EXPECT($L199, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L37, 'JSXClosingElement ">"'));
12077
12133
  function JSXClosingElement(ctx, state) {
12078
12134
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
12079
12135
  }
@@ -12094,7 +12150,7 @@ var require_parser = __commonJS({
12094
12150
  ];
12095
12151
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
12096
12152
  });
12097
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L199, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12153
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L200, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12098
12154
  var children = $3;
12099
12155
  $0 = $0.slice(1);
12100
12156
  return {
@@ -12107,7 +12163,7 @@ var require_parser = __commonJS({
12107
12163
  function JSXFragment(ctx, state) {
12108
12164
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
12109
12165
  }
12110
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L199, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
12166
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L200, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
12111
12167
  module.JSXTagStack.push("");
12112
12168
  return $1;
12113
12169
  });
@@ -12124,11 +12180,11 @@ var require_parser = __commonJS({
12124
12180
  function JSXOptionalClosingFragment(ctx, state) {
12125
12181
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
12126
12182
  }
12127
- var JSXClosingFragment$0 = $EXPECT($L200, 'JSXClosingFragment "</>"');
12183
+ var JSXClosingFragment$0 = $EXPECT($L201, 'JSXClosingFragment "</>"');
12128
12184
  function JSXClosingFragment(ctx, state) {
12129
12185
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
12130
12186
  }
12131
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L149, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
12187
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L150, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
12132
12188
  return module.config.defaultElement;
12133
12189
  });
12134
12190
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -12306,7 +12362,7 @@ var require_parser = __commonJS({
12306
12362
  }
12307
12363
  return $skip;
12308
12364
  });
12309
- var JSXAttribute$5 = $TS($S($EXPECT($L149, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12365
+ var JSXAttribute$5 = $TS($S($EXPECT($L150, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12310
12366
  return [" ", "id=", $2];
12311
12367
  });
12312
12368
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -12598,7 +12654,7 @@ var require_parser = __commonJS({
12598
12654
  function JSXChild(ctx, state) {
12599
12655
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
12600
12656
  }
12601
- var JSXComment$0 = $TS($S($EXPECT($L201, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L202, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12657
+ var JSXComment$0 = $TS($S($EXPECT($L202, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L203, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12602
12658
  return ["{/*", $2, "*/}"];
12603
12659
  });
12604
12660
  function JSXComment(ctx, state) {
@@ -12730,37 +12786,37 @@ var require_parser = __commonJS({
12730
12786
  function InterfaceExtendsTarget(ctx, state) {
12731
12787
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
12732
12788
  }
12733
- var TypeKeyword$0 = $TS($S($EXPECT($L203, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12789
+ var TypeKeyword$0 = $TS($S($EXPECT($L204, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12734
12790
  return { $loc, token: $1 };
12735
12791
  });
12736
12792
  function TypeKeyword(ctx, state) {
12737
12793
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
12738
12794
  }
12739
- var Enum$0 = $TS($S($EXPECT($L204, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12795
+ var Enum$0 = $TS($S($EXPECT($L205, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12740
12796
  return { $loc, token: $1 };
12741
12797
  });
12742
12798
  function Enum(ctx, state) {
12743
12799
  return $EVENT(ctx, state, "Enum", Enum$0);
12744
12800
  }
12745
- var Interface$0 = $TS($S($EXPECT($L205, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12801
+ var Interface$0 = $TS($S($EXPECT($L206, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12746
12802
  return { $loc, token: $1 };
12747
12803
  });
12748
12804
  function Interface(ctx, state) {
12749
12805
  return $EVENT(ctx, state, "Interface", Interface$0);
12750
12806
  }
12751
- var Global$0 = $TS($S($EXPECT($L206, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12807
+ var Global$0 = $TS($S($EXPECT($L207, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12752
12808
  return { $loc, token: $1 };
12753
12809
  });
12754
12810
  function Global(ctx, state) {
12755
12811
  return $EVENT(ctx, state, "Global", Global$0);
12756
12812
  }
12757
- var Module$0 = $TS($S($EXPECT($L207, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12813
+ var Module$0 = $TS($S($EXPECT($L208, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12758
12814
  return { $loc, token: $1 };
12759
12815
  });
12760
12816
  function Module(ctx, state) {
12761
12817
  return $EVENT(ctx, state, "Module", Module$0);
12762
12818
  }
12763
- var Namespace$0 = $TS($S($EXPECT($L208, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12819
+ var Namespace$0 = $TS($S($EXPECT($L209, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12764
12820
  return { $loc, token: $1 };
12765
12821
  });
12766
12822
  function Namespace(ctx, state) {
@@ -13033,7 +13089,7 @@ var require_parser = __commonJS({
13033
13089
  function ReturnTypeSuffix(ctx, state) {
13034
13090
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
13035
13091
  }
13036
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L209, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
13092
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L210, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
13037
13093
  var asserts = $1;
13038
13094
  var t = $2;
13039
13095
  if (asserts) {
@@ -13054,7 +13110,7 @@ var require_parser = __commonJS({
13054
13110
  function ReturnType(ctx, state) {
13055
13111
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
13056
13112
  }
13057
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L154, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
13113
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L155, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
13058
13114
  var lhs = $1;
13059
13115
  var rhs = $2;
13060
13116
  if (!rhs)
@@ -13112,9 +13168,9 @@ var require_parser = __commonJS({
13112
13168
  function TypeUnarySuffix(ctx, state) {
13113
13169
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
13114
13170
  }
13115
- var TypeUnaryOp$0 = $S($EXPECT($L210, 'TypeUnaryOp "keyof"'), NonIdContinue);
13116
- var TypeUnaryOp$1 = $S($EXPECT($L211, 'TypeUnaryOp "infer"'), NonIdContinue);
13117
- var TypeUnaryOp$2 = $S($EXPECT($L171, 'TypeUnaryOp "readonly"'), NonIdContinue);
13171
+ var TypeUnaryOp$0 = $S($EXPECT($L211, 'TypeUnaryOp "keyof"'), NonIdContinue);
13172
+ var TypeUnaryOp$1 = $S($EXPECT($L212, 'TypeUnaryOp "infer"'), NonIdContinue);
13173
+ var TypeUnaryOp$2 = $S($EXPECT($L172, 'TypeUnaryOp "readonly"'), NonIdContinue);
13118
13174
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1, TypeUnaryOp$2];
13119
13175
  function TypeUnaryOp(ctx, state) {
13120
13176
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -13144,7 +13200,7 @@ var require_parser = __commonJS({
13144
13200
  function TypeIndexedAccess(ctx, state) {
13145
13201
  return $EVENT_C(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$$);
13146
13202
  }
13147
- var UnknownAlias$0 = $TV($EXPECT($L212, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
13203
+ var UnknownAlias$0 = $TV($EXPECT($L213, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
13148
13204
  return { $loc, token: "unknown" };
13149
13205
  });
13150
13206
  function UnknownAlias(ctx, state) {
@@ -13353,10 +13409,10 @@ var require_parser = __commonJS({
13353
13409
  }
13354
13410
  var TypeLiteral$0 = TypeTemplateLiteral;
13355
13411
  var TypeLiteral$1 = Literal;
13356
- var TypeLiteral$2 = $TS($S($EXPECT($L193, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13412
+ var TypeLiteral$2 = $TS($S($EXPECT($L194, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13357
13413
  return { type: "VoidType", $loc, token: $1 };
13358
13414
  });
13359
- var TypeLiteral$3 = $TV($EXPECT($L213, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13415
+ var TypeLiteral$3 = $TV($EXPECT($L214, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13360
13416
  return { $loc, token: "[]" };
13361
13417
  });
13362
13418
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -13375,7 +13431,7 @@ var require_parser = __commonJS({
13375
13431
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
13376
13432
  return value[1];
13377
13433
  });
13378
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L14, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L116, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L38, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L29, 'InlineInterfacePropertyDelimiter "}"'))));
13434
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L14, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L117, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L38, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L29, 'InlineInterfacePropertyDelimiter "}"'))));
13379
13435
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
13380
13436
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
13381
13437
  function InlineInterfacePropertyDelimiter(ctx, state) {
@@ -13439,11 +13495,11 @@ var require_parser = __commonJS({
13439
13495
  function TypeParameters(ctx, state) {
13440
13496
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
13441
13497
  }
13442
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L153, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13498
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L154, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13443
13499
  function TypeParameter(ctx, state) {
13444
13500
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
13445
13501
  }
13446
- var TypeConstraint$0 = $S(__, $EXPECT($L142, 'TypeConstraint "extends"'), NonIdContinue, Type);
13502
+ var TypeConstraint$0 = $S(__, $EXPECT($L143, 'TypeConstraint "extends"'), NonIdContinue, Type);
13447
13503
  function TypeConstraint(ctx, state) {
13448
13504
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
13449
13505
  }
@@ -13482,7 +13538,7 @@ var require_parser = __commonJS({
13482
13538
  function CivetPrologue(ctx, state) {
13483
13539
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
13484
13540
  }
13485
- var CivetPrologueContent$0 = $TS($S($EXPECT($L214, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R85, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13541
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L215, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R85, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13486
13542
  var options = $3;
13487
13543
  return {
13488
13544
  type: "CivetPrologue",
@@ -13965,9 +14021,9 @@ var require_parser = __commonJS({
13965
14021
  preludeVar,
13966
14022
  ref,
13967
14023
  typeSuffix,
13968
- " = (lhs, rhs) => ((rhs",
14024
+ " = (lhs, rhs) => (((rhs",
13969
14025
  asAny,
13970
- ")?.[Symbol.isConcatSpreadable] ? (lhs",
14026
+ ")?.[Symbol.isConcatSpreadable] ?? Array.isArray(rhs)) ? (lhs",
13971
14027
  asAny,
13972
14028
  ").push.apply(lhs, rhs",
13973
14029
  asAny,
@@ -14169,20 +14225,20 @@ var require_parser = __commonJS({
14169
14225
  function Dedented(ctx, state) {
14170
14226
  return $EVENT(ctx, state, "Dedented", Dedented$0);
14171
14227
  }
14172
- var parser2 = function() {
14228
+ var parser = function() {
14173
14229
  const { fail, validate, reset } = Validator();
14174
14230
  let ctx = { expectation: "", fail };
14175
14231
  return {
14176
14232
  parse: (input, options = {}) => {
14177
14233
  if (typeof input !== "string")
14178
14234
  throw new Error("Input must be a string");
14179
- const parser3 = options.startRule != null ? grammar[options.startRule] : Object.values(grammar)[0];
14180
- if (!parser3)
14235
+ const parser2 = options.startRule != null ? grammar[options.startRule] : Object.values(grammar)[0];
14236
+ if (!parser2)
14181
14237
  throw new Error(`Could not find rule with name '${options.startRule}'`);
14182
14238
  const filename = options.filename || "<anonymous>";
14183
14239
  reset();
14184
14240
  Object.assign(ctx, { ...options.events, tokenize: options.tokenize });
14185
- return validate(input, parser3(ctx, {
14241
+ return validate(input, parser2(ctx, {
14186
14242
  input,
14187
14243
  pos: 0
14188
14244
  }), {
@@ -14191,8 +14247,8 @@ var require_parser = __commonJS({
14191
14247
  }
14192
14248
  };
14193
14249
  }();
14194
- exports.default = parser2;
14195
- exports.parse = parser2.parse;
14250
+ exports.default = parser;
14251
+ exports.parse = parser.parse;
14196
14252
  exports.Program = Program;
14197
14253
  exports.TopLevelStatements = TopLevelStatements;
14198
14254
  exports.NestedTopLevelStatements = NestedTopLevelStatements;
@@ -14238,6 +14294,7 @@ var require_parser = __commonJS({
14238
14294
  exports.UnaryWithoutParenthesizedAssignmentBody = UnaryWithoutParenthesizedAssignmentBody;
14239
14295
  exports.UnaryPostfix = UnaryPostfix;
14240
14296
  exports.TypePostfix = TypePostfix;
14297
+ exports.NWTypePostfix = NWTypePostfix;
14241
14298
  exports.UpdateExpression = UpdateExpression;
14242
14299
  exports.UpdateExpressionSymbol = UpdateExpressionSymbol;
14243
14300
  exports.AssignmentExpression = AssignmentExpression;
@@ -14350,6 +14407,7 @@ var require_parser = __commonJS({
14350
14407
  exports.OperatorDeclaration = OperatorDeclaration;
14351
14408
  exports.OperatorSignature = OperatorSignature;
14352
14409
  exports.AmpersandBlockRHS = AmpersandBlockRHS;
14410
+ exports.AmpersandTypeSuffix = AmpersandTypeSuffix;
14353
14411
  exports.AmpersandBlockRHSBody = AmpersandBlockRHSBody;
14354
14412
  exports.ThinArrowFunction = ThinArrowFunction;
14355
14413
  exports.Arrow = Arrow;
@@ -14406,8 +14464,10 @@ var require_parser = __commonJS({
14406
14464
  exports.NestedImplicitPropertyDefinition = NestedImplicitPropertyDefinition;
14407
14465
  exports.NestedPropertyDefinitions = NestedPropertyDefinitions;
14408
14466
  exports.NestedPropertyDefinition = NestedPropertyDefinition;
14467
+ exports.ImplicitObjectLiteral = ImplicitObjectLiteral;
14468
+ exports.ImplicitObjectPropertyDelimiter = ImplicitObjectPropertyDelimiter;
14409
14469
  exports.InlineObjectLiteral = InlineObjectLiteral;
14410
- exports.ImplicitInlineObjectPropertyDelimiter = ImplicitInlineObjectPropertyDelimiter;
14470
+ exports.InlineObjectPropertyDelimiter = InlineObjectPropertyDelimiter;
14411
14471
  exports.ObjectPropertyDelimiter = ObjectPropertyDelimiter;
14412
14472
  exports.PropertyDefinition = PropertyDefinition;
14413
14473
  exports.NamedProperty = NamedProperty;
@@ -15375,7 +15435,6 @@ var StateCache = class {
15375
15435
  };
15376
15436
 
15377
15437
  // source/main.civet
15378
- var { parse: parse2 } = import_parser.default;
15379
15438
  var { SourceMap: SourceMap2 } = util_exports;
15380
15439
  var uncacheable = /* @__PURE__ */ new Set([
15381
15440
  // Meta
@@ -15437,8 +15496,8 @@ function compile(src, options) {
15437
15496
  }
15438
15497
  let ast;
15439
15498
  try {
15440
- parse2.config = options.parseOptions || {};
15441
- ast = prune2(parse2(src, {
15499
+ import_parser.parse.config = options.parseOptions || {};
15500
+ ast = prune2((0, import_parser.parse)(src, {
15442
15501
  filename,
15443
15502
  events
15444
15503
  }));
@@ -15547,7 +15606,7 @@ function makeCache({ hits, trace } = {}) {
15547
15606
  const key = [tagKey, stateKey, state.pos, ruleName];
15548
15607
  stateCache.set(key, result);
15549
15608
  }
15550
- if (parse2.config.verbose && result) {
15609
+ if (import_parser.parse.config.verbose && result) {
15551
15610
  console.log(`Parsed ${JSON.stringify(state.input.slice(state.pos, result.pos))} [pos ${state.pos}-${result.pos}] as ${ruleName}`);
15552
15611
  }
15553
15612
  if (trace) {
@@ -15563,14 +15622,15 @@ var isCompileError = function(err) {
15563
15622
  return err instanceof Error && //@ts-ignore
15564
15623
  [err.message, err.name, err.filename, err.line, err.column, err.offset].every(($1) => $1 !== void 0);
15565
15624
  };
15566
- var main_default = { parse: parse2, generate: generate_default, util: util_exports, compile, isCompileError };
15625
+ var main_default = { parse: import_parser.parse, generate: generate_default, util: util_exports, compile, isCompileError };
15626
+ var export_parse = import_parser.parse;
15567
15627
  export {
15568
15628
  compile,
15569
15629
  main_default as default,
15570
15630
  generate_default as generate,
15571
15631
  isCompileError,
15572
15632
  lib_exports as lib,
15573
- parse2 as parse,
15633
+ export_parse as parse,
15574
15634
  prune2 as prune,
15575
15635
  util_exports as util
15576
15636
  };