@danielx/civet 0.9.7 → 0.10.0

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
@@ -495,12 +495,14 @@ __export(lib_civet_exports, {
495
495
  attachPostfixStatementAsExpression: () => attachPostfixStatementAsExpression,
496
496
  blockWithPrefix: () => blockWithPrefix,
497
497
  braceBlock: () => braceBlock,
498
+ bracedBlock: () => bracedBlock,
498
499
  convertNamedImportsToObject: () => convertNamedImportsToObject,
499
500
  convertObjectToJSXAttributes: () => convertObjectToJSXAttributes,
500
501
  convertWithClause: () => convertWithClause,
501
502
  dedentBlockString: () => dedentBlockString,
502
503
  dedentBlockSubstitutions: () => dedentBlockSubstitutions,
503
504
  deepCopy: () => deepCopy,
505
+ duplicateBlock: () => duplicateBlock,
504
506
  dynamizeImportDeclaration: () => dynamizeImportDeclaration,
505
507
  dynamizeImportDeclarationExpression: () => dynamizeImportDeclarationExpression,
506
508
  expressionizeTypeIf: () => expressionizeTypeIf,
@@ -757,9 +759,49 @@ function isExit(node) {
757
759
  }
758
760
  case "SwitchStatement": {
759
761
  return (
760
- // Ensure exhaustive by requiring an else/default clause
761
- node.caseBlock.clauses.some(($) => $.type === "DefaultClause") && // Every clause should exit
762
- node.caseBlock.clauses.every(isExit)
762
+ // Every clause should exit, or continue to next clause
763
+ (() => {
764
+ let results = true;
765
+ for (const clause of node.caseBlock.clauses) {
766
+ let m1;
767
+ if (m1 = clause.type, m1 === "CaseClause" || m1 === "WhenClause" || m1 === "DefaultClause") {
768
+ if (!(!(clause.type === "WhenClause" && clause.break) && !gatherRecursiveWithinFunction(clause.block, ($) => $.type === "BreakStatement").length)) {
769
+ results = false;
770
+ break;
771
+ }
772
+ } else {
773
+ if (!isExit(clause.block)) {
774
+ results = false;
775
+ break;
776
+ }
777
+ }
778
+ }
779
+ return results;
780
+ })() && // Ensure exhaustive by requiring an else/default clause
781
+ (() => {
782
+ let results1 = false;
783
+ let i3 = 0;
784
+ for (const clause of node.caseBlock.clauses) {
785
+ const i = i3++;
786
+ if (clause.type === "DefaultClause" && // Require default clause to exit or continue to next clause
787
+ // (checked above) and eventually reach an exiting clause
788
+ (() => {
789
+ let results2 = false;
790
+ for (const later of node.caseBlock.clauses.slice(i)) {
791
+ let m2;
792
+ if ((m2 = later.type, m2 === "CaseClause" || m2 === "WhenClause" || m2 === "DefaultClause") && isExit(later.block)) {
793
+ results2 = true;
794
+ break;
795
+ }
796
+ }
797
+ return results2;
798
+ })()) {
799
+ results1 = true;
800
+ break;
801
+ }
802
+ }
803
+ return results1;
804
+ })()
763
805
  );
764
806
  }
765
807
  case "TryStatement": {
@@ -822,18 +864,18 @@ function insertTrimmingSpace(target, c) {
822
864
  if (target.length === 0) {
823
865
  return c;
824
866
  }
825
- const results = [];
826
- for (let i3 = 0, len3 = target.length; i3 < len3; i3++) {
827
- const i = i3;
828
- const e = target[i3];
867
+ const results3 = [];
868
+ for (let i4 = 0, len3 = target.length; i4 < len3; i4++) {
869
+ const i = i4;
870
+ const e = target[i4];
829
871
  if (i === 0) {
830
- results.push(insertTrimmingSpace(e, c));
872
+ results3.push(insertTrimmingSpace(e, c));
831
873
  } else {
832
- results.push(e);
874
+ results3.push(e);
833
875
  }
834
876
  }
835
877
  ;
836
- return results;
878
+ return results3;
837
879
  } else if (isParent(target)) {
838
880
  const oldChildren = target.children;
839
881
  target = {
@@ -1068,8 +1110,8 @@ function startsWithPredicate(node, predicate, skip = isWhitespaceOrEmpty) {
1068
1110
  return void 0;
1069
1111
  }
1070
1112
  if (Array.isArray(node)) {
1071
- for (let i4 = 0, len4 = node.length; i4 < len4; i4++) {
1072
- const child = node[i4];
1113
+ for (let i5 = 0, len4 = node.length; i5 < len4; i5++) {
1114
+ const child = node[i5];
1073
1115
  if (skip(child)) {
1074
1116
  continue;
1075
1117
  }
@@ -1108,9 +1150,9 @@ function deepCopy(root) {
1108
1150
  if (Array.isArray(node)) {
1109
1151
  const array = new Array(node.length);
1110
1152
  copied.set(node, array);
1111
- for (let i5 = 0, len5 = node.length; i5 < len5; i5++) {
1112
- const i = i5;
1113
- const item = node[i5];
1153
+ for (let i6 = 0, len5 = node.length; i6 < len5; i6++) {
1154
+ const i = i6;
1155
+ const item = node[i6];
1114
1156
  array[i] = recurse(item);
1115
1157
  }
1116
1158
  } else if (node?.type === "Ref") {
@@ -1137,9 +1179,9 @@ function replaceNode(node, newNode, parent) {
1137
1179
  throw new Error("replaceNode failed: node has no parent");
1138
1180
  }
1139
1181
  function recurse(children) {
1140
- for (let i6 = 0, len6 = children.length; i6 < len6; i6++) {
1141
- const i = i6;
1142
- const child = children[i6];
1182
+ for (let i7 = 0, len6 = children.length; i7 < len6; i7++) {
1183
+ const i = i7;
1184
+ const child = children[i7];
1143
1185
  if (child === node) {
1144
1186
  children[i] = newNode;
1145
1187
  return true;
@@ -1176,9 +1218,9 @@ function replaceNodes(root, predicate, replacer) {
1176
1218
  return root;
1177
1219
  }
1178
1220
  }
1179
- for (let i7 = 0, len7 = array.length; i7 < len7; i7++) {
1180
- const i = i7;
1181
- const node = array[i7];
1221
+ for (let i8 = 0, len7 = array.length; i8 < len7; i8++) {
1222
+ const i = i8;
1223
+ const node = array[i8];
1182
1224
  if (!(node != null)) {
1183
1225
  return;
1184
1226
  }
@@ -1302,8 +1344,8 @@ function updateParentPointers(node, parent, depth = 1) {
1302
1344
  return;
1303
1345
  }
1304
1346
  if (Array.isArray(node)) {
1305
- for (let i8 = 0, len8 = node.length; i8 < len8; i8++) {
1306
- const child = node[i8];
1347
+ for (let i9 = 0, len8 = node.length; i9 < len8; i9++) {
1348
+ const child = node[i9];
1307
1349
  updateParentPointers(child, parent, depth);
1308
1350
  }
1309
1351
  return;
@@ -1313,8 +1355,8 @@ function updateParentPointers(node, parent, depth = 1) {
1313
1355
  node.parent = parent;
1314
1356
  }
1315
1357
  if (depth && isParent(node)) {
1316
- for (let ref8 = node.children, i9 = 0, len9 = ref8.length; i9 < len9; i9++) {
1317
- const child = ref8[i9];
1358
+ for (let ref8 = node.children, i10 = 0, len9 = ref8.length; i10 < len9; i10++) {
1359
+ const child = ref8[i10];
1318
1360
  updateParentPointers(child, node, depth - 1);
1319
1361
  }
1320
1362
  }
@@ -1511,9 +1553,9 @@ function wrapWithReturn(expression, parent = expression?.parent, semi = false) {
1511
1553
  }
1512
1554
  function flatJoin(array, separator) {
1513
1555
  const result = [];
1514
- for (let i10 = 0, len10 = array.length; i10 < len10; i10++) {
1515
- const i = i10;
1516
- const items = array[i10];
1556
+ for (let i11 = 0, len10 = array.length; i11 < len10; i11++) {
1557
+ const i = i11;
1558
+ const items = array[i11];
1517
1559
  if (i) {
1518
1560
  result.push(separator);
1519
1561
  }
@@ -3136,12 +3178,10 @@ function assignResults(node, collect) {
3136
3178
  }
3137
3179
  case "IfStatement": {
3138
3180
  assignResults(exp.then, collect);
3139
- if (exp.then.bare && !exp.then.semicolon) {
3140
- exp.then.children.push(exp.then.semicolon = ";");
3141
- }
3142
3181
  if (exp.else) {
3143
3182
  assignResults(exp.else.block, collect);
3144
3183
  } else {
3184
+ braceBlock(exp.then);
3145
3185
  exp.children.push([" else {", collect("void 0"), "}"]);
3146
3186
  }
3147
3187
  return;
@@ -4225,6 +4265,11 @@ function duplicateBlock(block) {
4225
4265
  children
4226
4266
  };
4227
4267
  }
4268
+ function bracedBlock(block) {
4269
+ block = duplicateBlock(block);
4270
+ braceBlock(block);
4271
+ return block;
4272
+ }
4228
4273
  function makeEmptyBlock() {
4229
4274
  const expressions = [];
4230
4275
  return {
@@ -5346,7 +5391,7 @@ function processDeclarations(statements) {
5346
5391
  });
5347
5392
  }
5348
5393
  }
5349
- if (initializer) {
5394
+ if (initializer && blockContainingStatement(declaration)) {
5350
5395
  prependStatementExpressionBlock(initializer, declaration);
5351
5396
  }
5352
5397
  }
@@ -9249,8 +9294,6 @@ var grammar = {
9249
9294
  NamedImports,
9250
9295
  OperatorNamedImports,
9251
9296
  FromClause,
9252
- ImpliedFromClause,
9253
- ImpliedFrom,
9254
9297
  ImportAssertion,
9255
9298
  TypeAndImportSpecifier,
9256
9299
  ImportSpecifier,
@@ -9686,16 +9729,16 @@ var $L13 = (0, import_lib2.$L)("=>");
9686
9729
  var $L14 = (0, import_lib2.$L)("\u21D2");
9687
9730
  var $L15 = (0, import_lib2.$L)("import");
9688
9731
  var $L16 = (0, import_lib2.$L)(":");
9689
- var $L17 = (0, import_lib2.$L)(",");
9690
- var $L18 = (0, import_lib2.$L)(" ");
9691
- var $L19 = (0, import_lib2.$L)("<");
9692
- var $L20 = (0, import_lib2.$L)("implements");
9693
- var $L21 = (0, import_lib2.$L)("<:");
9694
- var $L22 = (0, import_lib2.$L)("^");
9695
- var $L23 = (0, import_lib2.$L)("<?");
9696
- var $L24 = (0, import_lib2.$L)("-");
9697
- var $L25 = (0, import_lib2.$L)("import.meta");
9698
- var $L26 = (0, import_lib2.$L)("return.value");
9732
+ var $L17 = (0, import_lib2.$L)(" ");
9733
+ var $L18 = (0, import_lib2.$L)("<");
9734
+ var $L19 = (0, import_lib2.$L)("implements");
9735
+ var $L20 = (0, import_lib2.$L)("<:");
9736
+ var $L21 = (0, import_lib2.$L)("^");
9737
+ var $L22 = (0, import_lib2.$L)("<?");
9738
+ var $L23 = (0, import_lib2.$L)("-");
9739
+ var $L24 = (0, import_lib2.$L)("import.meta");
9740
+ var $L25 = (0, import_lib2.$L)("return.value");
9741
+ var $L26 = (0, import_lib2.$L)(",");
9699
9742
  var $L27 = (0, import_lib2.$L)("tighter");
9700
9743
  var $L28 = (0, import_lib2.$L)("looser");
9701
9744
  var $L29 = (0, import_lib2.$L)("same");
@@ -9938,7 +9981,7 @@ var $R16 = (0, import_lib2.$R)(new RegExp(`(?=[0-9.'"tfyno])`, "suy"));
9938
9981
  var $R17 = (0, import_lib2.$R)(new RegExp("(?=true|false|yes|no|on|off)", "suy"));
9939
9982
  var $R18 = (0, import_lib2.$R)(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
9940
9983
  var $R19 = (0, import_lib2.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
9941
- var $R20 = (0, import_lib2.$R)(new RegExp("(?=\\[|\\s*[.\u2022])", "suy"));
9984
+ var $R20 = (0, import_lib2.$R)(new RegExp("(?=\\[|\\s*[.\u2022\\/])", "suy"));
9942
9985
  var $R21 = (0, import_lib2.$R)(new RegExp("([<>])(=?)|([\u2264\u2265])", "suy"));
9943
9986
  var $R22 = (0, import_lib2.$R)(new RegExp("[ \\t]*", "suy"));
9944
9987
  var $R23 = (0, import_lib2.$R)(new RegExp("[ \\t]+", "suy"));
@@ -11120,32 +11163,43 @@ var ExtendsClause$0 = (0, import_lib2.$S)(ExtendsToken, __, ExtendsTarget);
11120
11163
  function ExtendsClause(ctx, state2) {
11121
11164
  return (0, import_lib2.$EVENT)(ctx, state2, "ExtendsClause", ExtendsClause$0);
11122
11165
  }
11123
- var WithClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(__, With, __, ExtendsTarget, (0, import_lib2.$Q)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L17, 'WithClause ","'), __, ExtendsTarget))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11166
+ var WithClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(NotDedented, With, PushIndent, (0, import_lib2.$Q)((0, import_lib2.$S)(Nested, ExtendsTarget, (0, import_lib2.$E)(_), (0, import_lib2.$E)(Comma))), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11167
+ var targets = $4;
11168
+ if (!targets.length) return $skip;
11169
+ targets = targets.map(($) => $.slice(0, -1));
11170
+ return {
11171
+ type: "WithClause",
11172
+ children: $0,
11173
+ targets
11174
+ };
11175
+ });
11176
+ var WithClause$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(NotDedented, With, NotDedented, ExtendsTarget, (0, import_lib2.$Q)((0, import_lib2.$S)((0, import_lib2.$E)(_), Comma, NotDedented, ExtendsTarget))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11124
11177
  var ws = $3;
11125
11178
  var t = $4;
11126
11179
  var rest = $5;
11127
11180
  return {
11128
11181
  type: "WithClause",
11129
11182
  children: $0,
11130
- targets: [[ws, t], ...rest.map(([_comma, ws2, target]) => [ws2, target])]
11183
+ targets: [[ws, t], ...rest.map(([ws1, _comma, ws2, target]) => [prepend(ws1, ws2), target])]
11131
11184
  };
11132
11185
  });
11186
+ var WithClause$$ = [WithClause$0, WithClause$1];
11133
11187
  function WithClause(ctx, state2) {
11134
- return (0, import_lib2.$EVENT)(ctx, state2, "WithClause", WithClause$0);
11188
+ return (0, import_lib2.$EVENT_C)(ctx, state2, "WithClause", WithClause$$);
11135
11189
  }
11136
- var ExtendsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, (0, import_lib2.$E)(_), ExtendsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11137
- var l = $1;
11138
- var ws = $2;
11190
+ var ExtendsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(NotDedented, InsertSpace, ExtendsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11191
+ var ws = $1;
11192
+ var s = $2;
11139
11193
  var t = $3;
11140
11194
  return {
11141
11195
  type: "Extends",
11142
11196
  children: [
11143
- ws || { $loc: l.$loc, token: " " },
11197
+ ws.length ? ws : s,
11144
11198
  t
11145
11199
  ]
11146
11200
  };
11147
11201
  });
11148
- var ExtendsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$E)(_), Extends), function($skip, $loc, $0, $1, $2) {
11202
+ var ExtendsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(NotDedented, Extends), function($skip, $loc, $0, $1, $2) {
11149
11203
  return {
11150
11204
  type: "Extends",
11151
11205
  children: $0
@@ -11155,13 +11209,13 @@ var ExtendsToken$$ = [ExtendsToken$0, ExtendsToken$1];
11155
11209
  function ExtendsToken(ctx, state2) {
11156
11210
  return (0, import_lib2.$EVENT_C)(ctx, state2, "ExtendsToken", ExtendsToken$$);
11157
11211
  }
11158
- var ExtendsShorthand$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L19, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
11212
+ var ExtendsShorthand$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L18, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
11159
11213
  return { $loc, token: "extends " };
11160
11214
  });
11161
11215
  function ExtendsShorthand(ctx, state2) {
11162
11216
  return (0, import_lib2.$EVENT)(ctx, state2, "ExtendsShorthand", ExtendsShorthand$0);
11163
11217
  }
11164
- var NotExtendsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, (0, import_lib2.$E)(_), OmittedNegation, ExtendsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'NotExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11218
+ var NotExtendsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, (0, import_lib2.$E)(_), OmittedNegation, ExtendsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'NotExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11165
11219
  var l = $1;
11166
11220
  var ws1 = $2;
11167
11221
  var ws2 = $3;
@@ -11187,7 +11241,7 @@ function NotExtendsToken(ctx, state2) {
11187
11241
  var OmittedNegation$0 = (0, import_lib2.$T)((0, import_lib2.$S)(ExclamationPoint), function(value) {
11188
11242
  return "";
11189
11243
  });
11190
- var OmittedNegation$1 = (0, import_lib2.$T)((0, import_lib2.$S)(Not, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'OmittedNegation " "')), (0, import_lib2.$E)(_)), function(value) {
11244
+ var OmittedNegation$1 = (0, import_lib2.$T)((0, import_lib2.$S)(Not, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'OmittedNegation " "')), (0, import_lib2.$E)(_)), function(value) {
11191
11245
  return value[2];
11192
11246
  });
11193
11247
  var OmittedNegation$$ = [OmittedNegation$0, OmittedNegation$1];
@@ -11201,16 +11255,28 @@ var ExtendsTarget$0 = (0, import_lib2.$TV)(LeftHandSideExpressionWithObjectAppli
11201
11255
  function ExtendsTarget(ctx, state2) {
11202
11256
  return (0, import_lib2.$EVENT)(ctx, state2, "ExtendsTarget", ExtendsTarget$0);
11203
11257
  }
11204
- var ImplementsClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImplementsToken, ImplementsTarget, (0, import_lib2.$Q)((0, import_lib2.$S)(Comma, ImplementsTarget))), function($skip, $loc, $0, $1, $2, $3) {
11258
+ var ImplementsClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImplementsToken, PushIndent, (0, import_lib2.$Q)((0, import_lib2.$S)(Nested, ImplementsTarget, ArrayBulletDelimiter)), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
11259
+ var i = $1;
11260
+ var targets = $3;
11261
+ if (!targets.length) return $skip;
11262
+ const last = targets.at(-1).slice(0, -1);
11263
+ targets = targets.slice(0, -1).concat(last);
11264
+ return {
11265
+ ts: true,
11266
+ children: [i, targets]
11267
+ };
11268
+ });
11269
+ var ImplementsClause$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImplementsToken, ImplementsTarget, (0, import_lib2.$Q)((0, import_lib2.$S)((0, import_lib2.$E)(_), Comma, ImplementsTarget))), function($skip, $loc, $0, $1, $2, $3) {
11205
11270
  return {
11206
11271
  ts: true,
11207
11272
  children: $0
11208
11273
  };
11209
11274
  });
11275
+ var ImplementsClause$$ = [ImplementsClause$0, ImplementsClause$1];
11210
11276
  function ImplementsClause(ctx, state2) {
11211
- return (0, import_lib2.$EVENT)(ctx, state2, "ImplementsClause", ImplementsClause$0);
11277
+ return (0, import_lib2.$EVENT_C)(ctx, state2, "ImplementsClause", ImplementsClause$$);
11212
11278
  }
11213
- var ImplementsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, __, ImplementsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11279
+ var ImplementsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, NotDedented, ImplementsShorthand, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
11214
11280
  var l = $1;
11215
11281
  var ws = $2;
11216
11282
  var token = $3;
@@ -11220,7 +11286,7 @@ var ImplementsToken$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, __, Implem
11220
11286
  }
11221
11287
  return { children };
11222
11288
  });
11223
- var ImplementsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(__, (0, import_lib2.$EXPECT)($L20, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11289
+ var ImplementsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(NotDedented, (0, import_lib2.$EXPECT)($L19, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11224
11290
  $2 = { $loc, token: $2 };
11225
11291
  return [$1, $2];
11226
11292
  });
@@ -11228,7 +11294,7 @@ var ImplementsToken$$ = [ImplementsToken$0, ImplementsToken$1];
11228
11294
  function ImplementsToken(ctx, state2) {
11229
11295
  return (0, import_lib2.$EVENT_C)(ctx, state2, "ImplementsToken", ImplementsToken$$);
11230
11296
  }
11231
- var ImplementsShorthand$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L21, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
11297
+ var ImplementsShorthand$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L20, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
11232
11298
  return { $loc, token: "implements " };
11233
11299
  });
11234
11300
  function ImplementsShorthand(ctx, state2) {
@@ -11668,7 +11734,7 @@ var OptionalDot$$ = [OptionalDot$0, OptionalDot$1];
11668
11734
  function OptionalDot(ctx, state2) {
11669
11735
  return (0, import_lib2.$EVENT_C)(ctx, state2, "OptionalDot", OptionalDot$$);
11670
11736
  }
11671
- var NonNullAssertion$0 = (0, import_lib2.$T)((0, import_lib2.$S)(ExclamationPoint, (0, import_lib2.$N)((0, import_lib2.$C)((0, import_lib2.$EXPECT)($L22, 'NonNullAssertion "^"'), (0, import_lib2.$EXPECT)($L23, 'NonNullAssertion "<?"'), (0, import_lib2.$EXPECT)($L3, 'NonNullAssertion "="')))), function(value) {
11737
+ var NonNullAssertion$0 = (0, import_lib2.$T)((0, import_lib2.$S)(ExclamationPoint, (0, import_lib2.$N)((0, import_lib2.$C)((0, import_lib2.$EXPECT)($L21, 'NonNullAssertion "^"'), (0, import_lib2.$EXPECT)($L22, 'NonNullAssertion "<?"'), (0, import_lib2.$EXPECT)($L3, 'NonNullAssertion "="')))), function(value) {
11672
11738
  return { "type": "NonNullAssertion", "ts": true, "children": [value[0]] };
11673
11739
  });
11674
11740
  function NonNullAssertion(ctx, state2) {
@@ -11928,7 +11994,7 @@ var PropertyAccess$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(AccessStart, (0,
11928
11994
  ]
11929
11995
  };
11930
11996
  });
11931
- var PropertyAccess$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(AccessStart, (0, import_lib2.$EXPECT)($L24, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
11997
+ var PropertyAccess$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(AccessStart, (0, import_lib2.$EXPECT)($L23, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
11932
11998
  var dot = $1;
11933
11999
  var neg = $2;
11934
12000
  var num = $3;
@@ -12058,7 +12124,7 @@ function SuperProperty(ctx, state2) {
12058
12124
  return (0, import_lib2.$EVENT_C)(ctx, state2, "SuperProperty", SuperProperty$$);
12059
12125
  }
12060
12126
  var MetaProperty$0 = (0, import_lib2.$S)(New, Dot, Target);
12061
- var MetaProperty$1 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L25, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12127
+ var MetaProperty$1 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L24, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12062
12128
  return { $loc, token: $1 };
12063
12129
  });
12064
12130
  var MetaProperty$2 = ReturnValue;
@@ -12066,7 +12132,7 @@ var MetaProperty$$ = [MetaProperty$0, MetaProperty$1, MetaProperty$2];
12066
12132
  function MetaProperty(ctx, state2) {
12067
12133
  return (0, import_lib2.$EVENT_C)(ctx, state2, "MetaProperty", MetaProperty$$);
12068
12134
  }
12069
- var ReturnValue$0 = (0, import_lib2.$TV)((0, import_lib2.$C)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L26, 'ReturnValue "return.value"'), NonIdContinue), (0, import_lib2.$S)(Return, (0, import_lib2.$Y)(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
12135
+ var ReturnValue$0 = (0, import_lib2.$TV)((0, import_lib2.$C)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L25, 'ReturnValue "return.value"'), NonIdContinue), (0, import_lib2.$S)(Return, (0, import_lib2.$Y)(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
12070
12136
  return { type: "ReturnValue", children: [$1[0]] };
12071
12137
  });
12072
12138
  function ReturnValue(ctx, state2) {
@@ -12622,7 +12688,7 @@ var BindingElement$1 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.
12622
12688
  initializer
12623
12689
  };
12624
12690
  });
12625
- var BindingElement$2 = (0, import_lib2.$TV)((0, import_lib2.$Y)((0, import_lib2.$S)((0, import_lib2.$E)(_), (0, import_lib2.$EXPECT)($L17, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
12691
+ var BindingElement$2 = (0, import_lib2.$TV)((0, import_lib2.$Y)((0, import_lib2.$S)((0, import_lib2.$E)(_), (0, import_lib2.$EXPECT)($L26, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
12626
12692
  return {
12627
12693
  type: "ElisionElement",
12628
12694
  children: [""],
@@ -13549,7 +13615,7 @@ var UpcomingAssignment$0 = (0, import_lib2.$Y)((0, import_lib2.$S)(__, (0, impor
13549
13615
  function UpcomingAssignment(ctx, state2) {
13550
13616
  return (0, import_lib2.$EVENT)(ctx, state2, "UpcomingAssignment", UpcomingAssignment$0);
13551
13617
  }
13552
- var ArrayLiteral$0 = (0, import_lib2.$T)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($R20, "ArrayLiteral /(?=\\[|\\s*[.\u2022])/"), _ArrayLiteral), function(value) {
13618
+ var ArrayLiteral$0 = (0, import_lib2.$T)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($R20, "ArrayLiteral /(?=\\[|\\s*[.\u2022\\/])/"), _ArrayLiteral), function(value) {
13553
13619
  return value[1];
13554
13620
  });
13555
13621
  function ArrayLiteral(ctx, state2) {
@@ -14333,7 +14399,7 @@ function SnugNamedProperty(ctx, state2) {
14333
14399
  var PropertyName$0 = NumericLiteral;
14334
14400
  var PropertyName$1 = ComputedPropertyName;
14335
14401
  var PropertyName$2 = StringLiteral;
14336
- var PropertyName$3 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$E)(IdentifierName), (0, import_lib2.$EXPECT)($L24, 'PropertyName "-"'), (0, import_lib2.$EXPECT)($R25, "PropertyName /(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"))), function($skip, $loc, $0, $1) {
14402
+ var PropertyName$3 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$E)(IdentifierName), (0, import_lib2.$EXPECT)($L23, 'PropertyName "-"'), (0, import_lib2.$EXPECT)($R25, "PropertyName /(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"))), function($skip, $loc, $0, $1) {
14337
14403
  return {
14338
14404
  token: `"${$1}"`,
14339
14405
  $loc
@@ -14810,7 +14876,7 @@ var BinaryOpSymbol$6 = (0, import_lib2.$TV)((0, import_lib2.$C)((0, import_lib2.
14810
14876
  };
14811
14877
  });
14812
14878
  var BinaryOpSymbol$7 = (0, import_lib2.$EXPECT)($L79, 'BinaryOpSymbol "+"');
14813
- var BinaryOpSymbol$8 = (0, import_lib2.$EXPECT)($L24, 'BinaryOpSymbol "-"');
14879
+ var BinaryOpSymbol$8 = (0, import_lib2.$EXPECT)($L23, 'BinaryOpSymbol "-"');
14814
14880
  var BinaryOpSymbol$9 = (0, import_lib2.$EXPECT)($L80, 'BinaryOpSymbol "<="');
14815
14881
  var BinaryOpSymbol$10 = (0, import_lib2.$T)((0, import_lib2.$EXPECT)($L81, 'BinaryOpSymbol "\u2264"'), function(value) {
14816
14882
  return "<=";
@@ -14819,7 +14885,7 @@ var BinaryOpSymbol$11 = (0, import_lib2.$EXPECT)($L82, 'BinaryOpSymbol ">="');
14819
14885
  var BinaryOpSymbol$12 = (0, import_lib2.$T)((0, import_lib2.$EXPECT)($L83, 'BinaryOpSymbol "\u2265"'), function(value) {
14820
14886
  return ">=";
14821
14887
  });
14822
- var BinaryOpSymbol$13 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L23, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
14888
+ var BinaryOpSymbol$13 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L22, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
14823
14889
  return {
14824
14890
  $loc,
14825
14891
  token: "instanceof",
@@ -14842,7 +14908,7 @@ var BinaryOpSymbol$15 = (0, import_lib2.$EXPECT)($L85, 'BinaryOpSymbol "<<"');
14842
14908
  var BinaryOpSymbol$16 = (0, import_lib2.$T)((0, import_lib2.$EXPECT)($L86, 'BinaryOpSymbol "\u226A"'), function(value) {
14843
14909
  return "<<";
14844
14910
  });
14845
- var BinaryOpSymbol$17 = (0, import_lib2.$EXPECT)($L19, 'BinaryOpSymbol "<"');
14911
+ var BinaryOpSymbol$17 = (0, import_lib2.$EXPECT)($L18, 'BinaryOpSymbol "<"');
14846
14912
  var BinaryOpSymbol$18 = (0, import_lib2.$EXPECT)($L87, 'BinaryOpSymbol ">>>"');
14847
14913
  var BinaryOpSymbol$19 = (0, import_lib2.$T)((0, import_lib2.$EXPECT)($L88, 'BinaryOpSymbol "\u22D9"'), function(value) {
14848
14914
  return ">>>";
@@ -14979,7 +15045,7 @@ var BinaryOpSymbol$48 = (0, import_lib2.$TS)((0, import_lib2.$S)(Is), function($
14979
15045
  });
14980
15046
  var BinaryOpSymbol$49 = In;
14981
15047
  var BinaryOpSymbol$50 = (0, import_lib2.$EXPECT)($L117, 'BinaryOpSymbol "&"');
14982
- var BinaryOpSymbol$51 = (0, import_lib2.$EXPECT)($L22, 'BinaryOpSymbol "^"');
15048
+ var BinaryOpSymbol$51 = (0, import_lib2.$EXPECT)($L21, 'BinaryOpSymbol "^"');
14983
15049
  var BinaryOpSymbol$52 = (0, import_lib2.$EXPECT)($L118, 'BinaryOpSymbol "|"');
14984
15050
  var BinaryOpSymbol$$ = [BinaryOpSymbol$0, BinaryOpSymbol$1, BinaryOpSymbol$2, BinaryOpSymbol$3, BinaryOpSymbol$4, BinaryOpSymbol$5, BinaryOpSymbol$6, BinaryOpSymbol$7, BinaryOpSymbol$8, BinaryOpSymbol$9, BinaryOpSymbol$10, BinaryOpSymbol$11, BinaryOpSymbol$12, BinaryOpSymbol$13, BinaryOpSymbol$14, BinaryOpSymbol$15, BinaryOpSymbol$16, BinaryOpSymbol$17, BinaryOpSymbol$18, BinaryOpSymbol$19, BinaryOpSymbol$20, BinaryOpSymbol$21, BinaryOpSymbol$22, BinaryOpSymbol$23, BinaryOpSymbol$24, BinaryOpSymbol$25, BinaryOpSymbol$26, BinaryOpSymbol$27, BinaryOpSymbol$28, BinaryOpSymbol$29, BinaryOpSymbol$30, BinaryOpSymbol$31, BinaryOpSymbol$32, BinaryOpSymbol$33, BinaryOpSymbol$34, BinaryOpSymbol$35, BinaryOpSymbol$36, BinaryOpSymbol$37, BinaryOpSymbol$38, BinaryOpSymbol$39, BinaryOpSymbol$40, BinaryOpSymbol$41, BinaryOpSymbol$42, BinaryOpSymbol$43, BinaryOpSymbol$44, BinaryOpSymbol$45, BinaryOpSymbol$46, BinaryOpSymbol$47, BinaryOpSymbol$48, BinaryOpSymbol$49, BinaryOpSymbol$50, BinaryOpSymbol$51, BinaryOpSymbol$52];
14985
15051
  function BinaryOpSymbol(ctx, state2) {
@@ -15074,7 +15140,7 @@ var UnaryOp$2 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$C)(Del
15074
15140
  if (!ws) return [op, [" "]];
15075
15141
  return [op, ws];
15076
15142
  });
15077
- var UnaryOp$3 = (0, import_lib2.$T)((0, import_lib2.$S)(Not, (0, import_lib2.$N)((0, import_lib2.$EXPECT)($R30, "UnaryOp /[:.]/")), (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'UnaryOp " "')), (0, import_lib2.$E)(_)), function(value) {
15143
+ var UnaryOp$3 = (0, import_lib2.$T)((0, import_lib2.$S)(Not, (0, import_lib2.$N)((0, import_lib2.$EXPECT)($R30, "UnaryOp /[:.]/")), (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'UnaryOp " "')), (0, import_lib2.$E)(_)), function(value) {
15078
15144
  return [value[0], value[3]];
15079
15145
  });
15080
15146
  var UnaryOp$$ = [UnaryOp$0, UnaryOp$1, UnaryOp$2, UnaryOp$3];
@@ -15313,12 +15379,7 @@ var IfStatement$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$C)
15313
15379
  condition = negateCondition(condition);
15314
15380
  }
15315
15381
  if (block.bare && e) {
15316
- const semicolon = ";";
15317
- block = {
15318
- ...block,
15319
- semicolon,
15320
- children: [...block.children, semicolon]
15321
- };
15382
+ block = bracedBlock(block);
15322
15383
  }
15323
15384
  return {
15324
15385
  type: "IfStatement",
@@ -15334,11 +15395,7 @@ var IfStatement$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(IfClause, BlockOrEm
15334
15395
  var block = $2;
15335
15396
  var e = $3;
15336
15397
  if (block.bare && e) {
15337
- block = {
15338
- ...block,
15339
- semicolon: ";",
15340
- children: [...block.children, ";"]
15341
- };
15398
+ block = bracedBlock(block);
15342
15399
  }
15343
15400
  return {
15344
15401
  type: "IfStatement",
@@ -16682,7 +16739,7 @@ var ImportDeclaration$4 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImpliedImport
16682
16739
  const children = [i, t, imports, w, from];
16683
16740
  return { type: "ImportDeclaration", ts: !!t, children, imports, from };
16684
16741
  });
16685
- var ImportDeclaration$5 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImpliedFromClause, __, Import, __, Operator, (0, import_lib2.$E)(OperatorBehavior), __, OperatorNamedImports), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
16742
+ var ImportDeclaration$5 = (0, import_lib2.$TS)((0, import_lib2.$S)(FromClause, __, Import, __, Operator, (0, import_lib2.$E)(OperatorBehavior), __, OperatorNamedImports), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
16686
16743
  var from = $1;
16687
16744
  var fws = $2;
16688
16745
  var i = $3;
@@ -16704,7 +16761,7 @@ var ImportDeclaration$5 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImpliedFromCl
16704
16761
  from
16705
16762
  };
16706
16763
  });
16707
- var ImportDeclaration$6 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImpliedFromClause, __, Import, __, (0, import_lib2.$E)((0, import_lib2.$S)(TypeKeyword, __)), ImportClause), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
16764
+ var ImportDeclaration$6 = (0, import_lib2.$TS)((0, import_lib2.$S)(FromClause, __, Import, __, (0, import_lib2.$E)((0, import_lib2.$S)(TypeKeyword, __)), ImportClause), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
16708
16765
  var from = $1;
16709
16766
  var fws = $2;
16710
16767
  var i = $3;
@@ -16802,20 +16859,6 @@ var FromClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)(From, __, ModuleSpec
16802
16859
  function FromClause(ctx, state2) {
16803
16860
  return (0, import_lib2.$EVENT)(ctx, state2, "FromClause", FromClause$0);
16804
16861
  }
16805
- var ImpliedFromClause$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$C)((0, import_lib2.$S)(From, __), ImpliedFrom), ModuleSpecifier), function($skip, $loc, $0, $1, $2) {
16806
- var module = $2;
16807
- if (!Array.isArray(module)) return $0;
16808
- return [$1, ...module];
16809
- });
16810
- function ImpliedFromClause(ctx, state2) {
16811
- return (0, import_lib2.$EVENT)(ctx, state2, "ImpliedFromClause", ImpliedFromClause$0);
16812
- }
16813
- var ImpliedFrom$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L0, 'ImpliedFrom ""'), function($skip, $loc, $0, $1) {
16814
- return { $loc, token: "from " };
16815
- });
16816
- function ImpliedFrom(ctx, state2) {
16817
- return (0, import_lib2.$EVENT)(ctx, state2, "ImpliedFrom", ImpliedFrom$0);
16818
- }
16819
16862
  var ImportAssertion$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$E)(_), (0, import_lib2.$C)((0, import_lib2.$EXPECT)($L134, 'ImportAssertion "with"'), (0, import_lib2.$EXPECT)($L135, 'ImportAssertion "assert"')), NonIdContinue, (0, import_lib2.$E)(_), ObjectLiteral), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
16820
16863
  var keyword = $2;
16821
16864
  var object = $5;
@@ -16897,7 +16940,7 @@ function OperatorImportSpecifier(ctx, state2) {
16897
16940
  return (0, import_lib2.$EVENT_C)(ctx, state2, "OperatorImportSpecifier", OperatorImportSpecifier$$);
16898
16941
  }
16899
16942
  var ImportAsToken$0 = (0, import_lib2.$S)(__, As);
16900
- var ImportAsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, __, Colon, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
16943
+ var ImportAsToken$1 = (0, import_lib2.$TS)((0, import_lib2.$S)(Loc, __, Colon, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
16901
16944
  var l = $1;
16902
16945
  var ws = $2;
16903
16946
  var c = $3;
@@ -17010,7 +17053,7 @@ var ExportDeclaration$3 = (0, import_lib2.$TS)((0, import_lib2.$S)(Export, __, E
17010
17053
  var exports = $3;
17011
17054
  return { type: "ExportDeclaration", ts: exports.ts, children: $0 };
17012
17055
  });
17013
- var ExportDeclaration$4 = (0, import_lib2.$TS)((0, import_lib2.$S)(ImpliedFromClause, __, Export, __, ExportFromClause), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
17056
+ var ExportDeclaration$4 = (0, import_lib2.$TS)((0, import_lib2.$S)(FromClause, __, Export, __, ExportFromClause), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
17014
17057
  var from = $1;
17015
17058
  var fws = $2;
17016
17059
  var e = $3;
@@ -17713,7 +17756,7 @@ var Loc$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L0, 'Loc ""'), functi
17713
17756
  function Loc(ctx, state2) {
17714
17757
  return (0, import_lib2.$EVENT)(ctx, state2, "Loc", Loc$0);
17715
17758
  }
17716
- var Abstract$0 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L144, 'Abstract "abstract"'), NonIdContinue, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'Abstract " "')))), function($skip, $loc, $0, $1) {
17759
+ var Abstract$0 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L144, 'Abstract "abstract"'), NonIdContinue, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'Abstract " "')))), function($skip, $loc, $0, $1) {
17717
17760
  return { $loc, token: $1, ts: true };
17718
17761
  });
17719
17762
  function Abstract(ctx, state2) {
@@ -17767,7 +17810,7 @@ var By$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L1
17767
17810
  function By(ctx, state2) {
17768
17811
  return (0, import_lib2.$EVENT)(ctx, state2, "By", By$0);
17769
17812
  }
17770
- var Caret$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L22, 'Caret "^"'), (0, import_lib2.$N)((0, import_lib2.$EXPECT)($L22, 'Caret "^"'))), function($skip, $loc, $0, $1, $2) {
17813
+ var Caret$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L21, 'Caret "^"'), (0, import_lib2.$N)((0, import_lib2.$EXPECT)($L21, 'Caret "^"'))), function($skip, $loc, $0, $1, $2) {
17771
17814
  return { $loc, token: $1 };
17772
17815
  });
17773
17816
  function Caret(ctx, state2) {
@@ -17827,7 +17870,7 @@ var Colon$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)(
17827
17870
  function Colon(ctx, state2) {
17828
17871
  return (0, import_lib2.$EVENT)(ctx, state2, "Colon", Colon$0);
17829
17872
  }
17830
- var Comma$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L17, 'Comma ","'), function($skip, $loc, $0, $1) {
17873
+ var Comma$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L26, 'Comma ","'), function($skip, $loc, $0, $1) {
17831
17874
  return { $loc, token: $1 };
17832
17875
  });
17833
17876
  function Comma(ctx, state2) {
@@ -17999,7 +18042,7 @@ var Hash$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L178, 'Hash "#"'), f
17999
18042
  function Hash(ctx, state2) {
18000
18043
  return (0, import_lib2.$EVENT)(ctx, state2, "Hash", Hash$0);
18001
18044
  }
18002
- var If$0 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L179, 'If "if"'), NonIdContinue, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L18, 'If " "')))), function($skip, $loc, $0, $1) {
18045
+ var If$0 = (0, import_lib2.$TV)((0, import_lib2.$TEXT)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L179, 'If "if"'), NonIdContinue, (0, import_lib2.$E)((0, import_lib2.$EXPECT)($L17, 'If " "')))), function($skip, $loc, $0, $1) {
18003
18046
  return { $loc, token: $1 };
18004
18047
  });
