mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-01-08 06:19:05 +08:00
feat(ocr): 添加更新OCR提供者配置的功能
This commit is contained in:
parent
fd5c06d46f
commit
0be8b73ccf
@ -1,6 +1,6 @@
|
|||||||
import { createSlice, PayloadAction } from '@reduxjs/toolkit'
|
import { createSlice, PayloadAction } from '@reduxjs/toolkit'
|
||||||
import { BUILTIN_OCR_PROVIDERS, DEFAULT_OCR_PROVIDER } from '@renderer/config/ocr'
|
import { BUILTIN_OCR_PROVIDERS, DEFAULT_OCR_PROVIDER } from '@renderer/config/ocr'
|
||||||
import { ImageOcrProvider, OcrProvider } from '@renderer/types'
|
import { ImageOcrProvider, OcrProvider, OcrProviderConfig } from '@renderer/types'
|
||||||
|
|
||||||
export interface OcrState {
|
export interface OcrState {
|
||||||
providers: OcrProvider[]
|
providers: OcrProvider[]
|
||||||
@ -31,13 +31,31 @@ const ocrSlice = createSlice({
|
|||||||
Object.assign(state.providers[index], action.payload)
|
Object.assign(state.providers[index], action.payload)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
updateOcrProviderConfig(
|
||||||
|
state,
|
||||||
|
action: PayloadAction<{ id: string; update: Omit<Partial<OcrProviderConfig>, 'id'> }>
|
||||||
|
) {
|
||||||
|
const index = state.providers.findIndex((provider) => provider.id === action.payload.id)
|
||||||
|
if (index !== -1) {
|
||||||
|
if (!state.providers[index].config) {
|
||||||
|
state.providers[index].config = {}
|
||||||
|
}
|
||||||
|
Object.assign(state.providers[index].config, action.payload.update)
|
||||||
|
}
|
||||||
|
},
|
||||||
setImageOcrProvider(state, action: PayloadAction<ImageOcrProvider>) {
|
setImageOcrProvider(state, action: PayloadAction<ImageOcrProvider>) {
|
||||||
state.imageProvider = action.payload
|
state.imageProvider = action.payload
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
export const { setOcrProviders, addOcrProvider, removeOcrProvider, updateOcrProvider, setImageOcrProvider } =
|
export const {
|
||||||
ocrSlice.actions
|
setOcrProviders,
|
||||||
|
addOcrProvider,
|
||||||
|
removeOcrProvider,
|
||||||
|
updateOcrProvider,
|
||||||
|
updateOcrProviderConfig,
|
||||||
|
setImageOcrProvider
|
||||||
|
} = ocrSlice.actions
|
||||||
|
|
||||||
export default ocrSlice.reducer
|
export default ocrSlice.reducer
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user