import type { ButtonHTMLAttributes, ReactNode } from 'react'; type PlatformDarkOptionTone = 'emerald' | 'sky' | 'rose' | 'amber'; type PlatformDarkOptionRadius = 'sm' | 'md' | 'lg'; type PlatformDarkOptionPadding = 'sm' | 'md' | 'lg'; type PlatformDarkOptionCardProps = Omit< ButtonHTMLAttributes, 'children' > & { selected: boolean; tone?: PlatformDarkOptionTone; radius?: PlatformDarkOptionRadius; padding?: PlatformDarkOptionPadding; children: ReactNode; }; const PLATFORM_DARK_OPTION_RADIUS_CLASS: Record< PlatformDarkOptionRadius, string > = { sm: 'rounded-lg', md: 'rounded-xl', lg: 'rounded-2xl', }; const PLATFORM_DARK_OPTION_PADDING_CLASS: Record< PlatformDarkOptionPadding, string > = { sm: 'px-3 py-2', md: 'px-3 py-2.5', lg: 'px-3 py-3', }; const PLATFORM_DARK_OPTION_SELECTED_CLASS: Record< PlatformDarkOptionTone, string > = { emerald: 'border-emerald-400/45 bg-emerald-500/10 text-emerald-100', sky: 'border-sky-400/45 bg-sky-500/10 text-sky-100', rose: 'border-rose-400/60 bg-rose-500/10 text-rose-100', amber: 'border-amber-400/60 bg-amber-500/10 text-amber-100', }; const PLATFORM_DARK_OPTION_IDLE_CLASS = 'border-white/8 bg-black/20 text-zinc-300 hover:border-white/15'; /** * 暗色面板中的可选项按钮。 * 统一承接 selected / idle / hover / disabled 的暗色卡片外观。 */ export function PlatformDarkOptionCard({ selected, tone = 'emerald', radius = 'md', padding = 'sm', children, className, type = 'button', ...buttonProps }: PlatformDarkOptionCardProps) { return ( ); }