@n8n/expression-runtime 0.8.0 → 0.9.1

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 (73) hide show
  1. package/dist/bundle/runtime.esm.js +15 -15
  2. package/dist/bundle/runtime.esm.js.map +4 -4
  3. package/dist/bundle/runtime.iife.js +15 -15
  4. package/dist/bundle/runtime.iife.js.map +4 -4
  5. package/dist/cjs/bridge/isolated-vm-bridge.d.ts +40 -34
  6. package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -1
  7. package/dist/cjs/bridge/isolated-vm-bridge.js +97 -154
  8. package/dist/cjs/bridge/isolated-vm-bridge.js.map +1 -1
  9. package/dist/cjs/build.tsbuildinfo +1 -1
  10. package/dist/cjs/evaluator/expression-evaluator.d.ts.map +1 -1
  11. package/dist/cjs/evaluator/expression-evaluator.js +5 -4
  12. package/dist/cjs/evaluator/expression-evaluator.js.map +1 -1
  13. package/dist/cjs/extensions/function-extensions.d.ts.map +1 -1
  14. package/dist/cjs/extensions/function-extensions.js +8 -5
  15. package/dist/cjs/extensions/function-extensions.js.map +1 -1
  16. package/dist/cjs/index.d.ts +1 -0
  17. package/dist/cjs/index.d.ts.map +1 -1
  18. package/dist/cjs/index.js +4 -2
  19. package/dist/cjs/index.js.map +1 -1
  20. package/dist/cjs/pool/isolate-pool.d.ts +3 -2
  21. package/dist/cjs/pool/isolate-pool.d.ts.map +1 -1
  22. package/dist/cjs/pool/isolate-pool.js +5 -4
  23. package/dist/cjs/pool/isolate-pool.js.map +1 -1
  24. package/dist/cjs/runtime/context.d.ts +18 -0
  25. package/dist/cjs/runtime/context.d.ts.map +1 -0
  26. package/dist/cjs/runtime/{reset.js → context.js} +93 -114
  27. package/dist/cjs/runtime/context.js.map +1 -0
  28. package/dist/cjs/runtime/index.d.ts +1 -28
  29. package/dist/cjs/runtime/index.d.ts.map +1 -1
  30. package/dist/cjs/runtime/index.js +3 -5
  31. package/dist/cjs/runtime/index.js.map +1 -1
  32. package/dist/cjs/runtime/lazy-proxy.d.ts +9 -3
  33. package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -1
  34. package/dist/cjs/runtime/lazy-proxy.js +19 -13
  35. package/dist/cjs/runtime/lazy-proxy.js.map +1 -1
  36. package/dist/esm/bridge/isolated-vm-bridge.d.ts +40 -34
  37. package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -1
  38. package/dist/esm/bridge/isolated-vm-bridge.js +97 -154
  39. package/dist/esm/bridge/isolated-vm-bridge.js.map +1 -1
  40. package/dist/esm/build.tsbuildinfo +1 -1
  41. package/dist/esm/evaluator/expression-evaluator.d.ts.map +1 -1
  42. package/dist/esm/evaluator/expression-evaluator.js +4 -3
  43. package/dist/esm/evaluator/expression-evaluator.js.map +1 -1
  44. package/dist/esm/extensions/function-extensions.d.ts.map +1 -1
  45. package/dist/esm/extensions/function-extensions.js +8 -5
  46. package/dist/esm/extensions/function-extensions.js.map +1 -1
  47. package/dist/esm/index.d.ts +1 -0
  48. package/dist/esm/index.d.ts.map +1 -1
  49. package/dist/esm/index.js +1 -0
  50. package/dist/esm/index.js.map +1 -1
  51. package/dist/esm/pool/isolate-pool.d.ts +3 -2
  52. package/dist/esm/pool/isolate-pool.d.ts.map +1 -1
  53. package/dist/esm/pool/isolate-pool.js +4 -3
  54. package/dist/esm/pool/isolate-pool.js.map +1 -1
  55. package/dist/esm/runtime/context.d.ts +18 -0
  56. package/dist/esm/runtime/context.d.ts.map +1 -0
  57. package/dist/esm/runtime/{reset.js → context.js} +92 -113
  58. package/dist/esm/runtime/context.js.map +1 -0
  59. package/dist/esm/runtime/index.d.ts +1 -28
  60. package/dist/esm/runtime/index.d.ts.map +1 -1
  61. package/dist/esm/runtime/index.js +2 -4
  62. package/dist/esm/runtime/index.js.map +1 -1
  63. package/dist/esm/runtime/lazy-proxy.d.ts +9 -3
  64. package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -1
  65. package/dist/esm/runtime/lazy-proxy.js +19 -13
  66. package/dist/esm/runtime/lazy-proxy.js.map +1 -1
  67. package/package.json +5 -4
  68. package/dist/cjs/runtime/reset.d.ts +0 -16
  69. package/dist/cjs/runtime/reset.d.ts.map +0 -1
  70. package/dist/cjs/runtime/reset.js.map +0 -1
  71. package/dist/esm/runtime/reset.d.ts +0 -16
  72. package/dist/esm/runtime/reset.d.ts.map +0 -1
  73. package/dist/esm/runtime/reset.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"expression-evaluator.d.ts","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EAEf,MAAM,UAAU,CAAC;AAKlB,qBAAa,mBAAoB,YAAW,oBAAoB;IAC/D,OAAO,CAAC,MAAM,CAAkB;IAEhC,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,UAAU,CAAC,CAAa;IAIhC,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,IAAI,CAAc;IAE1B,OAAO,CAAC,eAAe,CAAwC;IAE/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;gBAEhD,MAAM,EAAE,eAAe;IAsB7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5C,QAAQ,CACP,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO;IA0BV,OAAO,CAAC,SAAS;IAeX,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA2BpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,UAAU,IAAI,OAAO;CAGrB"}