18005
18048
  function If(ctx, state2) {
@@ -18077,7 +18120,7 @@ var Of$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L1
18077
18120
  function Of(ctx, state2) {
18078
18121
  return (0, import_lib2.$EVENT)(ctx, state2, "Of", Of$0);
18079
18122
  }
18080
- var OpenAngleBracket$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L19, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
18123
+ var OpenAngleBracket$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L18, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
18081
18124
  return { $loc, token: $1 };
18082
18125
  });
18083
18126
  function OpenAngleBracket(ctx, state2) {
@@ -18411,7 +18454,7 @@ var JSXElement$$ = [JSXElement$0, JSXElement$1, JSXElement$2];
18411
18454
  function JSXElement(ctx, state2) {
18412
18455
  return (0, import_lib2.$EVENT_C)(ctx, state2, "JSXElement", JSXElement$$);
18413
18456
  }
18414
- var JSXSelfClosingElement$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L19, 'JSXSelfClosingElement "<"'), JSXElementName, (0, import_lib2.$E)(TypeArguments), (0, import_lib2.$E)(JSXAttributes), (0, import_lib2.$E)(Whitespace), (0, import_lib2.$EXPECT)($L230, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
18457
+ var JSXSelfClosingElement$0 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$EXPECT)($L18, 'JSXSelfClosingElement "<"'), JSXElementName, (0, import_lib2.$E)(TypeArguments), (0, import_lib2.$E)(JSXAttributes), (0, import_lib2.$E)(Whitespace), (0, import_lib2.$EXPECT)($L230, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
18415
18458
  return { type: "JSXElement", children: $0, tag: $2 };
18416
18459
  });
