@xarc/app-dev 10.0.11 → 10.0.12

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 (133) hide show
  1. package/bin/xrun.js +0 -1
  2. package/config/archetype.js +5 -5
  3. package/config/archetype.js.map +1 -1
  4. package/config/babel/babelrc-client.js +28 -28
  5. package/config/babel/babelrc-client.js.map +1 -1
  6. package/config/babel/babelrc-server.js +1 -1
  7. package/config/babel/babelrc-server.js.map +1 -1
  8. package/config/babel/babelrc.js +32 -32
  9. package/config/babel/babelrc.js.map +1 -1
  10. package/config/babel/common.js +2 -2
  11. package/config/babel/common.js.map +1 -1
  12. package/config/constants.js +1 -1
  13. package/config/constants.js.map +1 -1
  14. package/config/dev-proxy.js +8 -8
  15. package/config/dev-proxy.js.map +1 -1
  16. package/config/env-app.js +2 -2
  17. package/config/env-app.js.map +1 -1
  18. package/config/env-babel.js +3 -3
  19. package/config/env-babel.js.map +1 -1
  20. package/config/env-karma.js +2 -2
  21. package/config/env-karma.js.map +1 -1
  22. package/config/env-proxy.js +3 -3
  23. package/config/env-proxy.js.map +1 -1
  24. package/config/env-webpack.js +3 -3
  25. package/config/env-webpack.js.map +1 -1
  26. package/config/eslint/js/base.js +0 -1
  27. package/config/eslint/js/es5-node.js +0 -1
  28. package/config/eslint/js/es6-node.js +0 -1
  29. package/config/eslint/js/es6-react.js +0 -1
  30. package/config/eslint/js/es6-test.js +0 -1
  31. package/config/eslint/js/opt-eslint-require.js +0 -1
  32. package/config/jest/__mocks__/framework-mock.js +2 -3
  33. package/config/jest/__mocks__/framework-mock.js.map +1 -1
  34. package/config/jest/jest.config.js +1 -1
  35. package/config/jest/jest.config.js.map +1 -1
  36. package/config/karma/browser-settings.js +1 -1
  37. package/config/karma/browser-settings.js.map +1 -1
  38. package/config/karma/entry-xarc.js +0 -1
  39. package/config/karma/entry.js +0 -1
  40. package/config/karma/karma.conf.coverage.js +5 -5
  41. package/config/karma/karma.conf.coverage.js.map +1 -1
  42. package/config/karma/karma.conf.dev.js +2 -2
  43. package/config/karma/karma.conf.dev.js.map +1 -1
  44. package/config/karma/karma.conf.js +2 -2
  45. package/config/karma/karma.conf.js.map +1 -1
  46. package/config/karma/karma.conf.watch.js +4 -4
  47. package/config/karma/karma.conf.watch.js.map +1 -1
  48. package/config/karma/util/load-user-config.js +6 -6
  49. package/config/karma/util/load-user-config.js.map +1 -1
  50. package/config/mocha/setup.js +3 -4
  51. package/config/mocha/setup.js.map +1 -1
  52. package/config/options.js +23 -25
  53. package/config/options.js.map +1 -1
  54. package/config/user-config.js +4 -4
  55. package/config/user-config.js.map +1 -1
  56. package/lib/app-dev-middleware.js +2 -2
  57. package/lib/app-dev-middleware.js.map +1 -1
  58. package/lib/babel-run.js +2 -2
  59. package/lib/babel-run.js.map +1 -1
  60. package/lib/dev-admin/admin-http.js +9 -9
  61. package/lib/dev-admin/admin-http.js.map +1 -1
  62. package/lib/dev-admin/admin-server.js +65 -65
  63. package/lib/dev-admin/admin-server.js.map +1 -1
  64. package/lib/dev-admin/cdn-mock.js +7 -7
  65. package/lib/dev-admin/cdn-mock.js.map +1 -1
  66. package/lib/dev-admin/cleanup.js +3 -3
  67. package/lib/dev-admin/cleanup.js.map +1 -1
  68. package/lib/dev-admin/console-io.js +2 -2
  69. package/lib/dev-admin/console-io.js.map +1 -1
  70. package/lib/dev-admin/dev-http.js +6 -6
  71. package/lib/dev-admin/dev-http.js.map +1 -1
  72. package/lib/dev-admin/dev-server-start.js +5 -5
  73. package/lib/dev-admin/dev-server-start.js.map +1 -1
  74. package/lib/dev-admin/dev-server.js +1 -1
  75. package/lib/dev-admin/dev-server.js.map +1 -1
  76. package/lib/dev-admin/index.js +2 -2
  77. package/lib/dev-admin/index.js.map +1 -1
  78. package/lib/dev-admin/json-formatter-js.js +0 -1
  79. package/lib/dev-admin/log-view.js +0 -1
  80. package/lib/dev-admin/middleware.js +24 -24
  81. package/lib/dev-admin/middleware.js.map +1 -1
  82. package/lib/dev-admin/redbird-proxy.js +50 -50
  83. package/lib/dev-admin/redbird-proxy.js.map +1 -1
  84. package/lib/dev-admin/redbird-spawn.js +10 -10
  85. package/lib/dev-admin/redbird-spawn.js.map +1 -1
  86. package/lib/dev-tasks.d.ts +1 -1
  87. package/lib/dev-tasks.js +134 -133
  88. package/lib/dev-tasks.js.map +1 -1
  89. package/lib/fake-res.js +4 -4
  90. package/lib/fake-res.js.map +1 -1
  91. package/lib/index.js +2 -2
  92. package/lib/index.js.map +1 -1
  93. package/lib/module-processor.js +2 -2
  94. package/lib/module-processor.js.map +1 -1
  95. package/lib/stats-mapper.js +2 -2
  96. package/lib/stats-mapper.js.map +1 -1
  97. package/lib/stats-utils.js +2 -2
  98. package/lib/stats-utils.js.map +1 -1
  99. package/lib/tasks/eslint.js +29 -29
  100. package/lib/tasks/eslint.js.map +1 -1
  101. package/lib/tasks/package-json.js +6 -6
  102. package/lib/tasks/package-json.js.map +1 -1
  103. package/lib/utils.d.ts +1 -1
  104. package/lib/utils.js +20 -19
  105. package/lib/utils.js.map +1 -1
  106. package/package.json +7 -7
  107. package/require.js +0 -1
  108. package/scripts/l10n/flatten-messages.js +0 -1
  109. package/scripts/map-isomorphic-cdn.js +0 -1
  110. package/scripts/merge-isomorphic-assets.js +0 -1
  111. package/scripts/webpack5-jsonp-cdn.js +0 -1
  112. package/src/config/babel/babelrc-client.ts +25 -25
  113. package/src/config/babel/babelrc.ts +26 -26
  114. package/src/config/eslint/js/base.js +0 -1
  115. package/src/config/eslint/js/es5-node.js +0 -1
  116. package/src/config/eslint/js/es6-node.js +0 -1
  117. package/src/config/eslint/js/es6-react.js +0 -1
  118. package/src/config/eslint/js/es6-test.js +0 -1
  119. package/src/config/eslint/js/opt-eslint-require.js +0 -1
  120. package/src/config/jest/__mocks__/framework-mock.ts +3 -3
  121. package/src/config/karma/entry-xarc.js +0 -1
  122. package/src/config/karma/entry.js +0 -1
  123. package/src/config/karma/util/load-user-config.ts +2 -2
  124. package/src/config/mocha/setup.ts +2 -2
  125. package/src/config/options.ts +12 -14
  126. package/src/config/user-config.ts +1 -1
  127. package/src/lib/dev-admin/admin-server.ts +32 -32
  128. package/src/lib/dev-admin/json-formatter-js.js +0 -1
  129. package/src/lib/dev-admin/log-view.js +0 -1
  130. package/src/lib/dev-admin/redbird-proxy.ts +25 -23
  131. package/src/lib/dev-tasks.ts +110 -105
  132. package/src/lib/tasks/eslint.ts +26 -26
  133. package/src/lib/utils.ts +11 -10
