Skip to content

pantoken / props-minify

props-minify

Бета

@pantoken/plugin-props-minify — объединяет преобразования prune, flatten и mangle для --instui-* пользовательских свойств через единый утилитарный applyMinify.

Каждый пайплайн, генерирующий CSS (скрипты генерации, рендереры), использует applyMinify для единообразной среды минификации без прямой зависимости от PostCSS.

Prune + mangle безопасны только для автономных бандлов где все ссылки var(--instui-*) и их определения находятся в одном и том же выходном файле. Для потребителей отдельных файлов (@pantoken/css + @pantoken/components загружаемых независимо), применяйте только { flatten: true }.

Mangle через границы файлов: передавайте тот же экземпляр Map как mangle.sharedManifest в каждый вызов applyMinify, который обрабатывает CSS-файлы, загруженные вместе. Сначала обрабатывайте таблицу токенов (она заполняет манифест), затем таблицы компонентов.

Примеры

Применить все три преобразования к автономному бандлу

ts
import { applyMinify } from "@pantoken/plugin-props-minify";
const out = applyMinify(css, { prune: true, flatten: true, mangle: true });

Только flatten (безопасно для потребителей отдельных файлов)

ts
import { applyMinify } from "@pantoken/plugin-props-minify";
const out = applyMinify(css, { flatten: true });

Mangle двух файлов с одной и той же картой соответствий

ts
import { applyMinify } from "@pantoken/plugin-props-minify";
const manifest = new Map<string, string>();
const tokenCss = applyMinify(rawTokens, { mangle: { sharedManifest: manifest } });
const componentCss = applyMinify(rawComponents, { mangle: { sharedManifest: manifest } });

Интерфейсы

Псевдонимы типов

Переменные

Функции