@danielx/civet 0.5.78 → 0.5.80

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
@@ -427,6 +427,9 @@ ${input.slice(result.pos)}
427
427
  exports.parserState = parserState;
428
428
  var { parse: parse2 } = parserState({
429
429
  Program,
430
+ TopLevelStatements,
431
+ NestedTopLevelStatements,
432
+ TopLevelSingleLineStatements,
430
433
  TopLevelStatement,
431
434
  ExtendedExpression,
432
435
  SingleLineExtendedExpression,
@@ -698,6 +701,9 @@ ${input.slice(result.pos)}
698
701
  CatchParameter,
699
702
  Condition,
700
703
  ExpressionWithIndentedApplicationForbidden,
704
+ ForbidClassImplicitCall,
705
+ AllowClassImplicitCall,
706
+ RestoreClassImplicitCall,
701
707
  ForbidIndentedApplication,
702
708
  AllowIndentedApplication,
703
709
  RestoreIndentedApplication,
@@ -1053,26 +1059,26 @@ ${input.slice(result.pos)}
1053
1059
  PopIndent,
1054
1060
  Nested
1055
1061
  });
1056
- var $L0 = $L("/ ");
1057
- var $L1 = $L("=");
1058
- var $L2 = $L("(");
1059
- var $L3 = $L("?");
1060
- var $L4 = $L(".");
1061
- var $L5 = $L("++");
1062
- var $L6 = $L("--");
1063
- var $L7 = $L("=>");
1064
- var $L8 = $L(" ");
1065
- var $L9 = $L("implements");
1066
- var $L10 = $L("<:");
1067
- var $L11 = $L("#");
1068
- var $L12 = $L("super");
1069
- var $L13 = $L("import");
1070
- var $L14 = $L("return.value");
1071
- var $L15 = $L("!");
1072
- var $L16 = $L("^");
1073
- var $L17 = $L("-");
1074
- var $L18 = $L("import.meta");
1075
- var $L19 = $L("");
1062
+ var $L0 = $L("");
1063
+ var $L1 = $L("/ ");
1064
+ var $L2 = $L("=");
1065
+ var $L3 = $L("(");
1066
+ var $L4 = $L("?");
1067
+ var $L5 = $L(".");
1068
+ var $L6 = $L("++");
1069
+ var $L7 = $L("--");
1070
+ var $L8 = $L("=>");
1071
+ var $L9 = $L(" ");
1072
+ var $L10 = $L("implements");
1073
+ var $L11 = $L("<:");
1074
+ var $L12 = $L("#");
1075
+ var $L13 = $L("super");
1076
+ var $L14 = $L("import");
1077
+ var $L15 = $L("return.value");
1078
+ var $L16 = $L("!");
1079
+ var $L17 = $L("^");
1080
+ var $L18 = $L("-");
1081
+ var $L19 = $L("import.meta");
1076
1082
  var $L20 = $L(",");
1077
1083
  var $L21 = $L("->");
1078
1084
  var $L22 = $L("}");
@@ -1301,7 +1307,7 @@ ${input.slice(result.pos)}
1301
1307
  var $R63 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
1302
1308
  var $R64 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
1303
1309
  var $R65 = $R(new RegExp("[ \\t]*", "suy"));
1304
- var Program$0 = $TS($S(Reset, Init, __, $Q(TopLevelStatement), __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1310
+ var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1305
1311
  var statements = $4;
1306
1312
  module.processProgram(statements);
1307
1313
  return $0;
@@ -1328,7 +1334,117 @@ ${input.slice(result.pos)}
1328
1334
  return result;
1329
1335
  }
1330
1336
  }
1331
- var TopLevelStatement$0 = $S($E(EOS), ModuleItem, StatementDelimiter);
1337
+ var TopLevelStatements$0 = $TS($S(TrackIndented, TopLevelSingleLineStatements, $Q(NestedTopLevelStatements), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
1338
+ var indent = $1;
1339
+ var first = $2;
1340
+ var rest = $3;
1341
+ return [
1342
+ [indent, ...first[0]],
1343
+ ...first.slice(1).map((s) => ["", ...s]),
1344
+ ...rest.flat()
1345
+ ];
1346
+ });
1347
+ var TopLevelStatements$1 = $TS($S(TopLevelSingleLineStatements, $Q(NestedTopLevelStatements)), function($skip, $loc, $0, $1, $2) {
1348
+ var first = $1;
1349
+ var rest = $2;
1350
+ return [
1351
+ ...first.map((s) => ["", ...s]),
1352
+ ...rest.flat()
1353
+ ];
1354
+ });
1355
+ var TopLevelStatements$2 = $T($EXPECT($L0, fail, 'TopLevelStatements ""'), function(value) {
1356
+ return [];
1357
+ });
1358
+ function TopLevelStatements(state) {
1359
+ let eventData;
1360
+ if (state.events) {
1361
+ const result = state.events.enter?.("TopLevelStatements", state);
1362
+ if (result) {
1363
+ if (result.cache)
1364
+ return result.cache;
1365
+ eventData = result.data;
1366
+ }
1367
+ }
1368
+ if (state.tokenize) {
1369
+ const result = $TOKEN("TopLevelStatements", state, TopLevelStatements$0(state) || TopLevelStatements$1(state) || TopLevelStatements$2(state));
1370
+ if (state.events)
1371
+ state.events.exit?.("TopLevelStatements", state, result, eventData);
1372
+ return result;
1373
+ } else {
1374
+ const result = TopLevelStatements$0(state) || TopLevelStatements$1(state) || TopLevelStatements$2(state);
1375
+ if (state.events)
1376
+ state.events.exit?.("TopLevelStatements", state, result, eventData);
1377
+ return result;
1378
+ }
1379
+ }
1380
+ var NestedTopLevelStatements$0 = $TS($S(Nested, TopLevelSingleLineStatements), function($skip, $loc, $0, $1, $2) {
1381
+ var nested = $1;
1382
+ var statements = $2;
1383
+ return [
1384
+ [nested, ...statements[0]],
1385
+ ...statements.slice(1).map((s) => ["", ...s])
1386
+ ];
1387
+ });
1388
+ function NestedTopLevelStatements(state) {
1389
+ let eventData;
1390
+ if (state.events) {
1391
+ const result = state.events.enter?.("NestedTopLevelStatements", state);
1392
+ if (result) {
1393
+ if (result.cache)
1394
+ return result.cache;
1395
+ eventData = result.data;
1396
+ }
1397
+ }
1398
+ if (state.tokenize) {
1399
+ const result = $TOKEN("NestedTopLevelStatements", state, NestedTopLevelStatements$0(state));
1400
+ if (state.events)
1401
+ state.events.exit?.("NestedTopLevelStatements", state, result, eventData);
1402
+ return result;
1403
+ } else {
1404
+ const result = NestedTopLevelStatements$0(state);
1405
+ if (state.events)
1406
+ state.events.exit?.("NestedTopLevelStatements", state, result, eventData);
1407
+ return result;
1408
+ }
1409
+ }
1410
+ var TopLevelSingleLineStatements$0 = $TV($P($S($N(EOS), TopLevelStatement)), function($skip, $loc, $0, $1) {
1411
+ var statements = $0;
1412
+ return statements.map(([, statement]) => statement);
1413
+ });
1414
+ function TopLevelSingleLineStatements(state) {
1415
+ let eventData;
1416
+ if (state.events) {
1417
+ const result = state.events.enter?.("TopLevelSingleLineStatements", state);
1418
+ if (result) {
1419
+ if (result.cache)
1420
+ return result.cache;
1421
+ eventData = result.data;
1422
+ }
1423
+ }
1424
+ if (state.tokenize) {
1425
+ const result = $TOKEN("TopLevelSingleLineStatements", state, TopLevelSingleLineStatements$0(state));
1426
+ if (state.events)
1427
+ state.events.exit?.("TopLevelSingleLineStatements", state, result, eventData);
1428
+ return result;
1429
+ } else {
1430
+ const result = TopLevelSingleLineStatements$0(state);
1431
+ if (state.events)
1432
+ state.events.exit?.("TopLevelSingleLineStatements", state, result, eventData);
1433
+ return result;
1434
+ }
1435
+ }
1436
+ var TopLevelStatement$0 = $TS($S($E(_), ModuleItem, StatementDelimiter), function($skip, $loc, $0, $1, $2, $3) {
1437
+ var ws = $1;
1438
+ var statement = $2;
1439
+ var delimiter = $3;
1440
+ if (ws) {
1441
+ statement = {
1442
+ ...statement,
1443
+ children: [ws, ...statement.children]
1444
+ };
1445
+ }
1446
+ return [statement, delimiter];
1447
+ });
1332
1448
  function TopLevelStatement(state) {
1333
1449
  let eventData;
1334
1450
  if (state.events) {
@@ -1623,10 +1739,11 @@ ${input.slice(result.pos)}
1623
1739
  }
1624
1740
  }
