jan/web/hooks/useGetAssistants.ts
NamH 84fb5ef346
fix(Thread): #1042 allow create new thread by clicking Use in Jan Hub (#1103)
Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-12-19 17:06:57 +07:00

32 lines
720 B
TypeScript

import { useEffect, useState } from 'react'
import { Assistant, ExtensionType, AssistantExtension } from '@janhq/core'
import { extensionManager } from '@/extension/ExtensionManager'
export const getAssistants = async (): Promise<Assistant[]> =>
extensionManager
.get<AssistantExtension>(ExtensionType.Assistant)
?.getAssistants() ?? []
/**
* Hooks for get assistants
*
* @returns assistants
*/
export default function useGetAssistants() {
const [assistants, setAssistants] = useState<Assistant[]>([])
useEffect(() => {
getAssistants()
.then((data) => {
setAssistants(data)
})
.catch((err) => {
console.error(err)
})
}, [])
return { assistants }
}