import { Typography } from '@douyinfe/semi-ui'; import type { ReactNode } from 'react'; const { Text, Title } = Typography; export type WorkspacePanelTone = 'neutral' | 'primary' | 'warning' | 'authority' | 'health' | 'danger'; export function WorkspacePanelHeader({ title, description, eyebrow, meta, actions, variant = 'default', tone = 'neutral', className = '', actionsClassName = '' }: { title: ReactNode; description?: ReactNode; eyebrow?: ReactNode; meta?: ReactNode; actions?: ReactNode; variant?: 'default' | 'compact' | 'inverted'; tone?: WorkspacePanelTone; className?: string; actionsClassName?: string; }) { const headerClassName = [ 'v2-workspace-panel-header', `is-${variant}`, `tone-${tone}`, eyebrow != null ? 'has-eyebrow' : '', className ].filter(Boolean).join(' '); const trailingClassName = ['v2-workspace-panel-actions', actionsClassName].filter(Boolean).join(' '); return (
{eyebrow != null ? {eyebrow} : null} {title} {description ? {description} : null}
{meta || actions ?
{meta ? {meta} : null} {actions}
: null}
); }