From 56c4fdf3c1943828449324f9bded5ffaead39de2 Mon Sep 17 00:00:00 2001 From: Tommaso Casaburi Date: Thu, 21 May 2026 17:37:18 +0700 Subject: [PATCH] fix(mod multiboard): show account import empty state --- public/translations/ar/default.json | 5 ++-- public/translations/bn/default.json | 5 ++-- public/translations/cs/default.json | 5 ++-- public/translations/da/default.json | 5 ++-- public/translations/de/default.json | 5 ++-- public/translations/el/default.json | 5 ++-- public/translations/en/default.json | 3 +- public/translations/es/default.json | 5 ++-- public/translations/fa/default.json | 5 ++-- public/translations/fi/default.json | 5 ++-- public/translations/fil/default.json | 5 ++-- public/translations/fr/default.json | 5 ++-- public/translations/he/default.json | 5 ++-- public/translations/hi/default.json | 5 ++-- public/translations/hu/default.json | 5 ++-- public/translations/id/default.json | 5 ++-- public/translations/it/default.json | 5 ++-- public/translations/ja/default.json | 5 ++-- public/translations/ko/default.json | 5 ++-- public/translations/mr/default.json | 5 ++-- public/translations/nl/default.json | 5 ++-- public/translations/no/default.json | 5 ++-- public/translations/pl/default.json | 5 ++-- public/translations/pt/default.json | 5 ++-- public/translations/ro/default.json | 5 ++-- public/translations/ru/default.json | 5 ++-- public/translations/sq/default.json | 5 ++-- public/translations/sv/default.json | 5 ++-- public/translations/te/default.json | 5 ++-- public/translations/th/default.json | 5 ++-- public/translations/tr/default.json | 5 ++-- public/translations/uk/default.json | 5 ++-- public/translations/ur/default.json | 5 ++-- public/translations/vi/default.json | 5 ++-- public/translations/zh/default.json | 5 ++-- src/components/mod-empty-state/index.ts | 1 + .../mod-empty-state.module.css | 28 +++++++++++++++++++ .../mod-empty-state/mod-empty-state.tsx | 22 +++++++++++++++ src/views/board/__tests__/board.test.tsx | 2 ++ src/views/board/board.tsx | 6 ++-- src/views/catalog/__tests__/catalog.test.tsx | 16 +++++++++++ src/views/catalog/catalog.tsx | 24 +++++++++++++++- 42 files changed, 198 insertions(+), 74 deletions(-) create mode 100644 src/components/mod-empty-state/index.ts create mode 100644 src/components/mod-empty-state/mod-empty-state.module.css create mode 100644 src/components/mod-empty-state/mod-empty-state.tsx diff --git a/public/translations/ar/default.json b/public/translations/ar/default.json index fd5842ca..d46db13d 100644 --- a/public/translations/ar/default.json +++ b/public/translations/ar/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "تم إزالة هذا الموضوع بواسطة مشرفي المنتدى", "this_reply_was_deleted": "تم حذف هذه الرد من قبل مؤلفه", "this_reply_was_removed": "تمت إزالة هذه الرد من قبل مشرفي المنتدى", - "not_mod_of_any_board": "أنت لست مشرفًا في أي لوحة. [<1>استيراد] حساب المشرف الخاص بك", + "not_mod_of_any_board": "أنت لست مشرفًا في أي لوحة.", "search_results_for": "نتائج البحث عن", "help": "مساعدة", "filter_and_highlights_help": "مساعدة الفلاتر والإبرازات", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "تجاهل", - "board_address_unverified_warning": "لم يتم التحقق من عنوان هذه اللوحة. قد لا يكون مالك اللوحة مالكًا لهذا العنوان." + "board_address_unverified_warning": "لم يتم التحقق من عنوان هذه اللوحة. قد لا يكون مالك اللوحة مالكًا لهذا العنوان.", + "go_to_settings_to_import_mod_account": "انتقل إلى <1>الإعدادات لاستيراد حساب المشرف الخاص بك" } diff --git a/public/translations/bn/default.json b/public/translations/bn/default.json index e75a7743..46c92c64 100644 --- a/public/translations/bn/default.json +++ b/public/translations/bn/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "এই থ্রেডটি বোর্ড moderators দ্বারা মুছে ফেলা হয়েছে", "this_reply_was_deleted": "এই প্রতিক্রিয়া তার লেখক দ্বারা মুছে ফেলা হয়েছে", "this_reply_was_removed": "এই প্রতিক্রিয়া বোর্ড পরিচালকদের দ্বারা সরানো হয়েছে", - "not_mod_of_any_board": "আপনি কোনও বোর্ডের মড নন। [<1>আমদানি করুন] আপনার মড অ্যাকাউন্ট", + "not_mod_of_any_board": "আপনি কোনও বোর্ডের মড নন।", "search_results_for": "অনুসন্ধান ফলাফল", "help": "সাহায্য", "filter_and_highlights_help": "ফিল্টার এবং হাইলাইট সাহায্য", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "উপেক্ষা করুন", - "board_address_unverified_warning": "এই বোর্ড ঠিকানাটি যাচাই করা হয়নি। বোর্ডের মালিক এই ঠিকানার মালিক নাও হতে পারেন।" + "board_address_unverified_warning": "এই বোর্ড ঠিকানাটি যাচাই করা হয়নি। বোর্ডের মালিক এই ঠিকানার মালিক নাও হতে পারেন।", + "go_to_settings_to_import_mod_account": "আপনার মড অ্যাকাউন্ট আমদানি করতে <1>সেটিংস-এ যান" } diff --git a/public/translations/cs/default.json b/public/translations/cs/default.json index 230af2ff..176bff10 100644 --- a/public/translations/cs/default.json +++ b/public/translations/cs/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Toto vlákno bylo odstraněno moderátory fóra", "this_reply_was_deleted": "Tato odpověď byla smazána autorem", "this_reply_was_removed": "Tato odpověď byla odstraněna moderátory fóra", - "not_mod_of_any_board": "Nejste moderátor žádné desky. [<1>Importujte] svůj moderátorský účet", + "not_mod_of_any_board": "Nejste moderátor žádné desky.", "search_results_for": "Výsledky hledání pro", "help": "Pomoc", "filter_and_highlights_help": "Pomoc s filtry a zvýrazněním", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorovat", - "board_address_unverified_warning": "Tato adresa nástěnky není ověřená. Vlastník nástěnky nemusí tuto adresu vlastnit." + "board_address_unverified_warning": "Tato adresa nástěnky není ověřená. Vlastník nástěnky nemusí tuto adresu vlastnit.", + "go_to_settings_to_import_mod_account": "Přejděte do <1>nastavení a importujte svůj moderátorský účet" } diff --git a/public/translations/da/default.json b/public/translations/da/default.json index aeae2846..07417ebf 100644 --- a/public/translations/da/default.json +++ b/public/translations/da/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Denne tråd blev fjernet af boardmoderatorer", "this_reply_was_deleted": "Dette svar blev slettet af forfatteren", "this_reply_was_removed": "Dette svar blev fjernet af forummoderatorer", - "not_mod_of_any_board": "Du er ikke moderator for nogen tavler. [<1>Importér] din mod-konto", + "not_mod_of_any_board": "Du er ikke moderator for nogen tavler.", "search_results_for": "Søgeresultater for", "help": "Hjælp", "filter_and_highlights_help": "Filtre og fremhævelser Hjælp", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", - "board_address_unverified_warning": "Denne boardadresse er ikke verificeret. Boardets ejer ejer muligvis ikke denne adresse." + "board_address_unverified_warning": "Denne boardadresse er ikke verificeret. Boardets ejer ejer muligvis ikke denne adresse.", + "go_to_settings_to_import_mod_account": "Gå til <1>indstillinger for at importere din mod-konto" } diff --git a/public/translations/de/default.json b/public/translations/de/default.json index cd60291a..47338153 100644 --- a/public/translations/de/default.json +++ b/public/translations/de/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Dieser Thread wurde von den Moderatoren des Boards entfernt", "this_reply_was_deleted": "Diese Antwort wurde vom Autor gelöscht", "this_reply_was_removed": "Diese Antwort wurde von den Forenmoderatoren entfernt", - "not_mod_of_any_board": "Du bist kein Moderator eines Boards. [<1>Importiere] dein Moderatorkonto", + "not_mod_of_any_board": "Du bist kein Moderator eines Boards.", "search_results_for": "Suchergebnisse für", "help": "Hilfe", "filter_and_highlights_help": "Filter- und Markierungs-Hilfe", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorieren", - "board_address_unverified_warning": "Diese Board-Adresse ist nicht verifiziert. Der Board-Betreiber besitzt diese Adresse möglicherweise nicht." + "board_address_unverified_warning": "Diese Board-Adresse ist nicht verifiziert. Der Board-Betreiber besitzt diese Adresse möglicherweise nicht.", + "go_to_settings_to_import_mod_account": "Gehe zu <1>Einstellungen, um dein Moderatorkonto zu importieren" } diff --git a/public/translations/el/default.json b/public/translations/el/default.json index e2333635..56f41b5f 100644 --- a/public/translations/el/default.json +++ b/public/translations/el/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Αυτή η συζήτηση αφαιρέθηκε από τους διαχειριστές του φόρουμ", "this_reply_was_deleted": "Αυτή η απάντηση διαγράφηκε από τον συγγραφέα της", "this_reply_was_removed": "Η απάντηση αυτή αφαιρέθηκε από τους διαχειριστές του φόρουμ", - "not_mod_of_any_board": "Δεν είστε διαχειριστής σε καμία κοινότητα. [<1>Εισαγωγή] του λογαριασμού διαχειριστή σας", + "not_mod_of_any_board": "Δεν είστε διαχειριστής σε καμία κοινότητα.", "search_results_for": "Αποτελέσματα αναζήτησης για", "help": "Βοήθεια", "filter_and_highlights_help": "Βοήθεια φίλτρων και επισήμανσης", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Παράβλεψη", - "board_address_unverified_warning": "Αυτή η διεύθυνση board δεν έχει επαληθευτεί. Ο ιδιοκτήτης του board ενδέχεται να μην κατέχει αυτή τη διεύθυνση." + "board_address_unverified_warning": "Αυτή η διεύθυνση board δεν έχει επαληθευτεί. Ο ιδιοκτήτης του board ενδέχεται να μην κατέχει αυτή τη διεύθυνση.", + "go_to_settings_to_import_mod_account": "Μεταβείτε στις <1>ρυθμίσεις για να εισαγάγετε τον λογαριασμό διαχειριστή σας" } diff --git a/public/translations/en/default.json b/public/translations/en/default.json index aba892ef..e3177493 100644 --- a/public/translations/en/default.json +++ b/public/translations/en/default.json @@ -224,7 +224,8 @@ "this_thread_was_removed": "This thread was removed by board moderators", "this_reply_was_deleted": "This reply was deleted by its author", "this_reply_was_removed": "This reply was removed by board moderators", - "not_mod_of_any_board": "You are not a mod of any board. [<1>Import] your mod account", + "not_mod_of_any_board": "You are not a mod of any board.", + "go_to_settings_to_import_mod_account": "Go to <1>settings to import your mod account", "search_results_for": "Search results for", "help": "Help", "filter_and_highlights_help": "Filters & Highlights Help", diff --git a/public/translations/es/default.json b/public/translations/es/default.json index f1dab9bc..8fb4bac6 100644 --- a/public/translations/es/default.json +++ b/public/translations/es/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Este hilo fue eliminado por los moderadores del foro", "this_reply_was_deleted": "Esta respuesta fue eliminada por su autor", "this_reply_was_removed": "Esta respuesta fue eliminada por los moderadores del foro", - "not_mod_of_any_board": "No eres moderador de ningún tablero. [<1>Importa] tu cuenta de moderador", + "not_mod_of_any_board": "No eres moderador de ningún tablero.", "search_results_for": "Resultados de búsqueda para", "help": "Ayuda", "filter_and_highlights_help": "Ayuda de filtros y resaltes", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Descartar", - "board_address_unverified_warning": "Esta dirección del tablón no está verificada. Es posible que el propietario del tablón no sea dueño de esta dirección." + "board_address_unverified_warning": "Esta dirección del tablón no está verificada. Es posible que el propietario del tablón no sea dueño de esta dirección.", + "go_to_settings_to_import_mod_account": "Ve a <1>configuración para importar tu cuenta de moderador" } diff --git a/public/translations/fa/default.json b/public/translations/fa/default.json index 0c432607..17982d5c 100644 --- a/public/translations/fa/default.json +++ b/public/translations/fa/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "این تاپیک توسط مدیران انجمن حذف شد", "this_reply_was_deleted": "این پاسخ توسط نویسنده‌اش حذف شد", "this_reply_was_removed": "این پاسخ توسط مدیران انجمن حذف شد", - "not_mod_of_any_board": "شما مدیر هیچ تابلویی نیستید. [<1>وارد کردن] حساب مدیر خود", + "not_mod_of_any_board": "شما مدیر هیچ تابلویی نیستید.", "search_results_for": "نتایج جستجو برای", "help": "کمک", "filter_and_highlights_help": "کمک فیلترها و برجسته‌ها", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "نادیده گرفتن", - "board_address_unverified_warning": "این نشانی برد تأیید نشده است. ممکن است مالک برد صاحب این نشانی نباشد." + "board_address_unverified_warning": "این نشانی برد تأیید نشده است. ممکن است مالک برد صاحب این نشانی نباشد.", + "go_to_settings_to_import_mod_account": "برای وارد کردن حساب مدیر خود به <1>تنظیمات بروید" } diff --git a/public/translations/fi/default.json b/public/translations/fi/default.json index 70e85f39..c80e2b97 100644 --- a/public/translations/fi/default.json +++ b/public/translations/fi/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Tämä ketju poistettiin foorumin moderaattoreiden toimesta", "this_reply_was_deleted": "Tämä vastaus poistettiin sen kirjoittajalta", "this_reply_was_removed": "Tämä vastaus poistettiin foorumin moderaattoreiden toimesta", - "not_mod_of_any_board": "Et ole moderaattori missään taulussa. [<1>Tuo] moderaattoritilisi", + "not_mod_of_any_board": "Et ole moderaattori missään taulussa.", "search_results_for": "Hakutulokset hakusanalle", "help": "Apua", "filter_and_highlights_help": "Suodattimet ja korostukset -apu", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ohita", - "board_address_unverified_warning": "Tätä laudan osoitetta ei ole vahvistettu. Laudan omistaja ei välttämättä omista tätä osoitetta." + "board_address_unverified_warning": "Tätä laudan osoitetta ei ole vahvistettu. Laudan omistaja ei välttämättä omista tätä osoitetta.", + "go_to_settings_to_import_mod_account": "Siirry <1>asetuksiin tuodaksesi moderaattoritilisi" } diff --git a/public/translations/fil/default.json b/public/translations/fil/default.json index 15fefd7d..e7a55588 100644 --- a/public/translations/fil/default.json +++ b/public/translations/fil/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Inalis ang thread na ito ng mga moderator ng board", "this_reply_was_deleted": "Ang tugon na ito ay tinanggal ng may-akda nito", "this_reply_was_removed": "Ang sagot na ito ay tinanggal ng mga moderator ng board", - "not_mod_of_any_board": "Hindi ka mod ng anumang board. [<1>I-import] ang iyong mod account", + "not_mod_of_any_board": "Hindi ka mod ng anumang board.", "search_results_for": "Mga resulta ng paghahanap para sa", "help": "Tulong", "filter_and_highlights_help": "Tulong sa mga filter at highlight", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Huwag pansinin", - "board_address_unverified_warning": "Hindi beripikado ang address ng board na ito. Maaaring hindi pag-aari ng may-ari ng board ang address na ito." + "board_address_unverified_warning": "Hindi beripikado ang address ng board na ito. Maaaring hindi pag-aari ng may-ari ng board ang address na ito.", + "go_to_settings_to_import_mod_account": "Pumunta sa <1>mga setting para i-import ang iyong mod account" } diff --git a/public/translations/fr/default.json b/public/translations/fr/default.json index 3112e6e3..d84d541c 100644 --- a/public/translations/fr/default.json +++ b/public/translations/fr/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Ce sujet a été supprimé par les modérateurs du forum", "this_reply_was_deleted": "Cette réponse a été supprimée par son auteur", "this_reply_was_removed": "Cette réponse a été supprimée par les modérateurs du forum", - "not_mod_of_any_board": "Vous n'êtes modérateur d'aucun forum. [<1>Importez] votre compte de modération", + "not_mod_of_any_board": "Vous n'êtes modérateur d'aucun forum.", "search_results_for": "Résultats de recherche pour", "help": "Aide", "filter_and_highlights_help": "Aide sur les filtres et surlignages", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", - "board_address_unverified_warning": "Cette adresse de board n'est pas vérifiée. Le propriétaire du board pourrait ne pas posséder cette adresse." + "board_address_unverified_warning": "Cette adresse de board n'est pas vérifiée. Le propriétaire du board pourrait ne pas posséder cette adresse.", + "go_to_settings_to_import_mod_account": "Allez dans les <1>paramètres pour importer votre compte de modération" } diff --git a/public/translations/he/default.json b/public/translations/he/default.json index dc5a697c..3ce84411 100644 --- a/public/translations/he/default.json +++ b/public/translations/he/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "השרשור הזה הוסר על ידי מנהלי הפורום", "this_reply_was_deleted": "תשובה זו נמחקה על ידי המחבר שלה", "this_reply_was_removed": "תשובה זו הוסרה על ידי מנהלי הפורום", - "not_mod_of_any_board": "אתה לא מוד באף לוח. [<1>ייבא] את חשבון המוד שלך", + "not_mod_of_any_board": "אתה לא מוד באף לוח.", "search_results_for": "תוצאות חיפוש עבור", "help": "עזרה", "filter_and_highlights_help": "עזרה במסננים והדגשות", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "התעלם", - "board_address_unverified_warning": "כתובת הלוח הזו אינה מאומתת. ייתכן שבעל הלוח אינו הבעלים של הכתובת הזו." + "board_address_unverified_warning": "כתובת הלוח הזו אינה מאומתת. ייתכן שבעל הלוח אינו הבעלים של הכתובת הזו.", + "go_to_settings_to_import_mod_account": "עבור אל <1>הגדרות כדי לייבא את חשבון המוד שלך" } diff --git a/public/translations/hi/default.json b/public/translations/hi/default.json index f784ecf8..a2a69720 100644 --- a/public/translations/hi/default.json +++ b/public/translations/hi/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "यह थ्रेड बोर्ड मॉडरेटर्स द्वारा हटा दिया गया था", "this_reply_was_deleted": "इस उत्तर को इसके लेखक द्वारा हटा दिया गया था", "this_reply_was_removed": "यह उत्तर बोर्ड मॉडरेटर द्वारा हटा दिया गया था", - "not_mod_of_any_board": "आप किसी बोर्ड के मॉड नहीं हैं। [<1>इम्पोर्ट करें] अपना मॉड खाता", + "not_mod_of_any_board": "आप किसी बोर्ड के मॉड नहीं हैं।", "search_results_for": "के लिए खोज परिणाम", "help": "मदद", "filter_and_highlights_help": "फ़िल्टर और हाइलाइट्स सहायता", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "अनदेखा करें", - "board_address_unverified_warning": "इस बोर्ड पते की पुष्टि नहीं हुई है। हो सकता है बोर्ड का मालिक इस पते का मालिक न हो।" + "board_address_unverified_warning": "इस बोर्ड पते की पुष्टि नहीं हुई है। हो सकता है बोर्ड का मालिक इस पते का मालिक न हो।", + "go_to_settings_to_import_mod_account": "अपना मॉड खाता इम्पोर्ट करने के लिए <1>सेटिंग्स पर जाएं" } diff --git a/public/translations/hu/default.json b/public/translations/hu/default.json index 42bddbf3..e515c64a 100644 --- a/public/translations/hu/default.json +++ b/public/translations/hu/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Ezt a témát a fórum moderátorai eltávolították", "this_reply_was_deleted": "Ez a válasz törölve lett a szerzője által", "this_reply_was_removed": "Ez a válasz törlésre került a fórum moderátorai által", - "not_mod_of_any_board": "Nem vagy moderátor egyetlen táblán sem. [<1>Importáld] a moderátori fiókodat", + "not_mod_of_any_board": "Nem vagy moderátor egyetlen táblán sem.", "search_results_for": "Keresési eredmények", "help": "Segítség", "filter_and_highlights_help": "Szűrők és kiemelések súgó", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Mellőzés", - "board_address_unverified_warning": "Ez a board-cím nincs ellenőrizve. Lehet, hogy a board tulajdonosa nem birtokolja ezt a címet." + "board_address_unverified_warning": "Ez a board-cím nincs ellenőrizve. Lehet, hogy a board tulajdonosa nem birtokolja ezt a címet.", + "go_to_settings_to_import_mod_account": "Lépj a <1>beállítások menübe a moderátori fiókod importálásához" } diff --git a/public/translations/id/default.json b/public/translations/id/default.json index 7e4df368..2011d142 100644 --- a/public/translations/id/default.json +++ b/public/translations/id/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Thread ini dihapus oleh moderator papan", "this_reply_was_deleted": "Balasan ini dihapus oleh penulisnya", "this_reply_was_removed": "Balasan ini dihapus oleh moderator papan", - "not_mod_of_any_board": "Anda bukan mod di papan mana pun. [<1>Impor] akun mod Anda", + "not_mod_of_any_board": "Anda bukan mod di papan mana pun.", "search_results_for": "Hasil pencarian untuk", "help": "Bantuan", "filter_and_highlights_help": "Bantuan Filter dan Sorotan", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Abaikan", - "board_address_unverified_warning": "Alamat board ini belum diverifikasi. Pemilik board mungkin tidak memiliki alamat ini." + "board_address_unverified_warning": "Alamat board ini belum diverifikasi. Pemilik board mungkin tidak memiliki alamat ini.", + "go_to_settings_to_import_mod_account": "Buka <1>pengaturan untuk mengimpor akun mod Anda" } diff --git a/public/translations/it/default.json b/public/translations/it/default.json index e744f00b..8656adb2 100644 --- a/public/translations/it/default.json +++ b/public/translations/it/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Questo thread è stato rimosso dai moderatori del board", "this_reply_was_deleted": "Questa risposta è stata eliminata dal suo autore", "this_reply_was_removed": "Questa risposta è stata rimossa dai moderatori del forum", - "not_mod_of_any_board": "Non sei moderatore di nessuna board. [<1>Importa] il tuo account mod", + "not_mod_of_any_board": "Non sei moderatore di nessuna board.", "search_results_for": "Risultati di ricerca per", "help": "Aiuto", "filter_and_highlights_help": "Aiuto su Filtri e Evidenziazioni", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignora", - "board_address_unverified_warning": "Questo indirizzo della board non è verificato. Il proprietario della board potrebbe non possedere questo indirizzo." + "board_address_unverified_warning": "Questo indirizzo della board non è verificato. Il proprietario della board potrebbe non possedere questo indirizzo.", + "go_to_settings_to_import_mod_account": "Vai alle <1>impostazioni per importare il tuo account mod" } diff --git a/public/translations/ja/default.json b/public/translations/ja/default.json index 38756baf..01ca2a72 100644 --- a/public/translations/ja/default.json +++ b/public/translations/ja/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "このスレッドはボードのモデレーターによって削除されました", "this_reply_was_deleted": "この返信はその著者によって削除されました", "this_reply_was_removed": "この返信は掲示板のモデレーターによって削除されました", - "not_mod_of_any_board": "あなたはどのボードのモデレーターでもありません。[<1>インポート] あなたのモデレーターアカウント", + "not_mod_of_any_board": "あなたはどのボードのモデレーターでもありません。", "search_results_for": "検索結果", "help": "ヘルプ", "filter_and_highlights_help": "フィルターとハイライトのヘルプ", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "無視", - "board_address_unverified_warning": "このボードアドレスは検証されていません。ボード所有者がこのアドレスを所有していない可能性があります。" + "board_address_unverified_warning": "このボードアドレスは検証されていません。ボード所有者がこのアドレスを所有していない可能性があります。", + "go_to_settings_to_import_mod_account": "モデレーターアカウントをインポートするには<1>設定に移動してください" } diff --git a/public/translations/ko/default.json b/public/translations/ko/default.json index 9275c41e..e92d422a 100644 --- a/public/translations/ko/default.json +++ b/public/translations/ko/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "이 스레드는 보드 관리자에 의해 제거되었습니다", "this_reply_was_deleted": "이 답글은 작성자에 의해 삭제되었습니다", "this_reply_was_removed": "이 답글은 게시판 관리자에 의해 삭제되었습니다", - "not_mod_of_any_board": "어떤 게시판의 관리자도 아닙니다. [<1>가져오기] 내 관리자 계정", + "not_mod_of_any_board": "어떤 게시판의 관리자도 아닙니다.", "search_results_for": "검색 결과", "help": "도움말", "filter_and_highlights_help": "필터 및 하이라이트 도움말", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "무시", - "board_address_unverified_warning": "이 보드 주소는 확인되지 않았습니다. 보드 소유자가 이 주소를 소유하지 않았을 수 있습니다." + "board_address_unverified_warning": "이 보드 주소는 확인되지 않았습니다. 보드 소유자가 이 주소를 소유하지 않았을 수 있습니다.", + "go_to_settings_to_import_mod_account": "관리자 계정을 가져오려면 <1>설정으로 이동하세요" } diff --git a/public/translations/mr/default.json b/public/translations/mr/default.json index 10e0a7b6..da3ca9ce 100644 --- a/public/translations/mr/default.json +++ b/public/translations/mr/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "हे थ्रेड बोर्ड मध्यमाने काढले गेले आहे", "this_reply_was_deleted": "हा प्रतिसाद त्याच्या लेखकाने हटवला आहे", "this_reply_was_removed": "या उत्तराला बोर्ड मॉडरेटरने काढले आहे", - "not_mod_of_any_board": "तुम्ही कोणत्याही बोर्डचे मॉड नाहीत. [<1>आयात करा] तुमचे मॉड खाते", + "not_mod_of_any_board": "तुम्ही कोणत्याही बोर्डचे मॉड नाहीत.", "search_results_for": "सर्च परिणाम", "help": "मदत", "filter_and_highlights_help": "फिल्टर आणि हायलाइट्स सहाय्य", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "दुर्लक्ष करा", - "board_address_unverified_warning": "हा बोर्ड पत्ता सत्यापित केलेला नाही. बोर्डचा मालक हा पत्ता मालक नसू शकतो." + "board_address_unverified_warning": "हा बोर्ड पत्ता सत्यापित केलेला नाही. बोर्डचा मालक हा पत्ता मालक नसू शकतो.", + "go_to_settings_to_import_mod_account": "तुमचे मॉड खाते आयात करण्यासाठी <1>सेटिंग्ज वर जा" } diff --git a/public/translations/nl/default.json b/public/translations/nl/default.json index ba2782cf..60574002 100644 --- a/public/translations/nl/default.json +++ b/public/translations/nl/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Deze thread werd verwijderd door boardmoderators", "this_reply_was_deleted": "Dit antwoord werd verwijderd door de auteur", "this_reply_was_removed": "Dit antwoord is verwijderd door de forum moderators", - "not_mod_of_any_board": "Je bent geen mod van een bord. [<1>Importeer] je mod-account", + "not_mod_of_any_board": "Je bent geen mod van een bord.", "search_results_for": "Zoekresultaten voor", "help": "Help", "filter_and_highlights_help": "Filters en Markeringen Help", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Negeren", - "board_address_unverified_warning": "Dit boardadres is niet geverifieerd. De eigenaar van het board is mogelijk niet de eigenaar van dit adres." + "board_address_unverified_warning": "Dit boardadres is niet geverifieerd. De eigenaar van het board is mogelijk niet de eigenaar van dit adres.", + "go_to_settings_to_import_mod_account": "Ga naar <1>instellingen om je mod-account te importeren" } diff --git a/public/translations/no/default.json b/public/translations/no/default.json index 7f8bc76e..72305266 100644 --- a/public/translations/no/default.json +++ b/public/translations/no/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Denne tråden ble fjernet av boardmoderatorer", "this_reply_was_deleted": "Dette svaret ble slettet av forfatteren", "this_reply_was_removed": "Dette svaret ble fjernet av forummoderatorer", - "not_mod_of_any_board": "Du er ikke moderator på noen tavle. [<1>Importer] modkontoen din", + "not_mod_of_any_board": "Du er ikke moderator på noen tavle.", "search_results_for": "Søkeresultater for", "help": "Hjelp", "filter_and_highlights_help": "Filtre og fremhevinger Hjelp", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorer", - "board_address_unverified_warning": "Denne board-adressen er ikke bekreftet. Board-eieren eier kanskje ikke denne adressen." + "board_address_unverified_warning": "Denne board-adressen er ikke bekreftet. Board-eieren eier kanskje ikke denne adressen.", + "go_to_settings_to_import_mod_account": "Gå til <1>innstillinger for å importere modkontoen din" } diff --git a/public/translations/pl/default.json b/public/translations/pl/default.json index de4dc88b..640c141a 100644 --- a/public/translations/pl/default.json +++ b/public/translations/pl/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Wątek został usunięty przez moderatorów forum", "this_reply_was_deleted": "Ta odpowiedź została usunięta przez autora", "this_reply_was_removed": "Ta odpowiedź została usunięta przez moderatorów forum", - "not_mod_of_any_board": "Nie jesteś moderatorem żadnej tablicy. [<1>Importuj] swoje konto moderatora", + "not_mod_of_any_board": "Nie jesteś moderatorem żadnej tablicy.", "search_results_for": "Wyniki wyszukiwania dla", "help": "Pomoc", "filter_and_highlights_help": "Pomoc dotycząca filtrów i wyróżnień", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Pomiń", - "board_address_unverified_warning": "Ten adres boarda nie jest zweryfikowany. Właściciel boarda może nie być właścicielem tego adresu." + "board_address_unverified_warning": "Ten adres boarda nie jest zweryfikowany. Właściciel boarda może nie być właścicielem tego adresu.", + "go_to_settings_to_import_mod_account": "Przejdź do <1>ustawień, aby zaimportować swoje konto moderatora" } diff --git a/public/translations/pt/default.json b/public/translations/pt/default.json index f9cbaf7c..db08a4b0 100644 --- a/public/translations/pt/default.json +++ b/public/translations/pt/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Este tópico foi removido pelos moderadores do fórum", "this_reply_was_deleted": "Esta resposta foi excluída pelo autor", "this_reply_was_removed": "Esta resposta foi removida pelos moderadores do fórum", - "not_mod_of_any_board": "Você não é moderador de nenhum quadro. [<1>Importe] sua conta de mod", + "not_mod_of_any_board": "Você não é moderador de nenhum quadro.", "search_results_for": "Resultados de pesquisa para", "help": "Ajuda", "filter_and_highlights_help": "Ajuda de Filtros e Realces", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignorar", - "board_address_unverified_warning": "Este endereço do board não foi verificado. O proprietário do board pode não ser dono deste endereço." + "board_address_unverified_warning": "Este endereço do board não foi verificado. O proprietário do board pode não ser dono deste endereço.", + "go_to_settings_to_import_mod_account": "Vá para <1>configurações para importar sua conta de mod" } diff --git a/public/translations/ro/default.json b/public/translations/ro/default.json index 8151a50a..07c9dcf2 100644 --- a/public/translations/ro/default.json +++ b/public/translations/ro/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Acest thread a fost eliminat de moderatorii board-ului", "this_reply_was_deleted": "Acest răspuns a fost șters de autorul său", "this_reply_was_removed": "Acest răspuns a fost eliminat de moderatorii forumului", - "not_mod_of_any_board": "Nu ești moderator pe niciun tablou. [<1>Importă] contul tău de moderator", + "not_mod_of_any_board": "Nu ești moderator pe niciun tablou.", "search_results_for": "Rezultatele căutării pentru", "help": "Ajutor", "filter_and_highlights_help": "Ajutor pentru filtre și evidențieri", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Ignoră", - "board_address_unverified_warning": "Această adresă de board nu este verificată. Proprietarul boardului s-ar putea să nu dețină această adresă." + "board_address_unverified_warning": "Această adresă de board nu este verificată. Proprietarul boardului s-ar putea să nu dețină această adresă.", + "go_to_settings_to_import_mod_account": "Accesează <1>setările pentru a importa contul tău de moderator" } diff --git a/public/translations/ru/default.json b/public/translations/ru/default.json index a22d5a2a..51933972 100644 --- a/public/translations/ru/default.json +++ b/public/translations/ru/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Эта тема была удалена модераторами форума", "this_reply_was_deleted": "Этот ответ был удален автором", "this_reply_was_removed": "Этот ответ был удален модераторами форума", - "not_mod_of_any_board": "Вы не модератор ни одной доски. [<1>Импортируйте] свой аккаунт модератора", + "not_mod_of_any_board": "Вы не модератор ни одной доски.", "search_results_for": "Результаты поиска для", "help": "Помощь", "filter_and_highlights_help": "Помощь с фильтрами и выделениями", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Скрыть", - "board_address_unverified_warning": "Этот адрес доски не проверен. Владелец доски может не владеть этим адресом." + "board_address_unverified_warning": "Этот адрес доски не проверен. Владелец доски может не владеть этим адресом.", + "go_to_settings_to_import_mod_account": "Перейдите в <1>настройки, чтобы импортировать свой аккаунт модератора" } diff --git a/public/translations/sq/default.json b/public/translations/sq/default.json index 14d718c3..289dfe5b 100644 --- a/public/translations/sq/default.json +++ b/public/translations/sq/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Ky thread u hoq nga moderatorët e bordit", "this_reply_was_deleted": "Ky përgjigje u fshi nga autori i saj", "this_reply_was_removed": "Ky përgjigje u hoq nga moderatorët e forumit", - "not_mod_of_any_board": "Nuk jeni mod në asnjë bord. [<1>Importoni] llogarinë tuaj të modit", + "not_mod_of_any_board": "Nuk jeni mod në asnjë bord.", "search_results_for": "Rezultatet e kërkimit për", "help": "Ndihmë", "filter_and_highlights_help": "Ndihma për Filtro & Thekso", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Shpërfill", - "board_address_unverified_warning": "Kjo adresë e board-it nuk është verifikuar. Pronari i board-it mund të mos e zotërojë këtë adresë." + "board_address_unverified_warning": "Kjo adresë e board-it nuk është verifikuar. Pronari i board-it mund të mos e zotërojë këtë adresë.", + "go_to_settings_to_import_mod_account": "Shkoni te <1>parametrat për të importuar llogarinë tuaj të modit" } diff --git a/public/translations/sv/default.json b/public/translations/sv/default.json index 1caa4ab6..598fa5f0 100644 --- a/public/translations/sv/default.json +++ b/public/translations/sv/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Denna tråd togs bort av forumets moderatorer", "this_reply_was_deleted": "Detta svar togs bort av författaren", "this_reply_was_removed": "Detta svar togs bort av forumets moderatorer", - "not_mod_of_any_board": "Du är inte moderator på någon tavla. [<1>Importera] ditt modkonto", + "not_mod_of_any_board": "Du är inte moderator på någon tavla.", "search_results_for": "Sökresultat för", "help": "Hjälp", "filter_and_highlights_help": "Filter och markeringar Hjälp", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Avfärda", - "board_address_unverified_warning": "Den här board-adressen är inte verifierad. Boardets ägare kanske inte äger den här adressen." + "board_address_unverified_warning": "Den här board-adressen är inte verifierad. Boardets ägare kanske inte äger den här adressen.", + "go_to_settings_to_import_mod_account": "Gå till <1>inställningar för att importera ditt modkonto" } diff --git a/public/translations/te/default.json b/public/translations/te/default.json index e8a43182..316d4839 100644 --- a/public/translations/te/default.json +++ b/public/translations/te/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "ఈ థ్రెడ్ బోర్డ్ మోడరేటర్ల ద్వారా తీసివేయబడింది", "this_reply_was_deleted": "ఈ స్పందనను దాని రచయిత తొలగించారు", "this_reply_was_removed": "ఈ స్పందన బోర్డ్ మోడరేటర్లచే తొలగించబడింది", - "not_mod_of_any_board": "మీరు ఏ బోర్డుకీ మోడ్ కాదు. [<1>దిగుమతి చేయండి] మీ మోడ్ ఖాతాను", + "not_mod_of_any_board": "మీరు ఏ బోర్డుకీ మోడ్ కాదు.", "search_results_for": "శోధన ఫలితాలు", "help": "సహాయం", "filter_and_highlights_help": "ఫిల్టర్లు మరియు హైలైట్ సహాయం", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "విస్మరించు", - "board_address_unverified_warning": "ఈ బోర్డ్ చిరునామా ధృవీకరించబడలేదు. బోర్డ్ యజమాని ఈ చిరునామాకు యజమాని కాకపోవచ్చు." + "board_address_unverified_warning": "ఈ బోర్డ్ చిరునామా ధృవీకరించబడలేదు. బోర్డ్ యజమాని ఈ చిరునామాకు యజమాని కాకపోవచ్చు.", + "go_to_settings_to_import_mod_account": "మీ మోడ్ ఖాతాను దిగుమతి చేయడానికి <1>అమరికలుకి వెళ్లండి" } diff --git a/public/translations/th/default.json b/public/translations/th/default.json index cb9f7e9f..b1ece99e 100644 --- a/public/translations/th/default.json +++ b/public/translations/th/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "กระทู้นี้ถูกลบโดยผู้ดูแลบอร์ด", "this_reply_was_deleted": "การตอบกลับนี้ถูกลบโดยผู้แต่ง", "this_reply_was_removed": "คำตอบนี้ถูกลบโดยผู้ดูแลบอร์ด", - "not_mod_of_any_board": "คุณไม่ใช่ผู้ดูแลบอร์ดใดๆ [<1>นำเข้า] บัญชีผู้ดูแลของคุณ", + "not_mod_of_any_board": "คุณไม่ใช่ผู้ดูแลบอร์ดใดๆ", "search_results_for": "ผลการค้นหาสำหรับ", "help": "ช่วยเหลือ", "filter_and_highlights_help": "ตัวกรองและการเน้นความช่วยเหลือ", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "มองข้าม", - "board_address_unverified_warning": "ที่อยู่บอร์ดนี้ยังไม่ได้รับการยืนยัน เจ้าของบอร์ดอาจไม่ได้เป็นเจ้าของที่อยู่นี้" + "board_address_unverified_warning": "ที่อยู่บอร์ดนี้ยังไม่ได้รับการยืนยัน เจ้าของบอร์ดอาจไม่ได้เป็นเจ้าของที่อยู่นี้", + "go_to_settings_to_import_mod_account": "ไปที่ <1>การตั้งค่า เพื่อนำเข้าบัญชีผู้ดูแลของคุณ" } diff --git a/public/translations/tr/default.json b/public/translations/tr/default.json index 78b54a2e..fbd329ee 100644 --- a/public/translations/tr/default.json +++ b/public/translations/tr/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Bu konu, board moderatörleri tarafından kaldırıldı", "this_reply_was_deleted": "Bu yanıt, yazar tarafından silindi", "this_reply_was_removed": "Bu yanıt, forum moderatörleri tarafından kaldırıldı", - "not_mod_of_any_board": "Hiçbir panoda moderatör değilsiniz. [<1>İçe aktarın] mod hesabınızı", + "not_mod_of_any_board": "Hiçbir panoda moderatör değilsiniz.", "search_results_for": "Arama sonuçları için", "help": "Yardım", "filter_and_highlights_help": "Filtreler ve Vurgular Yardımı", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Yoksay", - "board_address_unverified_warning": "Bu board adresi doğrulanmamış. Board sahibi bu adresin sahibi olmayabilir." + "board_address_unverified_warning": "Bu board adresi doğrulanmamış. Board sahibi bu adresin sahibi olmayabilir.", + "go_to_settings_to_import_mod_account": "Mod hesabınızı içe aktarmak için <1>ayarlara gidin" } diff --git a/public/translations/uk/default.json b/public/translations/uk/default.json index 8ee4cd77..aaeb26a2 100644 --- a/public/translations/uk/default.json +++ b/public/translations/uk/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Цю тему було видалено модераторами форуму", "this_reply_was_deleted": "Цю відповідь було видалено її автором", "this_reply_was_removed": "Цю відповідь було видалено модераторами форуму", - "not_mod_of_any_board": "Ви не модератор жодної дошки. [<1>Імпортуйте] свій обліковий запис модератора", + "not_mod_of_any_board": "Ви не модератор жодної дошки.", "search_results_for": "Результати пошуку для", "help": "Допомога", "filter_and_highlights_help": "Допомога з фільтрами та підсвічуваннями", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Приховати", - "board_address_unverified_warning": "Цю адресу дошки не перевірено. Власник дошки може не володіти цією адресою." + "board_address_unverified_warning": "Цю адресу дошки не перевірено. Власник дошки може не володіти цією адресою.", + "go_to_settings_to_import_mod_account": "Перейдіть до <1>налаштувань, щоб імпортувати свій обліковий запис модератора" } diff --git a/public/translations/ur/default.json b/public/translations/ur/default.json index 0a068f78..080bffa0 100644 --- a/public/translations/ur/default.json +++ b/public/translations/ur/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "اس تھریڈ کو بورڈ کے موڈریٹرز نے ہٹا دیا ہے", "this_reply_was_deleted": "اس جواب کو اس کے مصنف نے حذف کر دیا تھا", "this_reply_was_removed": "اس جواب کو بورڈ کے منتظمین نے حذف کر دیا ہے", - "not_mod_of_any_board": "آپ کسی بورڈ کے موڈ نہیں ہیں۔ [<1>درآمد کریں] اپنا موڈ اکاؤنٹ", + "not_mod_of_any_board": "آپ کسی بورڈ کے موڈ نہیں ہیں۔", "search_results_for": "تلاش کے نتائج", "help": "مدد", "filter_and_highlights_help": "فلٹرز اور ہائی لائٹس کی مدد", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "نظر انداز کریں", - "board_address_unverified_warning": "اس بورڈ کے پتے کی تصدیق نہیں ہوئی۔ ممکن ہے بورڈ کا مالک اس پتے کا مالک نہ ہو۔" + "board_address_unverified_warning": "اس بورڈ کے پتے کی تصدیق نہیں ہوئی۔ ممکن ہے بورڈ کا مالک اس پتے کا مالک نہ ہو۔", + "go_to_settings_to_import_mod_account": "اپنا موڈ اکاؤنٹ درآمد کرنے کے لیے <1>ترتیبات پر جائیں" } diff --git a/public/translations/vi/default.json b/public/translations/vi/default.json index 79da0361..32a6b89f 100644 --- a/public/translations/vi/default.json +++ b/public/translations/vi/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "Chủ đề này đã bị các quản trị viên diễn đàn xóa", "this_reply_was_deleted": "Câu trả lời này đã bị tác giả của nó xóa", "this_reply_was_removed": "Phản hồi này đã bị xóa bởi các quản trị viên diễn đàn", - "not_mod_of_any_board": "Bạn không phải là mod của bất kỳ bảng nào. [<1>Nhập] tài khoản mod của bạn", + "not_mod_of_any_board": "Bạn không phải là mod của bất kỳ bảng nào.", "search_results_for": "Kết quả tìm kiếm cho", "help": "Trợ giúp", "filter_and_highlights_help": "Trợ giúp bộ lọc và đánh dấu", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "Bỏ qua", - "board_address_unverified_warning": "Địa chỉ bảng này chưa được xác minh. Chủ bảng có thể không sở hữu địa chỉ này." + "board_address_unverified_warning": "Địa chỉ bảng này chưa được xác minh. Chủ bảng có thể không sở hữu địa chỉ này.", + "go_to_settings_to_import_mod_account": "Vào <1>cài đặt để nhập tài khoản mod của bạn" } diff --git a/public/translations/zh/default.json b/public/translations/zh/default.json index fab4dd1f..98397d46 100644 --- a/public/translations/zh/default.json +++ b/public/translations/zh/default.json @@ -201,7 +201,7 @@ "this_thread_was_removed": "此帖子已被论坛版主删除", "this_reply_was_deleted": "该回复已被其作者删除", "this_reply_was_removed": "该回复已被版主删除", - "not_mod_of_any_board": "您不是任何板块的管理员。[<1>导入] 您的版主账户", + "not_mod_of_any_board": "您不是任何板块的管理员。", "search_results_for": "搜索结果", "help": "帮助", "filter_and_highlights_help": "过滤器和高亮帮助", @@ -389,5 +389,6 @@ "expiring_media_link_alert": "Media from {{domain}} expires quickly. Use a stable media link instead.", "nothing_found": "Nothing Found", "modQueue.dismiss": "忽略", - "board_address_unverified_warning": "此版面地址尚未验证。版主可能并不拥有此地址。" + "board_address_unverified_warning": "此版面地址尚未验证。版主可能并不拥有此地址。", + "go_to_settings_to_import_mod_account": "前往<1>设置以导入您的版主账户" } diff --git a/src/components/mod-empty-state/index.ts b/src/components/mod-empty-state/index.ts new file mode 100644 index 00000000..9fb2034a --- /dev/null +++ b/src/components/mod-empty-state/index.ts @@ -0,0 +1 @@ +export { default as ModEmptyState } from './mod-empty-state'; diff --git a/src/components/mod-empty-state/mod-empty-state.module.css b/src/components/mod-empty-state/mod-empty-state.module.css new file mode 100644 index 00000000..7c09f723 --- /dev/null +++ b/src/components/mod-empty-state/mod-empty-state.module.css @@ -0,0 +1,28 @@ +.modEmptyState { + padding: 1em 0; + text-align: center; + width: 100%; +} + +.modEmptyStateTitle { + color: red; + display: block; + margin: 0; + font-size: x-large; + font-weight: bold; + line-height: normal; +} + +.modEmptyStateAction { + color: var(--post-mobile-abbr-text-color); + margin-top: 0.5em; +} + +.modEmptyStateAction a { + text-decoration: var(--button-text-decoration); + color: var(--button-desktop-text-color); +} + +.modEmptyStateAction a:hover { + color: var(--button-desktop-text-color-hover); +} diff --git a/src/components/mod-empty-state/mod-empty-state.tsx b/src/components/mod-empty-state/mod-empty-state.tsx new file mode 100644 index 00000000..36cc0b9e --- /dev/null +++ b/src/components/mod-empty-state/mod-empty-state.tsx @@ -0,0 +1,22 @@ +import { Link } from 'react-router-dom'; +import { Trans, useTranslation } from 'react-i18next'; +import styles from './mod-empty-state.module.css'; + +const MOD_ACCOUNT_SETTINGS_LINK_COMPONENTS = { + 1: , +}; + +const ModEmptyState = () => { + const { t } = useTranslation(); + + return ( +
+
{t('not_mod_of_any_board')}
+
+ +
+
+ ); +}; + +export default ModEmptyState; diff --git a/src/views/board/__tests__/board.test.tsx b/src/views/board/__tests__/board.test.tsx index adc0ccd4..9a5ebef8 100644 --- a/src/views/board/__tests__/board.test.tsx +++ b/src/views/board/__tests__/board.test.tsx @@ -616,6 +616,8 @@ describe('Board', () => { }); expect(container.textContent).toContain('not_mod_of_any_board'); + expect(container.textContent).toContain('go_to_settings_to_import_mod_account'); + expect(container.querySelector('[role="status"]')?.className).toContain('modEmptyState'); expect(container.querySelector('a')?.getAttribute('href')).toBe('/mod/settings#account-settings'); }); diff --git a/src/views/board/board.tsx b/src/views/board/board.tsx index 6e2a2a22..5934b564 100644 --- a/src/views/board/board.tsx +++ b/src/views/board/board.tsx @@ -32,6 +32,7 @@ import LoadingEllipsis from '../../components/loading-ellipsis'; import BoardPagination from '../../components/board-pagination'; import { CatalogButton } from '../../components/board-buttons/board-buttons'; import { PageFooterDesktop, PageFooterMobile } from '../../components/footer'; +import { ModEmptyState } from '../../components/mod-empty-state'; import { Post } from '../post'; const lastVirtuosoStates: { [key: string]: StateSnapshot } = {}; @@ -41,9 +42,6 @@ const MONTH_IN_SECONDS = 30 * 24 * 60 * 60; const YEAR_IN_SECONDS = 365 * 24 * 60 * 60; // Keep the hook on its indexed fast path when this view should not inject local posts. const EMPTY_ACCOUNT_COMMENT_LOOKUP = { commentIndices: [-1] }; -const MOD_ACCOUNT_IMPORT_LINK_COMPONENTS = { - 1: , -}; /** Board feed always uses 'active' sort; catalog dropdown does not affect board ordering. */ const BOARD_SORT_TYPE = 'active' as const; @@ -137,7 +135,7 @@ const BoardFooter = ({ ) : isInSubscriptionsView && subscriptionsLength === 0 ? ( {t('not_subscribed_to_any_board')} ) : isInModView && accountCommunityAddressesLength === 0 ? ( - + ) : ( showLoadingEllipsis && (hasMore || isEmptyBoardLoading) && )} diff --git a/src/views/catalog/__tests__/catalog.test.tsx b/src/views/catalog/__tests__/catalog.test.tsx index 5734b073..cbff4e43 100644 --- a/src/views/catalog/__tests__/catalog.test.tsx +++ b/src/views/catalog/__tests__/catalog.test.tsx @@ -909,6 +909,22 @@ describe('Catalog', () => { expect(container.querySelector('[data-testid="catalog-first-row"]')?.textContent).toBe('music-posting.eth'); }); + it('shows mod empty state with settings link in mod catalog', async () => { + testState.accountCommunityAddresses = []; + + await renderCatalog({ + catalogProps: { viewType: 'mod' }, + initialEntry: '/mod/catalog', + routePath: '/mod/*', + }); + + expect(container.textContent).toContain('not_mod_of_any_board'); + expect(container.textContent).toContain('go_to_settings_to_import_mod_account'); + expect(container.querySelector('[role="status"]')?.className).toContain('modEmptyState'); + expect(container.querySelector('a')?.getAttribute('href')).toBe('/mod/settings#account-settings'); + expect(container.querySelectorAll('[data-testid="catalog-row"]')).toHaveLength(0); + }); + it('shows centered nothing found when catalog search has no matches', async () => { testState.feed = [{ cid: 'network-post', title: 'cats on stage', communityAddress: 'music-posting.eth' }]; testState.searchText = 'asddasd'; diff --git a/src/views/catalog/catalog.tsx b/src/views/catalog/catalog.tsx index 9d3efd78..e9acc648 100644 --- a/src/views/catalog/catalog.tsx +++ b/src/views/catalog/catalog.tsx @@ -30,6 +30,7 @@ import { ReturnButton, ArchiveButton, TopButton, RefreshButton } from '../../com import mobileFooterStyles from '../../components/footer/footer.module.css'; import LoadingEllipsis from '../../components/loading-ellipsis'; import ErrorDisplay from '../../components/error-display/error-display'; +import { ModEmptyState } from '../../components/mod-empty-state'; import styles from './catalog.module.css'; import { commentMatchesPattern } from '../../lib/utils/pattern-utils'; import { isCommentArchived } from '../../lib/utils/comment-moderation-utils'; @@ -695,8 +696,14 @@ const Catalog = ({ feedCacheKey, viewType, boardIdentifier: boardIdentifierProp, ); const isFeedLoaded = feed.length > 0 || hiddenThreadsCount > 0 || state === 'failed'; const hasActiveSearch = searchText.trim().length > 0; + const showModEmptyState = isInModView && accountCommunityAddresses.length === 0; const showSearchNothingFound = - hasActiveSearch && !footerHasMore && footerCombinedFeedLength === 0 && state !== 'failed' && !(isInSubscriptionsView && (subscriptions?.length || 0) === 0); + hasActiveSearch && + !footerHasMore && + footerCombinedFeedLength === 0 && + state !== 'failed' && + !(isInSubscriptionsView && (subscriptions?.length || 0) === 0) && + !showModEmptyState; // Process the feed to move "top" posts to the top (applied after display sort) const processedFeed = useMemo(() => { @@ -901,6 +908,21 @@ const Catalog = ({ feedCacheKey, viewType, boardIdentifier: boardIdentifierProp, )} + ) : showModEmptyState ? ( + <> + +
+ {catalogFooterFirstRow} + + +
+ + + + +
+
+ ) : showSearchNothingFound ? ( <>