@equinor/fusion-framework-cli 9.12.5 → 10.0.0-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd

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.
@@ -28,7 +28,7 @@
28
28
  }
29
29
  </style>
30
30
 
31
- <script type="module" crossorigin src="/assets/index-x7t0Q4yH.js"></script>
31
+ <script type="module" crossorigin src="/assets/index-CKgDcsmb.js"></script>
32
32
 
33
33
  <body>
34
34
  <div id="root"></div>
@@ -0,0 +1,47 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { chalk } from './utils/format.js';
11
+ import { Spinner } from './utils/spinner.js';
12
+ import { bundleApplication } from './bundle-application.js';
13
+ import { resolveAppPackage, resolveAppKey } from '../lib/app-package.js';
14
+ import { uploadAppBundle, appRegistered, validateToken, tagAppBundle } from './utils/app-api.js';
15
+ export const publishApplication = (options) => __awaiter(void 0, void 0, void 0, function* () {
16
+ const { tag } = options;
17
+ const spinner = Spinner.Global({ prefixText: chalk.dim('Publish') });
18
+ const validToken = validateToken();
19
+ if (!validToken) {
20
+ return;
21
+ }
22
+ const pkg = yield resolveAppPackage();
23
+ const appKey = resolveAppKey(pkg.packageJson);
24
+ spinner.info(`Publishing app: "${appKey}" with tag: "${tag}"`);
25
+ spinner.info('Verifying that App is registered in api.');
26
+ const appResponse = yield appRegistered(appKey);
27
+ if (!appResponse) {
28
+ return;
29
+ }
30
+ spinner.info('Create bundle');
31
+ yield bundleApplication({
32
+ archive: 'app-bundle.zip',
33
+ outDir: 'dist',
34
+ });
35
+ spinner.info('Upload bundle');
36
+ const uploadedBundle = yield uploadAppBundle(appKey, 'app-bundle.zip');
37
+ if (!uploadedBundle) {
38
+ return;
39
+ }
40
+ spinner.info(`Tag app bundle with: ${tag}`);
41
+ const tagd = yield tagAppBundle(tag, appKey, uploadedBundle.version);
42
+ if (!tagd) {
43
+ return;
44
+ }
45
+ spinner.succeed('✅', `Published app: "${chalk.greenBright(appKey)}"`, `With version: "${chalk.greenBright(tagd.version)}"`, `Tag: "${chalk.greenBright(tagd.tagName)}"`);
46
+ });
47
+ //# sourceMappingURL=publish-application.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publish-application.js","sourceRoot":"","sources":["../../src/bin/publish-application.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEjG,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAO,OAAwB,EAAE,EAAE;IACjE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAExB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAErE,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO;IACX,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE9C,OAAO,CAAC,IAAI,CAAC,oBAAoB,MAAM,gBAAgB,GAAG,GAAG,CAAC,CAAC;IAE/D,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO;IACX,CAAC;IAGD,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9B,MAAM,iBAAiB,CAAC;QACpB,OAAO,EAAE,gBAAgB;QACzB,MAAM,EAAE,MAAM;KACjB,CAAC,CAAC;IAEH,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9B,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACvE,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,OAAO;IACX,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,wBAAwB,GAAG,EAAE,CAAC,CAAC;IAE5C,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAErE,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO;IACX,CAAC;IAED,OAAO,CAAC,OAAO,CACX,GAAG,EACH,mBAAmB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAC/C,kBAAkB,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EACpD,SAAS,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAC9C,CAAC;AACN,CAAC,CAAA,CAAC"}
@@ -0,0 +1,35 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { chalk } from './utils/format.js';
11
+ import { Spinner } from './utils/spinner.js';
12
+ import { resolveAppPackage, resolveAppKey } from '../lib/app-package.js';
13
+ import { appRegistered, validateToken, tagAppBundle } from './utils/app-api.js';
14
+ export const tagApplication = (options) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const { tag, version } = options;
16
+ const spinner = Spinner.Global({ prefixText: chalk.dim('Tag') });
17
+ const validToken = validateToken();
18
+ if (!validToken) {
19
+ return;
20
+ }
21
+ const pkg = yield resolveAppPackage();
22
+ const appKey = resolveAppKey(pkg.packageJson);
23
+ spinner.info(`Tag app "${appKey}" with "${tag}"`);
24
+ spinner.info('Verifying that App is registered');
25
+ const appResponse = yield appRegistered(appKey);
26
+ if (!appResponse) {
27
+ return;
28
+ }
29
+ const tagd = yield tagAppBundle(tag, appKey, version);
30
+ if (!tagd) {
31
+ return;
32
+ }
33
+ spinner.succeed('✅', `App: "${chalk.greenBright(appKey)}"`, `Version: "${chalk.greenBright(tagd.version)}"`, `Tag: "${chalk.greenBright(tagd.tagName)}"`);
34
+ });
35
+ //# sourceMappingURL=tag-application.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tag-application.js","sourceRoot":"","sources":["../../src/bin/tag-application.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAO,OAAyC,EAAE,EAAE;IAC9E,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO;IACX,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE9C,OAAO,CAAC,IAAI,CAAC,YAAY,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC;IAElD,OAAO,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO;IACX,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtD,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO;IACX,CAAC;IAED,OAAO,CAAC,OAAO,CACX,GAAG,EACH,SAAS,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EACrC,aAAa,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAC/C,SAAS,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAC9C,CAAC;AACN,CAAC,CAAA,CAAC"}
@@ -0,0 +1,36 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { Spinner } from './utils/spinner.js';
11
+ import { chalk } from './utils/format.js';
12
+ import { resolveAppPackage, resolveAppKey } from '../lib/app-package.js';
13
+ import { uploadAppBundle, appRegistered, validateToken } from './utils/app-api.js';
14
+ export const uploadApplication = (options) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const { bundle } = options;
16
+ const spinner = Spinner.Global({ prefixText: chalk.dim('Upload') });
17
+ const validToken = validateToken();
18
+ if (!validToken) {
19
+ return;
20
+ }
21
+ const pkg = yield resolveAppPackage();
22
+ const appKey = resolveAppKey(pkg.packageJson);
23
+ spinner.info('Verifying App is registered');
24
+ const appResponse = yield appRegistered(appKey);
25
+ if (!appResponse) {
26
+ return;
27
+ }
28
+ spinner.info(`Uploading appkey: ${chalk.yellowBright(appKey)}`);
29
+ spinner.info(`Uploading bundle ${chalk.yellowBright(bundle)}`);
30
+ const uploadedBundle = yield uploadAppBundle(appKey, bundle);
31
+ if (!uploadedBundle) {
32
+ return;
33
+ }
34
+ spinner.succeed('✅', `Uploaded app: "${chalk.greenBright(appKey)}"`, `Version: "${chalk.greenBright(uploadedBundle.version)}"`);
35
+ });
36
+ //# sourceMappingURL=upload-application.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-application.js","sourceRoot":"","sources":["../../src/bin/upload-application.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAO,OAA2B,EAAE,EAAE;IACnE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE3B,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEpE,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,OAAO;IACX,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE9C,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,OAAO;IACX,CAAC;IAGD,OAAO,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAChE,OAAO,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7D,IAAI,CAAC,cAAc,EAAE,CAAC;QAClB,OAAO;IACX,CAAC;IAED,OAAO,CAAC,OAAO,CACX,GAAG,EACH,kBAAkB,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,EAC9C,aAAa,KAAK,CAAC,WAAW,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAC5D,CAAC;AACN,CAAC,CAAA,CAAC"}
@@ -0,0 +1,132 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { readFileSync } from 'node:fs';
11
+ import { Spinner } from './spinner.js';
12
+ import { chalk } from './format.js';
13
+ export const getEndpointUrl = (endpoint, env = 'ci', version = '1.0-preview') => {
14
+ const apiurl = `https://fusion-s-apps-${env}.azurewebsites.net`;
15
+ return `${apiurl}/${endpoint}?api-version=${version}`;
16
+ };
17
+ export const validateToken = () => {
18
+ var _a;
19
+ const spinner = Spinner.Current;
20
+ spinner.info('Validating FUSION_TOKEN');
21
+ if (!((_a = process === null || process === void 0 ? void 0 : process.env) === null || _a === void 0 ? void 0 : _a.FUSION_TOKEN)) {
22
+ spinner.fail('😞', chalk.yellowBright('FUSION_TOKEN not found'));
23
+ return false;
24
+ }
25
+ const tokenPayload = process.env.FUSION_TOKEN.split('.')[1];
26
+ const buffer = Buffer.from(tokenPayload, 'base64');
27
+ const userToken = JSON.parse(buffer.toString('utf-8').trim());
28
+ if (Number(userToken.exp) < Date.now() / 1000) {
29
+ spinner.fail('😞', chalk.yellowBright('FUSION_TOKEN expired', Math.round(Date.now() / 1000 - Number(userToken.exp)), 'seconds ago'));
30
+ return false;
31
+ }
32
+ spinner.succeed('Token is valid');
33
+ return true;
34
+ };
35
+ export const appRegistered = (appKey) => __awaiter(void 0, void 0, void 0, function* () {
36
+ const spinner = Spinner.Current;
37
+ const requestApp = yield fetch(getEndpointUrl(`apps/${appKey}`), {
38
+ headers: {
39
+ Authorization: `Bearer ${process.env.FUSION_TOKEN}`,
40
+ },
41
+ });
42
+ if (requestApp.status === 404) {
43
+ spinner.fail('🙅‍♂️', chalk.bgRed(`The appkey '${appKey}' is not registered, visit the app-admin app and register the application there.`));
44
+ return;
45
+ }
46
+ if (!requestApp.ok) {
47
+ spinner.fail('😞', chalk.redBright('Could not connect to apps API'));
48
+ spinner.info('🤯', chalk.yellowBright(`HTTP status ${requestApp.status}, ${requestApp.statusText}`));
49
+ return;
50
+ }
51
+ spinner.succeed('✅', 'app is registered');
52
+ return yield requestApp.json();
53
+ });
54
+ export const uploadAppBundle = (appKey, bundle) => __awaiter(void 0, void 0, void 0, function* () {
55
+ const spinner = Spinner.Current;
56
+ const state = {
57
+ buffer: null,
58
+ };
59
+ try {
60
+ state.buffer = readFileSync(bundle);
61
+ }
62
+ catch (_a) {
63
+ spinner.fail('😞', 'Could not retreive app bundle, does it exist?');
64
+ return;
65
+ }
66
+ const requestBundle = yield fetch(getEndpointUrl(`bundles/apps/${appKey}`), {
67
+ method: 'POST',
68
+ body: state.buffer,
69
+ headers: {
70
+ Authorization: `Bearer ${process.env.FUSION_TOKEN}`,
71
+ 'Content-Type': 'application/zip',
72
+ },
73
+ });
74
+ if (requestBundle.status === 409) {
75
+ spinner.info('🤯', chalk.yellowBright(`This app version is already published`));
76
+ spinner.fail('😞', chalk.redBright('Failed to publish bundle'));
77
+ return;
78
+ }
79
+ if (!requestBundle.ok) {
80
+ spinner.info('🤯', chalk.yellowBright(`HTTP status ${requestBundle.status}, ${requestBundle.statusText}`));
81
+ spinner.fail('😞', chalk.redBright('Failed to publish bundle'));
82
+ return;
83
+ }
84
+ return yield requestBundle.json();
85
+ });
86
+ export const tagAppBundle = (tag, appKey, version) => __awaiter(void 0, void 0, void 0, function* () {
87
+ const spinner = Spinner.Current;
88
+ const requestTag = yield fetch(getEndpointUrl(`apps/${appKey}/tags/${tag}`), {
89
+ method: 'PUT',
90
+ body: JSON.stringify({ version }),
91
+ headers: {
92
+ Authorization: `Bearer ${process.env.FUSION_TOKEN}`,
93
+ 'Content-Type': 'application/json',
94
+ },
95
+ });
96
+ if (!requestTag.ok) {
97
+ spinner.fail('😞', chalk.redBright('Failed to tag bundle'));
98
+ spinner.info('🤯', chalk.yellowBright(`HTTP status ${requestTag.status}, ${requestTag.statusText}`));
99
+ return;
100
+ }
101
+ return yield requestTag.json();
102
+ });
103
+ export const publishAppConfig = (appKey, version, config) => __awaiter(void 0, void 0, void 0, function* () {
104
+ const spinner = Spinner.Current;
105
+ if (!validateToken()) {
106
+ return;
107
+ }
108
+ const isAppRegistered = appRegistered(appKey);
109
+ if (!isAppRegistered) {
110
+ return;
111
+ }
112
+ const requestConfig = yield fetch(getEndpointUrl(`apps/${appKey}/builds/${version}/config`), {
113
+ method: 'PUT',
114
+ body: JSON.stringify(config),
115
+ headers: {
116
+ Authorization: `Bearer ${process.env.FUSION_TOKEN}`,
117
+ 'Content-Type': 'application/json',
118
+ },
119
+ });
120
+ if (requestConfig.status === 404) {
121
+ spinner.fail('😞', chalk.redBright('App version is not published'));
122
+ spinner.info('🤯', chalk.yellowBright(`HTTP status ${requestConfig.status}, ${requestConfig.statusText}`));
123
+ return;
124
+ }
125
+ if (!requestConfig.ok) {
126
+ spinner.fail('😞', chalk.redBright('Failed to upload config'));
127
+ spinner.info('🤯', chalk.yellowBright(`HTTP status ${requestConfig.status}, ${requestConfig.statusText}`));
128
+ return;
129
+ }
130
+ return yield requestConfig.json();
131
+ });
132
+ //# sourceMappingURL=app-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-api.js","sourceRoot":"","sources":["../../../src/bin/utils/app-api.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"app-config.js","sourceRoot":"","sources":["../../src/lib/app-config.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACH,UAAU,EAGV,cAAc,EAEd,aAAa,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjE,OAAO,SAAS,MAAM,oBAAoB,CAAC;AAoB3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAE9C,MAAM,UAAU,eAAe,CAAC,KAAgB;IAE5C,YAAY,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE,CAAC,EAAE,CAAC;AAEvD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,IAAwB,EACxB,SAA6B,EACpB,EAAE;IACX,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAyB,CAAC;IACpE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1B,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC/C,UAAU,CAAY,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,iBAAiB,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAEC,EAC0C,EAAE;IAC7C,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO;YACH,MAAM;YACN,IAAI,EAAE,OAAO,CAAC,IAAI;SACrB,CAAC;IACN,CAAC;IACD,OAAO,aAAa,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAA,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,IAAwB,EAAa,EAAE;IAC9E,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,eAAe,CAAC,SAAS,CAAC,CAAC;IAC3B,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,GAAsB,EACtB,IAAe,EACf,OAA8B,EACe,EAAE;IAC/C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,eAAe,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;SAAM,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,cAAc,CAAC;YACrB,OAAO,EAAE,gCAAgC,OAAO,CAAC,IAAI,EAAE;YACvD,QAAQ,EAAE,QAAQ;SACrB,CAAC,CAAC;IACP,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAA,CAAC"}
1
+ {"version":3,"file":"app-config.js","sourceRoot":"","sources":["../../src/lib/app-config.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACH,UAAU,EAGV,cAAc,EAEd,aAAa,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjE,OAAO,SAAS,MAAM,oBAAoB,CAAC;AA0B3C,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAE9C,MAAM,UAAU,eAAe,CAAC,KAAgB;IAE5C,YAAY,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAe,EAAE,EAAE,CAAC,EAAE,CAAC;AAEvD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,IAAwB,EACxB,SAA6B,EACpB,EAAE;IACX,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,SAAS,CAAyB,CAAC;IACpE,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC1B,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC/C,UAAU,CAAY,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,iBAAiB,CAAC,CAAC;AAEzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAEC,EAC0C,EAAE;IAC7C,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjD,OAAO;YACH,MAAM;YACN,IAAI,EAAE,OAAO,CAAC,IAAI;SACrB,CAAC;IACN,CAAC;IACD,OAAO,aAAa,CAAC,iBAAiB,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC/D,CAAC,CAAA,CAAC;AAEF,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,IAAwB,EAAa,EAAE;IAC9E,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,eAAe,CAAC,SAAS,CAAC,CAAC;IAC3B,OAAO,SAAS,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC3B,GAAsB,EACtB,IAAe,EACf,OAA8B,EACe,EAAE;IAC/C,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACjD,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,eAAe,CAAC,MAAM,CAAC,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;SAAM,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,cAAc,CAAC;YACrB,OAAO,EAAE,gCAAgC,OAAO,CAAC,IAAI,EAAE;YACvD,QAAQ,EAAE,QAAQ;SACrB,CAAC,CAAC;IACP,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC,CAAA,CAAC"}
@@ -2,6 +2,7 @@ import { ConfigExecuterEnv } from '../lib/utils/config.js';
2
2
  export declare const createExportConfig: (options?: {
3
3
  command?: ConfigExecuterEnv['command'];
4
4
  configFile?: string;
5
+ publish?: string;
5
6
  outputFile?: string;
6
- }) => Promise<import("../lib/app-config.js").AppConfig>;
7
+ }) => Promise<import("../lib/app-config.js").AppConfig | undefined>;
7
8
  export default createExportConfig;
