Skip to content

pantoken-root / packages/core/src / modifyExpression

Функция: modifyExpression() ​

modifyExpression(base, modify): string

Бета

The CSS-expression form of applyModify: те же вычисления, но применяются к base во время отрисовки вместо приведения к hex во время сборки, поэтому происхождение var(--instui-…) вида var(--instui-…) сохраняется в таблице стилей и продолжает отслеживать то, к чему разрешается этот токен (включая пару light-dark(), а также любую runtime перенаправку примитива, от которого он происходит)).

Relative colour syntax resolves l по шкале 0–100 в обеих hsl() и lch(), а опущенный канал альфа наследует значение источника — это соответствует прохождению альфа у applyModify.

Параметры ​

base ​

string

Базовый цвет (литеральный, var(--token) или результат вложенного хелпера).

modify ​

TokenModify

Цветовое пространство, в котором действует модификатор (напр., "hsl").

Возвращаемое значение ​

string

Выражение color-mix().

Пример ​

ts
import { modifyExpression } from "@pantoken/core";

modifyExpression("var(--x)", { type: "alpha", value: 0.2, space: "hsl" });
// → "color-mix(in srgb, var(--x) 20%, transparent)"
modifyExpression("var(--x)", { type: "darken", value: 0.1, space: "hsl" });
// → "hsl(from var(--x) h s calc(l * 0.9))"
modifyExpression("var(--x)", { type: "lighten", value: 0.1, space: "hsl" });
// → "hsl(from var(--x) h s calc(l + (100 - l) * 0.1))"