import type { EnvironmentVariable } from '@/app/components/workflow/types' import { cn } from '@langgenius/dify-ui/cn' import { RiDeleteBinLine, RiEditLine, RiLock2Line } from '@remixicon/react' import { capitalize } from 'es-toolkit/string' import { memo, useState } from 'react' import { useTranslation } from 'react-i18next' import { Env } from '@/app/components/base/icons/src/vender/line/others' import { useStore } from '@/app/components/workflow/store' type EnvItemProps = { env: EnvironmentVariable onEdit: (env: EnvironmentVariable) => void onDelete: (env: EnvironmentVariable) => void } const EnvItem = ({ env, onEdit, onDelete }: EnvItemProps) => { const { t } = useTranslation() const envSecrets = useStore((s) => s.envSecrets) const [destructive, setDestructive] = useState(false) const typeLabel = env.value_type === 'llm' ? t(($) => $['blocks.llm'], { ns: 'workflow' }) : capitalize(env.value_type) const displayValue = env.value_type === 'secret' ? envSecrets[env.id] : typeof env.value === 'object' ? env.value.name : env.value return (