Files
WeChatDataAnalysis/frontend/lib/chat/file-icons.js
T
2977094657 965cbd1aa5 refactor(chat-ui): 拆分聊天页组件并抽离组合式逻辑
- 将聊天页从超大单文件拆分为会话列表、会话面板、消息列表、消息项和覆盖层组件\n- 抽离会话、消息、搜索、导出、编辑、历史窗口等组合式逻辑\n- 下沉消息格式化、消息归一化、聊天记录解析与文件图标等工具模块\n- 新增 chat.css 并在 Nuxt 中注册,统一聊天页样式
2026-03-15 23:38:31 +08:00

51 lines
1.1 KiB
JavaScript

import zipIconUrl from '~/assets/images/wechat/zip.png'
import pdfIconUrl from '~/assets/images/wechat/pdf.png'
import wordIconUrl from '~/assets/images/wechat/word.png'
import excelIconUrl from '~/assets/images/wechat/excel.png'
export const getFileIconKind = (fileName) => {
if (!fileName) return 'default'
const ext = String(fileName).split('.').pop()?.toLowerCase() || ''
switch (ext) {
case 'pdf':
return 'pdf'
case 'zip':
case 'rar':
case '7z':
case 'tar':
case 'gz':
return 'zip'
case 'doc':
case 'docx':
return 'doc'
case 'xls':
case 'xlsx':
case 'csv':
return 'xls'
case 'ppt':
case 'pptx':
return 'ppt'
case 'txt':
case 'md':
case 'log':
return 'txt'
default:
return 'default'
}
}
export const getFileIconUrl = (fileName) => {
switch (getFileIconKind(fileName)) {
case 'pdf':
return pdfIconUrl
case 'doc':
return wordIconUrl
case 'xls':
return excelIconUrl
case 'zip':
return zipIconUrl
default:
return ''
}
}