From 254425ef7ffdb029959c77547b8e009762a1006b Mon Sep 17 00:00:00 2001 From: Kalle <38327916+Sendouc@users.noreply.github.com> Date: Fri, 20 Mar 2026 18:08:03 +0200 Subject: [PATCH] Show better error when no tags matching the tag filtered by --- app/features/art/loaders/art.server.ts | 6 +++++- app/features/art/routes/art.tsx | 8 +++++++- locales/da/art.json | 3 ++- locales/de/art.json | 3 ++- locales/en/art.json | 3 ++- locales/es-ES/art.json | 3 ++- locales/es-US/art.json | 3 ++- locales/fr-CA/art.json | 3 ++- locales/fr-EU/art.json | 3 ++- locales/he/art.json | 3 ++- locales/it/art.json | 3 ++- locales/ja/art.json | 3 ++- locales/ko/art.json | 3 ++- locales/nl/art.json | 3 ++- locales/pl/art.json | 3 ++- locales/pt-BR/art.json | 3 ++- locales/ru/art.json | 3 ++- locales/zh/art.json | 3 ++- 18 files changed, 44 insertions(+), 18 deletions(-) diff --git a/app/features/art/loaders/art.server.ts b/app/features/art/loaders/art.server.ts index bb2bc76d3..82a4ebae3 100644 --- a/app/features/art/loaders/art.server.ts +++ b/app/features/art/loaders/art.server.ts @@ -26,7 +26,11 @@ export const loader = async ({ request }: LoaderFunctionArgs) => { ? cachedArts.allTags.find((t) => t.name === filteredTagName) : null; - if (!filteredTag) return cachedArts; + if (!filteredTag) { + return filteredTagName + ? { ...cachedArts, showcaseArts: [] } + : cachedArts; + } return { ...cachedArts, diff --git a/app/features/art/routes/art.tsx b/app/features/art/routes/art.tsx index 79a1810cf..b3a139b05 100644 --- a/app/features/art/routes/art.tsx +++ b/app/features/art/routes/art.tsx @@ -160,7 +160,13 @@ export default function ArtPage() { - + {filteredTag && showcaseArts.length === 0 ? ( +
+ {t("art:noArtForTag", { tag: filteredTag })} +
+ ) : ( + + )}
diff --git a/locales/da/art.json b/locales/da/art.json index 23d7fff7a..cc15c1e11 100644 --- a/locales/da/art.json +++ b/locales/da/art.json @@ -29,5 +29,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Maks antal etiketter opnået", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/de/art.json b/locales/de/art.json index 195c7f423..d75450428 100644 --- a/locales/de/art.json +++ b/locales/de/art.json @@ -29,5 +29,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/en/art.json b/locales/en/art.json index 47b5b5573..785c750b9 100644 --- a/locales/en/art.json +++ b/locales/en/art.json @@ -29,5 +29,6 @@ "forms.tags.placeholder": "Select a tag", "forms.tags.maxReached": "Max tags reached", "delete.title": "Are you sure you want to delete the art?", - "unlink.title": "Are you sure you want to remove this art from your profile (only {{username}} can add it back)?" + "unlink.title": "Are you sure you want to remove this art from your profile (only {{username}} can add it back)?", + "noArtForTag": "No uploaded art found for #{{tag}}" } diff --git a/locales/es-ES/art.json b/locales/es-ES/art.json index e4e6028a9..d009261c2 100644 --- a/locales/es-ES/art.json +++ b/locales/es-ES/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "Selecciona una etiqueta", "forms.tags.maxReached": "Limite máximo de etiquetas", "delete.title": "¿Seguro que quieres eliminar este arte?", - "unlink.title": "¿Seguro que quieres desvincular este arte de tu perfil? (solo {{username}} puede volver a añadirlo)" + "unlink.title": "¿Seguro que quieres desvincular este arte de tu perfil? (solo {{username}} puede volver a añadirlo)", + "noArtForTag": "" } diff --git a/locales/es-US/art.json b/locales/es-US/art.json index 02d05bd09..0064019cd 100644 --- a/locales/es-US/art.json +++ b/locales/es-US/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Limite máximo de etiquetas", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/fr-CA/art.json b/locales/fr-CA/art.json index 0c3fae8a4..8bff08a1d 100644 --- a/locales/fr-CA/art.json +++ b/locales/fr-CA/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Limite de tags atteinte", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/fr-EU/art.json b/locales/fr-EU/art.json index e300bb7e6..f9da97048 100644 --- a/locales/fr-EU/art.json +++ b/locales/fr-EU/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Limite de tags atteinte", "delete.title": "Êtes vous sûre de vouloir supprimer cette œuvre?", - "unlink.title": "Êtes vous sûre de vouloir supprimer cette œuvre de votre profil? (Seulement {{username}} pourra le remettre)" + "unlink.title": "Êtes vous sûre de vouloir supprimer cette œuvre de votre profil? (Seulement {{username}} pourra le remettre)", + "noArtForTag": "" } diff --git a/locales/he/art.json b/locales/he/art.json index 5ff06b5d3..6488f515c 100644 --- a/locales/he/art.json +++ b/locales/he/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "הגעת למקסימום תגים", "forms.tags.maxReached": "הגעת לכמות תגים מקסימלית", "delete.title": "האם אתה בטוח שאתה רוצה למחוק את הציור?", - "unlink.title": "האם אתה בטוח שאתה רוצה להסיר את הציור הזה מהפרופיל שלך (רק {{username}} יוכל להוסיף אותו חזרה)?" + "unlink.title": "האם אתה בטוח שאתה רוצה להסיר את הציור הזה מהפרופיל שלך (רק {{username}} יוכל להוסיף אותו חזרה)?", + "noArtForTag": "" } diff --git a/locales/it/art.json b/locales/it/art.json index 3b9ca6c2b..a14696355 100644 --- a/locales/it/art.json +++ b/locales/it/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Numero massimo di tag raggiunto.", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/ja/art.json b/locales/ja/art.json index e5f72a42e..d36fd4bba 100644 --- a/locales/ja/art.json +++ b/locales/ja/art.json @@ -27,5 +27,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "タグの最大数に到達しました", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/ko/art.json b/locales/ko/art.json index 9830f4194..8e8b0deda 100644 --- a/locales/ko/art.json +++ b/locales/ko/art.json @@ -27,5 +27,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/nl/art.json b/locales/nl/art.json index 195c7f423..d75450428 100644 --- a/locales/nl/art.json +++ b/locales/nl/art.json @@ -29,5 +29,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/pl/art.json b/locales/pl/art.json index 3861e6eac..8c1aece3c 100644 --- a/locales/pl/art.json +++ b/locales/pl/art.json @@ -31,5 +31,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/pt-BR/art.json b/locales/pt-BR/art.json index da2b0ec47..60d87e22e 100644 --- a/locales/pt-BR/art.json +++ b/locales/pt-BR/art.json @@ -30,5 +30,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Quantidade máxima de marcações atingida", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" } diff --git a/locales/ru/art.json b/locales/ru/art.json index 84580f919..398ceb4ba 100644 --- a/locales/ru/art.json +++ b/locales/ru/art.json @@ -31,5 +31,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "Максимальное кол-во тегов достигнуто", "delete.title": "Вы точно хотите удалить этот арт?", - "unlink.title": "Вы точно хотите удалить этот арт с вашего профиля (только {{username}} может добавить его обратно)?" + "unlink.title": "Вы точно хотите удалить этот арт с вашего профиля (только {{username}} может добавить его обратно)?", + "noArtForTag": "" } diff --git a/locales/zh/art.json b/locales/zh/art.json index b33f9958b..fa63e8ead 100644 --- a/locales/zh/art.json +++ b/locales/zh/art.json @@ -27,5 +27,6 @@ "forms.tags.placeholder": "", "forms.tags.maxReached": "已达到最大标签数", "delete.title": "", - "unlink.title": "" + "unlink.title": "", + "noArtForTag": "" }