@danielx/civet 0.4.19-pre.6 → 0.4.19-pre.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -488,6 +488,8 @@ var require_parser = __commonJS({
488
488
  FunctionExpression,
489
489
  ThinArrowFunction,
490
490
  Arrow,
491
+ ExplicitBlock,
492
+ ImplicitNestedBlock,
491
493
  Block,
492
494
  ThenClause,
493
495
  BracedOrEmptyBlock,
@@ -813,38 +815,38 @@ var require_parser = __commonJS({
813
815
  Reset,
814
816
  Init,
815
817
  Indent,
816
- TrackIndent,
818
+ TrackIndented,
817
819
  Samedent,
818
820
  IndentedFurther,
819
821
  PushIndent,
820
822
  PopIndent,
821
823
  Nested
822
824
  });
823
- var $L0 = $L("");
824
- var $L1 = $L("++");
825
- var $L2 = $L("--");
826
- var $L3 = $L("=>");
827
- var $L4 = $L("<");
828
- var $L5 = $L("extends");
829
- var $L6 = $L("this");
830
- var $L7 = $L("#");
831
- var $L8 = $L(".");
832
- var $L9 = $L("super");
833
- var $L10 = $L("import");
834
- var $L11 = $L("!");
835
- var $L12 = $L("::");
836
- var $L13 = $L("super[");
837
- var $L14 = $L("import.meta");
838
- var $L15 = $L(")");
839
- var $L16 = $L("->");
840
- var $L17 = $L("null");
841
- var $L18 = $L("true");
842
- var $L19 = $L("false");
843
- var $L20 = $L("yes");
844
- var $L21 = $L("on");
845
- var $L22 = $L("no");
846
- var $L23 = $L("off");
847
- var $L24 = $L(",");
825
+ var $L0 = $L(",");
826
+ var $L1 = $L("");
827
+ var $L2 = $L("++");
828
+ var $L3 = $L("--");
829
+ var $L4 = $L("=>");
830
+ var $L5 = $L("<");
831
+ var $L6 = $L("extends");
832
+ var $L7 = $L("this");
833
+ var $L8 = $L("#");
834
+ var $L9 = $L(".");
835
+ var $L10 = $L("super");
836
+ var $L11 = $L("import");
837
+ var $L12 = $L("!");
838
+ var $L13 = $L("::");
839
+ var $L14 = $L("super[");
840
+ var $L15 = $L("import.meta");
841
+ var $L16 = $L(")");
842
+ var $L17 = $L("->");
843
+ var $L18 = $L("null");
844
+ var $L19 = $L("true");
845
+ var $L20 = $L("false");
846
+ var $L21 = $L("yes");
847
+ var $L22 = $L("on");
848
+ var $L23 = $L("no");
849
+ var $L24 = $L("off");
848
850
  var $L25 = $L("]");
849
851
  var $L26 = $L("}");
850
852
  var $L27 = $L("**=");
@@ -1098,11 +1100,7 @@ var require_parser = __commonJS({
1098
1100
  return Arguments$0(state) || Arguments$1(state);
1099
1101
  }
1100
1102
  }
1101
- var ArgumentsWithTrailingCallExpressions$0 = $TS($S(TrackIndent, $C($S(Arguments, $Q($S($Y(EOS), Samedent, $N(Backtick), CallExpressionRest)), PopIndent), PopIndent)), function($skip, $loc, $0, $1, $2) {
1102
- if (!$2)
1103
- return $skip;
1104
- return $2;
1105
- });
1103
+ var ArgumentsWithTrailingCallExpressions$0 = $S(Arguments, $Q($S(Samedent, $N(Backtick), CallExpressionRest)));
1106
1104
  function ArgumentsWithTrailingCallExpressions(state) {
1107
1105
  if (state.verbose)
1108
1106
  console.log("ENTER:", "ArgumentsWithTrailingCallExpressions");
@@ -1112,9 +1110,7 @@ var require_parser = __commonJS({
1112
1110
  return ArgumentsWithTrailingCallExpressions$0(state);
1113
1111
  }
1114
1112
  }
1115
- var ArgumentList$0 = $T($S($Y(EOS), NestedArgumentList), function(value) {
1116
- return value[1];
1117
- });
1113
+ var ArgumentList$0 = NestedArgumentList;
1118
1114
  var ArgumentList$1 = InlineArgumentExpressions;
1119
1115
  function ArgumentList(state) {
1120
1116
  if (state.tokenize) {
@@ -1148,7 +1144,7 @@ var require_parser = __commonJS({
1148
1144
  return NestedArgument$0(state);
1149
1145
  }
1150
1146
  }
1151
- var InlineArgumentExpressions$0 = $TS($S(ArgumentPart, $Q($S(__, Comma, $Q(TrailingComment), ArgumentPart))), function($skip, $loc, $0, $1, $2) {
1147
+ var InlineArgumentExpressions$0 = $TS($S($Q(TrailingComment), ArgumentPart, $Q($S(__, Comma, $Q(TrailingComment), $C(NestedObjectLiteral, ArgumentList)))), function($skip, $loc, $0, $1, $2, $3) {
1152
1148
  if ($2.length == 0)
1153
1149
  return $1;
1154
1150
  return $0;
@@ -1177,28 +1173,28 @@ var require_parser = __commonJS({
1177
1173
  }
1178
1174
  }
1179
1175
  var ImplicitApplication$0 = $S(ApplicationStart, ArgumentList, InsertCloseParen);
1176
+ var ImplicitApplication$1 = $S(IndentedApplicationAllowed, InsertOpenParen, NestedObjectLiteral, $Q($S(__, $EXPECT($L0, fail, 'ImplicitApplication ","'), NestedObjectLiteral)), InsertCloseParen);
1180
1177
  function ImplicitApplication(state) {
1181
- if (state.verbose)
1182
- console.log("ENTER:", "ImplicitApplication");
1183
1178
  if (state.tokenize) {
1184
- return $TOKEN("ImplicitApplication", state, ImplicitApplication$0(state));
1179
+ return $TOKEN("ImplicitApplication", state, ImplicitApplication$0(state) || ImplicitApplication$1(state));
1185
1180
  } else {
1186
- return ImplicitApplication$0(state);
1181
+ return ImplicitApplication$0(state) || ImplicitApplication$1(state);
1187
1182
  }
1188
1183
  }
1189
1184
  var ApplicationStart$0 = $TS($S($N(EOS), _, $N(AdditionalReservedWords)), function($skip, $loc, $0, $1, $2, $3) {
1190
1185
  var spacing = $2;
1191
1186
  return module2.insertTrimmingSpace(spacing, "(");
1192
1187
  });
1193
- var ApplicationStart$1 = $S(IndentedApplicationAllowed, $Y($S(EOS, NestedPropertyDefinitions)), InsertOpenParen);
1194
1188
  function ApplicationStart(state) {
1189
+ if (state.verbose)
1190
+ console.log("ENTER:", "ApplicationStart");
1195
1191
  if (state.tokenize) {
1196
- return $TOKEN("ApplicationStart", state, ApplicationStart$0(state) || ApplicationStart$1(state));
1192
+ return $TOKEN("ApplicationStart", state, ApplicationStart$0(state));
1197
1193
  } else {
1198
- return ApplicationStart$0(state) || ApplicationStart$1(state);
1194
+ return ApplicationStart$0(state);
1199
1195
  }
1200
1196
  }
1201
- var IndentedApplicationAllowed$0 = $TV($EXPECT($L0, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
1197
+ var IndentedApplicationAllowed$0 = $TV($EXPECT($L1, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
1202
1198
  if (module2.suppressIndentedApplication)
1203
1199
  return $skip;
1204
1200
  return;
@@ -1323,7 +1319,7 @@ var require_parser = __commonJS({
1323
1319
  return UpdateExpression$0(state) || UpdateExpression$1(state);
1324
1320
  }
1325
1321
  }
1326
- var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L1, fail, 'UpdateExpressionSymbol "++"'), $EXPECT($L2, fail, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
1322
+ var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L2, fail, 'UpdateExpressionSymbol "++"'), $EXPECT($L3, fail, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
1327
1323
  return { $loc, token: $1 };
1328
1324
  });
1329
1325
  function UpdateExpressionSymbol(state) {
@@ -1485,7 +1481,7 @@ var require_parser = __commonJS({
1485
1481
  return ArrowFunctionTail$0(state) || ArrowFunctionTail$1(state);
1486
1482
  }
1487
1483
  }
1488
- var FatArrow$0 = $TS($S(__, $EXPECT($L3, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
1484
+ var FatArrow$0 = $TS($S(__, $EXPECT($L4, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
1489
1485
  var ws = $1;
1490
1486
  if (!ws.length)
1491
1487
  return " =>";
@@ -1500,14 +1496,8 @@ var require_parser = __commonJS({
1500
1496
  return FatArrow$0(state);
1501
1497
  }
1502
1498
  }
1503
- var FatArrowBody$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace), function(value) {
1504
- var exps = value[3];
1505
- return { "type": "BlockStatement", "expressions": exps, "children": value };
1506
- });
1507
- var FatArrowBody$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
1508
- var exps = value[2];
1509
- return { "type": "BlockStatement", "expressions": exps, "children": value };
1510
- });
1499
+ var FatArrowBody$0 = ExplicitBlock;
1500
+ var FatArrowBody$1 = ImplicitNestedBlock;
1511
1501
  var FatArrowBody$2 = AssignmentExpression;
1512
1502
  var FatArrowBody$3 = EmptyBlock;
1513
1503
  function FatArrowBody(state) {
@@ -1635,10 +1625,10 @@ var require_parser = __commonJS({
1635
1625
  return ClassHeritage$0(state);
1636
1626
  }
1637
1627
  }
1638
- var ExtendsToken$0 = $TV($EXPECT($L4, fail, 'ExtendsToken "<"'), function($skip, $loc, $0, $1) {
1628
+ var ExtendsToken$0 = $TV($EXPECT($L5, fail, 'ExtendsToken "<"'), function($skip, $loc, $0, $1) {
1639
1629
  return { $loc, token: "extends" };
1640
1630
  });
1641
- var ExtendsToken$1 = $TV($EXPECT($L5, fail, 'ExtendsToken "extends"'), function($skip, $loc, $0, $1) {
1631
+ var ExtendsToken$1 = $TV($EXPECT($L6, fail, 'ExtendsToken "extends"'), function($skip, $loc, $0, $1) {
1642
1632
  return { $loc, token: $1 };
1643
1633
  });
1644
1634
  function ExtendsToken(state) {
@@ -1648,8 +1638,8 @@ var require_parser = __commonJS({
1648
1638
  return ExtendsToken$0(state) || ExtendsToken$1(state);
1649
1639
  }
1650
1640
  }
1651
- var ClassBody$0 = $S(__, OpenBrace, $E($S(EOS, NestedClassElements)), __, CloseBrace);
1652
- var ClassBody$1 = $S(InsertOpenBrace, EOS, NestedClassElements, InsertNewline, InsertIndent, InsertCloseBrace);
1641
+ var ClassBody$0 = $S(__, OpenBrace, $E(NestedClassElements), __, CloseBrace);
1642
+ var ClassBody$1 = $S(InsertOpenBrace, NestedClassElements, InsertNewline, InsertIndent, InsertCloseBrace);
1653
1643
  function ClassBody(state) {
1654
1644
  if (state.tokenize) {
1655
1645
  return $TOKEN("ClassBody", state, ClassBody$0(state) || ClassBody$1(state));
@@ -1720,10 +1710,10 @@ var require_parser = __commonJS({
1720
1710
  return FieldDefinition$0(state) || FieldDefinition$1(state) || FieldDefinition$2(state);
1721
1711
  }
1722
1712
  }
1723
- var This$0 = $TV($EXPECT($L6, fail, 'This "this"'), function($skip, $loc, $0, $1) {
1713
+ var This$0 = $TV($EXPECT($L7, fail, 'This "this"'), function($skip, $loc, $0, $1) {
1724
1714
  return { $loc, token: $1 };
1725
1715
  });
1726
- var This$1 = $TS($S(At, $S($E($EXPECT($L7, fail, 'This "#"')), IdentifierName)), function($skip, $loc, $0, $1, $2) {
1716
+ var This$1 = $TS($S(At, $S($E($EXPECT($L8, fail, 'This "#"')), IdentifierName)), function($skip, $loc, $0, $1, $2) {
1727
1717
  $1.token = "this.";
1728
1718
  return $0;
1729
1719
  });
@@ -1738,7 +1728,7 @@ var require_parser = __commonJS({
1738
1728
  return This$0(state) || This$1(state) || This$2(state);
1739
1729
  }
1740
1730
  }
1741
- var LeftHandSideExpression$0 = $TS($S($Q($S(New, $N($EXPECT($L8, fail, 'LeftHandSideExpression "."')), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
1731
+ var LeftHandSideExpression$0 = $TS($S($Q($S(New, $N($EXPECT($L9, fail, 'LeftHandSideExpression "."')), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
1742
1732
  if ($1.length)
1743
1733
  return $0;
1744
1734
  return $2;
@@ -1752,8 +1742,8 @@ var require_parser = __commonJS({
1752
1742
  return LeftHandSideExpression$0(state);
1753
1743
  }
1754
1744
  }
1755
- var CallExpression$0 = $S($EXPECT($L9, fail, 'CallExpression "super"'), ArgumentsWithTrailingCallExpressions);
1756
- var CallExpression$1 = $S($EXPECT($L10, fail, 'CallExpression "import"'), __, OpenParen, ExtendedExpression, __, CloseParen);
1745
+ var CallExpression$0 = $S($EXPECT($L10, fail, 'CallExpression "super"'), ArgumentsWithTrailingCallExpressions);
1746
+ var CallExpression$1 = $S($EXPECT($L11, fail, 'CallExpression "import"'), __, OpenParen, ExtendedExpression, __, CloseParen);
1757
1747
  var CallExpression$2 = $TS($S(MemberExpression, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2) {
1758
1748
  if ($2.length)
1759
1749
  return $0;
@@ -1786,7 +1776,7 @@ var require_parser = __commonJS({
1786
1776
  return OptionalShorthand$0(state);
1787
1777
  }
1788
1778
  }
1789
- var NonNullAssertion$0 = $T($EXPECT($L11, fail, 'NonNullAssertion "!"'), function(value) {
1779
+ var NonNullAssertion$0 = $T($EXPECT($L12, fail, 'NonNullAssertion "!"'), function(value) {
1790
1780
  return { "ts": true, "children": value };
1791
1781
  });
1792
1782
  function NonNullAssertion(state) {
@@ -1836,7 +1826,7 @@ var require_parser = __commonJS({
1836
1826
  $2.children.unshift($1[1]);
1837
1827
  return $2;
1838
1828
  });
1839
- var MemberExpressionRest$2 = $TS($S($E($S($Y(EOS), IndentedFurther)), $EXPECT($L12, fail, 'MemberExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
1829
+ var MemberExpressionRest$2 = $TS($S($E($S($Y(EOS), IndentedFurther)), $EXPECT($L13, fail, 'MemberExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
1840
1830
  var id = $3;
1841
1831
  if (id)
1842
1832
  return [".prototype.", id];
@@ -1910,7 +1900,7 @@ var require_parser = __commonJS({
1910
1900
  return PropertyAccess$0(state);
1911
1901
  }
1912
1902
  }
1913
- var SuperProperty$0 = $S($EXPECT($L13, fail, 'SuperProperty "super["'), ExtendedExpression, __, CloseBracket);
1903
+ var SuperProperty$0 = $S($EXPECT($L14, fail, 'SuperProperty "super["'), ExtendedExpression, __, CloseBracket);
1914
1904
  function SuperProperty(state) {
1915
1905
  if (state.verbose)
1916
1906
  console.log("ENTER:", "SuperProperty");
@@ -1921,7 +1911,7 @@ var require_parser = __commonJS({
1921
1911
  }
1922
1912
  }
1923
1913
  var MetaProperty$0 = $S(New, Dot, Target);
1924
- var MetaProperty$1 = $TV($EXPECT($L14, fail, 'MetaProperty "import.meta"'), function($skip, $loc, $0, $1) {
1914
+ var MetaProperty$1 = $TV($EXPECT($L15, fail, 'MetaProperty "import.meta"'), function($skip, $loc, $0, $1) {
1925
1915
  return { $loc, token: $1 };
1926
1916
  });
1927
1917
  function MetaProperty(state) {
@@ -1932,7 +1922,7 @@ var require_parser = __commonJS({
1932
1922
  }
1933
1923
  }
1934
1924
  var Parameters$0 = NonEmptyParameters;
1935
- var Parameters$1 = $TV($EXPECT($L0, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
1925
+ var Parameters$1 = $TV($EXPECT($L1, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
1936
1926
  return {
1937
1927
  type: "Parameters",
1938
1928
  children: [{ $loc, token: "()" }],
@@ -1989,7 +1979,7 @@ var require_parser = __commonJS({
1989
1979
  }
1990
1980
  }
1991
1981
  var ParameterElementDelimiter$0 = $S($Q(_), Comma);
1992
- var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($L15, fail, 'ParameterElementDelimiter ")"')));
1982
+ var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($L16, fail, 'ParameterElementDelimiter ")"')));
1993
1983
  var ParameterElementDelimiter$2 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
1994
1984
  return { $loc, token: "," };
1995
1985
  });
@@ -2045,9 +2035,7 @@ var require_parser = __commonJS({
2045
2035
  return ObjectBindingPattern$0(state);
2046
2036
  }
2047
2037
  }
2048
- var ObjectBindingPatternContent$0 = $T($S($Y(EOS), NestedBindingProperties), function(value) {
2049
- return value[1];
2050
- });
2038
+ var ObjectBindingPatternContent$0 = NestedBindingProperties;
2051
2039
  var ObjectBindingPatternContent$1 = $TS($S($Q(BindingProperty), $E($S(__, BindingRestProperty))), function($skip, $loc, $0, $1, $2) {
2052
2040
  var props = $1;
2053
2041
  var rest = $2;
@@ -2086,9 +2074,7 @@ var require_parser = __commonJS({
2086
2074
  return ArrayBindingPattern$0(state);
2087
2075
  }
2088
2076
  }
2089
- var ArrayBindingPatternContent$0 = $T($S($Y(EOS), NestedBindingElements), function(value) {
2090
- return value[1];
2091
- });
2077
+ var ArrayBindingPatternContent$0 = NestedBindingElements;
2092
2078
  var ArrayBindingPatternContent$1 = $TS($S($Q($C(BindingElement, Elision)), $E($S(__, BindingRestElement))), function($skip, $loc, $0, $1, $2) {
2093
2079
  var props = $1;
2094
2080
  var rest = $2;
@@ -2391,7 +2377,7 @@ var require_parser = __commonJS({
2391
2377
  return ThinArrowFunction$0(state);
2392
2378
  }
2393
2379
  }
2394
- var Arrow$0 = $TV($EXPECT($L16, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
2380
+ var Arrow$0 = $TV($EXPECT($L17, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
2395
2381
  return { $loc, token: $1 };
2396
2382
  });
2397
2383
  function Arrow(state) {
@@ -2403,16 +2389,52 @@ var require_parser = __commonJS({
2403
2389
  return Arrow$0(state);
2404
2390
  }
2405
2391
  }
2406
- var Block$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace), function(value) {
2407
- var exps = value[3];
2408
- return { "type": "BlockStatement", "expressions": exps, "children": value };
2392
+ var ExplicitBlock$0 = $TS($S(__, OpenBrace, NestedBlockStatements, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2393
+ var block = $3;
2394
+ block.bare = false;
2395
+ block.children.unshift($1, $2);
2396
+ block.children.push($4, $5);
2397
+ return block;
2409
2398
  });
2410
- var Block$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
2411
- var exps = value[2];
2412
- return { "type": "BlockStatement", "expressions": exps, "children": value };
2399
+ function ExplicitBlock(state) {
2400
+ if (state.verbose)
2401
+ console.log("ENTER:", "ExplicitBlock");
2402
+ if (state.tokenize) {
2403
+ return $TOKEN("ExplicitBlock", state, ExplicitBlock$0(state));
2404
+ } else {
2405
+ return ExplicitBlock$0(state);
2406
+ }
2407
+ }
2408
+ var ImplicitNestedBlock$0 = $TS($S(InsertOpenBrace, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2409
+ var block = $2;
2410
+ block.bare = false;
2411
+ block.children.unshift($1);
2412
+ block.children.push($3, $4, $5);
2413
+ return block;
2413
2414
  });
2415
+ function ImplicitNestedBlock(state) {
2416
+ if (state.verbose)
2417
+ console.log("ENTER:", "ImplicitNestedBlock");
2418
+ if (state.tokenize) {
2419
+ return $TOKEN("ImplicitNestedBlock", state, ImplicitNestedBlock$0(state));
2420
+ } else {
2421
+ return ImplicitNestedBlock$0(state);
2422
+ }
2423
+ }
2424
+ var Block$0 = ExplicitBlock;
2425
+ var Block$1 = ImplicitNestedBlock;
2414
2426
  var Block$2 = ThenClause;
2415
- var Block$3 = $S($Q(TrailingComment), Statement);
2427
+ var Block$3 = $TS($S($Q(TrailingComment), Statement), function($skip, $loc, $0, $1, $2) {
2428
+ var ws = $1;
2429
+ var s = $2;
2430
+ const expressions = [$0];
2431
+ return {
2432
+ type: "BlockStatement",
2433
+ expressions,
2434
+ children: [expressions],
2435
+ bare: true
2436
+ };
2437
+ });
2416
2438
  function Block(state) {
2417
2439
  if (state.tokenize) {
2418
2440
  return $TOKEN("Block", state, Block$0(state) || Block$1(state) || Block$2(state) || Block$3(state));
@@ -2420,8 +2442,16 @@ var require_parser = __commonJS({
2420
2442
  return Block$0(state) || Block$1(state) || Block$2(state) || Block$3(state);
2421
2443
  }
2422
2444
  }
2423
- var ThenClause$0 = $T($S(Then, $Q(TrailingComment), Statement), function(value) {
2424
- return [value[1], value[2]];
2445
+ var ThenClause$0 = $TS($S(Then, $Q(TrailingComment), Statement), function($skip, $loc, $0, $1, $2, $3) {
2446
+ var ws = $2;
2447
+ var s = $3;
2448
+ const expressions = [[ws, s]];
2449
+ return {
2450
+ type: "BlockStatement",
2451
+ expressions,
2452
+ children: [expressions],
2453
+ bare: true
2454
+ };
2425
2455
  });
2426
2456
  function ThenClause(state) {
2427
2457
  if (state.verbose)
@@ -2442,7 +2472,7 @@ var require_parser = __commonJS({
2442
2472
  }
2443
2473
  }
2444
2474
  var EmptyBlock$0 = $T($S(InsertOpenBrace, InsertCloseBrace), function(value) {
2445
- return { "type": "BlockStatement", "expressions": [], "children": value };
2475
+ return { "type": "BlockStatement", "expressions": [], "children": value, "bare": false };
2446
2476
  });
2447
2477
  function EmptyBlock(state) {
2448
2478
  if (state.verbose)
@@ -2453,14 +2483,14 @@ var require_parser = __commonJS({
2453
2483
  return EmptyBlock$0(state);
2454
2484
  }
2455
2485
  }
2456
- var BracedBlock$0 = $T($S($Q(TrailingComment), OpenBrace, BracedContent, __, CloseBrace), function(value) {
2457
- var exps = value[2];
2458
- return { "type": "BlockStatement", "expressions": exps, "children": value };
2459
- });
2460
- var BracedBlock$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
2461
- var exps = value[2];
2462
- return { "type": "BlockStatement", "expressions": exps, "children": value };
2486
+ var BracedBlock$0 = $TS($S($Q(TrailingComment), OpenBrace, BracedContent, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2487
+ var block = $3;
2488
+ block.bare = false;
2489
+ block.children.unshift($1, $2);
2490
+ block.children.push($4, $5);
2491
+ return block;
2463
2492
  });
2493
+ var BracedBlock$1 = ImplicitNestedBlock;
2464
2494
  var BracedBlock$2 = $TS($S(InsertOpenBrace, $Y(EOS), ObjectLiteral, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
2465
2495
  var s = $3;
2466
2496
  $0.splice(1, 1);
@@ -2470,8 +2500,8 @@ var require_parser = __commonJS({
2470
2500
  children: $0
2471
2501
  };
2472
2502
  });
2473
- var BracedBlock$3 = $TS($S(InsertOpenBrace, $N(EOS), __, Statement, InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
2474
- var s = $4;
2503
+ var BracedBlock$3 = $TS($S(InsertOpenBrace, $N(EOS), $S(__, Statement), InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2504
+ var s = $3;
2475
2505
  $0.splice(1, 1);
2476
2506
  return {
2477
2507
  type: "BlockStatement",
@@ -2486,10 +2516,16 @@ var require_parser = __commonJS({
2486
2516
  return BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state) || BracedBlock$3(state);
2487
2517
  }
2488
2518
  }
2489
- var BracedContent$0 = $T($S($Y(EOS), NestedBlockStatements), function(value) {
2490
- return value[1];
2519
+ var BracedContent$0 = NestedBlockStatements;
2520
+ var BracedContent$1 = $TS($S($Q(TrailingComment), Statement), function($skip, $loc, $0, $1, $2) {
2521
+ const expressions = [["", $2]];
2522
+ return {
2523
+ type: "BlockStatement",
2524
+ expressions,
2525
+ children: [$1, expressions],
2526
+ bare: true
2527
+ };
2491
2528
  });
2492
- var BracedContent$1 = $S($Q(TrailingComment), Statement);
2493
2529
  function BracedContent(state) {
2494
2530
  if (state.tokenize) {
2495
2531
  return $TOKEN("BracedContent", state, BracedContent$0(state) || BracedContent$1(state));
@@ -2501,7 +2537,16 @@ var require_parser = __commonJS({
2501
2537
  var statements = $2;
2502
2538
  if (!statements.length)
2503
2539
  return $skip;
2504
- return statements;
2540
+ const first = statements[0];
2541
+ const ws = first[0];
2542
+ const indent = ws.pop();
2543
+ first[0] = indent;
2544
+ return {
2545
+ type: "BlockStatement",
2546
+ expressions: statements,
2547
+ children: [ws, statements],
2548
+ bare: true
2549
+ };
2505
2550
  });
2506
2551
  function NestedBlockStatements(state) {
2507
2552
  if (state.verbose)
@@ -2549,7 +2594,7 @@ var require_parser = __commonJS({
2549
2594
  return LiteralContent$0(state) || LiteralContent$1(state) || LiteralContent$2(state) || LiteralContent$3(state);
2550
2595
  }
2551
2596
  }
2552
- var NullLiteral$0 = $TV($EXPECT($L17, fail, 'NullLiteral "null"'), function($skip, $loc, $0, $1) {
2597
+ var NullLiteral$0 = $TV($EXPECT($L18, fail, 'NullLiteral "null"'), function($skip, $loc, $0, $1) {
2553
2598
  return { $loc, token: $1 };
2554
2599
  });
2555
2600
  function NullLiteral(state) {
@@ -2564,7 +2609,7 @@ var require_parser = __commonJS({
2564
2609
  var BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
2565
2610
  return value[1];
2566
2611
  });
2567
- var BooleanLiteral$1 = $TS($S($C($EXPECT($L18, fail, 'BooleanLiteral "true"'), $EXPECT($L19, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2612
+ var BooleanLiteral$1 = $TS($S($C($EXPECT($L19, fail, 'BooleanLiteral "true"'), $EXPECT($L20, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2568
2613
  return { $loc, token: $1 };
2569
2614
  });
2570
2615
  function BooleanLiteral(state) {
@@ -2574,10 +2619,10 @@ var require_parser = __commonJS({
2574
2619
  return BooleanLiteral$0(state) || BooleanLiteral$1(state);
2575
2620
  }
2576
2621
  }
2577
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L20, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L21, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2622
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L21, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L22, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2578
2623
  return { $loc, token: "true" };
2579
2624
  });
2580
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L22, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L23, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2625
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L23, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L24, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2581
2626
  return { $loc, token: "false" };
2582
2627
  });
2583
2628
  function CoffeeScriptBooleanLiteral(state) {
@@ -2587,7 +2632,7 @@ var require_parser = __commonJS({
2587
2632
  return CoffeeScriptBooleanLiteral$0(state) || CoffeeScriptBooleanLiteral$1(state);
2588
2633
  }
2589
2634
  }
2590
- var Comma$0 = $TV($EXPECT($L24, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
2635
+ var Comma$0 = $TV($EXPECT($L0, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
2591
2636
  return { $loc, token: $1 };
2592
2637
  });
2593
2638
  function Comma(state) {
@@ -2885,9 +2930,7 @@ var require_parser = __commonJS({
2885
2930
  return BracedObjectLiteral$0(state);
2886
2931
  }
2887
2932
  }
2888
- var BracedObjectLiteralContent$0 = $T($S($Y(EOS), NestedPropertyDefinitions), function(value) {
2889
- return value[1];
2890
- });
2933
+ var BracedObjectLiteralContent$0 = NestedPropertyDefinitions;
2891
2934
  var BracedObjectLiteralContent$1 = $TS($S(__, PropertyDefinitionList, $E($S(__, Comma))), function($skip, $loc, $0, $1, $2, $3) {
2892
2935
  if ($1.length) {
2893
2936
  $2.splice(0, 0, ...$1);
@@ -2904,12 +2947,12 @@ var require_parser = __commonJS({
2904
2947
  return BracedObjectLiteralContent$0(state) || BracedObjectLiteralContent$1(state);
2905
2948
  }
2906
2949
  }
2907
- var NestedObjectLiteral$0 = $TS($S(InsertOpenBrace, $Y(EOS), NestedPropertyDefinitions, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
2908
- $3.unshift($1);
2909
- $3.push($4, $5, $6);
2950
+ var NestedObjectLiteral$0 = $TS($S(InsertOpenBrace, NestedPropertyDefinitions, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2951
+ $2.unshift($1);
2952
+ $2.push($3, $4, $5);
2910
2953
  return {
2911
2954
  type: "ObjectExpression",
2912
- children: $3
2955
+ children: $2
2913
2956
  };
2914
2957
  });
2915
2958
  function NestedObjectLiteral(state) {
@@ -3131,7 +3174,7 @@ var require_parser = __commonJS({
3131
3174
  return ClassElementName$0(state) || ClassElementName$1(state);
3132
3175
  }
3133
3176
  }
3134
- var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L7, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
3177
+ var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L8, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
3135
3178
  return {
3136
3179
  type: "Identifier",
3137
3180
  name: $0,
@@ -3212,7 +3255,7 @@ var require_parser = __commonJS({
3212
3255
  var BinaryOpSymbol$6 = $EXPECT($L50, fail, 'BinaryOpSymbol "<="');
3213
3256
  var BinaryOpSymbol$7 = $EXPECT($L51, fail, 'BinaryOpSymbol ">="');
3214
3257
  var BinaryOpSymbol$8 = $EXPECT($L52, fail, 'BinaryOpSymbol "<<"');
3215
- var BinaryOpSymbol$9 = $EXPECT($L4, fail, 'BinaryOpSymbol "<"');
3258
+ var BinaryOpSymbol$9 = $EXPECT($L5, fail, 'BinaryOpSymbol "<"');
3216
3259
  var BinaryOpSymbol$10 = $EXPECT($L53, fail, 'BinaryOpSymbol ">>>"');
3217
3260
  var BinaryOpSymbol$11 = $EXPECT($L54, fail, 'BinaryOpSymbol ">>"');
3218
3261
  var BinaryOpSymbol$12 = $EXPECT($L55, fail, 'BinaryOpSymbol ">"');
@@ -3356,9 +3399,8 @@ var require_parser = __commonJS({
3356
3399
  return EmptyStatement$0(state);
3357
3400
  }
3358
3401
  }
3359
- var BlockStatement$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace, $N($S(__, $EXPECT($L43, fail, 'BlockStatement "="')))), function(value) {
3360
- var exps = value[3];
3361
- return { "type": "BlockStatement", "children": value, "expressions": exps };
3402
+ var BlockStatement$0 = $T($S(ExplicitBlock, $N($S(__, $EXPECT($L43, fail, 'BlockStatement "="')))), function(value) {
3403
+ return value[0];
3362
3404
  });
3363
3405
  function BlockStatement(state) {
3364
3406
  if (state.verbose)
@@ -3460,8 +3502,8 @@ var require_parser = __commonJS({
3460
3502
  return UnlessExpression$0(state);
3461
3503
  }
3462
3504
  }
3463
- var ExpressionBlock$0 = $TS($S(InsertOpenParen, EOS, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
3464
- var exps = $3;
3505
+ var ExpressionBlock$0 = $TS($S(InsertOpenParen, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
3506
+ var exps = $2;
3465
3507
  exps[exps.length - 1].pop();
3466
3508
  return {
3467
3509
  type: "BlockExpressions",
@@ -3653,7 +3695,7 @@ var require_parser = __commonJS({
3653
3695
  });
3654
3696
  var ForStatementControl$1 = $TS($S(CoffeeForLoopsEnabled, CoffeeForStatementParameters, $E(WhenCondition)), function($skip, $loc, $0, $1, $2, $3) {
3655
3697
  if ($3) {
3656
- const indent = "".padStart((module2.currentIndent + 1) * 2);
3698
+ const indent = module2.currentIndent.token + " ";
3657
3699
  module2.insertTrimmingSpace($3, "");
3658
3700
  $2.blockPrefix.push([indent, {
3659
3701
  type: "IfStatement",
@@ -3691,7 +3733,7 @@ var require_parser = __commonJS({
3691
3733
  var step = $8;
3692
3734
  var close = $9;
3693
3735
  let blockPrefix = [];
3694
- const indent = "".padStart((module2.currentIndent + 1) * 2);
3736
+ const indent = module2.currentIndent.token + " ";
3695
3737
  if (kind.token === "from") {
3696
3738
  if (step) {
3697
3739
  throw new Error("Can't use 'by' with 'from' in CoffeeScript for loops");
@@ -3704,7 +3746,7 @@ var require_parser = __commonJS({
3704
3746
  module2.insertTrimmingSpace(declaration, "");
3705
3747
  module2.insertTrimmingSpace(exp, "");
3706
3748
  if (declaration.own) {
3707
- const indent2 = "".padStart((module2.currentIndent + 1) * 2);
3749
+ const indent2 = module2.currentIndent.token + " ";
3708
3750
  const hasPropRef = module2.getHasPropRef();
3709
3751
  blockPrefix.push([indent2, "if (!", hasPropRef, ".call(", exp, ", ", declaration, ")) continue\n"]);
3710
3752
  }
@@ -4018,18 +4060,16 @@ var require_parser = __commonJS({
4018
4060
  return SwitchExpression$0(state);
4019
4061
  }
4020
4062
  }
4021
- var CaseBlock$0 = $TS($S(__, OpenBrace, $Y(EOS), NestedCaseClauses, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4022
- var clauses = $4;
4023
- $0.splice(2, 1);
4063
+ var CaseBlock$0 = $TS($S(__, OpenBrace, NestedCaseClauses, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
4064
+ var clauses = $3;
4024
4065
  return {
4025
4066
  type: "CaseBlock",
4026
4067
  clauses,
4027
4068
  children: $0
4028
4069
  };
4029
4070
  });
4030
- var CaseBlock$1 = $TS($S($Y(EOS), InsertOpenBrace, NestedCaseClauses, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4031
- var clauses = $3;
4032
- $0.shift();
4071
+ var CaseBlock$1 = $TS($S(InsertOpenBrace, NestedCaseClauses, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
4072
+ var clauses = $2;
4033
4073
  return {
4034
4074
  type: "CaseBlock",
4035
4075
  clauses,
@@ -4076,21 +4116,37 @@ var require_parser = __commonJS({
4076
4116
  var expressions = value[2];
4077
4117
  return { "type": "CaseClause", "cases": cases, "expressions": expressions, "children": value };
4078
4118
  });
4079
- var CaseClause$1 = $T($S(When, CaseExpressionList, $C(ThenClause, NestedBlockStatements), InsertBreak), function(value) {
4080
- var cases = value[1];
4081
- var expressions = value[2];
4082
- return { "type": "WhenClause", "cases": cases, "expressions": expressions, "children": value };
4119
+ var CaseClause$1 = $TS($S(When, CaseExpressionList, $C(ThenClause, NestedBlockStatements), InsertBreak), function($skip, $loc, $0, $1, $2, $3, $4) {
4120
+ var cases = $2;
4121
+ var expressions = $3;
4122
+ if (expressions.expressions) {
4123
+ expressions = expressions.expressions;
4124
+ }
4125
+ return {
4126
+ type: "WhenClause",
4127
+ cases,
4128
+ expressions,
4129
+ children: $0
4130
+ };
4083
4131
  });
4084
- var CaseClause$2 = $T($S(Default, ImpliedColon, $C(NestedBlockStatements, NoExpressions)), function(value) {
4085
- var exps = value[2];
4086
- return { "type": "DefaultClause", "expressions": exps, "children": value };
4132
+ var CaseClause$2 = $TS($S(Default, ImpliedColon, $C(NestedBlockStatements, NoExpressions)), function($skip, $loc, $0, $1, $2, $3) {
4133
+ var expressions = $3;
4134
+ if (expressions.expressions)
4135
+ expressions = expressions.expressions;
4136
+ return {
4137
+ type: "DefaultClause",
4138
+ expressions,
4139
+ children: $0
4140
+ };
4087
4141
  });
4088
4142
  var CaseClause$3 = $TS($S(Else, ImpliedColon, $C(NestedBlockStatements, $S($Q(TrailingComment), Statement))), function($skip, $loc, $0, $1, $2, $3) {
4089
- var exps = $3;
4143
+ var expressions = $3;
4090
4144
  $1.token = "default";
4145
+ if (expressions.expressions)
4146
+ expressions = expressions.expressions;
4091
4147
  return {
4092
4148
  type: "DefaultClause",
4093
- expressions: exps,
4149
+ expressions,
4094
4150
  children: $0
4095
4151
  };
4096
4152
  });
@@ -4120,7 +4176,7 @@ var require_parser = __commonJS({
4120
4176
  return CaseExpressionList$0(state);
4121
4177
  }
4122
4178
  }
4123
- var NoExpressions$0 = $T($EXPECT($L0, fail, 'NoExpressions ""'), function(value) {
4179
+ var NoExpressions$0 = $T($EXPECT($L1, fail, 'NoExpressions ""'), function(value) {
4124
4180
  return [];
4125
4181
  });
4126
4182
  function NoExpressions(state) {
@@ -4133,7 +4189,7 @@ var require_parser = __commonJS({
4133
4189
  }
4134
4190
  }
4135
4191
  var ImpliedColon$0 = $S(__, Colon);
4136
- var ImpliedColon$1 = $TV($EXPECT($L0, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
4192
+ var ImpliedColon$1 = $TV($EXPECT($L1, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
4137
4193
  return { $loc, token: ":" };
4138
4194
  });
4139
4195
  function ImpliedColon(state) {
@@ -4242,7 +4298,7 @@ var require_parser = __commonJS({
4242
4298
  return ExpressionWithIndentedApplicationSuppressed$0(state);
4243
4299
  }
4244
4300
  }
4245
- var SuppressIndentedApplication$0 = $TV($EXPECT($L0, fail, 'SuppressIndentedApplication ""'), function($skip, $loc, $0, $1) {
4301
+ var SuppressIndentedApplication$0 = $TV($EXPECT($L1, fail, 'SuppressIndentedApplication ""'), function($skip, $loc, $0, $1) {
4246
4302
  module2.suppressIndentedApplication = true;
4247
4303
  });
4248
4304
  function SuppressIndentedApplication(state) {
@@ -4352,7 +4408,7 @@ var require_parser = __commonJS({
4352
4408
  return ImportDeclaration$0(state) || ImportDeclaration$1(state) || ImportDeclaration$2(state) || ImportDeclaration$3(state);
4353
4409
  }
4354
4410
  }
4355
- var ImpliedImport$0 = $TV($EXPECT($L0, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
4411
+ var ImpliedImport$0 = $TV($EXPECT($L1, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
4356
4412
  return { $loc, token: "import " };
4357
4413
  });
4358
4414
  function ImpliedImport(state) {
@@ -5210,7 +5266,7 @@ var require_parser = __commonJS({
5210
5266
  return NonIdContinue$0(state);
5211
5267
  }
5212
5268
  }
5213
- var Loc$0 = $TV($EXPECT($L0, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
5269
+ var Loc$0 = $TV($EXPECT($L1, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
5214
5270
  return { $loc, token: "" };
5215
5271
  });
5216
5272
  function Loc(state) {
@@ -5366,7 +5422,7 @@ var require_parser = __commonJS({
5366
5422
  return CloseBracket$0(state);
5367
5423
  }
5368
5424
  }
5369
- var CloseParen$0 = $TV($EXPECT($L15, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
5425
+ var CloseParen$0 = $TV($EXPECT($L16, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
5370
5426
  return { $loc, token: $1 };
5371
5427
  });
5372
5428
  function CloseParen(state) {
@@ -5450,7 +5506,7 @@ var require_parser = __commonJS({
5450
5506
  return Do$0(state);
5451
5507
  }
5452
5508
  }
5453
- var Dot$0 = $TV($EXPECT($L8, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
5509
+ var Dot$0 = $TV($EXPECT($L9, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
5454
5510
  return { $loc, token: $1 };
5455
5511
  });
5456
5512
  function Dot(state) {
@@ -5594,7 +5650,7 @@ var require_parser = __commonJS({
5594
5650
  return If$0(state);
5595
5651
  }
5596
5652
  }
5597
- var Import$0 = $TS($S($EXPECT($L10, fail, 'Import "import"'), $Y($EXPECT($R36, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
5653
+ var Import$0 = $TS($S($EXPECT($L11, fail, 'Import "import"'), $Y($EXPECT($R36, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
5598
5654
  return { $loc, token: $1 };
5599
5655
  });
5600
5656
  function Import(state) {
@@ -6005,7 +6061,7 @@ var require_parser = __commonJS({
6005
6061
  return JSXElement$0(state) || JSXElement$1(state);
6006
6062
  }
6007
6063
  }
6008
- var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L140, fail, 'JSXSelfClosingElement "/>"'));
6064
+ var JSXSelfClosingElement$0 = $S($EXPECT($L5, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L140, fail, 'JSXSelfClosingElement "/>"'));
6009
6065
  function JSXSelfClosingElement(state) {
6010
6066
  if (state.verbose)
6011
6067
  console.log("ENTER:", "JSXSelfClosingElement");
@@ -6015,7 +6071,7 @@ var require_parser = __commonJS({
6015
6071
  return JSXSelfClosingElement$0(state);
6016
6072
  }
6017
6073
  }
6018
- var JSXOpeningElement$0 = $S($EXPECT($L4, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L55, fail, 'JSXOpeningElement ">"'));
6074
+ var JSXOpeningElement$0 = $S($EXPECT($L5, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L55, fail, 'JSXOpeningElement ">"'));
6019
6075
  function JSXOpeningElement(state) {
6020
6076
  if (state.verbose)
6021
6077
  console.log("ENTER:", "JSXOpeningElement");
@@ -6219,9 +6275,9 @@ var require_parser = __commonJS({
6219
6275
  return Namespace$0(state);
6220
6276
  }
6221
6277
  }
6222
- var InterfaceBlock$0 = $S(__, OpenBrace, EOS, NestedInterfaceProperties, __, CloseBrace);
6278
+ var InterfaceBlock$0 = $S(__, OpenBrace, NestedInterfaceProperties, __, CloseBrace);
6223
6279
  var InterfaceBlock$1 = $S(__, OpenBrace, $Q($S(__, InterfaceProperty)), __, CloseBrace);
6224
- var InterfaceBlock$2 = $S(InsertOpenBrace, EOS, NestedInterfaceProperties, InsertNewline, InsertIndent, InsertCloseBrace);
6280
+ var InterfaceBlock$2 = $S(InsertOpenBrace, NestedInterfaceProperties, InsertNewline, InsertIndent, InsertCloseBrace);
6225
6281
  function InterfaceBlock(state) {
6226
6282
  if (state.tokenize) {
6227
6283
  return $TOKEN("InterfaceBlock", state, InterfaceBlock$0(state) || InterfaceBlock$1(state) || InterfaceBlock$2(state));
@@ -6274,9 +6330,9 @@ var require_parser = __commonJS({
6274
6330
  return InterfacePropertyDelimiter$0(state) || InterfacePropertyDelimiter$1(state) || InterfacePropertyDelimiter$2(state);
6275
6331
  }
6276
6332
  }
6277
- var NamespaceBlock$0 = $S(__, OpenBrace, EOS, NestedTypeDeclarations, __, CloseBrace);
6333
+ var NamespaceBlock$0 = $S(__, OpenBrace, NestedTypeDeclarations, __, CloseBrace);
6278
6334
  var NamespaceBlock$1 = $S(__, OpenBrace, $Q($S(__, TypeDeclaration, InterfacePropertyDelimiter)), __, CloseBrace);
6279
- var NamespaceBlock$2 = $S(InsertOpenBrace, EOS, NestedTypeDeclarations, InsertNewline, InsertIndent, InsertCloseBrace);
6335
+ var NamespaceBlock$2 = $S(InsertOpenBrace, NestedTypeDeclarations, InsertNewline, InsertIndent, InsertCloseBrace);
6280
6336
  function NamespaceBlock(state) {
6281
6337
  if (state.tokenize) {
6282
6338
  return $TOKEN("NamespaceBlock", state, NamespaceBlock$0(state) || NamespaceBlock$1(state) || NamespaceBlock$2(state));
@@ -6500,7 +6556,7 @@ var require_parser = __commonJS({
6500
6556
  return NestedType$0(state);
6501
6557
  }
6502
6558
  }
6503
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L5, fail, 'TypeConditional "extends"'), Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
6559
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L6, fail, 'TypeConditional "extends"'), Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
6504
6560
  if ($2)
6505
6561
  return $0;
6506
6562
  return $1;
@@ -6541,7 +6597,7 @@ var require_parser = __commonJS({
6541
6597
  return TypeBinaryOp$0(state) || TypeBinaryOp$1(state);
6542
6598
  }
6543
6599
  }
6544
- var FunctionType$0 = $S(Parameters, __, $EXPECT($L3, fail, 'FunctionType "=>"'), Type);
6600
+ var FunctionType$0 = $S(Parameters, __, $EXPECT($L4, fail, 'FunctionType "=>"'), Type);
6545
6601
  function FunctionType(state) {
6546
6602
  if (state.verbose)
6547
6603
  console.log("ENTER:", "FunctionType");
@@ -6551,7 +6607,7 @@ var require_parser = __commonJS({
6551
6607
  return FunctionType$0(state);
6552
6608
  }
6553
6609
  }
6554
- var TypeArguments$0 = $S(__, $EXPECT($L4, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeArguments ">"'));
6610
+ var TypeArguments$0 = $S(__, $EXPECT($L5, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeArguments ">"'));
6555
6611
  function TypeArguments(state) {
6556
6612
  if (state.verbose)
6557
6613
  console.log("ENTER:", "TypeArguments");
@@ -6561,7 +6617,7 @@ var require_parser = __commonJS({
6561
6617
  return TypeArguments$0(state);
6562
6618
  }
6563
6619
  }
6564
- var TypeParameters$0 = $TS($S(__, $EXPECT($L4, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
6620
+ var TypeParameters$0 = $TS($S(__, $EXPECT($L5, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
6565
6621
  return { ts: true, children: $0 };
6566
6622
  });
6567
6623
  function TypeParameters(state) {
@@ -6583,7 +6639,7 @@ var require_parser = __commonJS({
6583
6639
  return TypeParameter$0(state);
6584
6640
  }
6585
6641
  }
6586
- var TypeConstraint$0 = $S(__, $EXPECT($L5, fail, 'TypeConstraint "extends"'), Type);
6642
+ var TypeConstraint$0 = $S(__, $EXPECT($L6, fail, 'TypeConstraint "extends"'), Type);
6587
6643
  function TypeConstraint(state) {
6588
6644
  if (state.verbose)
6589
6645
  console.log("ENTER:", "TypeConstraint");
@@ -6709,7 +6765,7 @@ var require_parser = __commonJS({
6709
6765
  return EOL$0(state);
6710
6766
  }
6711
6767
  }
6712
- var Debugger$0 = $TV($EXPECT($L0, fail, 'Debugger ""'), function($skip, $loc, $0, $1) {
6768
+ var Debugger$0 = $TV($EXPECT($L1, fail, 'Debugger ""'), function($skip, $loc, $0, $1) {
6713
6769
  debugger;
6714
6770
  });
6715
6771
  function Debugger(state) {
@@ -6721,7 +6777,7 @@ var require_parser = __commonJS({
6721
6777
  return Debugger$0(state);
6722
6778
  }
6723
6779
  }
6724
- var InsertOpenParen$0 = $TV($EXPECT($L0, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
6780
+ var InsertOpenParen$0 = $TV($EXPECT($L1, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
6725
6781
  return { $loc, token: "(" };
6726
6782
  });
6727
6783
  function InsertOpenParen(state) {
@@ -6733,7 +6789,7 @@ var require_parser = __commonJS({
6733
6789
  return InsertOpenParen$0(state);
6734
6790
  }
6735
6791
  }
6736
- var InsertCloseParen$0 = $TV($EXPECT($L0, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
6792
+ var InsertCloseParen$0 = $TV($EXPECT($L1, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
6737
6793
  return { $loc, token: ")" };
6738
6794
  });
6739
6795
  function InsertCloseParen(state) {
@@ -6745,7 +6801,7 @@ var require_parser = __commonJS({
6745
6801
  return InsertCloseParen$0(state);
6746
6802
  }
6747
6803
  }
6748
- var InsertOpenBrace$0 = $TV($EXPECT($L0, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
6804
+ var InsertOpenBrace$0 = $TV($EXPECT($L1, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
6749
6805
  return [{ $loc, token: " " }, { $loc, token: "{" }];
6750
6806
  });
6751
6807
  function InsertOpenBrace(state) {
@@ -6757,7 +6813,7 @@ var require_parser = __commonJS({
6757
6813
  return InsertOpenBrace$0(state);
6758
6814
  }
6759
6815
  }
6760
- var InsertCloseBrace$0 = $TV($EXPECT($L0, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
6816
+ var InsertCloseBrace$0 = $TV($EXPECT($L1, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
6761
6817
  return { $loc, token: "}" };
6762
6818
  });
6763
6819
  function InsertCloseBrace(state) {
@@ -6769,7 +6825,7 @@ var require_parser = __commonJS({
6769
6825
  return InsertCloseBrace$0(state);
6770
6826
  }
6771
6827
  }
6772
- var InsertConst$0 = $TV($EXPECT($L0, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
6828
+ var InsertConst$0 = $TV($EXPECT($L1, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
6773
6829
  return { $loc, token: "const " };
6774
6830
  });
6775
6831
  function InsertConst(state) {
@@ -6781,7 +6837,7 @@ var require_parser = __commonJS({
6781
6837
  return InsertConst$0(state);
6782
6838
  }
6783
6839
  }
6784
- var InsertReadonly$0 = $TV($EXPECT($L0, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
6840
+ var InsertReadonly$0 = $TV($EXPECT($L1, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
6785
6841
  return { ts: true, children: [{ $loc, token: "readonly " }] };
6786
6842
  });
6787
6843
  function InsertReadonly(state) {
@@ -6793,7 +6849,7 @@ var require_parser = __commonJS({
6793
6849
  return InsertReadonly$0(state);
6794
6850
  }
6795
6851
  }
6796
- var InsertNewline$0 = $TV($EXPECT($L0, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
6852
+ var InsertNewline$0 = $TV($EXPECT($L1, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
6797
6853
  return "\n";
6798
6854
  });
6799
6855
  function InsertNewline(state) {
@@ -6805,8 +6861,8 @@ var require_parser = __commonJS({
6805
6861
  return InsertNewline$0(state);
6806
6862
  }
6807
6863
  }
6808
- var InsertIndent$0 = $TV($EXPECT($L0, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
6809
- return "".padStart(module2.currentIndent * 2);
6864
+ var InsertIndent$0 = $TV($EXPECT($L1, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
6865
+ return module2.currentIndent.token;
6810
6866
  });
6811
6867
  function InsertIndent(state) {
6812
6868
  if (state.verbose)
@@ -6817,7 +6873,7 @@ var require_parser = __commonJS({
6817
6873
  return InsertIndent$0(state);
6818
6874
  }
6819
6875
  }
6820
- var InsertSpace$0 = $TV($EXPECT($L0, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
6876
+ var InsertSpace$0 = $TV($EXPECT($L1, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
6821
6877
  return { $loc, token: " " };
6822
6878
  });
6823
6879
  function InsertSpace(state) {
@@ -6829,7 +6885,7 @@ var require_parser = __commonJS({
6829
6885
  return InsertSpace$0(state);
6830
6886
  }
6831
6887
  }
6832
- var InsertDot$0 = $TV($EXPECT($L0, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
6888
+ var InsertDot$0 = $TV($EXPECT($L1, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
6833
6889
  return { $loc, token: "." };
6834
6890
  });
6835
6891
  function InsertDot(state) {
@@ -6841,7 +6897,7 @@ var require_parser = __commonJS({
6841
6897
  return InsertDot$0(state);
6842
6898
  }
6843
6899
  }
6844
- var InsertBreak$0 = $TV($EXPECT($L0, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
6900
+ var InsertBreak$0 = $TV($EXPECT($L1, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
6845
6901
  return { $loc, token: ";break;" };
6846
6902
  });
6847
6903
  function InsertBreak(state) {
@@ -6853,7 +6909,7 @@ var require_parser = __commonJS({
6853
6909
  return InsertBreak$0(state);
6854
6910
  }
6855
6911
  }
6856
- var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
6912
+ var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
6857
6913
  if (module2.config.coffeeBinaryExistential)
6858
6914
  return;
6859
6915
  return $skip;
@@ -6867,7 +6923,7 @@ var require_parser = __commonJS({
6867
6923
  return CoffeeBinaryExistentialEnabled$0(state);
6868
6924
  }
6869
6925
  }
6870
- var CoffeeBooleansEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
6926
+ var CoffeeBooleansEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
6871
6927
  if (module2.config.coffeeBooleans)
6872
6928
  return;
6873
6929
  return $skip;
@@ -6881,7 +6937,7 @@ var require_parser = __commonJS({
6881
6937
  return CoffeeBooleansEnabled$0(state);
6882
6938
  }
6883
6939
  }
6884
- var CoffeeClassesEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
6940
+ var CoffeeClassesEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
6885
6941
  if (module2.config.coffeeClasses)
6886
6942
  return;
6887
6943
  return $skip;
@@ -6895,7 +6951,7 @@ var require_parser = __commonJS({
6895
6951
  return CoffeeClassesEnabled$0(state);
6896
6952
  }
6897
6953
  }
6898
- var CoffeeCommentEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
6954
+ var CoffeeCommentEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
6899
6955
  if (module2.config.coffeeComment)
6900
6956
  return;
6901
6957
  return $skip;
@@ -6909,7 +6965,7 @@ var require_parser = __commonJS({
6909
6965
  return CoffeeCommentEnabled$0(state);
6910
6966
  }
6911
6967
  }
6912
- var CoffeeDoEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
6968
+ var CoffeeDoEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
6913
6969
  if (module2.config.coffeeDo)
6914
6970
  return;
6915
6971
  return $skip;
@@ -6923,7 +6979,7 @@ var require_parser = __commonJS({
6923
6979
  return CoffeeDoEnabled$0(state);
6924
6980
  }
6925
6981
  }
6926
- var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
6982
+ var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
6927
6983
  if (module2.config.coffeeForLoops)
6928
6984
  return;
6929
6985
  return $skip;
@@ -6937,7 +6993,7 @@ var require_parser = __commonJS({
6937
6993
  return CoffeeForLoopsEnabled$0(state);
6938
6994
  }
6939
6995
  }
6940
- var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
6996
+ var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
6941
6997
  if (module2.config.coffeeInterpolation)
6942
6998
  return;
6943
6999
  return $skip;
@@ -6951,7 +7007,7 @@ var require_parser = __commonJS({
6951
7007
  return CoffeeInterpolationEnabled$0(state);
6952
7008
  }
6953
7009
  }
6954
- var CoffeeIsntEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
7010
+ var CoffeeIsntEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
6955
7011
  if (module2.config.coffeeIsnt)
6956
7012
  return;
6957
7013
  return $skip;
@@ -6965,7 +7021,7 @@ var require_parser = __commonJS({
6965
7021
  return CoffeeIsntEnabled$0(state);
6966
7022
  }
6967
7023
  }
6968
- var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
7024
+ var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
6969
7025
  if (module2.config.coffeeLineContinuation)
6970
7026
  return;
6971
7027
  return $skip;
@@ -6979,7 +7035,7 @@ var require_parser = __commonJS({
6979
7035
  return CoffeeLineContinuationEnabled$0(state);
6980
7036
  }
6981
7037
  }
6982
- var CoffeeNotEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
7038
+ var CoffeeNotEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
6983
7039
  if (module2.config.coffeeNot)
6984
7040
  return;
6985
7041
  return $skip;
@@ -6993,7 +7049,7 @@ var require_parser = __commonJS({
6993
7049
  return CoffeeNotEnabled$0(state);
6994
7050
  }
6995
7051
  }
6996
- var CoffeeOfEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
7052
+ var CoffeeOfEnabled$0 = $TV($EXPECT($L1, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
6997
7053
  if (module2.config.coffeeOf)
6998
7054
  return;
6999
7055
  return $skip;
@@ -7007,9 +7063,21 @@ var require_parser = __commonJS({
7007
7063
  return CoffeeOfEnabled$0(state);
7008
7064
  }
7009
7065
  }
7010
- var Reset$0 = $TV($EXPECT($L0, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
7011
- module2.currentIndent = 0;
7012
- module2.indentLevels = [0];
7066
+ var Reset$0 = $TV($EXPECT($L1, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
7067
+ module2.indentLevels = [{
7068
+ level: 0,
7069
+ token: ""
7070
+ }];
7071
+ if (!module2._init) {
7072
+ module2._init = true;
7073
+ Object.defineProperties(module2, {
7074
+ currentIndent: {
7075
+ get() {
7076
+ return module2.indentLevels[module2.indentLevels.length - 1];
7077
+ }
7078
+ }
7079
+ });
7080
+ }
7013
7081
  module2.verbose = false;
7014
7082
  module2.config = {
7015
7083
  autoVar: false,
@@ -7044,7 +7112,7 @@ var require_parser = __commonJS({
7044
7112
  ts: true,
7045
7113
  children: [" as any"]
7046
7114
  };
7047
- module2.prelude.push(["", "const ", indexOfRef, typeSuffix, " = [].indexOf", asAny, "\n"]);
7115
+ module2.prelude.push(["", ["const ", indexOfRef, typeSuffix, " = [].indexOf", asAny, "\n"]]);
7048
7116
  return indexOfRef;
7049
7117
  };
7050
7118
  module2.getHasPropRef = function() {
@@ -7062,7 +7130,7 @@ var require_parser = __commonJS({
7062
7130
  ts: true,
7063
7131
  children: [" as any"]
7064
7132
  };
7065
- module2.prelude.push(["", "const ", hasPropRef, typeSuffix, " = {}.hasOwnProperty", asAny, "\n"]);
7133
+ module2.prelude.push(["", ["const ", hasPropRef, typeSuffix, " = {}.hasOwnProperty", asAny, "\n"]]);
7066
7134
  return hasPropRef;
7067
7135
  };
7068
7136
  Object.defineProperty(module2.config, "coffeeCompat", {
@@ -7111,7 +7179,7 @@ var require_parser = __commonJS({
7111
7179
  return Reset$0(state);
7112
7180
  }
7113
7181
  }
7114
- var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L0, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
7182
+ var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L1, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
7115
7183
  var directives = $2;
7116
7184
  directives.forEach((directive) => {
7117
7185
  if (directive.type === "CivetPrologue") {
@@ -7621,7 +7689,9 @@ var require_parser = __commonJS({
7621
7689
  scopes.pop();
7622
7690
  });
7623
7691
  if (varIds.length) {
7624
- const indent = statements[0][0];
7692
+ let indent = statements[0][0];
7693
+ if (Array.isArray(indent))
7694
+ indent = indent[indent.length - 1];
7625
7695
  statements.unshift([indent, "var ", varIds.join(", "), "\n"]);
7626
7696
  }
7627
7697
  }
@@ -7640,7 +7710,7 @@ var require_parser = __commonJS({
7640
7710
  const level = $1.length;
7641
7711
  return {
7642
7712
  $loc,
7643
- token: "".padStart(level * 2),
7713
+ token: $1.join(""),
7644
7714
  level
7645
7715
  };
7646
7716
  });
@@ -7653,23 +7723,28 @@ var require_parser = __commonJS({
7653
7723
  return Indent$0(state);
7654
7724
  }
7655
7725
  }
7656
- var TrackIndent$0 = $TV($EXPECT($L0, fail, 'TrackIndent ""'), function($skip, $loc, $0, $1) {
7657
- module2.indentLevels.push(module2.currentIndent);
7726
+ var TrackIndented$0 = $TV(Indent, function($skip, $loc, $0, $1) {
7727
+ var indent = $0;
7728
+ const { level } = indent;
7729
+ if (level <= module2.currentIndent.level) {
7730
+ return $skip;
7731
+ }
7732
+ module2.indentLevels.push(indent);
7658
7733
  });
7659
- function TrackIndent(state) {
7734
+ function TrackIndented(state) {
7660
7735
  if (state.verbose)
7661
- console.log("ENTER:", "TrackIndent");
7736
+ console.log("ENTER:", "TrackIndented");
7662
7737
  if (state.tokenize) {
7663
- return $TOKEN("TrackIndent", state, TrackIndent$0(state));
7738
+ return $TOKEN("TrackIndented", state, TrackIndented$0(state));
7664
7739
  } else {
7665
- return TrackIndent$0(state);
7740
+ return TrackIndented$0(state);
7666
7741
  }
7667
7742
  }
7668
- var Samedent$0 = $TS($S($E(EOS), Indent), function($skip, $loc, $0, $1, $2) {
7743
+ var Samedent$0 = $TS($S(EOS, Indent), function($skip, $loc, $0, $1, $2) {
7669
7744
  var indent = $2;
7670
7745
  const { level } = indent;
7671
- const currentIndent = module2.indentLevels[module2.indentLevels.length - 1];
7672
- if (level === currentIndent) {
7746
+ const currentIndentLevel = module2.currentIndent.level;
7747
+ if (level === currentIndentLevel) {
7673
7748
  return $0;
7674
7749
  }
7675
7750
  return $skip;
@@ -7683,11 +7758,11 @@ var require_parser = __commonJS({
7683
7758
  return Samedent$0(state);
7684
7759
  }
7685
7760
  }
7686
- var IndentedFurther$0 = $TS($S($E(EOS), Indent), function($skip, $loc, $0, $1, $2) {
7761
+ var IndentedFurther$0 = $TS($S(EOS, Indent), function($skip, $loc, $0, $1, $2) {
7687
7762
  var indent = $2;
7688
7763
  const { level } = indent;
7689
- const currentIndent = module2.indentLevels[module2.indentLevels.length - 1];
7690
- if (level > currentIndent) {
7764
+ const currentIndentLevel = module2.currentIndent.level;
7765
+ if (level > currentIndentLevel) {
7691
7766
  return $0;
7692
7767
  }
7693
7768
  return $skip;
@@ -7701,13 +7776,7 @@ var require_parser = __commonJS({
7701
7776
  return IndentedFurther$0(state);
7702
7777
  }
7703
7778
  }
7704
- var PushIndent$0 = $TV($EXPECT($L0, fail, 'PushIndent ""'), function($skip, $loc, $0, $1) {
7705
- module2.currentIndent++;
7706
- if (module2.verbose) {
7707
- console.log("pushing indent", module2.currentIndent);
7708
- }
7709
- module2.indentLevels.push(module2.currentIndent);
7710
- });
7779
+ var PushIndent$0 = $Y($S(EOS, TrackIndented));
7711
7780
  function PushIndent(state) {
7712
7781
  if (state.verbose)
7713
7782
  console.log("ENTER:", "PushIndent");
@@ -7717,12 +7786,11 @@ var require_parser = __commonJS({
7717
7786
  return PushIndent$0(state);
7718
7787
  }
7719
7788
  }
7720
- var PopIndent$0 = $TV($EXPECT($L0, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
7789
+ var PopIndent$0 = $TV($EXPECT($L1, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
7721
7790
  if (module2.verbose) {
7722
7791
  console.log("popping indent", module2.indentLevels[module2.indentLevels.length - 1], "->", module2.indentLevels[module2.indentLevels.length - 2]);
7723
7792
  }
7724
7793
  module2.indentLevels.pop();
7725
- module2.currentIndent = module2.indentLevels[module2.indentLevels.length - 1];
7726
7794
  });
7727
7795
  function PopIndent(state) {
7728
7796
  if (state.verbose)
@@ -7733,16 +7801,15 @@ var require_parser = __commonJS({
7733
7801
  return PopIndent$0(state);
7734
7802
  }
7735
7803
  }
7736
- var Nested$0 = $TS($S($E(EOS), Indent), function($skip, $loc, $0, $1, $2) {
7804
+ var Nested$0 = $TS($S(EOS, Indent), function($skip, $loc, $0, $1, $2) {
7737
7805
  var eos = $1;
7738
7806
  var indent = $2;
7739
7807
  const { level } = indent;
7740
- const currentIndent = module2.indentLevels[module2.indentLevels.length - 1];
7808
+ const currentIndent = module2.currentIndent;
7741
7809
  if (module2.verbose) {
7742
- console.log("global indent", module2.currentIndent);
7743
7810
  console.log("Indented", level, currentIndent);
7744
7811
  }
7745
- if (level !== currentIndent) {
7812
+ if (level !== currentIndent.level) {
7746
7813
  if (module2.verbose) {
7747
7814
  console.log("skipped nested");
7748
7815
  }