UNPKG

nx

Version:

The core Nx plugin contains the core functionality of Nx like the project graph, nx commands and task orchestration.

41 lines 2.41 kB
import { GroupVersionPlan, ProjectsVersionPlan } from '../config/version-plans'; import { ReleaseGroupWithName } from '../config/filter-release-groups'; /** * Validates that all projects in resolved version plans are included in the filtered projects. * This validation ensures that version plans don't contain projects that aren't being released. * * @param releaseGroups - The release groups to validate * @param releaseGroupToFilteredProjects - Map of release groups to their filtered projects * @returns An error object if validation fails, null otherwise */ export declare function validateResolvedVersionPlansAgainstFilter(releaseGroups: ReleaseGroupWithName[], releaseGroupToFilteredProjects: Map<ReleaseGroupWithName, Set<string>>): { title: string; bodyLines?: string[]; } | null; /** * Extracts the set of projects that a version plan affects. * * @param plan - The version plan to analyze * @param releaseGroup - The release group containing the version plan * @returns Set of project names that the version plan affects */ export declare function getProjectsAffectedByVersionPlan(plan: GroupVersionPlan | ProjectsVersionPlan, releaseGroup: ReleaseGroupWithName): Set<string>; /** * Checks if all projects affected by a version plan are included in the filtered projects set. * * @param plan - The version plan to check * @param releaseGroup - The release group containing the version plan * @param filteredProjects - Set of projects that are being released (filtered) * @returns True if ALL projects in the version plan are being filtered/released */ export declare function areAllVersionPlanProjectsFiltered(plan: GroupVersionPlan | ProjectsVersionPlan, releaseGroup: ReleaseGroupWithName, filteredProjects: Set<string> | undefined): boolean; /** * Finds projects in a version plan that are NOT included in the filtered projects set. * * @param plan - The version plan to check * @param releaseGroup - The release group containing the version plan * @param filteredProjects - Set of projects that are being released (filtered) * @returns Array of project names that are in the version plan but not in the filter */ export declare function getVersionPlanProjectsOutsideFilter(plan: GroupVersionPlan | ProjectsVersionPlan, releaseGroup: ReleaseGroupWithName, filteredProjects: Set<string> | undefined): string[]; //# sourceMappingURL=version-plan-utils.d.ts.map