import FileStatusBadge from '@/components/file-status-badge'; import { Button } from '@/components/ui/button'; import { Modal } from '@/components/ui/modal/modal'; import { Tooltip, TooltipContent, TooltipTrigger, } from '@/components/ui/tooltip'; import { RunningStatusMap } from '@/constants/knowledge'; import { useTranslate } from '@/hooks/common-hooks'; import React, { useMemo } from 'react'; import reactStringReplace from 'react-string-replace'; import { RunningStatus } from './dataset/constant'; export interface ILogInfo { fileType?: string; uploadedBy?: string; uploadDate?: string; processBeginAt?: string; chunkNumber?: number; taskId?: string; fileName: string; fileSize?: string; source?: string; task?: string; status?: RunningStatus; startTime?: string; endTime?: string; duration?: string; details: string; } interface ProcessLogModalProps { visible: boolean; onCancel: () => void; logInfo: ILogInfo; title: string; } const InfoItem: React.FC<{ label: string; value: string | React.ReactNode; className?: string; }> = ({ label, value, className = '' }) => { return (