@softarc/native-federation-orchestrator 4.5.0 → 4.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/fesm2022/@softarc/native-federation-orchestrator.mjs +211 -171
- package/fesm2022/@softarc/native-federation-orchestrator.mjs.map +4 -4
- package/fesm2022/node.mjs +137 -108
- package/fesm2022/node.mjs.map +3 -3
- package/fesm2022/sdk.mjs +1 -63
- package/fesm2022/sdk.mjs.map +3 -3
- package/package.json +1 -1
- package/quickstart.mjs +15 -13
- package/types/lib/core/1.domain/remote-entry/remote-entry.contract.d.ts +1 -3
- package/types/lib/core/2.app/config/mode.contract.d.ts +1 -0
- package/types/lib/core/2.app/steps/pooling/pool.types.d.ts +1 -20
- package/types/lib/core/2.app/steps/pooling/pool.util.d.ts +1 -2
|
@@ -8,10 +8,8 @@ type RemoteEntry = Omit<FederationInfo, 'shared'> & {
|
|
|
8
8
|
host?: boolean;
|
|
9
9
|
override?: boolean;
|
|
10
10
|
};
|
|
11
|
-
declare function toDenseSharedInfoFormat(shared: Array<SharedInfo | DenseSharedInfo>): DenseSharedInfo[];
|
|
12
|
-
declare function densifyExternals(shared: Array<SharedInfo | DenseSharedInfo>): Array<SharedInfo | DenseSharedInfo>;
|
|
13
11
|
type SharedInfoActions = Record<string, {
|
|
14
12
|
action: SharedVersionAction;
|
|
15
13
|
override?: Record<string, string>;
|
|
16
14
|
}>;
|
|
17
|
-
export { RawRemoteEntry, RemoteEntry, FederationInfo, ExposesInfo, SharedInfo, DenseSharedInfo, SharedInfoActions,
|
|
15
|
+
export { RawRemoteEntry, RemoteEntry, FederationInfo, ExposesInfo, SharedInfo, DenseSharedInfo, SharedInfoActions, };
|
|
@@ -1,25 +1,6 @@
|
|
|
1
|
-
import type { ExternalName,
|
|
1
|
+
import type { ExternalName, SharedExternal } from '../../../1.domain';
|
|
2
2
|
export type PoolName = string;
|
|
3
3
|
export type PoolMember = {
|
|
4
4
|
name: ExternalName;
|
|
5
5
|
external: SharedExternal;
|
|
6
6
|
};
|
|
7
|
-
/**
|
|
8
|
-
* The remote chosen to serve a whole pool, plus the version tag it provides for each member.
|
|
9
|
-
* The anchor may be partial: members absent from `tagPerMember` are orphans (no coherent shared
|
|
10
|
-
* build exists) and resolve scoped-only.
|
|
11
|
-
*/
|
|
12
|
-
export type PoolAnchor = {
|
|
13
|
-
anchorRemote: RemoteName;
|
|
14
|
-
tagPerMember: Partial<Record<ExternalName, VersionName>>;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* How a remote is placed relative to the anchor, decided once for the whole pool:
|
|
18
|
-
* - `follow` — every member it uses is compatible with the anchor tag;
|
|
19
|
-
* - `scope-incompat` — strict-incompatible on ≥1 member; the whole family scopes with no dedup
|
|
20
|
-
* (deduping would inject a foreign build via a shared intermediary).
|
|
21
|
-
* Dominates `scope-coverage`;
|
|
22
|
-
* - `scope-coverage` — compatible where the anchor covers, but uses ≥1 member it does not provide;
|
|
23
|
-
* scoped for coverage, may still dedup same-version members.
|
|
24
|
-
*/
|
|
25
|
-
export type RemoteClassification = 'follow' | 'scope-incompat' | 'scope-coverage';
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { RemoteName
|
|
1
|
+
import type { RemoteName } from '../../../1.domain';
|
|
2
2
|
import type { PoolMember } from './pool.types';
|
|
3
|
-
export declare function versionForRemote(member: PoolMember, remote: RemoteName): SharedVersion | undefined;
|
|
4
3
|
export declare function remotesInPool(members: PoolMember[]): RemoteName[];
|