import { EngineStatus, LlmEngine, LocalEngines } from '@janhq/core' import { Button, ScrollArea, Table, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, } from '@janhq/joi' import useEngineInit from '@/hooks/useEngineInit' import useEngineQuery from '@/hooks/useEngineQuery' import LoadingIndicator from '@/screens/HubScreen2/components/LoadingIndicator' const getStatusTitle = (status: string) => { const normalized = status.charAt(0).toUpperCase() + status.slice(1) return normalized.replaceAll('_', ' ') } const EngineSetting: React.FC = () => { const { isLoading, data } = useEngineQuery() const initializeEngine = useEngineInit() if (isLoading) { return (
) } if (!data) { return (
Failed to get engine statuses..
) } return (
Engines Engine name Description Version Status Install {data.map((engineStatus) => { return ( {engineStatus.name} {engineStatus.description} {engineStatus.version} {getStatusTitle(engineStatus.status)} {LocalEngines.some((e) => e === engineStatus.name) && [EngineStatus.Ready, EngineStatus.NotInitialized].includes( engineStatus.status as EngineStatus ) ? ( ) : ( )} ) })}
) } export default EngineSetting