Files
descrybe/apps/web/scripts/locale-extra.mjs
T
greeneclipse 8580c996c3 Initial commit of Descrybe v2 without local scratch artifacts.
Drop one-shot tmp/axe scripts and agent i18n scratch so the Gitea tree is deployable.
2026-08-09 22:47:43 +02:00

279 lines
6.9 KiB
JavaScript

/**
* Extra locale strings (auth / settings / dashboard) merged by gen-locale-packs.mjs.
* Brand/loanwords that stay identical across locales are listed in SAME_AS_EN.
*/
export const SAME_AS_EN = new Set([
"admin.settings.integrationsCardDesc",
"admin.settings.providerOption.ollama",
"admin.settings.providerOption.azure",
"admin.settings.providerOption.openrouter",
"admin.settings.providerOption.openai",
"admin.analytics.tokensCol",
"admin.billing.col.total",
"admin.billing.field.term",
"admin.billing.plan",
"admin.chrome.opsBadge",
"admin.chrome.staff.admin",
"admin.diagnostics.colId",
"admin.diagnostics.colStatus",
"admin.knowledge.col.status",
"admin.overview.badge.live",
"admin.overview.tokens",
"admin.plans.col.plan",
"admin.plans.col.term",
"admin.plans.filter.legacy",
"admin.plans.visibility.legacy",
"admin.profile.business.label",
"admin.profile.growth.label",
"admin.profile.legacy.label",
"admin.profile.starter.label",
"admin.settings.allowlist",
"admin.settings.colEmail",
"admin.settings.eprel",
"admin.settings.googleOauth",
"admin.settings.host",
"admin.settings.linkAi",
"admin.settings.linkEmail",
"admin.settings.model",
"admin.settings.namespace",
"admin.settings.pinecone",
"admin.settings.port",
"admin.settings.stripe",
"admin.settings.tab.mail",
"admin.translations.badgeBase",
"admin.translations.colStatus",
"admin.users.colPlan",
"admin.users.colStatus",
"app.name",
"attributes.color",
"attributes.field.keyPlaceholder",
"billing.chartTokens",
"billing.na",
"billing.plan.enterprise",
"billing.skusOf",
"blast.placeholder",
"exports.howTo.google",
"exports.howTo.openapi",
"exports.howTo.rest",
"exports.preset.google_shopping_csv.label",
"exports.preset.google_shopping_xml.defaultName",
"exports.preset.google_shopping_xml.label",
"exports.preset.google_shopping_xml.shortLabel",
"exports.preset.meta_csv.shortLabel",
"feeds.field.urlPlaceholder",
"feeds.sync",
"fields.type.color",
"fields.type.dimension",
"fields.type.image",
"fields.type.url",
"standardFields.type.dimension.label",
"standardFields.type.image.label",
"standardFields.fallback.service",
"standardFields.fallback.eprel_id",
"nav.admin",
"nav.ai",
"nav.feeds",
"nav.section.feeds",
"nav.section.marketing",
"nav.seo",
"processing.actions.export",
"processing.col.status",
"processing.httpError",
"processing.skip",
"processing.step.eprel",
"processing.type.eprel",
"processing.type.seo",
"products.actions.export",
"products.edit.specs",
"products.edit.specsBadge",
"products.edit.status",
"products.edit.tab.feed",
"products.issue.gtin",
"products.table.colFeed",
"products.table.colStatus",
"settings.email",
"settings.inviteEmail",
"settings.inviteEmailPlaceholder",
"settings.keyNamePlaceholder",
"settings.plan",
"settings.role.admin",
"settings.table.email",
"settings.table.status",
"shopify.credentialsDesc.code",
"shopify.setup.step3.after",
"shopify.setup.step4.after",
"shopify.setup.step4.domain",
"standardFields.fallback.color",
"standardFields.fallback.gtin",
"standardFields.fallback.material",
"standardFields.fallback.mpn",
"standardFields.fallback.sku",
"standardFields.fallback.stock",
"standardFields.field.keyPlaceholder",
"standardFields.field.unitPlaceholder",
"standardFields.type.color.label",
"standardFields.type.url.label",
"stats.feeds",
"status.emDash",
"stores.docsPrefix",
"stores.shopify.title",
"stores.woo.title",
"toast.support.replyRe",
"woo.field.consumerKey",
"woo.field.consumerSecret",
"woo.match.ean",
"woo.match.sku",
"woo.setup.step3.after",
"woo.setup.step3.arrow"
]);
/** @type {Record<string, Record<string, string>>} */
export const EXTRA = {};
function fill(locales, map) {
for (const [key, byLocale] of Object.entries(map)) {
for (const [code, text] of Object.entries(byLocale)) {
EXTRA[code] ??= {};
EXTRA[code][key] = text;
}
}
}
fill(
null,
{
"common.askAdmin": {
es: "Pregunta a un administrador de la empresa",
fr: "Demandez à un administrateur de l'entreprise",
de: "Fragen Sie einen Unternehmens-Admin",
it: "Chiedi a un amministratore dell'azienda",
pt: "Peça a um administrador da empresa",
nl: "Vraag een bedrijfsbeheerder",
pl: "Zapytaj administratora firmy",
ja: "会社の管理者に問い合わせる"
},
"common.you": {
es: "Tú",
fr: "Vous",
de: "Sie",
it: "Tu",
pt: "Você",
nl: "U",
pl: "Ty",
ja: "あなた"
},
"common.active": {
es: "Activo",
fr: "Actif",
de: "Aktiv",
it: "Attivo",
pt: "Ativo",
nl: "Actief",
pl: "Aktywny",
ja: "有効"
},
"common.pending": {
es: "Pendiente",
fr: "En attente",
de: "Ausstehend",
it: "In sospeso",
pt: "Pendente",
nl: "In behandeling",
pl: "Oczekujące",
ja: "保留中"
},
"common.email": {
es: "Correo electrónico",
fr: "E-mail",
de: "E-Mail",
it: "Email",
pt: "E-mail",
nl: "E-mail",
pl: "E-mail",
ja: "メール"
},
"common.password": {
es: "Contraseña",
fr: "Mot de passe",
de: "Passwort",
it: "Password",
pt: "Palavra-passe",
nl: "Wachtwoord",
pl: "Hasło",
ja: "パスワード"
},
"common.name": {
es: "Tu nombre",
fr: "Votre nom",
de: "Ihr Name",
it: "Il tuo nome",
pt: "O seu nome",
nl: "Uw naam",
pl: "Twoje imię i nazwisko",
ja: "お名前"
},
"common.viewPricing": {
es: "Ver precios",
fr: "Voir les tarifs",
de: "Preise ansehen",
it: "Vedi i prezzi",
pt: "Ver preços",
nl: "Prijzen bekijken",
pl: "Zobacz cennik",
ja: "料金を見る"
},
"common.backToSignIn": {
es: "Volver a iniciar sesión",
fr: "Retour à la connexion",
de: "Zurück zur Anmeldung",
it: "Torna all'accesso",
pt: "Voltar ao início de sessão",
nl: "Terug naar inloggen",
pl: "Powrót do logowania",
ja: "ログインに戻る"
},
"common.signingOut": {
es: "Cerrando sesión…",
fr: "Déconnexion…",
de: "Abmelden…",
it: "Disconnessione…",
pt: "A terminar sessão…",
nl: "Bezig met uitloggen…",
pl: "Wylogowywanie…",
ja: "ログアウト中…"
},
"common.signOutAndContinue": {
es: "Cerrar sesión y continuar",
fr: "Se déconnecter et continuer",
de: "Abmelden und fortfahren",
it: "Esci e continua",
pt: "Terminar sessão e continuar",
nl: "Uitloggen en doorgaan",
pl: "Wyloguj się i kontynuuj",
ja: "ログアウトして続行"
},
"common.staySignedIn": {
es: "Seguir conectado",
fr: "Rester connecté",
de: "Angemeldet bleiben",
it: "Resta connesso",
pt: "Manter sessão iniciada",
nl: "Ingelogd blijven",
pl: "Pozostań zalogowany",
ja: "ログインしたままにする"
},
"common.startOver": {
es: "Empezar de nuevo",
fr: "Recommencer",
de: "Von vorn beginnen",
it: "Ricomincia",
pt: "Começar de novo",
nl: "Opnieuw beginnen",
pl: "Zacznij od nowa",
ja: "最初から"
}
}
);
// Keep file size manageable: remaining extras live in locale-extra-rest.mjs