import { EngineManager, ErrorCode, MessageStatus, ThreadMessage, } from '@janhq/core' import { useAtomValue, useSetAtom } from 'jotai' import AutoLink from '@/containers/AutoLink' import ModalTroubleShooting, { modalTroubleShootingAtom, } from '@/containers/ModalTroubleShoot' import { MainViewState } from '@/constants/screens' import { isLocalEngine } from '@/utils/modelEngine' import { mainViewStateAtom } from '@/helpers/atoms/App.atom' import { activeAssistantAtom } from '@/helpers/atoms/Assistant.atom' import { selectedSettingAtom } from '@/helpers/atoms/Setting.atom' const ErrorMessage = ({ message }: { message: ThreadMessage }) => { const setModalTroubleShooting = useSetAtom(modalTroubleShootingAtom) const setMainState = useSetAtom(mainViewStateAtom) const setSelectedSettingScreen = useSetAtom(selectedSettingAtom) const activeAssistant = useAtomValue(activeAssistantAtom) const defaultDesc = () => { return ( <>
{`Something's wrong.`} Access setModalTroubleShooting(true)} > troubleshooting assistance now.
{message.content[0]?.text?.value === 'Failed to fetch' &&
engine &&
!isLocalEngine(String(engine?.name)) ? (
No internet connection.
Switch to an on-device model or
check connection.
) : (
<>
{message?.content[0]?.text?.value && (