Files
opsxshell/shared/types/sftp.types.ts
T
Logan.Li b0d0e3a5f3 feat(i18n): add multi-language support (ja/ko/vi/ru/zh-TW) with system auto-detection
- Extend AppLanguage to 7 locales: zh-CN, zh-TW, en, ja, ko, vi, ru
- Auto-detect system language via navigator.languages; fallback to English
- Add BCP47 locale mapping for date formatting and sorting
- Create 50 translation JSON files (5 languages × 10 namespaces, 1137 keys each)
- Update language selector with native language names
- Extend locale key parity test to cover all 7 languages (70 assertions)
- Add VNC/RDP desktop, serial terminal, AI agent, port forwarding, and SFTP features
- Add credential encryption, host metrics, session backup crypto, and zmodem bridge
- Update Rust backend: desktop services, host metrics, SSH/SFTP enhancements
2026-08-12 00:07:48 +08:00

50 lines
1.0 KiB
TypeScript

/**
* SFTP Types - 统一的 SFTP 类型定义
* 在主进程和渲染进程间共享
*/
// 文件项
export interface FileItem {
name: string
path: string
type: 'file' | 'directory' | 'symlink'
size: number
modified: number // Unix timestamp
permissions: string
}
// 传输任务
export interface TransferTask {
id: string
type: 'upload' | 'download'
fileName: string
filePath: string
status: 'pending' | 'transferring' | 'completed' | 'failed' | 'canceled'
progress: number
error?: string
total: number
transferred: number
speed?: number // bytes per second
startTime?: number
/** Directory recursive transfer (upload_dir / download_dir). */
isDirectory?: boolean
}
// 传输进度
export interface TransferProgress {
taskId: string
transferred: number
total: number
speed: number
}
// 文件列表排序
export type SortField = 'name' | 'size' | 'modified' | 'type'
export type SortOrder = 'asc' | 'desc'
// SFTP 操作结果
export interface SFTPOperationResult {
success: boolean
error?: string
}