@danielx/civet 0.5.89 → 0.5.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.mjs CHANGED
@@ -433,16 +433,18 @@ var require_lib = __commonJS({
433
433
  }
434
434
  let [splices, thisAssignments] = gatherBindingCode(id);
435
435
  splices = splices.map((s) => [", ", s]);
436
- thisAssignments = thisAssignments.map((a) => [";", a]);
436
+ thisAssignments = thisAssignments.map((a) => ["", a, ";"]);
437
437
  const binding = [c, id, suffix, ...ws];
438
- const initializer = [ca, e, ...splices, ...thisAssignments];
438
+ const initializer = [ca, e];
439
439
  const children = [binding, initializer];
440
440
  return {
441
441
  type: "Declaration",
442
442
  names: id.names,
443
443
  children,
444
444
  binding,
445
- initializer
445
+ initializer,
446
+ splices,
447
+ thisAssignments
446
448
  };
447
449
  }
448
450
  function processLetAssignmentDeclaration(l, id, suffix, ws, la, e) {
@@ -455,18 +457,87 @@ var require_lib = __commonJS({
455
457
  };
456
458
  let [splices, thisAssignments] = gatherBindingCode(id);
457
459
  splices = splices.map((s) => [", ", s]);
458
- thisAssignments = thisAssignments.map((a) => [";", a]);
460
+ thisAssignments = thisAssignments.map((a) => ["", a, ";"]);
459
461
  const binding = [l, id, suffix, ...ws];
460
- const initializer = [la, e, ...splices, ...thisAssignments];
462
+ const initializer = [la, e];
461
463
  const children = [binding, initializer];
462
464
  return {
463
465
  type: "Declaration",
464
466
  names: id.names,
465
467
  children,
466
468
  binding,
467
- initializer
469
+ initializer,
470
+ splices,
471
+ thisAssignments
468
472
  };
469
473
  }
474
+ function processUnaryExpression(pre, exp, post) {
475
+ if (post?.token === "?") {
476
+ post = {
477
+ $loc: post.$loc,
478
+ token: " != null"
479
+ };
480
+ switch (exp.type) {
481
+ case "Identifier":
482
+ case "Literal":
483
+ return {
484
+ ...exp,
485
+ children: [...pre, ...exp.children, post]
486
+ };
487
+ default:
488
+ const expression = {
489
+ ...exp,
490
+ children: [...pre, "(", exp.children, ")", post]
491
+ };
492
+ return {
493
+ type: "ParenthesizedExpression",
494
+ children: ["(", expression, ")"],
495
+ expression
496
+ };
497
+ }
498
+ }
499
+ if (exp.type === "Literal") {
500
+ if (pre.length === 1 && pre[0].token === "-") {
501
+ const children = [pre[0], ...exp.children];
502
+ if (post)
503
+ exp.children.push(post);
504
+ return {
505
+ type: "Literal",
506
+ children,
507
+ raw: `-${exp.raw}`
508
+ };
509
+ }
510
+ }
511
+ const l = pre.length;
512
+ if (l) {
513
+ const last = pre[l - 1];
514
+ if (last.type === "Await" && last.op) {
515
+ if (exp.type !== "ParenthesizedExpression") {
516
+ exp = ["(", exp, ")"];
517
+ }
518
+ exp = {
519
+ type: "CallExpression",
520
+ children: [" Promise", last.op, exp]
521
+ };
522
+ }
523
+ }
524
+ if (exp.children) {
525
+ const children = [...pre, ...exp.children];
526
+ if (post)
527
+ children.push(post);
528
+ return Object.assign({}, exp, { children });
529
+ } else if (Array.isArray(exp)) {
530
+ const children = [...pre, ...exp];
531
+ if (post)
532
+ children.push(post);
533
+ return { children };
534
+ } else {
535
+ const children = [...pre, exp];
536
+ if (post)
537
+ children.push(post);
538
+ return { children };
539
+ }
540
+ }
470
541
  module.exports = {
471
542
  blockWithPrefix,
472
543
  clone,
@@ -490,6 +561,7 @@ var require_lib = __commonJS({
490
561
  processCoffeeInterpolation,
491
562
  processConstAssignmentDeclaration,
492
563
  processLetAssignmentDeclaration,
564
+ processUnaryExpression,
493
565
  quoteString,
494
566
  removeParentPointers
495
567
  };
@@ -904,6 +976,7 @@ ${input.slice(result.pos)}
904
976
  SingleLineExtendedExpression,
905
977
  NonPipelineExtendedExpression,
906
978
  NonAssignmentExtendedExpression,
979
+ NestedNonAssignmentExtendedExpression,
907
980
  ExpressionizedStatement,
908
981
  Expression,
909
982
  Arguments,
@@ -1113,6 +1186,7 @@ ${input.slice(result.pos)}
1113
1186
  Xor,
1114
1187
  Xnor,
1115
1188
  UnaryOp,
1189
+ AwaitOp,
1116
1190
  ModuleItem,
1117
1191
  StatementListItem,
1118
1192
  PostfixedStatement,
@@ -1534,6 +1608,7 @@ ${input.slice(result.pos)}
1534
1608
  Samedent,
1535
1609
  IndentedFurther,
1536
1610
  NotDedented,
1611
+ Dedented,
1537
1612
  PushIndent,
1538
1613
  PopIndent,
1539
1614
  Nested
@@ -1570,84 +1645,84 @@ ${input.slice(result.pos)}
1570
1645
  var $L29 = $L("off");
1571
1646
  var $L30 = $L(">");
1572
1647
  var $L31 = $L("]");
1573
- var $L32 = $L(":");
1574
- var $L33 = $L(")");
1575
- var $L34 = $L("**=");
1576
- var $L35 = $L("*=");
1577
- var $L36 = $L("/=");
1578
- var $L37 = $L("%=");
1579
- var $L38 = $L("+=");
1580
- var $L39 = $L("-=");
1581
- var $L40 = $L("<<=");
1582
- var $L41 = $L(">>>=");
1583
- var $L42 = $L(">>=");
1584
- var $L43 = $L("&&=");
1585
- var $L44 = $L("&=");
1586
- var $L45 = $L("^=");
1587
- var $L46 = $L("||=");
1588
- var $L47 = $L("|=");
1589
- var $L48 = $L("??=");
1590
- var $L49 = $L("?=");
1591
- var $L50 = $L("and=");
1592
- var $L51 = $L("or=");
1593
- var $L52 = $L("not");
1594
- var $L53 = $L("**");
1595
- var $L54 = $L("*");
1596
- var $L55 = $L("/");
1597
- var $L56 = $L("%%");
1598
- var $L57 = $L("%");
1599
- var $L58 = $L("+");
1600
- var $L59 = $L("<=");
1601
- var $L60 = $L(">=");
1602
- var $L61 = $L("<?");
1603
- var $L62 = $L("!<?");
1604
- var $L63 = $L("<<");
1605
- var $L64 = $L(">>>");
1606
- var $L65 = $L(">>");
1607
- var $L66 = $L("!==");
1608
- var $L67 = $L("!=");
1609
- var $L68 = $L("isnt");
1610
- var $L69 = $L("===");
1611
- var $L70 = $L("==");
1612
- var $L71 = $L("and");
1613
- var $L72 = $L("&&");
1614
- var $L73 = $L("of");
1615
- var $L74 = $L("or");
1616
- var $L75 = $L("||");
1617
- var $L76 = $L("^^");
1618
- var $L77 = $L("xor");
1619
- var $L78 = $L("xnor");
1620
- var $L79 = $L("??");
1621
- var $L80 = $L("instanceof");
1622
- var $L81 = $L("in");
1623
- var $L82 = $L("is");
1624
- var $L83 = $L("&");
1625
- var $L84 = $L("|");
1626
- var $L85 = $L(";");
1627
- var $L86 = $L("$:");
1628
- var $L87 = $L("own");
1629
- var $L88 = $L("break");
1630
- var $L89 = $L("continue");
1631
- var $L90 = $L("debugger");
1632
- var $L91 = $L("assert");
1633
- var $L92 = $L(":=");
1634
- var $L93 = $L(".=");
1635
- var $L94 = $L("/*");
1636
- var $L95 = $L("*/");
1637
- var $L96 = $L("\\");
1638
- var $L97 = $L("[");
1639
- var $L98 = $L("`");
1640
- var $L99 = $L("abstract");
1641
- var $L100 = $L("as");
1642
- var $L101 = $L("@");
1643
- var $L102 = $L("@@");
1644
- var $L103 = $L("async");
1645
- var $L104 = $L("await");
1646
- var $L105 = $L("by");
1647
- var $L106 = $L("case");
1648
- var $L107 = $L("catch");
1649
- var $L108 = $L("class");
1650
- var $L109 = $L("#{");
1648
+ var $L32 = $L("**=");
1649
+ var $L33 = $L("*=");
1650
+ var $L34 = $L("/=");
1651
+ var $L35 = $L("%=");
1652
+ var $L36 = $L("+=");
1653
+ var $L37 = $L("-=");
1654
+ var $L38 = $L("<<=");
1655
+ var $L39 = $L(">>>=");
1656
+ var $L40 = $L(">>=");
1657
+ var $L41 = $L("&&=");
1658
+ var $L42 = $L("&=");
1659
+ var $L43 = $L("^=");
1660
+ var $L44 = $L("||=");
1661
+ var $L45 = $L("|=");
1662
+ var $L46 = $L("??=");
1663
+ var $L47 = $L("?=");
1664
+ var $L48 = $L("and=");
1665
+ var $L49 = $L("or=");
1666
+ var $L50 = $L("not");
1667
+ var $L51 = $L("**");
1668
+ var $L52 = $L("*");
1669
+ var $L53 = $L("/");
1670
+ var $L54 = $L("%%");
1671
+ var $L55 = $L("%");
1672
+ var $L56 = $L("+");
1673
+ var $L57 = $L("<=");
1674
+ var $L58 = $L(">=");
1675
+ var $L59 = $L("<?");
1676
+ var $L60 = $L("!<?");
1677
+ var $L61 = $L("<<");
1678
+ var $L62 = $L(">>>");
1679
+ var $L63 = $L(">>");
1680
+ var $L64 = $L("!==");
1681
+ var $L65 = $L("!=");
1682
+ var $L66 = $L("isnt");
1683
+ var $L67 = $L("===");
1684
+ var $L68 = $L("==");
1685
+ var $L69 = $L("and");
1686
+ var $L70 = $L("&&");
1687
+ var $L71 = $L("of");
1688
+ var $L72 = $L("or");
1689
+ var $L73 = $L("||");
1690
+ var $L74 = $L("^^");
1691
+ var $L75 = $L("xor");
1692
+ var $L76 = $L("xnor");
1693
+ var $L77 = $L("??");
1694
+ var $L78 = $L("instanceof");
1695
+ var $L79 = $L("in");
1696
+ var $L80 = $L("is");
1697
+ var $L81 = $L("&");
1698
+ var $L82 = $L("|");
1699
+ var $L83 = $L(";");
1700
+ var $L84 = $L("$:");
1701
+ var $L85 = $L("own");
1702
+ var $L86 = $L("break");
1703
+ var $L87 = $L("continue");
1704
+ var $L88 = $L("debugger");
1705
+ var $L89 = $L("assert");
1706
+ var $L90 = $L(":=");
1707
+ var $L91 = $L(".=");
1708
+ var $L92 = $L("/*");
1709
+ var $L93 = $L("*/");
1710
+ var $L94 = $L("\\");
1711
+ var $L95 = $L("[");
1712
+ var $L96 = $L("`");
1713
+ var $L97 = $L("abstract");
1714
+ var $L98 = $L("as");
1715
+ var $L99 = $L("@");
1716
+ var $L100 = $L("@@");
1717
+ var $L101 = $L("async");
1718
+ var $L102 = $L("await");
1719
+ var $L103 = $L("by");
1720
+ var $L104 = $L("case");
1721
+ var $L105 = $L("catch");
1722
+ var $L106 = $L("class");
1723
+ var $L107 = $L(")");
1724
+ var $L108 = $L("#{");
1725
+ var $L109 = $L(":");
1651
1726
  var $L110 = $L("declare");
1652
1727
  var $L111 = $L("default");
1653
1728
  var $L112 = $L("delete");
@@ -2021,12 +2096,7 @@ ${input.slice(result.pos)}
2021
2096
  return result;
2022
2097
  }
2023
2098
  }
2024
- var NonAssignmentExtendedExpression$0 = $TS($S($Y(EOS), PushIndent, $E($S(Nested, ExpressionizedStatement)), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
2025
- var expression = $3;
2026
- if (expression)
2027
- return expression;
2028
- return $skip;
2029
- });
2099
+ var NonAssignmentExtendedExpression$0 = NestedNonAssignmentExtendedExpression;
2030
2100
  var NonAssignmentExtendedExpression$1 = $TS($S(__, ExpressionizedStatement), function($skip, $loc, $0, $1, $2) {
2031
2101
  return {
2032
2102
  ...$2,
@@ -2055,6 +2125,34 @@ ${input.slice(result.pos)}
2055
2125
  return result;
2056
2126
  }
2057
2127
  }
2128
+ var NestedNonAssignmentExtendedExpression$0 = $TS($S($Y(EOS), PushIndent, $E($S(Nested, ExpressionizedStatement)), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
2129
+ var expression = $3;
2130
+ if (expression)
2131
+ return expression;
2132
+ return $skip;
2133
+ });
2134
+ function NestedNonAssignmentExtendedExpression(state) {
2135
+ let eventData;
2136
+ if (state.events) {
2137
+ const result = state.events.enter?.("NestedNonAssignmentExtendedExpression", state);
2138
+ if (result) {
2139
+ if (result.cache)
2140
+ return result.cache;
2141
+ eventData = result.data;
2142
+ }
2143
+ }
2144
+ if (state.tokenize) {
2145
+ const result = $TOKEN("NestedNonAssignmentExtendedExpression", state, NestedNonAssignmentExtendedExpression$0(state));
2146
+ if (state.events)
2147
+ state.events.exit?.("NestedNonAssignmentExtendedExpression", state, result, eventData);
2148
+ return result;
2149
+ } else {
2150
+ const result = NestedNonAssignmentExtendedExpression$0(state);
2151
+ if (state.events)
2152
+ state.events.exit?.("NestedNonAssignmentExtendedExpression", state, result, eventData);
2153
+ return result;
2154
+ }
2155
+ }
2058
2156
  var ExpressionizedStatement$0 = DebuggerExpression;
2059
2157
  var ExpressionizedStatement$1 = IfExpression;
2060
2158
  var ExpressionizedStatement$2 = UnlessExpression;
@@ -2652,11 +2750,11 @@ ${input.slice(result.pos)}
2652
2750
  return result;
2653
2751
  }
2654
2752
  }
