@equinor/echo-cli 1.0.2 → 1.0.3-beta-0

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.
Files changed (186) hide show
  1. package/README.md +354 -354
  2. package/package.json +110 -110
  3. package/templates/echoAppTemplate/.gitattributes +3 -3
  4. package/templates/echoAppTemplate/package.json +35 -35
  5. package/templates/echoAppTemplate/readme.md +41 -41
  6. package/templates/echoAppTemplate/tsconfig.json +25 -25
  7. package/templates/echoAppTemplateTutorial/.gitattributes +3 -3
  8. package/templates/echoAppTemplateTutorial/package.json +36 -36
  9. package/templates/echoAppTemplateTutorial/readme.md +41 -41
  10. package/templates/echoAppTemplateTutorial/tsconfig.json +25 -25
  11. package/templates/echoLibraryTemplate/package.json +35 -35
  12. package/templates/echoLibraryTemplate/public/index.html +21 -21
  13. package/templates/echoLibraryTemplate/readme.md +1 -1
  14. package/templates/echoPluginTemplate/package.json +35 -35
  15. package/templates/echoPluginTemplate/public/index.html +21 -21
  16. package/templates/echoPluginTemplate/readme.md +1 -1
  17. package/lib/__test__/utils/merg.test.d.ts +0 -1
  18. package/lib/__test__/utils/merg.test.js +0 -29
  19. package/lib/__test__/utils/merg.test.js.map +0 -1
  20. package/lib/config/common/buildAndCopyEchoHostForProd.d.ts +0 -16
  21. package/lib/config/common/buildAndCopyEchoHostForProd.js +0 -38
  22. package/lib/config/common/buildAndCopyEchoHostForProd.js.map +0 -1
  23. package/lib/config/common/echoManifest.d.ts +0 -3
  24. package/lib/config/common/echoManifest.js +0 -45
  25. package/lib/config/common/echoManifest.js.map +0 -1
  26. package/lib/config/common/echoModuleConfig.d.ts +0 -31
  27. package/lib/config/common/echoModuleConfig.js +0 -34
  28. package/lib/config/common/echoModuleConfig.js.map +0 -1
  29. package/lib/config/common/echoModuleId.d.ts +0 -5
  30. package/lib/config/common/echoModuleId.js +0 -15
  31. package/lib/config/common/echoModuleId.js.map +0 -1
  32. package/lib/config/common/extensions.d.ts +0 -1
  33. package/lib/config/common/extensions.js +0 -2
  34. package/lib/config/common/extensions.js.map +0 -1
  35. package/lib/config/common/getCurrentIndexFile.d.ts +0 -2
  36. package/lib/config/common/getCurrentIndexFile.js +0 -11
  37. package/lib/config/common/getCurrentIndexFile.js.map +0 -1
  38. package/lib/config/common/getPackageJson.d.ts +0 -1
  39. package/lib/config/common/getPackageJson.js +0 -7
  40. package/lib/config/common/getPackageJson.js.map +0 -1
  41. package/lib/config/common/https.d.ts +0 -6
  42. package/lib/config/common/https.js +0 -16
  43. package/lib/config/common/https.js.map +0 -1
  44. package/lib/config/common/initOptions.d.ts +0 -26
  45. package/lib/config/common/initOptions.js +0 -32
  46. package/lib/config/common/initOptions.js.map +0 -1
  47. package/lib/config/common/ssl.d.ts +0 -7
  48. package/lib/config/common/ssl.js +0 -76
  49. package/lib/config/common/ssl.js.map +0 -1
  50. package/lib/config/common/updateEnv.d.ts +0 -6
  51. package/lib/config/common/updateEnv.js +0 -16
  52. package/lib/config/common/updateEnv.js.map +0 -1
  53. package/lib/config/webpack/config.d.ts +0 -3
  54. package/lib/config/webpack/config.js +0 -36
  55. package/lib/config/webpack/config.js.map +0 -1
  56. package/lib/config/webpack/configBuilders/devServer.d.ts +0 -8
  57. package/lib/config/webpack/configBuilders/devServer.js +0 -60
  58. package/lib/config/webpack/configBuilders/devServer.js.map +0 -1
  59. package/lib/config/webpack/configBuilders/entry.d.ts +0 -12
  60. package/lib/config/webpack/configBuilders/entry.js +0 -13
  61. package/lib/config/webpack/configBuilders/entry.js.map +0 -1
  62. package/lib/config/webpack/configBuilders/module.d.ts +0 -8
  63. package/lib/config/webpack/configBuilders/module.js +0 -124
  64. package/lib/config/webpack/configBuilders/module.js.map +0 -1
  65. package/lib/config/webpack/configBuilders/optimization.d.ts +0 -7
  66. package/lib/config/webpack/configBuilders/optimization.js +0 -30
  67. package/lib/config/webpack/configBuilders/optimization.js.map +0 -1
  68. package/lib/config/webpack/configBuilders/output.d.ts +0 -12
  69. package/lib/config/webpack/configBuilders/output.js +0 -20
  70. package/lib/config/webpack/configBuilders/output.js.map +0 -1
  71. package/lib/config/webpack/configBuilders/plugins.d.ts +0 -10
  72. package/lib/config/webpack/configBuilders/plugins.js +0 -29
  73. package/lib/config/webpack/configBuilders/plugins.js.map +0 -1
  74. package/lib/config/webpack/echoWebpackModule.d.ts +0 -2
  75. package/lib/config/webpack/echoWebpackModule.js +0 -47
  76. package/lib/config/webpack/echoWebpackModule.js.map +0 -1
  77. package/lib/config/webpack/server.d.ts +0 -3
  78. package/lib/config/webpack/server.js +0 -22
  79. package/lib/config/webpack/server.js.map +0 -1
  80. package/lib/const/common.d.ts +0 -6
  81. package/lib/const/common.js +0 -15
  82. package/lib/const/common.js.map +0 -1
  83. package/lib/echo-build-dev-host.d.ts +0 -6
  84. package/lib/echo-build-dev-host.js +0 -19
  85. package/lib/echo-build-dev-host.js.map +0 -1
  86. package/lib/echo-build.d.ts +0 -34
  87. package/lib/echo-build.js +0 -83
  88. package/lib/echo-build.js.map +0 -1
  89. package/lib/echo-create.d.ts +0 -16
  90. package/lib/echo-create.js +0 -35
  91. package/lib/echo-create.js.map +0 -1
  92. package/lib/echo-dev-host/.env +0 -29
  93. package/lib/echo-dev-host/README.md +0 -121
  94. package/lib/echo-dev-host/babel.config.js +0 -11
  95. package/lib/echo-dev-host/env.sh +0 -51
  96. package/lib/echo-dev-host/jest.config.js +0 -21
  97. package/lib/echo-dev-host/package-lock.json +0 -12464
  98. package/lib/echo-dev-host/package.json +0 -80
  99. package/lib/echo-dev-host/public/env-config.js +0 -17
  100. package/lib/echo-dev-host/public/index.css +0 -60
  101. package/lib/echo-dev-host/public/index.html +0 -21
  102. package/lib/echo-dev-host/src/api/api-plants.ts +0 -22
  103. package/lib/echo-dev-host/src/app.css +0 -12
  104. package/lib/echo-dev-host/src/app.tsx +0 -43
  105. package/lib/echo-dev-host/src/components/Home/Home.tsx +0 -23
  106. package/lib/echo-dev-host/src/components/Home/home.module.css +0 -38
  107. package/lib/echo-dev-host/src/components/dummySearchPanel/DummySearchPanel.tsx +0 -28
  108. package/lib/echo-dev-host/src/components/dummySearchPanel/dummySearchPanel.module.css +0 -13
  109. package/lib/echo-dev-host/src/components/legend.tsx +0 -3
  110. package/lib/echo-dev-host/src/images/frontpage-brand-placeholder.jpg +0 -0
  111. package/lib/echo-dev-host/src/index.tsx +0 -91
  112. package/lib/echo-dev-host/src/setupTests.ts +0 -25
  113. package/lib/echo-dev-host/src/utils/plants.test.ts +0 -33
  114. package/lib/echo-dev-host/src/utils/plants.ts +0 -12
  115. package/lib/echo-dev-host/src/utils/setupSkipAuth.ts +0 -43
  116. package/lib/echo-dev-host/tsconfig.json +0 -21
  117. package/lib/echo-dev-host/webpack.config.js +0 -145
  118. package/lib/echo-manifest.d.ts +0 -6
  119. package/lib/echo-manifest.js +0 -13
  120. package/lib/echo-manifest.js.map +0 -1
  121. package/lib/tools/buildScripts/buildAndCopyDevHost.d.ts +0 -29
  122. package/lib/tools/buildScripts/buildAndCopyDevHost.js +0 -135
  123. package/lib/tools/buildScripts/buildAndCopyDevHost.js.map +0 -1
  124. package/lib/tools/buildScripts/webpackBuilds.d.ts +0 -3
  125. package/lib/tools/buildScripts/webpackBuilds.js +0 -87
  126. package/lib/tools/buildScripts/webpackBuilds.js.map +0 -1
  127. package/lib/tools/create/copyFile.d.ts +0 -2
  128. package/lib/tools/create/copyFile.js +0 -16
  129. package/lib/tools/create/copyFile.js.map +0 -1
  130. package/lib/tools/create/createProject.d.ts +0 -2
  131. package/lib/tools/create/createProject.js +0 -83
  132. package/lib/tools/create/createProject.js.map +0 -1
  133. package/lib/tools/create/createSetTargetDirectory.d.ts +0 -1
  134. package/lib/tools/create/createSetTargetDirectory.js +0 -12
  135. package/lib/tools/create/createSetTargetDirectory.js.map +0 -1
  136. package/lib/tools/create/getAppTemplateName.d.ts +0 -1
  137. package/lib/tools/create/getAppTemplateName.js +0 -22
  138. package/lib/tools/create/getAppTemplateName.js.map +0 -1
  139. package/lib/tools/create/gitInit.d.ts +0 -1
  140. package/lib/tools/create/gitInit.js +0 -19
  141. package/lib/tools/create/gitInit.js.map +0 -1
  142. package/lib/tools/create/promptOptions.d.ts +0 -2
  143. package/lib/tools/create/promptOptions.js +0 -88
  144. package/lib/tools/create/promptOptions.js.map +0 -1
  145. package/lib/tools/create/updatePackageConfig.d.ts +0 -2
  146. package/lib/tools/create/updatePackageConfig.js +0 -28
  147. package/lib/tools/create/updatePackageConfig.js.map +0 -1
  148. package/lib/tools/create/updateReadme.d.ts +0 -2
  149. package/lib/tools/create/updateReadme.js +0 -23
  150. package/lib/tools/create/updateReadme.js.map +0 -1
  151. package/lib/types/createTypes.d.ts +0 -23
  152. package/lib/types/createTypes.js +0 -2
  153. package/lib/types/createTypes.js.map +0 -1
  154. package/lib/types/types.d.ts +0 -4
  155. package/lib/types/types.js +0 -2
  156. package/lib/types/types.js.map +0 -1
  157. package/lib/update-echo-libs.d.ts +0 -9
  158. package/lib/update-echo-libs.js +0 -188
  159. package/lib/update-echo-libs.js.map +0 -1
  160. package/lib/utils/findConsumerAppPackageJson.d.ts +0 -11
  161. package/lib/utils/findConsumerAppPackageJson.js +0 -55
  162. package/lib/utils/findConsumerAppPackageJson.js.map +0 -1
  163. package/lib/utils/findTopLevelNodeModulesWithCli.d.ts +0 -12
  164. package/lib/utils/findTopLevelNodeModulesWithCli.js +0 -28
  165. package/lib/utils/findTopLevelNodeModulesWithCli.js.map +0 -1
  166. package/lib/utils/getFile.d.ts +0 -34
  167. package/lib/utils/getFile.js +0 -72
  168. package/lib/utils/getFile.js.map +0 -1
  169. package/lib/utils/getFilePath.d.ts +0 -1
  170. package/lib/utils/getFilePath.js +0 -22
  171. package/lib/utils/getFilePath.js.map +0 -1
  172. package/lib/utils/getLatestPkgVersion.d.ts +0 -14
  173. package/lib/utils/getLatestPkgVersion.js +0 -30
  174. package/lib/utils/getLatestPkgVersion.js.map +0 -1
  175. package/lib/utils/logo.d.ts +0 -1
  176. package/lib/utils/logo.js +0 -12
  177. package/lib/utils/logo.js.map +0 -1
  178. package/lib/utils/merge.d.ts +0 -1
  179. package/lib/utils/merge.js +0 -8
  180. package/lib/utils/merge.js.map +0 -1
  181. package/lib/utils/printEchoLibsVersions.d.ts +0 -23
  182. package/lib/utils/printEchoLibsVersions.js +0 -162
  183. package/lib/utils/printEchoLibsVersions.js.map +0 -1
  184. package/lib/utils/timer.d.ts +0 -0
  185. package/lib/utils/timer.js +0 -2
  186. package/lib/utils/timer.js.map +0 -1
