'use client' import React from 'react' import { useContext } from 'use-context-selector' import { useTranslation } from 'react-i18next' import type { Plugin } from '@/app/components/plugins/types' import InstallFromMarketplace from '@/app/components/plugins/install-plugin/install-from-marketplace' import I18n from '@/context/i18n' import { useBoolean } from 'ahooks' import { BlockEnum } from '../../types' import BlockIcon from '../../block-icon' type UninstalledItemProps = { payload: Plugin } const UninstalledItem = ({ payload, }: UninstalledItemProps) => { const { t } = useTranslation() const { locale } = useContext(I18n) const getLocalizedText = (obj: Record | undefined) => obj?.[locale] || obj?.['en-US'] || obj?.en_US || '' const [isShowInstallModal, { setTrue: showInstallModal, setFalse: hideInstallModal, }] = useBoolean(false) return (
{getLocalizedText(payload.label)} {payload.org}
{t('plugin.installAction')}
{isShowInstallModal && ( )}
) } export default React.memo(UninstalledItem)