Faça sua pergunta e obtenha um resumo do documento referenciando esta página e o provedor AI de sua escolha
Histórico de versões
- "Inicialização da doc"v9.0.025/06/2026
O conteúdo desta página foi traduzido com uma IA.
Veja a última versão do conteúdo original em inglêsSe você tiver uma ideia para melhorar esta documentação, sinta-se à vontade para contribuir enviando uma pull request no GitHub.
Link do GitHub para a documentaçãoCopiar o Markdown do documento para a área de transferência
intlayerMinify
O intlayerMinify é um plugin do Vite que minifica arquivos JSON de dicionário compilados durante um build de produção. Ele remove todos os espaços em branco desnecessários e, quando combinado com o intlayerPrune, opcionalmente renomeia os nomes dos campos de conteúdo para apelidos (aliases) alfabéticos curtos (a, b, c, …) para reduzir ainda mais o tamanho do bundle.
O plugin já está incluído e configurado automaticamente quando você usa o intlayer(). Você só precisa registrá-lo manualmente se estiver compondo a pilha de plugins por conta própria.
Uso
Copiar o código para a área de transferência
Condições de ativação
O intlayerMinify fica ativo apenas quando todas as três condições a seguir forem verdadeiras:
- O comando do Vite é
build(nãoserve/ dev). build.optimizeétrue(ouundefined, que assume o padrãotruepara builds).build.minifyétruena sua configuração do Intlayer.
Quando editor.enabled é true, o plugin continua sendo executado, mas pula a renomeação de campos: a renomeação reescreve as chaves de conteúdo percorridas pelo interpretador, então o keyPath recebido pelo editor visual não corresponderia mais aos dicionários não mesclados que ele edita. A compactação de espaços em branco e a remoção dos metadados de nível superior permanecem ativas.
O que é minificado
O plugin tem como alvo dois locais de dicionário (conforme resolvido a partir de intlayer.system):
dictionariesDir— dicionários estáticos de todos os idiomas (ex:.intlayer/dictionaries/*.json)dynamicDictionariesDir— dicionários dinâmicos por idioma
Os dicionários no modo fetch (fetchDictionariesDir) nunca são minificados porque são servidos a partir de uma API remota em tempo de execução usando seus nomes de campo originais. Renomear os campos criaria uma incompatibilidade entre a resposta do servidor e os acessos às propriedades no lado do cliente.
Ofuscação de nomes de campos (minificação de propriedades)
Quando o intlayerPrune analisa o código-fonte e preenche pruneContext.dictionaryKeyToFieldRenameMap, o intlayerMinify também renomeia os nomes dos campos de conteúdo para aliases curtos. Por exemplo:
Copiar o código para a área de transferência
Os acessos correspondentes às propriedades do arquivo fonte são renomeados pela passagem do Babel dentro do intlayerOptimize, de modo que o comportamento em tempo de execução permanece inalterado.
Campos internos do Intlayer (nodeType, translation, etc.) nunca são renomeados.
Dicionários de casos extremos (Edge-cases)
Dicionários sinalizados em pruneContext.dictionariesWithEdgeCases (anomalias estruturais detectadas durante a fase de eliminação) são ignorados inteiramente — não são minificados nem ofuscados — para evitar o envio de dados corrompidos.
Grupos qualificados (coleções / variantes / registros meta)
Para dicionários com uma matriz qualifierTypes (coleções, variantes e registros meta), o plugin preserva a matriz qualifierTypes e o mapa lateral meta literalmente. Apenas as entradas de content têm seus nomes de campo ofuscados. As chaves compostas (usadas para correspondência de seletores em tempo de execução) nunca são tocadas.