18417
18460
  function JSXSelfClosingElement(ctx, state2) {
@@ -18430,7 +18473,7 @@ var PopJSXStack$0 = (0, import_lib2.$TV)((0, import_lib2.$EXPECT)($L0, 'PopJSXSt
18430
18473
  function PopJSXStack(ctx, state2) {
18431
18474
  return (0, import_lib2.$EVENT)(ctx, state2, "PopJSXStack", PopJSXStack$0);
18432
18475
  }
18433
- var JSXOpeningElement$0 = (0, import_lib2.$S)((0, import_lib2.$EXPECT)($L19, 'JSXOpeningElement "<"'), JSXElementName, (0, import_lib2.$E)(TypeArguments), (0, import_lib2.$E)(JSXAttributes), (0, import_lib2.$E)(Whitespace), (0, import_lib2.$EXPECT)($L45, 'JSXOpeningElement ">"'));
18476
+ var JSXOpeningElement$0 = (0, import_lib2.$S)((0, import_lib2.$EXPECT)($L18, 'JSXOpeningElement "<"'), JSXElementName, (0, import_lib2.$E)(TypeArguments), (0, import_lib2.$E)(JSXAttributes), (0, import_lib2.$E)(Whitespace), (0, import_lib2.$EXPECT)($L45, 'JSXOpeningElement ">"'));
18434
18477
  function JSXOpeningElement(ctx, state2) {
18435
18478
  return (0, import_lib2.$EVENT)(ctx, state2, "JSXOpeningElement", JSXOpeningElement$0);
18436
18479
  }
@@ -19811,7 +19854,7 @@ var TypePrimary$9 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$E)
19811
19854
  args
19812
19855
  };
19813
19856
  });
19814
- var TypePrimary$10 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$E)(_), OpenParen, AllowAll, (0, import_lib2.$E)((0, import_lib2.$C)(Type, (0, import_lib2.$S)(EOS, Type))), RestoreAll, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
19857
+ var TypePrimary$10 = (0, import_lib2.$TS)((0, import_lib2.$S)((0, import_lib2.$E)(_), OpenParen, AllowAll, (0, import_lib2.$E)((0, import_lib2.$C)(MaybeNestedType, (0, import_lib2.$S)(EOS, Type))), RestoreAll, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
19815
19858
  if (!$4) return $skip;
19816
19859
  return {
19817
19860
  type: "TypeParenthesized",
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@danielx/civet",
3
3
  "type": "commonjs",
4
- "version": "0.9.7",
4
+ "version": "0.10.0",
5
5
  "description": "CoffeeScript style syntax for TypeScript",
6
6
  "main": "dist/main.js",
7
7
  "module": "dist/main.mjs",