import { renderWorkspacePathSegments } from '../utils'; import type { WorkspaceHoverCardState } from '../types'; import './WorkspaceOverlay.css'; interface WorkspaceHoverCardProps { state: WorkspaceHoverCardState | null; isZh: boolean; formatWorkspaceTime: (raw: string | undefined, isZh: boolean) => string; formatBytes: (value: number) => string; } export function WorkspaceHoverCard({ state, isZh, formatWorkspaceTime, formatBytes, }: WorkspaceHoverCardProps) { if (!state) return null; return (
{isZh ? '全称' : 'Name'} {state.node.name || '-'}
{isZh ? '完整路径' : 'Full Path'} {renderWorkspacePathSegments( `/root/.nanobot/workspace/${String(state.node.path || '').replace(/^\/+/, '')}`, 'hover-path', )}
{isZh ? '创建时间' : 'Created'} {formatWorkspaceTime(state.node.ctime, isZh)}
{isZh ? '修改时间' : 'Modified'} {formatWorkspaceTime(state.node.mtime, isZh)}
{isZh ? '文件大小' : 'Size'} {Number.isFinite(Number(state.node.size)) ? formatBytes(Number(state.node.size)) : '-'}
); }