UNPKG

ng-upgrade-orchestrator

Version:

Enterprise-grade Angular Multi-Version Upgrade Orchestrator with automatic npm installation, comprehensive dependency management, and seamless integration of all 9 official Angular migrations. Safely migrate Angular applications across multiple major vers

105 lines 3.25 kB
import { ProgressReporter } from './ProgressReporter'; export interface MergeOptions { preserveUserCode: boolean; preserveComments: boolean; preferUserConfiguration: boolean; createBackups: boolean; mergeStrategy: 'conservative' | 'aggressive' | 'interactive'; conflictResolution: 'user' | 'migration' | 'merge' | 'ask'; } export interface MergeResult { success: boolean; conflicts: MergeConflict[]; warnings: string[]; merged: boolean; backupPath?: string; } export interface MergeConflict { file: string; type: 'configuration' | 'code' | 'template' | 'style'; section: string; userValue: any; migrationValue: any; resolution?: 'user' | 'migration' | 'merged'; mergedValue?: any; } /** * Intelligent merge engine that combines ts-deepmerge for configurations * and custom logic for TypeScript code merging */ export declare class IntelligentMergeEngine { private project; private progressReporter?; constructor(projectPath: string, progressReporter?: ProgressReporter); /** * Merge package.json configurations intelligently */ mergePackageJson(packageJsonPath: string, migrationUpdates: any, options?: MergeOptions): Promise<MergeResult>; /** * Merge angular.json configurations */ mergeAngularJson(angularJsonPath: string, migrationUpdates: any, options?: MergeOptions): Promise<MergeResult>; /** * Merge TypeScript configuration files (tsconfig.json) */ mergeTsConfig(tsConfigPath: string, migrationUpdates: any, options?: MergeOptions): Promise<MergeResult>; /** * Merge TypeScript source files with AST-based merging */ mergeTypeScriptFile(filePath: string, migrationChanges: any, options?: MergeOptions): Promise<MergeResult>; /** * Merge template files (.html) */ mergeTemplateFile(templatePath: string, migrationChanges: any, options?: MergeOptions): Promise<MergeResult>; /** * Custom dependency merging logic */ private mergeDependencies; /** * Merge npm scripts intelligently */ private mergeScripts; /** * Merge Angular projects configuration */ private mergeProjects; /** * Merge compiler options with special handling */ private mergeCompilerOptions; /** * Merge imports in TypeScript files */ private mergeImports; /** * Merge decorators on classes */ private mergeDecorators; /** * Merge class members (properties and methods) */ private mergeClassMembers; /** * Merge providers and dependency injection configurations */ private mergeProviders; /** * Merge control flow syntax in templates */ private mergeControlFlow; /** * Merge directive changes in templates */ private mergeDirectives; private createBackup; private isCriticalAngularDependency; private isCriticalScript; private isStrictOption; private parseDecoratorArgument; private mergeProviderArray; private convertToNewControlFlow; private hasCustomDirectiveUsage; private extractDirectiveUsage; private getDefaultOptions; } //# sourceMappingURL=IntelligentMergeEngine.d.ts.map