@equinor/echo-cli 2.1.0-beta-2 → 2.1.0-beta-4
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/README.md +4 -5
- package/lib/config/common/buildAndCopyEchoHostForProd.js +1 -1
- package/lib/config/common/buildAndCopyEchoHostForProd.js.map +1 -1
- package/lib/echo-build-dev-host.js +3 -1
- package/lib/echo-build-dev-host.js.map +1 -1
- package/lib/echo-build.js +4 -1
- package/lib/echo-build.js.map +1 -1
- package/lib/sync-dev-host-to-app.js +1 -2
- package/lib/sync-dev-host-to-app.js.map +1 -1
- package/lib/tools/buildScripts/buildAndCopyDevHost.d.ts +6 -14
- package/lib/tools/buildScripts/buildAndCopyDevHost.js +16 -14
- package/lib/tools/buildScripts/buildAndCopyDevHost.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -95,18 +95,18 @@ After installing `echo-cli` in your project, you can use these commands:
|
|
|
95
95
|
|
|
96
96
|
### `npx build-echo-dev-host`
|
|
97
97
|
|
|
98
|
-
Builds the lightweight host application for local development usage.
|
|
98
|
+
Builds the lightweight host application for local development usage, using your app's echo library versions.
|
|
99
99
|
|
|
100
100
|
What it does:
|
|
101
101
|
|
|
102
102
|
- Copies `echo-dev-host` from `node_modules/@equinor/echo-cli` to your project root as `echo-dev-host-tmp`
|
|
103
|
+
- Syncs echo library versions to match your app's `package.json`
|
|
103
104
|
- Runs `npm install` inside `echo-dev-host-tmp`
|
|
104
105
|
- Builds `echo-dev-host` there
|
|
105
106
|
- Copies the build output back to `node_modules/@equinor/echo-cli`
|
|
106
107
|
- After these steps you can run `npm start` to start the local dev server
|
|
107
108
|
|
|
108
|
-
This
|
|
109
|
-
No need to release `echo-cli` for every Echo library update.
|
|
109
|
+
**Note:** This command automatically syncs to your app's versions. You typically don't need to call this manually - it's called automatically by `npm start`.
|
|
110
110
|
|
|
111
111
|
### `npx update-echo-libs`
|
|
112
112
|
|
|
@@ -116,7 +116,7 @@ What it does:
|
|
|
116
116
|
|
|
117
117
|
- Fetches latest versions for all echo libraries
|
|
118
118
|
- Updates both your consumer app's `package.json` and `echo-dev-host/package.json` to latest versions
|
|
119
|
-
- Rebuilds `echo-dev-host`
|
|
119
|
+
- Rebuilds `echo-dev-host` with those latest versions
|
|
120
120
|
- Shows a summary of all version changes
|
|
121
121
|
|
|
122
122
|
**Note:** This command always updates to latest versions. If you need to match your app's specific versions (e.g., after switching git branches), use `npx sync-dev-host-to-app` instead.
|
|
@@ -124,7 +124,6 @@ What it does:
|
|
|
124
124
|
### `npx sync-dev-host-to-app`
|
|
125
125
|
|
|
126
126
|
Syncs `echo-dev-host` to use the exact echo library versions from your app's `package.json`.
|
|
127
|
-
Use this command for setting `echo-dev-host` to given echo lib version numbers.
|
|
128
127
|
|
|
129
128
|
**Use case:** When switching git branches with different echo library versions.
|
|
130
129
|
|
|
@@ -32,7 +32,7 @@ export async function buildAndCopyEchoHostForProd(options) {
|
|
|
32
32
|
cliNodeModules,
|
|
33
33
|
tmpDevHostFolder: path.resolve(options.currentDir, ECHO_HOST_TEMP_BUILD_FOLDER),
|
|
34
34
|
finalOutputDir,
|
|
35
|
-
|
|
35
|
+
isProdBuild: true
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
38
|
//# sourceMappingURL=buildAndCopyEchoHostForProd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildAndCopyEchoHostForProd.js","sourceRoot":"","sources":["../../../src/config/common/buildAndCopyEchoHostForProd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAG9F;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,OAA2B;IACzE,kCAAkC;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,iCAAiC,GAAG,6BAA6B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE5F,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACrC,OAAO,CAAC,KAAK,CACT,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kFAAkF,CAAC;YAC9F,KAAK,CAAC,MAAM,CACR,8GAA8G,CACjH,CACR,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAE/F,MAAM,mBAAmB,CAAC;QACtB,cAAc;QACd,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,2BAA2B,CAAC;QAC/E,cAAc;QACd,
|
|
1
|
+
{"version":3,"file":"buildAndCopyEchoHostForProd.js","sourceRoot":"","sources":["../../../src/config/common/buildAndCopyEchoHostForProd.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAG9F;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,OAA2B;IACzE,kCAAkC;IAClC,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACvF,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,iCAAiC,GAAG,6BAA6B,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE5F,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACrC,OAAO,CAAC,KAAK,CACT,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,kFAAkF,CAAC;YAC9F,KAAK,CAAC,MAAM,CACR,8GAA8G,CACjH,CACR,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iCAAiC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAE/F,MAAM,mBAAmB,CAAC;QACtB,cAAc;QACd,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,2BAA2B,CAAC;QAC/E,cAAc;QACd,WAAW,EAAE,IAAI;KACpB,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -4,10 +4,12 @@ import path from 'path';
|
|
|
4
4
|
import { ECHO_HOST_BUILD_OUTPUT_FOLDER, ECHO_HOST_TEMP_BUILD_FOLDER } from './const/common.js';
|
|
5
5
|
import { buildAndCopyDevHost } from './tools/buildScripts/buildAndCopyDevHost.js';
|
|
6
6
|
export default class BuildDevHost extends Command {
|
|
7
|
-
static description =
|
|
7
|
+
static description = "Build echo-dev-host locally using your app's echo library versions";
|
|
8
8
|
async run() {
|
|
9
9
|
const cliNodeModules = path.resolve(process.cwd(), 'node_modules', '@equinor', 'echo-cli');
|
|
10
10
|
const finalOutput = path.join(cliNodeModules, ECHO_HOST_BUILD_OUTPUT_FOLDER);
|
|
11
|
+
// Use 'sync' mode by default to match consumer app versions
|
|
12
|
+
// This ensures dev host always uses the versions the developer is working with
|
|
11
13
|
await buildAndCopyDevHost({
|
|
12
14
|
cliNodeModules,
|
|
13
15
|
tmpDevHostFolder: path.resolve(process.cwd(), ECHO_HOST_TEMP_BUILD_FOLDER),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo-build-dev-host.js","sourceRoot":"","sources":["../src/echo-build-dev-host.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAC7C,MAAM,CAAC,WAAW,GAAG,
|
|
1
|
+
{"version":3,"file":"echo-build-dev-host.js","sourceRoot":"","sources":["../src/echo-build-dev-host.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAElF,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAC7C,MAAM,CAAC,WAAW,GAAG,oEAAoE,CAAC;IAE1F,KAAK,CAAC,GAAG;QACL,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3F,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAE7E,4DAA4D;QAC5D,+EAA+E;QAC/E,MAAM,mBAAmB,CAAC;YACtB,cAAc;YACd,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,2BAA2B,CAAC;YAC1E,cAAc,EAAE,WAAW;SAC9B,CAAC,CAAC;IACP,CAAC;;AAGL,YAAY,CAAC,GAAG,EAAE,CAAC"}
|
package/lib/echo-build.js
CHANGED
|
@@ -70,8 +70,11 @@ export default class CreateBundle extends Command {
|
|
|
70
70
|
' npx update-echo-libs\n'));
|
|
71
71
|
const appPkgPath = findConsumerAppPackageJson(process.cwd());
|
|
72
72
|
if (appPkgPath) {
|
|
73
|
+
// Point to the BUILT dev-host package.json, not the source
|
|
74
|
+
// __dirname points to node_modules/@equinor/echo-cli/lib/
|
|
75
|
+
const builtDevHostPkgPath = path.resolve(__dirname, `../${ECHO_HOST_BUILD_OUTPUT_FOLDER}`, 'package.json');
|
|
73
76
|
await printEchoLibsVersions({
|
|
74
|
-
devHostPkgPath:
|
|
77
|
+
devHostPkgPath: builtDevHostPkgPath,
|
|
75
78
|
appPkgPath
|
|
76
79
|
});
|
|
77
80
|
}
|
package/lib/echo-build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"echo-build.js","sourceRoot":"","sources":["../src/echo-build.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IACtC,MAAM,CAAC,WAAW,GAAG,qBAAqB,CAAC;IAE3C,MAAM,CAAC,KAAK,GAAG;QAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oCAAoC;SACpD,CAAC;QACF,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC;YACzB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oDAAoD;SACpE,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAChB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0CAA0C;SAC1D,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,uDAAuD;SACvE,CAAC;KACL,CAAC;IAEK,KAAK,CAAC,GAAG;QACZ,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE3C,MAAM,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,6BAA6B,EAAE,CAAC,CAAC;QAC5F,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,GAAG,CACJ,KAAK,CAAC,GAAG,CACL,wDAAwD,6BAA6B,4BAA4B,oBAAoB,KAAK;gBACtI,mHAAmH,CAC1H,CACJ,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,WAAW,EAAE,CAAC;QAEd,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,IAAI,CACN,2GAA2G,CAC9G,CACJ,CAAC;QAEF,IAAI,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAChB,8DAA8D,GAAG,6BAA6B,CACjG,CACJ,CAAC;YACF,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAChB,yEAAyE;gBACrE,0BAA0B,CACjC,CACJ,CAAC;YACF,MAAM,UAAU,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;YAE7D,IAAI,UAAU,EAAE,CAAC;gBACb,
|
|
1
|
+
{"version":3,"file":"echo-build.js","sourceRoot":"","sources":["../src/echo-build.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,8 +51,7 @@ export default class SyncDevHostToApp extends Command {
|
|
|
51
51
|
await buildAndCopyDevHost({
|
|
52
52
|
cliNodeModules,
|
|
53
53
|
tmpDevHostFolder: path.resolve(process.cwd(), ECHO_HOST_TEMP_BUILD_FOLDER),
|
|
54
|
-
finalOutputDir: finalOutput
|
|
55
|
-
mode: 'sync'
|
|
54
|
+
finalOutputDir: finalOutput
|
|
56
55
|
});
|
|
57
56
|
console.log(chalk.green.bold("\n✅ Sync complete! echo-dev-host now uses your app's echo lib versions.\n"));
|
|
58
57
|
console.log(chalk.gray('You can now run "npm start" to start your Echo app.\n'));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync-dev-host-to-app.js","sourceRoot":"","sources":["../src/sync-dev-host-to-app.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,OAAO;IACjD,MAAM,CAAU,WAAW,GACvB,2GAA2G,CAAC;IAEhH,KAAK,CAAC,GAAG;QACL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;QAE3F,oCAAoC;QACpC,MAAM,eAAe,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CACT,KAAK,CAAC,GAAG,CACL,0HAA0H,CAC7H,CACJ,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAC/B,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,EACd,UAAU,EACV,UAAU,EACV,KAAK,EACL,eAAe,EACf,cAAc,CACjB,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACjD,MAAM,qBAAqB,CAAC;YACxB,cAAc;YACd,UAAU,EAAE,eAAe;YAC3B,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAC1G,CAAC;QAEF,oEAAoE;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3F,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAE7E,MAAM,mBAAmB,CAAC;YACtB,cAAc;YACd,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,2BAA2B,CAAC;YAC1E,cAAc,EAAE,WAAW;
|
|
1
|
+
{"version":3,"file":"sync-dev-host-to-app.js","sourceRoot":"","sources":["../src/sync-dev-host-to-app.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAC/F,OAAO,EAAE,mBAAmB,EAAE,MAAM,6CAA6C,CAAC;AAClF,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,OAAO;IACjD,MAAM,CAAU,WAAW,GACvB,2GAA2G,CAAC;IAEhH,KAAK,CAAC,GAAG;QACL,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;QAE3F,oCAAoC;QACpC,MAAM,eAAe,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,CACT,KAAK,CAAC,GAAG,CACL,0HAA0H,CAC7H,CACJ,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,2BAA2B;QAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAC/B,OAAO,CAAC,GAAG,EAAE,EACb,cAAc,EACd,UAAU,EACV,UAAU,EACV,KAAK,EACL,eAAe,EACf,cAAc,CACjB,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACjD,MAAM,qBAAqB,CAAC;YACxB,cAAc;YACd,UAAU,EAAE,eAAe;YAC3B,WAAW,EAAE,KAAK;SACrB,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAC1G,CAAC;QAEF,oEAAoE;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;QAC3F,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,6BAA6B,CAAC,CAAC;QAE7E,MAAM,mBAAmB,CAAC;YACtB,cAAc;YACd,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,2BAA2B,CAAC;YAC1E,cAAc,EAAE,WAAW;SAC9B,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC,CAAC;QAC3G,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC,CAAC;IACrF,CAAC;;AAGL,gBAAgB,CAAC,GAAG,EAAE,CAAC"}
|
|
@@ -1,20 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Build mode for echo-dev-host
|
|
3
|
-
* - 'dev': Standard development build (default)
|
|
4
|
-
* - 'prod': Production build using max(consumer, devHost) versions
|
|
5
|
-
* - 'sync': Force dev host to match consumer app versions exactly
|
|
6
|
-
*/
|
|
7
|
-
export type BuildMode = 'dev' | 'prod' | 'sync';
|
|
8
1
|
/**
|
|
9
2
|
* Builds and copies the Echo Dev Host application for local development or production use.
|
|
10
3
|
*
|
|
11
4
|
* This function performs the following steps:
|
|
12
5
|
* 1. Removes and recreates a temporary folder for the dev host.
|
|
13
6
|
* 2. Copies the echo-dev-host source files to the temporary folder.
|
|
14
|
-
* 3.
|
|
15
|
-
* -
|
|
16
|
-
* -
|
|
17
|
-
* - 'dev': Uses original dev host versions
|
|
7
|
+
* 3. Overrides echo library dependencies:
|
|
8
|
+
* - Production builds: Uses max(consumer, devHost) versions
|
|
9
|
+
* - Development builds: Forces exact consumer app versions
|
|
18
10
|
* 4. Installs dependencies and builds the dev host application.
|
|
19
11
|
* 5. Copies the build output to the specified final output directory.
|
|
20
12
|
* 6. Cleans up the temporary folder after the build process.
|
|
@@ -23,16 +15,16 @@ export type BuildMode = 'dev' | 'prod' | 'sync';
|
|
|
23
15
|
* @param params.cliNodeModules - Path to the node_modules directory containing echo-dev-host.
|
|
24
16
|
* @param params.tmpDevHostFolder - Path to the temporary folder used for building the dev host.
|
|
25
17
|
* @param params.finalOutputDir - Path to the directory where the build output should be copied.
|
|
26
|
-
* @param params.
|
|
18
|
+
* @param params.isProdBuild - Whether this is a production build (default: false)
|
|
27
19
|
*
|
|
28
20
|
* @remarks
|
|
29
21
|
* - Exits the process if a suitable consumer app package.json cannot be found.
|
|
30
22
|
*/
|
|
31
|
-
export declare function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, finalOutputDir,
|
|
23
|
+
export declare function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, finalOutputDir, isProdBuild }: {
|
|
32
24
|
cliNodeModules: string;
|
|
33
25
|
tmpDevHostFolder: string;
|
|
34
26
|
finalOutputDir: string;
|
|
35
|
-
|
|
27
|
+
isProdBuild?: boolean;
|
|
36
28
|
}): Promise<void>;
|
|
37
29
|
/**
|
|
38
30
|
* Determines the versions of Echo libraries to use for a production build of the dev host,
|
|
@@ -13,10 +13,9 @@ import { printEchoLibsVersions } from '../../utils/printEchoLibsVersions.js';
|
|
|
13
13
|
* This function performs the following steps:
|
|
14
14
|
* 1. Removes and recreates a temporary folder for the dev host.
|
|
15
15
|
* 2. Copies the echo-dev-host source files to the temporary folder.
|
|
16
|
-
* 3.
|
|
17
|
-
* -
|
|
18
|
-
* -
|
|
19
|
-
* - 'dev': Uses original dev host versions
|
|
16
|
+
* 3. Overrides echo library dependencies:
|
|
17
|
+
* - Production builds: Uses max(consumer, devHost) versions
|
|
18
|
+
* - Development builds: Forces exact consumer app versions
|
|
20
19
|
* 4. Installs dependencies and builds the dev host application.
|
|
21
20
|
* 5. Copies the build output to the specified final output directory.
|
|
22
21
|
* 6. Cleans up the temporary folder after the build process.
|
|
@@ -25,12 +24,12 @@ import { printEchoLibsVersions } from '../../utils/printEchoLibsVersions.js';
|
|
|
25
24
|
* @param params.cliNodeModules - Path to the node_modules directory containing echo-dev-host.
|
|
26
25
|
* @param params.tmpDevHostFolder - Path to the temporary folder used for building the dev host.
|
|
27
26
|
* @param params.finalOutputDir - Path to the directory where the build output should be copied.
|
|
28
|
-
* @param params.
|
|
27
|
+
* @param params.isProdBuild - Whether this is a production build (default: false)
|
|
29
28
|
*
|
|
30
29
|
* @remarks
|
|
31
30
|
* - Exits the process if a suitable consumer app package.json cannot be found.
|
|
32
31
|
*/
|
|
33
|
-
export async function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, finalOutputDir,
|
|
32
|
+
export async function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, finalOutputDir, isProdBuild = false }) {
|
|
34
33
|
console.log(`${chalk.cyan.bold('echo-dev-host')} - by Echo Core Team`);
|
|
35
34
|
console.log('Minimalistic host application for local development of Echo applications.\n');
|
|
36
35
|
console.log(figlet.textSync('Echo Dev Host', {
|
|
@@ -40,8 +39,7 @@ export async function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, fi
|
|
|
40
39
|
}));
|
|
41
40
|
const devHostSrc = path.join(cliNodeModules, 'lib', 'echo-dev-host');
|
|
42
41
|
const buildOutput = path.join(tmpDevHostFolder, ECHO_HOST_BUILD_OUTPUT_FOLDER);
|
|
43
|
-
|
|
44
|
-
if (mode === 'prod') {
|
|
42
|
+
if (isProdBuild) {
|
|
45
43
|
console.log(chalk.blueBright.bold(`\n[echo-dev-host] Building the echo app for Production.\n`));
|
|
46
44
|
}
|
|
47
45
|
// Always remove and recreate the temporary folder
|
|
@@ -60,35 +58,39 @@ export async function buildAndCopyDevHost({ cliNodeModules, tmpDevHostFolder, fi
|
|
|
60
58
|
console.log('Could not find a package.json with supported echo libs. Supported libs are:', SUPPORTED_ECHO_LIBS.join(', '));
|
|
61
59
|
process.exit(1);
|
|
62
60
|
}
|
|
63
|
-
if (
|
|
61
|
+
if (isProdBuild) {
|
|
64
62
|
echoLibVersionsToUse = await determineEchoLibVersionsForProdBuild({
|
|
65
63
|
appPkgPath,
|
|
66
64
|
tmpDevHostFolder
|
|
67
65
|
});
|
|
68
66
|
}
|
|
69
|
-
else
|
|
67
|
+
else {
|
|
70
68
|
echoLibVersionsToUse = await syncDevHostToConsumerVersions({
|
|
71
69
|
appPkgPath,
|
|
72
70
|
tmpDevHostFolder
|
|
73
71
|
});
|
|
74
72
|
}
|
|
75
73
|
await printEchoLibsVersions({
|
|
76
|
-
devHostPkgPath:
|
|
74
|
+
devHostPkgPath: path.join(tmpDevHostFolder, 'package.json'),
|
|
77
75
|
appPkgPath: appPkgPath,
|
|
78
|
-
fetchLatest:
|
|
79
|
-
echoLibVersionsToUse:
|
|
76
|
+
fetchLatest: !isProdBuild,
|
|
77
|
+
echoLibVersionsToUse: isProdBuild ? echoLibVersionsToUse : undefined
|
|
80
78
|
});
|
|
81
79
|
execSync('npm install', { cwd: tmpDevHostFolder, stdio: 'inherit' });
|
|
82
80
|
execSync('npm run build', { cwd: tmpDevHostFolder, stdio: 'inherit' });
|
|
83
81
|
// 3. Copy build output to final output directory
|
|
84
82
|
console.log(chalk.magentaBright.bold(`\n[echo-dev-host] Copying build output back to ${chalk.yellow(finalOutputDir)}...\n`));
|
|
85
83
|
fs.copySync(buildOutput, finalOutputDir);
|
|
84
|
+
// 4. Copy package.json to final output directory so version display works
|
|
85
|
+
const tmpPackageJsonPath = path.join(tmpDevHostFolder, 'package.json');
|
|
86
|
+
const finalPackageJsonPath = path.join(finalOutputDir, 'package.json');
|
|
87
|
+
fs.copySync(tmpPackageJsonPath, finalPackageJsonPath);
|
|
86
88
|
if (fs.existsSync(tmpDevHostFolder)) {
|
|
87
89
|
console.log(chalk.yellowBright.bold(`\n[echo-dev-host] Removing temporary folder "${tmpDevHostFolder}" used for the build...\n`));
|
|
88
90
|
fs.removeSync(tmpDevHostFolder);
|
|
89
91
|
}
|
|
90
92
|
console.log(chalk.green.bold('[echo-dev-host] Build and copy complete!\n'));
|
|
91
|
-
if (
|
|
93
|
+
if (!isProdBuild) {
|
|
92
94
|
console.log(chalk.green.bold('[echo-dev-host] Now you can start your Echo app with "npm start"\n'));
|
|
93
95
|
}
|
|
94
96
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildAndCopyDevHost.js","sourceRoot":"","sources":["../../../src/tools/buildScripts/buildAndCopyDevHost.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,2CAA2C,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"buildAndCopyDevHost.js","sourceRoot":"","sources":["../../../src/tools/buildScripts/buildAndCopyDevHost.ts"],"names":[],"mappings":"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"}
|