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.