npm package diff
Package: @forge/cli
Versions: 11.4.0-next.1-experimental-5364136 - 11.4.0-next.14
File: package/out/command-line/view/version-view.js
Index: package/out/command-line/view/version-view.js
===================================================================
--- package/out/command-line/view/version-view.js
+++ package/out/command-line/view/version-view.js
@@ -129,8 +129,20 @@
exports.getDetailsTable = getDetailsTable;
const getPropertySummary = (property) => {
return property.map((item) => `${item.type}: ${item.count}`).join('\n');
};
+const getRolloutStatus = (status) => {
+ switch (status) {
+ case 'COMPLETE':
+ return 'Completed';
+ case 'RUNNING':
+ return 'In progress';
+ case 'CANCELLED':
+ return 'Cancelled';
+ default:
+ return 'Unknown';
+ }
+};
class VersionView {
ui;
constructor(ui) {
this.ui = ui;
@@ -143,23 +155,39 @@
}
async displayListProgress(progress) {
return this.ui.displayProgress(progress, cli_shared_1.Text.version.list.start, cli_shared_1.Text.version.list.end);
}
+ async displayBulkUpgradeListProgress(progress) {
+ return this.ui.displayProgress(progress, cli_shared_1.Text.version.upgrade.list.start, cli_shared_1.Text.version.upgrade.list.end);
+ }
async displaySingleSelectVersion(columns, versions, versionTablePrompt, versionTableOverview) {
return await this.ui.promptForSingleChoiceTable(versionTablePrompt, versionTableOverview ?? '', columns, versions);
}
displayInfo(message) {
this.ui.info(message);
}
displayAppVersionRolloutCreationSuccess(appRolloutVersionId) {
this.ui.emptyLine();
- this.ui.info(cli_shared_1.Text.version.upgrade.appVersionRolloutSuccess(appRolloutVersionId));
+ this.ui.info(cli_shared_1.Text.version.upgrade.start.appVersionRolloutSuccess(appRolloutVersionId));
}
+ displayAppVersionRolloutCancelCreationSuccess(appRolloutId) {
+ this.ui.emptyLine();
+ this.ui.info(cli_shared_1.Text.version.upgrade.cancel.appVersionRolloutCancelSuccess(appRolloutId));
+ }
+ displayAppVersionRolloutCancelNotInProgress(environmentKey) {
+ this.ui.emptyLine();
+ this.ui.error(new Error(cli_shared_1.Text.version.upgrade.cancel.error.noUpdateInProgress(environmentKey)));
+ }
async confirmAppVersionRolloutCreation(sourceVersionId, targetVersionId, installations) {
this.ui.emptyLine();
- this.ui.warn(cli_shared_1.Text.version.upgrade.warningMessage(sourceVersionId, targetVersionId, installations));
- return this.ui.confirm(cli_shared_1.Text.version.upgrade.promptConfirmation);
+ this.ui.warn(cli_shared_1.Text.version.upgrade.start.warningMessage(sourceVersionId, targetVersionId, installations));
+ return this.ui.confirm(cli_shared_1.Text.version.upgrade.start.promptConfirmation);
}
+ async confirmAppVersionRolloutCancel(appRolloutId, sourceVersionId, targetVersionId, installationComplete, totalInstallations) {
+ this.ui.emptyLine();
+ this.ui.warn(cli_shared_1.Text.version.upgrade.cancel.warningMessage(appRolloutId, sourceVersionId, targetVersionId, installationComplete, totalInstallations));
+ return this.ui.confirm(cli_shared_1.Text.version.upgrade.cancel.promptConfirmation);
+ }
async promptVersionDetailsProperties() {
const { options, properties: { descriptions, banner, info, headers } } = cli_shared_1.Text.version.check.details.prompt;
const propsOptions = [
{
@@ -260,11 +288,39 @@
this.ui.emptyLine();
this.ui.info(cli_shared_1.Text.version.list.details.banner(envKey, envType, versions));
this.ui.emptyLine();
}
+ displayBulkUpgradeListBanner(versions, envKey, envType) {
+ this.ui.emptyLine();
+ this.ui.info(cli_shared_1.Text.version.upgrade.list.details.banner(envKey, envType, versions));
+ this.ui.emptyLine();
+ }
displayWriteToFile(outFile) {
this.ui.info(cli_shared_1.Text.version.check.details.writeToFile(outFile));
}
+ displayBulkUpgradeList(data) {
+ this.ui.table([
+ ['id', 'Upgrade ID'],
+ ['status', 'Status'],
+ ['createdAt', 'Started'],
+ ['completedAt', 'Completed'],
+ ['sourceVersionId', 'From version'],
+ ['targetVersionId', 'To version'],
+ ['completedCount', 'Completed'],
+ ['pendingCount', 'Pending'],
+ ['failedCount', 'Failed']
+ ], data.map(({ id, status, createdAt, completedAt, sourceVersionId, targetVersionId, completedUpgradeCount, pendingUpgradeCount, failedUpgradeCount }) => ({
+ id,
+ status: getRolloutStatus(status),
+ createdAt: createdAt,
+ completedAt: completedAt,
+ sourceVersionId,
+ targetVersionId,
+ completedCount: completedUpgradeCount.toString(),
+ pendingCount: pendingUpgradeCount.toString(),
+ failedCount: failedUpgradeCount.toString()
+ })));
+ }
displayVersionList(data) {
this.ui.table([
['version', 'Major Versions'],
['deploymentDate', 'Deployment Date'],