1625
1741
  var ForbiddenImplicitCalls$0 = $R$0($EXPECT($R0, fail, "ForbiddenImplicitCalls /(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
1626
- var ForbiddenImplicitCalls$1 = $EXPECT($L0, fail, 'ForbiddenImplicitCalls "/ "');
1627
- var ForbiddenImplicitCalls$2 = AtAt;
1628
- var ForbiddenImplicitCalls$3 = $S(Identifier, $EXPECT($L1, fail, 'ForbiddenImplicitCalls "="'), Whitespace);
1629
- var ForbiddenImplicitCalls$4 = $TS($S(Identifier, $N($EXPECT($L2, fail, 'ForbiddenImplicitCalls "("'))), function($skip, $loc, $0, $1, $2) {
1742
+ var ForbiddenImplicitCalls$1 = $EXPECT($L1, fail, 'ForbiddenImplicitCalls "/ "');
1743
+ var ForbiddenImplicitCalls$2 = $S(ForbidClassImplicitCall, Class);
1744
+ var ForbiddenImplicitCalls$3 = AtAt;
1745
+ var ForbiddenImplicitCalls$4 = $S(Identifier, $EXPECT($L2, fail, 'ForbiddenImplicitCalls "="'), Whitespace);
1746
+ var ForbiddenImplicitCalls$5 = $TS($S(Identifier, $N($EXPECT($L3, fail, 'ForbiddenImplicitCalls "("'))), function($skip, $loc, $0, $1, $2) {
1630
1747
  if (module.operators.has($1.name))
1631
1748
  return $1;
1632
1749
  return $skip;
@@ -1642,12 +1759,12 @@ ${input.slice(result.pos)}
1642
1759
  }
1643
1760
  }
1644
1761
  if (state.tokenize) {
1645
- const result = $TOKEN("ForbiddenImplicitCalls", state, ForbiddenImplicitCalls$0(state) || ForbiddenImplicitCalls$1(state) || ForbiddenImplicitCalls$2(state) || ForbiddenImplicitCalls$3(state) || ForbiddenImplicitCalls$4(state));
1762
+ const result = $TOKEN("ForbiddenImplicitCalls", state, ForbiddenImplicitCalls$0(state) || ForbiddenImplicitCalls$1(state) || ForbiddenImplicitCalls$2(state) || ForbiddenImplicitCalls$3(state) || ForbiddenImplicitCalls$4(state) || ForbiddenImplicitCalls$5(state));
1646
1763
  if (state.events)
1647
1764
  state.events.exit?.("ForbiddenImplicitCalls", state, result, eventData);
1648
1765
  return result;
1649
1766
  } else {
1650
- const result = ForbiddenImplicitCalls$0(state) || ForbiddenImplicitCalls$1(state) || ForbiddenImplicitCalls$2(state) || ForbiddenImplicitCalls$3(state) || ForbiddenImplicitCalls$4(state);
1767
+ const result = ForbiddenImplicitCalls$0(state) || ForbiddenImplicitCalls$1(state) || ForbiddenImplicitCalls$2(state) || ForbiddenImplicitCalls$3(state) || ForbiddenImplicitCalls$4(state) || ForbiddenImplicitCalls$5(state);
1651
1768
  if (state.events)
1652
1769
  state.events.exit?.("ForbiddenImplicitCalls", state, result, eventData);
1653
1770
  return result;
@@ -1684,7 +1801,7 @@ ${input.slice(result.pos)}
1684
1801
  return result;
1685
1802
  }
1686
1803
  }
1687
- var TrailingMemberExpressions$0 = $TS($S($Q(MemberExpressionRest), $Q($S($C(Samedent, IndentedFurther), $Y($S($E($EXPECT($L3, fail, 'TrailingMemberExpressions "?"')), $EXPECT($L4, fail, 'TrailingMemberExpressions "."'), $N($EXPECT($R1, fail, "TrailingMemberExpressions /[0-9]/")))), MemberExpressionRest))), function($skip, $loc, $0, $1, $2) {
1804
+ var TrailingMemberExpressions$0 = $TS($S($Q(MemberExpressionRest), $Q($S($C(Samedent, IndentedFurther), $Y($S($E($EXPECT($L4, fail, 'TrailingMemberExpressions "?"')), $EXPECT($L5, fail, 'TrailingMemberExpressions "."'), $N($EXPECT($R1, fail, "TrailingMemberExpressions /[0-9]/")))), MemberExpressionRest))), function($skip, $loc, $0, $1, $2) {
1688
1805
  return $1.concat($2);
1689
1806
  });
1690
1807
  function TrailingMemberExpressions(state) {
@@ -2154,7 +2271,7 @@ ${input.slice(result.pos)}
2154
2271
  return result;
2155
2272
  }
2156
2273
  }
2157
- var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L5, fail, 'UpdateExpressionSymbol "++"'), $EXPECT($L6, fail, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
2274
+ var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L6, fail, 'UpdateExpressionSymbol "++"'), $EXPECT($L7, fail, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
2158
2275
  return { $loc, token: $1 };
2159
2276
  });
2160
2277
  function UpdateExpressionSymbol(state) {
@@ -2436,7 +2553,7 @@ ${input.slice(result.pos)}
2436
2553
  return result;
2437
2554
  }
2438
2555
  }
2439
- var FatArrow$0 = $TS($S(__, $EXPECT($L7, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
2556
+ var FatArrow$0 = $TS($S(__, $EXPECT($L8, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
2440
2557
  var ws = $1;
2441
2558
  if (!ws.length)
2442
2559
  return " =>";
@@ -2520,7 +2637,7 @@ ${input.slice(result.pos)}
2520
2637
  }
2521
2638
  }
2522
2639
  var TernaryRest$0 = NestedTernaryRest;
2523
- var TernaryRest$1 = $TS($S($N(CoffeeBinaryExistentialEnabled), $Y($EXPECT($L8, fail, 'TernaryRest " "')), $Q(TrailingComment), QuestionMark, ExtendedExpression, __, Colon, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
2640
+ var TernaryRest$1 = $TS($S($N(CoffeeBinaryExistentialEnabled), $Y($EXPECT($L9, fail, 'TernaryRest " "')), $Q(TrailingComment), QuestionMark, ExtendedExpression, __, Colon, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
2524
2641
  return $0.slice(2);
2525
2642
  });
2526
2643
  function TernaryRest(state) {
@@ -2864,7 +2981,7 @@ ${input.slice(result.pos)}
2864
2981
  return result;
2865
2982
  }
2866
2983
  }
2867
- var ExtendsToken$0 = $TS($S(Loc, __, OpenAngleBracket, $E($EXPECT($L8, fail, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
2984
+ var ExtendsToken$0 = $TS($S(Loc, __, OpenAngleBracket, $E($EXPECT($L9, fail, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
2868
2985
  var l = $1;
2869
2986
  var ws = $2;
2870
2987
  var lt = $3;
@@ -2958,7 +3075,7 @@ ${input.slice(result.pos)}
2958
3075
  return result;
2959
3076
  }
2960
3077
  }
2961
- var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L8, fail, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
3078
+ var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L9, fail, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
2962
3079
  var l = $1;
2963
3080
  var ws = $2;
2964
3081
  var token = $3;
@@ -2968,7 +3085,7 @@ ${input.slice(result.pos)}
2968
3085
  }
2969
3086
  return { children };
2970
3087
  });
2971
- var ImplementsToken$1 = $TS($S(__, $EXPECT($L9, fail, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
3088
+ var ImplementsToken$1 = $TS($S(__, $EXPECT($L10, fail, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
2972
3089
  $2 = { $loc, token: $2 };
2973
3090
  return [$1, $2];
2974
3091
  });
@@ -2994,7 +3111,7 @@ ${input.slice(result.pos)}
2994
3111
  return result;
2995
3112
  }
2996
3113
  }
2997
- var ImplementsShorthand$0 = $TV($EXPECT($L10, fail, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
3114
+ var ImplementsShorthand$0 = $TV($EXPECT($L11, fail, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
2998
3115
  return { $loc, token: "implements " };
2999
3116
  });
3000
3117
  function ImplementsShorthand(state) {
@@ -3367,7 +3484,7 @@ ${input.slice(result.pos)}
3367
3484
  }
3368
3485
  }
3369
3486
  var ThisLiteral$0 = This;
3370
- var ThisLiteral$1 = $TS($S(AtThis, $TEXT($S($E($EXPECT($L11, fail, 'ThisLiteral "#"')), IdentifierName))), function($skip, $loc, $0, $1, $2) {
3487
+ var ThisLiteral$1 = $TS($S(AtThis, $TEXT($S($E($EXPECT($L12, fail, 'ThisLiteral "#"')), IdentifierName))), function($skip, $loc, $0, $1, $2) {
3371
3488
  var at = $1;
3372
3489
  var id = $2;
3373
3490
  return [at, ".", id];
@@ -3421,7 +3538,7 @@ ${input.slice(result.pos)}
3421
3538
  return result;
3422
3539
  }
3423
3540
  }
3424
- var LeftHandSideExpression$0 = $TS($S($Q($S(New, $N($EXPECT($L4, fail, 'LeftHandSideExpression "."')), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
3541
+ var LeftHandSideExpression$0 = $TS($S($Q($S(New, $N($EXPECT($L5, fail, 'LeftHandSideExpression "."')), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
3425
3542
  if ($1.length)
3426
3543
  return $0;
3427
3544
  return $2;
@@ -3448,14 +3565,14 @@ ${input.slice(result.pos)}
3448
3565
  return result;
3449
3566
  }
3450
3567
  }
3451
- var CallExpression$0 = $TS($S($EXPECT($L12, fail, 'CallExpression "super"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3568
+ var CallExpression$0 = $TS($S($EXPECT($L13, fail, 'CallExpression "super"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3452
3569
  var rest = $3;
3453
3570
  return module.processGlob({
3454
3571
  type: "CallExpression",
3455
3572
  children: [$1, ...$2, ...rest.flat()]
3456
3573
  });
3457
3574
  });
3458
- var CallExpression$1 = $TS($S($EXPECT($L13, fail, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3575
+ var CallExpression$1 = $TS($S($EXPECT($L14, fail, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3459
3576
  var rest = $3;
3460
3577
  return module.processGlob({
3461
3578
  type: "CallExpression",
@@ -3498,7 +3615,7 @@ ${input.slice(result.pos)}
3498
3615
  return result;
3499
3616
  }
3500
3617
  }
3501
- var ReturnValue$0 = $TV($C($S($EXPECT($L14, fail, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
3618
+ var ReturnValue$0 = $TV($C($S($EXPECT($L15, fail, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
3502
3619
  return { type: "ReturnValue", children: [$1[0]] };
3503
3620
  });
3504
3621
  function ReturnValue(state) {
@@ -3636,7 +3753,7 @@ ${input.slice(result.pos)}
3636
3753
  return result;
3637
3754
  }
3638
3755
  }
3639
- var NonNullAssertion$0 = $T($S($EXPECT($L15, fail, 'NonNullAssertion "!"'), $N($EXPECT($L16, fail, 'NonNullAssertion "^"'))), function(value) {
3756
+ var NonNullAssertion$0 = $T($S($EXPECT($L16, fail, 'NonNullAssertion "!"'), $N($EXPECT($L17, fail, 'NonNullAssertion "^"'))), function(value) {
3640
3757
  return { "type": "NonNullAssertion", "ts": true, "children": value[0] };
3641
3758
  });
3642
3759
  function NonNullAssertion(state) {
@@ -3774,7 +3891,7 @@ ${input.slice(result.pos)}
3774
3891
  ]
3775
3892
  };
3776
3893
  });
3777
- var MemberBracketContent$3 = $TS($S(Dot, $EXPECT($L17, fail, 'MemberBracketContent "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
3894
+ var MemberBracketContent$3 = $TS($S(Dot, $EXPECT($L18, fail, 'MemberBracketContent "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
3778
3895
  var dot = $1;
3779
3896
  var neg = $2;
3780
3897
  var num = $3;
@@ -3960,8 +4077,8 @@ ${input.slice(result.pos)}
3960
4077
  return result;
3961
4078
  }
3962
4079
  }
3963
- var SuperProperty$0 = $S($EXPECT($L12, fail, 'SuperProperty "super"'), MemberBracketContent);
3964
- var SuperProperty$1 = $S($EXPECT($L12, fail, 'SuperProperty "super"'), $N($C(QuestionMark, NonNullAssertion)), PropertyAccess);
4080
+ var SuperProperty$0 = $S($EXPECT($L13, fail, 'SuperProperty "super"'), MemberBracketContent);
4081
+ var SuperProperty$1 = $S($EXPECT($L13, fail, 'SuperProperty "super"'), $N($C(QuestionMark, NonNullAssertion)), PropertyAccess);
3965
4082
  function SuperProperty(state) {
3966
4083
  let eventData;
3967
4084
  if (state.events) {
@@ -3985,7 +4102,7 @@ ${input.slice(result.pos)}
3985
4102
  }
3986
4103
  }
3987
4104
  var MetaProperty$0 = $S(New, Dot, Target);
3988
- var MetaProperty$1 = $TS($S($EXPECT($L18, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4105
+ var MetaProperty$1 = $TS($S($EXPECT($L19, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3989
4106
  return { $loc, token: $1 };
3990
4107
  });
3991
4108
  function MetaProperty(state) {
@@ -4011,7 +4128,7 @@ ${input.slice(result.pos)}
4011
4128
  }
4012
4129
  }
4013
4130
  var Parameters$0 = NonEmptyParameters;
4014
- var Parameters$1 = $TV($EXPECT($L19, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
4131
+ var Parameters$1 = $TV($EXPECT($L0, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
4015
4132
  return {
4016
4133
  type: "Parameters",
4017
4134
  children: [{ $loc, token: "()" }],
@@ -4868,7 +4985,7 @@ ${input.slice(result.pos)}
4868
4985
  return result;
4869
4986
  }
4870
4987
  }
4871
- var EmptyBindingPattern$0 = $TV($EXPECT($L19, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4988
+ var EmptyBindingPattern$0 = $TV($EXPECT($L0, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4872
4989
  const ref = {
4873
4990
  type: "Ref",
4874
4991
  base: "ref",
@@ -5776,10 +5893,11 @@ ${input.slice(result.pos)}
5776
5893
  });
5777
5894
  var ExplicitBlock$1 = $TS($S(__, OpenBrace, NestedBlockStatements, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5778
5895
  var block = $3;
5779
- return Object.assign({}, block, {
5896
+ return {
5897
+ ...block,
5780
5898
  children: [$1, $2, ...block.children, $4, $5],
5781
5899
  bare: false
5782
- });
5900
+ };
5783
5901
  });
5784
5902
  function ExplicitBlock(state) {
5785
5903
  let eventData;
@@ -5839,7 +5957,7 @@ ${input.slice(result.pos)}
5839
5957
  var Block$0 = ExplicitBlock;
5840
5958
  var Block$1 = ImplicitNestedBlock;
5841
5959
  var Block$2 = ThenClause;
5842
- var Block$3 = $TS($S($Q(TrailingComment), $N(EOS), Statement), function($skip, $loc, $0, $1, $2, $3) {
5960
+ var Block$3 = $TS($S($E(_), $N(EOS), Statement), function($skip, $loc, $0, $1, $2, $3) {
5843
5961
  var ws = $1;
5844
5962
  var s = $3;
5845
5963
  const expressions = [[ws, s]];
@@ -5977,7 +6095,7 @@ ${input.slice(result.pos)}
5977
6095
  return result;
5978
6096
  }
5979
6097
  }
5980
- var EmptyBareBlock$0 = $TV($EXPECT($L19, fail, 'EmptyBareBlock ""'), function($skip, $loc, $0, $1) {
6098
+ var EmptyBareBlock$0 = $TV($EXPECT($L0, fail, 'EmptyBareBlock ""'), function($skip, $loc, $0, $1) {
5981
6099
  const expressions = [];
5982
6100
  return {
5983
6101
  type: "BlockStatement",
@@ -6240,8 +6358,11 @@ ${input.slice(result.pos)}
6240
6358
  return $skip;
6241
6359
  const first = statements[0];
6242
6360
  const ws = first[0];
6243
- const [indent] = ws.slice(-1);
6244
- first[0] = indent;
6361
+ const indent = ws.at(-1);
6362
+ statements = [
6363
+ [indent, ...first.slice(1)],
6364
+ ...statements.slice(1)
6365
+ ];
6245
6366
  return {
6246
6367
  type: "BlockStatement",
6247
6368
  expressions: statements,
@@ -6271,7 +6392,16 @@ ${input.slice(result.pos)}
6271
6392
  return result;
6272
6393
  }
6273
6394
  }
6274
- var NestedBlockStatement$0 = $S(Nested, StatementListItem, StatementDelimiter);
6395
+ var NestedBlockStatement$0 = $TS($S(Nested, $E(_), StatementListItem, StatementDelimiter), function($skip, $loc, $0, $1, $2, $3, $4) {
6396
+ var nested = $1;
6397
+ var ws = $2;
6398
+ var statement = $3;
6399
+ var delimiter = $4;
6400
+ if (ws) {
6401
+ statement = { ...statement, children: [ws, ...statement.children] };
6402
+ }
6403
+ return [nested, statement, delimiter];
6404
+ });
6275
6405
  function NestedBlockStatement(state) {
6276
6406
  let eventData;
6277
6407
  if (state.events) {
@@ -6512,7 +6642,7 @@ ${input.slice(result.pos)}
6512
6642
  return result;
6513
6643
  }
6514
6644
  }
6515
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L1, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L1, fail, 'UpcomingAssignment "="'), $EXPECT($L30, fail, 'UpcomingAssignment ">"')))));
6645
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L2, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L2, fail, 'UpcomingAssignment "="'), $EXPECT($L30, fail, 'UpcomingAssignment ">"')))));
6516
6646
  function UpcomingAssignment(state) {
6517
6647
  let eventData;
6518
6648
  if (state.events) {
@@ -7571,7 +7701,7 @@ ${input.slice(result.pos)}
7571
7701
  expression
7572
7702
  };
7573
7703
  });
7574
- var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L17, fail, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
7704
+ var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L18, fail, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
7575
7705
  return {
7576
7706
  type: "ComputedPropertyName",
7577
7707
  children: $0
@@ -7599,7 +7729,7 @@ ${input.slice(result.pos)}
7599
7729
  return result;
7600
7730
  }
7601
7731
  }
7602
- var Decorator$0 = $S(AtAt, IdentifierReference, $E(Arguments));
7732
+ var Decorator$0 = $S(AtAt, CallExpression);
7603
7733
  function Decorator(state) {
7604
7734
  let eventData;
7605
7735
  if (state.events) {
@@ -7622,7 +7752,12 @@ ${input.slice(result.pos)}
7622
7752
  return result;
7623
7753
  }
7624
7754
  }
7625
- var Decorators$0 = $S($P($S(__, Decorator)), __);
7755
+ var Decorators$0 = $TS($S(ForbidClassImplicitCall, $Q($S(__, Decorator)), __, RestoreClassImplicitCall), function($skip, $loc, $0, $1, $2, $3, $4) {
7756
+ var decorators = $2;
7757
+ if (!decorators.length)
7758
+ return $skip;
7759
+ return $0;
7760
+ });
7626
7761
  function Decorators(state) {
7627
7762
  let eventData;
7628
7763
  if (state.events) {
@@ -7789,7 +7924,7 @@ ${input.slice(result.pos)}
7789
7924
  return result;
7790
7925
  }
7791
7926
  }
7792
- var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L11, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
7927
+ var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L12, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
7793
7928
  return {
7794
7929
  type: "Identifier",
7795
7930
  name: $0,
@@ -7877,21 +8012,21 @@ ${input.slice(result.pos)}
7877
8012
  return result;
7878
8013
  }
7879
8014
  }
7880
- var OperatorAssignmentOp$0 = $TS($S(Xor, $EXPECT($L1, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
8015
+ var OperatorAssignmentOp$0 = $TS($S(Xor, $EXPECT($L2, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
7881
8016
  return {
7882
8017
  special: true,
7883
8018
  call: module.getRef("xor"),
7884
8019
  children: [$2, ...$4]
7885
8020
  };
7886
8021
  });
7887
- var OperatorAssignmentOp$1 = $TS($S(Xnor, $EXPECT($L1, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
8022
+ var OperatorAssignmentOp$1 = $TS($S(Xnor, $EXPECT($L2, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
7888
8023
  return {
7889
8024
  special: true,
7890
8025
  call: module.getRef("xnor"),
7891
8026
  children: [$2, ...$4]
7892
8027
  };
7893
8028
  });
7894
- var OperatorAssignmentOp$2 = $TS($S(Identifier, $EXPECT($L1, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
8029
+ var OperatorAssignmentOp$2 = $TS($S(Identifier, $EXPECT($L2, fail, 'OperatorAssignmentOp "="'), $Y(Whitespace), $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3, $4) {
7895
8030
  return {
7896
8031
  special: true,
7897
8032
  call: $1,
@@ -7938,7 +8073,7 @@ ${input.slice(result.pos)}
7938
8073
  var AssignmentOpSymbol$15 = $T($EXPECT($L49, fail, 'AssignmentOpSymbol "?="'), function(value) {
7939
8074
  return "??=";
7940
8075
  });
7941
- var AssignmentOpSymbol$16 = $T($S($EXPECT($L1, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L1, fail, 'AssignmentOpSymbol "="'))), function(value) {
8076
+ var AssignmentOpSymbol$16 = $T($S($EXPECT($L2, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L2, fail, 'AssignmentOpSymbol "="'))), function(value) {
7942
8077
  return value[0];
7943
8078
  });
7944
8079
  var AssignmentOpSymbol$17 = $T($S(CoffeeWordAssignmentOp), function(value) {
@@ -8051,7 +8186,7 @@ ${input.slice(result.pos)}
8051
8186
  });
8052
8187
  var BinaryOpSymbol$4 = $EXPECT($L57, fail, 'BinaryOpSymbol "%"');
8053
8188
  var BinaryOpSymbol$5 = $EXPECT($L58, fail, 'BinaryOpSymbol "+"');
8054
- var BinaryOpSymbol$6 = $EXPECT($L17, fail, 'BinaryOpSymbol "-"');
8189
+ var BinaryOpSymbol$6 = $EXPECT($L18, fail, 'BinaryOpSymbol "-"');
8055
8190
  var BinaryOpSymbol$7 = $EXPECT($L59, fail, 'BinaryOpSymbol "<="');
8056
8191
  var BinaryOpSymbol$8 = $EXPECT($L60, fail, 'BinaryOpSymbol ">="');
8057
8192
  var BinaryOpSymbol$9 = $TV($EXPECT($L61, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
@@ -8119,7 +8254,7 @@ ${input.slice(result.pos)}
8119
8254
  };
8120
8255
  });
8121
8256
  var BinaryOpSymbol$28 = $EXPECT($L79, fail, 'BinaryOpSymbol "??"');
8122
- var BinaryOpSymbol$29 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L3, fail, 'BinaryOpSymbol "?"')), function(value) {
8257
+ var BinaryOpSymbol$29 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L4, fail, 'BinaryOpSymbol "?"')), function(value) {
8123
8258
  return "??";
8124
8259
  });
8125
8260
  var BinaryOpSymbol$30 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
@@ -8209,7 +8344,7 @@ ${input.slice(result.pos)}
8209
8344
  return $1;
8210
8345
  });
8211
8346
  var BinaryOpSymbol$40 = $EXPECT($L83, fail, 'BinaryOpSymbol "&"');
8212
- var BinaryOpSymbol$41 = $EXPECT($L16, fail, 'BinaryOpSymbol "^"');
8347
+ var BinaryOpSymbol$41 = $EXPECT($L17, fail, 'BinaryOpSymbol "^"');
8213
8348
  var BinaryOpSymbol$42 = $EXPECT($L84, fail, 'BinaryOpSymbol "|"');
8214
8349
  function BinaryOpSymbol(state) {
8215
8350
  let eventData;
@@ -8533,7 +8668,7 @@ ${input.slice(result.pos)}
8533
8668
  return result;
8534
8669
  }
8535
8670
  }
8536
- var BlockStatement$0 = $T($S(ExplicitBlock, $N($S(__, $EXPECT($L1, fail, 'BlockStatement "="')))), function(value) {
8671
+ var BlockStatement$0 = $T($S(ExplicitBlock, $N($S(__, $EXPECT($L2, fail, 'BlockStatement "="')))), function(value) {
8537
8672
  return value[0];
8538
8673
  });
8539
8674
  function BlockStatement(state) {
@@ -9296,11 +9431,17 @@ ${input.slice(result.pos)}
9296
9431
  if ($3) {
9297
9432
  const indent = module.currentIndent.token + " ";
9298
9433
  const block = "continue\n";
9299
- $2.blockPrefix.push([indent, {
9300
- type: "IfStatement",
9301
- then: block,
9302
- children: ["if (!(", module.insertTrimmingSpace($3, ""), ")) ", block]
9303
- }]);
9434
+ $2 = {
9435
+ ...$2,
9436
+ blockPrefix: [
9437
+ ...$2.blockPrefix,
9438
+ [indent, {
9439
+ type: "IfStatement",
9440
+ then: block,
9441
+ children: ["if (!(", module.insertTrimmingSpace($3, ""), ")) ", block]
9442
+ }]
9443
+ ]
9444
+ };
9304
9445
  }
9305
9446
  return $2;
9306
9447
  });
@@ -10063,7 +10204,7 @@ ${input.slice(result.pos)}
10063
10204
  }
10064
10205
  }
10065
10206
  var ImpliedColon$0 = $S($E(_), Colon);
10066
- var ImpliedColon$1 = $TV($EXPECT($L19, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
10207
+ var ImpliedColon$1 = $TV($EXPECT($L0, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
10067
10208
  return { $loc, token: ":" };
10068
10209
  });
10069
10210
  function ImpliedColon(state) {
@@ -10341,7 +10482,82 @@ ${input.slice(result.pos)}
10341
10482
  return result;
10342
10483
  }
10343
10484
  }
10344
- var ForbidIndentedApplication$0 = $TV($EXPECT($L19, fail, 'ForbidIndentedApplication ""'), function($skip, $loc, $0, $1) {
10485
+ var ForbidClassImplicitCall$0 = $TV($EXPECT($L0, fail, 'ForbidClassImplicitCall ""'), function($skip, $loc, $0, $1) {
10486
+ module.forbidIndentedApplication.push(true);
10487
+ });
10488
+ function ForbidClassImplicitCall(state) {
10489
+ let eventData;
10490
+ if (state.events) {
10491
+ const result = state.events.enter?.("ForbidClassImplicitCall", state);
10492
+ if (result) {
10493
+ if (result.cache)
10494
+ return result.cache;
10495
+ eventData = result.data;
10496
+ }
10497
+ }
10498
+ if (state.tokenize) {
10499
+ const result = $TOKEN("ForbidClassImplicitCall", state, ForbidClassImplicitCall$0(state));
10500
+ if (state.events)
10501
+ state.events.exit?.("ForbidClassImplicitCall", state, result, eventData);
10502
+ return result;
10503
+ } else {
10504
+ const result = ForbidClassImplicitCall$0(state);
10505
+ if (state.events)
10506
+ state.events.exit?.("ForbidClassImplicitCall", state, result, eventData);
10507
+ return result;
10508
+ }
10509
+ }
10510
+ var AllowClassImplicitCall$0 = $TV($EXPECT($L0, fail, 'AllowClassImplicitCall ""'), function($skip, $loc, $0, $1) {
10511
+ module.forbidIndentedApplication.push(false);
10512
+ });
10513
+ function AllowClassImplicitCall(state) {
10514
+ let eventData;
10515
+ if (state.events) {
10516
+ const result = state.events.enter?.("AllowClassImplicitCall", state);
10517
+ if (result) {
10518
+ if (result.cache)
10519
+ return result.cache;
10520
+ eventData = result.data;
10521
+ }
10522
+ }
10523
+ if (state.tokenize) {
10524
+ const result = $TOKEN("AllowClassImplicitCall", state, AllowClassImplicitCall$0(state));
10525
+ if (state.events)
10526
+ state.events.exit?.("AllowClassImplicitCall", state, result, eventData);
10527
+ return result;
10528
+ } else {
10529
+ const result = AllowClassImplicitCall$0(state);
10530
+ if (state.events)
10531
+ state.events.exit?.("AllowClassImplicitCall", state, result, eventData);
10532
+ return result;
10533
+ }
10534
+ }
10535
+ var RestoreClassImplicitCall$0 = $TV($EXPECT($L0, fail, 'RestoreClassImplicitCall ""'), function($skip, $loc, $0, $1) {
10536
+ module.forbidIndentedApplication.pop();
10537
+ });
10538
+ function RestoreClassImplicitCall(state) {
10539
+ let eventData;
10540
+ if (state.events) {
10541
+ const result = state.events.enter?.("RestoreClassImplicitCall", state);
10542
+ if (result) {
10543
+ if (result.cache)
10544
+ return result.cache;
10545
+ eventData = result.data;
10546
+ }
10547
+ }
10548
+ if (state.tokenize) {
10549
+ const result = $TOKEN("RestoreClassImplicitCall", state, RestoreClassImplicitCall$0(state));
10550
+ if (state.events)
10551
+ state.events.exit?.("RestoreClassImplicitCall", state, result, eventData);
10552
+ return result;
10553
+ } else {
10554
+ const result = RestoreClassImplicitCall$0(state);
10555
+ if (state.events)
10556
+ state.events.exit?.("RestoreClassImplicitCall", state, result, eventData);
10557
+ return result;
10558
+ }
10559
+ }
10560
+ var ForbidIndentedApplication$0 = $TV($EXPECT($L0, fail, 'ForbidIndentedApplication ""'), function($skip, $loc, $0, $1) {
10345
10561
  module.forbidIndentedApplication.push(true);
10346
10562
  });
10347
10563
  function ForbidIndentedApplication(state) {
@@ -10366,7 +10582,7 @@ ${input.slice(result.pos)}
10366
10582
  return result;
10367
10583
  }
10368
10584
  }
10369
- var AllowIndentedApplication$0 = $TV($EXPECT($L19, fail, 'AllowIndentedApplication ""'), function($skip, $loc, $0, $1) {
10585
+ var AllowIndentedApplication$0 = $TV($EXPECT($L0, fail, 'AllowIndentedApplication ""'), function($skip, $loc, $0, $1) {
10370
10586
  module.forbidIndentedApplication.push(false);
10371
10587
  });
10372
10588
  function AllowIndentedApplication(state) {
@@ -10391,7 +10607,7 @@ ${input.slice(result.pos)}
10391
10607
  return result;
10392
10608
  }
10393
10609
  }
10394
- var RestoreIndentedApplication$0 = $TV($EXPECT($L19, fail, 'RestoreIndentedApplication ""'), function($skip, $loc, $0, $1) {
10610
+ var RestoreIndentedApplication$0 = $TV($EXPECT($L0, fail, 'RestoreIndentedApplication ""'), function($skip, $loc, $0, $1) {
10395
10611
  module.forbidIndentedApplication.pop();
10396
10612
  });
10397
10613
  function RestoreIndentedApplication(state) {
@@ -10416,7 +10632,7 @@ ${input.slice(result.pos)}
10416
10632
  return result;
10417
10633
  }
10418
10634
  }
10419
- var IndentedApplicationAllowed$0 = $TV($EXPECT($L19, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
10635
+ var IndentedApplicationAllowed$0 = $TV($EXPECT($L0, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
10420
10636
  if (module.config.verbose) {
10421
10637
  console.log("forbidIndentedApplication:", module.forbidIndentedApplication);
10422
10638
  }
@@ -10446,7 +10662,7 @@ ${input.slice(result.pos)}
10446
10662
  return result;
10447
10663
  }
10448
10664
  }
10449
- var ForbidTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'ForbidTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10665
+ var ForbidTrailingMemberProperty$0 = $TV($EXPECT($L0, fail, 'ForbidTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10450
10666
  module.forbidTrailingMemberProperty.push(true);
10451
10667
  });
10452
10668
  function ForbidTrailingMemberProperty(state) {
@@ -10471,7 +10687,7 @@ ${input.slice(result.pos)}
10471
10687
  return result;
10472
10688
  }
10473
10689
  }
10474
- var AllowTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'AllowTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10690
+ var AllowTrailingMemberProperty$0 = $TV($EXPECT($L0, fail, 'AllowTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10475
10691
  module.forbidTrailingMemberProperty.push(false);
10476
10692
  });
10477
10693
  function AllowTrailingMemberProperty(state) {
@@ -10496,7 +10712,7 @@ ${input.slice(result.pos)}
10496
10712
  return result;
10497
10713
  }
10498
10714
  }
10499
- var RestoreTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'RestoreTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10715
+ var RestoreTrailingMemberProperty$0 = $TV($EXPECT($L0, fail, 'RestoreTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10500
10716
  module.forbidTrailingMemberProperty.pop();
10501
10717
  });
10502
10718
  function RestoreTrailingMemberProperty(state) {
@@ -10521,7 +10737,7 @@ ${input.slice(result.pos)}
10521
10737
  return result;
10522
10738
  }
10523
10739
  }
10524
- var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L19, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
10740
+ var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L0, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
10525
10741
  if (module.config.verbose) {
10526
10742
  console.log("forbidTrailingMemberProperty:", module.forbidTrailingMemberProperty);
10527
10743
  }
@@ -10550,7 +10766,7 @@ ${input.slice(result.pos)}
10550
10766
  return result;
10551
10767
  }
10552
10768
  }
10553
- var ForbidMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'ForbidMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10769
+ var ForbidMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L0, fail, 'ForbidMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10554
10770
  module.forbidMultiLineImplicitObjectLiteral.push(true);
10555
10771
  });
10556
10772
  function ForbidMultiLineImplicitObjectLiteral(state) {
@@ -10575,7 +10791,7 @@ ${input.slice(result.pos)}
10575
10791
  return result;
10576
10792
  }
10577
10793
  }
10578
- var AllowMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'AllowMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10794
+ var AllowMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L0, fail, 'AllowMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10579
10795
  module.forbidMultiLineImplicitObjectLiteral.push(false);
10580
10796
  });
10581
10797
  function AllowMultiLineImplicitObjectLiteral(state) {
@@ -10600,7 +10816,7 @@ ${input.slice(result.pos)}
10600
10816
  return result;
10601
10817
  }
10602
10818
  }
10603
- var RestoreMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'RestoreMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10819
+ var RestoreMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L0, fail, 'RestoreMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10604
10820
  module.forbidMultiLineImplicitObjectLiteral.pop();
10605
10821
  });
10606
10822
  function RestoreMultiLineImplicitObjectLiteral(state) {
@@ -10625,7 +10841,7 @@ ${input.slice(result.pos)}
10625
10841
  return result;
10626
10842
  }
10627
10843
  }
10628
- var MultiLineImplicitObjectLiteralAllowed$0 = $TV($EXPECT($L19, fail, 'MultiLineImplicitObjectLiteralAllowed ""'), function($skip, $loc, $0, $1) {
10844
+ var MultiLineImplicitObjectLiteralAllowed$0 = $TV($EXPECT($L0, fail, 'MultiLineImplicitObjectLiteralAllowed ""'), function($skip, $loc, $0, $1) {
10629
10845
  if (module.config.verbose) {
10630
10846
  console.log("forbidMultiLineImplicitObjectLiteral:", module.forbidMultiLineImplicitObjectLiteral);
10631
10847
  }
@@ -10654,7 +10870,7 @@ ${input.slice(result.pos)}
10654
10870
  return result;
10655
10871
  }
10656
10872
  }
10657
- var AllowAll$0 = $S(AllowTrailingMemberProperty, AllowIndentedApplication, AllowMultiLineImplicitObjectLiteral);
10873
+ var AllowAll$0 = $S(AllowTrailingMemberProperty, AllowIndentedApplication, AllowMultiLineImplicitObjectLiteral, AllowClassImplicitCall);
10658
10874
  function AllowAll(state) {
10659
10875
  let eventData;
10660
10876
  if (state.events) {
@@ -10677,7 +10893,7 @@ ${input.slice(result.pos)}
10677
10893
  return result;
10678
10894
  }
10679
10895
  }
10680
- var RestoreAll$0 = $S(RestoreTrailingMemberProperty, RestoreIndentedApplication, RestoreMultiLineImplicitObjectLiteral);
10896
+ var RestoreAll$0 = $S(RestoreTrailingMemberProperty, RestoreIndentedApplication, RestoreMultiLineImplicitObjectLiteral, RestoreClassImplicitCall);
10681
10897
  function RestoreAll(state) {
10682
10898
  let eventData;
10683
10899
  if (state.events) {
@@ -10739,7 +10955,7 @@ ${input.slice(result.pos)}
10739
10955
  var KeywordStatement$2 = $T($S(Debugger), function(value) {
10740
10956
  return { "type": "DebuggerStatement", "children": value };
10741
10957
  });
10742
- var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L4, fail, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10958
+ var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L5, fail, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10743
10959
  var expression = value[2];
10744
10960
  return { "type": "ReturnStatement", "expression": expression, "children": value };
10745
10961
  });
@@ -10929,10 +11145,14 @@ ${input.slice(result.pos)}
10929
11145
  }
10930
11146
  }
10931
11147
  var ImportDeclaration$0 = $T($S(Import, __, TypeKeyword, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
10932
- return { "ts": true, "children": value };
11148
+ return { "type": "ImportDeclaration", "ts": true, "children": value };
11149
+ });
11150
+ var ImportDeclaration$1 = $T($S(Import, __, ImportClause, __, FromClause, $E(ImportAssertion)), function(value) {
11151
+ return { "type": "ImportDeclaration", "children": value };
11152
+ });
11153
+ var ImportDeclaration$2 = $T($S(Import, __, ModuleSpecifier, $E(ImportAssertion)), function(value) {
11154
+ return { "type": "ImportDeclaration", "children": value };
10933
11155
  });
10934
- var ImportDeclaration$1 = $S(Import, __, ImportClause, __, FromClause, $E(ImportAssertion));
10935
- var ImportDeclaration$2 = $S(Import, __, ModuleSpecifier, $E(ImportAssertion));
10936
11156
  var ImportDeclaration$3 = $TS($S(ImpliedImport, $E($S(TypeKeyword, __)), ImportClause, __, FromClause, $E(ImportAssertion)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10937
11157
  var i = $1;
10938
11158
  var t = $2;
@@ -10947,7 +11167,7 @@ ${input.slice(result.pos)}
10947
11167
  const children = [i, t, c, w, f, a];
10948
11168
  if (!t)
10949
11169
  return children;
10950
- return { ts: true, children };
11170
+ return { type: "ImportDeclaration", ts: true, children };
10951
11171
  });
10952
11172
  function ImportDeclaration(state) {
10953
11173
  let eventData;
@@ -10971,7 +11191,7 @@ ${input.slice(result.pos)}
10971
11191
  return result;
10972
11192
  }
10973
11193
  }
10974
- var ImpliedImport$0 = $TV($EXPECT($L19, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
11194
+ var ImpliedImport$0 = $TV($EXPECT($L0, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
10975
11195
  return { $loc, token: "import " };
10976
11196
  });
10977
11197
  function ImpliedImport(state) {
@@ -11223,7 +11443,7 @@ ${input.slice(result.pos)}
11223
11443
  }
11224
11444
  }
11225
11445
  var ImportAsToken$0 = $S(__, As);
11226
- var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L8, fail, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11446
+ var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L9, fail, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11227
11447
  var l = $1;
11228
11448
  var ws = $2;
11229
11449
  var c = $3;
@@ -11385,16 +11605,15 @@ ${input.slice(result.pos)}
11385
11605
  return result;
11386
11606
  }
11387
11607
  }
11388
- var ExportDeclaration$0 = $S(Export, __, Default, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression));
11608
+ var ExportDeclaration$0 = $TS($S(Export, __, Default, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11609
+ return { type: "ExportDeclaration", children: $0 };
11610
+ });
11389
11611
  var ExportDeclaration$1 = $TS($S(Export, __, ExportFromClause, __, FromClause), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11390
- if (!$3.ts)
11391
- return $0;
11392
- return { ts: true, children: $0 };
11612
+ return { type: "ExportDeclaration", ts: $3.ts, children: $0 };
11393
11613
  });
11394
- var ExportDeclaration$2 = $TS($S(Export, __, $C(Declaration, VariableStatement, TypeAndNamedExports, ExportVarDec)), function($skip, $loc, $0, $1, $2, $3) {
11395
- if (!$3.ts)
11396
- return $0;
11397
- return { ts: true, children: $0 };
11614
+ var ExportDeclaration$2 = $TS($S($E(Decorators), Export, __, $C(Declaration, VariableStatement, TypeAndNamedExports, ExportVarDec)), function($skip, $loc, $0, $1, $2, $3, $4) {
11615
+ var decl = $4;
11616
+ return { type: "ExportDeclaration", ts: decl.ts, children: $0 };
11398
11617
  });
11399
11618
  function ExportDeclaration(state) {
11400
11619
  let eventData;
@@ -13365,7 +13584,7 @@ ${input.slice(result.pos)}
13365
13584
  }
13366
13585
  }
13367
13586
  var StatementDelimiter$0 = SemicolonDelimiter;
13368
- var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L2, fail, 'StatementDelimiter "("'), $EXPECT($L97, fail, 'StatementDelimiter "["'), $EXPECT($L98, fail, 'StatementDelimiter "`"'), $EXPECT($L58, fail, 'StatementDelimiter "+"'), $EXPECT($L17, fail, 'StatementDelimiter "-"'), $EXPECT($L54, fail, 'StatementDelimiter "*"'), $EXPECT($L55, fail, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, FatArrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L2, fail, 'StatementDelimiter "("'))))), InsertSemicolon);
13587
+ var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L3, fail, 'StatementDelimiter "("'), $EXPECT($L97, fail, 'StatementDelimiter "["'), $EXPECT($L98, fail, 'StatementDelimiter "`"'), $EXPECT($L58, fail, 'StatementDelimiter "+"'), $EXPECT($L18, fail, 'StatementDelimiter "-"'), $EXPECT($L54, fail, 'StatementDelimiter "*"'), $EXPECT($L55, fail, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, FatArrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L3, fail, 'StatementDelimiter "("'))))), InsertSemicolon);
13369
13588
  var StatementDelimiter$2 = $Y(EOS);
13370
13589
  function StatementDelimiter(state) {
13371
13590
  let eventData;
@@ -13440,7 +13659,7 @@ ${input.slice(result.pos)}
13440
13659
  return result;
13441
13660
  }
13442
13661
  }
13443
- var Loc$0 = $TV($EXPECT($L19, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
13662
+ var Loc$0 = $TV($EXPECT($L0, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
13444
13663
  return { $loc, token: "" };
13445
13664
  });
13446
13665
  function Loc(state) {
@@ -13465,7 +13684,7 @@ ${input.slice(result.pos)}
13465
13684
  return result;
13466
13685
  }
13467
13686
  }
13468
- var Abstract$0 = $TV($TEXT($S($EXPECT($L99, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L8, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
13687
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L99, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L9, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
13469
13688
  return { $loc, token: $1, ts: true };
13470
13689
  });
13471
13690
  function Abstract(state) {
@@ -14040,7 +14259,7 @@ ${input.slice(result.pos)}
14040
14259
  return result;
14041
14260
  }
14042
14261
  }
14043
- var Dot$0 = $TV($EXPECT($L4, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
14262
+ var Dot$0 = $TV($EXPECT($L5, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
14044
14263
  return { $loc, token: $1 };
14045
14264
  });
14046
14265
  function Dot(state) {
@@ -14065,7 +14284,7 @@ ${input.slice(result.pos)}
14065
14284
  return result;
14066
14285
  }
14067
14286
  }
14068
- var DotDot$0 = $TS($S($EXPECT($L114, fail, 'DotDot ".."'), $N($EXPECT($L4, fail, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
14287
+ var DotDot$0 = $TS($S($EXPECT($L114, fail, 'DotDot ".."'), $N($EXPECT($L5, fail, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
14069
14288
  return { $loc, token: $1 };
14070
14289
  });
14071
14290
  function DotDot(state) {
@@ -14190,7 +14409,7 @@ ${input.slice(result.pos)}
14190
14409
  return result;
14191
14410
  }
14192
14411
  }
14193
- var Equals$0 = $TV($EXPECT($L1, fail, 'Equals "="'), function($skip, $loc, $0, $1) {
14412
+ var Equals$0 = $TV($EXPECT($L2, fail, 'Equals "="'), function($skip, $loc, $0, $1) {
14194
14413
  return { $loc, token: $1 };
14195
14414
  });
14196
14415
  function Equals(state) {
@@ -14390,7 +14609,7 @@ ${input.slice(result.pos)}
14390
14609
  return result;
14391
14610
  }
14392
14611
  }
14393
- var If$0 = $TV($TEXT($S($EXPECT($L127, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L8, fail, 'If " "')))), function($skip, $loc, $0, $1) {
14612
+ var If$0 = $TV($TEXT($S($EXPECT($L127, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L9, fail, 'If " "')))), function($skip, $loc, $0, $1) {
14394
14613
  return { $loc, token: $1 };
14395
14614
  });
14396
14615
  function If(state) {
@@ -14415,7 +14634,7 @@ ${input.slice(result.pos)}
14415
14634
  return result;
14416
14635
  }
14417
14636
  }
14418
- var Import$0 = $TS($S($EXPECT($L13, fail, 'Import "import"'), $Y($EXPECT($R49, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
14637
+ var Import$0 = $TS($S($EXPECT($L14, fail, 'Import "import"'), $Y($EXPECT($R49, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
14419
14638
  return { $loc, token: $1 };
14420
14639
  });
14421
14640
  function Import(state) {
@@ -14589,7 +14808,7 @@ ${input.slice(result.pos)}
14589
14808
  return result;
14590
14809
  }
14591
14810
  }
14592
- var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L52, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L8, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
14811
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L52, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L9, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
14593
14812
  return { $loc, token: "!" };
14594
14813
  });
14595
14814
  function Not(state) {
@@ -14714,7 +14933,7 @@ ${input.slice(result.pos)}
14714
14933
  return result;
14715
14934
  }
14716
14935
  }
14717
- var OpenParen$0 = $TV($EXPECT($L2, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
14936
+ var OpenParen$0 = $TV($EXPECT($L3, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
14718
14937
  return { $loc, token: $1 };
14719
14938
  });
14720
14939
  function OpenParen(state) {
@@ -14870,7 +15089,7 @@ ${input.slice(result.pos)}
14870
15089
  return result;
14871
15090
  }
14872
15091
  }
14873
- var QuestionMark$0 = $TV($EXPECT($L3, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
15092
+ var QuestionMark$0 = $TV($EXPECT($L4, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
14874
15093
  return { $loc, token: $1 };
14875
15094
  });
14876
15095
  function QuestionMark(state) {
@@ -15048,7 +15267,7 @@ ${input.slice(result.pos)}
15048
15267
  var Static$0 = $TS($S($EXPECT($L145, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15049
15268
  return { $loc, token: $1 };
15050
15269
  });
15051
- var Static$1 = $TS($S($EXPECT($L101, fail, 'Static "@"'), $N($C($EXPECT($L2, fail, 'Static "("'), $EXPECT($L101, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
15270
+ var Static$1 = $TS($S($EXPECT($L101, fail, 'Static "@"'), $N($C($EXPECT($L3, fail, 'Static "("'), $EXPECT($L101, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
15052
15271
  return { $loc, token: "static " };
15053
15272
  });
15054
15273
  function Static(state) {
@@ -15719,7 +15938,7 @@ ${input.slice(result.pos)}
15719
15938
  return result;
15720
15939
  }
15721
15940
  }
15722
- var PopJSXStack$0 = $TV($EXPECT($L19, fail, 'PopJSXStack ""'), function($skip, $loc, $0, $1) {
15941
+ var PopJSXStack$0 = $TV($EXPECT($L0, fail, 'PopJSXStack ""'), function($skip, $loc, $0, $1) {
15723
15942
  module.JSXTagStack.pop();
15724
15943
  });
15725
15944
  function PopJSXStack(state) {
@@ -15773,7 +15992,7 @@ ${input.slice(result.pos)}
15773
15992
  return $skip;
15774
15993
  return $0;
15775
15994
  });
15776
- var JSXOptionalClosingElement$1 = $EXPECT($L19, fail, 'JSXOptionalClosingElement ""');
15995
+ var JSXOptionalClosingElement$1 = $EXPECT($L0, fail, 'JSXOptionalClosingElement ""');
15777
15996
  function JSXOptionalClosingElement(state) {
15778
15997
  let eventData;
15779
15998
  if (state.events) {
@@ -15896,7 +16115,7 @@ ${input.slice(result.pos)}
15896
16115
  return $skip;
15897
16116
  return $0;
15898
16117
  });
15899
- var JSXOptionalClosingFragment$1 = $EXPECT($L19, fail, 'JSXOptionalClosingFragment ""');
16118
+ var JSXOptionalClosingFragment$1 = $EXPECT($L0, fail, 'JSXOptionalClosingFragment ""');
15900
16119
  function JSXOptionalClosingFragment(state) {
15901
16120
  let eventData;
15902
16121
  if (state.events) {
@@ -16144,7 +16363,7 @@ ${input.slice(result.pos)}
16144
16363
  }
16145
16364
  });
16146
16365
  var JSXAttribute$2 = $S(InsertInlineOpenBrace, DotDotDot, InlineJSXAttributeValue, InsertCloseBrace, $Y(JSXAttributeSpace));
16147
- var JSXAttribute$3 = $TS($S($EXPECT($L11, fail, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
16366
+ var JSXAttribute$3 = $TS($S($EXPECT($L12, fail, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
16148
16367
  return [" ", "id=", $2];
16149
16368
  });
16150
16369
  var JSXAttribute$4 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -16471,8 +16690,8 @@ ${input.slice(result.pos)}
16471
16690
  return result;
16472
16691
  }
16473
16692
  }
16474
- var InlineJSXCallExpression$0 = $S($EXPECT($L12, fail, 'InlineJSXCallExpression "super"'), ExplicitArguments);
16475
- var InlineJSXCallExpression$1 = $S($EXPECT($L13, fail, 'InlineJSXCallExpression "import"'), OpenParen, PostfixedExpression, __, CloseParen);
16693
+ var InlineJSXCallExpression$0 = $S($EXPECT($L13, fail, 'InlineJSXCallExpression "super"'), ExplicitArguments);
16694
+ var InlineJSXCallExpression$1 = $S($EXPECT($L14, fail, 'InlineJSXCallExpression "import"'), OpenParen, PostfixedExpression, __, CloseParen);
16476
16695
  var InlineJSXCallExpression$2 = $TS($S(InlineJSXMemberExpression, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2) {
16477
16696
  if ($2.length)
16478
16697
  return $0;
@@ -17568,7 +17787,7 @@ ${input.slice(result.pos)}
17568
17787
  return result;
17569
17788
  }
17570
17789
  }
17571
- var DeclareElement$0 = $T($S($E($S(Export, $E(_))), TypeLexicalDeclaration), function(value) {
17790
+ var DeclareElement$0 = $T($S($E(Decorators), $E($S(Export, $E(_))), TypeLexicalDeclaration), function(value) {
17572
17791
  return { "ts": true, "children": value };
17573
17792
  });
17574
17793
  var DeclareElement$1 = $T($S($E($S(Export, $E(_))), TypeDeclarationRest), function(value) {
@@ -17617,7 +17836,7 @@ ${input.slice(result.pos)}
17617
17836
  let init, isString;
17618
17837
  if (property.init) {
17619
17838
  init = module.replaceNodes(
17620
- structuredClone(property.init),
17839
+ module.deepCopy(property.init),
17621
17840
  (n) => n.type === "Identifier" && names.has(n.name),
17622
17841
  (n) => [id, '["', n.name, '"]']
17623
17842
  );
@@ -18156,8 +18375,8 @@ ${input.slice(result.pos)}
18156
18375
  return result;
18157
18376
  }
18158
18377
  }
18159
- var ImportType$0 = $S($EXPECT($L13, fail, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
18160
- var ImportType$1 = $S($EXPECT($L13, fail, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
18378
+ var ImportType$0 = $S($EXPECT($L14, fail, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
18379
+ var ImportType$1 = $S($EXPECT($L14, fail, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
18161
18380
  function ImportType(state) {
18162
18381
  let eventData;
18163
18382
  if (state.events) {
@@ -18466,7 +18685,7 @@ ${input.slice(result.pos)}
18466
18685
  return result;
18467
18686
  }
18468
18687
  }
18469
- var TypeArrowFunction$0 = $TV($EXPECT($L7, fail, 'TypeArrowFunction "=>"'), function($skip, $loc, $0, $1) {
18688
+ var TypeArrowFunction$0 = $TV($EXPECT($L8, fail, 'TypeArrowFunction "=>"'), function($skip, $loc, $0, $1) {
18470
18689
  return { $loc, token: "=>" };
18471
18690
  });
18472
18691
  var TypeArrowFunction$1 = $TV($EXPECT($L21, fail, 'TypeArrowFunction "->"'), function($skip, $loc, $0, $1) {
@@ -18642,7 +18861,7 @@ ${input.slice(result.pos)}
18642
18861
  return result;
18643
18862
  }
18644
18863
  }
18645
- var TypeInitializer$0 = $S(__, $EXPECT($L1, fail, 'TypeInitializer "="'), Type);
18864
+ var TypeInitializer$0 = $S(__, $EXPECT($L2, fail, 'TypeInitializer "="'), Type);
18646
18865
  function TypeInitializer(state) {
18647
18866
  let eventData;
18648
18867
  if (state.events) {
@@ -18931,7 +19150,7 @@ ${input.slice(result.pos)}
18931
19150
  return result;
18932
19151
  }
18933
19152
  }
18934
- var DebugHere$0 = $TV($EXPECT($L19, fail, 'DebugHere ""'), function($skip, $loc, $0, $1) {
19153
+ var DebugHere$0 = $TV($EXPECT($L0, fail, 'DebugHere ""'), function($skip, $loc, $0, $1) {
18935
19154
  debugger;
18936
19155
  });
18937
19156
  function DebugHere(state) {
@@ -18956,7 +19175,7 @@ ${input.slice(result.pos)}
18956
19175
  return result;
18957
19176
  }
18958
19177
  }
18959
- var InsertSemicolon$0 = $TV($EXPECT($L19, fail, 'InsertSemicolon ""'), function($skip, $loc, $0, $1) {
19178
+ var InsertSemicolon$0 = $TV($EXPECT($L0, fail, 'InsertSemicolon ""'), function($skip, $loc, $0, $1) {
18960
19179
  return { $loc, token: ";" };
18961
19180
  });
18962
19181
  function InsertSemicolon(state) {
@@ -18981,7 +19200,7 @@ ${input.slice(result.pos)}
18981
19200
  return result;
18982
19201
  }
18983
19202
  }
18984
- var InsertOpenParen$0 = $TV($EXPECT($L19, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
19203
+ var InsertOpenParen$0 = $TV($EXPECT($L0, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
18985
19204
  return { $loc, token: "(" };
18986
19205
  });
18987
19206
  function InsertOpenParen(state) {
@@ -19006,7 +19225,7 @@ ${input.slice(result.pos)}
19006
19225
  return result;
19007
19226
  }
19008
19227
  }
19009
- var InsertCloseParen$0 = $TV($EXPECT($L19, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
19228
+ var InsertCloseParen$0 = $TV($EXPECT($L0, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
19010
19229
  return { $loc, token: ")" };
19011
19230
  });
19012
19231
  function InsertCloseParen(state) {
@@ -19031,7 +19250,7 @@ ${input.slice(result.pos)}
19031
19250
  return result;
19032
19251
  }
19033
19252
  }
19034
- var InsertOpenBrace$0 = $TV($EXPECT($L19, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
19253
+ var InsertOpenBrace$0 = $TV($EXPECT($L0, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
19035
19254
  return [{ $loc, token: " " }, { $loc, token: "{" }];
19036
19255
  });
19037
19256
  function InsertOpenBrace(state) {
@@ -19056,7 +19275,7 @@ ${input.slice(result.pos)}
19056
19275
  return result;
19057
19276
  }
19058
19277
  }
19059
- var InsertInlineOpenBrace$0 = $TV($EXPECT($L19, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
19278
+ var InsertInlineOpenBrace$0 = $TV($EXPECT($L0, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
19060
19279
  return { $loc, token: "{" };
19061
19280
  });
19062
19281
  function InsertInlineOpenBrace(state) {
@@ -19081,7 +19300,7 @@ ${input.slice(result.pos)}
19081
19300
  return result;
19082
19301
  }
19083
19302
  }
19084
- var InsertCloseBrace$0 = $TV($EXPECT($L19, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
19303
+ var InsertCloseBrace$0 = $TV($EXPECT($L0, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
19085
19304
  return { $loc, token: "}" };
19086
19305
  });
19087
19306
  function InsertCloseBrace(state) {
@@ -19106,7 +19325,7 @@ ${input.slice(result.pos)}
19106
19325
  return result;
19107
19326
  }
19108
19327
  }
19109
- var InsertOpenBracket$0 = $TV($EXPECT($L19, fail, 'InsertOpenBracket ""'), function($skip, $loc, $0, $1) {
19328
+ var InsertOpenBracket$0 = $TV($EXPECT($L0, fail, 'InsertOpenBracket ""'), function($skip, $loc, $0, $1) {
19110
19329
  return { $loc, token: "[" };
19111
19330
  });
19112
19331
  function InsertOpenBracket(state) {
@@ -19131,7 +19350,7 @@ ${input.slice(result.pos)}
19131
19350
  return result;
19132
19351
  }
19133
19352
  }
19134
- var InsertCloseBracket$0 = $TV($EXPECT($L19, fail, 'InsertCloseBracket ""'), function($skip, $loc, $0, $1) {
19353
+ var InsertCloseBracket$0 = $TV($EXPECT($L0, fail, 'InsertCloseBracket ""'), function($skip, $loc, $0, $1) {
19135
19354
  return { $loc, token: "]" };
19136
19355
  });
19137
19356
  function InsertCloseBracket(state) {
@@ -19156,7 +19375,7 @@ ${input.slice(result.pos)}
19156
19375
  return result;
19157
19376
  }
19158
19377
  }
19159
- var InsertComma$0 = $TV($EXPECT($L19, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
19378
+ var InsertComma$0 = $TV($EXPECT($L0, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
19160
19379
  return { $loc, token: "," };
19161
19380
  });
19162
19381
  function InsertComma(state) {
@@ -19181,7 +19400,7 @@ ${input.slice(result.pos)}
19181
19400
  return result;
19182
19401
  }
19183
19402
  }
19184
- var InsertConst$0 = $TV($EXPECT($L19, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
19403
+ var InsertConst$0 = $TV($EXPECT($L0, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
19185
19404
  return { $loc, token: "const " };
19186
19405
  });
19187
19406
  function InsertConst(state) {
@@ -19206,7 +19425,7 @@ ${input.slice(result.pos)}
19206
19425
  return result;
19207
19426
  }
19208
19427
  }
19209
- var InsertLet$0 = $TV($EXPECT($L19, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
19428
+ var InsertLet$0 = $TV($EXPECT($L0, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
19210
19429
  return { $loc, token: "let " };
19211
19430
  });
19212
19431
  function InsertLet(state) {
@@ -19231,7 +19450,7 @@ ${input.slice(result.pos)}
19231
19450
  return result;
19232
19451
  }
19233
19452
  }
19234
- var InsertReadonly$0 = $TV($EXPECT($L19, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
19453
+ var InsertReadonly$0 = $TV($EXPECT($L0, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
19235
19454
  return { ts: true, children: [{ $loc, token: "readonly " }] };
19236
19455
  });
19237
19456
  function InsertReadonly(state) {
@@ -19256,7 +19475,7 @@ ${input.slice(result.pos)}
19256
19475
  return result;
19257
19476
  }
19258
19477
  }
19259
- var InsertNewline$0 = $TV($EXPECT($L19, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
19478
+ var InsertNewline$0 = $TV($EXPECT($L0, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
19260
19479
  return "\n";
19261
19480
  });
19262
19481
  function InsertNewline(state) {
@@ -19281,7 +19500,7 @@ ${input.slice(result.pos)}
19281
19500
  return result;
19282
19501
  }
19283
19502
  }
19284
- var InsertIndent$0 = $TV($EXPECT($L19, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
19503
+ var InsertIndent$0 = $TV($EXPECT($L0, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
19285
19504
  return module.currentIndent.token;
19286
19505
  });
19287
19506
  function InsertIndent(state) {
@@ -19306,7 +19525,7 @@ ${input.slice(result.pos)}
19306
19525
  return result;
19307
19526
  }
19308
19527
  }
19309
- var InsertSpace$0 = $TV($EXPECT($L19, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
19528
+ var InsertSpace$0 = $TV($EXPECT($L0, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
19310
19529
  return { $loc, token: " " };
19311
19530
  });
19312
19531
  function InsertSpace(state) {
@@ -19331,7 +19550,7 @@ ${input.slice(result.pos)}
19331
19550
  return result;
19332
19551
  }
19333
19552
  }
19334
- var InsertDot$0 = $TV($EXPECT($L19, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
19553
+ var InsertDot$0 = $TV($EXPECT($L0, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
19335
19554
  return { $loc, token: "." };
19336
19555
  });
19337
19556
  function InsertDot(state) {
@@ -19356,7 +19575,7 @@ ${input.slice(result.pos)}
19356
19575
  return result;
19357
19576
  }
19358
19577
  }
19359
- var InsertBreak$0 = $TV($EXPECT($L19, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
19578
+ var InsertBreak$0 = $TV($EXPECT($L0, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
19360
19579
  return { $loc, token: ";break;" };
19361
19580
  });
19362
19581
  function InsertBreak(state) {
@@ -19381,7 +19600,7 @@ ${input.slice(result.pos)}
19381
19600
  return result;
19382
19601
  }
19383
19602
  }
19384
- var InsertVar$0 = $TV($EXPECT($L19, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
19603
+ var InsertVar$0 = $TV($EXPECT($L0, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
19385
19604
  return { $loc, token: "var " };
19386
19605
  });
19387
19606
  function InsertVar(state) {
@@ -19406,7 +19625,7 @@ ${input.slice(result.pos)}
19406
19625
  return result;
19407
19626
  }
19408
19627
  }
19409
- var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
19628
+ var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
19410
19629
  if (module.config.coffeeBinaryExistential)
19411
19630
  return;
19412
19631
  return $skip;
@@ -19433,7 +19652,7 @@ ${input.slice(result.pos)}
19433
19652
  return result;
19434
19653
  }
19435
19654
  }
19436
- var CoffeeBooleansEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
19655
+ var CoffeeBooleansEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
19437
19656
  if (module.config.coffeeBooleans)
19438
19657
  return;
19439
19658
  return $skip;
@@ -19460,7 +19679,7 @@ ${input.slice(result.pos)}
19460
19679
  return result;
19461
19680
  }
19462
19681
  }
19463
- var CoffeeClassesEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
19682
+ var CoffeeClassesEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
19464
19683
  if (module.config.coffeeClasses)
19465
19684
  return;
19466
19685
  return $skip;
@@ -19487,7 +19706,7 @@ ${input.slice(result.pos)}
19487
19706
  return result;
19488
19707
  }
19489
19708
  }
19490
- var CoffeeCommentEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
19709
+ var CoffeeCommentEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
19491
19710
  if (module.config.coffeeComment)
19492
19711
  return;
19493
19712
  return $skip;
@@ -19514,7 +19733,7 @@ ${input.slice(result.pos)}
19514
19733
  return result;
19515
19734
  }
19516
19735
  }
19517
- var CoffeeDoEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
19736
+ var CoffeeDoEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
19518
19737
  if (module.config.coffeeDo)
19519
19738
  return;
19520
19739
  return $skip;
@@ -19541,7 +19760,7 @@ ${input.slice(result.pos)}
19541
19760
  return result;
19542
19761
  }
19543
19762
  }
19544
- var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
19763
+ var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
19545
19764
  if (module.config.coffeeForLoops)
19546
19765
  return;
19547
19766
  return $skip;
@@ -19568,7 +19787,7 @@ ${input.slice(result.pos)}
19568
19787
  return result;
19569
19788
  }
19570
19789
  }
19571
- var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
19790
+ var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
19572
19791
  if (module.config.coffeeInterpolation)
19573
19792
  return;
19574
19793
  return $skip;
@@ -19595,7 +19814,7 @@ ${input.slice(result.pos)}
19595
19814
  return result;
19596
19815
  }
19597
19816
  }
19598
- var CoffeeIsntEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
19817
+ var CoffeeIsntEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
19599
19818
  if (module.config.coffeeIsnt)
19600
19819
  return;
19601
19820
  return $skip;
@@ -19622,7 +19841,7 @@ ${input.slice(result.pos)}
19622
19841
  return result;
19623
19842
  }
19624
19843
  }
19625
- var CoffeeJSXEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
19844
+ var CoffeeJSXEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
19626
19845
  if (module.config.coffeeJSX)
19627
19846
  return;
19628
19847
  return $skip;
@@ -19649,7 +19868,7 @@ ${input.slice(result.pos)}
19649
19868
  return result;
19650
19869
  }
19651
19870
  }
19652
- var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
19871
+ var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
19653
19872
  if (module.config.coffeeLineContinuation)
19654
19873
  return;
19655
19874
  return $skip;
@@ -19676,7 +19895,7 @@ ${input.slice(result.pos)}
19676
19895
  return result;
19677
19896
  }
19678
19897
  }
19679
- var CoffeeNotEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
19898
+ var CoffeeNotEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
19680
19899
  if (module.config.coffeeNot)
19681
19900
  return;
19682
19901
  return $skip;
@@ -19703,7 +19922,7 @@ ${input.slice(result.pos)}
19703
19922
  return result;
19704
19923
  }
19705
19924
  }
19706
- var CoffeeOfEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
19925
+ var CoffeeOfEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
19707
19926
  if (module.config.coffeeOf)
19708
19927
  return;
19709
19928
  return $skip;
@@ -19730,7 +19949,7 @@ ${input.slice(result.pos)}
19730
19949
  return result;
19731
19950
  }
19732
19951
  }
19733
- var CoffeePrototypeEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
19952
+ var CoffeePrototypeEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
19734
19953
  if (module.config.coffeePrototype)
19735
19954
  return;
19736
19955
  return $skip;
@@ -19757,7 +19976,7 @@ ${input.slice(result.pos)}
19757
19976
  return result;
19758
19977
  }
19759
19978
  }
19760
- var ObjectIsEnabled$0 = $TV($EXPECT($L19, fail, 'ObjectIsEnabled ""'), function($skip, $loc, $0, $1) {
19979
+ var ObjectIsEnabled$0 = $TV($EXPECT($L0, fail, 'ObjectIsEnabled ""'), function($skip, $loc, $0, $1) {
19761
19980
  if (module.config.objectIs)
19762
19981
  return;
19763
19982
  return $skip;
@@ -19784,11 +20003,12 @@ ${input.slice(result.pos)}
19784
20003
  return result;
19785
20004
  }
19786
20005
  }
19787
- var Reset$0 = $TV($EXPECT($L19, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
20006
+ var Reset$0 = $TV($EXPECT($L0, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
19788
20007
  module.indentLevels = [{
19789
20008
  level: 0,
19790
20009
  token: ""
19791
20010
  }];
20011
+ module.forbidClassImplicitCall = [false];
19792
20012
  module.forbidIndentedApplication = [false];
19793
20013
  module.forbidTrailingMemberProperty = [false];
19794
20014
  module.forbidMultiLineImplicitObjectLiteral = [false];
@@ -19803,6 +20023,12 @@ ${input.slice(result.pos)}
19803
20023
  return l[l.length - 1];
19804
20024
  }
19805
20025
  },
20026
+ classImplicitCallForbidden: {
20027
+ get() {
20028
+ const { forbidClassImplicitCall: s } = module;
20029
+ return s[s.length - 1];
20030
+ }
20031
+ },
19806
20032
  indentedApplicationForbidden: {
19807
20033
  get() {
19808
20034
  const { forbidIndentedApplication: s } = module;
@@ -20094,7 +20320,7 @@ ${input.slice(result.pos)}
20094
20320
  return result;
20095
20321
  }
20096
20322
  }
20097
- var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L19, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
20323
+ var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L0, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
20098
20324
  var directives = $2;
20099
20325
  directives.forEach((directive) => {
20100
20326
  if (directive.type === "CivetPrologue") {
@@ -20405,9 +20631,7 @@ ${input.slice(result.pos)}
20405
20631
  const [, exp] = node;
20406
20632
  if (!exp)
20407
20633
  return;
20408
- let indent = node[0];
20409
- if (Array.isArray(indent))
20410
- indent = indent[indent.length - 1];
20634
+ const indent = getIndent(node);
20411
20635
  switch (exp.type) {
20412
20636
  case "BreakStatement":
20413
20637
  case "ContinueStatement":
@@ -20808,7 +21032,12 @@ ${input.slice(result.pos)}
20808
21032
  if (trim) {
20809
21033
  str = str.replace(/^(\r?\n|\n)/, "").replace(/(\r?\n|\n)[ \t]*$/, "");
20810
21034
  }
20811
- str = str.replace(/(`|\$\{)/g, "\\$1");
21035
+ str = str.replace(/(\\.|`|\$\{)/g, (s) => {
21036
+ if (s[0] === "\\") {
21037
+ return s;
21038
+ }
21039
+ return `\\${s}`;
21040
+ });
20812
21041
  return {
20813
21042
  $loc: $loc2,
20814
21043
  token: str
@@ -21002,8 +21231,23 @@ ${input.slice(result.pos)}
21002
21231
  }
21003
21232
  function clone(node) {
21004
21233
  removeParentPointers(node);
21005
- return structuredClone(node);
21234
+ return deepCopy(node);
21006
21235
  }
21236
+ function deepCopy(node) {
21237
+ if (node == null)
21238
+ return node;
21239
+ if (typeof node !== "object")
21240
+ return node;
21241
+ if (Array.isArray(node)) {
21242
+ return node.map(deepCopy);
21243
+ }
21244
+ return Object.fromEntries(
21245
+ Object.entries(node).map(([key, value]) => {
21246
+ return [key, deepCopy(value)];
21247
+ })
21248
+ );
21249
+ }
21250
+ module.deepCopy = deepCopy;
21007
21251
  function findAncestor(node, predicate, stopPredicate) {
21008
21252
  node = node.parent;
21009
21253
  while (node && !stopPredicate?.(node)) {
@@ -21788,11 +22032,7 @@ ${input.slice(result.pos)}
21788
22032
  adjustAtBindings(statements);
21789
22033
  };
21790
22034
  function findDecs(statements) {
21791
- const declarationNames = gatherNodes(statements, (node) => {
21792
- if (node.type === "Declaration") {
21793
- return true;
21794
- }
21795
- }).flatMap((d) => d.names);
22035
+ const declarationNames = gatherNodes(statements, ({ type }) => type === "Declaration").flatMap((d) => d.names);
21796
22036
  return new Set(declarationNames);
21797
22037
  }
21798
22038
  function populateRefs(statements) {
@@ -21839,9 +22079,7 @@ ${input.slice(result.pos)}
21839
22079
  scopes.push(decs);
21840
22080
  const varIds = [];
21841
22081
  const assignmentStatements = findAssignments(statements, scopes);
21842
- const undeclaredIdentifiers = assignmentStatements.flatMap((a) => {
21843
- return a.names;
21844
- });
22082
+ const undeclaredIdentifiers = assignmentStatements.flatMap((a) => a.names);
21845
22083
  undeclaredIdentifiers.filter((x, i, a) => {
21846
22084
  if (!hasDec(x))
21847
22085
  return a.indexOf(x) === i;
@@ -21865,9 +22103,7 @@ ${input.slice(result.pos)}
21865
22103
  scopes.pop();
21866
22104
  });
21867
22105
  if (varIds.length) {
21868
- let indent = statements[0][0];
21869
- if (Array.isArray(indent))
21870
- indent = indent[indent.length - 1];
22106
+ const indent = getIndent(statements[0]);
21871
22107
  statements.unshift([indent, "var ", varIds.join(", "), "\n"]);
21872
22108
  }
21873
22109
  scopes.pop();
@@ -22100,6 +22336,7 @@ ${input.slice(result.pos)}
22100
22336
  console.log("pushing indent", indent);
22101
22337
  }
22102
22338
  module.indentLevels.push(indent);
22339
+ return $1;
22103
22340
  });
22104
22341
  function TrackIndented(state) {
22105
22342
  let eventData;
@@ -22238,7 +22475,7 @@ ${input.slice(result.pos)}
22238
22475
  return result;
22239
22476
  }
22240
22477
  }
22241
- var PopIndent$0 = $TV($EXPECT($L19, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
22478
+ var PopIndent$0 = $TV($EXPECT($L0, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
22242
22479
  if (module.config.verbose) {
22243
22480
  console.log("popping indent", module.indentLevels[module.indentLevels.length - 1], "->", module.indentLevels[module.indentLevels.length - 2]);
22244
22481
  }