2655
- var UnaryExpression$0 = $TS($S($Q(UnaryOp), UpdateExpression, $E(UnaryPostfix)), function($skip, $loc, $0, $1, $2, $3) {
2753
+ var UnaryExpression$0 = $TS($S($Q(UnaryOp), $C(UpdateExpression, NestedNonAssignmentExtendedExpression), $E(UnaryPostfix)), function($skip, $loc, $0, $1, $2, $3) {
2656
2754
  var pre = $1;
2657
2755
  var exp = $2;
2658
2756
  var post = $3;
2659
- return module.processUnaryExpression(pre, exp, post);
2757
+ return processUnaryExpression(pre, exp, post);
2660
2758
  });
2661
2759
  var UnaryExpression$1 = $TS($S(CoffeeDoEnabled, Do, __, $C($S(LeftHandSideExpression, $N($S(__, AssignmentOpSymbol))), ArrowFunction, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4) {
2662
2760
  var ws = $3;
@@ -7918,12 +8016,15 @@ ${input.slice(result.pos)}
7918
8016
  return result;
7919
8017
  }
7920
8018
  }
7921
- var InlineObjectLiteral$0 = $TS($S(InsertInlineOpenBrace, SnugNamedProperty, ImplicitInlineObjectPropertyDelimiter, $Q($S($C(Samedent, $Q(_)), ImplicitNamedProperty, ImplicitInlineObjectPropertyDelimiter)), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8019
+ var InlineObjectLiteral$0 = $TS($S(InsertInlineOpenBrace, SnugNamedProperty, $Q($S(ImplicitInlineObjectPropertyDelimiter, ImplicitNamedProperty)), $E($S($E(_), Comma, $Y(Dedented))), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7922
8020
  var open = $1;
8021
+ var first = $2;
8022
+ var rest = $3;
8023
+ var trailing = $4;
7923
8024
  var close = $5;
7924
8025
  return {
7925
8026
  type: "ObjectExpression",
7926
- children: [open, $2, $3, ...$4, close]
8027
+ children: [open, first, ...rest, trailing, close]
7927
8028
  };
7928
8029
  });
7929
8030
  function InlineObjectLiteral(state) {
@@ -7948,15 +8049,9 @@ ${input.slice(result.pos)}
7948
8049
  return result;
7949
8050
  }
7950
8051
  }
7951
- var ImplicitInlineObjectPropertyDelimiter$0 = $S($E(_), Comma);
7952
- var ImplicitInlineObjectPropertyDelimiter$1 = $T($S($Y($S($C(Samedent, $Q(_)), NamedProperty)), InsertComma), function(value) {
7953
- return value[1];
7954
- });
7955
- var ImplicitInlineObjectPropertyDelimiter$2 = $T($Y($S(__, $C($EXPECT($L32, fail, 'ImplicitInlineObjectPropertyDelimiter ":"'), $EXPECT($L33, fail, 'ImplicitInlineObjectPropertyDelimiter ")"'), $EXPECT($L31, fail, 'ImplicitInlineObjectPropertyDelimiter "]"'), $EXPECT($L22, fail, 'ImplicitInlineObjectPropertyDelimiter "}"'), ReservedWord))), function(value) {
7956
- return "";
7957
- });
7958
- var ImplicitInlineObjectPropertyDelimiter$3 = $T($Y(EOS), function(value) {
7959
- return "";
8052
+ var ImplicitInlineObjectPropertyDelimiter$0 = $S($E(_), Comma, $C(NotDedented, $E(_)));
8053
+ var ImplicitInlineObjectPropertyDelimiter$1 = $T($S($Y($S(Samedent, ImplicitNamedProperty)), InsertComma, $C(Samedent, $E(_))), function(value) {
8054
+ return [value[1], value[2]];
7960
8055
  });
7961
8056
  function ImplicitInlineObjectPropertyDelimiter(state) {
7962
8057
  let eventData;
@@ -7969,18 +8064,18 @@ ${input.slice(result.pos)}
7969
8064
  }
7970
8065
  }
7971
8066
  if (state.tokenize) {
7972
- const result = $TOKEN("ImplicitInlineObjectPropertyDelimiter", state, ImplicitInlineObjectPropertyDelimiter$0(state) || ImplicitInlineObjectPropertyDelimiter$1(state) || ImplicitInlineObjectPropertyDelimiter$2(state) || ImplicitInlineObjectPropertyDelimiter$3(state));
8067
+ const result = $TOKEN("ImplicitInlineObjectPropertyDelimiter", state, ImplicitInlineObjectPropertyDelimiter$0(state) || ImplicitInlineObjectPropertyDelimiter$1(state));
7973
8068
  if (state.events)
7974
8069
  state.events.exit?.("ImplicitInlineObjectPropertyDelimiter", state, result, eventData);
7975
8070
  return result;
7976
8071
  } else {
7977
- const result = ImplicitInlineObjectPropertyDelimiter$0(state) || ImplicitInlineObjectPropertyDelimiter$1(state) || ImplicitInlineObjectPropertyDelimiter$2(state) || ImplicitInlineObjectPropertyDelimiter$3(state);
8072
+ const result = ImplicitInlineObjectPropertyDelimiter$0(state) || ImplicitInlineObjectPropertyDelimiter$1(state);
7978
8073
  if (state.events)
7979
8074
  state.events.exit?.("ImplicitInlineObjectPropertyDelimiter", state, result, eventData);
7980
8075
  return result;
7981
8076
  }
7982
8077
  }
7983
- var ObjectPropertyDelimiter$0 = $S($Q(_), Comma);
8078
+ var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
7984
8079
  var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L22, fail, 'ObjectPropertyDelimiter "}"')));
7985
8080
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
7986
8081
  return value[1];
@@ -8703,22 +8798,22 @@ ${input.slice(result.pos)}
8703
8798
  return result;
8704
8799
  }
