WU / DOCSMICROFRONTENDS UNIVERSAIS
PT

Referência de carregamento, cache e diagnóstico

Carregamento dinâmico, prioridades, substituições, cache, estilos e observação do runtime.

Escolher o nível de carregamento

Use wu.mount para o ciclo de vida completo. wu.prefetch antecipa recursos de aplicações registradas e wu.use carrega componentes publicados por exportações. WuLoader é um carregador independente: não substitui o catálogo, o sandbox nem as concessões do core.

As substituições e as ferramentas de inspeção pertencem ao host. Uma métrica mede um trecho observado; não garante que o navegador terminou de desenhar. Consulte carregamento de aplicações e diagnóstico para o fluxo completo.

wu.use

Carrega uma exportação de componente declarada por outra aplicação.

wu.use("app.component"): Promise<unknown>

  • Parâmetros: Nome exato app.component; o manifesto do provedor deve declarar wu.exports.
  • Retorno: default export quando existe, ou namespace do módulo.
  • Erros: App/export ausentes, traversal, URL inválida ou import malsucedido causam rejeição.
  • Permissões: Host; um componente carregado executa código no realm do consumidor.
  • Limpeza: A instância do renderizador que usa o componente administra sua limpeza.
const ProductCard = await wu.use('catalog.ProductCard');

Método presente no runtime, mas ausente da declaração WuCore. Não converte componentes entre frameworks.

Referência: src/core/wu-core.js.

wu.prefetchAll

Solicita o pré-carregamento de todas as aplicações registradas.

wu.prefetchAll(options?): Promise<void> | (() => void)

  • Parâmetros: Mesmas opções de disparador de prefetch.
  • Retorno: Promise imediata ou limpeza dos disparadores adiados.
  • Erros: O pré-carregamento é uma solicitação ao navegador; não confirma que um renderizador possa montar.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Mantenha a limpeza se escolher um disparador adiado.
await wu.prefetchAll({ on: 'immediate' });

Referência: src/core/wu-prefetch.js.

new WuLoader

Cria um loader de código e componentes com cache e deduplicação de operações em andamento.

new WuLoader({ maxCacheSize?, cacheTTL? }?): WuLoader

  • Parâmetros: maxCacheSize limita o número de entradas (50 por padrão); cacheTTL expressa milissegundos (1800000 por padrão).
  • Retorno: Instância com loadApp, loadComponent, preload, isAvailable e clearCache.
  • Erros: A construção não registra apps nem executa o ciclo de vida.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: loader.clearCache() libera suas entradas em cache.
import { WuLoader } from 'wu-framework';
const loader = new WuLoader({ maxCacheSize: 20, cacheTTL: 60000 });

Referência: src/core/wu-loader.js.

WuLoader.loadApp

Baixa o texto de código de uma entrada para o pipeline de carregamento.

loader.loadApp(appUrl, manifest?): Promise<string>

  • Parâmetros: URL base e manifesto com entry opcional.
  • Retorno: String com código; não executa mount nem registra a app.
  • Erros: Fetch malsucedido, resposta inválida ou falha na resolução de entry causam rejeição.
  • Permissões: Host; sujeito ao acesso de rede do ambiente.
  • Limpeza: clearCache(base) descarta futuras leituras em cache.
const code = await loader.loadApp('/apps/catalog', { entry: 'entry.js' });

Referência: src/core/wu-loader.js.

WuLoader.loadComponent

Importa um componente restrito à base de uma app.

loader.loadComponent(appUrl, componentPath): Promise<unknown>

  • Parâmetros: Base e caminho relativo do componente; não aceita URLs absolutas nem traversal.
  • Retorno: default export ou namespace importado.
  • Erros: Caminho fora da base ou import malsucedido causa rejeição.
  • Permissões: O módulo executa código no mesmo contexto; não é RPC com escopo.
  • Limpeza: O import nativo mantém seu cache de módulos.
const card = await loader.loadComponent('/apps/catalog', 'components/card.js');

Referência: src/core/wu-loader.js.

WuLoader.preload

Antecipa o download de código para uma lista de aplicações.

loader.preload(appConfigs: WuAppConfig[]): Promise<void>

  • Parâmetros: Array de configurações com name e url.
  • Retorno: Promise de conclusão do percurso de pré-carregamento.
  • Erros: O pré-carregamento captura falhas por app; inspecione a disponibilidade antes da montagem.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não monta renderizadores; clearCache libera o texto em cache.
