chore: add pre-built dist folder for npx usage

This commit is contained in:
thesved
2025-12-04 20:22:02 +02:00
committed by Romuald Członkowski
parent a70d96a373
commit 5057481e70
716 changed files with 48021 additions and 0 deletions

104
dist/services/workflow-validator.d.ts vendored Normal file
View File

@@ -0,0 +1,104 @@
import { NodeRepository } from '../database/node-repository';
import { EnhancedConfigValidator } from './enhanced-config-validator';
interface WorkflowNode {
id: string;
name: string;
type: string;
position: [number, number];
parameters: any;
credentials?: any;
disabled?: boolean;
notes?: string;
notesInFlow?: boolean;
typeVersion?: number;
continueOnFail?: boolean;
onError?: 'continueRegularOutput' | 'continueErrorOutput' | 'stopWorkflow';
retryOnFail?: boolean;
maxTries?: number;
waitBetweenTries?: number;
alwaysOutputData?: boolean;
executeOnce?: boolean;
}
interface WorkflowConnection {
[sourceNode: string]: {
main?: Array<Array<{
node: string;
type: string;
index: number;
}>>;
error?: Array<Array<{
node: string;
type: string;
index: number;
}>>;
ai_tool?: Array<Array<{
node: string;
type: string;
index: number;
}>>;
};
}
interface WorkflowJson {
name?: string;
nodes: WorkflowNode[];
connections: WorkflowConnection;
settings?: any;
staticData?: any;
pinData?: any;
meta?: any;
}
interface ValidationIssue {
type: 'error' | 'warning';
nodeId?: string;
nodeName?: string;
message: string;
details?: any;
}
export interface WorkflowValidationResult {
valid: boolean;
errors: ValidationIssue[];
warnings: ValidationIssue[];
statistics: {
totalNodes: number;
enabledNodes: number;
triggerNodes: number;
validConnections: number;
invalidConnections: number;
expressionsValidated: number;
};
suggestions: string[];
}
export declare class WorkflowValidator {
private nodeRepository;
private nodeValidator;
private currentWorkflow;
private similarityService;
constructor(nodeRepository: NodeRepository, nodeValidator: typeof EnhancedConfigValidator);
validateWorkflow(workflow: WorkflowJson, options?: {
validateNodes?: boolean;
validateConnections?: boolean;
validateExpressions?: boolean;
profile?: 'minimal' | 'runtime' | 'ai-friendly' | 'strict';
}): Promise<WorkflowValidationResult>;
private validateWorkflowStructure;
private validateAllNodes;
private validateConnections;
private validateConnectionOutputs;
private validateErrorOutputConfiguration;
private validateAIToolConnection;
private hasCycle;
private validateExpressions;
private countExpressionsInObject;
private nodeHasInput;
private checkWorkflowPatterns;
private getLongestLinearChain;
private generateSuggestions;
private checkNodeErrorHandling;
private checkWebhookErrorHandling;
private generateErrorHandlingSuggestions;
private validateSplitInBatchesConnection;
private checkForLoopBack;
private addErrorRecoverySuggestions;
}
export {};
//# sourceMappingURL=workflow-validator.d.ts.map