@jnxplus/nx-maven
Version:
[](https://badge.fury.io/js/@jnxplus%2Fnx-maven)
47 lines (46 loc) • 2.26 kB
TypeScript
import { NxMavenPluginOptions } from '@jnxplus/common';
import { InputDefinition } from 'nx/src/config/workspace-json-project-json';
interface PropertyType {
key: string;
value: string;
}
export interface MavenProjectType {
artifactId: string;
groupId: string;
version: string;
isRootProject: boolean;
isPomPackaging: boolean;
projectRoot: string;
projectAbsolutePath: string;
dependencies: (string | undefined)[];
profileDependencies: (string | undefined)[];
pluginDependencies: (string | undefined)[];
parentProjectArtifactId?: string;
aggregatorProjectArtifactId?: string;
properties: PropertyType[];
skipProject: boolean;
}
export interface WorkspaceDataType {
mavenRootDirAbsolutePath: string;
targetDefaults: string[];
localRepo: string;
projects: Record<string, MavenProjectType>;
}
export declare function getWorkspaceData(opts?: NxMavenPluginOptions): Promise<WorkspaceDataType>;
export declare function getNormalizedOptions(opts: NxMavenPluginOptions | undefined): NxMavenPluginOptions;
/**
* Generate an hash filename matching all pom.xml content
* If one pom.xml change, hash is invalidated
*
* @param normalizedOptions
*/
export declare function getCachePath(normalizedOptions: object): Promise<string>;
export declare function readWorkspaceDataCache(cachePath: string): WorkspaceDataType | null;
export declare function writeWorkspaceDataToCache(cachePath: string, results: WorkspaceDataType): void;
export declare function addProjects(data: WorkspaceDataType, normalizedOpts: NxMavenPluginOptions, projectRelativePath: string, aggregatorProjectArtifactId?: string): void;
export declare function getEffectiveVersion(project: MavenProjectType, workspaceData: WorkspaceDataType): string;
export declare function validateTargetInputs(targetName: string, file: 'nx.json' | 'project.json', inputs: (string | InputDefinition)[] | undefined): void;
export declare function getOutputDirLocalRepo(localRepositoryPath: string, groupId: string, artifactId: string, projectVersion: string): string;
export declare function getTask(isRootProject: boolean): "install -N" | "install";
export declare function ifOutputDirLocalRepoNotPresent(options: any): boolean;
export {};