@n8n/task-runner 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/build.tsbuildinfo +1 -1
  2. package/dist/config/base-runner-config.d.ts +6 -0
  3. package/dist/config/base-runner-config.js +42 -0
  4. package/dist/config/base-runner-config.js.map +1 -0
  5. package/dist/config/js-runner-config.d.ts +4 -0
  6. package/dist/config/js-runner-config.js +32 -0
  7. package/dist/config/js-runner-config.js.map +1 -0
  8. package/dist/config/main-config.d.ts +6 -0
  9. package/dist/config/main-config.js +30 -0
  10. package/dist/config/main-config.js.map +1 -0
  11. package/dist/index.d.ts +1 -0
  12. package/dist/index.js +1 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/js-task-runner/built-ins-parser/acorn-helpers.d.ts +6 -0
  15. package/dist/js-task-runner/built-ins-parser/acorn-helpers.js +23 -0
  16. package/dist/js-task-runner/built-ins-parser/acorn-helpers.js.map +1 -0
  17. package/dist/js-task-runner/built-ins-parser/built-ins-parser-state.d.ts +18 -0
  18. package/dist/js-task-runner/built-ins-parser/built-ins-parser-state.js +56 -0
  19. package/dist/js-task-runner/built-ins-parser/built-ins-parser-state.js.map +1 -0
  20. package/dist/js-task-runner/built-ins-parser/built-ins-parser.d.ts +10 -0
  21. package/dist/js-task-runner/built-ins-parser/built-ins-parser.js +89 -0
  22. package/dist/js-task-runner/built-ins-parser/built-ins-parser.js.map +1 -0
  23. package/dist/js-task-runner/js-task-runner.d.ts +4 -10
  24. package/dist/js-task-runner/js-task-runner.js +39 -18
  25. package/dist/js-task-runner/js-task-runner.js.map +1 -1
  26. package/dist/message-types.d.ts +177 -0
  27. package/dist/message-types.js +3 -0
  28. package/dist/message-types.js.map +1 -0
  29. package/dist/node-types.d.ts +3 -0
  30. package/dist/node-types.js +22 -0
  31. package/dist/node-types.js.map +1 -1
  32. package/dist/runner-types.d.ts +60 -157
  33. package/dist/runner-types.js.map +1 -1
  34. package/dist/start.js +7 -19
  35. package/dist/start.js.map +1 -1
  36. package/dist/task-runner.d.ts +25 -13
  37. package/dist/task-runner.js +41 -21
  38. package/dist/task-runner.js.map +1 -1
  39. package/package.json +22 -6
