diff --git a/src/locales/ar/translation.json b/src/locales/ar/translation.json index a12b3559b..5443c3dc7 100644 --- a/src/locales/ar/translation.json +++ b/src/locales/ar/translation.json @@ -248,6 +248,12 @@ "download_sources_description": "سيقوم Hydra بجلب روابط التنزيل من هذه المصادر. يجب أن يكون عنوان URL المصدر رابطًا مباشرًا لملف .json يحتوي على روابط التنزيل.", "validate_download_source": "تحقق", "remove_download_source": "إزالة", + "removed_download_sources": "تمت إزالة مصادر التنزيل", + "cancel_button_confirmation_delete_all_sources": "لا", + "confirm_button_confirmation_delete_all_sources": "نعم، احذف كل شيء", + "description_confirmation_delete_all_sources": "سوف تقوم بحذف جميع مصادر التنزيل", + "title_confirmation_delete_all_sources": "احذف جميع مصادر التنزيل", + "button_delete_all_sources": "قم بإزالة جميع مصادر التنزيل", "add_download_source": "إضافة مصدر", "download_count_zero": "لا توجد خيارات تنزيل", "download_count_one": "{{countFormatted}} خيار تنزيل", diff --git a/src/locales/be/translation.json b/src/locales/be/translation.json index 6618e4f31..ab53d17a2 100644 --- a/src/locales/be/translation.json +++ b/src/locales/be/translation.json @@ -105,6 +105,12 @@ "notifications": "Апавяшчэнні", "enable_download_notifications": "Па сканчэнні сцягванні", "enable_repack_list_notifications": "Пры даданні новага рэпака", + "cancel_button_confirmation_delete_all_sources": "Няма", + "confirm_button_confirmation_delete_all_sources": "Так,выдаліць усё", + "description_confirmation_delete_all_sources": "Вы выдаліце ​​ўсе крыніцы сцягвання", + "title_confirmation_delete_all_sources": "Выдаліць усе крыніцы сцягвання", + "removed_download_sources": "Крыніцы сцягвання выдалены", + "button_delete_all_sources": "Премахнете всички източници на изтегляне", "behavior": "Паводзіны", "quit_app_instead_hiding": "Закрываць праграму замест таго, каб хаваць яе ў трэй", "launch_with_system": "Запускаць праграму пры запуску сыстэмы" diff --git a/src/locales/bg/translation.json b/src/locales/bg/translation.json index 857d3ed4b..6d2f7bb72 100644 --- a/src/locales/bg/translation.json +++ b/src/locales/bg/translation.json @@ -252,6 +252,12 @@ "download_source_errored": "Сгрешен", "sync_download_sources": "Синхронизирай източниците", "removed_download_source": "Източника за сваляне е премахнат", + "cancel_button_confirmation_delete_all_sources": "не", + "confirm_button_confirmation_delete_all_sources": "Да, удалить все", + "description_confirmation_delete_all_sources": "Вы удалите все источники загрузки", + "title_confirmation_delete_all_sources": "Удалить все источники загрузки", + "removed_download_sources": "Шрифты удалены", + "button_delete_all_sources": "Удалить все источники загрузки", "added_download_source": "Добавен източник за сваляне", "download_sources_synced": "Всички източници за сваляне са синхронизирани", "insert_valid_json_url": "Добавете ваиден JSON линк", diff --git a/src/locales/ca/translation.json b/src/locales/ca/translation.json index 6d689f2b0..25fce6a7b 100644 --- a/src/locales/ca/translation.json +++ b/src/locales/ca/translation.json @@ -173,6 +173,12 @@ "download_sources_description": "Hydra buscarà els enllaços de descàrrega d'aquestes fonts. L'URL d'origen ha de ser un enllaç directe a un fitxer .json que contingui els enllaços de descàrrega.", "validate_download_source": "Valida", "remove_download_source": "Elimina", + "cancel_button_confirmation_delete_all_sources": "No", + "confirm_button_confirmation_delete_all_sources": "Sí, esborra-ho tot", + "description_confirmation_delete_all_sources": "Eliminareu totes les fonts de descàrrega", + "title_confirmation_delete_all_sources": "Suprimeix totes les fonts de baixada", + "removed_download_sources": "S'han eliminat les fonts de descàrrega", + "button_delete_all_sources": "Elimina totes les fonts de baixada", "add_download_source": "Afegeix font", "download_count_zero": "No hi ha baixades a la llista", "download_count_one": "{{countFormatted}} a la llista de baixades", diff --git a/src/locales/cs/translation.json b/src/locales/cs/translation.json index b3543f94d..296d4bca3 100644 --- a/src/locales/cs/translation.json +++ b/src/locales/cs/translation.json @@ -236,6 +236,12 @@ "download_source_errored": "Chyba", "sync_download_sources": "Synchronizovat zdroje", "removed_download_source": "Zdroj odebrán", + "cancel_button_confirmation_delete_all_sources": "Žádný", + "confirm_button_confirmation_delete_all_sources": "Ano, smazat vše", + "description_confirmation_delete_all_sources": "Smažete všechny zdroje stahování", + "title_confirmation_delete_all_sources": "Odstraňte všechny zdroje stahování", + "removed_download_sources": "Zdroje stahování byly odstraněny", + "button_delete_all_sources": "Odstraňte všechny zdroje stahování", "added_download_source": "Zdroj přidán", "download_sources_synced": "Všechny zdroje jsou synchronizovány", "insert_valid_json_url": "Zadej platnou JSON adresu", diff --git a/src/locales/da/translation.json b/src/locales/da/translation.json index 9a7c700f7..11746a766 100644 --- a/src/locales/da/translation.json +++ b/src/locales/da/translation.json @@ -199,6 +199,12 @@ "download_source_errored": "Fejlede", "sync_download_sources": "Synkronisér kilder", "removed_download_source": "Download kilde fjernet", + "cancel_button_confirmation_delete_all_sources": "Ingen", + "confirm_button_confirmation_delete_all_sources": "Ja, slet alt", + "description_confirmation_delete_all_sources": "Du vil slette alle downloadkilder", + "title_confirmation_delete_all_sources": "Slet alle downloadkilder", + "removed_download_sources": "Download kilder fjernet", + "button_delete_all_sources": "Fjern alle downloadkilder", "added_download_source": "Tilføjede download kilde", "download_sources_synced": "Alle download kilder er synkroniserede", "insert_valid_json_url": "Indsæt en gyldig JSON url", diff --git a/src/locales/de/translation.json b/src/locales/de/translation.json index c94b09136..1ee2254f1 100644 --- a/src/locales/de/translation.json +++ b/src/locales/de/translation.json @@ -183,6 +183,12 @@ "download_source_errored": "Fehlgeschlagen", "sync_download_sources": "Quellen synchronisieren", "removed_download_source": "Download-Quelle entfernt", + "cancel_button_confirmation_delete_all_sources": "Nein", + "confirm_button_confirmation_delete_all_sources": "Ja, alles löschen", + "description_confirmation_delete_all_sources": "Du löschen alle Downloadquellen", + "title_confirmation_delete_all_sources": "Löschen du alle Downloadquellen", + "removed_download_sources": "Download-Quellen entfernt", + "button_delete_all_sources": "Entfernen Sie alle Downloadquellen", "added_download_source": "Download-Quelle hinzugefügt", "download_sources_synced": "Alle Download-Quellen sind synchronisiert", "insert_valid_json_url": "Füge eine gültige JSON URL ein", diff --git a/src/locales/en/translation.json b/src/locales/en/translation.json index bbe922f2f..d81753b7c 100644 --- a/src/locales/en/translation.json +++ b/src/locales/en/translation.json @@ -262,6 +262,12 @@ "download_source_errored": "Errored", "sync_download_sources": "Sync sources", "removed_download_source": "Download source removed", + "removed_download_sources": "Download sources removed", + "cancel_button_confirmation_delete_all_sources": "No", + "confirm_button_confirmation_delete_all_sources": "Yes, delete everything", + "title_confirmation_delete_all_sources": "Delete all download sources", + "description_confirmation_delete_all_sources": "You will delete all download sources", + "button_delete_all_sources": "Remove all download sources", "added_download_source": "Added download source", "download_sources_synced": "All download sources are synced", "insert_valid_json_url": "Insert a valid JSON url", diff --git a/src/locales/es/translation.json b/src/locales/es/translation.json index 43839e9eb..c0ef19199 100644 --- a/src/locales/es/translation.json +++ b/src/locales/es/translation.json @@ -258,6 +258,12 @@ "download_source_errored": "Error", "sync_download_sources": "Sincronizar fuentes", "removed_download_source": "Fuente de descarga eliminada", + "cancel_button_confirmation_delete_all_sources": "No", + "confirm_button_confirmation_delete_all_sources": "Sí, eliminar todo", + "description_confirmation_delete_all_sources": "Eliminarás todas las fuentes de descarga", + "title_confirmation_delete_all_sources": "Eliminar todas las fuentes de descarga", + "removed_download_sources": "Fuentes de descarga eliminadas", + "button_delete_all_sources": "Eliminar todas las fuentes de descarga", "added_download_source": "Fuente de descarga añadida", "download_sources_synced": "Todas las fuentes de descargas están actualizadas.", "insert_valid_json_url": "Introduce una URL JSON válida", diff --git a/src/locales/et/translation.json b/src/locales/et/translation.json index 97e69a90a..1b5f70d84 100644 --- a/src/locales/et/translation.json +++ b/src/locales/et/translation.json @@ -235,6 +235,12 @@ "download_source_errored": "Vigane", "sync_download_sources": "Sünkroniseeri allikad", "removed_download_source": "Allalaadimise allikas eemaldatud", + "cancel_button_confirmation_delete_all_sources": "Ei", + "confirm_button_confirmation_delete_all_sources": "Jah, kustuta kõik", + "description_confirmation_delete_all_sources": "Kustutate kõik allalaadimisallikad", + "title_confirmation_delete_all_sources": "Kustutage kõik allalaadimisallikad", + "removed_download_sources": "Allalaadimise allikas eemaldati", + "button_delete_all_sources": "Eemaldage kõik allalaadimisallikad", "added_download_source": "Allalaadimise allikas lisatud", "download_sources_synced": "Kõik allalaadimise allikad on sünkroniseeritud", "insert_valid_json_url": "Sisesta kehtiv JSON url", diff --git a/src/locales/fa/translation.json b/src/locales/fa/translation.json index 9d4f7280b..ad4ab62dd 100644 --- a/src/locales/fa/translation.json +++ b/src/locales/fa/translation.json @@ -109,6 +109,12 @@ "launch_with_system": "زمانی که سیستم روشن می‌شود، هایدرا را باز کن", "general": "کلی", "behavior": "رفتار", + "cancel_button_confirmation_delete_all_sources": "خیر", + "confirm_button_confirmation_delete_all_sources": "ہاں، سب کچھ حذف کر دیں۔", + "description_confirmation_delete_all_sources": "آپ ڈاؤن لوڈ کے تمام ذرائع کو حذف کر دیں گے۔", + "title_confirmation_delete_all_sources": "تمام منابع دانلود را حذف کنید", + "removed_download_sources": "منابع دانلود حذف شد", + "button_delete_all_sources": "تمام منابع دانلود را حذف کنید", "enable_real_debrid": "فعال‌سازی Real-Debrid", "debrid_api_token_hint": "کلید API خود را از <ب0>اینجا بگیرید.", "save_changes": "ذخیره تغییرات" diff --git a/src/locales/fr/translation.json b/src/locales/fr/translation.json index 4d310681d..e8c0e5da6 100644 --- a/src/locales/fr/translation.json +++ b/src/locales/fr/translation.json @@ -97,7 +97,13 @@ "notifications": "Notifications", "enable_download_notifications": "Quand un téléchargement est terminé", "enable_repack_list_notifications": "Quand un nouveau repack est ajouté", - "language": "Langue" + "language": "Langue", + "cancel_button_confirmation_delete_all_sources": "Non", + "confirm_button_confirmation_delete_all_sources": "Oui, tout supprimer", + "description_confirmation_delete_all_sources": "Vous supprimerez toutes les sources de téléchargement", + "title_confirmation_delete_all_sources": "Supprimer toutes les sources de téléchargement", + "removed_download_sources": "Sources de téléchargement supprimées", + "button_delete_all_sources": "Supprimer toutes les sources de téléchargement" }, "notifications": { "download_complete": "Téléchargement terminé", diff --git a/src/locales/hu/translation.json b/src/locales/hu/translation.json index 0863d1e87..8d7da608f 100644 --- a/src/locales/hu/translation.json +++ b/src/locales/hu/translation.json @@ -104,6 +104,12 @@ "change": "Frissítés", "notifications": "Értesítések", "enable_download_notifications": "Amikor egy letöltés befejeződik", + "cancel_button_confirmation_delete_all_sources": "Nem", + "confirm_button_confirmation_delete_all_sources": "Igen, törölj mindent", + "description_confirmation_delete_all_sources": "Törölni fog minden letöltési forrást", + "title_confirmation_delete_all_sources": "Törölje az összes letöltési forrást", + "removed_download_sources": "Betűtípusok eltávolítva", + "button_delete_all_sources": "Távolítsa el az összes letöltési forrást", "enable_repack_list_notifications": "Amikor egy új repack hozzáadásra kerül" }, "notifications": { diff --git a/src/locales/id/translation.json b/src/locales/id/translation.json index a813d770c..71030f335 100644 --- a/src/locales/id/translation.json +++ b/src/locales/id/translation.json @@ -173,6 +173,12 @@ "download_sources_description": "Hydra akan mencari link unduhan dari sini. URL harus menuju file .json dengan link unduhan.", "validate_download_source": "Validasi", "remove_download_source": "Hapus", + "cancel_button_confirmation_delete_all_sources": "TIDAK", + "confirm_button_confirmation_delete_all_sources": "Ya, hapus semuanya", + "description_confirmation_delete_all_sources": "Anda akan menghapus semua sumber unduhan", + "title_confirmation_delete_all_sources": "Hapus semua sumber unduhan", + "removed_download_sources": "Font dihapus", + "button_delete_all_sources": "Hapus semua sumber unduhan", "add_download_source": "Tambahkan sumber", "download_count_zero": "Tidak ada unduhan dalam daftar", "download_count_one": "{{countFormatted}} unduhan dalam daftar", diff --git a/src/locales/it/translation.json b/src/locales/it/translation.json index 742f889f0..3b1566a4f 100644 --- a/src/locales/it/translation.json +++ b/src/locales/it/translation.json @@ -118,6 +118,12 @@ "general": "Generale", "behavior": "Comportamento", "enable_real_debrid": "Abilita Real Debrid", + "cancel_button_confirmation_delete_all_sources": "NO", + "confirm_button_confirmation_delete_all_sources": "Sì, cancella tutto", + "description_confirmation_delete_all_sources": "Eliminerai tutte le fonti di download", + "title_confirmation_delete_all_sources": "Elimina tutte le fonti di download", + "removed_download_sources": "Fonti di download rimosse", + "button_delete_all_sources": "Rimuovi tutte le fonti di download", "debrid_api_token_hint": "Puoi trovare la tua chiave API <0>here", "save_changes": "Salva modifiche" }, diff --git a/src/locales/kk/translation.json b/src/locales/kk/translation.json index e66cd5ed0..d14f957b2 100644 --- a/src/locales/kk/translation.json +++ b/src/locales/kk/translation.json @@ -171,6 +171,12 @@ "download_sources_description": "Hydra осы көздерден жүктеу сілтемелерін алады. URL-да жүктеу сілтемелері бар .json файлына тікелей сілтеме болуы керек.", "validate_download_source": "Тексеру", "remove_download_source": "Жою", + "cancel_button_confirmation_delete_all_sources": "Жоқ", + "confirm_button_confirmation_delete_all_sources": "Иә, бәрін жойыңыз", + "description_confirmation_delete_all_sources": "Барлық жүктеу көздерін жоясыз", + "title_confirmation_delete_all_sources": "Барлық жүктеу көздерін жойыңыз", + "removed_download_sources": "Қаріптер жойылды", + "button_delete_all_sources": "Барлық жүктеу көздерін жойыңыз", "add_download_source": "Жүктеу көзін қосу", "download_count_zero": "Жүктеулер тізімінде жоқ", "download_count_one": "{{countFormatted}} жүктеу тізімде", diff --git a/src/locales/ko/translation.json b/src/locales/ko/translation.json index bc8e60567..ff9657eba 100644 --- a/src/locales/ko/translation.json +++ b/src/locales/ko/translation.json @@ -109,6 +109,12 @@ "launch_with_system": "컴퓨터가 시작되었을 때 Hydra 실행", "general": "일반", "behavior": "행동", + "cancel_button_confirmation_delete_all_sources": "아니요", + "confirm_button_confirmation_delete_all_sources": "네, 모두 삭제합니다", + "description_confirmation_delete_all_sources": "모든 다운로드 소스를 삭제합니다.", + "title_confirmation_delete_all_sources": "모든 다운로드 소스 삭제", + "removed_download_sources": "제거된 글꼴", + "button_delete_all_sources": "모든 다운로드 소스 제거", "enable_real_debrid": "Real-Debrid 활성화", "debrid_api_token_hint": "API 키를 <0>이곳에서 얻으세요.", "save_changes": "변경 사항 저장" diff --git a/src/locales/nb/translation.json b/src/locales/nb/translation.json index a6fb1bcc2..00f95626f 100644 --- a/src/locales/nb/translation.json +++ b/src/locales/nb/translation.json @@ -199,6 +199,12 @@ "download_source_errored": "Mislyktes", "sync_download_sources": "Synkroniser kilder", "removed_download_source": "Nedlastingskilde fjernet", + "cancel_button_confirmation_delete_all_sources": "Ingen", + "confirm_button_confirmation_delete_all_sources": "Ja, slett alt", + "description_confirmation_delete_all_sources": "Du vil slette alle nedlastingskilder", + "title_confirmation_delete_all_sources": "Slett alle nedlastingskilder", + "removed_download_sources": "Fonter fjernet", + "button_delete_all_sources": "Fjern alle nedlastingskilder", "added_download_source": "La til Nedlastingskilde", "download_sources_synced": "Alle nedlastingskilder er synkroniserte", "insert_valid_json_url": "Innsett en gyldig JSON url", diff --git a/src/locales/nl/translation.json b/src/locales/nl/translation.json index 6d9de5fa7..4936e88d6 100644 --- a/src/locales/nl/translation.json +++ b/src/locales/nl/translation.json @@ -110,6 +110,12 @@ "launch_with_system": "Start Hydra bij het opstarten van het systeem", "general": "Algemeen", "behavior": "Gedrag", + "cancel_button_confirmation_delete_all_sources": "Nee", + "confirm_button_confirmation_delete_all_sources": "Ja, verwijder alles", + "description_confirmation_delete_all_sources": "Je verwijdert alle downloadbronnen", + "title_confirmation_delete_all_sources": "Verwijder alle downloadbronnen", + "removed_download_sources": "Downloadbronnen verwijderd", + "button_delete_all_sources": "Verwijder alle downloadbronnen", "enable_real_debrid": "Enable Real-Debrid", "debrid_api_token_hint": "U kunt uw API-sleutel <0>hier verkrijgen.", "save_changes": "Wijzigingen opslaan" diff --git a/src/locales/pl/translation.json b/src/locales/pl/translation.json index bdaf822c2..576ebe7d8 100644 --- a/src/locales/pl/translation.json +++ b/src/locales/pl/translation.json @@ -118,6 +118,11 @@ "general": "Ogólne", "behavior": "Zachowania", "language": "Język", + "cancel_button_confirmation_delete_all_sources": "NIE", + "confirm_button_confirmation_delete_all_sources": "Tak, usuń wszystko", + "description_confirmation_delete_all_sources": "Usuniesz wszystkie źródła pobierania", + "title_confirmation_delete_all_sources": "Usuń wszystkie źródła pobierania", + "button_delete_all_sources": "Usuń wszystkie źródła pobierania", "enable_real_debrid": "Włącz Real-Debrid", "debrid_api_token_hint": "Możesz uzyskać swój klucz API <0>tutaj", "save_changes": "Zapisz zmiany" diff --git a/src/locales/pt-BR/translation.json b/src/locales/pt-BR/translation.json index b34f18741..87b30e177 100644 --- a/src/locales/pt-BR/translation.json +++ b/src/locales/pt-BR/translation.json @@ -251,6 +251,12 @@ "download_source_errored": "Falhou", "sync_download_sources": "Sincronizar", "removed_download_source": "Fonte removida", + "removed_download_sources": "Fontes removidas", + "cancel_button_confirmation_delete_all_sources": "Não", + "confirm_button_confirmation_delete_all_sources": "Sim, excluir tudo", + "title_confirmation_delete_all_sources": "Excluir todas as fontes de download", + "description_confirmation_delete_all_sources": "Você irá excluir todas as fontes de download", + "button_delete_all_sources": "Remover todas as fontes de download", "added_download_source": "Fonte adicionada", "download_sources_synced": "As fontes foram sincronizadas", "insert_valid_json_url": "Insira a url de um JSON válido", diff --git a/src/locales/pt-PT/translation.json b/src/locales/pt-PT/translation.json index 3b8496ae4..18b913a40 100644 --- a/src/locales/pt-PT/translation.json +++ b/src/locales/pt-PT/translation.json @@ -230,6 +230,12 @@ "download_source_errored": "Falhou", "sync_download_sources": "Sincronizar", "removed_download_source": "Fonte removida", + "cancel_button_confirmation_delete_all_sources": "Não", + "confirm_button_confirmation_delete_all_sources": "Sim, apague tudo", + "description_confirmation_delete_all_sources": "Irá eliminar todas as fontes de download", + "title_confirmation_delete_all_sources": "Apague todas as fontes de download", + "removed_download_sources": "Fontes de download removidas", + "button_delete_all_sources": "Remover todas as fontes de download", "added_download_source": "Fonte adicionada", "download_sources_synced": "As fontes foram sincronizadas", "insert_valid_json_url": "Insere o URL de um JSON válido", diff --git a/src/locales/ro/translation.json b/src/locales/ro/translation.json index 9003ecc68..46fdc5ee3 100644 --- a/src/locales/ro/translation.json +++ b/src/locales/ro/translation.json @@ -125,6 +125,12 @@ "behavior": "Comportament", "language": "Limbă", "api_token": "Token API", + "cancel_button_confirmation_delete_all_sources": "Nu", + "confirm_button_confirmation_delete_all_sources": "Da, șterge totul", + "description_confirmation_delete_all_sources": "Veți șterge toate sursele de descărcare", + "title_confirmation_delete_all_sources": "Ștergeți toate sursele de descărcare", + "removed_download_sources": "Sursele de descărcare au fost eliminate", + "button_delete_all_sources": "Eliminați toate sursele de descărcare", "enable_real_debrid": "Activează Real-Debrid", "real_debrid_description": "Real-Debrid este un descărcător fără restricții care îți permite să descarci fișiere instantaneu și la cea mai bună viteză a internetului tău.", "debrid_invalid_token": "Token API invalid", diff --git a/src/locales/ru/translation.json b/src/locales/ru/translation.json index 18b8f1f54..493e55642 100644 --- a/src/locales/ru/translation.json +++ b/src/locales/ru/translation.json @@ -259,6 +259,12 @@ "download_source_errored": "Ошибка", "sync_download_sources": "Обновить источники", "removed_download_source": "Источник загрузок удален", + "cancel_button_confirmation_delete_all_sources": "Нет", + "confirm_button_confirmation_delete_all_sources": "Да, удалить все", + "description_confirmation_delete_all_sources": "Вы удалите все источники загрузки", + "title_confirmation_delete_all_sources": "Удалить все источники загрузки", + "removed_download_sources": "Шрифты удалены", + "button_delete_all_sources": "Удалить все источники загрузки", "added_download_source": "Источник загрузок добавлен", "download_sources_synced": "Все источники загрузок синхронизированы", "insert_valid_json_url": "Вставьте действительный URL JSON-файла", diff --git a/src/locales/tr/translation.json b/src/locales/tr/translation.json index 9095b693d..47a0b38ea 100644 --- a/src/locales/tr/translation.json +++ b/src/locales/tr/translation.json @@ -249,6 +249,12 @@ "validate_download_source": "Doğrula", "remove_download_source": "Kaldır", "add_download_source": "Kaynak ekle", + "cancel_button_confirmation_delete_all_sources": "HAYIR", + "confirm_button_confirmation_delete_all_sources": "Evet, her şeyi sil", + "description_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sileceksiniz", + "title_confirmation_delete_all_sources": "Tüm indirme kaynaklarını sil", + "removed_download_sources": "Yazı tipleri kaldırıldı", + "button_delete_all_sources": "Tüm indirme kaynaklarını kaldır", "download_count_zero": "İndirme seçeneği yok", "download_count_one": "{{countFormatted}} indirme seçeneği", "download_count_other": "{{countFormatted}} indirme seçeneği", diff --git a/src/locales/uk/translation.json b/src/locales/uk/translation.json index 174e768cf..6c853635b 100644 --- a/src/locales/uk/translation.json +++ b/src/locales/uk/translation.json @@ -174,6 +174,12 @@ "import": "Імпортувати", "insert_valid_json_url": "Вставте дійсний URL JSON-файлу", "language": "Мова", + "cancel_button_confirmation_delete_all_sources": "немає", + "confirm_button_confirmation_delete_all_sources": "Так, видалити все", + "description_confirmation_delete_all_sources": "Ви видалите всі джерела завантаження", + "title_confirmation_delete_all_sources": "Видалити всі джерела завантаження", + "removed_download_sources": "Джерела завантажень видалено", + "button_delete_all_sources": "Видаліть усі джерела завантаження", "api_token": "API-токен", "debrid_api_token_hint": "API токен можливо отримати <0>тут", "real_debrid_api_token_label": "Real-Debrid API-токен", diff --git a/src/locales/zh/translation.json b/src/locales/zh/translation.json index ba48a21b8..37ebde11a 100644 --- a/src/locales/zh/translation.json +++ b/src/locales/zh/translation.json @@ -225,6 +225,12 @@ "download_sources_description": "Hydra 将从这些源获取下载链接。源 URL 必须是直接链接到包含下载链接的 .json 文件。", "validate_download_source": "验证", "remove_download_source": "移除", + "cancel_button_confirmation_delete_all_sources": "不", + "confirm_button_confirmation_delete_all_sources": "是的,删除所有内容", + "description_confirmation_delete_all_sources": "您将删除所有下载源", + "title_confirmation_delete_all_sources": "删除所有下载源", + "removed_download_sources": "已删除字体", + "button_delete_all_sources": "删除所有下载源", "add_download_source": "添加源", "download_count_zero": "列表中无下载", "download_count_one": "列表中有 {{countFormatted}} 个下载", diff --git a/src/renderer/src/components/confirmation-modal/confirmation-modal.tsx b/src/renderer/src/components/confirmation-modal/confirmation-modal.tsx index eaf3526a8..632569357 100644 --- a/src/renderer/src/components/confirmation-modal/confirmation-modal.tsx +++ b/src/renderer/src/components/confirmation-modal/confirmation-modal.tsx @@ -10,6 +10,8 @@ export interface ConfirmationModalProps extends Omit { onConfirm: () => void; onCancel?: () => void; + + buttonsIsDisabled?: boolean; } export function ConfirmationModal({ @@ -18,6 +20,7 @@ export function ConfirmationModal({ descriptionText, onConfirm, onCancel, + buttonsIsDisabled = false, ...props }: ConfirmationModalProps) { const handleCancelClick = () => { @@ -38,7 +41,11 @@ export function ConfirmationModal({ - diff --git a/src/renderer/src/pages/settings/settings-download-sources.scss b/src/renderer/src/pages/settings/settings-download-sources.scss index 6ef422837..b1d12fe33 100644 --- a/src/renderer/src/pages/settings/settings-download-sources.scss +++ b/src/renderer/src/pages/settings/settings-download-sources.scss @@ -53,4 +53,9 @@ text-decoration: none; } } + + &__remove_all_sources_button { + display: flex; + justify-content: flex-end; + } } diff --git a/src/renderer/src/pages/settings/settings-download-sources.tsx b/src/renderer/src/pages/settings/settings-download-sources.tsx index 11afa6300..767722a67 100644 --- a/src/renderer/src/pages/settings/settings-download-sources.tsx +++ b/src/renderer/src/pages/settings/settings-download-sources.tsx @@ -1,10 +1,20 @@ import { useContext, useEffect, useState } from "react"; -import { TextField, Button, Badge } from "@renderer/components"; +import { + TextField, + Button, + Badge, + ConfirmationModal, +} from "@renderer/components"; import { useTranslation } from "react-i18next"; import type { DownloadSource } from "@types"; -import { NoEntryIcon, PlusCircleIcon, SyncIcon } from "@primer/octicons-react"; +import { + NoEntryIcon, + PlusCircleIcon, + SyncIcon, + XIcon, +} from "@primer/octicons-react"; import { AddDownloadSourceModal } from "./add-download-source-modal"; import { useAppDispatch, useRepacks, useToast } from "@renderer/hooks"; import { DownloadSourceStatus } from "@shared"; @@ -16,6 +26,10 @@ import { setFilters, clearFilters } from "@renderer/features"; import "./settings-download-sources.scss"; export function SettingsDownloadSources() { + const [ + showConfirmationDeleteAllSourcesModal, + setShowConfirmationDeleteAllSourcesModal, + ] = useState(false); const [showAddDownloadSourceModal, setShowAddDownloadSourceModal] = useState(false); const [downloadSources, setDownloadSources] = useState([]); @@ -23,6 +37,7 @@ export function SettingsDownloadSources() { useState(false); const [isRemovingDownloadSource, setIsRemovingDownloadSource] = useState(false); + const [isFetchingSources, setIsFetchingSources] = useState(true); const { sourceUrl, clearSourceUrl } = useContext(settingsContext); @@ -41,6 +56,9 @@ export function SettingsDownloadSources() { .sortBy("createdAt") .then((sources) => { setDownloadSources(sources.reverse()); + }) + .finally(() => { + setIsFetchingSources(false); }); }; @@ -68,6 +86,25 @@ export function SettingsDownloadSources() { }; }; + const handleRemoveAllDownloadSources = () => { + setIsRemovingDownloadSource(true); + + const id = crypto.randomUUID(); + const channel = new BroadcastChannel(`download_sources:delete_all:${id}`); + + downloadSourcesWorker.postMessage(["DELETE_ALL_DOWNLOAD_SOURCES", id]); + + channel.onmessage = () => { + showSuccessToast(t("removed_download_sources")); + + getDownloadSources(); + setIsRemovingDownloadSource(false); + setShowConfirmationDeleteAllSourcesModal(false); + channel.close(); + updateRepacks(); + }; + }; + const handleAddDownloadSource = async () => { await getDownloadSources(); showSuccessToast(t("added_download_source")); @@ -115,6 +152,17 @@ export function SettingsDownloadSources() { onClose={handleModalClose} onAddDownloadSource={handleAddDownloadSource} /> + setShowConfirmationDeleteAllSourcesModal(false)} + buttonsIsDisabled={isRemovingDownloadSource} + />

{t("download_sources_description")}

@@ -144,6 +192,20 @@ export function SettingsDownloadSources() { + {!isFetchingSources && downloadSources.length >= 2 && ( +
+ +
+ )} +
    {downloadSources.map((downloadSource) => (
  • ; @@ -114,6 +115,13 @@ const deleteDownloadSource = async (id: number) => { }); }; +const deleteAllDowloadSources = async () => { + await db.transaction("rw", repacksTable, downloadSourcesTable, async () => { + await repacksTable.clear(); + await downloadSourcesTable.clear(); + }); +}; + self.onmessage = async (event: MessageEvent) => { const [type, data] = event.data; @@ -132,6 +140,14 @@ self.onmessage = async (event: MessageEvent) => { }); } + if (type === "DELETE_ALL_DOWNLOAD_SOURCES") { + await deleteAllDowloadSources(); + + const channel = new BroadcastChannel(`download_sources:delete_all:${data}`); + + channel.postMessage(true); + } + if (type === "DELETE_DOWNLOAD_SOURCE") { await deleteDownloadSource(data);