@danielx/civet 0.4.2 → 0.4.3

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
@@ -504,6 +504,7 @@ var require_parser = __commonJS({
504
504
  PropertyName,
505
505
  MethodDefinition,
506
506
  MethodModifier,
507
+ ConstructorShorthand,
507
508
  MethodSignature,
508
509
  ClassElementName,
509
510
  PrivateIdentifier,
@@ -582,6 +583,8 @@ var require_parser = __commonJS({
582
583
  SingleStringCharacter,
583
584
  TripleDoubleStringCharacters,
584
585
  TripleSingleStringCharacters,
586
+ CoffeeStringSubstitution,
587
+ CoffeeSubstitutionStart,
585
588
  RegularExpressionLiteral,
586
589
  RegularExpressionBody,
587
590
  RegExpCharacter,
@@ -641,6 +644,7 @@ var require_parser = __commonJS({
641
644
  Target,
642
645
  TripleDoubleQuote,
643
646
  TripleSingleQuote,
647
+ TripleTick,
644
648
  Try,
645
649
  Unless,
646
650
  Var,
@@ -810,59 +814,61 @@ var require_parser = __commonJS({
810
814
  var $L85 = $L(":=");
811
815
  var $L86 = $L('"');
812
816
  var $L87 = $L("'");
813
- var $L88 = $L("${");
814
- var $L89 = $L("/*");
815
- var $L90 = $L("*/");
816
- var $L91 = $L("###");
817
- var $L92 = $L("as");
818
- var $L93 = $L("async");
819
- var $L94 = $L("await");
820
- var $L95 = $L("catch");
821
- var $L96 = $L("class");
822
- var $L97 = $L(":");
823
- var $L98 = $L(".");
824
- var $L99 = $L("else");
825
- var $L100 = $L("export");
826
- var $L101 = $L("for");
827
- var $L102 = $L("from");
828
- var $L103 = $L("function");
829
- var $L104 = $L("get");
830
- var $L105 = $L("set");
831
- var $L106 = $L("if");
832
- var $L107 = $L("let");
833
- var $L108 = $L("const");
834
- var $L109 = $L("loop");
835
- var $L110 = $L("new");
836
- var $L111 = $L("of");
837
- var $L112 = $L("{");
838
- var $L113 = $L("[");
839
- var $L114 = $L("(");
840
- var $L115 = $L("?");
841
- var $L116 = $L("return");
842
- var $L117 = $L("static");
843
- var $L118 = $L("switch");
844
- var $L119 = $L("target");
845
- var $L120 = $L('"""');
846
- var $L121 = $L("'''");
847
- var $L122 = $L("try");
848
- var $L123 = $L("unless");
849
- var $L124 = $L("var");
850
- var $L125 = $L("when");
851
- var $L126 = $L("/>");
852
- var $L127 = $L("</");
853
- var $L128 = $L("<>");
854
- var $L129 = $L("</>");
855
- var $L130 = $L("declare");
856
- var $L131 = $L("type");
857
- var $L132 = $L("interface");
858
- var $L133 = $L("namespace");
859
- var $L134 = $L("readonly");
860
- var $L135 = $L("asserts");
861
- var $L136 = $L("keyof");
862
- var $L137 = $L("infer");
863
- var $L138 = $L("[]");
864
- var $L139 = $L(" ");
865
- var $L140 = $L(" ");
817
+ var $L88 = $L("#{");
818
+ var $L89 = $L("${");
819
+ var $L90 = $L("/*");
820
+ var $L91 = $L("*/");
821
+ var $L92 = $L("###");
822
+ var $L93 = $L("as");
823
+ var $L94 = $L("async");
824
+ var $L95 = $L("await");
825
+ var $L96 = $L("catch");
826
+ var $L97 = $L("class");
827
+ var $L98 = $L(":");
828
+ var $L99 = $L(".");
829
+ var $L100 = $L("else");
830
+ var $L101 = $L("export");
831
+ var $L102 = $L("for");
832
+ var $L103 = $L("from");
833
+ var $L104 = $L("function");
834
+ var $L105 = $L("get");
835
+ var $L106 = $L("set");
836
+ var $L107 = $L("if");
837
+ var $L108 = $L("let");
838
+ var $L109 = $L("const");
839
+ var $L110 = $L("loop");
840
+ var $L111 = $L("new");
841
+ var $L112 = $L("of");
842
+ var $L113 = $L("{");
843
+ var $L114 = $L("[");
844
+ var $L115 = $L("(");
845
+ var $L116 = $L("?");
846
+ var $L117 = $L("return");
847
+ var $L118 = $L("static");
848
+ var $L119 = $L("switch");
849
+ var $L120 = $L("target");
850
+ var $L121 = $L('"""');
851
+ var $L122 = $L("'''");
852
+ var $L123 = $L("```");
853
+ var $L124 = $L("try");
854
+ var $L125 = $L("unless");
855
+ var $L126 = $L("var");
856
+ var $L127 = $L("when");
857
+ var $L128 = $L("/>");
858
+ var $L129 = $L("</");
859
+ var $L130 = $L("<>");
860
+ var $L131 = $L("</>");
861
+ var $L132 = $L("declare");
862
+ var $L133 = $L("type");
863
+ var $L134 = $L("interface");
864
+ var $L135 = $L("namespace");
865
+ var $L136 = $L("readonly");
866
+ var $L137 = $L("asserts");
867
+ var $L138 = $L("keyof");
868
+ var $L139 = $L("infer");
869
+ var $L140 = $L("[]");
870
+ var $L141 = $L(" ");
871
+ var $L142 = $L(" ");
866
872
  var $R0 = $R(new RegExp("(of)(?!\\p{ID_Continue})", "suy"));
867
873
  var $R1 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
868
874
  var $R2 = $R(new RegExp("[!~+-]", "suy"));
@@ -874,7 +880,7 @@ var require_parser = __commonJS({
874
880
  var $R8 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*", "suy"));
875
881
  var $R9 = $R(new RegExp('(?:\\\\.|[^"])+', "suy"));
876
882
  var $R10 = $R(new RegExp("(?:\\\\.|[^'])+", "suy"));
877
- var $R11 = $R(new RegExp('(?:"(?!"")|\\\\.|[^"])*', "suy"));
883
+ var $R11 = $R(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
878
884
  var $R12 = $R(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
879
885
  var $R13 = $R(new RegExp("[*\\/\\r\\n]", "suy"));
880
886
  var $R14 = $R(new RegExp("(?:\\\\.|[^\\/\\r\\n])+", "suy"));
@@ -2036,14 +2042,25 @@ var require_parser = __commonJS({
2036
2042
  return MethodModifier$0(state) || MethodModifier$1(state) || MethodModifier$2(state) || MethodModifier$3(state);
2037
2043
  }
2038
2044
  }
2039
- var MethodSignature$0 = $S($E(MethodModifier), ClassElementName, $Q(_), Parameters);
2040
- function MethodSignature(state) {
2045
+ var ConstructorShorthand$0 = $TV($EXPECT($L11, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
2046
+ return { $loc, token: "constructor" };
2047
+ });
2048
+ function ConstructorShorthand(state) {
2041
2049
  if (state.verbose)
2042
- console.log("ENTER:", "MethodSignature");
2050
+ console.log("ENTER:", "ConstructorShorthand");
2051
+ if (state.tokenize) {
2052
+ return $TOKEN("ConstructorShorthand", state, ConstructorShorthand$0(state));
2053
+ } else {
2054
+ return ConstructorShorthand$0(state);
2055
+ }
2056
+ }
2057
+ var MethodSignature$0 = $S(ConstructorShorthand, Parameters);
2058
+ var MethodSignature$1 = $S($E(MethodModifier), ClassElementName, $Q(_), Parameters);
2059
+ function MethodSignature(state) {
2043
2060
  if (state.tokenize) {
2044
- return $TOKEN("MethodSignature", state, MethodSignature$0(state));
2061
+ return $TOKEN("MethodSignature", state, MethodSignature$0(state) || MethodSignature$1(state));
2045
2062
  } else {
2046
- return MethodSignature$0(state);
2063
+ return MethodSignature$0(state) || MethodSignature$1(state);
2047
2064
  }
2048
2065
  }
2049
2066
  var ClassElementName$0 = PropertyName;
@@ -2930,11 +2947,38 @@ var require_parser = __commonJS({
2930
2947
  return HexLiteral$0(state);
2931
2948
  }
2932
2949
  }
2933
- var StringLiteral$0 = $TS($S(TripleDoubleQuote, TripleDoubleStringCharacters, TripleDoubleQuote), function($skip, $loc, $0, $1, $2, $3) {
2950
+ var StringLiteral$0 = $TS($S(TripleDoubleQuote, $Q($C(TripleDoubleStringCharacters, CoffeeStringSubstitution)), TripleDoubleQuote), function($skip, $loc, $0, $1, $2, $3) {
2934
2951
  var s = $1;
2935
- var str = $2;
2952
+ var strWithSubstitutions = $2;
2936
2953
  var e = $3;
2937
- return [s, module2.dedentBlockString(str), e];
2954
+ if (strWithSubstitutions.length === 0) {
2955
+ return $0;
2956
+ }
2957
+ let initialSpacing, i = 0, l = strWithSubstitutions.length, results = [s];
2958
+ const { token } = strWithSubstitutions[0];
2959
+ if (token) {
2960
+ initialSpacing = token.match(/^(\r?\n|\n)\s+/);
2961
+ } else {
2962
+ initialSpacing = false;
2963
+ }
2964
+ while (i < l) {
2965
+ let segment = strWithSubstitutions[i];
2966
+ if (segment.token) {
2967
+ segment = module2.dedentBlockString(segment, initialSpacing, false);
2968
+ if (i === 0) {
2969
+ segment.token = segment.token.replace(/^(\r?\n|\n)/, "");
2970
+ }
2971
+ if (i === l - 1) {
2972
+ segment.token = segment.token.replace(/(\r?\n|\n)[ \t]*$/, "");
2973
+ }
2974
+ results.push(segment);
2975
+ } else {
2976
+ results.push(segment);
2977
+ }
2978
+ i++;
2979
+ }
2980
+ results.push(e);
2981
+ return results;
2938
2982
  });
2939
2983
  var StringLiteral$1 = $TS($S(TripleSingleQuote, TripleSingleStringCharacters, TripleSingleQuote), function($skip, $loc, $0, $1, $2, $3) {
2940
2984
  var s = $1;
@@ -2975,7 +3019,7 @@ var require_parser = __commonJS({
2975
3019
  return SingleStringCharacter$0(state);
2976
3020
  }
2977
3021
  }
2978
- var TripleDoubleStringCharacters$0 = $TR($EXPECT($R11, fail, 'TripleDoubleStringCharacters /(?:"(?!"")|\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
3022
+ var TripleDoubleStringCharacters$0 = $TR($EXPECT($R11, fail, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
2979
3023
  return { $loc, token: $0 };
2980
3024
  });
2981
3025
  function TripleDoubleStringCharacters(state) {
@@ -2999,6 +3043,28 @@ var require_parser = __commonJS({
2999
3043
  return TripleSingleStringCharacters$0(state);
3000
3044
  }
3001
3045
  }
3046
+ var CoffeeStringSubstitution$0 = $S(CoffeeSubstitutionStart, Expression, __, CloseBrace);
3047
+ function CoffeeStringSubstitution(state) {
3048
+ if (state.verbose)
3049
+ console.log("ENTER:", "CoffeeStringSubstitution");
3050
+ if (state.tokenize) {
3051
+ return $TOKEN("CoffeeStringSubstitution", state, CoffeeStringSubstitution$0(state));
3052
+ } else {
3053
+ return CoffeeStringSubstitution$0(state);
3054
+ }
3055
+ }
3056
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L88, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
3057
+ return { $loc, token: "${" };
3058
+ });
3059
+ function CoffeeSubstitutionStart(state) {
3060
+ if (state.verbose)
3061
+ console.log("ENTER:", "CoffeeSubstitutionStart");
3062
+ if (state.tokenize) {
3063
+ return $TOKEN("CoffeeSubstitutionStart", state, CoffeeSubstitutionStart$0(state));
3064
+ } else {
3065
+ return CoffeeSubstitutionStart$0(state);
3066
+ }
3067
+ }
3002
3068
  var RegularExpressionLiteral$0 = $TV($TEXT($S($EXPECT($L45, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L45, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
3003
3069
  return { $loc, token: $1 };
3004
3070
  });
@@ -3051,7 +3117,7 @@ var require_parser = __commonJS({
3051
3117
  return TemplateLiteral$0(state);
3052
3118
  }
3053
3119
  }
3054
- var TemplateSubstitution$0 = $S($EXPECT($L88, fail, 'TemplateSubstitution "${"'), Expression, __, CloseBrace);
3120
+ var TemplateSubstitution$0 = $S($EXPECT($L89, fail, 'TemplateSubstitution "${"'), Expression, __, CloseBrace);
3055
3121
  function TemplateSubstitution(state) {
3056
3122
  if (state.verbose)
3057
3123
  console.log("ENTER:", "TemplateSubstitution");
@@ -3110,7 +3176,7 @@ var require_parser = __commonJS({
3110
3176
  return MultiLineComment$0(state) || MultiLineComment$1(state);
3111
3177
  }
3112
3178
  }
3113
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L89, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L90, fail, 'JSMultiLineComment "*/"')), $EXPECT($R19, fail, "JSMultiLineComment /./"))), $EXPECT($L90, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
3179
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L90, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L91, fail, 'JSMultiLineComment "*/"')), $EXPECT($R19, fail, "JSMultiLineComment /./"))), $EXPECT($L91, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
3114
3180
  return { $loc, token: $1 };
3115
3181
  });
3116
3182
  function JSMultiLineComment(state) {
@@ -3136,7 +3202,7 @@ var require_parser = __commonJS({
3136
3202
  return CoffeeSingleLineComment$0(state);
3137
3203
  }
3138
3204
  }
3139
- var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L91, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L91, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L90, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R19, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L91, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
3205
+ var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L92, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L92, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L91, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R19, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L92, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
3140
3206
  return { $loc, token: `/*${$2}*/` };
3141
3207
  });
3142
3208
  function CoffeeMultiLineComment(state) {
@@ -3148,7 +3214,7 @@ var require_parser = __commonJS({
3148
3214
  return CoffeeMultiLineComment$0(state);
3149
3215
  }
3150
3216
  }
3151
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L89, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L90, fail, 'InlineComment "*/"')), $EXPECT($R21, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L90, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
3217
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L90, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L91, fail, 'InlineComment "*/"')), $EXPECT($R21, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L91, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
3152
3218
  return { $loc, token: $1 };
3153
3219
  });
3154
3220
  function InlineComment(state) {
@@ -3257,7 +3323,7 @@ var require_parser = __commonJS({
3257
3323
  return Loc$0(state);
3258
3324
  }
3259
3325
  }
3260
- var As$0 = $TS($S($EXPECT($L92, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3326
+ var As$0 = $TS($S($EXPECT($L93, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3261
3327
  return { $loc, token: $1 };
3262
3328
  });
3263
3329
  function As(state) {
@@ -3269,7 +3335,7 @@ var require_parser = __commonJS({
3269
3335
  return As$0(state);
3270
3336
  }
3271
3337
  }
3272
- var Async$0 = $TV($EXPECT($L93, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
3338
+ var Async$0 = $TV($EXPECT($L94, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
3273
3339
  return { $loc, token: $1 };
3274
3340
  });
3275
3341
  function Async(state) {
@@ -3281,7 +3347,7 @@ var require_parser = __commonJS({
3281
3347
  return Async$0(state);
3282
3348
  }
3283
3349
  }
3284
- var Await$0 = $TS($S($EXPECT($L94, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3350
+ var Await$0 = $TS($S($EXPECT($L95, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3285
3351
  return { $loc, token: $1 };
3286
3352
  });
3287
3353
  function Await(state) {
@@ -3293,7 +3359,7 @@ var require_parser = __commonJS({
3293
3359
  return Await$0(state);
3294
3360
  }
3295
3361
  }
3296
- var Catch$0 = $TV($EXPECT($L95, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
3362
+ var Catch$0 = $TV($EXPECT($L96, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
3297
3363
  return { $loc, token: $1 };
3298
3364
  });
3299
3365
  function Catch(state) {
@@ -3305,7 +3371,7 @@ var require_parser = __commonJS({
3305
3371
  return Catch$0(state);
3306
3372
  }
3307
3373
  }
3308
- var Class$0 = $TV($EXPECT($L96, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
3374
+ var Class$0 = $TV($EXPECT($L97, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
3309
3375
  return { $loc, token: $1 };
3310
3376
  });
3311
3377
  function Class(state) {
@@ -3353,7 +3419,7 @@ var require_parser = __commonJS({
3353
3419
  return CloseParen$0(state);
3354
3420
  }
3355
3421
  }
3356
- var Colon$0 = $TV($EXPECT($L97, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
3422
+ var Colon$0 = $TV($EXPECT($L98, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
3357
3423
  return { $loc, token: $1 };
3358
3424
  });
3359
3425
  function Colon(state) {
@@ -3365,7 +3431,7 @@ var require_parser = __commonJS({
3365
3431
  return Colon$0(state);
3366
3432
  }
3367
3433
  }
3368
- var Dot$0 = $TV($EXPECT($L98, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
3434
+ var Dot$0 = $TV($EXPECT($L99, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
3369
3435
  return { $loc, token: $1 };
3370
3436
  });
3371
3437
  function Dot(state) {
@@ -3377,7 +3443,7 @@ var require_parser = __commonJS({
3377
3443
  return Dot$0(state);
3378
3444
  }
3379
3445
  }
3380
- var Else$0 = $TV($EXPECT($L99, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
3446
+ var Else$0 = $TV($EXPECT($L100, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
3381
3447
  return { $loc, token: $1 };
3382
3448
  });
3383
3449
  function Else(state) {
@@ -3401,7 +3467,7 @@ var require_parser = __commonJS({
3401
3467
  return Equals$0(state);
3402
3468
  }
3403
3469
  }
3404
- var Export$0 = $TS($S($EXPECT($L100, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3470
+ var Export$0 = $TS($S($EXPECT($L101, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3405
3471
  return { $loc, token: $1 };
3406
3472
  });
3407
3473
  function Export(state) {
@@ -3413,7 +3479,7 @@ var require_parser = __commonJS({
3413
3479
  return Export$0(state);
3414
3480
  }
3415
3481
  }
3416
- var For$0 = $TS($S($EXPECT($L101, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3482
+ var For$0 = $TS($S($EXPECT($L102, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3417
3483
  return { $loc, token: $1 };
3418
3484
  });
3419
3485
  function For(state) {
@@ -3425,7 +3491,7 @@ var require_parser = __commonJS({
3425
3491
  return For$0(state);
3426
3492
  }
3427
3493
  }
3428
- var From$0 = $TS($S($EXPECT($L102, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3494
+ var From$0 = $TS($S($EXPECT($L103, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3429
3495
  return { $loc, token: $1 };
3430
3496
  });
3431
3497
  function From(state) {
@@ -3437,7 +3503,7 @@ var require_parser = __commonJS({
3437
3503
  return From$0(state);
3438
3504
  }
3439
3505
  }
3440
- var Function$0 = $TV($EXPECT($L103, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
3506
+ var Function$0 = $TV($EXPECT($L104, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
3441
3507
  return { $loc, token: $1 };
3442
3508
  });
3443
3509
  function Function(state) {
@@ -3449,7 +3515,7 @@ var require_parser = __commonJS({
3449
3515
  return Function$0(state);
3450
3516
  }
3451
3517
  }
3452
- var GetOrSet$0 = $TS($S($C($EXPECT($L104, fail, 'GetOrSet "get"'), $EXPECT($L105, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3518
+ var GetOrSet$0 = $TS($S($C($EXPECT($L105, fail, 'GetOrSet "get"'), $EXPECT($L106, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3453
3519
  return { $loc, token: $1 };
3454
3520
  });
3455
3521
  function GetOrSet(state) {
@@ -3461,7 +3527,7 @@ var require_parser = __commonJS({
3461
3527
  return GetOrSet$0(state);
3462
3528
  }
3463
3529
  }
3464
- var If$0 = $TV($EXPECT($L106, fail, 'If "if"'), function($skip, $loc, $0, $1) {
3530
+ var If$0 = $TV($EXPECT($L107, fail, 'If "if"'), function($skip, $loc, $0, $1) {
3465
3531
  return { $loc, token: $1 };
3466
3532
  });
3467
3533
  function If(state) {
@@ -3497,7 +3563,7 @@ var require_parser = __commonJS({
3497
3563
  return In$0(state);
3498
3564
  }
3499
3565
  }
3500
- var LetOrConst$0 = $TV($C($EXPECT($L107, fail, 'LetOrConst "let"'), $EXPECT($L108, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
3566
+ var LetOrConst$0 = $TV($C($EXPECT($L108, fail, 'LetOrConst "let"'), $EXPECT($L109, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
3501
3567
  return { $loc, token: $1 };
3502
3568
  });
3503
3569
  function LetOrConst(state) {
@@ -3509,7 +3575,7 @@ var require_parser = __commonJS({
3509
3575
  return LetOrConst$0(state);
3510
3576
  }
3511
3577
  }
3512
- var Loop$0 = $TS($S($EXPECT($L109, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3578
+ var Loop$0 = $TS($S($EXPECT($L110, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3513
3579
  return { $loc, token: "while(true)" };
3514
3580
  });
3515
3581
  function Loop(state) {
@@ -3521,7 +3587,7 @@ var require_parser = __commonJS({
3521
3587
  return Loop$0(state);
3522
3588
  }
3523
3589
  }
3524
- var New$0 = $TV($EXPECT($L110, fail, 'New "new"'), function($skip, $loc, $0, $1) {
3590
+ var New$0 = $TV($EXPECT($L111, fail, 'New "new"'), function($skip, $loc, $0, $1) {
3525
3591
  return { $loc, token: $1 };
3526
3592
  });
3527
3593
  function New(state) {
@@ -3533,7 +3599,7 @@ var require_parser = __commonJS({
3533
3599
  return New$0(state);
3534
3600
  }
3535
3601
  }
3536
- var Of$0 = $TV($EXPECT($L111, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
3602
+ var Of$0 = $TV($EXPECT($L112, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
3537
3603
  return { $loc, token: $1 };
3538
3604
  });
3539
3605
  function Of(state) {
@@ -3545,7 +3611,7 @@ var require_parser = __commonJS({
3545
3611
  return Of$0(state);
3546
3612
  }
3547
3613
  }
3548
- var OpenBrace$0 = $TV($EXPECT($L112, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
3614
+ var OpenBrace$0 = $TV($EXPECT($L113, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
3549
3615
  return { $loc, token: $1 };
3550
3616
  });
3551
3617
  function OpenBrace(state) {
@@ -3557,7 +3623,7 @@ var require_parser = __commonJS({
3557
3623
  return OpenBrace$0(state);
3558
3624
  }
3559
3625
  }
3560
- var OpenBracket$0 = $TV($EXPECT($L113, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
3626
+ var OpenBracket$0 = $TV($EXPECT($L114, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
3561
3627
  return { $loc, token: $1 };
3562
3628
  });
3563
3629
  function OpenBracket(state) {
@@ -3569,7 +3635,7 @@ var require_parser = __commonJS({
3569
3635
  return OpenBracket$0(state);
3570
3636
  }
3571
3637
  }
3572
- var OpenParen$0 = $TV($EXPECT($L114, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
3638
+ var OpenParen$0 = $TV($EXPECT($L115, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
3573
3639
  return { $loc, token: $1 };
3574
3640
  });
3575
3641
  function OpenParen(state) {
@@ -3581,7 +3647,7 @@ var require_parser = __commonJS({
3581
3647
  return OpenParen$0(state);
3582
3648
  }
3583
3649
  }
3584
- var QuestionMark$0 = $TV($EXPECT($L115, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
3650
+ var QuestionMark$0 = $TV($EXPECT($L116, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
3585
3651
  return { $loc, token: $1 };
3586
3652
  });
3587
3653
  function QuestionMark(state) {
@@ -3593,7 +3659,7 @@ var require_parser = __commonJS({
3593
3659
  return QuestionMark$0(state);
3594
3660
  }
3595
3661
  }
3596
- var Return$0 = $TS($S($EXPECT($L116, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3662
+ var Return$0 = $TS($S($EXPECT($L117, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3597
3663
  return { $loc, token: $1 };
3598
3664
  });
3599
3665
  function Return(state) {
@@ -3617,10 +3683,10 @@ var require_parser = __commonJS({
3617
3683
  return Semicolon$0(state);
3618
3684
  }
3619
3685
  }
3620
- var Static$0 = $TV($EXPECT($L117, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
3686
+ var Static$0 = $TV($EXPECT($L118, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
3621
3687
  return { $loc, token: $1 };
3622
3688
  });
3623
- var Static$1 = $TV($EXPECT($L11, fail, 'Static "@"'), function($skip, $loc, $0, $1) {
3689
+ var Static$1 = $TS($S($EXPECT($L11, fail, 'Static "@"'), $N($EXPECT($L115, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
3624
3690
  return { $loc, token: "static " };
3625
3691
  });
3626
3692
  function Static(state) {
@@ -3630,7 +3696,7 @@ var require_parser = __commonJS({
3630
3696
  return Static$0(state) || Static$1(state);
3631
3697
  }
3632
3698
  }
3633
- var Switch$0 = $TV($EXPECT($L118, fail, 'Switch "switch"'), function($skip, $loc, $0, $1) {
3699
+ var Switch$0 = $TV($EXPECT($L119, fail, 'Switch "switch"'), function($skip, $loc, $0, $1) {
3634
3700
  return { $loc, token: $1 };
3635
3701
  });
3636
3702
  function Switch(state) {
@@ -3642,7 +3708,7 @@ var require_parser = __commonJS({
3642
3708
  return Switch$0(state);
3643
3709
  }
3644
3710
  }
3645
- var Target$0 = $TV($EXPECT($L119, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
3711
+ var Target$0 = $TV($EXPECT($L120, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
3646
3712
  return { $loc, token: $1 };
3647
3713
  });
3648
3714
  function Target(state) {
@@ -3654,7 +3720,7 @@ var require_parser = __commonJS({
3654
3720
  return Target$0(state);
3655
3721
  }
3656
3722
  }
3657
- var TripleDoubleQuote$0 = $TV($EXPECT($L120, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
3723
+ var TripleDoubleQuote$0 = $TV($EXPECT($L121, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
3658
3724
  return { $loc, token: "`" };
3659
3725
  });
3660
3726
  function TripleDoubleQuote(state) {
@@ -3666,7 +3732,7 @@ var require_parser = __commonJS({
3666
3732
  return TripleDoubleQuote$0(state);
3667
3733
  }
3668
3734
  }
3669
- var TripleSingleQuote$0 = $TV($EXPECT($L121, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
3735
+ var TripleSingleQuote$0 = $TV($EXPECT($L122, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
3670
3736
  return { $loc, token: "`" };
3671
3737
  });
3672
3738
  function TripleSingleQuote(state) {
@@ -3678,7 +3744,19 @@ var require_parser = __commonJS({
3678
3744
  return TripleSingleQuote$0(state);
3679
3745
  }
3680
3746
  }
3681
- var Try$0 = $TV($EXPECT($L122, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
3747
+ var TripleTick$0 = $TV($EXPECT($L123, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
3748
+ return { $loc, token: "`" };
3749
+ });
3750
+ function TripleTick(state) {
3751
+ if (state.verbose)
3752
+ console.log("ENTER:", "TripleTick");
3753
+ if (state.tokenize) {
3754
+ return $TOKEN("TripleTick", state, TripleTick$0(state));
3755
+ } else {
3756
+ return TripleTick$0(state);
3757
+ }
3758
+ }
3759
+ var Try$0 = $TV($EXPECT($L124, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
3682
3760
  return { $loc, token: $1 };
3683
3761
  });
3684
3762
  function Try(state) {
@@ -3690,7 +3768,7 @@ var require_parser = __commonJS({
3690
3768
  return Try$0(state);
3691
3769
  }
3692
3770
  }
3693
- var Unless$0 = $TV($EXPECT($L123, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
3771
+ var Unless$0 = $TV($EXPECT($L125, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
3694
3772
  return { $loc, token: $1 };
3695
3773
  });
3696
3774
  function Unless(state) {
@@ -3702,7 +3780,7 @@ var require_parser = __commonJS({
3702
3780
  return Unless$0(state);
3703
3781
  }
3704
3782
  }
3705
- var Var$0 = $TV($EXPECT($L124, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
3783
+ var Var$0 = $TV($EXPECT($L126, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
3706
3784
  return { $loc, token: $1 };
3707
3785
  });
3708
3786
  function Var(state) {
@@ -3714,7 +3792,7 @@ var require_parser = __commonJS({
3714
3792
  return Var$0(state);
3715
3793
  }
3716
3794
  }
3717
- var When$0 = $TS($S($EXPECT($L125, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3795
+ var When$0 = $TS($S($EXPECT($L127, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3718
3796
  return { $loc, token: "case" };
3719
3797
  });
3720
3798
  function When(state) {
@@ -3740,7 +3818,7 @@ var require_parser = __commonJS({
3740
3818
  return JSXElement$0(state) || JSXElement$1(state);
3741
3819
  }
3742
3820
  }
3743
- var JSXSelfClosingElement$0 = $S($EXPECT($L7, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L126, fail, 'JSXSelfClosingElement "/>"'));
3821
+ var JSXSelfClosingElement$0 = $S($EXPECT($L7, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L128, fail, 'JSXSelfClosingElement "/>"'));
3744
3822
  function JSXSelfClosingElement(state) {
3745
3823
  if (state.verbose)
3746
3824
  console.log("ENTER:", "JSXSelfClosingElement");
@@ -3760,7 +3838,7 @@ var require_parser = __commonJS({
3760
3838
  return JSXOpeningElement$0(state);
3761
3839
  }
3762
3840
  }
3763
- var JSXClosingElement$0 = $S($EXPECT($L127, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L54, fail, 'JSXClosingElement ">"'));
3841
+ var JSXClosingElement$0 = $S($EXPECT($L129, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L54, fail, 'JSXClosingElement ">"'));
3764
3842
  function JSXClosingElement(state) {
3765
3843
  if (state.verbose)
3766
3844
  console.log("ENTER:", "JSXClosingElement");
@@ -3770,7 +3848,7 @@ var require_parser = __commonJS({
3770
3848
  return JSXClosingElement$0(state);
3771
3849
  }
3772
3850
  }
3773
- var JSXFragment$0 = $S($EXPECT($L128, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L129, fail, 'JSXFragment "</>"'));
3851
+ var JSXFragment$0 = $S($EXPECT($L130, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L131, fail, 'JSXFragment "</>"'));
3774
3852
  function JSXFragment(state) {
3775
3853
  if (state.verbose)
3776
3854
  console.log("ENTER:", "JSXFragment");
@@ -3904,7 +3982,7 @@ var require_parser = __commonJS({
3904
3982
  return TypeDeclaration$0(state);
3905
3983
  }
3906
3984
  }
3907
- var TypeDeclarationModifier$0 = $S($EXPECT($L130, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
3985
+ var TypeDeclarationModifier$0 = $S($EXPECT($L132, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
3908
3986
  var TypeDeclarationModifier$1 = Export;
3909
3987
  function TypeDeclarationModifier(state) {
3910
3988
  if (state.tokenize) {
@@ -3923,7 +4001,7 @@ var require_parser = __commonJS({
3923
4001
  return TypeDeclarationRest$0(state) || TypeDeclarationRest$1(state) || TypeDeclarationRest$2(state);
3924
4002
  }
3925
4003
  }
3926
- var TypeKeyword$0 = $S($EXPECT($L131, fail, 'TypeKeyword "type"'), NonIdContinue);
4004
+ var TypeKeyword$0 = $S($EXPECT($L133, fail, 'TypeKeyword "type"'), NonIdContinue);
3927
4005
  function TypeKeyword(state) {
3928
4006
  if (state.verbose)
3929
4007
  console.log("ENTER:", "TypeKeyword");
@@ -3933,7 +4011,7 @@ var require_parser = __commonJS({
3933
4011
  return TypeKeyword$0(state);
3934
4012
  }
3935
4013
  }
3936
- var Interface$0 = $S($EXPECT($L132, fail, 'Interface "interface"'), NonIdContinue);
4014
+ var Interface$0 = $S($EXPECT($L134, fail, 'Interface "interface"'), NonIdContinue);
3937
4015
  function Interface(state) {
3938
4016
  if (state.verbose)
3939
4017
  console.log("ENTER:", "Interface");
@@ -3943,7 +4021,7 @@ var require_parser = __commonJS({
3943
4021
  return Interface$0(state);
3944
4022
  }
3945
4023
  }
3946
- var Namespace$0 = $S($EXPECT($L133, fail, 'Namespace "namespace"'), NonIdContinue);
4024
+ var Namespace$0 = $S($EXPECT($L135, fail, 'Namespace "namespace"'), NonIdContinue);
3947
4025
  function Namespace(state) {
3948
4026
  if (state.verbose)
3949
4027
  console.log("ENTER:", "Namespace");
@@ -4047,7 +4125,7 @@ var require_parser = __commonJS({
4047
4125
  return NestedTypeDeclaration$0(state);
4048
4126
  }
4049
4127
  }
4050
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R31, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L134, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R32, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
4128
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R31, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L136, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R32, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
4051
4129
  function TypeIndexSignature(state) {
4052
4130
  if (state.verbose)
4053
4131
  console.log("ENTER:", "TypeIndexSignature");
@@ -4078,7 +4156,7 @@ var require_parser = __commonJS({
4078
4156
  return TypeSuffix$0(state);
4079
4157
  }
4080
4158
  }
4081
- var ReturnTypeSuffix$0 = $T($S(__, Colon, $E($S(__, $EXPECT($L135, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function(value) {
4159
+ var ReturnTypeSuffix$0 = $T($S(__, Colon, $E($S(__, $EXPECT($L137, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function(value) {
4082
4160
  return { "ts": true, "children": value };
4083
4161
  });
4084
4162
  function ReturnTypeSuffix(state) {
@@ -4140,9 +4218,9 @@ var require_parser = __commonJS({
4140
4218
  return TypeUnarySuffix$0(state);
4141
4219
  }
4142
4220
  }
4143
- var TypeUnaryOp$0 = $EXPECT($L136, fail, 'TypeUnaryOp "keyof"');
4221
+ var TypeUnaryOp$0 = $EXPECT($L138, fail, 'TypeUnaryOp "keyof"');
4144
4222
  var TypeUnaryOp$1 = $EXPECT($L72, fail, 'TypeUnaryOp "typeof"');
4145
- var TypeUnaryOp$2 = $EXPECT($L137, fail, 'TypeUnaryOp "infer"');
4223
+ var TypeUnaryOp$2 = $EXPECT($L139, fail, 'TypeUnaryOp "infer"');
4146
4224
  function TypeUnaryOp(state) {
4147
4225
  if (state.tokenize) {
4148
4226
  return $TOKEN("TypeUnaryOp", state, TypeUnaryOp$0(state) || TypeUnaryOp$1(state) || TypeUnaryOp$2(state));
@@ -4184,7 +4262,7 @@ var require_parser = __commonJS({
4184
4262
  }
4185
4263
  var TypeLiteral$0 = Literal;
4186
4264
  var TypeLiteral$1 = $EXPECT($L71, fail, 'TypeLiteral "void"');
4187
- var TypeLiteral$2 = $EXPECT($L138, fail, 'TypeLiteral "[]"');
4265
+ var TypeLiteral$2 = $EXPECT($L140, fail, 'TypeLiteral "[]"');
4188
4266
  function TypeLiteral(state) {
4189
4267
  if (state.tokenize) {
4190
4268
  return $TOKEN("TypeLiteral", state, TypeLiteral$0(state) || TypeLiteral$1(state) || TypeLiteral$2(state));
@@ -4471,15 +4549,19 @@ var require_parser = __commonJS({
4471
4549
  const compatRe = /use coffee-compat/;
4472
4550
  module2.coffeeCompat = directives.some((d) => d[1].token?.match(compatRe));
4473
4551
  }
4474
- module2.dedentBlockString = function({ $loc: $loc2, token: str }) {
4475
- const spacing = str.match(/^(\r?\n|\n)\s+/);
4552
+ module2.dedentBlockString = function({ $loc: $loc2, token: str }, spacing, trim = true) {
4553
+ if (spacing == null)
4554
+ spacing = str.match(/^(\r?\n|\n)[ \t]+/);
4476
4555
  if (spacing) {
4477
4556
  str = str.replaceAll(spacing[0], "\n");
4478
4557
  const l = spacing.length;
4479
4558
  $loc2.pos += l;
4480
4559
  $loc2.length -= l;
4481
4560
  }
4482
- str = str.replace(/^(\r?\n|\n)/, "").replace(/(\r?\n|\n)[ \t]*$/, "").replace(/(`|\$)/g, "\\$1");
4561
+ if (trim) {
4562
+ str = str.replace(/^(\r?\n|\n)/, "").replace(/(\r?\n|\n)[ \t]*$/, "");
4563
+ }
4564
+ str = str.replace(/(`|\$)/g, "\\$1");
4483
4565
  return {
4484
4566
  $loc: $loc2,
4485
4567
  token: str
@@ -4496,7 +4578,7 @@ var require_parser = __commonJS({
4496
4578
  return Init$0(state);
4497
4579
  }
4498
4580
  }
4499
- var Indent$0 = $TV($Q($C($EXPECT($L139, fail, 'Indent " "'), $EXPECT($L140, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
4581
+ var Indent$0 = $TV($Q($C($EXPECT($L141, fail, 'Indent " "'), $EXPECT($L142, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
4500
4582
  const level = $1.length;
4501
4583
  return {
4502
4584
  $loc,