diff --git a/packages/angular/mf/mf.ts b/packages/angular/mf/mf.ts index a1d65b1926f48..8184174b9e909 100644 --- a/packages/angular/mf/mf.ts +++ b/packages/angular/mf/mf.ts @@ -6,23 +6,27 @@ declare const __webpack_init_sharing__: (scope: 'default') => Promise; declare const __webpack_share_scopes__: { default: unknown }; let resolveRemoteUrl: ResolveRemoteUrlFunction; + export function setRemoteUrlResolver( _resolveRemoteUrl: ResolveRemoteUrlFunction ) { resolveRemoteUrl = _resolveRemoteUrl; } -let remoteUrlDefinitions: Record = {}; +let remoteUrlDefinitions: Record; + export function setRemoteDefinitions(definitions: Record) { remoteUrlDefinitions = definitions; } export function setRemoteDefinition(remoteName: string, remoteUrl: string) { + remoteUrlDefinitions ??= {}; remoteUrlDefinitions[remoteName] = remoteUrl; } let remoteModuleMap = new Map(); let remoteContainerMap = new Map(); + export async function loadRemoteModule(remoteName: string, moduleName: string) { const remoteModuleKey = `${remoteName}:${moduleName}`; if (remoteModuleMap.has(remoteModuleKey)) { @@ -46,6 +50,7 @@ function loadModule(url: string) { } let initialSharingScopeCreated = false; + async function loadRemoteContainer(remoteName: string) { if (!resolveRemoteUrl && !remoteUrlDefinitions) { throw new Error(