'use client' import { QRCodeUpload, UploadedFile } from '@/components/QRCodeUpload' import { GlassCard } from './GlassCard' // ============================================================================= // Direct Upload Modal // ============================================================================= interface DirectUploadModalProps { isDark: boolean isDragging: boolean uploadedFiles: File[] isUploading: boolean error: string | null onDragOver: (e: React.DragEvent) => void onDragLeave: (e: React.DragEvent) => void onDrop: (e: React.DragEvent) => void onFileSelect: (e: React.ChangeEvent) => void onRemoveFile: (idx: number) => void onUpload: () => void onClose: () => void } export function DirectUploadModal({ isDark, isDragging, uploadedFiles, isUploading, error, onDragOver, onDragLeave, onDrop, onFileSelect, onRemoveFile, onUpload, onClose }: DirectUploadModalProps) { return (

Arbeiten hochladen

Ziehen Sie eingescannte Klausuren hierher oder klicken Sie zum Auswaehlen.

{error && (
{error}
)}

{isDragging ? 'Dateien hier ablegen' : 'Dateien hierher ziehen'}

PDF oder Bilder (JPG, PNG)

{uploadedFiles.length > 0 && (

{uploadedFiles.length} Datei(en) ausgewaehlt:

{uploadedFiles.map((file, idx) => (
{file.name}
))}
)}
) } // ============================================================================= // EH Upload Modal // ============================================================================= interface EHUploadModalProps { isDark: boolean isDragging: boolean ehFile: File | null isUploading: boolean onDragOver: (e: React.DragEvent) => void onDragLeave: (e: React.DragEvent) => void onDrop: (e: React.DragEvent) => void onFileSelect: (e: React.ChangeEvent) => void onRemoveFile: () => void onUpload: () => void onClose: () => void } export function EHUploadModal({ isDark, isDragging, ehFile, isUploading, onDragOver, onDragLeave, onDrop, onFileSelect, onRemoveFile, onUpload, onClose }: EHUploadModalProps) { return (

Erwartungshorizont hochladen

Laden Sie einen eigenen Erwartungshorizont fuer Vorabitur-Klausuren hoch.

{ehFile ? ehFile.name : 'EH-Datei hierher ziehen'}

PDF oder Word-Dokument

{ehFile && (
{ehFile.name}
)}
) } // ============================================================================= // QR Code Modal // ============================================================================= interface QRCodeModalProps { isDark: boolean sessionId: string onClose: () => void onFileUploaded?: (file: UploadedFile) => void } export function QRCodeModal({ isDark, sessionId, onClose, onFileUploaded }: QRCodeModalProps) { return (
) }