Артефакты docs
Путь: dist/docs/
Это пятый target codegen (docsTarget) и единственный target, не использующий handlebars-шаблоны — строки собираются прямо в коде.
Три артефакта
Заголовок раздела «Три артефакта»tokens.md — таблица быстрого доступа к токенам
Заголовок раздела «tokens.md — таблица быстрого доступа к токенам»Разбивается на секции ## по пространствам имён верхнего уровня (button / cell / checkbox / color / dialog / icon / input / loading / motion / navbar / picker / radio / radius / shadow / spacing / switch / tag / text / textarea / toast / typography / zIndex); в каждой секции — таблица из пяти колонок:
## button
| Токен | Тип | Светлая | Тёмная | Описание || --- | --- | --- | --- | --- || `button.borderRadius` | dimension | 2px | — | Скругление кнопки следует за глобальным скруглением || `button.height.medium` | dimension | 40px | — | Добавлено для native; высота кнопки среднего размера (по умолчанию) || `color.primary.default` | color | #2B4C7C → #2b4c7c | #3D649E → #3d649e | Основной цвет (индиго — 青花瓷 (сине-белый фарфор)) |Особенности:
- Колонка токенов содержит полный точечный путь
- Колонки цветов показывают одновременно исходное значение и нормализованное значение в нижнем регистре
- Для
nativeOnlyв колонке описания ставится отметка «добавлено для native» - При отсутствии переопределения в колонке тёмной темы ставится
—(сейчас тёмная тема покрывает толькоcolor.*)
tokens.light.json — плоский снимок светлой темы
Заголовок раздела «tokens.light.json — плоский снимок светлой темы»{ "button.borderRadius": "2px", "button.fontWeight": 400, "button.height.medium": "40px", "color.primary.default": "#2B4C7C"}Плоское отображение { path -> запечённое значение } для машинного потребления.
tokens.dark.json — таблица переопределений тёмной темы
Заголовок раздела «tokens.dark.json — таблица переопределений тёмной темы»{ "color.focus": "#7FA6D9", "color.selected": "#B1C1D8", …}Содержит только переопределённые ключи (все — color.*, точное количество меняется от версии к версии), отсортированные по path.
Потребители
Заголовок раздела «Потребители»| Потребитель | Что использует |
|---|---|
| Этот сайт документации | Напрямую dist/docs/ не потребляет — страница Справочник по токенам рендерится .astro-страницей через тот же конвейер loadTokenFiles + resolveTokens и всегда синхронна с источником |
| Сайт документации семейства | Встраивает tokens.md как быстрый справочник по токенам |
| Выравнивание платформ | tokens.light.json / tokens.dark.json для сравнения на этапе сборки |
| Фильтрация в базовом документе | Отметка nativeOnly используется для списка «токенов, добавленных для native» |
Защитный заголовок
Заголовок раздела «Защитный заголовок»Начало tokens.md:
<!-- Этот файл сгенерирован автоматически @lh-ui/core, не редактируйте вручную. Источник: @lh-ui/core tokens -->Аналогично баннеру «не редактировать вручную» у артефактов каждой платформы (красная линия 6).
Отличие от справочных страниц сайта
Заголовок раздела «Отличие от справочных страниц сайта»dist/docs/tokens.md |
Справочная страница токенов на сайте | |
|---|---|---|
| Когда генерируется | pnpm codegen |
pnpm docs:build / docs:dev |
| Источник данных | tokenSet в памяти codegen |
.astro-страница заново выполняет loadTokenFiles + resolveTokens из frontmatter |
| Форма | Статические markdown-таблицы | Интерактивные таблицы Astro (фильтрация, превью цветов) |
| Расположение | dist/ (gitignore, не в репозитории) |
Страницы сайта (результат сборки в docs/dist/) |
Оба варианта идут через один и тот же конвейер разрешения, поэтому значения всегда совпадают; различаются только формой представления и точкой входа в сборку.
Copyright © 2024-2026 FengMo WenXue