UNPKG

@flxbl-io/sfp

Version:

sfp is a CLI tool to help you manage your Salesforce projects in an artifact centric model

32 lines (31 loc) 1 kB
import { Logger } from '@flxbl-io/sfp-logger'; export interface DependencyDetail { version: string; isDirect: boolean; contributors: string[]; } export interface DependencyResolutionDetails { resolvedDependencies: Map<string, { package: string; versionNumber?: string; }[]>; details: Map<string, { [dependencyName: string]: DependencyDetail; }>; } export default class TransitiveDependencyResolver { private sfdxProjectConfig; private logger?; constructor(sfdxProjectConfig: any, logger?: Logger); resolveTransitiveDependencies(): Promise<Map<string, { package: string; versionNumber?: string; }[]>>; resolveTransitiveDependenciesWithDetails(): Promise<DependencyResolutionDetails>; private compareVersions; private fillDepsWithUserDefinedExternalDependencyMap; private generateDependencyDetails; private fillDepsTransitively; private swapAndDropArrayElement; private topologicalSort; }