diff --git a/public/translations/ar/default.json b/public/translations/ar/default.json index 9ef61239..16c26023 100644 --- a/public/translations/ar/default.json +++ b/public/translations/ar/default.json @@ -406,5 +406,6 @@ "not_a_file": "ليس ملفًا", "tor_author_flag_label": "هذا المستخدم يستخدم Tor", "copy_share_link": "نسخ رابط المشاركة", - "directory_submit_board": "أرسل لوحتك" + "directory_submit_board": "أرسل لوحتك", + "all_subtitle": "المنتدى الأعلى تصنيفاً من كل دليل" } diff --git a/public/translations/bn/default.json b/public/translations/bn/default.json index eb88c7e1..2c26e4a8 100644 --- a/public/translations/bn/default.json +++ b/public/translations/bn/default.json @@ -406,5 +406,6 @@ "not_a_file": "ফাইল নয়", "tor_author_flag_label": "এই ব্যবহারকারী Tor ব্যবহার করছেন", "copy_share_link": "শেয়ার লিংক কপি করুন", - "directory_submit_board": "আপনার বোর্ড জমা দিন" + "directory_submit_board": "আপনার বোর্ড জমা দিন", + "all_subtitle": "প্রতিটি ডিরেক্টরি থেকে সর্বোচ্চ স্কোর করা বোর্ড" } diff --git a/public/translations/cs/default.json b/public/translations/cs/default.json index 85f9de43..abaff73c 100644 --- a/public/translations/cs/default.json +++ b/public/translations/cs/default.json @@ -406,5 +406,6 @@ "not_a_file": "není soubor", "tor_author_flag_label": "Tento uživatel je na síti Tor", "copy_share_link": "Kopírovat odkaz pro sdílení", - "directory_submit_board": "Odeslat svou nástěnku" + "directory_submit_board": "Odeslat svou nástěnku", + "all_subtitle": "Fórum s nejvyšším skóre z každého adresáře" } diff --git a/public/translations/da/default.json b/public/translations/da/default.json index 3fffe751..c93c14ee 100644 --- a/public/translations/da/default.json +++ b/public/translations/da/default.json @@ -406,5 +406,6 @@ "not_a_file": "ikke en fil", "tor_author_flag_label": "Denne bruger er på Tor", "copy_share_link": "Kopier delingslinkk", - "directory_submit_board": "Indsend dit board" + "directory_submit_board": "Indsend dit board", + "all_subtitle": "Forummet med højeste pointtal fra hvert katalog" } diff --git a/public/translations/de/default.json b/public/translations/de/default.json index a0751326..42719dc7 100644 --- a/public/translations/de/default.json +++ b/public/translations/de/default.json @@ -406,5 +406,6 @@ "not_a_file": "keine Datei", "tor_author_flag_label": "Dieser Benutzer ist auf Tor", "copy_share_link": "Freigabelink kopieren", - "directory_submit_board": "Reiche dein Board ein" + "directory_submit_board": "Reiche dein Board ein", + "all_subtitle": "Das höchstbewertete Forum aus jedem Verzeichnis" } diff --git a/public/translations/el/default.json b/public/translations/el/default.json index 68db2a63..35d8c901 100644 --- a/public/translations/el/default.json +++ b/public/translations/el/default.json @@ -406,5 +406,6 @@ "not_a_file": "δεν είναι αρχείο", "tor_author_flag_label": "Αυτός ο χρήστης είναι στο Tor", "copy_share_link": "Αντιγραφή ενός συνδέσμου", - "directory_submit_board": "Υπόβαλε το board σου" + "directory_submit_board": "Υπόβαλε το board σου", + "all_subtitle": "Το Φόρουμ με την υψηλότερη βαθμολογία από κάθε κατάλογο" } diff --git a/public/translations/en/default.json b/public/translations/en/default.json index 2c21ed68..ecb5745b 100644 --- a/public/translations/en/default.json +++ b/public/translations/en/default.json @@ -425,5 +425,6 @@ "not_a_file": "not a file", "tor_author_flag_label": "This user is on Tor", "copy_share_link": "Copy share link", - "directory_submit_board": "Submit Your Board" + "directory_submit_board": "Submit Your Board", + "all_subtitle": "The highest-scoring board from each directory" } diff --git a/public/translations/es/default.json b/public/translations/es/default.json index fac120f1..5654cd21 100644 --- a/public/translations/es/default.json +++ b/public/translations/es/default.json @@ -406,5 +406,6 @@ "not_a_file": "no es un archivo", "tor_author_flag_label": "Este usuario está en Tor", "copy_share_link": "Copiar enlace compartido", - "directory_submit_board": "Envía tu board" + "directory_submit_board": "Envía tu board", + "all_subtitle": "El foro de mayor puntuación de cada directorio" } diff --git a/public/translations/fa/default.json b/public/translations/fa/default.json index 11e40557..7f01cedc 100644 --- a/public/translations/fa/default.json +++ b/public/translations/fa/default.json @@ -406,5 +406,6 @@ "not_a_file": "فایل نیست", "tor_author_flag_label": "این کاربر روی Tor است", "copy_share_link": "کپی کردن لینک اشتراک", - "directory_submit_board": "برد خود را ارسال کنید" + "directory_submit_board": "برد خود را ارسال کنید", + "all_subtitle": "تالار بالاترین امتیاز از هر دایرکتوری" } diff --git a/public/translations/fi/default.json b/public/translations/fi/default.json index 00c84b35..4adb9c8e 100644 --- a/public/translations/fi/default.json +++ b/public/translations/fi/default.json @@ -406,5 +406,6 @@ "not_a_file": "ei ole tiedosto", "tor_author_flag_label": "Tämä käyttäjä on Torissa", "copy_share_link": "Kopioi jakolinkkii", - "directory_submit_board": "Lähetä boardisi" + "directory_submit_board": "Lähetä boardisi", + "all_subtitle": "Korkeimman pistemäärän saanut foorumi jokaisesta hakemistosta" } diff --git a/public/translations/fil/default.json b/public/translations/fil/default.json index 9a99af6c..3a6d5966 100644 --- a/public/translations/fil/default.json +++ b/public/translations/fil/default.json @@ -406,5 +406,6 @@ "not_a_file": "hindi file", "tor_author_flag_label": "Ang user na ito ay nasa Tor", "copy_share_link": "Kopyahin ang link sa pagbabahagi", - "directory_submit_board": "Isumite ang board mo" + "directory_submit_board": "Isumite ang board mo", + "all_subtitle": "Ang pinakamataas na nakakuha ng puntos na Board mula sa bawat direktoryo" } diff --git a/public/translations/fr/default.json b/public/translations/fr/default.json index 7eef44a2..0f3d80f0 100644 --- a/public/translations/fr/default.json +++ b/public/translations/fr/default.json @@ -406,5 +406,6 @@ "not_a_file": "pas un fichier", "tor_author_flag_label": "Cet utilisateur est sur Tor", "copy_share_link": "Copier le lien de partage", - "directory_submit_board": "Soumettez votre board" + "directory_submit_board": "Soumettez votre board", + "all_subtitle": "Le forum de plus haute note de chaque répertoire" } diff --git a/public/translations/he/default.json b/public/translations/he/default.json index 44fa151f..d5437aee 100644 --- a/public/translations/he/default.json +++ b/public/translations/he/default.json @@ -406,5 +406,6 @@ "not_a_file": "לא קובץ", "tor_author_flag_label": "המשתמש הזה נמצא ב-Tor", "copy_share_link": "העתק קישור שיתוף", - "directory_submit_board": "שלח את הבורד שלך" + "directory_submit_board": "שלח את הבורד שלך", + "all_subtitle": "הפורום בעל הציון הגבוה ביותר מכל ספריה" } diff --git a/public/translations/hi/default.json b/public/translations/hi/default.json index 9f0f6651..38d29171 100644 --- a/public/translations/hi/default.json +++ b/public/translations/hi/default.json @@ -406,5 +406,6 @@ "not_a_file": "फ़ाइल नहीं है", "tor_author_flag_label": "यह उपयोगकर्ता Tor पर है", "copy_share_link": "शेयर लिंक कॉपी करें", - "directory_submit_board": "अपना बोर्ड सबमिट करें" + "directory_submit_board": "अपना बोर्ड सबमिट करें", + "all_subtitle": "हर डायरेक्टरी से सबसे अधिक स्कोर किया गया फोरम" } diff --git a/public/translations/hu/default.json b/public/translations/hu/default.json index b151a7e6..0ed8ceb7 100644 --- a/public/translations/hu/default.json +++ b/public/translations/hu/default.json @@ -406,5 +406,6 @@ "not_a_file": "nem fájl", "tor_author_flag_label": "Ez a felhasználó a Tor hálózatán van", "copy_share_link": "Megosztási hivatkozás másolása", - "directory_submit_board": "Küldd be a boardodat" + "directory_submit_board": "Küldd be a boardodat", + "all_subtitle": "A legmagasabb pontszámú Fórum minden könyvtárból" } diff --git a/public/translations/id/default.json b/public/translations/id/default.json index a0924c69..0579b4d7 100644 --- a/public/translations/id/default.json +++ b/public/translations/id/default.json @@ -406,5 +406,6 @@ "not_a_file": "bukan file", "tor_author_flag_label": "Pengguna ini ada di Tor", "copy_share_link": "Salin tautan bagian", - "directory_submit_board": "Kirim board Anda" + "directory_submit_board": "Kirim board Anda", + "all_subtitle": "Forum dengan skor tertinggi dari setiap direktori" } diff --git a/public/translations/it/default.json b/public/translations/it/default.json index 3732162f..6c1f1524 100644 --- a/public/translations/it/default.json +++ b/public/translations/it/default.json @@ -406,5 +406,6 @@ "not_a_file": "non è un file", "tor_author_flag_label": "Questo utente è su Tor", "copy_share_link": "Copia link condiviso", - "directory_submit_board": "Invia la tua board" + "directory_submit_board": "Invia la tua board", + "all_subtitle": "Il board con il punteggio più alto da ogni directory" } diff --git a/public/translations/ja/default.json b/public/translations/ja/default.json index 254174ca..f8526115 100644 --- a/public/translations/ja/default.json +++ b/public/translations/ja/default.json @@ -406,5 +406,6 @@ "not_a_file": "ファイルではありません", "tor_author_flag_label": "このユーザーはTorを使用しています", "copy_share_link": "シェアリンクをコピー", - "directory_submit_board": "掲示板を提出する" + "directory_submit_board": "掲示板を提出する", + "all_subtitle": "各ディレクトリから最もスコアの高い掲示板" } diff --git a/public/translations/ko/default.json b/public/translations/ko/default.json index 438f8619..f02f6e3e 100644 --- a/public/translations/ko/default.json +++ b/public/translations/ko/default.json @@ -406,5 +406,6 @@ "not_a_file": "파일이 아님", "tor_author_flag_label": "이 사용자는 Tor를 사용 중입니다", "copy_share_link": "공유 링크 복사", - "directory_submit_board": "게시판 제출하기" + "directory_submit_board": "게시판 제출하기", + "all_subtitle": "각 디렉토리의 가장 높은 점수 게시판" } diff --git a/public/translations/mr/default.json b/public/translations/mr/default.json index a9a6afb8..d682ea33 100644 --- a/public/translations/mr/default.json +++ b/public/translations/mr/default.json @@ -406,5 +406,6 @@ "not_a_file": "फाइल नाही", "tor_author_flag_label": "हा वापरकर्ता Tor वर आहे", "copy_share_link": "शेअर लिंक कॉपी करा", - "directory_submit_board": "तुमचा बोर्ड सबमिट करा" + "directory_submit_board": "तुमचा बोर्ड सबमिट करा", + "all_subtitle": "प्रत्येक डायरेक्टरीमधील सर्वोच्च स्कोर केलेले फोरम" } diff --git a/public/translations/nl/default.json b/public/translations/nl/default.json index 32e490ed..ff415564 100644 --- a/public/translations/nl/default.json +++ b/public/translations/nl/default.json @@ -406,5 +406,6 @@ "not_a_file": "geen bestand", "tor_author_flag_label": "Deze gebruiker zit op Tor", "copy_share_link": "Delen link kopiëren", - "directory_submit_board": "Dien je board in" + "directory_submit_board": "Dien je board in", + "all_subtitle": "Het Forum met de hoogste score van elke directory" } diff --git a/public/translations/no/default.json b/public/translations/no/default.json index d052be15..cc96bcb3 100644 --- a/public/translations/no/default.json +++ b/public/translations/no/default.json @@ -406,5 +406,6 @@ "not_a_file": "ikke en fil", "tor_author_flag_label": "Denne brukeren er på Tor", "copy_share_link": "Kopier delingslenke", - "directory_submit_board": "Send inn boardet ditt" + "directory_submit_board": "Send inn boardet ditt", + "all_subtitle": "Forummet med høyest poengsum fra hver katalog" } diff --git a/public/translations/pl/default.json b/public/translations/pl/default.json index 2e155b6c..ad8b6a92 100644 --- a/public/translations/pl/default.json +++ b/public/translations/pl/default.json @@ -406,5 +406,6 @@ "not_a_file": "to nie plik", "tor_author_flag_label": "Ten użytkownik jest w sieci Tor", "copy_share_link": "Kopiuj link udostępniania", - "directory_submit_board": "Prześlij swój board" + "directory_submit_board": "Prześlij swój board", + "all_subtitle": "Forum o najwyższej punktacji z każdego katalogu" } diff --git a/public/translations/pt/default.json b/public/translations/pt/default.json index 04011ed3..643b5728 100644 --- a/public/translations/pt/default.json +++ b/public/translations/pt/default.json @@ -406,5 +406,6 @@ "not_a_file": "não é um arquivo", "tor_author_flag_label": "Este usuário está no Tor", "copy_share_link": "Copiar link compartilhado", - "directory_submit_board": "Envie seu board" + "directory_submit_board": "Envie seu board", + "all_subtitle": "O Fórum de mais alta pontuação de cada diretório" } diff --git a/public/translations/ro/default.json b/public/translations/ro/default.json index c67d04a0..51aa9101 100644 --- a/public/translations/ro/default.json +++ b/public/translations/ro/default.json @@ -406,5 +406,6 @@ "not_a_file": "nu este fișier", "tor_author_flag_label": "Acest utilizator este pe Tor", "copy_share_link": "Copiezi link-ul de partajare", - "directory_submit_board": "Trimite boardul tău" + "directory_submit_board": "Trimite boardul tău", + "all_subtitle": "Forumul cu cea mai mare punctaj din fiecare director" } diff --git a/public/translations/ru/default.json b/public/translations/ru/default.json index be9f5029..61276eff 100644 --- a/public/translations/ru/default.json +++ b/public/translations/ru/default.json @@ -406,5 +406,6 @@ "not_a_file": "не файл", "tor_author_flag_label": "Этот пользователь находится в Tor", "copy_share_link": "Копировать ссылку для общего доступа", - "directory_submit_board": "Отправить свою доску" + "directory_submit_board": "Отправить свою доску", + "all_subtitle": "Форум с наивысшим рейтингом из каждого каталога" } diff --git a/public/translations/sq/default.json b/public/translations/sq/default.json index b4237d39..07ea2ff8 100644 --- a/public/translations/sq/default.json +++ b/public/translations/sq/default.json @@ -406,5 +406,6 @@ "not_a_file": "nuk është skedar", "tor_author_flag_label": "Ky përdorues është në Tor", "copy_share_link": "Kopjo lidhjen e ndarjes", - "directory_submit_board": "Dërgo bordin tënd" + "directory_submit_board": "Dërgo bordin tënd", + "all_subtitle": "Forumi me pikëzimin më të lartë nga secila drejtori" } diff --git a/public/translations/sv/default.json b/public/translations/sv/default.json index 1ce52b2a..fffb3060 100644 --- a/public/translations/sv/default.json +++ b/public/translations/sv/default.json @@ -406,5 +406,6 @@ "not_a_file": "inte en fil", "tor_author_flag_label": "Den här användaren är på Tor", "copy_share_link": "Kopiera delningslänk", - "directory_submit_board": "Skicka in ditt board" + "directory_submit_board": "Skicka in ditt board", + "all_subtitle": "Forummet med högst poäng från varje katalog" } diff --git a/public/translations/te/default.json b/public/translations/te/default.json index 841a08e2..a9e95c92 100644 --- a/public/translations/te/default.json +++ b/public/translations/te/default.json @@ -406,5 +406,6 @@ "not_a_file": "ఫైల్ కాదు", "tor_author_flag_label": "ఈ వినియోగదారు Tor లో ఉన్నారు", "copy_share_link": "భాగస్వామ్య లింక్‌ను కాపీ చేయండి", - "directory_submit_board": "మీ బోర్డును సమర్పించండి" + "directory_submit_board": "మీ బోర్డును సమర్పించండి", + "all_subtitle": "ప్రతిదిరెక్టరీ నుండి అత్యధిక స్కోర్ చేసిన ఫోరం" } diff --git a/public/translations/th/default.json b/public/translations/th/default.json index 0f0f1e2f..c3153398 100644 --- a/public/translations/th/default.json +++ b/public/translations/th/default.json @@ -406,5 +406,6 @@ "not_a_file": "ไม่ใช่ไฟล์", "tor_author_flag_label": "ผู้ใช้นี้อยู่บน Tor", "copy_share_link": "คัดลอกลิงก์แชร์", - "directory_submit_board": "ส่งบอร์ดของคุณ" + "directory_submit_board": "ส่งบอร์ดของคุณ", + "all_subtitle": "กระดานที่ได้คะแนนสูงสุดจากแต่ละไดเรกทอรี่" } diff --git a/public/translations/tr/default.json b/public/translations/tr/default.json index 970a4413..c758890a 100644 --- a/public/translations/tr/default.json +++ b/public/translations/tr/default.json @@ -406,5 +406,6 @@ "not_a_file": "dosya değil", "tor_author_flag_label": "Bu kullanıcı Tor'da", "copy_share_link": "Paylaşma bağlantısını kopyala", - "directory_submit_board": "Panonu Gönder" + "directory_submit_board": "Panonu Gönder", + "all_subtitle": "Her dizinden en yüksek skorlu Forum" } diff --git a/public/translations/uk/default.json b/public/translations/uk/default.json index a5ded08b..a9a13e49 100644 --- a/public/translations/uk/default.json +++ b/public/translations/uk/default.json @@ -406,5 +406,6 @@ "not_a_file": "не файл", "tor_author_flag_label": "Цей користувач у Tor", "copy_share_link": "Копіювати посилання для спільного доступу", - "directory_submit_board": "Надіслати свою дошку" + "directory_submit_board": "Надіслати свою дошку", + "all_subtitle": "Форум з найвищим рейтингом з кожного каталогу" } diff --git a/public/translations/ur/default.json b/public/translations/ur/default.json index 3c6a4454..764ee8a9 100644 --- a/public/translations/ur/default.json +++ b/public/translations/ur/default.json @@ -406,5 +406,6 @@ "not_a_file": "فائل نہیں ہے", "tor_author_flag_label": "یہ صارف Tor پر ہے", "copy_share_link": "شیئر لنک کاپی کریں", - "directory_submit_board": "اپنا بورڈ جمع کرائیں" + "directory_submit_board": "اپنا بورڈ جمع کرائیں", + "all_subtitle": "ہر ڈائریکٹری سے سب سے زیادہ سکور پیغام بورڈ" } diff --git a/public/translations/vi/default.json b/public/translations/vi/default.json index 8eb2ed8c..2bd88cdb 100644 --- a/public/translations/vi/default.json +++ b/public/translations/vi/default.json @@ -406,5 +406,6 @@ "not_a_file": "không phải tệp", "tor_author_flag_label": "Người dùng này đang ở trên Tor", "copy_share_link": "Sao chép liên kết chia sẻ", - "directory_submit_board": "Gửi bảng của bạn" + "directory_submit_board": "Gửi bảng của bạn", + "all_subtitle": "Diễn đàn có điểm cao nhất từ mỗi thư mục" } diff --git a/public/translations/zh/default.json b/public/translations/zh/default.json index 1e51f1a7..292f29db 100644 --- a/public/translations/zh/default.json +++ b/public/translations/zh/default.json @@ -406,5 +406,6 @@ "not_a_file": "不是文件", "tor_author_flag_label": "该用户正在使用 Tor", "copy_share_link": "复制分享链接", - "directory_submit_board": "提交你的版块" + "directory_submit_board": "提交你的版块", + "all_subtitle": "来自每个目录的最高评分论坛" } diff --git a/src/components/board-header/__tests__/board-header.test.tsx b/src/components/board-header/__tests__/board-header.test.tsx index 6eb383a9..df90681a 100644 --- a/src/components/board-header/__tests__/board-header.test.tsx +++ b/src/components/board-header/__tests__/board-header.test.tsx @@ -169,6 +169,7 @@ describe('BoardHeader', () => { expect(container.textContent).toContain('/all/ - All 5chan Directories'); expect(container.querySelector('img')?.getAttribute('src')).toBe('banner-a.png'); expect(container.textContent).not.toContain('subscriptions_subtitle'); + expect(container.textContent).toContain('all_subtitle'); }); it('renders a clickable subscriptions subtitle that navigates to subscription settings', async () => { diff --git a/src/components/board-header/board-header.tsx b/src/components/board-header/board-header.tsx index 3c01dde8..4075288e 100644 --- a/src/components/board-header/board-header.tsx +++ b/src/components/board-header/board-header.tsx @@ -83,7 +83,7 @@ const BoardHeader = () => { ? '/mod/ - Boards You Moderate' : defaultCommunity?.title || stableCommunity?.title; const subtitle = isInAllView - ? '' + ? t('all_subtitle') : isInSubscriptionsView ? subscriptionsSubtitle : isInModView @@ -124,9 +124,9 @@ const BoardHeader = () => { > {subtitle} - ) : isInDirectoryListView ? ( + ) : isInDirectoryListView || isInAllView ? ( {subtitle} - ) : !isInAllView && !isInModView && subtitle ? ( + ) : !isInModView && subtitle ? ( {subtitle} ) : ( subtitle diff --git a/src/lib/__tests__/comment-flags.test.ts b/src/lib/__tests__/comment-flags.test.ts index b9b205a4..d9525caa 100644 --- a/src/lib/__tests__/comment-flags.test.ts +++ b/src/lib/__tests__/comment-flags.test.ts @@ -1,5 +1,6 @@ import { describe, expect, it } from 'vitest'; import { getCommentFlagFlairs, getAuthorFlagFlairs, getAuthorFlagViewModels, TOR_AUTHOR_FLAG_LABEL_KEY } from '../comment-flags'; +import { getBoardFlagDefinition } from '../board-flags'; describe('comment-flags', () => { it('parses the pkc-js challenge flair example for country flags', () => { @@ -21,8 +22,13 @@ describe('comment-flags', () => { const flags = getAuthorFlagViewModels([{ text: 'flag:country:DE' }, { text: 'flag:pol:AC' }, { text: 'flag:pony:AJ' }], 1000); expect(flags.map((flag) => flag.key)).toEqual(['country:de', 'pol:AC', 'pony:AJ']); - expect(flags[1]).toMatchObject({ label: 'Anarcho-Capitalist', x: 0, y: 0 }); - expect(flags[2]).toMatchObject({ label: 'Applejack', x: 48, y: 0 }); + + // Pin the human-readable labels here, but derive the sprite coords from the board-flags source of + // truth so this test can't drift when the sheet is remapped (board-flags.test.ts pins the values). + const politicalFlag = getBoardFlagDefinition('pol', 'AC'); + const ponyFlag = getBoardFlagDefinition('pony', 'AJ'); + expect(flags[1]).toMatchObject({ label: 'Anarcho-Capitalist', x: politicalFlag?.x, y: politicalFlag?.y }); + expect(flags[2]).toMatchObject({ label: 'Applejack', x: ponyFlag?.x, y: ponyFlag?.y }); }); it('labels the xx country flag as Tor traffic', () => {