import { EngineManager } from '@janhq/core' import { useAtomValue, useSetAtom } from 'jotai' import ModalTroubleShooting, { modalTroubleShootingAtom, } from '@/containers/ModalTroubleShoot' import { MainViewState } from '@/constants/screens' import { loadModelErrorAtom } from '@/hooks/useActiveModel' import { mainViewStateAtom } from '@/helpers/atoms/App.atom' import { selectedSettingAtom } from '@/helpers/atoms/Setting.atom' import { activeThreadAtom } from '@/helpers/atoms/Thread.atom' const LoadModelError = () => { const setModalTroubleShooting = useSetAtom(modalTroubleShootingAtom) const loadModelError = useAtomValue(loadModelErrorAtom) const setMainState = useSetAtom(mainViewStateAtom) const setSelectedSettingScreen = useSetAtom(selectedSettingAtom) const activeThread = useAtomValue(activeThreadAtom) const ErrorMessage = () => { if ( typeof loadModelError?.includes === 'function' && loadModelError.includes('EXTENSION_IS_NOT_INSTALLED') ) { return (
Model is currently unavailable. Please switch to a different model or install the{' '} { setMainState(MainViewState.Settings) if (activeThread?.assistants[0]?.model.engine) { const engine = EngineManager.instance().get( activeThread.assistants[0].model.engine ) engine?.name && setSelectedSettingScreen(engine.name) } }} > {loadModelError.split('::')[1] ?? ''} {' '} to continue using it.
) } else { return ({loadModelError}
)}{`Something's wrong.`} Access setModalTroubleShooting(true)} > troubleshooting assistance now.