import { Badge, Box, Flex, IconButton, Text } from '@invoke-ai/ui-library'; import { memo, useCallback } from 'react'; import { useTranslation } from 'react-i18next'; import { PiPlusBold } from 'react-icons/pi'; import type { ScanFolderResponse } from 'services/api/endpoints/models'; type Props = { result: ScanFolderResponse[number]; installModel: (source: string) => void; }; export const ScanModelResultItem = memo(({ result, installModel }: Props) => { const { t } = useTranslation(); const handleInstall = useCallback(() => { installModel(result.path); }, [installModel, result]); return ( {result.path.split('\\').slice(-1)[0]} {result.path} {result.is_installed ? ( {t('common.installed')} ) : ( } onClick={handleInstall} size="sm" /> )} ); }); ScanModelResultItem.displayName = 'ScanModelResultItem';