i18n(native): excuse the TREK Cloud brand, mark Email same-as-en, exempt the quota counts

The strict i18n checks, which the feature-branch CI does not run, catch three
things now that the native strings exist in every locale: TREK Cloud read as an
untranslated English phrase (it is a product name, like Vacay and Atlas, so add
it to the brand list); Email left identical in Italian, Indonesian and
Vietnamese, where it is the local word too (mark same-as-en) and in Greek (give
it a Greek term); and the GB and AI-document quota strings carrying {n} without
being plural groups (both are figures that never show a singular, like the other
unit-symbol counts in NOT_PLURAL).
This commit is contained in:
Maurice
2026-11-05 16:38:37 +01:00
parent 80de282e1a
commit cc01f7df32
6 changed files with 8 additions and 4 deletions
+2
View File
@@ -102,6 +102,8 @@ export const NOT_PLURAL = [
{ key: 'dawarich.duration.hours', because: 'a duration in a unit symbol (h), the same for any number' },
{ key: 'dawarich.duration.hoursMinutes', because: 'a duration in unit symbols (h, min), the same for any number' },
{ key: 'files.uploadErrorSize', because: 'a size limit in a unit symbol (MB), the same for any number' },
{ key: 'native.plans.storage', because: 'a storage size in a unit symbol (GB), the same for any number' },
{ key: 'native.plans.aiDocs', because: 'a monthly document allowance, always in the tens, so no singular ever shows' },
];
/**
+2
View File
@@ -75,6 +75,8 @@ export const BRAND_NAMES = [
'Studio',
'Synology',
'Synology Photos',
// The hosted TREK offering, a product name like Vacay and Atlas.
'TREK Cloud',
'Vacay',
'Webhook',
'wanderer',
+1 -1
View File
@@ -63,7 +63,7 @@ const native: TranslationStrings = {
'native.claim.invalid': 'Τρία ή περισσότερα γράμματα, αριθμοί και παύλες.',
'native.claim.reserved': 'Αυτή η διεύθυνση είναι δεσμευμένη.',
'native.claim.free': 'Διαθέσιμη',
'native.claim.emailLabel': 'Email',
'native.claim.emailLabel': 'Ηλ. ταχυδρομείο',
'native.claim.emailHint': 'Για τον λογαριασμό και τις αποδείξεις σας.',
'native.claim.subscribe': 'Εγγραφή για {price}',
'native.claim.cancelled': 'Η αγορά ακυρώθηκε.',
+1 -1
View File
@@ -61,7 +61,7 @@ const native: TranslationStrings = {
'native.claim.invalid': 'Tiga huruf, angka, atau tanda hubung atau lebih.',
'native.claim.reserved': 'Alamat itu dicadangkan.',
'native.claim.free': 'Tersedia',
'native.claim.emailLabel': 'Email',
'native.claim.emailLabel': 'Email', // same-as-en
'native.claim.emailHint': 'Untuk akun dan tanda terima Anda.',
'native.claim.subscribe': 'Berlangganan seharga {price}',
'native.claim.cancelled': 'Pembelian dibatalkan.',
+1 -1
View File
@@ -62,7 +62,7 @@ const native: TranslationStrings = {
'native.claim.invalid': 'Almeno tre lettere, numeri o trattini.',
'native.claim.reserved': 'Questo indirizzo è riservato.',
'native.claim.free': 'Disponibile',
'native.claim.emailLabel': 'Email',
'native.claim.emailLabel': 'Email', // same-as-en
'native.claim.emailHint': 'Per il tuo account e le ricevute.',
'native.claim.subscribe': 'Abbonati per {price}',
'native.claim.cancelled': 'Acquisto annullato.',
+1 -1
View File
@@ -62,7 +62,7 @@ const native: TranslationStrings = {
'native.claim.invalid': 'Từ ba chữ cái, chữ số và dấu gạch nối trở lên.',
'native.claim.reserved': 'Địa chỉ đó đã được giữ chỗ.',
'native.claim.free': 'Có sẵn',
'native.claim.emailLabel': 'Email',
'native.claim.emailLabel': 'Email', // same-as-en
'native.claim.emailHint': 'Cho tài khoản và biên nhận của bạn.',
'native.claim.subscribe': 'Đăng ký với giá {price}',
'native.claim.cancelled': 'Đã hủy mua.',