diff --git a/README.md b/README.md index 3323090..183d2c8 100644 --- a/README.md +++ b/README.md @@ -427,6 +427,27 @@ export default withNativeFederation({ When enabled, instead of listing each chunk as a separate shared dependency, chunks are grouped by bundle name in a dedicated `chunks` object. Each shared dependency gets a `bundle` property linking it to its chunk bundle. This results in a smaller `remoteEntry.json` and allows chunks to be skipped if the dependency is not used in the final import map. +#### Dense Externals + +The `denseExternals` feature flag applies the same compaction to shared externals themselves: + +```js +export default withNativeFederation({ + shared: { + ...shareAll({ + singleton: true, + strictVersion: true, + requiredVersion: 'auto', + }), + }, + features: { + denseExternals: true, + }, +}); +``` + +When enabled, each shared external is emitted as a single dense entry that carries its output filenames in an `entries` map, rather than one flat record per file. This further shrinks the `remoteEntry.json`. The Angular I18N build understands both the flat and dense shapes, so localization keeps translating shared bundles either way. + ### Version-Pinned Share Scopes A `shareScope` isolates shared dependencies into a named bucket, so packages are only shared between remotes that use the same scope. The `autoShareScope` helper derives that name from a dependency's declared version, letting you pin sharing to a version line without hardcoding the number. @@ -467,6 +488,36 @@ export default withNativeFederation({ The version is read from `dependencies`, `devDependencies` or `peerDependencies` in your `package.json`. `autoShareScope` throws if the dependency isn't declared, or if the declared version lacks enough segments for the requested `level`. +### Building the Shared Config from `package.json` + +As an alternative to `shareAll`, the `fromPackageJson` helper builds the shared config from your `package.json` and returns a fluent builder you can refine before handing it to `withNativeFederation`: + +```js +import { withNativeFederation, fromPackageJson } from '@angular-architects/native-federation/config'; + +export default withNativeFederation({ + shared: fromPackageJson({ + singleton: true, + strictVersion: true, + requiredVersion: 'auto', + }) + .skip(['rxjs/ajax', 'rxjs/fetch']) + .override({ 'large-lib': { singleton: false } }) + .get(), +}); +``` + +The builder exposes: + +| Method | Purpose | +| ------ | ------- | +| `.skip(externals)` | Add packages to the skip list, on top of the ones seeded by default. | +| `.override(externals)` | Replace the sharing options for specific packages. | +| `.patch(externals, cfg)` | Merge a partial config into the given packages. | +| `.get()` | Resolve the builder into the shared config object. | + +Unlike the core `fromPackageJson`, this adapter's version pre-seeds the Angular skip list (`NG_SKIP_LIST`) — the same list `shareAll` uses — so Angular-internal and localization packages are skipped for you out of the box. + ### SSR and Hydration We support Angular's SSR and (Incremental) Hydration. Please find [more information here](https://www.angulararchitects.io/blog/ssr-and-hydration-with-native-federation-for-angular/). diff --git a/package.json b/package.json index c4ea3c3..2779923 100644 --- a/package.json +++ b/package.json @@ -17,8 +17,8 @@ "@angular-devkit/core": "~22.0.0", "@angular-devkit/schematics": "~22.0.0", "@chialab/esbuild-plugin-commonjs": "^0.19.0", - "@softarc/native-federation": "^4.0.0", - "@softarc/native-federation-orchestrator": "^4.2.2", + "@softarc/native-federation": "^4.3.0", + "@softarc/native-federation-orchestrator": "^4.5.0", "es-module-shims": "^2.8.0", "esbuild": "^0.28.0", "mrmime": "^2.0.1" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 372345a..2b23054 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,25 +10,25 @@ importers: dependencies: '@angular-devkit/architect': specifier: ^0.2200.0 - version: 0.2200.5(chokidar@5.0.0) + version: 0.2200.6(chokidar@5.0.0) '@angular-devkit/core': specifier: ~22.0.0 - version: 22.0.5(chokidar@5.0.0) + version: 22.0.6(chokidar@5.0.0) '@angular-devkit/schematics': specifier: ~22.0.0 - version: 22.0.5(chokidar@5.0.0) + version: 22.0.6(chokidar@5.0.0) '@chialab/esbuild-plugin-commonjs': specifier: ^0.19.0 version: 0.19.1 '@softarc/native-federation': - specifier: ^4.0.0 - version: 4.2.1(typescript@6.0.3) + specifier: ^4.3.0 + version: 4.3.0(typescript@6.0.3) '@softarc/native-federation-orchestrator': - specifier: ^4.2.2 - version: 4.4.1 + specifier: ^4.5.0 + version: 4.5.0 es-module-shims: specifier: ^2.8.0 - version: 2.8.1 + version: 2.8.2 esbuild: specifier: ^0.28.0 version: 0.28.1 @@ -38,7 +38,7 @@ importers: devDependencies: '@angular/build': specifier: ~22.0.0 - version: 22.0.5(@angular/compiler-cli@22.0.5(@angular/compiler@22.0.5)(typescript@6.0.3))(@angular/compiler@22.0.5)(@types/node@24.10.15)(chokidar@5.0.0)(jiti@2.7.0)(postcss@8.5.16)(tslib@2.8.1)(typescript@6.0.3)(vitest@4.1.9)(yaml@2.9.0) + version: 22.0.6(@angular/compiler-cli@22.0.6(@angular/compiler@22.0.6)(typescript@6.0.3))(@angular/compiler@22.0.6)(@types/node@24.10.15)(chokidar@5.0.0)(jiti@2.7.0)(postcss@8.5.16)(tslib@2.8.1)(typescript@6.0.3)(vitest@4.1.10)(yaml@2.9.0) '@eslint/js': specifier: ^9.39.1 version: 9.39.4 @@ -47,13 +47,13 @@ importers: version: 22.6.5(nx@23.0.1) '@schematics/angular': specifier: ~22.0.0 - version: 22.0.4(chokidar@5.0.0) + version: 22.0.5(chokidar@5.0.0) '@types/node': specifier: ~24.10.0 version: 24.10.15 '@vitest/coverage-v8': specifier: ^4.0.0 - version: 4.1.9(vitest@4.1.9) + version: 4.1.10(vitest@4.1.10) eslint: specifier: ^9.39.1 version: 9.39.4(jiti@2.7.0) @@ -68,7 +68,7 @@ importers: version: 2.2.3 knip: specifier: ^6.17.1 - version: 6.23.0 + version: 6.25.0 tslib: specifier: ^2.3.0 version: 2.8.1 @@ -77,13 +77,13 @@ importers: version: 6.0.3 typescript-eslint: specifier: ^8.46.4 - version: 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + version: 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) vite: specifier: ^7.0.0 version: 7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0) vitest: specifier: ^4.0.0 - version: 4.1.9(@types/node@24.10.15)(@vitest/coverage-v8@4.1.9)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) + version: 4.1.10(@types/node@24.10.15)(@vitest/coverage-v8@4.1.10)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) packages: @@ -91,13 +91,13 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==, tarball: https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz} engines: {node: '>=6.0.0'} - '@angular-devkit/architect@0.2200.5': - resolution: {integrity: sha512-Fbki7xEx37gn8uH5AFOh0EmfGV4y5xag2fTv1vn6KxY/h33L02KuAjiUX3h2YmSjnYSc1dXto3Q5c4lWs/I5Zw==, tarball: https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2200.5.tgz} + '@angular-devkit/architect@0.2200.6': + resolution: {integrity: sha512-wTjUfiT5iEMc9+9z2zo1QGtzLpXk5Xx0bV6/zTO4n6+BCC0qReuYnIYt0iJCh649Q0vHq5++0zmZZK0KyXVMZQ==, tarball: https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2200.6.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} hasBin: true - '@angular-devkit/core@22.0.4': - resolution: {integrity: sha512-zA2UJSMAU3su5uJTOn5ul/gCLRcw6/uIQ6EC5v/Ju/ePjgDIw9R3y3MAvWQ4Ibi/fXiq0FVxpF8hE7RUclYmJA==, tarball: https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.4.tgz} + '@angular-devkit/core@22.0.5': + resolution: {integrity: sha512-xxd3b9X0bbdGuYqDj1OgxtlGotrb/gsxQ5+4aqivWBHq4q/1RI8JfVB7gqcoYTvAfTq63Dwsk7Qd33hC4yJ1Wg==, tarball: https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.5.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: chokidar: ^5.0.0 @@ -105,8 +105,8 @@ packages: chokidar: optional: true - '@angular-devkit/core@22.0.5': - resolution: {integrity: sha512-xxd3b9X0bbdGuYqDj1OgxtlGotrb/gsxQ5+4aqivWBHq4q/1RI8JfVB7gqcoYTvAfTq63Dwsk7Qd33hC4yJ1Wg==, tarball: https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.5.tgz} + '@angular-devkit/core@22.0.6': + resolution: {integrity: sha512-uAZ7TPn+8sDZcFtiM5nQpmqaR9lspLAf7RY7t7TXYP794001khRf+F/AhmONxmgFPWY01+eeJSvBx+FEnHCb0A==, tarball: https://registry.npmjs.org/@angular-devkit/core/-/core-22.0.6.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: chokidar: ^5.0.0 @@ -114,16 +114,16 @@ packages: chokidar: optional: true - '@angular-devkit/schematics@22.0.4': - resolution: {integrity: sha512-VRxL1hD/Q3TQglM6EfQ0ksAW4OIvtKyZgtaUpyGsJRfD6tGmLFn7MDnmyyq1ceLX/Clq+3tzH/wN0tF6rcE0jA==, tarball: https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-22.0.4.tgz} - engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} - '@angular-devkit/schematics@22.0.5': resolution: {integrity: sha512-yKkImZuFLIbylmk1REyoW3EWQeqnr6qwtrzs4EPeaJgzjj+MZurq5slQ3fanK9lfX2q+W+dnSQFKBXHxlUGJ8Q==, tarball: https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-22.0.5.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} - '@angular/build@22.0.5': - resolution: {integrity: sha512-uVXf1cSKTMDvpiP5x0X8h7D7dICHC2XsbmvRYtxdyTRy+zJduqtCdZTwnwmCrwIc5hOF+bmwa5p17P6XirYVfw==, tarball: https://registry.npmjs.org/@angular/build/-/build-22.0.5.tgz} + '@angular-devkit/schematics@22.0.6': + resolution: {integrity: sha512-7bSiye4UrxvhYvYp1YIpVSVOFQZ75EXP3EE5/ShM3cPNtUTdXJiwHkD8SiLHNhPTB6Mzrq5tp1YlAXXRg/WgLw==, tarball: https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-22.0.6.tgz} + engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} + + '@angular/build@22.0.6': + resolution: {integrity: sha512-mIp1snH1haw4pKiJwUmKyp9f31NRUTeUwqrl9W59X3Iv54egOnD1EdCc0jsW7WJVr/JHRZYVt/ooFelUB8uV8g==, tarball: https://registry.npmjs.org/@angular/build/-/build-22.0.6.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} peerDependencies: '@angular/compiler': ^22.0.0 @@ -133,7 +133,7 @@ packages: '@angular/platform-browser': ^22.0.0 '@angular/platform-server': ^22.0.0 '@angular/service-worker': ^22.0.0 - '@angular/ssr': ^22.0.5 + '@angular/ssr': ^22.0.6 istanbul-lib-instrument: ^6.0.0 karma: ^6.4.0 less: ^4.2.0 @@ -171,19 +171,19 @@ packages: vitest: optional: true - '@angular/compiler-cli@22.0.5': - resolution: {integrity: sha512-DR9kahfd5P/xrXbX8HJu8jBkkUZNqCZuMCod4lyo4a9MTOSKs2ltNU9VEDT7Qw++hDYowr37/lLfIzrvDEFPEQ==, tarball: https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-22.0.5.tgz} + '@angular/compiler-cli@22.0.6': + resolution: {integrity: sha512-HPiceCIEyIcTmOuIFiyqu04kbLoJhSUavcOy/kzJkJ2OPXtPvGKaimC4lgs0C86uFy4P6rj6PDITBe3AVHkMTA==, tarball: https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-22.0.6.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0} hasBin: true peerDependencies: - '@angular/compiler': 22.0.5 + '@angular/compiler': 22.0.6 typescript: '>=6.0 <6.1' peerDependenciesMeta: typescript: optional: true - '@angular/compiler@22.0.5': - resolution: {integrity: sha512-yGhbEBh2WU1kCubjBD+Eo5bwvZPR+zacDhyPao/PgopH0PiVETd4Iv1gK0ZAvg7XdImgzZfipJXKqTK4JbOFiQ==, tarball: https://registry.npmjs.org/@angular/compiler/-/compiler-22.0.5.tgz} + '@angular/compiler@22.0.6': + resolution: {integrity: sha512-iFHsXOA14TsxK4jowmGfogI9Jb0ApL3z8EGTGvKMialqtw088HYjwJP1LT4OlO/wgmjSTq2peZ19jLPuhevNvw==, tarball: https://registry.npmjs.org/@angular/compiler/-/compiler-22.0.6.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0} '@babel/code-frame@7.29.7': @@ -1087,8 +1087,8 @@ packages: cpu: [arm] os: [android] - '@oxc-parser/binding-android-arm-eabi@0.138.0': - resolution: {integrity: sha512-hSYAD+F9W2Qh8SETMqBsQRx6YHvB4z+i/i36shlC7tfdZQauMs4vf3G/EQwKOkNlN7rkTiKINvsNmQb9q2MWcQ==, tarball: https://registry.npmjs.org/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.138.0.tgz} + '@oxc-parser/binding-android-arm-eabi@0.139.0': + resolution: {integrity: sha512-22EsXTA3Vc7OvrF4bfT48PFln2UbxkVgrp/Tm32qLw76Dv7SmcInfClJe6yPYamnli6HiqasnESZ5ezN+X4ybg==, tarball: https://registry.npmjs.org/@oxc-parser/binding-android-arm-eabi/-/binding-android-arm-eabi-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [android] @@ -1099,8 +1099,8 @@ packages: cpu: [arm64] os: [android] - '@oxc-parser/binding-android-arm64@0.138.0': - resolution: {integrity: sha512-Ns5LLTp8cVyP8DsYqD482h0HE84xiGYRgtm7g4LtTinq209NAiMF768e/8r2NHaa0UMirS5mrT1m1VwiVmBi4Q==, tarball: https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.138.0.tgz} + '@oxc-parser/binding-android-arm64@0.139.0': + resolution: {integrity: sha512-uASQkZV+CUQ6xXvoMzDQyfhd8OMusdv2FyCPfAi5ZDYptesapJlw7erhpGi1Lc+U8QjQV2JUrIh7d/3su2LzmQ==, tarball: https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] @@ -1111,8 +1111,8 @@ packages: cpu: [arm64] os: [darwin] - '@oxc-parser/binding-darwin-arm64@0.138.0': - resolution: {integrity: sha512-Yka0m4YhKUHBIZufafSLAeO+DUrfHPtNXBlZSj7DxshquIl41x/a+i/MbRnbOy8heuLiYU1STa6h0FAAzT7Pbw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.138.0.tgz} + '@oxc-parser/binding-darwin-arm64@0.139.0': + resolution: {integrity: sha512-vuQOv2WF5pZCkdSPEExul98o853M3MCR24DpWsGrUoPJu5KcnGE34kLXY2yFwBwZwT+eN1x40Tt4q6ZzlEdNUA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] @@ -1123,8 +1123,8 @@ packages: cpu: [x64] os: [darwin] - '@oxc-parser/binding-darwin-x64@0.138.0': - resolution: {integrity: sha512-MWLUZZzmNRUqTWueZF27ncreaZ1wZ0gboWL2QMPxRQA2xgOmBPlGg2H9pAKJSPBlwEHcWa9TdWRiehAS+yls8w==, tarball: https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.138.0.tgz} + '@oxc-parser/binding-darwin-x64@0.139.0': + resolution: {integrity: sha512-zxZB8ChS+7XactZhcyxQ292P/DNiiBaPPKYiVUlb3RC0V/hme5bokNubjcmEmbW9uTfmqLTpveAdkbe66H3pGg==, tarball: https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] @@ -1135,8 +1135,8 @@ packages: cpu: [x64] os: [freebsd] - '@oxc-parser/binding-freebsd-x64@0.138.0': - resolution: {integrity: sha512-Vae5tzsrzZ/lCDVCZUMi/vzSiiHEgcOEfsyIfWOHmjZ2ji+gT+n96T757yX5/f7/7JIJuiannAHJKV5ARaF6ng==, tarball: https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.138.0.tgz} + '@oxc-parser/binding-freebsd-x64@0.139.0': + resolution: {integrity: sha512-iw2MsoCPBQwdJqywRAGsF1jEAcGoZ+DeG2LVzt5pdUvRHqajsMF46BH0rHiWoWtMwcMSia+oQYga7fHo7u7Bcw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] @@ -1147,8 +1147,8 @@ packages: cpu: [arm] os: [linux] - '@oxc-parser/binding-linux-arm-gnueabihf@0.138.0': - resolution: {integrity: sha512-qkU8wv5mYexrCw0X4DHFgxGbRScwGLIIKUkHXU7xXEiLoMnQzELak2gujxfa9GFrlEgPjbyLUDFHWm67Zs38ng==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.138.0.tgz} + '@oxc-parser/binding-linux-arm-gnueabihf@0.139.0': + resolution: {integrity: sha512-SwjD/k3Y5bwGJWOH313VyaDrAuaYg1Pe+4AAXCgUKvSO5IHkj+mZ0oFcOWmB5nTuOM3uwdT+leL8h4OnFlI5hw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -1159,8 +1159,8 @@ packages: cpu: [arm] os: [linux] - '@oxc-parser/binding-linux-arm-musleabihf@0.138.0': - resolution: {integrity: sha512-3HgULIvoDV7h2ZfVYzxQwOSOJnAjMwYmyUBzndNuLRGgBNI549ED0P6AGmN9y2TnSvrwJ+Q8zqdxqssMnGXitA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.138.0.tgz} + '@oxc-parser/binding-linux-arm-musleabihf@0.139.0': + resolution: {integrity: sha512-qbeygDkcvailKFhphb2YGMMXsaZIynHlPtoOrcx4NZB/tRbUKraCCMbw8dPeFtEKasfS2qWh1VnReY+Lcys1zA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -1172,8 +1172,8 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-arm64-gnu@0.138.0': - resolution: {integrity: sha512-pIonbH2p0KLCwz4CNPCi0xGqci4numpMQDCLJwLfsrEky7NUuByKDFhCjzE0E7vR3aj/lBjyMoTskHBo/qSg8g==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.138.0.tgz} + '@oxc-parser/binding-linux-arm64-gnu@0.139.0': + resolution: {integrity: sha512-SrlL02KeImKlvx/9rCeopOLH7qKI3rqKKEguK6KBwVwEGLhV/A47dW4DNigf6/LFhrwoovaiayEQryjYAI86dQ==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -1186,8 +1186,8 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-linux-arm64-musl@0.138.0': - resolution: {integrity: sha512-cT5L1Xz/5m6Ga1hD3922gLc+fePOauJZJdApPTI/2Vu0EmYo62uHG9V5Dq65hhgU9TW10oDi2840y9cGdd7BIg==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.138.0.tgz} + '@oxc-parser/binding-linux-arm64-musl@0.139.0': + resolution: {integrity: sha512-u9e884ChAVRmIZ1jr/m46S96FoDQnruFjISLi4Y0i6Wu/JUUmIiw7+umLyXILJsPfUuqnN5BJLe23t07+Y6+IA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -1200,8 +1200,8 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-ppc64-gnu@0.138.0': - resolution: {integrity: sha512-hKy/vvejKk3LNE/FsRbekWejLa046//TnLWtSo7ur29NIsNbSIvnOVYIirSVC7fsd6NO8UFzwDdcoZfCyBvSBA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.138.0.tgz} + '@oxc-parser/binding-linux-ppc64-gnu@0.139.0': + resolution: {integrity: sha512-Z9tU2b3GJfAXOdirQmz4gZQkQkVjy53i77gf91l0733MQKa/qtk73KQQE2GzDtMqim+HyjpzvemmqzBtH2IJUA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] @@ -1214,8 +1214,8 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-riscv64-gnu@0.138.0': - resolution: {integrity: sha512-bh6tjNGq0v0b9GAMu0pTv/YpTqepCFy0TIOtQHm8+41fZwLXTaB6xiEWVUSarNCXqc5kyzYcH6EOfwW1sJxJOw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.138.0.tgz} + '@oxc-parser/binding-linux-riscv64-gnu@0.139.0': + resolution: {integrity: sha512-RyUbr7hzPK84YDWKs77PRYk9VBwWbsbuYsQzQWiSmLnARXTg2zntLPGfCH/1wpfUYdmGkp/6SsqTXSsYdw9Jgw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] @@ -1228,8 +1228,8 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-linux-riscv64-musl@0.138.0': - resolution: {integrity: sha512-HhOkddcClSTtTxY10f/mACblKcQdxWy4lYYwX12G23j+S5eiJ5y1kpo1r7kKng+2bdnCBO+lCDWOVVc9kVl9+g==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.138.0.tgz} + '@oxc-parser/binding-linux-riscv64-musl@0.139.0': + resolution: {integrity: sha512-dcQhjtcDvtR8BgkUpt03Yz5SzxdzYvTigenIJOEsiSX6G2t6yybEMxGWjp0dOuYGror0BaqcZfTyXR58amCEig==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [riscv64] os: [linux] @@ -1242,8 +1242,8 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-s390x-gnu@0.138.0': - resolution: {integrity: sha512-5mi+wtbeJiEa4waGG88EcEGgJBBNJdDeIcayPPcrLNMXbCrgdtbb80q0Nrat7A8NglLUVzhuTAAp7K6PjmUO8Q==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.138.0.tgz} + '@oxc-parser/binding-linux-s390x-gnu@0.139.0': + resolution: {integrity: sha512-iuGrxysV4rGUymdKpn7bgZQ6Vix8Bi/6D/rp71HYIzphq6NKrsBhsGOYsSZte+uBFL43tXh7Xr7TM72sGliJNA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] @@ -1256,8 +1256,8 @@ packages: os: [linux] libc: [glibc] - '@oxc-parser/binding-linux-x64-gnu@0.138.0': - resolution: {integrity: sha512-ckbq3AMI7lI8AhQtE8KdqYRmzmzwKfCU12QN/PBKXO72PfWdvvZQN0hFShDX/XRNsPqjddLmvXaQMT3zfYtNlw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.138.0.tgz} + '@oxc-parser/binding-linux-x64-gnu@0.139.0': + resolution: {integrity: sha512-NxJdZZyaa2JLLvNfH/iJQXfCNfKcPMylwY4ObMpBVmW4Nq+RyUpVVQXrMMelcQ6rwx3nuhF1Iga8n+eoAKGCIA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -1270,8 +1270,8 @@ packages: os: [linux] libc: [musl] - '@oxc-parser/binding-linux-x64-musl@0.138.0': - resolution: {integrity: sha512-JrCOzHO9BYEs5Xz5JHYBxSc/hYKxfXUj5QQb64sERSbkQot6+KEgMTOR2C9hLrhaqOui65OYcFyTTS+YxXDtnA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.138.0.tgz} + '@oxc-parser/binding-linux-x64-musl@0.139.0': + resolution: {integrity: sha512-ePxBvvtzISmSsJ0RIj8FNikSCn58i1jtccj7XR4U9Li4iSzhkFyYlnJ51cQTUwkairz8WMTD4SpKoot8RyTnQA==, tarball: https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -1283,8 +1283,8 @@ packages: cpu: [arm64] os: [openharmony] - '@oxc-parser/binding-openharmony-arm64@0.138.0': - resolution: {integrity: sha512-eASMMfOOIfLHkWJRPSu8llByvVRM+c1M/lh18KjsjELM3y10+7B5iBbbrht9LdtsJXQ+mRuP/lJ7UWe3Ok3ehw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.138.0.tgz} + '@oxc-parser/binding-openharmony-arm64@0.139.0': + resolution: {integrity: sha512-b/c2+mPXMOxG5x16n8yf9cjor/ntQQScmYnSmLEWIWJ4rfXd5dokMxx0kliSLA+YAGq6DD3K9BWi+aFXHiiV1w==, tarball: https://registry.npmjs.org/@oxc-parser/binding-openharmony-arm64/-/binding-openharmony-arm64-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] @@ -1294,8 +1294,8 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} cpu: [wasm32] - '@oxc-parser/binding-wasm32-wasi@0.138.0': - resolution: {integrity: sha512-BnTCO87Iwc57NufXS7vcrkrmpN+daeCeYr1+/xgPT6HjwNs0lBmJYeFrcOs4WkNN8yscdd6Rc4FxWh3+59hAFw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.138.0.tgz} + '@oxc-parser/binding-wasm32-wasi@0.139.0': + resolution: {integrity: sha512-rNU0pO+/CVPC2qZ+xtX5R2cOje9Q75q3UkfgwUCPlplqxMv6Iffd5tMPGVMCLGnPINxPlmi0WPsW94HltbYvfQ==, tarball: https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [wasm32] @@ -1305,8 +1305,8 @@ packages: cpu: [arm64] os: [win32] - '@oxc-parser/binding-win32-arm64-msvc@0.138.0': - resolution: {integrity: sha512-+Zi47boD2wKNL0hOA47Vkwk6njMZ8sOsr4Geu/56EUtlooDh9crNOU41U6bXGS0UjC4Y72HtRA1iuB6qx1ARUw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.138.0.tgz} + '@oxc-parser/binding-win32-arm64-msvc@0.139.0': + resolution: {integrity: sha512-JPEmfncZfqAFiGsAN6UZSMIBqnG8wn8buywRacFOWjP+9dZwcs03SsBp4tmyjM/4l/VoH/IuThrW1Jof3OyQUw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] @@ -1317,8 +1317,8 @@ packages: cpu: [ia32] os: [win32] - '@oxc-parser/binding-win32-ia32-msvc@0.138.0': - resolution: {integrity: sha512-SYcV674Wi2WuoBefUFgf0PBMNlZe5IF0YZ0TnP7DK+EusMVpEWq6iz+7r64svjAb7vjthzlas0FUCSlz8YkqYg==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.138.0.tgz} + '@oxc-parser/binding-win32-ia32-msvc@0.139.0': + resolution: {integrity: sha512-c06dWBwEnFHof5JN7T9/ts23uATXS9czPEBO60d4xnjH2Am29Bo7OGKdVHRmcWQnw0OBxlTg9fIEXAvtcwOBfw==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ia32] os: [win32] @@ -1329,8 +1329,8 @@ packages: cpu: [x64] os: [win32] - '@oxc-parser/binding-win32-x64-msvc@0.138.0': - resolution: {integrity: sha512-QZplnCxS4vPe4StAVBtvD2bW3pELlidf0Ek6iQ/HHiCjbEtrs5pFZZfLAoPhKLJyDzyxoGAdic9bSIYrJYTZcg==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.138.0.tgz} + '@oxc-parser/binding-win32-x64-msvc@0.139.0': + resolution: {integrity: sha512-bI3/44urQjW/D495JPXe+c9d+4Q+ONi3DvDNnzwRZYTWHZ3hAlFdmirYK4mzhTfCZiAly02EbMYir7QGU+9O2Q==, tarball: https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -1338,8 +1338,8 @@ packages: '@oxc-project/types@0.137.0': resolution: {integrity: sha512-WT+Gb24i8hmvo85AIv2oEYouEXkRlKAlT9WaCa3TfLgNCN+GhrJOGZuIlMouAh38Qe4QOx26eUOVsq70qXrywA==, tarball: https://registry.npmjs.org/@oxc-project/types/-/types-0.137.0.tgz} - '@oxc-project/types@0.138.0': - resolution: {integrity: sha512-1a7ZKmrRTCoN1XMZ4L0PyyqrMnrNlLyPuOkdSX2MZg7IiIGRUyurNhAm73ptDOraoBcIordsIGKNPKUzy3ZmfA==, tarball: https://registry.npmjs.org/@oxc-project/types/-/types-0.138.0.tgz} + '@oxc-project/types@0.139.0': + resolution: {integrity: sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==, tarball: https://registry.npmjs.org/@oxc-project/types/-/types-0.139.0.tgz} '@oxc-resolver/binding-android-arm-eabi@11.21.3': resolution: {integrity: sha512-eNU11A2WNizh04v3uyaJCootrHIaS0B9aHYXvAvVnPNk4xYSjMUjHnhQ6dewPN2MRYDskV85d1N0Aw0WNWhcyg==, tarball: https://registry.npmjs.org/@oxc-resolver/binding-android-arm-eabi/-/binding-android-arm-eabi-11.21.3.tgz} @@ -1812,16 +1812,16 @@ packages: cpu: [x64] os: [win32] - '@schematics/angular@22.0.4': - resolution: {integrity: sha512-P3V3tkqIR+n0GJSv0ibf34/zMtKbFp6kaTjBe5cm/RyXuHbmdaPYjk8PNphkGMypDtWCof1RtNnW/hl832Wnew==, tarball: https://registry.npmjs.org/@schematics/angular/-/angular-22.0.4.tgz} + '@schematics/angular@22.0.5': + resolution: {integrity: sha512-e+1Ob5Kxt9QH2Gige0Bl56CXclG819RMl5Fso3kwO58+9AQnR2QxvjbetB7LDRl+YEG3TXCE4s3vdrV4gqRRAQ==, tarball: https://registry.npmjs.org/@schematics/angular/-/angular-22.0.5.tgz} engines: {node: ^22.22.3 || ^24.15.0 || >=26.0.0, npm: ^6.11.0 || ^7.5.6 || >=8.0.0, yarn: '>= 1.13.0'} - '@softarc/native-federation-orchestrator@4.4.1': - resolution: {integrity: sha512-ETlmrUAjCqREy0ouT0rFlLHTDbLBtS4xG6YwfOLQPDgzRiWTzvPtT1S326sKVno4vSnJBXjcYSEL6JUMxJaBkg==, tarball: https://registry.npmjs.org/@softarc/native-federation-orchestrator/-/native-federation-orchestrator-4.4.1.tgz} + '@softarc/native-federation-orchestrator@4.5.0': + resolution: {integrity: sha512-PC5qwtDA6VEYtwBacgc4HTp9AaTV6EX420m3mgW3xMsfhKByh71AZjpWcGWluVynlx8Lz/DcBQFM4o1xOv/U2Q==, tarball: https://registry.npmjs.org/@softarc/native-federation-orchestrator/-/native-federation-orchestrator-4.5.0.tgz} engines: {node: '>=22.14.0'} - '@softarc/native-federation@4.2.1': - resolution: {integrity: sha512-yV7H21+iOZ1CqvzXo3BYPI612L/wUdICKRm9wlfc3eQXsKs2Ufy13W3qriTvSS/8o6xbC1gfJdHwh5/aPfK8pQ==, tarball: https://registry.npmjs.org/@softarc/native-federation/-/native-federation-4.2.1.tgz} + '@softarc/native-federation@4.3.0': + resolution: {integrity: sha512-ahOQOTrvAQyfdg2ZdtduVW9C6iJpgrOYUaAsA2EWmdACT5Nm3NJRtGV/EdcPLC3jHjpiHHaFfUjy1bNoFOg+1w==, tarball: https://registry.npmjs.org/@softarc/native-federation/-/native-federation-4.3.0.tgz} '@softarc/sheriff-core@0.19.6': resolution: {integrity: sha512-KACxHG9sS7kNWgnnBODzdr14kMLMrJVlQKc+tViUP03p2fRwNhESOA49bz51Yn7dro1mbtMmmFjICLmZSJDZZA==, tarball: https://registry.npmjs.org/@softarc/sheriff-core/-/sheriff-core-0.19.6.tgz} @@ -1856,63 +1856,63 @@ packages: '@types/node@24.10.15': resolution: {integrity: sha512-BgjLoRuSr0MTI5wA6gMw9Xy0sFudAaUuvrnjgGx9wZ522fYYLA5SYJ+1Y30vTcJEG+DRCyDHx/gzQVfofYzSdg==, tarball: https://registry.npmjs.org/@types/node/-/node-24.10.15.tgz} - '@typescript-eslint/eslint-plugin@8.62.1': - resolution: {integrity: sha512-4EQM77WgVNxj7OkL/5b/D/xZsw00G577+UriYTC7JF5opcF3T2AuoeY7ueLaZgSVjSgCS6yOAJB5bRGLPSJUzA==, tarball: https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.62.1.tgz} + '@typescript-eslint/eslint-plugin@8.63.0': + resolution: {integrity: sha512-rvwSgqT+DHpWdzfSzPatRLm02a0GlESt++9iy3hLCDY4BgkaLcl8LBi9Yh7XGFBpwcBE/K3024QuXWTpbz4FfQ==, tarball: https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.62.1 + '@typescript-eslint/parser': ^8.63.0 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/parser@8.62.1': - resolution: {integrity: sha512-sPhE4iHuJDSvoAiec+Ro8JyXw8f0ql13HFR82P99nCm9GwTEKG0KYLvDe6REk8BCXuit6vJAv/Yxg5ABaNS2rA==, tarball: https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.62.1.tgz} + '@typescript-eslint/parser@8.63.0': + resolution: {integrity: sha512-gwh4gvvlaVDKKxyfxMG+Gnu1u9X0OQBwyGLkbwB65dIzBKnxeRiJlNFqlI3zwVhNXJIs6qV7mlFCn/BIajlVig==, tarball: https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.62.1': - resolution: {integrity: sha512-yQ3RgY5RkSBpsNS1Bx/JQEcA24FOSdfGktoyprAr5u18390UQdtVcfnEv4nIrIshNnavlVyZBKxQwT1fIAE6cg==, tarball: https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.62.1.tgz} + '@typescript-eslint/project-service@8.63.0': + resolution: {integrity: sha512-e5dh0/UI0ok53AlZ5wRkXCB32z/f2jUZqPR/ygAw5WYaSw8j9EoJWlS7wQjr/dmOaqWjnPIn2m+HhVPCMWGZVQ==, tarball: https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/scope-manager@8.62.1': - resolution: {integrity: sha512-r4d249KbQ1SFdpeStvob8Ih6aPPIzfqllPVOtvhve6ZcpuVcYo5/7zUWckKpHE7StASX4kTKZTLf0WQm/wPkcg==, tarball: https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.62.1.tgz} + '@typescript-eslint/scope-manager@8.63.0': + resolution: {integrity: sha512-uUyfMWCnDSN8bCpcrY8nGP2BLkQ9Xn0GsipcONcpIDWhwhO4ZSyHvyS14U3X75mzxWxL3I2UZIrenTzdzcJO8A==, tarball: https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.62.1': - resolution: {integrity: sha512-xadytJqX9vJVQ2fdQjkcIVigwaOJNWkpjdLt6cEQ+xPnrI1fkp+/jZE/I97k9KUjqtpd25i0HeyZf3T6dutv2g==, tarball: https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.62.1.tgz} + '@typescript-eslint/tsconfig-utils@8.63.0': + resolution: {integrity: sha512-sUAbkulqBAsncKnbRP3+7CtQFRKicexnj7ZwNC6ddCR7EmrXvjvdCYMJbUIqMd6lwoEriZjwLo08aS5tSjVMHg==, tarball: https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/type-utils@8.62.1': - resolution: {integrity: sha512-aXM5xlqXiTxPibXB93cLAURfT3rlizf7uMXISCXy66Isr/9hISJx3yDsKl0L7lKa51b8JpFuNKby0/O0pEm9jg==, tarball: https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.62.1.tgz} + '@typescript-eslint/type-utils@8.63.0': + resolution: {integrity: sha512-Nzzh/OGxVCOjObjaj1CQF2RUasyYy2Jfuh+zZ3PjLzG2fYRriAiZLib9UKtO+CpQAS3YHiAS+ckZDclwqI1TPA==, tarball: https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/types@8.62.1': - resolution: {integrity: sha512-ooCzJFaf+Hg+uG6fA3NRFGuFjlfNlDhBthbv4ZPU/0elCAFUfnyXUvf/WOpHz/jYwSmvU2GkR2LtyUfy1AxZ1Q==, tarball: https://registry.npmjs.org/@typescript-eslint/types/-/types-8.62.1.tgz} + '@typescript-eslint/types@8.63.0': + resolution: {integrity: sha512-xyLtl9DUBBFrcJS4x2pIqGLH68/tC2uOa4Z7pUteW09D3bXnnXUom4dyPikzWgB7llmIc1zoeI3aoUdC4rPK/Q==, tarball: https://registry.npmjs.org/@typescript-eslint/types/-/types-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.62.1': - resolution: {integrity: sha512-xMcW9oP9u7fAMXYs9A65CVmtLQe2r//oXINHfi8HV+oiqhih17sbLdhXr4540YWlgpDKQdY854OL5ZrdCiQsAA==, tarball: https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.62.1.tgz} + '@typescript-eslint/typescript-estree@8.63.0': + resolution: {integrity: sha512-ygBkU+B7ex5UI/gKhaqexWev79uISfIv7XQCRNYO/jmD8rGLPyWLAb3KMRT6nd8Gt9bmUBi9+iX6tBdYfOY81Q==, tarball: https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.62.1': - resolution: {integrity: sha512-sHtbPfuKNZCG+ih8SyjjucqRntSVmp8XgL5u6o9mAhiSn8ds5o/M/XdM0abweme2Tln3szOstOrZ9OXitvPh0g==, tarball: https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.62.1.tgz} + '@typescript-eslint/utils@8.63.0': + resolution: {integrity: sha512-fUKaeAvrTuQg/Tgt3nliAUSZHJM6DlCcfyEmxCvlX8kieWSStBX+5O5Fnidtc3i2JrH+9c/GL4RY2iasd/GPTA==, tarball: https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/visitor-keys@8.62.1': - resolution: {integrity: sha512-4g3BLxfdTMy8iZG0MaBkadnlRrCJ74cQiFbyEVMrkwIoqdyaXXQM22cotDvrl4x28wgIZ9rEJRoM+mmhSJpJ1g==, tarball: https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.62.1.tgz} + '@typescript-eslint/visitor-keys@8.63.0': + resolution: {integrity: sha512-UexrHGnGTpbuQHct2ExOc2ZcFbGUS9FOesCxxqdBGcpI1BxYu/LZ6U8Aq6/72XtF/qRBk9nhuGHFJIXXMhPMdw==, tarball: https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@vitejs/plugin-basic-ssl@2.3.0': @@ -1921,20 +1921,20 @@ packages: peerDependencies: vite: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@vitest/coverage-v8@4.1.9': - resolution: {integrity: sha512-G9/lgqibheLVBDRuya45EbsEXTYcWoSG+TLg7i2axuzx0Eq62eXn+aWXyaVdV5vKvFSWd6ywcX8hA7la9Pvu8g==, tarball: https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-4.1.9.tgz} + '@vitest/coverage-v8@4.1.10': + resolution: {integrity: sha512-IM49HmthevbgAO4anp1hwtoT9wYe59w0LR00gr+eagHE+ZJ5lK4sLPeO0ubgoJcwLk6dehU3R24N+FbEEKDc8g==, tarball: https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-4.1.10.tgz} peerDependencies: - '@vitest/browser': 4.1.9 - vitest: 4.1.9 + '@vitest/browser': 4.1.10 + vitest: 4.1.10 peerDependenciesMeta: '@vitest/browser': optional: true - '@vitest/expect@4.1.9': - resolution: {integrity: sha512-vl/rYsUKcBr3SnQn166+XR5ZQcgMx3DQhFWdfli/cWpLnLUmbxZvyrJZotLFUryib+LtArYMSTJ5RbQ57ZqrlA==, tarball: https://registry.npmjs.org/@vitest/expect/-/expect-4.1.9.tgz} + '@vitest/expect@4.1.10': + resolution: {integrity: sha512-YsCn+qAk1GWjQOWFEsEcL2gNQ0zmVmQu3T03qP6UyjhtmdtwtbuI+DASn/7iQB3HGTXkdBwGddzxPlmiql5vlA==, tarball: https://registry.npmjs.org/@vitest/expect/-/expect-4.1.10.tgz} - '@vitest/mocker@4.1.9': - resolution: {integrity: sha512-EVkXzBjrPGM+cK8/ANWgBrkUCfJfb38/EfTSO8h7pWvKkyPkpWxvR7BkD2MyItMF62C97zAEoqdpUixwR/e+Rw==, tarball: https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.9.tgz} + '@vitest/mocker@4.1.10': + resolution: {integrity: sha512-v0xaezt+DKEmKfaxg133ldzADrwLGd7Ze1MfQQTYfvs8OqZIwbxyxaYURivwV7sWy5fqn3rH5uOrSp07bp44Ow==, tarball: https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.10.tgz} peerDependencies: msw: ^2.4.9 vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -1944,20 +1944,20 @@ packages: vite: optional: true - '@vitest/pretty-format@4.1.9': - resolution: {integrity: sha512-s0iufns3iIFitdgm+YR7g1whCAaGtXz459VS9/PqyKDEEFgYIhsHOQmXgIgDuYCt7DeQmiZT0Qe2OA2p4ZPu5A==, tarball: https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.9.tgz} + '@vitest/pretty-format@4.1.10': + resolution: {integrity: sha512-W1HsjSH4MXQ9YfmmhLAoIYf1HRfekQCGngeIgcei6MP5QQGWUe0gkopdZQaVCFO+JDJMrAJGwa5pRpNpvy4P8Q==, tarball: https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.10.tgz} - '@vitest/runner@4.1.9': - resolution: {integrity: sha512-KXLMDtc7oe70+3mJfGrPUWPesswH+3sTxAMAMl8DG7I8IUQT4XW718dY5ID3vPUcmlu27CcKfY4P3h3I29SLJg==, tarball: https://registry.npmjs.org/@vitest/runner/-/runner-4.1.9.tgz} + '@vitest/runner@4.1.10': + resolution: {integrity: sha512-IKI6kpIH+LmpROplyLwBBaCfMgOZOMsygVa6BARD6ahA04VRuJSa6OaVG7kRvSEMD870Vd91rSSw0eegtWyLGg==, tarball: https://registry.npmjs.org/@vitest/runner/-/runner-4.1.10.tgz} - '@vitest/snapshot@4.1.9': - resolution: {integrity: sha512-Jc7RKGNBo8Z28WYIm0Niej4xdSPByRf6mU58VpHQkd6Zh05rlnA+twjbK5HyeIGHxrzsc3mJgS43uM0CZKzaIA==, tarball: https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.9.tgz} + '@vitest/snapshot@4.1.10': + resolution: {integrity: sha512-xRkfOT1qpTAi/Ti4Y1LtfRc3kEuqxGw59eN2jN9pRWMtS/XDevekhcFSqvQqjUNGksfjMJu3Y+oJ+4Ypn2OaJw==, tarball: https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.10.tgz} - '@vitest/spy@4.1.9': - resolution: {integrity: sha512-fHpsS6mIi+PiEW+vcRVOMkX1oSaPKne3VOclSFICPcGOmfKgXPU5iAah+wcNcj2xPrCCmfq99IDGf+EojhhvhA==, tarball: https://registry.npmjs.org/@vitest/spy/-/spy-4.1.9.tgz} + '@vitest/spy@4.1.10': + resolution: {integrity: sha512-PLf/Ugvoq5wO/b4rwYCR1h2PSIdXz7wnkQFMiUpLdtM7l6pqVFcQIBEHyT1+l+cj7mNwAfZHzqXqDyjvOuwbDw==, tarball: https://registry.npmjs.org/@vitest/spy/-/spy-4.1.10.tgz} - '@vitest/utils@4.1.9': - resolution: {integrity: sha512-A51o8ymO5PpqlWNnBP9ZHPXDIpuMtTLlGSjN7la4US+LJzoUMyhwjA5QXlm39JexgwHKW4Xjs8Z2d3dLCXOeuA==, tarball: https://registry.npmjs.org/@vitest/utils/-/utils-4.1.9.tgz} + '@vitest/utils@4.1.10': + resolution: {integrity: sha512-fy9am/HWxbaGt/Sawrp90vt6Y6jQwf1RX77cz3uwoJwJVMli/e1IEwRPnMNJ7vKfPTwo0diXifkpPvwH9v7nGA==, tarball: https://registry.npmjs.org/@vitest/utils/-/utils-4.1.10.tgz} '@yarnpkg/lockfile@1.1.0': resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==, tarball: https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz} @@ -2048,8 +2048,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==, tarball: https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz} - baseline-browser-mapping@2.10.40: - resolution: {integrity: sha512-BSSLZ9/Cjjv7Gtj5B68ZzXcXUg8iOf3fme+FCuh8rC/Go+Kmh8cox7M3A8dolou16s64QjLPOSdngh7GxXvkSw==, tarball: https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.40.tgz} + baseline-browser-mapping@2.10.42: + resolution: {integrity: sha512-c/jurFrDLyui7o1J86yLkRu4LMsTYcBohveus7/I2Hzdn9KIP2bdJPTue/lR1KH46enoPbD77GKeSYNdyPoD3Q==, tarball: https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.42.tgz} engines: {node: '>=6.0.0'} hasBin: true @@ -2078,8 +2078,8 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==, tarball: https://registry.npmjs.org/braces/-/braces-3.0.3.tgz} engines: {node: '>=8'} - browserslist@4.28.4: - resolution: {integrity: sha512-MTc8i/x9jBQd1iMw2CFGS+rwMa07eYjLR0CCTLDACl9xhxy+nIs3KeML/biicXtk9JrZ6dnnTatmc7ErPXIxqw==, tarball: https://registry.npmjs.org/browserslist/-/browserslist-4.28.4.tgz} + browserslist@4.28.5: + resolution: {integrity: sha512-Cu2E6QejHWzuDMTkuwgpABFgDfZrXLQq5V13YOACZx4mFAG4IwGTbTfHPMr4WtxlHoXSM8FIuRwYYCz5XiabaQ==, tarball: https://registry.npmjs.org/browserslist/-/browserslist-4.28.5.tgz} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true @@ -2097,8 +2097,8 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, tarball: https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz} engines: {node: '>=6'} - caniuse-lite@1.0.30001799: - resolution: {integrity: sha512-hG1bReV+OUU+MOqK4t/ZWI0tZOyz3rqS9XuhOUz1cIcbwBKjOyJEJuw9ER5JuNyqxNk8u/JUVbGibBOL1yrjFw==, tarball: https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001799.tgz} + caniuse-lite@1.0.30001803: + resolution: {integrity: sha512-g/uHREV2ZpK9qMalCsWaxmA6ol+DX8GYhuf3T40RKoP+oL7vhRJh8LNt73PCjpnR6l14FzfPrB5Yux4PKm2meg==, tarball: https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001803.tgz} chai@6.2.2: resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==, tarball: https://registry.npmjs.org/chai/-/chai-6.2.2.tgz} @@ -2252,8 +2252,8 @@ packages: engines: {node: '>=0.12.18'} hasBin: true - electron-to-chromium@1.5.381: - resolution: {integrity: sha512-n9Wa6yB+vDsGuA8AKbl/0z7HbvWqt5jxIdvr1IUicd0ryPrk7/xzwqLv8D9AbbvZ6avVNtXYLTfmgFHkwkyelg==, tarball: https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.381.tgz} + electron-to-chromium@1.5.388: + resolution: {integrity: sha512-Pl/aJaqOOxYxda3vcx1IKSJimwYXHDkEnGn0F+kG2EE68dDtx2uCinaS+Vih8Z91B9t8CSAbiF/HKyWcnXjhzw==, tarball: https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.388.tgz} emoji-regex@10.6.0: resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==, tarball: https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz} @@ -2295,11 +2295,11 @@ packages: es-module-lexer@1.7.0: resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz} - es-module-lexer@2.2.0: - resolution: {integrity: sha512-3lGxdTXCLfe1MYfTz1y2ksAAUM4NAOP6rPEjxGJVKO7TZ5+tvHCaQWGpC4Y3IXvW3ece0Cz1cIP4FWBxOnGCTQ==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.2.0.tgz} + es-module-lexer@2.3.0: + resolution: {integrity: sha512-KLdwQm2NvGLDkQDCGvmiQrhkd0JbMzXthwQAUgWjQuQdBLFa3eiBP5arXZyA+f8x+x7OXgud6bq2rxjGtHV2tw==, tarball: https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.3.0.tgz} - es-module-shims@2.8.1: - resolution: {integrity: sha512-Ztg5TxFCT/ffzmSf/ginHIvSbsneH60X9tpaMBD/jWXHQZT1JJNj8tOO3mRmUT3ar7Qn3YK4EbM1SjJpN5dPBA==, tarball: https://registry.npmjs.org/es-module-shims/-/es-module-shims-2.8.1.tgz} + es-module-shims@2.8.2: + resolution: {integrity: sha512-Re3rc7Fu8zrN2lD6ExQo+9SS1o2hai0DSLuC/m6R09A84DTL6SSKO+/s3JzKN648yxxdjJfuyFLSpsgr5kb0KA==, tarball: https://registry.npmjs.org/es-module-shims/-/es-module-shims-2.8.2.tgz} es-object-atoms@1.1.1: resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==, tarball: https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz} @@ -2685,8 +2685,8 @@ packages: keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==, tarball: https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz} - knip@6.23.0: - resolution: {integrity: sha512-2DvAOX2pZWiG4SLvRRxOAU0aWGEn1ZoVblI541xIoXFdHqq2THMZXy66/qcY5WGuW3TXhb9T1x1zd/Hd1u+yqg==, tarball: https://registry.npmjs.org/knip/-/knip-6.23.0.tgz} + knip@6.25.0: + resolution: {integrity: sha512-Q3n41VjOOB/aqsbxb8kallAcFKrUz3b2S5fD5pTODljVpP01t+rvAgy2x3j0Cq8yEpRRHNdar1vHuqFfGuIakQ==, tarball: https://registry.npmjs.org/knip/-/knip-6.25.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true @@ -2877,8 +2877,8 @@ packages: resolution: {integrity: sha512-yFImD+WLElJpLKy8llG1qe4DCmMsL18peRp8XP1JKfig/gISbJkglnpDtX2aTmAn10kZF7164HbN2H8QPsXxGg==, tarball: https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.137.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} - oxc-parser@0.138.0: - resolution: {integrity: sha512-c25lvfpZ2+WY1yk6NkP0X0RTQg0ZxgSVaZHDa7lt6fEe1jwZjPWkRWvTyZ1xyaM7roVJMdtRCfbhUj/d4ims3Q==, tarball: https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.138.0.tgz} + oxc-parser@0.139.0: + resolution: {integrity: sha512-cf1TKZN+zc0lwqigeyXKzKVk5+vNRe99Or2+wVJsXLdlhJgC+gsIniYDfj/ZEBzCJ8Xm21ZG6YtMbR262CcS2w==, tarball: https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.139.0.tgz} engines: {node: ^20.19.0 || >=22.12.0} oxc-resolver@11.21.3: @@ -2927,6 +2927,10 @@ packages: resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==, tarball: https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz} engines: {node: '>=12'} + picomatch@4.0.5: + resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==, tarball: https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz} + engines: {node: '>=12'} + piscina@5.2.0: resolution: {integrity: sha512-DszUCKeVN/5G5QKo6jAVHL8fmKnkJvQ0ACiVgY7YGCq3TUB2oznAOayvZPIAdEThvhczkXR+qm3IHsNXpFCYfA==, tarball: https://registry.npmjs.org/piscina/-/piscina-5.2.0.tgz} engines: {node: '>=20.x'} @@ -3192,8 +3196,8 @@ packages: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==, tarball: https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz} engines: {node: '>= 0.8.0'} - typescript-eslint@8.62.1: - resolution: {integrity: sha512-vymnnM5g0AKQDSAyfP12nMIBvgwgA42syg74kkuZ4x1VuTzwQKwc5h9rGxeShCjny5o+zWAb6OEoz7XLgrIkIw==, tarball: https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.62.1.tgz} + typescript-eslint@8.63.0: + resolution: {integrity: sha512-xgwXyzG4sK9ALkBxbyGkTMMOS+imnW65iPhxCQMK83KhxyoDNW7l+IDqEf9vMdoUidHpOoS967RCq4eMiTexwQ==, tarball: https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.63.0.tgz} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -3303,20 +3307,20 @@ packages: yaml: optional: true - vitest@4.1.9: - resolution: {integrity: sha512-nE3/LEyc0z87uHYLZebqCUOaJr2hdtuPp7BQ4BosVFnfltxgAvMG08NyrSGlPpOUWvR27c5flSmYFTNr78L9GQ==, tarball: https://registry.npmjs.org/vitest/-/vitest-4.1.9.tgz} + vitest@4.1.10: + resolution: {integrity: sha512-R9jUTe5S4Qb0HCd4TNqpC7oGcrMssMRGXLW80ubjWsW9VH5GF8y1Y0SFLY9AbqSk6nt0PnOx4H4WNJYZ13GUPw==, tarball: https://registry.npmjs.org/vitest/-/vitest-4.1.10.tgz} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.9 - '@vitest/browser-preview': 4.1.9 - '@vitest/browser-webdriverio': 4.1.9 - '@vitest/coverage-istanbul': 4.1.9 - '@vitest/coverage-v8': 4.1.9 - '@vitest/ui': 4.1.9 + '@vitest/browser-playwright': 4.1.10 + '@vitest/browser-preview': 4.1.10 + '@vitest/browser-webdriverio': 4.1.10 + '@vitest/coverage-istanbul': 4.1.10 + '@vitest/coverage-v8': 4.1.10 + '@vitest/ui': 4.1.10 happy-dom: '*' jsdom: '*' vite: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -3438,14 +3442,14 @@ snapshots: '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 - '@angular-devkit/architect@0.2200.5(chokidar@5.0.0)': + '@angular-devkit/architect@0.2200.6(chokidar@5.0.0)': dependencies: - '@angular-devkit/core': 22.0.5(chokidar@5.0.0) + '@angular-devkit/core': 22.0.6(chokidar@5.0.0) rxjs: 7.8.2 transitivePeerDependencies: - chokidar - '@angular-devkit/core@22.0.4(chokidar@5.0.0)': + '@angular-devkit/core@22.0.5(chokidar@5.0.0)': dependencies: ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) @@ -3456,7 +3460,7 @@ snapshots: optionalDependencies: chokidar: 5.0.0 - '@angular-devkit/core@22.0.5(chokidar@5.0.0)': + '@angular-devkit/core@22.0.6(chokidar@5.0.0)': dependencies: ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) @@ -3467,9 +3471,9 @@ snapshots: optionalDependencies: chokidar: 5.0.0 - '@angular-devkit/schematics@22.0.4(chokidar@5.0.0)': + '@angular-devkit/schematics@22.0.5(chokidar@5.0.0)': dependencies: - '@angular-devkit/core': 22.0.4(chokidar@5.0.0) + '@angular-devkit/core': 22.0.5(chokidar@5.0.0) jsonc-parser: 3.3.1 magic-string: 0.30.21 ora: 9.4.0 @@ -3477,9 +3481,9 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/schematics@22.0.5(chokidar@5.0.0)': + '@angular-devkit/schematics@22.0.6(chokidar@5.0.0)': dependencies: - '@angular-devkit/core': 22.0.5(chokidar@5.0.0) + '@angular-devkit/core': 22.0.6(chokidar@5.0.0) jsonc-parser: 3.3.1 magic-string: 0.30.21 ora: 9.4.0 @@ -3487,19 +3491,19 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular/build@22.0.5(@angular/compiler-cli@22.0.5(@angular/compiler@22.0.5)(typescript@6.0.3))(@angular/compiler@22.0.5)(@types/node@24.10.15)(chokidar@5.0.0)(jiti@2.7.0)(postcss@8.5.16)(tslib@2.8.1)(typescript@6.0.3)(vitest@4.1.9)(yaml@2.9.0)': + '@angular/build@22.0.6(@angular/compiler-cli@22.0.6(@angular/compiler@22.0.6)(typescript@6.0.3))(@angular/compiler@22.0.6)(@types/node@24.10.15)(chokidar@5.0.0)(jiti@2.7.0)(postcss@8.5.16)(tslib@2.8.1)(typescript@6.0.3)(vitest@4.1.10)(yaml@2.9.0)': dependencies: '@ampproject/remapping': 2.3.0 - '@angular-devkit/architect': 0.2200.5(chokidar@5.0.0) - '@angular/compiler': 22.0.5 - '@angular/compiler-cli': 22.0.5(@angular/compiler@22.0.5)(typescript@6.0.3) + '@angular-devkit/architect': 0.2200.6(chokidar@5.0.0) + '@angular/compiler': 22.0.6 + '@angular/compiler-cli': 22.0.6(@angular/compiler@22.0.6)(typescript@6.0.3) '@babel/core': 7.29.0 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 '@inquirer/confirm': 6.0.12(@types/node@24.10.15) '@vitejs/plugin-basic-ssl': 2.3.0(vite@7.3.5(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) beasties: 0.4.2 - browserslist: 4.28.4 + browserslist: 4.28.5 esbuild: 0.28.1 https-proxy-agent: 9.0.0 jsonc-parser: 3.3.1 @@ -3521,7 +3525,7 @@ snapshots: optionalDependencies: lmdb: 3.5.4 postcss: 8.5.16 - vitest: 4.1.9(@types/node@24.10.15)(@vitest/coverage-v8@4.1.9)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) + vitest: 4.1.10(@types/node@24.10.15)(@vitest/coverage-v8@4.1.10)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) transitivePeerDependencies: - '@types/node' - chokidar @@ -3535,9 +3539,9 @@ snapshots: - tsx - yaml - '@angular/compiler-cli@22.0.5(@angular/compiler@22.0.5)(typescript@6.0.3)': + '@angular/compiler-cli@22.0.6(@angular/compiler@22.0.6)(typescript@6.0.3)': dependencies: - '@angular/compiler': 22.0.5 + '@angular/compiler': 22.0.6 '@babel/core': 7.29.7 '@jridgewell/sourcemap-codec': 1.5.5 chokidar: 5.0.0 @@ -3551,7 +3555,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@angular/compiler@22.0.5': + '@angular/compiler@22.0.6': dependencies: tslib: 2.8.1 @@ -3619,7 +3623,7 @@ snapshots: dependencies: '@babel/compat-data': 7.29.7 '@babel/helper-validator-option': 7.29.7 - browserslist: 4.28.4 + browserslist: 4.28.5 lru-cache: 5.1.1 semver: 6.3.1 @@ -3714,7 +3718,7 @@ snapshots: '@parcel/source-map': 2.1.1 cjs-module-lexer: 1.4.3 es-module-lexer: 1.7.0 - oxc-parser: 0.138.0 + oxc-parser: 0.139.0 '@chialab/node-resolve@0.19.1': {} @@ -3728,7 +3732,6 @@ snapshots: dependencies: '@emnapi/wasi-threads': 1.2.2 tslib: 2.8.1 - optional: true '@emnapi/core@1.4.5': dependencies: @@ -3743,7 +3746,6 @@ snapshots: '@emnapi/runtime@1.11.1': dependencies: tslib: 2.8.1 - optional: true '@emnapi/runtime@1.4.5': dependencies: @@ -3756,7 +3758,6 @@ snapshots: '@emnapi/wasi-threads@1.2.2': dependencies: tslib: 2.8.1 - optional: true '@esbuild/aix-ppc64@0.27.7': optional: true @@ -4195,8 +4196,8 @@ snapshots: '@napi-rs/wasm-runtime@0.2.4': dependencies: - '@emnapi/core': 1.4.5 - '@emnapi/runtime': 1.4.5 + '@emnapi/core': 1.11.1 + '@emnapi/runtime': 1.11.1 '@tybys/wasm-util': 0.9.0 '@napi-rs/wasm-runtime@1.1.6(@emnapi/core@1.11.0)(@emnapi/runtime@1.11.0)': @@ -4269,97 +4270,97 @@ snapshots: '@oxc-parser/binding-android-arm-eabi@0.137.0': optional: true - '@oxc-parser/binding-android-arm-eabi@0.138.0': + '@oxc-parser/binding-android-arm-eabi@0.139.0': optional: true '@oxc-parser/binding-android-arm64@0.137.0': optional: true - '@oxc-parser/binding-android-arm64@0.138.0': + '@oxc-parser/binding-android-arm64@0.139.0': optional: true '@oxc-parser/binding-darwin-arm64@0.137.0': optional: true - '@oxc-parser/binding-darwin-arm64@0.138.0': + '@oxc-parser/binding-darwin-arm64@0.139.0': optional: true '@oxc-parser/binding-darwin-x64@0.137.0': optional: true - '@oxc-parser/binding-darwin-x64@0.138.0': + '@oxc-parser/binding-darwin-x64@0.139.0': optional: true '@oxc-parser/binding-freebsd-x64@0.137.0': optional: true - '@oxc-parser/binding-freebsd-x64@0.138.0': + '@oxc-parser/binding-freebsd-x64@0.139.0': optional: true '@oxc-parser/binding-linux-arm-gnueabihf@0.137.0': optional: true - '@oxc-parser/binding-linux-arm-gnueabihf@0.138.0': + '@oxc-parser/binding-linux-arm-gnueabihf@0.139.0': optional: true '@oxc-parser/binding-linux-arm-musleabihf@0.137.0': optional: true - '@oxc-parser/binding-linux-arm-musleabihf@0.138.0': + '@oxc-parser/binding-linux-arm-musleabihf@0.139.0': optional: true '@oxc-parser/binding-linux-arm64-gnu@0.137.0': optional: true - '@oxc-parser/binding-linux-arm64-gnu@0.138.0': + '@oxc-parser/binding-linux-arm64-gnu@0.139.0': optional: true '@oxc-parser/binding-linux-arm64-musl@0.137.0': optional: true - '@oxc-parser/binding-linux-arm64-musl@0.138.0': + '@oxc-parser/binding-linux-arm64-musl@0.139.0': optional: true '@oxc-parser/binding-linux-ppc64-gnu@0.137.0': optional: true - '@oxc-parser/binding-linux-ppc64-gnu@0.138.0': + '@oxc-parser/binding-linux-ppc64-gnu@0.139.0': optional: true '@oxc-parser/binding-linux-riscv64-gnu@0.137.0': optional: true - '@oxc-parser/binding-linux-riscv64-gnu@0.138.0': + '@oxc-parser/binding-linux-riscv64-gnu@0.139.0': optional: true '@oxc-parser/binding-linux-riscv64-musl@0.137.0': optional: true - '@oxc-parser/binding-linux-riscv64-musl@0.138.0': + '@oxc-parser/binding-linux-riscv64-musl@0.139.0': optional: true '@oxc-parser/binding-linux-s390x-gnu@0.137.0': optional: true - '@oxc-parser/binding-linux-s390x-gnu@0.138.0': + '@oxc-parser/binding-linux-s390x-gnu@0.139.0': optional: true '@oxc-parser/binding-linux-x64-gnu@0.137.0': optional: true - '@oxc-parser/binding-linux-x64-gnu@0.138.0': + '@oxc-parser/binding-linux-x64-gnu@0.139.0': optional: true '@oxc-parser/binding-linux-x64-musl@0.137.0': optional: true - '@oxc-parser/binding-linux-x64-musl@0.138.0': + '@oxc-parser/binding-linux-x64-musl@0.139.0': optional: true '@oxc-parser/binding-openharmony-arm64@0.137.0': optional: true - '@oxc-parser/binding-openharmony-arm64@0.138.0': + '@oxc-parser/binding-openharmony-arm64@0.139.0': optional: true '@oxc-parser/binding-wasm32-wasi@0.137.0': @@ -4369,7 +4370,7 @@ snapshots: '@napi-rs/wasm-runtime': 1.1.6(@emnapi/core@1.11.1)(@emnapi/runtime@1.11.1) optional: true - '@oxc-parser/binding-wasm32-wasi@0.138.0': + '@oxc-parser/binding-wasm32-wasi@0.139.0': dependencies: '@emnapi/core': 1.11.1 '@emnapi/runtime': 1.11.1 @@ -4379,24 +4380,24 @@ snapshots: '@oxc-parser/binding-win32-arm64-msvc@0.137.0': optional: true - '@oxc-parser/binding-win32-arm64-msvc@0.138.0': + '@oxc-parser/binding-win32-arm64-msvc@0.139.0': optional: true '@oxc-parser/binding-win32-ia32-msvc@0.137.0': optional: true - '@oxc-parser/binding-win32-ia32-msvc@0.138.0': + '@oxc-parser/binding-win32-ia32-msvc@0.139.0': optional: true '@oxc-parser/binding-win32-x64-msvc@0.137.0': optional: true - '@oxc-parser/binding-win32-x64-msvc@0.138.0': + '@oxc-parser/binding-win32-x64-msvc@0.139.0': optional: true '@oxc-project/types@0.137.0': {} - '@oxc-project/types@0.138.0': {} + '@oxc-project/types@0.139.0': {} '@oxc-resolver/binding-android-arm-eabi@11.21.3': optional: true @@ -4674,20 +4675,20 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.62.2': optional: true - '@schematics/angular@22.0.4(chokidar@5.0.0)': + '@schematics/angular@22.0.5(chokidar@5.0.0)': dependencies: - '@angular-devkit/core': 22.0.4(chokidar@5.0.0) - '@angular-devkit/schematics': 22.0.4(chokidar@5.0.0) + '@angular-devkit/core': 22.0.5(chokidar@5.0.0) + '@angular-devkit/schematics': 22.0.5(chokidar@5.0.0) jsonc-parser: 3.3.1 typescript: 6.0.3 transitivePeerDependencies: - chokidar - '@softarc/native-federation-orchestrator@4.4.1': + '@softarc/native-federation-orchestrator@4.5.0': dependencies: semver: 7.8.5 - '@softarc/native-federation@4.2.1(typescript@6.0.3)': + '@softarc/native-federation@4.3.0(typescript@6.0.3)': dependencies: '@softarc/sheriff-core': 0.19.6(typescript@6.0.3) chalk: 5.6.2 @@ -4729,14 +4730,14 @@ snapshots: dependencies: undici-types: 7.16.0 - '@typescript-eslint/eslint-plugin@8.62.1(@typescript-eslint/parser@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3))(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/eslint-plugin@8.63.0(@typescript-eslint/parser@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3))(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/scope-manager': 8.62.1 - '@typescript-eslint/type-utils': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/utils': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.62.1 + '@typescript-eslint/parser': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/type-utils': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/utils': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.63.0 eslint: 9.39.4(jiti@2.7.0) ignore: 7.0.5 natural-compare: 1.4.0 @@ -4745,41 +4746,41 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/parser@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': dependencies: - '@typescript-eslint/scope-manager': 8.62.1 - '@typescript-eslint/types': 8.62.1 - '@typescript-eslint/typescript-estree': 8.62.1(typescript@6.0.3) - '@typescript-eslint/visitor-keys': 8.62.1 + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@6.0.3) + '@typescript-eslint/visitor-keys': 8.63.0 debug: 4.4.3 eslint: 9.39.4(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.62.1(typescript@6.0.3)': + '@typescript-eslint/project-service@8.63.0(typescript@6.0.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.62.1(typescript@6.0.3) - '@typescript-eslint/types': 8.62.1 + '@typescript-eslint/tsconfig-utils': 8.63.0(typescript@6.0.3) + '@typescript-eslint/types': 8.63.0 debug: 4.4.3 typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.62.1': + '@typescript-eslint/scope-manager@8.63.0': dependencies: - '@typescript-eslint/types': 8.62.1 - '@typescript-eslint/visitor-keys': 8.62.1 + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/visitor-keys': 8.63.0 - '@typescript-eslint/tsconfig-utils@8.62.1(typescript@6.0.3)': + '@typescript-eslint/tsconfig-utils@8.63.0(typescript@6.0.3)': dependencies: typescript: 6.0.3 - '@typescript-eslint/type-utils@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/type-utils@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': dependencies: - '@typescript-eslint/types': 8.62.1 - '@typescript-eslint/typescript-estree': 8.62.1(typescript@6.0.3) - '@typescript-eslint/utils': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@6.0.3) + '@typescript-eslint/utils': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) debug: 4.4.3 eslint: 9.39.4(jiti@2.7.0) ts-api-utils: 2.5.0(typescript@6.0.3) @@ -4787,14 +4788,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.62.1': {} + '@typescript-eslint/types@8.63.0': {} - '@typescript-eslint/typescript-estree@8.62.1(typescript@6.0.3)': + '@typescript-eslint/typescript-estree@8.63.0(typescript@6.0.3)': dependencies: - '@typescript-eslint/project-service': 8.62.1(typescript@6.0.3) - '@typescript-eslint/tsconfig-utils': 8.62.1(typescript@6.0.3) - '@typescript-eslint/types': 8.62.1 - '@typescript-eslint/visitor-keys': 8.62.1 + '@typescript-eslint/project-service': 8.63.0(typescript@6.0.3) + '@typescript-eslint/tsconfig-utils': 8.63.0(typescript@6.0.3) + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/visitor-keys': 8.63.0 debug: 4.4.3 minimatch: 10.2.5 semver: 7.8.5 @@ -4804,30 +4805,30 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': + '@typescript-eslint/utils@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3)': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@9.39.4(jiti@2.7.0)) - '@typescript-eslint/scope-manager': 8.62.1 - '@typescript-eslint/types': 8.62.1 - '@typescript-eslint/typescript-estree': 8.62.1(typescript@6.0.3) + '@typescript-eslint/scope-manager': 8.63.0 + '@typescript-eslint/types': 8.63.0 + '@typescript-eslint/typescript-estree': 8.63.0(typescript@6.0.3) eslint: 9.39.4(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.62.1': + '@typescript-eslint/visitor-keys@8.63.0': dependencies: - '@typescript-eslint/types': 8.62.1 + '@typescript-eslint/types': 8.63.0 eslint-visitor-keys: 5.0.1 '@vitejs/plugin-basic-ssl@2.3.0(vite@7.3.5(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0))': dependencies: vite: 7.3.5(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0) - '@vitest/coverage-v8@4.1.9(vitest@4.1.9)': + '@vitest/coverage-v8@4.1.10(vitest@4.1.10)': dependencies: '@bcoe/v8-coverage': 1.0.2 - '@vitest/utils': 4.1.9 + '@vitest/utils': 4.1.10 ast-v8-to-istanbul: 1.0.4 istanbul-lib-coverage: 3.2.2 istanbul-lib-report: 3.0.1 @@ -4836,46 +4837,46 @@ snapshots: obug: 2.1.3 std-env: 4.1.0 tinyrainbow: 3.1.0 - vitest: 4.1.9(@types/node@24.10.15)(@vitest/coverage-v8@4.1.9)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) + vitest: 4.1.10(@types/node@24.10.15)(@vitest/coverage-v8@4.1.10)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) - '@vitest/expect@4.1.9': + '@vitest/expect@4.1.10': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.9 - '@vitest/utils': 4.1.9 + '@vitest/spy': 4.1.10 + '@vitest/utils': 4.1.10 chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.9(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0))': + '@vitest/mocker@4.1.10(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0))': dependencies: - '@vitest/spy': 4.1.9 + '@vitest/spy': 4.1.10 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: vite: 7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0) - '@vitest/pretty-format@4.1.9': + '@vitest/pretty-format@4.1.10': dependencies: tinyrainbow: 3.1.0 - '@vitest/runner@4.1.9': + '@vitest/runner@4.1.10': dependencies: - '@vitest/utils': 4.1.9 + '@vitest/utils': 4.1.10 pathe: 2.0.3 - '@vitest/snapshot@4.1.9': + '@vitest/snapshot@4.1.10': dependencies: - '@vitest/pretty-format': 4.1.9 - '@vitest/utils': 4.1.9 + '@vitest/pretty-format': 4.1.10 + '@vitest/utils': 4.1.10 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.1.9': {} + '@vitest/spy@4.1.10': {} - '@vitest/utils@4.1.9': + '@vitest/utils@4.1.10': dependencies: - '@vitest/pretty-format': 4.1.9 + '@vitest/pretty-format': 4.1.10 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 @@ -4955,7 +4956,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.10.40: {} + baseline-browser-mapping@2.10.42: {} beasties@0.4.2: dependencies: @@ -4984,7 +4985,7 @@ snapshots: brace-expansion@5.0.6: dependencies: - balanced-match: 4.0.3 + balanced-match: 4.0.4 brace-expansion@5.0.7: dependencies: @@ -4994,13 +4995,13 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist@4.28.4: + browserslist@4.28.5: dependencies: - baseline-browser-mapping: 2.10.40 - caniuse-lite: 1.0.30001799 - electron-to-chromium: 1.5.381 + baseline-browser-mapping: 2.10.42 + caniuse-lite: 1.0.30001803 + electron-to-chromium: 1.5.388 node-releases: 2.0.50 - update-browserslist-db: 1.2.3(browserslist@4.28.4) + update-browserslist-db: 1.2.3(browserslist@4.28.5) buffer-from@1.1.2: {} @@ -5016,7 +5017,7 @@ snapshots: callsites@3.1.0: {} - caniuse-lite@1.0.30001799: {} + caniuse-lite@1.0.30001803: {} chai@6.2.2: {} @@ -5153,7 +5154,7 @@ snapshots: ejs@5.0.1: {} - electron-to-chromium@1.5.381: {} + electron-to-chromium@1.5.388: {} emoji-regex@10.6.0: {} @@ -5181,9 +5182,9 @@ snapshots: es-module-lexer@1.7.0: {} - es-module-lexer@2.2.0: {} + es-module-lexer@2.3.0: {} - es-module-shims@2.8.1: {} + es-module-shims@2.8.2: {} es-object-atoms@1.1.1: dependencies: @@ -5376,6 +5377,10 @@ snapshots: optionalDependencies: picomatch: 4.0.4 + fdir@6.5.0(picomatch@4.0.5): + optionalDependencies: + picomatch: 4.0.5 + figures@3.2.0: dependencies: escape-string-regexp: 1.0.5 @@ -5585,15 +5590,15 @@ snapshots: dependencies: json-buffer: 3.0.1 - knip@6.23.0: + knip@6.25.0: dependencies: - fdir: 6.5.0(picomatch@4.0.4) + fdir: 6.5.0(picomatch@4.0.5) formatly: 0.3.0 get-tsconfig: 4.14.0 jiti: 2.7.0 oxc-parser: 0.137.0 oxc-resolver: 11.21.3 - picomatch: 4.0.4 + picomatch: 4.0.5 smol-toml: 1.7.0 strip-json-comments: 5.0.3 tinyglobby: 0.2.17 @@ -5964,30 +5969,30 @@ snapshots: '@oxc-parser/binding-win32-ia32-msvc': 0.137.0 '@oxc-parser/binding-win32-x64-msvc': 0.137.0 - oxc-parser@0.138.0: + oxc-parser@0.139.0: dependencies: - '@oxc-project/types': 0.138.0 + '@oxc-project/types': 0.139.0 optionalDependencies: - '@oxc-parser/binding-android-arm-eabi': 0.138.0 - '@oxc-parser/binding-android-arm64': 0.138.0 - '@oxc-parser/binding-darwin-arm64': 0.138.0 - '@oxc-parser/binding-darwin-x64': 0.138.0 - '@oxc-parser/binding-freebsd-x64': 0.138.0 - '@oxc-parser/binding-linux-arm-gnueabihf': 0.138.0 - '@oxc-parser/binding-linux-arm-musleabihf': 0.138.0 - '@oxc-parser/binding-linux-arm64-gnu': 0.138.0 - '@oxc-parser/binding-linux-arm64-musl': 0.138.0 - '@oxc-parser/binding-linux-ppc64-gnu': 0.138.0 - '@oxc-parser/binding-linux-riscv64-gnu': 0.138.0 - '@oxc-parser/binding-linux-riscv64-musl': 0.138.0 - '@oxc-parser/binding-linux-s390x-gnu': 0.138.0 - '@oxc-parser/binding-linux-x64-gnu': 0.138.0 - '@oxc-parser/binding-linux-x64-musl': 0.138.0 - '@oxc-parser/binding-openharmony-arm64': 0.138.0 - '@oxc-parser/binding-wasm32-wasi': 0.138.0 - '@oxc-parser/binding-win32-arm64-msvc': 0.138.0 - '@oxc-parser/binding-win32-ia32-msvc': 0.138.0 - '@oxc-parser/binding-win32-x64-msvc': 0.138.0 + '@oxc-parser/binding-android-arm-eabi': 0.139.0 + '@oxc-parser/binding-android-arm64': 0.139.0 + '@oxc-parser/binding-darwin-arm64': 0.139.0 + '@oxc-parser/binding-darwin-x64': 0.139.0 + '@oxc-parser/binding-freebsd-x64': 0.139.0 + '@oxc-parser/binding-linux-arm-gnueabihf': 0.139.0 + '@oxc-parser/binding-linux-arm-musleabihf': 0.139.0 + '@oxc-parser/binding-linux-arm64-gnu': 0.139.0 + '@oxc-parser/binding-linux-arm64-musl': 0.139.0 + '@oxc-parser/binding-linux-ppc64-gnu': 0.139.0 + '@oxc-parser/binding-linux-riscv64-gnu': 0.139.0 + '@oxc-parser/binding-linux-riscv64-musl': 0.139.0 + '@oxc-parser/binding-linux-s390x-gnu': 0.139.0 + '@oxc-parser/binding-linux-x64-gnu': 0.139.0 + '@oxc-parser/binding-linux-x64-musl': 0.139.0 + '@oxc-parser/binding-openharmony-arm64': 0.139.0 + '@oxc-parser/binding-wasm32-wasi': 0.139.0 + '@oxc-parser/binding-win32-arm64-msvc': 0.139.0 + '@oxc-parser/binding-win32-ia32-msvc': 0.139.0 + '@oxc-parser/binding-win32-x64-msvc': 0.139.0 oxc-resolver@11.21.3: optionalDependencies: @@ -6049,6 +6054,8 @@ snapshots: picomatch@4.0.4: {} + picomatch@4.0.5: {} + piscina@5.2.0: optionalDependencies: '@napi-rs/nice': 1.1.1 @@ -6296,8 +6303,8 @@ snapshots: tinyglobby@0.2.17: dependencies: - fdir: 6.5.0(picomatch@4.0.4) - picomatch: 4.0.4 + fdir: 6.5.0(picomatch@4.0.5) + picomatch: 4.0.5 tinyrainbow@3.1.0: {} @@ -6323,12 +6330,12 @@ snapshots: dependencies: prelude-ls: 1.2.1 - typescript-eslint@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3): + typescript-eslint@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3): dependencies: - '@typescript-eslint/eslint-plugin': 8.62.1(@typescript-eslint/parser@8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3))(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/parser': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) - '@typescript-eslint/typescript-estree': 8.62.1(typescript@6.0.3) - '@typescript-eslint/utils': 8.62.1(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/eslint-plugin': 8.63.0(@typescript-eslint/parser@8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3))(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/parser': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) + '@typescript-eslint/typescript-estree': 8.63.0(typescript@6.0.3) + '@typescript-eslint/utils': 8.63.0(eslint@9.39.4(jiti@2.7.0))(typescript@6.0.3) eslint: 9.39.4(jiti@2.7.0) typescript: 6.0.3 transitivePeerDependencies: @@ -6340,9 +6347,9 @@ snapshots: undici-types@7.16.0: {} - update-browserslist-db@1.2.3(browserslist@4.28.4): + update-browserslist-db@1.2.3(browserslist@4.28.5): dependencies: - browserslist: 4.28.4 + browserslist: 4.28.5 escalade: 3.2.0 picocolors: 1.1.1 @@ -6370,8 +6377,8 @@ snapshots: vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0): dependencies: esbuild: 0.28.1 - fdir: 6.5.0(picomatch@4.0.4) - picomatch: 4.0.4 + fdir: 6.5.0(picomatch@4.0.5) + picomatch: 4.0.5 postcss: 8.5.16 rollup: 4.62.2 tinyglobby: 0.2.17 @@ -6382,21 +6389,21 @@ snapshots: sass: 1.99.0 yaml: 2.9.0 - vitest@4.1.9(@types/node@24.10.15)(@vitest/coverage-v8@4.1.9)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)): + vitest@4.1.10(@types/node@24.10.15)(@vitest/coverage-v8@4.1.10)(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)): dependencies: - '@vitest/expect': 4.1.9 - '@vitest/mocker': 4.1.9(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) - '@vitest/pretty-format': 4.1.9 - '@vitest/runner': 4.1.9 - '@vitest/snapshot': 4.1.9 - '@vitest/spy': 4.1.9 - '@vitest/utils': 4.1.9 - es-module-lexer: 2.2.0 + '@vitest/expect': 4.1.10 + '@vitest/mocker': 4.1.10(vite@7.3.6(@types/node@24.10.15)(jiti@2.7.0)(sass@1.99.0)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.10 + '@vitest/runner': 4.1.10 + '@vitest/snapshot': 4.1.10 + '@vitest/spy': 4.1.10 + '@vitest/utils': 4.1.10 + es-module-lexer: 2.3.0 expect-type: 1.4.0 magic-string: 0.30.21 obug: 2.1.3 pathe: 2.0.3 - picomatch: 4.0.4 + picomatch: 4.0.5 std-env: 4.1.0 tinybench: 2.9.0 tinyexec: 1.2.4 @@ -6406,7 +6413,7 @@ snapshots: why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 24.10.15 - '@vitest/coverage-v8': 4.1.9(vitest@4.1.9) + '@vitest/coverage-v8': 4.1.10(vitest@4.1.10) transitivePeerDependencies: - msw diff --git a/src/builders/build/i18n.spec.ts b/src/builders/build/i18n.spec.ts index ba88970..16a8918 100644 --- a/src/builders/build/i18n.spec.ts +++ b/src/builders/build/i18n.spec.ts @@ -98,6 +98,19 @@ describe('translateFederationArtifacts', () => { expect(cmd).toContain('["a.xlf","b.xlf"]'); }); + it('collects dense shared entries when denseExternals is enabled', async () => { + const denseResult = { + shared: [{ entries: { esm: 'dep1.js', legacy: 'dep1.legacy.js' } }], + exposes: [{ outFileName: './cmp.js' }], + chunks: { c1: ['chunk1.js'] }, + } as unknown as FederationInfo; + + await translateFederationArtifacts(i18n, true, '/dist', denseResult); + + const cmd = vi.mocked(execSync).mock.calls[0]![0] as string; + expect(cmd).toContain('-s "{dep1.js,dep1.legacy.js,./cmp.js,chunk1.js}"'); + }); + it('uses sourceLocale.code when the source locale is an object', async () => { const objLocaleI18n: I18nConfig = { sourceLocale: { code: 'en-US' }, diff --git a/src/builders/build/i18n.ts b/src/builders/build/i18n.ts index 93e89ec..e61c14b 100644 --- a/src/builders/build/i18n.ts +++ b/src/builders/build/i18n.ts @@ -69,7 +69,9 @@ export async function translateFederationArtifacts( const translationOutPath = path.join(outputPath, 'browser', '{{LOCALE}}'); const federationFiles = [ - ...federationResult.shared.map(s => s.outFileName), + ...federationResult.shared.flatMap(s => + 'entries' in s ? Object.values(s.entries) : [s.outFileName] + ), ...federationResult.exposes.map(e => e.outFileName), ...Object.values(federationResult.chunks ?? {}).flat(), ]; diff --git a/src/config.ts b/src/config.ts index 10be667..e5a6ab5 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,6 +1,7 @@ export { share, shareAll, + fromPackageJson, withNativeFederation, autoShareScope, type PackageShareScopeOptions, diff --git a/src/config/share-utils.spec.ts b/src/config/share-utils.spec.ts index da3adfd..2fb6507 100644 --- a/src/config/share-utils.spec.ts +++ b/src/config/share-utils.spec.ts @@ -1,6 +1,7 @@ import { share, shareAll, + fromPackageJson, withNativeFederation, getDefaultPlatform, autoShareScope, @@ -11,11 +12,14 @@ import { NG_SKIP_LIST } from './angular-skip-list.js'; const mockCoreShare = vi.fn((cfg: unknown) => cfg); const mockCoreShareAll = vi.fn((cfg: unknown) => cfg); const mockCoreWithNativeFederation = vi.fn(); +const mockFromPackageJsonSkip = vi.fn(() => ({ get: () => 'resolved' })); +const mockCoreFromPackageJson = vi.fn(() => ({ skip: mockFromPackageJsonSkip })); vi.mock('@softarc/native-federation/config', () => ({ DEFAULT_SKIP_LIST: [], share: (...args: unknown[]) => mockCoreShare(...args), shareAll: (...args: unknown[]) => mockCoreShareAll(...args), + fromPackageJson: (...args: unknown[]) => mockCoreFromPackageJson(...args), withNativeFederation: (...args: unknown[]) => mockCoreWithNativeFederation(...args), })); @@ -63,6 +67,27 @@ describe('shareAll', () => { }); }); +describe('fromPackageJson', () => { + it('delegates to core with default projectPath and pre-seeds the Angular skip list', () => { + const baseCfg = { singleton: true } as never; + + fromPackageJson(baseCfg); + + expect(mockCoreFromPackageJson).toHaveBeenCalledWith(baseCfg, ''); + expect(mockFromPackageJsonSkip).toHaveBeenCalledWith(NG_SKIP_LIST); + }); + + it('passes through an explicit projectPath', () => { + fromPackageJson({} as never, '/project'); + + expect(mockCoreFromPackageJson).toHaveBeenCalledWith({}, '/project'); + }); + + it('returns the skip-seeded builder from core', () => { + expect(fromPackageJson({} as never)).toEqual({ get: expect.any(Function) }); + }); +}); + describe('share', () => { it('delegates with default projectPath and NG_SKIP_LIST', () => { const config = { rxjs: { singleton: true } } as never; diff --git a/src/config/share-utils.ts b/src/config/share-utils.ts index 405e5c9..2a194c2 100644 --- a/src/config/share-utils.ts +++ b/src/config/share-utils.ts @@ -7,6 +7,7 @@ import type { import { share as coreShare, shareAll as coreShareAll, + fromPackageJson as coreFromPackageJson, withNativeFederation as coreWithNativeFederation, } from "@softarc/native-federation/config"; import { NG_SKIP_LIST } from "./angular-skip-list.js"; @@ -35,6 +36,19 @@ export function share( return coreShare(configuredShareObjects, projectPath, skipList); } +/** + * Angular-flavored {@link coreFromPackageJson}: builds a shared-externals config + * from `package.json` and pre-seeds the Angular skip list, so the returned + * fluent builder (`.skip()`, `.override()`, `.patch()`, `.get()`) starts from + * {@link NG_SKIP_LIST} instead of core's `DEFAULT_SKIP_LIST`. + */ +export function fromPackageJson( + baseCfg: ShareAllExternalsOptions, + projectPath = "", +) { + return coreFromPackageJson(baseCfg, projectPath).skip(NG_SKIP_LIST); +} + export function withNativeFederation(cfg: FederationConfig) { if (!cfg.platform) cfg.platform = getDefaultPlatform(Object.keys(cfg.shared ?? {}));