@nrwl/angular 13.3.0-beta.3 → 13.3.0-rc.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 (138) hide show
  1. package/generators.d.ts +1 -0
  2. package/generators.js +1 -0
  3. package/generators.js.map +1 -1
  4. package/generators.json +11 -1
  5. package/migrations.json +12 -0
  6. package/ng-package.json +4 -2
  7. package/package.json +9 -10
  8. package/src/builders/utilities/webpack.d.ts +1 -0
  9. package/src/builders/utilities/webpack.js +36 -0
  10. package/src/builders/utilities/webpack.js.map +1 -0
  11. package/src/builders/webpack-browser/webpack-browser.impl.js +6 -5
  12. package/src/builders/webpack-browser/webpack-browser.impl.js.map +1 -1
  13. package/src/builders/webpack-server/webpack-server.impl.js +3 -2
  14. package/src/builders/webpack-server/webpack-server.impl.js.map +1 -1
  15. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.di.d.ts +9 -0
  16. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.di.js +13 -4
  17. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.di.js.map +1 -1
  18. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.d.ts +5 -4
  19. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +4 -3
  20. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js.map +1 -1
  21. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.di.d.ts +1 -0
  22. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.di.js +3 -2
  23. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.di.js.map +1 -1
  24. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.transform.js +2 -3
  25. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/entry-point/write-package.transform.js.map +1 -1
  26. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/options.di.d.ts +14 -0
  27. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/options.di.js +32 -0
  28. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/options.di.js.map +1 -0
  29. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/package.di.d.ts +2 -0
  30. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/package.di.js +5 -3
  31. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/ng-package/package.di.js.map +1 -1
  32. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.d.ts +47 -0
  33. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.di.d.ts +10 -0
  34. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.di.js +18 -0
  35. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.di.js.map +1 -0
  36. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.js +263 -0
  37. package/src/executors/ng-packagr-lite/ng-packagr-adjustments/styles/stylesheet-processor.js.map +1 -0
  38. package/src/executors/ng-packagr-lite/ng-packagr-lite.impl.js +5 -0
  39. package/src/executors/ng-packagr-lite/ng-packagr-lite.impl.js.map +1 -1
  40. package/src/executors/ng-packagr-lite/schema.json +4 -0
  41. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.di.js +2 -2
  42. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.di.js.map +1 -1
  43. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.d.ts +1 -1
  44. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js +1 -1
  45. package/src/executors/package/ng-packagr-adjustments/ng-package/entry-point/compile-ngc.transform.js.map +1 -1
  46. package/src/executors/package/ng-packagr-adjustments/ng-package/options.di.d.ts +14 -0
  47. package/src/executors/package/ng-packagr-adjustments/ng-package/options.di.js +32 -0
  48. package/src/executors/package/ng-packagr-adjustments/ng-package/options.di.js.map +1 -0
  49. package/src/executors/package/ng-packagr-adjustments/ng-package/package.di.d.ts +2 -0
  50. package/src/executors/package/ng-packagr-adjustments/ng-package/package.di.js +5 -3
  51. package/src/executors/package/ng-packagr-adjustments/ng-package/package.di.js.map +1 -1
  52. package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.d.ts +4 -2
  53. package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.js +17 -21
  54. package/src/executors/package/ng-packagr-adjustments/styles/stylesheet-processor.js.map +1 -1
  55. package/src/executors/package/package.impl.js +8 -4
  56. package/src/executors/package/package.impl.js.map +1 -1
  57. package/src/executors/package/schema.d.ts +2 -1
  58. package/src/executors/package/schema.json +4 -0
  59. package/src/executors/{package/ng-packagr-adjustments/utilities → utilities}/tailwindcss.d.ts +1 -1
  60. package/src/executors/{package/ng-packagr-adjustments/utilities → utilities}/tailwindcss.js +11 -9
  61. package/src/executors/utilities/tailwindcss.js.map +1 -0
  62. package/src/generators/application/application.js +23 -7
  63. package/src/generators/application/application.js.map +1 -1
  64. package/src/generators/application/lib/index.d.ts +2 -2
  65. package/src/generators/application/lib/index.js +2 -2
  66. package/src/generators/application/lib/index.js.map +1 -1
  67. package/src/generators/application/lib/normalize-options.js +3 -1
  68. package/src/generators/application/lib/normalize-options.js.map +1 -1
  69. package/src/generators/application/lib/nrwl-home-tpl.d.ts +2 -3
  70. package/src/generators/application/lib/nrwl-home-tpl.js +790 -314
  71. package/src/generators/application/lib/nrwl-home-tpl.js.map +1 -1
  72. package/src/generators/application/lib/{update-component-styles.d.ts → update-app-component-template.d.ts} +1 -1
  73. package/src/generators/application/lib/{update-component-template.js → update-app-component-template.js} +7 -7
  74. package/src/generators/application/lib/update-app-component-template.js.map +1 -0
  75. package/src/generators/application/lib/update-component-spec.js +8 -1
  76. package/src/generators/application/lib/update-component-spec.js.map +1 -1
  77. package/src/generators/application/lib/update-config-files.js +1 -7
  78. package/src/generators/application/lib/update-config-files.js.map +1 -1
  79. package/src/generators/application/lib/update-e2e-project.js +1 -1
  80. package/src/generators/application/lib/update-e2e-project.js.map +1 -1
  81. package/src/generators/application/lib/{update-component-template.d.ts → update-nx-component-template.d.ts} +1 -1
  82. package/src/generators/application/lib/update-nx-component-template.js +31 -0
  83. package/src/generators/application/lib/update-nx-component-template.js.map +1 -0
  84. package/src/generators/library/files/lib/{README.md → README.md__tpl__} +0 -0
  85. package/src/generators/library/lib/normalize-options.js +3 -1
  86. package/src/generators/library/lib/normalize-options.js.map +1 -1
  87. package/src/generators/library/lib/update-ng-package.js +1 -1
  88. package/src/generators/library/lib/update-ng-package.js.map +1 -1
  89. package/src/generators/library/lib/update-project.js +1 -1
  90. package/src/generators/library/lib/update-project.js.map +1 -1
  91. package/src/generators/library/lib/update-tsconfig.js +1 -1
  92. package/src/generators/library/lib/update-tsconfig.js.map +1 -1
  93. package/src/generators/scam/lib/create-module.d.ts +3 -0
  94. package/src/generators/scam/lib/create-module.js +49 -0
  95. package/src/generators/scam/lib/create-module.js.map +1 -0
  96. package/src/generators/scam/lib/index.d.ts +0 -0
  97. package/src/generators/scam/lib/index.js +1 -0
  98. package/src/generators/scam/lib/index.js.map +1 -0
  99. package/src/generators/scam/scam.compat.d.ts +2 -0
  100. package/src/generators/scam/scam.compat.js +6 -0
  101. package/src/generators/scam/scam.compat.js.map +1 -0
  102. package/src/generators/scam/scam.d.ts +4 -0
  103. package/src/generators/scam/scam.js +19 -0
  104. package/src/generators/scam/scam.js.map +1 -0
  105. package/src/generators/scam/schema.d.ts +18 -0
  106. package/src/generators/scam/schema.json +115 -0
  107. package/src/generators/setup-mfe/files/webpack/webpack.config.js__tmpl__ +7 -1
  108. package/src/generators/setup-mfe/lib/add-remote-to-host.js +1 -1
  109. package/src/generators/setup-mfe/lib/add-remote-to-host.js.map +1 -1
  110. package/src/generators/setup-mfe/lib/setup-serve-target.js +4 -2
  111. package/src/generators/setup-mfe/lib/setup-serve-target.js.map +1 -1
  112. package/src/generators/storybook-configuration/storybook-configuration.js +0 -10
  113. package/src/generators/storybook-configuration/storybook-configuration.js.map +1 -1
  114. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.d.ts +1 -2
  115. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.js +1 -2
  116. package/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.js.map +1 -1
  117. package/src/migrations/update-13-2-0/opt-out-testbed-teardown.d.ts +2 -0
  118. package/src/migrations/update-13-2-0/opt-out-testbed-teardown.js +231 -0
  119. package/src/migrations/update-13-2-0/opt-out-testbed-teardown.js.map +1 -0
  120. package/src/migrations/update-13-2-0/update-testing-imports.js +14 -1
  121. package/src/migrations/update-13-2-0/update-testing-imports.js.map +1 -1
  122. package/src/migrations/update-13-3-0/update-mfe-webpack-config.d.ts +6 -0
  123. package/src/migrations/update-13-3-0/update-mfe-webpack-config.js +120 -0
  124. package/src/migrations/update-13-3-0/update-mfe-webpack-config.js.map +1 -0
  125. package/src/runtime/nx/data-persistence.d.ts +3 -0
  126. package/src/runtime/nx/nx.module.d.ts +4 -0
  127. package/src/utils/nx-devkit/ast-utils.d.ts +2 -0
  128. package/src/utils/nx-devkit/ast-utils.js +35 -1
  129. package/src/utils/nx-devkit/ast-utils.js.map +1 -1
  130. package/src/utils/versions.d.ts +0 -1
  131. package/src/utils/versions.js +2 -3
  132. package/src/utils/versions.js.map +1 -1
  133. package/testing/ng-package.json +6 -0
  134. package/testing/package.json +3 -5
  135. package/src/executors/package/ng-packagr-adjustments/utilities/tailwindcss.js.map +0 -1
  136. package/src/generators/application/lib/update-component-styles.js +0 -26
  137. package/src/generators/application/lib/update-component-styles.js.map +0 -1
  138. package/src/generators/application/lib/update-component-template.js.map +0 -1