8705
8800
  }
8706
- var AssignmentOpSymbol$0 = $EXPECT($L34, fail, 'AssignmentOpSymbol "**="');
8707
- var AssignmentOpSymbol$1 = $EXPECT($L35, fail, 'AssignmentOpSymbol "*="');
8708
- var AssignmentOpSymbol$2 = $EXPECT($L36, fail, 'AssignmentOpSymbol "/="');
8709
- var AssignmentOpSymbol$3 = $EXPECT($L37, fail, 'AssignmentOpSymbol "%="');
8710
- var AssignmentOpSymbol$4 = $EXPECT($L38, fail, 'AssignmentOpSymbol "+="');
8711
- var AssignmentOpSymbol$5 = $EXPECT($L39, fail, 'AssignmentOpSymbol "-="');
8712
- var AssignmentOpSymbol$6 = $EXPECT($L40, fail, 'AssignmentOpSymbol "<<="');
8713
- var AssignmentOpSymbol$7 = $EXPECT($L41, fail, 'AssignmentOpSymbol ">>>="');
8714
- var AssignmentOpSymbol$8 = $EXPECT($L42, fail, 'AssignmentOpSymbol ">>="');
8715
- var AssignmentOpSymbol$9 = $EXPECT($L43, fail, 'AssignmentOpSymbol "&&="');
8716
- var AssignmentOpSymbol$10 = $EXPECT($L44, fail, 'AssignmentOpSymbol "&="');
8717
- var AssignmentOpSymbol$11 = $EXPECT($L45, fail, 'AssignmentOpSymbol "^="');
8718
- var AssignmentOpSymbol$12 = $EXPECT($L46, fail, 'AssignmentOpSymbol "||="');
8719
- var AssignmentOpSymbol$13 = $EXPECT($L47, fail, 'AssignmentOpSymbol "|="');
8720
- var AssignmentOpSymbol$14 = $EXPECT($L48, fail, 'AssignmentOpSymbol "??="');
8721
- var AssignmentOpSymbol$15 = $T($EXPECT($L49, fail, 'AssignmentOpSymbol "?="'), function(value) {
8801
+ var AssignmentOpSymbol$0 = $EXPECT($L32, fail, 'AssignmentOpSymbol "**="');
8802
+ var AssignmentOpSymbol$1 = $EXPECT($L33, fail, 'AssignmentOpSymbol "*="');
8803
+ var AssignmentOpSymbol$2 = $EXPECT($L34, fail, 'AssignmentOpSymbol "/="');
8804
+ var AssignmentOpSymbol$3 = $EXPECT($L35, fail, 'AssignmentOpSymbol "%="');
8805
+ var AssignmentOpSymbol$4 = $EXPECT($L36, fail, 'AssignmentOpSymbol "+="');
8806
+ var AssignmentOpSymbol$5 = $EXPECT($L37, fail, 'AssignmentOpSymbol "-="');
8807
+ var AssignmentOpSymbol$6 = $EXPECT($L38, fail, 'AssignmentOpSymbol "<<="');
8808
+ var AssignmentOpSymbol$7 = $EXPECT($L39, fail, 'AssignmentOpSymbol ">>>="');
8809
+ var AssignmentOpSymbol$8 = $EXPECT($L40, fail, 'AssignmentOpSymbol ">>="');
8810
+ var AssignmentOpSymbol$9 = $EXPECT($L41, fail, 'AssignmentOpSymbol "&&="');
8811
+ var AssignmentOpSymbol$10 = $EXPECT($L42, fail, 'AssignmentOpSymbol "&="');
8812
+ var AssignmentOpSymbol$11 = $EXPECT($L43, fail, 'AssignmentOpSymbol "^="');
8813
+ var AssignmentOpSymbol$12 = $EXPECT($L44, fail, 'AssignmentOpSymbol "||="');
8814
+ var AssignmentOpSymbol$13 = $EXPECT($L45, fail, 'AssignmentOpSymbol "|="');
8815
+ var AssignmentOpSymbol$14 = $EXPECT($L46, fail, 'AssignmentOpSymbol "??="');
8816
+ var AssignmentOpSymbol$15 = $T($EXPECT($L47, fail, 'AssignmentOpSymbol "?="'), function(value) {
8722
8817
  return "??=";
8723
8818
  });
8724
8819
  var AssignmentOpSymbol$16 = $T($S($EXPECT($L2, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L2, fail, 'AssignmentOpSymbol "="'))), function(value) {
@@ -8749,10 +8844,10 @@ ${input.slice(result.pos)}
8749
8844
  return result;
8750
8845
  }
8751
8846
  }
8752
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L50, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
8847
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L48, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
8753
8848
  return "&&=";
8754
8849
  });
8755
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L51, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
8850
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L49, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
8756
8851
  return "||=";
8757
8852
  });
8758
8853
  function CoffeeWordAssignmentOp(state) {
@@ -8791,7 +8886,7 @@ ${input.slice(result.pos)}
8791
8886
  special: true
8792
8887
  };
8793
8888
  });
