'use client' import type { FC } from 'react' import type { InstallStatus, Plugin, VersionProps } from '../../../types' import { Button } from '@langgenius/dify-ui/button' import * as React from 'react' import { useTranslation } from 'react-i18next' import Badge, { BadgeState } from '@/app/components/base/badge/index' import Card from '@/app/components/plugins/card' import { MARKETPLACE_API_PREFIX } from '@/config' import useGetIcon from '../../base/use-get-icon' import Version from '../../base/version' type Props = Readonly<{ list: Plugin[] installStatus: InstallStatus[] versionInfo?: VersionProps[] onCancel: () => void isHideButton?: boolean }> const Installed: FC = ({ list, installStatus, versionInfo, onCancel, isHideButton, }) => { const { t } = useTranslation() const { getIconUrl } = useGetIcon() return ( <>

{t('installModal.installedSuccessfullyCountDesc', { ns: 'plugin', num: list.length })}

{list.map((plugin, index) => { const pluginVersionInfo = versionInfo?.[index] return ( : {plugin.version} : null} compact /> ) })}
{/* Action Buttons */} {!isHideButton && (
)} ) } export default React.memo(Installed)