37 lines
954 B
TypeScript
37 lines
954 B
TypeScript
import { useCallback, useState } from 'react'
|
|
|
|
import { HuggingFaceRepoData } from '@janhq/core'
|
|
|
|
export const useGetHFRepoData = () => {
|
|
const [error, setError] = useState<string | undefined>(undefined)
|
|
const [loading, setLoading] = useState(false)
|
|
|
|
const getHfRepoData = useCallback(async (repoId: string) => {
|
|
try {
|
|
setError(undefined)
|
|
setLoading(true)
|
|
const data = await extensionGetHfRepoData(repoId)
|
|
return data
|
|
} catch (err) {
|
|
console.error(err)
|
|
if (err instanceof Error) {
|
|
setError(err.message)
|
|
}
|
|
throw err
|
|
} finally {
|
|
setLoading(false)
|
|
}
|
|
}, [])
|
|
|
|
return { loading, error, getHfRepoData }
|
|
}
|
|
|
|
const extensionGetHfRepoData = async (
|
|
repoId: string
|
|
): Promise<HuggingFaceRepoData | undefined> => {
|
|
return Promise.resolve(undefined)
|
|
// return extensionManager
|
|
// .get<ModelExtension>(ExtensionTypeEnum.Model)
|
|
// ?.fetchHuggingFaceRepoData(repoId)
|
|
}
|