@danielx/civet 0.6.49 → 0.6.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/browser.js CHANGED
@@ -2059,6 +2059,20 @@ ${input.slice(result.pos)}
2059
2059
  implicit: true
2060
2060
  });
2061
2061
  }
2062
+ function makeExpressionStatement(expression) {
2063
+ if (Array.isArray(expression) && expression[1]?.[0]?.[0]?.[1]?.token === ",") {
2064
+ return [
2065
+ makeExpressionStatement(expression[0]),
2066
+ expression[1].map(([comma, exp]) => {
2067
+ return [comma, makeExpressionStatement(exp)];
2068
+ })
2069
+ ];
2070
+ } else if (expression?.type === "ObjectExpression" || expression?.type === "FunctionExpression" && !expression.id) {
2071
+ return makeLeftHandSideExpression(expression);
2072
+ } else {
2073
+ return expression;
2074
+ }
2075
+ }
2062
2076
  function modifyString(str) {
2063
2077
  return str.replace(/(^.?|[^\\]{2})(\\\\)*\n/g, "$1$2\\n");
2064
2078
  }
@@ -3692,6 +3706,7 @@ ${input.slice(result.pos)}
3692
3706
  literalValue,
3693
3707
  makeAsConst,
3694
3708
  makeEmptyBlock,
3709
+ makeExpressionStatement,
3695
3710
  makeGetterMethod,
3696
3711
  makeLeftHandSideExpression,
3697
3712
  makeRef,
@@ -3756,6 +3771,7 @@ ${input.slice(result.pos)}
3756
3771
  NestedTopLevelStatements,
3757
3772
  TopLevelSingleLineStatements,
3758
3773
  TopLevelStatement,
3774
+ ExtendedCommaExpression,
3759
3775
  ExtendedExpression,
3760
3776
  SingleLineExtendedExpression,
3761
3777
  NonPipelineExtendedExpression,
@@ -3764,7 +3780,7 @@ ${input.slice(result.pos)}
3764
3780
  ExpressionizedStatementWithTrailingCallExpressions,
3765
3781
  ExpressionizedStatement,
3766
3782
  _ExpressionizedStatement,
3767
- Expression,
3783
+ CommaExpression,
3768
3784
  Arguments,
3769
3785
  ImplicitArguments,
3770
3786
  ExplicitArguments,
@@ -3909,15 +3925,18 @@ ${input.slice(result.pos)}
3909
3925
  BareBlock,
3910
3926
  ThenClause,
3911
3927
  BracedOrEmptyBlock,
3928
+ NoCommaBracedOrEmptyBlock,
3912
3929
  NoPostfixBracedOrEmptyBlock,
3913
3930
  EmptyBlock,
3914
3931
  EmptyBareBlock,
3915
3932
  BracedBlock,
3916
3933
  NoPostfixBracedBlock,
3934
+ NoCommaBracedBlock,
3917
3935
  NonSingleBracedBlock,
3918
3936
  DeclarationOrStatement,
3919
3937
  SingleLineStatements,
3920
3938
  PostfixedSingleLineStatements,
3939
+ PostfixedSingleLineNoCommaStatements,
3921
3940
  BracedContent,
3922
3941
  NestedBlockStatements,
3923
3942
  NestedBlockStatement,
@@ -3985,11 +4004,15 @@ ${input.slice(result.pos)}
3985
4004
  ModuleItem,
3986
4005
  StatementListItem,
3987
4006
  PostfixedStatement,
4007
+ NoCommaStatementListItem,
4008
+ PostfixedNoCommaStatement,
3988
4009
  PostfixedExpression,
4010
+ PostfixedCommaExpression,
3989
4011
  NonPipelinePostfixedExpression,
3990
4012
  PostfixStatement,
3991
4013
  _PostfixStatement,
3992
4014
  Statement,
4015
+ NoCommaStatement,
3993
4016
  EmptyStatement,
3994
4017
  BlockStatement,
3995
4018
  LabelledStatement,
@@ -4073,6 +4096,7 @@ ${input.slice(result.pos)}
4073
4096
  NewlineBinaryOpAllowed,
4074
4097
  AllowAll,
4075
4098
  RestoreAll,
4099
+ CommaExpressionStatement,
4076
4100
  ExpressionStatement,
4077
4101
  KeywordStatement,
4078
4102
  DebuggerStatement,
@@ -4809,6 +4833,12 @@ ${input.slice(result.pos)}
4809
4833
  function TopLevelStatement(ctx, state) {
4810
4834
  return $EVENT(ctx, state, "TopLevelStatement", TopLevelStatement$0);
4811
4835
  }
4836
+ var ExtendedCommaExpression$0 = NonAssignmentExtendedExpression;
4837
+ var ExtendedCommaExpression$1 = CommaExpression;
4838
+ var ExtendedCommaExpression$$ = [ExtendedCommaExpression$0, ExtendedCommaExpression$1];
4839
+ function ExtendedCommaExpression(ctx, state) {
4840
+ return $EVENT_C(ctx, state, "ExtendedCommaExpression", ExtendedCommaExpression$$);
4841
+ }
4812
4842
  var ExtendedExpression$0 = NonAssignmentExtendedExpression;
4813
4843
  var ExtendedExpression$1 = AssignmentExpression;
4814
4844
  var ExtendedExpression$$ = [ExtendedExpression$0, ExtendedExpression$1];
@@ -4887,13 +4917,13 @@ ${input.slice(result.pos)}
4887
4917
  function _ExpressionizedStatement(ctx, state) {
4888
4918
  return $EVENT_C(ctx, state, "_ExpressionizedStatement", _ExpressionizedStatement$$);
4889
4919
  }
4890
- var Expression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4920
+ var CommaExpression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4891
4921
  if ($2.length == 0)
4892
4922
  return $1;
4893
4923
  return $0;
4894
4924
  });
