npm package diff

Package: @forge/cli

Versions: 11.3.1 - 11.4.0-next.1-experimental-01f8230

File: package/out/service/version-service.js

Index: package/out/service/version-service.js
===================================================================
--- package/out/service/version-service.js
+++ package/out/service/version-service.js
@@ -1,10 +1,16 @@
 "use strict";
 Object.defineProperty(exports, "__esModule", { value: true });
-exports.VersionService = void 0;
+exports.VersionService = exports.MissingVersionUpgradeParameters = void 0;
 const semver_1 = require("semver");
 const cli_shared_1 = require("@forge/cli-shared");
 const manifest_1 = require("@forge/manifest");
+class MissingVersionUpgradeParameters extends Error {
+    constructor() {
+        super(cli_shared_1.Text.version.upgrade.error.missingVersionUpgradeParameters);
+    }
+}
+exports.MissingVersionUpgradeParameters = MissingVersionUpgradeParameters;
 class VersionService {
     getAppConfig;
     versionDetailsClient;
     adapters = [this.addDefaultTypeToLegacyWebtriggerDetails];
@@ -173,8 +179,31 @@
             modules: entry.modules.map((module) => ({ type: module.type, count: module.items.length })),
             requiresLicense: entry.requiresLicense
         }));
     }
+    async getAppUpgradeVersionsList(environmentKey) {
+        const { id: appId } = await this.getAppConfig();
+        return await this.versionDetailsClient.getAppUpgradeVersionsList(appId, environmentKey);
+    }
+    async getUpgradableVersions(environmentKey, sourceVersionId) {
+        const { id: appId } = await this.getAppConfig();
+        return await this.versionDetailsClient.getAppUpgradableToList(appId, environmentKey, sourceVersionId);
+    }
+    async createAppVersionUpgradeRollout(environmentKey, sourceVersionId, targetVersionId) {
+        if (!sourceVersionId || !targetVersionId) {
+            throw new MissingVersionUpgradeParameters();
+        }
+        return await this.versionDetailsClient.createAppVersionUpgradeRollout(environmentKey, sourceVersionId, targetVersionId);
+    }
+    async createAppVersionUpgradeRolloutNonInteractively(environmentKey, sourceMajorVersion, targetMajorVersion) {
+        if (!sourceMajorVersion || !targetMajorVersion) {
+            throw new MissingVersionUpgradeParameters();
+        }
+        const { id: appId } = await this.getAppConfig();
+        const selectedSourceVersion = await this.versionDetailsClient.getAppVersionIdentity(appId, environmentKey, sourceMajorVersion);
+        const selectedTargetVersion = await this.versionDetailsClient.getAppVersionIdentity(appId, environmentKey, targetMajorVersion);
+        return await this.createAppVersionUpgradeRollout(environmentKey, selectedSourceVersion.id, selectedTargetVersion.id);
+    }
     applyPropertyAdapter(appDetails) {
         for (const adapter of this.adapters) {
             for (const [property, propertyDetails] of Object.entries(appDetails)) {
                 const [propertyKey, updatedPropertyDetails] = adapter([property, propertyDetails]);
@@ -202,4 +231,5 @@
         return params;
     }
 }
 exports.VersionService = VersionService;
+//# sourceMappingURL=version-service.js.map
\ No newline at end of file