@loadmill/executer 0.1.140 → 0.1.142
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/asserter.d.ts +9 -0
- package/dist/asserter.js +158 -0
- package/dist/asserter.js.map +1 -0
- package/dist/constants.d.ts +7 -0
- package/dist/constants.js +13 -0
- package/dist/constants.js.map +1 -0
- package/dist/cookies.d.ts +4 -0
- package/dist/cookies.js +79 -0
- package/dist/cookies.js.map +1 -0
- package/dist/errors.d.ts +5 -0
- package/dist/errors.js +38 -0
- package/dist/errors.js.map +1 -0
- package/dist/extraction-combiner.d.ts +17 -0
- package/dist/extraction-combiner.js +182 -0
- package/dist/extraction-combiner.js.map +1 -0
- package/dist/failures.d.ts +24 -0
- package/dist/failures.js +67 -0
- package/dist/failures.js.map +1 -0
- package/dist/grpc.d.ts +34 -0
- package/dist/grpc.js +269 -0
- package/dist/grpc.js.map +1 -0
- package/dist/iteration-stats.d.ts +2 -0
- package/dist/iteration-stats.js +38 -0
- package/dist/iteration-stats.js.map +1 -0
- package/dist/message-creators.d.ts +31 -0
- package/dist/message-creators.js +90 -0
- package/dist/message-creators.js.map +1 -0
- package/dist/mill-info.d.ts +70 -0
- package/dist/mill-info.js +3 -0
- package/dist/mill-info.js.map +1 -0
- package/dist/mill-version.d.ts +6 -0
- package/dist/mill-version.js +10 -0
- package/dist/mill-version.js.map +1 -0
- package/dist/parameter-pools.d.ts +3 -0
- package/dist/parameter-pools.js +69 -0
- package/dist/parameter-pools.js.map +1 -0
- package/dist/performance.d.ts +1 -0
- package/dist/performance.js +10 -0
- package/dist/performance.js.map +1 -0
- package/dist/post-script/ast-walker/index.d.ts +18 -0
- package/dist/post-script/ast-walker/index.js +215 -0
- package/dist/post-script/ast-walker/index.js.map +1 -0
- package/dist/post-script/ast-walker/type-guard.d.ts +11 -0
- package/dist/post-script/ast-walker/type-guard.js +56 -0
- package/dist/post-script/ast-walker/type-guard.js.map +1 -0
- package/dist/post-script/ast-walker/types.d.ts +24 -0
- package/dist/post-script/ast-walker/types.js +25 -0
- package/dist/post-script/ast-walker/types.js.map +1 -0
- package/dist/post-script/console-log.d.ts +7 -0
- package/dist/post-script/console-log.js +31 -0
- package/dist/post-script/console-log.js.map +1 -0
- package/dist/post-script/constants.d.ts +4 -0
- package/dist/post-script/constants.js +9 -0
- package/dist/post-script/constants.js.map +1 -0
- package/dist/post-script/parser/acorn-js-parser.d.ts +5 -0
- package/dist/post-script/parser/acorn-js-parser.js +20 -0
- package/dist/post-script/parser/acorn-js-parser.js.map +1 -0
- package/dist/post-script/parser/js-parser.d.ts +16 -0
- package/dist/post-script/parser/js-parser.js +3 -0
- package/dist/post-script/parser/js-parser.js.map +1 -0
- package/dist/post-script/parser/parser.d.ts +6 -0
- package/dist/post-script/parser/parser.js +3 -0
- package/dist/post-script/parser/parser.js.map +1 -0
- package/dist/post-script/post-script-executor.d.ts +24 -0
- package/dist/post-script/post-script-executor.js +125 -0
- package/dist/post-script/post-script-executor.js.map +1 -0
- package/dist/post-script/virtual-machine/virtual-machine.d.ts +13 -0
- package/dist/post-script/virtual-machine/virtual-machine.js +3 -0
- package/dist/post-script/virtual-machine/virtual-machine.js.map +1 -0
- package/dist/post-script/virtual-machine/vm2-virtual-machine.d.ts +12 -0
- package/dist/post-script/virtual-machine/vm2-virtual-machine.js +81 -0
- package/dist/post-script/virtual-machine/vm2-virtual-machine.js.map +1 -0
- package/dist/post-sequence.d.ts +2 -0
- package/dist/post-sequence.js +192 -0
- package/dist/post-sequence.js.map +1 -0
- package/dist/redact-data.d.ts +2 -0
- package/dist/redact-data.js +60 -0
- package/dist/redact-data.js.map +1 -0
- package/dist/report-types.d.ts +102 -0
- package/dist/report-types.js +11 -0
- package/dist/report-types.js.map +1 -0
- package/dist/request-sequence-result.d.ts +37 -0
- package/dist/request-sequence-result.js +19 -0
- package/dist/request-sequence-result.js.map +1 -0
- package/dist/request-stats.d.ts +13 -0
- package/dist/request-stats.js +14 -0
- package/dist/request-stats.js.map +1 -0
- package/dist/res-keeper.d.ts +16 -0
- package/dist/res-keeper.js +104 -0
- package/dist/res-keeper.js.map +1 -0
- package/dist/sampler.d.ts +29 -0
- package/dist/sampler.js +276 -0
- package/dist/sampler.js.map +1 -0
- package/dist/sequence-executor-like.d.ts +23 -0
- package/dist/sequence-executor-like.js +3 -0
- package/dist/sequence-executor-like.js.map +1 -0
- package/dist/sequence.d.ts +16 -0
- package/dist/sequence.js +1738 -0
- package/dist/sequence.js.map +1 -0
- package/dist/single-runner.d.ts +29 -0
- package/dist/single-runner.js +147 -0
- package/dist/single-runner.js.map +1 -0
- package/dist/step-handlers/code-step-handler.d.ts +12 -0
- package/dist/step-handlers/code-step-handler.js +93 -0
- package/dist/step-handlers/code-step-handler.js.map +1 -0
- package/dist/step-handlers/extract-step-handler.d.ts +12 -0
- package/dist/step-handlers/extract-step-handler.js +101 -0
- package/dist/step-handlers/extract-step-handler.js.map +1 -0
- package/dist/step-handlers/request-step-handler.d.ts +13 -0
- package/dist/step-handlers/request-step-handler.js +94 -0
- package/dist/step-handlers/request-step-handler.js.map +1 -0
- package/dist/step-handlers/step-handler.d.ts +11 -0
- package/dist/step-handlers/step-handler.js +3 -0
- package/dist/step-handlers/step-handler.js.map +1 -0
- package/dist/test-run-event-emitter.d.ts +15 -0
- package/dist/test-run-event-emitter.js +36 -0
- package/dist/test-run-event-emitter.js.map +1 -0
- package/dist/types/grpc.d.ts +14 -0
- package/dist/types/grpc.js +3 -0
- package/dist/types/grpc.js.map +1 -0
- package/dist/utils.d.ts +3 -0
- package/dist/utils.js +32 -0
- package/dist/utils.js.map +1 -0
- package/dist/work.d.ts +15 -0
- package/dist/work.js +3 -0
- package/dist/work.js.map +1 -0
- package/dist/ws.d.ts +71 -0
- package/dist/ws.js +474 -0
- package/dist/ws.js.map +1 -0
- package/package/dist/asserter.d.ts +9 -0
- package/package/dist/asserter.js +158 -0
- package/package/dist/asserter.js.map +1 -0
- package/package/dist/constants.d.ts +7 -0
- package/package/dist/constants.js +13 -0
- package/package/dist/constants.js.map +1 -0
- package/package/dist/cookies.d.ts +4 -0
- package/package/dist/cookies.js +79 -0
- package/package/dist/cookies.js.map +1 -0
- package/package/dist/errors.d.ts +5 -0
- package/package/dist/errors.js +38 -0
- package/package/dist/errors.js.map +1 -0
- package/package/dist/extraction-combiner.d.ts +17 -0
- package/package/dist/extraction-combiner.js +182 -0
- package/package/dist/extraction-combiner.js.map +1 -0
- package/package/dist/failures.d.ts +24 -0
- package/package/dist/failures.js +67 -0
- package/package/dist/failures.js.map +1 -0
- package/package/dist/grpc.d.ts +34 -0
- package/package/dist/grpc.js +269 -0
- package/package/dist/grpc.js.map +1 -0
- package/package/dist/iteration-stats.d.ts +2 -0
- package/package/dist/iteration-stats.js +38 -0
- package/package/dist/iteration-stats.js.map +1 -0
- package/package/dist/message-creators.d.ts +31 -0
- package/package/dist/message-creators.js +90 -0
- package/package/dist/message-creators.js.map +1 -0
- package/package/dist/mill-info.d.ts +70 -0
- package/package/dist/mill-info.js +3 -0
- package/package/dist/mill-info.js.map +1 -0
- package/package/dist/mill-version.d.ts +6 -0
- package/package/dist/mill-version.js +10 -0
- package/package/dist/mill-version.js.map +1 -0
- package/package/dist/parameter-pools.d.ts +3 -0
- package/package/dist/parameter-pools.js +69 -0
- package/package/dist/parameter-pools.js.map +1 -0
- package/package/dist/performance.d.ts +1 -0
- package/package/dist/performance.js +10 -0
- package/package/dist/performance.js.map +1 -0
- package/package/dist/post-script/ast-walker/index.d.ts +18 -0
- package/package/dist/post-script/ast-walker/index.js +215 -0
- package/package/dist/post-script/ast-walker/index.js.map +1 -0
- package/package/dist/post-script/ast-walker/type-guard.d.ts +11 -0
- package/package/dist/post-script/ast-walker/type-guard.js +56 -0
- package/package/dist/post-script/ast-walker/type-guard.js.map +1 -0
- package/package/dist/post-script/ast-walker/types.d.ts +24 -0
- package/package/dist/post-script/ast-walker/types.js +25 -0
- package/package/dist/post-script/ast-walker/types.js.map +1 -0
- package/package/dist/post-script/console-log.d.ts +7 -0
- package/package/dist/post-script/console-log.js +31 -0
- package/package/dist/post-script/console-log.js.map +1 -0
- package/package/dist/post-script/constants.d.ts +4 -0
- package/package/dist/post-script/constants.js +9 -0
- package/package/dist/post-script/constants.js.map +1 -0
- package/package/dist/post-script/parser/acorn-js-parser.d.ts +5 -0
- package/package/dist/post-script/parser/acorn-js-parser.js +20 -0
- package/package/dist/post-script/parser/acorn-js-parser.js.map +1 -0
- package/package/dist/post-script/parser/js-parser.d.ts +16 -0
- package/package/dist/post-script/parser/js-parser.js +3 -0
- package/package/dist/post-script/parser/js-parser.js.map +1 -0
- package/package/dist/post-script/parser/parser.d.ts +6 -0
- package/package/dist/post-script/parser/parser.js +3 -0
- package/package/dist/post-script/parser/parser.js.map +1 -0
- package/package/dist/post-script/post-script-executor.d.ts +24 -0
- package/package/dist/post-script/post-script-executor.js +125 -0
- package/package/dist/post-script/post-script-executor.js.map +1 -0
- package/package/dist/post-script/virtual-machine/virtual-machine.d.ts +13 -0
- package/package/dist/post-script/virtual-machine/virtual-machine.js +3 -0
- package/package/dist/post-script/virtual-machine/virtual-machine.js.map +1 -0
- package/package/dist/post-script/virtual-machine/vm2-virtual-machine.d.ts +12 -0
- package/package/dist/post-script/virtual-machine/vm2-virtual-machine.js +81 -0
- package/package/dist/post-script/virtual-machine/vm2-virtual-machine.js.map +1 -0
- package/package/dist/post-sequence.d.ts +2 -0
- package/package/dist/post-sequence.js +192 -0
- package/package/dist/post-sequence.js.map +1 -0
- package/package/dist/redact-data.d.ts +2 -0
- package/package/dist/redact-data.js +60 -0
- package/package/dist/redact-data.js.map +1 -0
- package/package/dist/report-types.d.ts +102 -0
- package/package/dist/report-types.js +11 -0
- package/package/dist/report-types.js.map +1 -0
- package/package/dist/request-sequence-result.d.ts +37 -0
- package/package/dist/request-sequence-result.js +19 -0
- package/package/dist/request-sequence-result.js.map +1 -0
- package/package/dist/request-stats.d.ts +13 -0
- package/package/dist/request-stats.js +14 -0
- package/package/dist/request-stats.js.map +1 -0
- package/package/dist/res-keeper.d.ts +16 -0
- package/package/dist/res-keeper.js +104 -0
- package/package/dist/res-keeper.js.map +1 -0
- package/package/dist/sampler.d.ts +29 -0
- package/package/dist/sampler.js +276 -0
- package/package/dist/sampler.js.map +1 -0
- package/package/dist/sequence-executor-like.d.ts +23 -0
- package/package/dist/sequence-executor-like.js +3 -0
- package/package/dist/sequence-executor-like.js.map +1 -0
- package/package/dist/sequence.d.ts +16 -0
- package/package/dist/sequence.js +1738 -0
- package/package/dist/sequence.js.map +1 -0
- package/package/dist/single-runner.d.ts +29 -0
- package/package/dist/single-runner.js +147 -0
- package/package/dist/single-runner.js.map +1 -0
- package/package/dist/step-handlers/code-step-handler.d.ts +12 -0
- package/package/dist/step-handlers/code-step-handler.js +93 -0
- package/package/dist/step-handlers/code-step-handler.js.map +1 -0
- package/package/dist/step-handlers/extract-step-handler.d.ts +12 -0
- package/package/dist/step-handlers/extract-step-handler.js +101 -0
- package/package/dist/step-handlers/extract-step-handler.js.map +1 -0
- package/package/dist/step-handlers/request-step-handler.d.ts +13 -0
- package/package/dist/step-handlers/request-step-handler.js +94 -0
- package/package/dist/step-handlers/request-step-handler.js.map +1 -0
- package/package/dist/step-handlers/step-handler.d.ts +11 -0
- package/package/dist/step-handlers/step-handler.js +3 -0
- package/package/dist/step-handlers/step-handler.js.map +1 -0
- package/package/dist/test-run-event-emitter.d.ts +15 -0
- package/package/dist/test-run-event-emitter.js +36 -0
- package/package/dist/test-run-event-emitter.js.map +1 -0
- package/package/dist/types/grpc.d.ts +14 -0
- package/package/dist/types/grpc.js +3 -0
- package/package/dist/types/grpc.js.map +1 -0
- package/package/dist/utils.d.ts +3 -0
- package/package/dist/utils.js +32 -0
- package/package/dist/utils.js.map +1 -0
- package/package/dist/work.d.ts +15 -0
- package/package/dist/work.js +3 -0
- package/package/dist/work.js.map +1 -0
- package/package/dist/ws.d.ts +71 -0
- package/package/dist/ws.js +474 -0
- package/package/dist/ws.js.map +1 -0
- package/package.json +4 -3
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare class ASTWalker {
|
|
2
|
+
private ast;
|
|
3
|
+
private untouchables;
|
|
4
|
+
private detected;
|
|
5
|
+
constructor(script: string);
|
|
6
|
+
detectDeclarations: (untouchables: string[]) => string[];
|
|
7
|
+
private addDeclaredFunction;
|
|
8
|
+
private getIdentifierName;
|
|
9
|
+
private addNestedDeclaredProps;
|
|
10
|
+
private addAssignmentProperty;
|
|
11
|
+
private addRestElement;
|
|
12
|
+
private addDestructuredArrayElements;
|
|
13
|
+
private addDeclaredVariables;
|
|
14
|
+
private addImplicitDeclarations;
|
|
15
|
+
private addSingleImplicitVar;
|
|
16
|
+
private addMultipleImplicitVar;
|
|
17
|
+
private addIdentifier;
|
|
18
|
+
}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ASTWalker = void 0;
|
|
4
|
+
var acorn_js_parser_1 = require("../parser/acorn-js-parser");
|
|
5
|
+
var type_guard_1 = require("./type-guard");
|
|
6
|
+
var ASTWalker = /** @class */ (function () {
|
|
7
|
+
function ASTWalker(script) {
|
|
8
|
+
var _this = this;
|
|
9
|
+
Object.defineProperty(this, "ast", {
|
|
10
|
+
enumerable: true,
|
|
11
|
+
configurable: true,
|
|
12
|
+
writable: true,
|
|
13
|
+
value: void 0
|
|
14
|
+
});
|
|
15
|
+
Object.defineProperty(this, "untouchables", {
|
|
16
|
+
enumerable: true,
|
|
17
|
+
configurable: true,
|
|
18
|
+
writable: true,
|
|
19
|
+
value: void 0
|
|
20
|
+
});
|
|
21
|
+
Object.defineProperty(this, "detected", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
configurable: true,
|
|
24
|
+
writable: true,
|
|
25
|
+
value: void 0
|
|
26
|
+
});
|
|
27
|
+
Object.defineProperty(this, "detectDeclarations", {
|
|
28
|
+
enumerable: true,
|
|
29
|
+
configurable: true,
|
|
30
|
+
writable: true,
|
|
31
|
+
value: function (untouchables) {
|
|
32
|
+
_this.untouchables = untouchables;
|
|
33
|
+
for (var _i = 0, _a = _this.ast.body; _i < _a.length; _i++) {
|
|
34
|
+
var node = _a[_i];
|
|
35
|
+
if (type_guard_1.isFunctionDeclaration(node)) {
|
|
36
|
+
_this.addDeclaredFunction(node);
|
|
37
|
+
}
|
|
38
|
+
else if (type_guard_1.isVariableDeclaration(node)) {
|
|
39
|
+
_this.addDeclaredVariables(node);
|
|
40
|
+
}
|
|
41
|
+
else if (type_guard_1.isExpressionStatement(node)) {
|
|
42
|
+
_this.addImplicitDeclarations(node);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return Array.from(_this.detected);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
Object.defineProperty(this, "addDeclaredFunction", {
|
|
49
|
+
enumerable: true,
|
|
50
|
+
configurable: true,
|
|
51
|
+
writable: true,
|
|
52
|
+
value: function (node) {
|
|
53
|
+
_this.addIdentifier(node.id);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
Object.defineProperty(this, "getIdentifierName", {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true,
|
|
59
|
+
writable: true,
|
|
60
|
+
value: function (id) { return id.name; }
|
|
61
|
+
});
|
|
62
|
+
Object.defineProperty(this, "addNestedDeclaredProps", {
|
|
63
|
+
enumerable: true,
|
|
64
|
+
configurable: true,
|
|
65
|
+
writable: true,
|
|
66
|
+
value: function (_a) {
|
|
67
|
+
var properties = _a.properties;
|
|
68
|
+
for (var _i = 0, properties_1 = properties; _i < properties_1.length; _i++) {
|
|
69
|
+
var prop = properties_1[_i];
|
|
70
|
+
if (type_guard_1.isRestElement(prop)) {
|
|
71
|
+
_this.addRestElement(prop);
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
_this.addAssignmentProperty(prop);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
Object.defineProperty(this, "addAssignmentProperty", {
|
|
80
|
+
enumerable: true,
|
|
81
|
+
configurable: true,
|
|
82
|
+
writable: true,
|
|
83
|
+
value: function (_a) {
|
|
84
|
+
var value = _a.value;
|
|
85
|
+
if (type_guard_1.isIdentifier(value)) {
|
|
86
|
+
_this.addIdentifier(value);
|
|
87
|
+
}
|
|
88
|
+
else if (type_guard_1.isObject(value)) {
|
|
89
|
+
_this.addNestedDeclaredProps(value);
|
|
90
|
+
}
|
|
91
|
+
else if (type_guard_1.isArray(value)) {
|
|
92
|
+
_this.addDestructuredArrayElements(value);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
Object.defineProperty(this, "addRestElement", {
|
|
97
|
+
enumerable: true,
|
|
98
|
+
configurable: true,
|
|
99
|
+
writable: true,
|
|
100
|
+
value: function (_a) {
|
|
101
|
+
var argument = _a.argument;
|
|
102
|
+
if (type_guard_1.isIdentifier(argument)) {
|
|
103
|
+
_this.addIdentifier(argument);
|
|
104
|
+
}
|
|
105
|
+
else if (type_guard_1.isObject(argument)) {
|
|
106
|
+
_this.addNestedDeclaredProps(argument);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
Object.defineProperty(this, "addDestructuredArrayElements", {
|
|
111
|
+
enumerable: true,
|
|
112
|
+
configurable: true,
|
|
113
|
+
writable: true,
|
|
114
|
+
value: function (_a) {
|
|
115
|
+
var elements = _a.elements;
|
|
116
|
+
for (var _i = 0, elements_1 = elements; _i < elements_1.length; _i++) {
|
|
117
|
+
var element = elements_1[_i];
|
|
118
|
+
if (type_guard_1.isIdentifier(element)) {
|
|
119
|
+
_this.addIdentifier(element);
|
|
120
|
+
}
|
|
121
|
+
else if (type_guard_1.isRestElement(element)) {
|
|
122
|
+
_this.addRestElement(element);
|
|
123
|
+
}
|
|
124
|
+
else if (type_guard_1.isObject(element)) {
|
|
125
|
+
_this.addNestedDeclaredProps(element);
|
|
126
|
+
}
|
|
127
|
+
else if (type_guard_1.isArray(element)) {
|
|
128
|
+
_this.addDestructuredArrayElements(element);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
Object.defineProperty(this, "addDeclaredVariables", {
|
|
134
|
+
enumerable: true,
|
|
135
|
+
configurable: true,
|
|
136
|
+
writable: true,
|
|
137
|
+
value: function (node) {
|
|
138
|
+
for (var _i = 0, _a = node.declarations; _i < _a.length; _i++) {
|
|
139
|
+
var declaration = _a[_i];
|
|
140
|
+
var pattern = declaration.id;
|
|
141
|
+
if (type_guard_1.isIdentifier(pattern)) {
|
|
142
|
+
_this.addIdentifier(pattern);
|
|
143
|
+
}
|
|
144
|
+
else if (type_guard_1.isObject(pattern)) {
|
|
145
|
+
_this.addNestedDeclaredProps(pattern);
|
|
146
|
+
}
|
|
147
|
+
else if (type_guard_1.isArray(pattern)) {
|
|
148
|
+
_this.addDestructuredArrayElements(pattern);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
});
|
|
153
|
+
Object.defineProperty(this, "addImplicitDeclarations", {
|
|
154
|
+
enumerable: true,
|
|
155
|
+
configurable: true,
|
|
156
|
+
writable: true,
|
|
157
|
+
value: function (_a) {
|
|
158
|
+
var expression = _a.expression;
|
|
159
|
+
if (type_guard_1.isAssignmentExpression(expression)) {
|
|
160
|
+
_this.addSingleImplicitVar(expression);
|
|
161
|
+
}
|
|
162
|
+
else if (type_guard_1.isSequenceExpression(expression)) {
|
|
163
|
+
_this.addMultipleImplicitVar(expression);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
Object.defineProperty(this, "addSingleImplicitVar", {
|
|
168
|
+
enumerable: true,
|
|
169
|
+
configurable: true,
|
|
170
|
+
writable: true,
|
|
171
|
+
value: function (expression) {
|
|
172
|
+
if (type_guard_1.isIdentifier(expression.left)) {
|
|
173
|
+
var assignedName = _this.getIdentifierName(expression.left);
|
|
174
|
+
if (!_this.untouchables.includes(assignedName)) {
|
|
175
|
+
_this.addIdentifier(expression.left);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
else if (type_guard_1.isObject(expression.left)) {
|
|
179
|
+
_this.addNestedDeclaredProps(expression.left);
|
|
180
|
+
}
|
|
181
|
+
else if (type_guard_1.isArray(expression.left)) {
|
|
182
|
+
_this.addDestructuredArrayElements(expression.left);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
});
|
|
186
|
+
Object.defineProperty(this, "addMultipleImplicitVar", {
|
|
187
|
+
enumerable: true,
|
|
188
|
+
configurable: true,
|
|
189
|
+
writable: true,
|
|
190
|
+
value: function (_a) {
|
|
191
|
+
var expressions = _a.expressions;
|
|
192
|
+
for (var _i = 0, expressions_1 = expressions; _i < expressions_1.length; _i++) {
|
|
193
|
+
var expression = expressions_1[_i];
|
|
194
|
+
if (type_guard_1.isAssignmentExpression(expression)) {
|
|
195
|
+
_this.addSingleImplicitVar(expression);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
this.ast = new acorn_js_parser_1.AcornJSParser().parse(script);
|
|
201
|
+
this.untouchables = [];
|
|
202
|
+
this.detected = new Set();
|
|
203
|
+
}
|
|
204
|
+
Object.defineProperty(ASTWalker.prototype, "addIdentifier", {
|
|
205
|
+
enumerable: false,
|
|
206
|
+
configurable: true,
|
|
207
|
+
writable: true,
|
|
208
|
+
value: function (id) {
|
|
209
|
+
this.detected.add(this.getIdentifierName(id));
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
return ASTWalker;
|
|
213
|
+
}());
|
|
214
|
+
exports.ASTWalker = ASTWalker;
|
|
215
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/post-script/ast-walker/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Node } from 'estree';
|
|
2
|
+
import './types';
|
|
3
|
+
export declare const isFunctionDeclaration: (node: Node) => boolean;
|
|
4
|
+
export declare const isVariableDeclaration: (node: Node) => boolean;
|
|
5
|
+
export declare const isExpressionStatement: (node: Node) => boolean;
|
|
6
|
+
export declare const isAssignmentExpression: (node: Node) => boolean;
|
|
7
|
+
export declare const isSequenceExpression: (node: Node) => boolean;
|
|
8
|
+
export declare const isIdentifier: (node: Node) => boolean;
|
|
9
|
+
export declare const isArray: (node: Node) => boolean;
|
|
10
|
+
export declare const isObject: (node: Node) => boolean;
|
|
11
|
+
export declare const isRestElement: (node: Node) => boolean;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isRestElement = exports.isObject = exports.isArray = exports.isIdentifier = exports.isSequenceExpression = exports.isAssignmentExpression = exports.isExpressionStatement = exports.isVariableDeclaration = exports.isFunctionDeclaration = void 0;
|
|
4
|
+
var string_utils_1 = require("@loadmill/universal/dist/string-utils");
|
|
5
|
+
var types_1 = require("./types");
|
|
6
|
+
require("./types");
|
|
7
|
+
var isFunctionDeclaration = function (node) {
|
|
8
|
+
return isOfType(node, types_1.Declarations, types_1.Declarations.FunctionDeclaration) && hasId(node);
|
|
9
|
+
};
|
|
10
|
+
exports.isFunctionDeclaration = isFunctionDeclaration;
|
|
11
|
+
var hasId = function (node) { return !!node.id; };
|
|
12
|
+
var isVariableDeclaration = function (node) {
|
|
13
|
+
return isOfType(node, types_1.Declarations, types_1.Declarations.VariableDeclaration) && hasDeclarations(node);
|
|
14
|
+
};
|
|
15
|
+
exports.isVariableDeclaration = isVariableDeclaration;
|
|
16
|
+
var hasDeclarations = function (node) { return Array.isArray(node.declarations); };
|
|
17
|
+
var isExpressionStatement = function (node) {
|
|
18
|
+
return isOfType(node, types_1.Statements, types_1.Statements.ExpressionStatement) && hasExpression(node);
|
|
19
|
+
};
|
|
20
|
+
exports.isExpressionStatement = isExpressionStatement;
|
|
21
|
+
var hasExpression = function (node) { return !!node.expression; };
|
|
22
|
+
var isAssignmentExpression = function (node) {
|
|
23
|
+
return isOfType(node, types_1.Expressions, types_1.Expressions.AssignmentExpression) && hasLeft(node);
|
|
24
|
+
};
|
|
25
|
+
exports.isAssignmentExpression = isAssignmentExpression;
|
|
26
|
+
var hasLeft = function (node) { return !!node.left; };
|
|
27
|
+
var isSequenceExpression = function (node) {
|
|
28
|
+
return isOfType(node, types_1.Expressions, types_1.Expressions.SequenceExpression) && hasExpressions(node);
|
|
29
|
+
};
|
|
30
|
+
exports.isSequenceExpression = isSequenceExpression;
|
|
31
|
+
var hasExpressions = function (node) { return Array.isArray(node.expressions); };
|
|
32
|
+
var isIdentifier = function (node) {
|
|
33
|
+
return isOfType(node, types_1.Patterns, types_1.Patterns.Identifier) && hasName(node);
|
|
34
|
+
};
|
|
35
|
+
exports.isIdentifier = isIdentifier;
|
|
36
|
+
var hasName = function (id) { return string_utils_1.isNonEmptyString(id.name); };
|
|
37
|
+
var isArray = function (node) {
|
|
38
|
+
return isOfType(node, types_1.Patterns, types_1.Patterns.ArrayPattern) && hasElements(node);
|
|
39
|
+
};
|
|
40
|
+
exports.isArray = isArray;
|
|
41
|
+
var hasElements = function (node) { return Array.isArray(node.elements); };
|
|
42
|
+
var isObject = function (node) {
|
|
43
|
+
return isOfType(node, types_1.Patterns, types_1.Patterns.ObjectPattern) && hasProperties(node);
|
|
44
|
+
};
|
|
45
|
+
exports.isObject = isObject;
|
|
46
|
+
var hasProperties = function (node) { return Array.isArray(node.properties); };
|
|
47
|
+
var isRestElement = function (node) {
|
|
48
|
+
return isOfType(node, types_1.Patterns, types_1.Patterns.RestElement) && hasArgument(node);
|
|
49
|
+
};
|
|
50
|
+
exports.isRestElement = isRestElement;
|
|
51
|
+
var hasArgument = function (rest) { return !!rest.argument; };
|
|
52
|
+
var isOfType = function (node, enumerator, // can't type an enum for some reason
|
|
53
|
+
type) {
|
|
54
|
+
return node.type === enumerator[type];
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=type-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type-guard.js","sourceRoot":"","sources":["../../../src/post-script/ast-walker/type-guard.ts"],"names":[],"mappings":";;;AAUA,sEAAyE;AACzE,iCAOiB;AACjB,mBAAiB;AAEV,IAAM,qBAAqB,GAAG,UAAC,IAAU;IAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,oBAAY,EAAE,oBAAY,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,IAA2B,CAAC,CAAC;AAC9G,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AACF,IAAM,KAAK,GAAG,UAAC,IAAyB,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,EAAE,EAAT,CAAS,CAAC;AAEhD,IAAM,qBAAqB,GAAG,UAAC,IAAU;IAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,oBAAY,EAAE,oBAAY,CAAC,mBAAmB,CAAC,IAAI,eAAe,CAAC,IAA2B,CAAC,CAAC;AACxH,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AACF,IAAM,eAAe,GAAG,UAAC,IAAyB,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,EAAhC,CAAgC,CAAC;AAEjF,IAAM,qBAAqB,GAAG,UAAC,IAAU;IAC9C,OAAO,QAAQ,CAAC,IAAI,EAAE,kBAAU,EAAE,kBAAU,CAAC,mBAAmB,CAAC,IAAI,aAAa,CAAC,IAA2B,CAAC,CAAC;AAClH,CAAC,CAAC;AAFW,QAAA,qBAAqB,yBAEhC;AACF,IAAM,aAAa,GAAG,UAAC,IAAyB,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,UAAU,EAAjB,CAAiB,CAAC;AAEhE,IAAM,sBAAsB,GAAG,UAAC,IAAU;IAC/C,OAAO,QAAQ,CAAC,IAAI,EAAE,mBAAW,EAAE,mBAAW,CAAC,oBAAoB,CAAC,IAAI,OAAO,CAAC,IAA4B,CAAC,CAAC;AAChH,CAAC,CAAC;AAFW,QAAA,sBAAsB,0BAEjC;AACF,IAAM,OAAO,GAAG,UAAC,IAA0B,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,IAAI,EAAX,CAAW,CAAC;AAErD,IAAM,oBAAoB,GAAG,UAAC,IAAU;IAC7C,OAAO,QAAQ,CAAC,IAAI,EAAE,mBAAW,EAAE,mBAAW,CAAC,kBAAkB,CAAC,IAAI,cAAc,CAAC,IAA0B,CAAC,CAAC;AACnH,CAAC,CAAC;AAFW,QAAA,oBAAoB,wBAE/B;AACF,IAAM,cAAc,GAAG,UAAC,IAAwB,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAA/B,CAA+B,CAAC;AAE9E,IAAM,YAAY,GAAG,UAAC,IAAU;IACrC,OAAO,QAAQ,CAAC,IAAI,EAAE,gBAAQ,EAAE,gBAAQ,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,IAAkB,CAAC,CAAC;AACtF,CAAC,CAAC;AAFW,QAAA,YAAY,gBAEvB;AACF,IAAM,OAAO,GAAG,UAAC,EAAc,IAAK,OAAA,+BAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAzB,CAAyB,CAAC;AAEvD,IAAM,OAAO,GAAG,UAAC,IAAU;IAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,gBAAQ,EAAE,gBAAQ,CAAC,YAAY,CAAC,IAAI,WAAW,CAAC,IAAoB,CAAC,CAAC;AAC9F,CAAC,CAAC;AAFW,QAAA,OAAO,WAElB;AACF,IAAM,WAAW,GAAG,UAAC,IAAkB,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAA5B,CAA4B,CAAC;AAElE,IAAM,QAAQ,GAAG,UAAC,IAAU;IACjC,OAAO,QAAQ,CAAC,IAAI,EAAE,gBAAQ,EAAE,gBAAQ,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,IAAqB,CAAC,CAAC;AAClG,CAAC,CAAC;AAFW,QAAA,QAAQ,YAEnB;AACF,IAAM,aAAa,GAAG,UAAC,IAAmB,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAA9B,CAA8B,CAAC;AAEvE,IAAM,aAAa,GAAG,UAAC,IAAU;IACtC,OAAO,QAAQ,CAAC,IAAI,EAAE,gBAAQ,EAAE,gBAAQ,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,IAAmB,CAAC,CAAC;AAC5F,CAAC,CAAC;AAFW,QAAA,aAAa,iBAExB;AACF,IAAM,WAAW,GAAG,UAAC,IAAiB,IAAK,OAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAf,CAAe,CAAC;AAE3D,IAAM,QAAQ,GAAG,UACf,IAAU,EACV,UAAe,EAAE,qCAAqC;AACtD,IAAwD;IAExD,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ArrayPattern as ESTArrayPattern, FunctionDeclaration as ESTFunctionDeclaration, Identifier, Pattern } from 'estree';
|
|
2
|
+
export interface ArrayPattern extends ESTArrayPattern {
|
|
3
|
+
elements: Array<Pattern>;
|
|
4
|
+
}
|
|
5
|
+
export interface FunctionDeclaration extends ESTFunctionDeclaration {
|
|
6
|
+
id: Identifier;
|
|
7
|
+
}
|
|
8
|
+
export declare enum Declarations {
|
|
9
|
+
FunctionDeclaration = "FunctionDeclaration",
|
|
10
|
+
VariableDeclaration = "VariableDeclaration"
|
|
11
|
+
}
|
|
12
|
+
export declare enum Expressions {
|
|
13
|
+
AssignmentExpression = "AssignmentExpression",
|
|
14
|
+
SequenceExpression = "SequenceExpression"
|
|
15
|
+
}
|
|
16
|
+
export declare enum Patterns {
|
|
17
|
+
ObjectPattern = "ObjectPattern",
|
|
18
|
+
ArrayPattern = "ArrayPattern",
|
|
19
|
+
RestElement = "RestElement",
|
|
20
|
+
Identifier = "Identifier"
|
|
21
|
+
}
|
|
22
|
+
export declare enum Statements {
|
|
23
|
+
ExpressionStatement = "ExpressionStatement"
|
|
24
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Statements = exports.Patterns = exports.Expressions = exports.Declarations = void 0;
|
|
4
|
+
var Declarations;
|
|
5
|
+
(function (Declarations) {
|
|
6
|
+
Declarations["FunctionDeclaration"] = "FunctionDeclaration";
|
|
7
|
+
Declarations["VariableDeclaration"] = "VariableDeclaration";
|
|
8
|
+
})(Declarations = exports.Declarations || (exports.Declarations = {}));
|
|
9
|
+
var Expressions;
|
|
10
|
+
(function (Expressions) {
|
|
11
|
+
Expressions["AssignmentExpression"] = "AssignmentExpression";
|
|
12
|
+
Expressions["SequenceExpression"] = "SequenceExpression";
|
|
13
|
+
})(Expressions = exports.Expressions || (exports.Expressions = {}));
|
|
14
|
+
var Patterns;
|
|
15
|
+
(function (Patterns) {
|
|
16
|
+
Patterns["ObjectPattern"] = "ObjectPattern";
|
|
17
|
+
Patterns["ArrayPattern"] = "ArrayPattern";
|
|
18
|
+
Patterns["RestElement"] = "RestElement";
|
|
19
|
+
Patterns["Identifier"] = "Identifier";
|
|
20
|
+
})(Patterns = exports.Patterns || (exports.Patterns = {}));
|
|
21
|
+
var Statements;
|
|
22
|
+
(function (Statements) {
|
|
23
|
+
Statements["ExpressionStatement"] = "ExpressionStatement";
|
|
24
|
+
})(Statements = exports.Statements || (exports.Statements = {}));
|
|
25
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/post-script/ast-walker/types.ts"],"names":[],"mappings":";;;AAeA,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,2DAA2C,CAAA;IAC3C,2DAA2C,CAAA;AAC7C,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAED,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,4DAA6C,CAAA;IAC7C,wDAAyC,CAAA;AAC3C,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAED,IAAY,QAKX;AALD,WAAY,QAAQ;IAClB,2CAA+B,CAAA;IAC/B,yCAA6B,CAAA;IAC7B,uCAA2B,CAAA;IAC3B,qCAAyB,CAAA;AAC3B,CAAC,EALW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAKnB;AAED,IAAY,UAEX;AAFD,WAAY,UAAU;IACpB,yDAA2C,CAAA;AAC7C,CAAC,EAFW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAErB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.myConsole = exports.CONSOLE_LOG_LIMIT = exports.LINE_LIMIT = void 0;
|
|
4
|
+
exports.LINE_LIMIT = 2500;
|
|
5
|
+
exports.CONSOLE_LOG_LIMIT = 100;
|
|
6
|
+
var isPassedTheLimit = function (line) { return line.length > exports.LINE_LIMIT; };
|
|
7
|
+
exports.myConsole = {
|
|
8
|
+
stdout: [],
|
|
9
|
+
log: function () {
|
|
10
|
+
var args = [];
|
|
11
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
12
|
+
args[_i] = arguments[_i];
|
|
13
|
+
}
|
|
14
|
+
if (exports.myConsole.stdout.length >= exports.CONSOLE_LOG_LIMIT) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
var line = '';
|
|
18
|
+
for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
|
|
19
|
+
var item = args_1[_a];
|
|
20
|
+
line += typeof item === 'object' ? JSON.stringify(item, undefined, 2) : item;
|
|
21
|
+
if (isPassedTheLimit(line)) {
|
|
22
|
+
line = line.substring(0, exports.LINE_LIMIT) + '\n...';
|
|
23
|
+
break;
|
|
24
|
+
}
|
|
25
|
+
line += ' ';
|
|
26
|
+
}
|
|
27
|
+
!!line && exports.myConsole.stdout.push(line);
|
|
28
|
+
},
|
|
29
|
+
setStdout: function (newStdout) { return exports.myConsole.stdout = newStdout; },
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=console-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console-log.js","sourceRoot":"","sources":["../../src/post-script/console-log.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,IAAI,CAAC;AAClB,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAErC,IAAM,gBAAgB,GAAG,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,MAAM,GAAG,kBAAU,EAAxB,CAAwB,CAAC;AAE/C,QAAA,SAAS,GAAG;IACvB,MAAM,EAAE,EAAc;IACtB,GAAG,EAAE;QAAC,cAAO;aAAP,UAAO,EAAP,qBAAO,EAAP,IAAO;YAAP,yBAAO;;QACX,IAAI,iBAAS,CAAC,MAAM,CAAC,MAAM,IAAI,yBAAiB,EAAE;YAChD,OAAO;SACR;QACD,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,KAAmB,UAAI,EAAJ,aAAI,EAAJ,kBAAI,EAAJ,IAAI,EAAE;YAApB,IAAM,IAAI,aAAA;YACb,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7E,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE;gBAC1B,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,kBAAU,CAAC,GAAG,OAAO,CAAC;gBAC/C,MAAM;aACP;YACD,IAAI,IAAI,GAAG,CAAC;SACb;QACD,CAAC,CAAC,IAAI,IAAI,iBAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IACD,SAAS,EAAE,UAAC,SAAS,IAAK,OAAA,iBAAS,CAAC,MAAM,GAAG,SAAS,EAA5B,CAA4B;CACvD,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.POSTSCRIPT = void 0;
|
|
4
|
+
var POSTSCRIPT;
|
|
5
|
+
(function (POSTSCRIPT) {
|
|
6
|
+
POSTSCRIPT["STARTED"] = "postscript-started";
|
|
7
|
+
POSTSCRIPT["FINISHED"] = "postscript-finished";
|
|
8
|
+
})(POSTSCRIPT = exports.POSTSCRIPT || (exports.POSTSCRIPT = {}));
|
|
9
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/post-script/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,4CAA8B,CAAA;IAC9B,8CAAgC,CAAA;AACpC,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AcornJSParser = void 0;
|
|
4
|
+
var acorn_1 = require("acorn");
|
|
5
|
+
var AcornJSParser = /** @class */ (function () {
|
|
6
|
+
function AcornJSParser() {
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(AcornJSParser.prototype, "parse", {
|
|
9
|
+
enumerable: false,
|
|
10
|
+
configurable: true,
|
|
11
|
+
writable: true,
|
|
12
|
+
value: function (script, options) {
|
|
13
|
+
if (options === void 0) { options = { ecmaVersion: 2020 }; }
|
|
14
|
+
return acorn_1.parse(script, options);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
return AcornJSParser;
|
|
18
|
+
}());
|
|
19
|
+
exports.AcornJSParser = AcornJSParser;
|
|
20
|
+
//# sourceMappingURL=acorn-js-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorn-js-parser.js","sourceRoot":"","sources":["../../../src/post-script/parser/acorn-js-parser.ts"],"names":[],"mappings":";;;AAAA,+BAAuC;AAGvC;IAAA;IAIA,CAAC;;;;;eAHC,UAAM,MAAc,EAAE,OAAwC;YAAxC,wBAAA,EAAA,YAAqB,WAAW,EAAE,IAAI,EAAE;YAC5D,OAAO,aAAK,CAAC,MAAM,EAAE,OAAO,CAAW,CAAC;QAC1C,CAAC;;IACH,oBAAC;AAAD,CAAC,AAJD,IAIC;AAJY,sCAAa"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Node, Program } from 'estree';
|
|
2
|
+
import { Parser } from './parser';
|
|
3
|
+
interface JSParser extends Parser {
|
|
4
|
+
parse(script: string, options?: JSParserOptions): ESTree;
|
|
5
|
+
}
|
|
6
|
+
declare type ExtendNode<T> = {
|
|
7
|
+
[K in keyof T]: T[K] extends object ? ExtendNode<T[K]> : T[K];
|
|
8
|
+
} & (T extends Node ? {
|
|
9
|
+
start: number;
|
|
10
|
+
end: number;
|
|
11
|
+
} : {});
|
|
12
|
+
declare type ESTree = ExtendNode<Program>;
|
|
13
|
+
declare type JSParserOptions = {
|
|
14
|
+
ecmaVersion: number | string;
|
|
15
|
+
};
|
|
16
|
+
export { ESTree, JSParser, JSParserOptions, };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"js-parser.js","sourceRoot":"","sources":["../../../src/post-script/parser/js-parser.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/post-script/parser/parser.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ParseJson } from '@loadmill/universal/dist/typescript-utils';
|
|
2
|
+
import { SequenceExecutorParameters } from '@loadmill/core/dist/parameters';
|
|
3
|
+
import { ParameterFunctionOperations } from '@loadmill/core/dist/parameters/parameter-functions/parameter-functions';
|
|
4
|
+
export declare class PostScriptRunner {
|
|
5
|
+
run: (outerStaticContext?: OuterStaticContext, dynamicContext?: SequenceExecutorParameters, userCode?: string, responseBody?: ParseJson) => {
|
|
6
|
+
result: SequenceExecutorParameters;
|
|
7
|
+
};
|
|
8
|
+
private wrapUserCode;
|
|
9
|
+
/**
|
|
10
|
+
* If the response JSON is an array, we need to unproxify it
|
|
11
|
+
* https://github.com/patriksimek/vm2/issues/437
|
|
12
|
+
*/
|
|
13
|
+
private unproxifyResponseBody;
|
|
14
|
+
validateCircularDependency: (obj: SequenceExecutorParameters) => void;
|
|
15
|
+
private removeAssertModule;
|
|
16
|
+
private unproxify;
|
|
17
|
+
}
|
|
18
|
+
declare type OuterStaticContext = {
|
|
19
|
+
staticContext: StaticContext;
|
|
20
|
+
};
|
|
21
|
+
declare type StaticContext = {
|
|
22
|
+
__: ParameterFunctionOperations;
|
|
23
|
+
};
|
|
24
|
+
export {};
|