'use client' import { cn } from '@langgenius/dify-ui/cn' import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from '@langgenius/dify-ui/dropdown-menu' import * as React from 'react' import { useTranslation } from 'react-i18next' import { Pin02 } from '../../base/icons/src/vender/line/general' import s from './style.module.css' type IItemOperationProps = { className?: string isPinned: boolean isShowRenameConversation?: boolean onRenameConversation?: () => void isShowDelete: boolean togglePin: () => void onDelete: () => void } function ItemOperation({ className, isPinned, togglePin, isShowRenameConversation, onRenameConversation, isShowDelete, onDelete, }: IItemOperationProps) { const { t } = useTranslation('explore') const { t: tCommon } = useTranslation('common') return ( { e.stopPropagation() }} > {tCommon(($) => $['operation.more'])} { e.stopPropagation() togglePin() }} > {isPinned ? t(($) => $['sidebar.action.unpin']) : t(($) => $['sidebar.action.pin'])} {isShowRenameConversation && ( { e.stopPropagation() onRenameConversation?.() }} > {t(($) => $['sidebar.action.rename'])} )} {isShowDelete && ( { e.stopPropagation() onDelete() }} > {t(($) => $['sidebar.action.delete'])} )} ) } export default React.memo(ItemOperation)