'use client' import { useStyles, cx } from '../../contexts/StylesContext' interface SettingsSectionProps { title: string children: React.ReactNode } export function SettingsSection({ title, children }: SettingsSectionProps) { const styles = useStyles() return (

{title}

{children}
) } interface SettingsItemProps { label: React.ReactNode meta?: React.ReactNode actions?: React.ReactNode } export function SettingsItem({ label, meta, actions }: SettingsItemProps) { const styles = useStyles() return (
{label} {meta && {meta}}
{actions &&
{actions}
}
) } export function SettingsList({ children }: { children: React.ReactNode }) { const styles = useStyles() return
{children}
} type BadgeVariant = 'primary' | 'success' | 'warning' | 'danger' export function Badge({ variant, children }: { variant: BadgeVariant, children: React.ReactNode }) { const styles = useStyles() const variantClass = { primary: styles.badgePrimary, success: styles.badgeSuccess, warning: styles.badgeUnverified, danger: styles.badgeDanger, }[variant] return {children} } interface ButtonProps extends React.ButtonHTMLAttributes { variant?: 'primary' | 'secondary' | 'danger' size?: 'small' | 'normal' } export function Button({ variant = 'primary', size = 'small', className, children, ...props }: ButtonProps) { const styles = useStyles() const variantClass = { primary: styles.smallButtonPrimary, secondary: styles.smallButtonSecondary, danger: styles.smallButtonDanger, }[variant] return ( ) }