Other
Типы токенов группы Other: Grid, Boolean, String (text), Template, Composition, Custom — выверенные формы значений, ключи и сценарии применения.
Overview
$type | Экспортируется как | Значение одной строкой |
|---|---|---|
grid | Grid-стиль | Один объект grid или массив grid'ов |
boolean | Переменная (BOOLEAN) | true / false (строковые литералы принимаются) |
text | Переменная (STRING) | Любая строка |
template | Внутренний (apply) | Style-пресет (объект) или template-файл |
composition | Внутренний (apply) | Определение компонента (см. Composition) |
custom | Внутренний (или вывод) | Любое JSON-значение |
Grid
Layout-сетки фрейма. Экспортируются как grid-стиль. Один объект или массив определений сетки.
| Ключ | Значения |
|---|---|
pattern | columns, rows, grid |
count | Число (для columns / rows) |
sectionSize | Размер ячейки / дорожки (число / строка) |
gutterSize | Gutter (число / строка) |
alignment | MIN, MAX, CENTER, STRETCH |
offset | Смещение (число / строка) |
{
"grid": {
"$type": "grid",
"desktop": {
"$value": { "pattern": "columns", "count": 12, "gutterSize": 24, "alignment": "STRETCH", "offset": 0 }
},
"editor": {
"$value": [
{ "pattern": "columns", "count": 12, "gutterSize": 24, "alignment": "STRETCH" },
{ "pattern": "rows", "sectionSize": 8, "gutterSize": 8, "alignment": "MIN" }
]
}
}
}
Примечание Layout-сетки применяются только к фрейм-подобным нодам.
Boolean
Экспортируется как переменная BOOLEAN. Дефолтный scope ALL_SCOPES.
Принимаемое $value | Резолвится в |
|---|---|
true / false | как есть |
"on" / "off" | true / false |
"yes" / "no" | true / false |
"1" / "0" | true / false |
| Алиас | цель |
{ "flags": { "$type": "boolean", "compact": { "$value": false }, "beta": { "$value": true } } }
String (text)
Простые строковые константы. Экспортируется как переменная STRING. Дефолтный scope ALL_SCOPES.
{ "label": { "$type": "text", "cta": { "$value": "Get started" }, "currency": { "$value": "USD" } } }
Template
Style-пресет для workflow Apply Template (применяется напрямую, не экспортируется). Поддерживаются две формы.
1) DTCG-токен — $value является style-объектом:
{
"template": {
"$type": "template",
"card-default": {
"$value": {
"direction": "column",
"widthType": "fill",
"padding": "16 16",
"gap": 8,
"borderRadius": 12,
"background": "{color.surface.base}",
"boxShadow": "{shadow.card}"
}
}
}
}
2) Template-файл — корневой объект с name + вариантами styles:
{
"$type": "template",
"name": "Card",
"styles": {
"default": { "direction": "column", "padding": "16 16", "borderRadius": 12, "background": "{color.surface.base}" },
"compact": { "direction": "column", "padding": "12 12", "borderRadius": 10, "background": "{color.surface.base}" }
}
}
Ключи стилей template те же, что и в composition styles. Частые по группам:
| Группа | Ключи |
|---|---|
| Layout | direction, justifyContent, alignItems, gap, padding, overflow |
| Размер | widthType, heightType, width, height, minWidth, maxWidth, minHeight, maxHeight |
| Позиция | position, top, right, bottom, left, x, y, alignSelf, rotate |
| Фон и цвет | background, fill, color |
| Границы | border, borderColor, borderWidth, borderRadius, strokeAlign |
| Эффекты | boxShadow, effects, backgroundBlur, layerBlur, glass, opacity |
| Типографика | fontFamily, fontWeight, fontSize, lineHeight, letterSpacing, textCase, textDecoration |
Точные значения каждого ключа задокументированы на Composition · Styles, где тот же контракт стилей описан полностью.
Composition
composition описывает Figma-компонент в виде JSON (structure, props, styles и не только). У него собственный полный контракт — см. Composition.
{ "$type": "composition", "name": "WButton", "structure": { "tag": "FRAME", "class": "root" }, "styles": { ".root": {} } }
Custom
custom (или чистый проектный $type, например "baseUnit") хранит любое JSON-значение и остаётся редактируемым в SXL Studio.
{ "meta": { "$type": "custom", "gridUnit": { "$value": 4 }, "config": { "$value": { "spacingScale": 1.5 } } } }
При Export Variables & Styles SXL выводит безопасную цель из формы $value: #112233 → color, числа → number, булевы → boolean, CSS-градиенты → paint. Значения, которые нельзя вывести безопасно, остаются opaque/внутренними.