@atom8n/n8n-workflow
Advanced tools
| import type { ExtensionMap } from './extensions'; | ||
| export declare function toBoolean(value: boolean): boolean; | ||
| export declare function toInt(value: boolean): 1 | 0; | ||
| export declare function toInt(value: boolean): 0 | 1; | ||
| export declare function toDateTime(): undefined; | ||
| export declare const booleanExtensions: ExtensionMap; |
@@ -28,4 +28,4 @@ import type { AssignmentCollectionValue, FilterValue, INodeCredentials, INodeCredentialsDetails, INodeParameterResourceLocator, INodeParameters, NodeConnectionType, NodeParameterValueType, OnError, ResourceMapperValue, ResourceMapperField, FieldType, INodePropertyOptions, IDisplayOptions, INodePropertyRouting, FilterOptionsValue, FilterOperatorValue, FilterConditionValue, FilterOperatorType, AssignmentValue, DisplayCondition, INode, IN8nRequestOperations, IN8nRequestOperationPaginationGeneric, IDataObject, IN8nRequestOperationPaginationOffset, DeclarativeRestApiSettings, INodeRequestOutput, PostReceiveAction, IPostReceiveBinaryData, IPostReceiveFilter, IPostReceiveLimit, IPostReceiveRootProperty, IPostReceiveSet, IPostReceiveSetKeyValue, IPostReceiveSort, INodeRequestSend, GenericValue } from './interfaces'; | ||
| url?: string | undefined; | ||
| headers?: IDataObject | undefined; | ||
| body?: {} | undefined; | ||
| headers?: IDataObject | undefined; | ||
| qs?: IDataObject | undefined; | ||
@@ -40,4 +40,4 @@ auth?: { | ||
| url?: string | undefined; | ||
| headers?: IDataObject | undefined; | ||
| body?: {} | undefined; | ||
| headers?: IDataObject | undefined; | ||
| qs?: IDataObject | undefined; | ||
@@ -44,0 +44,0 @@ auth?: { |
@@ -68,2 +68,12 @@ import type { IDataObject, IExecuteData, INodeExecutionData, INodeParameters, IWorkflowDataProxyAdditionalKeys, IWorkflowDataProxyData, WorkflowExecuteMode } from './interfaces'; | ||
| /** | ||
| * Returns a proxy exposing the transient workspace context as `$workspace`. | ||
| * | ||
| * The workspace data is provided at runtime (e.g. by the VS Code extension | ||
| * webview, which appends `__filePath` / `__dirPath` to the workflow on open) | ||
| * and is never persisted. Reads always reflect the current | ||
| * `workflow.workspace` value, so updating the underlying object is picked | ||
| * up without rebuilding the proxy. | ||
| */ | ||
| private workspaceGetter; | ||
| /** | ||
| * Returns a proxy to query data of all nodes | ||
@@ -70,0 +80,0 @@ * |
@@ -13,2 +13,8 @@ import { Expression } from './expression'; | ||
| pinData?: IPinData; | ||
| /** | ||
| * Transient workspace context (e.g. file path of the workflow on disk in the | ||
| * VS Code extension webview). Exposed at runtime via `$workspace` and is | ||
| * never persisted to the .n8n file. | ||
| */ | ||
| workspace?: IDataObject; | ||
| } | ||
@@ -29,2 +35,6 @@ export declare class Workflow { | ||
| pinData?: IPinData; | ||
| /** | ||
| * Transient workspace context (never persisted) — exposed in expressions as `$workspace`. | ||
| */ | ||
| workspace?: IDataObject; | ||
| constructor(parameters: WorkflowParameters); | ||
@@ -31,0 +41,0 @@ setNodes(nodes: INode[]): void; |
@@ -77,2 +77,6 @@ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
| pinData; | ||
| /** | ||
| * Transient workspace context (never persisted) — exposed in expressions as `$workspace`. | ||
| */ | ||
| workspace; | ||
| constructor(parameters) { | ||
@@ -82,2 +86,3 @@ this.id = parameters.id; // @tech_debt Ensure this is not optional | ||
| this.nodeTypes = parameters.nodeTypes; | ||
| this.workspace = parameters.workspace; | ||
| let nodeType; | ||
@@ -84,0 +89,0 @@ for (const node of parameters.nodes) { |
| import type { ExtensionMap } from './extensions'; | ||
| export declare function toBoolean(value: boolean): boolean; | ||
| export declare function toInt(value: boolean): 1 | 0; | ||
| export declare function toInt(value: boolean): 0 | 1; | ||
| export declare function toDateTime(): undefined; | ||
| export declare const booleanExtensions: ExtensionMap; |
@@ -28,4 +28,4 @@ import type { AssignmentCollectionValue, FilterValue, INodeCredentials, INodeCredentialsDetails, INodeParameterResourceLocator, INodeParameters, NodeConnectionType, NodeParameterValueType, OnError, ResourceMapperValue, ResourceMapperField, FieldType, INodePropertyOptions, IDisplayOptions, INodePropertyRouting, FilterOptionsValue, FilterOperatorValue, FilterConditionValue, FilterOperatorType, AssignmentValue, DisplayCondition, INode, IN8nRequestOperations, IN8nRequestOperationPaginationGeneric, IDataObject, IN8nRequestOperationPaginationOffset, DeclarativeRestApiSettings, INodeRequestOutput, PostReceiveAction, IPostReceiveBinaryData, IPostReceiveFilter, IPostReceiveLimit, IPostReceiveRootProperty, IPostReceiveSet, IPostReceiveSetKeyValue, IPostReceiveSort, INodeRequestSend, GenericValue } from './interfaces'; | ||
| url?: string | undefined; | ||
| headers?: IDataObject | undefined; | ||
| body?: {} | undefined; | ||
| headers?: IDataObject | undefined; | ||
| qs?: IDataObject | undefined; | ||
@@ -40,4 +40,4 @@ auth?: { | ||
| url?: string | undefined; | ||
| headers?: IDataObject | undefined; | ||
| body?: {} | undefined; | ||
| headers?: IDataObject | undefined; | ||
| qs?: IDataObject | undefined; | ||
@@ -44,0 +44,0 @@ auth?: { |
@@ -68,2 +68,12 @@ import type { IDataObject, IExecuteData, INodeExecutionData, INodeParameters, IWorkflowDataProxyAdditionalKeys, IWorkflowDataProxyData, WorkflowExecuteMode } from './interfaces'; | ||
| /** | ||
| * Returns a proxy exposing the transient workspace context as `$workspace`. | ||
| * | ||
| * The workspace data is provided at runtime (e.g. by the VS Code extension | ||
| * webview, which appends `__filePath` / `__dirPath` to the workflow on open) | ||
| * and is never persisted. Reads always reflect the current | ||
| * `workflow.workspace` value, so updating the underlying object is picked | ||
| * up without rebuilding the proxy. | ||
| */ | ||
| private workspaceGetter; | ||
| /** | ||
| * Returns a proxy to query data of all nodes | ||
@@ -70,0 +80,0 @@ * |
@@ -532,2 +532,43 @@ /* eslint-disable @typescript-eslint/prefer-nullish-coalescing */ | ||
| /** | ||
| * Returns a proxy exposing the transient workspace context as `$workspace`. | ||
| * | ||
| * The workspace data is provided at runtime (e.g. by the VS Code extension | ||
| * webview, which appends `__filePath` / `__dirPath` to the workflow on open) | ||
| * and is never persisted. Reads always reflect the current | ||
| * `workflow.workspace` value, so updating the underlying object is picked | ||
| * up without rebuilding the proxy. | ||
| */ | ||
| workspaceGetter() { | ||
| const that = this; | ||
| return new Proxy({}, { | ||
| has: (_target, name) => { | ||
| const workspace = that.workflow.workspace; | ||
| if (!workspace || typeof name !== 'string') | ||
| return false; | ||
| return Object.prototype.hasOwnProperty.call(workspace, name); | ||
| }, | ||
| ownKeys() { | ||
| const workspace = that.workflow.workspace; | ||
| return workspace ? Object.keys(workspace) : []; | ||
| }, | ||
| getOwnPropertyDescriptor() { | ||
| return { | ||
| enumerable: true, | ||
| configurable: true, | ||
| }; | ||
| }, | ||
| get(target, name, receiver) { | ||
| if (name === 'isProxy') | ||
| return true; | ||
| const workspace = that.workflow.workspace; | ||
| if (workspace && | ||
| typeof name === 'string' && | ||
| Object.prototype.hasOwnProperty.call(workspace, name)) { | ||
| return workspace[name]; | ||
| } | ||
| return Reflect.get(target, name, receiver); | ||
| }, | ||
| }); | ||
| } | ||
| /** | ||
| * Returns a proxy to query data of all nodes | ||
@@ -1130,2 +1171,3 @@ * | ||
| $workflow: this.workflowGetter(), | ||
| $workspace: this.workspaceGetter(), | ||
| $itemIndex: this.itemIndex, | ||
@@ -1132,0 +1174,0 @@ $now: DateTime.now(), |
@@ -13,2 +13,8 @@ import { Expression } from './expression'; | ||
| pinData?: IPinData; | ||
| /** | ||
| * Transient workspace context (e.g. file path of the workflow on disk in the | ||
| * VS Code extension webview). Exposed at runtime via `$workspace` and is | ||
| * never persisted to the .n8n file. | ||
| */ | ||
| workspace?: IDataObject; | ||
| } | ||
@@ -29,2 +35,6 @@ export declare class Workflow { | ||
| pinData?: IPinData; | ||
| /** | ||
| * Transient workspace context (never persisted) — exposed in expressions as `$workspace`. | ||
| */ | ||
| workspace?: IDataObject; | ||
| constructor(parameters: WorkflowParameters); | ||
@@ -31,0 +41,0 @@ setNodes(nodes: INode[]): void; |
@@ -32,2 +32,6 @@ /* eslint-disable @typescript-eslint/no-unsafe-member-access */ | ||
| pinData; | ||
| /** | ||
| * Transient workspace context (never persisted) — exposed in expressions as `$workspace`. | ||
| */ | ||
| workspace; | ||
| constructor(parameters) { | ||
@@ -37,2 +41,3 @@ this.id = parameters.id; // @tech_debt Ensure this is not optional | ||
| this.nodeTypes = parameters.nodeTypes; | ||
| this.workspace = parameters.workspace; | ||
| let nodeType; | ||
@@ -39,0 +44,0 @@ for (const node of parameters.nodes) { |
+5
-5
| { | ||
| "name": "@atom8n/n8n-workflow", | ||
| "version": "2.5.6", | ||
| "version": "2.5.7", | ||
| "description": "Workflow base code of n8n", | ||
@@ -41,5 +41,5 @@ "types": "dist/esm/index.d.ts", | ||
| "@langchain/core": "1.1.0", | ||
| "@n8n/config": "npm:@atom8n/config@2.4.6", | ||
| "@n8n/typescript-config": "npm:@atom8n/typescript-config@1.6.6", | ||
| "@n8n/vitest-config": "npm:@atom8n/vitest-config@1.8.6", | ||
| "@n8n/config": "npm:@atom8n/config@2.4.7", | ||
| "@n8n/typescript-config": "npm:@atom8n/typescript-config@1.6.7", | ||
| "@n8n/vitest-config": "npm:@atom8n/vitest-config@1.8.7", | ||
| "@types/express": "^5.0.1", | ||
@@ -55,3 +55,3 @@ "@types/jmespath": "^0.15.0", | ||
| "dependencies": { | ||
| "@n8n/errors": "npm:@atom8n/errors@0.8.6", | ||
| "@n8n/errors": "npm:@atom8n/errors@0.8.7", | ||
| "@n8n/tournament": "1.0.6", | ||
@@ -58,0 +58,0 @@ "ast-types": "0.16.1", |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
URL strings
Supply chain riskPackage contains fragments of external URLs or IP addresses, which the package may be accessing at runtime.
3451059
0.18%39608
0.38%+ Added
- Removed