diff --git a/src/utils/file.ts b/src/utils/file.ts index c8bccbd30..e40651932 100644 --- a/src/utils/file.ts +++ b/src/utils/file.ts @@ -17,3 +17,21 @@ export const isImage = (filename: string): boolean => { const ext = filename.split('.').pop()?.toLowerCase() || '' return ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'webp', 'svg'].includes(ext) } + +/** 格式化文件大小 */ +export const formatFileSize = (bytes: number): string => { + if (bytes === 0) return '0 B' + const k = 1024 + const sizes = ['B', 'KB', 'MB', 'GB'] + const i = Math.floor(Math.log(bytes) / Math.log(k)) + return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i] +} + +/** 获取文件图标 */ +export const getFileIcon = (filename: string): string => { + const ext = filename.split('.').pop()?.toLowerCase() || '' + if (isImage(ext)) { + return 'ep:picture' + } + return 'ep:document' +} diff --git a/src/views/ai/chat/index/components/message/MessageFiles.vue b/src/views/ai/chat/index/components/message/MessageFiles.vue index 9362c994b..3a9982430 100644 --- a/src/views/ai/chat/index/components/message/MessageFiles.vue +++ b/src/views/ai/chat/index/components/message/MessageFiles.vue @@ -23,7 +23,7 @@