'use client'
import { useCallback, useEffect, useMemo, useRef, useState } from 'react'
import dynamic from 'next/dynamic'
import { usePixelWordPositions } from './usePixelWordPositions'
import type { EditableCell, UndoAction, StepReconstructionProps } from './StepReconstructionTypes'
import { KLAUSUR_API } from './StepReconstructionTypes'
import { useReconstructionData } from './useReconstructionData'
import { ReconstructionToolbar } from './ReconstructionToolbar'
import { ReconstructionOverlay } from './ReconstructionOverlay'
import { ReconstructionSimpleView } from './ReconstructionSimpleView'
// Lazy-load Fabric.js canvas editor (SSR-incompatible)
const FabricReconstructionCanvas = dynamic(
() => import('./FabricReconstructionCanvas').then(m => ({ default: m.FabricReconstructionCanvas })),
{ ssr: false, loading: () =>
Editor wird geladen...
}
)
export function StepReconstruction({ sessionId, onNext }: StepReconstructionProps) {
const [editedTexts, setEditedTexts] = useState