@forge/cli 6.4.3-next.1 → 6.4.3
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 +291 -0
- package/npm-shrinkwrap.json +2073 -2454
- package/out/command-line/controller/install-controller.d.ts +3 -2
- package/out/command-line/controller/install-controller.d.ts.map +1 -1
- package/out/command-line/controller/install-controller.js +9 -2
- package/out/command-line/dependency-injection.d.ts.map +1 -1
- package/out/command-line/dependency-injection.js +2 -2
- package/out/command-line/view/install-view.d.ts +4 -3
- package/out/command-line/view/install-view.d.ts.map +1 -1
- package/out/command-line/view/install-view.js +10 -4
- package/out/service/cached-config-service.d.ts.map +1 -1
- package/out/service/cached-config-service.js +3 -0
- package/package.json +15 -16
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import { AppConfigProvider, ConfigFile, UI } from '@forge/cli-shared';
|
|
2
|
+
import { AppConfigProvider, ConfigFile, UI, FeatureFlagReader } from '@forge/cli-shared';
|
|
3
3
|
import { URL } from 'url';
|
|
4
4
|
import { InstallAppSiteCommand } from '../../installations/install-app-site';
|
|
5
5
|
import { InstallationService } from '../../service/installation-service';
|
|
@@ -22,7 +22,8 @@ export declare class InstallController {
|
|
|
22
22
|
private readonly installAppSiteCommand;
|
|
23
23
|
private readonly installationService;
|
|
24
24
|
private readonly installView;
|
|
25
|
-
|
|
25
|
+
private readonly featureFlags;
|
|
26
|
+
constructor(appConfigProvider: AppConfigProvider, configFile: ConfigFile, ui: UI, installAppSiteCommand: InstallAppSiteCommand, installationService: InstallationService, installView: InstallView, featureFlags: FeatureFlagReader);
|
|
26
27
|
private securityPrompt;
|
|
27
28
|
private installOrUpgrade;
|
|
28
29
|
private promptForProduct;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/install-controller.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,UAAU,EAEV,EAAE,
|
|
1
|
+
{"version":3,"file":"install-controller.d.ts","sourceRoot":"","sources":["../../../src/command-line/controller/install-controller.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,iBAAiB,EACjB,UAAU,EAEV,EAAE,EAUF,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,UAAU,gBAAgB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB;AAiBD,qBAAa,iBAAkB,SAAQ,KAAK;gBAC9B,WAAW,EAAE,MAAM;CAGhC;AAQD,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;gBANZ,iBAAiB,EAAE,iBAAiB,EACpC,UAAU,EAAE,UAAU,EACtB,EAAE,EAAE,EAAE,EACN,qBAAqB,EAAE,qBAAqB,EAC5C,mBAAmB,EAAE,mBAAmB,EACxC,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,iBAAiB;YAGpC,cAAc;YAmBd,gBAAgB;YAsChB,gBAAgB;YAKhB,aAAa;YAeb,gBAAgB;IAoB9B,OAAO,CAAC,uCAAuC;IAalC,GAAG,CAAC,EACf,WAAW,EACX,IAAI,EACJ,OAAO,EACP,OAAO,EACP,aAAa,EACb,cAAc,EACf,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAsGpC"}
|
|
@@ -9,13 +9,14 @@ class NoDeploymentError extends Error {
|
|
|
9
9
|
}
|
|
10
10
|
exports.NoDeploymentError = NoDeploymentError;
|
|
11
11
|
class InstallController {
|
|
12
|
-
constructor(appConfigProvider, configFile, ui, installAppSiteCommand, installationService, installView) {
|
|
12
|
+
constructor(appConfigProvider, configFile, ui, installAppSiteCommand, installationService, installView, featureFlags) {
|
|
13
13
|
this.appConfigProvider = appConfigProvider;
|
|
14
14
|
this.configFile = configFile;
|
|
15
15
|
this.ui = ui;
|
|
16
16
|
this.installAppSiteCommand = installAppSiteCommand;
|
|
17
17
|
this.installationService = installationService;
|
|
18
18
|
this.installView = installView;
|
|
19
|
+
this.featureFlags = featureFlags;
|
|
19
20
|
}
|
|
20
21
|
async securityPrompt(site) {
|
|
21
22
|
this.ui.info(cli_shared_1.Text.install.security.banner(site.host));
|
|
@@ -114,11 +115,17 @@ class InstallController {
|
|
|
114
115
|
if ((0, cli_shared_1.isSecureSite)(site)) {
|
|
115
116
|
await this.securityPrompt(site);
|
|
116
117
|
}
|
|
118
|
+
const hasDefaultReadMeScope = await this.featureFlags.readMeScopeAddedByXLS();
|
|
119
|
+
this.ui.debug(`appId ${id} has read:me scope added by default?: ${hasDefaultReadMeScope}`);
|
|
117
120
|
const environmentPermissions = await this.installationService.getAppEnvironmentPermissions(id, environment);
|
|
118
|
-
if (!
|
|
121
|
+
if (!environmentPermissions ||
|
|
122
|
+
(hasDefaultReadMeScope && (!(environmentPermissions === null || environmentPermissions === void 0 ? void 0 : environmentPermissions.scopes) || environmentPermissions.scopes.length === 0))) {
|
|
119
123
|
this.ui.error(new NoDeploymentError(environment), { pad: false });
|
|
120
124
|
return;
|
|
121
125
|
}
|
|
126
|
+
if (environmentPermissions.scopes === undefined) {
|
|
127
|
+
environmentPermissions.scopes = [];
|
|
128
|
+
}
|
|
122
129
|
const { scopes: environmentScopes } = environmentPermissions;
|
|
123
130
|
const [{ permissions }, manifestEgressEntries] = await Promise.all([
|
|
124
131
|
this.configFile.readConfig(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-injection.d.ts","sourceRoot":"","sources":["../../src/command-line/dependency-injection.ts"],"names":[],"mappings":"AAMA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAUlB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EACnB,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;AAMhF,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;AAKhF,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":"AAMA,OAAO,EASL,UAAU,EACV,aAAa,EAEb,UAAU,EAGV,gBAAgB,EAGhB,kBAAkB,EAUlB,YAAY,EACZ,aAAa,EAOb,kBAAkB,EAIlB,kBAAkB,EACnB,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;AAMhF,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;AAKhF,eAAO,MAAM,eAAe,eAAsB,UAAU,GAAG,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkSvE,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"}
|
|
@@ -144,8 +144,8 @@ const getDependencies = async (cliDetails) => {
|
|
|
144
144
|
const getWebTriggerURLCommand = new get_webtrigger_url_1.GetWebTriggerURLCommand(assertiveAppConfigReader, installationsClient, appEnvironmentClient, webTriggerGraphqlClient);
|
|
145
145
|
const autocompleteController = new autocomplete_controller_1.AutocompleteController(ui);
|
|
146
146
|
const installationsService = new installation_service_1.InstallationService(assertiveAppConfigReader, installationsClient, installationsClient);
|
|
147
|
-
const installView = new install_view_1.InstallView(ui);
|
|
148
|
-
const installController = new install_controller_1.InstallController(assertiveAppConfigReader, configFile, ui, installAppSiteCommand, installationsService, installView);
|
|
147
|
+
const installView = new install_view_1.InstallView(ui, featureFlagService);
|
|
148
|
+
const installController = new install_controller_1.InstallController(assertiveAppConfigReader, configFile, ui, installAppSiteCommand, installationsService, installView, featureFlagService);
|
|
149
149
|
const feedbackController = new feedback_controller_1.FeedbackController(ui, feedbackPostClient);
|
|
150
150
|
const lintService = new lint_service_1.LintService(configFile, fileReader);
|
|
151
151
|
const lintView = new lint_view_1.LintView(ui);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UI } from '@forge/cli-shared';
|
|
1
|
+
import { UI, FeatureFlagReader, UserError } from '@forge/cli-shared';
|
|
2
2
|
import { AppEnvironmentPermissions, Installation } from '../../service/installation-service';
|
|
3
3
|
interface InstallOrUpgradeCommandText {
|
|
4
4
|
listScopes: (scopes: string[]) => string;
|
|
@@ -6,11 +6,12 @@ interface InstallOrUpgradeCommandText {
|
|
|
6
6
|
permissionsMismatch: (environment: string) => string;
|
|
7
7
|
promptForPermissionsConfirmation: (permissionsMismatchInDevelopment: boolean) => string;
|
|
8
8
|
}
|
|
9
|
-
export declare class NoScopesError extends
|
|
9
|
+
export declare class NoScopesError extends UserError {
|
|
10
10
|
}
|
|
11
11
|
export declare class InstallView {
|
|
12
12
|
private readonly ui;
|
|
13
|
-
|
|
13
|
+
private readonly featureFlags;
|
|
14
|
+
constructor(ui: UI, featureFlags: FeatureFlagReader);
|
|
14
15
|
promptForPermissionsConfirmation({ scopes, egressAddresses, addedScopes }: AppEnvironmentPermissions, manifestScopes: string[], manifestEgressAddresses: string[], environment: string, confirmScopes: boolean, nonInteractive: boolean, text: InstallOrUpgradeCommandText): Promise<boolean>;
|
|
15
16
|
promptForUpgrade(installations: Installation[]): Promise<Installation>;
|
|
16
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/install-view.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"install-view.d.ts","sourceRoot":"","sources":["../../../src/command-line/view/install-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,EAAE,EAEF,iBAAiB,EACjB,SAAS,EACV,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAE7F,UAAU,2BAA2B;IACnC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IACzC,mBAAmB,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,MAAM,CAAC;IAC3D,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,gCAAgC,EAAE,CAAC,gCAAgC,EAAE,OAAO,KAAK,MAAM,CAAC;CACzF;AAED,qBAAa,aAAc,SAAQ,SAAS;CAAG;AAE/C,qBAAa,WAAW;IACV,OAAO,CAAC,QAAQ,CAAC,EAAE;IAAM,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAArC,EAAE,EAAE,EAAE,EAAmB,YAAY,EAAE,iBAAiB;IAExE,gCAAgC,CAC3C,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,yBAAyB,EACnE,cAAc,EAAE,MAAM,EAAE,EACxB,uBAAuB,EAAE,MAAM,EAAE,EACjC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,OAAO,EACtB,cAAc,EAAE,OAAO,EACvB,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,OAAO,CAAC;IA2CN,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;CAqBpF"}
|
|
@@ -4,22 +4,28 @@ exports.InstallView = exports.NoScopesError = void 0;
|
|
|
4
4
|
const cli_shared_1 = require("@forge/cli-shared");
|
|
5
5
|
const egress_1 = require("@forge/egress");
|
|
6
6
|
const lodash_1 = require("lodash");
|
|
7
|
-
class NoScopesError extends
|
|
7
|
+
class NoScopesError extends cli_shared_1.UserError {
|
|
8
8
|
}
|
|
9
9
|
exports.NoScopesError = NoScopesError;
|
|
10
10
|
class InstallView {
|
|
11
|
-
constructor(ui) {
|
|
11
|
+
constructor(ui, featureFlags) {
|
|
12
12
|
this.ui = ui;
|
|
13
|
+
this.featureFlags = featureFlags;
|
|
13
14
|
}
|
|
14
15
|
async promptForPermissionsConfirmation({ scopes, egressAddresses, addedScopes }, manifestScopes, manifestEgressAddresses, environment, confirmScopes, nonInteractive, text) {
|
|
15
|
-
|
|
16
|
+
const hasDefaultReadMeScope = await this.featureFlags.readMeScopeAddedByXLS();
|
|
17
|
+
if (hasDefaultReadMeScope && scopes.length === 0) {
|
|
16
18
|
throw new NoScopesError();
|
|
17
19
|
}
|
|
18
20
|
if (addedScopes.length)
|
|
19
21
|
this.ui.info(text.listScopes(addedScopes));
|
|
20
22
|
if (egressAddresses.length)
|
|
21
23
|
this.ui.info(text.listEgressAddresses(egressAddresses));
|
|
22
|
-
const
|
|
24
|
+
const manifestScopesSet = new Set(manifestScopes);
|
|
25
|
+
if (hasDefaultReadMeScope) {
|
|
26
|
+
manifestScopesSet.add('read:me');
|
|
27
|
+
}
|
|
28
|
+
const cleanedManifestScopes = [...manifestScopesSet];
|
|
23
29
|
const groupedManifestEgressAddresses = (0, egress_1.sortAndGroupEgressPermissionsByDomain)(manifestEgressAddresses);
|
|
24
30
|
let permissionsMismatchWithManifest = false;
|
|
25
31
|
if ((0, cli_shared_1.environmentToOption)(environment) === cli_shared_1.DEFAULT_ENVIRONMENT_OPTION) {
|
|
@@ -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;AAI/C,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,UAAU;IAE5C,uBAAuB,IAAI,OAAO,GAAG,SAAS;
|
|
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;AAI/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;CAG1D"}
|
|
@@ -7,6 +7,9 @@ class CachedConfigService {
|
|
|
7
7
|
this.cachedConf = cachedConf;
|
|
8
8
|
}
|
|
9
9
|
getAnalyticsPreferences() {
|
|
10
|
+
if (process.env.FORGE_DISABLE_ANALYTICS) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
10
13
|
return this.cachedConf.get(ANALYTICS_PREFERENCES_KEY);
|
|
11
14
|
}
|
|
12
15
|
setAnalyticsPreferences(preference) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forge/cli",
|
|
3
|
-
"version": "6.4.3
|
|
3
|
+
"version": "6.4.3",
|
|
4
4
|
"description": "A command line interface for managing Atlassian-hosted apps",
|
|
5
5
|
"author": "Atlassian",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -18,22 +18,22 @@
|
|
|
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.5.0
|
|
22
|
-
"@forge/cli-shared": "3.6.1
|
|
21
|
+
"@forge/bundler": "4.5.0",
|
|
22
|
+
"@forge/cli-shared": "3.6.1",
|
|
23
23
|
"@forge/egress": "^1.1.2",
|
|
24
|
-
"@forge/lint": "3.2.15
|
|
25
|
-
"@forge/manifest": "4.
|
|
26
|
-
"@forge/runtime": "4.2.0
|
|
27
|
-
"@forge/tunnel": "3.1.1
|
|
28
|
-
"@forge/util": "1.2.
|
|
24
|
+
"@forge/lint": "3.2.15",
|
|
25
|
+
"@forge/manifest": "4.7.0",
|
|
26
|
+
"@forge/runtime": "4.2.0",
|
|
27
|
+
"@forge/tunnel": "3.1.1",
|
|
28
|
+
"@forge/util": "1.2.1",
|
|
29
29
|
"@sentry/node": "^7.29.0",
|
|
30
|
-
"ajv": "^6.12.
|
|
30
|
+
"ajv": "^6.12.6",
|
|
31
31
|
"archiver": "^5.2.0",
|
|
32
32
|
"case": "^1.6.2",
|
|
33
33
|
"chalk": "^2.4.2",
|
|
34
34
|
"cheerio": "^0.22.0",
|
|
35
35
|
"cli-table3": "^0.6.1",
|
|
36
|
-
"command-exists": "^1.2.
|
|
36
|
+
"command-exists": "^1.2.9",
|
|
37
37
|
"commander": "^7.0.0",
|
|
38
38
|
"cross-spawn": "^7.0.1",
|
|
39
39
|
"dayjs": "^1.9.7",
|
|
@@ -58,16 +58,16 @@
|
|
|
58
58
|
},
|
|
59
59
|
"devDependencies": {
|
|
60
60
|
"@types/archiver": "^5.1.0",
|
|
61
|
-
"@types/cheerio": "^0.22.
|
|
61
|
+
"@types/cheerio": "^0.22.31",
|
|
62
62
|
"@types/command-exists": "^1.2.0",
|
|
63
|
-
"@types/cross-spawn": "^6.0.
|
|
63
|
+
"@types/cross-spawn": "^6.0.2",
|
|
64
64
|
"@types/didyoumean": "^1.2.0",
|
|
65
65
|
"@types/fs-extra": "^8.0.1",
|
|
66
66
|
"@types/hidefile": "^3.0.0",
|
|
67
|
-
"@types/inquirer": "^8.2.
|
|
67
|
+
"@types/inquirer": "^8.2.6",
|
|
68
68
|
"@types/jest": "^29.1.2",
|
|
69
69
|
"@types/js-yaml": "^3.12.2",
|
|
70
|
-
"@types/minimatch": "^3.0.
|
|
70
|
+
"@types/minimatch": "^3.0.5",
|
|
71
71
|
"@types/mkdirp": "^1.0.0",
|
|
72
72
|
"@types/node": "^12.12.63",
|
|
73
73
|
"@types/node-fetch": "^2.5.7",
|
|
@@ -75,8 +75,7 @@
|
|
|
75
75
|
"@types/semver": "^6.0.1",
|
|
76
76
|
"@types/tmp": "^0.1.0",
|
|
77
77
|
"@types/unzipper": "^0.10.1",
|
|
78
|
-
"@types/uuid": "^3.4.
|
|
79
|
-
"@types/webpack": "^5.28.0",
|
|
78
|
+
"@types/uuid": "^3.4.10",
|
|
80
79
|
"jest": "^29.1.2",
|
|
81
80
|
"jest-fixtures": "^0.6.0",
|
|
82
81
|
"memfs": "^3.4.1"
|