/** * Breadcrumb - 路径导航组件(本地支持 Windows / UNC,远程保持 POSIX) */ import { ChevronRight, Home } from 'lucide-react' import { useTranslation } from 'react-i18next' import { splitPathSegments } from '../../utils/localPath' interface BreadcrumbProps { path: string isLocal?: boolean onNavigate: (p: string) => void onHome: () => void } export function Breadcrumb({ path, isLocal = false, onNavigate, onHome }: BreadcrumbProps) { const { t } = useTranslation('sftp') const { root, parts, join } = splitPathSegments(path || (isLocal ? '' : '/'), isLocal) const rootLabel = isLocal && root !== '/' ? root.replace(/\\$/, '') || root : '/' return (
{parts.map((part, index) => ( ))}
) }