@equinor/echo-cli 0.20.0-beta-1 → 0.20.0-beta-3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,4 +5,4 @@ import { EchoModuleConfig } from '../../common/echoModuleConfig.js';
5
5
  * @param - Additional options (https://webpack.js.org/configuration/dev-server/)
6
6
  * @returns {WebpackDevServerOptions} A settings object.
7
7
  */
8
- export declare function defineDevServer(current: string, root: string, echoModuleConfig: EchoModuleConfig): WebpackDevServer.Configuration;
8
+ export declare function defineDevServer(current: string, root: string, modulePath: string, echoModuleConfig: EchoModuleConfig): WebpackDevServer.Configuration;
@@ -5,7 +5,7 @@ import * as path from 'path';
5
5
  * @param - Additional options (https://webpack.js.org/configuration/dev-server/)
6
6
  * @returns {WebpackDevServerOptions} A settings object.
7
7
  */
8
- export function defineDevServer(current, root, echoModuleConfig) {
8
+ export function defineDevServer(current, root, modulePath, echoModuleConfig) {
9
9
  const publicPath = path.join(current, 'build');
10
10
  const { port, host, open, logging } = echoModuleConfig.server;
11
11
  const { stats } = echoModuleConfig.devMiddleware;
@@ -31,6 +31,9 @@ export function defineDevServer(current, root, echoModuleConfig) {
31
31
  index: true,
32
32
  stats
33
33
  },
34
+ server: {
35
+ type: 'https'
36
+ },
34
37
  setupMiddlewares: (middlewares, devServer) => {
35
38
  if (!devServer.app) {
36
39
  throw new Error('webpack-dev-server is not defined');
@@ -43,20 +46,15 @@ export function defineDevServer(current, root, echoModuleConfig) {
43
46
  return middlewares;
44
47
  },
45
48
  client: {
49
+ // overlay: {
50
+ // errors: true,
51
+ // warnings: false
52
+ // },
46
53
  logging
47
54
  },
48
55
  historyApiFallback: true,
49
56
  open,
50
- compress: true,
51
- server: {
52
- type: 'https', // Enable HTTPS
53
- options: {
54
- // You can specify custom certificate options here if needed
55
- // key: fs.readFileSync('path/to/server.key'),
56
- // cert: fs.readFileSync('path/to/server.crt'),
57
- // ca: fs.readFileSync('path/to/ca.pem'),
58
- }
59
- }
57
+ compress: true
60
58
  };
61
59
  }
62
60
  //# sourceMappingURL=devServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"devServer.js","sourceRoot":"","sources":["../../../../src/config/webpack/configBuilders/devServer.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC3B,OAAe,EACf,IAAY,EACZ,gBAAkC;IAElC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC;IAC9D,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,aAAa,CAAC;IAEjD,OAAO;QACH,IAAI;QACJ,IAAI;QACJ,MAAM,EAAE;YACJ;gBACI,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,GAAG;aAClB;YACD;gBACI,SAAS,EAAE,UAAU;gBACrB,KAAK,EAAE,IAAI;aACd;SACJ;QACD,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,WAAW,EAAE,IAAI;YACjB,UAAU;YACV,KAAK,EAAE,IAAI;YACX,KAAK;SACR;QACD,gBAAgB,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACzD,CAAC;YAED,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAE3E,WAAW,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,aAAa,CAAC;aAC/D,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,MAAM,EAAE;YACJ,OAAO;SACV;QACD,kBAAkB,EAAE,IAAI;QACxB,IAAI;QACJ,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE;YACJ,IAAI,EAAE,OAAO,EAAE,eAAe;YAC9B,OAAO,EAAE;YACL,4DAA4D;YAC5D,8CAA8C;YAC9C,+CAA+C;YAC/C,yCAAyC;aAC5C;SACJ;KACJ,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"devServer.js","sourceRoot":"","sources":["../../../../src/config/webpack/configBuilders/devServer.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC3B,OAAe,EACf,IAAY,EACZ,UAAkB,EAClB,gBAAkC;IAElC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,MAAM,CAAC;IAC9D,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,CAAC,aAAa,CAAC;IAEjD,OAAO;QACH,IAAI;QACJ,IAAI;QACJ,MAAM,EAAE;YACJ;gBACI,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,GAAG;aAClB;YACD;gBACI,SAAS,EAAE,UAAU;gBACrB,KAAK,EAAE,IAAI;aACd;SACJ;QACD,GAAG,EAAE,IAAI;QACT,UAAU,EAAE,IAAI;QAChB,aAAa,EAAE;YACX,WAAW,EAAE,IAAI;YACjB,UAAU;YACV,KAAK,EAAE,IAAI;YACX,KAAK;SACR;QACD,MAAM,EAAE;YACJ,IAAI,EAAE,OAAO;SAChB;QACD,gBAAgB,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACzD,CAAC;YAED,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAE3E,WAAW,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,GAAG;gBACT,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,GAAG,aAAa,CAAC;aAC/D,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;QACvB,CAAC;QACD,MAAM,EAAE;YACJ,aAAa;YACb,oBAAoB;YACpB,sBAAsB;YACtB,KAAK;YACL,OAAO;SACV;QACD,kBAAkB,EAAE,IAAI;QACxB,IAAI;QACJ,QAAQ,EAAE,IAAI;KACjB,CAAC;AACN,CAAC"}
@@ -3,7 +3,7 @@ export function defineOutput(options) {
3
3
  const { manifest, chunk } = options.echoModuleConfig;
4
4
  const shortName = manifest.shortName;
5
5
  return {
6
- clean: true,
6
+ clean: options.isProduction,
7
7
  path: path.join(options.currentDir, 'build'),
8
8
  filename: chunk ? `${shortName}-main.js` : getFileName(options.main), //`${shortName}.echo.bundle.js`,
9
9
  library: shortName,
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../../src/config/webpack/configBuilders/output.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AA0BxB,MAAM,UAAU,YAAY,CAAC,OAA2B;IACpD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAErD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;IACrC,OAAO;QACH,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC;QAC5C,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,gCAAgC;QACtG,OAAO,EAAE,SAAS;QAClB,aAAa,EAAE,KAAK;QACpB,wDAAwD;QACxD,oFAAoF;KACvF,CAAC;AACN,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,OAAO,QAAQ,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../../../src/config/webpack/configBuilders/output.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AA0BxB,MAAM,UAAU,YAAY,CAAC,OAA2B;IACpD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAErD,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;IACrC,OAAO;QACH,KAAK,EAAE,OAAO,CAAC,YAAY;QAC3B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC;QAC5C,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,gCAAgC;QACtG,OAAO,EAAE,SAAS;QAClB,aAAa,EAAE,KAAK;QACpB,wDAAwD;QACxD,oFAAoF;KACvF,CAAC;AACN,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAAgB;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrC,OAAO,QAAQ,CAAC;AACpB,CAAC"}
@@ -2,7 +2,7 @@ import WebpackDevServer from 'webpack-dev-server';
2
2
  import { merge } from 'webpack-merge';
3
3
  import { defineDevServer } from './configBuilders/devServer.js';
4
4
  export function devServer(compiler, options) {
5
- const defaultDevServerOptions = defineDevServer(options.currentDir, options.wwwRoot, options.echoModuleConfig);
5
+ const defaultDevServerOptions = defineDevServer(options.currentDir, options.wwwRoot, options.echoModuleConfig.manifest.path, options.echoModuleConfig);
6
6
  let devServerOptionsToUse = defaultDevServerOptions;
7
7
  if (compiler.options.devServer) {
8
8
  console.log('EchoCli: Merging devServer values with custom config');
@@ -1 +1 @@
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,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE/G,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
+ {"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"}
package/lib/cpc/.env ADDED
File without changes
@@ -0,0 +1,3 @@
1
+ * text=auto
2
+ *.sh text eol=lf
3
+ .env text eol=lf
@@ -0,0 +1,22 @@
1
+ {
2
+ "bundler": "webpack",
3
+ "manifest": {
4
+ "name": "cpc",
5
+ "key": "cpc",
6
+ "shortName": "cpc",
7
+ "path": "/cpc",
8
+ "description": "",
9
+ "private": false,
10
+ "fileUri": "module-url-placeholder"
11
+ },
12
+ "server": {
13
+ "contentBase": "/build",
14
+ "port": 3000,
15
+ "open": true,
16
+ "host": "localhost",
17
+ "logging": "none"
18
+ },
19
+ "devMiddleware": {
20
+ "stats": "errors-warnings"
21
+ }
22
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "moduleId": "<<------Insert moduleId here ------>>"
3
+ }
package/lib/cpc/env.sh ADDED
@@ -0,0 +1,54 @@
1
+ # Script copied from echopedia to make environment variables work in an app service. Using build folder instead of public folder.
2
+ # The content of the .gitattributes file is needed so this script will work for both linux and windows.
3
+
4
+ #!/bin/bash
5
+
6
+ #https://www.freecodecamp.org/news/how-to-implement-runtime-environment-variables-with-create-react-app-docker-and-nginx-7f9d42a91d70/
7
+ #
8
+
9
+ # Recreate config file
10
+ rm -rf ./env-config.js
11
+ touch ./env-config.js
12
+
13
+ echo "creating env-config.js"
14
+
15
+ # Add assignment
16
+ echo "window._env_ = {" >> ./env-config.js
17
+
18
+ # Read each line in .env file
19
+ # Each line represents key=value pairs
20
+ while read -r line || [[ -n "$line" ]];
21
+ do
22
+ #only process lines containting =
23
+ if [[ $line == *"="* ]]; then
24
+
25
+ # Split env variables by character `=`
26
+ if printf '%s\n' "$line" | grep -q -e '='; then
27
+ varname=$(printf '%s\n' "$line" | sed -e 's/=.*//')
28
+ varvalue=$(printf '%s\n' "$line" | sed -e 's/^[^=]*=//')
29
+ fi
30
+
31
+ # Read value of current variable if exists as Environment variable
32
+ value=$(printf '%s\n' "${!varname}")
33
+ # Otherwise use value from .env file
34
+ [[ -z $value ]] && value=${varvalue}
35
+
36
+ # Append configuration property to JS file
37
+ echo " $varname: \"$value\"," >> ./env-config.js
38
+
39
+ #print variables
40
+ valueObfuscated=$(printf '%s' "$value" | cut -c 1-3)
41
+ #echo " $varname: \"$value\"," #print the environment variables
42
+ echo " $varname=\"$valueObfuscated***\"," #print the environment variables obfuscated
43
+ fi
44
+ done < .env
45
+
46
+ echo "}" >> ./env-config.js
47
+
48
+ #if directory exists, copy to public folder. Needed for dev enironment (npm start)
49
+ if [ -d "build" ]; then
50
+ rm -rf ./build/env-config.js
51
+ cp ./env-config.js ./build/env-config.js
52
+ fi
53
+
54
+ echo "done creating env-config.js"