import * as React from 'react'; import { clsx } from 'clsx'; export interface PanelProps extends React.HTMLAttributes { as?: 'section' | 'aside' | 'article' | 'div'; density?: 'compact' | 'normal' | 'spacious'; } const panelPadding: Record, string> = { compact: 'p-4', normal: 'p-5', spacious: 'p-6', }; export function Panel({ as: Comp = 'section', density = 'normal', className, children, ...props }: PanelProps) { return ( {children} ); } export type PanelHeaderProps = React.HTMLAttributes; export function PanelHeader({ className, children, ...props }: PanelHeaderProps) { return (
{children}
); } export type PanelBodyProps = React.HTMLAttributes; export function PanelBody({ className, children, ...props }: PanelBodyProps) { return (
{children}
); } export type PanelTitleProps = React.ComponentPropsWithoutRef<'h2'>; export function PanelTitle({ className, children, ...props }: PanelTitleProps) { return (

{children}

); } export type PanelDescriptionProps = React.ComponentPropsWithoutRef<'p'>; export function PanelDescription({ className, children, ...props }: PanelDescriptionProps) { return (

{children}

); }