n8n-workflow 2.21.0 → 2.22.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.
@@ -1,4 +1,33 @@
1
1
  import z, { type ZodType } from 'zod/v4';
2
+ /**
3
+ * JSON-shaped value type — what survives an encrypt → JSON serialize →
4
+ * decrypt → JSON parse round-trip. Used as the leaf type for secure artifacts.
5
+ */
6
+ type JsonPrimitive = string | number | boolean | null;
7
+ type JsonValue = JsonPrimitive | {
8
+ [key: string]: JsonValue;
9
+ } | JsonValue[];
10
+ declare const SecureArtifactsSchemaV1: z.ZodObject<{
11
+ version: z.ZodLiteral<1>;
12
+ artifacts: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
13
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
14
+ }, z.core.$strip>;
15
+ export type ISecureArtifactsV1 = z.output<typeof SecureArtifactsSchemaV1>;
16
+ export declare const SecureArtifactsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
17
+ version: z.ZodLiteral<1>;
18
+ artifacts: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, unknown, z.core.$ZodTypeInternals<JsonValue, unknown>>>>>;
19
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
20
+ }, z.core.$strip>]>;
21
+ /**
22
+ * Decrypted structure of the `secureArtifacts` field on the execution context.
23
+ * Carries values produced by context-establishment hooks (e.g. trigger
24
+ * stripping) for later consumption by node backends. Always encrypted as a
25
+ * single string when stored on `IExecutionContext`; only exists in this
26
+ * structured form on `PlaintextExecutionContext` during runtime.
27
+ *
28
+ * @see PlaintextExecutionContext.secureArtifacts
29
+ */
30
+ export type ISecureArtifacts = z.output<typeof SecureArtifactsSchema>;
2
31
  declare const CredentialContextSchemaV1: z.ZodObject<{
3
32
  version: z.ZodLiteral<1>;
4
33
  identity: z.ZodString;
@@ -44,6 +73,7 @@ declare const ExecutionContextSchemaV1: z.ZodObject<{
44
73
  }, z.core.$strip>>;
45
74
  parentExecutionId: z.ZodOptional<z.ZodString>;
46
75
  credentials: z.ZodOptional<z.ZodString>;
76
+ secureArtifacts: z.ZodOptional<z.ZodString>;
47
77
  redaction: z.ZodOptional<z.ZodObject<{
48
78
  version: z.ZodLiteral<1>;
49
79
  policy: z.ZodUnion<readonly [z.ZodLiteral<"none">, z.ZodLiteral<"all">, z.ZodLiteral<"non-manual">, z.ZodLiteral<"manual-only">]>;
@@ -72,6 +102,7 @@ export declare const ExecutionContextSchema: z.ZodDiscriminatedUnion<[z.ZodObjec
72
102
  }, z.core.$strip>>;
73
103
  parentExecutionId: z.ZodOptional<z.ZodString>;
74
104
  credentials: z.ZodOptional<z.ZodString>;
105
+ secureArtifacts: z.ZodOptional<z.ZodString>;
75
106
  redaction: z.ZodOptional<z.ZodObject<{
76
107
  version: z.ZodLiteral<1>;
77
108
  policy: z.ZodUnion<readonly [z.ZodLiteral<"none">, z.ZodLiteral<"all">, z.ZodLiteral<"non-manual">, z.ZodLiteral<"manual-only">]>;
@@ -127,8 +158,9 @@ export type IExecutionContext = z.output<typeof ExecutionContextSchema>;
127
158
  * };
128
159
  * ```
129
160
  */
130
- export type PlaintextExecutionContext = Omit<IExecutionContext, 'credentials'> & {
161
+ export type PlaintextExecutionContext = Omit<IExecutionContext, 'credentials' | 'secureArtifacts'> & {
131
162
  credentials?: ICredentialContext;
163
+ secureArtifacts?: ISecureArtifacts;
132
164
  };
133
165
  export declare const safeParse: <T extends ZodType>(value: string | object, schema: T) => z.core.output<T>;
134
166
  /**
@@ -146,5 +178,6 @@ export declare const toExecutionContext: (value: string | object) => IExecutionC
146
178
  * @throws Error in case parsing fails for any reason
147
179
  */
148
180
  export declare const toCredentialContext: (value: string | object) => ICredentialContext;
181
+ export declare const toSecureArtifacts: (value: string | object) => ISecureArtifacts;
149
182
  export {};
150
183
  //# sourceMappingURL=execution-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-context.d.ts","sourceRoot":"","sources":["../../src/execution-context.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,EAAE,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAIzC,QAAA,MAAM,yBAAyB;;;;iBAY7B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;;;mBAIjC,CAAC;AAEJ;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE1E,eAAO,MAAM,uBAAuB,6HAY1B,CAAC;AAIX,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AASjF,QAAA,MAAM,wBAAwB;;;iBAG5B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4C5B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;mBAIhC,CAAC;AAEJ;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG;IAChF,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,OAAO,EAAE,OAAO,MAAM,GAAG,MAAM,EAAE,QAAQ,CAAC,qBAe7E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,iBAG3D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,kBAG5D,CAAC"}
1
+ {"version":3,"file":"execution-context.d.ts","sourceRoot":"","sources":["../../src/execution-context.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,EAAE,EAAE,KAAK,OAAO,EAAE,MAAM,QAAQ,CAAC;AAIzC;;;GAGG;AACH,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AACtD,KAAK,SAAS,GAAG,aAAa,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,EAAE,CAAC;AAa5E,QAAA,MAAM,uBAAuB;;;;iBAmB3B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE1E,eAAO,MAAM,qBAAqB;;;;mBAI/B,CAAC;AAEJ;;;;;;;;GAQG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEtE,QAAA,MAAM,yBAAyB;;;;iBAY7B,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;;;mBAIjC,CAAC;AAEJ;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAE1E,eAAO,MAAM,uBAAuB,6HAY1B,CAAC;AAIX,MAAM,MAAM,yBAAyB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AASjF,QAAA,MAAM,wBAAwB;;;iBAG5B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwD5B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE5E,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAIhC,CAAC;AAEJ;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAC3C,iBAAiB,EACjB,aAAa,GAAG,iBAAiB,CACjC,GAAG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,OAAO,EAAE,OAAO,MAAM,GAAG,MAAM,EAAE,QAAQ,CAAC,qBAe7E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,iBAG3D,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,kBAG5D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,MAAM,GAAG,MAAM,KAAG,gBAG1D,CAAC"}
@@ -12,9 +12,40 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  })(function (require, exports) {
13
13
  "use strict";
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.toCredentialContext = exports.toExecutionContext = exports.safeParse = exports.ExecutionContextSchema = exports.WorkflowExecuteModeList = exports.CredentialContextSchema = void 0;
15
+ exports.toSecureArtifacts = exports.toCredentialContext = exports.toExecutionContext = exports.safeParse = exports.ExecutionContextSchema = exports.WorkflowExecuteModeList = exports.CredentialContextSchema = exports.SecureArtifactsSchema = void 0;
16
16
  const v4_1 = __importDefault(require("zod/v4"));
17
17
  const utils_1 = require("./utils");
18
+ const JsonValueSchema = v4_1.default.lazy(() => v4_1.default.union([
19
+ v4_1.default.string(),
20
+ v4_1.default.number(),
21
+ v4_1.default.boolean(),
22
+ v4_1.default.null(),
23
+ v4_1.default.record(v4_1.default.string(), JsonValueSchema),
24
+ v4_1.default.array(JsonValueSchema),
25
+ ]));
26
+ const SecureArtifactsSchemaV1 = v4_1.default.object({
27
+ version: v4_1.default.literal(1),
28
+ /**
29
+ * Artifacts produced by context-establishment hooks (e.g. a trigger
30
+ * stripper) and consumed by node backends later in the execution.
31
+ *
32
+ * - Outer key: source node name.
33
+ * - Inner array is parallel to the trigger items array — index `i`
34
+ * corresponds to `triggerItems[i]`.
35
+ * - Each per-item map is keyed by the extraction path; values are the
36
+ * leaf data extracted from that item.
37
+ */
38
+ artifacts: v4_1.default.record(v4_1.default.string(), v4_1.default.array(v4_1.default.record(v4_1.default.string(), JsonValueSchema))),
39
+ /**
40
+ * Optional metadata produced by the hook (e.g. provenance, hook id).
41
+ */
42
+ metadata: v4_1.default.record(v4_1.default.string(), v4_1.default.unknown()).optional(),
43
+ });
44
+ exports.SecureArtifactsSchema = v4_1.default
45
+ .discriminatedUnion('version', [SecureArtifactsSchemaV1])
46
+ .meta({
47
+ title: 'ISecureArtifacts',
48
+ });
18
49
  const CredentialContextSchemaV1 = v4_1.default.object({
19
50
  version: v4_1.default.literal(1),
20
51
  /**
@@ -88,6 +119,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
88
119
  credentials: v4_1.default.string().optional().meta({
89
120
  description: 'Encrypted credential context for dynamic credential resolution Always encrypted when stored, decrypted on-demand by credential resolver @see ICredentialContext for decrypted structure',
90
121
  }),
122
+ /**
123
+ * Encrypted artifacts produced by context-establishment hooks
124
+ * (e.g. a trigger stripper) for later consumption by node backends.
125
+ * Always encrypted when stored, decrypted on demand by
126
+ * `ExecutionContextService`.
127
+ * @see ISecureArtifacts for the decrypted structure.
128
+ */
129
+ secureArtifacts: v4_1.default.string().optional().meta({
130
+ description: 'Encrypted artifacts produced by context-establishment hooks. Always encrypted when stored, decrypted on-demand by ExecutionContextService. @see ISecureArtifacts for decrypted structure',
131
+ }),
91
132
  /**
92
133
  * Redaction setting captured at execution time.
93
134
  * Persisted so the correct redaction policy is applied when reading execution data,
@@ -141,5 +182,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
141
182
  return (0, exports.safeParse)(value, exports.CredentialContextSchema);
142
183
  };
143
184
  exports.toCredentialContext = toCredentialContext;
185
+ const toSecureArtifacts = (value) => {
186
+ // here we could implement a migration policy for migrating old secure artifacts versions to newer ones
187
+ return (0, exports.safeParse)(value, exports.SecureArtifactsSchema);
188
+ };
189
+ exports.toSecureArtifacts = toSecureArtifacts;
144
190
  });
145
191
  //# sourceMappingURL=execution-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"execution-context.js","sourceRoot":"","sources":["../../src/execution-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution-context.js","sourceRoot":"","sources":["../../src/execution-context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../../../src/extensions/expression-parser.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IAIb,kBAAkB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,cAAc,CAAC;AAK9D,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MAEzC,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,YAAY,MAAM,KAAG,eAAe,EA4DnE,CAAC;AAOF,eAAO,MAAM,cAAc,GAAI,OAAO,eAAe,EAAE,KAAG,MASzD,CAAC"}
1
+ {"version":3,"file":"expression-parser.d.ts","sourceRoot":"","sources":["../../../src/extensions/expression-parser.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IAIb,kBAAkB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,cAAc,CAAC;AAK9D,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,MAEzC,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,YAAY,MAAM,KAAG,eAAe,EAkEnE,CAAC;AAOF,eAAO,MAAM,cAAc,GAAI,OAAO,eAAe,EAAE,KAAG,MASzD,CAAC"}
@@ -17,6 +17,11 @@
17
17
  };
18
18
  exports.escapeCode = escapeCode;
19
19
  const splitExpression = (expression) => {
20
+ // Mirror @n8n/tournament's splitExpression: always emit an initial text
21
+ // chunk so downstream consumers can rely on chunks[0] being defined.
22
+ if (expression === '') {
23
+ return [{ type: 'text', text: '' }];
24
+ }
20
25
  const chunks = [];
21
26
  let searchingFor = 'open';
22
27
  let activeRegex = OPEN_BRACKET;
@@ -1 +1 @@
1
- {"version":3,"file":"expression-parser.js","sourceRoot":"","sources":["../../../src/extensions/expression-parser.ts"],"names":[],"mappings":";;;;;;;;;;;;IAgBA,MAAM,YAAY,GAAG,iCAAiC,CAAC;IACvD,MAAM,aAAa,GAAG,iCAAiC,CAAC;IAEjD,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE;QAClD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC;IAFW,QAAA,UAAU,cAErB;IAEK,MAAM,eAAe,GAAG,CAAC,UAAkB,EAAqB,EAAE;QACxE,MAAM,MAAM,GAAsB,EAAE,CAAC;QACrC,IAAI,YAAY,GAAqB,MAAM,CAAC;QAC5C,IAAI,WAAW,GAAG,YAAY,CAAC;QAE/B,IAAI,MAAM,GAAG,EAAE,CAAC;QAEhB,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,OAAO,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,8CAA8C;YAC9C,iDAAiD;YACjD,kCAAkC;YAClC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC;gBAClB,MAAM,IAAI,IAAI,CAAC;gBACf,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;oBAC7B,MAAM,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM;qBACZ,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAA,kBAAU,EAAC,MAAM,CAAC;wBACxB,kBAAkB,EAAE,KAAK;qBACzB,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM;YACP,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvB,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gBACvC,KAAK,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;gBAEnC,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;oBAC7B,MAAM,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM;qBACZ,CAAC,CAAC;oBACH,YAAY,GAAG,OAAO,CAAC;oBACvB,WAAW,GAAG,aAAa,CAAC;gBAC7B,CAAC;qBAAM,CAAC;oBACP,MAAM,CAAC,IAAI,CAAC;wBACX,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAA,kBAAU,EAAC,MAAM,CAAC;wBACxB,kBAAkB,EAAE,IAAI;qBACxB,CAAC,CAAC;oBACH,YAAY,GAAG,MAAM,CAAC;oBACtB,WAAW,GAAG,YAAY,CAAC;gBAC5B,CAAC;gBAED,KAAK,IAAI,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC;gBACvB,MAAM,GAAG,EAAE,CAAC;YACb,CAAC;QACF,CAAC;QAED,OAAO,MAAM,CAAC;IACf,CAAC,CAAC;IA5DW,QAAA,eAAe,mBA4D1B;IAEF,iDAAiD;IACjD,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,EAAE;QAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,CAAC,CAAC;IAEK,MAAM,cAAc,GAAG,CAAC,KAAwB,EAAU,EAAE;QAClE,OAAO,KAAK;aACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACd,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC3B,OAAO,KAAK,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACvF,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC;QACnB,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC,CAAC;IATW,QAAA,cAAc,kBASzB"}
1
+ {"version":3,"file":"expression-parser.js","sourceRoot":"","sources":["../../../src/extensions/expression-parser.ts"],"names":[],"mappings":"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"}
@@ -891,6 +891,12 @@ export interface INode {
891
891
  executeOnce?: boolean;
892
892
  onError?: OnError;
893
893
  continueOnFail?: boolean;
894
+ customTelemetryTags?: {
895
+ tag?: Array<{
896
+ key: string;
897
+ value: string;
898
+ }>;
899
+ };
894
900
  parameters: INodeParameters;
895
901
  credentials?: INodeCredentials;
896
902
  webhookId?: string;
@@ -1350,6 +1356,15 @@ export interface INodePropertyCollection {
1350
1356
  values: INodeProperties[];
1351
1357
  builderHint?: IParameterBuilderHint;
1352
1358
  }
1359
+ /**
1360
+ * One variation of `extraTypeDefContent`, optionally gated by `displayOptions`
1361
+ * so per-mode / per-resource / per-operation examples land only in their
1362
+ * corresponding narrowed type without cross-bleed.
1363
+ */
1364
+ export interface IBuilderHintVariation {
1365
+ content: string;
1366
+ displayOptions?: IDisplayOptions;
1367
+ }
1353
1368
  export interface IParameterBuilderHint {
1354
1369
  propertyHint: string;
1355
1370
  placeholderSupported?: boolean;
@@ -1863,6 +1878,14 @@ export interface IBuilderHint {
1863
1878
  searchHint?: string;
1864
1879
  /** Related nodes that work together with this node */
1865
1880
  relatedNodes?: IRelatedNode[];
1881
+ /**
1882
+ * Multi-line content (typically code examples wrapped in `<patterns>...</patterns>`)
1883
+ * emitted into the generated workflow-sdk `.d.ts` but NOT surfaced in
1884
+ * `nodes(action="search")` results. Each variation may carry `displayOptions`
1885
+ * so per-mode / per-resource / per-operation examples land only in their
1886
+ * corresponding narrowed type.
1887
+ */
1888
+ extraTypeDefContent?: IBuilderHintVariation[];
1866
1889
  }
1867
1890
  export interface INodeTypeDescription extends INodeTypeBaseDescription {
1868
1891
  version: number | number[];