Angular Modernizer
    Preparing search index...

    Rule-specific configuration overrides, keyed by rule ID.

    Each entry is a Partial of the rule's config interface so that only the fields that need overriding have to be specified.

    interface RulesConfig {
        "angular:component-wrapper-instantiation"?: Partial<
            InstantiationDetectionConfig,
        >;
        "angular:dto-direct-instantiation"?: Partial<InstantiationDetectionConfig>;
        "angular:magic-string-selector"?: Partial<MagicStringSelectorConfig>;
        "angular:presentational-component-violation"?: {
            actionTilePatterns?: string[];
            dialogDetection?: {
                baseClassNames?: string[];
                injectedClassNames?: string[];
            };
        };
        "architecture:content-placement"?: ContentPlacementConfig;
        "architecture:layer-boundary-violation"?: {
            suppressionComments?: string[];
        };
        "architecture:library-extraction-opportunity"?: {
            categoryOverrides?: Record<string, string>;
            excludePatterns?: string[];
            libraryPrefix?: string;
            libraryType?: "angular-library" | "folder-move";
            minCohesionScore?: number;
            minReusabilityScore?: number;
            outputFolder?: string;
            targetFolders?: string[];
        };
    }
    Index

    Properties

    "angular:component-wrapper-instantiation"?: Partial<
        InstantiationDetectionConfig,
    >

    Overrides for the angular:component-wrapper-instantiation rule.

    "angular:dto-direct-instantiation"?: Partial<InstantiationDetectionConfig>

    Overrides for the angular:dto-direct-instantiation rule.

    "angular:magic-string-selector"?: Partial<MagicStringSelectorConfig>

    Overrides for the angular:magic-string-selector rule.

    "angular:presentational-component-violation"?: {
        actionTilePatterns?: string[];
        dialogDetection?: {
            baseClassNames?: string[];
            injectedClassNames?: string[];
        };
    }

    Overrides for the angular:presentational-component-violation rule.

    Type Declaration

    • OptionalactionTilePatterns?: string[]

      Class name parts that mark an action tile component: its service-dependency violation is raised to error with action-tile guidance. Default: ['TileComponent', 'ActionTile', 'ActionTileComponent']

    • OptionaldialogDetection?: { baseClassNames?: string[]; injectedClassNames?: string[] }

      How a component is recognized as a dialog.

      • OptionalbaseClassNames?: string[]

        Base class names — components extending one of these are treated as dialogs. Default: []

      • OptionalinjectedClassNames?: string[]

        Class names (constructor-injected or inject()-based) that mark a component as a dialog and exclude it from presentational violation detection. Default: ['MatDialogRef']

    "architecture:content-placement"?: ContentPlacementConfig

    Configuration for the architecture:content-placement rule.

    "architecture:layer-boundary-violation"?: { suppressionComments?: string[] }

    Overrides for the architecture:layer-boundary-violation rule.

    Type Declaration

    • OptionalsuppressionComments?: string[]

      Comment markers that suppress a finding: an import is skipped when a comment on its line or on the line directly above starts with one of them (// arch-ignore: reason matches arch-ignore). No marker is built in. Default: []

    "architecture:library-extraction-opportunity"?: {
        categoryOverrides?: Record<string, string>;
        excludePatterns?: string[];
        libraryPrefix?: string;
        libraryType?: "angular-library" | "folder-move";
        minCohesionScore?: number;
        minReusabilityScore?: number;
        outputFolder?: string;
        targetFolders?: string[];
    }

    Overrides for the architecture:library-extraction-opportunity rule.

    Type Declaration

    • OptionalcategoryOverrides?: Record<string, string>

      Manual category overrides keyed by class name: ui, forms, layout, utils, data, core or feature. Example: { "ButtonComponent": "ui", "FormValidators": "forms" }

    • OptionalexcludePatterns?: string[]

      Patterns to exclude from scanning. Default: []

    • OptionallibraryPrefix?: string

      Import path prefix. Not read by the rule and not in the schema.

    • OptionallibraryType?: "angular-library" | "folder-move"

      Library type strategy. Not read by the rule and not in the schema.

    • OptionalminCohesionScore?: number

      Minimum cohesion score for a cluster to qualify as a library candidate. Range: 0.0-1.0. Default: 0.3

    • OptionalminReusabilityScore?: number

      Minimum reusability score (0-100) for an artifact to be included. Default: 20

    • OptionaloutputFolder?: string

      Output folder for generated libraries. Not read by the rule and not in the schema.

    • OptionaltargetFolders?: string[]

      Folders to scan for library candidates. Default: ['shared', 'common', 'core', 'libs']