Создайте рабочую среду для операционных задач на PatternFly: семантические ссылки на токены, карточки услуг с возможностью выбора, множественный выбор с тремя состояниями, проверка охвата и полный встроенный код React.
Руководство OpenDesign8 глав38 справочных записейАвторское руководство по приложению
01
Предварительный просмотр интерфейса дизайн-системы Red Hat PatternFly
Найдите нужное в каталоге сервисов, выберите отдельные сервисы или все видимые, проверьте общее число реплик, пересмотрите выбор и подтвердите локальный план.
Нативная PatternFly React 6.6.1 с оригинальными Gallery/Card и состоянием массового выбора. Только примеры операционных данных. · Справочник по реализации
02
Справочник по дизайн-системе Red Hat PatternFly
PatternFly React 6.6.1 и @patternfly/react-tokens 6.6.1. Ниже показаны выбранные опубликованные значения токенов для светлой темы. Нативные компоненты и pf-v6-theme-dark обеспечивают стилизацию тёмной темы; данные примеров сервисов и компоновка определяются приложением.
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--sm
0.5rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--md
1rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--lg
1.5rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--xl
2rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--2xl
3rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--3xl
4rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
--pf-t--global--spacer--4xl
5rem
Для групп и элементов управления используйте именованную шкалу интервалов; значения в rem зависят от размера корневого шрифта, заданного пользователем.
Компоновка операционного интерфейса дизайн-системы Red Hat PatternFly
Коллекция с постоянно видимым контекстом операций
Каталог сервисов позволяет оператору сравнивать состояние, местоположение и загрузку, а отдельная панель объёма работ фиксирует выбранный набор. Выбранные сервисы — это не то же самое, что текущие результаты поиска. Отфильтрованный сервис остаётся выбранным, пока его не удалят явно. Это различие особенно важно для массовых операций, последствия которых затрагивают не только содержимое видимой области экрана.
Используйте иерархию нативных компонентов
Gallery отвечает за адаптивное расположение карточек в столбцы, Card отделяет один сервис от другого, Label обозначает статус, а Progress показывает примерное процентное значение с заголовком. Страница не имитирует инфраструктурную консоль с помощью произвольных цветных прямоугольников. Модель данных, элементы управления и состояние проверки реализованы в полном примере на React.
Семантические роли цветов и темы в дизайн-системе Red Hat PatternFly
Основной цвет бренда и красный акцент — разные роли
PatternFly v6 предоставляет отдельные роли для бренда, акцента, текста, фона и статусов. В выбранном наборе значений для светлой темы используются синий brand-default и красный brand-accent-default. Если считать красный Red Hat цветом любого заметного действия, эти роли смешиваются. Нативные компоненты Button и Label используют системные роли, предусмотренные для соответствующего варианта.
Применяйте тёмную тему на уровне документа
В примере на элемент документа переключается pf-v6-theme-dark. Поверхности и текст приложения используют семантические переменные --pf-t--global, поэтому тема также определяет их цвета. Не фиксируйте светлые значения в собственных карточках, рассчитывая, что класс темы на элементе документа исправит их.
Типографика и метаданные сервисов в дизайн-системе Red Hat PatternFly
Отделяйте визуальный размер от семантики заголовков
Заголовок с headingLevel h1 задаёт заголовок страницы, а его размер определяет визуальный акцент. В этом снимке пакета Body-default равен 0.875rem. Подписи карточек, статусы и числовые показатели использования остаются читаемыми, но не превращаются при этом в заголовки. Список определений метаданных явно указывает количество реплик и идентификаторы сервисов.
Избегайте неоднозначных операционных подписей
Использование ресурсов обозначено как примерные данные и в компоненте, и в нижнем колонтитуле. Полосу выполнения без пояснений можно принять за задачу развёртывания или процесс загрузки. Подпись поясняет, что означает процент, а отдельная метка статуса сообщает о нормальной загрузке или необходимости проверки.
Red Hat PatternFly: галерея дизайн-системы и массовый выбор
Используйте три состояния флажка
Элемент Select visible имеет значение true, если выбраны все видимые сервисы, false, если не выбран ни один, и null, если выбрана только часть. Компонент PatternFly Checkbox поддерживает значение null для неопределённого состояния. Приложение вычисляет это состояние по отфильтрованной коллекции, а не использует отдельное логическое значение, которое может рассинхронизироваться с выбором строк.
Выберите один сервис и проверьте состояние частичного выбора.
Выберите все сервисы, видимые в данный момент.
Найдите один сервис по названию и убедитесь, что скрытые выбранные элементы сохраняются в области действия.
Проверьте точный набор и общее количество реплик.
Подтвердите локальный план и ознакомьтесь с результатом.
Используйте набор выбранных элементов как источник истины
Red Hat PatternFly: интервалы дизайн-системы и адаптивные карточки
Используйте семантические токены для оболочки страницы
В примере для фона, основного текста и второстепенных метаданных используются семантические свойства CSS из опубликованного пакета токенов. Встроенная шкала интервалов охватывает значения от xs до 4xl, а приложение задаёт расстояние 24px между коллекцией и панелью области действия. Это явное значение композиции не является ссылкой на токен.
Перестраивайте галерею, прежде чем уменьшать её содержимое
Для Gallery задана минимальная ширина элемента 230px и интервал между элементами. На заданной в приложении точке адаптации 850px панель области действия перемещается под коллекцию. При ширине 500px внутренние отступы страницы уменьшаются до 16px, а поиск занимает всю ширину панели инструментов. Это решения по компоновке для данного примера, а не утверждение, что все продукты PatternFly используют такие точки адаптации.
Red Hat PatternFly: проверка и состояния выбора в дизайн-системе
Выбор не должен запускать операцию
Установка флажка только добавляет сервис в область действия. Действие Review selection показывает информационный Alert и кнопку подтверждения. Confirm local plan выводит общее количество выбранных сервисов и реплик, не запуская задачу обслуживания. При изменении выбора состояние проверки закрывается, чтобы устаревший набор нельзя было подтвердить незаметно.
Не смешивайте восстановление поиска с выбором
Несовпадающий запрос отображает встроенное информационное Alert с действием Clear search. Оно очищает только запрос, сохраняя выбранные сервисы. Поэтому счётчик выбранных элементов на панели инструментов и панель области действия по-прежнему согласованы. Сброс выбранных элементов при отсутствии результатов поиска стал бы скрытым деструктивным поведением.
Red Hat PatternFly: доступные элементы управления и статусы в дизайн-системе
Подписывайте элементы выбора и используйте стандартные элементы управления
У каждого Checkbox есть стабильный id и видимая подпись с названием сервиса. У SearchInput есть доступное имя, Switch обозначает настройку оформления, а Review selection недоступен, пока набор пуст. Стандартный Progress передаёт своё значение и заголовок. Страница не зависит от действий, доступных только при наведении курсора и скрытых внутри карточки.
Передавайте состояние словами
Счётчик выбранных элементов использует вежливую live region, статус сервиса отображается в Label, а итоговый Alert описывает произошедшее. Не используйте цвет как единственный индикатор области выбранных элементов или состояния сервиса. При проверке с клавиатуры следует протестировать частичный выбор, фильтрацию выбранного сервиса и возврат к полной коллекции.
Установленный флажок означает включение в набор, а не статус успешного выполнения.
Метка статуса описывает сервис, а не то, выбран ли он.
Progress отображает примерный уровень использования ресурсов, а не завершение операции.
Интеграция Red Hat PatternFly дизайн-системы React
Подключите сброс стилей и стили компонентов один раз
В примере @patternfly/react-core/dist/styles/base.css импортируется в точке входа. Встроенные компоненты React получают стили компонентов из пакета. Область действия стилей приложения CSS ограничена pf-example и использует текущее пространство имён --pf-t--global; внутренние стили компонентов не переопределяются.
Добавляйте реальное планирование только при наличии сервисного контракта
Red Hat PatternFly: примеры компонентов дизайн-системы
main.jsx — галерея сервисов и массовая проверка
Полная композиция встроенных Gallery/Card/Checkbox/Progress с областью действия, вычисляемой по выбранным элементам, и локальным подтверждением.
Сохраните как src/patternfly.css. В этом примере точки адаптации приложения заданы явно.
04
Red Hat PatternFly: настройка агента дизайн-системы
Отправная точка для реализации
Композиция встроенных React 18.3.1 / PatternFly 6.6.1. Для Vite требуется поддерживаемая версия Node.js. Фактические данные сервисов и операции API остаются ответственностью приложения.
sh
npm create vite@latest patternfly-services -- --template react
cd patternfly-services
npm install
npm install [email protected][email protected] @patternfly/[email protected]
# Replace src/main.jsx and add src/patternfly.css using the complete examples.
npm run dev
Запрос для вашего проекта
Промпт для AI-агента
Создайте операционную коллекцию на основе встроенных Gallery, Card, Checkbox, Progress, Label и Alert из PatternFly 6.6.1. Используйте предоставленные семантические токены и полный пример. Разделяйте видимость после фильтрации и выбранные идентификаторы, вычисляйте частичный массовый выбор и требуйте проверки точного набора затрагиваемых элементов. При добавлении реального API предусмотрите достоверные ответы о состоянии ожидания, ошибке или успехе. Сохраните адаптивную перестройку для мобильных экранов и доступность с клавиатуры.
05
Red Hat PatternFly: источники и область действия дизайн-системы
Руководство по разработке приложения, подготовленное OpenDesign, и вымышленный пример планирования обслуживания на встроенном PatternFly React 6.6.1. Уровень использования ресурсов, регион и количество реплик — примерные данные. Подтверждение меняет только локальное состояние; никакой сервис не перезапускается и не добавляется в расписание.