UNPKG

@salesforce/packaging

Version:

Packaging library for the Salesforce packaging platform

84 lines (83 loc) 3.52 kB
import { Connection } from '@salesforce/core'; import { AsyncCreatable } from '@salesforce/kit'; import { PackageVersionDependencyOptions, DependencyGraphNode } from '../interfaces'; import { VersionNumber } from './versionNumber'; export declare const VERSION_BEING_BUILT = "VERSION_BEING_BUILT"; export declare class PackageVersionDependency extends AsyncCreatable<PackageVersionDependencyOptions> { options: PackageVersionDependencyOptions; private connection; private project?; private userPackageVersionId; private verbose; private edgeDirection; private resolvedPackageVersionId; constructor(options: PackageVersionDependencyOptions); init(): Promise<void>; /** * Returns a DependencyDotProducer that can be used to produce a DOT code representation of the package dependency graph. */ getDependencyDotProducer(): Promise<DependencyDotProducer>; /** * Resolves id input to a 08c. User can input a 08c or 04t. * Currently a 04t is not supported in filtering the Package2VersionCreateRequest. So a user's input of 04t will be resolved to a 05i and then a 08c. */ private resolvePackageCreateRequestId; private query05iFrom04t; private query08cFrom05i; /** * Checks that the given Package2VersionCreateRequest ID (08c) contains a valid DependencyGraphJson to generate DOT code */ private validatePackageVersion; private verifyCreateRequesIdExistsOnDevHub; private verifyTransitiveDependenciesCalculated; } export declare class DependencyDotProducer { private dependencyGraphString; private verbose; private edgeDirection; private resolvedPackageVersionId; private subscriberPackageVersionId; private connection; private dependencyGraphData; private selectedNodeIds; constructor(connection: Connection, dependencyGraphString: string, verbose: boolean, edgeDirection: 'root-first' | 'root-last', resolvedPackageVersionId: string); private static throwErrorOnInvalidRecord; init(): Promise<void>; produce(): string; private addSelectedNodeIds; private createDependencyGraphNodes; /** * Creates a single dependency graph node. * All nodes in the json are 04t... or VERSION_BEING_BUILT and requires different queries to create the node */ private createSingleDependencyGraphNode; private createVersionBeingBuiltNode; private createNormalDependencyNode; private createDependencyGraphEdges; /** * Builds a DOT node with a label containing the package name and version * * @param node the node id and label */ private buildDotNode; private addColorToSelectedNode; /** * Builds a DOT edge line of the form fromNode -> toNode * * @param edge the edge to build where the target node depends on the source node in the json */ private buildDotEdge; } /** * A class that represents a package dependency node. * Given a PackageRequestId (08c), PackageName, SubscriberPackageVersionId (04t), and version (MajorVersion.MinorVersion.PatchVersion.BuildNumber) it will build a node of the package dependency. */ export declare class PackageDependencyNode extends AsyncCreatable<DependencyGraphNode> { options: DependencyGraphNode; readonly packageName: string; readonly subscriberPackageVersionId: string; readonly version: VersionNumber; constructor(options: DependencyGraphNode); getVersion(): string; protected init(): Promise<void>; }