Use new module federation configuration

This commit is contained in:
Clemente Raposo 2023-09-12 16:29:47 +01:00
parent 093fba6f5a
commit 2bb079739f
5 changed files with 28 additions and 4 deletions

View file

@ -1,12 +1,29 @@
import {NgModule} from '@angular/core';
import {CommonModule} from '@angular/common';
import {HttpClientModule} from '@angular/common/http';
import {UKPhoneEditFieldComponent} from './fields/uk-phone/templates/edit/uk-phone.component';
import {UkPhoneEditFieldModule} from './fields/uk-phone/templates/edit/uk-phone.module';
import {FieldRegistry} from 'core';
@NgModule({
declarations: [],
imports: [],
imports: [
CommonModule,
HttpClientModule,
UkPhoneEditFieldModule
],
providers: []
})
export class ExtensionModule {
constructor() {
constructor(
protected fieldRegistry: FieldRegistry
) {
// Override the edit mode phone field component for all modules
fieldRegistry.register('default', 'phone', 'edit', UKPhoneEditFieldComponent);
// Override the edit mode phone field component just for accounts
// fieldRegistry.register('accounts', 'phone', 'edit', UKPhoneEditFieldComponent);
}
init(): void {

View file

@ -3,6 +3,7 @@
"extends": "../../../tsconfig.json",
"compilerOptions": {
"outDir": "../../out-tsc/app",
"target": "es2022",
"types": []
},
"files": [

View file

@ -8,14 +8,16 @@ module.exports = {
optimization: {
runtimeChunk: false
},
experiments: {
outputModule: true
},
plugins: [
new ModuleFederationPlugin({
name: 'defaultExt',
filename: 'remoteEntry.js',
library: {
type: 'window',
name: 'defaultExt',
type: "module",
},
exposes: {
'./Module': './extensions/defaultExt/app/src/extension.module.ts'