@n8n/expression-runtime 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ARCHITECTURE.md +5 -6
- package/LICENSE_EE.md +27 -0
- package/README.md +11 -11
- package/dist/bundle/runtime.esm.js +45 -0
- package/dist/bundle/runtime.esm.js.map +7 -0
- package/dist/bundle/runtime.iife.js +45 -0
- package/dist/bundle/runtime.iife.js.map +7 -0
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts +132 -0
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -0
- package/dist/cjs/bridge/isolated-vm-bridge.js +500 -0
- package/dist/cjs/bridge/isolated-vm-bridge.js.map +1 -0
- package/dist/cjs/build.tsbuildinfo +1 -0
- package/dist/cjs/evaluator/expression-evaluator.d.ts +23 -0
- package/dist/cjs/evaluator/expression-evaluator.d.ts.map +1 -0
- package/dist/cjs/evaluator/expression-evaluator.js +87 -0
- package/dist/cjs/evaluator/expression-evaluator.js.map +1 -0
- package/dist/cjs/extensions/array-extensions.d.ts +34 -0
- package/dist/cjs/extensions/array-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/array-extensions.js +632 -0
- package/dist/cjs/extensions/array-extensions.js.map +1 -0
- package/dist/cjs/extensions/boolean-extensions.d.ts +6 -0
- package/dist/cjs/extensions/boolean-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/boolean-extensions.js +49 -0
- package/dist/cjs/extensions/boolean-extensions.js.map +1 -0
- package/dist/cjs/extensions/date-extensions.d.ts +3 -0
- package/dist/cjs/extensions/date-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/date-extensions.js +528 -0
- package/dist/cjs/extensions/date-extensions.js.map +1 -0
- package/dist/cjs/extensions/expression-extension-error.d.ts +7 -0
- package/dist/cjs/extensions/expression-extension-error.d.ts.map +1 -0
- package/dist/cjs/extensions/expression-extension-error.js +25 -0
- package/dist/cjs/extensions/expression-extension-error.js.map +1 -0
- package/dist/cjs/extensions/extend.d.ts +12 -0
- package/dist/cjs/extensions/extend.d.ts.map +1 -0
- package/dist/cjs/extensions/extend.js +149 -0
- package/dist/cjs/extensions/extend.js.map +1 -0
- package/dist/cjs/extensions/extensions.d.ts +43 -0
- package/dist/cjs/extensions/extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/extensions.js +13 -0
- package/dist/cjs/extensions/extensions.js.map +1 -0
- package/dist/cjs/extensions/number-extensions.d.ts +27 -0
- package/dist/cjs/extensions/number-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/number-extensions.js +235 -0
- package/dist/cjs/extensions/number-extensions.js.map +1 -0
- package/dist/cjs/extensions/object-extensions.d.ts +46 -0
- package/dist/cjs/extensions/object-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/object-extensions.js +297 -0
- package/dist/cjs/extensions/object-extensions.js.map +1 -0
- package/dist/cjs/extensions/string-extensions.d.ts +38 -0
- package/dist/cjs/extensions/string-extensions.d.ts.map +1 -0
- package/dist/cjs/extensions/string-extensions.js +753 -0
- package/dist/cjs/extensions/string-extensions.js.map +1 -0
- package/dist/cjs/extensions/utils.d.ts +4 -0
- package/dist/cjs/extensions/utils.d.ts.map +1 -0
- package/dist/cjs/extensions/utils.js +42 -0
- package/dist/cjs/extensions/utils.js.map +1 -0
- package/dist/cjs/index.d.ts +7 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +34 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/runtime/index.d.ts +17 -0
- package/dist/cjs/runtime/index.d.ts.map +1 -0
- package/dist/cjs/runtime/index.js +35 -0
- package/dist/cjs/runtime/index.js.map +1 -0
- package/dist/cjs/runtime/lazy-proxy.d.ts +22 -0
- package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -0
- package/dist/cjs/runtime/lazy-proxy.js +179 -0
- package/dist/cjs/runtime/lazy-proxy.js.map +1 -0
- package/dist/cjs/runtime/reset.d.ts +16 -0
- package/dist/cjs/runtime/reset.d.ts.map +1 -0
- package/dist/cjs/runtime/reset.js +137 -0
- package/dist/cjs/runtime/reset.js.map +1 -0
- package/dist/cjs/runtime/safe-globals.d.ts +21 -0
- package/dist/cjs/runtime/safe-globals.d.ts.map +1 -0
- package/dist/cjs/runtime/safe-globals.js +125 -0
- package/dist/cjs/runtime/safe-globals.js.map +1 -0
- package/dist/{types → cjs/types}/bridge.d.ts +2 -0
- package/dist/cjs/types/bridge.d.ts.map +1 -0
- package/dist/cjs/types/bridge.js +26 -0
- package/dist/cjs/types/bridge.js.map +1 -0
- package/dist/{types → cjs/types}/evaluator.d.ts +1 -4
- package/dist/cjs/types/evaluator.d.ts.map +1 -0
- package/dist/cjs/types/evaluator.js +47 -0
- package/dist/cjs/types/evaluator.js.map +1 -0
- package/dist/{types → cjs/types}/index.d.ts +2 -2
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +30 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/runtime.d.ts +20 -0
- package/dist/cjs/types/runtime.d.ts.map +1 -0
- package/dist/cjs/types/runtime.js +39 -0
- package/dist/cjs/types/runtime.js.map +1 -0
- package/dist/esm/bridge/isolated-vm-bridge.d.ts +132 -0
- package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -0
- package/dist/esm/bridge/isolated-vm-bridge.js +450 -0
- package/dist/esm/bridge/isolated-vm-bridge.js.map +1 -0
- package/dist/esm/build.tsbuildinfo +1 -0
- package/dist/esm/evaluator/expression-evaluator.d.ts +23 -0
- package/dist/esm/evaluator/expression-evaluator.d.ts.map +1 -0
- package/dist/esm/evaluator/expression-evaluator.js +73 -0
- package/dist/esm/evaluator/expression-evaluator.js.map +1 -0
- package/dist/esm/extensions/array-extensions.d.ts +34 -0
- package/dist/esm/extensions/array-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/array-extensions.js +610 -0
- package/dist/esm/extensions/array-extensions.js.map +1 -0
- package/dist/esm/extensions/boolean-extensions.d.ts +6 -0
- package/dist/esm/extensions/boolean-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/boolean-extensions.js +33 -0
- package/dist/esm/extensions/boolean-extensions.js.map +1 -0
- package/dist/esm/extensions/date-extensions.d.ts +3 -0
- package/dist/esm/extensions/date-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/date-extensions.js +515 -0
- package/dist/esm/extensions/date-extensions.js.map +1 -0
- package/dist/esm/extensions/expression-extension-error.d.ts +7 -0
- package/dist/esm/extensions/expression-extension-error.d.ts.map +1 -0
- package/dist/esm/extensions/expression-extension-error.js +11 -0
- package/dist/esm/extensions/expression-extension-error.js.map +1 -0
- package/dist/esm/extensions/extend.d.ts +12 -0
- package/dist/esm/extensions/extend.d.ts.map +1 -0
- package/dist/esm/extensions/extend.js +134 -0
- package/dist/esm/extensions/extend.js.map +1 -0
- package/dist/esm/extensions/extensions.d.ts +43 -0
- package/dist/esm/extensions/extensions.d.ts.map +1 -0
- package/dist/esm/extensions/extensions.js +2 -0
- package/dist/esm/extensions/extensions.js.map +1 -0
- package/dist/esm/extensions/number-extensions.d.ts +27 -0
- package/dist/esm/extensions/number-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/number-extensions.js +221 -0
- package/dist/esm/extensions/number-extensions.js.map +1 -0
- package/dist/esm/extensions/object-extensions.d.ts +46 -0
- package/dist/esm/extensions/object-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/object-extensions.js +277 -0
- package/dist/esm/extensions/object-extensions.js.map +1 -0
- package/dist/esm/extensions/string-extensions.d.ts +38 -0
- package/dist/esm/extensions/string-extensions.d.ts.map +1 -0
- package/dist/esm/extensions/string-extensions.js +735 -0
- package/dist/esm/extensions/string-extensions.js.map +1 -0
- package/dist/esm/extensions/utils.d.ts +4 -0
- package/dist/esm/extensions/utils.d.ts.map +1 -0
- package/dist/esm/extensions/utils.js +27 -0
- package/dist/esm/extensions/utils.js.map +1 -0
- package/dist/esm/index.d.ts +7 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +10 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/runtime/index.d.ts +17 -0
- package/dist/esm/runtime/index.d.ts.map +1 -0
- package/dist/esm/runtime/index.js +23 -0
- package/dist/esm/runtime/index.js.map +1 -0
- package/dist/esm/runtime/lazy-proxy.d.ts +22 -0
- package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -0
- package/dist/esm/runtime/lazy-proxy.js +164 -0
- package/dist/esm/runtime/lazy-proxy.js.map +1 -0
- package/dist/esm/runtime/reset.d.ts +16 -0
- package/dist/esm/runtime/reset.d.ts.map +1 -0
- package/dist/esm/runtime/reset.js +124 -0
- package/dist/esm/runtime/reset.js.map +1 -0
- package/dist/esm/runtime/safe-globals.d.ts +21 -0
- package/dist/esm/runtime/safe-globals.d.ts.map +1 -0
- package/dist/esm/runtime/safe-globals.js +110 -0
- package/dist/esm/runtime/safe-globals.js.map +1 -0
- package/dist/esm/types/bridge.d.ts +63 -0
- package/dist/esm/types/bridge.d.ts.map +1 -0
- package/dist/{types → esm/types}/bridge.js +6 -1
- package/dist/esm/types/bridge.js.map +1 -0
- package/dist/esm/types/evaluator.d.ts +194 -0
- package/dist/esm/types/evaluator.d.ts.map +1 -0
- package/dist/esm/types/evaluator.js.map +1 -0
- package/dist/esm/types/index.d.ts +11 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/{types → esm/types}/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/runtime.d.ts +20 -0
- package/dist/esm/types/runtime.d.ts.map +1 -0
- package/dist/{types → esm/types}/runtime.js +0 -6
- package/dist/esm/types/runtime.js.map +1 -0
- package/package.json +29 -6
- package/dist/build.tsbuildinfo +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +0 -1
- package/dist/types/bridge.d.ts.map +0 -1
- package/dist/types/bridge.js.map +0 -1
- package/dist/types/evaluator.d.ts.map +0 -1
- package/dist/types/evaluator.js.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js.map +0 -1
- package/dist/types/runtime.d.ts +0 -122
- package/dist/types/runtime.d.ts.map +0 -1
- package/dist/types/runtime.js.map +0 -1
- /package/dist/{types → esm/types}/evaluator.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-extensions.js","sourceRoot":"","sources":["../../../src/extensions/string-extensions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/extensions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAMjC,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,GAAG,IAAI,GAAG,QAAQ,KAAG,QAAQ,GAAG,SAc9E,CAAC;AAEF,wBAAgB,0BAA0B,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAMlF"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "luxon", "./expression-extension-error"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.convertToDateTime = void 0;
|
|
13
|
+
exports.checkIfValueDefinedOrThrow = checkIfValueDefinedOrThrow;
|
|
14
|
+
const luxon_1 = require("luxon");
|
|
15
|
+
const expression_extension_error_1 = require("./expression-extension-error");
|
|
16
|
+
// Utility functions and type guards for expression extensions
|
|
17
|
+
const convertToDateTime = (value) => {
|
|
18
|
+
let converted;
|
|
19
|
+
if (typeof value === 'string') {
|
|
20
|
+
converted = luxon_1.DateTime.fromJSDate(new Date(value));
|
|
21
|
+
if (converted.invalidReason !== null) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
else if (value instanceof Date) {
|
|
26
|
+
converted = luxon_1.DateTime.fromJSDate(value);
|
|
27
|
+
}
|
|
28
|
+
else if (luxon_1.DateTime.isDateTime(value)) {
|
|
29
|
+
converted = value;
|
|
30
|
+
}
|
|
31
|
+
return converted;
|
|
32
|
+
};
|
|
33
|
+
exports.convertToDateTime = convertToDateTime;
|
|
34
|
+
function checkIfValueDefinedOrThrow(value, functionName) {
|
|
35
|
+
if (value === undefined || value === null) {
|
|
36
|
+
throw new expression_extension_error_1.ExpressionExtensionError(`${functionName} can't be used on ${String(value)} value`, {
|
|
37
|
+
description: `To ignore this error, add a ? to the variable before this function, e.g. my_var?.${functionName}`,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/extensions/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;IAsBA,gEAMC;IA5BD,iCAAiC;IAEjC,6EAAwE;IAExE,8DAA8D;IAEvD,MAAM,iBAAiB,GAAG,CAAC,KAA+B,EAAwB,EAAE;QAC1F,IAAI,SAA+B,CAAC;QAEpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACjD,IAAI,SAAS,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;gBACtC,OAAO;YACR,CAAC;QACF,CAAC;aAAM,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;YAClC,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,gBAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACvC,SAAS,GAAG,KAAK,CAAC;QACnB,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC,CAAC;IAdW,QAAA,iBAAiB,qBAc5B;IAEF,SAAgB,0BAA0B,CAAI,KAAQ,EAAE,YAAoB;QAC3E,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,IAAI,qDAAwB,CAAC,GAAG,YAAY,qBAAqB,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE;gBAC7F,WAAW,EAAE,oFAAoF,YAAY,EAAE;aAC/G,CAAC,CAAC;QACJ,CAAC;IACF,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { ExpressionEvaluator } from './evaluator/expression-evaluator';
|
|
2
|
+
export { IsolatedVmBridge } from './bridge/isolated-vm-bridge';
|
|
3
|
+
export type { IExpressionEvaluator, EvaluatorConfig, WorkflowData, EvaluateOptions, RuntimeBridge, BridgeConfig, ObservabilityProvider, MetricsAPI, TracesAPI, Span, LogsAPI, } from './types';
|
|
4
|
+
export { ExpressionError, MemoryLimitError, TimeoutError, SecurityViolationError, SyntaxError, } from './types';
|
|
5
|
+
export { extend, extendOptional, EXTENSION_OBJECTS } from './extensions/extend';
|
|
6
|
+
export { ExpressionExtensionError } from './extensions/expression-extension-error';
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAGvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,YAAY,EACX,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,aAAa,EACb,YAAY,EACZ,qBAAqB,EACrB,UAAU,EACV,SAAS,EACT,IAAI,EACJ,OAAO,GACP,MAAM,SAAS,CAAC;AAGjB,OAAO,EACN,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,sBAAsB,EACtB,WAAW,GACX,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "./evaluator/expression-evaluator", "./bridge/isolated-vm-bridge", "./types", "./extensions/extend", "./extensions/expression-extension-error"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ExpressionExtensionError = exports.EXTENSION_OBJECTS = exports.extendOptional = exports.extend = exports.SyntaxError = exports.SecurityViolationError = exports.TimeoutError = exports.MemoryLimitError = exports.ExpressionError = exports.IsolatedVmBridge = exports.ExpressionEvaluator = void 0;
|
|
13
|
+
// Main exports
|
|
14
|
+
var expression_evaluator_1 = require("./evaluator/expression-evaluator");
|
|
15
|
+
Object.defineProperty(exports, "ExpressionEvaluator", { enumerable: true, get: function () { return expression_evaluator_1.ExpressionEvaluator; } });
|
|
16
|
+
// Bridge exports
|
|
17
|
+
var isolated_vm_bridge_1 = require("./bridge/isolated-vm-bridge");
|
|
18
|
+
Object.defineProperty(exports, "IsolatedVmBridge", { enumerable: true, get: function () { return isolated_vm_bridge_1.IsolatedVmBridge; } });
|
|
19
|
+
// Error types
|
|
20
|
+
var types_1 = require("./types");
|
|
21
|
+
Object.defineProperty(exports, "ExpressionError", { enumerable: true, get: function () { return types_1.ExpressionError; } });
|
|
22
|
+
Object.defineProperty(exports, "MemoryLimitError", { enumerable: true, get: function () { return types_1.MemoryLimitError; } });
|
|
23
|
+
Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return types_1.TimeoutError; } });
|
|
24
|
+
Object.defineProperty(exports, "SecurityViolationError", { enumerable: true, get: function () { return types_1.SecurityViolationError; } });
|
|
25
|
+
Object.defineProperty(exports, "SyntaxError", { enumerable: true, get: function () { return types_1.SyntaxError; } });
|
|
26
|
+
// Extension runtime exports
|
|
27
|
+
var extend_1 = require("./extensions/extend");
|
|
28
|
+
Object.defineProperty(exports, "extend", { enumerable: true, get: function () { return extend_1.extend; } });
|
|
29
|
+
Object.defineProperty(exports, "extendOptional", { enumerable: true, get: function () { return extend_1.extendOptional; } });
|
|
30
|
+
Object.defineProperty(exports, "EXTENSION_OBJECTS", { enumerable: true, get: function () { return extend_1.EXTENSION_OBJECTS; } });
|
|
31
|
+
var expression_extension_error_1 = require("./extensions/expression-extension-error");
|
|
32
|
+
Object.defineProperty(exports, "ExpressionExtensionError", { enumerable: true, get: function () { return expression_extension_error_1.ExpressionExtensionError; } });
|
|
33
|
+
});
|
|
34
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,eAAe;IACf,yEAAuE;IAA9D,2HAAA,mBAAmB,OAAA;IAE5B,iBAAiB;IACjB,kEAA+D;IAAtD,sHAAA,gBAAgB,OAAA;IAiBzB,cAAc;IACd,iCAMiB;IALhB,wGAAA,eAAe,OAAA;IACf,yGAAA,gBAAgB,OAAA;IAChB,qGAAA,YAAY,OAAA;IACZ,+GAAA,sBAAsB,OAAA;IACtB,oGAAA,WAAW,OAAA;IAGZ,4BAA4B;IAC5B,8CAAgF;IAAvE,gGAAA,MAAM,OAAA;IAAE,wGAAA,cAAc,OAAA;IAAE,2GAAA,iBAAiB,OAAA;IAClD,sFAAmF;IAA1E,sIAAA,wBAAwB,OAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
declare global {
|
|
2
|
+
namespace globalThis {
|
|
3
|
+
var __getValueAtPath: any;
|
|
4
|
+
var __getArrayElement: any;
|
|
5
|
+
var __callFunctionAtPath: any;
|
|
6
|
+
var __data: Record<string, unknown>;
|
|
7
|
+
var createDeepLazyProxy: (basePath?: string[]) => any;
|
|
8
|
+
var resetDataProxies: () => void;
|
|
9
|
+
var SafeObject: typeof Object;
|
|
10
|
+
var SafeError: typeof Error;
|
|
11
|
+
var DateTime: typeof import('luxon').DateTime;
|
|
12
|
+
var extend: typeof import('../extensions/extend').extend;
|
|
13
|
+
var extendOptional: typeof import('../extensions/extend').extendOptional;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/runtime/index.ts"],"names":[],"mappings":"AASA,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,UAAU,CAAC;QAEpB,IAAI,gBAAgB,EAAE,GAAG,CAAC;QAC1B,IAAI,iBAAiB,EAAE,GAAG,CAAC;QAC3B,IAAI,oBAAoB,EAAE,GAAG,CAAC;QAG9B,IAAI,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAGpC,IAAI,mBAAmB,EAAE,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,CAAC;QAGtD,IAAI,gBAAgB,EAAE,MAAM,IAAI,CAAC;QAGjC,IAAI,UAAU,EAAE,OAAO,MAAM,CAAC;QAC9B,IAAI,SAAS,EAAE,OAAO,KAAK,CAAC;QAG5B,IAAI,QAAQ,EAAE,cAAc,OAAO,EAAE,QAAQ,CAAC;QAC9C,IAAI,MAAM,EAAE,cAAc,sBAAsB,EAAE,MAAM,CAAC;QACzD,IAAI,cAAc,EAAE,cAAc,sBAAsB,EAAE,cAAc,CAAC;KACzE;CACD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "luxon", "../extensions/extend", "./safe-globals", "./lazy-proxy", "./reset"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
const luxon_1 = require("luxon");
|
|
13
|
+
const extend_1 = require("../extensions/extend");
|
|
14
|
+
const safe_globals_1 = require("./safe-globals");
|
|
15
|
+
const lazy_proxy_1 = require("./lazy-proxy");
|
|
16
|
+
const reset_1 = require("./reset");
|
|
17
|
+
// ============================================================================
|
|
18
|
+
// Library Setup
|
|
19
|
+
// ============================================================================
|
|
20
|
+
// Expose globals required by tournament-transformed expressions
|
|
21
|
+
globalThis.extend = extend_1.extend;
|
|
22
|
+
globalThis.extendOptional = extend_1.extendOptional;
|
|
23
|
+
globalThis.DateTime = luxon_1.DateTime;
|
|
24
|
+
// ============================================================================
|
|
25
|
+
// Expose security globals and runtime functions
|
|
26
|
+
// ============================================================================
|
|
27
|
+
globalThis.SafeObject = safe_globals_1.SafeObject;
|
|
28
|
+
globalThis.SafeError = safe_globals_1.SafeError;
|
|
29
|
+
globalThis.ExpressionError = safe_globals_1.ExpressionError;
|
|
30
|
+
globalThis.createDeepLazyProxy = lazy_proxy_1.createDeepLazyProxy;
|
|
31
|
+
globalThis.resetDataProxies = reset_1.resetDataProxies;
|
|
32
|
+
// Initialize empty __data object (populated by resetDataProxies before each evaluation)
|
|
33
|
+
globalThis.__data = {};
|
|
34
|
+
});
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/runtime/index.ts"],"names":[],"mappings":";;;;;;;;;;;IAAA,iCAAiC;IAEjC,iDAA8D;IAE9D,iDAAwE;IACxE,6CAAmD;IACnD,mCAA2C;IA8B3C,+EAA+E;IAC/E,gBAAgB;IAChB,+EAA+E;IAE/E,gEAAgE;IAChE,UAAU,CAAC,MAAM,GAAG,eAAM,CAAC;IAC3B,UAAU,CAAC,cAAc,GAAG,uBAAc,CAAC;IAC3C,UAAU,CAAC,QAAQ,GAAG,gBAAQ,CAAC;IAE/B,+EAA+E;IAC/E,gDAAgD;IAChD,+EAA+E;IAE/E,UAAU,CAAC,UAAU,GAAG,yBAAU,CAAC;IACnC,UAAU,CAAC,SAAS,GAAG,wBAAS,CAAC;IAChC,UAAkB,CAAC,eAAe,GAAG,8BAAe,CAAC;IAEtD,UAAU,CAAC,mBAAmB,GAAG,gCAAmB,CAAC;IACrD,UAAU,CAAC,gBAAgB,GAAG,wBAAgB,CAAC;IAE/C,wFAAwF;IACxF,UAAU,CAAC,MAAM,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** Returns true if `obj` is a deep lazy proxy created by createDeepLazyProxy. */
|
|
2
|
+
export declare function isLazyProxy(obj: unknown): boolean;
|
|
3
|
+
/** Returns the basePath the proxy was created with, or undefined if not a proxy. */
|
|
4
|
+
export declare function getProxyPath(obj: object): string[] | undefined;
|
|
5
|
+
/**
|
|
6
|
+
* Creates a deep lazy-loading proxy for workflow data.
|
|
7
|
+
*
|
|
8
|
+
* This proxy system enables on-demand loading of nested properties across
|
|
9
|
+
* the isolate boundary using metadata-driven callbacks.
|
|
10
|
+
*
|
|
11
|
+
* Pattern:
|
|
12
|
+
* 1. When property accessed: Call __getValueAtPath([path]) to get metadata
|
|
13
|
+
* 2. Metadata indicates type: primitive, object, array, or function
|
|
14
|
+
* 3. For objects/arrays: Create nested proxy for lazy loading
|
|
15
|
+
* 4. For functions: Create wrapper that calls __callFunctionAtPath
|
|
16
|
+
* 5. Cache all fetched values in target to avoid repeated callbacks
|
|
17
|
+
*
|
|
18
|
+
* @param basePath - Current path in object tree (e.g., ['$json', 'user'])
|
|
19
|
+
* @returns Proxy object with lazy loading behavior
|
|
20
|
+
*/
|
|
21
|
+
export declare function createDeepLazyProxy(basePath?: string[]): any;
|
|
22
|
+
//# sourceMappingURL=lazy-proxy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-proxy.d.ts","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"AAYA,iFAAiF;AACjF,wBAAgB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAEjD;AAED,oFAAoF;AACpF,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAE9D;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,GAAG,CAgJhE"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
// ============================================================================
|
|
2
|
+
// Deep Lazy Proxy System
|
|
3
|
+
// ============================================================================
|
|
4
|
+
// For more information about Proxies see
|
|
5
|
+
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy
|
|
6
|
+
(function (factory) {
|
|
7
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
8
|
+
var v = factory(require, exports);
|
|
9
|
+
if (v !== undefined) module.exports = v;
|
|
10
|
+
}
|
|
11
|
+
else if (typeof define === "function" && define.amd) {
|
|
12
|
+
define(["require", "exports"], factory);
|
|
13
|
+
}
|
|
14
|
+
})(function (require, exports) {
|
|
15
|
+
"use strict";
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.isLazyProxy = isLazyProxy;
|
|
18
|
+
exports.getProxyPath = getProxyPath;
|
|
19
|
+
exports.createDeepLazyProxy = createDeepLazyProxy;
|
|
20
|
+
// ---------------------------------------------------------------------------
|
|
21
|
+
// Proxy registry — used only for testing/introspection, not accessible from
|
|
22
|
+
// expression code. Avoids shadowing user data keys like __isProxy / __path.
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
const proxyPaths = new WeakMap();
|
|
25
|
+
/** Returns true if `obj` is a deep lazy proxy created by createDeepLazyProxy. */
|
|
26
|
+
function isLazyProxy(obj) {
|
|
27
|
+
return typeof obj === 'object' && obj !== null && proxyPaths.has(obj);
|
|
28
|
+
}
|
|
29
|
+
/** Returns the basePath the proxy was created with, or undefined if not a proxy. */
|
|
30
|
+
function getProxyPath(obj) {
|
|
31
|
+
return proxyPaths.get(obj);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Creates a deep lazy-loading proxy for workflow data.
|
|
35
|
+
*
|
|
36
|
+
* This proxy system enables on-demand loading of nested properties across
|
|
37
|
+
* the isolate boundary using metadata-driven callbacks.
|
|
38
|
+
*
|
|
39
|
+
* Pattern:
|
|
40
|
+
* 1. When property accessed: Call __getValueAtPath([path]) to get metadata
|
|
41
|
+
* 2. Metadata indicates type: primitive, object, array, or function
|
|
42
|
+
* 3. For objects/arrays: Create nested proxy for lazy loading
|
|
43
|
+
* 4. For functions: Create wrapper that calls __callFunctionAtPath
|
|
44
|
+
* 5. Cache all fetched values in target to avoid repeated callbacks
|
|
45
|
+
*
|
|
46
|
+
* @param basePath - Current path in object tree (e.g., ['$json', 'user'])
|
|
47
|
+
* @returns Proxy object with lazy loading behavior
|
|
48
|
+
*/
|
|
49
|
+
function createDeepLazyProxy(basePath = []) {
|
|
50
|
+
const proxy = new Proxy({}, {
|
|
51
|
+
get(target, prop) {
|
|
52
|
+
// Handle Symbol properties - return undefined
|
|
53
|
+
// Symbols like Symbol.toStringTag are accessed internally
|
|
54
|
+
// We can't transfer Symbols via isolated-vm
|
|
55
|
+
if (typeof prop === 'symbol') {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
// Handle common Object.prototype methods within isolate
|
|
59
|
+
// Don't fetch from parent to avoid native function transfer issues
|
|
60
|
+
if (prop === 'toString') {
|
|
61
|
+
return function () {
|
|
62
|
+
return '[object Object]';
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
if (prop === 'valueOf') {
|
|
66
|
+
return function () {
|
|
67
|
+
return target;
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
// Check cache - if already fetched, return cached value
|
|
71
|
+
if (prop in target) {
|
|
72
|
+
return target[prop];
|
|
73
|
+
}
|
|
74
|
+
// Build path for this property
|
|
75
|
+
const path = [...basePath, prop];
|
|
76
|
+
// Call back to parent to get metadata/value
|
|
77
|
+
// Note: __getValueAtPath is an ivm.Reference set by bridge
|
|
78
|
+
const value = globalThis.__getValueAtPath.applySync(null, [path], {
|
|
79
|
+
arguments: { copy: true },
|
|
80
|
+
result: { copy: true },
|
|
81
|
+
});
|
|
82
|
+
// Handle undefined/null - cache and return
|
|
83
|
+
if (value === undefined || value === null) {
|
|
84
|
+
target[prop] = value;
|
|
85
|
+
return value;
|
|
86
|
+
}
|
|
87
|
+
// Handle functions - metadata: { __isFunction: true, __name: string }
|
|
88
|
+
if (value && typeof value === 'object' && value.__isFunction) {
|
|
89
|
+
// Create function wrapper that calls back to parent
|
|
90
|
+
target[prop] = function (...args) {
|
|
91
|
+
return globalThis.__callFunctionAtPath.applySync(null, [path, ...args], {
|
|
92
|
+
arguments: { copy: true },
|
|
93
|
+
result: { copy: true },
|
|
94
|
+
});
|
|
95
|
+
};
|
|
96
|
+
return target[prop];
|
|
97
|
+
}
|
|
98
|
+
// Handle arrays - metadata: { __isArray: true, __length: number }
|
|
99
|
+
if (value && typeof value === 'object' && value.__isArray) {
|
|
100
|
+
const arrayProxy = new Proxy([], {
|
|
101
|
+
get(arrTarget, arrProp) {
|
|
102
|
+
// Symbols can't be transferred via isolated-vm; return undefined
|
|
103
|
+
if (typeof arrProp === 'symbol') {
|
|
104
|
+
return undefined;
|
|
105
|
+
}
|
|
106
|
+
// Handle array length
|
|
107
|
+
if (arrProp === 'length') {
|
|
108
|
+
return value.__length;
|
|
109
|
+
}
|
|
110
|
+
// Handle numeric index
|
|
111
|
+
const index = Number(arrProp);
|
|
112
|
+
if (!isNaN(index) && index >= 0) {
|
|
113
|
+
// Check cache
|
|
114
|
+
if (!(arrProp in arrTarget)) {
|
|
115
|
+
// Fetch element from parent
|
|
116
|
+
const element = globalThis.__getArrayElement.applySync(null, [path, index], {
|
|
117
|
+
arguments: { copy: true },
|
|
118
|
+
result: { copy: true },
|
|
119
|
+
});
|
|
120
|
+
// Handle element metadata (arrays and objects need proxies)
|
|
121
|
+
if (element && typeof element === 'object' && element.__isArray) {
|
|
122
|
+
const elementPath = [...path, String(index)];
|
|
123
|
+
arrTarget[arrProp] = createDeepLazyProxy(elementPath);
|
|
124
|
+
}
|
|
125
|
+
else if (element && typeof element === 'object' && element.__isObject) {
|
|
126
|
+
// Object metadata: create nested proxy
|
|
127
|
+
const elementPath = [...path, String(index)];
|
|
128
|
+
arrTarget[arrProp] = createDeepLazyProxy(elementPath);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
// Primitive element
|
|
132
|
+
arrTarget[arrProp] = element;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
return arrTarget[arrProp];
|
|
136
|
+
}
|
|
137
|
+
// Array methods (map, filter, etc.)
|
|
138
|
+
// Note: These require full array - limitation for now
|
|
139
|
+
return arrTarget[arrProp];
|
|
140
|
+
},
|
|
141
|
+
});
|
|
142
|
+
target[prop] = arrayProxy;
|
|
143
|
+
return target[prop];
|
|
144
|
+
}
|
|
145
|
+
// Handle objects - metadata: { __isObject: true, __keys: string[] }
|
|
146
|
+
if (value && typeof value === 'object' && value.__isObject) {
|
|
147
|
+
// Create nested proxy for recursive lazy loading
|
|
148
|
+
target[prop] = createDeepLazyProxy(path);
|
|
149
|
+
return target[prop];
|
|
150
|
+
}
|
|
151
|
+
// Primitive value - cache and return
|
|
152
|
+
target[prop] = value;
|
|
153
|
+
return value;
|
|
154
|
+
},
|
|
155
|
+
has(target, prop) {
|
|
156
|
+
// Implement 'in' operator support
|
|
157
|
+
// Example: '$json' in data
|
|
158
|
+
if (typeof prop === 'symbol')
|
|
159
|
+
return false;
|
|
160
|
+
// Check cache first
|
|
161
|
+
if (prop in target) {
|
|
162
|
+
return true;
|
|
163
|
+
}
|
|
164
|
+
// Build path and check existence via callback
|
|
165
|
+
const path = [...basePath, prop];
|
|
166
|
+
const value = globalThis.__getValueAtPath.applySync(null, [path], {
|
|
167
|
+
arguments: { copy: true },
|
|
168
|
+
result: { copy: true },
|
|
169
|
+
});
|
|
170
|
+
// Property exists if value is not undefined
|
|
171
|
+
// Note: null values mean property exists but is null
|
|
172
|
+
return value !== undefined;
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
proxyPaths.set(proxy, basePath);
|
|
176
|
+
return proxy;
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
//# sourceMappingURL=lazy-proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy-proxy.js","sourceRoot":"","sources":["../../../src/runtime/lazy-proxy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reset workflow data proxies before each evaluation.
|
|
3
|
+
*
|
|
4
|
+
* This function is called from the bridge before executing each expression
|
|
5
|
+
* to clear proxy caches and initialize fresh workflow data references.
|
|
6
|
+
*
|
|
7
|
+
* Pattern:
|
|
8
|
+
* 1. Create lazy proxies for complex properties ($json, $binary, etc.)
|
|
9
|
+
* 2. Fetch primitives directly ($runIndex, $itemIndex)
|
|
10
|
+
* 3. Create function wrappers for callable properties ($items, etc.)
|
|
11
|
+
* 4. Expose all properties to globalThis for expression access
|
|
12
|
+
*
|
|
13
|
+
* Called from bridge: context.evalSync('resetDataProxies()')
|
|
14
|
+
*/
|
|
15
|
+
export declare function resetDataProxies(): void;
|
|
16
|
+
//# sourceMappingURL=reset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAkHvC"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
(function (factory) {
|
|
2
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
+
var v = factory(require, exports);
|
|
4
|
+
if (v !== undefined) module.exports = v;
|
|
5
|
+
}
|
|
6
|
+
else if (typeof define === "function" && define.amd) {
|
|
7
|
+
define(["require", "exports", "../extensions/extend", "./safe-globals", "./lazy-proxy"], factory);
|
|
8
|
+
}
|
|
9
|
+
})(function (require, exports) {
|
|
10
|
+
"use strict";
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.resetDataProxies = resetDataProxies;
|
|
13
|
+
const extend_1 = require("../extensions/extend");
|
|
14
|
+
const safe_globals_1 = require("./safe-globals");
|
|
15
|
+
const lazy_proxy_1 = require("./lazy-proxy");
|
|
16
|
+
// ============================================================================
|
|
17
|
+
// Reset Function for Data Proxies
|
|
18
|
+
// ============================================================================
|
|
19
|
+
/**
|
|
20
|
+
* Reset workflow data proxies before each evaluation.
|
|
21
|
+
*
|
|
22
|
+
* This function is called from the bridge before executing each expression
|
|
23
|
+
* to clear proxy caches and initialize fresh workflow data references.
|
|
24
|
+
*
|
|
25
|
+
* Pattern:
|
|
26
|
+
* 1. Create lazy proxies for complex properties ($json, $binary, etc.)
|
|
27
|
+
* 2. Fetch primitives directly ($runIndex, $itemIndex)
|
|
28
|
+
* 3. Create function wrappers for callable properties ($items, etc.)
|
|
29
|
+
* 4. Expose all properties to globalThis for expression access
|
|
30
|
+
*
|
|
31
|
+
* Called from bridge: context.evalSync('resetDataProxies()')
|
|
32
|
+
*/
|
|
33
|
+
function resetDataProxies() {
|
|
34
|
+
// Clear existing __data object
|
|
35
|
+
globalThis.__data = {};
|
|
36
|
+
// __sanitize must be on __data because PrototypeSanitizer generates:
|
|
37
|
+
// obj[this.__sanitize(expr)] where 'this' is __data (via .call(__data) wrapping)
|
|
38
|
+
globalThis.__data.__sanitize = safe_globals_1.__sanitize;
|
|
39
|
+
// Verify callbacks are available
|
|
40
|
+
// Note: ivm.Reference may not be typeof 'function', check for existence
|
|
41
|
+
if (!globalThis.__getValueAtPath) {
|
|
42
|
+
throw new Error('__getValueAtPath callback not registered');
|
|
43
|
+
}
|
|
44
|
+
// -------------------------------------------------------------------------
|
|
45
|
+
// Create lazy proxies for complex workflow properties
|
|
46
|
+
// -------------------------------------------------------------------------
|
|
47
|
+
globalThis.__data.$json = (0, lazy_proxy_1.createDeepLazyProxy)(['$json']);
|
|
48
|
+
globalThis.__data.$binary = (0, lazy_proxy_1.createDeepLazyProxy)(['$binary']);
|
|
49
|
+
globalThis.__data.$input = (0, lazy_proxy_1.createDeepLazyProxy)(['$input']);
|
|
50
|
+
globalThis.__data.$node = (0, lazy_proxy_1.createDeepLazyProxy)(['$node']);
|
|
51
|
+
globalThis.__data.$parameter = (0, lazy_proxy_1.createDeepLazyProxy)(['$parameter']);
|
|
52
|
+
globalThis.__data.$workflow = (0, lazy_proxy_1.createDeepLazyProxy)(['$workflow']);
|
|
53
|
+
globalThis.__data.$prevNode = (0, lazy_proxy_1.createDeepLazyProxy)(['$prevNode']);
|
|
54
|
+
globalThis.__data.$data = (0, lazy_proxy_1.createDeepLazyProxy)(['$data']);
|
|
55
|
+
globalThis.__data.$env = (0, lazy_proxy_1.createDeepLazyProxy)(['$env']);
|
|
56
|
+
// -------------------------------------------------------------------------
|
|
57
|
+
// Fetch primitives directly (no lazy loading needed for simple values)
|
|
58
|
+
// -------------------------------------------------------------------------
|
|
59
|
+
try {
|
|
60
|
+
globalThis.__data.$runIndex = globalThis.__getValueAtPath.applySync(null, [['$runIndex']], {
|
|
61
|
+
arguments: { copy: true },
|
|
62
|
+
result: { copy: true },
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
// Property doesn't exist - set to undefined
|
|
67
|
+
globalThis.__data.$runIndex = undefined;
|
|
68
|
+
}
|
|
69
|
+
try {
|
|
70
|
+
globalThis.__data.$itemIndex = globalThis.__getValueAtPath.applySync(null, [['$itemIndex']], {
|
|
71
|
+
arguments: { copy: true },
|
|
72
|
+
result: { copy: true },
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
// Property doesn't exist - set to undefined
|
|
77
|
+
globalThis.__data.$itemIndex = undefined;
|
|
78
|
+
}
|
|
79
|
+
// -------------------------------------------------------------------------
|
|
80
|
+
// Expose workflow data to globalThis for expression access
|
|
81
|
+
// -------------------------------------------------------------------------
|
|
82
|
+
globalThis.$json = globalThis.__data.$json;
|
|
83
|
+
globalThis.$binary = globalThis.__data.$binary;
|
|
84
|
+
globalThis.$input = globalThis.__data.$input;
|
|
85
|
+
globalThis.$node = globalThis.__data.$node;
|
|
86
|
+
globalThis.$parameter = globalThis.__data.$parameter;
|
|
87
|
+
globalThis.$workflow = globalThis.__data.$workflow;
|
|
88
|
+
globalThis.$prevNode = globalThis.__data.$prevNode;
|
|
89
|
+
globalThis.$runIndex = globalThis.__data.$runIndex;
|
|
90
|
+
globalThis.$itemIndex = globalThis.__data.$itemIndex;
|
|
91
|
+
globalThis.$data = globalThis.__data.$data;
|
|
92
|
+
globalThis.$env = globalThis.__data.$env;
|
|
93
|
+
// -------------------------------------------------------------------------
|
|
94
|
+
// Handle function properties (check if value is function metadata)
|
|
95
|
+
// -------------------------------------------------------------------------
|
|
96
|
+
// Check if $items exists and is a function
|
|
97
|
+
if (globalThis.__callFunctionAtPath) {
|
|
98
|
+
try {
|
|
99
|
+
const itemsValue = globalThis.__getValueAtPath.applySync(null, [['$items']], {
|
|
100
|
+
arguments: { copy: true },
|
|
101
|
+
result: { copy: true },
|
|
102
|
+
});
|
|
103
|
+
// If it's function metadata, create wrapper
|
|
104
|
+
if (itemsValue && typeof itemsValue === 'object' && itemsValue.__isFunction) {
|
|
105
|
+
globalThis.$items = function (...args) {
|
|
106
|
+
return globalThis.__callFunctionAtPath.applySync(null, [['$items'], ...args], {
|
|
107
|
+
arguments: { copy: true },
|
|
108
|
+
result: { copy: true },
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
globalThis.__data.$items = globalThis.$items;
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
// Not a function - set to undefined or the value itself
|
|
115
|
+
globalThis.$items = itemsValue;
|
|
116
|
+
globalThis.__data.$items = itemsValue;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
catch (error) {
|
|
120
|
+
// Property doesn't exist
|
|
121
|
+
globalThis.$items = undefined;
|
|
122
|
+
globalThis.__data.$items = undefined;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
// -------------------------------------------------------------------------
|
|
126
|
+
// Expose globals on __data so tournament's "x in this ? this.x : global.x"
|
|
127
|
+
// pattern resolves them correctly (tournament checks __data before global)
|
|
128
|
+
// -------------------------------------------------------------------------
|
|
129
|
+
globalThis.__data.DateTime = globalThis.DateTime;
|
|
130
|
+
// Expose extend/extendOptional on __data so tournament's "x in this ? this.x : global.x"
|
|
131
|
+
// pattern resolves them correctly when the VM checks __data first
|
|
132
|
+
globalThis.__data.extend = extend_1.extend;
|
|
133
|
+
globalThis.__data.extendOptional = extend_1.extendOptional;
|
|
134
|
+
// TODO: Add other function properties as needed ($item, $vars, etc.)
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
//# sourceMappingURL=reset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/runtime/reset.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SafeObject - Blocks dangerous Object methods that could lead to RCE
|
|
3
|
+
*
|
|
4
|
+
* Blocked methods:
|
|
5
|
+
* - defineProperty, setPrototypeOf: Prevent prototype pollution
|
|
6
|
+
* - getOwnPropertyDescriptor: Prevent property descriptor manipulation
|
|
7
|
+
* - __defineGetter__, __defineSetter__: Legacy descriptor manipulation
|
|
8
|
+
*/
|
|
9
|
+
export declare const SafeObject: ObjectConstructor;
|
|
10
|
+
/**
|
|
11
|
+
* SafeError - Blocks stack manipulation methods
|
|
12
|
+
*
|
|
13
|
+
* Blocked properties:
|
|
14
|
+
* - stackTraceLimit, captureStackTrace, prepareStackTrace: Prevent stack manipulation attacks
|
|
15
|
+
*/
|
|
16
|
+
export declare const SafeError: ErrorConstructor;
|
|
17
|
+
export declare class ExpressionError extends Error {
|
|
18
|
+
constructor(message: string);
|
|
19
|
+
}
|
|
20
|
+
export declare function __sanitize(value: unknown): unknown;
|
|
21
|
+
//# sourceMappingURL=safe-globals.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe-globals.d.ts","sourceRoot":"","sources":["../../../src/runtime/safe-globals.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,mBAgCrB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,SAAS,kBA4BpB,CAAC;AAMH,qBAAa,eAAgB,SAAQ,KAAK;gBAC7B,OAAO,EAAE,MAAM;CAI3B;AAwBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAKlD"}
|