Спросите свой вопрос и получите сводку документа, используя эту страницу и выбранного вами поставщика AI
История версий
- "Инициализация доки"v9.0.025.06.2026
Содержимое этой страницы было переведено с помощью ИИ.
Смотреть последнюю версию оригинального контента на английскомЕсли у вас есть идея по улучшению этой документации, не стесняйтесь внести свой вклад, подав запрос на вытягивание на GitHub.
Ссылка на документацию GitHubКопировать Markdown документа в буфер обмена
intlayerMinify
intlayerMinify — это плагин Vite, который минимизирует скомпилированные JSON-файлы словарей во время сборки для продакшена. Он удаляет все ненужные пробельные символы и, в сочетании с intlayerPrune, опционально переименовывает поля содержимого в короткие буквенные алиасы (a, b, c, …) для дополнительного уменьшения размера бандла.
Плагин уже автоматически включен и настроен, если вы используете intlayer(). Вам нужно регистрировать его вручную только в том случае, если вы самостоятельно собираете стек плагинов.
Использование
Копировать код в буфер обмена
Условия активации
intlayerMinify активен только при выполнении всех трех следующих условий:
- Команда Vite —
build(неserve/ dev). build.optimizeимеет значениеtrue(илиundefined, что по умолчанию равноtrueдля сборок).build.minifyимеет значениеtrueв вашей конфигурации Intlayer.
Когда editor.enabled имеет значение true, плагин продолжает работать, но пропускает переименование полей: переименование переписывает ключи контента, по которым проходит интерпретатор, поэтому keyPath, получаемый визуальным редактором, больше не будет совпадать с не объединёнными словарями, которые он редактирует. Сжатие пробелов и удаление метаданных верхнего уровня остаются активными.
Что минимизируется
Плагин обрабатывает два пути хранения словарей (определяемых из intlayer.system):
dictionariesDir— статические словари для всех языков (например,.intlayer/dictionaries/*.json)dynamicDictionariesDir— динамические словари для конкретных языков
Словари в режиме fetch (fetchDictionariesDir) никовы не минимизируются, поскольку они запрашиваются из удаленного API во время выполнения с использованием исходных имен полей. Переименование полей привело бы к несоответствию между ответом сервера и обращениями к свойствам на стороне клиента.
Сокрытие имен полей (минимизация свойств)
Когда intlayerPrune анализирует кодовую базу и заполняет карту pruneContext.dictionaryKeyToFieldRenameMap, intlayerMinify также переименовывает имена полей контента в короткие алиасы. Например:
Копировать код в буфер обмена
Соответствующие обращения к свойствам в исходных файлах переименовываются на шаге Babel в intlayerOptimize, поэтому поведение в рантайме остается неизменным.
Внутренние поля Intlayer (nodeType, translation и т.д.) никогда не переименовываются.
Крайние случаи (Edge-cases)
Словари, отмеченные в pruneContext.dictionariesWithEdgeCases (структурные аномалии, обнаруженные во время фазы очистки), полностью пропускаются — они не минимизируются и не скрываются, чтобы избежать отправки поврежденных данных.
Квалифицированные группы (коллекции / варианты / метаданные)
Для словарей с массивом qualifierTypes (коллекции, варианты и метаданные) плагин сохраняет массив qualifierTypes и карту meta без изменений. Маскируются только имена полей внутри записей content. Композитные ключи (используемые для сопоставления селекторов во время выполнения) никогда не изменяются.
