@forge/cli-shared

9.6.0-next.69.6.0-next.7
out/shared/developer-console.js
+out/shared/developer-console.jsNew file
+41
Index: package/out/shared/developer-console.js
===================================================================
--- package/out/shared/developer-console.js
+++ package/out/shared/developer-console.js
@@ -0,0 +1,41 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.getDevConsoleUrl = exports.getDevConsoleBaseUrl = void 0;
+const gateway_1 = require("../graphql/gateway");
+const ari_1 = require("@forge/util/packages/ari");
+const getDevConsoleBaseUrl = () => {
+    if (process.env.FORGE_DEV_CONSOLE_URL) {
+        return process.env.FORGE_DEV_CONSOLE_URL;
+    }
+    const environment = (0, gateway_1.getEnvironmentConfig)();
+    switch (environment) {
+        case gateway_1.Environments.STG:
+            return 'https://developer.stg.internal.atlassian.com';
+        case gateway_1.Environments.FEDRAMP_MODERATE_STAGING:
+            return 'https://developer.stg.atlassian-us-gov-mod.com';
+        case gateway_1.Environments.FEDRAMP_MODERATE_PROD:
+            return 'https://developer.atlassian-us-gov-mod.com';
+        default:
+            return 'https://developer.atlassian.com';
+    }
+};
+exports.getDevConsoleBaseUrl = getDevConsoleBaseUrl;
+const toAppUuid = (appId) => {
+    try {
+        const parsed = ari_1.EcosystemAppAri.parse(appId);
+        return parsed.appId;
+    }
+    catch {
+        return appId;
+    }
+};
+const DEV_CONSOLE_PATHS = {
+    appOverview: (appId) => `myapps/${toAppUuid(appId)}/overview`,
+    appDistribution: (appId) => `myapps/${toAppUuid(appId)}/manage/distribution`,
+    developerSpace: (spaceId) => `developer-space/${spaceId}`
+};
+const getDevConsoleUrl = (page, ...args) => {
+    const buildPath = DEV_CONSOLE_PATHS[page];
+    return `${(0, exports.getDevConsoleBaseUrl)()}/console/${buildPath(...args)}`;
+};
+exports.getDevConsoleUrl = getDevConsoleUrl;