Allow users to specify a Tesseract language string (e.g. jpn+jpn_vert)
on a per-extraction basis, overriding the global OCR language setting.
- Add payload column to ai_jobs table (migration) to carry per-call data
- Thread ocrLanguages payload through enqueueJob → processNextJob → extractItemText
- New GET /api/ai-settings/ocr endpoint (requireAuth) returns { ocrMode, ocrLanguages }
- ImageLightbox fetches OCR settings and shows a language input next to the
Extract Text button when mode is hybrid or tesseract (hidden for llm-only)
- MixedView fetches OCR settings and passes them down to EntryTile; kebab
Extract Text on images shows an inline language prompt before dispatching the job
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
12 lines
394 B
TypeScript
12 lines
394 B
TypeScript
import { NextRequest, NextResponse } from 'next/server'
|
|
import { requireAuth } from '@/lib/auth'
|
|
import { getAiConfig } from '@/lib/app-settings'
|
|
|
|
export async function GET(request: NextRequest) {
|
|
const auth = await requireAuth(request)
|
|
if (auth instanceof NextResponse) return auth
|
|
|
|
const { ocrMode, ocrLanguages } = getAiConfig()
|
|
return NextResponse.json({ ocrMode, ocrLanguages })
|
|
}
|