await loader.preload([{ name: 'catalog', url: '/apps/catalog' }]);

Referência: src/core/wu-loader.js.

WuLoader.isAvailable

Consulta se uma URL responde corretamente a HEAD.

loader.isAvailable(url): Promise<boolean>

  • Parâmetros: URL a verificar.
  • Retorno: Booleano; erros de rede são convertidos em false.
  • Erros: Um servidor que rejeita HEAD pode retornar false mesmo que GET funcione.
  • Permissões: Acesso de rede do host.
  • Limpeza: Não cria inscrições nem processos persistentes.
const available = await loader.isAvailable('/apps/catalog/entry.js');

Referência: src/core/wu-loader.js.

WuLoader.clearCache

Descarta o texto e os registros em cache do loader.

loader.clearCache(pattern?): void

  • Parâmetros: Padrão opcional; sem padrão, esvazia o cache do loader.
  • Retorno: void.
  • Erros: Não invalida o cache ESM do navegador.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
loader.clearCache('catalog');

Referência: src/core/wu-loader.js.

WuLoader.getStats

Consulta o cache e os imports em andamento do loader.

loader.getStats(): object

  • Parâmetros: Sem argumentos.
  • Retorno: Objeto de métricas.
  • Erros: Não representa o estado de montagem das apps.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(loader.getStats());

Referência: src/core/wu-loader.js.

wu.override

Configura uma substituição de URL para desenvolvimento.

wu.override(name, url, options?): void

  • Parâmetros: name e URL autorizada; options.maxAge/path configuram a persistência da substituição.
  • Retorno: void
  • Erros: O sistema valida domínios e configuração; a substituição não remonta automaticamente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remova as substituições de desenvolvimento antes de compartilhar uma sessão.
wu.override('catalog', 'http://localhost:4101');

Referência: src/core/wu-overrides.js.

wu.removeOverride

Remove uma substituição de URL.

wu.removeOverride(name): void

  • Parâmetros: Nome exato da app.
  • Retorno: void
  • Erros: O sistema valida domínios e configuração; a substituição não remonta automaticamente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remova as substituições de desenvolvimento antes de compartilhar uma sessão.
wu.removeOverride('catalog');

Referência: src/core/wu-overrides.js.

wu.getOverrides

Consulta as substituições de URL ativas.

wu.getOverrides(): Record<string,string>

  • Parâmetros: Sem argumentos.
  • Retorno: Record<string,string>
  • Erros: O sistema valida domínios e configuração; a substituição não remonta automaticamente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remova as substituições de desenvolvimento antes de compartilhar uma sessão.
console.log(wu.getOverrides());

Referência: src/core/wu-overrides.js.

wu.clearOverrides

Remove todas as substituições ativas.

wu.clearOverrides(): void

  • Parâmetros: Sem argumentos.
  • Retorno: void
  • Erros: O sistema valida domínios e configuração; a substituição não remonta automaticamente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remova as substituições de desenvolvimento antes de compartilhar uma sessão.
wu.clearOverrides();

Referência: src/core/wu-overrides.js.

normalizeStyleMode

Normaliza os aliases de configuração de estilos.

normalizeStyleMode(mode): string | undefined

  • Parâmetros: String de modo ou undefined.
  • Retorno: none→isolated; own-only→fully-isolated; outros valores passam sem validação.
  • Erros: Não valida por si só se o modo é aceito pelo manifesto.
  • Permissões: Função pura; não concede permissões.
  • Limpeza: Não cria inscrições nem processos persistentes.
import { normalizeStyleMode } from 'wu-framework';
console.log(normalizeStyleMode('own-only'));

Referência: src/core/wu-sandbox.js.

resolveDomOwnership

Resolve a propriedade explícita e os aliases nativeShadow/framework.

resolveDomOwnership(options?): "wu" | "app" | "light"

  • Parâmetros: domOwnership tem precedência; depois nativeShadow; Lit seleciona app por padrão.
  • Retorno: Propriedade efetiva.
  • Erros: Não cria Shadow DOM nem valida se um renderizador implementa seu limite.
  • Permissões: Função de configuração; não é controle de segurança.
  • Limpeza: Não cria inscrições nem processos persistentes.
import { resolveDomOwnership } from 'wu-framework';
console.log(resolveDomOwnership({ framework: 'lit' }));

Referência: src/core/wu-sandbox.js.

wu.tagStyleAsApp

Atribui uma folha style/link a uma aplicação para a ponte CSS.

