import { Fragment } from 'react' import { Badge, Avatar, AvatarFallback, AvatarImage, Button, Modal, ModalTrigger, ScrollArea, ModalClose, ModalFooter, ModalContent, ModalHeader, ModalTitle, } from '@janhq/uikit' import { MainViewState } from '@/constants/screens' import { useActiveModel } from '@/hooks/useActiveModel' import useDeleteModel from '@/hooks/useDeleteModel' import { useDownloadState } from '@/hooks/useDownloadState' import { useGetDownloadedModels } from '@/hooks/useGetDownloadedModels' import { useMainViewState } from '@/hooks/useMainViewState' import BlankStateMyModel from '@/screens/MyModels/BlankState' import { toGigabytes } from '@/utils/converter' const MyModelsScreen = () => { const { downloadedModels } = useGetDownloadedModels() const { downloadStates } = useDownloadState() const { setMainViewState } = useMainViewState() const { deleteModel } = useDeleteModel() const { activeModel, startModel, stopModel, stateModel } = useActiveModel() if (downloadedModels.length === 0) return const onModelActionClick = (modelId: string) => { if (activeModel && activeModel._id === modelId) { stopModel(modelId) } else { startModel(modelId) } } return (
{downloadedModels.map((model, i) => { const isActiveModel = stateModel.model === model._id return (
{model.author.charAt(0)}

{model.author}

{model.productName}

v{model.version} GGUF {toGigabytes(model.size)}

{model.longDescription}

Are you sure?

Delete model {model.productName}, v{model.version},{' '} {toGigabytes(model.size)}.

) })}

Download more model?

You have {downloadedModels.length} model(s) downloaded.  {downloadStates.length > 0 && ( And {downloadStates.length} downloading progress. )}

) } export default MyModelsScreen