fix(ui): standardize compact operational headings and empty states
This commit is contained in:
@@ -1423,6 +1423,7 @@ export function CatalogApp() {
|
|||||||
<li><ResourceRow icon={<Icon name="file" />} title="Сохранённый результат" metadata="Сегодня · доступен для просмотра" actions={<IconButton label="Просмотреть пример" onClick={() => setProjectName("Сохранённый результат")}><Icon name="eye" /></IconButton>} /></li>
|
<li><ResourceRow icon={<Icon name="file" />} title="Сохранённый результат" metadata="Сегодня · доступен для просмотра" actions={<IconButton label="Просмотреть пример" onClick={() => setProjectName("Сохранённый результат")}><Icon name="eye" /></IconButton>} /></li>
|
||||||
<li><ResourceRow icon={<Icon name="camera" />} title="Подготовка камеры" metadata="Проверка потоков" progress={{label:"Подготовка камеры",value:0.8}} aria-busy="true" actions={<IconButton label="Просмотр недоступен" disabled><Icon name="eye" /></IconButton>} /></li>
|
<li><ResourceRow icon={<Icon name="camera" />} title="Подготовка камеры" metadata="Проверка потоков" progress={{label:"Подготовка камеры",value:0.8}} aria-busy="true" actions={<IconButton label="Просмотр недоступен" disabled><Icon name="eye" /></IconButton>} /></li>
|
||||||
</ResourceList>
|
</ResourceList>
|
||||||
|
<SettingsCard title="Устройства не обнаружены" description="Подключите устройство, чтобы оно появилось в списке." />
|
||||||
</Preview>
|
</Preview>
|
||||||
<Preview title="Оконные действия" note="круг `46 px`" className="catalog-preview--compact">
|
<Preview title="Оконные действия" note="круг `46 px`" className="catalog-preview--compact">
|
||||||
<div className="catalog-window-actions-demo">
|
<div className="catalog-window-actions-demo">
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
# Компактная операционная типографика
|
||||||
|
|
||||||
|
Уточнение владельца 06.09.2026 для Mission Core / Node, обязательное для
|
||||||
|
общих компонентов NODE.DC. Повторяющиеся сообщения и подписи не оформляются
|
||||||
|
крупными заголовками. Этот документ зарегистрирован в registry/registry.json.
|
||||||
|
|
||||||
|
- Заголовок страницы или окна: только предусмотренный шаблоном title-токен.
|
||||||
|
- Заголовок секции, SettingsCard, короткое сообщение пустого списка: md
|
||||||
|
(0.8125rem / 13 px при стандартном корневом размере), без увеличения через h2.
|
||||||
|
- Описание, пояснение, сведения о состоянии: sm (0.75rem / 12 px).
|
||||||
|
- Технические метаданные: xs либо типографика ResourceRow.
|
||||||
|
- Browser-default h1–h6/p/strong и локальные крупные размеры запрещены.
|
||||||
|
- Размер не умножается из-за вложенности карточек, ошибки или отсутствия данных.
|
||||||
|
|
||||||
|
SettingsCard и nodedc-empty-state закрепляют эти размеры в ui-core. Текст
|
||||||
|
«Устройства не обнаружены» не является заголовком нового раздела. В живом
|
||||||
|
каталоге рядом со строками ресурсов есть пример пустого списка.
|
||||||
|
|
||||||
|
В завершённом этапе настройки окружения status-слот ResourceRow содержит
|
||||||
|
только Icon check с доступным названием. Галочка не оборачивается в StatusBadge,
|
||||||
|
Checker, круг, pill или кнопку. Это знак результата, а не интерактивный контрол.
|
||||||
|
Лампочка состояния устройства отдельно использует StatusBadge indicator.
|
||||||
@@ -585,13 +585,13 @@ textarea.nodedc-field__control {
|
|||||||
|
|
||||||
.nodedc-settings-card__titles h2 {
|
.nodedc-settings-card__titles h2 {
|
||||||
color: var(--nodedc-text-primary);
|
color: var(--nodedc-text-primary);
|
||||||
font-size: 1rem;
|
font-size: var(--nodedc-font-size-md);
|
||||||
line-height: 1.25;
|
line-height: 1.25;
|
||||||
}
|
}
|
||||||
|
|
||||||
.nodedc-settings-card__titles p {
|
.nodedc-settings-card__titles p {
|
||||||
color: var(--nodedc-text-muted);
|
color: var(--nodedc-text-muted);
|
||||||
font-size: 0.75rem;
|
font-size: var(--nodedc-font-size-sm);
|
||||||
line-height: 1.4;
|
line-height: 1.4;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3569,6 +3569,7 @@ textarea.nodedc-field__control {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nodedc-empty-state {
|
.nodedc-empty-state {
|
||||||
|
font-size: var(--nodedc-font-size-sm);
|
||||||
display: grid;
|
display: grid;
|
||||||
min-height: 12rem;
|
min-height: 12rem;
|
||||||
place-items: center;
|
place-items: center;
|
||||||
@@ -3580,7 +3581,7 @@ textarea.nodedc-field__control {
|
|||||||
|
|
||||||
.nodedc-empty-state strong {
|
.nodedc-empty-state strong {
|
||||||
color: var(--nodedc-text-primary);
|
color: var(--nodedc-text-primary);
|
||||||
font-size: var(--nodedc-font-size-lg);
|
font-size: var(--nodedc-font-size-md);
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: 1100px) {
|
@media (max-width: 1100px) {
|
||||||
|
|||||||
@@ -441,6 +441,7 @@
|
|||||||
"summary": "Neutral administration group with title metadata, actions, content and a compact binary switch.",
|
"summary": "Neutral administration group with title metadata, actions, content and a compact binary switch.",
|
||||||
"rules": [
|
"rules": [
|
||||||
"The card owns grouping geometry but not product form schemas.",
|
"The card owns grouping geometry but not product form schemas.",
|
||||||
|
"Section and empty-state titles use the compact md token; descriptions use sm. Page/window title sizes and browser heading defaults are forbidden inside cards.",
|
||||||
"Use Switch for compact visibility/enable states; use Checker for the Engine inspector treatment."
|
"Use Switch for compact visibility/enable states; use Checker for the Engine inspector treatment."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -44,6 +44,7 @@
|
|||||||
"architecture": "../docs/ARCHITECTURE.md",
|
"architecture": "../docs/ARCHITECTURE.md",
|
||||||
"components": "../docs/COMPONENTS.md",
|
"components": "../docs/COMPONENTS.md",
|
||||||
"theming": "../docs/THEMING.md",
|
"theming": "../docs/THEMING.md",
|
||||||
|
"operationalTypography": "../docs/OPERATIONAL_TYPOGRAPHY.md",
|
||||||
"windows": "../docs/WINDOWS_AND_LAYERS.md",
|
"windows": "../docs/WINDOWS_AND_LAYERS.md",
|
||||||
"baseline": "../docs/SOURCE_BASELINE.md",
|
"baseline": "../docs/SOURCE_BASELINE.md",
|
||||||
"governance": "../docs/GOVERNANCE.md",
|
"governance": "../docs/GOVERNANCE.md",
|
||||||
|
|||||||
Reference in New Issue
Block a user