@@ -1,22 +0,0 @@
1
- import WebpackDevServer from 'webpack-dev-server';
2
- import { merge } from 'webpack-merge';
3
- import { defineDevServer } from './configBuilders/devServer.js';
4
- export function devServer(compiler, options) {
5
- const defaultDevServerOptions = defineDevServer(options.currentDir, options.wwwRoot, options.echoModuleConfig.manifest.path, options.echoModuleConfig);
6
- let devServerOptionsToUse = defaultDevServerOptions;
7
- if (compiler.options.devServer) {
8
- console.log('EchoCli: Merging devServer values with custom config');
9
- // Override any default devServer configs with the config in the project webpack.config.js
10
- devServerOptionsToUse = merge(defaultDevServerOptions, compiler.options.devServer);
11
- }
12
- const server = new WebpackDevServer(devServerOptionsToUse, compiler);
13
- server.startCallback((err) => {
14
- if (err) {
15
- console.error('Failed to start webpack dev-server: ' + err);
16
- }
17
- else {
18
- console.log(`Starting webpack dev server on https://${devServerOptionsToUse.host}:${devServerOptionsToUse.port}`);
19
- }
20
- });
21
- }
22
- //# sourceMappingURL=server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/config/webpack/server.ts"],"names":[],"mappings":"AACA,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,MAAM,UAAU,SAAS,CAAC,QAAkB,EAAE,OAA2B;IACrE,MAAM,uBAAuB,GAAG,eAAe,CAC3C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,EACtC,OAAO,CAAC,gBAAgB,CAC3B,CAAC;IAEF,IAAI,qBAAqB,GAAG,uBAAuB,CAAC;IACpD,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;QACpE,0FAA0F;QAC1F,qBAAqB,GAAG,KAAK,CAAC,uBAAuB,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,gBAAgB,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IAErE,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE;QACzB,IAAI,GAAG,EAAE,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,sCAAsC,GAAG,GAAG,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CACP,0CAA0C,qBAAqB,CAAC,IAAI,IAAI,qBAAqB,CAAC,IAAI,EAAE,CACvG,CAAC;QACN,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -1,6 +0,0 @@
1
- export declare const REQUIRED_REF = "echoDepLoader";
2
- export declare const ECHO_MODULE_ID_PATH = "/echoModuleId.json";
3
- export declare const ECHO_MODULE_CONFIG_PATH = "/echoModule.config.json";
4
- export declare const ECHO_HOST_BUILD_OUTPUT_FOLDER = "echo-dev-host-build";
5
- export declare const ECHO_HOST_TEMP_BUILD_FOLDER = "echo-dev-host-tmp";
6
- export declare const SUPPORTED_ECHO_LIBS: Readonly<Readonly<string>[]>;
@@ -1,15 +0,0 @@
1
- export const REQUIRED_REF = 'echoDepLoader';
2
- export const ECHO_MODULE_ID_PATH = '/echoModuleId.json';
3
- export const ECHO_MODULE_CONFIG_PATH = '/echoModule.config.json';
4
- export const ECHO_HOST_BUILD_OUTPUT_FOLDER = 'echo-dev-host-build';
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
- ];
15
- //# sourceMappingURL=common.js.map
@@ -1 +0,0 @@
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"}
@@ -1,6 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from '@oclif/core';
3
- export default class BuildDevHost extends Command {
4
- static description: string;
5
- run(): Promise<void>;
6
- }
@@ -1,19 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from '@oclif/core';
3
- import path from 'path';
4
- import { ECHO_HOST_BUILD_OUTPUT_FOLDER, ECHO_HOST_TEMP_BUILD_FOLDER } from './const/common.js';
5
- import { buildAndCopyDevHost } from './tools/buildScripts/buildAndCopyDevHost.js';
6
- export default class BuildDevHost extends Command {
7
- static description = 'Build echo-dev-host locally with current echo lib versions';
8
- async run() {
9
- const cliNodeModules = path.resolve(process.cwd(), 'node_modules', '@equinor', 'echo-cli');
10
- const finalOutput = path.join(cliNodeModules, ECHO_HOST_BUILD_OUTPUT_FOLDER);
11
- await buildAndCopyDevHost({
12
- cliNodeModules,
13
- tmpDevHostFolder: path.resolve(process.cwd(), ECHO_HOST_TEMP_BUILD_FOLDER),
14
- finalOutputDir: finalOutput
15
- });
16
- }
17
- }
18
- BuildDevHost.run();
19
- //# sourceMappingURL=echo-build-dev-host.js.map
@@ -1 +0,0 @@
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,4DAA4D,CAAC;IAElF,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,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"}
@@ -1,34 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from '@oclif/core';
3
- /**
4
- * @class CreateBundle
5
- * @extends Command
6
- * @description
7
- * Command-line utility for creating an Echo Bundle. This command provides options to serve the Echo Client,
8
- * build in development mode, copy the client to the build folder, and analyze the bundle with an interactive treemap.
9
- *
10
- * @flags
11
- * - `--serve, -s`: Add the serve Echo Client with the app.
12
- * - `--isDevelopment, -d`: Build in development mode (production is default).
13
- * - `--copy, -c`: Copy the client to the build folder.
14
- * - `--analyze, -b`: Analyze the bundle with an interactive treemap.
15
- *
16
- * @remarks
17
- * The command checks for the presence of the `echo-dev-host` folder before proceeding.
18
- * If not found, it prompts the user to build it. It also prints the versions of echo libraries used by the dev host.
19
- *
20
- * @example
21
- * ```sh
22
- * npx echo-build --serve --isDevelopment
23
- * ```
24
- */
25
- export default class CreateBundle extends Command {
26
- static description: string;
27
- static flags: {
28
- serve: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
29
- isDevelopment: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
30
- copy: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
31
- analyze: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
32
- };
33
- run(): Promise<void>;
34
- }
package/lib/echo-build.js DELETED
@@ -1,83 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command, Flags } from '@oclif/core';
3
- import chalk from 'chalk';
4
- import fs from 'fs-extra';
5
- import path from 'path';
6
- import { fileURLToPath } from 'url';
7
- import { ECHO_HOST_BUILD_OUTPUT_FOLDER } from './const/common.js';
8
- import { echoWebpackBuild } from './tools/buildScripts/webpackBuilds.js';
9
- import { findConsumerAppPackageJson } from './utils/findConsumerAppPackageJson.js';
10
- import { echoCliLogo } from './utils/logo.js';
11
- import { printEchoLibsVersions } from './utils/printEchoLibsVersions.js';
12
- /**
13
- * @class CreateBundle
14
- * @extends Command
15
- * @description
16
- * Command-line utility for creating an Echo Bundle. This command provides options to serve the Echo Client,
17
- * build in development mode, copy the client to the build folder, and analyze the bundle with an interactive treemap.
18
- *
19
- * @flags
20
- * - `--serve, -s`: Add the serve Echo Client with the app.
21
- * - `--isDevelopment, -d`: Build in development mode (production is default).
22
- * - `--copy, -c`: Copy the client to the build folder.
23
- * - `--analyze, -b`: Analyze the bundle with an interactive treemap.
24
- *
25
- * @remarks
26
- * The command checks for the presence of the `echo-dev-host` folder before proceeding.
27
- * If not found, it prompts the user to build it. It also prints the versions of echo libraries used by the dev host.
28
- *
29
- * @example
30
- * ```sh
31
- * npx echo-build --serve --isDevelopment
32
- * ```
33
- */
34
- export default class CreateBundle extends Command {
35
- static description = 'Creates Echo Bundle';
36
- static flags = {
37
- serve: Flags.boolean({
38
- char: 's',
39
- description: 'Add the serve Echo Client with app'
40
- }),
41
- isDevelopment: Flags.boolean({
42
- char: 'd',
43
- description: 'Production is default, add -d flag for development'
44
- }),
45
- copy: Flags.boolean({
46
- char: 'c',
47
- description: 'Will copy the client to the build folder'
48
- }),
49
- analyze: Flags.boolean({
50
- char: 'b',
51
- description: 'Provides an interactive treemap to inspect the bundle'
52
- })
53
- };
54
- async run() {
55
- const options = await this.parse(CreateBundle);
56
- const __filename = fileURLToPath(import.meta.url);
57
- const __dirname = path.dirname(__filename);
58
- const echoDevHostBuildPath = path.resolve(__dirname, `../${ECHO_HOST_BUILD_OUTPUT_FOLDER}`);
59
- if (options.flags.isDevelopment && !fs.existsSync(echoDevHostBuildPath)) {
60
- this.log(chalk.red(`\n[echo-cli] Did you forget to run: 'npx build-echo-dev-host' ?\n`));
61
- this.log(chalk.red(`\n[echo-cli] Could not start development server: The ${ECHO_HOST_BUILD_OUTPUT_FOLDER} folder was not found at ${echoDevHostBuildPath}.\n` +
62
- 'Please ensure echo-dev-host is built and present in node_modules/@equinor/echo-cli before running this command.\n'));
63
- process.exit(1);
64
- }
65
- echoCliLogo();
66
- console.log(chalk.cyan('echo-cli uses echo-dev-host as a minimalistic host application for local development of Echo applications'));
67
- if (options.flags.isDevelopment) {
68
- console.log(chalk.hex('#FFA500')('\nTo rebuild the echo dev host for local development, run:\n' + ' npx build-echo-dev-host\n'));
69
- console.log(chalk.hex('#FFA500')('To update your echo library dependencies to the latest versions, run:\n' +
70
- ' npx update-echo-libs\n'));
71
- const appPkgPath = findConsumerAppPackageJson(process.cwd());
72
- if (appPkgPath) {
73
- await printEchoLibsVersions({
74
- devHostPkgPath: path.resolve(path.resolve(__dirname, './echo-dev-host'), 'package.json'),
75
- appPkgPath
76
- });
77
- }
78
- }
79
- await echoWebpackBuild(options.flags, options.flags.isDevelopment);
80
- }
81
- }
82
- CreateBundle.run();
83
- //# sourceMappingURL=echo-build.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"echo-build.js","sourceRoot":"","sources":["../src/echo-build.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command } from '@oclif/core';
3
- export default class CreateApp extends Command {
4
- static description: string;
5
- static flags: {
6
- description: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
7
- git: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
8
- help: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<void>;
9
- install: import("@oclif/core/lib/interfaces/parser.js").BooleanFlag<boolean>;
10
- key: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
11
- name: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
12
- shortName: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
13
- templateName: import("@oclif/core/lib/interfaces/parser.js").OptionFlag<string | undefined, import("@oclif/core/lib/interfaces/parser.js").CustomOptions>;
14
- };
15
- run(): Promise<void>;
16
- }
@@ -1,35 +0,0 @@
1
- #!/usr/bin/env node
2
- import { Command, Flags } from '@oclif/core';
3
- import { createProject } from './tools/create/createProject.js';
4
- import { promptForMissingOptions } from './tools/create/promptOptions.js';
5
- import { echoCliLogo } from './utils/logo.js';
6
- export default class CreateApp extends Command {
7
- static description = 'Creates a new Echo app';
8
- static flags = {
9
- description: Flags.string({ char: 'd', description: 'App description' }),
10
- git: Flags.boolean({ char: 'g', description: 'Initialize git repository' }),
11
- help: Flags.help({ char: 'h' }),
12
- install: Flags.boolean({
13
- char: 'i',
14
- description: 'Install dev dependencies'
15
- }),
16
- key: Flags.string({ char: 'k', description: 'Key for app/tile' }),
17
- name: Flags.string({
18
- char: 'n',
19
- description: 'Name for app/tile(use quotes for spaces)'
20
- }),
21
- shortName: Flags.string({ char: 'N', description: 'App short name' }),
22
- templateName: Flags.string({
23
- char: 't',
24
- description: 'App template to use'
25
- })
26
- };
27
- async run() {
28
- const parsed = await this.parse(CreateApp);
29
- echoCliLogo();
30
- const options = await promptForMissingOptions(parsed.flags);
31
- await createProject(options);
32
- }
33
- }
34
- CreateApp.run();
35
- //# sourceMappingURL=echo-create.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"echo-create.js","sourceRoot":"","sources":["../src/echo-create.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,OAAO;IACnC,MAAM,CAAC,WAAW,GAAG,wBAAwB,CAAC;IAE9C,MAAM,CAAC,KAAK,GAAG;QAClB,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC;QACxE,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;QAC3E,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;QAC/B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC;YACnB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0BAA0B;SAC1C,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;QACjE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC;YACf,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,0CAA0C;SAC1D,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC;QACrE,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC;YACvB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,qBAAqB;SACrC,CAAC;KACL,CAAC;IAEK,KAAK,CAAC,GAAG;QACZ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3C,WAAW,EAAE,CAAC;QACd,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;;AAGL,SAAS,CAAC,GAAG,EAAE,CAAC"}
@@ -1,29 +0,0 @@
1
- /* eslint-disable */
2
-
3
- Never use PROCESS.ENV/process.env use env() instead. (Except for process.env.NODE_ENV)
4
- ---------------------------------
5
-
6
- Based on: https://www.freecodecamp.org/news/how-to-implement-runtime-environment-variables-with-create-react-app-docker-and-nginx-7f9d42a91d70/
7
-
8
- All variables in this files are converted to env() during build, and values here are replaced
9
- by environment variables if they exists. This is done by running the env.sh bash script before the
10
- build.
11
-
12
- env.sh generates env-config.js containing all the variables, which is included in index.html,
13
- and appended to Window._env_. env() is a shortcut for Window._env_ and should be used in code.
14
-
15
- NOTE: Seems like window._env_ is not available in a worker
16
-
17
- */
18
- WEBSITE_HOSTNAME=localhost:3000;
19
- REACT_APP_DEFAULT_CACHE_LOCATION=localstorage
20
- REACT_APP_API_URL=https://dt-echopedia-api-dev.azurewebsites.net
21
- REACT_APP_WEB_URL=https://dt-echopedia-web-dev.azurewebsites.net
22
- REACT_APP_WEB_PROD_URL=https://echo.equinor.com
23
- REACT_APP_AZURE_AD_TENNANT=StatoilSRM.onmicrosoft.com
24
- REACT_APP_AZURE_AD_TENNANT_ID=3aa4a235-b6e2-48d5-9195-7fcf05b459b0
25
- REACT_APP_AZURE_AD_CLIENT_ID=751d2504-0b66-4b78-9807-4b60525a14c6
26
- REACT_APP_API_CLIENT_ID=aef35d97-53d4-4fd0-adaf-c5a514b38436
27
- REACT_APP_APPINSIGHTS_CONNECTION_STRING=InstrumentationKey=e5299075-a00d-4012-96f9-42861e8d8a9e;IngestionEndpoint=https://northeurope-3.in.applicationinsights.azure.com/;LiveEndpoint=https://northeurope.livediagnostics.monitor.azure.com/;ApplicationId=a9b64222-d4a9-42e6-a615-7428fe1a26af
28
- REACT_APP_AZURE_BUILD_NUMBER=0.8.dev.9
29
- REACT_APP_LOGGER_ACTIVE=false
@@ -1,121 +0,0 @@
1
- # echo-dev-host
2
-
3
- **echo-dev-host** is a lightweight host application for developing and testing Echo Modules locally. It is shipped as source code with [`echo-cli`](../README.md) and provides a development shell that closely mimics the EchopediaWeb environment.
4
-
5
- ---
6
-
7
- ## What is echo-dev-host?
8
-
9
- - Provides a local "empty shell" of EchopediaWeb for rapid Echo Module development.
10
- - Ensures your module runs with the same dependencies and environment as production.
11
- - Supports hot module reloading for fast feedback during development.
12
- - Now shipped as source code, so you can update dependencies and rebuild locally—no need to wait for a new `echo-cli` release.
13
-
14
- ---
15
-
16
- ## New Workflow (from 2025)
17
-
18
- **You are now in control of the Echo library versions used by your dev host!**
19
-
20
- 1. **Develop Echo libraries** (`echo-core`, `echo-base`, `echo-utils`, etc.) in the EchopediaWeb monorepo.
21
- 2. **Release new versions** of these libraries from EchopediaWeb.
22
- 3. **echo-cli** now ships with the source code of `echo-dev-host` (formerly echo-client), not a pre-built version.
23
- 4. **Consumer project:**
24
- - Builds `echo-dev-host` locally using `npx build-echo-dev-host`
25
- - Can update Echo library dependencies locally using `npx update-echo-libs`
26
- - No need to bump and release `echo-cli` for every Echo library update—much more efficient and flexible.
27
-
28
- ---
29
-
30
- ## Getting Started
31
-
32
- ### Prerequisites
33
-
34
- - Node.js (see [root README](../../../README.md) for version requirements)
35
- - [`echo-cli`](../README.md) installed as a dev dependency in your Echo Module project
36
-
37
- ### Typical Workflow
38
-
39
- 1. **Install dependencies**
40
- In your Echo Module project:
41
-
42
- ```sh
43
- npm install
44
- ```
45
-
46
- 2. **Build echo-dev-host locally**
47
-
48
- ```sh
49
- npx build-echo-dev-host
50
- ```
51
-
52
- This will:
53
-
54
- - Copy `echo-dev-host` from `node_modules/@equinor/echo-cli` to your project root as `echo-dev-host-tmp`
55
- - Install dependencies and build `echo-dev-host`
56
- - Copy the build output back to `node_modules/@equinor/echo-cli`
57
-
58
- 3. **Start development server**
59
-
60
- ```sh
61
- npm start
62
- ```
63
-
64
- Your module will open in the browser, running inside the dev host.
65
-
66
- 4. **Update Echo library dependencies (optional)**
67
- To update the Echo libraries used by your dev host:
68
- ```sh
69
- npx update-echo-libs
70
- ```
71
- - You will be prompted for each Echo library to update to the latest or specify a version.
72
- - Use the `-a` flag to update all to the latest automatically:
73
- ```sh
74
- npx update-echo-libs -a
75
- ```
76
- - This updates dependencies and rebuilds `echo-dev-host`.
77
-
78
- ---
79
-
80
- ## Commands Reference
81
-
82
- - **`npx build-echo-dev-host`**
83
-
84
- - Builds the dev host locally with your current Echo library versions.
85
- - Should be run after installing or updating dependencies.
86
-
87
- - **`npx update-echo-libs`**
88
- - Prompts you to update Echo library dependencies in the dev host.
89
- - Rebuilds the dev host after updating.
90
- - Use `-a` to update all Echo libraries to the latest versions automatically.
91
-
92
- ---
93
-
94
- ## Why this new approach?
95
-
96
- - **No more waiting for echo-cli releases** just to get new Echo library versions.
97
- - **You control the dev host dependencies**—update and rebuild as needed.
98
- - **Faster, more flexible development** for all Echo teams.
99
-
100
- ---
101
-
102
- ## Troubleshooting
103
-
104
- - If you see errors about missing `echo-dev-host` build output, re-run:
105
- ```sh
106
- npx build-echo-dev-host
107
- ```
108
- - For dependency version mismatches, use:
109
- ```sh
110
- npx update-echo-libs
111
- ```
112
-
113
- ---
114
-
115
- ## More Information
116
-
117
- - [echo-cli documentation](../README.md)
118
- - [How to release new echo-cli versions](../README.md#how-to-make-a-new-release)
119
- - [EchopediaWeb monorepo documentation](../../../README.md)
120
-
121
- ---
@@ -1,11 +0,0 @@
1
- module.exports = {
2
- presets: ['@babel/preset-env', ['@babel/preset-react', {'runtime': 'automatic'}]],
3
- plugins: [
4
- '@babel/plugin-syntax-dynamic-import'
5
- ],
6
- env: {
7
- test: {
8
- plugins: ['@babel/plugin-transform-runtime'],
9
- },
10
- },
11
- };
@@ -1,51 +0,0 @@
1
- #!/bin/bash
2
-
3
- #https://www.freecodecamp.org/news/how-to-implement-runtime-environment-variables-with-create-react-app-docker-and-nginx-7f9d42a91d70/
4
- #
5
-
6
- # Recreate config file
7
- rm -rf ./env-config.js
8
- touch ./env-config.js
9
-
10
- echo "creating env-config.js"
11
-
12
- # Add assignment
13
- echo "window._env_ = {" >> ./env-config.js
14
-
15
- # Read each line in .env file
16
- # Each line represents key=value pairs
17
- while read -r line || [[ -n "$line" ]];
18
- do
19
- #only process lines containting =
20
- if [[ $line == *"="* ]]; then
21
-
22
- # Split env variables by character `=`
23
- if printf '%s\n' "$line" | grep -q -e '='; then
24
- varname=$(printf '%s\n' "$line" | sed -e 's/=.*//')
25
- varvalue=$(printf '%s\n' "$line" | sed -e 's/^[^=]*=//')
26
- fi
27
-
28
- # Read value of current variable if exists as Environment variable
29
- value=$(printf '%s\n' "${!varname}")
30
- # Otherwise use value from .env file
31
- [[ -z $value ]] && value=${varvalue}
32
-
33
- # Append configuration property to JS file
34
- echo " $varname: \"$value\"," >> ./env-config.js
35
-
36
- #print variables
37
- valueObfuscated=$(printf '%s' "$value" | cut -c 1-3)
38
- #echo " $varname: \"$value\"," #print the environment variables
39
- echo " $varname=\"$valueObfuscated***\"," #print the environment variables obfuscated
40
- fi
41
- done < .env
42
-
43
- echo "}" >> ./env-config.js
44
-
45
- #if directory exists, copy to public folder. Needed for dev enironment (npm start)
46
- if [ -d "public" ]; then
47
- rm -rf ./public/env-config.js
48
- cp ./env-config.js ./public/env-config.js
49
- fi
50
-
51
- echo "done creating env-config.js"
@@ -1,21 +0,0 @@
1
- module.exports = {
2
- testEnvironment: 'jsdom',
3
- moduleNameMapper: {
4
- '\\.css$': 'identity-obj-proxy',
5
- '\\.svg$': '<rootDir>/src/__mocks__/svgrMock.ts'
6
- },
7
- preset: 'ts-jest',
8
- coveragePathIgnorePatterns: ['src/types/*', 'src/index.ts', 'src/typings/*'],
9
- collectCoverageFrom: ['src/**/*.{js,jsx,ts,tsx}', '!<rootDir>/node_modules/'],
10
- coverageThreshold: {
11
- global: {
12
- lines: 90,
13
- statements: 90
14
- }
15
- },
16
- transform: {
17
- '^.+\\.(j|t)sx?$': 'ts-jest'
18
- },
19
- testMatch: ['**/__tests__/**/*.test.[jt]s?(x)', '**/?(*.)+(spec|test).[tj]s?(x)'],
20
- setupFilesAfterEnv: ['<rootDir>/src/setupTests.ts']
21
- };