wu.tagStyleAsApp(element, appName): void

  • Parâmetros: Elemento style/link e nome da app.
  • Retorno: void.
  • Erros: A atribuição não substitui styleMode do manifesto.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remova a folha quando seu proprietário terminar.
const style = document.createElement('style');
style.textContent = ':host { color: var(--accent); }';
wu.tagStyleAsApp(style, 'catalog');
document.head.append(style);

Referência: src/core/wu-core.js.

new WuCache

Cria um cache LRU com TTL e armazenamento opcional.

new WuCache(options?): WuCache

  • Parâmetros: maxSize em MB; maxItems; TTL em ms; persistent e storage memory/localStorage/sessionStorage.
  • Retorno: Instância de cache.
  • Erros: Uma entrada grande demais ou um limite de operações pode impedir o armazenamento.
  • Permissões: Host; não use armazenamento persistente como autorização.
  • Limpeza: cache.clear() libera as entradas e seu namespace persistente.
import { WuCache } from 'wu-framework';
const cache = new WuCache({ maxSize: 2, maxItems: 20, defaultTTL: 60000, storage: 'memory' });

Referência: src/core/wu-cache.js.

WuCache.get

Lê uma entrada não expirada e atualiza sua ordem LRU.

cache.get(key): unknown | null

  • Parâmetros: Chave da entrada.
  • Retorno: Valor salvo ou null por ausência, expiração ou limite de requisições.
  • Erros: null não distingue ausência, expiração e cooldown; consulte as métricas.
  • Permissões: Acesso ao cache proprietário; não aplica concessões de store.
  • Limpeza: Não cria inscrições nem processos persistentes.
const result = cache.get('catalog-result');

A leitura em memória retorna a referência salva; não é um snapshot separado como WuStore.

Referência: src/core/wu-cache.js.

WuCache.set

Salva um valor e aplica limites de espaço e expiração.

cache.set(key, value, ttl?): boolean

  • Parâmetros: Chave, valor e TTL em ms; ttl=0 usa defaultTTL pela seleção com ||.
  • Retorno: true se for armazenado; false por tamanho, erro ou limite de requisições.
  • Erros: Captura falhas e retorna false; a cota de storage pode limitar a persistência.
  • Permissões: Host; valide quais dados você salva de forma persistente.
  • Limpeza: delete(key) remove uma entrada; clear() remove todas.
const cached = cache.set('catalog-result', { count: 12 }, 30000);

Referência: src/core/wu-cache.js.

WuCache.delete

Remove uma entrada da memória e do armazenamento de apoio configurado.

cache.delete(key): void

  • Parâmetros: Chave exata.
  • Retorno: void
  • Erros: A persistência depende da disponibilidade e da cota do storage.
  • Permissões: Autoridade do proprietário do cache.
  • Limpeza: Não cria inscrições nem processos persistentes.
cache.delete('catalog-result');

Referência: src/core/wu-cache.js.

WuCache.clear

Esvazia o cache desta instância e seu armazenamento configurado.

cache.clear(): void

  • Parâmetros: Sem argumentos.
  • Retorno: void
  • Erros: A persistência depende da disponibilidade e da cota do storage.
  • Permissões: Autoridade do proprietário do cache.
  • Limpeza: Não cria inscrições nem processos persistentes.
cache.clear();

Referência: src/core/wu-cache.js.

WuCache.getStats

Consulta acertos, ausências, expulsões, tamanhos e limitação de requisições.

cache.getStats(): object

  • Parâmetros: Sem argumentos.
  • Retorno: object
  • Erros: A persistência depende da disponibilidade e da cota do storage.
  • Permissões: Autoridade do proprietário do cache.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(cache.getStats());

Referência: src/core/wu-cache.js.

WuCache.getRateLimitStatus

Consulta se as operações estão em cooldown e sua cota.

cache.getRateLimitStatus(): object

  • Parâmetros: Sem argumentos.
  • Retorno: object
  • Erros: A persistência depende da disponibilidade e da cota do storage.
  • Permissões: Autoridade do proprietário do cache.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(cache.getRateLimitStatus());

Referência: src/core/wu-cache.js.

wu.getStats

Resume o estado e as métricas dos subsistemas do core.

wu.getStats(): object

  • Parâmetros: Sem argumentos.
  • Retorno: Objeto de diagnóstico.
  • Erros: Não substitui um teste de montagem nem uma verificação HTTP.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(wu.getStats());

