diff --git a/public/assets/icons/offline-red.png b/public/assets/icons/offline-red.png index a0227105..5759f7d6 100644 Binary files a/public/assets/icons/offline-red.png and b/public/assets/icons/offline-red.png differ diff --git a/public/assets/icons/offline.png b/public/assets/icons/offline-yellow.png similarity index 71% rename from public/assets/icons/offline.png rename to public/assets/icons/offline-yellow.png index edc01146..49076cc5 100644 Binary files a/public/assets/icons/offline.png and b/public/assets/icons/offline-yellow.png differ diff --git a/public/translations/ar/default.json b/public/translations/ar/default.json index 735cd85b..5ae4ea9d 100644 --- a/public/translations/ar/default.json +++ b/public/translations/ar/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "طي جميع الإعدادات", "refresh": "تحديث", "no_board_selected": "لم يتم تحديد أية منتديات", - "none": "بلا", + "none": "لا شيء", "not_subscribed_to_any_board": "لم تشترك في أي منتديات بعد.", "board_mods": "مشرفو المنتدى", "this_post_was_removed": "تمت إزالة هذا المنشور", @@ -210,5 +210,11 @@ "1_post_by_this_id": "مشاركة واحدة بهذا المعرف", "x_posts_by_this_id": "{{number}} منشور من هذا المعرف", "ban_expires_at": "محظور من p/{{address}} حتى {{timestamp}}", - "user_banned": "تم حظر المستخدم لهذا المنشور" + "user_banned": "تم حظر المستخدم لهذا المنشور", + "loading_comments": "تحميل التعليقات", + "replies": "الردود", + "links": "الروابط", + "avatar": "الصورة الرمزية", + "token_address_whitelist": "عنوان الرمز (فقط على الـ <1>قائمة البيضاء)", + "token_id": "تعريف الرمز" } \ No newline at end of file diff --git a/public/translations/bn/default.json b/public/translations/bn/default.json index e8f5ae40..a885326d 100644 --- a/public/translations/bn/default.json +++ b/public/translations/bn/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "সমস্ত সেটিংস সঙ্কুচিত করুন", "refresh": "পুনরায় লোড করুন", "no_board_selected": "কোনো ফোরাম নির্বাচিত হয়নি", - "none": "নাই", + "none": "কিছু না", "not_subscribed_to_any_board": "আপনি এখনো কোনো ফোরামে সদস্য হননি।", "board_mods": "বোর্ড মডস", "this_post_was_removed": "এই পোস্টটি সরানো হয়েছে", @@ -210,5 +210,11 @@ "1_post_by_this_id": "এই আইডি দ্বারা 1 পোস্ট", "x_posts_by_this_id": "এই আইডি থেকে {{number}} পোস্ট", "ban_expires_at": "p/{{address}} থেকে {{timestamp}} পর্যন্ত নিষিদ্ধ", - "user_banned": "এই পোস্টের জন্য ব্যবহারকারী নিষিদ্ধ হয়েছে" + "user_banned": "এই পোস্টের জন্য ব্যবহারকারী নিষিদ্ধ হয়েছে", + "loading_comments": "মন্তব্য লোড হচ্ছে", + "replies": "উত্তর", + "links": "লিঙ্কগুলি", + "avatar": "অবতার", + "token_address_whitelist": "টোকেন ঠিকানা (<1>সাফল্যবান কেবল)", + "token_id": "টোকেন আইডি" } \ No newline at end of file diff --git a/public/translations/cs/default.json b/public/translations/cs/default.json index 8ad8c915..31e6d675 100644 --- a/public/translations/cs/default.json +++ b/public/translations/cs/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 příspěvek s tímto ID", "x_posts_by_this_id": "{{number}} příspěvků z tohoto ID", "ban_expires_at": "Zakázán z p/{{address}} do {{timestamp}}", - "user_banned": "Uživatel byl zablokován za tento příspěvek" + "user_banned": "Uživatel byl zablokován za tento příspěvek", + "loading_comments": "Načítání komentářů", + "replies": "Odpovědi", + "links": "Odkazy", + "avatar": "avatar", + "token_address_whitelist": "Tokenová adresa (<1>jen bílý seznam)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/da/default.json b/public/translations/da/default.json index f10191b8..7466cc99 100644 --- a/public/translations/da/default.json +++ b/public/translations/da/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post med dette ID", "x_posts_by_this_id": "{{number}} indlæg fra denne ID", "ban_expires_at": "Udelukket fra p/{{address}} indtil {{timestamp}}", - "user_banned": "Brugeren blev blokeret for dette indlæg" + "user_banned": "Brugeren blev blokeret for dette indlæg", + "loading_comments": "Indlæser kommentarer", + "replies": "Svar", + "links": "Links", + "avatar": "avatar", + "token_address_whitelist": "Tokenadresse (<1>kun hvidliste)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/de/default.json b/public/translations/de/default.json index a119a0a1..a7652785 100644 --- a/public/translations/de/default.json +++ b/public/translations/de/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 Beitrag mit dieser ID", "x_posts_by_this_id": "{{number}} Beiträge von dieser ID", "ban_expires_at": "Gesperrt von p/{{address}} bis {{timestamp}}", - "user_banned": "Benutzer wurde für diesen Beitrag gesperrt" + "user_banned": "Benutzer wurde für diesen Beitrag gesperrt", + "loading_comments": "Lade Kommentare", + "replies": "Antworten", + "links": "Links", + "avatar": "Avatar", + "token_address_whitelist": "Tokenadresse (<1>nur Weiße Liste)", + "token_id": "Token-ID" } \ No newline at end of file diff --git a/public/translations/el/default.json b/public/translations/el/default.json index d2dd32ff..ac81502e 100644 --- a/public/translations/el/default.json +++ b/public/translations/el/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 ανάρτηση με αυτό το ID", "x_posts_by_this_id": "{{number}} αναρτήσεις από αυτό το ID", "ban_expires_at": "Αποκλείστηκε από p/{{address}} έως {{timestamp}}", - "user_banned": "Ο χρήστης αποκλείστηκε για αυτή τη δημοσίευση" + "user_banned": "Ο χρήστης αποκλείστηκε για αυτή τη δημοσίευση", + "loading_comments": "Φόρτωση σχολίων", + "replies": "Απαντήσεις", + "links": "Σύνδεσμοι", + "avatar": "εικόνα προφίλ", + "token_address_whitelist": "Διεύθυνση του token (<1>μόνο λευκή λίστα)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/en/default.json b/public/translations/en/default.json index aa04d0db..d9e0a327 100644 --- a/public/translations/en/default.json +++ b/public/translations/en/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post by this ID", "x_posts_by_this_id": "{{number}} posts from this ID", "ban_expires_at": "Banned from p/{{address}} until {{timestamp}}", - "user_banned": "User was banned for this post" + "user_banned": "User was banned for this post", + "loading_comments": "Loading comments", + "replies": "replies", + "links": "links", + "avatar": "avatar", + "token_address_whitelist": "Token address (<1>whitelist only)", + "token_id": "token id" } \ No newline at end of file diff --git a/public/translations/es/default.json b/public/translations/es/default.json index f0a15fbb..99a79296 100644 --- a/public/translations/es/default.json +++ b/public/translations/es/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 publicación con este ID", "x_posts_by_this_id": "{{number}} publicaciones desde este ID", "ban_expires_at": "Baneado de p/{{address}} hasta {{timestamp}}", - "user_banned": "El usuario fue baneado por esta publicación" + "user_banned": "El usuario fue baneado por esta publicación", + "loading_comments": "Cargando comentarios", + "replies": "respuestas", + "links": "enlaces", + "avatar": "avatar", + "token_address_whitelist": "Dirección del token (<1>solo lista blanca)", + "token_id": "ID de token" } \ No newline at end of file diff --git a/public/translations/fa/default.json b/public/translations/fa/default.json index 693e9bc9..6b211207 100644 --- a/public/translations/fa/default.json +++ b/public/translations/fa/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "تايید همه تنظیمات", "refresh": "تازه‌سازی", "no_board_selected": "هیچ تالاری انتخاب نشده است", - "none": "هیچ‌کدام", + "none": "هیچکدام", "not_subscribed_to_any_board": "هنوز به هیچ تالاری مشترک نشده‌اید.", "board_mods": "مدیران تالار", "this_post_was_removed": "این پست حذف شد", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 پست با این شناسه", "x_posts_by_this_id": "{{number}} پست از این شناسه", "ban_expires_at": "مسدود از p/{{address}} تا {{timestamp}}", - "user_banned": "این کاربر برای این پست مسدود شد" + "user_banned": "این کاربر برای این پست مسدود شد", + "loading_comments": "بارگذاری نظرات", + "replies": "پاسخ‌ها", + "links": "لینک‌ها", + "avatar": "آواتار", + "token_address_whitelist": "آدرس توکن (<1>فقط سفیدپوشان)", + "token_id": "شناسه توکن" } \ No newline at end of file diff --git a/public/translations/fi/default.json b/public/translations/fi/default.json index 7f4e8c7d..37b35f43 100644 --- a/public/translations/fi/default.json +++ b/public/translations/fi/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "Sulje kaikki asetukset", "refresh": "Päivitä", "no_board_selected": "ei foorumeja valittu", - "none": "ei mikään", + "none": "ei mitään", "not_subscribed_to_any_board": "Et ole vielä tilannut mitään foorumeita.", "board_mods": "Hallituksen Mods", "this_post_was_removed": "tämä viesti on poistettu", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 viesti tällä tunnuksella", "x_posts_by_this_id": "{{number}} viestiä tältä tunnukselta", "ban_expires_at": "Porttikielto p/{{address}} asti {{timestamp}}", - "user_banned": "Käyttäjä on estetty tästä viestistä" + "user_banned": "Käyttäjä on estetty tästä viestistä", + "loading_comments": "Ladataan kommentteja", + "replies": "vastaukset", + "links": "linkit", + "avatar": "avatar", + "token_address_whitelist": "Token-osoite (<1>vain valkoinen lista)", + "token_id": "Token-id" } \ No newline at end of file diff --git a/public/translations/fil/default.json b/public/translations/fil/default.json index 3235c8ce..31ef7200 100644 --- a/public/translations/fil/default.json +++ b/public/translations/fil/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "I-collapse ang lahat ng mga setting", "refresh": "I-refresh", "no_board_selected": "walang mga board na napiling", - "none": "wala", + "none": "walang anuman", "not_subscribed_to_any_board": "Hindi ka pa naka-subscribe sa anumang mga board.", "board_mods": "Board Mods", "this_post_was_removed": "tinanggal ang post na ito", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post sa pamamagitan ng ID na ito", "x_posts_by_this_id": "{{number}} post mula sa ID na ito", "ban_expires_at": "Bawal sa p/{{address}} hanggang {{timestamp}}", - "user_banned": "Banal ang user para sa post na ito" + "user_banned": "Banal ang user para sa post na ito", + "loading_comments": "Naglo-load ng mga komento", + "replies": "mga tugon", + "links": "mga link", + "avatar": "avatar", + "token_address_whitelist": "Address ng token (<1>whitelist lang)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/fr/default.json b/public/translations/fr/default.json index 9e2d1278..b3484b75 100644 --- a/public/translations/fr/default.json +++ b/public/translations/fr/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 publication avec cet identifiant", "x_posts_by_this_id": "{{number}} publications depuis cet identifiant", "ban_expires_at": "Banni de p/{{address}} jusqu'au {{timestamp}}", - "user_banned": "L'utilisateur a été banni pour ce post" + "user_banned": "L'utilisateur a été banni pour ce post", + "loading_comments": "Chargement des commentaires", + "replies": "réponses", + "links": "liens", + "avatar": "avatar", + "token_address_whitelist": "Adresse du token (<1>liste blanche seulement)", + "token_id": "Identifiant de jeton" } \ No newline at end of file diff --git a/public/translations/he/default.json b/public/translations/he/default.json index 9224e779..e6ced4c6 100644 --- a/public/translations/he/default.json +++ b/public/translations/he/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "פוסט אחד עם המזהה הזה", "x_posts_by_this_id": "{{number}} פוסטים מהמזהה הזה", "ban_expires_at": "נחסם מ-p/{{address}} עד {{timestamp}}", - "user_banned": "המשתמש נחסם עבור הפוסט הזה" + "user_banned": "המשתמש נחסם עבור הפוסט הזה", + "loading_comments": "טוען תגובות", + "replies": "תגובות", + "links": "קישורים", + "avatar": "אוואטר", + "token_address_whitelist": "כתובת הטוקן (<1>רק רשימה לבנה)", + "token_id": "מזהה טוקן" } \ No newline at end of file diff --git a/public/translations/hi/default.json b/public/translations/hi/default.json index 086ac424..22b6cabc 100644 --- a/public/translations/hi/default.json +++ b/public/translations/hi/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "इस आईडी द्वारा 1 पोस्ट", "x_posts_by_this_id": "इस आईडी से {{number}} पोस्ट", "ban_expires_at": "p/{{address}} से {{timestamp}} तक पर प्रतिबंधित", - "user_banned": "इस पोस्ट के लिए उपयोगकर्ता पर प्रतिबंध लगा दिया गया था" + "user_banned": "इस पोस्ट के लिए उपयोगकर्ता पर प्रतिबंध लगा दिया गया था", + "loading_comments": "टिप्पणियाँ लोड हो रही हैं", + "replies": "जवाब", + "links": "लिंक", + "avatar": "अवतार", + "token_address_whitelist": "टोकन पता (<1>केवल सफेद सूची)", + "token_id": "टोकन आईडी" } \ No newline at end of file diff --git a/public/translations/hu/default.json b/public/translations/hu/default.json index e67e0445..5a201f02 100644 --- a/public/translations/hu/default.json +++ b/public/translations/hu/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 bejegyzés ezzel az azonosítóval", "x_posts_by_this_id": "{{number}} bejegyzés erről az azonosítóról", "ban_expires_at": "Tiltva p/{{address}}-tól {{timestamp}}-ig", - "user_banned": "A felhasználót letiltották ennek a posztnak a kapcsán" + "user_banned": "A felhasználót letiltották ennek a posztnak a kapcsán", + "loading_comments": "Megjegyzések betöltése", + "replies": "válaszok", + "links": "linkek", + "avatar": "avatár", + "token_address_whitelist": "Token cím (<1>csak fehérlista)", + "token_id": "Token azonosító" } \ No newline at end of file diff --git a/public/translations/id/default.json b/public/translations/id/default.json index 8ed56d4a..54b1a4ba 100644 --- a/public/translations/id/default.json +++ b/public/translations/id/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "Ciutkan Semua Pengaturan", "refresh": "Segarkan", "no_board_selected": "tidak ada papan pesan yang dipilih", - "none": "tak ada", + "none": "tidak ada", "not_subscribed_to_any_board": "Anda belum berlangganan ke papan pesan mana pun.", "board_mods": "Papan Pesan Mods", "this_post_was_removed": "posting ini telah dihapus", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 pos dengan ID ini", "x_posts_by_this_id": "{{number}} pos dari ID ini", "ban_expires_at": "Dilarang dari p/{{address}} sampai {{timestamp}}", - "user_banned": "Pengguna diblokir untuk pos ini" + "user_banned": "Pengguna diblokir untuk pos ini", + "loading_comments": "Memuat komentar", + "replies": "balasan", + "links": "tautan", + "avatar": "avatar", + "token_address_whitelist": "Alamat token (<1>hanya daftar putih)", + "token_id": "ID token" } \ No newline at end of file diff --git a/public/translations/it/default.json b/public/translations/it/default.json index e8d4c99a..c8ccf3fa 100644 --- a/public/translations/it/default.json +++ b/public/translations/it/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post con questo ID", "x_posts_by_this_id": "{{number}} post da questo ID", "ban_expires_at": "Bannato da p/{{address}} fino al {{timestamp}}", - "user_banned": "L'utente è stato bannato per questo post" + "user_banned": "L'utente è stato bannato per questo post", + "loading_comments": "Caricamento commenti", + "replies": "commenti", + "links": "link", + "avatar": "avatar", + "token_address_whitelist": "Indirizzo del token (solo se sulla <1>whitelist)", + "token_id": "token id" } \ No newline at end of file diff --git a/public/translations/ja/default.json b/public/translations/ja/default.json index 87c47f4e..b686d48d 100644 --- a/public/translations/ja/default.json +++ b/public/translations/ja/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "このIDで1件の投稿", "x_posts_by_this_id": "このIDからの{{number}} 件の投稿", "ban_expires_at": "p/{{address}}から{{timestamp}}まで禁止", - "user_banned": "この投稿のためにユーザーが禁止されました" + "user_banned": "この投稿のためにユーザーが禁止されました", + "loading_comments": "コメントを読み込み中", + "replies": "返信", + "links": "リンク", + "avatar": "アバター", + "token_address_whitelist": "トークンアドレス(<1>ホワイトリストのみ)", + "token_id": "トークンID" } \ No newline at end of file diff --git a/public/translations/ko/default.json b/public/translations/ko/default.json index 1648ee59..25495d57 100644 --- a/public/translations/ko/default.json +++ b/public/translations/ko/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "이 ID로 게시된 1개의 글", "x_posts_by_this_id": "이 ID로부터의 {{number}}개의 글", "ban_expires_at": "p/{{address}}에서 {{timestamp}}까지 금지됨", - "user_banned": "이 게시물로 인해 사용자가 차단되었습니다" + "user_banned": "이 게시물로 인해 사용자가 차단되었습니다", + "loading_comments": "댓글 로드 중", + "replies": "답글", + "links": "링크", + "avatar": "아바타", + "token_address_whitelist": "토큰 주소 (<1>화이트리스트만)", + "token_id": "토큰 ID" } \ No newline at end of file diff --git a/public/translations/mr/default.json b/public/translations/mr/default.json index 27edb988..d5ab8ebb 100644 --- a/public/translations/mr/default.json +++ b/public/translations/mr/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "सर्व सेटिंग्ज संक्षेपित", "refresh": "ताजेतर करा", "no_board_selected": "कोणतेही संदेश फलक निवडले नाहीत", - "none": "काहीही नाही", + "none": "काही नाही", "not_subscribed_to_any_board": "तुम्ही कोणत्याही संदेश फलकांवर अद्याप सदस्यता घेतली नाही.", "board_mods": "बोर्ड मॉड्स", "this_post_was_removed": "हा पोस्ट काढून टाकला गेला आहे", @@ -210,5 +210,11 @@ "1_post_by_this_id": "या ID वर 1 पोस्ट", "x_posts_by_this_id": "या ID पासून {{number}} पोस्ट", "ban_expires_at": "p/{{address}} ते {{timestamp}} पर्यंत प्रतिबंधित", - "user_banned": "या पोस्टसाठी वापरकर्ता ब्लॉक केला गेला होता" + "user_banned": "या पोस्टसाठी वापरकर्ता ब्लॉक केला गेला होता", + "loading_comments": "टिप्पणी लोड होत आहे", + "replies": "उत्तर", + "links": "लिंक", + "avatar": "अवतार", + "token_address_whitelist": "टोकन पत्ता (<1>केवळ सफेद सूची)", + "token_id": "टोकन आयडी" } \ No newline at end of file diff --git a/public/translations/nl/default.json b/public/translations/nl/default.json index 6958932e..bb73645b 100644 --- a/public/translations/nl/default.json +++ b/public/translations/nl/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 bericht met dit ID", "x_posts_by_this_id": "{{number}} berichten met dit ID", "ban_expires_at": "Verbannen van p/{{address}} tot {{timestamp}}", - "user_banned": "Gebruiker is verbannen voor deze post" + "user_banned": "Gebruiker is verbannen voor deze post", + "loading_comments": "Reacties laden", + "replies": "reacties", + "links": "links", + "avatar": "avatar", + "token_address_whitelist": "Tokenadres (<1>alleen whitelist)", + "token_id": "Token-ID" } \ No newline at end of file diff --git a/public/translations/no/default.json b/public/translations/no/default.json index 57745775..8623c9f2 100644 --- a/public/translations/no/default.json +++ b/public/translations/no/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post med denne ID-en", "x_posts_by_this_id": "{{number}} poster med denne ID-en", "ban_expires_at": "Utestengt fra p/{{address}} til {{timestamp}}", - "user_banned": "Brukeren ble utestengt for dette innlegget" + "user_banned": "Brukeren ble utestengt for dette innlegget", + "loading_comments": "Laster inn kommentarer", + "replies": "svar", + "links": "lenker", + "avatar": "avatar", + "token_address_whitelist": "Tokenadresse (<1>kun hvitelisten)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/pl/default.json b/public/translations/pl/default.json index c2a90851..26ff4d42 100644 --- a/public/translations/pl/default.json +++ b/public/translations/pl/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post z tym identyfikatorem", "x_posts_by_this_id": "{{number}} postów z tego identyfikatora", "ban_expires_at": "Zablokowany na p/{{address}} do {{timestamp}}", - "user_banned": "Użytkownik został zablokowany za ten post" + "user_banned": "Użytkownik został zablokowany za ten post", + "loading_comments": "Ładowanie komentarzy", + "replies": "odpowiedzi", + "links": "linki", + "avatar": "avatar", + "token_address_whitelist": "Adres tokenu (<1>tylko biała lista)", + "token_id": "Identyfikator tokena" } \ No newline at end of file diff --git a/public/translations/pt/default.json b/public/translations/pt/default.json index f399d951..1982062d 100644 --- a/public/translations/pt/default.json +++ b/public/translations/pt/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post com este ID", "x_posts_by_this_id": "{{number}} posts com este ID", "ban_expires_at": "Banido de p/{{address}} até {{timestamp}}", - "user_banned": "O usuário foi banido por este post" + "user_banned": "O usuário foi banido por este post", + "loading_comments": "Carregando comentários", + "replies": "respostas", + "links": "links", + "avatar": "avatar", + "token_address_whitelist": "Endereço do token (<1>apenas lista branca)", + "token_id": "ID do token" } \ No newline at end of file diff --git a/public/translations/ro/default.json b/public/translations/ro/default.json index 2a97e2e1..04471447 100644 --- a/public/translations/ro/default.json +++ b/public/translations/ro/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 post cu acest ID", "x_posts_by_this_id": "{{number}} postări cu acest ID", "ban_expires_at": "Interzis de la p/{{address}} până la {{timestamp}}", - "user_banned": "Utilizatorul a fost interzis pentru acest mesaj" + "user_banned": "Utilizatorul a fost interzis pentru acest mesaj", + "loading_comments": "Se încarcă comentariile", + "replies": "răspunsuri", + "links": "linkuri", + "avatar": "avatar", + "token_address_whitelist": "Adresa tokenului (<1>doar lista albă)", + "token_id": "ID token" } \ No newline at end of file diff --git a/public/translations/ru/default.json b/public/translations/ru/default.json index ab83b7ca..191fd78e 100644 --- a/public/translations/ru/default.json +++ b/public/translations/ru/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "Свернуть все настройки", "refresh": "Обновить", "no_board_selected": "не выбрано ни одного форума", - "none": "нет", + "none": "ничего", "not_subscribed_to_any_board": "Вы еще не подписаны ни на один форум.", "board_mods": "Модераторы форума", "this_post_was_removed": "этот пост был удален", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 сообщение с этим идентификатором", "x_posts_by_this_id": "{{number}} сообщений с этого идентификатора", "ban_expires_at": "Забанен на p/{{address}} до {{timestamp}}", - "user_banned": "Пользователь был заблокирован за этот пост" + "user_banned": "Пользователь был заблокирован за этот пост", + "loading_comments": "Загрузка комментариев", + "replies": "ответы", + "links": "ссылки", + "avatar": "аватар", + "token_address_whitelist": "Адрес токена (<1>только белый список)", + "token_id": "Идентификатор токена" } \ No newline at end of file diff --git a/public/translations/sq/default.json b/public/translations/sq/default.json index dbe3121f..7136d309 100644 --- a/public/translations/sq/default.json +++ b/public/translations/sq/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 postim me këtë ID", "x_posts_by_this_id": "{{number}} postime nga ky ID", "ban_expires_at": "I ndaluar nga p/{{address}} deri më {{timestamp}}", - "user_banned": "Përdoruesi u ndalua për këtë postim" + "user_banned": "Përdoruesi u ndalua për këtë postim", + "loading_comments": "Duke u ngarkuar komentet", + "replies": "përgjigje", + "links": "lidhje", + "avatar": "avatar", + "token_address_whitelist": "Adresa e tokenit (<1>vetëm lista e bardhë)", + "token_id": "ID e tokenit" } \ No newline at end of file diff --git a/public/translations/sv/default.json b/public/translations/sv/default.json index b13a061f..ef37850a 100644 --- a/public/translations/sv/default.json +++ b/public/translations/sv/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 inlägg med detta ID", "x_posts_by_this_id": "{{number}} inlägg från detta ID", "ban_expires_at": "Bannad från p/{{address}} till {{timestamp}}", - "user_banned": "Användaren blev blockerad för detta inlägg" + "user_banned": "Användaren blev blockerad för detta inlägg", + "loading_comments": "Laddar kommentarer", + "replies": "svar", + "links": "länkar", + "avatar": "avatar", + "token_address_whitelist": "Tokenadress (<1>endast vitlista)", + "token_id": "Token ID" } \ No newline at end of file diff --git a/public/translations/te/default.json b/public/translations/te/default.json index 9a196891..316478a8 100644 --- a/public/translations/te/default.json +++ b/public/translations/te/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "అన్ని సెట్టింగ్‌లను సంక్షిప్తము చేయండి", "refresh": "రీఫ్రెష్", "no_board_selected": "ఏటీ ఎలాంటి సందేశ బోర్డులు ఎంచుకోలేదు", - "none": "ఏమీ లేదు", + "none": "ఎవరూ లేరు", "not_subscribed_to_any_board": "మీరు ఇంకా ఏకైక సందేశ బోర్డులకు చేరలేదు.", "board_mods": "సందేశ బోర్డుల మాడ్స్", "this_post_was_removed": "ఈ పోస్టు తొలగించబడింది", @@ -210,5 +210,11 @@ "1_post_by_this_id": "ఈ ID ద్వారా 1 పోస్టు", "x_posts_by_this_id": "ఈ ID నుండి {{number}} పోస్టు", "ban_expires_at": "p/{{address}} నుండి {{timestamp}} వరకు నిషేధించబడింది", - "user_banned": "ఈ పోస్టు కోసం వాడు బ్యాన్ చేయబడింది" + "user_banned": "ఈ పోస్టు కోసం వాడు బ్యాన్ చేయబడింది", + "loading_comments": "వ్యాఖ్యలను లోడ్ అవుతోంది", + "replies": "సమాధానాలు", + "links": "లింక్లు", + "avatar": "అవతార్", + "token_address_whitelist": "టోకెన్ చిరునామా (<1>కేవలం వెలుపల్లి)", + "token_id": "టోకెన్ ఐడి" } \ No newline at end of file diff --git a/public/translations/th/default.json b/public/translations/th/default.json index 96bd70b3..6812dcb1 100644 --- a/public/translations/th/default.json +++ b/public/translations/th/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 โพสต์โดย ID นี้", "x_posts_by_this_id": "{{number}} โพสต์จาก ID นี้", "ban_expires_at": "ถูกห้ามใช้งานจาก p/{{address}} จนถึง {{timestamp}}", - "user_banned": "ผู้ใช้ถูกห้ามใช้งานสำหรับโพสต์นี้" + "user_banned": "ผู้ใช้ถูกห้ามใช้งานสำหรับโพสต์นี้", + "loading_comments": "กำลังโหลดความคิดเห็น", + "replies": "คำตอบ", + "links": "ลิงก์", + "avatar": "อวตาร์", + "token_address_whitelist": "ที่อยู่โทเค็น (<1>รายชื่อที่ได้รับอนุญาตเท่านั้น)", + "token_id": "รหัสโทเค็น" } \ No newline at end of file diff --git a/public/translations/tr/default.json b/public/translations/tr/default.json index cba587fd..52652d2d 100644 --- a/public/translations/tr/default.json +++ b/public/translations/tr/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "Bu ID ile 1 gönderi", "x_posts_by_this_id": "Bu ID ile {{number}} gönderi", "ban_expires_at": "p/{{address}} adresinden {{timestamp}} tarihine kadar yasaklandı", - "user_banned": "Kullanıcı bu gönderi için yasaklandı" + "user_banned": "Kullanıcı bu gönderi için yasaklandı", + "loading_comments": "Yorumlar yükleniyor", + "replies": "cevaplar", + "links": "bağlantılar", + "avatar": "avatar", + "token_address_whitelist": "Token adresi (<1>yalnızca beyaz liste)", + "token_id": "Token kimliği" } \ No newline at end of file diff --git a/public/translations/uk/default.json b/public/translations/uk/default.json index 8714d547..697c3c9f 100644 --- a/public/translations/uk/default.json +++ b/public/translations/uk/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "Згорнути всі налаштування", "refresh": "Оновити", "no_board_selected": "не обрано жодного форуму", - "none": "немає", + "none": "ніхто", "not_subscribed_to_any_board": "Ви ще не підписалися на жоден форум.", "board_mods": "Дошка Моди", "this_post_was_removed": "цей пост було видалено", @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 пост з цим ідентифікатором", "x_posts_by_this_id": "{{number}} пост з цього ідентифікатора", "ban_expires_at": "Заборонений з p/{{address}} до {{timestamp}}", - "user_banned": "Користувач був заблокований за цей пост" + "user_banned": "Користувач був заблокований за цей пост", + "loading_comments": "Завантаження коментарів", + "replies": "відповіді", + "links": "посилання", + "avatar": "аватар", + "token_address_whitelist": "Адреса токена (<1>тільки білий список)", + "token_id": "Ідентифікатор токена" } \ No newline at end of file diff --git a/public/translations/ur/default.json b/public/translations/ur/default.json index 937b57b7..e1fb0874 100644 --- a/public/translations/ur/default.json +++ b/public/translations/ur/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "اس آئی ڈی پر 1 پوسٹ", "x_posts_by_this_id": "اس آئی ڈی سے {{number}} پوسٹ", "ban_expires_at": "p/{{address}} سے {{timestamp}} تک ممنوع", - "user_banned": "اس پوسٹ کے لئے صارف کو پابندی عائد کردی گئی تھی" + "user_banned": "اس پوسٹ کے لئے صارف کو پابندی عائد کردی گئی تھی", + "loading_comments": "تبصرے لوڈ ہو رہے ہیں", + "replies": "جوابات", + "links": "لنکس", + "avatar": "اوتار", + "token_address_whitelist": "ٹوکن کا پتا (<1>صرف سفید فہرست)", + "token_id": "ٹوکن شناخت" } \ No newline at end of file diff --git a/public/translations/vi/default.json b/public/translations/vi/default.json index 79cee730..b97c72cd 100644 --- a/public/translations/vi/default.json +++ b/public/translations/vi/default.json @@ -210,5 +210,11 @@ "1_post_by_this_id": "1 bài đăng bởi ID này", "x_posts_by_this_id": "{{number}} bài đăng từ ID này", "ban_expires_at": "Bị cấm từ p/{{address}} cho đến {{timestamp}}", - "user_banned": "Người dùng đã bị cấm vì bài đăng này" + "user_banned": "Người dùng đã bị cấm vì bài đăng này", + "loading_comments": "Đang tải bình luận", + "replies": "trả lời", + "links": "liên kết", + "avatar": "avatar", + "token_address_whitelist": "Địa chỉ token (<1>chỉ danh sách trắng)", + "token_id": "ID token" } \ No newline at end of file diff --git a/public/translations/zh/default.json b/public/translations/zh/default.json index 2f044b17..65c715d9 100644 --- a/public/translations/zh/default.json +++ b/public/translations/zh/default.json @@ -136,7 +136,7 @@ "collapse_all_settings": "折叠所有设置", "refresh": "刷新", "no_board_selected": "没有选择任何论坛", - "none": "无", + "none": "没有", "not_subscribed_to_any_board": "您尚未订阅任何论坛。", "board_mods": "董事會版主", "this_post_was_removed": "此帖已被删除", @@ -210,5 +210,11 @@ "1_post_by_this_id": "此ID的1篇帖子", "x_posts_by_this_id": "此ID的{{number}}篇帖子", "ban_expires_at": "被禁止从p/{{address}}到{{timestamp}}", - "user_banned": "用户因此帖子被禁止" + "user_banned": "用户因此帖子被禁止", + "loading_comments": "正在加载评论", + "replies": "回复", + "links": "链接", + "avatar": "头像", + "token_address_whitelist": "代币地址(<1>仅限白名单)", + "token_id": "令牌ID" } \ No newline at end of file diff --git a/src/components/board-buttons/board-buttons.tsx b/src/components/board-buttons/board-buttons.tsx index 2eccddab..e6a319be 100644 --- a/src/components/board-buttons/board-buttons.tsx +++ b/src/components/board-buttons/board-buttons.tsx @@ -10,6 +10,7 @@ import CatalogFilters from '../../views/catalog/catalog-filters/'; import styles from './board-buttons.module.css'; import Tooltip from '../tooltip'; import useCountLinksInReplies from '../../hooks/use-count-links-in-replies'; +import _ from 'lodash'; interface BoardButtonsProps { address?: string | undefined; @@ -223,6 +224,7 @@ export const MobileBoardButtons = () => { }; const PostPageStats = () => { + const { t } = useTranslation(); const params = useParams(); const location = useLocation(); const isInDescriptionView = isDescriptionView(location.pathname, params); @@ -232,11 +234,14 @@ const PostPageStats = () => { const { closed, pinned, replyCount } = comment || {}; const linkCount = useCountLinksInReplies(comment); + const displayReplyCount = replyCount !== undefined ? replyCount.toString() : '?'; + const replyCountTooltip = replyCount !== undefined ? _.capitalize(t('replies')) : t('loading'); + return ( - {(pinned || isInDescriptionView || isInRulesView) && 'Sticky / '} - {(closed || isInDescriptionView || isInRulesView) && 'Closed / '} - / + {(pinned || isInDescriptionView || isInRulesView) && `${_.capitalize(t('sticky'))} / `} + {(closed || isInDescriptionView || isInRulesView) && `${_.capitalize(t('closed'))} / `} + / ); }; diff --git a/src/components/board-header/board-header.module.css b/src/components/board-header/board-header.module.css index cc553a7f..dc0414d5 100644 --- a/src/components/board-header/board-header.module.css +++ b/src/components/board-header/board-header.module.css @@ -29,7 +29,6 @@ } .offlineIcon { - background-image: url('/public/assets/icons/offline.png'); display: inline-block; margin-left: 10px; width: 16px; @@ -39,10 +38,6 @@ image-rendering: pixelated; } -.redOfflineIcon { - background-image: url('/public/assets/icons/offline-red.png') !important; -} - @media (max-width: 640px) { .boardTitle { padding-top: 40px; diff --git a/src/components/board-header/board-header.tsx b/src/components/board-header/board-header.tsx index e891ac77..dbcc7bd5 100644 --- a/src/components/board-header/board-header.tsx +++ b/src/components/board-header/board-header.tsx @@ -34,8 +34,7 @@ const BoardHeader = () => { const title = isInAllView ? multisubMetadata?.title || 'all' : isInSubscriptionsView ? 'Subscriptions' : subplebbit?.title; const subtitle = isInAllView ? 'p/all' : isInSubscriptionsView ? 'p/subscriptions' : `p/${address}`; - const { isOffline, isDefinitelyOffline, offlineTitle } = useIsSubplebbitOffline(subplebbit); - const iconClass = `${styles.offlineIcon} ${isDefinitelyOffline ? styles.redOfflineIcon : ''}`; + const { isOffline, isOnlineStatusLoading, offlineIconClass, offlineTitle } = useIsSubplebbitOffline(subplebbit); return (
@@ -46,7 +45,7 @@ const BoardHeader = () => { )}
{title || `p/${shortAddress || subplebbitAddress}`} - {isOffline && } + {(isOffline || isOnlineStatusLoading) && }
{subtitle}

diff --git a/src/components/catalog-row/catalog-row.tsx b/src/components/catalog-row/catalog-row.tsx index f8981461..e72c8c16 100644 --- a/src/components/catalog-row/catalog-row.tsx +++ b/src/components/catalog-row/catalog-row.tsx @@ -3,7 +3,7 @@ import { createPortal } from 'react-dom'; import { useTranslation } from 'react-i18next'; import { Link, useLocation, useParams } from 'react-router-dom'; import { Comment, useComment } from '@plebbit/plebbit-react-hooks'; -import { useFloating, offset, shift, size, autoUpdate, Placement } from '@floating-ui/react'; +import { useFloating, offset, size, autoUpdate, Placement } from '@floating-ui/react'; import { getCommentMediaInfo, getHasThumbnail } from '../../lib/utils/media-utils'; import { getFormattedTimeAgo } from '../../lib/utils/time-utils'; import { isAllView } from '../../lib/utils/view-utils'; @@ -141,7 +141,6 @@ const CatalogPost = ({ post }: { post: Comment }) => { open: showPortal, placement: placementRef.current, middleware: [ - shift({ padding: 10 }), offset({ mainAxis: 5 }), size({ apply({ elements }) { diff --git a/src/components/edit-menu/edit-menu.tsx b/src/components/edit-menu/edit-menu.tsx index cf83432b..c5e673af 100644 --- a/src/components/edit-menu/edit-menu.tsx +++ b/src/components/edit-menu/edit-menu.tsx @@ -43,6 +43,7 @@ const EditMenu = ({ isAccountMod, isAccountCommentAuthor, isCommentAuthorMod, po deleted: isAccountCommentAuthor ? deleted : undefined, locked: isAccountMod ? locked : undefined, pinned: isAccountMod ? pinned : undefined, + reason, removed: isAccountMod ? removed : undefined, spoiler, subplebbitAddress, @@ -82,8 +83,7 @@ const EditMenu = ({ isAccountMod, isAccountCommentAuthor, isCommentAuthorMod, po })); }; - const onReason = (e: React.ChangeEvent) => - setPublishCommentEditOptions((state) => ({ ...state, reason: e.target.value ? e.target.value : undefined })); + const onReason = (e: React.ChangeEvent) => setPublishCommentEditOptions((state) => ({ ...state, reason: e.target.value })); const { refs, floatingStyles, context } = useFloating({ placement: 'bottom-start', @@ -206,7 +206,7 @@ const EditMenu = ({ isAccountMod, isAccountCommentAuthor, isCommentAuthorMod, po )}
{_.capitalize(t('reason'))}? ({t('optional')}) - +
+
+
+ + ); +}; + +export default AvatarSettings; diff --git a/src/components/settings-modal/avatar-settings/index.ts b/src/components/settings-modal/avatar-settings/index.ts new file mode 100644 index 00000000..5e1715cd --- /dev/null +++ b/src/components/settings-modal/avatar-settings/index.ts @@ -0,0 +1 @@ +export { default } from './avatar-settings'; diff --git a/src/components/settings-modal/plebbit-options/plebbit-options.module.css b/src/components/settings-modal/plebbit-options/plebbit-options.module.css index c1297b5f..5c5bc39d 100644 --- a/src/components/settings-modal/plebbit-options/plebbit-options.module.css +++ b/src/components/settings-modal/plebbit-options/plebbit-options.module.css @@ -18,14 +18,17 @@ } .ipfsGatewaysSettings textarea { - height: 70px; + min-height: 80px; + height: 80px; } .pubsubProvidersSettings textarea { + min-height: 50px; height: 50px; } .blockchainProvidersSettings textarea { + min-height: 50px; height: 50px; } diff --git a/src/components/settings-modal/plebbit-options/plebbit-options.tsx b/src/components/settings-modal/plebbit-options/plebbit-options.tsx index 1fcc4bf2..1654603a 100644 --- a/src/components/settings-modal/plebbit-options/plebbit-options.tsx +++ b/src/components/settings-modal/plebbit-options/plebbit-options.tsx @@ -193,6 +193,7 @@ const PlebbitOptions = () => { }, }); alert('Options saved.'); + window.location.reload(); } catch (e) { if (e instanceof Error) { alert('Error saving options: ' + e.message); diff --git a/src/components/settings-modal/settings-modal.module.css b/src/components/settings-modal/settings-modal.module.css index a0461b47..7c6ca6bd 100644 --- a/src/components/settings-modal/settings-modal.module.css +++ b/src/components/settings-modal/settings-modal.module.css @@ -22,6 +22,10 @@ padding: 2px 4px 3px; } +.settingsModal input[type="text"]:focus, .settingsModal textarea:focus { + border: var(--reply-modal-field-input-border-focus, revert); +} + .settingsModal { top: 25px; left: 50%; @@ -42,6 +46,10 @@ border-left: var(--settings-modal-border-left); } +.settingsModal textarea { + resize: vertical; +} + .settingsModal select, .settingsModal button, .settingsModal textarea, .settingsModal input[type='text'] { filter: var(--filter80); } diff --git a/src/components/settings-modal/settings-modal.tsx b/src/components/settings-modal/settings-modal.tsx index 3245ba06..00ef90b2 100644 --- a/src/components/settings-modal/settings-modal.tsx +++ b/src/components/settings-modal/settings-modal.tsx @@ -3,6 +3,7 @@ import { useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import styles from './settings-modal.module.css'; import AccountSettings from './account-settings'; +import AvatarSettings from './avatar-settings'; import BlockedAddressesSetting from './blocked-addresses-setting'; import CryptoAddressSetting from './crypto-address-setting'; import CryptoWalletsSetting from './crypto-wallets-setting'; @@ -19,6 +20,7 @@ const SettingsModal = () => { const [showInterfaceSettings, setShowInterfaceSettings] = useState(false); const [showAccountSettings, setShowAccountSettings] = useState(false); + const [showAvatarSettings, setShowAvatarSettings] = useState(false); const [showCryptoAddressSetting, setShowCryptoAddressSetting] = useState(false); const [showCryptoWalletSettings, setShowCryptoWalletSettings] = useState(false); const [showBlockedAddressesSetting, setShowBlockedAddressesSetting] = useState(false); @@ -30,6 +32,7 @@ const SettingsModal = () => { setExpandAll(newExpandState); setShowInterfaceSettings(newExpandState); setShowAccountSettings(newExpandState); + setShowAvatarSettings(newExpandState); setShowCryptoAddressSetting(newExpandState); setShowCryptoWalletSettings(newExpandState); setShowBlockedAddressesSetting(newExpandState); @@ -61,6 +64,13 @@ const SettingsModal = () => { {showAccountSettings && } +
+ +
+ {showAvatarSettings && }