@n8n/expression-runtime 0.14.2 → 0.14.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundle/runtime.esm.js +17 -17
- package/dist/bundle/runtime.esm.js.map +4 -4
- package/dist/bundle/runtime.iife.js +17 -17
- package/dist/bundle/runtime.iife.js.map +4 -4
- package/dist/cjs/bridge/bridge-messages.d.ts +594 -0
- package/dist/cjs/bridge/bridge-messages.d.ts.map +1 -0
- package/dist/cjs/bridge/bridge-messages.js +263 -0
- package/dist/cjs/bridge/bridge-messages.js.map +1 -0
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts +134 -11
- package/dist/cjs/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/cjs/bridge/isolated-vm-bridge.js +235 -50
- package/dist/cjs/bridge/isolated-vm-bridge.js.map +1 -1
- package/dist/cjs/build.tsbuildinfo +1 -1
- package/dist/cjs/extensions/extend.d.ts +5 -0
- package/dist/cjs/extensions/extend.d.ts.map +1 -1
- package/dist/cjs/extensions/extend.js +14 -14
- package/dist/cjs/extensions/extend.js.map +1 -1
- package/dist/cjs/pool/idle-scaling-pool.js +2 -2
- package/dist/cjs/pool/idle-scaling-pool.js.map +1 -1
- package/dist/cjs/runtime/context.d.ts +43 -4
- package/dist/cjs/runtime/context.d.ts.map +1 -1
- package/dist/cjs/runtime/context.js +183 -31
- package/dist/cjs/runtime/context.js.map +1 -1
- package/dist/cjs/runtime/index.d.ts +3 -3
- package/dist/cjs/runtime/index.d.ts.map +1 -1
- package/dist/cjs/runtime/index.js.map +1 -1
- package/dist/cjs/runtime/jmespath.d.ts +5 -3
- package/dist/cjs/runtime/jmespath.d.ts.map +1 -1
- package/dist/cjs/runtime/jmespath.js +5 -3
- package/dist/cjs/runtime/jmespath.js.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.d.ts +7 -5
- package/dist/cjs/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/cjs/runtime/lazy-proxy.js +8 -16
- package/dist/cjs/runtime/lazy-proxy.js.map +1 -1
- package/dist/cjs/runtime/safe-globals.d.ts.map +1 -1
- package/dist/cjs/runtime/safe-globals.js +8 -3
- package/dist/cjs/runtime/safe-globals.js.map +1 -1
- package/dist/cjs/runtime/utils.d.ts +16 -0
- package/dist/cjs/runtime/utils.d.ts.map +1 -0
- package/dist/cjs/runtime/utils.js +31 -0
- package/dist/cjs/runtime/utils.js.map +1 -0
- package/dist/cjs/types/bridge.d.ts +2 -1
- package/dist/cjs/types/bridge.d.ts.map +1 -1
- package/dist/cjs/types/bridge.js.map +1 -1
- package/dist/cjs/types/evaluator.d.ts +86 -4
- package/dist/cjs/types/evaluator.d.ts.map +1 -1
- package/dist/cjs/types/evaluator.js.map +1 -1
- package/dist/esm/bridge/bridge-messages.d.ts +594 -0
- package/dist/esm/bridge/bridge-messages.d.ts.map +1 -0
- package/dist/esm/bridge/bridge-messages.js +250 -0
- package/dist/esm/bridge/bridge-messages.js.map +1 -0
- package/dist/esm/bridge/isolated-vm-bridge.d.ts +134 -11
- package/dist/esm/bridge/isolated-vm-bridge.d.ts.map +1 -1
- package/dist/esm/bridge/isolated-vm-bridge.js +234 -49
- package/dist/esm/bridge/isolated-vm-bridge.js.map +1 -1
- package/dist/esm/build.tsbuildinfo +1 -1
- package/dist/esm/extensions/extend.d.ts +5 -0
- package/dist/esm/extensions/extend.d.ts.map +1 -1
- package/dist/esm/extensions/extend.js +12 -12
- package/dist/esm/extensions/extend.js.map +1 -1
- package/dist/esm/pool/idle-scaling-pool.js +2 -2
- package/dist/esm/pool/idle-scaling-pool.js.map +1 -1
- package/dist/esm/runtime/context.d.ts +43 -4
- package/dist/esm/runtime/context.d.ts.map +1 -1
- package/dist/esm/runtime/context.js +182 -30
- package/dist/esm/runtime/context.js.map +1 -1
- package/dist/esm/runtime/index.d.ts +3 -3
- package/dist/esm/runtime/index.d.ts.map +1 -1
- package/dist/esm/runtime/index.js.map +1 -1
- package/dist/esm/runtime/jmespath.d.ts +5 -3
- package/dist/esm/runtime/jmespath.d.ts.map +1 -1
- package/dist/esm/runtime/jmespath.js +5 -3
- package/dist/esm/runtime/jmespath.js.map +1 -1
- package/dist/esm/runtime/lazy-proxy.d.ts +7 -5
- package/dist/esm/runtime/lazy-proxy.d.ts.map +1 -1
- package/dist/esm/runtime/lazy-proxy.js +8 -16
- package/dist/esm/runtime/lazy-proxy.js.map +1 -1
- package/dist/esm/runtime/safe-globals.d.ts.map +1 -1
- package/dist/esm/runtime/safe-globals.js +8 -3
- package/dist/esm/runtime/safe-globals.js.map +1 -1
- package/dist/esm/runtime/utils.d.ts +16 -0
- package/dist/esm/runtime/utils.d.ts.map +1 -0
- package/dist/esm/runtime/utils.js +18 -0
- package/dist/esm/runtime/utils.js.map +1 -0
- package/dist/esm/types/bridge.d.ts +2 -1
- package/dist/esm/types/bridge.d.ts.map +1 -1
- package/dist/esm/types/bridge.js.map +1 -1
- package/dist/esm/types/evaluator.d.ts +86 -4
- package/dist/esm/types/evaluator.d.ts.map +1 -1
- package/dist/esm/types/evaluator.js.map +1 -1
- package/package.json +10 -9
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { readFile } from 'node:fs/promises';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
3
|
import { DEFAULT_BRIDGE_CONFIG, TimeoutError, MemoryLimitError } from '../types';
|
|
4
|
+
import { bridgeMessageSchema } from './bridge-messages';
|
|
4
5
|
let _ivm = null;
|
|
5
6
|
function getIvm() {
|
|
6
7
|
if (!_ivm) {
|
|
@@ -114,7 +115,7 @@ export class IsolatedVmBridge {
|
|
|
114
115
|
// Inject E() error handler needed by tournament-generated try-catch code
|
|
115
116
|
await this.injectErrorHandler();
|
|
116
117
|
this.initialized = true;
|
|
117
|
-
this.logger.
|
|
118
|
+
this.logger.debug('[IsolatedVmBridge] Initialized successfully');
|
|
118
119
|
}
|
|
119
120
|
/**
|
|
120
121
|
* Load runtime bundle into the isolate.
|
|
@@ -138,14 +139,14 @@ export class IsolatedVmBridge {
|
|
|
138
139
|
// Evaluate bundle in isolate context
|
|
139
140
|
// This makes all exported globals available (DateTime, extend, extendOptional, SafeObject, SafeError, createDeepLazyProxy, buildContext)
|
|
140
141
|
await this.context.eval(runtimeBundle);
|
|
141
|
-
this.logger.
|
|
142
|
+
this.logger.debug('[IsolatedVmBridge] Runtime bundle loaded');
|
|
142
143
|
// Verify vendor libraries loaded correctly
|
|
143
144
|
const hasDateTime = await this.context.eval('typeof DateTime !== "undefined"');
|
|
144
145
|
const hasExtend = await this.context.eval('typeof extend !== "undefined"');
|
|
145
146
|
if (!hasDateTime || !hasExtend) {
|
|
146
147
|
throw new Error(`Library verification failed: DateTime=${hasDateTime}, extend=${hasExtend}`);
|
|
147
148
|
}
|
|
148
|
-
this.logger.
|
|
149
|
+
this.logger.debug('[IsolatedVmBridge] Vendor libraries verified successfully');
|
|
149
150
|
}
|
|
150
151
|
catch (error) {
|
|
151
152
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
@@ -177,7 +178,7 @@ export class IsolatedVmBridge {
|
|
|
177
178
|
`SafeObject=${hasSafeObject}, SafeError=${hasSafeError}, ` +
|
|
178
179
|
`buildContext=${hasBuildContext}`);
|
|
179
180
|
}
|
|
180
|
-
this.logger.
|
|
181
|
+
this.logger.debug('[IsolatedVmBridge] Proxy system verified successfully');
|
|
181
182
|
}
|
|
182
183
|
catch (error) {
|
|
183
184
|
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
@@ -226,13 +227,19 @@ export class IsolatedVmBridge {
|
|
|
226
227
|
};
|
|
227
228
|
}
|
|
228
229
|
`);
|
|
229
|
-
this.logger.
|
|
230
|
+
this.logger.debug('[IsolatedVmBridge] Error handler injected successfully');
|
|
230
231
|
}
|
|
231
232
|
/**
|
|
232
233
|
* Create an ivm.Reference callback for getting value/metadata at a path.
|
|
233
234
|
*
|
|
234
235
|
* Used by createDeepLazyProxy when accessing properties. Returns metadata
|
|
235
|
-
* markers for
|
|
236
|
+
* markers for arrays and objects, or the primitive value directly.
|
|
237
|
+
*
|
|
238
|
+
* Function-typed values are returned as `undefined` — every callable on
|
|
239
|
+
* the host data surface (`$('Foo').first()`, `$items()`, `$fromAI()`,
|
|
240
|
+
* `$evaluateExpression()`, `$getPairedItem()`) is wired in-isolate via
|
|
241
|
+
* the typed-RPC dispatcher (`callHost`). No expression form should
|
|
242
|
+
* reach a function through this path.
|
|
236
243
|
*
|
|
237
244
|
* @param data - Current workflow data to use for callback responses
|
|
238
245
|
* @private
|
|
@@ -266,14 +273,13 @@ export class IsolatedVmBridge {
|
|
|
266
273
|
return value;
|
|
267
274
|
}
|
|
268
275
|
}
|
|
269
|
-
//
|
|
276
|
+
// Functions are not reachable via the lazy-proxy data path —
|
|
277
|
+
// every callable on the host data surface routes through the
|
|
278
|
+
// typed-RPC dispatcher. Return undefined so any residual
|
|
279
|
+
// access surfaces as missing rather than as a stale metadata
|
|
280
|
+
// marker the runtime no longer knows how to interpret.
|
|
270
281
|
if (typeof value === 'function') {
|
|
271
|
-
|
|
272
|
-
// Block native functions for security
|
|
273
|
-
if (fnString.includes('[native code]')) {
|
|
274
|
-
return undefined;
|
|
275
|
-
}
|
|
276
|
-
return { __isFunction: true, __name: path[path.length - 1] };
|
|
282
|
+
return undefined;
|
|
277
283
|
}
|
|
278
284
|
// Handle arrays - always lazy, only transfer length
|
|
279
285
|
if (Array.isArray(value)) {
|
|
@@ -283,6 +289,11 @@ export class IsolatedVmBridge {
|
|
|
283
289
|
__data: null,
|
|
284
290
|
};
|
|
285
291
|
}
|
|
292
|
+
// Dates have no enumerable own keys; pass through instead of
|
|
293
|
+
// marshaling as an empty object.
|
|
294
|
+
if (value instanceof Date) {
|
|
295
|
+
return value;
|
|
296
|
+
}
|
|
286
297
|
// Handle objects - return metadata with keys
|
|
287
298
|
if (value !== null && typeof value === 'object') {
|
|
288
299
|
return {
|
|
@@ -338,6 +349,11 @@ export class IsolatedVmBridge {
|
|
|
338
349
|
return undefined;
|
|
339
350
|
}
|
|
340
351
|
const element = arr[index];
|
|
352
|
+
// Dates have no enumerable own keys; pass through instead of
|
|
353
|
+
// marshaling as an empty object.
|
|
354
|
+
if (element instanceof Date) {
|
|
355
|
+
return element;
|
|
356
|
+
}
|
|
341
357
|
// If element is object/array, return metadata
|
|
342
358
|
if (element !== null && typeof element === 'object') {
|
|
343
359
|
if (Array.isArray(element)) {
|
|
@@ -361,53 +377,215 @@ export class IsolatedVmBridge {
|
|
|
361
377
|
});
|
|
362
378
|
}
|
|
363
379
|
/**
|
|
364
|
-
* Create
|
|
380
|
+
* Create the single typed-RPC dispatcher.
|
|
365
381
|
*
|
|
366
|
-
*
|
|
382
|
+
* The isolate sends one envelope per typed RPC invocation:
|
|
383
|
+
* `callHost({ type: 'getNodeFirst', nodeName, branchIndex?, runIndex? })`
|
|
367
384
|
*
|
|
368
|
-
*
|
|
385
|
+
* Inputs cross a trust boundary, so the dispatcher parses every envelope
|
|
386
|
+
* with the host-side zod schema (`bridgeMessageSchema`) before any
|
|
387
|
+
* dispatch happens. Anything that deviates from the declared shape —
|
|
388
|
+
* unknown `type`, missing required fields, extra unexpected fields,
|
|
389
|
+
* wrong field types — fails the parse and an error sentinel is returned
|
|
390
|
+
* to the caller.
|
|
391
|
+
*
|
|
392
|
+
* After parsing, `switch (msg.type)` dispatches to a private handler with
|
|
393
|
+
* a fully narrowed message type. The operation set is exactly the cases
|
|
394
|
+
* in this switch; the `type` field selects a static branch in source,
|
|
395
|
+
* not a property lookup on a runtime object.
|
|
396
|
+
*
|
|
397
|
+
* @param data - Current workflow data
|
|
369
398
|
* @private
|
|
370
399
|
*/
|
|
371
|
-
|
|
372
|
-
return new (getIvm().Reference)((
|
|
400
|
+
createCallHostRef(data) {
|
|
401
|
+
return new (getIvm().Reference)((rawMsg) => {
|
|
373
402
|
try {
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
403
|
+
const msg = bridgeMessageSchema.parse(rawMsg);
|
|
404
|
+
switch (msg.type) {
|
|
405
|
+
case 'getNodeFirst':
|
|
406
|
+
return this.handleGetNodeFirst(msg, data);
|
|
407
|
+
case 'getNodeLast':
|
|
408
|
+
return this.handleGetNodeLast(msg, data);
|
|
409
|
+
case 'getNodeAll':
|
|
410
|
+
return this.handleGetNodeAll(msg, data);
|
|
411
|
+
case 'getInputFirst':
|
|
412
|
+
return this.handleGetInputFirst(data);
|
|
413
|
+
case 'getInputLast':
|
|
414
|
+
return this.handleGetInputLast(data);
|
|
415
|
+
case 'getInputAll':
|
|
416
|
+
return this.handleGetInputAll(data);
|
|
417
|
+
case 'getItems':
|
|
418
|
+
return this.handleGetItems(msg, data);
|
|
419
|
+
case 'fromAi':
|
|
420
|
+
return this.handleFromAi(msg, data);
|
|
421
|
+
case 'getNodePairedItem':
|
|
422
|
+
return this.handleGetNodePairedItem(msg, data);
|
|
423
|
+
case 'getNodeItemMatching':
|
|
424
|
+
return this.handleGetNodeItemMatching(msg, data);
|
|
425
|
+
case 'getNodeItem':
|
|
426
|
+
return this.handleGetNodeItem(msg, data);
|
|
427
|
+
case 'evaluateExpression':
|
|
428
|
+
return this.handleEvaluateExpression(msg, data);
|
|
429
|
+
case 'getPairedItem':
|
|
430
|
+
return this.handleGetPairedItem(msg, data);
|
|
431
|
+
default: {
|
|
432
|
+
// Unreachable at runtime — zod rejects unknown `type` values
|
|
433
|
+
// before the switch. The `never` assignment is the compile-time
|
|
434
|
+
// guard: a new schema added to `bridgeMessageSchema` without a
|
|
435
|
+
// matching case here becomes a type error.
|
|
436
|
+
const exhaustive = msg;
|
|
437
|
+
void exhaustive;
|
|
438
|
+
throw new Error('Unhandled bridge message');
|
|
439
|
+
}
|
|
393
440
|
}
|
|
394
|
-
// Execute function with parent as `this` to preserve method context
|
|
395
|
-
return fn.call(parent, ...args);
|
|
396
441
|
}
|
|
397
442
|
catch (err) {
|
|
398
443
|
return serializeError(err);
|
|
399
444
|
}
|
|
400
445
|
});
|
|
401
446
|
}
|
|
447
|
+
/**
|
|
448
|
+
* Handlers for the `$('Foo').{first,last,all}` typed RPCs.
|
|
449
|
+
*
|
|
450
|
+
* Each handler reads a fixed literal property name off the host-side node
|
|
451
|
+
* proxy — the isolate cannot influence which property is dereferenced.
|
|
452
|
+
* Eliminating `data.$` as a host-callable entirely would require reaching
|
|
453
|
+
* the `WorkflowDataProxy` internals (e.g. `getNodeExecutionOrPinnedData`)
|
|
454
|
+
* rather than the public `$()` API; that's a follow-up.
|
|
455
|
+
*
|
|
456
|
+
* `data.$` is a host-wired function (`WorkflowDataProxy`'s `$`). If it
|
|
457
|
+
* ever isn't, optional chaining short-circuits to `undefined` — the same
|
|
458
|
+
* observable result the runtime's `E()` handler produces from any thrown
|
|
459
|
+
* error here.
|
|
460
|
+
*
|
|
461
|
+
* @private
|
|
462
|
+
*/
|
|
463
|
+
handleGetNodeFirst(msg, data) {
|
|
464
|
+
return data.$?.(msg.nodeName)?.first?.(msg.branchIndex, msg.runIndex);
|
|
465
|
+
}
|
|
466
|
+
handleGetNodeLast(msg, data) {
|
|
467
|
+
return data.$?.(msg.nodeName)?.last?.(msg.branchIndex, msg.runIndex);
|
|
468
|
+
}
|
|
469
|
+
handleGetNodeAll(msg, data) {
|
|
470
|
+
return data.$?.(msg.nodeName)?.all?.(msg.branchIndex, msg.runIndex);
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Handlers for the `$input.{first,last,all}` typed RPCs.
|
|
474
|
+
*
|
|
475
|
+
* Each reads a fixed literal property name off `data.$input` (the host's
|
|
476
|
+
* `WorkflowDataProxy` input proxy). The host enforces zero arguments on
|
|
477
|
+
* these methods — the schemas have no fields besides `type`, so the
|
|
478
|
+
* isolate cannot pass anything that would trigger the "should have no
|
|
479
|
+
* arguments" error path on the host side.
|
|
480
|
+
*
|
|
481
|
+
* @private
|
|
482
|
+
*/
|
|
483
|
+
handleGetInputFirst(data) {
|
|
484
|
+
return data.$input?.first?.();
|
|
485
|
+
}
|
|
486
|
+
handleGetInputLast(data) {
|
|
487
|
+
return data.$input?.last?.();
|
|
488
|
+
}
|
|
489
|
+
handleGetInputAll(data) {
|
|
490
|
+
return data.$input?.all?.();
|
|
491
|
+
}
|
|
492
|
+
/**
|
|
493
|
+
* Handler for `$items(nodeName?, outputIndex?, runIndex?)` — the
|
|
494
|
+
* global accessor for a node's execution data. Reads the literal
|
|
495
|
+
* `$items` property off `data` (host-wired by `WorkflowDataProxy`)
|
|
496
|
+
* and forwards the validated args verbatim. The host applies its own
|
|
497
|
+
* defaults when fields are `undefined`.
|
|
498
|
+
*
|
|
499
|
+
* @private
|
|
500
|
+
*/
|
|
501
|
+
handleGetItems(msg, data) {
|
|
502
|
+
return data.$items?.(msg.nodeName, msg.outputIndex, msg.runIndex);
|
|
503
|
+
}
|
|
504
|
+
/**
|
|
505
|
+
* Handler for `$fromAI(name, description?, type?, defaultValue?)` and its
|
|
506
|
+
* `$fromAi` / `$fromai` aliases. Reads the literal `$fromAI` property
|
|
507
|
+
* off `data` (host-wired) and forwards the args. The host validates
|
|
508
|
+
* `name` (required + regex) and applies its own resolution / fallback
|
|
509
|
+
* logic, so empty / invalid names surface as the host's structured
|
|
510
|
+
* `ExpressionError` rather than a generic zod parse error.
|
|
511
|
+
*
|
|
512
|
+
* Note: `msg.valueType` maps to the host's third positional parameter
|
|
513
|
+
* (`_type` in `WorkflowDataProxy.handleFromAi`). The bridge protocol
|
|
514
|
+
* renames it to avoid collision with the `type` discriminator on the
|
|
515
|
+
* envelope — the host parameter currently goes unused, but if it ever
|
|
516
|
+
* gains a name (`type`), this mapping should stay explicit.
|
|
517
|
+
*
|
|
518
|
+
* @private
|
|
519
|
+
*/
|
|
520
|
+
handleFromAi(msg, data) {
|
|
521
|
+
return data.$fromAI?.(msg.name, msg.description, msg.valueType, msg.defaultValue);
|
|
522
|
+
}
|
|
523
|
+
/**
|
|
524
|
+
* Handlers for the `$('Foo').pairedItem(itemIndex?)` / `.itemMatching(...)` /
|
|
525
|
+
* `.item` cluster. Three separate typed RPCs, each reading exactly one
|
|
526
|
+
* literal property off the host node proxy.
|
|
527
|
+
*
|
|
528
|
+
* The split is load-bearing: the host's `pairedItemMethod` closure
|
|
529
|
+
* captures which property name the proxy `get` trap saw, and uses
|
|
530
|
+
* that to pick the right error message (e.g. "Missing item index for
|
|
531
|
+
* .itemMatching()") and to decide between method-call vs getter
|
|
532
|
+
* semantics for `.item`. Reading the matching property here lets
|
|
533
|
+
* those host-side branches fire exactly as they do in the legacy
|
|
534
|
+
* engine; no in-isolate validation needed.
|
|
535
|
+
*
|
|
536
|
+
* @private
|
|
537
|
+
*/
|
|
538
|
+
handleGetNodePairedItem(msg, data) {
|
|
539
|
+
return data.$?.(msg.nodeName)?.pairedItem?.(msg.itemIndex);
|
|
540
|
+
}
|
|
541
|
+
handleGetNodeItemMatching(msg, data) {
|
|
542
|
+
return data.$?.(msg.nodeName)?.itemMatching?.(msg.itemIndex);
|
|
543
|
+
}
|
|
544
|
+
handleGetNodeItem(msg, data) {
|
|
545
|
+
// `.item` is a host getter — accessing it invokes the resolver and
|
|
546
|
+
// returns the value immediately. Optional chaining only short-
|
|
547
|
+
// circuits on null/undefined; the getter still fires on access.
|
|
548
|
+
return data.$?.(msg.nodeName)?.item;
|
|
549
|
+
}
|
|
550
|
+
/**
|
|
551
|
+
* Handler for `$evaluateExpression(expression, itemIndex?)`. Forwards
|
|
552
|
+
* the string to the host's nested-evaluation helper, which re-enters
|
|
553
|
+
* the expression engine on the inner expression. Under the VM engine
|
|
554
|
+
* this round-trips through the bridge again on a fresh evaluation
|
|
555
|
+
* cycle, which is the same shape the legacy engine supports.
|
|
556
|
+
*
|
|
557
|
+
* @private
|
|
558
|
+
*/
|
|
559
|
+
handleEvaluateExpression(msg, data) {
|
|
560
|
+
return data.$evaluateExpression?.(msg.expression, msg.itemIndex);
|
|
561
|
+
}
|
|
562
|
+
/**
|
|
563
|
+
* Handler for `$getPairedItem(destinationNodeName, incomingSourceData,
|
|
564
|
+
* initialPairedItem)`. Forwards directly to the host binding, which
|
|
565
|
+
* walks the paired-item ancestry chain back to the named upstream node
|
|
566
|
+
* and returns the matching execution item.
|
|
567
|
+
*
|
|
568
|
+
* The two trailing host parameters — `usedMethodName` and
|
|
569
|
+
* `nodeBeforeLast` — are deliberately not part of the wire protocol:
|
|
570
|
+
* the host's default for `usedMethodName` is already `$getPairedItem`,
|
|
571
|
+
* and `nodeBeforeLast` is an internal recursion argument the host sets
|
|
572
|
+
* during traversal.
|
|
573
|
+
*
|
|
574
|
+
* @private
|
|
575
|
+
*/
|
|
576
|
+
handleGetPairedItem(msg, data) {
|
|
577
|
+
return data.$getPairedItem?.(msg.destinationNodeName, msg.incomingSourceData, msg.initialPairedItem);
|
|
578
|
+
}
|
|
402
579
|
/**
|
|
403
580
|
* Execute JavaScript code in the isolated context.
|
|
404
581
|
*
|
|
405
582
|
* Flow:
|
|
406
|
-
* 1. Create three ivm.Reference callbacks scoped to the current data
|
|
407
|
-
*
|
|
408
|
-
*
|
|
583
|
+
* 1. Create three ivm.Reference callbacks scoped to the current data:
|
|
584
|
+
* `getValueAtPath`, `getArrayElement`, `callHost`.
|
|
585
|
+
* 2. Use evalClosureSync to run the code in a closure where `$0`/`$1`/`$2`
|
|
586
|
+
* are the callback references — no global mutable state.
|
|
409
587
|
* 3. buildContext() inside the isolate creates a fresh evaluation context
|
|
410
|
-
* from the closure-scoped references
|
|
588
|
+
* from the closure-scoped references.
|
|
411
589
|
*
|
|
412
590
|
* Each call gets its own closure, so nested and concurrent evaluations
|
|
413
591
|
* cannot interfere with each other.
|
|
@@ -423,19 +601,26 @@ export class IsolatedVmBridge {
|
|
|
423
601
|
}
|
|
424
602
|
const getValueAtPath = this.createGetValueAtPathRef(data);
|
|
425
603
|
const getArrayElement = this.createGetArrayElementRef(data);
|
|
426
|
-
const
|
|
604
|
+
const callHost = this.createCallHostRef(data);
|
|
427
605
|
try {
|
|
428
606
|
const timezone = options?.timezone ? JSON.stringify(options.timezone) : 'undefined';
|
|
429
607
|
// Wrap transformed code so 'this' === the closure-scoped context.
|
|
430
608
|
// Tournament generates: this.$json.email, this.$items(), etc.
|
|
431
609
|
// buildContext() creates a fresh context with lazy proxies from the
|
|
432
|
-
// closure-scoped callback references
|
|
610
|
+
// closure-scoped callback references — no globals touched. The bundle
|
|
611
|
+
// is passed as a single object so adding typed RPCs doesn't churn the
|
|
612
|
+
// evalClosureSync signature; new operations land as new schemas in
|
|
613
|
+
// bridge-messages.ts and new cases in the callHost dispatcher.
|
|
433
614
|
// The outer try-catch serializes errors into a sentinel object and returns
|
|
434
615
|
// it as the result. Errors from host callbacks arrive as sentinels already
|
|
435
616
|
// (via serializeError), so we pass them through. This avoids a round-trip
|
|
436
617
|
// callback and keeps Error reconstruction on the host side only.
|
|
437
618
|
const wrappedCode = `
|
|
438
|
-
var __ctx = buildContext(
|
|
619
|
+
var __ctx = buildContext({
|
|
620
|
+
getValueAtPath: $0,
|
|
621
|
+
getArrayElement: $1,
|
|
622
|
+
callHost: $2,
|
|
623
|
+
}, ${timezone});
|
|
439
624
|
try {
|
|
440
625
|
var __result = (function() {
|
|
441
626
|
${code}
|
|
@@ -456,7 +641,7 @@ try {
|
|
|
456
641
|
extra: extra
|
|
457
642
|
};
|
|
458
643
|
}`;
|
|
459
|
-
const result = this.context.evalClosureSync(wrappedCode, [getValueAtPath, getArrayElement,
|
|
644
|
+
const result = this.context.evalClosureSync(wrappedCode, [getValueAtPath, getArrayElement, callHost], { result: { copy: true }, timeout: this.config.timeout });
|
|
460
645
|
if (isErrorSentinel(result)) {
|
|
461
646
|
throw this.reconstructError(result);
|
|
462
647
|
}
|
|
@@ -485,7 +670,7 @@ try {
|
|
|
485
670
|
finally {
|
|
486
671
|
getValueAtPath.release();
|
|
487
672
|
getArrayElement.release();
|
|
488
|
-
|
|
673
|
+
callHost.release();
|
|
489
674
|
}
|
|
490
675
|
}
|
|
491
676
|
/**
|
|
@@ -521,7 +706,7 @@ try {
|
|
|
521
706
|
}
|
|
522
707
|
this.disposed = true;
|
|
523
708
|
this.initialized = false;
|
|
524
|
-
this.logger.
|
|
709
|
+
this.logger.debug('[IsolatedVmBridge] Disposed');
|
|
525
710
|
}
|
|
526
711
|
/**
|
|
527
712
|
* Check if the bridge has been disposed.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"isolated-vm-bridge.js","sourceRoot":"","sources":["../../../src/bridge/isolated-vm-bridge.ts"],"names":[],"mappings":"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"}
|