Skip to content

pantoken / flatten-property

flatten-property

Bêta

@pantoken/plugin-flatten-property — convertir les at-rules @property en déclarations simples de propriétés personnalisées. déclarations.

@property at-rules enregistrent des propriétés personnalisées typées CSS avec les descripteurs syntax, inherits et initial-value. Elles entraînent un surcoût en octets important — ~60 octets de code standard par propriété — et sont inutiles lorsque la feuille de style constitue un bundle autonome où l'enregistrement des types n'apporte aucun avantage à l'exécution. Ce plugin remplace chaque bloc @property par une simple déclaration --name: value à l'intérieur d'un sélecteur choisi, récupérant ainsi tout ce surcoût.

Remarque sémantique : la suppression de @property supprime l'enregistrement des types CSS. Les transitions/animations typées, @starting-style, et le CSS Typed OM en dépendent. Ne l'appliquer qu'aux bundles où ces sémantiques ne sont pas nécessaires.

Exemple

ts
import postcss from "postcss";
import { flattenProperty } from "@pantoken/plugin-flatten-property";
const out = postcss([flattenProperty()]).process(css, { from: undefined }).css;

Interfaces

Variables