mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2025-12-26 03:31:24 +08:00
22 lines
853 B
TypeScript
22 lines
853 B
TypeScript
import { PreprocessProvider } from '@types'
|
|
|
|
import BasePreprocessProvider from './BasePreprocessProvider'
|
|
import DefaultPreprocessProvider from './DefaultPreprocessProvider'
|
|
import Doc2xPreprocessProvider from './Doc2xPreprocessProvider'
|
|
import MineruPreprocessProvider from './MineruPreprocessProvider'
|
|
import MistralPreprocessProvider from './MistralPreprocessProvider'
|
|
export default class PreprocessProviderFactory {
|
|
static create(provider: PreprocessProvider, userId?: string): BasePreprocessProvider {
|
|
switch (provider.id) {
|
|
case 'doc2x':
|
|
return new Doc2xPreprocessProvider(provider)
|
|
case 'mistral':
|
|
return new MistralPreprocessProvider(provider)
|
|
case 'mineru':
|
|
return new MineruPreprocessProvider(provider, userId)
|
|
default:
|
|
return new DefaultPreprocessProvider(provider)
|
|
}
|
|
}
|
|
}
|