1
+ {"version":3,"file":"expression-evaluator.d.ts","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EAEf,MAAM,UAAU,CAAC;AAMlB,qBAAa,mBAAoB,YAAW,oBAAoB;IAC/D,OAAO,CAAC,MAAM,CAAkB;IAEhC,OAAO,CAAC,QAAQ,CAAS;IAGzB,OAAO,CAAC,UAAU,CAAC,CAAa;IAIhC,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,IAAI,CAAc;IAE1B,OAAO,CAAC,eAAe,CAAwC;IAE/D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+B;gBAEhD,MAAM,EAAE,eAAe;IAsB7B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc5C,QAAQ,CACP,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,YAAY,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,eAAe,GACvB,OAAO;IA0BV,OAAO,CAAC,SAAS;IAeX,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3C;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IA2BpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,UAAU,IAAI,OAAO;CAGrB"}
@@ -4,7 +4,7 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "@n8n/tournament", "../types/bridge", "../pool/isolate-pool", "./lru-cache"], factory);
7
+ define(["require", "exports", "@n8n/tournament", "../types/bridge", "@n8n/errors", "../pool/isolate-pool", "./lru-cache"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
@@ -12,6 +12,7 @@
12
12
  exports.ExpressionEvaluator = void 0;
13
13
  const tournament_1 = require("@n8n/tournament");
14
14
  const bridge_1 = require("../types/bridge");
15
+ const errors_1 = require("@n8n/errors");
15
16
  const isolate_pool_1 = require("../pool/isolate-pool");
16
17
  const lru_cache_1 = require("./lru-cache");
17
18
  class ExpressionEvaluator {
@@ -63,7 +64,7 @@
63
64
  }
64
65
  evaluate(expression, data, caller, options) {
65
66
  if (this.disposed)
66
- throw new Error('Evaluator disposed');
67
+ throw new errors_1.IsolateError('Evaluator disposed');
67
68
  const bridge = this.getBridge(caller);
68
69
  // Transform template expression → sanitized JavaScript (cached)
69
70
  const transformedCode = this.getTransformedCode(expression);
@@ -86,12 +87,12 @@
86
87
  getBridge(caller) {
87
88
  const bridge = this.bridgesByCaller.get(caller);
88
89
  if (!bridge) {
89
- throw new Error('No bridge acquired for this context. Call acquire() first.');
90
+ throw new errors_1.IsolateError('No bridge acquired for this context. Call acquire() first.');
90
91
  }
91
92
  // If the isolate died mid-execution (e.g. OOM), all remaining expressions
92
93
  // in this execution are expected to fail. Recovery is per-execution, not per-expression.
93
94
  if (bridge.isDisposed()) {
94
- throw new Error('Isolate for this caller is no longer available');
95
+ throw new errors_1.IsolateError('Isolate for this caller is no longer available');
95
96
  }
96
97
  return bridge;
97
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"expression-evaluator.js","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expression-evaluator.js","sourceRoot":"","sources":["../../../src/evaluator/expression-evaluator.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,gDAA6C;IAQ7C,4CAAwD;IACxD,wCAA2C;IAC3C,uDAA0F;IAC1F,2CAAuC;IAEvC,MAAa,mBAAmB;QACvB,MAAM,CAAkB;QAExB,QAAQ,GAAG,KAAK,CAAC;QAEzB,wFAAwF;QAChF,UAAU,CAAc;QAEhC,sEAAsE;QACtE,mFAAmF;QAC3E,SAAS,CAA2B;QAEpC,IAAI,CAAc;QAElB,eAAe,GAAG,IAAI,OAAO,EAAyB,CAAC;QAE9C,YAAY,CAA+B;QAE5D,YAAY,MAAuB;YAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,SAAS,GAAG,IAAI,oBAAQ,CAAiB,MAAM,CAAC,gBAAgB,EAAE,GAAG,EAAE;gBAC3E,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,gCAAgC,EAAE,CAAC,CAAC,CAAC;YACjF,CAAC,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,8BAAqB,CAAC,MAAM,CAAC;YAC7D,IAAI,CAAC,YAAY,GAAG,KAAK,IAAI,EAAE;gBAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC;gBACrC,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC;YACf,CAAC,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,IAAI,0BAAW,CAC1B,IAAI,CAAC,YAAY,EACjB,MAAM,CAAC,QAAQ,IAAI,CAAC,EACpB,CAAC,KAAK,EAAE,EAAE;gBACT,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBACpE,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,kCAAkC,EAAE,CAAC,CAAC,CAAC;YAC9E,CAAC,EACD,MAAM,CACN,CAAC;QACH,CAAC;QAED,KAAK,CAAC,UAAU;YACf,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC9B,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,MAAc;YAC3B,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,OAAO;YAC7C,IAAI,MAAqB,CAAC;YAC1B,IAAI,CAAC;gBACJ,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,KAAK,YAAY,gCAAiB;oBAAE,MAAM,KAAK,CAAC;gBACpD,IAAI,CAAC,CAAC,KAAK,YAAY,iCAAkB,CAAC;oBAAE,MAAM,KAAK,CAAC;gBACxD,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,QAAQ,CACP,UAAkB,EAClB,IAAkB,EAClB,MAAc,EACd,OAAyB;YAEzB,IAAI,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,qBAAY,CAAC,oBAAoB,CAAC,CAAC;YAEhE,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAEtC,gEAAgE;YAChE,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAE5D,IAAI,CAAC;gBACJ,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,EAAE;oBACpD,QAAQ,EAAE,OAAO,EAAE,QAAQ;iBAC3B,CAAC,CAAC;gBAEH,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;gBAC/E,CAAC;gBAED,OAAO,MAAM,CAAC;YACf,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;gBAC7E,CAAC;gBACD,MAAM,KAAK,CAAC;YACb,CAAC;QACF,CAAC;QAEO,SAAS,CAAC,MAAc;YAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACb,MAAM,IAAI,qBAAY,CAAC,4DAA4D,CAAC,CAAC;YACtF,CAAC;YAED,0EAA0E;YAC1E,yFAAyF;YACzF,IAAI,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC;gBACzB,MAAM,IAAI,qBAAY,CAAC,gDAAgD,CAAC,CAAC;YAC1E,CAAC;YAED,OAAO,MAAM,CAAC;QACf,CAAC;QAED,KAAK,CAAC,OAAO,CAAC,MAAc;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;QAED,KAAK,CAAC,oBAAoB;YACzB,MAAM,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACxC,CAAC;QAED;;;;;;;;WAQG;QACK,kBAAkB,CAAC,UAAkB;YAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC;gBAC3E,OAAO,MAAM,CAAC;YACf,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;YAE5E,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtB,0EAA0E;gBAC1E,uEAAuE;gBACvE,uEAAuE;gBACvE,6CAA6C;gBAC7C,MAAM,YAAY,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;gBAC9B,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE;oBACpE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE;oBACvC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;iBACrC,CAAC,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACxE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5F,OAAO,eAAe,CAAC;QACxB,CAAC;QAED,KAAK,CAAC,OAAO;YACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;YAC1E,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;QAED,UAAU;YACT,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;KACD;IAjKD,kDAiKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"function-extensions.d.ts","sourceRoot":"","sources":["../../../src/extensions/function-extensions.ts"],"names":[],"mappings":"AAyCA,iBAAS,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,gBAsB/C;kBAtBQ,OAAO;;;;;;;;;;;;AAoChB,eAAO,MAAM,iBAAiB;;;iBAxCV,OAAO,KAAG,OAAO;uBAJX,MAAM,EAAE;wBA3BP,MAAM,OAAO,MAAM,KAAG,MAAM,EAAE;gBAgBtC,OAAO,EAAE,UAAU,OAAO,EAAE,KAAG,OAAO;;;wBAW/B,MAAM,EAAE;kBAId,OAAO,KAAG,OAAO;;CAoDpC,CAAC"}
1
+ {"version":3,"file":"function-extensions.d.ts","sourceRoot":"","sources":["../../../src/extensions/function-extensions.ts"],"names":[],"mappings":"AA4CA,iBAAS,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,gBAsB/C;kBAtBQ,OAAO;;;;;;;;;;;;AAoChB,eAAO,MAAM,iBAAiB;;;iBAxCV,OAAO,KAAG,OAAO;uBAJX,MAAM,EAAE;wBA9BP,MAAM,OAAO,MAAM,KAAG,MAAM,EAAE;gBAgBtC,OAAO,EAAE,UAAU,OAAO,EAAE,KAAG,OAAO;;;wBAc/B,MAAM,EAAE;kBAId,OAAO,KAAG,OAAO;;CAoDpC,CAAC"}
@@ -29,14 +29,17 @@
29
29
  return arr;
30
30
  };
31
31
  const zip = (keys, values) => {
32
+ if (!Array.isArray(keys) || !Array.isArray(values)) {
33
+ throw new expression_extension_error_1.ExpressionExtensionError('keys and values must be arrays');
34
+ }
32
35
  if (keys.length !== values.length) {
33
36
  throw new expression_extension_error_1.ExpressionExtensionError('keys and values not of equal length');
34
37
  }
35
- return keys.reduce((p, c, i) => {
36
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any
37
- p[c] = values[i];
38
- return p;
39
- }, {});
38
+ const result = {};
39
+ for (let i = 0; i < keys.length; i++) {
40
+ result[keys[i]] = values[i];
41
+ }
42
+ return result;
40
43
  };
41
44
  const average = (...args) => {
42
45
  return (0, array_extensions_1.average)(args);
@@ -1 +1 @@
1
- {"version":3,"file":"function-extensions.js","sourceRoot":"","sources":["../../../src/extensions/function-extensions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function-extensions.js","sourceRoot":"","sources":["../../../src/extensions/function-extensions.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ export { ExpressionEvaluator } from './evaluator/expression-evaluator';
2
2
  export { IsolatedVmBridge } from './bridge/isolated-vm-bridge';
3
3
  export type { IExpressionEvaluator, EvaluatorConfig, WorkflowData, EvaluateOptions, ExecuteOptions, RuntimeBridge, BridgeConfig, Logger, ObservabilityProvider, MetricsAPI, TracesAPI, Span, LogsAPI, } from './types';
4
4
  export { ExpressionError, MemoryLimitError, TimeoutError, SecurityViolationError, SyntaxError, } from './types';
5
+ export { IsolateError } from '@n8n/errors';
5
6
  export { extend, extendOptional, EXTENSION_OBJECTS } from './extensions/extend';
6
7
  export { ExpressionExtensionError } from './extensions/expression-extension-error';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAIvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,YAAY,EACX,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,YAAY,EACZ,MAAM,EACN,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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAIvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAG/D,YAAY,EACX,oBAAoB,EACpB,eAAe,EACf,YAAY,EACZ,eAAe,EACf,cAAc,EACd,aAAa,EACb,YAAY,EACZ,MAAM,EACN,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;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC"}
package/dist/cjs/index.js CHANGED
@@ -4,12 +4,12 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
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);
7
+ define(["require", "exports", "./evaluator/expression-evaluator", "./bridge/isolated-vm-bridge", "./types", "@n8n/errors", "./extensions/extend", "./extensions/expression-extension-error"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
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;
12
+ exports.ExpressionExtensionError = exports.EXTENSION_OBJECTS = exports.extendOptional = exports.extend = exports.IsolateError = exports.SyntaxError = exports.SecurityViolationError = exports.TimeoutError = exports.MemoryLimitError = exports.ExpressionError = exports.IsolatedVmBridge = exports.ExpressionEvaluator = void 0;
13
13
  // Main exports
14
14
  var expression_evaluator_1 = require("./evaluator/expression-evaluator");
15
15
  Object.defineProperty(exports, "ExpressionEvaluator", { enumerable: true, get: function () { return expression_evaluator_1.ExpressionEvaluator; } });
@@ -24,6 +24,8 @@
24
24
  Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return types_1.TimeoutError; } });
25
25
  Object.defineProperty(exports, "SecurityViolationError", { enumerable: true, get: function () { return types_1.SecurityViolationError; } });
26
26
  Object.defineProperty(exports, "SyntaxError", { enumerable: true, get: function () { return types_1.SyntaxError; } });
27
+ var errors_1 = require("@n8n/errors");
28
+ Object.defineProperty(exports, "IsolateError", { enumerable: true, get: function () { return errors_1.IsolateError; } });
27
29
  // Extension runtime exports
28
30
  var extend_1 = require("./extensions/extend");
29
31
  Object.defineProperty(exports, "extend", { enumerable: true, get: function () { return extend_1.extend; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,eAAe;IACf,yEAAuE;IAA9D,2HAAA,mBAAmB,OAAA;IAE5B,uEAAuE;IACvE,6EAA6E;IAC7E,kEAA+D;IAAtD,sHAAA,gBAAgB,OAAA;IAmBzB,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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA,eAAe;IACf,yEAAuE;IAA9D,2HAAA,mBAAmB,OAAA;IAE5B,uEAAuE;IACvE,6EAA6E;IAC7E,kEAA+D;IAAtD,sHAAA,gBAAgB,OAAA;IAmBzB,cAAc;IACd,iCAMiB;IALhB,wGAAA,eAAe,OAAA;IACf,yGAAA,gBAAgB,OAAA;IAChB,qGAAA,YAAY,OAAA;IACZ,+GAAA,sBAAsB,OAAA;IACtB,oGAAA,WAAW,OAAA;IAEZ,sCAA2C;IAAlC,sGAAA,YAAY,OAAA;IAErB,4BAA4B;IAC5B,8CAAgF;IAAvE,gGAAA,MAAM,OAAA;IAAE,wGAAA,cAAc,OAAA;IAAE,2GAAA,iBAAiB,OAAA;IAClD,sFAAmF;IAA1E,sIAAA,wBAAwB,OAAA"}
@@ -1,9 +1,10 @@
1
1
  import type { RuntimeBridge } from '../types';
2
2
  import type { Logger } from '../types/bridge';
3
- export declare class PoolDisposedError extends Error {
3
+ import { IsolateError } from '@n8n/errors';
4
+ export declare class PoolDisposedError extends IsolateError {
4
5
  constructor();
5
6
  }
6
- export declare class PoolExhaustedError extends Error {
7
+ export declare class PoolExhaustedError extends IsolateError {
7
8
  constructor();
8
9
  }
9
10
  export declare class IsolatePool {
@@ -1 +1 @@
1
- {"version":3,"file":"isolate-pool.d.ts","sourceRoot":"","sources":["../../../src/pool/isolate-pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,qBAAa,iBAAkB,SAAQ,KAAK;;CAK3C;AAED,qBAAa,kBAAmB,SAAQ,KAAK;;CAK5C;AAED,qBAAa,WAAW;IAStB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAXzB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,QAAQ,CAAS;IACzB,iDAAiD;IACjD,OAAO,CAAC,OAAO,CAAK;IACpB,gDAAgD;IAChD,OAAO,CAAC,iBAAiB,CAA4B;gBAGnC,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAC1C,IAAI,EAAE,MAAM,EACZ,iBAAiB,CAAC,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,aAAA,EAC5C,MAAM,CAAC,EAAE,MAAM,YAAA;IAG3B,UAAU;IAoBhB;;;OAGG;IACH,OAAO,IAAI,aAAa;IAQlB,OAAO,CAAC,MAAM,EAAE,aAAa;IAK7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAK;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAO;IAEhD,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3C,OAAO,CAAC,SAAS;CA4BjB"}
1
+ {"version":3,"file":"isolate-pool.d.ts","sourceRoot":"","sources":["../../../src/pool/isolate-pool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,iBAAkB,SAAQ,YAAY;;CAKlD;AAED,qBAAa,kBAAmB,SAAQ,YAAY;;CAKnD;AAED,qBAAa,WAAW;IAStB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IAXzB,OAAO,CAAC,OAAO,CAAuB;IACtC,OAAO,CAAC,QAAQ,CAAS;IACzB,iDAAiD;IACjD,OAAO,CAAC,OAAO,CAAK;IACpB,gDAAgD;IAChD,OAAO,CAAC,iBAAiB,CAA4B;gBAGnC,YAAY,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,EAC1C,IAAI,EAAE,MAAM,EACZ,iBAAiB,CAAC,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,aAAA,EAC5C,MAAM,CAAC,EAAE,MAAM,YAAA;IAG3B,UAAU;IAoBhB;;;OAGG;IACH,OAAO,IAAI,aAAa;IAQlB,OAAO,CAAC,MAAM,EAAE,aAAa;IAK7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAO9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAK;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAO;IAEhD,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAM3C,OAAO,CAAC,SAAS;CA4BjB"}
@@ -4,20 +4,21 @@
4
4
  if (v !== undefined) module.exports = v;
5
5
  }
6
6
  else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
7
+ define(["require", "exports", "@n8n/errors"], factory);
8
8
  }
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.IsolatePool = exports.PoolExhaustedError = exports.PoolDisposedError = void 0;
13
- class PoolDisposedError extends Error {
13
+ const errors_1 = require("@n8n/errors");
14
+ class PoolDisposedError extends errors_1.IsolateError {
14
15
  constructor() {
15
16
  super('Pool is disposed');
16
17
  this.name = 'PoolDisposedError';
17
18
  }
18
19
  }
19
20
  exports.PoolDisposedError = PoolDisposedError;
20
- class PoolExhaustedError extends Error {
21
+ class PoolExhaustedError extends errors_1.IsolateError {
21
22
  constructor() {
22
23
  super('No isolate bridge available in pool');
23
24
  this.name = 'PoolExhaustedError';
@@ -54,7 +55,7 @@
54
55
  }
55
56
  }
56
57
  if (this.bridges.length === 0) {
57
- throw new Error('IsolatePool failed to create any bridges');
58
+ throw new errors_1.IsolateError('IsolatePool failed to create any bridges');
58
59
  }
59
60
  }
60
61
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"isolate-pool.js","sourceRoot":"","sources":["../../../src/pool/isolate-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"isolate-pool.js","sourceRoot":"","sources":["../../../src/pool/isolate-pool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Build a fresh, closure-scoped evaluation context.
3
+ *
4
+ * This function creates a context object that contains everything needed to
5
+ * evaluate an expression, without touching any global mutable state
6
+ * (except luxon's Settings.defaultZone which is process-wide).
7
+ *
8
+ * The returned object is used as tournament's `this` context in the
9
+ * evalClosureSync wrapper.
10
+ *
11
+ * @param getValueAtPath - ivm.Reference for fetching values by path
12
+ * @param getArrayElement - ivm.Reference for fetching array elements
13
+ * @param callFunctionAtPath - ivm.Reference for calling functions by path
14
+ * @param timezone - Optional IANA timezone string
15
+ * @returns A context object with all workflow data, proxies, and builtins
16
+ */
17
+ export declare function buildContext(getValueAtPath: any, getArrayElement: any, callFunctionAtPath: any, timezone?: string): Record<string, unknown>;
18
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"AAoBA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAC3B,cAAc,EAAE,GAAG,EACnB,eAAe,EAAE,GAAG,EACpB,kBAAkB,EAAE,GAAG,EACvB,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAqJzB"}
@@ -9,7 +9,7 @@
9
9
  })(function (require, exports) {
10
10
  "use strict";
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.resetDataProxies = resetDataProxies;
12
+ exports.buildContext = buildContext;
13
13
  const luxon_1 = require("luxon");
14
14
  const extend_1 = require("../extensions/extend");
15
15
  const function_extensions_1 = require("../extensions/function-extensions");
@@ -23,44 +23,36 @@
23
23
  const SafeReferenceError = (0, safe_globals_1.createSafeErrorSubclass)(ReferenceError);
24
24
  const SafeURIError = (0, safe_globals_1.createSafeErrorSubclass)(URIError);
25
25
  // ============================================================================
26
- // Reset Function for Data Proxies
26
+ // Build Context Function
27
27
  // ============================================================================
28
- function fetchPrimitive(key) {
29
- try {
30
- return globalThis.__getValueAtPath.applySync(null, [[key]], {
31
- arguments: { copy: true },
32
- result: { copy: true },
33
- });
34
- }
35
- catch {
36
- return undefined;
37
- }
38
- }
39
28
  /**
40
- * Reset workflow data proxies before each evaluation.
29
+ * Build a fresh, closure-scoped evaluation context.
41
30
  *
42
- * This function is called from the bridge before executing each expression
43
- * to clear proxy caches and initialize fresh workflow data references.
31
+ * This function creates a context object that contains everything needed to
32
+ * evaluate an expression, without touching any global mutable state
33
+ * (except luxon's Settings.defaultZone which is process-wide).
44
34
  *
45
- * Pattern:
46
- * 1. Create lazy proxies for complex properties ($json, $binary, etc.)
47
- * 2. Fetch primitives directly ($runIndex, $itemIndex)
48
- * 3. Create function wrappers for callable properties ($items, etc.)
49
- * 4. Expose all properties to globalThis for expression access
35
+ * The returned object is used as tournament's `this` context in the
36
+ * evalClosureSync wrapper.
50
37
  *
51
- * Called from bridge: context.evalSync('resetDataProxies()')
38
+ * @param getValueAtPath - ivm.Reference for fetching values by path
39
+ * @param getArrayElement - ivm.Reference for fetching array elements
40
+ * @param callFunctionAtPath - ivm.Reference for calling functions by path
41
+ * @param timezone - Optional IANA timezone string
42
+ * @returns A context object with all workflow data, proxies, and builtins
52
43
  */
53
- function resetDataProxies(timezone) {
44
+ function buildContext(getValueAtPath, getArrayElement, callFunctionAtPath, timezone) {
54
45
  if (timezone && !luxon_1.IANAZone.isValidZone(timezone)) {
55
46
  throw new Error(`Invalid timezone: "${timezone}"`);
56
47
  }
57
48
  luxon_1.Settings.defaultZone = timezone ?? 'system';
58
- // Clear existing __data object
59
- globalThis.__data = {};
60
- // __sanitize must be on __data because PrototypeSanitizer generates:
61
- // obj[this.__sanitize(expr)] where 'this' is __data (via .call(__data) wrapping)
49
+ const ctx = {};
50
+ // Callback bundle passed to createDeepLazyProxy so proxies don't touch globalThis
51
+ const callbacks = { getValueAtPath, getArrayElement, callFunctionAtPath };
52
+ // __sanitize must be on the context because PrototypeSanitizer generates:
53
+ // obj[this.__sanitize(expr)] where 'this' is the context (via .call(ctx) wrapping)
62
54
  // Use a non-writable property descriptor so override attempts throw instead of silently succeeding.
63
- Object.defineProperty(globalThis.__data, '__sanitize', {
55
+ Object.defineProperty(ctx, '__sanitize', {
64
56
  get: () => safe_globals_1.__sanitize,
65
57
  set: () => {
66
58
  throw new safe_globals_1.ExpressionError('Cannot override "__sanitize" due to security concerns');
@@ -68,130 +60,117 @@
68
60
  enumerable: false,
69
61
  configurable: false,
70
62
  });
71
- // Verify callbacks are available
72
- // Note: ivm.Reference may not be typeof 'function', check for existence
73
- if (!globalThis.__getValueAtPath) {
74
- throw new Error('__getValueAtPath callback not registered');
75
- }
76
63
  // -------------------------------------------------------------------------
77
64
  // Create lazy proxies for complex workflow properties
78
65
  // -------------------------------------------------------------------------
79
- globalThis.__data.$json = (0, lazy_proxy_1.createDeepLazyProxy)(['$json']);
80
- globalThis.__data.$binary = (0, lazy_proxy_1.createDeepLazyProxy)(['$binary']);
81
- globalThis.__data.$input = (0, lazy_proxy_1.createDeepLazyProxy)(['$input']);
82
- globalThis.__data.$node = (0, lazy_proxy_1.createDeepLazyProxy)(['$node']);
83
- globalThis.__data.$parameter = (0, lazy_proxy_1.createDeepLazyProxy)(['$parameter']);
84
- globalThis.__data.$workflow = (0, lazy_proxy_1.createDeepLazyProxy)(['$workflow']);
85
- globalThis.__data.$prevNode = (0, lazy_proxy_1.createDeepLazyProxy)(['$prevNode']);
86
- globalThis.__data.$data = (0, lazy_proxy_1.createDeepLazyProxy)(['$data']);
87
- globalThis.__data.$env = (0, lazy_proxy_1.createDeepLazyProxy)(['$env']);
88
- globalThis.__data.process = (0, lazy_proxy_1.createDeepLazyProxy)(['process']);
89
- globalThis.__data.$execution = (0, lazy_proxy_1.createDeepLazyProxy)(['$execution']);
90
- globalThis.__data.$vars = (0, lazy_proxy_1.createDeepLazyProxy)(['$vars']);
91
- globalThis.__data.$secrets = (0, lazy_proxy_1.createDeepLazyProxy)(['$secrets']);
66
+ ctx.$json = (0, lazy_proxy_1.createDeepLazyProxy)(['$json'], undefined, callbacks);
67
+ ctx.$binary = (0, lazy_proxy_1.createDeepLazyProxy)(['$binary'], undefined, callbacks);
68
+ ctx.$input = (0, lazy_proxy_1.createDeepLazyProxy)(['$input'], undefined, callbacks);
69
+ ctx.$node = (0, lazy_proxy_1.createDeepLazyProxy)(['$node'], undefined, callbacks);
70
+ ctx.$parameter = (0, lazy_proxy_1.createDeepLazyProxy)(['$parameter'], undefined, callbacks);
71
+ ctx.$workflow = (0, lazy_proxy_1.createDeepLazyProxy)(['$workflow'], undefined, callbacks);
72
+ ctx.$prevNode = (0, lazy_proxy_1.createDeepLazyProxy)(['$prevNode'], undefined, callbacks);
73
+ ctx.$data = (0, lazy_proxy_1.createDeepLazyProxy)(['$data'], undefined, callbacks);
74
+ ctx.$env = (0, lazy_proxy_1.createDeepLazyProxy)(['$env'], undefined, callbacks);
75
+ ctx.process = (0, lazy_proxy_1.createDeepLazyProxy)(['process'], undefined, callbacks);
76
+ ctx.$execution = (0, lazy_proxy_1.createDeepLazyProxy)(['$execution'], undefined, callbacks);
77
+ ctx.$vars = (0, lazy_proxy_1.createDeepLazyProxy)(['$vars'], undefined, callbacks);
78
+ ctx.$secrets = (0, lazy_proxy_1.createDeepLazyProxy)(['$secrets'], undefined, callbacks);
92
79
  // -------------------------------------------------------------------------
93
80
  // Create DateTime values inside the isolate (not lazy-loaded from host,
94
81
  // because host-side DateTime objects lose their prototype crossing the
95
82
  // boundary). The isolate has its own luxon with the correct timezone
96
83
  // already set via Settings.defaultZone above.
97
84
  // -------------------------------------------------------------------------
98
- globalThis.__data.$now = luxon_1.DateTime.now();
99
- globalThis.__data.$today = luxon_1.DateTime.now().set({ hour: 0, minute: 0, second: 0, millisecond: 0 });
85
+ ctx.$now = luxon_1.DateTime.now();
86
+ ctx.$today = luxon_1.DateTime.now().set({ hour: 0, minute: 0, second: 0, millisecond: 0 });
100
87
  // -------------------------------------------------------------------------
101
88
  // Fetch primitives directly (no lazy loading needed for simple values)
102
89
  // -------------------------------------------------------------------------
103
- globalThis.__data.$runIndex = fetchPrimitive('$runIndex');
104
- globalThis.__data.$itemIndex = fetchPrimitive('$itemIndex');
105
- globalThis.__data.$executionId = fetchPrimitive('$executionId');
106
- globalThis.__data.$resumeWebhookUrl = fetchPrimitive('$resumeWebhookUrl');
107
- globalThis.__data.$webhookId = fetchPrimitive('$webhookId');
108
- globalThis.__data.$nodeId = fetchPrimitive('$nodeId');
109
- globalThis.__data.$nodeVersion = fetchPrimitive('$nodeVersion');
110
- // -------------------------------------------------------------------------
111
- // Expose workflow data to globalThis for expression access
90
+ function fetchPrimitive(key) {
91
+ try {
92
+ return getValueAtPath.applySync(null, [[key]], {
93
+ arguments: { copy: true },
94
+ result: { copy: true },
95
+ });
96
+ }
97
+ catch {
98
+ return undefined;
99
+ }
100
+ }
101
+ ctx.$runIndex = fetchPrimitive('$runIndex');
102
+ ctx.$itemIndex = fetchPrimitive('$itemIndex');
103
+ ctx.$executionId = fetchPrimitive('$executionId');
104
+ ctx.$resumeWebhookUrl = fetchPrimitive('$resumeWebhookUrl');
105
+ ctx.$webhookId = fetchPrimitive('$webhookId');
106
+ ctx.$nodeId = fetchPrimitive('$nodeId');
107
+ ctx.$nodeVersion = fetchPrimitive('$nodeVersion');
112
108
  // -------------------------------------------------------------------------
113
- globalThis.$json = globalThis.__data.$json;
114
- globalThis.$binary = globalThis.__data.$binary;
115
- globalThis.$input = globalThis.__data.$input;
116
- globalThis.$node = globalThis.__data.$node;
117
- globalThis.$parameter = globalThis.__data.$parameter;
118
- globalThis.$workflow = globalThis.__data.$workflow;
119
- globalThis.$prevNode = globalThis.__data.$prevNode;
120
- globalThis.$runIndex = globalThis.__data.$runIndex;
121
- globalThis.$itemIndex = globalThis.__data.$itemIndex;
122
- globalThis.$data = globalThis.__data.$data;
123
- globalThis.$env = globalThis.__data.$env;
124
- globalThis.$now = globalThis.__data.$now;
125
- globalThis.$today = globalThis.__data.$today;
126
- globalThis.$execution = globalThis.__data.$execution;
127
- globalThis.$vars = globalThis.__data.$vars;
128
- globalThis.$secrets = globalThis.__data.$secrets;
129
- globalThis.$executionId = globalThis.__data.$executionId;
130
- globalThis.$resumeWebhookUrl = globalThis.__data.$resumeWebhookUrl;
131
- globalThis.$webhookId = globalThis.__data.$webhookId;
132
- globalThis.$nodeId = globalThis.__data.$nodeId;
133
- globalThis.$nodeVersion = globalThis.__data.$nodeVersion;
134
109
  // Expose standalone functions (min, max, average, numberList, zip, $ifEmpty, etc.)
135
- Object.assign(globalThis.__data, function_extensions_1.extendedFunctions);
110
+ // -------------------------------------------------------------------------
111
+ Object.assign(ctx, function_extensions_1.extendedFunctions);
136
112
  // -------------------------------------------------------------------------
137
113
  // Handle function properties (check if value is function metadata)
138
114
  // -------------------------------------------------------------------------
139
- // Check if $items exists and is a function
140
- if (globalThis.__callFunctionAtPath) {
115
+ // Probe a host-side property: if it is a function, create an isolate
116
+ // wrapper that forwards calls via callFunctionAtPath; otherwise copy
117
+ // the value as-is.
118
+ function exposeHostFunction(name) {
119
+ if (!callFunctionAtPath)
120
+ return;
141
121
  try {
142
- const itemsValue = globalThis.__getValueAtPath.applySync(null, [['$items']], {
122
+ const value = getValueAtPath.applySync(null, [[name]], {
143
123
  arguments: { copy: true },
144
124
  result: { copy: true },
145
125
  });
146
- // If it's function metadata, create wrapper
147
- if (itemsValue && typeof itemsValue === 'object' && itemsValue.__isFunction) {
148
- globalThis.$items = function (...args) {
149
- const result = globalThis.__callFunctionAtPath.applySync(null, [['$items'], ...args], {
126
+ if (value && typeof value === 'object' && value.__isFunction) {
127
+ ctx[name] = function (...args) {
128
+ const result = callFunctionAtPath.applySync(null, [[name], ...args], {
150
129
  arguments: { copy: true },
151
130
  result: { copy: true },
152
131
  });
153
132
  (0, lazy_proxy_1.throwIfErrorSentinel)(result);
154
133
  return result;
155
134
  };
156
- globalThis.__data.$items = globalThis.$items;
157
135
  }
158
136
  else {
159
- // Not a function - set to undefined or the value itself
160
- globalThis.$items = itemsValue;
161
- globalThis.__data.$items = itemsValue;
137
+ ctx[name] = value;
162
138
  }
163
139
  }
164
- catch (error) {
165
- // Property doesn't exist
166
- globalThis.$items = undefined;
167
- globalThis.__data.$items = undefined;
140
+ catch {
141
+ ctx[name] = undefined;
168
142
  }
169
143
  }
144
+ exposeHostFunction('$items');
145
+ exposeHostFunction('$fromAI');
146
+ exposeHostFunction('$fromai');
147
+ exposeHostFunction('$fromAi');
170
148
  // -------------------------------------------------------------------------
171
- // Expose globals on __data so tournament's "x in this ? this.x : global.x"
172
- // pattern resolves them correctly (tournament checks __data before global)
149
+ // Expose globals on ctx so tournament's "x in this ? this.x : global.x"
150
+ // pattern resolves them correctly (tournament checks ctx before global)
173
151
  // -------------------------------------------------------------------------
174
- globalThis.__data.DateTime = globalThis.DateTime;
175
- globalThis.__data.Duration = globalThis.Duration;
176
- globalThis.__data.Interval = globalThis.Interval;
177
- // Expose extend/extendOptional on __data so tournament's "x in this ? this.x : global.x"
178
- // pattern resolves them correctly when the VM checks __data first
179
- globalThis.__data.extend = extend_1.extend;
180
- globalThis.__data.extendOptional = extend_1.extendOptional;
181
- // Wire builtins so tournament's VariablePolyfill resolves them from __data
182
- initializeBuiltins(globalThis.__data);
152
+ ctx.DateTime = globalThis.DateTime;
153
+ ctx.Duration = globalThis.Duration;
154
+ ctx.Interval = globalThis.Interval;
155
+ // Expose extend/extendOptional on ctx so tournament's "x in this ? this.x : global.x"
156
+ // pattern resolves them correctly when the VM checks ctx first
157
+ ctx.extend = extend_1.extend;
158
+ ctx.extendOptional = extend_1.extendOptional;
159
+ // Wire builtins so tournament's VariablePolyfill resolves them from ctx
160
+ initializeBuiltins(ctx);
183
161
  // $item(itemIndex) returns a sub-proxy for the specified item (legacy syntax)
184
- globalThis.__data.$item = function (itemIndex) {
162
+ ctx.$item = function (itemIndex) {
185
163
  const indexStr = String(itemIndex);
186
164
  return {
187
- $json: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$json']),
188
- $binary: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$binary']),
165
+ $json: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$json'], undefined, callbacks),
166
+ $binary: (0, lazy_proxy_1.createDeepLazyProxy)(['$item', indexStr, '$binary'], undefined, callbacks),
189
167
  };
190
168
  };
191
- globalThis.$ = function (nodeName) {
192
- return (0, lazy_proxy_1.createDeepLazyProxy)(['$', nodeName]);
169
+ // $() function for accessing other nodes
170
+ ctx.$ = function (nodeName) {
171
+ return (0, lazy_proxy_1.createDeepLazyProxy)(['$', nodeName], undefined, callbacks);
193
172
  };
194
- globalThis.__data.$ = globalThis.$;
173
+ return ctx;
195
174
  }
196
175
  // Matches initializeGlobalContext() lines 262-318 in packages/workflow/src/expression.ts
197
176
  const DENYLISTED_GLOBALS = [
@@ -232,10 +211,10 @@
232
211
  'unescape',
233
212
  ];
234
213
  /**
235
- * Wire builtins onto __data so tournament's VariablePolyfill resolves them.
214
+ * Wire builtins onto a context object so tournament's VariablePolyfill resolves them.
236
215
  *
237
216
  * Tournament transforms `Object` → `("Object" in this ? this : window).Object`.
238
- * `this` = __data. Without these entries on __data, builtins fall through to
217
+ * `this` = ctx. Without these entries on ctx, builtins fall through to
239
218
  * `window` which doesn't exist in the isolate, causing a ReferenceError.
240
219
  *
241
220
  * Mirrors Expression.initializeGlobalContext() in packages/workflow/src/expression.ts.
@@ -304,4 +283,4 @@
304
283
  data.Symbol = Symbol;
305
284
  }
306
285
  });
307
- //# sourceMappingURL=reset.js.map
286
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"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"}