mirror of
https://github.com/kuaifan/dootask.git
synced 2025-12-13 20:12:48 +00:00
perf: 优化下载工具
This commit is contained in:
parent
a8a54593e2
commit
d4e754d601
408
electron/electron-down.js
vendored
408
electron/electron-down.js
vendored
@ -11,17 +11,18 @@ const store = new Store();
|
|||||||
const downloadManager = new DownloadManager();
|
const downloadManager = new DownloadManager();
|
||||||
let downloadWindow = null;
|
let downloadWindow = null;
|
||||||
|
|
||||||
function initialize(options = {}) {
|
function initialize(onStarted= null) {
|
||||||
// 下载配置
|
// 下载配置
|
||||||
electronDl({
|
electronDl({
|
||||||
showBadge: false,
|
showBadge: false,
|
||||||
showProgressBar: false,
|
showProgressBar: false,
|
||||||
|
|
||||||
...options,
|
|
||||||
|
|
||||||
onStarted: (item) => {
|
onStarted: (item) => {
|
||||||
downloadManager.add(item);
|
downloadManager.add(item);
|
||||||
syncDownloadItems();
|
syncDownloadItems();
|
||||||
|
if (typeof onStarted === 'function') {
|
||||||
|
onStarted(item)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
onCancel: (item) => {
|
onCancel: (item) => {
|
||||||
downloadManager.refresh(item.getSavePath())
|
downloadManager.refresh(item.getSavePath())
|
||||||
@ -110,11 +111,406 @@ function getLanguagePack(codeOrPack) {
|
|||||||
return codeOrPack;
|
return codeOrPack;
|
||||||
}
|
}
|
||||||
const code = (codeOrPack || 'zh').toString();
|
const code = (codeOrPack || 'zh').toString();
|
||||||
return {
|
const packs = {
|
||||||
code,
|
zh: {
|
||||||
|
// 语言设置
|
||||||
|
locale: 'zh-CN',
|
||||||
title: '下载管理器',
|
title: '下载管理器',
|
||||||
// todo
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: '搜索文件名或链接...',
|
||||||
|
noItems: '暂无任务',
|
||||||
|
noSearchResult: '未找到匹配的结果',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: '刷新',
|
||||||
|
removeAll: "清空历史",
|
||||||
|
copyLink: '复制链接',
|
||||||
|
resume: '继续',
|
||||||
|
pause: '暂停',
|
||||||
|
cancel: '取消',
|
||||||
|
remove: '删除',
|
||||||
|
showInFolder: '显示在文件夹',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: '下载中',
|
||||||
|
completed: '已完成',
|
||||||
|
cancelled: '已取消',
|
||||||
|
interrupted: '失败',
|
||||||
|
paused: '已暂停',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "已复制",
|
||||||
|
refreshSuccess: '刷新成功',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: '确定要取消此下载任务并删除记录吗?',
|
||||||
|
confirmRemove: '确定要从历史记录中删除此项吗?',
|
||||||
|
confirmRemoveAll: '确定要清空下载历史吗?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: '复制失败: ',
|
||||||
|
pauseFailed: '暂停失败: ',
|
||||||
|
resumeFailed: '继续失败: ',
|
||||||
|
removeFailed: '删除失败: ',
|
||||||
|
removeAllFailed: '清空失败: ',
|
||||||
|
openFailed: '打开文件失败: ',
|
||||||
|
showFailed: '显示文件失败: ',
|
||||||
|
},
|
||||||
|
'zh-CHT': {
|
||||||
|
locale: 'zh-TW',
|
||||||
|
title: '下載管理器',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: '搜尋檔案名稱或連結...',
|
||||||
|
noItems: '暫無任務',
|
||||||
|
noSearchResult: '未找到匹配的結果',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: '重新整理',
|
||||||
|
removeAll: "清空歷史",
|
||||||
|
copyLink: '複製連結',
|
||||||
|
resume: '繼續',
|
||||||
|
pause: '暫停',
|
||||||
|
cancel: '取消',
|
||||||
|
remove: '刪除',
|
||||||
|
showInFolder: '顯示在資料夾',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: '下載中',
|
||||||
|
completed: '已完成',
|
||||||
|
cancelled: '已取消',
|
||||||
|
interrupted: '失敗',
|
||||||
|
paused: '已暫停',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "已複製",
|
||||||
|
refreshSuccess: '重新整理成功',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: '確定要取消此下載任務並刪除記錄嗎?',
|
||||||
|
confirmRemove: '確定要從歷史記錄中刪除此項嗎?',
|
||||||
|
confirmRemoveAll: '確定要清空下載歷史嗎?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: '複製失敗: ',
|
||||||
|
pauseFailed: '暫停失敗: ',
|
||||||
|
resumeFailed: '繼續失敗: ',
|
||||||
|
removeFailed: '刪除失敗: ',
|
||||||
|
removeAllFailed: '清空失敗: ',
|
||||||
|
openFailed: '開啟檔案失敗: ',
|
||||||
|
showFailed: '顯示檔案失敗: ',
|
||||||
|
},
|
||||||
|
en: {
|
||||||
|
locale: 'en-US',
|
||||||
|
title: 'Download Manager',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'Search filename or link...',
|
||||||
|
noItems: 'No tasks',
|
||||||
|
noSearchResult: 'No matching results found',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: 'Refresh',
|
||||||
|
removeAll: "Clear History",
|
||||||
|
copyLink: 'Copy Link',
|
||||||
|
resume: 'Resume',
|
||||||
|
pause: 'Pause',
|
||||||
|
cancel: 'Cancel',
|
||||||
|
remove: 'Remove',
|
||||||
|
showInFolder: 'Show in Folder',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'Downloading',
|
||||||
|
completed: 'Completed',
|
||||||
|
cancelled: 'Cancelled',
|
||||||
|
interrupted: 'Failed',
|
||||||
|
paused: 'Paused',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "Copied",
|
||||||
|
refreshSuccess: 'Refresh successful',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'Are you sure you want to cancel this download task and delete the record?',
|
||||||
|
confirmRemove: 'Are you sure you want to remove this item from history?',
|
||||||
|
confirmRemoveAll: 'Are you sure you want to clear download history?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'Copy failed: ',
|
||||||
|
pauseFailed: 'Pause failed: ',
|
||||||
|
resumeFailed: 'Resume failed: ',
|
||||||
|
removeFailed: 'Remove failed: ',
|
||||||
|
removeAllFailed: 'Clear failed: ',
|
||||||
|
openFailed: 'Open file failed: ',
|
||||||
|
showFailed: 'Show file failed: ',
|
||||||
|
},
|
||||||
|
ko: {
|
||||||
|
locale: 'ko-KR',
|
||||||
|
title: '다운로드 관리자',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: '파일명 또는 링크 검색...',
|
||||||
|
noItems: '작업 없음',
|
||||||
|
noSearchResult: '일치하는 결과를 찾을 수 없습니다',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: '새로고침',
|
||||||
|
removeAll: "기록 지우기",
|
||||||
|
copyLink: '링크 복사',
|
||||||
|
resume: '계속',
|
||||||
|
pause: '일시정지',
|
||||||
|
cancel: '취소',
|
||||||
|
remove: '삭제',
|
||||||
|
showInFolder: '폴더에서 보기',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: '다운로드 중',
|
||||||
|
completed: '완료됨',
|
||||||
|
cancelled: '취소됨',
|
||||||
|
interrupted: '실패',
|
||||||
|
paused: '일시정지됨',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "복사됨",
|
||||||
|
refreshSuccess: '새로고침 성공',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: '이 다운로드 작업을 취소하고 기록을 삭제하시겠습니까?',
|
||||||
|
confirmRemove: '기록에서 이 항목을 삭제하시겠습니까?',
|
||||||
|
confirmRemoveAll: '다운로드 기록을 지우시겠습니까?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: '복사 실패: ',
|
||||||
|
pauseFailed: '일시정지 실패: ',
|
||||||
|
resumeFailed: '계속 실패: ',
|
||||||
|
removeFailed: '삭제 실패: ',
|
||||||
|
removeAllFailed: '지우기 실패: ',
|
||||||
|
openFailed: '파일 열기 실패: ',
|
||||||
|
showFailed: '파일 표시 실패: ',
|
||||||
|
},
|
||||||
|
ja: {
|
||||||
|
locale: 'ja-JP',
|
||||||
|
title: 'ダウンロードマネージャー',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'ファイル名またはリンクを検索...',
|
||||||
|
noItems: 'タスクがありません',
|
||||||
|
noSearchResult: '一致する結果が見つかりません',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: '更新',
|
||||||
|
removeAll: "履歴をクリア",
|
||||||
|
copyLink: 'リンクをコピー',
|
||||||
|
resume: '再開',
|
||||||
|
pause: '一時停止',
|
||||||
|
cancel: 'キャンセル',
|
||||||
|
remove: '削除',
|
||||||
|
showInFolder: 'フォルダで表示',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'ダウンロード中',
|
||||||
|
completed: '完了',
|
||||||
|
cancelled: 'キャンセル済み',
|
||||||
|
interrupted: '失敗',
|
||||||
|
paused: '一時停止中',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "コピーしました",
|
||||||
|
refreshSuccess: '更新が完了しました',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'このダウンロードタスクをキャンセルして記録を削除しますか?',
|
||||||
|
confirmRemove: '履歴からこの項目を削除しますか?',
|
||||||
|
confirmRemoveAll: 'ダウンロード履歴をクリアしますか?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'コピーに失敗しました: ',
|
||||||
|
pauseFailed: '一時停止に失敗しました: ',
|
||||||
|
resumeFailed: '再開に失敗しました: ',
|
||||||
|
removeFailed: '削除に失敗しました: ',
|
||||||
|
removeAllFailed: 'クリアに失敗しました: ',
|
||||||
|
openFailed: 'ファイルを開けませんでした: ',
|
||||||
|
showFailed: 'ファイルの表示に失敗しました: ',
|
||||||
|
},
|
||||||
|
de: {
|
||||||
|
locale: 'de-DE',
|
||||||
|
title: 'Download-Manager',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'Dateiname oder Link suchen...',
|
||||||
|
noItems: 'Keine Aufgaben',
|
||||||
|
noSearchResult: 'Keine übereinstimmenden Ergebnisse gefunden',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: 'Aktualisieren',
|
||||||
|
removeAll: "Verlauf löschen",
|
||||||
|
copyLink: 'Link kopieren',
|
||||||
|
resume: 'Fortsetzen',
|
||||||
|
pause: 'Pause',
|
||||||
|
cancel: 'Abbrechen',
|
||||||
|
remove: 'Entfernen',
|
||||||
|
showInFolder: 'Im Ordner anzeigen',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'Wird heruntergeladen',
|
||||||
|
completed: 'Abgeschlossen',
|
||||||
|
cancelled: 'Abgebrochen',
|
||||||
|
interrupted: 'Fehlgeschlagen',
|
||||||
|
paused: 'Pausiert',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "Kopiert",
|
||||||
|
refreshSuccess: 'Erfolgreich aktualisiert',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'Sind Sie sicher, dass Sie diese Download-Aufgabe abbrechen und den Eintrag löschen möchten?',
|
||||||
|
confirmRemove: 'Sind Sie sicher, dass Sie diesen Eintrag aus dem Verlauf entfernen möchten?',
|
||||||
|
confirmRemoveAll: 'Sind Sie sicher, dass Sie den Download-Verlauf löschen möchten?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'Kopieren fehlgeschlagen: ',
|
||||||
|
pauseFailed: 'Pause fehlgeschlagen: ',
|
||||||
|
resumeFailed: 'Fortsetzen fehlgeschlagen: ',
|
||||||
|
removeFailed: 'Entfernen fehlgeschlagen: ',
|
||||||
|
removeAllFailed: 'Löschen fehlgeschlagen: ',
|
||||||
|
openFailed: 'Datei öffnen fehlgeschlagen: ',
|
||||||
|
showFailed: 'Datei anzeigen fehlgeschlagen: ',
|
||||||
|
},
|
||||||
|
fr: {
|
||||||
|
locale: 'fr-FR',
|
||||||
|
title: 'Gestionnaire de téléchargements',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'Rechercher nom de fichier ou lien...',
|
||||||
|
noItems: 'Aucune tâche',
|
||||||
|
noSearchResult: 'Aucun résultat correspondant trouvé',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: 'Actualiser',
|
||||||
|
removeAll: "Effacer l'historique",
|
||||||
|
copyLink: 'Copier le lien',
|
||||||
|
resume: 'Reprendre',
|
||||||
|
pause: 'Pause',
|
||||||
|
cancel: 'Annuler',
|
||||||
|
remove: 'Supprimer',
|
||||||
|
showInFolder: 'Afficher dans le dossier',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'Téléchargement en cours',
|
||||||
|
completed: 'Terminé',
|
||||||
|
cancelled: 'Annulé',
|
||||||
|
interrupted: 'Échoué',
|
||||||
|
paused: 'En pause',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "Copié",
|
||||||
|
refreshSuccess: 'Actualisation réussie',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'Êtes-vous sûr de vouloir annuler cette tâche de téléchargement et supprimer l\'enregistrement ?',
|
||||||
|
confirmRemove: 'Êtes-vous sûr de vouloir supprimer cet élément de l\'historique ?',
|
||||||
|
confirmRemoveAll: 'Êtes-vous sûr de vouloir effacer l\'historique des téléchargements ?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'Échec de la copie : ',
|
||||||
|
pauseFailed: 'Échec de la pause : ',
|
||||||
|
resumeFailed: 'Échec de la reprise : ',
|
||||||
|
removeFailed: 'Échec de la suppression : ',
|
||||||
|
removeAllFailed: 'Échec de l\'effacement : ',
|
||||||
|
openFailed: 'Échec de l\'ouverture du fichier : ',
|
||||||
|
showFailed: 'Échec de l\'affichage du fichier : ',
|
||||||
|
},
|
||||||
|
id: {
|
||||||
|
locale: 'id-ID',
|
||||||
|
title: 'Manajer Unduhan',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'Cari nama file atau tautan...',
|
||||||
|
noItems: 'Tidak ada tugas',
|
||||||
|
noSearchResult: 'Tidak ada hasil yang cocok ditemukan',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: 'Segarkan',
|
||||||
|
removeAll: "Hapus Riwayat",
|
||||||
|
copyLink: 'Salin Tautan',
|
||||||
|
resume: 'Lanjutkan',
|
||||||
|
pause: 'Jeda',
|
||||||
|
cancel: 'Batal',
|
||||||
|
remove: 'Hapus',
|
||||||
|
showInFolder: 'Tampilkan di Folder',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'Mengunduh',
|
||||||
|
completed: 'Selesai',
|
||||||
|
cancelled: 'Dibatalkan',
|
||||||
|
interrupted: 'Gagal',
|
||||||
|
paused: 'Dijeda',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "Disalin",
|
||||||
|
refreshSuccess: 'Berhasil disegarkan',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'Apakah Anda yakin ingin membatalkan tugas unduhan ini dan menghapus catatan?',
|
||||||
|
confirmRemove: 'Apakah Anda yakin ingin menghapus item ini dari riwayat?',
|
||||||
|
confirmRemoveAll: 'Apakah Anda yakin ingin menghapus riwayat unduhan?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'Gagal menyalin: ',
|
||||||
|
pauseFailed: 'Gagal menjeda: ',
|
||||||
|
resumeFailed: 'Gagal melanjutkan: ',
|
||||||
|
removeFailed: 'Gagal menghapus: ',
|
||||||
|
removeAllFailed: 'Gagal menghapus: ',
|
||||||
|
openFailed: 'Gagal membuka file: ',
|
||||||
|
showFailed: 'Gagal menampilkan file: ',
|
||||||
|
},
|
||||||
|
ru: {
|
||||||
|
locale: 'ru-RU',
|
||||||
|
title: 'Менеджер загрузок',
|
||||||
|
|
||||||
|
// 界面文本
|
||||||
|
searchPlaceholder: 'Поиск имени файла или ссылки...',
|
||||||
|
noItems: 'Нет задач',
|
||||||
|
noSearchResult: 'Совпадающих результатов не найдено',
|
||||||
|
|
||||||
|
// 操作按钮
|
||||||
|
refresh: 'Обновить',
|
||||||
|
removeAll: "Очистить историю",
|
||||||
|
copyLink: 'Копировать ссылку',
|
||||||
|
resume: 'Возобновить',
|
||||||
|
pause: 'Пауза',
|
||||||
|
cancel: 'Отмена',
|
||||||
|
remove: 'Удалить',
|
||||||
|
showInFolder: 'Показать в папке',
|
||||||
|
|
||||||
|
// 状态文本
|
||||||
|
progressing: 'Загружается',
|
||||||
|
completed: 'Завершено',
|
||||||
|
cancelled: 'Отменено',
|
||||||
|
interrupted: 'Ошибка',
|
||||||
|
paused: 'На паузе',
|
||||||
|
|
||||||
|
// 成功消息
|
||||||
|
copied: "Скопировано",
|
||||||
|
refreshSuccess: 'Успешно обновлено',
|
||||||
|
|
||||||
|
// 确认对话框
|
||||||
|
confirmCancel: 'Вы уверены, что хотите отменить эту задачу загрузки и удалить запись?',
|
||||||
|
confirmRemove: 'Вы уверены, что хотите удалить этот элемент из истории?',
|
||||||
|
confirmRemoveAll: 'Вы уверены, что хотите очистить историю загрузок?',
|
||||||
|
|
||||||
|
// 错误消息
|
||||||
|
copyFailed: 'Ошибка копирования: ',
|
||||||
|
pauseFailed: 'Ошибка паузы: ',
|
||||||
|
resumeFailed: 'Ошибка возобновления: ',
|
||||||
|
removeFailed: 'Ошибка удаления: ',
|
||||||
|
removeAllFailed: 'Ошибка очистки: ',
|
||||||
|
openFailed: 'Ошибка открытия файла: ',
|
||||||
|
showFailed: 'Ошибка отображения файла: ',
|
||||||
}
|
}
|
||||||
|
};
|
||||||
|
return packs[code] || packs.zh;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function open(language = 'zh', theme = 'light') {
|
async function open(language = 'zh', theme = 'light') {
|
||||||
|
|||||||
6
electron/electron.js
vendored
6
electron/electron.js
vendored
@ -124,7 +124,11 @@ if (!fs.existsSync(cacheDir)) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 初始化下载
|
// 初始化下载
|
||||||
electronDown.initialize()
|
electronDown.initialize(() => {
|
||||||
|
if (mainWindow) {
|
||||||
|
mainWindow.webContents.send("openDownloadWindow", {})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 启动web服务
|
* 启动web服务
|
||||||
|
|||||||
@ -26,7 +26,6 @@
|
|||||||
"url": "https://github.com/kuaifan/dootask.git"
|
"url": "https://github.com/kuaifan/dootask.git"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@dootask/electron-dl": "^4.0.0-rc.2",
|
|
||||||
"@electron-forge/cli": "^7.8.3",
|
"@electron-forge/cli": "^7.8.3",
|
||||||
"@electron-forge/maker-deb": "^7.8.3",
|
"@electron-forge/maker-deb": "^7.8.3",
|
||||||
"@electron-forge/maker-rpm": "^7.8.3",
|
"@electron-forge/maker-rpm": "^7.8.3",
|
||||||
@ -43,6 +42,7 @@
|
|||||||
"ora": "^4.1.1"
|
"ora": "^4.1.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@dootask/electron-dl": "^4.0.0-rc.2",
|
||||||
"axios": "^1.11.0",
|
"axios": "^1.11.0",
|
||||||
"crc": "^3.8.0",
|
"crc": "^3.8.0",
|
||||||
"dayjs": "^1.11.13",
|
"dayjs": "^1.11.13",
|
||||||
@ -80,6 +80,7 @@
|
|||||||
"render/**/*",
|
"render/**/*",
|
||||||
"public/**/*",
|
"public/**/*",
|
||||||
"utils/**/*",
|
"utils/**/*",
|
||||||
|
"electron-down.js",
|
||||||
"electron-menu.js",
|
"electron-menu.js",
|
||||||
"electron-preload.js",
|
"electron-preload.js",
|
||||||
"electron.js"
|
"electron.js"
|
||||||
|
|||||||
@ -138,7 +138,7 @@
|
|||||||
items: [],
|
items: [],
|
||||||
lang: {
|
lang: {
|
||||||
// 语言设置
|
// 语言设置
|
||||||
locale: 'zh',
|
locale: 'zh-CN',
|
||||||
title: '下载管理器',
|
title: '下载管理器',
|
||||||
|
|
||||||
// 界面文本
|
// 界面文本
|
||||||
@ -437,19 +437,7 @@
|
|||||||
formatTime(timestamp) {
|
formatTime(timestamp) {
|
||||||
if (!timestamp) return '';
|
if (!timestamp) return '';
|
||||||
const date = new Date(timestamp * 1000);
|
const date = new Date(timestamp * 1000);
|
||||||
const locales = {
|
return date.toLocaleString(this.lang?.locale || "zh-CN", {
|
||||||
"zh": "zh-CN",
|
|
||||||
"zh-CHT": "zh-TW",
|
|
||||||
"en": "en-US",
|
|
||||||
"ko": "ko-KR",
|
|
||||||
"ja": "ja-JP",
|
|
||||||
"de": "de-DE",
|
|
||||||
"fr": "fr-FR",
|
|
||||||
"id": "id-ID",
|
|
||||||
"ru": "ru-RU"
|
|
||||||
};
|
|
||||||
const locale = locales[this.lang?.locale] || this.lang?.locale || locales['en'];
|
|
||||||
return date.toLocaleString(locale, {
|
|
||||||
year: 'numeric',
|
year: 'numeric',
|
||||||
month: '2-digit',
|
month: '2-digit',
|
||||||
day: '2-digit',
|
day: '2-digit',
|
||||||
|
|||||||
3
electron/utils/download.js
vendored
3
electron/utils/download.js
vendored
@ -1,3 +1,4 @@
|
|||||||
|
const path = require("path");
|
||||||
const loger = require("electron-log");
|
const loger = require("electron-log");
|
||||||
const Store = require('electron-store');
|
const Store = require('electron-store');
|
||||||
const utils = require("./index");
|
const utils = require("./index");
|
||||||
@ -32,7 +33,7 @@ class DownloadManager {
|
|||||||
*/
|
*/
|
||||||
convert(downloadItem) {
|
convert(downloadItem) {
|
||||||
return {
|
return {
|
||||||
filename: downloadItem.getFilename(),
|
filename: path.basename(downloadItem.getSavePath()) || downloadItem.getFilename(),
|
||||||
path: downloadItem.getSavePath(),
|
path: downloadItem.getSavePath(),
|
||||||
url: downloadItem.getURL(),
|
url: downloadItem.getURL(),
|
||||||
urls: downloadItem.getURLChain(),
|
urls: downloadItem.getURLChain(),
|
||||||
|
|||||||
@ -149,7 +149,7 @@ export default {
|
|||||||
},
|
},
|
||||||
|
|
||||||
computed: {
|
computed: {
|
||||||
...mapState(['ws', 'themeConf', 'windowOrientation', 'safeAreaSize', 'isFirstPage', 'mobileTabbar']),
|
...mapState(['ws', 'themeConf', 'windowOrientation', 'safeAreaSize', 'isFirstPage', 'mobileTabbar', 'themeName']),
|
||||||
|
|
||||||
statusColor({routeName, windowLandscape}) {
|
statusColor({routeName, windowLandscape}) {
|
||||||
if (!routeName) {
|
if (!routeName) {
|
||||||
@ -615,6 +615,13 @@ export default {
|
|||||||
this.$Electron.listener('systemThemeChanged', _ => {
|
this.$Electron.listener('systemThemeChanged', _ => {
|
||||||
this.autoTheme()
|
this.autoTheme()
|
||||||
})
|
})
|
||||||
|
this.$Electron.listener('openDownloadWindow', _ => {
|
||||||
|
$A.Electron.request({
|
||||||
|
action: 'openDownloadWindow',
|
||||||
|
language: languageName,
|
||||||
|
theme: this.themeName,
|
||||||
|
});
|
||||||
|
})
|
||||||
$A.bindScreenshotKey(this.$store.state.cacheKeyboard);
|
$A.bindScreenshotKey(this.$store.state.cacheKeyboard);
|
||||||
//
|
//
|
||||||
this.$Electron.sendMessage('setMenuLanguage', {
|
this.$Electron.sendMessage('setMenuLanguage', {
|
||||||
|
|||||||
5
resources/assets/js/store/actions.js
vendored
5
resources/assets/js/store/actions.js
vendored
@ -469,11 +469,6 @@ export default {
|
|||||||
action: 'createDownload',
|
action: 'createDownload',
|
||||||
url
|
url
|
||||||
});
|
});
|
||||||
$A.Electron.request({
|
|
||||||
action: 'openDownloadWindow',
|
|
||||||
language: languageName,
|
|
||||||
theme: state.themeName,
|
|
||||||
});
|
|
||||||
} else if ($A.isEEUIApp) {
|
} else if ($A.isEEUIApp) {
|
||||||
$A.eeuiAppOpenWeb(url);
|
$A.eeuiAppOpenWeb(url);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user