@nx/webpack 16.0.0-beta.1

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 (143) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/LICENSE +22 -0
  3. package/README.md +63 -0
  4. package/executors.json +36 -0
  5. package/generators.json +33 -0
  6. package/index.d.ts +12 -0
  7. package/index.js +14 -0
  8. package/index.js.map +1 -0
  9. package/migrations.json +35 -0
  10. package/package.json +79 -0
  11. package/src/executors/dev-server/compat.d.ts +2 -0
  12. package/src/executors/dev-server/compat.js +6 -0
  13. package/src/executors/dev-server/compat.js.map +1 -0
  14. package/src/executors/dev-server/dev-server.impl.d.ts +7 -0
  15. package/src/executors/dev-server/dev-server.impl.js +69 -0
  16. package/src/executors/dev-server/dev-server.impl.js.map +1 -0
  17. package/src/executors/dev-server/lib/get-dev-server-config.d.ts +5 -0
  18. package/src/executors/dev-server/lib/get-dev-server-config.js +89 -0
  19. package/src/executors/dev-server/lib/get-dev-server-config.js.map +1 -0
  20. package/src/executors/dev-server/lib/serve-path.d.ts +3 -0
  21. package/src/executors/dev-server/lib/serve-path.js +46 -0
  22. package/src/executors/dev-server/lib/serve-path.js.map +1 -0
  23. package/src/executors/dev-server/schema.d.ts +17 -0
  24. package/src/executors/dev-server/schema.json +76 -0
  25. package/src/executors/ssr-dev-server/compat.d.ts +2 -0
  26. package/src/executors/ssr-dev-server/compat.js +6 -0
  27. package/src/executors/ssr-dev-server/compat.js.map +1 -0
  28. package/src/executors/ssr-dev-server/lib/wait-until-server-is-listening.d.ts +1 -0
  29. package/src/executors/ssr-dev-server/lib/wait-until-server-is-listening.js +40 -0
  30. package/src/executors/ssr-dev-server/lib/wait-until-server-is-listening.js.map +1 -0
  31. package/src/executors/ssr-dev-server/schema.d.ts +11 -0
  32. package/src/executors/ssr-dev-server/schema.json +37 -0
  33. package/src/executors/ssr-dev-server/ssr-dev-server.impl.d.ts +8 -0
  34. package/src/executors/ssr-dev-server/ssr-dev-server.impl.js +59 -0
  35. package/src/executors/ssr-dev-server/ssr-dev-server.impl.js.map +1 -0
  36. package/src/executors/webpack/compat.d.ts +2 -0
  37. package/src/executors/webpack/compat.js +6 -0
  38. package/src/executors/webpack/compat.js.map +1 -0
  39. package/src/executors/webpack/lib/get-webpack-config.d.ts +5 -0
  40. package/src/executors/webpack/lib/get-webpack-config.js +17 -0
  41. package/src/executors/webpack/lib/get-webpack-config.js.map +1 -0
  42. package/src/executors/webpack/lib/normalize-options.d.ts +4 -0
  43. package/src/executors/webpack/lib/normalize-options.js +71 -0
  44. package/src/executors/webpack/lib/normalize-options.js.map +1 -0
  45. package/src/executors/webpack/lib/run-webpack.d.ts +3 -0
  46. package/src/executors/webpack/lib/run-webpack.js +38 -0
  47. package/src/executors/webpack/lib/run-webpack.js.map +1 -0
  48. package/src/executors/webpack/schema.d.ts +105 -0
  49. package/src/executors/webpack/schema.json +414 -0
  50. package/src/executors/webpack/webpack.impl.d.ts +14 -0
  51. package/src/executors/webpack/webpack.impl.js +107 -0
  52. package/src/executors/webpack/webpack.impl.js.map +1 -0
  53. package/src/generators/init/init.d.ts +5 -0
  54. package/src/generators/init/init.js +41 -0
  55. package/src/generators/init/init.js.map +1 -0
  56. package/src/generators/init/schema.d.ts +5 -0
  57. package/src/generators/init/schema.json +28 -0
  58. package/src/generators/webpack-project/schema.d.ts +13 -0
  59. package/src/generators/webpack-project/schema.json +77 -0
  60. package/src/generators/webpack-project/webpack-project.d.ts +5 -0
  61. package/src/generators/webpack-project/webpack-project.js +111 -0
  62. package/src/generators/webpack-project/webpack-project.js.map +1 -0
  63. package/src/migrations/update-15-0-0/add-babel-inputs.d.ts +2 -0
  64. package/src/migrations/update-15-0-0/add-babel-inputs.js +13 -0
  65. package/src/migrations/update-15-0-0/add-babel-inputs.js.map +1 -0
  66. package/src/migrations/update-15-4-5/remove-es2015-polyfills-option.d.ts +2 -0
  67. package/src/migrations/update-15-4-5/remove-es2015-polyfills-option.js +25 -0
  68. package/src/migrations/update-15-4-5/remove-es2015-polyfills-option.js.map +1 -0
  69. package/src/migrations/update-15-6-3/webpack-config-setup.d.ts +2 -0
  70. package/src/migrations/update-15-6-3/webpack-config-setup.js +105 -0
  71. package/src/migrations/update-15-6-3/webpack-config-setup.js.map +1 -0
  72. package/src/migrations/update-15-7-2/add-babelUpwardRootMode-flag.d.ts +2 -0
  73. package/src/migrations/update-15-7-2/add-babelUpwardRootMode-flag.js +21 -0
  74. package/src/migrations/update-15-7-2/add-babelUpwardRootMode-flag.js.map +1 -0
  75. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
  76. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +13 -0
  77. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
  78. package/src/plugins/generate-package-json-plugin.d.ts +12 -0
  79. package/src/plugins/generate-package-json-plugin.js +49 -0
  80. package/src/plugins/generate-package-json-plugin.js.map +1 -0
  81. package/src/plugins/stats-json-plugin.d.ts +4 -0
  82. package/src/plugins/stats-json-plugin.js +14 -0
  83. package/src/plugins/stats-json-plugin.js.map +1 -0
  84. package/src/plugins/webpack-nx-build-coordination-plugin.d.ts +9 -0
  85. package/src/plugins/webpack-nx-build-coordination-plugin.js +84 -0
  86. package/src/plugins/webpack-nx-build-coordination-plugin.js.map +1 -0
  87. package/src/plugins/write-index-html-plugin.d.ts +22 -0
  88. package/src/plugins/write-index-html-plugin.js +251 -0
  89. package/src/plugins/write-index-html-plugin.js.map +1 -0
  90. package/src/utils/config.d.ts +17 -0
  91. package/src/utils/config.js +35 -0
  92. package/src/utils/config.js.map +1 -0
  93. package/src/utils/create-copy-plugin.d.ts +3 -0
  94. package/src/utils/create-copy-plugin.js +28 -0
  95. package/src/utils/create-copy-plugin.js.map +1 -0
  96. package/src/utils/fs.d.ts +6 -0
  97. package/src/utils/fs.js +59 -0
  98. package/src/utils/fs.js.map +1 -0
  99. package/src/utils/get-client-environment.d.ts +5 -0
  100. package/src/utils/get-client-environment.js +30 -0
  101. package/src/utils/get-client-environment.js.map +1 -0
  102. package/src/utils/get-css-module-local-ident.d.ts +1 -0
  103. package/src/utils/get-css-module-local-ident.js +19 -0
  104. package/src/utils/get-css-module-local-ident.js.map +1 -0
  105. package/src/utils/hash-format.d.ts +7 -0
  106. package/src/utils/hash-format.js +24 -0
  107. package/src/utils/hash-format.js.map +1 -0
  108. package/src/utils/models.d.ts +23 -0
  109. package/src/utils/models.js +3 -0
  110. package/src/utils/models.js.map +1 -0
  111. package/src/utils/run-webpack.d.ts +5 -0
  112. package/src/utils/run-webpack.js +30 -0
  113. package/src/utils/run-webpack.js.map +1 -0
  114. package/src/utils/versions.d.ts +8 -0
  115. package/src/utils/versions.js +13 -0
  116. package/src/utils/versions.js.map +1 -0
  117. package/src/utils/web-babel-loader.d.ts +0 -0
  118. package/src/utils/web-babel-loader.js +29 -0
  119. package/src/utils/web-babel-loader.js.map +1 -0
  120. package/src/utils/webpack/custom-webpack.d.ts +3 -0
  121. package/src/utils/webpack/custom-webpack.js +42 -0
  122. package/src/utils/webpack/custom-webpack.js.map +1 -0
  123. package/src/utils/webpack/interpolate-env-variables-to-index.d.ts +1 -0
  124. package/src/utils/webpack/interpolate-env-variables-to-index.js +31 -0
  125. package/src/utils/webpack/interpolate-env-variables-to-index.js.map +1 -0
  126. package/src/utils/webpack/normalize-entry.d.ts +2 -0
  127. package/src/utils/webpack/normalize-entry.js +30 -0
  128. package/src/utils/webpack/normalize-entry.js.map +1 -0
  129. package/src/utils/webpack/package-chunk-sort.d.ts +5 -0
  130. package/src/utils/webpack/package-chunk-sort.js +30 -0
  131. package/src/utils/webpack/package-chunk-sort.js.map +1 -0
  132. package/src/utils/webpack/plugins/postcss-cli-resources.d.ts +13 -0
  133. package/src/utils/webpack/plugins/postcss-cli-resources.js +170 -0
  134. package/src/utils/webpack/plugins/postcss-cli-resources.js.map +1 -0
  135. package/src/utils/webpack/plugins/scripts-webpack-plugin.d.ts +17 -0
  136. package/src/utils/webpack/plugins/scripts-webpack-plugin.js +121 -0
  137. package/src/utils/webpack/plugins/scripts-webpack-plugin.js.map +1 -0
  138. package/src/utils/with-nx.d.ts +61 -0
  139. package/src/utils/with-nx.js +285 -0
  140. package/src/utils/with-nx.js.map +1 -0
  141. package/src/utils/with-web.d.ts +21 -0
  142. package/src/utils/with-web.js +468 -0
  143. package/src/utils/with-web.js.map +1 -0
