58 lines
2.5 KiB
TypeScript
58 lines
2.5 KiB
TypeScript
import { useCallback } from 'react'
|
|
import {
|
|
useActiveModelCredential,
|
|
useActiveProviderCredential,
|
|
useAddModelCredential,
|
|
useAddProviderCredential,
|
|
useDeleteModelCredential,
|
|
useDeleteProviderCredential,
|
|
useEditModelCredential,
|
|
useEditProviderCredential,
|
|
useGetModelCredential,
|
|
useGetProviderCredential,
|
|
} from '@/service/use-models'
|
|
import type {
|
|
CustomModel,
|
|
} from '@/app/components/header/account-setting/model-provider-page/declarations'
|
|
|
|
export const useGetCredential = (provider: string, isModelCredential?: boolean, credentialId?: string, model?: CustomModel, configFrom?: string) => {
|
|
const providerData = useGetProviderCredential(!isModelCredential && !!credentialId, provider, credentialId)
|
|
const modelData = useGetModelCredential(!!isModelCredential && (!!credentialId || !!model), provider, credentialId, model?.model, model?.model_type, configFrom)
|
|
return isModelCredential ? modelData : providerData
|
|
}
|
|
|
|
export const useAuthService = (provider: string) => {
|
|
const { mutateAsync: addProviderCredential } = useAddProviderCredential(provider)
|
|
const { mutateAsync: editProviderCredential } = useEditProviderCredential(provider)
|
|
const { mutateAsync: deleteProviderCredential } = useDeleteProviderCredential(provider)
|
|
const { mutateAsync: activeProviderCredential } = useActiveProviderCredential(provider)
|
|
|
|
const { mutateAsync: addModelCredential } = useAddModelCredential(provider)
|
|
const { mutateAsync: activeModelCredential } = useActiveModelCredential(provider)
|
|
const { mutateAsync: deleteModelCredential } = useDeleteModelCredential(provider)
|
|
const { mutateAsync: editModelCredential } = useEditModelCredential(provider)
|
|
|
|
const getAddCredentialService = useCallback((isModel: boolean) => {
|
|
return isModel ? addModelCredential : addProviderCredential
|
|
}, [addModelCredential, addProviderCredential])
|
|
|
|
const getEditCredentialService = useCallback((isModel: boolean) => {
|
|
return isModel ? editModelCredential : editProviderCredential
|
|
}, [editModelCredential, editProviderCredential])
|
|
|
|
const getDeleteCredentialService = useCallback((isModel: boolean) => {
|
|
return isModel ? deleteModelCredential : deleteProviderCredential
|
|
}, [deleteModelCredential, deleteProviderCredential])
|
|
|
|
const getActiveCredentialService = useCallback((isModel: boolean) => {
|
|
return isModel ? activeModelCredential : activeProviderCredential
|
|
}, [activeModelCredential, activeProviderCredential])
|
|
|
|
return {
|
|
getAddCredentialService,
|
|
getEditCredentialService,
|
|
getDeleteCredentialService,
|
|
getActiveCredentialService,
|
|
}
|
|
}
|