'use client' import { Suspense } from 'react' import { PagePurpose } from '@/components/common/PagePurpose' import { KombiStepper } from '@/components/ocr-kombi/KombiStepper' import { SessionList } from '@/components/ocr-kombi/SessionList' import { SessionHeader } from '@/components/ocr-kombi/SessionHeader' import { StepUpload } from '@/components/ocr-kombi/StepUpload' import { StepOrientation } from '@/components/ocr-kombi/StepOrientation' import { StepPageSplit } from '@/components/ocr-kombi/StepPageSplit' import { StepDeskew } from '@/components/ocr-kombi/StepDeskew' import { StepDewarp } from '@/components/ocr-kombi/StepDewarp' import { StepContentCrop } from '@/components/ocr-kombi/StepContentCrop' import { StepOcr } from '@/components/ocr-kombi/StepOcr' import { StepStructure } from '@/components/ocr-kombi/StepStructure' import { StepGridBuild } from '@/components/ocr-kombi/StepGridBuild' import { StepGridReview } from '@/components/ocr-kombi/StepGridReview' import { StepGutterRepair } from '@/components/ocr-kombi/StepGutterRepair' import { StepGroundTruth } from '@/components/ocr-kombi/StepGroundTruth' import { useKombiPipeline } from './useKombiPipeline' function OcrKombiContent() { const { currentStep, sessionId, sessionName, loadingSessions, activeCategory, isGroundTruth, pageNumber, steps, gridSaveRef, groupedSessions, loadSessions, openSession, handleStepClick, handleNext, handleNewSession, deleteSession, renameSession, updateCategory, setSessionId, setSessionName, setIsGroundTruth, } = useKombiPipeline() const renderStep = () => { switch (currentStep) { case 0: return ( { setSessionId(sid) setSessionName(name) loadSessions() }} onNext={handleNext} /> ) case 1: return ( handleNext()} onSessionList={() => { loadSessions(); handleNewSession() }} /> ) case 2: return ( { // Switch to the first child session and refresh the list setSessionId(childId) setSessionName(childName) loadSessions() }} /> ) case 3: return case 4: return case 5: return case 6: return case 7: return case 8: return case 9: return case 10: return case 11: return ( setIsGroundTruth(true)} gridSaveRef={gridSaveRef} /> ) default: return null } } return (
openSession(sid)} onNewSession={handleNewSession} onDeleteSession={deleteSession} onRenameSession={renameSession} onUpdateCategory={updateCategory} /> {sessionId && sessionName && ( updateCategory(sessionId, cat)} /> )}
{renderStep()}
) } export default function OcrKombiPage() { return ( Lade...}> ) }