@@ -0,0 +1,76 @@
1
+ {
2
+ "version": 2,
3
+ "outputCapture": "direct-nodejs",
4
+ "title": "Webpack dev server",
5
+ "description": "Serve an application using webpack.",
6
+ "cli": "nx",
7
+ "type": "object",
8
+ "properties": {
9
+ "buildTarget": {
10
+ "type": "string",
11
+ "description": "Target which builds the application.",
12
+ "x-priority": "important"
13
+ },
14
+ "port": {
15
+ "type": "number",
16
+ "description": "Port to listen on.",
17
+ "default": 4200,
18
+ "x-priority": "important"
19
+ },
20
+ "host": {
21
+ "type": "string",
22
+ "description": "Host to listen on.",
23
+ "default": "localhost"
24
+ },
25
+ "ssl": {
26
+ "type": "boolean",
27
+ "description": "Serve using `HTTPS`.",
28
+ "default": false
29
+ },
30
+ "sslKey": {
31
+ "type": "string",
32
+ "description": "SSL key to use for serving `HTTPS`."
33
+ },
34
+ "sslCert": {
35
+ "type": "string",
36
+ "description": "SSL certificate to use for serving `HTTPS`."
37
+ },
38
+ "watch": {
39
+ "type": "boolean",
40
+ "description": "Watches for changes and rebuilds application.",
41
+ "default": true
42
+ },
43
+ "liveReload": {
44
+ "type": "boolean",
45
+ "description": "Whether to reload the page on change, using live-reload.",
46
+ "default": true
47
+ },
48
+ "hmr": {
49
+ "type": "boolean",
50
+ "description": "Enable hot module replacement.",
51
+ "default": false
52
+ },
53
+ "publicHost": {
54
+ "type": "string",
55
+ "description": "Public URL where the application will be served."
56
+ },
57
+ "open": {
58
+ "type": "boolean",
59
+ "description": "Open the application in the browser.",
60
+ "default": false,
61
+ "x-priority": "important"
62
+ },
63
+ "allowedHosts": {
64
+ "type": "string",
65
+ "description": "This option allows you to whitelist services that are allowed to access the dev server."
66
+ },
67
+ "memoryLimit": {
68
+ "type": "number",
69
+ "description": "Memory limit for type checking service process in `MB`."
70
+ },
71
+ "baseHref": {
72
+ "type": "string",
73
+ "description": "Base url for the application being built."
74
+ }
75
+ }
76
+ }
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const devkit_1 = require("@nx/devkit");
4
+ const ssr_dev_server_impl_1 = require("./ssr-dev-server.impl");
5
+ exports.default = (0, devkit_1.convertNxExecutor)(ssr_dev_server_impl_1.default);
6
+ //# sourceMappingURL=compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../packages/webpack/src/executors/ssr-dev-server/compat.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,+DAAyD;AAEzD,kBAAe,IAAA,0BAAiB,EAAC,6BAAoB,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function waitUntilServerIsListening(port: number): Promise<void>;
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitUntilServerIsListening = void 0;
4
+ const net = require("net");
5
+ function waitUntilServerIsListening(port) {
6
+ const allowedErrorCodes = ['ECONNREFUSED', 'ECONNRESET'];
7
+ const maxAttempts = 25;
8
+ let attempts = 0;
9
+ const client = new net.Socket();
10
+ const cleanup = () => {
11
+ client.removeAllListeners('connect');
12
+ client.removeAllListeners('error');
13
+ client.end();
14
+ client.destroy();
15
+ client.unref();
16
+ };
17
+ return new Promise((resolve, reject) => {
18
+ const listen = () => {
19
+ client.once('connect', () => {
20
+ cleanup();
21
+ resolve();
22
+ });
23
+ client.on('error', (err) => {
24
+ if (attempts > maxAttempts ||
25
+ !allowedErrorCodes.includes(err['code'])) {
26
+ cleanup();
27
+ reject(err);
28
+ }
29
+ else {
30
+ attempts++;
31
+ setTimeout(listen, 100 * attempts);
32
+ }
33
+ });
34
+ client.connect({ port, host: 'localhost' });
35
+ };
36
+ listen();
37
+ });
38
+ }
39
+ exports.waitUntilServerIsListening = waitUntilServerIsListening;
40
+ //# sourceMappingURL=wait-until-server-is-listening.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wait-until-server-is-listening.js","sourceRoot":"","sources":["../../../../../../../packages/webpack/src/executors/ssr-dev-server/lib/wait-until-server-is-listening.ts"],"names":[],"mappings":";;;AAAA,2BAA2B;AAE3B,SAAgB,0BAA0B,CAAC,IAAY;IACrD,MAAM,iBAAiB,GAAG,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,EAAE,CAAC;IACvB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACrC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,OAAO,EAAE,CAAC;QACjB,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,GAAG,EAAE;YAClB,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;gBAC1B,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACzB,IACE,QAAQ,GAAG,WAAW;oBACtB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EACxC;oBACA,OAAO,EAAE,CAAC;oBACV,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;qBAAM;oBACL,QAAQ,EAAE,CAAC;oBACX,UAAU,CAAC,MAAM,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC;iBACpC;YACH,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC;QACF,MAAM,EAAE,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC;AAnCD,gEAmCC"}
@@ -0,0 +1,11 @@
1
+ interface TargetOptions {
2
+ [key: string]: string | boolean | number | TargetOptions;
3
+ }
4
+
5
+ export interface WebSsrDevServerOptions {
6
+ browserTarget: string;
7
+ serverTarget: string;
8
+ port: number;
9
+ browserTargetOptions: TargetOptions;
10
+ serverTargetOptions: TargetOptions;
11
+ }
@@ -0,0 +1,37 @@
1
+ {
2
+ "version": 2,
3
+ "outputCapture": "direct-nodejs",
4
+ "title": "Webpack SSR Dev Server",
5
+ "description": "Serve a SSR application using webpack.",
6
+ "cli": "nx",
7
+ "type": "object",
8
+ "properties": {
9
+ "browserTarget": {
10
+ "type": "string",
11
+ "description": "Target which builds the browser application.",
12
+ "x-priority": "important"
13
+ },
14
+ "serverTarget": {
15
+ "type": "string",
16
+ "description": "Target which builds the server application.",
17
+ "x-priority": "important"
18
+ },
19
+ "port": {
20
+ "type": "number",
21
+ "description": "The port to be set on `process.env.PORT` for use in the server.",
22
+ "default": 4200,
23
+ "x-priority": "important"
24
+ },
25
+ "browserTargetOptions": {
26
+ "type": "object",
27
+ "description": "Additional options to pass into the browser build target.",
28
+ "default": {}
29
+ },
30
+ "serverTargetOptions": {
31
+ "type": "object",
32
+ "description": "Additional options to pass into the server build target.",
33
+ "default": {}
34
+ }
35
+ },
36
+ "required": ["browserTarget", "serverTarget"]
37
+ }
@@ -0,0 +1,8 @@
1
+ import { ExecutorContext } from '@nx/devkit';
2
+ import { TargetOptions, WebSsrDevServerOptions } from './schema';
3
+ export declare function ssrDevServerExecutor(options: WebSsrDevServerOptions, context: ExecutorContext): AsyncGenerator<{
4
+ baseUrl: string;
5
+ success: boolean;
6
+ options: TargetOptions;
7
+ }, void, unknown>;
8
+ export default ssrDevServerExecutor;
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ssrDevServerExecutor = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nx/devkit");
6
+ const chalk = require("chalk");
7
+ const async_iterable_1 = require("@nx/devkit/src/utils/async-iterable");
8
+ const wait_until_server_is_listening_1 = require("./lib/wait-until-server-is-listening");
9
+ function ssrDevServerExecutor(options, context) {
10
+ var _a;
11
+ return tslib_1.__asyncGenerator(this, arguments, function* ssrDevServerExecutor_1() {
12
+ var _b, e_1, _c, _d;
13
+ const browserTarget = (0, devkit_1.parseTargetString)(options.browserTarget, context.projectGraph);
14
+ const serverTarget = (0, devkit_1.parseTargetString)(options.serverTarget, context.projectGraph);
15
+ const browserOptions = (0, devkit_1.readTargetOptions)(browserTarget, context);
16
+ const serverOptions = (0, devkit_1.readTargetOptions)(serverTarget, context);
17
+ const runBrowser = yield tslib_1.__await((0, devkit_1.runExecutor)(browserTarget, Object.assign(Object.assign({}, browserOptions), options.browserTargetOptions), context));
18
+ const runServer = yield tslib_1.__await((0, devkit_1.runExecutor)(serverTarget, Object.assign(Object.assign({}, serverOptions), options.serverTargetOptions), context));
19
+ let browserBuilt = false;
20
+ let nodeStarted = false;
21
+ const combined = (0, async_iterable_1.combineAsyncIterables)(runBrowser, runServer);
22
+ process.env['port'] = `${options.port}`;
23
+ try {
24
+ for (var _e = true, combined_1 = tslib_1.__asyncValues(combined), combined_1_1; combined_1_1 = yield tslib_1.__await(combined_1.next()), _b = combined_1_1.done, !_b;) {
25
+ _d = combined_1_1.value;
26
+ _e = false;
27
+ try {
28
+ const output = _d;
29
+ if (!output.success)
30
+ throw new Error('Could not build application');
31
+ if (output.options.target === 'node') {
32
+ nodeStarted = true;
33
+ }
34
+ else if (((_a = output.options) === null || _a === void 0 ? void 0 : _a.target) === 'web') {
35
+ browserBuilt = true;
36
+ }
37
+ if (nodeStarted && browserBuilt) {
38
+ yield tslib_1.__await((0, wait_until_server_is_listening_1.waitUntilServerIsListening)(options.port));
39
+ console.log(`[ ${chalk.green('ready')} ] on http://localhost:${options.port}`);
40
+ yield yield tslib_1.__await(Object.assign(Object.assign({}, output), { baseUrl: `http://localhost:${options.port}` }));
41
+ }
42
+ }
43
+ finally {
44
+ _e = true;
45
+ }
46
+ }
47
+ }
48
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
49
+ finally {
50
+ try {
51
+ if (!_e && !_b && (_c = combined_1.return)) yield tslib_1.__await(_c.call(combined_1));
52
+ }
53
+ finally { if (e_1) throw e_1.error; }
54
+ }
55
+ });
56
+ }
57
+ exports.ssrDevServerExecutor = ssrDevServerExecutor;
58
+ exports.default = ssrDevServerExecutor;
59
+ //# sourceMappingURL=ssr-dev-server.impl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssr-dev-server.impl.js","sourceRoot":"","sources":["../../../../../../packages/webpack/src/executors/ssr-dev-server/ssr-dev-server.impl.ts"],"names":[],"mappings":";;;;AAAA,uCAKoB;AACpB,+BAA+B;AAC/B,wEAA4E;AAI5E,yFAAkF;AAElF,SAAuB,oBAAoB,CACzC,OAA+B,EAC/B,OAAwB;;;;QAExB,MAAM,aAAa,GAAG,IAAA,0BAAiB,EACrC,OAAO,CAAC,aAAa,EACrB,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,MAAM,YAAY,GAAG,IAAA,0BAAiB,EACpC,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,YAAY,CACrB,CAAC;QACF,MAAM,cAAc,GAAG,IAAA,0BAAiB,EACtC,aAAa,EACb,OAAO,CACR,CAAC;QACF,MAAM,aAAa,GAAG,IAAA,0BAAiB,EACrC,YAAY,EACZ,OAAO,CACR,CAAC;QAEF,MAAM,UAAU,GAAG,sBAAM,IAAA,oBAAW,EAKlC,aAAa,kCACR,cAAc,GAAK,OAAO,CAAC,oBAAoB,GACpD,OAAO,CACR,CAAA,CAAC;QACF,MAAM,SAAS,GAAG,sBAAM,IAAA,oBAAW,EAKjC,YAAY,kCACP,aAAa,GAAK,OAAO,CAAC,mBAAmB,GAClD,OAAO,CACR,CAAA,CAAC;QACF,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,MAAM,QAAQ,GAAG,IAAA,sCAAqB,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;;YAExC,KAA2B,eAAA,aAAA,sBAAA,QAAQ,CAAA,cAAA;gBAAR,wBAAQ;gBAAR,WAAQ;;oBAAxB,MAAM,MAAM,KAAA,CAAA;oBACrB,IAAI,CAAC,MAAM,CAAC,OAAO;wBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;oBACpE,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE;wBACpC,WAAW,GAAG,IAAI,CAAC;qBACpB;yBAAM,IAAI,CAAA,MAAA,MAAM,CAAC,OAAO,0CAAE,MAAM,MAAK,KAAK,EAAE;wBAC3C,YAAY,GAAG,IAAI,CAAC;qBACrB;oBAED,IAAI,WAAW,IAAI,YAAY,EAAE;wBAC/B,sBAAM,IAAA,2DAA0B,EAAC,OAAO,CAAC,IAAI,CAAC,CAAA,CAAC;wBAC/C,OAAO,CAAC,GAAG,CACT,KAAK,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,0BAA0B,OAAO,CAAC,IAAI,EAAE,CAClE,CAAC;wBACF,4DACK,MAAM,KACT,OAAO,EAAE,oBAAoB,OAAO,CAAC,IAAI,EAAE,IAC5C,CAAC;qBACH;;;;;aACF;;;;;;;;;;CACF;AAhED,oDAgEC;AAED,kBAAe,oBAAoB,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const devkit_1 = require("@nx/devkit");
4
+ const webpack_impl_1 = require("./webpack.impl");
5
+ exports.default = (0, devkit_1.convertNxExecutor)(webpack_impl_1.webpackExecutor);
6
+ //# sourceMappingURL=compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../packages/webpack/src/executors/webpack/compat.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,iDAAiD;AAEjD,kBAAe,IAAA,0BAAiB,EAAC,8BAAe,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Configuration } from 'webpack';
2
+ import { ExecutorContext } from '@nx/devkit';
3
+ import { NormalizedWebpackExecutorOptions } from '../schema';
4
+ /** @deprecated Use withNx, withWeb, or withReact */
5
+ export declare function getWebpackConfig(context: ExecutorContext, options: NormalizedWebpackExecutorOptions): Configuration;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getWebpackConfig = void 0;
4
+ const with_nx_1 = require("../../../utils/with-nx");
5
+ const with_web_1 = require("../../../utils/with-web");
6
+ const config_1 = require("../../../utils/config");
7
+ /** @deprecated Use withNx, withWeb, or withReact */
8
+ // TODO(jack): Remove in Nx 16
9
+ function getWebpackConfig(context, options) {
10
+ const config = {};
11
+ const configure = options.target === 'node'
12
+ ? (0, with_nx_1.withNx)()
13
+ : (0, config_1.composePluginsSync)((0, with_nx_1.withNx)(), (0, with_web_1.withWeb)());
14
+ return configure(config, { options, context });
15
+ }
16
+ exports.getWebpackConfig = getWebpackConfig;
17
+ //# sourceMappingURL=get-webpack-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-webpack-config.js","sourceRoot":"","sources":["../../../../../../../packages/webpack/src/executors/webpack/lib/get-webpack-config.ts"],"names":[],"mappings":";;;AAIA,oDAAgD;AAChD,sDAAkD;AAClD,kDAA2D;AAQ3D,oDAAoD;AACpD,8BAA8B;AAC9B,SAAgB,gBAAgB,CAC9B,OAAwB,EACxB,OAAyC;IAEzC,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,MAAM,SAAS,GACb,OAAO,CAAC,MAAM,KAAK,MAAM;QACvB,CAAC,CAAC,IAAA,gBAAM,GAAE;QACV,CAAC,CAAC,IAAA,2BAAkB,EAAC,IAAA,gBAAM,GAAE,EAAE,IAAA,kBAAO,GAAE,CAAC,CAAC;IAC9C,OAAO,SAAS,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AACjD,CAAC;AAVD,4CAUC"}
@@ -0,0 +1,4 @@
1
+ import type { AssetGlobPattern, NormalizedWebpackExecutorOptions, WebpackExecutorOptions } from '../schema';
2
+ export declare function normalizeOptions(options: WebpackExecutorOptions, root: string, projectRoot: string, sourceRoot: string): NormalizedWebpackExecutorOptions;
3
+ export declare function normalizePluginPath(pluginPath: void | string, root: string): string;
4
+ export declare function normalizeAssets(assets: any[], root: string, sourceRoot: string): AssetGlobPattern[];
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.normalizeAssets = exports.normalizePluginPath = exports.normalizeOptions = void 0;
4
+ const path_1 = require("path");
5
+ const fs_1 = require("fs");
6
+ const devkit_1 = require("@nx/devkit");
7
+ function normalizeOptions(options, root, projectRoot, sourceRoot) {
8
+ var _a, _b;
9
+ return Object.assign(Object.assign({}, options), { root,
10
+ projectRoot,
11
+ sourceRoot, target: (_a = options.target) !== null && _a !== void 0 ? _a : 'web', main: (0, path_1.resolve)(root, options.main), outputPath: (0, path_1.resolve)(root, options.outputPath), outputFileName: (_b = options.outputFileName) !== null && _b !== void 0 ? _b : 'main.js', tsConfig: (0, path_1.resolve)(root, options.tsConfig), fileReplacements: normalizeFileReplacements(root, options.fileReplacements), assets: normalizeAssets(options.assets, root, sourceRoot), webpackConfig: normalizePluginPath(options.webpackConfig, root), optimization: typeof options.optimization !== 'object'
12
+ ? {
13
+ scripts: options.optimization,
14
+ styles: options.optimization,
15
+ }
16
+ : options.optimization, polyfills: options.polyfills ? (0, path_1.resolve)(root, options.polyfills) : undefined });
17
+ }
18
+ exports.normalizeOptions = normalizeOptions;
19
+ function normalizeFileReplacements(root, fileReplacements) {
20
+ return fileReplacements.map((fileReplacement) => ({
21
+ replace: (0, path_1.resolve)(root, fileReplacement.replace),
22
+ with: (0, path_1.resolve)(root, fileReplacement.with),
23
+ }));
24
+ }
25
+ function normalizePluginPath(pluginPath, root) {
26
+ if (!pluginPath) {
27
+ return '';
28
+ }
29
+ try {
30
+ return require.resolve(pluginPath);
31
+ }
32
+ catch (_a) {
33
+ return (0, path_1.resolve)(root, pluginPath);
34
+ }
35
+ }
36
+ exports.normalizePluginPath = normalizePluginPath;
37
+ function normalizeAssets(assets, root, sourceRoot) {
38
+ return assets.map((asset) => {
39
+ if (typeof asset === 'string') {
40
+ const assetPath = (0, devkit_1.normalizePath)(asset);
41
+ const resolvedAssetPath = (0, path_1.resolve)(root, assetPath);
42
+ const resolvedSourceRoot = (0, path_1.resolve)(root, sourceRoot);
43
+ if (!resolvedAssetPath.startsWith(resolvedSourceRoot)) {
44
+ throw new Error(`The ${resolvedAssetPath} asset path must start with the project source root: ${sourceRoot}`);
45
+ }
46
+ const isDirectory = (0, fs_1.statSync)(resolvedAssetPath).isDirectory();
47
+ const input = isDirectory
48
+ ? resolvedAssetPath
49
+ : (0, path_1.dirname)(resolvedAssetPath);
50
+ const output = (0, path_1.relative)(resolvedSourceRoot, (0, path_1.resolve)(root, input));
51
+ const glob = isDirectory ? '**/*' : (0, path_1.basename)(resolvedAssetPath);
52
+ return {
53
+ input,
54
+ output,
55
+ glob,
56
+ };
57
+ }
58
+ else {
59
+ if (asset.output.startsWith('..')) {
60
+ throw new Error('An asset cannot be written to a location outside of the output path.');
61
+ }
62
+ const assetPath = (0, devkit_1.normalizePath)(asset.input);
63
+ const resolvedAssetPath = (0, path_1.resolve)(root, assetPath);
64
+ return Object.assign(Object.assign({}, asset), { input: resolvedAssetPath,
65
+ // Now we remove starting slash to make Webpack place it from the output root.
66
+ output: asset.output.replace(/^\//, '') });
67
+ }
68
+ });
69
+ }
70
+ exports.normalizeAssets = normalizeAssets;
71
+ //# sourceMappingURL=normalize-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize-options.js","sourceRoot":"","sources":["../../../../../../../packages/webpack/src/executors/webpack/lib/normalize-options.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import * as webpack from 'webpack';
2
+ import { Observable } from 'rxjs';
3
+ export declare function runWebpack(config: webpack.Configuration): Observable<webpack.Stats>;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runWebpack = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const webpack = require("webpack");
6
+ const rxjs_1 = require("rxjs");
7
+ // TODO(jack): move to dev-server executor
8
+ function runWebpack(config) {
9
+ return new rxjs_1.Observable((subscriber) => {
10
+ // Passing `watch` option here will result in a warning due to missing callback.
11
+ // We manually call `.watch` or `.run` later so this option isn't needed here.
12
+ const { watch } = config, normalizedConfig = tslib_1.__rest(config, ["watch"]);
13
+ const webpackCompiler = webpack(normalizedConfig);
14
+ const callback = (err, stats) => {
15
+ if (err) {
16
+ subscriber.error(err);
17
+ }
18
+ subscriber.next(stats);
19
+ };
20
+ if (config.watch) {
21
+ const watchOptions = config.watchOptions || {};
22
+ const watching = webpackCompiler.watch(watchOptions, callback);
23
+ return () => watching.close(() => subscriber.complete());
24
+ }
25
+ else {
26
+ webpackCompiler.run((err, stats) => {
27
+ callback(err, stats);
28
+ webpackCompiler.close((closeErr) => {
29
+ if (closeErr)
30
+ subscriber.error(closeErr);
31
+ subscriber.complete();
32
+ });
33
+ });
34
+ }
35
+ });
36
+ }
37
+ exports.runWebpack = runWebpack;
38
+ //# sourceMappingURL=run-webpack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-webpack.js","sourceRoot":"","sources":["../../../../../../../packages/webpack/src/executors/webpack/lib/run-webpack.ts"],"names":[],"mappings":";;;;AAAA,mCAAmC;AACnC,+BAAkC;AAElC,0CAA0C;AAC1C,SAAgB,UAAU,CACxB,MAA6B;IAE7B,OAAO,IAAI,iBAAU,CAAC,CAAC,UAAU,EAAE,EAAE;QACnC,gFAAgF;QAChF,8EAA8E;QAC9E,MAAM,EAAE,KAAK,KAA0B,MAAM,EAA3B,gBAAgB,kBAAK,MAAM,EAAvC,SAA8B,CAAS,CAAC;QAC9C,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,CAAC,GAAU,EAAE,KAAoB,EAAE,EAAE;YACpD,IAAI,GAAG,EAAE;gBACP,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;aACvB;YACD,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,EAAE;YAChB,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAE/D,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC1D;aAAM;YACL,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;gBACjC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACrB,eAAe,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE;oBACjC,IAAI,QAAQ;wBAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACzC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACxB,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AA/BD,gCA+BC"}
@@ -0,0 +1,105 @@
1
+ import { AssetGlob } from '@nx/js/src/utils/assets/assets';
2
+
3
+ export interface AssetGlobPattern {
4
+ glob: string;
5
+ input: string;
6
+ output: string;
7
+ ignore?: string[];
8
+ }
9
+
10
+ export interface ExtraEntryPointClass {
11
+ bundleName?: string;
12
+ inject?: boolean;
13
+ input: string;
14
+ lazy?: boolean;
15
+ }
16
+
17
+ export interface FileReplacement {
18
+ replace: string;
19
+ with: string;
20
+ }
21
+
22
+ export interface AdditionalEntryPoint {
23
+ entryName: string;
24
+ entryPath: string;
25
+ }
26
+
27
+ export interface TransformerPlugin {
28
+ name: string;
29
+ options: Record<string, unknown>;
30
+ }
31
+
32
+ export type TransformerEntry = string | TransformerPlugin;
33
+
34
+ export interface OptimizationOptions {
35
+ scripts: boolean;
36
+ styles: boolean;
37
+ }
38
+
39
+ export interface WebpackExecutorOptions {
40
+ additionalEntryPoints?: AdditionalEntryPoint[];
41
+ assets?: Array<AssetGlob | string>;
42
+ buildLibsFromSource?: boolean;
43
+ commonChunk?: boolean;
44
+ compiler?: 'babel' | 'swc' | 'tsc';
45
+ deleteOutputPath?: boolean;
46
+ externalDependencies?: 'all' | 'none' | string[];
47
+ extractLicenses?: boolean;
48
+ fileReplacements?: FileReplacement[];
49
+ generatePackageJson?: boolean;
50
+ isolatedConfig?: boolean;
51
+ main: string;
52
+ memoryLimit?: number;
53
+ namedChunks?: boolean;
54
+ optimization?: boolean | OptimizationOptions;
55
+ outputFileName?: string;
56
+ outputHashing?: any;
57
+ outputPath: string;
58
+ poll?: number;
59
+ polyfills?: string;
60
+ progress?: boolean;
61
+ runtimeChunk?: boolean;
62
+ sourceMap?: boolean | 'hidden';
63
+ statsJson?: boolean;
64
+ target?: 'node' | 'web';
65
+ transformers?: TransformerEntry[];
66
+ tsConfig: string;
67
+ vendorChunk?: boolean;
68
+ verbose?: boolean;
69
+ watch?: boolean;
70
+ webpackConfig?: string;
71
+ babelConfig?: string;
72
+ babelUpwardRootMode?: boolean;
73
+ // TODO(jack): Also deprecate these in schema.json once we have migration from executor options to webpack.config.js file.
74
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
75
+ baseHref?: string;
76
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
77
+ crossOrigin?: 'none' | 'anonymous' | 'use-credentials';
78
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
79
+ deployUrl?: string;
80
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
81
+ extractCss?: boolean;
82
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
83
+ generateIndexHtml?: boolean;
84
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
85
+ index?: string;
86
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
87
+ postcssConfig?: string;
88
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
89
+ scripts?: Array<ExtraEntryPointClass | string>;
90
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
91
+ stylePreprocessorOptions?: any;
92
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
93
+ styles?: Array<ExtraEntryPointClass | string>;
94
+ /** @deprecated Moved to withWeb options from `@nrwl/webpack` */
95
+ subresourceIntegrity?: boolean;
96
+ }
97
+
98
+ export interface NormalizedWebpackExecutorOptions
99
+ extends WebpackExecutorOptions {
100
+ outputFileName: string;
101
+ assets?: AssetGlobPattern[];
102
+ root?: string;
103
+ projectRoot?: string;
104
+ sourceRoot?: string;
105
+ }