diff --git a/frontend/components/Scanner.tsx b/frontend/components/Scanner.tsx index 69d17b97..91204b43 100644 --- a/frontend/components/Scanner.tsx +++ b/frontend/components/Scanner.tsx @@ -165,7 +165,7 @@ export default function Scanner({ onScanSuccess, onOCRMatch, paused }: ScannerPr // Lazy-load tesseract.js only when OCR is actually needed const { createWorker } = await import('tesseract.js'); const workerPromise = createWorker('eng'); - const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error("OCR Engine timeout")), 8000)); + const timeoutPromise = new Promise((_, reject) => setTimeout(() => reject(new Error("OCR Engine timeout")), 20000)); const worker = await Promise.race([workerPromise, timeoutPromise]) as any; const dataUrl = canvas.toDataURL('image/jpeg', 0.85); diff --git a/frontend/next.config.mjs b/frontend/next.config.mjs index edf79256..5d746c40 100644 --- a/frontend/next.config.mjs +++ b/frontend/next.config.mjs @@ -10,6 +10,11 @@ const withPWA = withPWAInit({ /** @type {import('next').NextConfig} */ const nextConfig = { output: "standalone", + allowedDevOrigins: [ + "localhost", + "127.0.0.1", + "*.local", + ], }; export default withPWA(nextConfig);