WU / DOCSMICROFRONTENDS UNIVERSAIS
PT

Contratos, tipos e tradutores

Gere clientes TypeScript e verifique mudanças de contrato com adaptações para versões anteriores.

Requer WU CLI 1.2.0 e WU Framework 4.0.0 para as APIs das aplicações. Confira wu --version e as dependências do projeto.

wu contracts types counter-v1.json --out client.d.ts
wu contracts types counter-v1.json counter-v2.json --out clients.d.ts
wu contracts check counter-v1.json counter-v2.json --json
wu contracts check counter-v1.json counter-v2.json --translators translators.mjs --json

Os arquivos JSON contêm o descritor aceito por defineService. A CLI carrega wu-framework/services do projeto, não de uma cópia global. Cada arquivo precisa ser JSON válido e ter no máximo 1 MiB. types escreve declarações TypeScript em stdout ou em um .d.ts separado com --out.

Com vários contratos, os nomes são ServiceClientV1, ServiceClientV2 etc. Se compartilham a major, inclui a versão completa, como ServiceClient_1_2_0. check recebe exatamente o contrato anterior e o novo; não aceita --out. types não aceita --json nem --translators.

Compatibilidade com tradutores

O módulo de --translators exporta um array como default ou translators. Cada entrada tem definition e methods, como em provideService. A verificação move mudanças cobertas para translated; as demais ficam em changes. Use serviços versionados para implementar e testar tradutores.

Saída Significado
0 Contrato compatível ou tipos gerados.
1 Mudanças incompatíveis sem cobertura.
2 Arquivo, descritor, dependência ou opção inválida.

Um resultado compatível verifica a estrutura do contrato, não a correção dos tradutores para todos os valores. Teste exemplos de entrada e saída, falhas de validação e permissões no runtime antes de trocar o provedor.

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.