@pega/custom-dx-components
Version:
Utility for building custom UI components
78 lines (56 loc) • 1.81 kB
JavaScript
import inquirer from 'inquirer';
import chalk from 'chalk';
import {
showVersion,
getLibraryBased,
checkLibraryAndArchives,
getConfigDefaults,
addDebugLog,
cleanUpTemp,
getUseInputConfig,
getInputConfigForCommand,
convertYNToBoolean
} from '../../util.js';
import { deleteLibraryVersion } from '../delete-lib/index.js';
export default async (options) => {
const isLibraryBased = getLibraryBased();
const useInputConfig = getUseInputConfig();
if (!isLibraryBased) {
console.log(`Command only supported for ${chalk.bold.green('library mode')} components.`)
process.exit();
}
await showVersion();
await checkLibraryAndArchives();
await cleanUpTemp();
addDebugLog("deleteVersion", "", "+");
let version = "";
let okToDelete;
const configDef = getConfigDefaults();
let libraryName = configDef.currentOrgLib;
if (useInputConfig) {
const inputConfig = await getInputConfigForCommand("deleteLibVersion");
version = inputConfig.libraryVersion;
const isPermanent = inputConfig.isPermanent;
const permBuild = convertYNToBoolean(isPermanent);
if (!permBuild && version != "ALL") {
version = version.concat("-dev");
}
okToDelete = convertYNToBoolean(inputConfig.confirmDelete);
}
else {
if (options.params.length >= 5) {
libraryName = options.params[3]
version = options.params[4];
if (options.params.length >=6 ) {
const okToDel = options.params[5];
okToDelete = !!(okToDel === 'Y' || okToDel === 'y' || okToDel === true || okToDel === 'true');
}
}
else if (options.params.length >= 4) {
libraryName = options.params[3];
}
}
await deleteLibraryVersion(libraryName, version, okToDelete);
addDebugLog("deleteVersion", "END", "-");
return true;
};