quality / changes (push) Successful in 10s
quality / api (push) Skipped
quality / commitlint (push) Skipped
quality / docker-check (push) Skipped
quality / openapi (push) Successful in 39s
quality / web (push) Successful in 58s
CD / quality (push) Successful in 1m59s
CD / publish (push) Successful in 1m46s
Заголовок страницы как на досках (20px), панель: быстрые действия, график и таблицы «Агенты» и «Требует внимания» в раскладке MikrotikManager (новый SimpleGrid). Статистика: пояснение, KPI с подсказками и линейные вкладки «Активность» и «Samples». Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
21 lines
854 B
TypeScript
21 lines
854 B
TypeScript
import type { ReactNode } from 'react'
|
|
|
|
interface PageHeaderProps {
|
|
title: string
|
|
description?: ReactNode
|
|
actions?: ReactNode
|
|
}
|
|
|
|
/** Заголовок страницы как на досках макета: название 20px, описание 14px muted, действия справа. */
|
|
export function PageHeader({ title, description, actions }: PageHeaderProps) {
|
|
return (
|
|
<header className="flex min-w-0 flex-wrap items-end justify-between gap-3">
|
|
<div className="flex min-w-0 flex-col gap-0.5">
|
|
<h1 className="text-xl font-semibold tracking-[-0.01em]">{title}</h1>
|
|
{description ? <p className="text-muted-foreground text-sm text-pretty">{description}</p> : null}
|
|
</div>
|
|
{actions ? <div className="flex shrink-0 flex-wrap items-center justify-end gap-2">{actions}</div> : null}
|
|
</header>
|
|
)
|
|
}
|