diff --git a/components/email/email-list.tsx b/components/email/email-list.tsx
index 2689f996..3cd4e086 100644
--- a/components/email/email-list.tsx
+++ b/components/email/email-list.tsx
@@ -4,7 +4,7 @@ import { Email, ThreadGroup } from "@/lib/jmap/types";
import { ThreadListItem } from "./thread-list-item";
import { EmailContextMenu } from "./email-context-menu";
import { cn } from "@/lib/utils";
-import { Inbox, Trash2, Mail, MailOpen, Loader2 } from "lucide-react";
+import { Trash2, Mail, MailX, MailOpen, Loader2, SearchX } from "lucide-react";
import { useState, useEffect, useRef, useCallback, useMemo } from "react";
import { Button } from "@/components/ui/button";
import { ConfirmDialog } from "@/components/ui/confirm-dialog";
@@ -83,6 +83,7 @@ export function EmailList({
setSearchFilters,
clearSearchFilters,
advancedSearch,
+ searchQuery,
} = useEmailStore();
const threadGroups = useMemo(() => {
@@ -325,9 +326,19 @@ export function EmailList({
) : emails.length === 0 && !isLoading ? (
-
-
{t('no_emails')}
-
{t('no_emails_description')}
+
+ {searchQuery || !isFilterEmpty(searchFilters) ? (
+
+ ) : (
+
+ )}
+
+
+ {searchQuery || !isFilterEmpty(searchFilters) ? t('no_search_results') : t('no_emails')}
+
+
+ {searchQuery || !isFilterEmpty(searchFilters) ? t('no_search_results_description') : t('no_emails_description')}
+
) : (
<>
diff --git a/locales/de/common.json b/locales/de/common.json
index 64affcb5..b00d3070 100644
--- a/locales/de/common.json
+++ b/locales/de/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navigation"
},
"email_list": {
- "no_emails": "Keine E-Mails",
- "no_emails_description": "Beginnen Sie, indem Sie eine neue E-Mail verfassen",
+ "no_emails": "Keine Nachrichten gefunden",
+ "no_emails_description": "Dieses Postfach ist leer",
+ "no_search_results": "Keine Ergebnisse gefunden",
+ "no_search_results_description": "Passen Sie Ihre Suche oder Filter an",
"loading": "E-Mails werden geladen...",
"unread": "ungelesen",
"to_me": "An mich",
diff --git a/locales/en/common.json b/locales/en/common.json
index eb040b86..94f1537d 100644
--- a/locales/en/common.json
+++ b/locales/en/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navigation"
},
"email_list": {
- "no_emails": "No emails",
- "no_emails_description": "Start by composing a new email",
+ "no_emails": "No messages found",
+ "no_emails_description": "This mailbox is empty",
+ "no_search_results": "No results found",
+ "no_search_results_description": "Try adjusting your search or filters",
"loading": "Loading emails...",
"unread": "unread",
"to_me": "To me",
diff --git a/locales/es/common.json b/locales/es/common.json
index 429624bd..80f62888 100644
--- a/locales/es/common.json
+++ b/locales/es/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navegación"
},
"email_list": {
- "no_emails": "Sin correos",
- "no_emails_description": "Comience redactando un nuevo correo",
+ "no_emails": "No se encontraron mensajes",
+ "no_emails_description": "Este buzón está vacío",
+ "no_search_results": "No se encontraron resultados",
+ "no_search_results_description": "Intente ajustar su búsqueda o filtros",
"loading": "Cargando correos...",
"unread": "no leído",
"to_me": "Para mí",
diff --git a/locales/fr/common.json b/locales/fr/common.json
index 662cf388..6003549c 100644
--- a/locales/fr/common.json
+++ b/locales/fr/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navigation"
},
"email_list": {
- "no_emails": "Aucun email",
- "no_emails_description": "Commencez par composer un nouvel email",
+ "no_emails": "Aucun message trouvé",
+ "no_emails_description": "Cette boîte est vide",
+ "no_search_results": "Aucun résultat trouvé",
+ "no_search_results_description": "Essayez de modifier votre recherche ou vos filtres",
"loading": "Chargement des emails...",
"unread": "non lu",
"to_me": "À moi",
diff --git a/locales/it/common.json b/locales/it/common.json
index cf18ca14..6d495da1 100644
--- a/locales/it/common.json
+++ b/locales/it/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navigazione"
},
"email_list": {
- "no_emails": "Nessun messaggio",
- "no_emails_description": "Inizia scrivendo un nuovo messaggio",
+ "no_emails": "Nessun messaggio trovato",
+ "no_emails_description": "Questa casella è vuota",
+ "no_search_results": "Nessun risultato trovato",
+ "no_search_results_description": "Prova a modificare la ricerca o i filtri",
"loading": "Caricamento messaggi...",
"unread": "non letto",
"to_me": "A me",
diff --git a/locales/ja/common.json b/locales/ja/common.json
index 18a365c7..b23ca401 100644
--- a/locales/ja/common.json
+++ b/locales/ja/common.json
@@ -99,8 +99,10 @@
"nav_label": "ナビゲーション"
},
"email_list": {
- "no_emails": "メールがありません",
- "no_emails_description": "新しいメールを作成してください",
+ "no_emails": "メッセージが見つかりません",
+ "no_emails_description": "このメールボックスは空です",
+ "no_search_results": "結果が見つかりません",
+ "no_search_results_description": "検索やフィルターを調整してください",
"loading": "メールを読み込み中...",
"unread": "未読",
"to_me": "宛先: 自分",
diff --git a/locales/nl/common.json b/locales/nl/common.json
index 57747aeb..5299d6b0 100644
--- a/locales/nl/common.json
+++ b/locales/nl/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navigatie"
},
"email_list": {
- "no_emails": "Geen e-mails",
- "no_emails_description": "Begin met het opstellen van een nieuw bericht",
+ "no_emails": "Geen berichten gevonden",
+ "no_emails_description": "Deze mailbox is leeg",
+ "no_search_results": "Geen resultaten gevonden",
+ "no_search_results_description": "Pas je zoekopdracht of filters aan",
"loading": "E-mails laden...",
"unread": "ongelezen",
"to_me": "Aan mij",
diff --git a/locales/pt/common.json b/locales/pt/common.json
index d95f632b..0dfb2835 100644
--- a/locales/pt/common.json
+++ b/locales/pt/common.json
@@ -99,8 +99,10 @@
"nav_label": "Navegação"
},
"email_list": {
- "no_emails": "Nenhum e-mail",
- "no_emails_description": "Comece escrevendo um novo e-mail",
+ "no_emails": "Nenhuma mensagem encontrada",
+ "no_emails_description": "Esta caixa de correio está vazia",
+ "no_search_results": "Nenhum resultado encontrado",
+ "no_search_results_description": "Tente ajustar sua pesquisa ou filtros",
"loading": "Carregando e-mails...",
"unread": "não lido",
"to_me": "Para mim",