@forge/cli 6.10.0 → 6.11.0-next.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +151 -0
- package/npm-shrinkwrap.json +114 -111
- package/out/command-line/controller/deploy-controller.d.ts.map +1 -1
- package/out/command-line/controller/deploy-controller.js +1 -0
- package/out/command-line/controller/prerequisites-controller.d.ts +2 -2
- package/out/command-line/controller/prerequisites-controller.d.ts.map +1 -1
- package/out/command-line/controller/prerequisites-controller.js +12 -7
- package/out/command-line/controller/settings-controller.d.ts +12 -11
- package/out/command-line/controller/settings-controller.d.ts.map +1 -1
- package/out/command-line/controller/settings-controller.js +80 -24
- package/out/command-line/dependency-injection.d.ts.map +1 -1
- package/out/command-line/dependency-injection.js +3 -3
- package/out/command-line/environment.d.ts +1 -0
- package/out/command-line/environment.d.ts.map +1 -1
- package/out/command-line/environment.js +8 -1
- package/out/command-line/index.d.ts +1 -1
- package/out/command-line/index.d.ts.map +1 -1
- package/out/command-line/index.js +8 -6
- package/out/command-line/register-app-commands.d.ts +2 -2
- package/out/command-line/register-app-commands.d.ts.map +1 -1
- package/out/command-line/register-app-commands.js +16 -6
- package/out/command-line/register-settings-commands.d.ts +1 -1
- package/out/command-line/register-settings-commands.d.ts.map +1 -1
- package/out/command-line/register-settings-commands.js +8 -8
- package/out/command-line/view/deploy-view.d.ts +1 -0
- package/out/command-line/view/deploy-view.d.ts.map +1 -1
- package/out/command-line/view/deploy-view.js +3 -0
- package/out/command-line/view/settings-view.d.ts +1 -1
- package/out/command-line/view/settings-view.d.ts.map +1 -1
- package/out/service/cached-config-service.d.ts +3 -0
- package/out/service/cached-config-service.d.ts.map +1 -1
- package/out/service/cached-config-service.js +13 -0
- package/out/service/tunnel-service.d.ts.map +1 -1
- package/out/service/tunnel-service.js +3 -1
- package/package.json +7 -7
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
import { CachedConfigService } from '../../service/cached-config-service';
|
|
2
2
|
import { SettingsView } from '../view/settings-view';
|
|
3
|
-
|
|
4
|
-
declare type AllowedSettingType = typeof ALLOWED_SETTINGS[number];
|
|
5
|
-
declare type SettingGetter = () => boolean | undefined;
|
|
6
|
-
declare type SettingSetter = (val: boolean) => void;
|
|
3
|
+
import { AppConfigProvider, FeatureFlagService } from '@forge/cli-shared';
|
|
7
4
|
export declare class SettingsController {
|
|
8
5
|
private readonly settingsView;
|
|
9
6
|
private readonly cachedConfigService;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
7
|
+
private readonly getAppConfig;
|
|
8
|
+
private readonly featureFlagService;
|
|
9
|
+
constructor(settingsView: SettingsView, cachedConfigService: CachedConfigService, getAppConfig: AppConfigProvider, featureFlagService: FeatureFlagService);
|
|
10
|
+
private SETTINGS_MAP;
|
|
11
|
+
private getAppId;
|
|
12
|
+
private validateAppManifest;
|
|
15
13
|
private parseBoolean;
|
|
16
|
-
|
|
14
|
+
private isAllowedSetting;
|
|
15
|
+
private getSetting;
|
|
16
|
+
getPublicSettings(): Promise<string[]>;
|
|
17
|
+
showSettings(json?: boolean): Promise<void>;
|
|
18
|
+
setSetting(preference: string, value: string): Promise<void>;
|
|
17
19
|
}
|
|
18
|
-
export {};
|
|
19
20
|
//# sourceMappingURL=settings-controller.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/settings-controller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"settings-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/settings-controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EACL,iBAAiB,EAEjB,kBAAkB,EAInB,MAAM,mBAAmB,CAAC;AAiB3B,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;gBAHlB,YAAY,EAAE,YAAY,EAC1B,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,iBAAiB,EAC/B,kBAAkB,EAAE,kBAAkB;IAGzD,OAAO,CAAC,YAAY,CA6BlB;YAEY,QAAQ;YAKR,mBAAmB;IAKjC,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,gBAAgB;YAIV,UAAU;IAWX,iBAAiB;IAWjB,YAAY,CAAC,IAAI,CAAC,EAAE,OAAO;IAY3B,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAY1D"}
|
|
@@ -1,29 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SettingsController =
|
|
3
|
+
exports.SettingsController = void 0;
|
|
4
4
|
const cli_shared_1 = require("@forge/cli-shared");
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
|
|
8
|
-
};
|
|
5
|
+
const manifest_1 = require("@forge/manifest");
|
|
6
|
+
const environment_1 = require("../environment");
|
|
7
|
+
const ALLOWED_SETTINGS = ['usage-analytics', 'default-environment'];
|
|
9
8
|
class SettingsController {
|
|
10
|
-
constructor(settingsView, cachedConfigService) {
|
|
9
|
+
constructor(settingsView, cachedConfigService, getAppConfig, featureFlagService) {
|
|
11
10
|
this.settingsView = settingsView;
|
|
12
11
|
this.cachedConfigService = cachedConfigService;
|
|
12
|
+
this.getAppConfig = getAppConfig;
|
|
13
|
+
this.featureFlagService = featureFlagService;
|
|
13
14
|
this.SETTINGS_MAP = {
|
|
14
|
-
'usage-analytics':
|
|
15
|
-
cli_shared_1.Text.settings.usageAnalytics.description,
|
|
16
|
-
() => this.cachedConfigService.getAnalyticsPreferences(),
|
|
17
|
-
(value) =>
|
|
18
|
-
|
|
15
|
+
'usage-analytics': {
|
|
16
|
+
description: cli_shared_1.Text.settings.usageAnalytics.description,
|
|
17
|
+
get: () => this.cachedConfigService.getAnalyticsPreferences(),
|
|
18
|
+
set: (value) => {
|
|
19
|
+
const parsedValue = this.parseBoolean(value);
|
|
20
|
+
this.cachedConfigService.setAnalyticsPreferences(parsedValue);
|
|
21
|
+
},
|
|
22
|
+
display: (value) => value,
|
|
23
|
+
isAvailable: () => true
|
|
24
|
+
},
|
|
25
|
+
'default-environment': {
|
|
26
|
+
description: cli_shared_1.Text.settings.defaultEnvironment.description,
|
|
27
|
+
get: async () => {
|
|
28
|
+
const appId = await this.getAppId();
|
|
29
|
+
const environment = this.cachedConfigService.getDefaultEnvironment(appId);
|
|
30
|
+
return environment ? (0, cli_shared_1.environmentToOption)(environment) : environment;
|
|
31
|
+
},
|
|
32
|
+
set: async (value) => {
|
|
33
|
+
(0, environment_1.validateDevEnvironment)(value);
|
|
34
|
+
const environment = (0, environment_1.checkEnvironmentOption)(value);
|
|
35
|
+
const appId = await this.getAppId();
|
|
36
|
+
this.cachedConfigService.setDefaultEnvironment(appId, environment);
|
|
37
|
+
},
|
|
38
|
+
display: (value) => cli_shared_1.Text.env.displayEnvironment(value, cli_shared_1.AppEnvironmentType.Development, cli_shared_1.environmentToOption),
|
|
39
|
+
isAvailable: async () => (await this.validateAppManifest()).success && (await this.featureFlagService.isConcurrentDevEnabled())
|
|
40
|
+
}
|
|
19
41
|
};
|
|
20
42
|
}
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
43
|
+
async getAppId() {
|
|
44
|
+
const { id } = await this.getAppConfig();
|
|
45
|
+
return id;
|
|
46
|
+
}
|
|
47
|
+
async validateAppManifest() {
|
|
48
|
+
const fileValidator = new manifest_1.FileValidator();
|
|
49
|
+
return fileValidator.validate(manifest_1.MANIFEST_FILE);
|
|
27
50
|
}
|
|
28
51
|
parseBoolean(value) {
|
|
29
52
|
switch (value) {
|
|
@@ -35,14 +58,47 @@ class SettingsController {
|
|
|
35
58
|
throw new cli_shared_1.ValidationError(cli_shared_1.Text.settings.set.invalidValue);
|
|
36
59
|
}
|
|
37
60
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
61
|
+
isAllowedSetting(preference) {
|
|
62
|
+
return ALLOWED_SETTINGS.includes(preference);
|
|
63
|
+
}
|
|
64
|
+
async getSetting(preference) {
|
|
65
|
+
if (!this.isAllowedSetting(preference)) {
|
|
66
|
+
return null;
|
|
67
|
+
}
|
|
68
|
+
const publicSettings = await this.getPublicSettings();
|
|
69
|
+
if (publicSettings.includes(preference)) {
|
|
70
|
+
return this.SETTINGS_MAP[preference];
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
async getPublicSettings() {
|
|
75
|
+
const settings = [];
|
|
76
|
+
for (const setting of ALLOWED_SETTINGS) {
|
|
77
|
+
if (await this.SETTINGS_MAP[setting].isAvailable()) {
|
|
78
|
+
settings.push(setting);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return settings;
|
|
82
|
+
}
|
|
83
|
+
async showSettings(json) {
|
|
84
|
+
const settings = [];
|
|
85
|
+
for (const settingName of ALLOWED_SETTINGS) {
|
|
86
|
+
const setting = await this.getSetting(settingName);
|
|
87
|
+
if (setting !== null) {
|
|
88
|
+
settings.push([settingName, setting.description, await setting.get()]);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
this.settingsView.showSettings(settings, json);
|
|
92
|
+
}
|
|
93
|
+
async setSetting(preference, value) {
|
|
94
|
+
const setting = await this.getSetting(preference);
|
|
95
|
+
if (setting === null) {
|
|
96
|
+
const publicSettings = await this.getPublicSettings();
|
|
97
|
+
throw new cli_shared_1.ValidationError(cli_shared_1.Text.settings.set.invalidSetting(publicSettings));
|
|
41
98
|
}
|
|
42
|
-
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
this.settingsView.setSuccess(preference, value);
|
|
99
|
+
await setting.set(value);
|
|
100
|
+
const displayValue = setting.display(value);
|
|
101
|
+
this.settingsView.setSuccess(preference, displayValue);
|
|
46
102
|
}
|
|
47
103
|
}
|
|
48
104
|
exports.SettingsController = SettingsController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-injection.d.ts","sourceRoot":"","sources":["../../src/command-line/dependency-injection.ts"],"names":[],"mappings":"AAIA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAUlB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EAEnB,MAAM,mBAAmB,CAAC;AAc3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAML,0BAA0B,EAG3B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AAExG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAC;AAIlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAGhF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAQtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAIzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAWlE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,eAAO,MAAM,eAAe,eAAsB,UAAU,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"dependency-injection.d.ts","sourceRoot":"","sources":["../../src/command-line/dependency-injection.ts"],"names":[],"mappings":"AAIA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAUlB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EAEnB,MAAM,mBAAmB,CAAC;AAc3B,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,OAAO,EAML,0BAA0B,EAG3B,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AAExG,OAAO,EAAE,+BAA+B,EAAE,MAAM,qDAAqD,CAAC;AACtG,OAAO,EAAE,6BAA6B,EAAE,MAAM,mDAAmD,CAAC;AAIlG,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAG3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAGhF,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAIrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAQtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAIzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAE5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAWlE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AAEtE,eAAO,MAAM,eAAe,eAAsB,UAAU,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4TvE,CAAC;AAGF,aAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;AAC3D,oBAAY,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,CAAC"}
|
|
@@ -82,17 +82,17 @@ const getDependencies = async (cliDetails) => {
|
|
|
82
82
|
const appConfigReader = (0, cli_shared_1.configFileReaderForSection)(cli_shared_1.appConfigKey, cli_shared_1.appConfigShape, configFile);
|
|
83
83
|
const assertiveAppConfigReader = (0, cli_shared_1.assertiveAppConfigProvider)(appConfigReader);
|
|
84
84
|
const appConfigWriter = (0, cli_shared_1.configFileWriterForSection)(cli_shared_1.appConfigKey, cli_shared_1.appConfigShape, configFile);
|
|
85
|
+
const credentialStore = (0, cli_shared_1.getCredentialStore)(ui);
|
|
86
|
+
const featureFlagService = new cli_shared_1.FeatureFlagService(ui, cliDetails, credentialStore, appConfigReader);
|
|
85
87
|
const settingsView = new settings_view_1.SettingsView(ui);
|
|
86
|
-
const settingsController = new settings_controller_1.SettingsController(settingsView, cachedConfigService);
|
|
88
|
+
const settingsController = new settings_controller_1.SettingsController(settingsView, cachedConfigService, assertiveAppConfigReader, featureFlagService);
|
|
87
89
|
const liteLintView = new lite_lint_view_1.LiteLintView(ui);
|
|
88
90
|
const liteLintService = new lite_lint_service_1.LiteLintService();
|
|
89
91
|
const analyticsSettingsView = new analytics_settings_view_1.AnalyticsSettingsView(ui);
|
|
90
92
|
const preCommandController = new pre_command_controller_1.PreCommandController(liteLintService, liteLintView, configFile, cachedConfigService, analyticsSettingsView, settingsView);
|
|
91
93
|
const graphqlGateway = (0, cli_shared_1.getGraphqlGateway)();
|
|
92
|
-
const credentialStore = (0, cli_shared_1.getCredentialStore)(ui);
|
|
93
94
|
const authenticator = new cli_shared_1.PersonalTokenAuthenticator(credentialStore);
|
|
94
95
|
cmd = command_1.Command.program(ui, analyticsClientReporter, preCommandController, cliDetails, credentialStore);
|
|
95
|
-
const featureFlagService = new cli_shared_1.FeatureFlagService(ui, cliDetails, credentialStore, appConfigReader);
|
|
96
96
|
await (0, sentry_1.initialiseSentry)(cachedConfigService);
|
|
97
97
|
const createGraphQLClient = (auth) => {
|
|
98
98
|
const minimalGraphQLRunner = new cli_shared_1.MinimalGraphQLRunner(auth, graphqlGateway, cliDetails);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export declare const validateEnvironmentOption: (userValue: string) => string;
|
|
2
|
+
export declare const validateDevEnvironment: (userValue: string) => string;
|
|
2
3
|
export declare const checkEnvironmentOption: (userValue: string) => string;
|
|
3
4
|
//# sourceMappingURL=environment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/command-line/environment.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/command-line/environment.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,yBAAyB,cAAe,MAAM,KAAG,MAK7D,CAAC;AAEF,eAAO,MAAM,sBAAsB,cAAe,MAAM,KAAG,MAK1D,CAAC;AAEF,eAAO,MAAM,sBAAsB,cAAe,MAAM,KAAG,MAE1D,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.checkEnvironmentOption = exports.validateEnvironmentOption = void 0;
|
|
3
|
+
exports.checkEnvironmentOption = exports.validateDevEnvironment = exports.validateEnvironmentOption = void 0;
|
|
4
4
|
const cli_shared_1 = require("@forge/cli-shared");
|
|
5
5
|
const ENVIRONMENT_KEY_PATTERN = /^[a-zA-Z0-9-_]+$/;
|
|
6
6
|
const validateEnvironmentOption = (userValue) => {
|
|
@@ -10,6 +10,13 @@ const validateEnvironmentOption = (userValue) => {
|
|
|
10
10
|
return userValue;
|
|
11
11
|
};
|
|
12
12
|
exports.validateEnvironmentOption = validateEnvironmentOption;
|
|
13
|
+
const validateDevEnvironment = (userValue) => {
|
|
14
|
+
if ([cli_shared_1.STAGING_ENVIRONMENT_KEY, cli_shared_1.PRODUCTION_ENVIRONMENT_KEY].includes(userValue)) {
|
|
15
|
+
throw new cli_shared_1.ValidationError(cli_shared_1.Text.env.developmentOnly(userValue, cli_shared_1.environmentToOption));
|
|
16
|
+
}
|
|
17
|
+
return userValue;
|
|
18
|
+
};
|
|
19
|
+
exports.validateDevEnvironment = validateDevEnvironment;
|
|
13
20
|
const checkEnvironmentOption = (userValue) => {
|
|
14
21
|
return (0, cli_shared_1.optionToEnvironment)((0, exports.validateEnvironmentOption)(userValue));
|
|
15
22
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { Dependencies } from './dependency-injection';
|
|
2
|
-
export declare function registerCommands(deps: Dependencies): void
|
|
2
|
+
export declare function registerCommands(deps: Dependencies): Promise<void>;
|
|
3
3
|
export declare const main: () => Promise<void>;
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/command-line/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAoBvE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/command-line/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAoBvE,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,YAAY,iBAexD;AAQD,eAAO,MAAM,IAAI,QAAa,QAAQ,IAAI,CAmBzC,CAAC"}
|
|
@@ -20,7 +20,7 @@ const register_providers_commands_1 = require("./register-providers-commands");
|
|
|
20
20
|
const register_contributors_commands_1 = require("./register-contributors-commands");
|
|
21
21
|
const register_environment_commands_1 = require("./register-environment-commands");
|
|
22
22
|
const register_storage_commands_1 = require("./register-storage-commands");
|
|
23
|
-
function registerCommands(deps) {
|
|
23
|
+
async function registerCommands(deps) {
|
|
24
24
|
(0, register_autocomplete_commands_1.registerCommands)(deps);
|
|
25
25
|
(0, register_authentication_command_1.registerCommands)(deps);
|
|
26
26
|
(0, register_app_commands_1.registerCommands)(deps);
|
|
@@ -32,7 +32,7 @@ function registerCommands(deps) {
|
|
|
32
32
|
(0, register_tunnel_commands_1.registerCommands)(deps);
|
|
33
33
|
(0, register_webtrigger_commands_1.registerCommands)(deps);
|
|
34
34
|
(0, register_feedback_commands_1.registerCommands)(deps);
|
|
35
|
-
(0, register_settings_commands_1.registerCommands)(deps);
|
|
35
|
+
await (0, register_settings_commands_1.registerCommands)(deps);
|
|
36
36
|
(0, register_providers_commands_1.registerCommands)(deps);
|
|
37
37
|
(0, register_storage_commands_1.registerCommands)(deps);
|
|
38
38
|
}
|
|
@@ -45,13 +45,15 @@ const registerEvents = ({ ui }) => {
|
|
|
45
45
|
const main = async () => {
|
|
46
46
|
const cliDetails = (0, version_info_1.getCLIDetails)();
|
|
47
47
|
const deps = await (0, dependency_injection_1.getDependencies)(cliDetails);
|
|
48
|
-
registerCommands(deps);
|
|
49
48
|
registerEvents(deps);
|
|
50
|
-
const
|
|
51
|
-
|
|
49
|
+
const [, featureFlags] = await Promise.all([
|
|
50
|
+
registerCommands(deps),
|
|
51
|
+
deps.controllers.prerequisitesController.check()
|
|
52
|
+
]);
|
|
53
|
+
if (featureFlags.muaoEnabled) {
|
|
52
54
|
(0, register_contributors_commands_1.registerCommands)(deps);
|
|
53
55
|
}
|
|
54
|
-
if (concurrentDevEnabled) {
|
|
56
|
+
if (featureFlags.concurrentDevEnabled) {
|
|
55
57
|
(0, register_environment_commands_1.registerCommands)(deps);
|
|
56
58
|
}
|
|
57
59
|
await deps.cmd.parse(process.argv);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { CreateAppCommandResult, CommandLineUI, CreateAppCommand } from '@forge/cli-shared';
|
|
1
|
+
import { CreateAppCommandResult, CommandLineUI, CreateAppCommand, FeatureFlagService } from '@forge/cli-shared';
|
|
2
2
|
import { Dependencies } from './dependency-injection';
|
|
3
3
|
export declare function directoryNameFromAppName(appName?: string): string | undefined;
|
|
4
4
|
export interface CreateCommandHandlerOptions {
|
|
5
5
|
template?: string;
|
|
6
6
|
directory?: string;
|
|
7
7
|
}
|
|
8
|
-
export declare function createCommandHandler(ui: CommandLineUI, createAppCommand: CreateAppCommand, name: string, { template, directory }: CreateCommandHandlerOptions): Promise<CreateAppCommandResult>;
|
|
8
|
+
export declare function createCommandHandler(ui: CommandLineUI, createAppCommand: CreateAppCommand, featureFlagService: FeatureFlagService, name: string, { template, directory }: CreateCommandHandlerOptions): Promise<CreateAppCommandResult>;
|
|
9
9
|
export declare function registerCommands(deps: Dependencies): void;
|
|
10
10
|
//# sourceMappingURL=register-app-commands.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-app-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-app-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EAEtB,aAAa,EACb,gBAAgB,
|
|
1
|
+
{"version":3,"file":"register-app-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-app-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EAEtB,aAAa,EACb,gBAAgB,EAEhB,kBAAkB,EACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAsBtD,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY7E;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,aAAa,EACjB,gBAAgB,EAAE,gBAAgB,EAClC,kBAAkB,EAAE,kBAAkB,EACtC,IAAI,EAAE,MAAM,EACZ,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,2BAA2B,GACnD,OAAO,CAAC,sBAAsB,CAAC,CAwGjC;AA+CD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,QAGlD"}
|
|
@@ -12,6 +12,7 @@ var TemplateCategory;
|
|
|
12
12
|
TemplateCategory["CUSTOM_UI"] = "Custom UI";
|
|
13
13
|
TemplateCategory["BACKEND"] = "Triggers and Validators";
|
|
14
14
|
TemplateCategory["UI_KIT"] = "UI kit";
|
|
15
|
+
TemplateCategory["UI_KIT_2"] = "UI kit 2 (Preview)";
|
|
15
16
|
})(TemplateCategory || (TemplateCategory = {}));
|
|
16
17
|
function ensureDirectoryDoesntExist(directory) {
|
|
17
18
|
if (fs_1.default.existsSync(directory)) {
|
|
@@ -33,7 +34,7 @@ function directoryNameFromAppName(appName) {
|
|
|
33
34
|
return allDashes ? undefined : normalized;
|
|
34
35
|
}
|
|
35
36
|
exports.directoryNameFromAppName = directoryNameFromAppName;
|
|
36
|
-
async function createCommandHandler(ui, createAppCommand, name, { template, directory }) {
|
|
37
|
+
async function createCommandHandler(ui, createAppCommand, featureFlagService, name, { template, directory }) {
|
|
37
38
|
if (directory) {
|
|
38
39
|
ensureDirectoryDoesntExist(directory);
|
|
39
40
|
ui.info(cli_shared_2.Text.create.intro(directory));
|
|
@@ -61,25 +62,34 @@ async function createCommandHandler(ui, createAppCommand, name, { template, dire
|
|
|
61
62
|
if (!template) {
|
|
62
63
|
ui.info(cli_shared_2.Text.create.overviewTemplates);
|
|
63
64
|
const templates = await ui.displayTemporaryMessage(() => createAppCommand.getAvailableTemplates(), cli_shared_2.Text.create.waitTemplates);
|
|
64
|
-
const
|
|
65
|
+
const enableCSUIK = await featureFlagService.readFlag('forge-cli-enable-csuik');
|
|
66
|
+
const type = await ui.promptForList(cli_shared_2.Text.create.promptCategory, Object.values(TemplateCategory).filter((category) => enableCSUIK || category !== TemplateCategory.UI_KIT_2));
|
|
65
67
|
const filteredTemplates = type === TemplateCategory.SHOW_ALL
|
|
66
68
|
? templates
|
|
67
69
|
: templates
|
|
68
70
|
.filter((name) => {
|
|
69
71
|
switch (type) {
|
|
70
72
|
case TemplateCategory.BACKEND:
|
|
71
|
-
return !name.includes('ui-kit') &&
|
|
73
|
+
return (!name.includes('ui-kit') &&
|
|
74
|
+
!name.includes('csuik') &&
|
|
75
|
+
!name.includes('custom-ui') &&
|
|
76
|
+
name !== 'blank');
|
|
72
77
|
case TemplateCategory.CUSTOM_UI:
|
|
73
78
|
return name.includes('custom-ui');
|
|
74
79
|
case TemplateCategory.UI_KIT:
|
|
75
80
|
return name.includes('ui-kit');
|
|
81
|
+
case TemplateCategory.UI_KIT_2:
|
|
82
|
+
return name.includes('csuik');
|
|
76
83
|
}
|
|
77
84
|
})
|
|
78
|
-
.map((name) => name.replace('-ui-kit', '').replace('-custom-ui', ''));
|
|
85
|
+
.map((name) => name.replace('-ui-kit', '').replace('-custom-ui', '').replace('-csuik', ''));
|
|
79
86
|
template = await ui.promptForList(cli_shared_2.Text.create.promptTemplate, filteredTemplates);
|
|
80
87
|
if (type === TemplateCategory.UI_KIT) {
|
|
81
88
|
template = `${template}-ui-kit`;
|
|
82
89
|
}
|
|
90
|
+
if (type === TemplateCategory.UI_KIT_2) {
|
|
91
|
+
template = `${template}-csuik`;
|
|
92
|
+
}
|
|
83
93
|
if (type === TemplateCategory.CUSTOM_UI) {
|
|
84
94
|
template = `${template}-custom-ui`;
|
|
85
95
|
}
|
|
@@ -96,13 +106,13 @@ async function createCommandHandler(ui, createAppCommand, name, { template, dire
|
|
|
96
106
|
return result;
|
|
97
107
|
}
|
|
98
108
|
exports.createCommandHandler = createCommandHandler;
|
|
99
|
-
function registerCreateCommands({ cmd, ui, commands: { createAppCommand } }) {
|
|
109
|
+
function registerCreateCommands({ cmd, ui, commands: { createAppCommand }, services: { featureFlagService } }) {
|
|
100
110
|
cmd
|
|
101
111
|
.command('create [name]')
|
|
102
112
|
.description(cli_shared_2.Text.create.cmd.desc)
|
|
103
113
|
.option('-t, --template <template name>', cli_shared_2.Text.create.optionTemplate)
|
|
104
114
|
.option('-d, --directory <directory name>', cli_shared_2.Text.create.optionDirectory)
|
|
105
|
-
.action((name, options) => createCommandHandler(ui, createAppCommand, name, options));
|
|
115
|
+
.action((name, options) => createCommandHandler(ui, createAppCommand, featureFlagService, name, options));
|
|
106
116
|
}
|
|
107
117
|
function registerRegisterCommand({ cmd, ui, commands: { registerAppCommand } }) {
|
|
108
118
|
cmd
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Dependencies } from './dependency-injection';
|
|
2
|
-
export declare const registerCommands: ({ cmd, ...deps }: Dependencies) => void
|
|
2
|
+
export declare const registerCommands: ({ cmd, ...deps }: Dependencies) => Promise<void>;
|
|
3
3
|
//# sourceMappingURL=register-settings-commands.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-settings-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-settings-commands.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"register-settings-commands.d.ts","sourceRoot":"","sources":["../../src/command-line/register-settings-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAiCtD,eAAO,MAAM,gBAAgB,qBAA4B,YAAY,kBAKpE,CAAC"}
|
|
@@ -3,10 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.registerCommands = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const cli_shared_1 = require("@forge/cli-shared");
|
|
6
|
-
const settings_controller_1 = require("./controller/settings-controller");
|
|
7
6
|
const COMMAND_NAME = 'settings';
|
|
8
7
|
const SHOW_COMMAND_NAME = 'list';
|
|
9
|
-
const SET_COMMAND_NAME = 'set <setting> <boolean>';
|
|
8
|
+
const SET_COMMAND_NAME = 'set <setting> <boolean|string>';
|
|
10
9
|
const registerSettingsList = ({ cmd, controllers: { settingsController } }) => {
|
|
11
10
|
cmd
|
|
12
11
|
.command(SHOW_COMMAND_NAME)
|
|
@@ -15,25 +14,26 @@ const registerSettingsList = ({ cmd, controllers: { settingsController } }) => {
|
|
|
15
14
|
.requireNoAnalyticsConsent()
|
|
16
15
|
.jsonOption()
|
|
17
16
|
.action(async ({ json }) => {
|
|
18
|
-
settingsController.showSettings(json);
|
|
17
|
+
await settingsController.showSettings(json);
|
|
19
18
|
return { analytics: {} };
|
|
20
19
|
});
|
|
21
20
|
};
|
|
22
|
-
const registerSettingsSet = ({ cmd, controllers: { settingsController } }) => {
|
|
21
|
+
const registerSettingsSet = async ({ cmd, controllers: { settingsController } }) => {
|
|
22
|
+
const allowedSettings = await settingsController.getPublicSettings();
|
|
23
23
|
cmd
|
|
24
24
|
.command(SET_COMMAND_NAME)
|
|
25
|
-
.description(cli_shared_1.Text.settings.set.description(
|
|
25
|
+
.description(cli_shared_1.Text.settings.set.description(allowedSettings))
|
|
26
26
|
.requireNoAuthentication()
|
|
27
27
|
.requireNoAnalyticsConsent()
|
|
28
28
|
.action(async (preference, value) => {
|
|
29
|
-
settingsController.
|
|
29
|
+
await settingsController.setSetting(preference, value);
|
|
30
30
|
return { analytics: {} };
|
|
31
31
|
});
|
|
32
32
|
};
|
|
33
|
-
const registerCommands = (_a) => {
|
|
33
|
+
const registerCommands = async (_a) => {
|
|
34
34
|
var { cmd } = _a, deps = tslib_1.__rest(_a, ["cmd"]);
|
|
35
35
|
const preferences = cmd.command(COMMAND_NAME).requireNoAuthentication().description(cli_shared_1.Text.settings.description);
|
|
36
36
|
registerSettingsList(Object.assign({ cmd: preferences }, deps));
|
|
37
|
-
registerSettingsSet(Object.assign({ cmd: preferences }, deps));
|
|
37
|
+
await registerSettingsSet(Object.assign({ cmd: preferences }, deps));
|
|
38
38
|
};
|
|
39
39
|
exports.registerCommands = registerCommands;
|
|
@@ -6,6 +6,7 @@ export declare class DeployView {
|
|
|
6
6
|
constructor(ui: UI);
|
|
7
7
|
getLogger(): UI;
|
|
8
8
|
displayStart(environment: string): void;
|
|
9
|
+
displayListAppInstallationsError(): void;
|
|
9
10
|
displayLintRunning(): void;
|
|
10
11
|
displayOutdatedInstallationsMessage(): void;
|
|
11
12
|
displayIndexingCommand(environment: string): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/deploy-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA2D,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvH,OAAO,EAAE,UAAU,EAAqB,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,EAAE;IAE5B,SAAS,IAAI,EAAE;IAIf,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIvC,kBAAkB,IAAI,IAAI;IAI1B,mCAAmC,IAAI,IAAI;IAK3C,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKjD,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI;IAKlD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI3C,qBAAqB,IAAI,IAAI;IAI7B,8BAA8B,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAInG,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzD,mCAAmC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAI3E,kCAAkC,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD,kCAAkC,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD,wBAAwB,CACnC,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,EAAE,qBAAqB,EACxE,wBAAwB,EAAE,OAAO,EACjC,cAAc,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,GAC9C,OAAO,CAAC,gBAAgB,CAAC;CAY7B"}
|
|
1
|
+
{"version":3,"file":"deploy-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/deploy-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAA2D,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvH,OAAO,EAAE,UAAU,EAAqB,MAAM,aAAa,CAAC;AAE5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAEnE,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,EAAE;IAE5B,SAAS,IAAI,EAAE;IAIf,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIvC,gCAAgC,IAAI,IAAI;IAIxC,kBAAkB,IAAI,IAAI;IAI1B,mCAAmC,IAAI,IAAI;IAK3C,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAKjD,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI;IAKlD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI3C,qBAAqB,IAAI,IAAI;IAI7B,8BAA8B,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAInG,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAIzD,mCAAmC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAI3E,kCAAkC,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD,kCAAkC,IAAI,OAAO,CAAC,OAAO,CAAC;IAItD,wBAAwB,CACnC,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,EAAE,qBAAqB,EACxE,wBAAwB,EAAE,OAAO,EACjC,cAAc,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,GAC9C,OAAO,CAAC,gBAAgB,CAAC;CAY7B"}
|
|
@@ -14,6 +14,9 @@ class DeployView {
|
|
|
14
14
|
displayStart(environment) {
|
|
15
15
|
this.ui.info(cli_shared_1.Text.deploy.cmd.start1(environment, cli_shared_1.environmentToOption));
|
|
16
16
|
}
|
|
17
|
+
displayListAppInstallationsError() {
|
|
18
|
+
this.ui.info(cli_shared_1.Text.deploy.taskListInstallation.listInstallationError);
|
|
19
|
+
}
|
|
17
20
|
displayLintRunning() {
|
|
18
21
|
this.ui.info(cli_shared_1.Text.lint.running);
|
|
19
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/settings-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAE7C,aAAK,eAAe,GAAG,OAAO,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"settings-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/settings-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAE7C,aAAK,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEpD,qBAAa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,EAAE;IAE5B,YAAY,CAAC,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,OAAO;IAiB7E,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAIjD"}
|
|
@@ -4,5 +4,8 @@ export declare class CachedConfigService {
|
|
|
4
4
|
constructor(cachedConf: CachedConf);
|
|
5
5
|
getAnalyticsPreferences(): boolean | undefined;
|
|
6
6
|
setAnalyticsPreferences(preference: boolean): void;
|
|
7
|
+
private getDefaultEnvironments;
|
|
8
|
+
getDefaultEnvironment(appId: string): string | undefined;
|
|
9
|
+
setDefaultEnvironment(appId: string, preference: string): void;
|
|
7
10
|
}
|
|
8
11
|
//# sourceMappingURL=cached-config-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cached-config-service.d.ts","sourceRoot":"","sources":["../../src/service/cached-config-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"cached-config-service.d.ts","sourceRoot":"","sources":["../../src/service/cached-config-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAO/C,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAE5C,uBAAuB,IAAI,OAAO,GAAG,SAAS;IAO9C,uBAAuB,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAIzD,OAAO,CAAC,sBAAsB;IAIvB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAMxD,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;CAKtE"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CachedConfigService = void 0;
|
|
4
4
|
const ANALYTICS_PREFERENCES_KEY = 'analytics-preferences';
|
|
5
|
+
const DEFAULT_ENVIRONMENT_KEY = 'default-environment';
|
|
5
6
|
class CachedConfigService {
|
|
6
7
|
constructor(cachedConf) {
|
|
7
8
|
this.cachedConf = cachedConf;
|
|
@@ -15,5 +16,17 @@ class CachedConfigService {
|
|
|
15
16
|
setAnalyticsPreferences(preference) {
|
|
16
17
|
this.cachedConf.set(ANALYTICS_PREFERENCES_KEY, preference);
|
|
17
18
|
}
|
|
19
|
+
getDefaultEnvironments() {
|
|
20
|
+
return this.cachedConf.get(DEFAULT_ENVIRONMENT_KEY) || {};
|
|
21
|
+
}
|
|
22
|
+
getDefaultEnvironment(appId) {
|
|
23
|
+
const defaultEnvironments = this.getDefaultEnvironments();
|
|
24
|
+
return defaultEnvironments[appId];
|
|
25
|
+
}
|
|
26
|
+
setDefaultEnvironment(appId, preference) {
|
|
27
|
+
const defaultEnvironments = this.getDefaultEnvironments();
|
|
28
|
+
defaultEnvironments[appId] = preference;
|
|
29
|
+
this.cachedConf.set(DEFAULT_ENVIRONMENT_KEY, defaultEnvironments);
|
|
30
|
+
}
|
|
18
31
|
}
|
|
19
32
|
exports.CachedConfigService = CachedConfigService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tunnel-service.d.ts","sourceRoot":"","sources":["../../src/service/tunnel-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,7 +159,9 @@ class TunnelServiceBase {
|
|
|
159
159
|
getVolumeOptions() {
|
|
160
160
|
const options = [`-v=${CUR_WORK_APP_DIR || process.cwd()}:/app:cached`];
|
|
161
161
|
if (process.env.FORGE_DEV_DOCKER_TUNNEL) {
|
|
162
|
-
|
|
162
|
+
const monorepoRoot = (0, path_1.join)(__dirname, '../../../..');
|
|
163
|
+
options.push(`-v=${monorepoRoot}:/monorepo:cached`);
|
|
164
|
+
options.push(`-v=${monorepoRoot}/node_modules/ngrok/docker-bin:/monorepo/node_modules/ngrok/bin`);
|
|
163
165
|
}
|
|
164
166
|
if (process.env.FORGE_TUNNEL_MOUNT_DIRECTORIES) {
|
|
165
167
|
const mounts = process.env.FORGE_TUNNEL_MOUNT_DIRECTORIES.split(',');
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/cli",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.11.0-next.14",
|
|
4
4
|
"description": "A command line interface for managing Atlassian-hosted apps",
|
|
5
5
|
"author": "Atlassian",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
"postinstall": "node -e \"process.exitCode = fs.existsSync('./out/bin/postinstall.js')\" || node ./out/bin/postinstall.js"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@forge/bundler": "4.
|
|
22
|
-
"@forge/cli-shared": "3.
|
|
21
|
+
"@forge/bundler": "4.8.0-next.12",
|
|
22
|
+
"@forge/cli-shared": "3.12.0-next.7",
|
|
23
23
|
"@forge/egress": "1.2.1",
|
|
24
|
-
"@forge/lint": "3.
|
|
25
|
-
"@forge/manifest": "4.
|
|
26
|
-
"@forge/runtime": "4.
|
|
27
|
-
"@forge/tunnel": "3.
|
|
24
|
+
"@forge/lint": "3.5.0-next.8",
|
|
25
|
+
"@forge/manifest": "4.13.0-next.4",
|
|
26
|
+
"@forge/runtime": "4.4.0-next.2",
|
|
27
|
+
"@forge/tunnel": "3.5.0-next.13",
|
|
28
28
|
"@forge/util": "1.2.3",
|
|
29
29
|
"@sentry/node": "^7.29.0",
|
|
30
30
|
"ajv": "^6.12.6",
|