@nrwl/angular 13.10.3 → 14.0.0-beta.2

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 (144) hide show
  1. package/README.md +1 -1
  2. package/executors.json +10 -0
  3. package/generators.d.ts +2 -4
  4. package/generators.js +2 -4
  5. package/generators.js.map +1 -1
  6. package/generators.json +16 -40
  7. package/migrations.json +6 -0
  8. package/module-federation/index.d.ts +1 -0
  9. package/module-federation/index.js +2 -0
  10. package/module-federation/index.js.map +1 -1
  11. package/ng-package.json +1 -0
  12. package/package.json +8 -6
  13. package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.d.ts +6 -0
  14. package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.js +38 -0
  15. package/src/builders/module-federation-dev-server/module-federation-dev-server.impl.js.map +1 -0
  16. package/src/builders/module-federation-dev-server/schema.d.ts +20 -0
  17. package/src/builders/module-federation-dev-server/schema.json +108 -0
  18. package/src/generators/add-linting/schema.json +1 -0
  19. package/src/generators/application/files/tsconfig.editor.json__tpl__ +1 -7
  20. package/src/generators/application/lib/update-editor-tsconfig.d.ts +1 -1
  21. package/src/generators/application/lib/update-editor-tsconfig.js +14 -2
  22. package/src/generators/application/lib/update-editor-tsconfig.js.map +1 -1
  23. package/src/generators/application/schema.json +11 -5
  24. package/src/generators/component/schema.json +1 -1
  25. package/src/generators/component-cypress-spec/schema.json +1 -0
  26. package/src/generators/component-story/schema.json +1 -0
  27. package/src/generators/convert-to-with-mf/convert-to-with-mf.js +4 -4
  28. package/src/generators/convert-to-with-mf/convert-to-with-mf.js.map +1 -1
  29. package/src/generators/convert-to-with-mf/lib/write-new-webpack-config.js +1 -1
  30. package/src/generators/convert-to-with-mf/schema.json +1 -1
  31. package/src/generators/convert-tslint-to-eslint/schema.json +1 -1
  32. package/src/generators/downgrade-module/schema.json +1 -1
  33. package/src/generators/{mfe-host/mfe-host.compat.d.ts → host/host.compat.d.ts} +0 -0
  34. package/src/generators/host/host.compat.js +6 -0
  35. package/src/generators/host/host.compat.js.map +1 -0
  36. package/src/generators/host/host.d.ts +3 -0
  37. package/src/generators/host/host.js +34 -0
  38. package/src/generators/host/host.js.map +1 -0
  39. package/src/generators/{mfe-host → host}/schema.d.ts +0 -0
  40. package/src/generators/{mfe-host → host}/schema.json +5 -5
  41. package/src/generators/init/schema.json +1 -1
  42. package/src/generators/karma/karma.js +1 -0
  43. package/src/generators/karma/karma.js.map +1 -1
  44. package/src/generators/library/library.js +2 -7
  45. package/src/generators/library/library.js.map +1 -1
  46. package/src/generators/ng-add/migrate-from-angular-cli.js +32 -10
  47. package/src/generators/ng-add/migrate-from-angular-cli.js.map +1 -1
  48. package/src/generators/ng-add/schema.d.ts +0 -1
  49. package/src/generators/ng-add/schema.json +0 -7
  50. package/src/generators/ng-add/utilities/app.migrator.d.ts +2 -3
  51. package/src/generators/ng-add/utilities/app.migrator.js +92 -56
  52. package/src/generators/ng-add/utilities/app.migrator.js.map +1 -1
  53. package/src/generators/ng-add/utilities/{e2e-project.migrator.d.ts → e2e.migrator.d.ts} +5 -1
  54. package/src/generators/ng-add/utilities/e2e.migrator.js +298 -0
  55. package/src/generators/ng-add/utilities/e2e.migrator.js.map +1 -0
  56. package/src/generators/ng-add/utilities/lib.migrator.d.ts +26 -0
  57. package/src/generators/ng-add/utilities/lib.migrator.js +351 -0
  58. package/src/generators/ng-add/utilities/lib.migrator.js.map +1 -0
  59. package/src/generators/ng-add/utilities/logger.d.ts +8 -0
  60. package/src/generators/ng-add/utilities/logger.js +21 -0
  61. package/src/generators/ng-add/utilities/logger.js.map +1 -0
  62. package/src/generators/ng-add/utilities/normalize-options.js +5 -2
  63. package/src/generators/ng-add/utilities/normalize-options.js.map +1 -1
  64. package/src/generators/ng-add/utilities/project.migrator.d.ts +13 -2
  65. package/src/generators/ng-add/utilities/project.migrator.js +83 -3
  66. package/src/generators/ng-add/utilities/project.migrator.js.map +1 -1
  67. package/src/generators/ng-add/utilities/types.d.ts +13 -1
  68. package/src/generators/ng-add/utilities/validate-projects.d.ts +2 -0
  69. package/src/generators/ng-add/utilities/validate-projects.js +46 -0
  70. package/src/generators/ng-add/utilities/validate-projects.js.map +1 -0
  71. package/src/generators/ng-add/utilities/validation-logging.d.ts +2 -0
  72. package/src/generators/ng-add/utilities/validation-logging.js +20 -0
  73. package/src/generators/ng-add/utilities/validation-logging.js.map +1 -0
  74. package/src/generators/ng-add/utilities/workspace.d.ts +5 -3
  75. package/src/generators/ng-add/utilities/workspace.js +105 -67
  76. package/src/generators/ng-add/utilities/workspace.js.map +1 -1
  77. package/src/generators/{mfe-remote/mfe-remote.compat.d.ts → remote/remote.compat.d.ts} +0 -0
  78. package/src/generators/remote/remote.compat.js +6 -0
  79. package/src/generators/remote/remote.compat.js.map +1 -0
  80. package/src/generators/remote/remote.d.ts +3 -0
  81. package/src/generators/remote/remote.js +76 -0
  82. package/src/generators/remote/remote.js.map +1 -0
  83. package/src/generators/{mfe-remote → remote}/schema.d.ts +0 -0
  84. package/src/generators/{mfe-remote → remote}/schema.json +5 -5
  85. package/src/generators/scam/schema.json +1 -1
  86. package/src/generators/scam-directive/schema.json +1 -1
  87. package/src/generators/scam-pipe/schema.json +1 -1
  88. package/src/generators/setup-mfe/files/webpack/{mfe.config.js__tmpl__ → module-federation.config.js__tmpl__} +0 -0
  89. package/src/generators/setup-mfe/files/webpack/webpack.config.js__tmpl__ +1 -1
  90. package/src/generators/setup-mfe/files/webpack/webpack.prod.config.js__tmpl__ +1 -1
  91. package/src/generators/setup-mfe/lib/add-remote-to-host.js +10 -10
  92. package/src/generators/setup-mfe/lib/add-remote-to-host.js.map +1 -1
  93. package/src/generators/setup-mfe/lib/fix-bootstrap.js +3 -3
  94. package/src/generators/setup-mfe/lib/fix-bootstrap.js.map +1 -1
  95. package/src/generators/setup-mfe/lib/generate-config.js +1 -1
  96. package/src/generators/setup-mfe/lib/generate-config.js.map +1 -1
  97. package/src/generators/setup-mfe/lib/setup-host-if-dynamic.js +3 -3
  98. package/src/generators/setup-mfe/lib/setup-host-if-dynamic.js.map +1 -1
  99. package/src/generators/setup-mfe/lib/setup-serve-target.js +3 -23
  100. package/src/generators/setup-mfe/lib/setup-serve-target.js.map +1 -1
  101. package/src/generators/stories/schema.json +1 -1
  102. package/src/generators/utils/dependencies.d.ts +2 -0
  103. package/src/generators/utils/dependencies.js +15 -0
  104. package/src/generators/utils/dependencies.js.map +1 -0
  105. package/src/migrations/update-13-8-1/add-cypress-mfe-workaround.js +2 -2
  106. package/src/migrations/update-13-8-1/add-cypress-mfe-workaround.js.map +1 -1
  107. package/src/migrations/update-14-0-0/rename-mf-config.d.ts +2 -0
  108. package/src/migrations/update-14-0-0/rename-mf-config.js +27 -0
  109. package/src/migrations/update-14-0-0/rename-mf-config.js.map +1 -0
  110. package/src/utils/{get-mfe-projects.d.ts → get-mf-projects.d.ts} +1 -1
  111. package/src/utils/{get-mfe-projects.js → get-mf-projects.js} +4 -4
  112. package/src/utils/get-mf-projects.js.map +1 -0
  113. package/src/utils/versions.js +1 -1
  114. package/src/generators/mfe-host/mfe-host.compat.js +0 -6
  115. package/src/generators/mfe-host/mfe-host.compat.js.map +0 -1
  116. package/src/generators/mfe-host/mfe-host.d.ts +0 -3
  117. package/src/generators/mfe-host/mfe-host.js +0 -22
  118. package/src/generators/mfe-host/mfe-host.js.map +0 -1
  119. package/src/generators/mfe-remote/mfe-remote.compat.js +0 -6
  120. package/src/generators/mfe-remote/mfe-remote.compat.js.map +0 -1
  121. package/src/generators/mfe-remote/mfe-remote.d.ts +0 -3
  122. package/src/generators/mfe-remote/mfe-remote.js +0 -31
  123. package/src/generators/mfe-remote/mfe-remote.js.map +0 -1
  124. package/src/generators/ng-add/utilities/e2e-project.migrator.js +0 -186
  125. package/src/generators/ng-add/utilities/e2e-project.migrator.js.map +0 -1
  126. package/src/generators/ng-add/utilities/e2e-utils.d.ts +0 -7
  127. package/src/generators/ng-add/utilities/e2e-utils.js +0 -46
  128. package/src/generators/ng-add/utilities/e2e-utils.js.map +0 -1
  129. package/src/generators/storybook-migrate-defaults-5-to-6/compat.d.ts +0 -2
  130. package/src/generators/storybook-migrate-defaults-5-to-6/compat.js +0 -6
  131. package/src/generators/storybook-migrate-defaults-5-to-6/compat.js.map +0 -1
  132. package/src/generators/storybook-migrate-defaults-5-to-6/schema.d.ts +0 -5
  133. package/src/generators/storybook-migrate-defaults-5-to-6/schema.json +0 -30
  134. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.d.ts +0 -4
  135. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.js +0 -14
  136. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.js.map +0 -1
  137. package/src/generators/storybook-migrate-stories-to-6-2/compat.d.ts +0 -2
  138. package/src/generators/storybook-migrate-stories-to-6-2/compat.js +0 -6
  139. package/src/generators/storybook-migrate-stories-to-6-2/compat.js.map +0 -1
  140. package/src/generators/storybook-migrate-stories-to-6-2/migrate-stories-to-6-2.d.ts +0 -3
  141. package/src/generators/storybook-migrate-stories-to-6-2/migrate-stories-to-6-2.js +0 -13
  142. package/src/generators/storybook-migrate-stories-to-6-2/migrate-stories-to-6-2.js.map +0 -1
  143. package/src/generators/storybook-migrate-stories-to-6-2/schema.json +0 -11
  144. package/src/utils/get-mfe-projects.js.map +0 -1