4895
- function Expression(ctx, state) {
4896
- return $EVENT(ctx, state, "Expression", Expression$0);
4925
+ function CommaExpression(ctx, state) {
4926
+ return $EVENT(ctx, state, "CommaExpression", CommaExpression$0);
4897
4927
  }
4898
4928
  var Arguments$0 = ExplicitArguments;
4899
4929
  var Arguments$1 = $TS($S(ForbidTrailingMemberProperty, $E(ImplicitArguments), RestoreTrailingMemberProperty), function($skip, $loc, $0, $1, $2, $3) {
@@ -5302,7 +5332,7 @@ ${input.slice(result.pos)}
5302
5332
  var exp = value[1];
5303
5333
  return exp;
5304
5334
  });
5305
- var FatArrowBody$1 = BracedOrEmptyBlock;
5335
+ var FatArrowBody$1 = NoCommaBracedOrEmptyBlock;
5306
5336
  var FatArrowBody$$ = [FatArrowBody$0, FatArrowBody$1];
5307
5337
  function FatArrowBody(ctx, state) {
5308
5338
  return $EVENT_C(ctx, state, "FatArrowBody", FatArrowBody$$);
@@ -5414,7 +5444,7 @@ ${input.slice(result.pos)}
5414
5444
  function PrimaryExpression(ctx, state) {
5415
5445
  return $EVENT_C(ctx, state, "PrimaryExpression", PrimaryExpression$$);
5416
5446
  }
5417
- var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5447
+ var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedCommaExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5418
5448
  var open = $1;
5419
5449
  if (!$3)
5420
5450
  return $skip;
@@ -6808,7 +6838,7 @@ ${input.slice(result.pos)}
6808
6838
  function AmpersandUnaryPrefix(ctx, state) {
6809
6839
  return $EVENT(ctx, state, "AmpersandUnaryPrefix", AmpersandUnaryPrefix$0);
6810
6840
  }
6811
- var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, BracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6841
+ var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, NoCommaBracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6812
6842
  var async = $1;
6813
6843
  var parameters = $2;
6814
6844
  var suffix = $3;
@@ -6950,6 +6980,12 @@ ${input.slice(result.pos)}
6950
6980
  function BracedOrEmptyBlock(ctx, state) {
6951
6981
  return $EVENT_C(ctx, state, "BracedOrEmptyBlock", BracedOrEmptyBlock$$);
6952
6982
  }
6983
+ var NoCommaBracedOrEmptyBlock$0 = NoCommaBracedBlock;
6984
+ var NoCommaBracedOrEmptyBlock$1 = EmptyBlock;
6985
+ var NoCommaBracedOrEmptyBlock$$ = [NoCommaBracedOrEmptyBlock$0, NoCommaBracedOrEmptyBlock$1];
6986
+ function NoCommaBracedOrEmptyBlock(ctx, state) {
6987
+ return $EVENT_C(ctx, state, "NoCommaBracedOrEmptyBlock", NoCommaBracedOrEmptyBlock$$);
6988
+ }
6953
6989
  var NoPostfixBracedOrEmptyBlock$0 = NoPostfixBracedBlock;
6954
6990
  var NoPostfixBracedOrEmptyBlock$1 = EmptyBlock;
6955
6991
  var NoPostfixBracedOrEmptyBlock$$ = [NoPostfixBracedOrEmptyBlock$0, NoPostfixBracedOrEmptyBlock$1];
@@ -7019,6 +7055,25 @@ ${input.slice(result.pos)}
7019
7055
  function NoPostfixBracedBlock(ctx, state) {
7020
7056
  return $EVENT_C(ctx, state, "NoPostfixBracedBlock", NoPostfixBracedBlock$$);
7021
7057
  }
7058
+ var NoCommaBracedBlock$0 = NonSingleBracedBlock;
7059
+ var NoCommaBracedBlock$1 = $TS($S(InsertOpenBrace, $N(EOS), PostfixedSingleLineNoCommaStatements, InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7060
+ var o = $1;
7061
+ var s = $3;
7062
+ var ws = $4;
7063
+ var c = $5;
7064
+ if (!s.children.length)
7065
+ return $skip;
7066
+ return {
7067
+ type: "BlockStatement",
7068
+ expressions: s.expressions,
7069
+ // Remove !EOS assertion
7070
+ children: [o, s.children, ws, c]
7071
+ };
7072
+ });
7073
+ var NoCommaBracedBlock$$ = [NoCommaBracedBlock$0, NoCommaBracedBlock$1];
7074
+ function NoCommaBracedBlock(ctx, state) {
7075
+ return $EVENT_C(ctx, state, "NoCommaBracedBlock", NoCommaBracedBlock$$);
7076
+ }
7022
7077
  var NonSingleBracedBlock$0 = $TS($S($E(_), OpenBrace, AllowAll, $E($S(BracedContent, __, CloseBrace)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7023
7078
  var ws1 = $1;
7024
7079
  var open = $2;
@@ -7086,6 +7141,22 @@ ${input.slice(result.pos)}
7086
7141
  function PostfixedSingleLineStatements(ctx, state) {
7087
7142
  return $EVENT(ctx, state, "PostfixedSingleLineStatements", PostfixedSingleLineStatements$0);
7088
7143
  }
7144
+ var PostfixedSingleLineNoCommaStatements$0 = $TS($S($Q($S($S($E(_), $N(EOS)), NoCommaStatementListItem, SemicolonDelimiter)), $E($S($S($E(_), $N(EOS)), NoCommaStatementListItem, $E(SemicolonDelimiter)))), function($skip, $loc, $0, $1, $2) {
7145
+ var stmts = $1;
7146
+ var last = $2;
7147
+ const children = [...stmts];
7148
+ if (last)
7149
+ children.push(last);
7150
+ return {
7151
+ type: "BlockStatement",
7152
+ expressions: children,
7153
+ children,
7154
+ bare: true
7155
+ };
7156
+ });
7157
+ function PostfixedSingleLineNoCommaStatements(ctx, state) {
7158
+ return $EVENT(ctx, state, "PostfixedSingleLineNoCommaStatements", PostfixedSingleLineNoCommaStatements$0);
7159
+ }
7089
7160
  var BracedContent$0 = NestedBlockStatements;
7090
7161
  var BracedContent$1 = SingleLineStatements;
7091
7162
  var BracedContent$2 = $TV($Y($S(__, $EXPECT($L25, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
@@ -8480,6 +8551,22 @@ ${input.slice(result.pos)}
8480
8551
  function PostfixedStatement(ctx, state) {
8481
8552
  return $EVENT(ctx, state, "PostfixedStatement", PostfixedStatement$0);
8482
8553
  }
8554
+ var NoCommaStatementListItem$0 = Declaration;
8555
+ var NoCommaStatementListItem$1 = PostfixedNoCommaStatement;
8556
+ var NoCommaStatementListItem$$ = [NoCommaStatementListItem$0, NoCommaStatementListItem$1];
8557
+ function NoCommaStatementListItem(ctx, state) {
8558
+ return $EVENT_C(ctx, state, "NoCommaStatementListItem", NoCommaStatementListItem$$);
8559
+ }
8560
+ var PostfixedNoCommaStatement$0 = $TS($S(NoCommaStatement, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8561
+ var statement = $1;
8562
+ var post = $2;
8563
+ if (post)
8564
+ return addPostfixStatement(statement, ...post);
8565
+ return statement;
8566
+ });
8567
+ function PostfixedNoCommaStatement(ctx, state) {
8568
+ return $EVENT(ctx, state, "PostfixedNoCommaStatement", PostfixedNoCommaStatement$0);
8569
+ }
8483
8570
  var PostfixedExpression$0 = $TS($S(ExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8484
8571
  var expression = $1;
8485
8572
  var post = $2;
@@ -8490,6 +8577,19 @@ ${input.slice(result.pos)}
8490
8577
  function PostfixedExpression(ctx, state) {
8491
8578
  return $EVENT(ctx, state, "PostfixedExpression", PostfixedExpression$0);
8492
8579
  }
8580
+ var PostfixedCommaExpression$0 = $TS($S(PostfixedExpression, $C($S($E(_), PostfixStatement), $Q($S(CommaDelimiter, AssignmentExpression)))), function($skip, $loc, $0, $1, $2) {
8581
+ var expression = $1;
8582
+ var post = $2;
8583
+ if (!post.length)
8584
+ return $1;
8585
+ if (post.length === 2 && !Array.isArray(post[1])) {
8586
+ return attachPostfixStatementAsExpression(expression, post);
8587
+ }
8588
+ return $0;
8589
+ });
8590
+ function PostfixedCommaExpression(ctx, state) {
8591
+ return $EVENT(ctx, state, "PostfixedCommaExpression", PostfixedCommaExpression$0);
8592
+ }
8493
8593
  var NonPipelinePostfixedExpression$0 = $TS($S(NonPipelineExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8494
8594
  var expression = $1;
8495
8595
  var post = $2;
@@ -8523,17 +8623,26 @@ ${input.slice(result.pos)}
8523
8623
  var Statement$5 = TryStatement;
8524
8624
  var Statement$6 = EmptyStatement;
8525
8625
  var Statement$7 = LabelledStatement;
8526
- var Statement$8 = $TS($S(ExpressionStatement), function($skip, $loc, $0, $1) {
8527
- if ($1.type === "ObjectExpression" || $1.type === "FunctionExpression" && !$1.id) {
8528
- return makeLeftHandSideExpression($1);
8529
- }
8530
- return $1;
8531
- });
8626
+ var Statement$8 = CommaExpressionStatement;
8532
8627
  var Statement$9 = BlockStatement;
8533
8628
  var Statement$$ = [Statement$0, Statement$1, Statement$2, Statement$3, Statement$4, Statement$5, Statement$6, Statement$7, Statement$8, Statement$9];
8534
8629
  function Statement(ctx, state) {
8535
8630
  return $EVENT_C(ctx, state, "Statement", Statement$$);
8536
8631
  }
8632
+ var NoCommaStatement$0 = KeywordStatement;
8633
+ var NoCommaStatement$1 = VariableStatement;
8634
+ var NoCommaStatement$2 = IfStatement;
8635
+ var NoCommaStatement$3 = IterationStatement;
8636
+ var NoCommaStatement$4 = SwitchStatement;
8637
+ var NoCommaStatement$5 = TryStatement;
8638
+ var NoCommaStatement$6 = EmptyStatement;
8639
+ var NoCommaStatement$7 = LabelledStatement;
8640
+ var NoCommaStatement$8 = ExpressionStatement;
8641
+ var NoCommaStatement$9 = BlockStatement;
8642
+ var NoCommaStatement$$ = [NoCommaStatement$0, NoCommaStatement$1, NoCommaStatement$2, NoCommaStatement$3, NoCommaStatement$4, NoCommaStatement$5, NoCommaStatement$6, NoCommaStatement$7, NoCommaStatement$8, NoCommaStatement$9];
8643
+ function NoCommaStatement(ctx, state) {
8644
+ return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
8645
+ }
8537
8646
  var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L99, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
8538
8647
  return { type: "EmptyStatement", children: $1 || [] };
8539
8648
  });
@@ -9012,14 +9121,14 @@ ${input.slice(result.pos)}
9012
9121
  function CoffeeForDeclaration(ctx, state) {
9013
9122
  return $EVENT(ctx, state, "CoffeeForDeclaration", CoffeeForDeclaration$0);
9014
9123
  }
9015
- var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E(Expression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9124
+ var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E(CommaExpression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9016
9125
  var declaration = $3;
9017
9126
  return {
9018
9127
  declaration,
9019
9128
  children: $0
9020
9129
  };
9021
9130
  });
9022
- var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9131
+ var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9023
9132
  var declaration = $3;
9024
9133
  return {
9025
9134
  declaration,
@@ -9595,8 +9704,18 @@ ${input.slice(result.pos)}
9595
9704
  function RestoreAll(ctx, state) {
9596
9705
  return $EVENT(ctx, state, "RestoreAll", RestoreAll$0);
9597
9706
  }
9707
+ var CommaExpressionStatement$0 = IterationExpression;
9708
+ var CommaExpressionStatement$1 = $TS($S(CommaExpression), function($skip, $loc, $0, $1) {
9709
+ return makeExpressionStatement($1);
9710
+ });
9711
+ var CommaExpressionStatement$$ = [CommaExpressionStatement$0, CommaExpressionStatement$1];
9712
+ function CommaExpressionStatement(ctx, state) {
9713
+ return $EVENT_C(ctx, state, "CommaExpressionStatement", CommaExpressionStatement$$);
9714
+ }
9598
9715
  var ExpressionStatement$0 = IterationExpression;
9599
- var ExpressionStatement$1 = Expression;
9716
+ var ExpressionStatement$1 = $TS($S(AssignmentExpression), function($skip, $loc, $0, $1) {
9717
+ return makeExpressionStatement($1);
9718
+ });
9600
9719
  var ExpressionStatement$$ = [ExpressionStatement$0, ExpressionStatement$1];
9601
9720
  function ExpressionStatement(ctx, state) {
9602
9721
  return $EVENT_C(ctx, state, "ExpressionStatement", ExpressionStatement$$);
@@ -12230,7 +12349,7 @@ ${input.slice(result.pos)}
12230
12349
  args
12231
12350
  };
12232
12351
  });
12233
- var TypePrimary$8 = $S(__, OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12352
+ var TypePrimary$8 = $S($E(_), OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12234
12353
  var TypePrimary$$ = [TypePrimary$0, TypePrimary$1, TypePrimary$2, TypePrimary$3, TypePrimary$4, TypePrimary$5, TypePrimary$6, TypePrimary$7, TypePrimary$8];
12235
12354
  function TypePrimary(ctx, state) {
12236
12355
  return $EVENT_C(ctx, state, "TypePrimary", TypePrimary$$);
@@ -13119,6 +13238,7 @@ ${input.slice(result.pos)}
13119
13238
  exports.NestedTopLevelStatements = NestedTopLevelStatements;
13120
13239
  exports.TopLevelSingleLineStatements = TopLevelSingleLineStatements;
13121
13240
  exports.TopLevelStatement = TopLevelStatement;
13241
+ exports.ExtendedCommaExpression = ExtendedCommaExpression;
13122
13242
  exports.ExtendedExpression = ExtendedExpression;
13123
13243
  exports.SingleLineExtendedExpression = SingleLineExtendedExpression;
13124
13244
  exports.NonPipelineExtendedExpression = NonPipelineExtendedExpression;
@@ -13127,7 +13247,7 @@ ${input.slice(result.pos)}
13127
13247
  exports.ExpressionizedStatementWithTrailingCallExpressions = ExpressionizedStatementWithTrailingCallExpressions;
13128
13248
  exports.ExpressionizedStatement = ExpressionizedStatement;
13129
13249
  exports._ExpressionizedStatement = _ExpressionizedStatement;
13130
- exports.Expression = Expression;
13250
+ exports.CommaExpression = CommaExpression;
13131
13251
  exports.Arguments = Arguments;
13132
13252
  exports.ImplicitArguments = ImplicitArguments;
13133
13253
  exports.ExplicitArguments = ExplicitArguments;
@@ -13272,15 +13392,18 @@ ${input.slice(result.pos)}
13272
13392
  exports.BareBlock = BareBlock;
13273
13393
  exports.ThenClause = ThenClause;
13274
13394
  exports.BracedOrEmptyBlock = BracedOrEmptyBlock;
13395
+ exports.NoCommaBracedOrEmptyBlock = NoCommaBracedOrEmptyBlock;
13275
13396
  exports.NoPostfixBracedOrEmptyBlock = NoPostfixBracedOrEmptyBlock;
13276
13397
  exports.EmptyBlock = EmptyBlock;
13277
13398
  exports.EmptyBareBlock = EmptyBareBlock;
13278
13399
  exports.BracedBlock = BracedBlock;
13279
13400
  exports.NoPostfixBracedBlock = NoPostfixBracedBlock;
13401
+ exports.NoCommaBracedBlock = NoCommaBracedBlock;
13280
13402
  exports.NonSingleBracedBlock = NonSingleBracedBlock;
13281
13403
  exports.DeclarationOrStatement = DeclarationOrStatement;
13282
13404
  exports.SingleLineStatements = SingleLineStatements;
13283
13405
  exports.PostfixedSingleLineStatements = PostfixedSingleLineStatements;
13406
+ exports.PostfixedSingleLineNoCommaStatements = PostfixedSingleLineNoCommaStatements;
13284
13407
  exports.BracedContent = BracedContent;
13285
13408
  exports.NestedBlockStatements = NestedBlockStatements;
13286
13409
  exports.NestedBlockStatement = NestedBlockStatement;
@@ -13348,11 +13471,15 @@ ${input.slice(result.pos)}
13348
13471
  exports.ModuleItem = ModuleItem;
13349
13472
  exports.StatementListItem = StatementListItem;
13350
13473
  exports.PostfixedStatement = PostfixedStatement;
13474
+ exports.NoCommaStatementListItem = NoCommaStatementListItem;
13475
+ exports.PostfixedNoCommaStatement = PostfixedNoCommaStatement;
13351
13476
  exports.PostfixedExpression = PostfixedExpression;
13477
+ exports.PostfixedCommaExpression = PostfixedCommaExpression;
13352
13478
  exports.NonPipelinePostfixedExpression = NonPipelinePostfixedExpression;
13353
13479
  exports.PostfixStatement = PostfixStatement;
13354
13480
  exports._PostfixStatement = _PostfixStatement;
13355
13481
  exports.Statement = Statement;
13482
+ exports.NoCommaStatement = NoCommaStatement;
13356
13483
  exports.EmptyStatement = EmptyStatement;
13357
13484
  exports.BlockStatement = BlockStatement;
13358
13485
  exports.LabelledStatement = LabelledStatement;
@@ -13436,6 +13563,7 @@ ${input.slice(result.pos)}
13436
13563
  exports.NewlineBinaryOpAllowed = NewlineBinaryOpAllowed;
13437
13564
  exports.AllowAll = AllowAll;
13438
13565
  exports.RestoreAll = RestoreAll;
13566
+ exports.CommaExpressionStatement = CommaExpressionStatement;
13439
13567
  exports.ExpressionStatement = ExpressionStatement;
13440
13568
  exports.KeywordStatement = KeywordStatement;
13441
13569
  exports.DebuggerStatement = DebuggerStatement;
@@ -13825,6 +13953,7 @@ ${input.slice(result.pos)}
13825
13953
  lastAccessInCallExpression,
13826
13954
  literalValue,
13827
13955
  makeEmptyBlock,
13956
+ makeExpressionStatement,
13828
13957
  makeGetterMethod,
13829
13958
  makeLeftHandSideExpression,
13830
13959
  makeRef,
package/dist/main.js CHANGED
@@ -2051,6 +2051,20 @@ var require_lib = __commonJS({
2051
2051
  implicit: true
2052
2052
  });
2053
2053
  }
2054
+ function makeExpressionStatement(expression) {
2055
+ if (Array.isArray(expression) && expression[1]?.[0]?.[0]?.[1]?.token === ",") {
2056
+ return [
2057
+ makeExpressionStatement(expression[0]),
2058
+ expression[1].map(([comma, exp]) => {
2059
+ return [comma, makeExpressionStatement(exp)];
2060
+ })
2061
+ ];
2062
+ } else if (expression?.type === "ObjectExpression" || expression?.type === "FunctionExpression" && !expression.id) {
2063
+ return makeLeftHandSideExpression(expression);
2064
+ } else {
2065
+ return expression;
2066
+ }
2067
+ }
2054
2068
  function modifyString(str) {
2055
2069
  return str.replace(/(^.?|[^\\]{2})(\\\\)*\n/g, "$1$2\\n");
2056
2070
  }
@@ -3684,6 +3698,7 @@ var require_lib = __commonJS({
3684
3698
  literalValue,
3685
3699
  makeAsConst,
3686
3700
  makeEmptyBlock,
3701
+ makeExpressionStatement,
3687
3702
  makeGetterMethod,
3688
3703
  makeLeftHandSideExpression,
3689
3704
  makeRef,
@@ -3748,6 +3763,7 @@ var require_parser = __commonJS({
3748
3763
  NestedTopLevelStatements,
3749
3764
  TopLevelSingleLineStatements,
3750
3765
  TopLevelStatement,
3766
+ ExtendedCommaExpression,
3751
3767
  ExtendedExpression,
3752
3768
  SingleLineExtendedExpression,
3753
3769
  NonPipelineExtendedExpression,
@@ -3756,7 +3772,7 @@ var require_parser = __commonJS({
3756
3772
  ExpressionizedStatementWithTrailingCallExpressions,
3757
3773
  ExpressionizedStatement,
3758
3774
  _ExpressionizedStatement,
3759
- Expression,
3775
+ CommaExpression,
3760
3776
  Arguments,
3761
3777
  ImplicitArguments,
3762
3778
  ExplicitArguments,
@@ -3901,15 +3917,18 @@ var require_parser = __commonJS({
3901
3917
  BareBlock,
3902
3918
  ThenClause,
3903
3919
  BracedOrEmptyBlock,
3920
+ NoCommaBracedOrEmptyBlock,
3904
3921
  NoPostfixBracedOrEmptyBlock,
3905
3922
  EmptyBlock,
3906
3923
  EmptyBareBlock,
3907
3924
  BracedBlock,
3908
3925
  NoPostfixBracedBlock,
3926
+ NoCommaBracedBlock,
3909
3927
  NonSingleBracedBlock,
3910
3928
  DeclarationOrStatement,
3911
3929
  SingleLineStatements,
3912
3930
  PostfixedSingleLineStatements,
3931
+ PostfixedSingleLineNoCommaStatements,
3913
3932
  BracedContent,
3914
3933
  NestedBlockStatements,
3915
3934
  NestedBlockStatement,
@@ -3977,11 +3996,15 @@ var require_parser = __commonJS({
3977
3996
  ModuleItem,
3978
3997
  StatementListItem,
3979
3998
  PostfixedStatement,
3999
+ NoCommaStatementListItem,
4000
+ PostfixedNoCommaStatement,
3980
4001
  PostfixedExpression,
4002
+ PostfixedCommaExpression,
3981
4003
  NonPipelinePostfixedExpression,
3982
4004
  PostfixStatement,
3983
4005
  _PostfixStatement,
3984
4006
  Statement,
4007
+ NoCommaStatement,
3985
4008
  EmptyStatement,
3986
4009
  BlockStatement,
3987
4010
  LabelledStatement,
@@ -4065,6 +4088,7 @@ var require_parser = __commonJS({
4065
4088
  NewlineBinaryOpAllowed,
4066
4089
  AllowAll,
4067
4090
  RestoreAll,
4091
+ CommaExpressionStatement,
4068
4092
  ExpressionStatement,
4069
4093
  KeywordStatement,
4070
4094
  DebuggerStatement,
@@ -4801,6 +4825,12 @@ var require_parser = __commonJS({
4801
4825
  function TopLevelStatement(ctx, state) {
4802
4826
  return $EVENT(ctx, state, "TopLevelStatement", TopLevelStatement$0);
4803
4827
  }
4828
+ var ExtendedCommaExpression$0 = NonAssignmentExtendedExpression;
4829
+ var ExtendedCommaExpression$1 = CommaExpression;
4830
+ var ExtendedCommaExpression$$ = [ExtendedCommaExpression$0, ExtendedCommaExpression$1];
4831
+ function ExtendedCommaExpression(ctx, state) {
4832
+ return $EVENT_C(ctx, state, "ExtendedCommaExpression", ExtendedCommaExpression$$);
4833
+ }
4804
4834
  var ExtendedExpression$0 = NonAssignmentExtendedExpression;
4805
4835
  var ExtendedExpression$1 = AssignmentExpression;
4806
4836
  var ExtendedExpression$$ = [ExtendedExpression$0, ExtendedExpression$1];
@@ -4879,13 +4909,13 @@ var require_parser = __commonJS({
4879
4909
  function _ExpressionizedStatement(ctx, state) {
4880
4910
  return $EVENT_C(ctx, state, "_ExpressionizedStatement", _ExpressionizedStatement$$);
4881
4911
  }
4882
- var Expression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4912
+ var CommaExpression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4883
4913
  if ($2.length == 0)
4884
4914
  return $1;
4885
4915
  return $0;
4886
4916
  });
4887
- function Expression(ctx, state) {
4888
- return $EVENT(ctx, state, "Expression", Expression$0);
4917
+ function CommaExpression(ctx, state) {
4918
+ return $EVENT(ctx, state, "CommaExpression", CommaExpression$0);
4889
4919
  }
4890
4920
  var Arguments$0 = ExplicitArguments;
4891
4921
  var Arguments$1 = $TS($S(ForbidTrailingMemberProperty, $E(ImplicitArguments), RestoreTrailingMemberProperty), function($skip, $loc, $0, $1, $2, $3) {
@@ -5294,7 +5324,7 @@ var require_parser = __commonJS({
5294
5324
  var exp = value[1];
5295
5325
  return exp;
5296
5326
  });
5297
- var FatArrowBody$1 = BracedOrEmptyBlock;
5327
+ var FatArrowBody$1 = NoCommaBracedOrEmptyBlock;
5298
5328
  var FatArrowBody$$ = [FatArrowBody$0, FatArrowBody$1];
5299
5329
  function FatArrowBody(ctx, state) {
5300
5330
  return $EVENT_C(ctx, state, "FatArrowBody", FatArrowBody$$);
@@ -5406,7 +5436,7 @@ var require_parser = __commonJS({
5406
5436
  function PrimaryExpression(ctx, state) {
5407
5437
  return $EVENT_C(ctx, state, "PrimaryExpression", PrimaryExpression$$);
5408
5438
  }
5409
- var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5439
+ var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedCommaExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5410
5440
  var open = $1;
5411
5441
  if (!$3)
5412
5442
  return $skip;
@@ -6800,7 +6830,7 @@ var require_parser = __commonJS({
6800
6830
  function AmpersandUnaryPrefix(ctx, state) {
6801
6831
  return $EVENT(ctx, state, "AmpersandUnaryPrefix", AmpersandUnaryPrefix$0);
6802
6832
  }
6803
- var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, BracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6833
+ var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, NoCommaBracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6804
6834
  var async = $1;
6805
6835
  var parameters = $2;
6806
6836
  var suffix = $3;
@@ -6942,6 +6972,12 @@ var require_parser = __commonJS({
6942
6972
  function BracedOrEmptyBlock(ctx, state) {
6943
6973
  return $EVENT_C(ctx, state, "BracedOrEmptyBlock", BracedOrEmptyBlock$$);
6944
6974
  }
6975
+ var NoCommaBracedOrEmptyBlock$0 = NoCommaBracedBlock;
6976
+ var NoCommaBracedOrEmptyBlock$1 = EmptyBlock;
6977
+ var NoCommaBracedOrEmptyBlock$$ = [NoCommaBracedOrEmptyBlock$0, NoCommaBracedOrEmptyBlock$1];
6978
+ function NoCommaBracedOrEmptyBlock(ctx, state) {
6979
+ return $EVENT_C(ctx, state, "NoCommaBracedOrEmptyBlock", NoCommaBracedOrEmptyBlock$$);
6980
+ }
6945
6981
  var NoPostfixBracedOrEmptyBlock$0 = NoPostfixBracedBlock;
6946
6982
  var NoPostfixBracedOrEmptyBlock$1 = EmptyBlock;
6947
6983
  var NoPostfixBracedOrEmptyBlock$$ = [NoPostfixBracedOrEmptyBlock$0, NoPostfixBracedOrEmptyBlock$1];
@@ -7011,6 +7047,25 @@ var require_parser = __commonJS({
7011
7047
  function NoPostfixBracedBlock(ctx, state) {
7012
7048
  return $EVENT_C(ctx, state, "NoPostfixBracedBlock", NoPostfixBracedBlock$$);
7013
7049
  }
7050
+ var NoCommaBracedBlock$0 = NonSingleBracedBlock;
7051
+ var NoCommaBracedBlock$1 = $TS($S(InsertOpenBrace, $N(EOS), PostfixedSingleLineNoCommaStatements, InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7052
+ var o = $1;
7053
+ var s = $3;
7054
+ var ws = $4;
7055
+ var c = $5;
7056
+ if (!s.children.length)
7057
+ return $skip;
7058
+ return {
7059
+ type: "BlockStatement",
7060
+ expressions: s.expressions,
7061
+ // Remove !EOS assertion
7062
+ children: [o, s.children, ws, c]
7063
+ };
7064
+ });
7065
+ var NoCommaBracedBlock$$ = [NoCommaBracedBlock$0, NoCommaBracedBlock$1];
7066
+ function NoCommaBracedBlock(ctx, state) {
7067
+ return $EVENT_C(ctx, state, "NoCommaBracedBlock", NoCommaBracedBlock$$);
7068
+ }
7014
7069
  var NonSingleBracedBlock$0 = $TS($S($E(_), OpenBrace, AllowAll, $E($S(BracedContent, __, CloseBrace)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7015
7070
  var ws1 = $1;
7016
7071
  var open = $2;
@@ -7078,6 +7133,22 @@ var require_parser = __commonJS({
7078
7133
  function PostfixedSingleLineStatements(ctx, state) {
7079
7134
  return $EVENT(ctx, state, "PostfixedSingleLineStatements", PostfixedSingleLineStatements$0);
7080
7135
  }
7136
+ var PostfixedSingleLineNoCommaStatements$0 = $TS($S($Q($S($S($E(_), $N(EOS)), NoCommaStatementListItem, SemicolonDelimiter)), $E($S($S($E(_), $N(EOS)), NoCommaStatementListItem, $E(SemicolonDelimiter)))), function($skip, $loc, $0, $1, $2) {
7137
+ var stmts = $1;
7138
+ var last = $2;
7139
+ const children = [...stmts];
7140
+ if (last)
7141
+ children.push(last);
7142
+ return {
7143
+ type: "BlockStatement",
7144
+ expressions: children,
7145
+ children,
7146
+ bare: true
7147
+ };
7148
+ });
7149
+ function PostfixedSingleLineNoCommaStatements(ctx, state) {
7150
+ return $EVENT(ctx, state, "PostfixedSingleLineNoCommaStatements", PostfixedSingleLineNoCommaStatements$0);
7151
+ }
7081
7152
  var BracedContent$0 = NestedBlockStatements;
7082
7153
  var BracedContent$1 = SingleLineStatements;
7083
7154
  var BracedContent$2 = $TV($Y($S(__, $EXPECT($L25, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
@@ -8472,6 +8543,22 @@ var require_parser = __commonJS({
8472
8543
  function PostfixedStatement(ctx, state) {
8473
8544
  return $EVENT(ctx, state, "PostfixedStatement", PostfixedStatement$0);
8474
8545
  }
8546
+ var NoCommaStatementListItem$0 = Declaration;
8547
+ var NoCommaStatementListItem$1 = PostfixedNoCommaStatement;
8548
+ var NoCommaStatementListItem$$ = [NoCommaStatementListItem$0, NoCommaStatementListItem$1];
8549
+ function NoCommaStatementListItem(ctx, state) {
8550
+ return $EVENT_C(ctx, state, "NoCommaStatementListItem", NoCommaStatementListItem$$);
8551
+ }
8552
+ var PostfixedNoCommaStatement$0 = $TS($S(NoCommaStatement, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8553
+ var statement = $1;
8554
+ var post = $2;
8555
+ if (post)
8556
+ return addPostfixStatement(statement, ...post);
8557
+ return statement;
8558
+ });
8559
+ function PostfixedNoCommaStatement(ctx, state) {
8560
+ return $EVENT(ctx, state, "PostfixedNoCommaStatement", PostfixedNoCommaStatement$0);
8561
+ }
8475
8562
  var PostfixedExpression$0 = $TS($S(ExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8476
8563
  var expression = $1;
8477
8564
  var post = $2;
@@ -8482,6 +8569,19 @@ var require_parser = __commonJS({
8482
8569
  function PostfixedExpression(ctx, state) {
8483
8570
  return $EVENT(ctx, state, "PostfixedExpression", PostfixedExpression$0);
8484
8571
  }
8572
+ var PostfixedCommaExpression$0 = $TS($S(PostfixedExpression, $C($S($E(_), PostfixStatement), $Q($S(CommaDelimiter, AssignmentExpression)))), function($skip, $loc, $0, $1, $2) {
8573
+ var expression = $1;
8574
+ var post = $2;
8575
+ if (!post.length)
8576
+ return $1;
8577
+ if (post.length === 2 && !Array.isArray(post[1])) {
8578
+ return attachPostfixStatementAsExpression(expression, post);
8579
+ }
8580
+ return $0;
8581
+ });
8582
+ function PostfixedCommaExpression(ctx, state) {
8583
+ return $EVENT(ctx, state, "PostfixedCommaExpression", PostfixedCommaExpression$0);
8584
+ }
8485
8585
  var NonPipelinePostfixedExpression$0 = $TS($S(NonPipelineExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8486
8586
  var expression = $1;
8487
8587
  var post = $2;
@@ -8515,17 +8615,26 @@ var require_parser = __commonJS({
8515
8615
  var Statement$5 = TryStatement;
8516
8616
  var Statement$6 = EmptyStatement;
8517
8617
  var Statement$7 = LabelledStatement;
8518
- var Statement$8 = $TS($S(ExpressionStatement), function($skip, $loc, $0, $1) {
8519
- if ($1.type === "ObjectExpression" || $1.type === "FunctionExpression" && !$1.id) {
8520
- return makeLeftHandSideExpression($1);
8521
- }
8522
- return $1;
8523
- });
8618
+ var Statement$8 = CommaExpressionStatement;
8524
8619
  var Statement$9 = BlockStatement;
8525
8620
  var Statement$$ = [Statement$0, Statement$1, Statement$2, Statement$3, Statement$4, Statement$5, Statement$6, Statement$7, Statement$8, Statement$9];
8526
8621
  function Statement(ctx, state) {
8527
8622
  return $EVENT_C(ctx, state, "Statement", Statement$$);
8528
8623
  }
8624
+ var NoCommaStatement$0 = KeywordStatement;
8625
+ var NoCommaStatement$1 = VariableStatement;
8626
+ var NoCommaStatement$2 = IfStatement;
8627
+ var NoCommaStatement$3 = IterationStatement;
8628
+ var NoCommaStatement$4 = SwitchStatement;
8629
+ var NoCommaStatement$5 = TryStatement;
8630
+ var NoCommaStatement$6 = EmptyStatement;
8631
+ var NoCommaStatement$7 = LabelledStatement;
8632
+ var NoCommaStatement$8 = ExpressionStatement;
8633
+ var NoCommaStatement$9 = BlockStatement;
8634
+ var NoCommaStatement$$ = [NoCommaStatement$0, NoCommaStatement$1, NoCommaStatement$2, NoCommaStatement$3, NoCommaStatement$4, NoCommaStatement$5, NoCommaStatement$6, NoCommaStatement$7, NoCommaStatement$8, NoCommaStatement$9];
8635
+ function NoCommaStatement(ctx, state) {
8636
+ return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
8637
+ }
8529
8638
  var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L99, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
8530
8639
  return { type: "EmptyStatement", children: $1 || [] };
8531
8640
  });
@@ -9004,14 +9113,14 @@ var require_parser = __commonJS({
9004
9113
  function CoffeeForDeclaration(ctx, state) {
9005
9114
  return $EVENT(ctx, state, "CoffeeForDeclaration", CoffeeForDeclaration$0);
9006
9115
  }
9007
- var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E(Expression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9116
+ var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E(CommaExpression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9008
9117
  var declaration = $3;
9009
9118
  return {
9010
9119
  declaration,
9011
9120
  children: $0
9012
9121
  };
9013
9122
  });
9014
- var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9123
+ var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9015
9124
  var declaration = $3;
9016
9125
  return {
9017
9126
  declaration,
@@ -9587,8 +9696,18 @@ var require_parser = __commonJS({
9587
9696
  function RestoreAll(ctx, state) {
9588
9697
  return $EVENT(ctx, state, "RestoreAll", RestoreAll$0);
9589
9698
  }
9699
+ var CommaExpressionStatement$0 = IterationExpression;
9700
+ var CommaExpressionStatement$1 = $TS($S(CommaExpression), function($skip, $loc, $0, $1) {
9701
+ return makeExpressionStatement($1);
9702
+ });
9703
+ var CommaExpressionStatement$$ = [CommaExpressionStatement$0, CommaExpressionStatement$1];
9704
+ function CommaExpressionStatement(ctx, state) {
9705
+ return $EVENT_C(ctx, state, "CommaExpressionStatement", CommaExpressionStatement$$);
9706
+ }
9590
9707
  var ExpressionStatement$0 = IterationExpression;
9591
- var ExpressionStatement$1 = Expression;
9708
+ var ExpressionStatement$1 = $TS($S(AssignmentExpression), function($skip, $loc, $0, $1) {
9709
+ return makeExpressionStatement($1);
9710
+ });
9592
9711
  var ExpressionStatement$$ = [ExpressionStatement$0, ExpressionStatement$1];
9593
9712
  function ExpressionStatement(ctx, state) {
9594
9713
  return $EVENT_C(ctx, state, "ExpressionStatement", ExpressionStatement$$);
@@ -12222,7 +12341,7 @@ var require_parser = __commonJS({
12222
12341
  args
12223
12342
  };
12224
12343
  });
12225
- var TypePrimary$8 = $S(__, OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12344
+ var TypePrimary$8 = $S($E(_), OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12226
12345
  var TypePrimary$$ = [TypePrimary$0, TypePrimary$1, TypePrimary$2, TypePrimary$3, TypePrimary$4, TypePrimary$5, TypePrimary$6, TypePrimary$7, TypePrimary$8];
12227
12346
  function TypePrimary(ctx, state) {
12228
12347
  return $EVENT_C(ctx, state, "TypePrimary", TypePrimary$$);
@@ -13111,6 +13230,7 @@ var require_parser = __commonJS({
13111
13230
  exports.NestedTopLevelStatements = NestedTopLevelStatements;
13112
13231
  exports.TopLevelSingleLineStatements = TopLevelSingleLineStatements;
13113
13232
  exports.TopLevelStatement = TopLevelStatement;
13233
+ exports.ExtendedCommaExpression = ExtendedCommaExpression;
13114
13234
  exports.ExtendedExpression = ExtendedExpression;
13115
13235
  exports.SingleLineExtendedExpression = SingleLineExtendedExpression;
13116
13236
  exports.NonPipelineExtendedExpression = NonPipelineExtendedExpression;
@@ -13119,7 +13239,7 @@ var require_parser = __commonJS({
13119
13239
  exports.ExpressionizedStatementWithTrailingCallExpressions = ExpressionizedStatementWithTrailingCallExpressions;
13120
13240
  exports.ExpressionizedStatement = ExpressionizedStatement;
13121
13241
  exports._ExpressionizedStatement = _ExpressionizedStatement;
13122
- exports.Expression = Expression;
13242
+ exports.CommaExpression = CommaExpression;
13123
13243
  exports.Arguments = Arguments;
13124
13244
  exports.ImplicitArguments = ImplicitArguments;
13125
13245
  exports.ExplicitArguments = ExplicitArguments;
@@ -13264,15 +13384,18 @@ var require_parser = __commonJS({
13264
13384
  exports.BareBlock = BareBlock;
13265
13385
  exports.ThenClause = ThenClause;
13266
13386
  exports.BracedOrEmptyBlock = BracedOrEmptyBlock;
13387
+ exports.NoCommaBracedOrEmptyBlock = NoCommaBracedOrEmptyBlock;
13267
13388
  exports.NoPostfixBracedOrEmptyBlock = NoPostfixBracedOrEmptyBlock;
13268
13389
  exports.EmptyBlock = EmptyBlock;
13269
13390
  exports.EmptyBareBlock = EmptyBareBlock;
13270
13391
  exports.BracedBlock = BracedBlock;
13271
13392
  exports.NoPostfixBracedBlock = NoPostfixBracedBlock;
13393
+ exports.NoCommaBracedBlock = NoCommaBracedBlock;
13272
13394
  exports.NonSingleBracedBlock = NonSingleBracedBlock;
13273
13395
  exports.DeclarationOrStatement = DeclarationOrStatement;
13274
13396
  exports.SingleLineStatements = SingleLineStatements;
13275
13397
  exports.PostfixedSingleLineStatements = PostfixedSingleLineStatements;
13398
+ exports.PostfixedSingleLineNoCommaStatements = PostfixedSingleLineNoCommaStatements;
13276
13399
  exports.BracedContent = BracedContent;
13277
13400
  exports.NestedBlockStatements = NestedBlockStatements;
13278
13401
  exports.NestedBlockStatement = NestedBlockStatement;
@@ -13340,11 +13463,15 @@ var require_parser = __commonJS({
13340
13463
  exports.ModuleItem = ModuleItem;
13341
13464
  exports.StatementListItem = StatementListItem;
13342
13465
  exports.PostfixedStatement = PostfixedStatement;
13466
+ exports.NoCommaStatementListItem = NoCommaStatementListItem;
13467
+ exports.PostfixedNoCommaStatement = PostfixedNoCommaStatement;
13343
13468
  exports.PostfixedExpression = PostfixedExpression;
13469
+ exports.PostfixedCommaExpression = PostfixedCommaExpression;
13344
13470
  exports.NonPipelinePostfixedExpression = NonPipelinePostfixedExpression;
13345
13471
  exports.PostfixStatement = PostfixStatement;
13346
13472
  exports._PostfixStatement = _PostfixStatement;
13347
13473
  exports.Statement = Statement;
13474
+ exports.NoCommaStatement = NoCommaStatement;
13348
13475
  exports.EmptyStatement = EmptyStatement;
13349
13476
  exports.BlockStatement = BlockStatement;
13350
13477
  exports.LabelledStatement = LabelledStatement;
@@ -13428,6 +13555,7 @@ var require_parser = __commonJS({
13428
13555
  exports.NewlineBinaryOpAllowed = NewlineBinaryOpAllowed;
13429
13556
  exports.AllowAll = AllowAll;
13430
13557
  exports.RestoreAll = RestoreAll;
13558
+ exports.CommaExpressionStatement = CommaExpressionStatement;
13431
13559
  exports.ExpressionStatement = ExpressionStatement;
13432
13560
  exports.KeywordStatement = KeywordStatement;
13433
13561
  exports.DebuggerStatement = DebuggerStatement;
@@ -13817,6 +13945,7 @@ var require_parser = __commonJS({
13817
13945
  lastAccessInCallExpression,
13818
13946
  literalValue,
13819
13947
  makeEmptyBlock,
13948
+ makeExpressionStatement,
13820
13949
  makeGetterMethod,
13821
13950
  makeLeftHandSideExpression,
13822
13951
  makeRef,
package/dist/main.mjs CHANGED
@@ -2049,6 +2049,20 @@ var require_lib = __commonJS({
2049
2049
  implicit: true
2050
2050
  });
2051
2051
  }
2052
+ function makeExpressionStatement(expression) {
2053
+ if (Array.isArray(expression) && expression[1]?.[0]?.[0]?.[1]?.token === ",") {
2054
+ return [
2055
+ makeExpressionStatement(expression[0]),
2056
+ expression[1].map(([comma, exp]) => {
2057
+ return [comma, makeExpressionStatement(exp)];
2058
+ })
2059
+ ];
2060
+ } else if (expression?.type === "ObjectExpression" || expression?.type === "FunctionExpression" && !expression.id) {
2061
+ return makeLeftHandSideExpression(expression);
2062
+ } else {
2063
+ return expression;
2064
+ }
2065
+ }
2052
2066
  function modifyString(str) {
2053
2067
  return str.replace(/(^.?|[^\\]{2})(\\\\)*\n/g, "$1$2\\n");
2054
2068
  }
@@ -3682,6 +3696,7 @@ var require_lib = __commonJS({
3682
3696
  literalValue,
3683
3697
  makeAsConst,
3684
3698
  makeEmptyBlock,
3699
+ makeExpressionStatement,
3685
3700
  makeGetterMethod,
3686
3701
  makeLeftHandSideExpression,
3687
3702
  makeRef,
@@ -3746,6 +3761,7 @@ var require_parser = __commonJS({
3746
3761
  NestedTopLevelStatements,
3747
3762
  TopLevelSingleLineStatements,
3748
3763
  TopLevelStatement,
3764
+ ExtendedCommaExpression,
3749
3765
  ExtendedExpression,
3750
3766
  SingleLineExtendedExpression,
3751
3767
  NonPipelineExtendedExpression,
@@ -3754,7 +3770,7 @@ var require_parser = __commonJS({
3754
3770
  ExpressionizedStatementWithTrailingCallExpressions,
3755
3771
  ExpressionizedStatement,
3756
3772
  _ExpressionizedStatement,
3757
- Expression,
3773
+ CommaExpression,
3758
3774
  Arguments,
3759
3775
  ImplicitArguments,
3760
3776
  ExplicitArguments,
@@ -3899,15 +3915,18 @@ var require_parser = __commonJS({
3899
3915
  BareBlock,
3900
3916
  ThenClause,
3901
3917
  BracedOrEmptyBlock,
3918
+ NoCommaBracedOrEmptyBlock,
3902
3919
  NoPostfixBracedOrEmptyBlock,
3903
3920
  EmptyBlock,
3904
3921
  EmptyBareBlock,
3905
3922
  BracedBlock,
3906
3923
  NoPostfixBracedBlock,
3924
+ NoCommaBracedBlock,
3907
3925
  NonSingleBracedBlock,
3908
3926
  DeclarationOrStatement,
3909
3927
  SingleLineStatements,
3910
3928
  PostfixedSingleLineStatements,
3929
+ PostfixedSingleLineNoCommaStatements,
3911
3930
  BracedContent,
3912
3931
  NestedBlockStatements,
3913
3932
  NestedBlockStatement,
@@ -3975,11 +3994,15 @@ var require_parser = __commonJS({
3975
3994
  ModuleItem,
3976
3995
  StatementListItem,
3977
3996
  PostfixedStatement,
3997
+ NoCommaStatementListItem,
3998
+ PostfixedNoCommaStatement,
3978
3999
  PostfixedExpression,
4000
+ PostfixedCommaExpression,
3979
4001
  NonPipelinePostfixedExpression,
3980
4002
  PostfixStatement,
3981
4003
  _PostfixStatement,
3982
4004
  Statement,
4005
+ NoCommaStatement,
3983
4006
  EmptyStatement,
3984
4007
  BlockStatement,
3985
4008
  LabelledStatement,
@@ -4063,6 +4086,7 @@ var require_parser = __commonJS({
4063
4086
  NewlineBinaryOpAllowed,
4064
4087
  AllowAll,
4065
4088
  RestoreAll,
4089
+ CommaExpressionStatement,
4066
4090
  ExpressionStatement,
4067
4091
  KeywordStatement,
4068
4092
  DebuggerStatement,
@@ -4799,6 +4823,12 @@ var require_parser = __commonJS({
4799
4823
  function TopLevelStatement(ctx, state) {
4800
4824
  return $EVENT(ctx, state, "TopLevelStatement", TopLevelStatement$0);
4801
4825
  }
4826
+ var ExtendedCommaExpression$0 = NonAssignmentExtendedExpression;
4827
+ var ExtendedCommaExpression$1 = CommaExpression;
4828
+ var ExtendedCommaExpression$$ = [ExtendedCommaExpression$0, ExtendedCommaExpression$1];
4829
+ function ExtendedCommaExpression(ctx, state) {
4830
+ return $EVENT_C(ctx, state, "ExtendedCommaExpression", ExtendedCommaExpression$$);
4831
+ }
4802
4832
  var ExtendedExpression$0 = NonAssignmentExtendedExpression;
4803
4833
  var ExtendedExpression$1 = AssignmentExpression;
4804
4834
  var ExtendedExpression$$ = [ExtendedExpression$0, ExtendedExpression$1];
@@ -4877,13 +4907,13 @@ var require_parser = __commonJS({
4877
4907
  function _ExpressionizedStatement(ctx, state) {
4878
4908
  return $EVENT_C(ctx, state, "_ExpressionizedStatement", _ExpressionizedStatement$$);
4879
4909
  }
4880
- var Expression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4910
+ var CommaExpression$0 = $TS($S(AssignmentExpression, $Q($S(CommaDelimiter, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
4881
4911
  if ($2.length == 0)
4882
4912
  return $1;
4883
4913
  return $0;
4884
4914
  });
4885
- function Expression(ctx, state) {
4886
- return $EVENT(ctx, state, "Expression", Expression$0);
4915
+ function CommaExpression(ctx, state) {
4916
+ return $EVENT(ctx, state, "CommaExpression", CommaExpression$0);
4887
4917
  }
4888
4918
  var Arguments$0 = ExplicitArguments;
4889
4919
  var Arguments$1 = $TS($S(ForbidTrailingMemberProperty, $E(ImplicitArguments), RestoreTrailingMemberProperty), function($skip, $loc, $0, $1, $2, $3) {
@@ -5292,7 +5322,7 @@ var require_parser = __commonJS({
5292
5322
  var exp = value[1];
5293
5323
  return exp;
5294
5324
  });
5295
- var FatArrowBody$1 = BracedOrEmptyBlock;
5325
+ var FatArrowBody$1 = NoCommaBracedOrEmptyBlock;
5296
5326
  var FatArrowBody$$ = [FatArrowBody$0, FatArrowBody$1];
5297
5327
  function FatArrowBody(ctx, state) {
5298
5328
  return $EVENT_C(ctx, state, "FatArrowBody", FatArrowBody$$);
@@ -5404,7 +5434,7 @@ var require_parser = __commonJS({
5404
5434
  function PrimaryExpression(ctx, state) {
5405
5435
  return $EVENT_C(ctx, state, "PrimaryExpression", PrimaryExpression$$);
5406
5436
  }
5407
- var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5437
+ var ParenthesizedExpression$0 = $TS($S(OpenParen, AllowAll, $E($S(PostfixedCommaExpression, __, CloseParen)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4) {
5408
5438
  var open = $1;
5409
5439
  if (!$3)
5410
5440
  return $skip;
@@ -6798,7 +6828,7 @@ var require_parser = __commonJS({
6798
6828
  function AmpersandUnaryPrefix(ctx, state) {
6799
6829
  return $EVENT(ctx, state, "AmpersandUnaryPrefix", AmpersandUnaryPrefix$0);
6800
6830
  }
6801
- var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, BracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6831
+ var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, NoCommaBracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6802
6832
  var async = $1;
6803
6833
  var parameters = $2;
6804
6834
  var suffix = $3;
@@ -6940,6 +6970,12 @@ var require_parser = __commonJS({
6940
6970
  function BracedOrEmptyBlock(ctx, state) {
6941
6971
  return $EVENT_C(ctx, state, "BracedOrEmptyBlock", BracedOrEmptyBlock$$);
6942
6972
  }
6973
+ var NoCommaBracedOrEmptyBlock$0 = NoCommaBracedBlock;
6974
+ var NoCommaBracedOrEmptyBlock$1 = EmptyBlock;
6975
+ var NoCommaBracedOrEmptyBlock$$ = [NoCommaBracedOrEmptyBlock$0, NoCommaBracedOrEmptyBlock$1];
6976
+ function NoCommaBracedOrEmptyBlock(ctx, state) {
6977
+ return $EVENT_C(ctx, state, "NoCommaBracedOrEmptyBlock", NoCommaBracedOrEmptyBlock$$);
6978
+ }
6943
6979
  var NoPostfixBracedOrEmptyBlock$0 = NoPostfixBracedBlock;
6944
6980
  var NoPostfixBracedOrEmptyBlock$1 = EmptyBlock;
6945
6981
  var NoPostfixBracedOrEmptyBlock$$ = [NoPostfixBracedOrEmptyBlock$0, NoPostfixBracedOrEmptyBlock$1];
@@ -7009,6 +7045,25 @@ var require_parser = __commonJS({
7009
7045
  function NoPostfixBracedBlock(ctx, state) {
7010
7046
  return $EVENT_C(ctx, state, "NoPostfixBracedBlock", NoPostfixBracedBlock$$);
7011
7047
  }
7048
+ var NoCommaBracedBlock$0 = NonSingleBracedBlock;
7049
+ var NoCommaBracedBlock$1 = $TS($S(InsertOpenBrace, $N(EOS), PostfixedSingleLineNoCommaStatements, InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7050
+ var o = $1;
7051
+ var s = $3;
7052
+ var ws = $4;
7053
+ var c = $5;
7054
+ if (!s.children.length)
7055
+ return $skip;
7056
+ return {
7057
+ type: "BlockStatement",
7058
+ expressions: s.expressions,
7059
+ // Remove !EOS assertion
7060
+ children: [o, s.children, ws, c]
7061
+ };
7062
+ });
7063
+ var NoCommaBracedBlock$$ = [NoCommaBracedBlock$0, NoCommaBracedBlock$1];
7064
+ function NoCommaBracedBlock(ctx, state) {
7065
+ return $EVENT_C(ctx, state, "NoCommaBracedBlock", NoCommaBracedBlock$$);
7066
+ }
7012
7067
  var NonSingleBracedBlock$0 = $TS($S($E(_), OpenBrace, AllowAll, $E($S(BracedContent, __, CloseBrace)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7013
7068
  var ws1 = $1;
7014
7069
  var open = $2;
@@ -7076,6 +7131,22 @@ var require_parser = __commonJS({
7076
7131
  function PostfixedSingleLineStatements(ctx, state) {
7077
7132
  return $EVENT(ctx, state, "PostfixedSingleLineStatements", PostfixedSingleLineStatements$0);
7078
7133
  }
7134
+ var PostfixedSingleLineNoCommaStatements$0 = $TS($S($Q($S($S($E(_), $N(EOS)), NoCommaStatementListItem, SemicolonDelimiter)), $E($S($S($E(_), $N(EOS)), NoCommaStatementListItem, $E(SemicolonDelimiter)))), function($skip, $loc, $0, $1, $2) {
7135
+ var stmts = $1;
7136
+ var last = $2;
7137
+ const children = [...stmts];
7138
+ if (last)
7139
+ children.push(last);
7140
+ return {
7141
+ type: "BlockStatement",
7142
+ expressions: children,
7143
+ children,
7144
+ bare: true
7145
+ };
7146
+ });
7147
+ function PostfixedSingleLineNoCommaStatements(ctx, state) {
7148
+ return $EVENT(ctx, state, "PostfixedSingleLineNoCommaStatements", PostfixedSingleLineNoCommaStatements$0);
7149
+ }
7079
7150
  var BracedContent$0 = NestedBlockStatements;
7080
7151
  var BracedContent$1 = SingleLineStatements;
7081
7152
  var BracedContent$2 = $TV($Y($S(__, $EXPECT($L25, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
@@ -8470,6 +8541,22 @@ var require_parser = __commonJS({
8470
8541
  function PostfixedStatement(ctx, state) {
8471
8542
  return $EVENT(ctx, state, "PostfixedStatement", PostfixedStatement$0);
8472
8543
  }
8544
+ var NoCommaStatementListItem$0 = Declaration;
8545
+ var NoCommaStatementListItem$1 = PostfixedNoCommaStatement;
8546
+ var NoCommaStatementListItem$$ = [NoCommaStatementListItem$0, NoCommaStatementListItem$1];
8547
+ function NoCommaStatementListItem(ctx, state) {
8548
+ return $EVENT_C(ctx, state, "NoCommaStatementListItem", NoCommaStatementListItem$$);
8549
+ }
8550
+ var PostfixedNoCommaStatement$0 = $TS($S(NoCommaStatement, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8551
+ var statement = $1;
8552
+ var post = $2;
8553
+ if (post)
8554
+ return addPostfixStatement(statement, ...post);
8555
+ return statement;
8556
+ });
8557
+ function PostfixedNoCommaStatement(ctx, state) {
8558
+ return $EVENT(ctx, state, "PostfixedNoCommaStatement", PostfixedNoCommaStatement$0);
8559
+ }
8473
8560
  var PostfixedExpression$0 = $TS($S(ExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8474
8561
  var expression = $1;
8475
8562
  var post = $2;
@@ -8480,6 +8567,19 @@ var require_parser = __commonJS({
8480
8567
  function PostfixedExpression(ctx, state) {
8481
8568
  return $EVENT(ctx, state, "PostfixedExpression", PostfixedExpression$0);
8482
8569
  }
8570
+ var PostfixedCommaExpression$0 = $TS($S(PostfixedExpression, $C($S($E(_), PostfixStatement), $Q($S(CommaDelimiter, AssignmentExpression)))), function($skip, $loc, $0, $1, $2) {
8571
+ var expression = $1;
8572
+ var post = $2;
8573
+ if (!post.length)
8574
+ return $1;
8575
+ if (post.length === 2 && !Array.isArray(post[1])) {
8576
+ return attachPostfixStatementAsExpression(expression, post);
8577
+ }
8578
+ return $0;
8579
+ });
8580
+ function PostfixedCommaExpression(ctx, state) {
8581
+ return $EVENT(ctx, state, "PostfixedCommaExpression", PostfixedCommaExpression$0);
8582
+ }
8483
8583
  var NonPipelinePostfixedExpression$0 = $TS($S(NonPipelineExtendedExpression, $E($S($E(_), PostfixStatement))), function($skip, $loc, $0, $1, $2) {
8484
8584
  var expression = $1;
8485
8585
  var post = $2;
@@ -8513,17 +8613,26 @@ var require_parser = __commonJS({
8513
8613
  var Statement$5 = TryStatement;
8514
8614
  var Statement$6 = EmptyStatement;
8515
8615
  var Statement$7 = LabelledStatement;
8516
- var Statement$8 = $TS($S(ExpressionStatement), function($skip, $loc, $0, $1) {
8517
- if ($1.type === "ObjectExpression" || $1.type === "FunctionExpression" && !$1.id) {
8518
- return makeLeftHandSideExpression($1);
8519
- }
8520
- return $1;
8521
- });
8616
+ var Statement$8 = CommaExpressionStatement;
8522
8617
  var Statement$9 = BlockStatement;
8523
8618
  var Statement$$ = [Statement$0, Statement$1, Statement$2, Statement$3, Statement$4, Statement$5, Statement$6, Statement$7, Statement$8, Statement$9];
8524
8619
  function Statement(ctx, state) {
8525
8620
  return $EVENT_C(ctx, state, "Statement", Statement$$);
8526
8621
  }
8622
+ var NoCommaStatement$0 = KeywordStatement;
8623
+ var NoCommaStatement$1 = VariableStatement;
8624
+ var NoCommaStatement$2 = IfStatement;
8625
+ var NoCommaStatement$3 = IterationStatement;
8626
+ var NoCommaStatement$4 = SwitchStatement;
8627
+ var NoCommaStatement$5 = TryStatement;
8628
+ var NoCommaStatement$6 = EmptyStatement;
8629
+ var NoCommaStatement$7 = LabelledStatement;
8630
+ var NoCommaStatement$8 = ExpressionStatement;
8631
+ var NoCommaStatement$9 = BlockStatement;
8632
+ var NoCommaStatement$$ = [NoCommaStatement$0, NoCommaStatement$1, NoCommaStatement$2, NoCommaStatement$3, NoCommaStatement$4, NoCommaStatement$5, NoCommaStatement$6, NoCommaStatement$7, NoCommaStatement$8, NoCommaStatement$9];
8633
+ function NoCommaStatement(ctx, state) {
8634
+ return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
8635
+ }
8527
8636
  var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L99, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
8528
8637
  return { type: "EmptyStatement", children: $1 || [] };
8529
8638
  });
@@ -9002,14 +9111,14 @@ var require_parser = __commonJS({
9002
9111
  function CoffeeForDeclaration(ctx, state) {
9003
9112
  return $EVENT(ctx, state, "CoffeeForDeclaration", CoffeeForDeclaration$0);
9004
9113
  }
9005
- var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E(Expression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9114
+ var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E(CommaExpression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
9006
9115
  var declaration = $3;
9007
9116
  return {
9008
9117
  declaration,
9009
9118
  children: $0
9010
9119
  };
9011
9120
  });
9012
- var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9121
+ var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(CommaExpression)), __, Semicolon, $E(CommaExpression), Semicolon, $E($S($N(EOS), ExpressionWithIndentedApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9013
9122
  var declaration = $3;
9014
9123
  return {
9015
9124
  declaration,
@@ -9585,8 +9694,18 @@ var require_parser = __commonJS({
9585
9694
  function RestoreAll(ctx, state) {
9586
9695
  return $EVENT(ctx, state, "RestoreAll", RestoreAll$0);
9587
9696
  }
9697
+ var CommaExpressionStatement$0 = IterationExpression;
9698
+ var CommaExpressionStatement$1 = $TS($S(CommaExpression), function($skip, $loc, $0, $1) {
9699
+ return makeExpressionStatement($1);
9700
+ });
9701
+ var CommaExpressionStatement$$ = [CommaExpressionStatement$0, CommaExpressionStatement$1];
9702
+ function CommaExpressionStatement(ctx, state) {
9703
+ return $EVENT_C(ctx, state, "CommaExpressionStatement", CommaExpressionStatement$$);
9704
+ }
9588
9705
  var ExpressionStatement$0 = IterationExpression;
9589
- var ExpressionStatement$1 = Expression;
9706
+ var ExpressionStatement$1 = $TS($S(AssignmentExpression), function($skip, $loc, $0, $1) {
9707
+ return makeExpressionStatement($1);
9708
+ });
9590
9709
  var ExpressionStatement$$ = [ExpressionStatement$0, ExpressionStatement$1];
9591
9710
  function ExpressionStatement(ctx, state) {
9592
9711
  return $EVENT_C(ctx, state, "ExpressionStatement", ExpressionStatement$$);
@@ -12220,7 +12339,7 @@ var require_parser = __commonJS({
12220
12339
  args
12221
12340
  };
12222
12341
  });
12223
- var TypePrimary$8 = $S(__, OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12342
+ var TypePrimary$8 = $S($E(_), OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
12224
12343
  var TypePrimary$$ = [TypePrimary$0, TypePrimary$1, TypePrimary$2, TypePrimary$3, TypePrimary$4, TypePrimary$5, TypePrimary$6, TypePrimary$7, TypePrimary$8];
12225
12344
  function TypePrimary(ctx, state) {
12226
12345
  return $EVENT_C(ctx, state, "TypePrimary", TypePrimary$$);
@@ -13109,6 +13228,7 @@ var require_parser = __commonJS({
13109
13228
  exports.NestedTopLevelStatements = NestedTopLevelStatements;
13110
13229
  exports.TopLevelSingleLineStatements = TopLevelSingleLineStatements;
13111
13230
  exports.TopLevelStatement = TopLevelStatement;
13231
+ exports.ExtendedCommaExpression = ExtendedCommaExpression;
13112
13232
  exports.ExtendedExpression = ExtendedExpression;
13113
13233
  exports.SingleLineExtendedExpression = SingleLineExtendedExpression;
13114
13234
  exports.NonPipelineExtendedExpression = NonPipelineExtendedExpression;
@@ -13117,7 +13237,7 @@ var require_parser = __commonJS({
13117
13237
  exports.ExpressionizedStatementWithTrailingCallExpressions = ExpressionizedStatementWithTrailingCallExpressions;
13118
13238
  exports.ExpressionizedStatement = ExpressionizedStatement;
13119
13239
  exports._ExpressionizedStatement = _ExpressionizedStatement;
13120
- exports.Expression = Expression;
13240
+ exports.CommaExpression = CommaExpression;
13121
13241
  exports.Arguments = Arguments;
13122
13242
  exports.ImplicitArguments = ImplicitArguments;
13123
13243
  exports.ExplicitArguments = ExplicitArguments;
@@ -13262,15 +13382,18 @@ var require_parser = __commonJS({
13262
13382
  exports.BareBlock = BareBlock;
13263
13383
  exports.ThenClause = ThenClause;
13264
13384
  exports.BracedOrEmptyBlock = BracedOrEmptyBlock;
13385
+ exports.NoCommaBracedOrEmptyBlock = NoCommaBracedOrEmptyBlock;
13265
13386
  exports.NoPostfixBracedOrEmptyBlock = NoPostfixBracedOrEmptyBlock;
13266
13387
  exports.EmptyBlock = EmptyBlock;
13267
13388
  exports.EmptyBareBlock = EmptyBareBlock;
13268
13389
  exports.BracedBlock = BracedBlock;
13269
13390
  exports.NoPostfixBracedBlock = NoPostfixBracedBlock;
13391
+ exports.NoCommaBracedBlock = NoCommaBracedBlock;
13270
13392
  exports.NonSingleBracedBlock = NonSingleBracedBlock;
13271
13393
  exports.DeclarationOrStatement = DeclarationOrStatement;
13272
13394
  exports.SingleLineStatements = SingleLineStatements;
13273
13395
  exports.PostfixedSingleLineStatements = PostfixedSingleLineStatements;
13396
+ exports.PostfixedSingleLineNoCommaStatements = PostfixedSingleLineNoCommaStatements;
13274
13397
  exports.BracedContent = BracedContent;
13275
13398
  exports.NestedBlockStatements = NestedBlockStatements;
13276
13399
  exports.NestedBlockStatement = NestedBlockStatement;
@@ -13338,11 +13461,15 @@ var require_parser = __commonJS({
13338
13461
  exports.ModuleItem = ModuleItem;
13339
13462
  exports.StatementListItem = StatementListItem;
13340
13463
  exports.PostfixedStatement = PostfixedStatement;
13464
+ exports.NoCommaStatementListItem = NoCommaStatementListItem;
13465
+ exports.PostfixedNoCommaStatement = PostfixedNoCommaStatement;
13341
13466
  exports.PostfixedExpression = PostfixedExpression;
13467
+ exports.PostfixedCommaExpression = PostfixedCommaExpression;
13342
13468
  exports.NonPipelinePostfixedExpression = NonPipelinePostfixedExpression;
13343
13469
  exports.PostfixStatement = PostfixStatement;
13344
13470
  exports._PostfixStatement = _PostfixStatement;
13345
13471
  exports.Statement = Statement;
13472
+ exports.NoCommaStatement = NoCommaStatement;
13346
13473
  exports.EmptyStatement = EmptyStatement;
13347
13474
  exports.BlockStatement = BlockStatement;
13348
13475
  exports.LabelledStatement = LabelledStatement;
@@ -13426,6 +13553,7 @@ var require_parser = __commonJS({
13426
13553
  exports.NewlineBinaryOpAllowed = NewlineBinaryOpAllowed;
13427
13554
  exports.AllowAll = AllowAll;
13428
13555
  exports.RestoreAll = RestoreAll;
13556
+ exports.CommaExpressionStatement = CommaExpressionStatement;
13429
13557
  exports.ExpressionStatement = ExpressionStatement;
13430
13558
  exports.KeywordStatement = KeywordStatement;
13431
13559
  exports.DebuggerStatement = DebuggerStatement;
@@ -13815,6 +13943,7 @@ var require_parser = __commonJS({
13815
13943
  lastAccessInCallExpression,
13816
13944
  literalValue,
13817
13945
  makeEmptyBlock,
13946
+ makeExpressionStatement,
13818
13947
  makeGetterMethod,
13819
13948
  makeLeftHandSideExpression,
13820
13949
  makeRef,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@danielx/civet",
3
3
  "type": "commonjs",
4
- "version": "0.6.49",
4
+ "version": "0.6.50",
5
5
  "description": "CoffeeScript style syntax for TypeScript",
6
6
  "main": "dist/main.js",
7
7
  "module": "dist/main.mjs",