From 7ea7e7134dd05a085dab54fbef6e04ea90e16ae0 Mon Sep 17 00:00:00 2001 From: icarus Date: Mon, 20 Oct 2025 07:47:11 +0800 Subject: [PATCH] refactor(ocr): add BuiltinOcrProviderIds constant for provider ids Use objectValues utility to create a frozen array of provider ids for better maintainability and type safety --- src/renderer/src/types/ocr.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/renderer/src/types/ocr.ts b/src/renderer/src/types/ocr.ts index aa67aa24f4..0f6e9d1a86 100644 --- a/src/renderer/src/types/ocr.ts +++ b/src/renderer/src/types/ocr.ts @@ -2,7 +2,7 @@ import type Tesseract from 'tesseract.js' import * as z from 'zod' import type { FileMetadata, ImageFileMetadata, TranslateLanguageCode } from '.' -import { isImageFileMetadata, TranslateLanguageCodeSchema } from '.' +import { isImageFileMetadata, objectValues, TranslateLanguageCodeSchema } from '.' export const BuiltinOcrProviderIdMap = { tesseract: 'tesseract', @@ -11,6 +11,8 @@ export const BuiltinOcrProviderIdMap = { ovocr: 'ovocr' } as const satisfies Record +export const BuiltinOcrProviderIds = Object.freeze(objectValues(BuiltinOcrProviderIdMap)) + export const BuiltinOcrProviderIdSchema = z.enum(['tesseract', 'system', 'paddleocr', 'ovocr']) export type BuiltinOcrProviderId = z.infer