diff --git a/src/@core/utils/formatters.ts b/src/@core/utils/formatters.ts index a8de8d7d..c393b32f 100644 --- a/src/@core/utils/formatters.ts +++ b/src/@core/utils/formatters.ts @@ -95,3 +95,17 @@ export function parseDate(dateString: string): Date { return new Date(year, month - 1, day) } + +// 文件大小格式化 +export function formatBytes(bytes: number, decimals = 2) { + if (bytes === 0) + return '0 bytes' + + const k = 1024 + const dm = decimals < 0 ? 0 : decimals + const sizes = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'] + + const i = Math.floor(Math.log(bytes) / Math.log(k)) + + return `${parseFloat((bytes / k ** i).toFixed(dm))} ${sizes[i]}` +} diff --git a/src/api/types.ts b/src/api/types.ts index 80bce242..38b90409 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -897,3 +897,21 @@ export interface Rss { // 状态 0-停用,1-启用 state?: number } + +// 文件浏览接口 +export interface EndPoints { + list: any + mkdir: any + delete: any +} + +// 文件浏览项目 +export interface FileItem { + type: string + name: string + basename: string + path: string + extension: string + size: number + children: [] +} diff --git a/src/components/FileBrowser.vue b/src/components/FileBrowser.vue index cefb5f92..75a1bf94 100644 --- a/src/components/FileBrowser.vue +++ b/src/components/FileBrowser.vue @@ -1,24 +1,39 @@ - - - diff --git a/src/components/filebrowser/Confirm.vue b/src/components/filebrowser/Confirm.vue deleted file mode 100644 index f7f1f580..00000000 --- a/src/components/filebrowser/Confirm.vue +++ /dev/null @@ -1,78 +0,0 @@ - - - diff --git a/src/components/filebrowser/List.vue b/src/components/filebrowser/List.vue index c350a527..3dc0803f 100644 --- a/src/components/filebrowser/List.vue +++ b/src/components/filebrowser/List.vue @@ -1,227 +1,225 @@ - diff --git a/src/components/filebrowser/Toolbar.vue b/src/components/filebrowser/Toolbar.vue index 2a7c3d08..e510b5dd 100644 --- a/src/components/filebrowser/Toolbar.vue +++ b/src/components/filebrowser/Toolbar.vue @@ -1,194 +1,163 @@ -