@danielx/civet 0.4.38 → 0.5.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/README.md +65 -61
- package/dist/browser.js +423 -103
- package/dist/main.js +423 -103
- package/package.json +1 -1
package/dist/main.js
CHANGED
|
@@ -478,6 +478,7 @@ ${input.slice(result.pos)}
|
|
|
478
478
|
ExpressionizedStatement,
|
|
479
479
|
Expression,
|
|
480
480
|
Arguments,
|
|
481
|
+
ExplicitArguments,
|
|
481
482
|
ApplicationStart,
|
|
482
483
|
IndentedApplicationAllowed,
|
|
483
484
|
ArgumentsWithTrailingCallExpressions,
|
|
@@ -843,6 +844,16 @@ ${input.slice(result.pos)}
|
|
|
843
844
|
JSXAttributeInitializer,
|
|
844
845
|
JSXAttributeValue,
|
|
845
846
|
InlineJSXAttributeValue,
|
|
847
|
+
InlineJSXBinaryOpRHS,
|
|
848
|
+
InlineJSXUnaryExpression,
|
|
849
|
+
InlineJSXUnaryOp,
|
|
850
|
+
InlineJSXUnaryPostfix,
|
|
851
|
+
InlineJSXUpdateExpression,
|
|
852
|
+
InlineJSXCallExpression,
|
|
853
|
+
InlineJSXCallExpressionRest,
|
|
854
|
+
InlineJSXMemberExpression,
|
|
855
|
+
InlineJSXMemberExpressionRest,
|
|
856
|
+
InlineJSXPrimaryExpression,
|
|
846
857
|
JSXMixedChildren,
|
|
847
858
|
JSXChildren,
|
|
848
859
|
JSXNestedChildren,
|
|
@@ -1139,16 +1150,14 @@ ${input.slice(result.pos)}
|
|
|
1139
1150
|
var $R43 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
|
|
1140
1151
|
var $R44 = $R(new RegExp("\\s", "suy"));
|
|
1141
1152
|
var $R45 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
1142
|
-
var $R46 = $R(new RegExp(
|
|
1143
|
-
var $R47 = $R(new RegExp("
|
|
1144
|
-
var $R48 = $R(new RegExp("[
|
|
1145
|
-
var $R49 = $R(new RegExp("[
|
|
1146
|
-
var $R50 = $R(new RegExp("
|
|
1147
|
-
var $R51 = $R(new RegExp("[\\
|
|
1148
|
-
var $R52 = $R(new RegExp("
|
|
1149
|
-
var $R53 = $R(new RegExp("
|
|
1150
|
-
var $R54 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
1151
|
-
var $R55 = $R(new RegExp("[ \\t]*", "suy"));
|
|
1153
|
+
var $R46 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
|
|
1154
|
+
var $R47 = $R(new RegExp("[+-]?", "suy"));
|
|
1155
|
+
var $R48 = $R(new RegExp("#![^\\r\\n]*", "suy"));
|
|
1156
|
+
var $R49 = $R(new RegExp("[\\t ]*", "suy"));
|
|
1157
|
+
var $R50 = $R(new RegExp("[\\s]*", "suy"));
|
|
1158
|
+
var $R51 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
|
|
1159
|
+
var $R52 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
1160
|
+
var $R53 = $R(new RegExp("[ \\t]*", "suy"));
|
|
1152
1161
|
var Program$0 = $TS($S(Reset, Init, __, $Q(TopLevelStatement), __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1153
1162
|
var statements = $4;
|
|
1154
1163
|
module2.processProgram(statements);
|
|
@@ -1269,7 +1278,7 @@ ${input.slice(result.pos)}
|
|
|
1269
1278
|
return result;
|
|
1270
1279
|
}
|
|
1271
1280
|
}
|
|
1272
|
-
var Arguments$0 =
|
|
1281
|
+
var Arguments$0 = ExplicitArguments;
|
|
1273
1282
|
var Arguments$1 = $TS($S(ApplicationStart, InsertOpenParen, $Q(_), ArgumentList, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1274
1283
|
var open = $2;
|
|
1275
1284
|
var ws = $3;
|
|
@@ -1295,6 +1304,25 @@ ${input.slice(result.pos)}
|
|
|
1295
1304
|
return result;
|
|
1296
1305
|
}
|
|
1297
1306
|
}
|
|
1307
|
+
var ExplicitArguments$0 = $S(OpenParen, $E(ArgumentList), $E($S(__, Comma)), __, CloseParen);
|
|
1308
|
+
function ExplicitArguments(state) {
|
|
1309
|
+
if (state.events) {
|
|
1310
|
+
const result = state.events.enter?.("ExplicitArguments", state);
|
|
1311
|
+
if (result)
|
|
1312
|
+
return result.cache;
|
|
1313
|
+
}
|
|
1314
|
+
if (state.tokenize) {
|
|
1315
|
+
const result = $TOKEN("ExplicitArguments", state, ExplicitArguments$0(state));
|
|
1316
|
+
if (state.events)
|
|
1317
|
+
state.events.exit?.("ExplicitArguments", state, result);
|
|
1318
|
+
return result;
|
|
1319
|
+
} else {
|
|
1320
|
+
const result = ExplicitArguments$0(state);
|
|
1321
|
+
if (state.events)
|
|
1322
|
+
state.events.exit?.("ExplicitArguments", state, result);
|
|
1323
|
+
return result;
|
|
1324
|
+
}
|
|
1325
|
+
}
|
|
1298
1326
|
var ApplicationStart$0 = $S(IndentedApplicationAllowed, $Y(NestedImplicitObjectLiteral));
|
|
1299
1327
|
var ApplicationStart$1 = $S($N(EOS), $Y($S($P(_), $N(AdditionalReservedWords))));
|
|
1300
1328
|
function ApplicationStart(state) {
|
|
@@ -1487,9 +1515,8 @@ ${input.slice(result.pos)}
|
|
|
1487
1515
|
}
|
|
1488
1516
|
}
|
|
1489
1517
|
var BinaryOpExpression$0 = $TS($S(UnaryExpression, $Q(BinaryOpRHS)), function($skip, $loc, $0, $1, $2) {
|
|
1490
|
-
if ($2.length)
|
|
1518
|
+
if ($2.length)
|
|
1491
1519
|
return module2.processBinaryOpExpression($0);
|
|
1492
|
-
}
|
|
1493
1520
|
return $1;
|
|
1494
1521
|
});
|
|
1495
1522
|
function BinaryOpExpression(state) {
|
|
@@ -1552,53 +1579,7 @@ ${input.slice(result.pos)}
|
|
|
1552
1579
|
var pre = $1;
|
|
1553
1580
|
var exp = $2;
|
|
1554
1581
|
var post = $3;
|
|
1555
|
-
|
|
1556
|
-
post = {
|
|
1557
|
-
$loc: post.$loc,
|
|
1558
|
-
token: " != null"
|
|
1559
|
-
};
|
|
1560
|
-
switch (exp.type) {
|
|
1561
|
-
case "Identifier":
|
|
1562
|
-
case "Literal":
|
|
1563
|
-
return {
|
|
1564
|
-
...exp,
|
|
1565
|
-
children: [...pre, ...exp.children, post]
|
|
1566
|
-
};
|
|
1567
|
-
default:
|
|
1568
|
-
return {
|
|
1569
|
-
type: "ParenthesizedExpression",
|
|
1570
|
-
children: ["(", ...pre, "(", exp, ")", post, ")"]
|
|
1571
|
-
};
|
|
1572
|
-
}
|
|
1573
|
-
}
|
|
1574
|
-
if (exp.type === "Literal") {
|
|
1575
|
-
if (pre.length === 1 && pre[0].token === "-") {
|
|
1576
|
-
const children = [pre[0], ...exp.children];
|
|
1577
|
-
if (post)
|
|
1578
|
-
exp.children.push(post);
|
|
1579
|
-
return {
|
|
1580
|
-
type: "Literal",
|
|
1581
|
-
children,
|
|
1582
|
-
raw: `-${exp.raw}`
|
|
1583
|
-
};
|
|
1584
|
-
}
|
|
1585
|
-
}
|
|
1586
|
-
if (exp.children) {
|
|
1587
|
-
const children = [...pre, ...exp.children];
|
|
1588
|
-
if (post)
|
|
1589
|
-
children.push(post);
|
|
1590
|
-
return Object.assign({}, exp, { children });
|
|
1591
|
-
} else if (Array.isArray(exp)) {
|
|
1592
|
-
const children = [...pre, ...exp];
|
|
1593
|
-
if (post)
|
|
1594
|
-
children.push(post);
|
|
1595
|
-
return { children };
|
|
1596
|
-
} else {
|
|
1597
|
-
const children = [...pre, exp];
|
|
1598
|
-
if (post)
|
|
1599
|
-
children.push(post);
|
|
1600
|
-
return { children };
|
|
1601
|
-
}
|
|
1582
|
+
return module2.processUnaryExpression(pre, exp, post);
|
|
1602
1583
|
});
|
|
1603
1584
|
var UnaryExpression$1 = $TS($S(CoffeeDoEnabled, Do, __, $C($S(LeftHandSideExpression, $N($S(__, AssignmentOpSymbol))), ArrowFunction, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1604
1585
|
var ws = $3;
|
|
@@ -2082,7 +2063,7 @@ ${input.slice(result.pos)}
|
|
|
2082
2063
|
return result;
|
|
2083
2064
|
}
|
|
2084
2065
|
}
|
|
2085
|
-
var ClassExpression$0 = $S($E(Decorators), Class, $E($S(BindingIdentifier, $E(
|
|
2066
|
+
var ClassExpression$0 = $S($E(Decorators), Class, $E($S(BindingIdentifier, $E(TypeParameters))), $E(ClassHeritage), ClassBody);
|
|
2086
2067
|
function ClassExpression(state) {
|
|
2087
2068
|
if (state.events) {
|
|
2088
2069
|
const result = state.events.enter?.("ClassExpression", state);
|
|
@@ -8315,10 +8296,9 @@ ${input.slice(result.pos)}
|
|
|
8315
8296
|
var s = $2;
|
|
8316
8297
|
var parts = $3;
|
|
8317
8298
|
var e = $4;
|
|
8318
|
-
|
|
8319
|
-
if (noInterpolations) {
|
|
8299
|
+
if (parts.length === 0 || parts.length === 1 && parts[0].token != null) {
|
|
8320
8300
|
return {
|
|
8321
|
-
token: `"${module2.modifyString(parts[0].token)}"
|
|
8301
|
+
token: parts.length ? `"${module2.modifyString(parts[0].token)}"` : '""',
|
|
8322
8302
|
$loc
|
|
8323
8303
|
};
|
|
8324
8304
|
}
|
|
@@ -10842,12 +10822,15 @@ ${input.slice(result.pos)}
|
|
|
10842
10822
|
return result;
|
|
10843
10823
|
}
|
|
10844
10824
|
}
|
|
10845
|
-
var JSXAttributeValue$0 = $
|
|
10846
|
-
|
|
10847
|
-
|
|
10848
|
-
|
|
10849
|
-
|
|
10850
|
-
var JSXAttributeValue$
|
|
10825
|
+
var JSXAttributeValue$0 = $TS($S(StringLiteral), function($skip, $loc, $0, $1) {
|
|
10826
|
+
if (module2.isTemplateLiteral($1))
|
|
10827
|
+
return $skip;
|
|
10828
|
+
return $1;
|
|
10829
|
+
});
|
|
10830
|
+
var JSXAttributeValue$1 = $S(OpenBrace, ExtendedExpression, __, CloseBrace);
|
|
10831
|
+
var JSXAttributeValue$2 = JSXElement;
|
|
10832
|
+
var JSXAttributeValue$3 = JSXFragment;
|
|
10833
|
+
var JSXAttributeValue$4 = $S(InsertInlineOpenBrace, InlineJSXAttributeValue, InsertCloseBrace);
|
|
10851
10834
|
function JSXAttributeValue(state) {
|
|
10852
10835
|
if (state.events) {
|
|
10853
10836
|
const result = state.events.enter?.("JSXAttributeValue", state);
|
|
@@ -10855,27 +10838,22 @@ ${input.slice(result.pos)}
|
|
|
10855
10838
|
return result.cache;
|
|
10856
10839
|
}
|
|
10857
10840
|
if (state.tokenize) {
|
|
10858
|
-
const result = $TOKEN("JSXAttributeValue", state, JSXAttributeValue$0(state) || JSXAttributeValue$1(state) || JSXAttributeValue$2(state) || JSXAttributeValue$3(state) || JSXAttributeValue$4(state)
|
|
10841
|
+
const result = $TOKEN("JSXAttributeValue", state, JSXAttributeValue$0(state) || JSXAttributeValue$1(state) || JSXAttributeValue$2(state) || JSXAttributeValue$3(state) || JSXAttributeValue$4(state));
|
|
10859
10842
|
if (state.events)
|
|
10860
10843
|
state.events.exit?.("JSXAttributeValue", state, result);
|
|
10861
10844
|
return result;
|
|
10862
10845
|
} else {
|
|
10863
|
-
const result = JSXAttributeValue$0(state) || JSXAttributeValue$1(state) || JSXAttributeValue$2(state) || JSXAttributeValue$3(state) || JSXAttributeValue$4(state)
|
|
10846
|
+
const result = JSXAttributeValue$0(state) || JSXAttributeValue$1(state) || JSXAttributeValue$2(state) || JSXAttributeValue$3(state) || JSXAttributeValue$4(state);
|
|
10864
10847
|
if (state.events)
|
|
10865
10848
|
state.events.exit?.("JSXAttributeValue", state, result);
|
|
10866
10849
|
return result;
|
|
10867
10850
|
}
|
|
10868
10851
|
}
|
|
10869
|
-
var InlineJSXAttributeValue$0 =
|
|
10870
|
-
|
|
10871
|
-
|
|
10872
|
-
|
|
10873
|
-
|
|
10874
|
-
var InlineJSXAttributeValue$5 = BracedObjectLiteral;
|
|
10875
|
-
var InlineJSXAttributeValue$6 = IdentifierReference;
|
|
10876
|
-
var InlineJSXAttributeValue$7 = RegularExpressionLiteral;
|
|
10877
|
-
var InlineJSXAttributeValue$8 = TemplateLiteral;
|
|
10878
|
-
var InlineJSXAttributeValue$9 = ParenthesizedExpression;
|
|
10852
|
+
var InlineJSXAttributeValue$0 = $TS($S(InlineJSXUnaryExpression, $Q(InlineJSXBinaryOpRHS)), function($skip, $loc, $0, $1, $2) {
|
|
10853
|
+
if ($2.length)
|
|
10854
|
+
return module2.processBinaryOpExpression($0);
|
|
10855
|
+
return $1;
|
|
10856
|
+
});
|
|
10879
10857
|
function InlineJSXAttributeValue(state) {
|
|
10880
10858
|
if (state.events) {
|
|
10881
10859
|
const result = state.events.enter?.("InlineJSXAttributeValue", state);
|
|
@@ -10883,17 +10861,255 @@ ${input.slice(result.pos)}
|
|
|
10883
10861
|
return result.cache;
|
|
10884
10862
|
}
|
|
10885
10863
|
if (state.tokenize) {
|
|
10886
|
-
const result = $TOKEN("InlineJSXAttributeValue", state, InlineJSXAttributeValue$0(state)
|
|
10864
|
+
const result = $TOKEN("InlineJSXAttributeValue", state, InlineJSXAttributeValue$0(state));
|
|
10887
10865
|
if (state.events)
|
|
10888
10866
|
state.events.exit?.("InlineJSXAttributeValue", state, result);
|
|
10889
10867
|
return result;
|
|
10890
10868
|
} else {
|
|
10891
|
-
const result = InlineJSXAttributeValue$0(state)
|
|
10869
|
+
const result = InlineJSXAttributeValue$0(state);
|
|
10892
10870
|
if (state.events)
|
|
10893
10871
|
state.events.exit?.("InlineJSXAttributeValue", state, result);
|
|
10894
10872
|
return result;
|
|
10895
10873
|
}
|
|
10896
10874
|
}
|
|
10875
|
+
var InlineJSXBinaryOpRHS$0 = $TS($S(BinaryOp, $C(ParenthesizedAssignment, InlineJSXUnaryExpression)), function($skip, $loc, $0, $1, $2) {
|
|
10876
|
+
return [[], $1, [], $2];
|
|
10877
|
+
});
|
|
10878
|
+
function InlineJSXBinaryOpRHS(state) {
|
|
10879
|
+
if (state.events) {
|
|
10880
|
+
const result = state.events.enter?.("InlineJSXBinaryOpRHS", state);
|
|
10881
|
+
if (result)
|
|
10882
|
+
return result.cache;
|
|
10883
|
+
}
|
|
10884
|
+
if (state.tokenize) {
|
|
10885
|
+
const result = $TOKEN("InlineJSXBinaryOpRHS", state, InlineJSXBinaryOpRHS$0(state));
|
|
10886
|
+
if (state.events)
|
|
10887
|
+
state.events.exit?.("InlineJSXBinaryOpRHS", state, result);
|
|
10888
|
+
return result;
|
|
10889
|
+
} else {
|
|
10890
|
+
const result = InlineJSXBinaryOpRHS$0(state);
|
|
10891
|
+
if (state.events)
|
|
10892
|
+
state.events.exit?.("InlineJSXBinaryOpRHS", state, result);
|
|
10893
|
+
return result;
|
|
10894
|
+
}
|
|
10895
|
+
}
|
|
10896
|
+
var InlineJSXUnaryExpression$0 = $TS($S($Q(InlineJSXUnaryOp), InlineJSXUpdateExpression, $E(InlineJSXUnaryPostfix)), function($skip, $loc, $0, $1, $2, $3) {
|
|
10897
|
+
var pre = $1;
|
|
10898
|
+
var exp = $2;
|
|
10899
|
+
var post = $3;
|
|
10900
|
+
return module2.processUnaryExpression(pre, exp, post);
|
|
10901
|
+
});
|
|
10902
|
+
function InlineJSXUnaryExpression(state) {
|
|
10903
|
+
if (state.events) {
|
|
10904
|
+
const result = state.events.enter?.("InlineJSXUnaryExpression", state);
|
|
10905
|
+
if (result)
|
|
10906
|
+
return result.cache;
|
|
10907
|
+
}
|
|
10908
|
+
if (state.tokenize) {
|
|
10909
|
+
const result = $TOKEN("InlineJSXUnaryExpression", state, InlineJSXUnaryExpression$0(state));
|
|
10910
|
+
if (state.events)
|
|
10911
|
+
state.events.exit?.("InlineJSXUnaryExpression", state, result);
|
|
10912
|
+
return result;
|
|
10913
|
+
} else {
|
|
10914
|
+
const result = InlineJSXUnaryExpression$0(state);
|
|
10915
|
+
if (state.events)
|
|
10916
|
+
state.events.exit?.("InlineJSXUnaryExpression", state, result);
|
|
10917
|
+
return result;
|
|
10918
|
+
}
|
|
10919
|
+
}
|
|
10920
|
+
var InlineJSXUnaryOp$0 = $TR($EXPECT($R6, fail, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
10921
|
+
return { $loc, token: $0 };
|
|
10922
|
+
});
|
|
10923
|
+
function InlineJSXUnaryOp(state) {
|
|
10924
|
+
if (state.events) {
|
|
10925
|
+
const result = state.events.enter?.("InlineJSXUnaryOp", state);
|
|
10926
|
+
if (result)
|
|
10927
|
+
return result.cache;
|
|
10928
|
+
}
|
|
10929
|
+
if (state.tokenize) {
|
|
10930
|
+
const result = $TOKEN("InlineJSXUnaryOp", state, InlineJSXUnaryOp$0(state));
|
|
10931
|
+
if (state.events)
|
|
10932
|
+
state.events.exit?.("InlineJSXUnaryOp", state, result);
|
|
10933
|
+
return result;
|
|
10934
|
+
} else {
|
|
10935
|
+
const result = InlineJSXUnaryOp$0(state);
|
|
10936
|
+
if (state.events)
|
|
10937
|
+
state.events.exit?.("InlineJSXUnaryOp", state, result);
|
|
10938
|
+
return result;
|
|
10939
|
+
}
|
|
10940
|
+
}
|
|
10941
|
+
var InlineJSXUnaryPostfix$0 = QuestionMark;
|
|
10942
|
+
function InlineJSXUnaryPostfix(state) {
|
|
10943
|
+
if (state.events) {
|
|
10944
|
+
const result = state.events.enter?.("InlineJSXUnaryPostfix", state);
|
|
10945
|
+
if (result)
|
|
10946
|
+
return result.cache;
|
|
10947
|
+
}
|
|
10948
|
+
if (state.tokenize) {
|
|
10949
|
+
const result = $TOKEN("InlineJSXUnaryPostfix", state, InlineJSXUnaryPostfix$0(state));
|
|
10950
|
+
if (state.events)
|
|
10951
|
+
state.events.exit?.("InlineJSXUnaryPostfix", state, result);
|
|
10952
|
+
return result;
|
|
10953
|
+
} else {
|
|
10954
|
+
const result = InlineJSXUnaryPostfix$0(state);
|
|
10955
|
+
if (state.events)
|
|
10956
|
+
state.events.exit?.("InlineJSXUnaryPostfix", state, result);
|
|
10957
|
+
return result;
|
|
10958
|
+
}
|
|
10959
|
+
}
|
|
10960
|
+
var InlineJSXUpdateExpression$0 = $S(UpdateExpressionSymbol, UnaryExpression);
|
|
10961
|
+
var InlineJSXUpdateExpression$1 = $TS($S(InlineJSXCallExpression, $E(UpdateExpressionSymbol)), function($skip, $loc, $0, $1, $2) {
|
|
10962
|
+
if ($2)
|
|
10963
|
+
return $0;
|
|
10964
|
+
return $1;
|
|
10965
|
+
});
|
|
10966
|
+
function InlineJSXUpdateExpression(state) {
|
|
10967
|
+
if (state.events) {
|
|
10968
|
+
const result = state.events.enter?.("InlineJSXUpdateExpression", state);
|
|
10969
|
+
if (result)
|
|
10970
|
+
return result.cache;
|
|
10971
|
+
}
|
|
10972
|
+
if (state.tokenize) {
|
|
10973
|
+
const result = $TOKEN("InlineJSXUpdateExpression", state, InlineJSXUpdateExpression$0(state) || InlineJSXUpdateExpression$1(state));
|
|
10974
|
+
if (state.events)
|
|
10975
|
+
state.events.exit?.("InlineJSXUpdateExpression", state, result);
|
|
10976
|
+
return result;
|
|
10977
|
+
} else {
|
|
10978
|
+
const result = InlineJSXUpdateExpression$0(state) || InlineJSXUpdateExpression$1(state);
|
|
10979
|
+
if (state.events)
|
|
10980
|
+
state.events.exit?.("InlineJSXUpdateExpression", state, result);
|
|
10981
|
+
return result;
|
|
10982
|
+
}
|
|
10983
|
+
}
|
|
10984
|
+
var InlineJSXCallExpression$0 = $S($EXPECT($L10, fail, 'InlineJSXCallExpression "super"'), ExplicitArguments);
|
|
10985
|
+
var InlineJSXCallExpression$1 = $S($EXPECT($L11, fail, 'InlineJSXCallExpression "import"'), OpenParen, ExtendedExpression, __, CloseParen);
|
|
10986
|
+
var InlineJSXCallExpression$2 = $TS($S(InlineJSXMemberExpression, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
10987
|
+
if ($2.length)
|
|
10988
|
+
return $0;
|
|
10989
|
+
return $1;
|
|
10990
|
+
});
|
|
10991
|
+
function InlineJSXCallExpression(state) {
|
|
10992
|
+
if (state.events) {
|
|
10993
|
+
const result = state.events.enter?.("InlineJSXCallExpression", state);
|
|
10994
|
+
if (result)
|
|
10995
|
+
return result.cache;
|
|
10996
|
+
}
|
|
10997
|
+
if (state.tokenize) {
|
|
10998
|
+
const result = $TOKEN("InlineJSXCallExpression", state, InlineJSXCallExpression$0(state) || InlineJSXCallExpression$1(state) || InlineJSXCallExpression$2(state));
|
|
10999
|
+
if (state.events)
|
|
11000
|
+
state.events.exit?.("InlineJSXCallExpression", state, result);
|
|
11001
|
+
return result;
|
|
11002
|
+
} else {
|
|
11003
|
+
const result = InlineJSXCallExpression$0(state) || InlineJSXCallExpression$1(state) || InlineJSXCallExpression$2(state);
|
|
11004
|
+
if (state.events)
|
|
11005
|
+
state.events.exit?.("InlineJSXCallExpression", state, result);
|
|
11006
|
+
return result;
|
|
11007
|
+
}
|
|
11008
|
+
}
|
|
11009
|
+
var InlineJSXCallExpressionRest$0 = MemberExpressionRest;
|
|
11010
|
+
var InlineJSXCallExpressionRest$1 = TemplateLiteral;
|
|
11011
|
+
var InlineJSXCallExpressionRest$2 = $S($E($C(OptionalShorthand, NonNullAssertion)), ExplicitArguments);
|
|
11012
|
+
function InlineJSXCallExpressionRest(state) {
|
|
11013
|
+
if (state.events) {
|
|
11014
|
+
const result = state.events.enter?.("InlineJSXCallExpressionRest", state);
|
|
11015
|
+
if (result)
|
|
11016
|
+
return result.cache;
|
|
11017
|
+
}
|
|
11018
|
+
if (state.tokenize) {
|
|
11019
|
+
const result = $TOKEN("InlineJSXCallExpressionRest", state, InlineJSXCallExpressionRest$0(state) || InlineJSXCallExpressionRest$1(state) || InlineJSXCallExpressionRest$2(state));
|
|
11020
|
+
if (state.events)
|
|
11021
|
+
state.events.exit?.("InlineJSXCallExpressionRest", state, result);
|
|
11022
|
+
return result;
|
|
11023
|
+
} else {
|
|
11024
|
+
const result = InlineJSXCallExpressionRest$0(state) || InlineJSXCallExpressionRest$1(state) || InlineJSXCallExpressionRest$2(state);
|
|
11025
|
+
if (state.events)
|
|
11026
|
+
state.events.exit?.("InlineJSXCallExpressionRest", state, result);
|
|
11027
|
+
return result;
|
|
11028
|
+
}
|
|
11029
|
+
}
|
|
11030
|
+
var InlineJSXMemberExpression$0 = $TS($S(InlineJSXPrimaryExpression, $Q(InlineJSXMemberExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
11031
|
+
if ($2.length)
|
|
11032
|
+
return $0;
|
|
11033
|
+
return $1;
|
|
11034
|
+
});
|
|
11035
|
+
var InlineJSXMemberExpression$1 = SuperProperty;
|
|
11036
|
+
var InlineJSXMemberExpression$2 = MetaProperty;
|
|
11037
|
+
function InlineJSXMemberExpression(state) {
|
|
11038
|
+
if (state.events) {
|
|
11039
|
+
const result = state.events.enter?.("InlineJSXMemberExpression", state);
|
|
11040
|
+
if (result)
|
|
11041
|
+
return result.cache;
|
|
11042
|
+
}
|
|
11043
|
+
if (state.tokenize) {
|
|
11044
|
+
const result = $TOKEN("InlineJSXMemberExpression", state, InlineJSXMemberExpression$0(state) || InlineJSXMemberExpression$1(state) || InlineJSXMemberExpression$2(state));
|
|
11045
|
+
if (state.events)
|
|
11046
|
+
state.events.exit?.("InlineJSXMemberExpression", state, result);
|
|
11047
|
+
return result;
|
|
11048
|
+
} else {
|
|
11049
|
+
const result = InlineJSXMemberExpression$0(state) || InlineJSXMemberExpression$1(state) || InlineJSXMemberExpression$2(state);
|
|
11050
|
+
if (state.events)
|
|
11051
|
+
state.events.exit?.("InlineJSXMemberExpression", state, result);
|
|
11052
|
+
return result;
|
|
11053
|
+
}
|
|
11054
|
+
}
|
|
11055
|
+
var InlineJSXMemberExpressionRest$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
|
|
11056
|
+
if ($1) {
|
|
11057
|
+
if ($1.length === 2 && $2.type === "SliceExpression") {
|
|
11058
|
+
return [$1[0], $2];
|
|
11059
|
+
}
|
|
11060
|
+
return $0;
|
|
11061
|
+
}
|
|
11062
|
+
return $2;
|
|
11063
|
+
});
|
|
11064
|
+
var InlineJSXMemberExpressionRest$1 = PropertyAccess;
|
|
11065
|
+
var InlineJSXMemberExpressionRest$2 = NonNullAssertion;
|
|
11066
|
+
function InlineJSXMemberExpressionRest(state) {
|
|
11067
|
+
if (state.events) {
|
|
11068
|
+
const result = state.events.enter?.("InlineJSXMemberExpressionRest", state);
|
|
11069
|
+
if (result)
|
|
11070
|
+
return result.cache;
|
|
11071
|
+
}
|
|
11072
|
+
if (state.tokenize) {
|
|
11073
|
+
const result = $TOKEN("InlineJSXMemberExpressionRest", state, InlineJSXMemberExpressionRest$0(state) || InlineJSXMemberExpressionRest$1(state) || InlineJSXMemberExpressionRest$2(state));
|
|
11074
|
+
if (state.events)
|
|
11075
|
+
state.events.exit?.("InlineJSXMemberExpressionRest", state, result);
|
|
11076
|
+
return result;
|
|
11077
|
+
} else {
|
|
11078
|
+
const result = InlineJSXMemberExpressionRest$0(state) || InlineJSXMemberExpressionRest$1(state) || InlineJSXMemberExpressionRest$2(state);
|
|
11079
|
+
if (state.events)
|
|
11080
|
+
state.events.exit?.("InlineJSXMemberExpressionRest", state, result);
|
|
11081
|
+
return result;
|
|
11082
|
+
}
|
|
11083
|
+
}
|
|
11084
|
+
var InlineJSXPrimaryExpression$0 = NullLiteral;
|
|
11085
|
+
var InlineJSXPrimaryExpression$1 = BooleanLiteral;
|
|
11086
|
+
var InlineJSXPrimaryExpression$2 = NumericLiteral;
|
|
11087
|
+
var InlineJSXPrimaryExpression$3 = StringLiteral;
|
|
11088
|
+
var InlineJSXPrimaryExpression$4 = ThisLiteral;
|
|
11089
|
+
var InlineJSXPrimaryExpression$5 = ArrayLiteral;
|
|
11090
|
+
var InlineJSXPrimaryExpression$6 = BracedObjectLiteral;
|
|
11091
|
+
var InlineJSXPrimaryExpression$7 = IdentifierReference;
|
|
11092
|
+
var InlineJSXPrimaryExpression$8 = RegularExpressionLiteral;
|
|
11093
|
+
var InlineJSXPrimaryExpression$9 = TemplateLiteral;
|
|
11094
|
+
var InlineJSXPrimaryExpression$10 = ParenthesizedExpression;
|
|
11095
|
+
function InlineJSXPrimaryExpression(state) {
|
|
11096
|
+
if (state.events) {
|
|
11097
|
+
const result = state.events.enter?.("InlineJSXPrimaryExpression", state);
|
|
11098
|
+
if (result)
|
|
11099
|
+
return result.cache;
|
|
11100
|
+
}
|
|
11101
|
+
if (state.tokenize) {
|
|
11102
|
+
const result = $TOKEN("InlineJSXPrimaryExpression", state, InlineJSXPrimaryExpression$0(state) || InlineJSXPrimaryExpression$1(state) || InlineJSXPrimaryExpression$2(state) || InlineJSXPrimaryExpression$3(state) || InlineJSXPrimaryExpression$4(state) || InlineJSXPrimaryExpression$5(state) || InlineJSXPrimaryExpression$6(state) || InlineJSXPrimaryExpression$7(state) || InlineJSXPrimaryExpression$8(state) || InlineJSXPrimaryExpression$9(state) || InlineJSXPrimaryExpression$10(state));
|
|
11103
|
+
if (state.events)
|
|
11104
|
+
state.events.exit?.("InlineJSXPrimaryExpression", state, result);
|
|
11105
|
+
return result;
|
|
11106
|
+
} else {
|
|
11107
|
+
const result = InlineJSXPrimaryExpression$0(state) || InlineJSXPrimaryExpression$1(state) || InlineJSXPrimaryExpression$2(state) || InlineJSXPrimaryExpression$3(state) || InlineJSXPrimaryExpression$4(state) || InlineJSXPrimaryExpression$5(state) || InlineJSXPrimaryExpression$6(state) || InlineJSXPrimaryExpression$7(state) || InlineJSXPrimaryExpression$8(state) || InlineJSXPrimaryExpression$9(state) || InlineJSXPrimaryExpression$10(state);
|
|
11108
|
+
if (state.events)
|
|
11109
|
+
state.events.exit?.("InlineJSXPrimaryExpression", state, result);
|
|
11110
|
+
return result;
|
|
11111
|
+
}
|
|
11112
|
+
}
|
|
10897
11113
|
var JSXMixedChildren$0 = $TS($S($Q($C(_, JSXChild)), JSXNestedChildren), function($skip, $loc, $0, $1, $2) {
|
|
10898
11114
|
var c1 = $1;
|
|
10899
11115
|
var c2 = $2;
|
|
@@ -10984,7 +11200,7 @@ ${input.slice(result.pos)}
|
|
|
10984
11200
|
return result;
|
|
10985
11201
|
}
|
|
10986
11202
|
}
|
|
10987
|
-
var JSXText$0 = $R$0($EXPECT($
|
|
11203
|
+
var JSXText$0 = $R$0($EXPECT($R46, fail, "JSXText /[^{}<>\\r\\n]+/"));
|
|
10988
11204
|
function JSXText(state) {
|
|
10989
11205
|
if (state.events) {
|
|
10990
11206
|
const result = state.events.enter?.("JSXText", state);
|
|
@@ -11312,7 +11528,7 @@ ${input.slice(result.pos)}
|
|
|
11312
11528
|
return result;
|
|
11313
11529
|
}
|
|
11314
11530
|
}
|
|
11315
|
-
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($
|
|
11531
|
+
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R47, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L154, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R4, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
|
|
11316
11532
|
function TypeIndexSignature(state) {
|
|
11317
11533
|
if (state.events) {
|
|
11318
11534
|
const result = state.events.enter?.("TypeIndexSignature", state);
|
|
@@ -11746,7 +11962,9 @@ ${input.slice(result.pos)}
|
|
|
11746
11962
|
return result;
|
|
11747
11963
|
}
|
|
11748
11964
|
}
|
|
11749
|
-
var TypeArguments$0 = $S(__, $EXPECT($L5, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L27, fail, 'TypeArguments ">"'))
|
|
11965
|
+
var TypeArguments$0 = $TS($S(__, $EXPECT($L5, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L27, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
11966
|
+
return { ts: true, children: $0 };
|
|
11967
|
+
});
|
|
11750
11968
|
function TypeArguments(state) {
|
|
11751
11969
|
if (state.events) {
|
|
11752
11970
|
const result = state.events.enter?.("TypeArguments", state);
|
|
@@ -11765,7 +11983,7 @@ ${input.slice(result.pos)}
|
|
|
11765
11983
|
return result;
|
|
11766
11984
|
}
|
|
11767
11985
|
}
|
|
11768
|
-
var TypeParameters$0 = $TS($S(__, $EXPECT($L5, fail, 'TypeParameters "<"'),
|
|
11986
|
+
var TypeParameters$0 = $TS($S(__, $EXPECT($L5, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L27, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
11769
11987
|
return { ts: true, children: $0 };
|
|
11770
11988
|
});
|
|
11771
11989
|
function TypeParameters(state) {
|
|
@@ -11825,11 +12043,8 @@ ${input.slice(result.pos)}
|
|
|
11825
12043
|
}
|
|
11826
12044
|
}
|
|
11827
12045
|
var TypeParameterDelimiter$0 = $S($Q(_), Comma);
|
|
11828
|
-
var TypeParameterDelimiter$1 = $Y($S(
|
|
11829
|
-
var TypeParameterDelimiter$2 = $T($S($Y(
|
|
11830
|
-
return value[1];
|
|
11831
|
-
});
|
|
11832
|
-
var TypeParameterDelimiter$3 = $T($S($Y(EOS), InsertComma), function(value) {
|
|
12046
|
+
var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L27, fail, 'TypeParameterDelimiter ">"')));
|
|
12047
|
+
var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
|
|
11833
12048
|
return value[1];
|
|
11834
12049
|
});
|
|
11835
12050
|
function TypeParameterDelimiter(state) {
|
|
@@ -11839,18 +12054,18 @@ ${input.slice(result.pos)}
|
|
|
11839
12054
|
return result.cache;
|
|
11840
12055
|
}
|
|
11841
12056
|
if (state.tokenize) {
|
|
11842
|
-
const result = $TOKEN("TypeParameterDelimiter", state, TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state)
|
|
12057
|
+
const result = $TOKEN("TypeParameterDelimiter", state, TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state));
|
|
11843
12058
|
if (state.events)
|
|
11844
12059
|
state.events.exit?.("TypeParameterDelimiter", state, result);
|
|
11845
12060
|
return result;
|
|
11846
12061
|
} else {
|
|
11847
|
-
const result = TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state)
|
|
12062
|
+
const result = TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state);
|
|
11848
12063
|
if (state.events)
|
|
11849
12064
|
state.events.exit?.("TypeParameterDelimiter", state, result);
|
|
11850
12065
|
return result;
|
|
11851
12066
|
}
|
|
11852
12067
|
}
|
|
11853
|
-
var Shebang$0 = $S($R$0($EXPECT($
|
|
12068
|
+
var Shebang$0 = $S($R$0($EXPECT($R48, fail, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
11854
12069
|
function Shebang(state) {
|
|
11855
12070
|
if (state.events) {
|
|
11856
12071
|
const result = state.events.enter?.("Shebang", state);
|
|
@@ -11869,11 +12084,11 @@ ${input.slice(result.pos)}
|
|
|
11869
12084
|
return result;
|
|
11870
12085
|
}
|
|
11871
12086
|
}
|
|
11872
|
-
var CivetPrologue$0 = $T($S($EXPECT($
|
|
12087
|
+
var CivetPrologue$0 = $T($S($EXPECT($R49, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
|
|
11873
12088
|
var content = value[2];
|
|
11874
12089
|
return content;
|
|
11875
12090
|
});
|
|
11876
|
-
var CivetPrologue$1 = $T($S($EXPECT($
|
|
12091
|
+
var CivetPrologue$1 = $T($S($EXPECT($R49, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
|
|
11877
12092
|
var content = value[2];
|
|
11878
12093
|
return content;
|
|
11879
12094
|
});
|
|
@@ -11895,7 +12110,7 @@ ${input.slice(result.pos)}
|
|
|
11895
12110
|
return result;
|
|
11896
12111
|
}
|
|
11897
12112
|
}
|
|
11898
|
-
var CivetPrologueContent$0 = $TS($S($EXPECT($L159, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($
|
|
12113
|
+
var CivetPrologueContent$0 = $TS($S($EXPECT($L159, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R50, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
|
|
11899
12114
|
var options = $2;
|
|
11900
12115
|
return {
|
|
11901
12116
|
type: "CivetPrologue",
|
|
@@ -11921,7 +12136,7 @@ ${input.slice(result.pos)}
|
|
|
11921
12136
|
return result;
|
|
11922
12137
|
}
|
|
11923
12138
|
}
|
|
11924
|
-
var CivetOption$0 = $TR($EXPECT($
|
|
12139
|
+
var CivetOption$0 = $TR($EXPECT($R51, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
11925
12140
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
11926
12141
|
if (l)
|
|
11927
12142
|
return l.toUpperCase();
|
|
@@ -11953,7 +12168,7 @@ ${input.slice(result.pos)}
|
|
|
11953
12168
|
return result;
|
|
11954
12169
|
}
|
|
11955
12170
|
}
|
|
11956
|
-
var UnknownPrologue$0 = $S($R$0($EXPECT($
|
|
12171
|
+
var UnknownPrologue$0 = $S($R$0($EXPECT($R49, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
|
|
11957
12172
|
function UnknownPrologue(state) {
|
|
11958
12173
|
if (state.events) {
|
|
11959
12174
|
const result = state.events.enter?.("UnknownPrologue", state);
|
|
@@ -12011,7 +12226,7 @@ ${input.slice(result.pos)}
|
|
|
12011
12226
|
return result;
|
|
12012
12227
|
}
|
|
12013
12228
|
}
|
|
12014
|
-
var EOL$0 = $TR($EXPECT($
|
|
12229
|
+
var EOL$0 = $TR($EXPECT($R52, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
12015
12230
|
return { $loc, token: $0 };
|
|
12016
12231
|
});
|
|
12017
12232
|
function EOL(state) {
|
|
@@ -12638,6 +12853,7 @@ ${input.slice(result.pos)}
|
|
|
12638
12853
|
}
|
|
12639
12854
|
module2.config = parse2.config = {
|
|
12640
12855
|
autoVar: false,
|
|
12856
|
+
autoLet: false,
|
|
12641
12857
|
coffeeBinaryExistential: false,
|
|
12642
12858
|
coffeeBooleans: false,
|
|
12643
12859
|
coffeeClasses: false,
|
|
@@ -12762,6 +12978,55 @@ ${input.slice(result.pos)}
|
|
|
12762
12978
|
Object.assign(module2.config, directive.config);
|
|
12763
12979
|
}
|
|
12764
12980
|
});
|
|
12981
|
+
module2.processUnaryExpression = (pre, exp, post) => {
|
|
12982
|
+
if (post?.token === "?") {
|
|
12983
|
+
post = {
|
|
12984
|
+
$loc: post.$loc,
|
|
12985
|
+
token: " != null"
|
|
12986
|
+
};
|
|
12987
|
+
switch (exp.type) {
|
|
12988
|
+
case "Identifier":
|
|
12989
|
+
case "Literal":
|
|
12990
|
+
return {
|
|
12991
|
+
...exp,
|
|
12992
|
+
children: [...pre, ...exp.children, post]
|
|
12993
|
+
};
|
|
12994
|
+
default:
|
|
12995
|
+
return {
|
|
12996
|
+
type: "ParenthesizedExpression",
|
|
12997
|
+
children: ["(", ...pre, "(", exp, ")", post, ")"]
|
|
12998
|
+
};
|
|
12999
|
+
}
|
|
13000
|
+
}
|
|
13001
|
+
if (exp.type === "Literal") {
|
|
13002
|
+
if (pre.length === 1 && pre[0].token === "-") {
|
|
13003
|
+
const children = [pre[0], ...exp.children];
|
|
13004
|
+
if (post)
|
|
13005
|
+
exp.children.push(post);
|
|
13006
|
+
return {
|
|
13007
|
+
type: "Literal",
|
|
13008
|
+
children,
|
|
13009
|
+
raw: `-${exp.raw}`
|
|
13010
|
+
};
|
|
13011
|
+
}
|
|
13012
|
+
}
|
|
13013
|
+
if (exp.children) {
|
|
13014
|
+
const children = [...pre, ...exp.children];
|
|
13015
|
+
if (post)
|
|
13016
|
+
children.push(post);
|
|
13017
|
+
return Object.assign({}, exp, { children });
|
|
13018
|
+
} else if (Array.isArray(exp)) {
|
|
13019
|
+
const children = [...pre, ...exp];
|
|
13020
|
+
if (post)
|
|
13021
|
+
children.push(post);
|
|
13022
|
+
return { children };
|
|
13023
|
+
} else {
|
|
13024
|
+
const children = [...pre, exp];
|
|
13025
|
+
if (post)
|
|
13026
|
+
children.push(post);
|
|
13027
|
+
return { children };
|
|
13028
|
+
}
|
|
13029
|
+
};
|
|
12765
13030
|
module2.expressionizeIfClause = function(clause, b, e) {
|
|
12766
13031
|
const children = clause.children.slice(1);
|
|
12767
13032
|
children.push("?", b);
|
|
@@ -12995,6 +13260,12 @@ ${input.slice(result.pos)}
|
|
|
12995
13260
|
if (Array.isArray(node))
|
|
12996
13261
|
return node.every(module2.isWhitespaceOrEmpty);
|
|
12997
13262
|
};
|
|
13263
|
+
module2.isTemplateLiteral = function(node) {
|
|
13264
|
+
let s = node;
|
|
13265
|
+
while (s && s[0] && !s.token)
|
|
13266
|
+
s = s[0];
|
|
13267
|
+
return s.token?.startsWith?.("`");
|
|
13268
|
+
};
|
|
12998
13269
|
module2.processBinaryOpExpression = function($02) {
|
|
12999
13270
|
const expandedOps = module2.expandChainedComparisons($02);
|
|
13000
13271
|
let i = 2;
|
|
@@ -13420,6 +13691,9 @@ ${input.slice(result.pos)}
|
|
|
13420
13691
|
if (module2.config.autoVar) {
|
|
13421
13692
|
createVarDecs(statements, []);
|
|
13422
13693
|
}
|
|
13694
|
+
if (module2.config.autoLet) {
|
|
13695
|
+
createLetDecs(statements, []);
|
|
13696
|
+
}
|
|
13423
13697
|
populateRefs(statements);
|
|
13424
13698
|
adjustAtBindings(statements);
|
|
13425
13699
|
};
|
|
@@ -13518,6 +13792,52 @@ ${input.slice(result.pos)}
|
|
|
13518
13792
|
statements.unshift([indent, "var ", varIds.join(", "), "\n"]);
|
|
13519
13793
|
}
|
|
13520
13794
|
}
|
|
13795
|
+
function createLetDecs(statements, scopes) {
|
|
13796
|
+
function hasDec(name) {
|
|
13797
|
+
return scopes.some((s) => s.has(name));
|
|
13798
|
+
}
|
|
13799
|
+
function insertBeforeAssignment(assignment, content) {
|
|
13800
|
+
if (assignment.children && assignment.children.length) {
|
|
13801
|
+
let indent = assignment.children[0][0][0];
|
|
13802
|
+
if (Array.isArray(indent))
|
|
13803
|
+
indent = indent[indent.length - 1];
|
|
13804
|
+
assignment.children.unshift([indent, ...content]);
|
|
13805
|
+
}
|
|
13806
|
+
}
|
|
13807
|
+
let currentScope = /* @__PURE__ */ new Set();
|
|
13808
|
+
scopes.push(currentScope);
|
|
13809
|
+
const fnNodes = gatherNodes(statements, (s) => s.type === "FunctionExpression");
|
|
13810
|
+
const forNodes = gatherNodes(statements, (s) => s.type === "ForStatement");
|
|
13811
|
+
const nodes = gatherNodes(statements, (s) => s.type === "BlockStatement" || s.type === "AssignmentExpression");
|
|
13812
|
+
for (const node of nodes) {
|
|
13813
|
+
if (node.type == "AssignmentExpression") {
|
|
13814
|
+
let undeclaredIdentifiers = node.names.filter((name) => !hasDec(name));
|
|
13815
|
+
if (node.children.length)
|
|
13816
|
+
createLetDecs(node.children, scopes);
|
|
13817
|
+
undeclaredIdentifiers.forEach((name) => currentScope.add(name));
|
|
13818
|
+
if (node.names.length === undeclaredIdentifiers.length) {
|
|
13819
|
+
insertBeforeAssignment(node, ["let "]);
|
|
13820
|
+
} else if (undeclaredIdentifiers.length > 0) {
|
|
13821
|
+
insertBeforeAssignment(node, ["let ", undeclaredIdentifiers.join(", "), "\n"]);
|
|
13822
|
+
}
|
|
13823
|
+
} else {
|
|
13824
|
+
let block = node;
|
|
13825
|
+
let fnNode = fnNodes.find((fnNode2) => fnNode2.block === block);
|
|
13826
|
+
let forNode = forNodes.find((forNode2) => forNode2.block === block);
|
|
13827
|
+
if (fnNode != null) {
|
|
13828
|
+
scopes.push(new Set(fnNode.parameters.names));
|
|
13829
|
+
createLetDecs(block.expressions, scopes);
|
|
13830
|
+
scopes.pop();
|
|
13831
|
+
} else if (forNode != null) {
|
|
13832
|
+
scopes.push(new Set(forNode.declaration.names));
|
|
13833
|
+
createLetDecs(block.expressions, scopes);
|
|
13834
|
+
scopes.pop();
|
|
13835
|
+
} else
|
|
13836
|
+
createLetDecs(block.expressions, scopes);
|
|
13837
|
+
}
|
|
13838
|
+
}
|
|
13839
|
+
scopes.pop();
|
|
13840
|
+
}
|
|
13521
13841
|
function gatherBindingCode(statements) {
|
|
13522
13842
|
const thisAssignments = [];
|
|
13523
13843
|
const splices = [];
|
|
@@ -13557,7 +13877,7 @@ ${input.slice(result.pos)}
|
|
|
13557
13877
|
return result;
|
|
13558
13878
|
}
|
|
13559
13879
|
}
|
|
13560
|
-
var Indent$0 = $TR($EXPECT($
|
|
13880
|
+
var Indent$0 = $TR($EXPECT($R53, fail, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13561
13881
|
let level;
|
|
13562
13882
|
if (module2.config.tab) {
|
|
13563
13883
|
const tabs = $0.match(/\t/g);
|