@@ -1,16 +1,15 @@
1
1
  import { ConfigExecuterEnv } from '../lib/utils/config.js';
2
- import { AppManifest } from '../lib/app-manifest.js';
2
+ import type { AppManifest } from '../lib/app-manifest.js';
3
3
  export declare const normalizeVersion: (version: string) => {
4
4
  major: number;
5
5
  minor: number;
6
6
  patch: number;
7
7
  };
8
- type AppManifestExport = Omit<AppManifest, 'version'> & {
9
- version: {
10
- major: number;
11
- minor: number;
12
- patch: number;
13
- };
8
+ type AppManifestExport = AppManifest & {
9
+ entryPoint: string;
10
+ commitSha?: string;
11
+ githubRepo?: string;
12
+ timestamp?: string;
14
13
  };
15
14
  export declare const createExportManifest: (options?: {
16
15
  command?: ConfigExecuterEnv['command'];
@@ -0,0 +1,3 @@
1
+ export declare const publishApplication: (options: {
2
+ tag: string;
3
+ }) => Promise<void>;
@@ -0,0 +1,4 @@
1
+ export declare const tagApplication: (options: {
2
+ tag: string;
3
+ version: string;
4
+ }) => Promise<void>;
@@ -0,0 +1,3 @@
1
+ export declare const uploadApplication: (options: {
2
+ bundle: string;
3
+ }) => Promise<void>;
@@ -0,0 +1,7 @@
1
+ import { AppConfig } from '../../lib/app-config.js';
2
+ export declare const getEndpointUrl: (endpoint: string, env?: 'ci' | 'fqa' | 'fprd', version?: string) => string;
3
+ export declare const validateToken: () => boolean;
4
+ export declare const appRegistered: (appKey: string) => Promise<any>;
5
+ export declare const uploadAppBundle: (appKey: string, bundle: string) => Promise<any>;
6
+ export declare const tagAppBundle: (tag: string, appKey: string, version: string) => Promise<any>;
7
+ export declare const publishAppConfig: (appKey: string, version: string, config: AppConfig) => Promise<any>;
@@ -1,8 +1,13 @@
1
1
  import { type ResolvedConfig, type FindConfigOptions, ConfigExecuterEnv } from './utils/config.js';
2
2
  import { ResolvedAppPackage } from './app-package.js';
3
+ type Endpoints = {
4
+ name: string;
5
+ url: string;
6
+ scopes?: string[];
7
+ };
3
8
  export type AppConfig = {
4
9
  environment?: Record<string, unknown>;
5
- endpoints?: Record<string, string>;
10
+ endpoints?: Endpoints[];
6
11
  };
7
12
  type FindAppConfigOptions = FindConfigOptions & {
8
13
  file?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@equinor/fusion-framework-cli",
3
- "version": "9.12.5",
3
+ "version": "10.0.0-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
4
4
  "keywords": [
5
5
  "Fusion",
6
6
  "Fusion Framework",
@@ -50,10 +50,10 @@
50
50
  "vite-plugin-environment": "^1.1.3",
51
51
  "vite-plugin-restart": "^0.4.0",
52
52
  "vite-tsconfig-paths": "^4.2.0",
53
- "@equinor/fusion-framework-app": "^9.0.8",
54
53
  "@equinor/fusion-framework-module-feature-flag": "^1.1.1",
55
- "@equinor/fusion-observable": "^8.3.0",
56
- "@equinor/fusion-framework-react-components-people-provider": "^1.3.7"
54
+ "@equinor/fusion-framework-app": "^9.0.9-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
55
+ "@equinor/fusion-framework-react-components-people-provider": "^1.3.8-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
56
+ "@equinor/fusion-observable": "^8.3.0"
57
57
  },
58
58
  "devDependencies": {
59
59
  "@equinor/fusion-react-context-selector": "^0.6.3",
@@ -72,19 +72,19 @@
72
72
  "rxjs": "^7.8.1",
73
73
  "styled-components": "^6.0.7",
74
74
  "typescript": "^5.4.2",
75
- "@equinor/fusion-framework": "^7.1.7",
76
- "@equinor/fusion-framework-app": "^9.0.8",
77
- "@equinor/fusion-framework-module-bookmark": "^1.2.4",
78
- "@equinor/fusion-framework-module-app": "^5.3.4",
79
- "@equinor/fusion-framework-module-context": "^5.0.4",
80
- "@equinor/fusion-framework-module-http": "^5.2.2",
75
+ "@equinor/fusion-framework": "^7.1.8-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
76
+ "@equinor/fusion-framework-app": "^9.0.9-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
77
+ "@equinor/fusion-framework-module-app": "^5.3.5-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
78
+ "@equinor/fusion-framework-module-bookmark": "^1.2.5-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
79
+ "@equinor/fusion-framework-module-context": "^5.0.5-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
81
80
  "@equinor/fusion-framework-module-msal": "^3.1.0",
81
+ "@equinor/fusion-framework-module-http": "^5.2.2",
82
82
  "@equinor/fusion-framework-module-navigation": "^4.0.1",
83
83
  "@equinor/fusion-framework-module-services": "^4.0.1",
84
- "@equinor/fusion-framework-react": "^7.0.7",
85
- "@equinor/fusion-framework-react-components-bookmark": "^0.4.7",
86
- "@equinor/fusion-framework-react-module-bookmark": "^2.1.7",
87
- "@equinor/fusion-query": "^5.0.2"
84
+ "@equinor/fusion-framework-react-module-bookmark": "^2.1.8-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
85
+ "@equinor/fusion-framework-react": "^7.0.8-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
86
+ "@equinor/fusion-framework-react-components-bookmark": "^0.4.8-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd",
87
+ "@equinor/fusion-query": "^5.0.3-beta-cli-78048476c3d6eb4c8273320a739e5112fc7979fd"
88
88
  },
89
89
  "scripts": {
90
90
  "prebuild": "pnpm build:source",