8794
- var BinaryOp$2 = $TS($S($EXPECT($L52, fail, 'BinaryOp "not"'), NonIdContinue, __, Identifier), function($skip, $loc, $0, $1, $2, $3, $4) {
8889
+ var BinaryOp$2 = $TS($S($EXPECT($L50, fail, 'BinaryOp "not"'), NonIdContinue, __, Identifier), function($skip, $loc, $0, $1, $2, $3, $4) {
8795
8890
  var id = $4;
8796
8891
  if (!module.operators.has(id.name))
8797
8892
  return $skip;
@@ -8823,21 +8918,21 @@ ${input.slice(result.pos)}
8823
8918
  return result;
8824
8919
  }
8825
8920
  }
8826
- var BinaryOpSymbol$0 = $EXPECT($L53, fail, 'BinaryOpSymbol "**"');
8827
- var BinaryOpSymbol$1 = $EXPECT($L54, fail, 'BinaryOpSymbol "*"');
8828
- var BinaryOpSymbol$2 = $EXPECT($L55, fail, 'BinaryOpSymbol "/"');
8829
- var BinaryOpSymbol$3 = $TV($EXPECT($L56, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8921
+ var BinaryOpSymbol$0 = $EXPECT($L51, fail, 'BinaryOpSymbol "**"');
8922
+ var BinaryOpSymbol$1 = $EXPECT($L52, fail, 'BinaryOpSymbol "*"');
8923
+ var BinaryOpSymbol$2 = $EXPECT($L53, fail, 'BinaryOpSymbol "/"');
8924
+ var BinaryOpSymbol$3 = $TV($EXPECT($L54, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8830
8925
  return {
8831
8926
  call: module.getRef("modulo"),
8832
8927
  special: true
8833
8928
  };
8834
8929
  });
8835
- var BinaryOpSymbol$4 = $EXPECT($L57, fail, 'BinaryOpSymbol "%"');
8836
- var BinaryOpSymbol$5 = $EXPECT($L58, fail, 'BinaryOpSymbol "+"');
8930
+ var BinaryOpSymbol$4 = $EXPECT($L55, fail, 'BinaryOpSymbol "%"');
8931
+ var BinaryOpSymbol$5 = $EXPECT($L56, fail, 'BinaryOpSymbol "+"');
8837
8932
  var BinaryOpSymbol$6 = $EXPECT($L18, fail, 'BinaryOpSymbol "-"');
8838
- var BinaryOpSymbol$7 = $EXPECT($L59, fail, 'BinaryOpSymbol "<="');
8839
- var BinaryOpSymbol$8 = $EXPECT($L60, fail, 'BinaryOpSymbol ">="');
8840
- var BinaryOpSymbol$9 = $TV($EXPECT($L61, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
8933
+ var BinaryOpSymbol$7 = $EXPECT($L57, fail, 'BinaryOpSymbol "<="');
8934
+ var BinaryOpSymbol$8 = $EXPECT($L58, fail, 'BinaryOpSymbol ">="');
8935
+ var BinaryOpSymbol$9 = $TV($EXPECT($L59, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
8841
8936
  return {
8842
8937
  $loc,
8843
8938
  token: "instanceof",
@@ -8845,7 +8940,7 @@ ${input.slice(result.pos)}
8845
8940
  special: true
8846
8941
  };
8847
8942
  });
8848
- var BinaryOpSymbol$10 = $TV($EXPECT($L62, fail, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
8943
+ var BinaryOpSymbol$10 = $TV($EXPECT($L60, fail, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
8849
8944
  return {
8850
8945
  $loc,
8851
8946
  token: "instanceof",
@@ -8854,58 +8949,58 @@ ${input.slice(result.pos)}
8854
8949
  negated: true
8855
8950
  };
8856
8951
  });
8857
- var BinaryOpSymbol$11 = $EXPECT($L63, fail, 'BinaryOpSymbol "<<"');
8952
+ var BinaryOpSymbol$11 = $EXPECT($L61, fail, 'BinaryOpSymbol "<<"');
8858
8953
  var BinaryOpSymbol$12 = $TR($EXPECT($R7, fail, "BinaryOpSymbol /<(?!\\p{ID_Start}|[_$])/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
8859
8954
  return "<";
8860
8955
  });
8861
- var BinaryOpSymbol$13 = $EXPECT($L64, fail, 'BinaryOpSymbol ">>>"');
8862
- var BinaryOpSymbol$14 = $EXPECT($L65, fail, 'BinaryOpSymbol ">>"');
8956
+ var BinaryOpSymbol$13 = $EXPECT($L62, fail, 'BinaryOpSymbol ">>>"');
8957
+ var BinaryOpSymbol$14 = $EXPECT($L63, fail, 'BinaryOpSymbol ">>"');
8863
8958
  var BinaryOpSymbol$15 = $EXPECT($L30, fail, 'BinaryOpSymbol ">"');
8864
- var BinaryOpSymbol$16 = $EXPECT($L66, fail, 'BinaryOpSymbol "!=="');
8865
- var BinaryOpSymbol$17 = $TV($EXPECT($L67, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
8959
+ var BinaryOpSymbol$16 = $EXPECT($L64, fail, 'BinaryOpSymbol "!=="');
8960
+ var BinaryOpSymbol$17 = $TV($EXPECT($L65, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
8866
8961
  if (module.config.coffeeEq)
8867
8962
  return "!==";
8868
8963
  return $1;
8869
8964
  });
8870
- var BinaryOpSymbol$18 = $TS($S($EXPECT($L68, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8965
+ var BinaryOpSymbol$18 = $TS($S($EXPECT($L66, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8871
8966
  if (module.config.coffeeIsnt)
8872
8967
  return "!==";
8873
8968
  return $skip;
8874
8969
  });
8875
- var BinaryOpSymbol$19 = $EXPECT($L69, fail, 'BinaryOpSymbol "==="');
8876
- var BinaryOpSymbol$20 = $TV($EXPECT($L70, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
8970
+ var BinaryOpSymbol$19 = $EXPECT($L67, fail, 'BinaryOpSymbol "==="');
8971
+ var BinaryOpSymbol$20 = $TV($EXPECT($L68, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
8877
8972
  if (module.config.coffeeEq)
8878
8973
  return "===";
8879
8974
  return $1;
8880
8975
  });
8881
- var BinaryOpSymbol$21 = $T($S($EXPECT($L71, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
8976
+ var BinaryOpSymbol$21 = $T($S($EXPECT($L69, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
8882
8977
  return "&&";
8883
8978
  });
8884
- var BinaryOpSymbol$22 = $EXPECT($L72, fail, 'BinaryOpSymbol "&&"');
8885
- var BinaryOpSymbol$23 = $T($S(CoffeeOfEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
8979
+ var BinaryOpSymbol$22 = $EXPECT($L70, fail, 'BinaryOpSymbol "&&"');
8980
+ var BinaryOpSymbol$23 = $T($S(CoffeeOfEnabled, $EXPECT($L71, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
8886
8981
  return "in";
8887
8982
  });
8888
- var BinaryOpSymbol$24 = $T($S($EXPECT($L74, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
8983
+ var BinaryOpSymbol$24 = $T($S($EXPECT($L72, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
8889
8984
  return "||";
8890
8985
  });
8891
- var BinaryOpSymbol$25 = $EXPECT($L75, fail, 'BinaryOpSymbol "||"');
8892
- var BinaryOpSymbol$26 = $TV($C($EXPECT($L76, fail, 'BinaryOpSymbol "^^"'), $S($EXPECT($L77, fail, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8986
+ var BinaryOpSymbol$25 = $EXPECT($L73, fail, 'BinaryOpSymbol "||"');
8987
+ var BinaryOpSymbol$26 = $TV($C($EXPECT($L74, fail, 'BinaryOpSymbol "^^"'), $S($EXPECT($L75, fail, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8893
8988
  return {
8894
8989
  call: module.getRef("xor"),
8895
8990
  special: true
8896
8991
  };
8897
8992
  });
8898
- var BinaryOpSymbol$27 = $TV($C($EXPECT($R8, fail, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L78, fail, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8993
+ var BinaryOpSymbol$27 = $TV($C($EXPECT($R8, fail, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L76, fail, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8899
8994
  return {
8900
8995
  call: module.getRef("xnor"),
8901
8996
  special: true
8902
8997
  };
8903
8998
  });
8904
- var BinaryOpSymbol$28 = $EXPECT($L79, fail, 'BinaryOpSymbol "??"');
8999
+ var BinaryOpSymbol$28 = $EXPECT($L77, fail, 'BinaryOpSymbol "??"');
8905
9000
  var BinaryOpSymbol$29 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L4, fail, 'BinaryOpSymbol "?"')), function(value) {
8906
9001
  return "??";
8907
9002
  });
8908
- var BinaryOpSymbol$30 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9003
+ var BinaryOpSymbol$30 = $TS($S($EXPECT($L78, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8909
9004
  return {
8910
9005
  $loc,
8911
9006
  token: $1,
@@ -8913,7 +9008,7 @@ ${input.slice(result.pos)}
8913
9008
  special: true
8914
9009
  };
8915
9010
  });
8916
- var BinaryOpSymbol$31 = $TS($S($EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9011
+ var BinaryOpSymbol$31 = $TS($S($EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L78, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8917
9012
  return {
8918
9013
  $loc,
8919
9014
  token: "instanceof",
@@ -8922,7 +9017,7 @@ ${input.slice(result.pos)}
8922
9017
  negated: true
8923
9018
  };
8924
9019
  });
8925
- var BinaryOpSymbol$32 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L73, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9020
+ var BinaryOpSymbol$32 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L71, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8926
9021
  return {
8927
9022
  $loc,
8928
9023
  token: "in",
@@ -8930,7 +9025,7 @@ ${input.slice(result.pos)}
8930
9025
  negated: true
8931
9026
  };
8932
9027
  });
8933
- var BinaryOpSymbol$33 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9028
+ var BinaryOpSymbol$33 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
8934
9029
  return {
8935
9030
  method: "includes",
8936
9031
  relational: true,
@@ -8938,7 +9033,7 @@ ${input.slice(result.pos)}
8938
9033
  special: true
8939
9034
  };
8940
9035
  });
8941
- var BinaryOpSymbol$34 = $TS($S(CoffeeOfEnabled, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
9036
+ var BinaryOpSymbol$34 = $TS($S(CoffeeOfEnabled, $EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
8942
9037
  return {
8943
9038
  call: [module.getRef("indexOf"), ".call"],
8944
9039
  relational: true,
@@ -8947,7 +9042,7 @@ ${input.slice(result.pos)}
8947
9042
  special: true
8948
9043
  };
8949
9044
  });
8950
- var BinaryOpSymbol$35 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
9045
+ var BinaryOpSymbol$35 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
8951
9046
  return {
8952
9047
  method: "includes",
8953
9048
  relational: true,
@@ -8956,7 +9051,7 @@ ${input.slice(result.pos)}
8956
9051
  negated: true
8957
9052
  };
8958
9053
  });
8959
- var BinaryOpSymbol$36 = $TS($S(CoffeeOfEnabled, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
9054
+ var BinaryOpSymbol$36 = $TS($S(CoffeeOfEnabled, $EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
8960
9055
  return {
8961
9056
  call: [module.getRef("indexOf"), ".call"],
8962
9057
  relational: true,
@@ -8965,7 +9060,7 @@ ${input.slice(result.pos)}
8965
9060
  special: true
8966
9061
  };
8967
9062
  });
8968
- var BinaryOpSymbol$37 = $TS($S($N(CoffeeNotEnabled), $EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
9063
+ var BinaryOpSymbol$37 = $TS($S($N(CoffeeNotEnabled), $EXPECT($L80, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L50, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
8969
9064
  if (module.config.objectIs) {
8970
9065
  return {
8971
9066
  call: module.getRef("is"),
@@ -8977,7 +9072,7 @@ ${input.slice(result.pos)}
8977
9072
  }
8978
9073
  return "!==";
8979
9074
  });
8980
- var BinaryOpSymbol$38 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9075
+ var BinaryOpSymbol$38 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8981
9076
  if (module.config.objectIs) {
8982
9077
  return {
8983
9078
  call: module.getRef("is"),
@@ -8988,12 +9083,12 @@ ${input.slice(result.pos)}
8988
9083
  }
8989
9084
  return "===";
8990
9085
  });
8991
- var BinaryOpSymbol$39 = $TS($S($EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9086
+ var BinaryOpSymbol$39 = $TS($S($EXPECT($L79, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8992
9087
  return $1;
8993
9088
  });
8994
- var BinaryOpSymbol$40 = $EXPECT($L83, fail, 'BinaryOpSymbol "&"');
9089
+ var BinaryOpSymbol$40 = $EXPECT($L81, fail, 'BinaryOpSymbol "&"');
8995
9090
  var BinaryOpSymbol$41 = $EXPECT($L17, fail, 'BinaryOpSymbol "^"');
8996
- var BinaryOpSymbol$42 = $EXPECT($L84, fail, 'BinaryOpSymbol "|"');
9091
+ var BinaryOpSymbol$42 = $EXPECT($L82, fail, 'BinaryOpSymbol "|"');
8997
9092
  function BinaryOpSymbol(state) {
8998
9093
  let eventData;
8999
9094
  if (state.events) {
@@ -9016,8 +9111,8 @@ ${input.slice(result.pos)}
9016
9111
  return result;
9017
9112
  }
9018
9113
  }
9019
- var Xor$0 = $EXPECT($L76, fail, 'Xor "^^"');
9020
- var Xor$1 = $S($EXPECT($L77, fail, 'Xor "xor"'), NonIdContinue);
9114
+ var Xor$0 = $EXPECT($L74, fail, 'Xor "^^"');
9115
+ var Xor$1 = $S($EXPECT($L75, fail, 'Xor "xor"'), NonIdContinue);
9021
9116
  function Xor(state) {
9022
9117
  let eventData;
9023
9118
  if (state.events) {
@@ -9041,7 +9136,7 @@ ${input.slice(result.pos)}
9041
9136
  }
9042
9137
  }
9043
9138
  var Xnor$0 = $R$0($EXPECT($R8, fail, "Xnor /!\\^\\^?/"));
9044
- var Xnor$1 = $EXPECT($L78, fail, 'Xnor "xnor"');
9139
+ var Xnor$1 = $EXPECT($L76, fail, 'Xnor "xnor"');
9045
9140
  function Xnor(state) {
9046
9141
  let eventData;
9047
9142
  if (state.events) {
@@ -9067,8 +9162,9 @@ ${input.slice(result.pos)}
9067
9162
  var UnaryOp$0 = $TR($EXPECT($R9, fail, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9068
9163
  return { $loc, token: $0 };
9069
9164
  });
9070
- var UnaryOp$1 = $S($C(Await, Delete, Void, Typeof), __);
9071
- var UnaryOp$2 = Not;
9165
+ var UnaryOp$1 = AwaitOp;
9166
+ var UnaryOp$2 = $S($C(Delete, Void, Typeof), $E(_));
9167
+ var UnaryOp$3 = Not;
9072
9168
  function UnaryOp(state) {
9073
9169
  let eventData;
9074
9170
  if (state.events) {
@@ -9080,17 +9176,52 @@ ${input.slice(result.pos)}
9080
9176
  }
9081
9177
  }
9082
9178
  if (state.tokenize) {
9083
- const result = $TOKEN("UnaryOp", state, UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state));
9179
+ const result = $TOKEN("UnaryOp", state, UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state) || UnaryOp$3(state));
9084
9180
  if (state.events)
9085
9181
  state.events.exit?.("UnaryOp", state, result, eventData);
9086
9182
  return result;
9087
9183
  } else {
9088
- const result = UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state);
9184
+ const result = UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state) || UnaryOp$3(state);
9089
9185
  if (state.events)
9090
9186
  state.events.exit?.("UnaryOp", state, result, eventData);
9091
9187
  return result;
9092
9188
  }
9093
9189
  }
9190
+ var AwaitOp$0 = $TS($S(Await, $E($S(Dot, IdentifierName)), $C($Y(OpenParen), _, $Y(EOS))), function($skip, $loc, $0, $1, $2, $3) {
9191
+ var a = $1;
9192
+ var op = $2;
9193
+ var ws = $3;
9194
+ if (op) {
9195
+ return {
9196
+ ...a,
9197
+ op,
9198
+ children: [a, ...ws || []]
9199
+ };
9200
+ }
9201
+ return [a, ...ws || []];
9202
+ });
9203
+ function AwaitOp(state) {
9204
+ let eventData;
9205
+ if (state.events) {
9206
+ const result = state.events.enter?.("AwaitOp", state);
9207
+ if (result) {
9208
+ if (result.cache)
9209
+ return result.cache;
9210
+ eventData = result.data;
9211
+ }
9212
+ }
9213
+ if (state.tokenize) {
9214
+ const result = $TOKEN("AwaitOp", state, AwaitOp$0(state));
9215
+ if (state.events)
9216
+ state.events.exit?.("AwaitOp", state, result, eventData);
9217
+ return result;
9218
+ } else {
9219
+ const result = AwaitOp$0(state);
9220
+ if (state.events)
9221
+ state.events.exit?.("AwaitOp", state, result, eventData);
9222
+ return result;
9223
+ }
9224
+ }
9094
9225
  var ModuleItem$0 = ImportDeclaration;
9095
9226
  var ModuleItem$1 = ExportDeclaration;
9096
9227
  var ModuleItem$2 = StatementListItem;
@@ -9291,7 +9422,7 @@ ${input.slice(result.pos)}
9291
9422
  return result;
9292
9423
  }
9293
9424
  }
9294
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L85, fail, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9425
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L83, fail, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9295
9426
  return { type: "EmptyStatement", children: $1 || [] };
9296
9427
  });
9297
9428
  function EmptyStatement(state) {
@@ -9370,7 +9501,7 @@ ${input.slice(result.pos)}
9370
9501
  var w = $3;
9371
9502
  return [id, colon, w];
9372
9503
  });
9373
- var Label$1 = $S($EXPECT($L86, fail, 'Label "$:"'), Whitespace);
9504
+ var Label$1 = $S($EXPECT($L84, fail, 'Label "$:"'), Whitespace);
9374
9505
  function Label(state) {
9375
9506
  let eventData;
9376
9507
  if (state.events) {
@@ -10354,7 +10485,7 @@ ${input.slice(result.pos)}
10354
10485
  return result;
10355
10486
  }
10356
10487
  }
10357
- var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L87, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
10488
+ var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L85, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
10358
10489
  var own = $1;
10359
10490
  var binding = $2;
10360
10491
  return {
@@ -11177,12 +11308,15 @@ ${input.slice(result.pos)}
11177
11308
  type: "Ref",
11178
11309
  base: "ref"
11179
11310
  };
11180
- const { binding, initializer } = dec;
11311
+ const { binding, initializer, splices, thisAssignments } = dec;
11181
11312
  const initCondition = {
11182
11313
  type: "AssignmentExpression",
11183
11314
  children: [ref, " ", initializer],
11184
11315
  hoistDec: [["", ["let ", ref], ";"]],
11185
- blockPrefix: [["", [binding, "= ", ref], ";"]]
11316
+ blockPrefix: [
11317
+ ["", [binding, "= ", ref, ...splices], ";"],
11318
+ ...thisAssignments
11319
+ ]
11186
11320
  };
11187
11321
  return initCondition;
11188
11322
  });
@@ -11765,7 +11899,7 @@ ${input.slice(result.pos)}
11765
11899
  return result;
11766
11900
  }
11767
11901
  }
11768
- var Break$0 = $TS($S($EXPECT($L88, fail, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11902
+ var Break$0 = $TS($S($EXPECT($L86, fail, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11769
11903
  return { $loc, token: $1 };
11770
11904
  });
11771
11905
  function Break(state) {
@@ -11790,7 +11924,7 @@ ${input.slice(result.pos)}
11790
11924
  return result;
11791
11925
  }
11792
11926
  }
11793
- var Continue$0 = $TS($S($EXPECT($L89, fail, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11927
+ var Continue$0 = $TS($S($EXPECT($L87, fail, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11794
11928
  return { $loc, token: $1 };
11795
11929
  });
11796
11930
  function Continue(state) {
@@ -11815,7 +11949,7 @@ ${input.slice(result.pos)}
11815
11949
  return result;
11816
11950
  }
11817
11951
  }
11818
- var Debugger$0 = $TS($S($EXPECT($L90, fail, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11952
+ var Debugger$0 = $TS($S($EXPECT($L88, fail, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11819
11953
  return { $loc, token: $1 };
11820
11954
  });
11821
11955
  function Debugger(state) {
@@ -12121,7 +12255,7 @@ ${input.slice(result.pos)}
12121
12255
  return result;
12122
12256
  }
12123
12257
  }
12124
- var ImportAssertion$0 = $S($E(_), $EXPECT($L91, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
12258
+ var ImportAssertion$0 = $S($E(_), $EXPECT($L89, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
12125
12259
  function ImportAssertion(state) {
12126
12260
  let eventData;
12127
12261
  if (state.events) {
@@ -12498,10 +12632,12 @@ ${input.slice(result.pos)}
12498
12632
  }
12499
12633
  }
12500
12634
  var NamedExports$0 = $S(OpenBrace, $Q(ExportSpecifier), $E($S(__, Comma)), __, CloseBrace);
12501
- var NamedExports$1 = $TS($S(InsertInlineOpenBrace, ImplicitExportSpecifier, $Q($S(_, ImplicitExportSpecifier)), InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
12635
+ var NamedExports$1 = $TS($S(InsertInlineOpenBrace, ImplicitExportSpecifier, $Q($S(ImplicitInlineObjectPropertyDelimiter, ImplicitExportSpecifier)), InsertCloseBrace, $Y($C(StatementDelimiter, $S(__, From)))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12502
12636
  var open = $1;
12637
+ var first = $2;
12638
+ var rest = $3;
12503
12639
  var close = $4;
12504
- return [open, $2, ...$3, close];
12640
+ return [open, first, ...rest, close];
12505
12641
  });
12506
12642
  function NamedExports(state) {
12507
12643
  let eventData;
@@ -12552,7 +12688,7 @@ ${input.slice(result.pos)}
12552
12688
  return result;
12553
12689
  }
12554
12690
  }
12555
- var ImplicitExportSpecifier$0 = $S($N(Default), ModuleExportName, $E($S(__, As, __, ModuleExportName)), $C($Y($S(__, From)), ImplicitInlineObjectPropertyDelimiter));
12691
+ var ImplicitExportSpecifier$0 = $S($N(Default), ModuleExportName, $E($S(__, As, __, ModuleExportName)));
12556
12692
  function ImplicitExportSpecifier(state) {
12557
12693
  let eventData;
12558
12694
  if (state.events) {
@@ -12577,7 +12713,20 @@ ${input.slice(result.pos)}
12577
12713
  }
12578
12714
  var Declaration$0 = HoistableDeclaration;
12579
12715
  var Declaration$1 = ClassDeclaration;
12580
- var Declaration$2 = LexicalDeclaration;
12716
+ var Declaration$2 = $TV(LexicalDeclaration, function($skip, $loc, $0, $1) {
12717
+ var d = $0;
12718
+ if (d.thisAssignments?.length)
12719
+ return {
12720
+ ...d,
12721
+ children: [...d.children, ...d.splices, ";", ...d.thisAssignments]
12722
+ };
12723
+ if (d.splices?.length)
12724
+ return {
12725
+ ...d,
12726
+ children: [...d.children, ...d.splices]
12727
+ };
12728
+ return d;
12729
+ });
12581
12730
  var Declaration$3 = TypeDeclaration;
12582
12731
  var Declaration$4 = EnumDeclaration;
12583
12732
  var Declaration$5 = OperatorDeclaration;
@@ -12627,12 +12776,21 @@ ${input.slice(result.pos)}
12627
12776
  }
12628
12777
  }
12629
12778
  var LexicalDeclaration$0 = $TS($S(LetOrConst, LexicalBinding, $Q($S(__, Comma, LexicalBinding))), function($skip, $loc, $0, $1, $2, $3) {
12779
+ var d = $1;
12630
12780
  var binding = $2;
12631
12781
  var tail = $3;
12782
+ const { splices, thisAssignments } = binding;
12632
12783
  return {
12633
12784
  type: "Declaration",
12634
12785
  children: $0,
12635
- names: [...binding.names].concat(tail.flatMap(([, , b]) => b.names))
12786
+ names: [...binding.names].concat(tail.flatMap(([, , b]) => b.names)),
12787
+ binding: {
12788
+ ...binding.binding,
12789
+ children: [d, ...binding.binding.children]
12790
+ },
12791
+ initializer: binding.initializer,
12792
+ splices,
12793
+ thisAssignments
12636
12794
  };
12637
12795
  });
12638
12796
  var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
@@ -12669,7 +12827,7 @@ ${input.slice(result.pos)}
12669
12827
  return result;
12670
12828
  }
12671
12829
  }
12672
- var ConstAssignment$0 = $TV($EXPECT($L92, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
12830
+ var ConstAssignment$0 = $TV($EXPECT($L90, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
12673
12831
  return { $loc, token: "=" };
12674
12832
  });
12675
12833
  function ConstAssignment(state) {
@@ -12694,7 +12852,7 @@ ${input.slice(result.pos)}
12694
12852
  return result;
12695
12853
  }
12696
12854
  }
12697
- var LetAssignment$0 = $TV($EXPECT($L93, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
12855
+ var LetAssignment$0 = $TV($EXPECT($L91, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
12698
12856
  return { $loc, token: "=" };
12699
12857
  });
12700
12858
  function LetAssignment(state) {
@@ -12719,25 +12877,51 @@ ${input.slice(result.pos)}
12719
12877
  return result;
12720
12878
  }
12721
12879
  }
12722
- var LexicalBinding$0 = $TS($S(BindingPattern, $E(TypeSuffix), Initializer), function($skip, $loc, $0, $1, $2, $3) {
12723
- const children = [...$1.children];
12724
- if ($2)
12725
- children.push($2);
12726
- children.push($3);
12880
+ var LexicalBinding$0 = $TS($S(BindingPattern, $E(TypeSuffix), $E(_), Initializer), function($skip, $loc, $0, $1, $2, $3, $4) {
12881
+ var binding = $1;
12882
+ var suffix = $2;
12883
+ var ws = $3;
12884
+ var initializer = $4;
12885
+ const bindingChildren = [...binding.children];
12886
+ if (suffix)
12887
+ bindingChildren.push(suffix);
12888
+ if (ws)
12889
+ bindingChildren.push(...ws);
12890
+ binding = {
12891
+ ...binding,
12892
+ children: bindingChildren
12893
+ };
12894
+ const [splices, thisAssignments] = gatherBindingCode(binding.children);
12727
12895
  return {
12728
- children,
12729
- names: $1.names
12896
+ children: [binding, initializer],
12897
+ names: binding.names,
12898
+ binding,
12899
+ initializer,
12900
+ splices: splices.map((s) => [",", s]),
12901
+ thisAssignments: thisAssignments.map((s) => ["", s, ";"])
12730
12902
  };
12731
12903
  });
12732
- var LexicalBinding$1 = $TS($S(BindingIdentifier, $E(TypeSuffix), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3) {
12733
- const children = [...$1.children];
12734
- if ($2)
12735
- children.push($2);
12736
- if ($3)
12737
- children.push($3);
12904
+ var LexicalBinding$1 = $TS($S(BindingIdentifier, $E(TypeSuffix), $E(_), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3, $4) {
12905
+ var binding = $1;
12906
+ var suffix = $2;
12907
+ var ws = $3;
12908
+ var initializer = $4;
12909
+ const bindingChildren = [...binding.children];
12910
+ if (suffix)
12911
+ bindingChildren.push(suffix);
12912
+ if (ws)
12913
+ bindingChildren.push(...ws);
12914
+ binding = {
12915
+ ...binding,
12916
+ children: bindingChildren
12917
+ };
12738
12918
  return {
12739
- children,
12740
- names: $1.names
12919
+ children: [binding, initializer],
12920
+ names: binding.names,
12921
+ binding,
12922
+ initializer,
12923
+ splices: [],
12924
+ thisAssignments: []
12741
12925
  };
12742
12926
  });
12743
12927
  function LexicalBinding(state) {
@@ -13375,7 +13559,7 @@ ${input.slice(result.pos)}
13375
13559
  }
13376
13560
  }
13377
13561
  var RegularExpressionLiteral$0 = HeregexLiteral;
13378
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L55, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L55, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
13562
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L53, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L53, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
13379
13563
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
13380
13564
  });
13381
13565
  function RegularExpressionLiteral(state) {
@@ -13942,7 +14126,7 @@ ${input.slice(result.pos)}
13942
14126
  return result;
13943
14127
  }
13944
14128
  }
13945
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L94, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L95, fail, 'JSMultiLineComment "*/"')), $EXPECT($R42, fail, "JSMultiLineComment /./"))), $EXPECT($L95, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
14129
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L92, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L93, fail, 'JSMultiLineComment "*/"')), $EXPECT($R42, fail, "JSMultiLineComment /./"))), $EXPECT($L93, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
13946
14130
  return { type: "Comment", $loc, token: $1 };
13947
14131
  });
13948
14132
  function JSMultiLineComment(state) {
@@ -14041,7 +14225,7 @@ ${input.slice(result.pos)}
14041
14225
  return result;
14042
14226
  }
14043
14227
  }
14044
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L94, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L95, fail, 'InlineComment "*/"')), $EXPECT($R46, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L95, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
14228
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L92, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L93, fail, 'InlineComment "*/"')), $EXPECT($R46, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L93, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
14045
14229
  return { $loc, token: $1 };
14046
14230
  });
14047
14231
  function InlineComment(state) {
@@ -14138,7 +14322,7 @@ ${input.slice(result.pos)}
14138
14322
  var NonNewlineWhitespace$0 = $TR($EXPECT($R47, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14139
14323
  return { $loc, token: $0 };
14140
14324
  });
14141
- var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L96, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
14325
+ var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L94, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
14142
14326
  return "";
14143
14327
  });
14144
14328
  function NonNewlineWhitespace(state) {
@@ -14290,7 +14474,7 @@ ${input.slice(result.pos)}
14290
14474
  }
14291
14475
  }
14292
14476
  var StatementDelimiter$0 = SemicolonDelimiter;
14293
- 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);
14477
+ var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L3, fail, 'StatementDelimiter "("'), $EXPECT($L95, fail, 'StatementDelimiter "["'), $EXPECT($L96, fail, 'StatementDelimiter "`"'), $EXPECT($L56, fail, 'StatementDelimiter "+"'), $EXPECT($L18, fail, 'StatementDelimiter "-"'), $EXPECT($L52, fail, 'StatementDelimiter "*"'), $EXPECT($L53, fail, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, FatArrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L3, fail, 'StatementDelimiter "("'))))), InsertSemicolon);
14294
14478
  var StatementDelimiter$2 = $Y(EOS);
14295
14479
  function StatementDelimiter(state) {
14296
14480
  let eventData;
@@ -14390,7 +14574,7 @@ ${input.slice(result.pos)}
14390
14574
  return result;
14391
14575
  }
14392
14576
  }
14393
- var Abstract$0 = $TV($TEXT($S($EXPECT($L99, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L9, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
14577
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L97, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L9, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
14394
14578
  return { $loc, token: $1, ts: true };
14395
14579
  });
14396
14580
  function Abstract(state) {
@@ -14415,7 +14599,7 @@ ${input.slice(result.pos)}
14415
14599
  return result;
14416
14600
  }
14417
14601
  }
14418
- var Ampersand$0 = $TV($EXPECT($L83, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
14602
+ var Ampersand$0 = $TV($EXPECT($L81, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
14419
14603
  return { $loc, token: $1 };
14420
14604
  });
14421
14605
  function Ampersand(state) {
@@ -14440,7 +14624,7 @@ ${input.slice(result.pos)}
14440
14624
  return result;
14441
14625
  }
14442
14626
  }
14443
- var As$0 = $TS($S($EXPECT($L100, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14627
+ var As$0 = $TS($S($EXPECT($L98, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14444
14628
  return { $loc, token: $1 };
14445
14629
  });
14446
14630
  function As(state) {
@@ -14465,7 +14649,7 @@ ${input.slice(result.pos)}
14465
14649
  return result;
14466
14650
  }
14467
14651
  }
14468
- var At$0 = $TV($EXPECT($L101, fail, 'At "@"'), function($skip, $loc, $0, $1) {
14652
+ var At$0 = $TV($EXPECT($L99, fail, 'At "@"'), function($skip, $loc, $0, $1) {
14469
14653
  return { $loc, token: $1 };
14470
14654
  });
14471
14655
  function At(state) {
@@ -14490,7 +14674,7 @@ ${input.slice(result.pos)}
14490
14674
  return result;
14491
14675
  }
14492
14676
  }
14493
- var AtAt$0 = $TV($EXPECT($L102, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
14677
+ var AtAt$0 = $TV($EXPECT($L100, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
14494
14678
  return { $loc, token: "@" };
14495
14679
  });
14496
14680
  function AtAt(state) {
@@ -14515,7 +14699,7 @@ ${input.slice(result.pos)}
14515
14699
  return result;
14516
14700
  }
14517
14701
  }
14518
- var Async$0 = $TS($S($EXPECT($L103, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14702
+ var Async$0 = $TS($S($EXPECT($L101, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14519
14703
  return { $loc, token: $1, type: "Async" };
14520
14704
  });
14521
14705
  function Async(state) {
@@ -14540,7 +14724,7 @@ ${input.slice(result.pos)}
14540
14724
  return result;
14541
14725
  }
14542
14726
  }
14543
- var Await$0 = $TS($S($EXPECT($L104, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14727
+ var Await$0 = $TS($S($EXPECT($L102, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14544
14728
  return { $loc, token: $1, type: "Await" };
14545
14729
  });
14546
14730
  function Await(state) {
@@ -14565,7 +14749,7 @@ ${input.slice(result.pos)}
14565
14749
  return result;
14566
14750
  }
14567
14751
  }
14568
- var Backtick$0 = $TV($EXPECT($L98, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
14752
+ var Backtick$0 = $TV($EXPECT($L96, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
14569
14753
  return { $loc, token: $1 };
14570
14754
  });
14571
14755
  function Backtick(state) {
@@ -14590,7 +14774,7 @@ ${input.slice(result.pos)}
14590
14774
  return result;
14591
14775
  }
14592
14776
  }
14593
- var By$0 = $TS($S($EXPECT($L105, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14777
+ var By$0 = $TS($S($EXPECT($L103, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14594
14778
  return { $loc, token: $1 };
14595
14779
  });
14596
14780
  function By(state) {
@@ -14615,7 +14799,7 @@ ${input.slice(result.pos)}
14615
14799
  return result;
14616
14800
  }
14617
14801
  }
14618
- var Case$0 = $TS($S($EXPECT($L106, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14802
+ var Case$0 = $TS($S($EXPECT($L104, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14619
14803
  return { $loc, token: $1 };
14620
14804
  });
14621
14805
  function Case(state) {
@@ -14640,7 +14824,7 @@ ${input.slice(result.pos)}
14640
14824
  return result;
14641
14825
  }
14642
14826
  }
14643
- var Catch$0 = $TS($S($EXPECT($L107, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14827
+ var Catch$0 = $TS($S($EXPECT($L105, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14644
14828
  return { $loc, token: $1 };
14645
14829
  });
14646
14830
  function Catch(state) {
@@ -14665,7 +14849,7 @@ ${input.slice(result.pos)}
14665
14849
  return result;
14666
14850
  }
14667
14851
  }
14668
- var Class$0 = $TS($S($EXPECT($L108, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14852
+ var Class$0 = $TS($S($EXPECT($L106, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14669
14853
  return { $loc, token: $1 };
14670
14854
  });
14671
14855
  function Class(state) {
@@ -14740,7 +14924,7 @@ ${input.slice(result.pos)}
14740
14924
  return result;
14741
14925
  }
14742
14926
  }
14743
- var CloseParen$0 = $TV($EXPECT($L33, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
14927
+ var CloseParen$0 = $TV($EXPECT($L107, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
14744
14928
  return { $loc, token: $1 };
14745
14929
  });
14746
14930
  function CloseParen(state) {
@@ -14765,7 +14949,7 @@ ${input.slice(result.pos)}
14765
14949
  return result;
14766
14950
  }
14767
14951
  }
14768
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L109, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
14952
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L108, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
14769
14953
  return { $loc, token: "${" };
14770
14954
  });
14771
14955
  function CoffeeSubstitutionStart(state) {
@@ -14790,7 +14974,7 @@ ${input.slice(result.pos)}
14790
14974
  return result;
14791
14975
  }
14792
14976
  }
14793
- var Colon$0 = $TS($S($EXPECT($L32, fail, 'Colon ":"'), $N($EXPECT($L2, fail, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
14977
+ var Colon$0 = $TS($S($EXPECT($L109, fail, 'Colon ":"'), $N($EXPECT($L2, fail, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
14794
14978
  return { $loc, token: $1 };
14795
14979
  });
14796
14980
  function Colon(state) {
@@ -14840,7 +15024,7 @@ ${input.slice(result.pos)}
14840
15024
  return result;
14841
15025
  }
14842
15026
  }
14843
- var ConstructorShorthand$0 = $TV($EXPECT($L101, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
15027
+ var ConstructorShorthand$0 = $TV($EXPECT($L99, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
14844
15028
  return { $loc, token: "constructor" };
14845
15029
  });
14846
15030
  function ConstructorShorthand(state) {
@@ -15365,7 +15549,7 @@ ${input.slice(result.pos)}
15365
15549
  return result;
15366
15550
  }
15367
15551
  }
15368
- var In$0 = $TS($S($EXPECT($L81, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15552
+ var In$0 = $TS($S($EXPECT($L79, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15369
15553
  return { $loc, token: $1 };
15370
15554
  });
15371
15555
  function In(state) {
@@ -15514,7 +15698,7 @@ ${input.slice(result.pos)}
15514
15698
  return result;
15515
15699
  }
15516
15700
  }
15517
- 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) {
15701
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L50, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L9, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
15518
15702
  return { $loc, token: "!" };
15519
15703
  });
15520
15704
  function Not(state) {
@@ -15539,7 +15723,7 @@ ${input.slice(result.pos)}
15539
15723
  return result;
15540
15724
  }
15541
15725
  }
15542
- var Of$0 = $TS($S($EXPECT($L73, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15726
+ var Of$0 = $TS($S($EXPECT($L71, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15543
15727
  return { $loc, token: $1 };
15544
15728
  });
15545
15729
  function Of(state) {
@@ -15614,7 +15798,7 @@ ${input.slice(result.pos)}
15614
15798
  return result;
15615
15799
  }
15616
15800
  }
15617
- var OpenBracket$0 = $TV($EXPECT($L97, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15801
+ var OpenBracket$0 = $TV($EXPECT($L95, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
15618
15802
  return { $loc, token: $1 };
15619
15803
  });
15620
15804
  function OpenBracket(state) {
@@ -15895,7 +16079,7 @@ ${input.slice(result.pos)}
15895
16079
  return result;
15896
16080
  }
15897
16081
  }
15898
- var Semicolon$0 = $TV($EXPECT($L85, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
16082
+ var Semicolon$0 = $TV($EXPECT($L83, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
15899
16083
  return { $loc, token: $1 };
15900
16084
  });
15901
16085
  function Semicolon(state) {
@@ -15945,7 +16129,7 @@ ${input.slice(result.pos)}
15945
16129
  return result;
15946
16130
  }
15947
16131
  }
15948
- var Star$0 = $TV($EXPECT($L54, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
16132
+ var Star$0 = $TV($EXPECT($L52, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
15949
16133
  return { $loc, token: $1 };
15950
16134
  });
15951
16135
  function Star(state) {
@@ -15973,7 +16157,7 @@ ${input.slice(result.pos)}
15973
16157
  var Static$0 = $TS($S($EXPECT($L145, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15974
16158
  return { $loc, token: $1 };
15975
16159
  });
15976
- 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) {
16160
+ var Static$1 = $TS($S($EXPECT($L99, fail, 'Static "@"'), $N($C($EXPECT($L3, fail, 'Static "("'), $EXPECT($L99, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
15977
16161
  return { $loc, token: "static " };
15978
16162
  });
15979
16163
  function Static(state) {
@@ -16593,7 +16777,7 @@ ${input.slice(result.pos)}
16593
16777
  return result;
16594
16778
  }
16595
16779
  }
16596
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L132, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L165, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
16780
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L132, fail, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L165, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
16597
16781
  return { type: "JSXElement", children: $0, tag: $2 };
16598
16782
  });
16599
16783
  function JSXSelfClosingElement(state) {
@@ -16669,7 +16853,7 @@ ${input.slice(result.pos)}
16669
16853
  return result;
16670
16854
  }
16671
16855
  }
16672
- var JSXOpeningElement$0 = $S($EXPECT($L132, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L30, fail, 'JSXOpeningElement ">"'));
16856
+ var JSXOpeningElement$0 = $S($EXPECT($L132, fail, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L30, fail, 'JSXOpeningElement ">"'));
16673
16857
  function JSXOpeningElement(state) {
16674
16858
  let eventData;
16675
16859
  if (state.events) {
@@ -16721,7 +16905,7 @@ ${input.slice(result.pos)}
16721
16905
  return result;
16722
16906
  }
16723
16907
  }
16724
- var JSXClosingElement$0 = $S($EXPECT($L166, fail, 'JSXClosingElement "</"'), $E(Whitespace), $TEXT(JSXElementName), $E(Whitespace), $EXPECT($L30, fail, 'JSXClosingElement ">"'));
16908
+ var JSXClosingElement$0 = $S($EXPECT($L166, fail, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L30, fail, 'JSXClosingElement ">"'));
16725
16909
  function JSXClosingElement(state) {
16726
16910
  let eventData;
16727
16911
  if (state.events) {
@@ -16867,7 +17051,10 @@ ${input.slice(result.pos)}
16867
17051
  return result;
16868
17052
  }
16869
17053
  }
16870
- var JSXElementName$0 = $S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName))));
17054
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L12, fail, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
17055
+ return module.config.defaultElement;
17056
+ });
17057
+ var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
16871
17058
  function JSXElementName(state) {
16872
17059
  let eventData;
16873
17060
  if (state.events) {
@@ -16879,12 +17066,12 @@ ${input.slice(result.pos)}
16879
17066
  }
16880
17067
  }
16881
17068
  if (state.tokenize) {
16882
- const result = $TOKEN("JSXElementName", state, JSXElementName$0(state));
17069
+ const result = $TOKEN("JSXElementName", state, JSXElementName$0(state) || JSXElementName$1(state));
16883
17070
  if (state.events)
16884
17071
  state.events.exit?.("JSXElementName", state, result, eventData);
16885
17072
  return result;
16886
17073
  } else {
16887
- const result = JSXElementName$0(state);
17074
+ const result = JSXElementName$0(state) || JSXElementName$1(state);
16888
17075
  if (state.events)
16889
17076
  state.events.exit?.("JSXElementName", state, result, eventData);
16890
17077
  return result;
@@ -17296,7 +17483,7 @@ ${input.slice(result.pos)}
17296
17483
  var pre = $1;
17297
17484
  var exp = $2;
17298
17485
  var post = $3;
17299
- return module.processUnaryExpression(pre, exp, post);
17486
+ return processUnaryExpression(pre, exp, post);
17300
17487
  });
17301
17488
  function InlineJSXUnaryExpression(state) {
17302
17489
  let eventData;
@@ -18852,7 +19039,7 @@ ${input.slice(result.pos)}
18852
19039
  return result;
18853
19040
  }
18854
19041
  }
18855
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L82, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
19042
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L80, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
18856
19043
  var lhs = $1;
18857
19044
  var rhs = $2;
18858
19045
  if (!rhs)
@@ -19413,7 +19600,7 @@ ${input.slice(result.pos)}
19413
19600
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
19414
19601
  return value[1];
19415
19602
  });
19416
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L32, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L33, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L31, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L22, fail, 'InlineInterfacePropertyDelimiter "}"'))));
19603
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L109, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L107, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L31, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L22, fail, 'InlineInterfacePropertyDelimiter "}"'))));
19417
19604
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
19418
19605
  function InlineInterfacePropertyDelimiter(state) {
19419
19606
  let eventData;
@@ -19437,10 +19624,10 @@ ${input.slice(result.pos)}
19437
19624
  return result;
19438
19625
  }
19439
19626
  }
19440
- var TypeBinaryOp$0 = $TV($EXPECT($L84, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
19627
+ var TypeBinaryOp$0 = $TV($EXPECT($L82, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
19441
19628
  return { $loc, token: "|" };
19442
19629
  });
19443
- var TypeBinaryOp$1 = $TV($EXPECT($L83, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
19630
+ var TypeBinaryOp$1 = $TV($EXPECT($L81, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
19444
19631
  return { $loc, token: "&" };
19445
19632
  });
19446
19633
  function TypeBinaryOp(state) {
@@ -20881,6 +21068,7 @@ ${input.slice(result.pos)}
20881
21068
  coffeeNot: false,
20882
21069
  coffeeOf: false,
20883
21070
  coffeePrototype: false,
21071
+ defaultElement: "div",
20884
21072
  implicitReturns: true,
20885
21073
  objectIs: false,
20886
21074
  react: false,
@@ -21186,60 +21374,6 @@ ${input.slice(result.pos)}
21186
21374
  }
21187
21375
  return node;
21188
21376
  };
21189
- module.processUnaryExpression = (pre, exp, post) => {
21190
- if (post?.token === "?") {
21191
- post = {
21192
- $loc: post.$loc,
21193
- token: " != null"
21194
- };
21195
- switch (exp.type) {
21196
- case "Identifier":
21197
- case "Literal":
21198
- return {
21199
- ...exp,
21200
- children: [...pre, ...exp.children, post]
21201
- };
21202
- default:
21203
- const expression = {
21204
- ...exp,
21205
- children: [...pre, "(", exp.children, ")", post]
21206
- };
21207
- return {
21208
- type: "ParenthesizedExpression",
21209
- children: ["(", expression, ")"],
21210
- expression
21211
- };
21212
- }
21213
- }
21214
- if (exp.type === "Literal") {
21215
- if (pre.length === 1 && pre[0].token === "-") {
21216
- const children = [pre[0], ...exp.children];
21217
- if (post)
21218
- exp.children.push(post);
21219
- return {
21220
- type: "Literal",
21221
- children,
21222
- raw: `-${exp.raw}`
21223
- };
21224
- }
21225
- }
21226
- if (exp.children) {
21227
- const children = [...pre, ...exp.children];
21228
- if (post)
21229
- children.push(post);
21230
- return Object.assign({}, exp, { children });
21231
- } else if (Array.isArray(exp)) {
21232
- const children = [...pre, ...exp];
21233
- if (post)
21234
- children.push(post);
21235
- return { children };
21236
- } else {
21237
- const children = [...pre, exp];
21238
- if (post)
21239
- children.push(post);
21240
- return { children };
21241
- }
21242
- };
21243
21377
  module.needsRef = function(expression, base = "ref") {
21244
21378
  switch (expression.type) {
21245
21379
  case "Ref":
@@ -23069,6 +23203,31 @@ ${input.slice(result.pos)}
23069
23203
  return result;
23070
23204
  }
23071
23205
  }
23206
+ var Dedented$0 = $T($S($N($C(Samedent, IndentedFurther)), EOS), function(value) {
23207
+ return value[1];
23208
+ });
23209
+ function Dedented(state) {
23210
+ let eventData;
23211
+ if (state.events) {
23212
+ const result = state.events.enter?.("Dedented", state);
23213
+ if (result) {
23214
+ if (result.cache)
23215
+ return result.cache;
23216
+ eventData = result.data;
23217
+ }
23218
+ }
23219
+ if (state.tokenize) {
23220
+ const result = $TOKEN("Dedented", state, Dedented$0(state));
23221
+ if (state.events)
23222
+ state.events.exit?.("Dedented", state, result, eventData);
23223
+ return result;
23224
+ } else {
23225
+ const result = Dedented$0(state);
23226
+ if (state.events)
23227
+ state.events.exit?.("Dedented", state, result, eventData);
23228
+ return result;
23229
+ }
23230
+ }
23072
23231
  var PushIndent$0 = $Y($S(EOS, TrackIndented));
23073
23232
  function PushIndent(state) {
23074
23233
  let eventData;
@@ -23183,6 +23342,7 @@ ${input.slice(result.pos)}
23183
23342
  processCoffeeInterpolation,
23184
23343
  processConstAssignmentDeclaration,
23185
23344
  processLetAssignmentDeclaration,
23345
+ processUnaryExpression,
23186
23346
  quoteString,
23187
23347
  removeParentPointers
23188
23348
  } = require_lib();
@@ -23620,7 +23780,7 @@ var parse;
23620
23780
  var uncacheable;
23621
23781
  ({ parse } = import_parser.default);
23622
23782
  ({ SourceMap: SourceMap2, base64Encode: base64Encode2 } = util_exports);
23623
- uncacheable = /* @__PURE__ */ new Set(["ActualAssignment", "AllowAll", "AllowClassImplicitCall", "AllowIndentedApplication", "AllowMultiLineImplicitObjectLiteral", "AllowTrailingMemberProperty", "AllowedTrailingMemberExpressions", "ApplicationStart", "Arguments", "ArgumentsWithTrailingMemberExpressions", "ArrowFunction", "ArrowFunctionTail", "AssignmentExpression", "AssignmentExpressionTail", "BinaryOpExpression", "BinaryOpRHS", "BracedBlock", "BracedObjectLiteralContent", "BracedOrEmptyBlock", "CallExpression", "CallExpressionRest", "ClassImplicitCallForbidden", "CoffeeCommentEnabled", "CommaDelimiter", "ConditionalExpression", "Declaration", "Debugger", "ElementListWithIndentedApplicationForbidden", "ElseClause", "Expression", "ExpressionStatement", "ExpressionWithIndentedApplicationForbidden", "ExtendedExpression", "FatArrowBody", "ForbidClassImplicitCall", "ForbidIndentedApplication", "ForbidMultiLineImplicitObjectLiteral", "ForbidTrailingMemberProperty", "FunctionDeclaration", "FunctionExpression", "HoistableDeclaration", "ImplicitArguments", "ImplicitInlineObjectPropertyDelimiter", "ImplicitNestedBlock", "IndentedApplicationAllowed", "IndentedFurther", "IndentedJSXChildExpression", "InlineObjectLiteral", "InsertIndent", "JSXChild", "JSXChildren", "JSXElement", "JSXFragment", "JSXImplicitFragment", "JSXMixedChildren", "JSXNested", "JSXNestedChildren", "JSXOptionalClosingElement", "JSXOptionalClosingFragment", "JSXTag", "LeftHandSideExpression", "MemberExpression", "MemberExpressionRest", "Nested", "NestedBindingElement", "NestedBindingElements", "NestedBlockExpression", "NestedBlockExpression", "NestedBlockStatement", "NestedBlockStatements", "NestedClassSignatureElement", "NestedClassSignatureElements", "NestedDeclareElement", "NestedDeclareElements", "NestedElement", "NestedElementList", "NestedImplicitObjectLiteral", "NestedImplicitPropertyDefinition", "NestedImplicitPropertyDefinitions", "NestedInterfaceProperty", "NestedJSXChildExpression", "NestedModuleItem", "NestedModuleItems", "NestedObject", "NestedPropertyDefinitions", "NonSingleBracedBlock", "NotDedented", "ObjectLiteral", "PopIndent", "PopJSXStack", "PostfixedExpression", "PostfixedStatement", "PrimaryExpression", "PushIndent", "PushJSXOpeningElement", "PushJSXOpeningFragment", "RestoreAll", "RestoreClassImplicitCall", "RestoreMultiLineImplicitObjectLiteral", "RestoreIndentedApplication", "RestoreTrailingMemberProperty", "RHS", "Samedent", "ShortCircuitExpression", "SingleLineAssignmentExpression", "SingleLineComment", "SingleLineStatements", "SnugNamedProperty", "Statement", "StatementListItem", "SuffixedExpression", "SuffixedStatement", "ThinArrowFunction", "TrackIndented", "TrailingMemberExpressions", "TrailingMemberPropertyAllowed", "TypedJSXElement", "TypedJSXFragment", "UnaryExpression", "UpdateExpression"]);
23783
+ uncacheable = /* @__PURE__ */ new Set(["ActualAssignment", "AllowAll", "AllowClassImplicitCall", "AllowIndentedApplication", "AllowMultiLineImplicitObjectLiteral", "AllowTrailingMemberProperty", "AllowedTrailingMemberExpressions", "ApplicationStart", "Arguments", "ArgumentsWithTrailingMemberExpressions", "ArrowFunction", "ArrowFunctionTail", "AssignmentExpression", "AssignmentExpressionTail", "BinaryOpExpression", "BinaryOpRHS", "BracedBlock", "BracedObjectLiteralContent", "BracedOrEmptyBlock", "CallExpression", "CallExpressionRest", "ClassImplicitCallForbidden", "CoffeeCommentEnabled", "CommaDelimiter", "ConditionalExpression", "Declaration", "Debugger", "Dedented", "ElementListWithIndentedApplicationForbidden", "ElseClause", "Expression", "ExpressionStatement", "ExpressionWithIndentedApplicationForbidden", "ExtendedExpression", "FatArrowBody", "ForbidClassImplicitCall", "ForbidIndentedApplication", "ForbidMultiLineImplicitObjectLiteral", "ForbidTrailingMemberProperty", "FunctionDeclaration", "FunctionExpression", "HoistableDeclaration", "ImplicitArguments", "ImplicitInlineObjectPropertyDelimiter", "ImplicitNestedBlock", "IndentedApplicationAllowed", "IndentedFurther", "IndentedJSXChildExpression", "InlineObjectLiteral", "InsertIndent", "JSXChild", "JSXChildren", "JSXElement", "JSXFragment", "JSXImplicitFragment", "JSXMixedChildren", "JSXNested", "JSXNestedChildren", "JSXOptionalClosingElement", "JSXOptionalClosingFragment", "JSXTag", "LeftHandSideExpression", "MemberExpression", "MemberExpressionRest", "Nested", "NestedBindingElement", "NestedBindingElements", "NestedBlockExpression", "NestedBlockExpression", "NestedBlockStatement", "NestedBlockStatements", "NestedClassSignatureElement", "NestedClassSignatureElements", "NestedDeclareElement", "NestedDeclareElements", "NestedElement", "NestedElementList", "NestedImplicitObjectLiteral", "NestedImplicitPropertyDefinition", "NestedImplicitPropertyDefinitions", "NestedInterfaceProperty", "NestedJSXChildExpression", "NestedModuleItem", "NestedModuleItems", "NestedNonAssignmentExtendedExpression", "NestedObject", "NestedPropertyDefinitions", "NonSingleBracedBlock", "NotDedented", "ObjectLiteral", "PopIndent", "PopJSXStack", "PostfixedExpression", "PostfixedStatement", "PrimaryExpression", "PushIndent", "PushJSXOpeningElement", "PushJSXOpeningFragment", "RestoreAll", "RestoreClassImplicitCall", "RestoreMultiLineImplicitObjectLiteral", "RestoreIndentedApplication", "RestoreTrailingMemberProperty", "RHS", "Samedent", "ShortCircuitExpression", "SingleLineAssignmentExpression", "SingleLineComment", "SingleLineStatements", "SnugNamedProperty", "Statement", "StatementListItem", "SuffixedExpression", "SuffixedStatement", "ThinArrowFunction", "TrackIndented", "TrailingMemberExpressions", "TrailingMemberPropertyAllowed", "TypedJSXElement", "TypedJSXFragment", "UnaryExpression", "UpdateExpression"]);
23624
23784
  var compile = function(src, options) {
23625
23785
  var ast, code, events, filename, ref, result, sm, srcMapJSON;
23626
23786
  if (!options) {