mirror of
https://github.com/czlonkowski/n8n-mcp.git
synced 2026-03-21 01:43:08 +00:00
Add transferWorkflow diff operation to move workflows between n8n projects:
- TransferWorkflowOperation type with destinationProjectId field
- WorkflowDiffEngine validates and tracks transfer intent
- Handler calls PUT /workflows/{id}/transfer after update
- N8nApiClient.transferWorkflow() method
- Zod schema validates destinationProjectId is non-empty
- Tool description and documentation updated
- inferIntentFromOperations case for transfer
Also fixes two pre-existing bugs found during review:
- continueOnError path now properly extracts/propagates activation flags
- Debug log in updateConnectionReferences shows correct old name
Based on work by @djakielski in PR #645.
Conceived by Romuald Członkowski - https://www.aiadvisors.pl/en
52 lines
1.8 KiB
TypeScript
52 lines
1.8 KiB
TypeScript
import { WorkflowDiffRequest, WorkflowDiffResult } from '../types/workflow-diff';
|
|
import { Workflow } from '../types/n8n-api';
|
|
export declare class WorkflowDiffEngine {
|
|
private renameMap;
|
|
private warnings;
|
|
private modifiedNodeIds;
|
|
private removedNodeNames;
|
|
private tagsToAdd;
|
|
private tagsToRemove;
|
|
private transferToProjectId;
|
|
applyDiff(workflow: Workflow, request: WorkflowDiffRequest): Promise<WorkflowDiffResult>;
|
|
private validateOperation;
|
|
private applyOperation;
|
|
private validateAddNode;
|
|
private validateRemoveNode;
|
|
private validateUpdateNode;
|
|
private validateMoveNode;
|
|
private validateToggleNode;
|
|
private validateAddConnection;
|
|
private validateRemoveConnection;
|
|
private validateRewireConnection;
|
|
private applyAddNode;
|
|
private applyRemoveNode;
|
|
private applyUpdateNode;
|
|
private applyMoveNode;
|
|
private applyEnableNode;
|
|
private applyDisableNode;
|
|
private resolveSmartParameters;
|
|
private applyAddConnection;
|
|
private applyRemoveConnection;
|
|
private applyRewireConnection;
|
|
private applyUpdateSettings;
|
|
private applyUpdateName;
|
|
private applyAddTag;
|
|
private applyRemoveTag;
|
|
private validateActivateWorkflow;
|
|
private validateDeactivateWorkflow;
|
|
private applyActivateWorkflow;
|
|
private applyDeactivateWorkflow;
|
|
private validateTransferWorkflow;
|
|
private applyTransferWorkflow;
|
|
private validateCleanStaleConnections;
|
|
private validateReplaceConnections;
|
|
private applyCleanStaleConnections;
|
|
private applyReplaceConnections;
|
|
private updateConnectionReferences;
|
|
private normalizeNodeName;
|
|
private findNode;
|
|
private formatNodeNotFoundError;
|
|
private setNestedProperty;
|
|
}
|
|
//# sourceMappingURL=workflow-diff-engine.d.ts.map
|