Referência: src/core/wu-core.js.

wu.getManifestDiagnostics

Lê erros de dependências declarativas entre apps.

wu.getManifestDiagnostics(): WuManifestImportDiagnostic[]

  • Parâmetros: Sem argumentos; depende da verificação prévia de imports.
  • Retorno: Lista de diagnósticos por consumidor/import/provedor.
  • Erros: Não verifica automaticamente todos os imports transitivos de um bundle.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.table(wu.getManifestDiagnostics());

Referência: src/core/wu-core.js.

wu.showInspector

Abre o inspetor visual carregado sob demanda.

wu.showInspector(): Promise<{ close(): void } | null>

  • Parâmetros: Sem argumentos.
  • Retorno: Handle close ou null quando não abre.
  • Erros: O carregamento do chunk ou o ambiente DOM podem impedir a abertura.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: close() ou wu.hideInspector() remove a sobreposição.
const inspector = await wu.showInspector();
// Al cerrar tu herramienta:
inspector?.close();

Referência: src/core/wu-core.js.

wu.hideInspector

Fecha a sobreposição de inspeção, se existir.

wu.hideInspector(): Promise<void>

  • Parâmetros: Sem argumentos.
  • Retorno: Promise de fechamento.
  • Erros: Não remove apps nem dados do store.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remove a interface de diagnóstico.
await wu.hideInspector();

Referência: src/core/wu-core.js.

wu.performance.startMeasure

Marca o início de uma duração associada à app ou global.

wu.performance.startMeasure(name, appName?): void

  • Parâmetros: Nome da medição; appName global por padrão.
  • Retorno: void.
  • Erros: Uma configuração disabled omite o registro.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Termine com endMeasure usando o mesmo par nome/app.
wu.performance.startMeasure('load-catalog', 'catalog');

Referência: src/core/wu-performance.js.

wu.performance.endMeasure

Encerra uma duração e a publica nas métricas/User Timing quando habilitado.

wu.performance.endMeasure(name, appName?): number

  • Parâmetros: Mesmo nome/app de startMeasure.
  • Retorno: Milissegundos; 0 se não houver marca inicial.
  • Erros: A ausência de marca retorna 0 e não inventa uma duração.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Remove a marca inicial desta medição.
const ms = wu.performance.endMeasure('load-catalog', 'catalog');

Referência: src/core/wu-performance.js.

wu.performance.generateReport

Agrupa estatísticas de desempenho da instância.

wu.performance.generateReport(): object

  • Parâmetros: Sem argumentos.
  • Retorno: object
  • Erros: A disponibilidade de User Timing depende do ambiente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(wu.performance.generateReport());

Referência: src/core/wu-performance.js.

wu.performance.getMetrics

Lê as métricas de uma app específica.

wu.performance.getMetrics(appName): object | null

  • Parâmetros: Nome exato; null se não houver medições.
  • Retorno: object | null
  • Erros: A disponibilidade de User Timing depende do ambiente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(wu.performance.getMetrics('catalog'));

Referência: src/core/wu-performance.js.

wu.performance.getAllMetrics

Lê as métricas de todas as apps registradas no medidor.

wu.performance.getAllMetrics(): object

  • Parâmetros: Sem argumentos.
  • Retorno: object
  • Erros: A disponibilidade de User Timing depende do ambiente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(wu.performance.getAllMetrics());

Referência: src/core/wu-performance.js.

wu.performance.clearMetrics

Limpa as medições de uma app ou de todas.

wu.performance.clearMetrics(appName?): void

  • Parâmetros: Nome opcional.
  • Retorno: void
  • Erros: A disponibilidade de User Timing depende do ambiente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
wu.performance.clearMetrics('catalog');

Referência: src/core/wu-performance.js.

wu.performance.getDevToolsEntries

Lê as entradas User Timing emitidas pelo WU.

wu.performance.getDevToolsEntries(options?): PerformanceEntry[]

  • Parâmetros: type: mark, measure ou all; appName opcional.
  • Retorno: PerformanceEntry[]
  • Erros: A disponibilidade de User Timing depende do ambiente.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.table(wu.performance.getDevToolsEntries({ type: 'measure', appName: 'catalog' }));

Referência: src/core/wu-performance.js.

wu.performance.observe

Escuta novas entradas User Timing do WU por PerformanceObserver.