@@ -4,7 +4,7 @@ exports.writeNewWebpackConfig = void 0;
4
4
  const is_host_remote_config_1 = require("./is-host-remote-config");
5
5
  function writeNewWebpackConfig(ast, mfType, projectName) {
6
6
  const webpackConfig = `const { withModuleFederation } = require('@nrwl/angular/module-federation');
7
- const config = require('./mfe.config');
7
+ const config = require('./module-federation.config');
8
8
  module.exports = withModuleFederation(config);`;
9
9
  let mfeConfig = '';
10
10
  if (!mfType) {
@@ -4,7 +4,7 @@
4
4
  "cli": "nx",
5
5
  "title": "Convert to withModuleFederation Generator Options Schema",
6
6
  "type": "object",
7
- "description": "Converts an old micro frontend configuration to use the new withModuleFederation helper. It will run successfully if the following conditions are met: \n - Is either a host or remote application \n - Shared npm package configurations have not been modified \n - Name used to identify the Micro Frontend application matches the project name \n\n _**Note:** This generator will overwrite your webpack config. If you have additional custom configuration in your config file, it will be lost!_",
7
+ "description": "Converts an old micro frontend configuration to use the new withModuleFederation helper. It will run successfully if the following conditions are met: \n - Is either a host or remote application \n - Shared npm package configurations have not been modified \n - Name used to identify the Micro Frontend application matches the project name \n\n _**Note:** This generator will overwrite your webpack config. If you have additional custom configuration in your config file, it will be lost!_.",
8
8
  "additionalProperties": false,
9
9
  "properties": {
10
10
  "project": {
@@ -3,7 +3,7 @@
3
3
  "$id": "NxAngularConvertTSLintToESLintGenerator",
4
4
  "cli": "nx",
5
5
  "title": "Convert an Angular project from TSLint to ESLint",
6
- "description": "Convert an Angular project from TSLint to ESLint. NOTE: Does not work in `--dry-run mode`",
6
+ "description": "Convert an Angular project from TSLint to ESLint. NOTE: Does not work in `--dry-run mode`.",
7
7
  "examples": [
8
8
  {
9
9
  "command": "nx g convert-tslint-to-eslint myapp",
@@ -2,7 +2,7 @@
2
2
  "$schema": "http://json-schema.org/schema",
3
3
  "$id": "NxDowngradeModuleGenerator",
4
4
  "title": "Generates downgradeModule setup.",
5
- "description": "Sets up a Downgrade Module.",
5
+ "description": "Sets up a Downgrade Module for using AngularJS and Angular.",
6
6
  "cli": "nx",
7
7
  "type": "object",
8
8
  "properties": {
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const devkit_1 = require("@nrwl/devkit");
4
+ const host_1 = require("./host");
5
+ exports.default = (0, devkit_1.convertNxGenerator)(host_1.default);
6
+ //# sourceMappingURL=host.compat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.compat.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/host/host.compat.ts"],"names":[],"mappings":";;AAAA,yCAAkD;AAClD,iCAA0B;AAE1B,kBAAe,IAAA,2BAAkB,EAAC,cAAI,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Tree } from '@nrwl/devkit';
2
+ import type { Schema } from './schema';
3
+ export default function host(tree: Tree, options: Schema): Promise<() => void>;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const devkit_1 = require("@nrwl/devkit");
5
+ const devkit_2 = require("@nrwl/devkit");
6
+ const application_1 = require("../application/application");
7
+ const remote_1 = require("../remote/remote");
8
+ function host(tree, options) {
9
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
10
+ const projects = (0, devkit_2.getProjects)(tree);
11
+ const remotesToGenerate = [];
12
+ const remotesToIntegrate = [];
13
+ if (options.remotes && options.remotes.length > 0) {
14
+ options.remotes.forEach((remote) => {
15
+ if (!projects.has(remote)) {
16
+ remotesToGenerate.push(remote);
17
+ }
18
+ else {
19
+ remotesToIntegrate.push(remote);
20
+ }
21
+ });
22
+ }
23
+ const installTask = yield (0, application_1.default)(tree, Object.assign(Object.assign({}, options), { mfe: true, mfeType: 'host', routing: true, remotes: remotesToIntegrate !== null && remotesToIntegrate !== void 0 ? remotesToIntegrate : [], port: 4200, federationType: options.dynamic ? 'dynamic' : 'static', skipFormat: true }));
24
+ for (const remote of remotesToGenerate) {
25
+ yield (0, remote_1.default)(tree, Object.assign(Object.assign({}, options), { name: remote, host: (0, devkit_1.names)(options.name).fileName, skipFormat: true }));
26
+ }
27
+ if (!options.skipFormat) {
28
+ yield (0, devkit_1.formatFiles)(tree);
29
+ }
30
+ return installTask;
31
+ });
32
+ }
33
+ exports.default = host;
34
+ //# sourceMappingURL=host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/host/host.ts"],"names":[],"mappings":";;;AAAA,yCAAwD;AAGxD,yCAA2C;AAC3C,4DAA8D;AAC9D,6CAA+C;AAE/C,SAA8B,IAAI,CAAC,IAAU,EAAE,OAAe;;QAC5D,MAAM,QAAQ,GAAG,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;QAEnC,MAAM,iBAAiB,GAAa,EAAE,CAAC;QACvC,MAAM,kBAAkB,GAAa,EAAE,CAAC;QAExC,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACjD,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBACzB,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBAChC;qBAAM;oBACL,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACjC;YACH,CAAC,CAAC,CAAC;SACJ;QAED,MAAM,WAAW,GAAG,MAAM,IAAA,qBAAoB,EAAC,IAAI,kCAC9C,OAAO,KACV,GAAG,EAAE,IAAI,EACT,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,GAAI,EAAE,EACjC,IAAI,EAAE,IAAI,EACV,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EACtD,UAAU,EAAE,IAAI,IAChB,CAAC;QAEH,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE;YACtC,MAAM,IAAA,gBAAe,EAAC,IAAI,kCACrB,OAAO,KACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAA,cAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAClC,UAAU,EAAE,IAAI,IAChB,CAAC;SACJ;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;CAAA;AAzCD,uBAyCC"}
File without changes
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
- "$id": "NxMFEHost",
3
+ "$id": "NxMFHost",
4
4
  "cli": "nx",
5
- "title": "Nx MFE Host Application",
6
- "description": "Create an Angular Host Micro Frontend Application",
5
+ "title": "Nx Module Federation Host Application",
6
+ "description": "Create an Angular Host Module Federation Application.",
7
7
  "type": "object",
8
8
  "examples": [
9
9
  {
10
- "command": "nx g @nrwl/angular:mfe-host appName --remotes=remote1",
11
- "description": "Create an Angular application with configuration in place for MFE. If the `remotes` option is provided, attach the remote application to this application's configuration"
10
+ "command": "nx g @nrwl/angular:host appName --remotes=remote1",
11
+ "description": "Create an Angular application with configuration in place for Module Federation. If the `remotes` option is provided, attach the remote application to this application's configuration"
12
12
  }
13
13
  ],
14
14
  "properties": {
@@ -3,7 +3,7 @@
3
3
  "$id": "SchematicsAngularModuleInit",
4
4
  "cli": "nx",
5
5
  "title": "Init Angular Plugin",
6
- "description": "Initializes the `@nrwl/angular` plugin. NOTE: Does not work in the `--dry-run` mode",
6
+ "description": "Initializes the `@nrwl/angular` plugin. NOTE: Does not work in the `--dry-run` mode.",
7
7
  "type": "object",
8
8
  "properties": {
9
9
  "unitTestRunner": {
@@ -21,6 +21,7 @@ function karmaGenerator(tree, options) {
21
21
  'jasmine-core': '~3.10.0',
22
22
  'jasmine-spec-reporter': '~5.0.0',
23
23
  '@types/jasmine': '~3.5.0',
24
+ '@types/node': '16.11.7',
24
25
  });
25
26
  }
26
27
  exports.karmaGenerator = karmaGenerator;
@@ -1 +1 @@
1
- {"version":3,"file":"karma.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/karma/karma.ts"],"names":[],"mappings":";;;AACA,yCAKsB;AAGtB,SAAgB,cAAc,CAAC,IAAU,EAAE,OAAyB;IAClE,MAAM,WAAW,GAAG,IAAA,iBAAQ,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAEnD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;QACjC,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE;YAC9D,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,CAAC,eAAe,IAAI,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;QACnE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;KACjB;IACD,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ,EAAE,EACF;QACE,KAAK,EAAE,QAAQ;QACf,uBAAuB,EAAE,QAAQ;QACjC,gBAAgB,EAAE,QAAQ;QAC1B,eAAe,EAAE,QAAQ;QACzB,6BAA6B,EAAE,QAAQ;QACvC,cAAc,EAAE,SAAS;QACzB,uBAAuB,EAAE,QAAQ;QACjC,gBAAgB,EAAE,QAAQ;KAC3B,CACF,CAAC;AACJ,CAAC;AA1BD,wCA0BC;AAED,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"karma.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/karma/karma.ts"],"names":[],"mappings":";;;AACA,yCAKsB;AAGtB,SAAgB,cAAc,CAAC,IAAU,EAAE,OAAyB;IAClE,MAAM,WAAW,GAAG,IAAA,iBAAQ,EAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAEnD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;QACjC,IAAA,sBAAa,EAAC,IAAI,EAAE,IAAA,0BAAiB,EAAC,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE;YAC9D,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;KACJ;IAED,IAAI,OAAO,CAAC,eAAe,IAAI,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;QACnE,OAAO,GAAG,EAAE,GAAE,CAAC,CAAC;KACjB;IACD,OAAO,IAAA,qCAA4B,EACjC,IAAI,EACJ,EAAE,EACF;QACE,KAAK,EAAE,QAAQ;QACf,uBAAuB,EAAE,QAAQ;QACjC,gBAAgB,EAAE,QAAQ;QAC1B,eAAe,EAAE,QAAQ;QACzB,6BAA6B,EAAE,QAAQ;QACvC,cAAc,EAAE,SAAS;QACzB,uBAAuB,EAAE,QAAQ;QACjC,gBAAgB,EAAE,QAAQ;QAC1B,aAAa,EAAE,SAAS;KACzB,CACF,CAAC;AACJ,CAAC;AA3BD,wCA2BC;AAED,kBAAe,cAAc,CAAC"}
@@ -8,10 +8,10 @@ const jest_1 = require("@nrwl/jest");
8
8
  const linter_1 = require("@nrwl/linter");
9
9
  const generators_1 = require("@nrwl/workspace/generators");
10
10
  const init_1 = require("../../generators/init/init");
11
- const versions_1 = require("../../utils/versions");
12
11
  const add_linting_1 = require("../add-linting/add-linting");
13
12
  const karma_project_1 = require("../karma-project/karma-project");
14
13
  const setup_tailwind_1 = require("../setup-tailwind/setup-tailwind");
14
+ const dependencies_1 = require("../utils/dependencies");
15
15
  const add_module_1 = require("./lib/add-module");
16
16
  const enable_strict_type_checking_1 = require("./lib/enable-strict-type-checking");
17
17
  const normalize_options_1 = require("./lib/normalize-options");
@@ -57,12 +57,7 @@ function libraryGenerator(host, schema) {
57
57
  });
58
58
  }
59
59
  if (options.buildable || options.publishable) {
60
- (0, devkit_1.addDependenciesToPackageJson)(host, {}, {
61
- postcss: versions_1.postcssVersion,
62
- 'postcss-import': '^14.0.2',
63
- 'postcss-preset-env': '^6.7.0',
64
- 'postcss-url': '^10.1.1',
65
- });
60
+ (0, dependencies_1.addBuildableLibrariesPostCssDependencies)(host);
66
61
  }
67
62
  if (options.standaloneConfig) {
68
63
  yield (0, generators_1.convertToNxProjectGenerator)(host, {
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/library/library.ts"],"names":[],"mappings":";;;;AAAA,yCAMsB;AACtB,8DAAwE;AACxE,qCAAkD;AAClD,yCAAsC;AACtC,2DAAyE;AACzE,qDAA8C;AAC9C,mDAAsD;AACtD,4DAA6D;AAC7D,kEAAmE;AACnE,qEAAsE;AACtE,iDAA6C;AAC7C,mFAG2C;AAC3C,+DAA2D;AAE3D,qFAA8E;AAC9E,yDAAqD;AACrD,2DAAuD;AAGvD,SAAsB,gBAAgB,CAAC,IAAU,EAAE,MAAuB;;QACxE,4BAA4B;QAC5B,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC1E;QAED,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;YACrD,MAAM,IAAI,KAAK,CACb,oJAAoJ,CACrJ,CAAC;SACH;QAED,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAClE,MAAM,IAAI,KAAK,CACb,yFAAyF,CAC1F,CAAC;SACH;QAED,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAE/C,MAAM,IAAA,cAAI,EAAC,IAAI,kCACV,OAAO,KACV,UAAU,EAAE,IAAI,IAChB,CAAC;QAEH,MAAM,0BAA0B,GAAG,IAAA,0CAA0B,EAC3D,qBAAqB,EACrB,SAAS,CACV,CAAC;QACF,MAAM,0BAA0B,CAAC,IAAI,EAAE;YACrC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,SAAS,EAAE,OAAO;YAClB,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;YAC5D,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,qBAAqB,KAAK,OAAO,CAAC,WAAW,EAAE;YACzD,IAAA,gCAAuB,EACrB,IAAI,EACJ,OAAO,CAAC,qBAAqB,EAC7B,OAAO,CAAC,WAAW,CACpB,CAAC;SACH;QACD,MAAM,IAAA,8BAAa,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACnC,IAAA,gCAAc,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACvC,sCAAsC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,IAAA,sBAAS,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACzB,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7B,MAAM,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAI,OAAO,CAAC,WAAW,EAAE;YACvB,MAAM,IAAA,wBAAsB,EAAC,IAAI,EAAE;gBACjC,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;QAED,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE;YAC5C,IAAA,qCAA4B,EAC1B,IAAI,EACJ,EAAE,EACF;gBACE,OAAO,EAAE,yBAAc;gBACvB,gBAAgB,EAAE,SAAS;gBAC3B,oBAAoB,EAAE,QAAQ;gBAC9B,aAAa,EAAE,SAAS;aACzB,CACF,CAAC;SACH;QAED,IAAI,OAAO,CAAC,gBAAgB,EAAE;YAC5B,MAAM,IAAA,wCAA2B,EAAC,IAAI,EAAE;gBACtC,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,GAAG,EAAE,KAAK;gBACV,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC;CAAA;AAvFD,4CAuFC;AAED,SAAe,iBAAiB,CAAC,IAAU,EAAE,OAAyB;;QACpE,IAAI,OAAO,CAAC,cAAc,KAAK,MAAM,EAAE;YACrC,MAAM,IAAA,2BAAoB,EAAC,IAAI,EAAE;gBAC/B,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,KAAK;gBACjB,eAAe,EAAE,KAAK;gBACtB,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;aAAM,IAAI,OAAO,CAAC,cAAc,KAAK,OAAO,EAAE;YAC7C,MAAM,IAAA,uBAAqB,EAAC,IAAI,EAAE;gBAChC,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,UAAU,EAAE,IAAI;aACjB,CAAC,CAAC;SACJ;IACH,CAAC;CAAA;AAED,SAAS,sCAAsC,CAC7C,IAAU,EACV,OAAyB;IAEzB,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,WAAW,EAAE;QAC5C,IAAA,uDAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACzC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAU,EAAE,OAAyB;IAC1D,IAAI,OAAO,CAAC,MAAM,EAAE;QAClB,IAAA,sDAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KACzC;SAAM;QACL,IAAA,qDAAuB,EAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;KAC/C;AACH,CAAC;AAED,SAAe,UAAU,CAAC,IAAU,EAAE,OAAyB;;QAC7D,IAAI,OAAO,CAAC,MAAM,KAAK,eAAM,CAAC,IAAI,EAAE;YAClC,OAAO;SACR;QACD,MAAM,IAAA,qBAAmB,EAAC,IAAI,EAAE;YAC9B,WAAW,EAAE,OAAO,CAAC,IAAI;YACzB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,uBAAuB,EAAE,OAAO,CAAC,uBAAuB;YACxD,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;CAAA;AAED,kBAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/library/library.ts"],"names":[],"mappings":"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"}
@@ -6,10 +6,13 @@ const devkit_1 = require("@nrwl/devkit");
6
6
  const versions_1 = require("../../utils/versions");
7
7
  const app_migrator_1 = require("./utilities/app.migrator");
8
8
  const get_all_projects_1 = require("./utilities/get-all-projects");
9
+ const lib_migrator_1 = require("./utilities/lib.migrator");
9
10
  const normalize_options_1 = require("./utilities/normalize-options");
11
+ const validate_projects_1 = require("./utilities/validate-projects");
10
12
  const workspace_1 = require("./utilities/workspace");
11
13
  function migrateFromAngularCli(tree, rawOptions) {
12
14
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
15
+ (0, workspace_1.validateWorkspace)(tree);
13
16
  const projects = (0, get_all_projects_1.getAllProjects)(tree);
14
17
  const options = (0, normalize_options_1.normalizeOptions)(tree, rawOptions, projects);
15
18
  if (options.preserveAngularCliLayout) {
@@ -21,13 +24,26 @@ function migrateFromAngularCli(tree, rawOptions) {
21
24
  (0, workspace_1.decorateAngularCli)(tree);
22
25
  }
23
26
  else {
24
- (0, workspace_1.validateWorkspace)(tree, projects);
27
+ // TODO(leo): remove when support for multiple apps is added
28
+ if (projects.apps.length > 2) {
29
+ throw new Error('Can not convert workspaces with more than 1 application.');
30
+ }
25
31
  const migrators = [
26
32
  ...projects.apps.map((app) => new app_migrator_1.AppMigrator(tree, options, app)),
27
- // TODO: add libraries migrator when support for libs is added
33
+ ...projects.libs.map((lib) => new lib_migrator_1.LibMigrator(tree, options, lib)),
28
34
  ];
29
- // TODO: validate all projects and collect errors before migrating when
30
- // multiple projects are supported
35
+ // validate all projects
36
+ (0, validate_projects_1.validateProjects)(migrators);
37
+ const workspaceCapabilities = (0, workspace_1.getWorkspaceCapabilities)(tree, projects);
38
+ /**
39
+ * Keep a copy of the root eslint config to restore it later. We need to
40
+ * do this because the root config can also be the config for the app at
41
+ * the root of the Angular CLI workspace and it will be moved as part of
42
+ * the app migration.
43
+ */
44
+ let eslintConfig = workspaceCapabilities.eslint && tree.exists('.eslintrc.json')
45
+ ? (0, devkit_1.readJson)(tree, '.eslintrc.json')
46
+ : undefined;
31
47
  // create and update root files and configurations
32
48
  (0, devkit_1.updateJson)(tree, 'angular.json', (json) => (Object.assign(Object.assign({}, json), { version: 2, $schema: undefined })));
33
49
  (0, workspace_1.createNxJson)(tree, options);
@@ -35,17 +51,23 @@ function migrateFromAngularCli(tree, rawOptions) {
35
51
  (0, workspace_1.updateRootTsConfig)(tree);
36
52
  (0, workspace_1.updatePackageJson)(tree);
37
53
  (0, workspace_1.decorateAngularCli)(tree);
38
- // TODO: check later if it's still needed
39
- (0, workspace_1.updateTsLint)(tree);
40
54
  yield (0, workspace_1.createWorkspaceFiles)(tree);
41
55
  // migrate all projects
42
56
  for (const migrator of migrators) {
43
57
  yield migrator.migrate();
44
58
  }
45
- // needs to be done last because the Angular CLI workspace can have one
46
- // in the root for the root application, so we wait until that root Karma
47
- // config is moved when the projects are migrated before creating this one
48
- (0, workspace_1.createRootKarmaConfig)(tree);
59
+ /**
60
+ * This needs to be done last because the Angular CLI workspace can have
61
+ * these files in the root for the root application, so we wait until
62
+ * those root config files are moved when the projects are migrated.
63
+ */
64
+ if (workspaceCapabilities.karma) {
65
+ (0, workspace_1.createRootKarmaConfig)(tree);
66
+ }
67
+ if (workspaceCapabilities.eslint) {
68
+ (0, workspace_1.updateRootEsLintConfig)(tree, eslintConfig);
69
+ (0, workspace_1.cleanupEsLintPackages)(tree);
70
+ }
49
71
  yield (0, devkit_1.formatFiles)(tree);
50
72
  }
51
73
  if (!options.skipInstall) {
@@ -1 +1 @@
1
- {"version":3,"file":"migrate-from-angular-cli.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts"],"names":[],"mappings":";;;;AAAA,yCAMsB;AACtB,mDAAiD;AAEjD,2DAAuD;AACvD,mEAA8D;AAC9D,qEAAiE;AAEjE,qDAU+B;AAE/B,SAAsB,qBAAqB,CACzC,IAAU,EACV,UAA4B;;QAE5B,MAAM,QAAQ,GAAG,IAAA,iCAAc,EAAC,IAAI,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,IAAA,oCAAgB,EAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;QAE7D,IAAI,OAAO,CAAC,wBAAwB,EAAE;YACpC,IAAA,qCAA4B,EAC1B,IAAI,EACJ,EAAE,EACF;gBACE,EAAE,EAAE,oBAAS;gBACb,iBAAiB,EAAE,oBAAS;aAC7B,CACF,CAAC;YACF,IAAA,wBAAY,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;YAClC,IAAA,8BAAkB,EAAC,IAAI,CAAC,CAAC;SAC1B;aAAM;YACL,IAAA,6BAAiB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAElC,MAAM,SAAS,GAAsB;gBACnC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,0BAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;gBAClE,8DAA8D;aAC/D,CAAC;YAEF,uEAAuE;YACvE,kCAAkC;YAElC,kDAAkD;YAClD,IAAA,mBAAU,EAAC,IAAI,EAAE,cAAc,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,iCACtC,IAAI,KACP,OAAO,EAAE,CAAC,EACV,OAAO,EAAE,SAAS,IAClB,CAAC,CAAC;YACJ,IAAA,wBAAY,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC5B,IAAA,yCAA6B,EAAC,IAAI,CAAC,CAAC;YACpC,IAAA,8BAAkB,EAAC,IAAI,CAAC,CAAC;YACzB,IAAA,6BAAiB,EAAC,IAAI,CAAC,CAAC;YACxB,IAAA,8BAAkB,EAAC,IAAI,CAAC,CAAC;YACzB,yCAAyC;YACzC,IAAA,wBAAY,EAAC,IAAI,CAAC,CAAC;YACnB,MAAM,IAAA,gCAAoB,EAAC,IAAI,CAAC,CAAC;YAEjC,uBAAuB;YACvB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;gBAChC,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;aAC1B;YAED,uEAAuE;YACvE,yEAAyE;YACzE,0EAA0E;YAC1E,IAAA,iCAAqB,EAAC,IAAI,CAAC,CAAC;YAE5B,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;SACzB;QAED,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YACxB,OAAO,GAAG,EAAE;gBACV,IAAA,4BAAmB,EAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC;SACH;IACH,CAAC;CAAA;AA9DD,sDA8DC"}
1
+ {"version":3,"file":"migrate-from-angular-cli.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/ng-add/migrate-from-angular-cli.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,6 @@ import { E2eTestRunner, UnitTestRunner } from '../../utils/test-runners';
3
3
  import type { Styles } from '../utils/types';
4
4
 
5
5
  export interface GeneratorOptions {
6
- name?: string;
7
6
  skipInstall?: boolean;
8
7
  npmScope?: string;
9
8
  preserveAngularCliLayout?: boolean;
@@ -24,13 +24,6 @@
24
24
  "description": "Preserve the Angular CLI layout instead of moving the app into apps. NOTE: only used if running the generator in an Angular CLI workspace.",
25
25
  "default": false
26
26
  },
27
- "name": {
28
- "type": "string",
29
- "description": "Project name. NOTE: only used if running the generator in an Angular CLI workspace.",
30
- "$default": {
31
- "$source": "projectName"
32
- }
33
- },
34
27
 
35
28
  "unitTestRunner": {
36
29
  "type": "string",
@@ -10,9 +10,8 @@ export declare class AppMigrator extends ProjectMigrator {
10
10
  private moveProjectFiles;
11
11
  private updateProjectConfiguration;
12
12
  private updateTsConfigs;
13
- private updateProjectTsLint;
13
+ private updateEsLintConfig;
14
14
  private convertBuildOptions;
15
15
  private convertServerOptions;
16
- private convertAsset;
17
- private convertPath;
16
+ private moveFilePathsFromTargetToProjectRoot;
18
17
  }
@@ -3,14 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AppMigrator = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const devkit_1 = require("@nrwl/devkit");
6
+ const linter_1 = require("@nrwl/linter");
6
7
  const generators_1 = require("@nrwl/workspace/generators");
7
8
  const typescript_1 = require("@nrwl/workspace/src/utilities/typescript");
8
- const e2e_project_migrator_1 = require("./e2e-project.migrator");
9
+ const path_1 = require("path");
10
+ const e2e_migrator_1 = require("./e2e.migrator");
9
11
  const project_migrator_1 = require("./project.migrator");
10
12
  class AppMigrator extends project_migrator_1.ProjectMigrator {
11
13
  constructor(tree, options, project) {
12
14
  super(tree, options, project, 'apps');
13
- this.e2eMigrator = new e2e_project_migrator_1.E2eProjectMigrator(tree, options, project);
15
+ this.e2eMigrator = new e2e_migrator_1.E2eProjectMigrator(tree, options, project);
14
16
  }
15
17
  migrate() {
16
18
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
@@ -18,42 +20,65 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
18
20
  this.moveProjectFiles();
19
21
  yield this.updateProjectConfiguration();
20
22
  this.updateTsConfigs();
21
- // TODO: check later if it's still needed
22
- this.updateProjectTsLint();
23
+ this.updateEsLintConfig();
23
24
  });
24
25
  }
25
26
  validate() {
26
- // TODO: implement validation when multiple apps are supported
27
- return null;
27
+ var _a;
28
+ const result = [];
29
+ if (this.projectConfig.targets.lint &&
30
+ this.projectConfig.targets.lint.executor !==
31
+ '@angular-eslint/builder:lint') {
32
+ result.push({
33
+ message: `The "lint" target is using an unsupported builder "${this.projectConfig.targets.lint.executor}".`,
34
+ hint: `The supported builder is "@angular-eslint/builder:lint".`,
35
+ });
36
+ }
37
+ result.push(...((_a = this.e2eMigrator.validate()) !== null && _a !== void 0 ? _a : []));
38
+ return result.length ? result : null;
28
39
  }
29
40
  moveProjectFiles() {
41
+ var _a;
30
42
  // it is not required to have a browserslist
31
43
  this.moveProjectRootFile((0, devkit_1.joinPathFragments)(this.project.oldRoot, 'browserslist'), false);
32
44
  this.moveProjectRootFile((0, devkit_1.joinPathFragments)(this.project.oldRoot, '.browserslistrc'), false);
33
- this.moveProjectRootFile(this.projectConfig.targets.build.options.tsConfig);
45
+ this.moveFilePathsFromTargetToProjectRoot(this.projectConfig.targets.build, ['tsConfig', 'webWorkerTsConfig', 'ngswConfigPath']);
34
46
  if (this.projectConfig.targets.test) {
35
- this.moveProjectRootFile(this.projectConfig.targets.test.options.karmaConfig);
36
- this.moveProjectRootFile(this.projectConfig.targets.test.options.tsConfig);
47
+ this.moveFilePathsFromTargetToProjectRoot(this.projectConfig.targets.test, ['karmaConfig', 'tsConfig', 'webWorkerTsConfig']);
37
48
  }
38
49
  else {
39
50
  // there could still be a karma.conf.js file in the root
40
51
  // so move to new location
41
- if (this.tree.exists('karma.conf.js')) {
42
- console.info('No test configuration, but root Karma config file found');
43
- this.moveProjectRootFile('karma.conf.js');
52
+ const karmaConfig = (0, devkit_1.joinPathFragments)(this.project.oldRoot, 'karma.conf.js');
53
+ if (this.tree.exists(karmaConfig)) {
54
+ this.logger.info('No "test" target was found, but a root Karma config file was found in the project root. The file will be moved to the new location.');
55
+ this.moveProjectRootFile(karmaConfig);
44
56
  }
45
57
  }
46
58
  if (this.projectConfig.targets.server) {
47
59
  this.moveProjectRootFile(this.projectConfig.targets.server.options.tsConfig);
48
60
  }
61
+ if (this.projectConfig.targets.lint) {
62
+ this.moveProjectRootFile((_a = this.projectConfig.targets.lint.options.eslintConfig) !== null && _a !== void 0 ? _a : (0, devkit_1.joinPathFragments)(this.project.oldRoot, '.eslintrc.json'));
63
+ }
64
+ else {
65
+ // there could still be a .eslintrc.json file in the root
66
+ // so move to new location
67
+ const eslintConfig = (0, devkit_1.joinPathFragments)(this.project.oldRoot, '.eslintrc.json');
68
+ if (this.tree.exists(eslintConfig)) {
69
+ this.logger.info('No "lint" target was found, but an ESLint config file was found in the project root. The file will be moved to the new location.');
70
+ this.moveProjectRootFile(eslintConfig);
71
+ }
72
+ }
49
73
  this.moveDir(this.project.oldSourceRoot, this.project.newSourceRoot);
50
74
  }
51
75
  updateProjectConfiguration() {
76
+ var _a, _b;
52
77
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
53
78
  this.projectConfig.root = this.project.newRoot;
54
79
  this.projectConfig.sourceRoot = this.project.newSourceRoot;
55
80
  this.convertBuildOptions(this.projectConfig.targets.build.options);
56
- Object.values(this.projectConfig.targets.build.configurations).forEach((config) => this.convertBuildOptions(config));
81
+ Object.values((_a = this.projectConfig.targets.build.configurations) !== null && _a !== void 0 ? _a : {}).forEach((config) => this.convertBuildOptions(config));
57
82
  if (this.projectConfig.targets.test) {
58
83
  const testOptions = this.projectConfig.targets.test.options;
59
84
  testOptions.main =
@@ -73,10 +98,19 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
73
98
  testOptions.scripts.map((script) => this.convertAsset(script));
74
99
  }
75
100
  if (this.projectConfig.targets.lint) {
76
- this.projectConfig.targets.lint.options.tsConfig = [
77
- (0, devkit_1.joinPathFragments)(this.project.newRoot, 'tsconfig.app.json'),
78
- (0, devkit_1.joinPathFragments)(this.project.newRoot, 'tsconfig.spec.json'),
79
- ];
101
+ this.projectConfig.targets.lint.executor = '@nrwl/linter:eslint';
102
+ const lintOptions = this.projectConfig.targets.lint.options;
103
+ lintOptions.eslintConfig =
104
+ lintOptions.eslintConfig &&
105
+ (0, devkit_1.joinPathFragments)(this.project.newRoot, (0, path_1.basename)(lintOptions.eslintConfig));
106
+ lintOptions.lintFilePatterns =
107
+ lintOptions.lintFilePatterns &&
108
+ lintOptions.lintFilePatterns.map((pattern) => this.convertPath(pattern));
109
+ const eslintConfigPath = (_b = lintOptions.eslintConfig) !== null && _b !== void 0 ? _b : (0, devkit_1.joinPathFragments)(this.project.newRoot, '.eslintrc.json');
110
+ const eslintConfig = (0, devkit_1.readJson)(this.tree, eslintConfigPath);
111
+ if ((0, linter_1.hasRulesRequiringTypeChecking)(eslintConfig)) {
112
+ lintOptions.hasTypeAwareRules = true;
113
+ }
80
114
  }
81
115
  if (this.projectConfig.targets.server) {
82
116
  const serverOptions = this.projectConfig.targets.server.options;
@@ -91,40 +125,48 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
91
125
  });
92
126
  }
93
127
  updateTsConfigs() {
94
- const tsConfigPath = (0, typescript_1.getRootTsConfigPathInTree)(this.tree);
128
+ const rootTsConfigFile = (0, typescript_1.getRootTsConfigPathInTree)(this.tree);
95
129
  const projectOffsetFromRoot = (0, devkit_1.offsetFromRoot)(this.projectConfig.root);
96
- (0, devkit_1.updateJson)(this.tree, this.projectConfig.targets.build.options.tsConfig, (json) => {
97
- json.extends = `${projectOffsetFromRoot}${tsConfigPath}`;
98
- json.compilerOptions = json.compilerOptions || {};
99
- json.compilerOptions.outDir = `${projectOffsetFromRoot}dist/out-tsc`;
100
- return json;
101
- });
130
+ this.updateTsConfigFile(this.projectConfig.targets.build.options.tsConfig, rootTsConfigFile, projectOffsetFromRoot);
102
131
  if (this.projectConfig.targets.test) {
103
- (0, devkit_1.updateJson)(this.tree, this.projectConfig.targets.test.options.tsConfig, (json) => {
104
- var _a;
105
- json.extends = `${projectOffsetFromRoot}${tsConfigPath}`;
106
- json.compilerOptions = (_a = json.compilerOptions) !== null && _a !== void 0 ? _a : {};
107
- json.compilerOptions.outDir = `${projectOffsetFromRoot}dist/out-tsc`;
108
- return json;
109
- });
132
+ this.updateTsConfigFile(this.projectConfig.targets.test.options.tsConfig, rootTsConfigFile, projectOffsetFromRoot);
110
133
  }
111
134
  if (this.projectConfig.targets.server) {
112
- (0, devkit_1.updateJson)(this.tree, this.projectConfig.targets.server.options.tsConfig, (json) => {
113
- var _a;
114
- json.extends = `${projectOffsetFromRoot}${tsConfigPath}`;
115
- json.compilerOptions = (_a = json.compilerOptions) !== null && _a !== void 0 ? _a : {};
116
- json.compilerOptions.outDir = `${projectOffsetFromRoot}dist/out-tsc`;
117
- return json;
118
- });
135
+ this.updateTsConfigFile(this.projectConfig.targets.server.options.tsConfig, rootTsConfigFile, projectOffsetFromRoot);
119
136
  }
120
137
  }
121
- updateProjectTsLint() {
122
- if (this.tree.exists(`${this.project.newRoot}/tslint.json`)) {
123
- (0, devkit_1.updateJson)(this.tree, `${this.project.newRoot}/tslint.json`, (json) => {
124
- json.extends = '../../tslint.json';
125
- return json;
126
- });
138
+ updateEsLintConfig() {
139
+ var _a, _b, _c;
140
+ const eslintConfigPath = (_c = (_b = (_a = this.projectConfig.targets.lint) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.eslintConfig) !== null && _c !== void 0 ? _c : (0, devkit_1.joinPathFragments)(this.project.newRoot, '.eslintrc.json');
141
+ if (!this.tree.exists(eslintConfigPath)) {
142
+ return;
127
143
  }
144
+ (0, devkit_1.updateJson)(this.tree, eslintConfigPath, (json) => {
145
+ var _a;
146
+ delete json.root;
147
+ json.ignorePatterns = ['!**/*'];
148
+ const rootEsLintConfigRelativePath = (0, devkit_1.joinPathFragments)((0, devkit_1.offsetFromRoot)(this.projectConfig.root), '.eslintrc.json');
149
+ if (Array.isArray(json.extends)) {
150
+ json.extends = json.extends.map((extend) => this.convertEsLintConfigExtendToNewPath(eslintConfigPath, extend));
151
+ // it might have not been extending from the root config, make sure it does
152
+ if (!json.extends.includes(rootEsLintConfigRelativePath)) {
153
+ json.extends.push(rootEsLintConfigRelativePath);
154
+ }
155
+ }
156
+ else {
157
+ json.extends = rootEsLintConfigRelativePath;
158
+ }
159
+ (_a = json.overrides) === null || _a === void 0 ? void 0 : _a.forEach((override) => {
160
+ var _a;
161
+ if (!((_a = override.parserOptions) === null || _a === void 0 ? void 0 : _a.project)) {
162
+ return;
163
+ }
164
+ override.parserOptions.project = [
165
+ `${this.projectConfig.root}/tsconfig.*?.json`,
166
+ ];
167
+ });
168
+ return json;
169
+ });
128
170
  }
129
171
  convertBuildOptions(buildOptions) {
130
172
  buildOptions.outputPath =
@@ -171,18 +213,12 @@ class AppMigrator extends project_migrator_1.ProjectMigrator {
171
213
  with: this.convertAsset(replacement.with),
172
214
  }));
173
215
  }
174
- convertAsset(asset) {
175
- if (typeof asset === 'string') {
176
- return this.convertPath(asset);
177
- }
178
- else {
179
- return Object.assign(Object.assign({}, asset), { input: this.convertPath(asset.input) });
180
- }
181
- }
182
- convertPath(originalPath) {
183
- return (originalPath === null || originalPath === void 0 ? void 0 : originalPath.startsWith(this.project.oldSourceRoot))
184
- ? (0, devkit_1.joinPathFragments)(this.project.newSourceRoot, originalPath.replace(this.project.oldSourceRoot, ''))
185
- : originalPath;
216
+ moveFilePathsFromTargetToProjectRoot(target, options) {
217
+ options.forEach((option) => {
218
+ this.getTargetValuesForOption(target, option).forEach((path) => {
219
+ this.moveProjectRootFile(path);
220
+ });
221
+ });
186
222
  }
187
223
  }
188
224
  exports.AppMigrator = AppMigrator;
@@ -1 +1 @@
1
- {"version":3,"file":"app.migrator.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/ng-add/utilities/app.migrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.migrator.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/ng-add/utilities/app.migrator.ts"],"names":[],"mappings":"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"}