From 37072bc5d6eb83eb8a636a485087f49ee0e7ed5f Mon Sep 17 00:00:00 2001 From: Colum Ferry Date: Fri, 1 Jul 2022 14:48:38 +0100 Subject: [PATCH] feat(angular): replace mfe references with mf (#10957) --- docs/generated/packages/angular.json | 18 +- docs/packages.json | 2 +- .../module-federation/dynamic-mfe-angular.md | 12 +- e2e/angular-core/src/projects.test.ts | 14 +- .../src/integration/packages.spec.ts | 4 +- nx-dev/nx-dev/redirect-rules.config.js | 12 +- packages/angular/generators.json | 12 +- packages/angular/generators.ts | 2 +- packages/angular/{mfe => mf}/index.ts | 2 +- packages/angular/{mfe/mfe.ts => mf/mf.ts} | 0 packages/angular/{mfe => mf}/ng-package.json | 0 packages/angular/migrations.json | 10 +- packages/angular/module-federation/index.ts | 4 +- .../__snapshots__/application.spec.ts.snap | 8 +- .../application/application.spec.ts | 28 +-- .../src/generators/application/application.ts | 6 +- .../application/lib/{add-mfe.ts => add-mf.ts} | 8 +- .../src/generators/application/lib/index.ts | 2 +- .../src/generators/application/schema.d.ts | 4 +- .../src/generators/application/schema.json | 4 +- .../angular/src/generators/host/host.spec.ts | 4 +- packages/angular/src/generators/host/host.ts | 4 +- .../remote/__snapshots__/remote.spec.ts.snap | 6 +- .../src/generators/remote/remote.spec.ts | 14 +- .../angular/src/generators/remote/remote.ts | 10 +- .../__snapshots__/setup-mf.spec.ts.snap} | 28 +-- .../entry.component.ts__tmpl__ | 0 .../entry.module.ts__tmpl__ | 0 .../module-federation.config.js__tmpl__ | 0 .../files/webpack/webpack.config.js__tmpl__ | 0 .../webpack/webpack.prod.config.js__tmpl__ | 0 .../add-remote-to-host.spec.ts.snap | 0 .../lib/add-cypress-workaround.ts | 0 .../lib/add-entry-module.ts | 4 +- .../lib/add-remote-to-host.spec.ts | 0 .../lib/add-remote-to-host.ts | 16 +- .../lib/change-build-target.ts | 0 .../lib/fix-bootstrap.ts | 7 +- .../lib/generate-config.ts | 2 +- .../lib/get-remotes-with-ports.ts | 5 +- .../{setup-mfe => setup-mf}/lib/index.ts | 0 .../lib/set-tsconfig-target.ts | 0 .../lib/setup-host-if-dynamic.ts | 5 +- .../lib/setup-serve-target.ts | 7 +- .../{setup-mfe => setup-mf}/schema.d.ts | 2 +- .../{setup-mfe => setup-mf}/schema.json | 6 +- .../generators/setup-mf/setup-mf.compat.ts | 4 + .../setup-mf.spec.ts} | 100 ++++---- .../setup-mfe.ts => setup-mf/setup-mf.ts} | 9 +- .../generators/setup-mfe/setup-mfe.compat.ts | 4 - ...c.ts => add-cypress-mf-workaround.spec.ts} | 14 +- ...around.ts => add-cypress-mf-workaround.ts} | 0 .../update-14-5-0/migrate-mfe-to-mf.spec.ts | 229 ++++++++++++++++++ .../update-14-5-0/migrate-mfe-to-mf.ts | 144 +++++++++++ .../mf-webpack.spec.ts} | 8 +- .../{mfe/mfe-webpack.ts => mf/mf-webpack.ts} | 2 +- .../angular/src/utils/{mfe => mf}/utils.ts | 2 +- .../{mfe => mf}/with-module-federation.ts | 16 +- 58 files changed, 592 insertions(+), 212 deletions(-) rename packages/angular/{mfe => mf}/index.ts (82%) rename packages/angular/{mfe/mfe.ts => mf/mf.ts} (100%) rename packages/angular/{mfe => mf}/ng-package.json (100%) rename packages/angular/src/generators/application/lib/{add-mfe.ts => add-mf.ts} (70%) rename packages/angular/src/generators/{setup-mfe/__snapshots__/setup-mfe.spec.ts.snap => setup-mf/__snapshots__/setup-mf.spec.ts.snap} (70%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/files/entry-module-files/entry.component.ts__tmpl__ (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/files/entry-module-files/entry.module.ts__tmpl__ (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/files/webpack/module-federation.config.js__tmpl__ (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/files/webpack/webpack.config.js__tmpl__ (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/files/webpack/webpack.prod.config.js__tmpl__ (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/__snapshots__/add-remote-to-host.spec.ts.snap (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/add-cypress-workaround.ts (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/add-entry-module.ts (92%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/add-remote-to-host.spec.ts (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/add-remote-to-host.ts (92%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/change-build-target.ts (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/fix-bootstrap.ts (89%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/generate-config.ts (97%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/get-remotes-with-ports.ts (95%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/index.ts (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/set-tsconfig-target.ts (100%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/setup-host-if-dynamic.ts (75%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/lib/setup-serve-target.ts (94%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/schema.d.ts (89%) rename packages/angular/src/generators/{setup-mfe => setup-mf}/schema.json (96%) create mode 100644 packages/angular/src/generators/setup-mf/setup-mf.compat.ts rename packages/angular/src/generators/{setup-mfe/setup-mfe.spec.ts => setup-mf/setup-mf.spec.ts} (82%) rename packages/angular/src/generators/{setup-mfe/setup-mfe.ts => setup-mf/setup-mf.ts} (87%) delete mode 100644 packages/angular/src/generators/setup-mfe/setup-mfe.compat.ts rename packages/angular/src/migrations/update-13-8-1/{add-cypress-mfe-workaround.spec.ts => add-cypress-mf-workaround.spec.ts} (72%) rename packages/angular/src/migrations/update-13-8-1/{add-cypress-mfe-workaround.ts => add-cypress-mf-workaround.ts} (100%) create mode 100644 packages/angular/src/migrations/update-14-5-0/migrate-mfe-to-mf.spec.ts create mode 100644 packages/angular/src/migrations/update-14-5-0/migrate-mfe-to-mf.ts rename packages/angular/src/utils/{mfe/mfe-webpack.spec.ts => mf/mf-webpack.spec.ts} (97%) rename packages/angular/src/utils/{mfe/mfe-webpack.ts => mf/mf-webpack.ts} (98%) rename packages/angular/src/utils/{mfe => mf}/utils.ts (83%) rename packages/angular/src/utils/{mfe => mf}/with-module-federation.ts (96%) diff --git a/docs/generated/packages/angular.json b/docs/generated/packages/angular.json index 2d4429483e..8c78133c60 100644 --- a/docs/generated/packages/angular.json +++ b/docs/generated/packages/angular.json @@ -196,13 +196,13 @@ "description": "Split the project configuration into `/project.json` rather than including it inside `workspace.json`.", "type": "boolean" }, - "mfe": { + "mf": { "description": "Generate a Module Federation configuration for the application", "type": "boolean", "default": false, "x-deprecated": "Use the `host` or `remote` generators instead. Support for generating Module Federation applications using the application generator will be removed in an upcoming version." }, - "mfeType": { + "mfType": { "type": "string", "enum": ["host", "remote"], "description": "Type of application to generate the Module Federation configuration for.", @@ -1732,11 +1732,11 @@ "path": "/packages/angular/src/generators/scam-pipe/schema.json" }, { - "name": "setup-mfe", - "factory": "./src/generators/setup-mfe/setup-mfe", + "name": "setup-mf", + "factory": "./src/generators/setup-mf/setup-mf", "schema": { "$schema": "http://json-schema.org/schema", - "$id": "GeneratorAngularMFESetup", + "$id": "GeneratorAngularMFSetup", "cli": "nx", "title": "Generate Module Federation Setup for Angular App", "description": "Create Module Federation configuration files for given Angular Application.", @@ -1748,7 +1748,7 @@ "$default": { "$source": "argv", "index": 0 }, "x-prompt": "What app would you like to generate a Module Federation configuration for?" }, - "mfeType": { + "mfType": { "type": "string", "enum": ["host", "remote"], "description": "Type of application to generate the Module Federation configuration for.", @@ -1794,15 +1794,15 @@ "description": "The prefix to use for any generated component." } }, - "required": ["appName", "mfeType"], + "required": ["appName", "mfType"], "additionalProperties": false, "presets": [] }, "description": "Generate a Module Federation configuration for a given Angular application.", - "implementation": "/packages/angular/src/generators/setup-mfe/setup-mfe.ts", + "implementation": "/packages/angular/src/generators/setup-mf/setup-mf.ts", "aliases": [], "hidden": false, - "path": "/packages/angular/src/generators/setup-mfe/schema.json" + "path": "/packages/angular/src/generators/setup-mf/schema.json" }, { "name": "setup-tailwind", diff --git a/docs/packages.json b/docs/packages.json index 8cefca65e3..ecb1f55cfa 100644 --- a/docs/packages.json +++ b/docs/packages.json @@ -39,7 +39,7 @@ "scam", "scam-directive", "scam-pipe", - "setup-mfe", + "setup-mf", "setup-tailwind", "stories", "storybook-configuration", diff --git a/docs/shared/guides/module-federation/dynamic-mfe-angular.md b/docs/shared/guides/module-federation/dynamic-mfe-angular.md index 6b1cca10f2..122405af35 100644 --- a/docs/shared/guides/module-federation/dynamic-mfe-angular.md +++ b/docs/shared/guides/module-federation/dynamic-mfe-angular.md @@ -34,12 +34,12 @@ To start with, we need to create a new Nx Workspace. We can do this easily with: ```bash # Npm -npx create-nx-workspace ng-mfe +npx create-nx-workspace ng-mf ``` ```bash # Yarn -yarn create nx-workspace ng-mfe --packageManager=yarn +yarn create nx-workspace ng-mf --packageManager=yarn ``` You'll be prompted for a preset. We recommend selecting `empty` as it will allow you finer control over your workspace configuration. @@ -232,7 +232,7 @@ Next we want to set up our `entry.component.ts` file so that it renders a login import { Component } from '@angular/core'; import { UserService } from '@ng-mfe/shared/data-access-user'; @Component({ - selector: 'ng-mfe-login-entry', + selector: 'ng-mf-login-entry', template: `