@@ -3,9 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setupServeTarget = void 0;
4
4
  const devkit_1 = require("@nrwl/devkit");
5
5
  function setupServeTarget(host, options) {
6
- var _a;
6
+ var _a, _b;
7
7
  const appConfig = (0, devkit_1.readProjectConfiguration)(host, options.appName);
8
- appConfig.targets['serve'] = Object.assign(Object.assign({}, appConfig.targets['serve']), { executor: '@nrwl/angular:webpack-server', options: Object.assign(Object.assign({}, appConfig.targets['serve'].options), { port: (_a = options.port) !== null && _a !== void 0 ? _a : undefined }) });
8
+ appConfig.targets['serve'] = Object.assign(Object.assign({}, appConfig.targets['serve']), { executor: '@nrwl/angular:webpack-server', options: Object.assign(Object.assign({}, appConfig.targets['serve'].options), { port: (_a = options.port) !== null && _a !== void 0 ? _a : undefined, publicHost: options.host
9
+ ? undefined
10
+ : `http://localhost:${(_b = options.port) !== null && _b !== void 0 ? _b : 4200}` }) });
9
11
  if (options.mfeType === 'host') {
10
12
  const remoteServeCommands = options.remotes
11
13
  ? options.remotes.map((r) => `nx serve ${r}`)
@@ -1 +1 @@
1
- {"version":3,"file":"setup-serve-target.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-mfe/lib/setup-serve-target.ts"],"names":[],"mappings":";;;AAGA,yCAGsB;AAEtB,SAAgB,gBAAgB,CAAC,IAAU,EAAE,OAAe;;IAC1D,MAAM,SAAS,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAElE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,mCACrB,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAC7B,QAAQ,EAAE,8BAA8B,EACxC,OAAO,kCACF,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,KACrC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,SAAS,MAElC,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE;QAC9B,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO;YACzC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,QAAQ,GAAG,mBAAmB;YAClC,CAAC,CAAC,CAAC,GAAG,mBAAmB,EAAE,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC;YACzD,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAEpC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG;YAC/B,QAAQ,EAAE,8BAA8B;YACxC,OAAO,EAAE;gBACP,QAAQ;aACT;SACF,CAAC;KACH;IACD,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE7D,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE;QAChD,MAAM,aAAa,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnE,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,mCAC7B,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,KACrC,OAAO,kCACF,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,KAC7C,QAAQ,EAAE;oBACR,YAAY,OAAO,CAAC,OAAO,EAAE;oBAC7B,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ;iBACvD,MAEJ,CAAC;QAEF,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KAC/D;AACH,CAAC;AA7CD,4CA6CC"}
1
+ {"version":3,"file":"setup-serve-target.js","sourceRoot":"","sources":["../../../../../../../packages/angular/src/generators/setup-mfe/lib/setup-serve-target.ts"],"names":[],"mappings":";;;AAGA,yCAGsB;AAEtB,SAAgB,gBAAgB,CAAC,IAAU,EAAE,OAAe;;IAC1D,MAAM,SAAS,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAElE,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,mCACrB,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAC7B,QAAQ,EAAE,8BAA8B,EACxC,OAAO,kCACF,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,KACrC,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,SAAS,EAC/B,UAAU,EAAE,OAAO,CAAC,IAAI;gBACtB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,oBAAoB,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAI,EAAE,MAEjD,CAAC;IAEF,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM,EAAE;QAC9B,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO;YACzC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,QAAQ,GAAG,mBAAmB;YAClC,CAAC,CAAC,CAAC,GAAG,mBAAmB,EAAE,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC;YACzD,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAEpC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG;YAC/B,QAAQ,EAAE,8BAA8B;YACxC,OAAO,EAAE;gBACP,QAAQ;aACT;SACF,CAAC;KACH;IACD,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAE7D,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE;QAChD,MAAM,aAAa,GAAG,IAAA,iCAAwB,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAEnE,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,mCAC7B,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,KACrC,OAAO,kCACF,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,KAC7C,QAAQ,EAAE;oBACR,YAAY,OAAO,CAAC,OAAO,EAAE;oBAC7B,GAAG,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ;iBACvD,MAEJ,CAAC;QAEF,IAAA,mCAA0B,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;KAC/D;AACH,CAAC;AAhDD,4CAgDC"}
@@ -2,8 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.storybookConfigurationGenerator = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const devkit_1 = require("@nrwl/devkit");
6
- const versions_1 = require("../../utils/versions");
7
5
  const assert_compatible_storybook_version_1 = require("./lib/assert-compatible-storybook-version");
8
6
  const generate_stories_1 = require("./lib/generate-stories");
9
7
  const generate_storybook_configuration_1 = require("./lib/generate-storybook-configuration");
@@ -12,19 +10,11 @@ function storybookConfigurationGenerator(tree, options) {
12
10
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
13
11
  (0, assert_compatible_storybook_version_1.assertCompatibleStorybookVersion)();
14
12
  (0, validate_options_1.validateOptions)(options);
15
- // TODO(coly010/juristr): remove when @nrwl/storybook has been updated
16
- const angularStorybookInstallTask = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, {
17
- '@storybook/angular': versions_1.storybookVersion,
18
- '@storybook/manager-webpack5': versions_1.storybookVersion,
19
- '@storybook/builder-webpack5': versions_1.storybookVersion,
20
- '@storybook/addon-essentials': versions_1.storybookVersion,
21
- });
22
13
  const storybookGeneratorInstallTask = yield (0, generate_storybook_configuration_1.generateStorybookConfiguration)(tree, options);
23
14
  if (options.generateStories) {
24
15
  (0, generate_stories_1.generateStories)(tree, options);
25
16
  }
26
17
  return () => {
27
- angularStorybookInstallTask();
28
18
  storybookGeneratorInstallTask();
29
19
  };
30
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"storybook-configuration.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/storybook-configuration/storybook-configuration.ts"],"names":[],"mappings":";;;;AACA,yCAA4D;AAC5D,mDAAwD;AACxD,mGAA6F;AAC7F,6DAAyD;AACzD,6FAAwF;AACxF,6DAAyD;AAGzD,SAAsB,+BAA+B,CACnD,IAAU,EACV,OAAsC;;QAEtC,IAAA,sEAAgC,GAAE,CAAC;QACnC,IAAA,kCAAe,EAAC,OAAO,CAAC,CAAC;QAEzB,sEAAsE;QACtE,MAAM,2BAA2B,GAAG,IAAA,qCAA4B,EAC9D,IAAI,EACJ,EAAE,EACF;YACE,oBAAoB,EAAE,2BAAgB;YACtC,6BAA6B,EAAE,2BAAgB;YAC/C,6BAA6B,EAAE,2BAAgB;YAC/C,6BAA6B,EAAE,2BAAgB;SAChD,CACF,CAAC;QACF,MAAM,6BAA6B,GAAG,MAAM,IAAA,iEAA8B,EACxE,IAAI,EACJ,OAAO,CACR,CAAC;QAEF,IAAI,OAAO,CAAC,eAAe,EAAE;YAC3B,IAAA,kCAAe,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAChC;QAED,OAAO,GAAG,EAAE;YACV,2BAA2B,EAAE,CAAC;YAC9B,6BAA6B,EAAE,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC;CAAA;AA/BD,0EA+BC;AAED,kBAAe,+BAA+B,CAAC"}
1
+ {"version":3,"file":"storybook-configuration.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/storybook-configuration/storybook-configuration.ts"],"names":[],"mappings":";;;;AACA,mGAA6F;AAC7F,6DAAyD;AACzD,6FAAwF;AACxF,6DAAyD;AAGzD,SAAsB,+BAA+B,CACnD,IAAU,EACV,OAAsC;;QAEtC,IAAA,sEAAgC,GAAE,CAAC;QACnC,IAAA,kCAAe,EAAC,OAAO,CAAC,CAAC;QAEzB,MAAM,6BAA6B,GAAG,MAAM,IAAA,iEAA8B,EACxE,IAAI,EACJ,OAAO,CACR,CAAC;QAEF,IAAI,OAAO,CAAC,eAAe,EAAE;YAC3B,IAAA,kCAAe,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;SAChC;QAED,OAAO,GAAG,EAAE;YACV,6BAA6B,EAAE,CAAC;QAClC,CAAC,CAAC;IACJ,CAAC;CAAA;AAnBD,0EAmBC;AAED,kBAAe,+BAA+B,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import type { GeneratorCallback, Tree } from '@nrwl/devkit';
2
- import storybookConfigurationGenerator from '../storybook-configuration/storybook-configuration';
3
2
  import type { StorybookMigrateDefault5to6Schema } from './schema';
