@n8n/expression-runtime 0.14.0 → 0.14.2
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/build.tsbuildinfo +1 -1
- package/dist/cjs/runtime/context.d.ts.map +1 -1
- package/dist/cjs/runtime/context.js +8 -1
- package/dist/cjs/runtime/context.js.map +1 -1
- package/dist/cjs/runtime/jmespath.d.ts +22 -0
- package/dist/cjs/runtime/jmespath.d.ts.map +1 -0
- package/dist/cjs/runtime/jmespath.js +112 -0
- package/dist/cjs/runtime/jmespath.js.map +1 -0
- package/dist/esm/build.tsbuildinfo +1 -1
- package/dist/esm/runtime/context.d.ts.map +1 -1
- package/dist/esm/runtime/context.js +7 -0
- package/dist/esm/runtime/context.js.map +1 -1
- package/dist/esm/runtime/jmespath.d.ts +22 -0
- package/dist/esm/runtime/jmespath.d.ts.map +1 -0
- package/dist/esm/runtime/jmespath.js +66 -0
- package/dist/esm/runtime/jmespath.js.map +1 -0
- package/package.json +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"AA0BA;;;;;;;;;;;;;;;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,CAmKzB"}
|
|
@@ -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", "luxon", "../extensions/extend", "../extensions/function-extensions", "./safe-globals", "./lazy-proxy"], factory);
|
|
7
|
+
define(["require", "exports", "luxon", "../extensions/extend", "../extensions/function-extensions", "./safe-globals", "./lazy-proxy", "./jmespath"], factory);
|
|
8
8
|
}
|
|
9
9
|
})(function (require, exports) {
|
|
10
10
|
"use strict";
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
const function_extensions_1 = require("../extensions/function-extensions");
|
|
16
16
|
const safe_globals_1 = require("./safe-globals");
|
|
17
17
|
const lazy_proxy_1 = require("./lazy-proxy");
|
|
18
|
+
const jmespath_1 = require("./jmespath");
|
|
18
19
|
// Pre-create safe error subclass wrappers (reused across evaluations)
|
|
19
20
|
const SafeTypeError = (0, safe_globals_1.createSafeErrorSubclass)(TypeError);
|
|
20
21
|
const SafeSyntaxError = (0, safe_globals_1.createSafeErrorSubclass)(SyntaxError);
|
|
@@ -83,6 +84,12 @@
|
|
|
83
84
|
// pattern resolves them correctly when the VM checks ctx first
|
|
84
85
|
target.extend = extend_1.extend;
|
|
85
86
|
target.extendOptional = extend_1.extendOptional;
|
|
87
|
+
// Expose jmespath helpers in-isolate so they shadow the host-side
|
|
88
|
+
// `data.$jmesPath` / `data.$jmespath` from WorkflowDataProxy. Same rationale
|
|
89
|
+
// as extend / extendOptional above: keeping these in-isolate removes them
|
|
90
|
+
// from the bridge's reachable host-callable surface.
|
|
91
|
+
target.$jmesPath = jmespath_1.jmesPath;
|
|
92
|
+
target.$jmespath = jmespath_1.jmesPath;
|
|
86
93
|
// Wire builtins so tournament's VariablePolyfill resolves them from ctx
|
|
87
94
|
initializeBuiltins(target);
|
|
88
95
|
// $item(itemIndex) returns a sub-proxy for the specified item (legacy syntax)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-isolate `$jmespath` / `$jmesPath` implementation.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the host-side wrapper in `packages/workflow/src/workflow-data-proxy.ts`
|
|
5
|
+
* so that expressions resolve `$jmespath` from the in-isolate runtime via
|
|
6
|
+
* Tournament's polyfill, instead of falling through to the bridge's
|
|
7
|
+
* `callFunctionAtPath` channel. This shrinks the host-callable surface
|
|
8
|
+
* exposed by the data object.
|
|
9
|
+
*
|
|
10
|
+
* Behavioural parity with the host wrapper:
|
|
11
|
+
* - Throws `ExpressionError` (same name) when args are wrong.
|
|
12
|
+
* - Rejects queries that contain unsafe property tokens.
|
|
13
|
+
* - Spreads non-array, non-null objects to drop proxies at the top level.
|
|
14
|
+
*
|
|
15
|
+
* Note on lazy proxies: when `data` is a lazy proxy (e.g. `$json`), each
|
|
16
|
+
* property access during `jmespath.search` triggers a synchronous host
|
|
17
|
+
* roundtrip via `getValueAtPath`. Functional but slow for deep traversals.
|
|
18
|
+
* Performance optimisation (e.g. bulk pre-fetch of the queried subtree) is
|
|
19
|
+
* a follow-up.
|
|
20
|
+
*/
|
|
21
|
+
export declare function jmesPath(data: unknown, query: string): unknown;
|
|
22
|
+
//# sourceMappingURL=jmespath.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jmespath.d.ts","sourceRoot":"","sources":["../../../src/runtime/jmespath.ts"],"names":[],"mappings":"AAmCA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAoB9D"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
2
|
+
if (k2 === undefined) k2 = k;
|
|
3
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
4
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
5
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
6
|
+
}
|
|
7
|
+
Object.defineProperty(o, k2, desc);
|
|
8
|
+
}) : (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
o[k2] = m[k];
|
|
11
|
+
}));
|
|
12
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
13
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
14
|
+
}) : function(o, v) {
|
|
15
|
+
o["default"] = v;
|
|
16
|
+
});
|
|
17
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
18
|
+
var ownKeys = function(o) {
|
|
19
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
20
|
+
var ar = [];
|
|
21
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
22
|
+
return ar;
|
|
23
|
+
};
|
|
24
|
+
return ownKeys(o);
|
|
25
|
+
};
|
|
26
|
+
return function (mod) {
|
|
27
|
+
if (mod && mod.__esModule) return mod;
|
|
28
|
+
var result = {};
|
|
29
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
30
|
+
__setModuleDefault(result, mod);
|
|
31
|
+
return result;
|
|
32
|
+
};
|
|
33
|
+
})();
|
|
34
|
+
(function (factory) {
|
|
35
|
+
if (typeof module === "object" && typeof module.exports === "object") {
|
|
36
|
+
var v = factory(require, exports);
|
|
37
|
+
if (v !== undefined) module.exports = v;
|
|
38
|
+
}
|
|
39
|
+
else if (typeof define === "function" && define.amd) {
|
|
40
|
+
define(["require", "exports", "jmespath", "./safe-globals"], factory);
|
|
41
|
+
}
|
|
42
|
+
})(function (require, exports) {
|
|
43
|
+
"use strict";
|
|
44
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
+
exports.jmesPath = jmesPath;
|
|
46
|
+
const jmespath = __importStar(require("jmespath"));
|
|
47
|
+
const safe_globals_1 = require("./safe-globals");
|
|
48
|
+
const unsafeJmespathProperties = [
|
|
49
|
+
'__proto__',
|
|
50
|
+
'prototype',
|
|
51
|
+
'constructor',
|
|
52
|
+
'getPrototypeOf',
|
|
53
|
+
'setPrototypeOf',
|
|
54
|
+
'getOwnPropertyDescriptor',
|
|
55
|
+
'getOwnPropertyDescriptors',
|
|
56
|
+
'defineProperty',
|
|
57
|
+
'defineProperties',
|
|
58
|
+
'mainModule',
|
|
59
|
+
'binding',
|
|
60
|
+
'_linkedBinding',
|
|
61
|
+
'_load',
|
|
62
|
+
'prepareStackTrace',
|
|
63
|
+
'__lookupGetter__',
|
|
64
|
+
'__lookupSetter__',
|
|
65
|
+
'__defineGetter__',
|
|
66
|
+
'__defineSetter__',
|
|
67
|
+
'caller',
|
|
68
|
+
'arguments',
|
|
69
|
+
'getBuiltinModule',
|
|
70
|
+
'dlopen',
|
|
71
|
+
'execve',
|
|
72
|
+
'loadEnvFile',
|
|
73
|
+
];
|
|
74
|
+
const unsafeJmespathPropertyPattern = new RegExp(`\\b(?:${unsafeJmespathProperties.map((p) => p.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('|')})\\b`);
|
|
75
|
+
/**
|
|
76
|
+
* In-isolate `$jmespath` / `$jmesPath` implementation.
|
|
77
|
+
*
|
|
78
|
+
* Mirrors the host-side wrapper in `packages/workflow/src/workflow-data-proxy.ts`
|
|
79
|
+
* so that expressions resolve `$jmespath` from the in-isolate runtime via
|
|
80
|
+
* Tournament's polyfill, instead of falling through to the bridge's
|
|
81
|
+
* `callFunctionAtPath` channel. This shrinks the host-callable surface
|
|
82
|
+
* exposed by the data object.
|
|
83
|
+
*
|
|
84
|
+
* Behavioural parity with the host wrapper:
|
|
85
|
+
* - Throws `ExpressionError` (same name) when args are wrong.
|
|
86
|
+
* - Rejects queries that contain unsafe property tokens.
|
|
87
|
+
* - Spreads non-array, non-null objects to drop proxies at the top level.
|
|
88
|
+
*
|
|
89
|
+
* Note on lazy proxies: when `data` is a lazy proxy (e.g. `$json`), each
|
|
90
|
+
* property access during `jmespath.search` triggers a synchronous host
|
|
91
|
+
* roundtrip via `getValueAtPath`. Functional but slow for deep traversals.
|
|
92
|
+
* Performance optimisation (e.g. bulk pre-fetch of the queried subtree) is
|
|
93
|
+
* a follow-up.
|
|
94
|
+
*/
|
|
95
|
+
function jmesPath(data, query) {
|
|
96
|
+
if (typeof data !== 'object' || typeof query !== 'string') {
|
|
97
|
+
throw new safe_globals_1.ExpressionError('expected two arguments (Object, string) for this function');
|
|
98
|
+
}
|
|
99
|
+
// jmespath decodes escape sequences inside quoted identifiers, so the
|
|
100
|
+
// token check must run against an unescaped query. Reject any backslash
|
|
101
|
+
// up front to keep the property-name match meaningful.
|
|
102
|
+
if (query.includes('\\') || unsafeJmespathPropertyPattern.test(query)) {
|
|
103
|
+
throw new safe_globals_1.ExpressionError('Cannot access this property in a jmespath query due to security concerns');
|
|
104
|
+
}
|
|
105
|
+
if (data !== null && !Array.isArray(data) && typeof data === 'object') {
|
|
106
|
+
return jmespath.search({ ...data }, query);
|
|
107
|
+
}
|
|
108
|
+
// Array or null — pass through to jmespath which accepts both
|
|
109
|
+
return jmespath.search(data, query);
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
//# sourceMappingURL=jmespath.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jmespath.js","sourceRoot":"","sources":["../../../src/runtime/jmespath.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuDA,4BAoBC;IA3ED,mDAAqC;IAErC,iDAAiD;IAEjD,MAAM,wBAAwB,GAAG;QAChC,WAAW;QACX,WAAW;QACX,aAAa;QACb,gBAAgB;QAChB,gBAAgB;QAChB,0BAA0B;QAC1B,2BAA2B;QAC3B,gBAAgB;QAChB,kBAAkB;QAClB,YAAY;QACZ,SAAS;QACT,gBAAgB;QAChB,OAAO;QACP,mBAAmB;QACnB,kBAAkB;QAClB,kBAAkB;QAClB,kBAAkB;QAClB,kBAAkB;QAClB,QAAQ;QACR,WAAW;QACX,kBAAkB;QAClB,QAAQ;QACR,QAAQ;QACR,aAAa;KACb,CAAC;IAEF,MAAM,6BAA6B,GAAG,IAAI,MAAM,CAC/C,SAAS,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CACtG,CAAC;IAEF;;;;;;;;;;;;;;;;;;;OAmBG;IACH,SAAgB,QAAQ,CAAC,IAAa,EAAE,KAAa;QACpD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC3D,MAAM,IAAI,8BAAe,CAAC,2DAA2D,CAAC,CAAC;QACxF,CAAC;QAED,sEAAsE;QACtE,wEAAwE;QACxE,uDAAuD;QACvD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,8BAAe,CACxB,0EAA0E,CAC1E,CAAC;QACH,CAAC;QAED,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvE,OAAO,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAI,IAAgC,EAAE,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC;QAED,8DAA8D;QAC9D,OAAO,QAAQ,CAAC,MAAM,CAAC,IAAa,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC"}
|