Posez votre question et obtenez un résumé du document en referencant cette page et le Provider AI de votre choix
Historique des versions
- "Initialisation de la doc"v9.0.025/06/2026
Le contenu de cette page a été traduit à l'aide d'une IA.
Voir la dernière version du contenu original en anglaisSi vous avez une idée d’amélioration pour améliorer cette documentation, n’hésitez pas à contribuer en submitant une pull request sur GitHub.
Lien GitHub de la documentationCopier le Markdown du doc dans le presse-papiers
intlayerMinify
intlayerMinify est un plugin Vite qui minifie les fichiers JSON de dictionnaire compilés lors d'un build de production. Il supprime tous les espaces inutiles et, lorsqu'il est combiné avec intlayerPrune, renomme éventuellement les noms des champs de contenu en alias alphabétiques courts (a, b, c, …) pour réduire davantage la taille du bundle.
Le plugin est déjà inclus et configuré automatiquement lorsque vous utilisez intlayer(). Vous n'avez besoin de l'enregistrer manuellement que si vous composez vous-même la pile de plugins.
Utilisation
Copier le code dans le presse-papiers
Conditions d'activation
intlayerMinify est actif uniquement lorsque les trois conditions suivantes sont remplies :
- La commande Vite est
build(passerve/ dev). build.optimizeest àtrue(ouundefined, qui vaut par défauttruepour les builds).build.minifyest àtruedans votre configuration Intlayer.
Lorsque editor.enabled est true, le plugin s'exécute toujours mais ignore le renommage des champs : le renommage réécrit les clés de contenu que l'interpréteur parcourt, donc le keyPath reçu par l'éditeur visuel ne correspondrait plus aux dictionnaires non fusionnés qu'il édite. La compaction des espaces et la suppression des métadonnées de premier niveau restent actives.
Ce qui est minifié
Le plugin cible deux emplacements de dictionnaire (tels que résolus depuis intlayer.system) :
dictionariesDir— dictionnaires statiques toutes langues (ex..intlayer/dictionaries/*.json)dynamicDictionariesDir— dictionnaires dynamiques par langue
Les dictionnaires en mode fetch (fetchDictionariesDir) ne sont jamais minifiés car ils sont servis depuis une API distante au moment de l'exécution en utilisant leurs noms de champs d'origine. Renommer les champs créerait un décalage entre la réponse du serveur et les accès aux propriétés côté client.
Masquage des noms de champs (minification des propriétés)
Lorsque intlayerPrune a analysé la codebase et rempli pruneContext.dictionaryKeyToFieldRenameMap, intlayerMinify renomme également les noms de champs de contenu en alias courts. Par exemple :
Copier le code dans le presse-papiers
Les accès aux propriétés correspondants dans les fichiers sources sont renommés par la passe Babel dans intlayerOptimize, le comportement au runtime reste donc inchangé.
Les champs internes d'Intlayer (nodeType, translation, etc.) ne sont jamais renommés.
Dictionnaires de cas limites (Edge-cases)
Les dictionnaires signalés dans pruneContext.dictionariesWithEdgeCases (anomalies structurelles détectées lors de la phase de prune) sont entièrement ignorés — ni minifiés ni masqués — pour éviter de livrer des données corrompues.
Groupes qualifiés (collections / variantes / enregistrements méta)
Pour les dictionnaires avec un tableau qualifierTypes (collections, variantes et enregistrements méta), le plugin préserve le tableau qualifierTypes et la table de correspondance meta textuellement. Seules les entrées de content ont leurs noms de champs masqués. Les clés composites (utilisées pour la correspondance des sélecteurs au runtime) ne sont jamais touchées.
