semantic-release-npm-workspaces-monorepo
Version:
Help you use semantic-release with npm workspaces
64 lines (63 loc) • 2.18 kB
TypeScript
import { PackageJSON } from '../types.js';
import { SETTINGS } from '../settings.js';
import { BranchObject } from 'semantic-release';
export default class UpdatePackages {
private _packages;
static _cacheCurrentBranch: string;
private _originalPackageContent;
private readonly _packageJSONPath;
readonly settings: typeof SETTINGS;
packageContent: PackageJSON;
constructor(packagePath: string, _packages: string[]);
private _updateVersions;
private _readPackageJson;
savePackageJson(content?: PackageJSON): Promise<void>;
restoreOriginalPackageJson(): Promise<void>;
updateDeps(): Promise<void>;
static getLatestVersion(packageName: string, settings?: {
preReleaseVersionTemplate: string;
registry: string;
workspaces: string[];
tagFormat: string;
release: {
extends: string;
ci: boolean;
branches: (string | BranchObject)[];
plugins: any[];
};
semanticReleaseBin: string;
semanticReleaseBinArgs: any[];
changelogCommit: boolean;
npmRelease: boolean;
extendsReleaseRules: any[];
extendsNoteGeneratorTypes: any[];
extendsDefaultPlugins: any[];
perPackageConfig: {};
autoCreatedPlugins: boolean;
}): Promise<{
version: string;
isPrerelease: boolean;
}>;
useVersionTemplate(templateVersion: string, toVersion: string, isPrerelease?: boolean): string;
static findBranchInfo(settings?: {
preReleaseVersionTemplate: string;
registry: string;
workspaces: string[];
tagFormat: string;
release: {
extends: string;
ci: boolean;
branches: (string | BranchObject)[];
plugins: any[];
};
semanticReleaseBin: string;
semanticReleaseBinArgs: any[];
changelogCommit: boolean;
npmRelease: boolean;
extendsReleaseRules: any[];
extendsNoteGeneratorTypes: any[];
extendsDefaultPlugins: any[];
perPackageConfig: {};
autoCreatedPlugins: boolean;
}): Promise<BranchObject | null>;
}