import { BookOpenCheckIcon, SignpostIcon, type LucideIcon } from 'lucide-react'; import { cn } from '../../lib/classname'; import type { AICourseViewMode } from './AICourseContent'; type AIRoadmapViewSwitchProps = { viewMode: AICourseViewMode; setViewMode: (mode: AICourseViewMode) => void; isLoading: boolean; variant?: 'icon' | 'text'; }; export function AIRoadmapViewSwitch(props: AIRoadmapViewSwitchProps) { const { viewMode, setViewMode, isLoading, variant = 'icon' } = props; return (
setViewMode('outline')} isActive={viewMode === 'outline'} disabled={isLoading} variant={variant} icon={BookOpenCheckIcon} label="Outline" /> setViewMode('roadmap')} isActive={viewMode === 'roadmap'} disabled={isLoading} variant={variant} icon={SignpostIcon} label="Roadmap" />
); } type SwitchButtonProps = { onClick: () => void; isActive: boolean; disabled: boolean; variant?: 'icon' | 'text'; icon: LucideIcon; label: string; }; export function SwitchButton(props: SwitchButtonProps) { const { onClick, isActive, disabled, variant = 'icon', icon: Icon, label, } = props; return ( ); }