Skip to content

pantoken / mangle-custom-props

mangle-custom-props

Beta

@pantoken/plugin-mangle-custom-props — 将冗长的自定义属性名重命名为最小的顺序标识符。

--instui-component-alert-border-top-style 这样的 token 名称对人类可读,但在压缩包中代价高昂:名称本身超过 40 字节,并在定义中重复出现,在每次 var() 调用和每次 @property 注册时都要出现。此插件会替换每个匹配的名称——跨定义、var() 引用和 @property 参数——为最小标识符(--a, --b, …, --aa, …),将名称开销削减约 90%。

名称从整个样式表中收集,按字母顺序排序以获得确定性映射,然后顺序分配。MangleCustomPropsOptions.sharedManifest 选项允许多个独立的 PostCSS 处理过程共享一份一致的映射,因此将要一起加载的单独处理的 CSS 文件可以安全地使用相同的名称进行混淆。

示例

ts
import postcss from "postcss";
import { mangleCustomProps } from "@pantoken/plugin-mangle-custom-props";
const out = postcss([mangleCustomProps()]).process(css, { from: undefined }).css;

接口

类型别名

变量