wu.performance.observe(callback, { type? }?): () => void

  • Parâmetros: Callback de PerformanceEntry; type measure por padrão.
  • Retorno: Limpeza; se o observer não estiver disponível, retorna uma vazia.
  • Erros: A falta de PerformanceObserver não lança erro; falhas do callback são registradas.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: stop() desconecta o observer.
const stop = wu.performance.observe(entry => console.log(entry.duration), { type: 'measure' });

Referência: src/core/wu-performance.js.

wu.performance.configure

Configura medição, limite de histórico, User Timing e limiares.

wu.performance.configure(options): void

  • Parâmetros: enabled, maxMeasurements, devtoolsTimeline e thresholds por nome.
  • Retorno: void.
  • Erros: Um limiar excedido gera aviso; não cancela uma operação.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
wu.performance.configure({ enabled: true, maxMeasurements: 100, devtoolsTimeline: true });

Referência: src/core/wu-performance.js.

wu.errorBoundary.register

Adiciona um handler de classificação e recuperação de falhas.

wu.errorBoundary.register(handler): void

  • Parâmetros: name, canHandle(error) e handle(error,context).
  • Retorno: void.
  • Erros: Lança erro se faltar um desses membros; os handlers são percorridos em ordem.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não retorna unsubscribe; administre essas extensões durante o ciclo de vida do host.
wu.errorBoundary.register({ name: 'catalog-error', canHandle: error => error.name === 'CatalogError', async handle(error) { return { recovered: false, action: 'none', message: error.message }; } });

O fallback genérico padrão pode vir antes de handlers adicionados depois. Verifique a ordem antes de depender desse registro.

Referência: src/core/wu-error-boundary.js.

wu.errorBoundary.handle

Classifica uma falha e obtém uma decisão de recuperação.

wu.errorBoundary.handle(error, context?): Promise<object>

  • Parâmetros: Erro e contexto; o core interpreta algumas ações durante mount.
  • Retorno: Resultado com recovered e action, além de informações do handler.
  • Erros: O nome de uma ação não altera por si só URL, timeout ou permissões.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Uma recuperação deve liberar a tentativa que falhou antes de tentar novamente.
const recovery = await wu.errorBoundary.handle(new Error('Entry no disponible'), { appName: 'catalog', phase: 'mount' });

Referência: src/core/wu-error-boundary.js.

wu.errorBoundary.getErrorLog

Lê os erros recentes mantidos pelo boundary.

wu.errorBoundary.getErrorLog(limit?: number): object[]

  • Parâmetros: limit 10 por padrão.
  • Retorno: Array com as últimas entradas.
  • Erros: É memória de diagnóstico, não um registro durável.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.table(wu.errorBoundary.getErrorLog(5));

Referência: src/core/wu-error-boundary.js.

wu.errorBoundary.getStats

Resume quantidade, handlers e tipos de erros.

wu.errorBoundary.getStats(): object

  • Parâmetros: Sem argumentos.
  • Retorno: Objeto com totalErrors, handlers, errorsByType e recentErrors.
  • Erros: Não inclui falhas que nunca passaram por esse boundary.
  • Permissões: API do host; não é exposta pela fachada com escopo.
  • Limpeza: Não cria inscrições nem processos persistentes.
console.log(wu.errorBoundary.getStats());

Referência: src/core/wu-error-boundary.js.

WuLoadingStrategy

Cria estratégias de carregamento e inicia o processamento ocioso.

new WuLoadingStrategy(core)

  • Parâmetros: Instância do core.
  • Retorno: Coordenador com estratégias padrão.
  • Erros: Propaga erros de configuração inválida; revise o resultado das operações assíncronas.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: cleanup cancela callbacks ociosos e resolve a fila pendente com null.
import { WuLoadingStrategy } from 'wu-framework';
const strategies = new WuLoadingStrategy(wu);
strategies.cleanup();

Referência: src/core/wu-strategies.js.

strategies.register

Registra ou substitui uma estratégia de carregamento.

strategies.register(name, strategy): void

  • Parâmetros: strategy.load(appName,config) obrigatório; shouldPreload e priority opcionais.
  • Retorno: void.
  • Erros: Lança erro se strategy.load não for função.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
strategies.register('custom', {
  shouldPreload: false,
  priority: 'low',
  load: async (name, config) => { console.log(name, config); return null; },
});

Referência: src/core/wu-strategies.js.

strategies.load

Executa a estratégia selecionada por config.strategy.

