userpravah
Version:
UserPravah is an extensible, framework-agnostic tool for analyzing user flows and navigation patterns in web applications. It supports multiple frameworks (Angular, React) and output formats (DOT/Graphviz, JSON) with a plugin-based architecture for easy e
39 lines (38 loc) • 1.47 kB
TypeScript
import { Project } from 'ts-morph';
import { FrameworkAdapter } from '../../core/framework-adapter.interface.js';
import { AnalysisResult } from '../../core/types.js';
import { PatternCollector, PatternInfo } from '../../core/pattern-collector.interface.js';
export declare class AngularAdapter implements FrameworkAdapter {
project: Project;
readonly frameworkName: string;
private routes;
private flows;
private menus;
private angularProjectPath;
private processedRouteObjects;
private processedLazyLoads;
private patternCollector;
constructor(projectPath: string, patternCollector?: PatternCollector);
getDiscoveredPatterns(): Record<string, PatternInfo[]>;
private recordPattern;
private kebabToPascalCase;
private addSourceFiles;
analyzeProject(projectPath: string): Promise<AnalysisResult>;
private findMatchingRouteForPath;
private isWildcardOrRedirectTarget;
private cleanRoutePathForId;
private deriveDisplayNameFromPath;
private deriveDisplayNameFromComponent;
private getNodeCategory;
private analyzeRoutingModules;
private extractRoutes;
private processRouteArrayLiteral;
private addRouteToCollection;
private parseRouteArray;
private parseRouteObject;
private loadAndParseLazyModule;
private analyzeSourceFilesForNavigation;
private extractProgrammaticNavigation;
private parseNavigationCall;
private extractTemplateNavigation;
}