--- createdAt: 2025-09-22 updatedAt: 2025-09-22 title: Nova versão Intlayer v6 - Novidades description: Descubra as novidades do Intlayer v6. Grandes melhorias em desempenho, experiência do desenvolvedor e novos recursos para aprimorar seu fluxo de trabalho de internacionalização. keywords: - Intlayer - Localização - Desenvolvimento - Desempenho - Experiência do Desenvolvedor - Recursos - React - Next.js - JavaScript - TypeScript slugs: - doc - releases - v6 --- # Nova versão Intlayer v6 - Novidades Bem-vindo ao Intlayer v6! Esta versão foca em desempenho, experiência do desenvolvedor e confiabilidade. Abaixo estão os destaques, com notas de migração e exemplos prontos para copiar e colar. ## Destaques - Novo comando: `npx intlayer content test` para detectar traduções faltantes - Nova opção global `autoFill` para auto-gerar traduções ausentes - Comando Fill padrão pula traduções existentes: `npx intlayer fill` - Extensão VS Code: nova Barra de Atividades Intlayer (Busca & Dicionários), ações na barra de ferramentas/contexto, auto-revelação, comandos Fill/Test - Builds 10× mais rápidas graças à paralelização de promises - Cache remoto de dicionário para evitar refetch no início do app - Logging aprimorado: defina `log.mode: 'verbose'` para inspecionar o comportamento - Validação mais rigorosa para evitar falhas do app por problemas no dicionário - Atualizações ao vivo com CMS usando `build.importMode = 'live'` e `pnpm intlayer live` - Correções: integração Vue.js, adaptador Lynx, Editor Visual no Windows --- ## Novo: Testar traduções ausentes Audite rapidamente seu projeto para encontrar quais chaves/idiomas estão faltando. ```bash npx intlayer content test ``` Output: ```bash pnpm intlayer content test Traduções ausentes: - blog-data - Japonês (ja), Coreano (ko), Chinês (zh), Alemão (de), Italiano (it) - src/components/BlogPage/blogData.content.ts - demo-page - Francês (fr), Italiano (it) - src/components/DemoPage/demo.content.ts - locale-switcher - Italiano (it), Português (pt) - src/components/LocaleSwitcher/localeSwitcher.content.ts Locales: Inglês (en), Russo (ru), Japonês (ja), Francês (fr), Coreano (ko), Chinês (zh), Espanhol (es), Alemão (de), Árabe (ar), Italiano (it), Inglês Britânico (en-GB), Português (pt), Hindi (hi) Locales obrigatórios: Inglês (en) Traduções ausentes: Japonês (ja), Coreano (ko), Chinês (zh), Alemão (de), Italiano (it), Francês (fr), Português (pt) Traduções obrigatórias ausentes: - Total de traduções ausentes: 7 Total de traduções obrigatórias ausentes: 0 ``` Veja mais opções na documentação do CLI: [Referência do CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_cli.md) → "Testar traduções ausentes". Assim como o guia de [Testes](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/testing.md). --- ## Novo: autoFill global para completar traduções ausentes Agora você pode ativar o auto‑fill globalmente para que qualquer dicionário com traduções ausentes seja completado automaticamente. ```ts fileName="intlayer.config.ts" import { type IntlayerConfig, Locales } from "intlayer"; const config: IntlayerConfig = { internationalization: { locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH], defaultLocale: Locales.ENGLISH, requiredLocales: [Locales.ENGLISH, Locales.FRENCH], }, content: { // Auto-gerar traduções ausentes para todos os dicionários autoFill: "./{{fileName}}.content.ts", // // autoFill: "/messages/{{locale}}/{{key}}/{{fileName}}.content.json", // // autoFill: true, // auto-gerar traduções ausentes para todos os dicionários como usar "./{{fileName}}.content.json" // // autoFill: { // en: "./{{fileName}}.en.content.json", // fr: "./{{fileName}}.fr.content.json", // es: "./{{fileName}}.es.content.json", // }, }, }; export default config; ``` Você ainda pode ajustar por dicionário usando o campo `autoFill` nos arquivos de conteúdo. Veja a referência completa em `doc/autoFill` e `doc/dictionary/content_file`. --- ## Comando fill: padrões mais seguros O comando fill agora, por padrão, preenche apenas traduções ausentes e pula o conteúdo existente. ```bash npx intlayer fill ``` ```bash Chaves de dicionário afetadas para processamento: access-key-creation-form-schema, doc-search-metadata, doc-search-page - [access-key-creation-form-schema] Dicionário não possui caminho de arquivo. Pulando. - [access-key-creation-form-schema] Processando declaração de conteúdo: src/components/Dashboard/ProjectForm/AccessKey/useAccessKeyCreationFormSchema.content.ts - [access-key-creation-form-schema] Nenhum local para preencher - Pulando dicionário - [doc-search-metadata] Dicionário não possui caminho de arquivo. Pulando. - [doc-search-metadata] Processando declaração de conteúdo: src/app/[locale]/(docs)/doc/search/metadata.content.ts - [doc-search-metadata] Nenhum idioma para preencher - Pulando dicionário - [doc-search-page] Dicionário não possui caminho de arquivo. Pulando. - [doc-search-page] Processando declaração de conteúdo: src/app/[locale]/(docs)/doc/search/page.content.ts - [doc-search-page] [Russo (ru)] Preparando tradução para dicionário do Inglês (en) para Russo (ru) [intlayer] Aplicado formatação Prettier em src/app/[locale]/(docs)/doc/search/page.content.ts - [doc-search-page] Declaração de conteúdo escrita em src/app/[locale]/(docs)/doc/search/page.content.ts ``` Exemplos de CI estão disponíveis em [CI/CD](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/CI_CD.md). --- ## Extensão VS Code atualizada A extensão agora inclui uma aba dedicada do Intlayer na Barra de Atividades e várias melhorias no fluxo de trabalho: - Barra de Atividades do Intlayer com duas visualizações: - Webview de busca (`intlayer.searchBar`) para busca ao vivo no dicionário/conteúdo - Árvore de dicionários (`intlayer.dictionaries`) listando ambientes, dicionários e arquivos contribuintes - Barra de ferramentas na visualização de Dicionários: Construir, Puxar, Enviar, Preencher, Atualizar, Testar, Criar Arquivo de Dicionário - Menus de contexto: Puxar/Enviar nos dicionários; Preencher nos arquivos - Auto-revelação: o arquivo atual do editor é destacado na árvore de Dicionários quando aplicável - Novos comandos disponíveis no Command Palette: Preencher Dicionários e Testar Dicionários Veja detalhes na documentação da [Extensão Oficial do VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/vs_code_extension.md). --- ## Performance: 10× mais rápido - Resolução paralela de dicionários locais e remotos - Dicionários remotos são armazenados em cache para evitar reobtenção na inicialização do app ```bash npx intlayer build ``` Saída: ```bash [intlayer] Preparando Intlayer (v6.0.1) [intlayer] Dicionários: [intlayer] ✓ Conteúdo local: 163/163 [intlayer] ✓ Conteúdo remoto: 100/100 [intlayer] - access-key-creation-form [local: ✔ construído] [distant: ✔ importado] [intlayer] - access-key-creation-form-schema [local: ✔ construído] [distant: ✔ importado] [intlayer] - access-key-form [local: ✔ construído] [distant: ✔ importado] [intlayer] - ai-ab-testing-section [distant: ✔ importado] [intlayer] - application-not-running-view [local: ✔ construído] [distant: ✔ importado] [intlayer] - application-template-message [local: ✔ construído] [distant: ✔ buscado] [intlayer] - aside-navigation [local: ✔ construído] [distant: ✔ importado] [intlayer] - ask-reset-password [local: ✔ construído] [distant: ✔ importado] [intlayer] - ask-reset-password-schema [local: ✔ construído] [distant: ✔ importado] [intlayer] - autocompletion-section [local: ✔ construído] [distant: ✔ buscado] [intlayer] - available-techno-section [local: ✔ construído] [distant: ✔ importado] [intlayer] - blog-data [local: ✔ construído] [intlayer] - blog-metadata [local: ✔ construído] [intlayer] - blog-nav-list [local: ✔ construído] [distant: ✔ importado] [intlayer] - blog-page [distant: ✔ buscado] [intlayer] - blog-search-metadata [local: ✔ construído] [distant: ✔ importado] [intlayer] - blog-search-page [local: ✔ construído] [distant: ✔ importado] ... [intlayer] Conteúdo carregado (Total: 8401ms - Local: 4050ms - Remoto: 4222ms) ``` --- ## Melhorias no registro de logs O sistema de logs foi aprimorado para fornecer informações mais detalhadas sobre o que acontece durante as transformações de build e em tempo de execução. > Ative logs detalhados para entender melhor o que acontece durante as transformações de build e em tempo de execução. ```ts fileName="intlayer.config.ts" export default { log: { mode: "verbose", // opções: "default" | "verbose" | "disabled" }, }; ``` Veja [Configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md) para todas as opções de logging. --- ## Validação mais robusta O processamento de dicionários agora realiza uma validação mais robusta. Quando um dicionário falha ao ser processado, o Intlayer evita quebrar sua aplicação e exibe erros acionáveis. --- ## Atualizações ao vivo com CMS (Seguro para produção) Sirva atualizações de conteúdo ao vivo (por exemplo, atualizações editoriais) em produção sem precisar reconstruir sua aplicação. 1. Ative o modo de importação ao vivo: ```ts fileName="intlayer.config.ts" import { type IntlayerConfig } from "intlayer"; const config: IntlayerConfig = { build: { importMode: "live", // "static" | "dynamic" | "live" }, editor: { liveSync: true, // habilitar sincronização ao vivo no lado do servidor }, }; export default config; ``` 2. Execute seu aplicativo e o processo ao vivo lado a lado: ```bash npx intlayer live --process 'vite preview' ``` Notas: - Apenas dicionários marcados para usar o modo ao vivo serão buscados ao vivo. Outros são otimizados para desempenho. - Retorna para importação dinâmica se a API ao vivo não estiver acessível. Consulte [CMS e Sincronização ao Vivo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md) e [Configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md) para orientações completas. --- ## Notas de migração - Removido: `dictionaryOutput` (anteriormente `i18next` ou `next-intl`). Isso voltará como adaptadores plugáveis em versões futuras. Remova o campo da sua configuração. - Remoção relacionada: `i18nextResourcesDir` (veja o changelog em `doc/configuration`). - Prefira a nova opção global `content.autoFill` para gerar traduções ausentes em escala. - Use `npx intlayer content test` para bloquear PRs com traduções ausentes. - Para diagnósticos detalhados, defina `log.mode = 'verbose'`. --- ## Correções - Estabilidade da integração com Vue.js - Melhorias no adaptador Lynx - Editor Visual no Windows --- ## Links úteis - [Referência CLI](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_cli.md) - [Preenchimento automático](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/autoFill.md) - [Configuração](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/configuration.md) - [Referência do arquivo de conteúdo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/dictionary/content_file.md) - [Extensão oficial para VS Code](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/vs_code_extension.md) - [CMS e Sincronização ao Vivo](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/intlayer_CMS.md)