Angular Native Federation, не создаётся экспортируемый expose файл в режиме разработки

У меня есть NativeFederation Angular 18 приложение(созданное с нуля), которое должно при билде создавать файл remoteEntry.json, это происходит. Также оно должно создавать файл exposes экспортируемого элемента. Но этого не происходит при запуске в режиме разработке ng serve. Файл появляется только при билде ng build.
Это приложение должно использоваться как дочернее, подключаемому к хосту, но так как экспортируемого файла не создаётся, не получается дочерний экспортируемый элемент подключить (сам фронт подключается, так как создаётся файл remoteEntry.json)

В чём может быть проблема?

Если у кого то получилось запустить Angular на NativeFederation, расскажите, какие у вас конфиги были

Вот мои файлы:

federation.config.js

const { withNativeFederation, shareAll } = require('@angular-architects/native-federation/config');

module.exports = withNativeFederation({

  name: 'child-18',
  exposes: {
    './AppComponent': './src/app/app.component.ts',
  },
    library: { type: 'module' },
    remoteType: 'module',

  shared: {
    ...shareAll({ singleton: true, strictVersion: true, requiredVersion: 'auto' }),
  },
    output: {
    publicPath: 'http://localhost:4232/'
  },

  skip: [
    'rxjs/ajax',
    'rxjs/fetch',
    'rxjs/testing',
    'rxjs/webSocket',
  ]

});

package.json

{
  "name": "child-18",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "watch": "ng build --watch --configuration development",
    "test": "ng test"
  },
  "private": true,
    "sideEffects": [
    "./src/app/app.component.ts"
  ],
  "dependencies": {
    "@angular-architects/native-federation": "^18.2.2",
    "@angular/animations": "^18.2.0",
    "@angular/common": "^18.2.0",
    "@angular/compiler": "^18.2.0",
    "@angular/core": "^18.2.0",
    "@angular/forms": "^18.2.0",
    "@angular/platform-browser": "^18.2.0",
    "@angular/platform-browser-dynamic": "^18.2.0",
    "@angular/router": "^18.2.0",
    "es-module-shims": "^1.5.12",
    "rxjs": "~7.8.0",
    "tslib": "^2.3.0",
    "zone.js": "~0.14.10"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^18.2.12",
    "@angular/cli": "^18.2.12",
    "@angular/compiler-cli": "^18.2.0",
    "@types/jasmine": "~5.1.0",
    "jasmine-core": "~5.2.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.1.0",
    "typescript": "~5.5.2"
  }
}

angular.json

{
    "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
    "version": 1,
    "newProjectRoot": "projects",
    "projects": {
        "child-18": {
            "projectType": "application",
            "schematics": {
                "@schematics/angular:component": {
                    "style": "scss",
                    "skipTests": true
                },
                "@schematics/angular:class": {
                    "skipTests": true
                },
                "@schematics/angular:directive": {
                    "skipTests": true
                },
                "@schematics/angular:guard": {
                    "skipTests": true
                },
                "@schematics/angular:interceptor": {
                    "skipTests": true
                },
                "@schematics/angular:pipe": {
                    "skipTests": true
                },
                "@schematics/angular:resolver": {
                    "skipTests": true
                },
                "@schematics/angular:service": {
                    "skipTests": true
                }
            },
            "root": "",
            "sourceRoot": "src",
            "prefix": "app",
            "architect": {
                "build": {
                    "builder": "@angular-architects/native-federation:build",
                    "options": {},
                    "configurations": {
                        "production": {
                            "target": "child-18:esbuild:production"
                        },
                        "development": {
                            "target": "child-18:esbuild:development",
                            "dev": true
                        }
                    },
                    "defaultConfiguration": "production"
                },
                "serve": {
                    "builder": "@angular-architects/native-federation:build",
                    "options": {
                        "target": "child-18:serve-original:development",
                        "rebuildDelay": 0,
                        "dev": true,
                        "port": 4232
                    }
                },
                "extract-i18n": {
                    "builder": "@angular-devkit/build-angular:extract-i18n"
                },
                "test": {
                    "builder": "@angular-devkit/build-angular:karma",
                    "options": {
                        "polyfills": [
                            "zone.js",
                            "zone.js/testing"
                        ],
                        "tsConfig": "tsconfig.spec.json",
                        "inlineStyleLanguage": "scss",
                        "assets": [
                            {
                                "glob": "**/*",
                                "input": "public"
                            }
                        ],
                        "styles": [
                            "src/styles.scss"
                        ],
                        "scripts": []
                    }
                },
                "esbuild": {
                    "builder": "@angular-devkit/build-angular:application",
                    "options": {
                        "outputPath": "dist/child-18",
                        "index": "src/index.html",
                        "browser": "src/main.ts",
                        "polyfills": [
                            "zone.js",
                            "es-module-shims"
                        ],
                        "tsConfig": "tsconfig.app.json",
                        "inlineStyleLanguage": "scss",
                        "assets": [
                            {
                                "glob": "**/*",
                                "input": "public"
                            }
                        ],
                        "styles": [
                            "src/styles.scss"
                        ],
                        "scripts": []
                    },
                    "configurations": {
                        "production": {
                            "budgets": [
                                {
                                    "type": "initial",
                                    "maximumWarning": "500kB",
                                    "maximumError": "1MB"
                                },
                                {
                                    "type": "anyComponentStyle",
                                    "maximumWarning": "2kB",
                                    "maximumError": "4kB"
                                }
                            ],
                            "outputHashing": "all"
                        },
                        "development": {
                            "optimization": false,
                            "extractLicenses": false,
                            "sourceMap": true
                        }
                    },
                    "defaultConfiguration": "production"
                },
                "serve-original": {
                    "builder": "@angular-devkit/build-angular:dev-server",
                    "configurations": {
                        "production": {
                            "buildTarget": "child-18:esbuild:production"
                        },
                        "development": {
                            "buildTarget": "child-18:esbuild:development"
                        }
                    },
                    "defaultConfiguration": "development",
                    "options": {
                        "port": 4232
                    }
                }
            }
        }
    }
}


Ответы (0 шт):