strategies.load(appName, config): Promise<unknown>

  • Parâmetros: Nome e config; lazy por padrão.
  • Retorno: Resultado da função load registrada.
  • Erros: Uma estratégia desconhecida registra aviso e recorre a lazy; erros de load são propagados.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
await strategies.load('card', { strategy: 'custom' });

Referência: src/core/wu-strategies.js.

strategies.preload

Pré-carrega sequencialmente aplicações cujas estratégias solicitam isso.

strategies.preload(apps): Promise<void>

  • Parâmetros: Lista de configurações com name e strategy.
  • Retorno: Promise do percurso; captura falhas individuais.
  • Erros: Uma falha individual é registrada e permite continuar com a próxima app.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
await strategies.preload([{ name: 'card', strategy: 'custom' }]);

Referência: src/core/wu-strategies.js.

strategies.getStats

Consulta estratégias registradas e o tamanho da fila ociosa.

strategies.getStats(): object

  • Parâmetros: Sem argumentos.
  • Retorno: {totalStrategies,strategies,idleQueueSize,isIdle}.
  • Erros: Leitura local sem efeitos.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
console.log(strategies.getStats());

Referência: src/core/wu-strategies.js.

strategies.cleanup

Interrompe a fila ociosa e libera esperas pendentes.

strategies.cleanup(): void

  • Parâmetros: Sem argumentos.
  • Retorno: void.
  • Erros: A limpeza tenta concluir cada espera mesmo que uma resolução falhe.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: Cancela idle/timer e esvazia a fila; as pendências são resolvidas com null.
strategies.cleanup();

Referência: src/core/wu-strategies.js.

wu.sandbox.addStyles

Insere CSS em um sandbox existente.

wu.sandbox.addStyles(appName, css): void

  • Parâmetros: Nome e CSS string.
  • Retorno: void.
  • Erros: Se não existir sandbox, registra aviso e retorna.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
wu.sandbox.addStyles('card', ':host{display:block}');

A propriedade sandbox é administrada pelo core. Não chame cleanupAll enquanto houver aplicações montadas: use wu.unmount para coordenar o ciclo de vida.

Referência: src/core/wu-sandbox.js.

wu.sandbox.loadExternalStyles

Insere um link de stylesheet no sandbox.

wu.sandbox.loadExternalStyles(appName, href): void

  • Parâmetros: Nome e URL do CSS.
  • Retorno: void; não aguarda o load da folha.
  • Erros: Um sandbox ausente gera aviso. O erro de rede da folha não é retornado como promise.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
wu.sandbox.loadExternalStyles('card', '/styles/card.css');

A propriedade sandbox é administrada pelo core. Não chame cleanupAll enquanto houver aplicações montadas: use wu.unmount para coordenar o ciclo de vida.

Referência: src/core/wu-sandbox.js.

wu.sandbox.getStyleStats

Consulta estatísticas da ponte de estilos.

wu.sandbox.getStyleStats(): object | null

  • Parâmetros: Sem argumentos.
  • Retorno: Objeto de estatísticas ou null.
  • Erros: Leitura sem operações de rede.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
console.log(wu.sandbox.getStyleStats());

A propriedade sandbox é administrada pelo core. Não chame cleanupAll enquanto houver aplicações montadas: use wu.unmount para coordenar o ciclo de vida.

Referência: src/core/wu-sandbox.js.

wu.sandbox.reinjectStyles

Injeta os estilos novamente conforme o modo de isolamento da aplicação.

wu.sandbox.reinjectStyles(appName): Promise<void>

  • Parâmetros: Nome do sandbox registrado.
  • Retorno: Promise.
  • Erros: Não atua para um sandbox ausente ou no modo isolated; os demais modos aplicam sua seleção de estilos.
  • Permissões: API de administração do host; não está incluída na fachada com escopo de uma microapp.
  • Limpeza: O proprietário do runtime administra os recursos e suas funções de limpeza.
await wu.sandbox.reinjectStyles('card');

A propriedade sandbox é administrada pelo core. Não chame cleanupAll enquanto houver aplicações montadas: use wu.unmount para coordenar o ciclo de vida.

Referência: src/core/wu-sandbox.js.

No 4.0, um override sem allowedDomains só aceita hosts loopback ou o hostname da página. Configure uma allowlist explícita para outro host. Essa restrição se aplica a overrides programáticos e aos restaurados de cookies.

CONSTRUA O WU CONOSCO

Encontrou um bug? Tem uma ideia?

Sua experiência melhora o WU. Conte o que falhou ou ajude a manter seu desenvolvimento.