import { Ban, Check, ChevronDown, Film, ImageIcon, Lightbulb, ListChecks, Loader2, MessageCircle, Palette, Play, SlidersHorizontal, Sparkles, WandSparkles, } from 'lucide-react'; import { toast } from 'sonner'; import { Button } from '@/components/ui/button'; import { cn } from '@/lib/utils'; import { useImageWorkspaceStore } from '@/stores/image-workspace'; import type { DesignCompilationIssue, DesignWorkspace, } from '../../../shared/image-workspace'; import { projectYouthCreationCard, type YouthCreationCardModel, } from './youth-form-projection'; export type YouthCreationCardProps = { workspace: DesignWorkspace; quoteBlockers: DesignCompilationIssue[]; generationAvailable: boolean; onOpenFineTune: () => void; onFocusComposer: () => void; }; function formatDuration(seconds: number): string { if (!Number.isFinite(seconds)) return `${seconds} 秒`; if (Number.isInteger(seconds)) return `${seconds} 秒`; return `${seconds.toFixed(1)} 秒`; } function MediumIcon({ medium }: { medium: 'image' | 'video' }) { return medium === 'video' ?