From fa2ad6915446befa10aeb39577e6b73b83ac1d00 Mon Sep 17 00:00:00 2001 From: ssongliu Date: Thu, 3 Sep 2026 09:45:40 +0800 Subject: [PATCH] feat: improve community restore package guidance (#13694) --- frontend/src/api/interface/setting.ts | 2 + frontend/src/lang/modules/en.ts | 9 +- frontend/src/lang/modules/es-es.ts | 9 +- frontend/src/lang/modules/fa.ts | 9 +- frontend/src/lang/modules/ja.ts | 9 +- frontend/src/lang/modules/ko.ts | 9 +- frontend/src/lang/modules/lo.ts | 9 +- frontend/src/lang/modules/ms.ts | 9 +- frontend/src/lang/modules/pt-br.ts | 9 +- frontend/src/lang/modules/ru.ts | 9 +- frontend/src/lang/modules/tr.ts | 9 +- frontend/src/lang/modules/zh-Hant.ts | 7 +- frontend/src/lang/modules/zh.ts | 7 +- .../community-restore/index.vue | 109 +++++++++++++++--- 14 files changed, 153 insertions(+), 62 deletions(-) diff --git a/frontend/src/api/interface/setting.ts b/frontend/src/api/interface/setting.ts index 2dfe30708..cc984eb52 100644 --- a/frontend/src/api/interface/setting.ts +++ b/frontend/src/api/interface/setting.ts @@ -308,6 +308,8 @@ export namespace Setting { message: string; packageExist: boolean; packageDirectory: string; + packageName: string; + packageURL: string; } export type CommunityRestoreMode = 'online' | 'offline'; export interface NodeItem { diff --git a/frontend/src/lang/modules/en.ts b/frontend/src/lang/modules/en.ts index 5325e4b41..1bb98b8c5 100644 --- a/frontend/src/lang/modules/en.ts +++ b/frontend/src/lang/modules/en.ts @@ -3246,14 +3246,15 @@ const message = { restoreCommunity: 'Restore Community Edition', restoreCommunityOnline: 'Online restore', restoreCommunityOffline: 'Offline restore', - restoreCommunityPackageFound: - 'A usable offline Community Edition package was detected. Offline restore is available.', - restoreCommunityPackageMissing: - 'No usable offline Community Edition package was detected. Offline restore is currently unavailable.', + restoreCommunityPackageFound: 'Package is ready', + restoreCommunityPackageMissing: 'Waiting for package', + restoreCommunityPackageChecking: 'Checking package', + restoreCommunityPackageReadyHelper: 'You can proceed with the offline restore.', restoreCommunityOnlineHelper: 'The Community Edition package for the current version will be downloaded automatically, and Enterprise-only data will be cleaned up.', restoreCommunityOfflineHelper: 'Place an official package no older than the current Enterprise version in {path}. Switching is enabled after a usable package is detected.', + restoreCommunityCopyDownloadLink: 'Copy download link', restoreCommunityConfirm: 'After switching versions, you can sign in to Community Edition with the current Enterprise super administrator account. Enterprise-only data will be removed during the switch. Proceed with caution.', restoreCommunityStarting: 'Preparing Community Edition. The panel will restart automatically when ready.', diff --git a/frontend/src/lang/modules/es-es.ts b/frontend/src/lang/modules/es-es.ts index a7e91fdaf..ebb1fbacb 100644 --- a/frontend/src/lang/modules/es-es.ts +++ b/frontend/src/lang/modules/es-es.ts @@ -3308,14 +3308,15 @@ const message = { restoreCommunity: 'Restaurar Community Edition', restoreCommunityOnline: 'Restauración en línea', restoreCommunityOffline: 'Restauración sin conexión', - restoreCommunityPackageFound: - 'Se detectó un paquete sin conexión de Community Edition válido. La restauración sin conexión está disponible.', - restoreCommunityPackageMissing: - 'No se detectó ningún paquete sin conexión de Community Edition válido. La restauración sin conexión no está disponible actualmente.', + restoreCommunityPackageFound: 'El paquete está listo', + restoreCommunityPackageMissing: 'Esperando el paquete', + restoreCommunityPackageChecking: 'Comprobando el paquete', + restoreCommunityPackageReadyHelper: 'Puede continuar con la restauración sin conexión.', restoreCommunityOnlineHelper: 'Se descargará automáticamente el paquete Community Edition de la versión actual y se limpiarán los datos exclusivos de Enterprise.', restoreCommunityOfflineHelper: 'Coloque en {path} un paquete oficial cuya versión no sea anterior a la versión Enterprise actual. El cambio se habilitará al detectar un paquete utilizable.', + restoreCommunityCopyDownloadLink: 'Copiar enlace de descarga', restoreCommunityConfirm: 'Después de cambiar de versión, podrá iniciar sesión en Community Edition con la cuenta actual de superadministrador de Enterprise. Los datos exclusivos de Enterprise se eliminarán durante el cambio. Proceda con precaución.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/fa.ts b/frontend/src/lang/modules/fa.ts index 6fb4de3b4..d32d93c0f 100644 --- a/frontend/src/lang/modules/fa.ts +++ b/frontend/src/lang/modules/fa.ts @@ -3214,14 +3214,15 @@ const message = { restoreCommunity: 'بازیابی نسخه Community', restoreCommunityOnline: 'بازیابی آنلاین', restoreCommunityOffline: 'بازیابی آفلاین', - restoreCommunityPackageFound: - 'یک بسته آفلاین قابل استفاده Community Edition شناسایی شد. بازیابی آفلاین در دسترس است.', - restoreCommunityPackageMissing: - 'هیچ بسته آفلاین قابل استفاده Community Edition شناسایی نشد. بازیابی آفلاین در حال حاضر در دسترس نیست.', + restoreCommunityPackageFound: 'بسته آماده است', + restoreCommunityPackageMissing: 'در انتظار قرار دادن بسته', + restoreCommunityPackageChecking: 'در حال بررسی بسته', + restoreCommunityPackageReadyHelper: 'می‌توانید بازیابی آفلاین را انجام دهید.', restoreCommunityOnlineHelper: 'بسته نسخه Community برای نسخه فعلی به‌طور خودکار دانلود و داده‌های ویژه Enterprise پاک‌سازی می‌شوند.', restoreCommunityOfflineHelper: 'یک بسته رسمی با نسخه‌ای قدیمی‌تر نبودن از نسخه فعلی Enterprise را در {path} قرار دهید. پس از شناسایی بسته قابل استفاده، تغییر نسخه فعال می‌شود.', + restoreCommunityCopyDownloadLink: 'کپی لینک دانلود', restoreCommunityConfirm: 'پس از تغییر نسخه، می‌توانید با حساب ابرمدیر فعلی Enterprise وارد نسخه Community شوید. داده‌های مختص Enterprise در طول تغییر حذف می‌شوند. لطفاً با احتیاط ادامه دهید.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/ja.ts b/frontend/src/lang/modules/ja.ts index e2a4fe88b..5731da819 100644 --- a/frontend/src/lang/modules/ja.ts +++ b/frontend/src/lang/modules/ja.ts @@ -3229,14 +3229,15 @@ const message = { restoreCommunity: 'コミュニティ版に戻す', restoreCommunityOnline: 'オンライン復元', restoreCommunityOffline: 'オフライン復元', - restoreCommunityPackageFound: - '使用可能なコミュニティ版オフラインパッケージが検出されました。オフライン復元を実行できます。', - restoreCommunityPackageMissing: - '使用可能なコミュニティ版オフラインパッケージが検出されていないため、現在オフライン復元を実行できません。', + restoreCommunityPackageFound: 'パッケージの準備ができました', + restoreCommunityPackageMissing: 'パッケージの配置待ち', + restoreCommunityPackageChecking: 'パッケージを確認しています', + restoreCommunityPackageReadyHelper: 'オフライン復元を実行できます。', restoreCommunityOnlineHelper: '現在のバージョンのコミュニティ版パッケージを自動的にダウンロードし、Enterprise 専用データを削除します。', restoreCommunityOfflineHelper: '現在の Enterprise バージョン以上の公式パッケージを {path} に配置してください。使用可能なパッケージが検出されると切り替えが有効になります。', + restoreCommunityCopyDownloadLink: 'ダウンロードリンクをコピー', restoreCommunityConfirm: 'バージョン切り替え後は、現在の Enterprise スーパー管理者アカウントでコミュニティ版にログインできます。切り替え中に Enterprise 専用データが消去されるため、慎重に操作してください。', restoreCommunityStarting: 'コミュニティ版を準備しています。完了後、パネルは自動的に再起動します。', diff --git a/frontend/src/lang/modules/ko.ts b/frontend/src/lang/modules/ko.ts index 823f1d9a4..8c2ce0cdc 100644 --- a/frontend/src/lang/modules/ko.ts +++ b/frontend/src/lang/modules/ko.ts @@ -3171,14 +3171,15 @@ const message = { restoreCommunity: '커뮤니티 버전 복원', restoreCommunityOnline: '온라인 복원', restoreCommunityOffline: '오프라인 복원', - restoreCommunityPackageFound: - '사용 가능한 Community Edition 오프라인 설치 패키지가 감지되었습니다. 오프라인 복원을 실행할 수 있습니다.', - restoreCommunityPackageMissing: - '사용 가능한 Community Edition 오프라인 설치 패키지가 감지되지 않아 현재 오프라인 복원을 실행할 수 없습니다.', + restoreCommunityPackageFound: '설치 패키지 준비 완료', + restoreCommunityPackageMissing: '설치 패키지 배치 대기 중', + restoreCommunityPackageChecking: '설치 패키지 확인 중', + restoreCommunityPackageReadyHelper: '오프라인 복원을 바로 실행할 수 있습니다.', restoreCommunityOnlineHelper: '현재 버전의 커뮤니티 버전 패키지를 자동으로 다운로드하고 Enterprise 전용 데이터를 정리합니다.', restoreCommunityOfflineHelper: '현재 Enterprise 버전 이상인 공식 패키지를 {path}에 저장하세요. 사용 가능한 패키지가 감지되면 전환이 활성화됩니다.', + restoreCommunityCopyDownloadLink: '다운로드 링크 복사', restoreCommunityConfirm: '버전 전환 후 현재 Enterprise 슈퍼 관리자 계정으로 커뮤니티 버전에 로그인할 수 있습니다. 전환 과정에서 Enterprise 전용 데이터가 삭제되므로 신중하게 진행하세요.', restoreCommunityStarting: '커뮤니티 버전을 준비 중입니다. 완료되면 패널이 자동으로 다시 시작됩니다.', diff --git a/frontend/src/lang/modules/lo.ts b/frontend/src/lang/modules/lo.ts index d00de3c8f..8a6fc15b0 100644 --- a/frontend/src/lang/modules/lo.ts +++ b/frontend/src/lang/modules/lo.ts @@ -3157,14 +3157,15 @@ const message = { restoreCommunity: 'ກູ້ຄືນ Community Edition', restoreCommunityOnline: 'ກູ້ຄືນອອນລາຍ', restoreCommunityOffline: 'ກູ້ຄືນອອບລາຍ', - restoreCommunityPackageFound: - 'ກວດພົບແພັກເກດ Community Edition ອອບລາຍທີ່ໃຊ້ໄດ້ ແລະສາມາດດຳເນີນການກູ້ຄືນອອບລາຍໄດ້.', - restoreCommunityPackageMissing: - 'ບໍ່ພົບແພັກເກດ Community Edition ອອບລາຍທີ່ໃຊ້ໄດ້ ຈຶ່ງຍັງບໍ່ສາມາດກູ້ຄືນອອບລາຍໄດ້.', + restoreCommunityPackageFound: 'ແພັກເກດພ້ອມໃຊ້ງານ', + restoreCommunityPackageMissing: 'ກຳລັງລໍຖ້າແພັກເກດ', + restoreCommunityPackageChecking: 'ກຳລັງກວດສອບແພັກເກດ', + restoreCommunityPackageReadyHelper: 'ສາມາດດຳເນີນການກູ້ຄືນອອບລາຍໄດ້ທັນທີ.', restoreCommunityOnlineHelper: 'ລະບົບຈະດາວໂຫຼດແພັກເກດ Community Edition ສຳລັບເວີຊັນປັດຈຸບັນອັດຕະໂນມັດ ແລະ ລ້າງຂໍ້ມູນສະເພາະ Enterprise.', restoreCommunityOfflineHelper: 'ວາງແພັກເກດທາງການທີ່ມີເວີຊັນບໍ່ຕ່ຳກວ່າ Enterprise ປັດຈຸບັນໄວ້ໃນ {path}. ການສະຫຼັບຈະເປີດໃຊ້ເມື່ອກວດພົບແພັກເກດທີ່ໃຊ້ໄດ້.', + restoreCommunityCopyDownloadLink: 'ຄັດລອກລິ້ງດາວໂຫຼດ', restoreCommunityConfirm: 'ຫຼັງຈາກສະຫຼັບເວີຊັນ ສາມາດໃຊ້ບັນຊີຜູ້ດູແລສູງສຸດ Enterprise ປັດຈຸບັນເຂົ້າ Community Edition. ຂໍ້ມູນສະເພາະ Enterprise ຈະຖືກລຶບໃນລະຫວ່າງການສະຫຼັບ. ກະລຸນາດຳເນີນການດ້ວຍຄວາມລະມັດລະວັງ.', restoreCommunityStarting: 'ກຳລັງກະກຽມ Community Edition. ແຜງຄວບຄຸມຈະເລີ່ມໃໝ່ອັດຕະໂນມັດເມື່ອສຳເລັດ.', diff --git a/frontend/src/lang/modules/ms.ts b/frontend/src/lang/modules/ms.ts index f5a9b714a..e297aec2e 100644 --- a/frontend/src/lang/modules/ms.ts +++ b/frontend/src/lang/modules/ms.ts @@ -3302,14 +3302,15 @@ const message = { restoreCommunity: 'Pulihkan Community Edition', restoreCommunityOnline: 'Pemulihan dalam talian', restoreCommunityOffline: 'Pemulihan luar talian', - restoreCommunityPackageFound: - 'Pakej luar talian Community Edition yang boleh digunakan telah dikesan. Pemulihan luar talian tersedia.', - restoreCommunityPackageMissing: - 'Tiada pakej luar talian Community Edition yang boleh digunakan dikesan. Pemulihan luar talian tidak tersedia pada masa ini.', + restoreCommunityPackageFound: 'Pakej sudah sedia', + restoreCommunityPackageMissing: 'Menunggu pakej', + restoreCommunityPackageChecking: 'Memeriksa pakej', + restoreCommunityPackageReadyHelper: 'Anda boleh meneruskan pemulihan luar talian.', restoreCommunityOnlineHelper: 'Pakej Community Edition untuk versi semasa akan dimuat turun secara automatik dan data khusus Enterprise akan dibersihkan.', restoreCommunityOfflineHelper: 'Letakkan pakej rasmi yang tidak lebih lama daripada versi Enterprise semasa dalam {path}. Pertukaran akan didayakan selepas pakej yang boleh digunakan dikesan.', + restoreCommunityCopyDownloadLink: 'Salin pautan muat turun', restoreCommunityConfirm: 'Selepas menukar versi, anda boleh log masuk ke Community Edition menggunakan akaun pentadbir super Enterprise semasa. Data khusus Enterprise akan dipadamkan semasa pertukaran. Sila teruskan dengan berhati-hati.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/pt-br.ts b/frontend/src/lang/modules/pt-br.ts index dfff84c41..3bf8faac1 100644 --- a/frontend/src/lang/modules/pt-br.ts +++ b/frontend/src/lang/modules/pt-br.ts @@ -3309,14 +3309,15 @@ const message = { restoreCommunity: 'Restaurar Community Edition', restoreCommunityOnline: 'Restauração online', restoreCommunityOffline: 'Restauração offline', - restoreCommunityPackageFound: - 'Um pacote offline utilizável da Community Edition foi detectado. A restauração offline está disponível.', - restoreCommunityPackageMissing: - 'Nenhum pacote offline utilizável da Community Edition foi detectado. A restauração offline não está disponível no momento.', + restoreCommunityPackageFound: 'O pacote está pronto', + restoreCommunityPackageMissing: 'Aguardando o pacote', + restoreCommunityPackageChecking: 'Verificando o pacote', + restoreCommunityPackageReadyHelper: 'Você pode prosseguir com a restauração offline.', restoreCommunityOnlineHelper: 'O pacote Community Edition da versão atual será baixado automaticamente e os dados exclusivos da Enterprise serão limpos.', restoreCommunityOfflineHelper: 'Coloque em {path} um pacote oficial cuja versão não seja anterior à versão Enterprise atual. A troca será habilitada quando um pacote utilizável for detectado.', + restoreCommunityCopyDownloadLink: 'Copiar link de download', restoreCommunityConfirm: 'Após trocar de versão, você poderá entrar na Community Edition com a conta atual de superadministrador da Enterprise. Os dados exclusivos da Enterprise serão removidos durante a troca. Prossiga com cuidado.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/ru.ts b/frontend/src/lang/modules/ru.ts index 324a78882..4d1167217 100644 --- a/frontend/src/lang/modules/ru.ts +++ b/frontend/src/lang/modules/ru.ts @@ -3279,14 +3279,15 @@ const message = { restoreCommunity: 'Восстановить Community Edition', restoreCommunityOnline: 'Онлайн-восстановление', restoreCommunityOffline: 'Офлайн-восстановление', - restoreCommunityPackageFound: - 'Обнаружен подходящий офлайн-пакет Community Edition. Офлайн-восстановление доступно.', - restoreCommunityPackageMissing: - 'Подходящий офлайн-пакет Community Edition не обнаружен. Офлайн-восстановление сейчас недоступно.', + restoreCommunityPackageFound: 'Пакет готов', + restoreCommunityPackageMissing: 'Ожидание пакета', + restoreCommunityPackageChecking: 'Проверка пакета', + restoreCommunityPackageReadyHelper: 'Можно выполнить офлайн-восстановление.', restoreCommunityOnlineHelper: 'Пакет Community Edition текущей версии будет загружен автоматически, а данные, предназначенные только для Enterprise, будут очищены.', restoreCommunityOfflineHelper: 'Поместите официальный пакет версии не ниже текущей Enterprise в {path}. Переключение станет доступно после обнаружения подходящего пакета.', + restoreCommunityCopyDownloadLink: 'Копировать ссылку для скачивания', restoreCommunityConfirm: 'После смены версии можно войти в Community Edition с текущей учётной записью суперадминистратора Enterprise. Во время переключения данные, доступные только в Enterprise, будут удалены. Будьте осторожны.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/tr.ts b/frontend/src/lang/modules/tr.ts index 511eb0025..162d35916 100644 --- a/frontend/src/lang/modules/tr.ts +++ b/frontend/src/lang/modules/tr.ts @@ -3294,14 +3294,15 @@ const message = { restoreCommunity: 'Community Edition sürümünü geri yükle', restoreCommunityOnline: 'Çevrimiçi geri yükleme', restoreCommunityOffline: 'Çevrimdışı geri yükleme', - restoreCommunityPackageFound: - 'Kullanılabilir bir çevrimdışı Community Edition paketi algılandı. Çevrimdışı geri yükleme kullanılabilir.', - restoreCommunityPackageMissing: - 'Kullanılabilir bir çevrimdışı Community Edition paketi algılanmadı. Çevrimdışı geri yükleme şu anda kullanılamıyor.', + restoreCommunityPackageFound: 'Paket hazır', + restoreCommunityPackageMissing: 'Paket bekleniyor', + restoreCommunityPackageChecking: 'Paket kontrol ediliyor', + restoreCommunityPackageReadyHelper: 'Çevrimdışı geri yüklemeye devam edebilirsiniz.', restoreCommunityOnlineHelper: 'Geçerli sürümün Community Edition paketi otomatik olarak indirilecek ve Enterprise sürümüne özel veriler temizlenecektir.', restoreCommunityOfflineHelper: 'Geçerli Enterprise sürümünden eski olmayan resmi bir paketi {path} dizinine yerleştirin. Kullanılabilir bir paket algılandığında geçiş etkinleştirilir.', + restoreCommunityCopyDownloadLink: 'İndirme bağlantısını kopyala', restoreCommunityConfirm: 'Sürüm değişikliğinden sonra mevcut Enterprise süper yönetici hesabıyla Community Edition sürümüne giriş yapabilirsiniz. Enterprise sürümüne özel veriler geçiş sırasında silinecektir. Lütfen dikkatli ilerleyin.', restoreCommunityStarting: diff --git a/frontend/src/lang/modules/zh-Hant.ts b/frontend/src/lang/modules/zh-Hant.ts index ad9887e93..fcb973233 100644 --- a/frontend/src/lang/modules/zh-Hant.ts +++ b/frontend/src/lang/modules/zh-Hant.ts @@ -3034,11 +3034,14 @@ const message = { restoreCommunity: '恢復社群版', restoreCommunityOnline: '線上恢復', restoreCommunityOffline: '離線恢復', - restoreCommunityPackageFound: '已偵測到可用的社群版離線安裝包,可以執行離線恢復。', - restoreCommunityPackageMissing: '未偵測到可用的社群版離線安裝包,暫時無法執行離線恢復。', + restoreCommunityPackageFound: '安裝包已就緒', + restoreCommunityPackageMissing: '等待放置安裝包', + restoreCommunityPackageChecking: '正在檢查安裝包', + restoreCommunityPackageReadyHelper: '可直接執行離線恢復。', restoreCommunityOnlineHelper: '切換後將自動下載目前版本的社群版安裝包,並清理企業版專屬資料。', restoreCommunityOfflineHelper: '請先將版本不低於目前企業版的官方安裝包放入 {path},偵測到可用安裝包後即可執行切換。', + restoreCommunityCopyDownloadLink: '複製下載連結', restoreCommunityConfirm: '版本切換後,可以使用目前企業版超級管理員帳號登入社群版。切換過程中將清除企業版專屬資料,請謹慎操作。', restoreCommunityStarting: '正在準備社群版,完成後面板將自動重新啟動。', diff --git a/frontend/src/lang/modules/zh.ts b/frontend/src/lang/modules/zh.ts index 9ace8c9a2..eb2c18b44 100644 --- a/frontend/src/lang/modules/zh.ts +++ b/frontend/src/lang/modules/zh.ts @@ -3070,10 +3070,13 @@ const message = { restoreCommunity: '恢复社区版', restoreCommunityOnline: '在线恢复', restoreCommunityOffline: '离线恢复', - restoreCommunityPackageFound: '已检测到可用的社区版离线安装包,可以执行离线恢复。', - restoreCommunityPackageMissing: '未检测到可用的社区版离线安装包,暂时无法执行离线恢复。', + restoreCommunityPackageFound: '安装包已就绪', + restoreCommunityPackageMissing: '等待放置安装包', + restoreCommunityPackageChecking: '正在检查安装包', + restoreCommunityPackageReadyHelper: '可直接执行离线恢复。', restoreCommunityOnlineHelper: '将自动下载当前版本的社区版安装包,完成切换。', restoreCommunityOfflineHelper: '请先将版本不低于当前企业版的官方安装包放入 {path} 后执行切换。', + restoreCommunityCopyDownloadLink: '复制下载链接', restoreCommunityConfirm: '版本切换后,可以使用当前企业版超级管理员账号登录社区版。切换过程中将清除企业版专属数据,请谨慎操作。', restoreCommunityStarting: '正在准备社区版,完成后面板将自动重启。', diff --git a/frontend/src/views/setting/license-required/community-restore/index.vue b/frontend/src/views/setting/license-required/community-restore/index.vue index fdc58333c..b368f3801 100644 --- a/frontend/src/views/setting/license-required/community-restore/index.vue +++ b/frontend/src/views/setting/license-required/community-restore/index.vue @@ -23,26 +23,50 @@ {{ $t('license.restoreCommunityOffline') }} - - {{ - restoreMode === 'offline' - ? $t('license.restoreCommunityOfflineHelper', { path: restoreInfo.packageDirectory }) - : $t('license.restoreCommunityOnlineHelper') - }} + + {{ $t('license.restoreCommunityOnlineHelper') }} - +
+
+ + + + + {{ + packageChecking + ? $t('license.restoreCommunityPackageChecking') + : restoreInfo.packageExist + ? $t('license.restoreCommunityPackageFound') + : $t('license.restoreCommunityPackageMissing') + }} + +
+ +
+ + {{ restoreInfo.packageName }} + + + {{ + restoreInfo.packageExist + ? $t('license.restoreCommunityPackageReadyHelper') + : $t('license.restoreCommunityOfflineHelper', { + path: restoreInfo.packageDirectory, + }) + }} + + + {{ $t('license.restoreCommunityCopyDownloadLink') }} + +
+