From 536793ab255f6b38701c85727a62ab6eff3fa763 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Mon, 21 Jul 2025 11:53:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=94=AF=E6=8C=81=E7=AB=99?= =?UTF-8?q?=E7=82=B9=E6=8A=98=E5=8F=A0=E5=8A=9F=E8=83=BD=EF=BC=8C=E5=B9=B6?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=9B=B8=E5=85=B3=E5=9B=BD=E9=99=85=E5=8C=96?= =?UTF-8?q?=E6=96=87=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/locales/en-US.ts | 2 + src/locales/zh-CN.ts | 2 + src/locales/zh-TW.ts | 2 + src/views/setting/AccountSettingAbout.vue | 66 ++++++++++++++++++----- 4 files changed, 60 insertions(+), 12 deletions(-) diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 12d6eed2..f062f36d 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -1106,6 +1106,8 @@ export default { viewChangelog: 'View Changelog', changelog: 'Changelog', dataDirectory: '/moviepilot', + expand: 'Expand', + collapse: 'Collapse', }, system: { custom: 'Custom', diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 3d4c5b8e..5ed14826 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -1102,6 +1102,8 @@ export default { viewChangelog: '查看变更日志', changelog: '变更日志', dataDirectory: '/moviepilot', + expand: '展开', + collapse: '收起', }, system: { custom: '自定义', diff --git a/src/locales/zh-TW.ts b/src/locales/zh-TW.ts index dfb00e8a..ce971174 100644 --- a/src/locales/zh-TW.ts +++ b/src/locales/zh-TW.ts @@ -1101,6 +1101,8 @@ export default { viewChangelog: '查看變更日誌', changelog: '變更日誌', dataDirectory: '/moviepilot', + expand: '展開', + collapse: '收起', }, system: { custom: '自定義', diff --git a/src/views/setting/AccountSettingAbout.vue b/src/views/setting/AccountSettingAbout.vue index ba927a14..aee6685a 100644 --- a/src/views/setting/AccountSettingAbout.vue +++ b/src/views/setting/AccountSettingAbout.vue @@ -15,6 +15,35 @@ const allRelease = ref([]) // 支持站点 const supportingSites = ref({}) +// 支持站点折叠状态 +const sitesExpanded = ref(false) + +// 去重后的支持站点 +const uniqueSupportingSites = computed(() => { + const sitesMap = new Map() + + Object.entries(supportingSites.value).forEach(([domain, site]: [string, any]) => { + if (!sitesMap.has(site.name)) { + sitesMap.set(site.name, { + name: site.name, + urls: [{ domain, url: site.url }], + }) + } else { + sitesMap.get(site.name).urls.push({ domain, url: site.url }) + } + }) + + return Array.from(sitesMap.values()) +}) + +// 显示的支持站点(折叠时只显示前5个) +const displayedSites = computed(() => { + if (sitesExpanded.value) { + return uniqueSupportingSites.value + } + return uniqueSupportingSites.value.slice(0, 5) +}) + // 变更日志对话框 const releaseDialog = ref(false) @@ -68,6 +97,11 @@ async function querySupportingSites() { } } +// 切换站点列表展开状态 +function toggleSitesExpanded() { + sitesExpanded.value = !sitesExpanded.value +} + // 计算发布时间 function releaseTime(releaseDate: string) { // 上一次更新时间 @@ -173,18 +207,26 @@ onMounted(() => {
{{ t('setting.about.supportingSites') }}
-
- - {{ site.name }} - +
+
+ + {{ site.name }} + +
+
+ + + {{ sitesExpanded ? t('setting.about.collapse') : t('setting.about.expand') }} + ({{ uniqueSupportingSites.length }}) + +