@danielx/civet 0.6.85 → 0.6.86
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/browser.js +116 -58
- package/dist/main.js +116 -58
- package/dist/main.mjs +116 -58
- package/package.json +1 -1
package/dist/browser.js
CHANGED
|
@@ -3142,6 +3142,7 @@ var Civet = (() => {
|
|
|
3142
3142
|
__export(lib_exports, {
|
|
3143
3143
|
addPostfixStatement: () => addPostfixStatement,
|
|
3144
3144
|
adjustBindingElements: () => adjustBindingElements,
|
|
3145
|
+
adjustIndexAccess: () => adjustIndexAccess,
|
|
3145
3146
|
attachPostfixStatementAsExpression: () => attachPostfixStatementAsExpression,
|
|
3146
3147
|
blockWithPrefix: () => blockWithPrefix,
|
|
3147
3148
|
convertObjectToJSXAttributes: () => convertObjectToJSXAttributes,
|
|
@@ -3205,6 +3206,18 @@ var Civet = (() => {
|
|
|
3205
3206
|
}
|
|
3206
3207
|
return post;
|
|
3207
3208
|
}
|
|
3209
|
+
function adjustIndexAccess(dot) {
|
|
3210
|
+
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
3211
|
+
dot = [...dot, "["];
|
|
3212
|
+
} else {
|
|
3213
|
+
dot = replaceNodes(
|
|
3214
|
+
deepCopy(dot),
|
|
3215
|
+
(node) => node.token === ".",
|
|
3216
|
+
(node) => ({ ...node, token: "[" })
|
|
3217
|
+
);
|
|
3218
|
+
}
|
|
3219
|
+
return dot;
|
|
3220
|
+
}
|
|
3208
3221
|
function negateCondition(condition) {
|
|
3209
3222
|
let { expression } = condition;
|
|
3210
3223
|
const children = condition.children.slice();
|
|
@@ -3911,6 +3924,40 @@ var Civet = (() => {
|
|
|
3911
3924
|
return;
|
|
3912
3925
|
});
|
|
3913
3926
|
}
|
|
3927
|
+
function processNegativeIndexAccess(statements) {
|
|
3928
|
+
gatherRecursiveAll(statements, (n) => n.type === "NegativeIndex").forEach((exp) => {
|
|
3929
|
+
const { parent } = exp;
|
|
3930
|
+
const index = parent.children.indexOf(exp);
|
|
3931
|
+
let ref, subexp;
|
|
3932
|
+
if (index === 1) {
|
|
3933
|
+
const child = parent.children[0];
|
|
3934
|
+
ref = maybeRef(child);
|
|
3935
|
+
if (ref !== child) {
|
|
3936
|
+
subexp = parent.children.splice(0, 1);
|
|
3937
|
+
}
|
|
3938
|
+
} else if (index > 1) {
|
|
3939
|
+
ref = makeRef();
|
|
3940
|
+
subexp = parent.children.splice(0, index);
|
|
3941
|
+
} else {
|
|
3942
|
+
throw new Error("Invalid parse tree for negative index access");
|
|
3943
|
+
}
|
|
3944
|
+
if (subexp) {
|
|
3945
|
+
exp.hoistDec = {
|
|
3946
|
+
type: "Declaration",
|
|
3947
|
+
children: ["let ", ref],
|
|
3948
|
+
names: []
|
|
3949
|
+
};
|
|
3950
|
+
parent.children.unshift(makeLeftHandSideExpression({
|
|
3951
|
+
type: "AssignmentExpression",
|
|
3952
|
+
children: [ref, " = ", subexp]
|
|
3953
|
+
}));
|
|
3954
|
+
}
|
|
3955
|
+
return exp.len.children = [
|
|
3956
|
+
ref,
|
|
3957
|
+
".length"
|
|
3958
|
+
];
|
|
3959
|
+
});
|
|
3960
|
+
}
|
|
3914
3961
|
function processProgram(root, config, m, ReservedWord) {
|
|
3915
3962
|
assert.equal(m.forbidBracedApplication.length, 1, "forbidBracedApplication");
|
|
3916
3963
|
assert.equal(m.forbidClassImplicitCall.length, 1, "forbidClassImplicitCall");
|
|
@@ -3920,6 +3967,7 @@ var Civet = (() => {
|
|
|
3920
3967
|
assert.equal(m.JSXTagStack.length, 1, "JSXTagStack");
|
|
3921
3968
|
addParentPointers(root);
|
|
3922
3969
|
const { expressions: statements } = root;
|
|
3970
|
+
processNegativeIndexAccess(statements);
|
|
3923
3971
|
processTypes(statements);
|
|
3924
3972
|
processDeclarationConditions(statements, m.getRef);
|
|
3925
3973
|
processPipelineExpressions(statements);
|
|
@@ -5600,7 +5648,7 @@ ${input.slice(result.pos)}
|
|
|
5600
5648
|
var $R13 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
|
|
5601
5649
|
var $R14 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
5602
5650
|
var $R15 = $R(new RegExp("(?=\\[)", "suy"));
|
|
5603
|
-
var $R16 = $R(new RegExp("[!+-]", "suy"));
|
|
5651
|
+
var $R16 = $R(new RegExp("[!+-]?", "suy"));
|
|
5604
5652
|
var $R17 = $R(new RegExp("[+-]", "suy"));
|
|
5605
5653
|
var $R18 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
|
|
5606
5654
|
var $R19 = $R(new RegExp("!\\^\\^?", "suy"));
|
|
@@ -5657,24 +5705,25 @@ ${input.slice(result.pos)}
|
|
|
5657
5705
|
var $R70 = $R(new RegExp("\\s", "suy"));
|
|
5658
5706
|
var $R71 = $R(new RegExp("(?=[<])", "suy"));
|
|
5659
5707
|
var $R72 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
5660
|
-
var $R73 = $R(new RegExp("[
|
|
5661
|
-
var $R74 = $R(new RegExp("
|
|
5662
|
-
var $R75 = $R(new RegExp(
|
|
5663
|
-
var $R76 = $R(new RegExp("[
|
|
5664
|
-
var $R77 = $R(new RegExp("[
|
|
5665
|
-
var $R78 = $R(new RegExp("
|
|
5666
|
-
var $R79 = $R(new RegExp("[
|
|
5667
|
-
var $R80 = $R(new RegExp("[
|
|
5668
|
-
var $R81 = $R(new RegExp("
|
|
5669
|
-
var $R82 = $R(new RegExp("
|
|
5670
|
-
var $R83 = $R(new RegExp("[\\
|
|
5671
|
-
var $R84 = $R(new RegExp("[
|
|
5672
|
-
var $R85 = $R(new RegExp("[\\
|
|
5673
|
-
var $R86 = $R(new RegExp("
|
|
5674
|
-
var $R87 = $R(new RegExp("
|
|
5675
|
-
var $R88 = $R(new RegExp("
|
|
5676
|
-
var $R89 = $R(new RegExp("\\r\\n
|
|
5677
|
-
var $R90 = $R(new RegExp("
|
|
5708
|
+
var $R73 = $R(new RegExp("[!+-]", "suy"));
|
|
5709
|
+
var $R74 = $R(new RegExp("[\\s>]|\\/>", "suy"));
|
|
5710
|
+
var $R75 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
|
|
5711
|
+
var $R76 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
|
|
5712
|
+
var $R77 = $R(new RegExp("[<>]", "suy"));
|
|
5713
|
+
var $R78 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
|
|
5714
|
+
var $R79 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
|
|
5715
|
+
var $R80 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
|
|
5716
|
+
var $R81 = $R(new RegExp("[+-]?", "suy"));
|
|
5717
|
+
var $R82 = $R(new RegExp("(?=if|unless)", "suy"));
|
|
5718
|
+
var $R83 = $R(new RegExp("#![^\\r\\n]*", "suy"));
|
|
5719
|
+
var $R84 = $R(new RegExp("[\\t ]*", "suy"));
|
|
5720
|
+
var $R85 = $R(new RegExp("[ \\t]*", "suy"));
|
|
5721
|
+
var $R86 = $R(new RegExp("[\\s]*", "suy"));
|
|
5722
|
+
var $R87 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
|
|
5723
|
+
var $R88 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
|
|
5724
|
+
var $R89 = $R(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
|
|
5725
|
+
var $R90 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
5726
|
+
var $R91 = $R(new RegExp("[^]*", "suy"));
|
|
5678
5727
|
var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
5679
5728
|
var statements = $4;
|
|
5680
5729
|
processProgram({
|
|
@@ -7125,19 +7174,10 @@ ${input.slice(result.pos)}
|
|
|
7125
7174
|
var PropertyAccess$0 = $TS($S(AccessStart, $C(TemplateLiteral, StringLiteral, IntegerLiteral)), function($skip, $loc, $0, $1, $2) {
|
|
7126
7175
|
var dot = $1;
|
|
7127
7176
|
var literal = $2;
|
|
7128
|
-
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
7129
|
-
dot = [...dot, "["];
|
|
7130
|
-
} else {
|
|
7131
|
-
dot = replaceNodes(
|
|
7132
|
-
deepCopy(dot),
|
|
7133
|
-
(node) => node.token === ".",
|
|
7134
|
-
(node) => ({ ...node, token: "[" })
|
|
7135
|
-
);
|
|
7136
|
-
}
|
|
7137
7177
|
return {
|
|
7138
7178
|
type: "Index",
|
|
7139
7179
|
children: [
|
|
7140
|
-
dot,
|
|
7180
|
+
adjustIndexAccess(dot),
|
|
7141
7181
|
literal,
|
|
7142
7182
|
"]"
|
|
7143
7183
|
]
|
|
@@ -7147,11 +7187,20 @@ ${input.slice(result.pos)}
|
|
|
7147
7187
|
var dot = $1;
|
|
7148
7188
|
var neg = $2;
|
|
7149
7189
|
var num = $3;
|
|
7150
|
-
|
|
7151
|
-
|
|
7152
|
-
|
|
7153
|
-
|
|
7190
|
+
const len = {
|
|
7191
|
+
children: []
|
|
7192
|
+
}, children = [
|
|
7193
|
+
adjustIndexAccess(dot),
|
|
7194
|
+
len,
|
|
7195
|
+
neg,
|
|
7196
|
+
num,
|
|
7197
|
+
"]"
|
|
7154
7198
|
];
|
|
7199
|
+
return {
|
|
7200
|
+
type: "NegativeIndex",
|
|
7201
|
+
children,
|
|
7202
|
+
len
|
|
7203
|
+
};
|
|
7155
7204
|
});
|
|
7156
7205
|
var PropertyAccess$2 = $TS($S(AccessStart, $Q(InlineComment), $C(IdentifierName, PrivateIdentifier, LengthShorthand)), function($skip, $loc, $0, $1, $2, $3) {
|
|
7157
7206
|
var access = $1;
|
|
@@ -9096,17 +9145,26 @@ ${input.slice(result.pos)}
|
|
|
9096
9145
|
children: [ws, ...prop.children]
|
|
9097
9146
|
};
|
|
9098
9147
|
});
|
|
9099
|
-
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]
|
|
9148
|
+
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]?/")), PropertyName, $Y(ObjectPropertyDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9100
9149
|
var ws = $1;
|
|
9101
9150
|
var toggle = $2;
|
|
9102
9151
|
var id = $3;
|
|
9103
|
-
|
|
9152
|
+
if (toggle) {
|
|
9153
|
+
const value = toggle === "+" ? "true" : "false";
|
|
9154
|
+
return {
|
|
9155
|
+
type: "Property",
|
|
9156
|
+
children: [ws, id, ": ", value],
|
|
9157
|
+
name: id,
|
|
9158
|
+
names: id.names,
|
|
9159
|
+
value
|
|
9160
|
+
};
|
|
9161
|
+
}
|
|
9104
9162
|
return {
|
|
9105
9163
|
type: "Property",
|
|
9106
|
-
children: [ws, id
|
|
9164
|
+
children: [ws, id],
|
|
9107
9165
|
name: id,
|
|
9108
9166
|
names: id.names,
|
|
9109
|
-
value
|
|
9167
|
+
value: id
|
|
9110
9168
|
};
|
|
9111
9169
|
});
|
|
9112
9170
|
var PropertyDefinition$2 = $TS($S($E(_), MethodDefinition), function($skip, $loc, $0, $1, $2) {
|
|
@@ -12983,7 +13041,7 @@ ${input.slice(result.pos)}
|
|
|
12983
13041
|
class: $2
|
|
12984
13042
|
};
|
|
12985
13043
|
});
|
|
12986
|
-
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($
|
|
13044
|
+
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R73, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
|
|
12987
13045
|
var toggle = $1;
|
|
12988
13046
|
var id = $2;
|
|
12989
13047
|
const value = toggle === "+" ? "true" : "false";
|
|
@@ -12993,11 +13051,11 @@ ${input.slice(result.pos)}
|
|
|
12993
13051
|
function JSXAttribute(ctx, state) {
|
|
12994
13052
|
return $EVENT_C(ctx, state, "JSXAttribute", JSXAttribute$$);
|
|
12995
13053
|
}
|
|
12996
|
-
var JSXAttributeSpace$0 = $R$0($EXPECT($
|
|
13054
|
+
var JSXAttributeSpace$0 = $R$0($EXPECT($R74, "JSXAttributeSpace /[\\s>]|\\/>/"));
|
|
12997
13055
|
function JSXAttributeSpace(ctx, state) {
|
|
12998
13056
|
return $EVENT(ctx, state, "JSXAttributeSpace", JSXAttributeSpace$0);
|
|
12999
13057
|
}
|
|
13000
|
-
var JSXShorthandString$0 = $TR($EXPECT($
|
|
13058
|
+
var JSXShorthandString$0 = $TR($EXPECT($R75, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13001
13059
|
return quoteString($0);
|
|
13002
13060
|
});
|
|
13003
13061
|
var JSXShorthandString$1 = $TS($S(TemplateLiteral), function($skip, $loc, $0, $1) {
|
|
@@ -13031,7 +13089,7 @@ ${input.slice(result.pos)}
|
|
|
13031
13089
|
}
|
|
13032
13090
|
return [open, value, close];
|
|
13033
13091
|
});
|
|
13034
|
-
var JSXAttributeValue$4 = $R$0($EXPECT($
|
|
13092
|
+
var JSXAttributeValue$4 = $R$0($EXPECT($R76, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
|
|
13035
13093
|
var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
|
|
13036
13094
|
function JSXAttributeValue(ctx, state) {
|
|
13037
13095
|
return $EVENT_C(ctx, state, "JSXAttributeValue", JSXAttributeValue$$);
|
|
@@ -13044,7 +13102,7 @@ ${input.slice(result.pos)}
|
|
|
13044
13102
|
function InlineJSXAttributeValue(ctx, state) {
|
|
13045
13103
|
return $EVENT(ctx, state, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
|
|
13046
13104
|
}
|
|
13047
|
-
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($
|
|
13105
|
+
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R77, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
|
|
13048
13106
|
var op = $2;
|
|
13049
13107
|
var rhs = $3;
|
|
13050
13108
|
return [[], op, [], rhs];
|
|
@@ -13061,7 +13119,7 @@ ${input.slice(result.pos)}
|
|
|
13061
13119
|
function InlineJSXUnaryExpression(ctx, state) {
|
|
13062
13120
|
return $EVENT(ctx, state, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
|
|
13063
13121
|
}
|
|
13064
|
-
var InlineJSXUnaryOp$0 = $TR($EXPECT($
|
|
13122
|
+
var InlineJSXUnaryOp$0 = $TR($EXPECT($R78, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13065
13123
|
return { $loc, token: $0 };
|
|
13066
13124
|
});
|
|
13067
13125
|
function InlineJSXUnaryOp(ctx, state) {
|
|
@@ -13277,13 +13335,13 @@ ${input.slice(result.pos)}
|
|
|
13277
13335
|
function JSXComment(ctx, state) {
|
|
13278
13336
|
return $EVENT(ctx, state, "JSXComment", JSXComment$0);
|
|
13279
13337
|
}
|
|
13280
|
-
var JSXCommentContent$0 = $TR($EXPECT($
|
|
13338
|
+
var JSXCommentContent$0 = $TR($EXPECT($R79, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13281
13339
|
return { $loc, token: $0.replace(/\*\//g, "* /") };
|
|
13282
13340
|
});
|
|
13283
13341
|
function JSXCommentContent(ctx, state) {
|
|
13284
13342
|
return $EVENT(ctx, state, "JSXCommentContent", JSXCommentContent$0);
|
|
13285
13343
|
}
|
|
13286
|
-
var JSXText$0 = $TR($EXPECT($
|
|
13344
|
+
var JSXText$0 = $TR($EXPECT($R80, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13287
13345
|
return {
|
|
13288
13346
|
type: "JSXText",
|
|
13289
13347
|
token: $0,
|
|
@@ -13704,7 +13762,7 @@ ${input.slice(result.pos)}
|
|
|
13704
13762
|
function TypeProperty(ctx, state) {
|
|
13705
13763
|
return $EVENT(ctx, state, "TypeProperty", TypeProperty$0);
|
|
13706
13764
|
}
|
|
13707
|
-
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($
|
|
13765
|
+
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R81, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R17, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
|
|
13708
13766
|
function TypeIndexSignature(ctx, state) {
|
|
13709
13767
|
return $EVENT(ctx, state, "TypeIndexSignature", TypeIndexSignature$0);
|
|
13710
13768
|
}
|
|
@@ -13998,7 +14056,7 @@ ${input.slice(result.pos)}
|
|
|
13998
14056
|
function NestedType(ctx, state) {
|
|
13999
14057
|
return $EVENT(ctx, state, "NestedType", NestedType$0);
|
|
14000
14058
|
}
|
|
14001
|
-
var TypeConditional$0 = $TS($S($E(_), $EXPECT($
|
|
14059
|
+
var TypeConditional$0 = $TS($S($E(_), $EXPECT($R82, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
|
|
14002
14060
|
return [$1, expressionizeTypeIf($3)];
|
|
14003
14061
|
});
|
|
14004
14062
|
var TypeConditional$1 = $TS($S(TypeCondition, NotDedented, QuestionMark, Type, __, Colon, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
@@ -14191,15 +14249,15 @@ ${input.slice(result.pos)}
|
|
|
14191
14249
|
function ThisType(ctx, state) {
|
|
14192
14250
|
return $EVENT(ctx, state, "ThisType", ThisType$0);
|
|
14193
14251
|
}
|
|
14194
|
-
var Shebang$0 = $S($R$0($EXPECT($
|
|
14252
|
+
var Shebang$0 = $S($R$0($EXPECT($R83, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
14195
14253
|
function Shebang(ctx, state) {
|
|
14196
14254
|
return $EVENT(ctx, state, "Shebang", Shebang$0);
|
|
14197
14255
|
}
|
|
14198
|
-
var CivetPrologue$0 = $T($S($EXPECT($
|
|
14256
|
+
var CivetPrologue$0 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14199
14257
|
var content = value[2];
|
|
14200
14258
|
return content;
|
|
14201
14259
|
});
|
|
14202
|
-
var CivetPrologue$1 = $T($S($EXPECT($
|
|
14260
|
+
var CivetPrologue$1 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14203
14261
|
var content = value[2];
|
|
14204
14262
|
return content;
|
|
14205
14263
|
});
|
|
@@ -14207,7 +14265,7 @@ ${input.slice(result.pos)}
|
|
|
14207
14265
|
function CivetPrologue(ctx, state) {
|
|
14208
14266
|
return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
|
|
14209
14267
|
}
|
|
14210
|
-
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($
|
|
14268
|
+
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R86, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
14211
14269
|
var options = $3;
|
|
14212
14270
|
return {
|
|
14213
14271
|
type: "CivetPrologue",
|
|
@@ -14218,7 +14276,7 @@ ${input.slice(result.pos)}
|
|
|
14218
14276
|
function CivetPrologueContent(ctx, state) {
|
|
14219
14277
|
return $EVENT(ctx, state, "CivetPrologueContent", CivetPrologueContent$0);
|
|
14220
14278
|
}
|
|
14221
|
-
var CivetOption$0 = $TR($EXPECT($
|
|
14279
|
+
var CivetOption$0 = $TR($EXPECT($R87, "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) {
|
|
14222
14280
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
14223
14281
|
if (l)
|
|
14224
14282
|
return l.toUpperCase();
|
|
@@ -14235,11 +14293,11 @@ ${input.slice(result.pos)}
|
|
|
14235
14293
|
function CivetOption(ctx, state) {
|
|
14236
14294
|
return $EVENT(ctx, state, "CivetOption", CivetOption$0);
|
|
14237
14295
|
}
|
|
14238
|
-
var UnknownPrologue$0 = $S($R$0($EXPECT($
|
|
14296
|
+
var UnknownPrologue$0 = $S($R$0($EXPECT($R84, "UnknownPrologue /[\\t ]*/")), StringLiteral, $TEXT(SimpleStatementDelimiter), EOS);
|
|
14239
14297
|
function UnknownPrologue(ctx, state) {
|
|
14240
14298
|
return $EVENT(ctx, state, "UnknownPrologue", UnknownPrologue$0);
|
|
14241
14299
|
}
|
|
14242
|
-
var TripleSlashDirective$0 = $S($R$0($EXPECT($
|
|
14300
|
+
var TripleSlashDirective$0 = $S($R$0($EXPECT($R88, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
|
|
14243
14301
|
function TripleSlashDirective(ctx, state) {
|
|
14244
14302
|
return $EVENT(ctx, state, "TripleSlashDirective", TripleSlashDirective$0);
|
|
14245
14303
|
}
|
|
@@ -14255,13 +14313,13 @@ ${input.slice(result.pos)}
|
|
|
14255
14313
|
function PrologueString(ctx, state) {
|
|
14256
14314
|
return $EVENT_C(ctx, state, "PrologueString", PrologueString$$);
|
|
14257
14315
|
}
|
|
14258
|
-
var EOS$0 = $T($S($EXPECT($
|
|
14316
|
+
var EOS$0 = $T($S($EXPECT($R89, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), $P(RestOfLine)), function(value) {
|
|
14259
14317
|
return value[1];
|
|
14260
14318
|
});
|
|
14261
14319
|
function EOS(ctx, state) {
|
|
14262
14320
|
return $EVENT(ctx, state, "EOS", EOS$0);
|
|
14263
14321
|
}
|
|
14264
|
-
var EOL$0 = $TR($EXPECT($
|
|
14322
|
+
var EOL$0 = $TR($EXPECT($R90, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14265
14323
|
return { $loc, token: $0 };
|
|
14266
14324
|
});
|
|
14267
14325
|
function EOL(ctx, state) {
|
|
@@ -14833,11 +14891,11 @@ ${input.slice(result.pos)}
|
|
|
14833
14891
|
function Prologue(ctx, state) {
|
|
14834
14892
|
return $EVENT(ctx, state, "Prologue", Prologue$0);
|
|
14835
14893
|
}
|
|
14836
|
-
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($
|
|
14894
|
+
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($R91, "ProloguePrefix /[^]*/")));
|
|
14837
14895
|
function ProloguePrefix(ctx, state) {
|
|
14838
14896
|
return $EVENT(ctx, state, "ProloguePrefix", ProloguePrefix$0);
|
|
14839
14897
|
}
|
|
14840
|
-
var Indent$0 = $TR($EXPECT($
|
|
14898
|
+
var Indent$0 = $TR($EXPECT($R85, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14841
14899
|
const level = getIndentLevel($0, module.config.tab);
|
|
14842
14900
|
return {
|
|
14843
14901
|
$loc,
|
package/dist/main.js
CHANGED
|
@@ -3134,6 +3134,7 @@ var lib_exports = {};
|
|
|
3134
3134
|
__export(lib_exports, {
|
|
3135
3135
|
addPostfixStatement: () => addPostfixStatement,
|
|
3136
3136
|
adjustBindingElements: () => adjustBindingElements,
|
|
3137
|
+
adjustIndexAccess: () => adjustIndexAccess,
|
|
3137
3138
|
attachPostfixStatementAsExpression: () => attachPostfixStatementAsExpression,
|
|
3138
3139
|
blockWithPrefix: () => blockWithPrefix,
|
|
3139
3140
|
convertObjectToJSXAttributes: () => convertObjectToJSXAttributes,
|
|
@@ -3197,6 +3198,18 @@ function addPostfixStatement(statement, ws, post) {
|
|
|
3197
3198
|
}
|
|
3198
3199
|
return post;
|
|
3199
3200
|
}
|
|
3201
|
+
function adjustIndexAccess(dot) {
|
|
3202
|
+
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
3203
|
+
dot = [...dot, "["];
|
|
3204
|
+
} else {
|
|
3205
|
+
dot = replaceNodes(
|
|
3206
|
+
deepCopy(dot),
|
|
3207
|
+
(node) => node.token === ".",
|
|
3208
|
+
(node) => ({ ...node, token: "[" })
|
|
3209
|
+
);
|
|
3210
|
+
}
|
|
3211
|
+
return dot;
|
|
3212
|
+
}
|
|
3200
3213
|
function negateCondition(condition) {
|
|
3201
3214
|
let { expression } = condition;
|
|
3202
3215
|
const children = condition.children.slice();
|
|
@@ -3903,6 +3916,40 @@ function processStatementExpressions(statements) {
|
|
|
3903
3916
|
return;
|
|
3904
3917
|
});
|
|
3905
3918
|
}
|
|
3919
|
+
function processNegativeIndexAccess(statements) {
|
|
3920
|
+
gatherRecursiveAll(statements, (n) => n.type === "NegativeIndex").forEach((exp) => {
|
|
3921
|
+
const { parent } = exp;
|
|
3922
|
+
const index = parent.children.indexOf(exp);
|
|
3923
|
+
let ref, subexp;
|
|
3924
|
+
if (index === 1) {
|
|
3925
|
+
const child = parent.children[0];
|
|
3926
|
+
ref = maybeRef(child);
|
|
3927
|
+
if (ref !== child) {
|
|
3928
|
+
subexp = parent.children.splice(0, 1);
|
|
3929
|
+
}
|
|
3930
|
+
} else if (index > 1) {
|
|
3931
|
+
ref = makeRef();
|
|
3932
|
+
subexp = parent.children.splice(0, index);
|
|
3933
|
+
} else {
|
|
3934
|
+
throw new Error("Invalid parse tree for negative index access");
|
|
3935
|
+
}
|
|
3936
|
+
if (subexp) {
|
|
3937
|
+
exp.hoistDec = {
|
|
3938
|
+
type: "Declaration",
|
|
3939
|
+
children: ["let ", ref],
|
|
3940
|
+
names: []
|
|
3941
|
+
};
|
|
3942
|
+
parent.children.unshift(makeLeftHandSideExpression({
|
|
3943
|
+
type: "AssignmentExpression",
|
|
3944
|
+
children: [ref, " = ", subexp]
|
|
3945
|
+
}));
|
|
3946
|
+
}
|
|
3947
|
+
return exp.len.children = [
|
|
3948
|
+
ref,
|
|
3949
|
+
".length"
|
|
3950
|
+
];
|
|
3951
|
+
});
|
|
3952
|
+
}
|
|
3906
3953
|
function processProgram(root, config, m, ReservedWord) {
|
|
3907
3954
|
assert.equal(m.forbidBracedApplication.length, 1, "forbidBracedApplication");
|
|
3908
3955
|
assert.equal(m.forbidClassImplicitCall.length, 1, "forbidClassImplicitCall");
|
|
@@ -3912,6 +3959,7 @@ function processProgram(root, config, m, ReservedWord) {
|
|
|
3912
3959
|
assert.equal(m.JSXTagStack.length, 1, "JSXTagStack");
|
|
3913
3960
|
addParentPointers(root);
|
|
3914
3961
|
const { expressions: statements } = root;
|
|
3962
|
+
processNegativeIndexAccess(statements);
|
|
3915
3963
|
processTypes(statements);
|
|
3916
3964
|
processDeclarationConditions(statements, m.getRef);
|
|
3917
3965
|
processPipelineExpressions(statements);
|
|
@@ -5592,7 +5640,7 @@ var require_parser = __commonJS({
|
|
|
5592
5640
|
var $R13 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
|
|
5593
5641
|
var $R14 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
5594
5642
|
var $R15 = $R(new RegExp("(?=\\[)", "suy"));
|
|
5595
|
-
var $R16 = $R(new RegExp("[!+-]", "suy"));
|
|
5643
|
+
var $R16 = $R(new RegExp("[!+-]?", "suy"));
|
|
5596
5644
|
var $R17 = $R(new RegExp("[+-]", "suy"));
|
|
5597
5645
|
var $R18 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
|
|
5598
5646
|
var $R19 = $R(new RegExp("!\\^\\^?", "suy"));
|
|
@@ -5649,24 +5697,25 @@ var require_parser = __commonJS({
|
|
|
5649
5697
|
var $R70 = $R(new RegExp("\\s", "suy"));
|
|
5650
5698
|
var $R71 = $R(new RegExp("(?=[<])", "suy"));
|
|
5651
5699
|
var $R72 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
5652
|
-
var $R73 = $R(new RegExp("[
|
|
5653
|
-
var $R74 = $R(new RegExp("
|
|
5654
|
-
var $R75 = $R(new RegExp(
|
|
5655
|
-
var $R76 = $R(new RegExp("[
|
|
5656
|
-
var $R77 = $R(new RegExp("[
|
|
5657
|
-
var $R78 = $R(new RegExp("
|
|
5658
|
-
var $R79 = $R(new RegExp("[
|
|
5659
|
-
var $R80 = $R(new RegExp("[
|
|
5660
|
-
var $R81 = $R(new RegExp("
|
|
5661
|
-
var $R82 = $R(new RegExp("
|
|
5662
|
-
var $R83 = $R(new RegExp("[\\
|
|
5663
|
-
var $R84 = $R(new RegExp("[
|
|
5664
|
-
var $R85 = $R(new RegExp("[\\
|
|
5665
|
-
var $R86 = $R(new RegExp("
|
|
5666
|
-
var $R87 = $R(new RegExp("
|
|
5667
|
-
var $R88 = $R(new RegExp("
|
|
5668
|
-
var $R89 = $R(new RegExp("\\r\\n
|
|
5669
|
-
var $R90 = $R(new RegExp("
|
|
5700
|
+
var $R73 = $R(new RegExp("[!+-]", "suy"));
|
|
5701
|
+
var $R74 = $R(new RegExp("[\\s>]|\\/>", "suy"));
|
|
5702
|
+
var $R75 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
|
|
5703
|
+
var $R76 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
|
|
5704
|
+
var $R77 = $R(new RegExp("[<>]", "suy"));
|
|
5705
|
+
var $R78 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
|
|
5706
|
+
var $R79 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
|
|
5707
|
+
var $R80 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
|
|
5708
|
+
var $R81 = $R(new RegExp("[+-]?", "suy"));
|
|
5709
|
+
var $R82 = $R(new RegExp("(?=if|unless)", "suy"));
|
|
5710
|
+
var $R83 = $R(new RegExp("#![^\\r\\n]*", "suy"));
|
|
5711
|
+
var $R84 = $R(new RegExp("[\\t ]*", "suy"));
|
|
5712
|
+
var $R85 = $R(new RegExp("[ \\t]*", "suy"));
|
|
5713
|
+
var $R86 = $R(new RegExp("[\\s]*", "suy"));
|
|
5714
|
+
var $R87 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
|
|
5715
|
+
var $R88 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
|
|
5716
|
+
var $R89 = $R(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
|
|
5717
|
+
var $R90 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
5718
|
+
var $R91 = $R(new RegExp("[^]*", "suy"));
|
|
5670
5719
|
var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
5671
5720
|
var statements = $4;
|
|
5672
5721
|
processProgram({
|
|
@@ -7117,19 +7166,10 @@ var require_parser = __commonJS({
|
|
|
7117
7166
|
var PropertyAccess$0 = $TS($S(AccessStart, $C(TemplateLiteral, StringLiteral, IntegerLiteral)), function($skip, $loc, $0, $1, $2) {
|
|
7118
7167
|
var dot = $1;
|
|
7119
7168
|
var literal = $2;
|
|
7120
|
-
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
7121
|
-
dot = [...dot, "["];
|
|
7122
|
-
} else {
|
|
7123
|
-
dot = replaceNodes(
|
|
7124
|
-
deepCopy(dot),
|
|
7125
|
-
(node) => node.token === ".",
|
|
7126
|
-
(node) => ({ ...node, token: "[" })
|
|
7127
|
-
);
|
|
7128
|
-
}
|
|
7129
7169
|
return {
|
|
7130
7170
|
type: "Index",
|
|
7131
7171
|
children: [
|
|
7132
|
-
dot,
|
|
7172
|
+
adjustIndexAccess(dot),
|
|
7133
7173
|
literal,
|
|
7134
7174
|
"]"
|
|
7135
7175
|
]
|
|
@@ -7139,11 +7179,20 @@ var require_parser = __commonJS({
|
|
|
7139
7179
|
var dot = $1;
|
|
7140
7180
|
var neg = $2;
|
|
7141
7181
|
var num = $3;
|
|
7142
|
-
|
|
7143
|
-
|
|
7144
|
-
|
|
7145
|
-
|
|
7182
|
+
const len = {
|
|
7183
|
+
children: []
|
|
7184
|
+
}, children = [
|
|
7185
|
+
adjustIndexAccess(dot),
|
|
7186
|
+
len,
|
|
7187
|
+
neg,
|
|
7188
|
+
num,
|
|
7189
|
+
"]"
|
|
7146
7190
|
];
|
|
7191
|
+
return {
|
|
7192
|
+
type: "NegativeIndex",
|
|
7193
|
+
children,
|
|
7194
|
+
len
|
|
7195
|
+
};
|
|
7147
7196
|
});
|
|
7148
7197
|
var PropertyAccess$2 = $TS($S(AccessStart, $Q(InlineComment), $C(IdentifierName, PrivateIdentifier, LengthShorthand)), function($skip, $loc, $0, $1, $2, $3) {
|
|
7149
7198
|
var access = $1;
|
|
@@ -9088,17 +9137,26 @@ var require_parser = __commonJS({
|
|
|
9088
9137
|
children: [ws, ...prop.children]
|
|
9089
9138
|
};
|
|
9090
9139
|
});
|
|
9091
|
-
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]
|
|
9140
|
+
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]?/")), PropertyName, $Y(ObjectPropertyDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9092
9141
|
var ws = $1;
|
|
9093
9142
|
var toggle = $2;
|
|
9094
9143
|
var id = $3;
|
|
9095
|
-
|
|
9144
|
+
if (toggle) {
|
|
9145
|
+
const value = toggle === "+" ? "true" : "false";
|
|
9146
|
+
return {
|
|
9147
|
+
type: "Property",
|
|
9148
|
+
children: [ws, id, ": ", value],
|
|
9149
|
+
name: id,
|
|
9150
|
+
names: id.names,
|
|
9151
|
+
value
|
|
9152
|
+
};
|
|
9153
|
+
}
|
|
9096
9154
|
return {
|
|
9097
9155
|
type: "Property",
|
|
9098
|
-
children: [ws, id
|
|
9156
|
+
children: [ws, id],
|
|
9099
9157
|
name: id,
|
|
9100
9158
|
names: id.names,
|
|
9101
|
-
value
|
|
9159
|
+
value: id
|
|
9102
9160
|
};
|
|
9103
9161
|
});
|
|
9104
9162
|
var PropertyDefinition$2 = $TS($S($E(_), MethodDefinition), function($skip, $loc, $0, $1, $2) {
|
|
@@ -12975,7 +13033,7 @@ var require_parser = __commonJS({
|
|
|
12975
13033
|
class: $2
|
|
12976
13034
|
};
|
|
12977
13035
|
});
|
|
12978
|
-
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($
|
|
13036
|
+
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R73, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
|
|
12979
13037
|
var toggle = $1;
|
|
12980
13038
|
var id = $2;
|
|
12981
13039
|
const value = toggle === "+" ? "true" : "false";
|
|
@@ -12985,11 +13043,11 @@ var require_parser = __commonJS({
|
|
|
12985
13043
|
function JSXAttribute(ctx, state) {
|
|
12986
13044
|
return $EVENT_C(ctx, state, "JSXAttribute", JSXAttribute$$);
|
|
12987
13045
|
}
|
|
12988
|
-
var JSXAttributeSpace$0 = $R$0($EXPECT($
|
|
13046
|
+
var JSXAttributeSpace$0 = $R$0($EXPECT($R74, "JSXAttributeSpace /[\\s>]|\\/>/"));
|
|
12989
13047
|
function JSXAttributeSpace(ctx, state) {
|
|
12990
13048
|
return $EVENT(ctx, state, "JSXAttributeSpace", JSXAttributeSpace$0);
|
|
12991
13049
|
}
|
|
12992
|
-
var JSXShorthandString$0 = $TR($EXPECT($
|
|
13050
|
+
var JSXShorthandString$0 = $TR($EXPECT($R75, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
12993
13051
|
return quoteString($0);
|
|
12994
13052
|
});
|
|
12995
13053
|
var JSXShorthandString$1 = $TS($S(TemplateLiteral), function($skip, $loc, $0, $1) {
|
|
@@ -13023,7 +13081,7 @@ var require_parser = __commonJS({
|
|
|
13023
13081
|
}
|
|
13024
13082
|
return [open, value, close];
|
|
13025
13083
|
});
|
|
13026
|
-
var JSXAttributeValue$4 = $R$0($EXPECT($
|
|
13084
|
+
var JSXAttributeValue$4 = $R$0($EXPECT($R76, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
|
|
13027
13085
|
var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
|
|
13028
13086
|
function JSXAttributeValue(ctx, state) {
|
|
13029
13087
|
return $EVENT_C(ctx, state, "JSXAttributeValue", JSXAttributeValue$$);
|
|
@@ -13036,7 +13094,7 @@ var require_parser = __commonJS({
|
|
|
13036
13094
|
function InlineJSXAttributeValue(ctx, state) {
|
|
13037
13095
|
return $EVENT(ctx, state, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
|
|
13038
13096
|
}
|
|
13039
|
-
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($
|
|
13097
|
+
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R77, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
|
|
13040
13098
|
var op = $2;
|
|
13041
13099
|
var rhs = $3;
|
|
13042
13100
|
return [[], op, [], rhs];
|
|
@@ -13053,7 +13111,7 @@ var require_parser = __commonJS({
|
|
|
13053
13111
|
function InlineJSXUnaryExpression(ctx, state) {
|
|
13054
13112
|
return $EVENT(ctx, state, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
|
|
13055
13113
|
}
|
|
13056
|
-
var InlineJSXUnaryOp$0 = $TR($EXPECT($
|
|
13114
|
+
var InlineJSXUnaryOp$0 = $TR($EXPECT($R78, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13057
13115
|
return { $loc, token: $0 };
|
|
13058
13116
|
});
|
|
13059
13117
|
function InlineJSXUnaryOp(ctx, state) {
|
|
@@ -13269,13 +13327,13 @@ var require_parser = __commonJS({
|
|
|
13269
13327
|
function JSXComment(ctx, state) {
|
|
13270
13328
|
return $EVENT(ctx, state, "JSXComment", JSXComment$0);
|
|
13271
13329
|
}
|
|
13272
|
-
var JSXCommentContent$0 = $TR($EXPECT($
|
|
13330
|
+
var JSXCommentContent$0 = $TR($EXPECT($R79, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13273
13331
|
return { $loc, token: $0.replace(/\*\//g, "* /") };
|
|
13274
13332
|
});
|
|
13275
13333
|
function JSXCommentContent(ctx, state) {
|
|
13276
13334
|
return $EVENT(ctx, state, "JSXCommentContent", JSXCommentContent$0);
|
|
13277
13335
|
}
|
|
13278
|
-
var JSXText$0 = $TR($EXPECT($
|
|
13336
|
+
var JSXText$0 = $TR($EXPECT($R80, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13279
13337
|
return {
|
|
13280
13338
|
type: "JSXText",
|
|
13281
13339
|
token: $0,
|
|
@@ -13696,7 +13754,7 @@ var require_parser = __commonJS({
|
|
|
13696
13754
|
function TypeProperty(ctx, state) {
|
|
13697
13755
|
return $EVENT(ctx, state, "TypeProperty", TypeProperty$0);
|
|
13698
13756
|
}
|
|
13699
|
-
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($
|
|
13757
|
+
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R81, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R17, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
|
|
13700
13758
|
function TypeIndexSignature(ctx, state) {
|
|
13701
13759
|
return $EVENT(ctx, state, "TypeIndexSignature", TypeIndexSignature$0);
|
|
13702
13760
|
}
|
|
@@ -13990,7 +14048,7 @@ var require_parser = __commonJS({
|
|
|
13990
14048
|
function NestedType(ctx, state) {
|
|
13991
14049
|
return $EVENT(ctx, state, "NestedType", NestedType$0);
|
|
13992
14050
|
}
|
|
13993
|
-
var TypeConditional$0 = $TS($S($E(_), $EXPECT($
|
|
14051
|
+
var TypeConditional$0 = $TS($S($E(_), $EXPECT($R82, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
|
|
13994
14052
|
return [$1, expressionizeTypeIf($3)];
|
|
13995
14053
|
});
|
|
13996
14054
|
var TypeConditional$1 = $TS($S(TypeCondition, NotDedented, QuestionMark, Type, __, Colon, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
@@ -14183,15 +14241,15 @@ var require_parser = __commonJS({
|
|
|
14183
14241
|
function ThisType(ctx, state) {
|
|
14184
14242
|
return $EVENT(ctx, state, "ThisType", ThisType$0);
|
|
14185
14243
|
}
|
|
14186
|
-
var Shebang$0 = $S($R$0($EXPECT($
|
|
14244
|
+
var Shebang$0 = $S($R$0($EXPECT($R83, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
14187
14245
|
function Shebang(ctx, state) {
|
|
14188
14246
|
return $EVENT(ctx, state, "Shebang", Shebang$0);
|
|
14189
14247
|
}
|
|
14190
|
-
var CivetPrologue$0 = $T($S($EXPECT($
|
|
14248
|
+
var CivetPrologue$0 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14191
14249
|
var content = value[2];
|
|
14192
14250
|
return content;
|
|
14193
14251
|
});
|
|
14194
|
-
var CivetPrologue$1 = $T($S($EXPECT($
|
|
14252
|
+
var CivetPrologue$1 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14195
14253
|
var content = value[2];
|
|
14196
14254
|
return content;
|
|
14197
14255
|
});
|
|
@@ -14199,7 +14257,7 @@ var require_parser = __commonJS({
|
|
|
14199
14257
|
function CivetPrologue(ctx, state) {
|
|
14200
14258
|
return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
|
|
14201
14259
|
}
|
|
14202
|
-
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($
|
|
14260
|
+
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R86, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
14203
14261
|
var options = $3;
|
|
14204
14262
|
return {
|
|
14205
14263
|
type: "CivetPrologue",
|
|
@@ -14210,7 +14268,7 @@ var require_parser = __commonJS({
|
|
|
14210
14268
|
function CivetPrologueContent(ctx, state) {
|
|
14211
14269
|
return $EVENT(ctx, state, "CivetPrologueContent", CivetPrologueContent$0);
|
|
14212
14270
|
}
|
|
14213
|
-
var CivetOption$0 = $TR($EXPECT($
|
|
14271
|
+
var CivetOption$0 = $TR($EXPECT($R87, "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) {
|
|
14214
14272
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
14215
14273
|
if (l)
|
|
14216
14274
|
return l.toUpperCase();
|
|
@@ -14227,11 +14285,11 @@ var require_parser = __commonJS({
|
|
|
14227
14285
|
function CivetOption(ctx, state) {
|
|
14228
14286
|
return $EVENT(ctx, state, "CivetOption", CivetOption$0);
|
|
14229
14287
|
}
|
|
14230
|
-
var UnknownPrologue$0 = $S($R$0($EXPECT($
|
|
14288
|
+
var UnknownPrologue$0 = $S($R$0($EXPECT($R84, "UnknownPrologue /[\\t ]*/")), StringLiteral, $TEXT(SimpleStatementDelimiter), EOS);
|
|
14231
14289
|
function UnknownPrologue(ctx, state) {
|
|
14232
14290
|
return $EVENT(ctx, state, "UnknownPrologue", UnknownPrologue$0);
|
|
14233
14291
|
}
|
|
14234
|
-
var TripleSlashDirective$0 = $S($R$0($EXPECT($
|
|
14292
|
+
var TripleSlashDirective$0 = $S($R$0($EXPECT($R88, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
|
|
14235
14293
|
function TripleSlashDirective(ctx, state) {
|
|
14236
14294
|
return $EVENT(ctx, state, "TripleSlashDirective", TripleSlashDirective$0);
|
|
14237
14295
|
}
|
|
@@ -14247,13 +14305,13 @@ var require_parser = __commonJS({
|
|
|
14247
14305
|
function PrologueString(ctx, state) {
|
|
14248
14306
|
return $EVENT_C(ctx, state, "PrologueString", PrologueString$$);
|
|
14249
14307
|
}
|
|
14250
|
-
var EOS$0 = $T($S($EXPECT($
|
|
14308
|
+
var EOS$0 = $T($S($EXPECT($R89, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), $P(RestOfLine)), function(value) {
|
|
14251
14309
|
return value[1];
|
|
14252
14310
|
});
|
|
14253
14311
|
function EOS(ctx, state) {
|
|
14254
14312
|
return $EVENT(ctx, state, "EOS", EOS$0);
|
|
14255
14313
|
}
|
|
14256
|
-
var EOL$0 = $TR($EXPECT($
|
|
14314
|
+
var EOL$0 = $TR($EXPECT($R90, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14257
14315
|
return { $loc, token: $0 };
|
|
14258
14316
|
});
|
|
14259
14317
|
function EOL(ctx, state) {
|
|
@@ -14825,11 +14883,11 @@ var require_parser = __commonJS({
|
|
|
14825
14883
|
function Prologue(ctx, state) {
|
|
14826
14884
|
return $EVENT(ctx, state, "Prologue", Prologue$0);
|
|
14827
14885
|
}
|
|
14828
|
-
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($
|
|
14886
|
+
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($R91, "ProloguePrefix /[^]*/")));
|
|
14829
14887
|
function ProloguePrefix(ctx, state) {
|
|
14830
14888
|
return $EVENT(ctx, state, "ProloguePrefix", ProloguePrefix$0);
|
|
14831
14889
|
}
|
|
14832
|
-
var Indent$0 = $TR($EXPECT($
|
|
14890
|
+
var Indent$0 = $TR($EXPECT($R85, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14833
14891
|
const level = getIndentLevel($0, module2.config.tab);
|
|
14834
14892
|
return {
|
|
14835
14893
|
$loc,
|
package/dist/main.mjs
CHANGED
|
@@ -3132,6 +3132,7 @@ var lib_exports = {};
|
|
|
3132
3132
|
__export(lib_exports, {
|
|
3133
3133
|
addPostfixStatement: () => addPostfixStatement,
|
|
3134
3134
|
adjustBindingElements: () => adjustBindingElements,
|
|
3135
|
+
adjustIndexAccess: () => adjustIndexAccess,
|
|
3135
3136
|
attachPostfixStatementAsExpression: () => attachPostfixStatementAsExpression,
|
|
3136
3137
|
blockWithPrefix: () => blockWithPrefix,
|
|
3137
3138
|
convertObjectToJSXAttributes: () => convertObjectToJSXAttributes,
|
|
@@ -3195,6 +3196,18 @@ function addPostfixStatement(statement, ws, post) {
|
|
|
3195
3196
|
}
|
|
3196
3197
|
return post;
|
|
3197
3198
|
}
|
|
3199
|
+
function adjustIndexAccess(dot) {
|
|
3200
|
+
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
3201
|
+
dot = [...dot, "["];
|
|
3202
|
+
} else {
|
|
3203
|
+
dot = replaceNodes(
|
|
3204
|
+
deepCopy(dot),
|
|
3205
|
+
(node) => node.token === ".",
|
|
3206
|
+
(node) => ({ ...node, token: "[" })
|
|
3207
|
+
);
|
|
3208
|
+
}
|
|
3209
|
+
return dot;
|
|
3210
|
+
}
|
|
3198
3211
|
function negateCondition(condition) {
|
|
3199
3212
|
let { expression } = condition;
|
|
3200
3213
|
const children = condition.children.slice();
|
|
@@ -3901,6 +3914,40 @@ function processStatementExpressions(statements) {
|
|
|
3901
3914
|
return;
|
|
3902
3915
|
});
|
|
3903
3916
|
}
|
|
3917
|
+
function processNegativeIndexAccess(statements) {
|
|
3918
|
+
gatherRecursiveAll(statements, (n) => n.type === "NegativeIndex").forEach((exp) => {
|
|
3919
|
+
const { parent } = exp;
|
|
3920
|
+
const index = parent.children.indexOf(exp);
|
|
3921
|
+
let ref, subexp;
|
|
3922
|
+
if (index === 1) {
|
|
3923
|
+
const child = parent.children[0];
|
|
3924
|
+
ref = maybeRef(child);
|
|
3925
|
+
if (ref !== child) {
|
|
3926
|
+
subexp = parent.children.splice(0, 1);
|
|
3927
|
+
}
|
|
3928
|
+
} else if (index > 1) {
|
|
3929
|
+
ref = makeRef();
|
|
3930
|
+
subexp = parent.children.splice(0, index);
|
|
3931
|
+
} else {
|
|
3932
|
+
throw new Error("Invalid parse tree for negative index access");
|
|
3933
|
+
}
|
|
3934
|
+
if (subexp) {
|
|
3935
|
+
exp.hoistDec = {
|
|
3936
|
+
type: "Declaration",
|
|
3937
|
+
children: ["let ", ref],
|
|
3938
|
+
names: []
|
|
3939
|
+
};
|
|
3940
|
+
parent.children.unshift(makeLeftHandSideExpression({
|
|
3941
|
+
type: "AssignmentExpression",
|
|
3942
|
+
children: [ref, " = ", subexp]
|
|
3943
|
+
}));
|
|
3944
|
+
}
|
|
3945
|
+
return exp.len.children = [
|
|
3946
|
+
ref,
|
|
3947
|
+
".length"
|
|
3948
|
+
];
|
|
3949
|
+
});
|
|
3950
|
+
}
|
|
3904
3951
|
function processProgram(root, config, m, ReservedWord) {
|
|
3905
3952
|
assert.equal(m.forbidBracedApplication.length, 1, "forbidBracedApplication");
|
|
3906
3953
|
assert.equal(m.forbidClassImplicitCall.length, 1, "forbidClassImplicitCall");
|
|
@@ -3910,6 +3957,7 @@ function processProgram(root, config, m, ReservedWord) {
|
|
|
3910
3957
|
assert.equal(m.JSXTagStack.length, 1, "JSXTagStack");
|
|
3911
3958
|
addParentPointers(root);
|
|
3912
3959
|
const { expressions: statements } = root;
|
|
3960
|
+
processNegativeIndexAccess(statements);
|
|
3913
3961
|
processTypes(statements);
|
|
3914
3962
|
processDeclarationConditions(statements, m.getRef);
|
|
3915
3963
|
processPipelineExpressions(statements);
|
|
@@ -5590,7 +5638,7 @@ var require_parser = __commonJS({
|
|
|
5590
5638
|
var $R13 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
|
|
5591
5639
|
var $R14 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
5592
5640
|
var $R15 = $R(new RegExp("(?=\\[)", "suy"));
|
|
5593
|
-
var $R16 = $R(new RegExp("[!+-]", "suy"));
|
|
5641
|
+
var $R16 = $R(new RegExp("[!+-]?", "suy"));
|
|
5594
5642
|
var $R17 = $R(new RegExp("[+-]", "suy"));
|
|
5595
5643
|
var $R18 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
|
|
5596
5644
|
var $R19 = $R(new RegExp("!\\^\\^?", "suy"));
|
|
@@ -5647,24 +5695,25 @@ var require_parser = __commonJS({
|
|
|
5647
5695
|
var $R70 = $R(new RegExp("\\s", "suy"));
|
|
5648
5696
|
var $R71 = $R(new RegExp("(?=[<])", "suy"));
|
|
5649
5697
|
var $R72 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
5650
|
-
var $R73 = $R(new RegExp("[
|
|
5651
|
-
var $R74 = $R(new RegExp("
|
|
5652
|
-
var $R75 = $R(new RegExp(
|
|
5653
|
-
var $R76 = $R(new RegExp("[
|
|
5654
|
-
var $R77 = $R(new RegExp("[
|
|
5655
|
-
var $R78 = $R(new RegExp("
|
|
5656
|
-
var $R79 = $R(new RegExp("[
|
|
5657
|
-
var $R80 = $R(new RegExp("[
|
|
5658
|
-
var $R81 = $R(new RegExp("
|
|
5659
|
-
var $R82 = $R(new RegExp("
|
|
5660
|
-
var $R83 = $R(new RegExp("[\\
|
|
5661
|
-
var $R84 = $R(new RegExp("[
|
|
5662
|
-
var $R85 = $R(new RegExp("[\\
|
|
5663
|
-
var $R86 = $R(new RegExp("
|
|
5664
|
-
var $R87 = $R(new RegExp("
|
|
5665
|
-
var $R88 = $R(new RegExp("
|
|
5666
|
-
var $R89 = $R(new RegExp("\\r\\n
|
|
5667
|
-
var $R90 = $R(new RegExp("
|
|
5698
|
+
var $R73 = $R(new RegExp("[!+-]", "suy"));
|
|
5699
|
+
var $R74 = $R(new RegExp("[\\s>]|\\/>", "suy"));
|
|
5700
|
+
var $R75 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
|
|
5701
|
+
var $R76 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
|
|
5702
|
+
var $R77 = $R(new RegExp("[<>]", "suy"));
|
|
5703
|
+
var $R78 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
|
|
5704
|
+
var $R79 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
|
|
5705
|
+
var $R80 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
|
|
5706
|
+
var $R81 = $R(new RegExp("[+-]?", "suy"));
|
|
5707
|
+
var $R82 = $R(new RegExp("(?=if|unless)", "suy"));
|
|
5708
|
+
var $R83 = $R(new RegExp("#![^\\r\\n]*", "suy"));
|
|
5709
|
+
var $R84 = $R(new RegExp("[\\t ]*", "suy"));
|
|
5710
|
+
var $R85 = $R(new RegExp("[ \\t]*", "suy"));
|
|
5711
|
+
var $R86 = $R(new RegExp("[\\s]*", "suy"));
|
|
5712
|
+
var $R87 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
|
|
5713
|
+
var $R88 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
|
|
5714
|
+
var $R89 = $R(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
|
|
5715
|
+
var $R90 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
5716
|
+
var $R91 = $R(new RegExp("[^]*", "suy"));
|
|
5668
5717
|
var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
5669
5718
|
var statements = $4;
|
|
5670
5719
|
processProgram({
|
|
@@ -7115,19 +7164,10 @@ var require_parser = __commonJS({
|
|
|
7115
7164
|
var PropertyAccess$0 = $TS($S(AccessStart, $C(TemplateLiteral, StringLiteral, IntegerLiteral)), function($skip, $loc, $0, $1, $2) {
|
|
7116
7165
|
var dot = $1;
|
|
7117
7166
|
var literal = $2;
|
|
7118
|
-
if (gatherRecursive(dot, (node) => node.token === "?").length) {
|
|
7119
|
-
dot = [...dot, "["];
|
|
7120
|
-
} else {
|
|
7121
|
-
dot = replaceNodes(
|
|
7122
|
-
deepCopy(dot),
|
|
7123
|
-
(node) => node.token === ".",
|
|
7124
|
-
(node) => ({ ...node, token: "[" })
|
|
7125
|
-
);
|
|
7126
|
-
}
|
|
7127
7167
|
return {
|
|
7128
7168
|
type: "Index",
|
|
7129
7169
|
children: [
|
|
7130
|
-
dot,
|
|
7170
|
+
adjustIndexAccess(dot),
|
|
7131
7171
|
literal,
|
|
7132
7172
|
"]"
|
|
7133
7173
|
]
|
|
@@ -7137,11 +7177,20 @@ var require_parser = __commonJS({
|
|
|
7137
7177
|
var dot = $1;
|
|
7138
7178
|
var neg = $2;
|
|
7139
7179
|
var num = $3;
|
|
7140
|
-
|
|
7141
|
-
|
|
7142
|
-
|
|
7143
|
-
|
|
7180
|
+
const len = {
|
|
7181
|
+
children: []
|
|
7182
|
+
}, children = [
|
|
7183
|
+
adjustIndexAccess(dot),
|
|
7184
|
+
len,
|
|
7185
|
+
neg,
|
|
7186
|
+
num,
|
|
7187
|
+
"]"
|
|
7144
7188
|
];
|
|
7189
|
+
return {
|
|
7190
|
+
type: "NegativeIndex",
|
|
7191
|
+
children,
|
|
7192
|
+
len
|
|
7193
|
+
};
|
|
7145
7194
|
});
|
|
7146
7195
|
var PropertyAccess$2 = $TS($S(AccessStart, $Q(InlineComment), $C(IdentifierName, PrivateIdentifier, LengthShorthand)), function($skip, $loc, $0, $1, $2, $3) {
|
|
7147
7196
|
var access = $1;
|
|
@@ -9086,17 +9135,26 @@ var require_parser = __commonJS({
|
|
|
9086
9135
|
children: [ws, ...prop.children]
|
|
9087
9136
|
};
|
|
9088
9137
|
});
|
|
9089
|
-
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]
|
|
9138
|
+
var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]?/")), PropertyName, $Y(ObjectPropertyDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9090
9139
|
var ws = $1;
|
|
9091
9140
|
var toggle = $2;
|
|
9092
9141
|
var id = $3;
|
|
9093
|
-
|
|
9142
|
+
if (toggle) {
|
|
9143
|
+
const value = toggle === "+" ? "true" : "false";
|
|
9144
|
+
return {
|
|
9145
|
+
type: "Property",
|
|
9146
|
+
children: [ws, id, ": ", value],
|
|
9147
|
+
name: id,
|
|
9148
|
+
names: id.names,
|
|
9149
|
+
value
|
|
9150
|
+
};
|
|
9151
|
+
}
|
|
9094
9152
|
return {
|
|
9095
9153
|
type: "Property",
|
|
9096
|
-
children: [ws, id
|
|
9154
|
+
children: [ws, id],
|
|
9097
9155
|
name: id,
|
|
9098
9156
|
names: id.names,
|
|
9099
|
-
value
|
|
9157
|
+
value: id
|
|
9100
9158
|
};
|
|
9101
9159
|
});
|
|
9102
9160
|
var PropertyDefinition$2 = $TS($S($E(_), MethodDefinition), function($skip, $loc, $0, $1, $2) {
|
|
@@ -12973,7 +13031,7 @@ var require_parser = __commonJS({
|
|
|
12973
13031
|
class: $2
|
|
12974
13032
|
};
|
|
12975
13033
|
});
|
|
12976
|
-
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($
|
|
13034
|
+
var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R73, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
|
|
12977
13035
|
var toggle = $1;
|
|
12978
13036
|
var id = $2;
|
|
12979
13037
|
const value = toggle === "+" ? "true" : "false";
|
|
@@ -12983,11 +13041,11 @@ var require_parser = __commonJS({
|
|
|
12983
13041
|
function JSXAttribute(ctx, state) {
|
|
12984
13042
|
return $EVENT_C(ctx, state, "JSXAttribute", JSXAttribute$$);
|
|
12985
13043
|
}
|
|
12986
|
-
var JSXAttributeSpace$0 = $R$0($EXPECT($
|
|
13044
|
+
var JSXAttributeSpace$0 = $R$0($EXPECT($R74, "JSXAttributeSpace /[\\s>]|\\/>/"));
|
|
12987
13045
|
function JSXAttributeSpace(ctx, state) {
|
|
12988
13046
|
return $EVENT(ctx, state, "JSXAttributeSpace", JSXAttributeSpace$0);
|
|
12989
13047
|
}
|
|
12990
|
-
var JSXShorthandString$0 = $TR($EXPECT($
|
|
13048
|
+
var JSXShorthandString$0 = $TR($EXPECT($R75, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
12991
13049
|
return quoteString($0);
|
|
12992
13050
|
});
|
|
12993
13051
|
var JSXShorthandString$1 = $TS($S(TemplateLiteral), function($skip, $loc, $0, $1) {
|
|
@@ -13021,7 +13079,7 @@ var require_parser = __commonJS({
|
|
|
13021
13079
|
}
|
|
13022
13080
|
return [open, value, close];
|
|
13023
13081
|
});
|
|
13024
|
-
var JSXAttributeValue$4 = $R$0($EXPECT($
|
|
13082
|
+
var JSXAttributeValue$4 = $R$0($EXPECT($R76, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
|
|
13025
13083
|
var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
|
|
13026
13084
|
function JSXAttributeValue(ctx, state) {
|
|
13027
13085
|
return $EVENT_C(ctx, state, "JSXAttributeValue", JSXAttributeValue$$);
|
|
@@ -13034,7 +13092,7 @@ var require_parser = __commonJS({
|
|
|
13034
13092
|
function InlineJSXAttributeValue(ctx, state) {
|
|
13035
13093
|
return $EVENT(ctx, state, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
|
|
13036
13094
|
}
|
|
13037
|
-
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($
|
|
13095
|
+
var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R77, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
|
|
13038
13096
|
var op = $2;
|
|
13039
13097
|
var rhs = $3;
|
|
13040
13098
|
return [[], op, [], rhs];
|
|
@@ -13051,7 +13109,7 @@ var require_parser = __commonJS({
|
|
|
13051
13109
|
function InlineJSXUnaryExpression(ctx, state) {
|
|
13052
13110
|
return $EVENT(ctx, state, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
|
|
13053
13111
|
}
|
|
13054
|
-
var InlineJSXUnaryOp$0 = $TR($EXPECT($
|
|
13112
|
+
var InlineJSXUnaryOp$0 = $TR($EXPECT($R78, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13055
13113
|
return { $loc, token: $0 };
|
|
13056
13114
|
});
|
|
13057
13115
|
function InlineJSXUnaryOp(ctx, state) {
|
|
@@ -13267,13 +13325,13 @@ var require_parser = __commonJS({
|
|
|
13267
13325
|
function JSXComment(ctx, state) {
|
|
13268
13326
|
return $EVENT(ctx, state, "JSXComment", JSXComment$0);
|
|
13269
13327
|
}
|
|
13270
|
-
var JSXCommentContent$0 = $TR($EXPECT($
|
|
13328
|
+
var JSXCommentContent$0 = $TR($EXPECT($R79, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13271
13329
|
return { $loc, token: $0.replace(/\*\//g, "* /") };
|
|
13272
13330
|
});
|
|
13273
13331
|
function JSXCommentContent(ctx, state) {
|
|
13274
13332
|
return $EVENT(ctx, state, "JSXCommentContent", JSXCommentContent$0);
|
|
13275
13333
|
}
|
|
13276
|
-
var JSXText$0 = $TR($EXPECT($
|
|
13334
|
+
var JSXText$0 = $TR($EXPECT($R80, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
13277
13335
|
return {
|
|
13278
13336
|
type: "JSXText",
|
|
13279
13337
|
token: $0,
|
|
@@ -13694,7 +13752,7 @@ var require_parser = __commonJS({
|
|
|
13694
13752
|
function TypeProperty(ctx, state) {
|
|
13695
13753
|
return $EVENT(ctx, state, "TypeProperty", TypeProperty$0);
|
|
13696
13754
|
}
|
|
13697
|
-
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($
|
|
13755
|
+
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R81, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R17, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
|
|
13698
13756
|
function TypeIndexSignature(ctx, state) {
|
|
13699
13757
|
return $EVENT(ctx, state, "TypeIndexSignature", TypeIndexSignature$0);
|
|
13700
13758
|
}
|
|
@@ -13988,7 +14046,7 @@ var require_parser = __commonJS({
|
|
|
13988
14046
|
function NestedType(ctx, state) {
|
|
13989
14047
|
return $EVENT(ctx, state, "NestedType", NestedType$0);
|
|
13990
14048
|
}
|
|
13991
|
-
var TypeConditional$0 = $TS($S($E(_), $EXPECT($
|
|
14049
|
+
var TypeConditional$0 = $TS($S($E(_), $EXPECT($R82, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
|
|
13992
14050
|
return [$1, expressionizeTypeIf($3)];
|
|
13993
14051
|
});
|
|
13994
14052
|
var TypeConditional$1 = $TS($S(TypeCondition, NotDedented, QuestionMark, Type, __, Colon, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
@@ -14181,15 +14239,15 @@ var require_parser = __commonJS({
|
|
|
14181
14239
|
function ThisType(ctx, state) {
|
|
14182
14240
|
return $EVENT(ctx, state, "ThisType", ThisType$0);
|
|
14183
14241
|
}
|
|
14184
|
-
var Shebang$0 = $S($R$0($EXPECT($
|
|
14242
|
+
var Shebang$0 = $S($R$0($EXPECT($R83, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
14185
14243
|
function Shebang(ctx, state) {
|
|
14186
14244
|
return $EVENT(ctx, state, "Shebang", Shebang$0);
|
|
14187
14245
|
}
|
|
14188
|
-
var CivetPrologue$0 = $T($S($EXPECT($
|
|
14246
|
+
var CivetPrologue$0 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14189
14247
|
var content = value[2];
|
|
14190
14248
|
return content;
|
|
14191
14249
|
});
|
|
14192
|
-
var CivetPrologue$1 = $T($S($EXPECT($
|
|
14250
|
+
var CivetPrologue$1 = $T($S($EXPECT($R84, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $EXPECT($R85, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
|
|
14193
14251
|
var content = value[2];
|
|
14194
14252
|
return content;
|
|
14195
14253
|
});
|
|
@@ -14197,7 +14255,7 @@ var require_parser = __commonJS({
|
|
|
14197
14255
|
function CivetPrologue(ctx, state) {
|
|
14198
14256
|
return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
|
|
14199
14257
|
}
|
|
14200
|
-
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($
|
|
14258
|
+
var CivetPrologueContent$0 = $TS($S($EXPECT($L225, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R86, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
14201
14259
|
var options = $3;
|
|
14202
14260
|
return {
|
|
14203
14261
|
type: "CivetPrologue",
|
|
@@ -14208,7 +14266,7 @@ var require_parser = __commonJS({
|
|
|
14208
14266
|
function CivetPrologueContent(ctx, state) {
|
|
14209
14267
|
return $EVENT(ctx, state, "CivetPrologueContent", CivetPrologueContent$0);
|
|
14210
14268
|
}
|
|
14211
|
-
var CivetOption$0 = $TR($EXPECT($
|
|
14269
|
+
var CivetOption$0 = $TR($EXPECT($R87, "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) {
|
|
14212
14270
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
14213
14271
|
if (l)
|
|
14214
14272
|
return l.toUpperCase();
|
|
@@ -14225,11 +14283,11 @@ var require_parser = __commonJS({
|
|
|
14225
14283
|
function CivetOption(ctx, state) {
|
|
14226
14284
|
return $EVENT(ctx, state, "CivetOption", CivetOption$0);
|
|
14227
14285
|
}
|
|
14228
|
-
var UnknownPrologue$0 = $S($R$0($EXPECT($
|
|
14286
|
+
var UnknownPrologue$0 = $S($R$0($EXPECT($R84, "UnknownPrologue /[\\t ]*/")), StringLiteral, $TEXT(SimpleStatementDelimiter), EOS);
|
|
14229
14287
|
function UnknownPrologue(ctx, state) {
|
|
14230
14288
|
return $EVENT(ctx, state, "UnknownPrologue", UnknownPrologue$0);
|
|
14231
14289
|
}
|
|
14232
|
-
var TripleSlashDirective$0 = $S($R$0($EXPECT($
|
|
14290
|
+
var TripleSlashDirective$0 = $S($R$0($EXPECT($R88, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
|
|
14233
14291
|
function TripleSlashDirective(ctx, state) {
|
|
14234
14292
|
return $EVENT(ctx, state, "TripleSlashDirective", TripleSlashDirective$0);
|
|
14235
14293
|
}
|
|
@@ -14245,13 +14303,13 @@ var require_parser = __commonJS({
|
|
|
14245
14303
|
function PrologueString(ctx, state) {
|
|
14246
14304
|
return $EVENT_C(ctx, state, "PrologueString", PrologueString$$);
|
|
14247
14305
|
}
|
|
14248
|
-
var EOS$0 = $T($S($EXPECT($
|
|
14306
|
+
var EOS$0 = $T($S($EXPECT($R89, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), $P(RestOfLine)), function(value) {
|
|
14249
14307
|
return value[1];
|
|
14250
14308
|
});
|
|
14251
14309
|
function EOS(ctx, state) {
|
|
14252
14310
|
return $EVENT(ctx, state, "EOS", EOS$0);
|
|
14253
14311
|
}
|
|
14254
|
-
var EOL$0 = $TR($EXPECT($
|
|
14312
|
+
var EOL$0 = $TR($EXPECT($R90, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14255
14313
|
return { $loc, token: $0 };
|
|
14256
14314
|
});
|
|
14257
14315
|
function EOL(ctx, state) {
|
|
@@ -14823,11 +14881,11 @@ var require_parser = __commonJS({
|
|
|
14823
14881
|
function Prologue(ctx, state) {
|
|
14824
14882
|
return $EVENT(ctx, state, "Prologue", Prologue$0);
|
|
14825
14883
|
}
|
|
14826
|
-
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($
|
|
14884
|
+
var ProloguePrefix$0 = $S(Prologue, $R$0($EXPECT($R91, "ProloguePrefix /[^]*/")));
|
|
14827
14885
|
function ProloguePrefix(ctx, state) {
|
|
14828
14886
|
return $EVENT(ctx, state, "ProloguePrefix", ProloguePrefix$0);
|
|
14829
14887
|
}
|
|
14830
|
-
var Indent$0 = $TR($EXPECT($
|
|
14888
|
+
var Indent$0 = $TR($EXPECT($R85, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14831
14889
|
const level = getIndentLevel($0, module.config.tab);
|
|
14832
14890
|
return {
|
|
14833
14891
|
$loc,
|