@equinor/echo-cli 1.0.0-beta-45 → 1.0.0-beta-46
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/lib/const/common.d.ts +1 -0
- package/lib/const/common.js +9 -0
- package/lib/const/common.js.map +1 -1
- package/lib/update-echo-libs.js +3 -3
- package/lib/update-echo-libs.js.map +1 -1
- package/lib/utils/findConsumerAppPackageJson.d.ts +10 -0
- package/lib/utils/findConsumerAppPackageJson.js +20 -5
- package/lib/utils/findConsumerAppPackageJson.js.map +1 -1
- package/lib/utils/printEchoLibsVersions.d.ts +1 -0
- package/lib/utils/printEchoLibsVersions.js +35 -43
- package/lib/utils/printEchoLibsVersions.js.map +1 -1
- package/package.json +1 -1
package/lib/const/common.d.ts
CHANGED
|
@@ -3,3 +3,4 @@ export declare const ECHO_MODULE_ID_PATH = "/echoModuleId.json";
|
|
|
3
3
|
export declare const ECHO_MODULE_CONFIG_PATH = "/echoModule.config.json";
|
|
4
4
|
export declare const ECHO_HOST_BUILD_OUTPUT_FOLDER = "echo-dev-host-build";
|
|
5
5
|
export declare const ECHO_HOST_TEMP_BUILD_FOLDER = "echo-dev-host-tmp";
|
|
6
|
+
export declare const SUPPORTED_ECHO_LIBS: Readonly<Readonly<string>[]>;
|
package/lib/const/common.js
CHANGED
|
@@ -3,4 +3,13 @@ export const ECHO_MODULE_ID_PATH = '/echoModuleId.json';
|
|
|
3
3
|
export const ECHO_MODULE_CONFIG_PATH = '/echoModule.config.json';
|
|
4
4
|
export const ECHO_HOST_BUILD_OUTPUT_FOLDER = 'echo-dev-host-build';
|
|
5
5
|
export const ECHO_HOST_TEMP_BUILD_FOLDER = 'echo-dev-host-tmp';
|
|
6
|
+
export const SUPPORTED_ECHO_LIBS = [
|
|
7
|
+
'@equinor/echo-base',
|
|
8
|
+
'@equinor/echo-core',
|
|
9
|
+
'@equinor/echo-utils',
|
|
10
|
+
'@equinor/echo-search',
|
|
11
|
+
'@equinor/echo-components',
|
|
12
|
+
'@equinor/echo-framework',
|
|
13
|
+
'@equinor/echo-cli'
|
|
14
|
+
];
|
|
6
15
|
//# sourceMappingURL=common.js.map
|
package/lib/const/common.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/const/common.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;AAE5C,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AACjE,MAAM,CAAC,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AACnE,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/const/common.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;AAE5C,MAAM,CAAC,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AACxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AACjE,MAAM,CAAC,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AACnE,MAAM,CAAC,MAAM,2BAA2B,GAAG,mBAAmB,CAAC;AAC/D,MAAM,CAAC,MAAM,mBAAmB,GAAiC;IAC7D,oBAAoB;IACpB,oBAAoB;IACpB,qBAAqB;IACrB,sBAAsB;IACtB,0BAA0B;IAC1B,yBAAyB;IACzB,mBAAmB;CACtB,CAAC"}
|
package/lib/update-echo-libs.js
CHANGED
|
@@ -5,7 +5,7 @@ import fs from 'fs-extra';
|
|
|
5
5
|
import inquirer from 'inquirer';
|
|
6
6
|
import ora from 'ora';
|
|
7
7
|
import path from 'path';
|
|
8
|
-
import { ECHO_HOST_BUILD_OUTPUT_FOLDER, ECHO_HOST_TEMP_BUILD_FOLDER } from './const/common.js';
|
|
8
|
+
import { ECHO_HOST_BUILD_OUTPUT_FOLDER, ECHO_HOST_TEMP_BUILD_FOLDER, SUPPORTED_ECHO_LIBS } from './const/common.js';
|
|
9
9
|
import { buildAndCopyDevHost } from './tools/buildScripts/buildAndCopyDevHost.js';
|
|
10
10
|
import { findConsumerAppPackageJson } from './utils/findConsumerAppPackageJson.js';
|
|
11
11
|
import { getLatestPkgVersion } from './utils/getLatestPkgVersion.js';
|
|
@@ -41,7 +41,7 @@ export default class UpdateEchoLibs extends Command {
|
|
|
41
41
|
...(pkg.dependencies || {}),
|
|
42
42
|
...(pkg.devDependencies || {}),
|
|
43
43
|
...(pkg.peerDependencies || {})
|
|
44
|
-
}).filter((name) =>
|
|
44
|
+
}).filter((name) => SUPPORTED_ECHO_LIBS.includes(name));
|
|
45
45
|
const allEchoLibs = Array.from(new Set([...getEchoLibs(devHostPkg), ...getEchoLibs(consumerPkg)]));
|
|
46
46
|
// Fetch latest versions for all echo libs
|
|
47
47
|
const spinner = ora('Fetching latest echo library versions...').start();
|
|
@@ -80,7 +80,7 @@ export default class UpdateEchoLibs extends Command {
|
|
|
80
80
|
await printEchoLibsVersions({
|
|
81
81
|
devHostPkgPath,
|
|
82
82
|
appPkgPath: consumerPkgPath,
|
|
83
|
-
|
|
83
|
+
echoLibVersionsToUse: latestVersions
|
|
84
84
|
});
|
|
85
85
|
// Rebuild dev host if needed
|
|
86
86
|
if (isDevHostUpdated) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-echo-libs.js","sourceRoot":"","sources":["../src/update-echo-libs.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"update-echo-libs.js","sourceRoot":"","sources":["../src/update-echo-libs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1,11 @@
|
|
|
1
1
|
export declare function findConsumerAppPackageJson(startDir: string): string | undefined;
|
|
2
|
+
/**
|
|
3
|
+
* Extracts the dependencies from a package.json object that are included in the `SUPPORTED_ECHO_LIBS` list.
|
|
4
|
+
*
|
|
5
|
+
* Merges `dependencies`, `peerDependencies`, and `devDependencies` from the provided package object,
|
|
6
|
+
* then filters and returns only those whose names are present in `SUPPORTED_ECHO_LIBS`.
|
|
7
|
+
*
|
|
8
|
+
* @param pkg - The package.json object to extract dependencies from.
|
|
9
|
+
* @returns An array of tuples, where each tuple contains the dependency name and its version as strings.
|
|
10
|
+
*/
|
|
11
|
+
export declare const getEchoDeps: (pkg: any) => [string, string][];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import fs from 'fs-extra';
|
|
2
2
|
import path from 'path';
|
|
3
|
+
import { SUPPORTED_ECHO_LIBS } from '../const/common';
|
|
3
4
|
export function findConsumerAppPackageJson(startDir) {
|
|
4
5
|
const tried = [];
|
|
5
6
|
// 1. Check CWD
|
|
@@ -30,11 +31,25 @@ export function findConsumerAppPackageJson(startDir) {
|
|
|
30
31
|
return undefined;
|
|
31
32
|
}
|
|
32
33
|
function hasEchoLibs(pkg) {
|
|
33
|
-
|
|
34
|
+
return getEchoDeps(pkg).length > 0;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Extracts the dependencies from a package.json object that are included in the `SUPPORTED_ECHO_LIBS` list.
|
|
38
|
+
*
|
|
39
|
+
* Merges `dependencies`, `peerDependencies`, and `devDependencies` from the provided package object,
|
|
40
|
+
* then filters and returns only those whose names are present in `SUPPORTED_ECHO_LIBS`.
|
|
41
|
+
*
|
|
42
|
+
* @param pkg - The package.json object to extract dependencies from.
|
|
43
|
+
* @returns An array of tuples, where each tuple contains the dependency name and its version as strings.
|
|
44
|
+
*/
|
|
45
|
+
export const getEchoDeps = (pkg) => {
|
|
46
|
+
const merged = {
|
|
34
47
|
...(pkg.dependencies || {}),
|
|
35
|
-
...(pkg.
|
|
36
|
-
...(pkg.
|
|
48
|
+
...(pkg.peerDependencies || {}),
|
|
49
|
+
...(pkg.devDependencies || {})
|
|
37
50
|
};
|
|
38
|
-
return Object.
|
|
39
|
-
|
|
51
|
+
return Object.entries(merged)
|
|
52
|
+
.filter(([name]) => SUPPORTED_ECHO_LIBS.includes(name))
|
|
53
|
+
.map(([name, version]) => [name, String(version)]);
|
|
54
|
+
};
|
|
40
55
|
//# sourceMappingURL=findConsumerAppPackageJson.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findConsumerAppPackageJson.js","sourceRoot":"","sources":["../../src/utils/findConsumerAppPackageJson.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"findConsumerAppPackageJson.js","sourceRoot":"","sources":["../../src/utils/findConsumerAppPackageJson.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,MAAM,UAAU,0BAA0B,CAAC,QAAgB;IACvD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,eAAe;IACf,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACpD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,WAAW,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IACD,iDAAiD;IACjD,MAAM,UAAU,GAAG,EAAE;SAChB,WAAW,CAAC,QAAQ,CAAC;SACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAChE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;QAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,WAAW,CAAC,GAAG,CAAC;gBAAE,OAAO,OAAO,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACL,CAAC;IACD,eAAe;IACf,kCAAkC;IAClC,+DAA+D;IAC/D,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,WAAW,CAAC,GAAQ;IACzB,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAsB,EAAE;IACxD,MAAM,MAAM,GAAG;QACX,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC;QAC/B,GAAG,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;KACjC,CAAC;IACF,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;SACxB,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SACtD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAqB,CAAC,CAAC;AAC/E,CAAC,CAAC"}
|
|
@@ -2,10 +2,9 @@ import chalk from 'chalk';
|
|
|
2
2
|
import fs from 'fs-extra';
|
|
3
3
|
import ora from 'ora';
|
|
4
4
|
import stripAnsi from 'strip-ansi';
|
|
5
|
+
import { SUPPORTED_ECHO_LIBS } from '../const/common.js';
|
|
6
|
+
import { getEchoDeps } from './findConsumerAppPackageJson.js';
|
|
5
7
|
import { getLatestPkgVersion } from './getLatestPkgVersion.js';
|
|
6
|
-
function pad(str, len) {
|
|
7
|
-
return str + ' '.repeat(Math.max(0, len - str.length));
|
|
8
|
-
}
|
|
9
8
|
/**
|
|
10
9
|
* Prints a table of all `@equinor/echo-` library versions for both the echo app and the echo dev host.
|
|
11
10
|
* Optionally fetches and displays the latest available versions from the npm registry for comparison.
|
|
@@ -16,16 +15,7 @@ function pad(str, len) {
|
|
|
16
15
|
* - `fetchLatest` (optional): If true, fetches the latest versions from npm and compares them to the installed versions.
|
|
17
16
|
*/
|
|
18
17
|
export async function printEchoLibsVersions(args) {
|
|
19
|
-
const { devHostPkgPath, appPkgPath, fetchLatest } = args;
|
|
20
|
-
const supportedEchoLibs = [
|
|
21
|
-
'@equinor/echo-base',
|
|
22
|
-
'@equinor/echo-components',
|
|
23
|
-
'@equinor/echo-core',
|
|
24
|
-
'@equinor/echo-framework',
|
|
25
|
-
'@equinor/echo-utils',
|
|
26
|
-
'@equinor/echo-search',
|
|
27
|
-
'@equinor/echo-cli'
|
|
28
|
-
];
|
|
18
|
+
const { devHostPkgPath, appPkgPath, fetchLatest, echoLibVersionsToUse } = args;
|
|
29
19
|
let appPkg = {};
|
|
30
20
|
let devHostPkg = {};
|
|
31
21
|
// Error handling for app package.json
|
|
@@ -52,45 +42,47 @@ export async function printEchoLibsVersions(args) {
|
|
|
52
42
|
console.log(chalk.red(`Could not read ${devHostPkgPath}. Is it valid JSON?`));
|
|
53
43
|
return;
|
|
54
44
|
}
|
|
55
|
-
const getEchoDeps = (pkg) => {
|
|
56
|
-
const merged = {
|
|
57
|
-
...(pkg.dependencies || {}),
|
|
58
|
-
...(pkg.peerDependencies || {}),
|
|
59
|
-
...(pkg.devDependencies || {})
|
|
60
|
-
};
|
|
61
|
-
return Object.entries(merged)
|
|
62
|
-
.filter(([name]) => supportedEchoLibs.includes(name))
|
|
63
|
-
.map(([name, version]) => [name, String(version)]);
|
|
64
|
-
};
|
|
65
45
|
const appDeps = getEchoDeps(appPkg);
|
|
66
46
|
const devHostDeps = getEchoDeps(devHostPkg);
|
|
67
47
|
const allLibs = new Set([...appDeps.map(([n]) => n), ...devHostDeps.map(([n]) => n)]);
|
|
68
48
|
if (allLibs.size === 0) {
|
|
69
|
-
console.log(chalk.gray('No supported echo libraries found in either package.json. Supported libs are:'),
|
|
49
|
+
console.log(chalk.gray('No supported echo libraries found in either package.json. Supported libs are:'), SUPPORTED_ECHO_LIBS.join(', '));
|
|
70
50
|
return;
|
|
71
51
|
}
|
|
72
|
-
let
|
|
73
|
-
if (
|
|
74
|
-
|
|
75
|
-
|
|
52
|
+
let versions = {};
|
|
53
|
+
if (echoLibVersionsToUse) {
|
|
54
|
+
// Use the provided latest versions for allLibs
|
|
55
|
+
for (const lib of allLibs) {
|
|
56
|
+
versions[lib] = {
|
|
57
|
+
appVersion: appDeps.find(([n]) => n === lib)?.[1],
|
|
58
|
+
devHostVersion: devHostDeps.find(([n]) => n === lib)?.[1],
|
|
59
|
+
latestVersion: echoLibVersionsToUse[lib]
|
|
60
|
+
};
|
|
61
|
+
}
|
|
76
62
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
versions[lib] = {
|
|
80
|
-
appVersion: appDeps.find(([n]) => n === lib)?.[1],
|
|
81
|
-
devHostVersion: devHostDeps.find(([n]) => n === lib)?.[1]
|
|
82
|
-
};
|
|
63
|
+
else {
|
|
64
|
+
let spinner;
|
|
83
65
|
if (fetchLatest) {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
66
|
+
spinner = ora();
|
|
67
|
+
console.log(chalk.yellow('Fetching latest versions for echo libraries...'));
|
|
68
|
+
}
|
|
69
|
+
for (const lib of allLibs) {
|
|
70
|
+
versions[lib] = {
|
|
71
|
+
appVersion: appDeps.find(([n]) => n === lib)?.[1],
|
|
72
|
+
devHostVersion: devHostDeps.find(([n]) => n === lib)?.[1]
|
|
73
|
+
};
|
|
74
|
+
if (fetchLatest) {
|
|
75
|
+
try {
|
|
76
|
+
versions[lib].latestVersion = await getLatestPkgVersion(lib, spinner);
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
versions[lib].latestVersion = undefined;
|
|
80
|
+
}
|
|
89
81
|
}
|
|
90
82
|
}
|
|
83
|
+
if (spinner)
|
|
84
|
+
spinner.stop();
|
|
91
85
|
}
|
|
92
|
-
if (spinner)
|
|
93
|
-
spinner.stop();
|
|
94
86
|
const appName = appPkg?.name ? appPkg.name : 'App';
|
|
95
87
|
// Explanation above the table
|
|
96
88
|
console.log(chalk.cyan('\nEcho Dev Host dependencies: These are the versions of echo libraries actually used at runtime when your app is running inside the dev host.'));
|
|
@@ -110,7 +102,7 @@ export async function printEchoLibsVersions(args) {
|
|
|
110
102
|
((v.appVersion && v.appVersion !== v.latestVersion) ||
|
|
111
103
|
(v.devHostVersion && v.devHostVersion !== v.latestVersion)));
|
|
112
104
|
if (outdated.length > 0) {
|
|
113
|
-
console.log(chalk.hex('#FFA500')('\
|
|
105
|
+
console.log(chalk.hex('#FFA500')('\n⚠️ Updates available for echo libraries.\nRun npx update-echo-libs to upgrade.'));
|
|
114
106
|
}
|
|
115
107
|
}
|
|
116
108
|
function padCell(str, len) {
|
|
@@ -125,7 +117,7 @@ function printEchoLibsTable({ allLibs, versions, appName, fetchLatest }) {
|
|
|
125
117
|
const col1w = 28 + gap, col2w = 28 + gap, col3w = 24;
|
|
126
118
|
const divider = '-'.repeat(col1w + col2w + col3w);
|
|
127
119
|
console.log(chalk.bold(padCell(col1, col1w) + padCell(col2, col2w) + padCell(col3, col3w)));
|
|
128
|
-
console.log(
|
|
120
|
+
console.log('='.repeat(col1w + col2w + col3w));
|
|
129
121
|
const libsSorted = Array.from(allLibs).sort();
|
|
130
122
|
libsSorted.forEach((lib, idx) => {
|
|
131
123
|
const { appVersion, devHostVersion, latestVersion } = versions[lib];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"printEchoLibsVersions.js","sourceRoot":"","sources":["../../src/utils/printEchoLibsVersions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"printEchoLibsVersions.js","sourceRoot":"","sources":["../../src/utils/printEchoLibsVersions.ts"],"names":[],"mappings":"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"}
|