uberf-7342: add french lang selector (#5873)

Signed-off-by: Alexey Zinoviev <alexey.zinoviev@xored.com>
This commit is contained in:
Alexey Zinoviev 2024-06-20 19:36:09 +04:00 committed by GitHub
parent bb70f5123b
commit 1b9cf87b73
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
11 changed files with 15 additions and 8 deletions

View File

@ -1,7 +1,7 @@
{
"localhost:8080": {
"title": "Platform",
"languages": "en,ru,pt,es,zh",
"languages": "en,ru,pt,es,zh,fr",
"defaultLanguage": "en",
"defaultApplication": "tracker",
"defaultSpace": "tracker:project:DefaultProject",
@ -29,7 +29,7 @@
},
"localhost:8087": {
"title": "DevPlatform",
"languages": "en,ru,pt,es",
"languages": "en,ru,pt,es,zh,fr",
"defaultLanguage": "en",
"defaultApplication": "tracker",
"defaultSpace": "tracker:project:DefaultProject",

View File

@ -189,11 +189,11 @@ function configureI18n(): void {
export async function configurePlatform() {
setMetadata(platform.metadata.LoadHelper, async (loader) => {
for (let i = 0; i < 5; i++) {
for (let i = 0; i < 6; i++) {
try {
return loader()
} catch (err: any) {
if (err.message.includes('Loading chunk') && i != 4) {
if (err.message.includes('Loading chunk') && i != 5) {
continue
}
Analytics.handleError(err)
@ -266,7 +266,7 @@ export async function configurePlatform() {
setMetadata(uiPlugin.metadata.DefaultApplication, login.component.LoginApp)
setMetadata(contactPlugin.metadata.LastNameFirst, myBranding.lastNameFirst === 'true' ?? false)
const languages = myBranding.languages ? (myBranding.languages as string).split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh']
const languages = myBranding.languages ? (myBranding.languages as string).split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh', 'fr']
setMetadata(uiPlugin.metadata.Languages, languages)
setMetadata(

View File

@ -51,6 +51,7 @@
"Portuguese": "Português",
"Spanish": "Español",
"Chinese": "中文",
"French": "Français",
"MinutesBefore": "{minutes, plural, =1 {a minute before} other {# minutes before}}",
"HoursBefore": "{hours, plural, =1 {an hour before} other {# hours before}}",
"DaysBefore": "{days, plural, =1 {a day before} other {# days before}}",

View File

@ -51,6 +51,7 @@
"Portuguese": "Português",
"Spanish": "Español",
"Chinese": "中文",
"French": "Français",
"MinutesBefore": "{minutes, plural, =1 {un minuto antes} other {# minutos antes}}",
"HoursBefore": "{hours, plural, =1 {una hora antes} other {# horas antes}}",
"DaysBefore": "{days, plural, =1 {un día antes} other {# días antes}}",

View File

@ -46,7 +46,7 @@
"DueDatePopupOverdueTitle": "Était à échéance le {value}",
"DueDatePopupDescription": "{value, plural, =0 {Aujourd'hui} =1 {Demain} other {# jours restants}}",
"DueDatePopupOverdueDescription": "{value, plural, =1 {1 jour de retard} other {# jours de retard}}",
"English": "Anglais",
"English": "English",
"Russian": "Русский",
"Portuguese": "Português",
"Spanish": "Español",

View File

@ -51,6 +51,7 @@
"Portuguese": "Português",
"Spanish": "Español",
"Chinese": "中文",
"French": "Français",
"MinutesBefore": "{minutes, plural, =1 {um minuto antes} other {# minutos antes}}",
"HoursBefore": "{hours, plural, =1 {uma hora antes} other {# horas antes}}",
"DaysBefore": "{days, plural, =1 {um dia antes} other {# dias antes}}",

View File

@ -51,6 +51,7 @@
"Spanish": "Español",
"Portuguese": "Português",
"Chinese": "中文",
"French": "Français",
"MinutesBefore": "{minutes, plural, =1 {за минуту} one {за # минуту} few {за # минуты} other {за # минут}}",
"HoursBefore": "{hours, plural, =1 {за час} one {за # час} few {за # часа} other {за # часов}}",
"DaysBefore": "{days, plural, =1 {за день} one {за # день} few {за # дня} other {за # дней}}",

View File

@ -51,6 +51,7 @@
"Portuguese": "Português",
"Spanish": "Español",
"Chinese": "中文",
"French": "Français",
"MinutesBefore": "{minutes, plural, =1 {一分钟前} other {# 分钟前}}",
"HoursBefore": "{hours, plural, =1 {一小时前} other {# 小时前}}",
"DaysBefore": "{days, plural, =1 {一天前} other {# 天前}}",

View File

@ -29,7 +29,8 @@
{ id: 'pt', label: ui.string.Portuguese, logo: '&#x1F1F5;&#x1F1F9;' },
{ id: 'es', label: ui.string.Spanish, logo: '&#x1F1EA;&#x1F1F8;' },
{ id: 'ru', label: ui.string.Russian, logo: '&#x1F1F7;&#x1F1FA;' },
{ id: 'zh', label: ui.string.Chinese, logo: '&#x1F1E8;&#x1F1F3;' }
{ id: 'zh', label: ui.string.Chinese, logo: '&#x1F1E8;&#x1F1F3;' },
{ id: 'fr', label: ui.string.French, logo: '&#x1F1EB;&#x1F1F7;' }
].filter((lang) => uiLangs.has(lang.id))
if (langs.findIndex((l) => l.id === currentLanguage) < 0 && langs.length !== 0) {
setLanguage(langs[0].id)

View File

@ -72,6 +72,7 @@ export const uis = plugin(uiId, {
Spanish: '' as IntlString,
Portuguese: '' as IntlString,
Chinese: '' as IntlString,
French: '' as IntlString,
MinutesBefore: '' as IntlString,
HoursBefore: '' as IntlString,
DaysBefore: '' as IntlString,

View File

@ -1,7 +1,7 @@
{
"localhost:8083": {
"title": "Platform",
"languages": "en,ru,pt,es,zh",
"languages": "en,ru,pt,es,zh,fr",
"defaultLanguage": "en",
"defaultApplication": "tracker",
"defaultSpace": "tracker:project:DefaultProject",