@@ -0,0 +1,6 @@
1
+ export declare class BaseRunnerConfig {
2
+ n8nUri: string;
3
+ grantToken: string;
4
+ maxPayloadSize: number;
5
+ maxConcurrency: number;
6
+ }
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseRunnerConfig = void 0;
13
+ const config_1 = require("@n8n/config");
14
+ let BaseRunnerConfig = class BaseRunnerConfig {
15
+ constructor() {
16
+ this.n8nUri = '127.0.0.1:5679';
17
+ this.grantToken = '';
18
+ this.maxPayloadSize = 1024 * 1024 * 1024;
19
+ this.maxConcurrency = 5;
20
+ }
21
+ };
22
+ exports.BaseRunnerConfig = BaseRunnerConfig;
23
+ __decorate([
24
+ (0, config_1.Env)('N8N_RUNNERS_N8N_URI'),
25
+ __metadata("design:type", String)
26
+ ], BaseRunnerConfig.prototype, "n8nUri", void 0);
27
+ __decorate([
28
+ (0, config_1.Env)('N8N_RUNNERS_GRANT_TOKEN'),
29
+ __metadata("design:type", String)
30
+ ], BaseRunnerConfig.prototype, "grantToken", void 0);
31
+ __decorate([
32
+ (0, config_1.Env)('N8N_RUNNERS_MAX_PAYLOAD'),
33
+ __metadata("design:type", Number)
34
+ ], BaseRunnerConfig.prototype, "maxPayloadSize", void 0);
35
+ __decorate([
36
+ (0, config_1.Env)('N8N_RUNNERS_MAX_CONCURRENCY'),
37
+ __metadata("design:type", Number)
38
+ ], BaseRunnerConfig.prototype, "maxConcurrency", void 0);
39
+ exports.BaseRunnerConfig = BaseRunnerConfig = __decorate([
40
+ config_1.Config
41
+ ], BaseRunnerConfig);
42
+ //# sourceMappingURL=base-runner-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-runner-config.js","sourceRoot":"","sources":["../../src/config/base-runner-config.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAA0C;AAGnC,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAAtB;QAEN,WAAM,GAAW,gBAAgB,CAAC;QAGlC,eAAU,GAAW,EAAE,CAAC;QAGxB,mBAAc,GAAW,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QAG5C,mBAAc,GAAW,CAAC,CAAC;IAC5B,CAAC;CAAA,CAAA;AAZY,4CAAgB;AAE5B;IADC,IAAA,YAAG,EAAC,qBAAqB,CAAC;;gDACO;AAGlC;IADC,IAAA,YAAG,EAAC,yBAAyB,CAAC;;oDACP;AAGxB;IADC,IAAA,YAAG,EAAC,yBAAyB,CAAC;;wDACa;AAG5C;IADC,IAAA,YAAG,EAAC,6BAA6B,CAAC;;wDACR;2BAXf,gBAAgB;IAD5B,eAAM;GACM,gBAAgB,CAY5B"}
@@ -0,0 +1,4 @@
1
+ export declare class JsRunnerConfig {
2
+ allowedBuiltInModules: string;
3
+ allowedExternalModules: string;
4
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.JsRunnerConfig = void 0;
13
+ const config_1 = require("@n8n/config");
14
+ let JsRunnerConfig = class JsRunnerConfig {
15
+ constructor() {
16
+ this.allowedBuiltInModules = '';
17
+ this.allowedExternalModules = '';
18
+ }
19
+ };
20
+ exports.JsRunnerConfig = JsRunnerConfig;
21
+ __decorate([
22
+ (0, config_1.Env)('NODE_FUNCTION_ALLOW_BUILTIN'),
23
+ __metadata("design:type", String)
24
+ ], JsRunnerConfig.prototype, "allowedBuiltInModules", void 0);
25
+ __decorate([
26
+ (0, config_1.Env)('NODE_FUNCTION_ALLOW_EXTERNAL'),
27
+ __metadata("design:type", String)
28
+ ], JsRunnerConfig.prototype, "allowedExternalModules", void 0);
29
+ exports.JsRunnerConfig = JsRunnerConfig = __decorate([
30
+ config_1.Config
31
+ ], JsRunnerConfig);
32
+ //# sourceMappingURL=js-runner-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"js-runner-config.js","sourceRoot":"","sources":["../../src/config/js-runner-config.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAA0C;AAGnC,IAAM,cAAc,GAApB,MAAM,cAAc;IAApB;QAEN,0BAAqB,GAAW,EAAE,CAAC;QAGnC,2BAAsB,GAAW,EAAE,CAAC;IACrC,CAAC;CAAA,CAAA;AANY,wCAAc;AAE1B;IADC,IAAA,YAAG,EAAC,6BAA6B,CAAC;;6DACA;AAGnC;IADC,IAAA,YAAG,EAAC,8BAA8B,CAAC;;8DACA;yBALxB,cAAc;IAD1B,eAAM;GACM,cAAc,CAM1B"}
@@ -0,0 +1,6 @@
1
+ import { BaseRunnerConfig } from './base-runner-config';
2
+ import { JsRunnerConfig } from './js-runner-config';
3
+ export declare class MainConfig {
4
+ baseRunnerConfig: BaseRunnerConfig;
5
+ jsRunnerConfig: JsRunnerConfig;
6
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MainConfig = void 0;
13
+ const config_1 = require("@n8n/config");
14
+ const base_runner_config_1 = require("./base-runner-config");
15
+ const js_runner_config_1 = require("./js-runner-config");
16
+ let MainConfig = class MainConfig {
17
+ };
18
+ exports.MainConfig = MainConfig;
19
+ __decorate([
20
+ config_1.Nested,
21
+ __metadata("design:type", base_runner_config_1.BaseRunnerConfig)
22
+ ], MainConfig.prototype, "baseRunnerConfig", void 0);
23
+ __decorate([
24
+ config_1.Nested,
25
+ __metadata("design:type", js_runner_config_1.JsRunnerConfig)
26
+ ], MainConfig.prototype, "jsRunnerConfig", void 0);
27
+ exports.MainConfig = MainConfig = __decorate([
28
+ config_1.Config
29
+ ], MainConfig);
30
+ //# sourceMappingURL=main-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-config.js","sourceRoot":"","sources":["../../src/config/main-config.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAA6C;AAE7C,6DAAwD;AACxD,yDAAoD;AAG7C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAMtB,CAAA;AANY,gCAAU;AAEtB;IADC,eAAM;8BACY,qCAAgB;oDAAC;AAGpC;IADC,eAAM;8BACU,iCAAc;kDAAC;qBALpB,UAAU;IADtB,eAAM;GACM,UAAU,CAMtB"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './task-runner';
2
2
  export * from './runner-types';
3
+ export * from './message-types';
package/dist/index.js CHANGED
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./task-runner"), exports);
18
18
  __exportStar(require("./runner-types"), exports);
19
+ __exportStar(require("./message-types"), exports);
19
20
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,iDAA+B;AAC/B,kDAAgC"}
@@ -0,0 +1,6 @@
1
+ import type { AssignmentExpression, Identifier, Literal, MemberExpression, Node, VariableDeclarator } from 'acorn';
2
+ export declare function isLiteral(node?: Node): node is Literal;
3
+ export declare function isIdentifier(node?: Node): node is Identifier;
4
+ export declare function isMemberExpression(node?: Node): node is MemberExpression;
5
+ export declare function isVariableDeclarator(node?: Node): node is VariableDeclarator;
6
+ export declare function isAssignmentExpression(node?: Node): node is AssignmentExpression;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isLiteral = isLiteral;
4
+ exports.isIdentifier = isIdentifier;
5
+ exports.isMemberExpression = isMemberExpression;
6
+ exports.isVariableDeclarator = isVariableDeclarator;
7
+ exports.isAssignmentExpression = isAssignmentExpression;
8
+ function isLiteral(node) {
9
+ return node?.type === 'Literal';
10
+ }
11
+ function isIdentifier(node) {
12
+ return node?.type === 'Identifier';
13
+ }
14
+ function isMemberExpression(node) {
15
+ return node?.type === 'MemberExpression';
16
+ }
17
+ function isVariableDeclarator(node) {
18
+ return node?.type === 'VariableDeclarator';
19
+ }
20
+ function isAssignmentExpression(node) {
21
+ return node?.type === 'AssignmentExpression';
22
+ }
23
+ //# sourceMappingURL=acorn-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorn-helpers.js","sourceRoot":"","sources":["../../../src/js-task-runner/built-ins-parser/acorn-helpers.ts"],"names":[],"mappings":";;AASA,8BAEC;AAED,oCAEC;AAED,gDAEC;AAED,oDAEC;AAED,wDAEC;AAlBD,SAAgB,SAAS,CAAC,IAAW;IACpC,OAAO,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC;AACjC,CAAC;AAED,SAAgB,YAAY,CAAC,IAAW;IACvC,OAAO,IAAI,EAAE,IAAI,KAAK,YAAY,CAAC;AACpC,CAAC;AAED,SAAgB,kBAAkB,CAAC,IAAW;IAC7C,OAAO,IAAI,EAAE,IAAI,KAAK,kBAAkB,CAAC;AAC1C,CAAC;AAED,SAAgB,oBAAoB,CAAC,IAAW;IAC/C,OAAO,IAAI,EAAE,IAAI,KAAK,oBAAoB,CAAC;AAC5C,CAAC;AAED,SAAgB,sBAAsB,CAAC,IAAW;IACjD,OAAO,IAAI,EAAE,IAAI,KAAK,sBAAsB,CAAC;AAC9C,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { BrokerMessage } from '../../message-types';
2
+ export declare class BuiltInsParserState {
3
+ neededNodeNames: Set<string>;
4
+ needsAllNodes: boolean;
5
+ needs$env: boolean;
6
+ needs$input: boolean;
7
+ needs$execution: boolean;
8
+ needs$prevNode: boolean;
9
+ constructor(opts?: Partial<BuiltInsParserState>);
10
+ markNeedsAllNodes(): void;
11
+ markNodeAsNeeded(nodeName: string): void;
12
+ markEnvAsNeeded(): void;
13
+ markInputAsNeeded(): void;
14
+ markExecutionAsNeeded(): void;
15
+ markPrevNodeAsNeeded(): void;
16
+ toDataRequestParams(): BrokerMessage.ToRequester.TaskDataRequest['requestParams'];
17
+ static newNeedsAllDataState(): BuiltInsParserState;
18
+ }
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BuiltInsParserState = void 0;
4
+ class BuiltInsParserState {
5
+ constructor(opts = {}) {
6
+ this.neededNodeNames = new Set();
7
+ this.needsAllNodes = false;
8
+ this.needs$env = false;
9
+ this.needs$input = false;
10
+ this.needs$execution = false;
11
+ this.needs$prevNode = false;
12
+ Object.assign(this, opts);
13
+ }
14
+ markNeedsAllNodes() {
15
+ this.needsAllNodes = true;
16
+ this.needs$input = true;
17
+ this.neededNodeNames = new Set();
18
+ }
19
+ markNodeAsNeeded(nodeName) {
20
+ if (this.needsAllNodes) {
21
+ return;
22
+ }
23
+ this.neededNodeNames.add(nodeName);
24
+ }
25
+ markEnvAsNeeded() {
26
+ this.needs$env = true;
27
+ }
28
+ markInputAsNeeded() {
29
+ this.needs$input = true;
30
+ }
31
+ markExecutionAsNeeded() {
32
+ this.needs$execution = true;
33
+ }
34
+ markPrevNodeAsNeeded() {
35
+ this.needs$prevNode = true;
36
+ }
37
+ toDataRequestParams() {
38
+ return {
39
+ dataOfNodes: this.needsAllNodes ? 'all' : Array.from(this.neededNodeNames),
40
+ env: this.needs$env,
41
+ input: this.needs$input,
42
+ prevNode: this.needs$prevNode,
43
+ };
44
+ }
45
+ static newNeedsAllDataState() {
46
+ const obj = new BuiltInsParserState();
47
+ obj.markNeedsAllNodes();
48
+ obj.markEnvAsNeeded();
49
+ obj.markInputAsNeeded();
50
+ obj.markExecutionAsNeeded();
51
+ obj.markPrevNodeAsNeeded();
52
+ return obj;
53
+ }
54
+ }
55
+ exports.BuiltInsParserState = BuiltInsParserState;
56
+ //# sourceMappingURL=built-ins-parser-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"built-ins-parser-state.js","sourceRoot":"","sources":["../../../src/js-task-runner/built-ins-parser/built-ins-parser-state.ts"],"names":[],"mappings":";;;AAKA,MAAa,mBAAmB;IAa/B,YAAY,OAAqC,EAAE;QAZnD,oBAAe,GAAgB,IAAI,GAAG,EAAE,CAAC;QAEzC,kBAAa,GAAG,KAAK,CAAC;QAEtB,cAAS,GAAG,KAAK,CAAC;QAElB,gBAAW,GAAG,KAAK,CAAC;QAEpB,oBAAe,GAAG,KAAK,CAAC;QAExB,mBAAc,GAAG,KAAK,CAAC;QAGtB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IAKD,iBAAiB;QAChB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;IAClC,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAChC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,OAAO;QACR,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,eAAe;QACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,iBAAiB;QAChB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,qBAAqB;QACpB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,oBAAoB;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,mBAAmB;QAClB,OAAO;YACN,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;YAC1E,GAAG,EAAE,IAAI,CAAC,SAAS;YACnB,KAAK,EAAE,IAAI,CAAC,WAAW;YACvB,QAAQ,EAAE,IAAI,CAAC,cAAc;SAC7B,CAAC;IACH,CAAC;IAED,MAAM,CAAC,oBAAoB;QAC1B,MAAM,GAAG,GAAG,IAAI,mBAAmB,EAAE,CAAC;QACtC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACxB,GAAG,CAAC,eAAe,EAAE,CAAC;QACtB,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACxB,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAC5B,GAAG,CAAC,oBAAoB,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC;IACZ,CAAC;CACD;AApED,kDAoEC"}
@@ -0,0 +1,10 @@
1
+ import type { Result } from 'n8n-workflow';
2
+ import { BuiltInsParserState } from './built-ins-parser-state';
3
+ export declare class BuiltInsParser {
4
+ parseUsedBuiltIns(code: string): Result<BuiltInsParserState, Error>;
5
+ private identifyBuiltInsByWalkingAst;
6
+ private visitCallExpression;
7
+ private handlePrevNodeCall;
8
+ private visitIdentifier;
9
+ private isPairedItemProperty;
10
+ }
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BuiltInsParser = void 0;
4
+ const acorn_1 = require("acorn");
5
+ const acorn_walk_1 = require("acorn-walk");
6
+ const n8n_workflow_1 = require("n8n-workflow");
7
+ const acorn_helpers_1 = require("./acorn-helpers");
8
+ const built_ins_parser_state_1 = require("./built-ins-parser-state");
9
+ class BuiltInsParser {
10
+ constructor() {
11
+ this.visitCallExpression = (node, state, ancestors) => {
12
+ const isDollar = node.callee.type === 'Identifier' && node.callee.name === '$';
13
+ if (!isDollar)
14
+ return;
15
+ if (node.arguments.length === 0) {
16
+ return;
17
+ }
18
+ const firstArg = node.arguments[0];
19
+ if (!(0, acorn_helpers_1.isLiteral)(firstArg)) {
20
+ state.markNeedsAllNodes();
21
+ return;
22
+ }
23
+ if (typeof firstArg.value !== 'string') {
24
+ return;
25
+ }
26
+ state.markNodeAsNeeded(firstArg.value);
27
+ this.handlePrevNodeCall(node, state, ancestors);
28
+ };
29
+ this.visitIdentifier = (node, state) => {
30
+ if (node.name === '$env') {
31
+ state.markEnvAsNeeded();
32
+ }
33
+ else if (node.name === '$input' || node.name === '$json') {
34
+ state.markInputAsNeeded();
35
+ }
36
+ else if (node.name === '$execution') {
37
+ state.markExecutionAsNeeded();
38
+ }
39
+ else if (node.name === '$prevNode') {
40
+ state.markPrevNodeAsNeeded();
41
+ }
42
+ };
43
+ }
44
+ parseUsedBuiltIns(code) {
45
+ return (0, n8n_workflow_1.toResult)(() => {
46
+ const wrappedCode = `async function VmCodeWrapper() { ${code} }`;
47
+ const ast = (0, acorn_1.parse)(wrappedCode, { ecmaVersion: 2025, sourceType: 'module' });
48
+ return this.identifyBuiltInsByWalkingAst(ast);
49
+ });
50
+ }
51
+ identifyBuiltInsByWalkingAst(ast) {
52
+ const accessedBuiltIns = new built_ins_parser_state_1.BuiltInsParserState();
53
+ (0, acorn_walk_1.ancestor)(ast, {
54
+ CallExpression: this.visitCallExpression,
55
+ Identifier: this.visitIdentifier,
56
+ }, undefined, accessedBuiltIns);
57
+ return accessedBuiltIns;
58
+ }
59
+ handlePrevNodeCall(_node, state, ancestors) {
60
+ const directParent = ancestors[ancestors.length - 2];
61
+ if ((0, acorn_helpers_1.isMemberExpression)(directParent)) {
62
+ const accessedProperty = directParent.property;
63
+ if (directParent.computed) {
64
+ if ((0, acorn_helpers_1.isLiteral)(accessedProperty)) {
65
+ if (this.isPairedItemProperty(accessedProperty.value)) {
66
+ state.markNeedsAllNodes();
67
+ }
68
+ }
69
+ else if ((0, acorn_helpers_1.isIdentifier)(accessedProperty)) {
70
+ state.markNeedsAllNodes();
71
+ }
72
+ }
73
+ else if ((0, acorn_helpers_1.isIdentifier)(accessedProperty) && this.isPairedItemProperty(accessedProperty.name)) {
74
+ state.markNeedsAllNodes();
75
+ }
76
+ }
77
+ else if ((0, acorn_helpers_1.isVariableDeclarator)(directParent) || (0, acorn_helpers_1.isAssignmentExpression)(directParent)) {
78
+ state.markNeedsAllNodes();
79
+ }
80
+ else {
81
+ state.markNeedsAllNodes();
82
+ }
83
+ }
84
+ isPairedItemProperty(property) {
85
+ return property === 'item' || property === 'pairedItem' || property === 'itemMatching';
86
+ }
87
+ }
88
+ exports.BuiltInsParser = BuiltInsParser;
89
+ //# sourceMappingURL=built-ins-parser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"built-ins-parser.js","sourceRoot":"","sources":["../../../src/js-task-runner/built-ins-parser/built-ins-parser.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { CodeExecutionMode, INode, ITaskDataConnections, WorkflowParameters, IDataObject, IExecuteData, INodeExecutionData, INodeParameters, IRunExecutionData, WorkflowExecuteMode, EnvProviderState } from 'n8n-workflow';
2
2
  import type { TaskResultData } from '../runner-types';
3
3
  import { type Task, TaskRunner } from '../task-runner';
4
+ import type { MainConfig } from '../config/main-config';
4
5
  export interface JSExecSettings {
5
6
  code: string;
6
7
  nodeMode: CodeExecutionMode;
@@ -22,7 +23,7 @@ export interface PartialAdditionalData {
22
23
  userId?: string;
23
24
  variables: IDataObject;
24
25
  }
25
- export interface AllCodeTaskData {
26
+ export interface DataRequestResponse {
26
27
  workflow: Omit<WorkflowParameters, 'nodeTypes'>;
27
28
  inputData: ITaskDataConnections;
28
29
  node: INode;
@@ -40,17 +41,10 @@ export interface AllCodeTaskData {
40
41
  contextNodeName: string;
41
42
  additionalData: PartialAdditionalData;
42
43
  }
43
- export interface JsTaskRunnerOpts {
44
- wsUrl: string;
45
- grantToken: string;
46
- maxConcurrency: number;
47
- name?: string;
48
- allowedBuiltInModules?: string;
49
- allowedExternalModules?: string;
50
- }
51
44
  export declare class JsTaskRunner extends TaskRunner {
52
45
  private readonly requireResolver;
53
- constructor({ grantToken, maxConcurrency, wsUrl, name, allowedBuiltInModules, allowedExternalModules, }: JsTaskRunnerOpts);
46
+ private readonly builtInsParser;
47
+ constructor(config: MainConfig, name?: string);
54
48
  executeTask(task: Task<JSExecSettings>): Promise<TaskResultData>;
55
49
  private getNativeVariables;
56
50
  private runForAllItems;
@@ -29,25 +29,46 @@ const n8n_workflow_1 = require("n8n-workflow");
29
29
  const a = __importStar(require("node:assert"));
30
30
  const node_vm_1 = require("node:vm");
31
31
  const task_runner_1 = require("../task-runner");
32
+ const built_ins_parser_1 = require("./built-ins-parser/built-ins-parser");
33
+ const built_ins_parser_state_1 = require("./built-ins-parser/built-ins-parser-state");
32
34
  const error_like_1 = require("./errors/error-like");
33
35
  const execution_error_1 = require("./errors/execution-error");
34
36
  const serializable_error_1 = require("./errors/serializable-error");
35
37
  const require_resolver_1 = require("./require-resolver");
36
38
  const result_validation_1 = require("./result-validation");
37
39
  class JsTaskRunner extends task_runner_1.TaskRunner {
38
- constructor({ grantToken, maxConcurrency, wsUrl, name = 'JS Task Runner', allowedBuiltInModules, allowedExternalModules, }) {
39
- super('javascript', wsUrl, grantToken, maxConcurrency, name);
40
+ constructor(config, name = 'JS Task Runner') {
41
+ super({
42
+ taskType: 'javascript',
43
+ name,
44
+ ...config.baseRunnerConfig,
45
+ });
46
+ this.builtInsParser = new built_ins_parser_1.BuiltInsParser();
47
+ const { jsRunnerConfig } = config;
40
48
  const parseModuleAllowList = (moduleList) => moduleList === '*' ? null : new Set(moduleList.split(',').map((x) => x.trim()));
41
49
  this.requireResolver = (0, require_resolver_1.createRequireResolver)({
42
- allowedBuiltInModules: parseModuleAllowList(allowedBuiltInModules ?? ''),
43
- allowedExternalModules: parseModuleAllowList(allowedExternalModules ?? ''),
50
+ allowedBuiltInModules: parseModuleAllowList(jsRunnerConfig.allowedBuiltInModules ?? ''),
51
+ allowedExternalModules: parseModuleAllowList(jsRunnerConfig.allowedExternalModules ?? ''),
44
52
  });
45
53
  }
46
54
  async executeTask(task) {
47
- const allData = await this.requestData(task.taskId, 'all');
48
55
  const settings = task.settings;
49
56
  a.ok(settings, 'JS Code not sent to runner');
50
- const workflowParams = allData.workflow;
57
+ const neededBuiltInsResult = this.builtInsParser.parseUsedBuiltIns(settings.code);
58
+ const neededBuiltIns = neededBuiltInsResult.ok
59
+ ? neededBuiltInsResult.result
60
+ : built_ins_parser_state_1.BuiltInsParserState.newNeedsAllDataState();
61
+ const data = await this.requestData(task.taskId, neededBuiltIns.toDataRequestParams());
62
+ if (neededBuiltIns.needsAllNodes) {
63
+ const uniqueNodeTypes = new Map(data.workflow.nodes.map((node) => [
64
+ `${node.type}|${node.typeVersion}`,
65
+ { name: node.type, version: node.typeVersion },
66
+ ]));
67
+ const unknownNodeTypes = this.nodeTypes.onlyUnknown([...uniqueNodeTypes.values()]);
68
+ const nodeTypes = await this.requestNodeTypes(task.taskId, unknownNodeTypes);
69
+ this.nodeTypes.addNodeTypeDescriptions(nodeTypes);
70
+ }
71
+ const workflowParams = data.workflow;
51
72
  const workflow = new n8n_workflow_1.Workflow({
52
73
  ...workflowParams,
53
74
  nodeTypes: this.nodeTypes,
@@ -61,11 +82,11 @@ class JsTaskRunner extends task_runner_1.TaskRunner {
61
82
  },
62
83
  };
63
84
  const result = settings.nodeMode === 'runOnceForAllItems'
64
- ? await this.runForAllItems(task.taskId, settings, allData, workflow, customConsole)
65
- : await this.runForEachItem(task.taskId, settings, allData, workflow, customConsole);
85
+ ? await this.runForAllItems(task.taskId, settings, data, workflow, customConsole)
86
+ : await this.runForEachItem(task.taskId, settings, data, workflow, customConsole);
66
87
  return {
67
88
  result,
68
- customData: allData.runExecutionData.resultData.metadata,
89
+ customData: data.runExecutionData.resultData.metadata,
69
90
  };
70
91
  }
71
92
  getNativeVariables() {
@@ -88,9 +109,9 @@ class JsTaskRunner extends task_runner_1.TaskRunner {
88
109
  FormData,
89
110
  };
90
111
  }
91
- async runForAllItems(taskId, settings, allData, workflow, customConsole) {
92
- const dataProxy = this.createDataProxy(allData, workflow, allData.itemIndex);
93
- const inputItems = allData.connectionInputData;
112
+ async runForAllItems(taskId, settings, data, workflow, customConsole) {
113
+ const dataProxy = this.createDataProxy(data, workflow, data.itemIndex);
114
+ const inputItems = data.connectionInputData;
94
115
  const context = {
95
116
  require: this.requireResolver,
96
117
  module: {},
@@ -115,12 +136,12 @@ class JsTaskRunner extends task_runner_1.TaskRunner {
115
136
  throw error;
116
137
  }
117
138
  }
118
- async runForEachItem(taskId, settings, allData, workflow, customConsole) {
119
- const inputItems = allData.connectionInputData;
139
+ async runForEachItem(taskId, settings, data, workflow, customConsole) {
140
+ const inputItems = data.connectionInputData;
120
141
  const returnData = [];
121
142
  for (let index = 0; index < inputItems.length; index++) {
122
143
  const item = inputItems[index];
123
- const dataProxy = this.createDataProxy(allData, workflow, index);
144
+ const dataProxy = this.createDataProxy(data, workflow, index);
124
145
  const context = {
125
146
  require: this.requireResolver,
126
147
  module: {},
@@ -164,12 +185,12 @@ class JsTaskRunner extends task_runner_1.TaskRunner {
164
185
  }
165
186
  return returnData;
166
187
  }
167
- createDataProxy(allData, workflow, itemIndex) {
168
- return new n8n_workflow_1.WorkflowDataProxy(workflow, allData.runExecutionData, allData.runIndex, itemIndex, allData.activeNodeName, allData.connectionInputData, allData.siblingParameters, allData.mode, (0, n8n_core_1.getAdditionalKeys)(allData.additionalData, allData.mode, allData.runExecutionData), allData.executeData, allData.defaultReturnRunIndex, allData.selfData, allData.contextNodeName, allData.envProviderState ?? {
188
+ createDataProxy(data, workflow, itemIndex) {
189
+ return new n8n_workflow_1.WorkflowDataProxy(workflow, data.runExecutionData, data.runIndex, itemIndex, data.activeNodeName, data.connectionInputData, data.siblingParameters, data.mode, (0, n8n_core_1.getAdditionalKeys)(data.additionalData, data.mode, data.runExecutionData), data.executeData, data.defaultReturnRunIndex, data.selfData, data.contextNodeName, data.envProviderState ?? {
169
190
  env: {},
170
191
  isEnvAccessBlocked: false,
171
192
  isProcessAvailable: true,
172
- }).getDataProxy();
193
+ }).getDataProxy({ throwOnMissingExecutionData: false });
173
194
  }
174
195
  toExecutionErrorIfNeeded(error) {
175
196
  if (error instanceof Error) {
@@ -1 +1 @@
1
- {"version":3,"file":"js-task-runner.js","sourceRoot":"","sources":["../../src/js-task-runner/js-task-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"js-task-runner.js","sourceRoot":"","sources":["../../src/js-task-runner/js-task-runner.ts"],"names":[],"mappings":"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"}