import env from '#start/env' import type { OcrProvider } from '#services/ocr/ocr_provider' import { MockOcrProvider } from '#services/ocr/mock_ocr_provider' import { MistralOcrProvider } from '#services/ocr/mistral_ocr_provider' /** * Résout l'implémentation OCR à utiliser selon OCR_PROVIDER. * * - `mock` (default) : MockOcrProvider, données plausibles depuis filename. * Compatible avec /invoices/upload en mode JSON `{filenames}`. * - `mistral` : MistralOcrProvider. Nécessite un PDF stocké (multipart * upload) + MISTRAL_API_KEY. Pas compatible avec le mode JSON. */ export function getOcrProvider(): OcrProvider { const provider = env.get('OCR_PROVIDER', 'mock') if (provider === 'mistral') { return new MistralOcrProvider() } return new MockOcrProvider() }