diff --git a/apps/browser-extension/src/entrypoints/popup/pages/EmailsList.tsx b/apps/browser-extension/src/entrypoints/popup/pages/EmailsList.tsx index c8ec59929..c05f986c4 100644 --- a/apps/browser-extension/src/entrypoints/popup/pages/EmailsList.tsx +++ b/apps/browser-extension/src/entrypoints/popup/pages/EmailsList.tsx @@ -110,11 +110,19 @@ const EmailsList: React.FC = () => { } else if (secondsAgo < 3600) { // Less than 1 hour ago const minutes = Math.floor(secondsAgo / 60); - return t('emails.dateFormat.minutesAgo', { count: minutes }); + if (minutes === 1) { + return t('emails.time.minutesAgo_single', { count: minutes }); + } else { + return t('emails.time.minutesAgo_plural', { count: minutes }); + } } else if (secondsAgo < 86400) { // Less than 24 hours ago const hours = Math.floor(secondsAgo / 3600); - return t('emails.dateFormat.hoursAgo', { count: hours }); + if (hours === 1) { + return t('emails.time.hoursAgo_single', { count: hours }); + } else { + return t('emails.time.hoursAgo_plural', { count: hours }); + } } else if (secondsAgo < 172800) { // Less than 48 hours ago return t('emails.dateFormat.yesterday'); diff --git a/apps/browser-extension/src/i18n/locales/de.json b/apps/browser-extension/src/i18n/locales/de.json index 594c45673..8eb6fb494 100644 --- a/apps/browser-extension/src/i18n/locales/de.json +++ b/apps/browser-extension/src/i18n/locales/de.json @@ -285,10 +285,6 @@ "noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "dateFormat": { "justNow": "just now", - "minutesAgo_one": "{{count}} min ago", - "minutesAgo_other": "{{count}} mins ago", - "hoursAgo_one": "{{count}} hr ago", - "hoursAgo_other": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/browser-extension/src/i18n/locales/en.json b/apps/browser-extension/src/i18n/locales/en.json index 594c45673..d38c2b82b 100644 --- a/apps/browser-extension/src/i18n/locales/en.json +++ b/apps/browser-extension/src/i18n/locales/en.json @@ -285,10 +285,10 @@ "noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "dateFormat": { "justNow": "just now", - "minutesAgo_one": "{{count}} min ago", - "minutesAgo_other": "{{count}} mins ago", - "hoursAgo_one": "{{count}} hr ago", - "hoursAgo_other": "{{count}} hrs ago", + "minutesAgo_single": "{{count}} min ago", + "minutesAgo_plural": "{{count}} mins ago", + "hoursAgo_single": "{{count}} hr ago", + "hoursAgo_plural": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/browser-extension/src/i18n/locales/es.json b/apps/browser-extension/src/i18n/locales/es.json index 594c45673..8eb6fb494 100644 --- a/apps/browser-extension/src/i18n/locales/es.json +++ b/apps/browser-extension/src/i18n/locales/es.json @@ -285,10 +285,6 @@ "noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "dateFormat": { "justNow": "just now", - "minutesAgo_one": "{{count}} min ago", - "minutesAgo_other": "{{count}} mins ago", - "hoursAgo_one": "{{count}} hr ago", - "hoursAgo_other": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/browser-extension/src/i18n/locales/fr.json b/apps/browser-extension/src/i18n/locales/fr.json index 598a85c2d..211fcaa47 100644 --- a/apps/browser-extension/src/i18n/locales/fr.json +++ b/apps/browser-extension/src/i18n/locales/fr.json @@ -285,10 +285,6 @@ "noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "dateFormat": { "justNow": "just now", - "minutesAgo_one": "{{count}} min ago", - "minutesAgo_other": "{{count}} mins ago", - "hoursAgo_one": "{{count}} hr ago", - "hoursAgo_other": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/browser-extension/src/i18n/locales/nl.json b/apps/browser-extension/src/i18n/locales/nl.json index 2e74b34ca..a723e4f20 100644 --- a/apps/browser-extension/src/i18n/locales/nl.json +++ b/apps/browser-extension/src/i18n/locales/nl.json @@ -285,10 +285,6 @@ "noEmailsDescription": "Je hebt nog geen e-mails ontvangen op je privé e-mailadressen. Wanneer je een nieuwe e-mail ontvangt, zal deze hier verschijnen.", "dateFormat": { "justNow": "zojuist", - "minutesAgo_one": "{{count}} min geleden", - "minutesAgo_other": "{{count}} min. geleden", - "hoursAgo_one": "{{count}} uur geleden", - "hoursAgo_other": "{{count}} uur geleden", "yesterday": "gisteren" }, "errors": { diff --git a/apps/browser-extension/src/i18n/locales/uk.json b/apps/browser-extension/src/i18n/locales/uk.json index 594c45673..8eb6fb494 100644 --- a/apps/browser-extension/src/i18n/locales/uk.json +++ b/apps/browser-extension/src/i18n/locales/uk.json @@ -285,10 +285,6 @@ "noEmailsDescription": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "dateFormat": { "justNow": "just now", - "minutesAgo_one": "{{count}} min ago", - "minutesAgo_other": "{{count}} mins ago", - "hoursAgo_one": "{{count}} hr ago", - "hoursAgo_other": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/mobile-app/components/EmailCard.tsx b/apps/mobile-app/components/EmailCard.tsx index 1693705af..eb09fb97f 100644 --- a/apps/mobile-app/components/EmailCard.tsx +++ b/apps/mobile-app/components/EmailCard.tsx @@ -58,10 +58,18 @@ export function EmailCard({ email }: EmailCardProps) : React.ReactNode { return t('emails.time.justNow'); } else if (secondsAgo < 3600) { const minutes = Math.floor(secondsAgo / 60); - return t('emails.time.minutesAgo', { count: minutes }); + if (minutes === 1) { + return t('emails.time.minutesAgo_single', { count: minutes }); + } else { + return t('emails.time.minutesAgo_plural', { count: minutes }); + } } else if (secondsAgo < 86400) { const hours = Math.floor(secondsAgo / 3600); - return t('emails.time.hoursAgo', { count: hours }); + if (hours === 1) { + return t('emails.time.hoursAgo_single', { count: hours }); + } else { + return t('emails.time.hoursAgo_plural', { count: hours }); + } } else if (secondsAgo < 172800) { return t('emails.time.yesterday'); } else { diff --git a/apps/mobile-app/i18n/locales/de.json b/apps/mobile-app/i18n/locales/de.json index f7245fa5b..a23afc8c3 100644 --- a/apps/mobile-app/i18n/locales/de.json +++ b/apps/mobile-app/i18n/locales/de.json @@ -303,8 +303,6 @@ "emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "time": { "justNow": "just now", - "minutesAgo": "{{count}} {{count, plural, one {min} other {mins}}} ago", - "hoursAgo": "{{count}} {{count, plural, one {hr} other {hrs}}} ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/mobile-app/i18n/locales/en.json b/apps/mobile-app/i18n/locales/en.json index f7245fa5b..bed80b328 100644 --- a/apps/mobile-app/i18n/locales/en.json +++ b/apps/mobile-app/i18n/locales/en.json @@ -303,8 +303,10 @@ "emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "time": { "justNow": "just now", - "minutesAgo": "{{count}} {{count, plural, one {min} other {mins}}} ago", - "hoursAgo": "{{count}} {{count, plural, one {hr} other {hrs}}} ago", + "minutesAgo_single": "{{count}} min ago", + "minutesAgo_plural": "{{count}} mins ago", + "hoursAgo_single": "{{count}} hr ago", + "hoursAgo_plural": "{{count}} hrs ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/mobile-app/i18n/locales/es.json b/apps/mobile-app/i18n/locales/es.json index f7245fa5b..a23afc8c3 100644 --- a/apps/mobile-app/i18n/locales/es.json +++ b/apps/mobile-app/i18n/locales/es.json @@ -303,8 +303,6 @@ "emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "time": { "justNow": "just now", - "minutesAgo": "{{count}} {{count, plural, one {min} other {mins}}} ago", - "hoursAgo": "{{count}} {{count, plural, one {hr} other {hrs}}} ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/mobile-app/i18n/locales/fr.json b/apps/mobile-app/i18n/locales/fr.json index 65d0f2193..ffc1341e4 100644 --- a/apps/mobile-app/i18n/locales/fr.json +++ b/apps/mobile-app/i18n/locales/fr.json @@ -303,8 +303,6 @@ "emptyMessage": "Vous n'avez pas encore reçu d'e-mails sur vos adresses e-mail privées. Quand vous recevez un nouvel e-mail, il apparaîtra ici.", "time": { "justNow": "just now", - "minutesAgo": "{{count}} {{count, plural, one {min} other {mins}}} ago", - "hoursAgo": "{{count}} {{count, plural, one {hr} other {hrs}}} ago", "yesterday": "yesterday" }, "errors": { diff --git a/apps/mobile-app/i18n/locales/nl.json b/apps/mobile-app/i18n/locales/nl.json index 3a69ca0a7..21380eb36 100644 --- a/apps/mobile-app/i18n/locales/nl.json +++ b/apps/mobile-app/i18n/locales/nl.json @@ -303,8 +303,6 @@ "emptyMessage": "Je hebt nog geen e-mails ontvangen op je privé e-mailadressen. Wanneer je een nieuwe e-mail ontvangt, zal deze hier verschijnen.", "time": { "justNow": "zojuist", - "minutesAgo": "{{count}} {{count, plural, one {min} other {min}}} geleden", - "hoursAgo": "{{count}} {{count, plural, one {uur} other {uur}}} geleden", "yesterday": "gisteren" }, "errors": { diff --git a/apps/mobile-app/i18n/locales/uk.json b/apps/mobile-app/i18n/locales/uk.json index f7245fa5b..a23afc8c3 100644 --- a/apps/mobile-app/i18n/locales/uk.json +++ b/apps/mobile-app/i18n/locales/uk.json @@ -303,8 +303,6 @@ "emptyMessage": "You have not received any emails at your private email addresses yet. When you receive a new email, it will appear here.", "time": { "justNow": "just now", - "minutesAgo": "{{count}} {{count, plural, one {min} other {mins}}} ago", - "hoursAgo": "{{count}} {{count, plural, one {hr} other {hrs}}} ago", "yesterday": "yesterday" }, "errors": {