mirror of
https://github.com/LifeArchiveProject/WeChatDataAnalysis.git
synced 2026-06-18 15:54:08 +08:00
- 将聊天页从超大单文件拆分为会话列表、会话面板、消息列表、消息项和覆盖层组件\n- 抽离会话、消息、搜索、导出、编辑、历史窗口等组合式逻辑\n- 下沉消息格式化、消息归一化、聊天记录解析与文件图标等工具模块\n- 新增 chat.css 并在 Nuxt 中注册,统一聊天页样式
51 lines
1.1 KiB
JavaScript
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 ''
|
|
}
|
|
}
|