@danielx/civet 0.2.12 → 0.2.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -444,6 +444,8 @@ var require_parser = __commonJS({
444
444
  ApplicationStart,
445
445
  AdditionalReservedWords,
446
446
  MemberExpression,
447
+ MemberExpressionRest,
448
+ PropertyAccess,
447
449
  SuperProperty,
448
450
  MetaProperty,
449
451
  Parameters,
@@ -462,7 +464,8 @@ var require_parser = __commonJS({
462
464
  ThinArrowFunction,
463
465
  Block,
464
466
  BracedBlock,
465
- SingleNestedBlockExpression,
467
+ SingleNestedExpression,
468
+ SingleNestedBlockStatement,
466
469
  NestedBlockExpressions,
467
470
  BlockExpression,
468
471
  Literal,
@@ -528,6 +531,8 @@ var require_parser = __commonJS({
528
531
  Condition,
529
532
  ExpressionStatement,
530
533
  KeywordStatement,
534
+ MaybeNestedExpression,
535
+ Return,
531
536
  ImportDeclaration,
532
537
  ImportClause,
533
538
  NameSpaceImport,
@@ -546,6 +551,7 @@ var require_parser = __commonJS({
546
551
  Declaration,
547
552
  HoistableDeclaration,
548
553
  LexicalDeclaration,
554
+ ConstAssignment,
549
555
  LexicalBinding,
550
556
  Initializer,
551
557
  VariableStatement,
@@ -631,6 +637,7 @@ var require_parser = __commonJS({
631
637
  EOS,
632
638
  EOL,
633
639
  EOF,
640
+ Debugger,
634
641
  InsertOpenParen,
635
642
  InsertCloseParen,
636
643
  InsertOpenBrace,
@@ -644,7 +651,8 @@ var require_parser = __commonJS({
644
651
  Indent,
645
652
  PushIndent,
646
653
  PopIndent,
647
- Nested
654
+ Nested,
655
+ NestedFurther
648
656
  });
649
657
  var $L0 = $L(",");
650
658
  var $L1 = $L("(");
@@ -670,9 +678,9 @@ var require_parser = __commonJS({
670
678
  var $L21 = $L("new");
671
679
  var $L22 = $L("super");
672
680
  var $L23 = $L("import");
673
- var $L24 = $L("[");
674
- var $L25 = $L("]");
675
- var $L26 = $L(".");
681
+ var $L24 = $L(".");
682
+ var $L25 = $L("[");
683
+ var $L26 = $L("]");
676
684
  var $L27 = $L("::");
677
685
  var $L28 = $L("super[");
678
686
  var $L29 = $L("new.target");
@@ -756,8 +764,8 @@ var require_parser = __commonJS({
756
764
  var $L107 = $L("break");
757
765
  var $L108 = $L("continue");
758
766
  var $L109 = $L("debugger");
759
- var $L110 = $L("return");
760
- var $L111 = $L("throw");
767
+ var $L110 = $L("throw");
768
+ var $L111 = $L("return");
761
769
  var $L112 = $L("import type");
762
770
  var $L113 = $L("from");
763
771
  var $L114 = $L("export");
@@ -930,7 +938,9 @@ var require_parser = __commonJS({
930
938
  }
931
939
  }
932
940
  var UnaryPostfix$0 = $EXPECT($L3, fail, 'UnaryPostfix "?"');
933
- var UnaryPostfix$1 = $S(__, $EXPECT($L4, fail, 'UnaryPostfix "as"'), NonIdContinue, Type);
941
+ var UnaryPostfix$1 = $T($S(__, $EXPECT($L4, fail, 'UnaryPostfix "as"'), NonIdContinue, Type), function(value) {
942
+ return { "ts": true, "children": value };
943
+ });
934
944
  function UnaryPostfix(state) {
935
945
  if (state.tokenize) {
936
946
  return $TOKEN("UnaryPostfix", state, UnaryPostfix$0(state) || UnaryPostfix$1(state));
@@ -1001,7 +1011,7 @@ var require_parser = __commonJS({
1001
1011
  return FatArrow$0(state);
1002
1012
  }
1003
1013
  }
1004
- var ConciseBody$0 = $S(EOS, SingleNestedBlockExpression);
1014
+ var ConciseBody$0 = $S(EOS, SingleNestedBlockStatement);
1005
1015
  var ConciseBody$1 = $S($N($S($Q(_), $EXPECT($L11, fail, 'ConciseBody "{"'))), AssignmentExpression);
1006
1016
  var ConciseBody$2 = BracedBlock;
1007
1017
  function ConciseBody(state) {
@@ -1070,7 +1080,7 @@ var require_parser = __commonJS({
1070
1080
  return ClassExpression$0(state);
1071
1081
  }
1072
1082
  }
1073
- var ClassHeritage$0 = $S(ExtendsToken, __, $S(MemberExpression, $Q(CallExpressionRest)));
1083
+ var ClassHeritage$0 = $S(ExtendsToken, __, MemberExpression);
1074
1084
  function ClassHeritage(state) {
1075
1085
  if (state.verbose)
1076
1086
  console.log("ENTER:", "ClassHeritage");
@@ -1149,8 +1159,8 @@ var require_parser = __commonJS({
1149
1159
  var ref = value[1];
1150
1160
  return ["this.", ref];
1151
1161
  });
1152
- var This$2 = $T($EXPECT($L19, fail, 'This "@"'), function(value) {
1153
- return "this";
1162
+ var This$2 = $TV($EXPECT($L19, fail, 'This "@"'), function($skip, $loc, $0, $1) {
1163
+ return { $loc, token: "this" };
1154
1164
  });
1155
1165
  function This(state) {
1156
1166
  if (state.tokenize) {
@@ -1168,7 +1178,7 @@ var require_parser = __commonJS({
1168
1178
  return LeftHandSideExpression$0(state) || LeftHandSideExpression$1(state);
1169
1179
  }
1170
1180
  }
1171
- var NewExpression$0 = $S($P($S($EXPECT($L21, fail, 'NewExpression "new"'), __)), MemberExpression);
1181
+ var NewExpression$0 = $S($P($S($EXPECT($L21, fail, 'NewExpression "new"'), __)), CallExpression);
1172
1182
  function NewExpression(state) {
1173
1183
  if (state.verbose)
1174
1184
  console.log("ENTER:", "NewExpression");
@@ -1180,7 +1190,7 @@ var require_parser = __commonJS({
1180
1190
  }
1181
1191
  var CallExpression$0 = $S($EXPECT($L22, fail, 'CallExpression "super"'), __, Arguments);
1182
1192
  var CallExpression$1 = $S($EXPECT($L23, fail, 'CallExpression "import"'), __, $EXPECT($L1, fail, 'CallExpression "("'), AssignmentExpression, __, $EXPECT($L2, fail, 'CallExpression ")"'));
1183
- var CallExpression$2 = $S(MemberExpression, $Q(CallExpressionRest), $E(SpacedApplication));
1193
+ var CallExpression$2 = $S(MemberExpression, $Q(CallExpressionRest));
1184
1194
  function CallExpression(state) {
1185
1195
  if (state.tokenize) {
1186
1196
  return $TOKEN("CallExpression", state, CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state));
@@ -1189,23 +1199,17 @@ var require_parser = __commonJS({
1189
1199
  }
1190
1200
  }
1191
1201
  var CallExpressionRest$0 = $S($E(OptionalShorthand), Arguments);
1192
- var CallExpressionRest$1 = $S($E(OptionalShorthand), $EXPECT($L24, fail, 'CallExpressionRest "["'), __, Expression, __, $EXPECT($L25, fail, 'CallExpressionRest "]"'));
1193
- var CallExpressionRest$2 = $S($E($EXPECT($L3, fail, 'CallExpressionRest "?"')), $EXPECT($L26, fail, 'CallExpressionRest "."'), $C(IdentifierName, PrivateIdentifier));
1194
- var CallExpressionRest$3 = $TS($S($EXPECT($L27, fail, 'CallExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2) {
1195
- var id = $2;
1196
- if (id)
1197
- return [".prototype.", id];
1198
- return ".prototype";
1199
- });
1200
- var CallExpressionRest$4 = TemplateLiteral;
1202
+ var CallExpressionRest$1 = MemberExpressionRest;
1203
+ var CallExpressionRest$2 = SpacedApplication;
1204
+ var CallExpressionRest$3 = TemplateLiteral;
1201
1205
  function CallExpressionRest(state) {
1202
1206
  if (state.tokenize) {
1203
- return $TOKEN("CallExpressionRest", state, CallExpressionRest$0(state) || CallExpressionRest$1(state) || CallExpressionRest$2(state) || CallExpressionRest$3(state) || CallExpressionRest$4(state));
1207
+ return $TOKEN("CallExpressionRest", state, CallExpressionRest$0(state) || CallExpressionRest$1(state) || CallExpressionRest$2(state) || CallExpressionRest$3(state));
1204
1208
  } else {
1205
- return CallExpressionRest$0(state) || CallExpressionRest$1(state) || CallExpressionRest$2(state) || CallExpressionRest$3(state) || CallExpressionRest$4(state);
1209
+ return CallExpressionRest$0(state) || CallExpressionRest$1(state) || CallExpressionRest$2(state) || CallExpressionRest$3(state);
1206
1210
  }
1207
1211
  }
1208
- var OptionalShorthand$0 = $S($EXPECT($L3, fail, 'OptionalShorthand "?"'), $C($EXPECT($L26, fail, 'OptionalShorthand "."'), InsertDot));
1212
+ var OptionalShorthand$0 = $S($EXPECT($L3, fail, 'OptionalShorthand "?"'), $C($EXPECT($L24, fail, 'OptionalShorthand "."'), InsertDot));
1209
1213
  function OptionalShorthand(state) {
1210
1214
  if (state.verbose)
1211
1215
  console.log("ENTER:", "OptionalShorthand");
@@ -1215,7 +1219,7 @@ var require_parser = __commonJS({
1215
1219
  return OptionalShorthand$0(state);
1216
1220
  }
1217
1221
  }
1218
- var SpacedApplication$0 = $S(ApplicationStart, ArgumentList, InsertCloseParen);
1222
+ var SpacedApplication$0 = $S(ApplicationStart, ArgumentList, InsertCloseParen, $Q($S($Y(EOS), Nested, CallExpressionRest)));
1219
1223
  function SpacedApplication(state) {
1220
1224
  if (state.verbose)
1221
1225
  console.log("ENTER:", "SpacedApplication");
@@ -1249,7 +1253,7 @@ var require_parser = __commonJS({
1249
1253
  return AdditionalReservedWords$0(state);
1250
1254
  }
1251
1255
  }
1252
- var MemberExpression$0 = $S(PrimaryExpression, $Q(CallExpressionRest));
1256
+ var MemberExpression$0 = $S(PrimaryExpression, $Q(MemberExpressionRest));
1253
1257
  var MemberExpression$1 = $S($Q(TrailingComment), SuperProperty);
1254
1258
  var MemberExpression$2 = $S($Q(TrailingComment), MetaProperty);
1255
1259
  function MemberExpression(state) {
@@ -1259,7 +1263,32 @@ var require_parser = __commonJS({
1259
1263
  return MemberExpression$0(state) || MemberExpression$1(state) || MemberExpression$2(state);
1260
1264
  }
1261
1265
  }
1262
- var SuperProperty$0 = $S($EXPECT($L28, fail, 'SuperProperty "super["'), __, Expression, __, $EXPECT($L25, fail, 'SuperProperty "]"'));
1266
+ var MemberExpressionRest$0 = $S($E(OptionalShorthand), $EXPECT($L25, fail, 'MemberExpressionRest "["'), __, Expression, __, $EXPECT($L26, fail, 'MemberExpressionRest "]"'));
1267
+ var MemberExpressionRest$1 = $S($E($S(EOS, NestedFurther)), PropertyAccess);
1268
+ var MemberExpressionRest$2 = $TS($S($EXPECT($L27, fail, 'MemberExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2) {
1269
+ var id = $2;
1270
+ if (id)
1271
+ return [".prototype.", id];
1272
+ return ".prototype";
1273
+ });
1274
+ function MemberExpressionRest(state) {
1275
+ if (state.tokenize) {
1276
+ return $TOKEN("MemberExpressionRest", state, MemberExpressionRest$0(state) || MemberExpressionRest$1(state) || MemberExpressionRest$2(state));
1277
+ } else {
1278
+ return MemberExpressionRest$0(state) || MemberExpressionRest$1(state) || MemberExpressionRest$2(state);
1279
+ }
1280
+ }
1281
+ var PropertyAccess$0 = $S($E($EXPECT($L3, fail, 'PropertyAccess "?"')), $EXPECT($L24, fail, 'PropertyAccess "."'), $C(IdentifierName, PrivateIdentifier));
1282
+ function PropertyAccess(state) {
1283
+ if (state.verbose)
1284
+ console.log("ENTER:", "PropertyAccess");
1285
+ if (state.tokenize) {
1286
+ return $TOKEN("PropertyAccess", state, PropertyAccess$0(state));
1287
+ } else {
1288
+ return PropertyAccess$0(state);
1289
+ }
1290
+ }
1291
+ var SuperProperty$0 = $S($EXPECT($L28, fail, 'SuperProperty "super["'), __, Expression, __, $EXPECT($L26, fail, 'SuperProperty "]"'));
1263
1292
  function SuperProperty(state) {
1264
1293
  if (state.verbose)
1265
1294
  console.log("ENTER:", "SuperProperty");
@@ -1343,7 +1372,7 @@ var require_parser = __commonJS({
1343
1372
  return ObjectBindingPattern$0(state);
1344
1373
  }
1345
1374
  }
1346
- var ArrayBindingPattern$0 = $S($EXPECT($L24, fail, 'ArrayBindingPattern "["'), $Q($C(BindingElement, Elision)), $E($S(__, BindingRestElement)), __, $EXPECT($L25, fail, 'ArrayBindingPattern "]"'));
1375
+ var ArrayBindingPattern$0 = $S($EXPECT($L25, fail, 'ArrayBindingPattern "["'), $Q($C(BindingElement, Elision)), $E($S(__, BindingRestElement)), __, $EXPECT($L26, fail, 'ArrayBindingPattern "]"'));
1347
1376
  function ArrayBindingPattern(state) {
1348
1377
  if (state.verbose)
1349
1378
  console.log("ENTER:", "ArrayBindingPattern");
@@ -1447,19 +1476,34 @@ var require_parser = __commonJS({
1447
1476
  return BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state);
1448
1477
  }
1449
1478
  }
1450
- var SingleNestedBlockExpression$0 = $TS($S(PushIndent, $E($S(Nested, StatementListItem)), $C($C($N($S(Nested, StatementListItem)), $S(PopIndent, $N($EXPECT($L31, fail, 'SingleNestedBlockExpression ""')))), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1479
+ var SingleNestedExpression$0 = $TS($S(PushIndent, $E($S(Nested, Expression, StatementDelimiter)), $C($S($N($S(Nested, Expression)), PopIndent), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1451
1480
  var exp = $2;
1452
1481
  if (exp)
1453
1482
  return exp;
1454
1483
  return $skip;
1455
1484
  });
1456
- function SingleNestedBlockExpression(state) {
1485
+ function SingleNestedExpression(state) {
1457
1486
  if (state.verbose)
1458
- console.log("ENTER:", "SingleNestedBlockExpression");
1487
+ console.log("ENTER:", "SingleNestedExpression");
1459
1488
  if (state.tokenize) {
1460
- return $TOKEN("SingleNestedBlockExpression", state, SingleNestedBlockExpression$0(state));
1489
+ return $TOKEN("SingleNestedExpression", state, SingleNestedExpression$0(state));
1461
1490
  } else {
1462
- return SingleNestedBlockExpression$0(state);
1491
+ return SingleNestedExpression$0(state);
1492
+ }
1493
+ }
1494
+ var SingleNestedBlockStatement$0 = $TS($S(PushIndent, $E($S(Nested, StatementListItem)), $C($C($N($S(Nested, StatementListItem)), PopIndent), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1495
+ var exp = $2;
1496
+ if (exp)
1497
+ return exp;
1498
+ return $skip;
1499
+ });
1500
+ function SingleNestedBlockStatement(state) {
1501
+ if (state.verbose)
1502
+ console.log("ENTER:", "SingleNestedBlockStatement");
1503
+ if (state.tokenize) {
1504
+ return $TOKEN("SingleNestedBlockStatement", state, SingleNestedBlockStatement$0(state));
1505
+ } else {
1506
+ return SingleNestedBlockStatement$0(state);
1463
1507
  }
1464
1508
  }
1465
1509
  var NestedBlockExpressions$0 = $TS($S(PushIndent, $Q(BlockExpression), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
@@ -1520,7 +1564,12 @@ var require_parser = __commonJS({
1520
1564
  return Identifier$0(state);
1521
1565
  }
1522
1566
  }
1523
- var IdentifierName$0 = $R$0($EXPECT($R1, fail, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
1567
+ var IdentifierName$0 = $TR($EXPECT($R1, fail, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
1568
+ return {
1569
+ $loc,
1570
+ token: $0
1571
+ };
1572
+ });
1524
1573
  function IdentifierName(state) {
1525
1574
  if (state.verbose)
1526
1575
  console.log("ENTER:", "IdentifierName");
@@ -1540,8 +1589,8 @@ var require_parser = __commonJS({
1540
1589
  return IdentifierReference$0(state);
1541
1590
  }
1542
1591
  }
1543
- var ArrayLiteral$0 = $S($EXPECT($L24, fail, 'ArrayLiteral "["'), NestedElementList, __, $EXPECT($L25, fail, 'ArrayLiteral "]"'));
1544
- var ArrayLiteral$1 = $S($EXPECT($L24, fail, 'ArrayLiteral "["'), ElementList, __, $EXPECT($L25, fail, 'ArrayLiteral "]"'));
1592
+ var ArrayLiteral$0 = $S($EXPECT($L25, fail, 'ArrayLiteral "["'), NestedElementList, __, $EXPECT($L26, fail, 'ArrayLiteral "]"'));
1593
+ var ArrayLiteral$1 = $S($EXPECT($L25, fail, 'ArrayLiteral "["'), ElementList, __, $EXPECT($L26, fail, 'ArrayLiteral "]"'));
1545
1594
  function ArrayLiteral(state) {
1546
1595
  if (state.tokenize) {
1547
1596
  return $TOKEN("ArrayLiteral", state, ArrayLiteral$0(state) || ArrayLiteral$1(state));
@@ -1575,8 +1624,8 @@ var require_parser = __commonJS({
1575
1624
  }
1576
1625
  }
1577
1626
  var ArrayElementDelimiter$0 = $S($Q(_), $EXPECT($L0, fail, 'ArrayElementDelimiter ","'));
1578
- var ArrayElementDelimiter$1 = $Y($S($Q(_), $EXPECT($L25, fail, 'ArrayElementDelimiter "]"')));
1579
- var ArrayElementDelimiter$2 = $T($Y($S(__, $EXPECT($L25, fail, 'ArrayElementDelimiter "]"'))), function(value) {
1627
+ var ArrayElementDelimiter$1 = $Y($S($Q(_), $EXPECT($L26, fail, 'ArrayElementDelimiter "]"')));
1628
+ var ArrayElementDelimiter$2 = $T($Y($S(__, $EXPECT($L26, fail, 'ArrayElementDelimiter "]"'))), function(value) {
1580
1629
  return ",";
1581
1630
  });
1582
1631
  var ArrayElementDelimiter$3 = $T($Y(EOS), function(value) {
@@ -1704,7 +1753,7 @@ var require_parser = __commonJS({
1704
1753
  var PropertyName$0 = NumericLiteral;
1705
1754
  var PropertyName$1 = StringLiteral;
1706
1755
  var PropertyName$2 = IdentifierName;
1707
- var PropertyName$3 = $S($EXPECT($L24, fail, 'PropertyName "["'), AssignmentExpression, __, $EXPECT($L25, fail, 'PropertyName "]"'));
1756
+ var PropertyName$3 = $S($EXPECT($L25, fail, 'PropertyName "["'), AssignmentExpression, __, $EXPECT($L26, fail, 'PropertyName "]"'));
1708
1757
  function PropertyName(state) {
1709
1758
  if (state.tokenize) {
1710
1759
  return $TOKEN("PropertyName", state, PropertyName$0(state) || PropertyName$1(state) || PropertyName$2(state) || PropertyName$3(state));
@@ -2241,14 +2290,32 @@ var require_parser = __commonJS({
2241
2290
  var KeywordStatement$0 = $S($EXPECT($L107, fail, 'KeywordStatement "break"'), NonIdContinue);
2242
2291
  var KeywordStatement$1 = $S($EXPECT($L108, fail, 'KeywordStatement "continue"'), NonIdContinue);
2243
2292
  var KeywordStatement$2 = $S($EXPECT($L109, fail, 'KeywordStatement "debugger"'), NonIdContinue);
2244
- var KeywordStatement$3 = $S($EXPECT($L110, fail, 'KeywordStatement "return"'), NonIdContinue, Expression);
2245
- var KeywordStatement$4 = $S($EXPECT($L110, fail, 'KeywordStatement "return"'), NonIdContinue);
2246
- var KeywordStatement$5 = $S($EXPECT($L111, fail, 'KeywordStatement "throw"'), NonIdContinue, Expression);
2293
+ var KeywordStatement$3 = $S(Return, $E(MaybeNestedExpression));
2294
+ var KeywordStatement$4 = $S($EXPECT($L110, fail, 'KeywordStatement "throw"'), NonIdContinue, Expression);
2247
2295
  function KeywordStatement(state) {
2248
2296
  if (state.tokenize) {
2249
- return $TOKEN("KeywordStatement", state, KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state) || KeywordStatement$5(state));
2297
+ return $TOKEN("KeywordStatement", state, KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state));
2250
2298
  } else {
2251
- return KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state) || KeywordStatement$5(state);
2299
+ return KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state);
2300
+ }
2301
+ }
2302
+ var MaybeNestedExpression$0 = $S($N(EOS), $Q(TrailingComment), Expression);
2303
+ var MaybeNestedExpression$1 = $S($Y(EOS), ObjectLiteral);
2304
+ function MaybeNestedExpression(state) {
2305
+ if (state.tokenize) {
2306
+ return $TOKEN("MaybeNestedExpression", state, MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state));
2307
+ } else {
2308
+ return MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state);
2309
+ }
2310
+ }
2311
+ var Return$0 = $S($EXPECT($L111, fail, 'Return "return"'), NonIdContinue);
2312
+ function Return(state) {
2313
+ if (state.verbose)
2314
+ console.log("ENTER:", "Return");
2315
+ if (state.tokenize) {
2316
+ return $TOKEN("Return", state, Return$0(state));
2317
+ } else {
2318
+ return Return$0(state);
2252
2319
  }
2253
2320
  }
2254
2321
  var ImportDeclaration$0 = $T($S($EXPECT($L112, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
@@ -2422,12 +2489,21 @@ var require_parser = __commonJS({
2422
2489
  }
2423
2490
  }
2424
2491
  var LexicalDeclaration$0 = $S($C($EXPECT($L98, fail, 'LexicalDeclaration "let"'), $EXPECT($L99, fail, 'LexicalDeclaration "const"')), __, LexicalBinding, $Q($S(__, $EXPECT($L0, fail, 'LexicalDeclaration ","'), __, LexicalBinding)));
2425
- var LexicalDeclaration$1 = $T($S($C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, $EXPECT($L115, fail, 'LexicalDeclaration ":="'), AssignmentExpression), function(value) {
2426
- var bind = value[0];
2427
- var suffix = value[1];
2428
- var ws = value[2];
2429
- var exp = value[4];
2430
- return ["const ", bind, suffix, ws, "=", exp];
2492
+ var LexicalDeclaration$1 = $TS($S($C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2493
+ var bind = $1;
2494
+ var suffix = $2;
2495
+ var ws = $3;
2496
+ var ca = $4;
2497
+ var exp = $5;
2498
+ return [
2499
+ { token: "const", $loc: ca.$loc },
2500
+ " ",
2501
+ bind,
2502
+ suffix,
2503
+ ws,
2504
+ { token: "=", $loc: ca.$loc },
2505
+ exp
2506
+ ];
2431
2507
  });
2432
2508
  function LexicalDeclaration(state) {
2433
2509
  if (state.tokenize) {
@@ -2436,6 +2512,18 @@ var require_parser = __commonJS({
2436
2512
  return LexicalDeclaration$0(state) || LexicalDeclaration$1(state);
2437
2513
  }
2438
2514
  }
2515
+ var ConstAssignment$0 = $TV($EXPECT($L115, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
2516
+ return { $loc, token: $0 };
2517
+ });
2518
+ function ConstAssignment(state) {
2519
+ if (state.verbose)
2520
+ console.log("ENTER:", "ConstAssignment");
2521
+ if (state.tokenize) {
2522
+ return $TOKEN("ConstAssignment", state, ConstAssignment$0(state));
2523
+ } else {
2524
+ return ConstAssignment$0(state);
2525
+ }
2526
+ }
2439
2527
  var LexicalBinding$0 = $S(BindingPattern, $E(TypeSuffix), Initializer);
2440
2528
  var LexicalBinding$1 = $S(BindingIdentifier, $E(TypeSuffix), $E(Initializer));
2441
2529
  function LexicalBinding(state) {
@@ -2863,7 +2951,7 @@ var require_parser = __commonJS({
2863
2951
  return JSXFragment$0(state);
2864
2952
  }
2865
2953
  }
2866
- var JSXElementName$0 = $S(JSXIdentifierName, $C($S($EXPECT($L12, fail, 'JSXElementName ":"'), JSXIdentifierName), $Q($S($EXPECT($L26, fail, 'JSXElementName "."'), JSXIdentifierName))));
2954
+ var JSXElementName$0 = $S(JSXIdentifierName, $C($S($EXPECT($L12, fail, 'JSXElementName ":"'), JSXIdentifierName), $Q($S($EXPECT($L24, fail, 'JSXElementName "."'), JSXIdentifierName))));
2867
2955
  function JSXElementName(state) {
2868
2956
  if (state.verbose)
2869
2957
  console.log("ENTER:", "JSXElementName");
@@ -3048,7 +3136,7 @@ var require_parser = __commonJS({
3048
3136
  return InterfacePropertyDelimiter$0(state) || InterfacePropertyDelimiter$1(state) || InterfacePropertyDelimiter$2(state) || InterfacePropertyDelimiter$3(state);
3049
3137
  }
3050
3138
  }
3051
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R29, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L129, fail, 'TypeIndexSignature "readonly"'), __)), $EXPECT($L24, fail, 'TypeIndexSignature "["'), TypeIndex, $EXPECT($L25, fail, 'TypeIndexSignature "]"'), $E($S(__, $R$0($EXPECT($R30, fail, "TypeIndexSignature /[+-]/")), $EXPECT($L3, fail, 'TypeIndexSignature "?"'))));
3139
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R29, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L129, fail, 'TypeIndexSignature "readonly"'), __)), $EXPECT($L25, fail, 'TypeIndexSignature "["'), TypeIndex, $EXPECT($L26, fail, 'TypeIndexSignature "]"'), $E($S(__, $R$0($EXPECT($R30, fail, "TypeIndexSignature /[+-]/")), $EXPECT($L3, fail, 'TypeIndexSignature "?"'))));
3052
3140
  function TypeIndexSignature(state) {
3053
3141
  if (state.verbose)
3054
3142
  console.log("ENTER:", "TypeIndexSignature");
@@ -3151,7 +3239,7 @@ var require_parser = __commonJS({
3151
3239
  return TypeUnaryOp$0(state) || TypeUnaryOp$1(state) || TypeUnaryOp$2(state);
3152
3240
  }
3153
3241
  }
3154
- var TypeIndexedAccess$0 = $S(__, $EXPECT($L24, fail, 'TypeIndexedAccess "["'), $E(Type), __, $EXPECT($L25, fail, 'TypeIndexedAccess "]"'));
3242
+ var TypeIndexedAccess$0 = $S(__, $EXPECT($L25, fail, 'TypeIndexedAccess "["'), $E(Type), __, $EXPECT($L26, fail, 'TypeIndexedAccess "]"'));
3155
3243
  function TypeIndexedAccess(state) {
3156
3244
  if (state.verbose)
3157
3245
  console.log("ENTER:", "TypeIndexedAccess");
@@ -3164,7 +3252,7 @@ var require_parser = __commonJS({
3164
3252
  var TypePrimary$0 = InterfaceBlock;
3165
3253
  var TypePrimary$1 = $S(__, $EXPECT($L1, fail, 'TypePrimary "("'), Type, __, $EXPECT($L2, fail, 'TypePrimary ")"'));
3166
3254
  var TypePrimary$2 = $S($Q(_), FunctionType);
3167
- var TypePrimary$3 = $S($Q(_), IdentifierName, $Q($S($EXPECT($L26, fail, 'TypePrimary "."'), IdentifierName)), $E(TypeArguments));
3255
+ var TypePrimary$3 = $S($Q(_), IdentifierName, $Q($S($EXPECT($L24, fail, 'TypePrimary "."'), IdentifierName)), $E(TypeArguments));
3168
3256
  var TypePrimary$4 = $S($Q(_), TypeLiteral);
3169
3257
  function TypePrimary(state) {
3170
3258
  if (state.tokenize) {
@@ -3319,6 +3407,18 @@ var require_parser = __commonJS({
3319
3407
  return EOF$0(state);
3320
3408
  }
3321
3409
  }
3410
+ var Debugger$0 = $TV($EXPECT($L31, fail, 'Debugger ""'), function($skip, $loc, $0, $1) {
3411
+ debugger;
3412
+ });
3413
+ function Debugger(state) {
3414
+ if (state.verbose)
3415
+ console.log("ENTER:", "Debugger");
3416
+ if (state.tokenize) {
3417
+ return $TOKEN("Debugger", state, Debugger$0(state));
3418
+ } else {
3419
+ return Debugger$0(state);
3420
+ }
3421
+ }
3322
3422
  var InsertOpenParen$0 = $T($EXPECT($L31, fail, 'InsertOpenParen ""'), function(value) {
3323
3423
  return "(";
3324
3424
  });
@@ -3518,6 +3618,31 @@ var require_parser = __commonJS({
3518
3618
  return Nested$0(state);
3519
3619
  }
3520
3620
  }
3621
+ var NestedFurther$0 = $TS($S($E(EOS), Indent), function($skip, $loc, $0, $1, $2) {
3622
+ var eos = $1;
3623
+ var indent = $2;
3624
+ const currentIndent = global.indentLevels[global.indentLevels.length - 1];
3625
+ if (global.verbose) {
3626
+ console.log("global indent", global.currentIndent);
3627
+ console.log("Indented", indent, currentIndent);
3628
+ }
3629
+ if (indent !== currentIndent + 1) {
3630
+ if (global.verbose) {
3631
+ console.log("skipped nested");
3632
+ }
3633
+ return $skip;
3634
+ }
3635
+ return [eos, "".padStart(indent * 2)];
3636
+ });
3637
+ function NestedFurther(state) {
3638
+ if (state.verbose)
3639
+ console.log("ENTER:", "NestedFurther");
3640
+ if (state.tokenize) {
3641
+ return $TOKEN("NestedFurther", state, NestedFurther$0(state));
3642
+ } else {
3643
+ return NestedFurther$0(state);
3644
+ }
3645
+ }
3521
3646
  module2.exports = {
3522
3647
  parse: parse2
3523
3648
  };
@@ -3528,11 +3653,18 @@ var require_parser = __commonJS({
3528
3653
  var require_generate = __commonJS({
3529
3654
  "source/generate.coffee"(exports2, module2) {
3530
3655
  var gen2;
3656
+ var prune;
3531
3657
  gen2 = function(node, options) {
3658
+ var $loc, token;
3532
3659
  if (node === null || node === void 0) {
3533
3660
  return "";
3534
3661
  }
3535
3662
  if (typeof node === "string") {
3663
+ if (options != null) {
3664
+ if (typeof options.updateSourceMap === "function") {
3665
+ options.updateSourceMap(node);
3666
+ }
3667
+ }
3536
3668
  return node;
3537
3669
  }
3538
3670
  if (Array.isArray(node)) {
@@ -3541,19 +3673,55 @@ var require_generate = __commonJS({
3541
3673
  }).join("");
3542
3674
  }
3543
3675
  if (typeof node === "object") {
3544
- if ((options != null ? options.js : void 0) && node.ts) {
3676
+ if (options.js && node.ts) {
3545
3677
  return "";
3546
3678
  }
3679
+ if (node.$loc != null) {
3680
+ ({ token, $loc } = node);
3681
+ if (options != null) {
3682
+ if (typeof options.updateSourceMap === "function") {
3683
+ options.updateSourceMap(token, $loc.pos);
3684
+ }
3685
+ }
3686
+ return token;
3687
+ }
3547
3688
  if (!node.children) {
3548
3689
  throw new Error("Unknown node", JSON.stringify(node));
3549
3690
  }
3550
- return node.children.map(function(child) {
3551
- return gen2(child, options);
3552
- }).join("");
3691
+ return gen2(node.children, options);
3553
3692
  }
3554
3693
  throw new Error("Unknown node", JSON.stringify(node));
3555
3694
  };
3556
3695
  module2.exports = gen2;
3696
+ prune = function(node) {
3697
+ var a;
3698
+ if (node === null || node === void 0) {
3699
+ return;
3700
+ }
3701
+ if (node.length === 0) {
3702
+ return;
3703
+ }
3704
+ if (Array.isArray(node)) {
3705
+ a = node.map(function(n) {
3706
+ return prune(n);
3707
+ }).filter(function(n) {
3708
+ return !!n;
3709
+ });
3710
+ if (a.length > 1) {
3711
+ return a;
3712
+ }
3713
+ if (a.length === 1) {
3714
+ return a[0];
3715
+ }
3716
+ return;
3717
+ }
3718
+ if (node.children != null) {
3719
+ node.children = prune(node.children);
3720
+ return node;
3721
+ }
3722
+ return node;
3723
+ };
3724
+ gen2.prune = prune;
3557
3725
  }
3558
3726
  });
3559
3727
 
@@ -3565,7 +3733,9 @@ gen = require_generate();
3565
3733
  module.exports = {
3566
3734
  parse,
3567
3735
  compile: function(src, options) {
3568
- return gen(parse(src), options);
3736
+ return gen(parse(src, {
3737
+ filename: options != null ? options.filename : void 0
3738
+ }), options);
3569
3739
  },
3570
3740
  generate: gen
3571
3741
  };
package/dist/types.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  declare module "@danielx/civet" {
2
2
  export type CivetAST = unknown;
3
3
  export type CompileOptions = {
4
+ filename?: string
4
5
  js?: boolean
5
6
  }
6
7
 
@@ -0,0 +1,27 @@
1
+ const { readFile } = require('fs/promises');
2
+ const path = require('path');
3
+ const { compile } = require("./");
4
+
5
+ module.exports = {
6
+ name: 'civet',
7
+ setup(build) {
8
+ build.onLoad({
9
+ filter: /\.civet/,
10
+ }, function(args) {
11
+ return readFile(args.path, 'utf8')
12
+ .then(function(source) {
13
+ const filename = path.relative(process.cwd(), args.path);
14
+ return {
15
+ contents: compile(source, { filename, js: true }),
16
+ };
17
+ })
18
+ .catch(function(e) {
19
+ return {
20
+ errors: [{
21
+ text: e.message,
22
+ }],
23
+ };
24
+ });
25
+ });
26
+ },
27
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danielx/civet",
3
- "version": "0.2.12",
3
+ "version": "0.2.15",
4
4
  "description": "CoffeeScript style syntax for TypeScript",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/types.d.ts",
@@ -9,6 +9,7 @@
9
9
  },
10
10
  "files": [
11
11
  "dist/",
12
+ "esbuild-plugin.js",
12
13
  "register.js",
13
14
  "register.mjs"
14
15
  ],
package/register.mjs CHANGED
@@ -7,23 +7,24 @@ const baseURL = pathToFileURL(process.cwd() + '/').href;
7
7
 
8
8
  const extensionsRegex = /\.civet$/;
9
9
 
10
- export async function resolve(specifier, context, defaultResolve) {
10
+ export async function resolve(specifier, context, next) {
11
11
  const { parentURL = baseURL } = context;
12
12
 
13
13
  if (extensionsRegex.test(specifier)) {
14
14
  return {
15
- format: "civet",
15
+ shortCircuit: true,
16
+ format: "module",
16
17
  url: new URL(specifier, parentURL).href,
17
18
  };
18
19
  }
19
20
 
20
21
  // Let Node.js handle all other specifiers.
21
- return defaultResolve(specifier, context, defaultResolve);
22
+ return next(specifier, context);
22
23
  }
23
24
 
24
- export async function load(url, context, defaultLoad) {
25
+ export async function load(url, context, next) {
25
26
  if (extensionsRegex.test(url)) {
26
- const { source: rawSource } = await defaultLoad(url, { format: "civet" });
27
+ const { source: rawSource } = await next(url, { format: "module" });
27
28
 
28
29
  return {
29
30
  format: "module",
@@ -32,7 +33,7 @@ export async function load(url, context, defaultLoad) {
32
33
  }
33
34
 
34
35
  // Let Node.js handle all other URLs.
35
- return defaultLoad(url, context, defaultLoad);
36
+ return next(url, context);
36
37
  }
37
38
 
38
39
  // Also transform CommonJS files.