4
3
  export declare function storybookMigrateDefaults5To6Generator(tree: Tree, options: StorybookMigrateDefault5to6Schema): GeneratorCallback;
5
- export default storybookConfigurationGenerator;
4
+ export default storybookMigrateDefaults5To6Generator;
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.storybookMigrateDefaults5To6Generator = void 0;
4
4
  const storybook_1 = require("@nrwl/storybook");
5
- const storybook_configuration_1 = require("../storybook-configuration/storybook-configuration");
6
5
  function storybookMigrateDefaults5To6Generator(tree, options) {
7
6
  return (0, storybook_1.migrateDefaultsGenerator)(tree, {
8
7
  name: options.name,
@@ -11,5 +10,5 @@ function storybookMigrateDefaults5To6Generator(tree, options) {
11
10
  });
12
11
  }
13
12
  exports.storybookMigrateDefaults5To6Generator = storybookMigrateDefaults5To6Generator;
14
- exports.default = storybook_configuration_1.default;
13
+ exports.default = storybookMigrateDefaults5To6Generator;
15
14
  //# sourceMappingURL=storybook-migrate-defaults-5-to-6.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"storybook-migrate-defaults-5-to-6.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.ts"],"names":[],"mappings":";;;AACA,+CAA2D;AAC3D,gGAAiG;AAGjG,SAAgB,qCAAqC,CACnD,IAAU,EACV,OAA0C;IAE1C,OAAO,IAAA,oCAAwB,EAAC,IAAI,EAAE;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;AACL,CAAC;AATD,sFASC;AAED,kBAAe,iCAA+B,CAAC"}
1
+ {"version":3,"file":"storybook-migrate-defaults-5-to-6.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/generators/storybook-migrate-defaults-5-to-6/storybook-migrate-defaults-5-to-6.ts"],"names":[],"mappings":";;;AACA,+CAA2D;AAG3D,SAAgB,qCAAqC,CACnD,IAAU,EACV,OAA0C;IAE1C,OAAO,IAAA,oCAAwB,EAAC,IAAI,EAAE;QACpC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;AACL,CAAC;AATD,sFASC;AAED,kBAAe,qCAAqC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nrwl/devkit';
2
+ export default function (tree: Tree): Promise<void>;
@@ -0,0 +1,231 @@
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 tsquery_1 = require("@phenomnomnominal/tsquery");
6
+ const path_1 = require("path");
7
+ const ts = require("typescript");
8
+ function default_1(tree) {
9
+ var _a, _b, _c;
10
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
11
+ const projects = (0, devkit_1.getProjects)(tree);
12
+ for (const [projectName, project] of projects.entries()) {
13
+ // only interested in projects with @nrwl/jest:jest executor
14
+ if (((_b = (_a = project.targets) === null || _a === void 0 ? void 0 : _a.test) === null || _b === void 0 ? void 0 : _b.executor) !== '@nrwl/jest:jest') {
15
+ continue;
16
+ }
17
+ const jestConfigPath = (_c = project.targets.test.options) === null || _c === void 0 ? void 0 : _c.jestConfig;
18
+ // if there's not jestConfigPath, we don't process it
19
+ if (!jestConfigPath) {
20
+ devkit_1.logger.warn(`The "jestConfig" property is not configured for the test target of the project "${projectName}". Skipping it.`);
21
+ continue;
22
+ }
23
+ if (!tree.exists(jestConfigPath)) {
24
+ devkit_1.logger.warn(`The specified "jestConfig" path "${jestConfigPath}" for the project "${projectName}" can not be found. Skipping it.`);
25
+ continue;
26
+ }
27
+ let jestConfigContents = tree.read(jestConfigPath, 'utf-8');
28
+ // check if it's an angular project by looking for jest-preset-angular
29
+ if (!jestConfigContents.includes('jest-preset-angular')) {
30
+ continue;
31
+ }
32
+ const { shouldUpdate, testSetupFilePath } = shouldUpdateTeardownConfig(tree, projectName, jestConfigPath, jestConfigContents);
33
+ if (!shouldUpdate) {
34
+ continue;
35
+ }
36
+ const printer = ts.createPrinter();
37
+ if (shouldUpdate === 'testSetup') {
38
+ optOutTestTeardownFromTestSetupFile(tree, testSetupFilePath, printer);
39
+ }
40
+ else {
41
+ optOutTestTeardownFromTestFiles(tree, projectName, printer);
42
+ }
43
+ }
44
+ yield (0, devkit_1.formatFiles)(tree);
45
+ });
46
+ }
47
+ exports.default = default_1;
48
+ function shouldUpdateTeardownConfig(tree, projectName, jestConfigPath, jestConfigContents) {
49
+ const jestConfigAst = tsquery_1.tsquery.ast(jestConfigContents);
50
+ const setupFilesAfterEnvSelector = 'PropertyAssignment:has(Identifier[name=setupFilesAfterEnv])';
51
+ const setupFilesAfterEnvProperty = (0, tsquery_1.tsquery)(jestConfigAst, setupFilesAfterEnvSelector, {
52
+ visitAllChildren: true,
53
+ })[0];
54
+ // no property specified, we try to migrate test files
55
+ if (!setupFilesAfterEnvProperty) {
56
+ return { shouldUpdate: 'testFiles' };
57
+ }
58
+ const setupFilesValueSelector = 'ArrayLiteralExpression StringLiteral';
59
+ const setupFilesValue = (0, tsquery_1.tsquery)(setupFilesAfterEnvProperty, setupFilesValueSelector, {
60
+ visitAllChildren: true,
61
+ })[0];
62
+ // not setup file specified, we try to migrate test files
63
+ if (!setupFilesValue) {
64
+ return { shouldUpdate: 'testFiles' };
65
+ }
66
+ const testSetupFilePath = setupFilesValue
67
+ .getText()
68
+ .replace('<rootDir>', (0, path_1.dirname)(jestConfigPath))
69
+ .replace(/['"]/g, '');
70
+ // the specified file is invalid, we migrate test files
71
+ if (!tree.exists(testSetupFilePath)) {
72
+ return { shouldUpdate: 'testFiles' };
73
+ }
74
+ let testSetupFileContents = tree.read(testSetupFilePath, 'utf-8');
75
+ const testSetupFileAst = tsquery_1.tsquery.ast(testSetupFileContents);
76
+ const initTestEnvironmentSelector = 'CallExpression:has(PropertyAccessExpression:has(Identifier[name=initTestEnvironment]))';
77
+ const initTestEnvironmentCall = (0, tsquery_1.tsquery)(testSetupFileAst, initTestEnvironmentSelector, {
78
+ visitAllChildren: true,
79
+ })[0];
80
+ // no initTestEnvironment call, we migrate the test setup file
81
+ if (!initTestEnvironmentCall) {
82
+ return { shouldUpdate: 'testSetup', testSetupFilePath };
83
+ }
84
+ // no third arg, we migrate the test setup file
85
+ if (initTestEnvironmentCall.arguments.length === 2) {
86
+ return { shouldUpdate: 'testSetup', testSetupFilePath };
87
+ }
88
+ // this would be a type error, we migrate test files
89
+ if (initTestEnvironmentCall.arguments.length < 2) {
90
+ return { shouldUpdate: 'testFiles' };
91
+ }
92
+ const optionsArg = initTestEnvironmentCall.arguments[2];
93
+ // the options arg is an object that has a teardown property, no migration is needed
94
+ if (isObjectLiteralWithTeardown(optionsArg)) {
95
+ return { shouldUpdate: false };
96
+ }
97
+ // the options arg is an object that doesn't have a teardown property, we migrate the test setup file
98
+ if (isObjectLiteralWithoutTeardown(optionsArg)) {
99
+ return { shouldUpdate: 'testSetup', testSetupFilePath };
100
+ }
101
+ // the options arg is an `aotSummaries` function, we migrate the test setup file
102
+ if (isFunction(optionsArg)) {
103
+ return { shouldUpdate: 'testSetup', testSetupFilePath };
104
+ }
105
+ // we fallback to migrate the test files
106
+ return { shouldUpdate: 'testFiles' };
107
+ }
108
+ function optOutTestTeardownFromTestFiles(tree, projectName, printer) {
109
+ const { sourceRoot, root } = (0, devkit_1.readProjectConfiguration)(tree, projectName);
110
+ (0, devkit_1.visitNotIgnoredFiles)(tree, sourceRoot !== null && sourceRoot !== void 0 ? sourceRoot : root, (path) => {
111
+ if (!['.ts', '.js'].includes((0, path_1.extname)(path))) {
112
+ return;
113
+ }
114
+ let fileContents = tree.read(path, 'utf-8');
115
+ const ast = tsquery_1.tsquery.ast(fileContents);
116
+ const configureTestingModulePropertyAccessExpressionSelector = 'CallExpression > PropertyAccessExpression:has(Identifier[name=configureTestingModule])';
117
+ const configureTestingModulePropertyAccessExpressions = (0, tsquery_1.tsquery)(ast, configureTestingModulePropertyAccessExpressionSelector, {
118
+ visitAllChildren: true,
119
+ });
120
+ // no calls to configureTestingModule, we skip it
121
+ if (!configureTestingModulePropertyAccessExpressions.length) {
122
+ return;
123
+ }
124
+ // reverse the order to not mess with positions as we update the AST
125
+ const reversedConfigureTestingModulePropertyAccessExpressions = sortInReverseSourceOrder(configureTestingModulePropertyAccessExpressions);
126
+ reversedConfigureTestingModulePropertyAccessExpressions.forEach((propertyAccessExpression) => {
127
+ const configureTestingModuleCall = propertyAccessExpression.parent;
128
+ if (configureTestingModuleCall.arguments.length === 0 ||
129
+ !isObjectLiteralWithoutTeardown(configureTestingModuleCall.arguments[0])) {
130
+ return;
131
+ }
132
+ const testModuleMetadata = configureTestingModuleCall.arguments[0];
133
+ const replacement = getTestModuleMetadataLiteralReplacement(testModuleMetadata, printer);
134
+ fileContents = `${fileContents.slice(0, testModuleMetadata.getStart())}${replacement}${fileContents.slice(testModuleMetadata.getEnd())}`;
135
+ tree.write(path, fileContents);
136
+ });
137
+ });
138
+ }
139
+ function optOutTestTeardownFromTestSetupFile(tree, testSetupFilePath, printer) {
140
+ let testSetupFileContents = tree.read(testSetupFilePath, 'utf-8');
141
+ const testSetupFileAst = tsquery_1.tsquery.ast(testSetupFileContents);
142
+ const initTestEnvironmentSelector = 'CallExpression:has(PropertyAccessExpression:has(Identifier[name=initTestEnvironment]))';
143
+ const initTestEnvironmentCall = (0, tsquery_1.tsquery)(testSetupFileAst, initTestEnvironmentSelector, {
144
+ visitAllChildren: true,
145
+ })[0];
146
+ if (!initTestEnvironmentCall) {
147
+ testSetupFileContents += `
148
+ import { getTestBed } from '@angular/core/testing';
149
+ import { BrowserDynamicTestingModule, platformBrowserDynamicTesting } from '@angular/platform-browser-dynamic/testing';
150
+
151
+ getTestBed().resetTestEnvironment();
152
+ getTestBed().initTestEnvironment(
153
+ BrowserDynamicTestingModule,
154
+ platformBrowserDynamicTesting(),
155
+ { teardown: { destroyAfterEach: false } },
156
+ );
157
+ `;
158
+ tree.write(testSetupFilePath, testSetupFileContents);
159
+ return;
160
+ }
161
+ const { span, text } = getInitTestEnvironmentLiteralReplacement(initTestEnvironmentCall, printer);
162
+ testSetupFileContents = `${testSetupFileContents.slice(0, span.start)}${text}${testSetupFileContents.slice(span.end)}`;
163
+ tree.write(testSetupFilePath, testSetupFileContents);
164
+ }
165
+ function getInitTestEnvironmentLiteralReplacement(initTestEnvironmentCall, printer) {
166
+ const literalProperties = [];
167
+ const options = initTestEnvironmentCall.arguments[initTestEnvironmentCall.arguments.length - 1];
168
+ let span;
169
+ let prefix;
170
+ // update the last argument of the initTestEnvironment call
171
+ if (initTestEnvironmentCall.arguments.length === 3) {
172
+ if (isFunction(options)) {
173
+ // If the last argument is a function, add the function as the `aotSummaries` property.
174
+ literalProperties.push(ts.factory.createPropertyAssignment('aotSummaries', options));
175
+ }
176
+ else if (ts.isObjectLiteralExpression(options)) {
177
+ // If the property is an object literal, copy over all the properties.
178
+ literalProperties.push(...options.properties);
179
+ }
180
+ prefix = '';
181
+ span = {
182
+ start: options.getStart(),
183
+ end: options.getEnd(),
184
+ };
185
+ }
186
+ else {
187
+ const start = options.getEnd();
188
+ prefix = ', ';
189
+ span = { start, end: start };
190
+ }
191
+ // finally push the teardown object so that it appears last
192
+ literalProperties.push(createTeardownAssignment());
193
+ return {
194
+ span,
195
+ text: `${prefix}${printer.printNode(ts.EmitHint.Unspecified, ts.factory.createObjectLiteralExpression(literalProperties), initTestEnvironmentCall.getSourceFile())}`,
196
+ };
197
+ }
198
+ function getTestModuleMetadataLiteralReplacement(testModuleMetadataObjectLiteral, printer) {
199
+ return printer.printNode(ts.EmitHint.Unspecified, ts.factory.createObjectLiteralExpression([
200
+ ...testModuleMetadataObjectLiteral.properties,
201
+ createTeardownAssignment(),
202
+ ], testModuleMetadataObjectLiteral.properties.length > 0), testModuleMetadataObjectLiteral.getSourceFile());
203
+ }
204
+ function isObjectLiteralWithTeardown(node) {
205
+ return (ts.isObjectLiteralExpression(node) &&
206
+ node.properties.some((prop) => {
207
+ var _a;
208
+ return ((_a = prop.name) === null || _a === void 0 ? void 0 : _a.getText()) === 'teardown';
209
+ }));
210
+ }
211
+ function isObjectLiteralWithoutTeardown(node) {
212
+ return (ts.isObjectLiteralExpression(node) &&
213
+ !node.properties.find((prop) => {
214
+ var _a;
215
+ return ((_a = prop.name) === null || _a === void 0 ? void 0 : _a.getText()) === 'teardown';
216
+ }));
217
+ }
218
+ function isFunction(node) {
219
+ return (ts.isArrowFunction(node) ||
220
+ ts.isFunctionExpression(node) ||
221
+ ts.isFunctionDeclaration(node));
222
+ }
223
+ function createTeardownAssignment() {
224
+ return ts.factory.createPropertyAssignment('teardown', ts.factory.createObjectLiteralExpression([
225
+ ts.factory.createPropertyAssignment('destroyAfterEach', ts.factory.createFalse()),
226
+ ]));
227
+ }
228
+ function sortInReverseSourceOrder(nodes) {
229
+ return nodes.sort((a, b) => b.getEnd() - a.getEnd());
230
+ }
231
+ //# sourceMappingURL=opt-out-testbed-teardown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opt-out-testbed-teardown.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/migrations/update-13-2-0/opt-out-testbed-teardown.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,9 @@ const tslib_1 = require("tslib");
4
4
  const devkit_1 = require("@nrwl/devkit");
5
5
  const typescript_1 = require("typescript");
6
6
  const path_1 = require("path");
7
+ const workspace_1 = require("@nrwl/workspace");
8
+ const semver_1 = require("semver");
9
+ const versions_1 = require("../../utils/versions");
7
10
  function default_1(tree) {
8
11
  return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
9
12
  const identifiers = ['hot', 'cold', 'getTestScheduler', 'time'];
@@ -16,8 +19,18 @@ function default_1(tree) {
16
19
  shouldAddJasmineMarbles = shouldAddJasmineMarbles || updated;
17
20
  });
18
21
  if (shouldAddJasmineMarbles) {
22
+ let rxjsVersion;
23
+ try {
24
+ rxjsVersion = (0, workspace_1.checkAndCleanWithSemver)('rxjs', (0, devkit_1.readJson)(tree, 'package.json').dependencies['rxjs']);
25
+ }
26
+ catch (_a) {
27
+ rxjsVersion = (0, workspace_1.checkAndCleanWithSemver)('rxjs', versions_1.rxjsVersion);
28
+ }
29
+ const jasmineMarblesVersion = (0, semver_1.gte)(rxjsVersion, '7.0.0')
30
+ ? '~0.9.1'
31
+ : '~0.8.3';
19
32
  (0, devkit_1.addDependenciesToPackageJson)(tree, {}, {
20
- 'jasmine-marbles': '~0.8.3',
33
+ 'jasmine-marbles': jasmineMarblesVersion,
21
34
  });
22
35
  }
23
36
  yield (0, devkit_1.formatFiles)(tree);
@@ -1 +1 @@
1
- {"version":3,"file":"update-testing-imports.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/migrations/update-13-2-0/update-testing-imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-testing-imports.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/migrations/update-13-2-0/update-testing-imports.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { Tree } from '@nrwl/devkit';
2
+ export default function (tree: Tree): Promise<void>;
3
+ export declare function addExperimentsObject(webpackConfig: string): string;
4
+ export declare function addLibraryModuleType(webpackConfig: string): string;
5
+ export declare function removeRemoteName(webpackConfig: string): string;
6
+ export declare function addPublicHost(tree: Tree, projects: string[]): void;
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addPublicHost = exports.removeRemoteName = exports.addLibraryModuleType = exports.addExperimentsObject = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const devkit_1 = require("@nrwl/devkit");
6
+ const tsquery_1 = require("@phenomnomnominal/tsquery");
7
+ const executor_options_utils_1 = require("@nrwl/workspace/src/utilities/executor-options-utils");
8
+ function default_1(tree) {
9
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function* () {
10
+ const NRWL_WEBPACK_BROWSER_BUILDER = '@nrwl/angular:webpack-browser';
11
+ const CUSTOM_WEBPACK_OPTION = 'customWebpackConfig';
12
+ const projects = [];
13
+ (0, executor_options_utils_1.forEachExecutorOptions)(tree, NRWL_WEBPACK_BROWSER_BUILDER, (opts, projectName) => {
14
+ var _a;
15
+ // Update the webpack config
16
+ const webpackPath = (_a = opts[CUSTOM_WEBPACK_OPTION]) === null || _a === void 0 ? void 0 : _a.path;
17
+ if (!tree.exists(webpackPath)) {
18
+ devkit_1.logger.warn(`Webpack config file for project: ${projectName} does not exist. Skipping project.`);
19
+ return;
20
+ }
21
+ const webpackConfig = tree.read(webpackPath, 'utf-8');
22
+ const ast = tsquery_1.tsquery.ast(webpackConfig);
23
+ const moduleFederationWebpackConfig = (0, tsquery_1.tsquery)(ast, 'Identifier[name=ModuleFederationPlugin]', {
24
+ visitAllChildren: true,
25
+ });
26
+ if (!moduleFederationWebpackConfig ||
27
+ moduleFederationWebpackConfig.length === 0) {
28
+ return;
29
+ }
30
+ projects.push(projectName);
31
+ let updatedWebpackFile = addExperimentsObject(webpackConfig);
32
+ updatedWebpackFile = addLibraryModuleType(updatedWebpackFile);
33
+ updatedWebpackFile = removeRemoteName(updatedWebpackFile);
34
+ tree.write(webpackPath, updatedWebpackFile);
35
+ });
36
+ addPublicHost(tree, projects);
37
+ yield (0, devkit_1.formatFiles)(tree);
38
+ });
39
+ }
40
+ exports.default = default_1;
41
+ function addExperimentsObject(webpackConfig) {
42
+ const WEBPACK_EXPERIMENTS_QUERY = 'PropertyAssignment > Identifier[name=experiments] ~ ObjectLiteralExpression';
43
+ const ast = tsquery_1.tsquery.ast(webpackConfig);
44
+ const webpackExperimentsNode = (0, tsquery_1.tsquery)(ast, WEBPACK_EXPERIMENTS_QUERY, {
45
+ visitAllChildren: true,
46
+ });
47
+ if (webpackExperimentsNode && webpackExperimentsNode.length > 0) {
48
+ if (webpackExperimentsNode[0].getText().includes('outputModule')) {
49
+ return webpackConfig;
50
+ }
51
+ return `${webpackConfig.slice(0, webpackExperimentsNode[0].getStart() + 1)}\noutputModule: true,${webpackConfig.slice(webpackExperimentsNode[0].getStart() + 1)}`;
52
+ }
53
+ const WEBPACK_EXPORT = 'module.exports = {';
54
+ const openingBracePos = webpackConfig.indexOf(WEBPACK_EXPORT) + WEBPACK_EXPORT.length;
55
+ return `${webpackConfig.slice(0, openingBracePos)}
56
+ experiments: {
57
+ outputModule: true
58
+ },${webpackConfig.slice(openingBracePos)}`;
59
+ }
60
+ exports.addExperimentsObject = addExperimentsObject;
61
+ function addLibraryModuleType(webpackConfig) {
62
+ const LIBRARY_NODE_QUERY = 'PropertyAssignment > Identifier[name=library] ~ ObjectLiteralExpression';
63
+ const ast = tsquery_1.tsquery.ast(webpackConfig);
64
+ const libraryModuleNode = (0, tsquery_1.tsquery)(ast, LIBRARY_NODE_QUERY);
65
+ if (libraryModuleNode && libraryModuleNode.length > 0) {
66
+ return webpackConfig;
67
+ }
68
+ const MODULE_FEDERATION_PLUGIN_INSTANTIATION = 'new ModuleFederationPlugin({';
69
+ const openingBracePos = webpackConfig.indexOf(MODULE_FEDERATION_PLUGIN_INSTANTIATION) +
70
+ +MODULE_FEDERATION_PLUGIN_INSTANTIATION.length;
71
+ return `${webpackConfig.slice(0, openingBracePos)}
72
+ library: {
73
+ type: 'module'
74
+ },${webpackConfig.slice(openingBracePos)}`;
75
+ }
76
+ exports.addLibraryModuleType = addLibraryModuleType;
77
+ function removeRemoteName(webpackConfig) {
78
+ const REMOTES_QUERY = 'Identifier[name=remotes] ~ ObjectLiteralExpression';
79
+ const ast = tsquery_1.tsquery.ast(webpackConfig);
80
+ const remotesObjectNode = (0, tsquery_1.tsquery)(ast, REMOTES_QUERY, {
81
+ visitAllChildren: true,
82
+ })[0];
83
+ if (!remotesObjectNode) {
84
+ return webpackConfig;
85
+ }
86
+ const remoteProps = (0, tsquery_1.tsquery)(remotesObjectNode, 'PropertyAssignment', {
87
+ visitAllChildren: true,
88
+ });
89
+ const updatedRemoteProps = [];
90
+ for (const prop of remoteProps) {
91
+ const stringValue = (0, tsquery_1.tsquery)(prop, 'StringLiteral', {
92
+ visitAllChildren: true,
93
+ })[0];
94
+ if (!stringValue.getText().match(/\w*@*http/)) {
95
+ continue;
96
+ }
97
+ const identifier = (0, tsquery_1.tsquery)(prop, 'Identifier', {
98
+ visitAllChildren: true,
99
+ })[0];
100
+ const updatedRemoteStringValue = stringValue
101
+ .getText()
102
+ .slice(stringValue.getText().indexOf('@') + 1, -1);
103
+ updatedRemoteProps.push(`${identifier.getText()}: '${updatedRemoteStringValue}'`);
104
+ }
105
+ const updatedRemotesObject = `{
106
+ ${updatedRemoteProps.join(',\n')}
107
+ }`;
108
+ return `${webpackConfig.slice(0, remotesObjectNode.getStart())}${updatedRemotesObject}${webpackConfig.slice(remotesObjectNode.getEnd())}`;
109
+ }
110
+ exports.removeRemoteName = removeRemoteName;
111
+ function addPublicHost(tree, projects) {
112
+ var _a, _b;
113
+ for (const projectName of projects) {
114
+ const project = (0, devkit_1.readProjectConfiguration)(tree, projectName);
115
+ const updatedProject = Object.assign(Object.assign({}, project), { targets: Object.assign(Object.assign({}, project.targets), { serve: Object.assign(Object.assign({}, project.targets.serve), { options: Object.assign(Object.assign({}, project.targets.serve.options), { publicHost: `http://localhost:${(_b = (_a = project.targets.serve.options) === null || _a === void 0 ? void 0 : _a.port) !== null && _b !== void 0 ? _b : 4200}` }) }) }) });
116
+ (0, devkit_1.updateProjectConfiguration)(tree, projectName, updatedProject);
117
+ }
118
+ }
119
+ exports.addPublicHost = addPublicHost;
120
+ //# sourceMappingURL=update-mfe-webpack-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-mfe-webpack-config.js","sourceRoot":"","sources":["../../../../../../packages/angular/src/migrations/update-13-3-0/update-mfe-webpack-config.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import { ActivatedRouteSnapshot } from '@angular/router';
3
3
  import { Actions } from '@ngrx/effects';
4
4
  import { Action, Store, ActionCreator } from '@ngrx/store';
5
5
  import { Observable } from 'rxjs';
6
+ import * as i0 from "@angular/core";
6
7
  /**
7
8
  * See {@link DataPersistence.pessimisticUpdate} for more information.
8
9
  */
@@ -241,4 +242,6 @@ export declare class DataPersistence<T> {
241
242
  * ```
242
243
  */
243
244
  navigation(component: Type<any>, opts: HandleNavigationOpts<T>): Observable<any>;
245
+ static ɵfac: i0.ɵɵFactoryDeclaration<DataPersistence<any>, never>;
246
+ static ɵprov: i0.ɵɵInjectableDeclaration<DataPersistence<any>>;
244
247
  }
@@ -1,4 +1,5 @@
1
1
  import { ModuleWithProviders } from '@angular/core';
2
+ import * as i0 from "@angular/core";
2
3
  /**
3
4
  * @whatItDoes Provides services for enterprise Angular applications.
4
5
  *
@@ -6,4 +7,7 @@ import { ModuleWithProviders } from '@angular/core';
6
7
  */
7
8
  export declare class NxModule {
8
9
  static forRoot(): ModuleWithProviders<NxModule>;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<NxModule, never>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<NxModule, never, never, never>;
12
+ static ɵinj: i0.ɵɵInjectorDeclaration<NxModule>;
9
13
  }
@@ -4,6 +4,8 @@ export declare function getDecoratorMetadata(source: ts.SourceFile, identifier:
4
4
  export declare function removeFromNgModule(host: Tree, source: ts.SourceFile, modulePath: string, property: string): ts.SourceFile;
5
5
  export declare function addImportToModule(host: Tree, source: ts.SourceFile, modulePath: string, symbolName: string): ts.SourceFile;
6
6
  export declare function addImportToTestBed(host: Tree, source: ts.SourceFile, specPath: string, symbolName: string): ts.SourceFile;
7
+ export declare function addDeclarationsToTestBed(host: Tree, source: ts.SourceFile, specPath: string, symbolName: string[]): ts.SourceFile;
8
+ export declare function replaceIntoToTestBed(host: Tree, source: ts.SourceFile, specPath: string, newSymbol: string, previousSymbol: string): ts.SourceFile;
7
9
  export declare function getBootstrapComponent(source: ts.SourceFile, moduleClassName: string): string;
8
10
  export declare function addRoute(host: Tree, ngModulePath: string, source: ts.SourceFile, route: string): ts.SourceFile;
9
11
  export declare function addProviderToModule(host: Tree, source: ts.SourceFile, modulePath: string, symbolName: string): ts.SourceFile;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTsSourceFile = exports.getDecoratorPropertyValueNode = exports.readBootstrapInfo = exports.addEntryComponents = exports.addDeclarationToModule = exports.addProviderToModule = exports.addRoute = exports.getBootstrapComponent = exports.addImportToTestBed = exports.addImportToModule = exports.removeFromNgModule = exports.getDecoratorMetadata = void 0;
3
+ exports.getTsSourceFile = exports.getDecoratorPropertyValueNode = exports.readBootstrapInfo = exports.addEntryComponents = exports.addDeclarationToModule = exports.addProviderToModule = exports.addRoute = exports.getBootstrapComponent = exports.replaceIntoToTestBed = exports.addDeclarationsToTestBed = exports.addImportToTestBed = exports.addImportToModule = exports.removeFromNgModule = exports.getDecoratorMetadata = void 0;
4
4
  const ts = require("typescript");
5
5
  const find_nodes_1 = require("@nrwl/workspace/src/utilities/typescript/find-nodes");
6
6
  const get_source_nodes_1 = require("@nrwl/workspace/src/utilities/typescript/get-source-nodes");
@@ -240,6 +240,40 @@ function addImportToTestBed(host, source, specPath, symbolName) {
240
240
  return source;
241
241
  }
242
242
  exports.addImportToTestBed = addImportToTestBed;
243
+ function addDeclarationsToTestBed(host, source, specPath, symbolName) {
244
+ const allCalls = ((0, find_nodes_1.findNodes)(source, ts.SyntaxKind.CallExpression));
245
+ const configureTestingModuleObjectLiterals = allCalls
246
+ .filter((c) => c.expression.kind === ts.SyntaxKind.PropertyAccessExpression)
247
+ .filter((c) => c.expression.name.getText(source) === 'configureTestingModule')
248
+ .map((c) => c.arguments[0].kind === ts.SyntaxKind.ObjectLiteralExpression
249
+ ? c.arguments[0]
250
+ : null);
251
+ if (configureTestingModuleObjectLiterals.length > 0) {
252
+ const startPosition = configureTestingModuleObjectLiterals[0]
253
+ .getFirstToken(source)
254
+ .getEnd();
255
+ return (0, ast_utils_1.insertChange)(host, source, specPath, startPosition, `declarations: [${symbolName.join(',')}], `);
256
+ }
257
+ return source;
258
+ }
259
+ exports.addDeclarationsToTestBed = addDeclarationsToTestBed;
260
+ function replaceIntoToTestBed(host, source, specPath, newSymbol, previousSymbol) {
261
+ const allCalls = ((0, find_nodes_1.findNodes)(source, ts.SyntaxKind.CallExpression));
262
+ const configureTestingModuleObjectLiterals = allCalls
263
+ .filter((c) => c.expression.kind === ts.SyntaxKind.PropertyAccessExpression)
264
+ .filter((c) => c.expression.name.getText(source) === 'configureTestingModule')
265
+ .map((c) => c.arguments[0].kind === ts.SyntaxKind.ObjectLiteralExpression
266
+ ? c.arguments[0]
267
+ : null);
268
+ if (configureTestingModuleObjectLiterals.length > 0) {
269
+ const startPosition = configureTestingModuleObjectLiterals[0]
270
+ .getFirstToken(source)
271
+ .getEnd();
272
+ return (0, ast_utils_1.replaceChange)(host, source, specPath, startPosition, newSymbol, previousSymbol);
273
+ }
274
+ return source;
275
+ }
276
+ exports.replaceIntoToTestBed = replaceIntoToTestBed;
243
277
  function getBootstrapComponent(source, moduleClassName) {
244
278
  const bootstrap = getMatchingProperty(source, 'bootstrap', 'NgModule', '@angular/core');
245
279
  if (!bootstrap) {