mirror of
https://github.com/Noooste/garage-ui.git
synced 2026-08-13 06:56:54 +00:00
bfed48421b
Signed-off-by: Noooste <83548733+Noooste@users.noreply.github.com>
29 lines
917 B
TypeScript
29 lines
917 B
TypeScript
import * as React from 'react';
|
|
import { cn } from '@/lib/utils';
|
|
|
|
interface PageHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
title: string;
|
|
subtitle?: React.ReactNode;
|
|
actions?: React.ReactNode;
|
|
}
|
|
|
|
export function PageHeader({ title, subtitle, actions, className, ...props }: PageHeaderProps) {
|
|
return (
|
|
<div
|
|
className={cn(
|
|
'flex flex-col gap-4 border-b border-[var(--border)] px-6 py-5 sm:flex-row sm:items-start sm:justify-between sm:gap-6',
|
|
className,
|
|
)}
|
|
{...props}
|
|
>
|
|
<div className="min-w-0">
|
|
<h1 className="text-[26px] font-semibold tracking-[-0.02em] leading-tight truncate">{title}</h1>
|
|
{subtitle && (
|
|
<div className="mt-1 text-[13.5px] text-[var(--muted-foreground)]">{subtitle}</div>
|
|
)}
|
|
</div>
|
|
{actions && <div className="flex shrink-0 items-center gap-2">{actions}</div>}
|
|
</div>
|
|
);
|
|
}
|