@@ -4,7 +4,7 @@ import Fs from "fs";
4
4
  import Path from "path";
5
5
  import { jestTestDirectories, allSourceDirs } from "./constants";
6
6
  import { logger } from "../logger";
7
- import makeOptionalRequire from "optional-require";
7
+ import { makeOptionalRequire } from "optional-require";
8
8
 
9
9
  const optionalRequire = makeOptionalRequire(require);
10
10
 
@@ -27,8 +27,8 @@ const optionalRequire = makeOptionalRequire(require);
27
27
  function lint(options, xarcOptions) {
28
28
  const ext = options.ext ? ` --ext ${options.ext}` : "";
29
29
 
30
- const checkCustom = t => {
31
- const f = ["", ".json", ".yml", ".yaml", ".js"].find(e => {
30
+ const checkCustom = (t) => {
31
+ const f = ["", ".json", ".yml", ".yaml", ".js"].find((e) => {
32
32
  const x = Path.resolve(xarcOptions.cwd, Path.join(t, `.eslintrc${e}`));
33
33
  return Fs.existsSync(x);
34
34
  });
@@ -49,12 +49,12 @@ function lint(options, xarcOptions) {
49
49
  );
50
50
 
51
51
  const ignorePattern = options.ignorePatterns
52
- ? options.ignorePatterns.map(p => `--ignore-pattern ${p}`)
52
+ ? options.ignorePatterns.map((p) => `--ignore-pattern ${p}`)
53
53
  : "";
54
54
 
55
55
  const version = require("eslint/package.json")
56
56
  .version.split(".")
57
- .map(x => parseInt(x));
57
+ .map((x) => parseInt(x));
58
58
  const noUnmatchError = version[0] > 6 && version[1] > 8 ? ` --no-error-on-unmatched-pattern` : "";
59
59
 
60
60
  const commands = [
@@ -63,10 +63,10 @@ function lint(options, xarcOptions) {
63
63
  grouped.archetype.length > 0 &&
64
64
  `~$eslint${ext}${noUnmatchError} -c ${options.config} ${grouped.archetype.join(
65
65
  " "
66
- )} ${ignorePattern}`
66
+ )} ${ignorePattern}`,
67
67
  ];
68
68
 
69
- return Promise.resolve(commands.filter(x => x));
69
+ return Promise.resolve(commands.filter((x) => x));
70
70
  }
71
71
 
72
72
  /**
@@ -84,7 +84,7 @@ function eslintDisabledTasks() {
84
84
  return {
85
85
  lint: lintDisabled,
86
86
  "lint-server": lintDisabled,
87
- "lint-server-test": lintDisabled
87
+ "lint-server-test": lintDisabled,
88
88
  };
89
89
  }
90
90
 
@@ -99,7 +99,7 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
99
99
  const tasks = {};
100
100
 
101
101
  const config = xarcOptions.config;
102
- const eslintConfig = file => Path.join(config.eslint, file);
102
+ const eslintConfig = (file) => Path.join(config.eslint, file);
103
103
 
104
104
  if (!xarcOptions.options.eslint) {
105
105
  return eslintDisabledTasks();
@@ -110,7 +110,7 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
110
110
  // legacy src/client and src/server only setup?
111
111
  let isLegacySrc = false;
112
112
  try {
113
- const files = Fs.readdirSync("src").filter(x => !x.startsWith("."));
113
+ const files = Fs.readdirSync("src").filter((x) => !x.startsWith("."));
114
114
  isLegacySrc = files.sort().join("") === "clientserver";
115
115
  } catch (err) {
116
116
  //
@@ -120,8 +120,8 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
120
120
  "lint-client",
121
121
  hasTest && "lint-client-test",
122
122
  "lint-server",
123
- hasTestServer && "lint-server-test"
124
- ].filter(x => x);
123
+ hasTestServer && "lint-server-test",
124
+ ].filter((x) => x);
125
125
 
126
126
  Object.assign(tasks, {
127
127
  lint: xrun.concurrent(...lintTasks),
@@ -136,10 +136,10 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
136
136
  targets: isLegacySrc
137
137
  ? [AppMode.src.client, "templates"]
138
138
  : [AppMode.src.dir, "templates"],
139
- ignorePatterns: [AppMode.src.server]
139
+ ignorePatterns: [AppMode.src.server],
140
140
  },
141
141
  xarcOptions
142
- )
142
+ ),
143
143
  },
144
144
 
145
145
  "lint-server": {
@@ -149,11 +149,11 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
149
149
  {
150
150
  ext: ".js,.jsx,.ts,.tsx",
151
151
  config: eslintConfig(".eslintrc-node"),
152
- targets: [AppMode.src.server]
152
+ targets: [AppMode.src.server],
153
153
  },
154
154
  xarcOptions
155
- )
156
- }
155
+ ),
156
+ },
157
157
  });
158
158
 
159
159
  if (hasTest) {
@@ -164,11 +164,11 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
164
164
  {
165
165
  ext: ".js,.jsx,.ts,.tsx",
166
166
  config: eslintConfig(".eslintrc-react-test"),
167
- targets: ["test", ...jestTestDirectories.map(dir => `${dir}`)],
168
- ignorePatterns: ["test/server"]
167
+ targets: ["test", ...jestTestDirectories.map((dir) => `${dir}`)],
168
+ ignorePatterns: ["test/server"],
169
169
  },
170
170
  xarcOptions
171
- )
171
+ ),
172
172
  };
173
173
  }
174
174
 
@@ -182,10 +182,10 @@ export function eslint4Tasks(xarcOptions: any, xrun: any) {
182
182
  config: process.env.SERVER_ES6
183
183
  ? eslintConfig(".eslintrc-mocha-test-es6")
184
184
  : eslintConfig(".eslintrc-mocha-test"),
185
- targets: ["test/server"]
185
+ targets: ["test/server"],
186
186
  },
187
187
  xarcOptions
188
- )
188
+ ),
189
189
  };
190
190
  }
191
191
 
@@ -208,7 +208,7 @@ export function eslint7Tasks(xarcOptions: any, xrun: any) {
208
208
  desc: `Run eslint for your sources - require setup .eslintrc.js`,
209
209
  task: () => {
210
210
  const validDirs = allSourceDirs
211
- .map(d => {
211
+ .map((d) => {
212
212
  const dir = Path.join(xarcOptions.cwd, d);
213
213
  try {
214
214
  const stat = Fs.statSync(dir);
@@ -220,11 +220,11 @@ export function eslint7Tasks(xarcOptions: any, xrun: any) {
220
220
  }
221
221
  return "";
222
222
  })
223
- .filter(x => x)
223
+ .filter((x) => x)
224
224
  .join(" ");
225
225
  return xrun.exec(`eslint --ext .js,.ts,.jsx,.tsx ${validDirs}`);
226
- }
227
- }
226
+ },
227
+ },
228
228
  };
229
229
  }
230
230
 
package/src/lib/utils.ts CHANGED
@@ -10,6 +10,7 @@ import Fs from "fs";
10
10
  import _ from "lodash";
11
11
  import Url from "url";
12
12
  import { XarcInternalOptions, XarcOptions } from "../config/opt2/xarc-options";
13
+ import { optionalRequire } from "optional-require";
13
14
 
14
15
  export const getOptArchetypeRequire = require("@xarc/webpack/lib/util/get-opt-require"); // eslint-disable-line
15
16
 
@@ -29,7 +30,7 @@ export const formUrl = ({
29
30
  host = "",
30
31
  port = "",
31
32
  path = "",
32
- search = ""
33
+ search = "",
33
34
  }): string => {
34
35
  const proto = protocol.toString().toLowerCase();
35
36
  const sp = port.toString();
@@ -155,18 +156,18 @@ export function loadXarcOptions(
155
156
  const data = Fs.readFileSync(filename, "utf-8");
156
157
  return (cachedXarcOptions = JSON.parse(data, jsonParser));
157
158
  } catch (err) {
158
- // eslint-disable-next-line
159
+ const runner = optionalRequire("@xarc/run") ? "xrun" : "clap";
159
160
  if (showError) {
161
+ // eslint-disable-next-line
160
162
  console.error(ck`
161
- <red>ERROR</>: Electrode xarc fail to load <cyan>.etmp/xarc-options.json</> in
162
- dev mode. This means you are trying to use something not through
163
- xarc's development tasks.
163
+ <red>ERROR</>: Electrode xarc fail to load <cyan>.etmp/xarc-options.json</> in dev mode.
164
164
 
165
165
  full path: ${filename}
166
166
 
167
- Please run "clap setup-dev" once to initialize the file
168
- <cyan>.etmp/xarc-options.json</> before doing your thing that loads
169
- xarc's development code.
167
+ CAUSE: This means you are loading xarc's development code directly instead of through its task runner.
168
+
169
+ <green>SOLUTION: Please run "${runner} setup-dev" once to initialize the file <cyan>.etmp/xarc-options.json</>
170
+ before loading xarc's development code.</>
170
171
  `);
171
172
 
172
173
  console.error(err.stack); // eslint-disable-line
@@ -175,7 +176,7 @@ xarc's development code.
175
176
  return (cachedXarcOptions = {
176
177
  webpack: {},
177
178
  babel: {},
178
- options: {}
179
+ options: {},
179
180
  } as XarcInternalOptions);
180
181
  }
181
182
  }
@@ -257,5 +258,5 @@ export function getDevAdminPortFromEnv(fallback?: number): number {
257
258
  process.env.ELECTRODE_ADMIN_PORT
258
259
  );
259
260
 
260
- return [fromEnv, fallback, 0].find(x => isValidPort(x));
261
+ return [fromEnv, fallback, 0].find((x) => isValidPort(x));
261
262
  }