Angular version string (e.g., '17.2.0').
Used to determine which Angular features are available (e.g., standalone components require >=14).
Whether project has complex constructor patterns.
Examples:
constructor(private importService: ImportService)super(importConfig, importHelper)providers: [importService]Detection: ProjectCompatibilityValidator samples 50 files for these patterns
Whether project uses custom decorators (non-standard Angular decorators).
Examples: @PageComponent, @RemoteFunction, @RequiresPermission
Detection: ProjectCompatibilityValidator scans for decorators not in Angular's standard set
Whether project uses TypeScript path aliases.
Examples: @shared/, @domain/, @features/, @core/ Detection: ProjectCompatibilityValidator checks tsconfig.json compilerOptions.paths
Absolute path to project root directory
Project context information for parser selection.
This interface captures key characteristics of the project that influence parser selection. The parser orchestrator uses this context to select the most appropriate parser strategy.
Detection Strategy:
ProjectCompatibilityValidatordetects these characteristicsKernel.projectContextduring initializationParserOrchestrator.selectParser()to choose parser strategyProject Characteristics:
@PageComponent,@RemoteFunction)Example: Standard Angular CLI project
Example: Project with external decorators