Skip to content

Commit e0b6cf9

Browse files
committed
Merge remote-tracking branch 'origin/develop' into staging
Signed-off-by: Andrey Sobolev <[email protected]>
2 parents fbbb363 + dc92402 commit e0b6cf9

File tree

62 files changed

+2980
-61
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+2980
-61
lines changed

Diff for: desktop/src/ui/platform.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ export async function configurePlatform (): Promise<void> {
248248
setMetadata(aiBot.metadata.EndpointURL, config.AI_URL)
249249
setMetadata(presence.metadata.PresenceUrl, config.PRESENCE_URL ?? '')
250250

251-
const languages = myBranding.languages !== undefined && myBranding.languages !== '' ? myBranding.languages.split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh', 'fr', 'cs', 'it']
251+
const languages = myBranding.languages !== undefined && myBranding.languages !== '' ? myBranding.languages.split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh', 'fr', 'cs', 'it', 'de']
252252

253253
setMetadata(uiPlugin.metadata.Languages, languages)
254254

Diff for: dev/docker-compose.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ services:
270270
- UV_THREADPOOL_SIZE=10
271271
- SERVER_PORT=3333
272272
- SERVER_SECRET=secret
273-
- ENABLE_COMPRESSION=true
273+
- ENABLE_COMPRESSION=false
274274
- STATS_URL=http://host.docker.internal:4900
275275
- FULLTEXT_URL=http://host.docker.internal:4700
276276
# - DB_URL=postgresql://postgres:example@postgres:5432
@@ -343,7 +343,7 @@ services:
343343
# - UV_THREADPOOL_SIZE=10
344344
- SERVER_PORT=3332
345345
- SERVER_SECRET=secret
346-
- ENABLE_COMPRESSION=true
346+
- ENABLE_COMPRESSION=false
347347
- FULLTEXT_URL=http://host.docker.internal:4702
348348
- STATS_URL=http://host.docker.internal:4900
349349
- DB_URL=postgresql://[email protected]:26257/defaultdb?sslmode=disable

Diff for: dev/prod/public/branding.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"localhost:8080": {
33
"title": "Huly",
4-
"languages": "en,ru,pt,es,zh,fr",
4+
"languages": "en,ru,pt,es,zh,fr,de",
55
"defaultLanguage": "en",
66
"defaultApplication": "tracker",
77
"defaultSpace": "tracker:project:DefaultProject",
@@ -30,7 +30,7 @@
3030
},
3131
"localhost:8087": {
3232
"title": "Huly",
33-
"languages": "en,ru,pt,es,zh,fr",
33+
"languages": "en,ru,pt,es,zh,fr,de",
3434
"defaultLanguage": "en",
3535
"defaultApplication": "tracker",
3636
"defaultSpace": "tracker:project:DefaultProject",

Diff for: dev/prod/src/platform.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@ export async function configurePlatform() {
346346
setMetadata(sign.metadata.SignURL, config.SIGN_URL)
347347
setMetadata(presence.metadata.PresenceUrl, config.PRESENCE_URL ?? '')
348348

349-
const languages = myBranding.languages ? (myBranding.languages as string).split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh', 'fr', 'cs', 'it']
349+
const languages = myBranding.languages ? (myBranding.languages as string).split(',').map((l) => l.trim()) : ['en', 'ru', 'es', 'pt', 'zh', 'fr', 'cs', 'it', 'de']
350350

351351
setMetadata(uiPlugin.metadata.Languages, languages)
352352

Diff for: packages/core/lang/de.json

+67
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
{
2+
"string": {
3+
"Id": "Id",
4+
"Space": "Arbeitsbereich",
5+
"Spaces": "Arbeitsbereiche",
6+
"SpacesDescription": "Alle Arbeitsbereichstypen verwalten",
7+
"TypedSpace": "Typisierter Arbeitsbereich",
8+
"SpaceType": "Arbeitsbereichstyp",
9+
"Modified": "Geändert",
10+
"ModifiedDate": "Änderungsdatum",
11+
"ModifiedBy": "Geändert von",
12+
"Class": "Klasse",
13+
"AttachedTo": "Angehängt an",
14+
"AttachedToClass": "Angehängt an Klasse",
15+
"Name": "Name",
16+
"Description": "Beschreibung",
17+
"ShortDescription": "Kurzbeschreibung",
18+
"Descriptor": "Bezeichner",
19+
"TargetClass": "Zielklasse",
20+
"Role": "Rolle",
21+
"Roles": "Rollen",
22+
"Private": "Privat",
23+
"Archived": "Archiviert",
24+
"ClassLabel": "Typ",
25+
"ClassPropertyLabel": "Bezeichnung",
26+
"String": "Text",
27+
"Markup": "Formatierter Text",
28+
"Number": "Zahl",
29+
"Boolean": "Boolesch",
30+
"Timestamp": "Zeitstempel",
31+
"Date": "Datum",
32+
"IntlString": "Internationaler Text",
33+
"Ref": "Referenz",
34+
"Collection": "Sammlung",
35+
"Array": "Liste",
36+
"Enum": "Aufzählung",
37+
"Members": "Mitglieder",
38+
"Hyperlink": "URL",
39+
"MarkupBlobRef": "Kollaborativ",
40+
"Object": "Objekt",
41+
"System": "System",
42+
"CreatedBy": "Erstellt von",
43+
"CreatedDate": "Erstellungsdatum",
44+
"Status": "Status",
45+
"StatusCategory": "Statuskategorie",
46+
"Account": "Konto",
47+
"Rank": "Rang",
48+
"Owners": "Eigentümer",
49+
"Permission": "Berechtigung",
50+
"CreateObject": "Objekt erstellen",
51+
"UpdateObject": "Objekt aktualisieren",
52+
"DeleteObject": "Objekt löschen",
53+
"ForbidDeleteObject": "Objekt löschen verbieten",
54+
"UpdateSpace": "Arbeitsbereich aktualisieren",
55+
"ArchiveSpace": "Arbeitsbereich archivieren",
56+
"CreateObjectDescription": "Gewährt Benutzern die Möglichkeit, Objekte im Arbeitsbereich zu erstellen",
57+
"UpdateObjectDescription": "Gewährt Benutzern die Möglichkeit, Objekte im Arbeitsbereich zu aktualisieren",
58+
"DeleteObjectDescription": "Gewährt Benutzern die Möglichkeit, Objekte im Arbeitsbereich zu löschen",
59+
"ForbidDeleteObjectDescription": "Verbietet Benutzern das Löschen von Objekten im Arbeitsbereich",
60+
"UpdateSpaceDescription": "Gewährt Benutzern die Möglichkeit, den Arbeitsbereich zu aktualisieren",
61+
"ArchiveSpaceDescription": "Gewährt Benutzern die Möglichkeit, den Arbeitsbereich zu archivieren",
62+
"AutoJoin": "Automatisch beitreten",
63+
"AutoJoinDescr": "Neue Mitarbeiter automatisch diesem Arbeitsbereich hinzufügen",
64+
"BlobSize": "Größe",
65+
"BlobContentType": "Inhaltstyp"
66+
}
67+
}

Diff for: packages/platform/lang/de.json

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"status": {
3+
"LoadingPlugin": "Plugin {plugin} wird geladen...",
4+
"UnknownError": "Unbekannter Fehler: {message}",
5+
"InvalidId": "Ungültige ID: {id}",
6+
"BadRequest": "Fehlerhafte Anfrage",
7+
"Forbidden": "Zugriff verweigert",
8+
"ExpiredLink": "Dieser Einladungslink ist abgelaufen",
9+
"Unauthorized": "Nicht autorisiert",
10+
"UnknownMethod": "Unbekannte Methode: {method}",
11+
"InternalServerError": "Interner Serverfehler",
12+
"MaintenanceWarning": "Wartung geplant in {time, plural, =1 {weniger als einer Minute} other {# Minuten}}",
13+
"AccountNotFound": "Konto nicht gefunden",
14+
"AccountNotConfirmed": "Konto nicht bestätigt",
15+
"WorkspaceNotFound": "Arbeitsbereich nicht gefunden",
16+
"InvalidPassword": "Ungültiges Passwort",
17+
"AccountAlreadyExists": "Konto existiert bereits",
18+
"WorkspaceRateLimit": "Server ist ausgelastet, bitte warten Sie einen Moment und versuchen Sie es erneut",
19+
"AccountAlreadyConfirmed": "Konto wurde bereits bestätigt",
20+
"WorkspaceAlreadyExists": "Arbeitsbereich existiert bereits",
21+
"InvalidOtp": "Ungültiger Code",
22+
"InviteNotFound": "Einladung mit E-Mail: {email} nicht gefunden."
23+
}
24+
}

Diff for: packages/platform/src/__tests__/lang/de.json

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"string": {
3+
"loadingPlugin": "Plugin '<b>'{plugin}'</b>' wird geladen..."
4+
}
5+
}

Diff for: packages/presentation/lang/de.json

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
"string": {
3+
"Create": "Erstellen",
4+
"Cancel": "Abbrechen",
5+
"Ok": "Ok",
6+
"Save": "Speichern",
7+
"Saved": "Gespeichert...",
8+
"Download": "Herunterladen",
9+
"Delete": "Löschen",
10+
"Close": "Schließen",
11+
"NotSelected": "Nicht ausgewählt",
12+
"Deselect": "Auswahl aufheben",
13+
"Archived": "(archiviert)",
14+
"AddSocialLinks": "Social Media Links hinzufügen",
15+
"EditSocialLinks": "Social Media Links bearbeiten",
16+
"Change": "Ändern",
17+
"Remove": "Entfernen",
18+
"Search": "Suchen...",
19+
"Spaces": "Bereiche",
20+
"NumberSpaces": "{count, plural, =0 {In} =1 {In 1 Bereich} other {In # Bereichen}}",
21+
"InThis": "In diesem {space}",
22+
"NoMatchesInThis": "Keine Treffer in diesem {space}",
23+
"NoMatchesFound": "Keine Treffer gefunden",
24+
"NotInThis": "Nicht in diesem {space}",
25+
"Match": "Treffer",
26+
"Add": "Hinzufügen",
27+
"Edit": "Bearbeiten",
28+
"DocumentPreview": "Vorschau",
29+
"MakePrivate": "Privat machen",
30+
"MakePrivateDescription": "Nur Mitglieder können es sehen",
31+
"Created": "Erstellt",
32+
"NoResults": "Keine Ergebnisse gefunden",
33+
"Next": "Weiter",
34+
"FailedToPreview": "Vorschau fehlgeschlagen",
35+
"ContentType": "Inhaltstyp",
36+
"ContentTypeNotSupported": "Vorschau ist für diesen Inhaltstyp nicht verfügbar",
37+
"StartDrawing": "Darüber kritzeln",
38+
"DrawingHistory": "Kritzel-Verlauf",
39+
"ColorAdd": "Farbvoreinstellung hinzufügen",
40+
"ColorRemove": "Farbvoreinstellung entfernen",
41+
"ColorReset": "Farbvoreinstellungen zurücksetzen"
42+
},
43+
"status": {
44+
"FileTooLarge": "Datei zu groß"
45+
}
46+
}

Diff for: packages/ui/lang/cs.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {1 minuta před} other {# minut před}}",
5859
"HoursBefore": "{hours, plural, =1 {1 hodina před} other {# hodin před}}",
5960
"DaysBefore": "{days, plural, =1 {1 den před} other {# dní před}}",

Diff for: packages/ui/lang/de.json

+102
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
{
2+
"string": {
3+
"EditBoxPlaceholder": "Text eingeben...",
4+
"Ok": "Ok",
5+
"Cancel": "Abbrechen",
6+
"Save": "Speichern",
7+
"Publish": "Veröffentlichen",
8+
"SaveDraft": "Entwurf speichern",
9+
"MinutesAgo": "{minutes, plural, =0 {vor weniger als einer Minute} =1 {vor einer Minute} other {vor # Minuten}}",
10+
"HoursAgo": "{hours, plural, =0 {vor weniger als einer Stunde} =1 {vor einer Stunde} other {vor # Stunden}}",
11+
"DaysAgo": "{days, plural, =0 {heute} =1 {gestern} other {vor # Tagen}}",
12+
"MonthsAgo": "{months, plural, =0 {diesen Monat} =1 {vor einem Monat} other {vor # Monaten}}",
13+
"YearsAgo": "{years, plural, =0 {dieses Jahr} =1 {vor einem Jahr} other {vor # Jahren}}",
14+
"Minutes": "{minutes, plural, =0 {weniger als eine Minute} =1 {eine Minute} other {# Minuten}}",
15+
"Hours": "{hours, plural, =0 {weniger als eine Stunde} =1 {eine Stunde} other {# Stunden}}",
16+
"Days": "{days, plural, =0 {heute} =1 {1 Tag} other {# Tage}}",
17+
"Weeks": "{weeks, plural, =0 {diese Woche} =1 {1 Woche} other {# Wochen}}",
18+
"Months": "{months, plural, =0 {diesen Monat} =1 {1 Monat} other {# Monate}}",
19+
"Years": "{years, plural, =0 {dieses Jahr} =1 {ein Jahr} other {# Jahre}}",
20+
"Before": "Vor",
21+
"After": "Nach",
22+
"MinutesShort": "{value}m",
23+
"HoursShort": "{value}h",
24+
"DaysShort": "{value}t",
25+
"ShowMore": "Mehr anzeigen",
26+
"ShowLess": "Weniger anzeigen",
27+
"Search": "Suchen",
28+
"SearchDots": "Suchen...",
29+
"Suggested": "Vorgeschlagen",
30+
"TimeTooltip": "{value}",
31+
"SelectDate": "Datum auswählen",
32+
"None": "Keine",
33+
"NotSelected": "Nicht ausgewählt",
34+
"Today": "Heute",
35+
"NoDate": "Kein Datum",
36+
"StartDate": "Startdatum",
37+
"TargetDate": "Zieldatum",
38+
"Overdue": "Überfällig",
39+
"DueDate": "Fälligkeitsdatum",
40+
"AddDueDate": "Fälligkeitsdatum hinzufügen",
41+
"SetDueDate": "Fälligkeitsdatum festlegen",
42+
"EditDueDate": "Fälligkeitsdatum bearbeiten",
43+
"SaveDueDate": "Fälligkeitsdatum speichern",
44+
"NeedsToBeCompletedByThisDate": "Muss bis zu diesem Datum abgeschlossen sein",
45+
"DueDatePopupTitle": "Fällig am {value}",
46+
"DueDatePopupOverdueTitle": "War fällig am {value}",
47+
"DueDatePopupDescription": "{value, plural, =0 {Heute} =1 {Morgen} other {noch # Tage}}",
48+
"DueDatePopupOverdueDescription": "{value, plural, =1 {1 Tag überfällig} other {# Tage überfällig}}",
49+
"English": "Englisch",
50+
"Russian": "Russisch",
51+
"Portuguese": "Portugiesisch",
52+
"Spanish": "Spanisch",
53+
"Chinese": "Chinesisch",
54+
"French": "Französisch",
55+
"Italian": "Italienisch",
56+
"Czech": "Tschechisch",
57+
"MinutesBefore": "{minutes, plural, =1 {eine Minute vorher} other {# Minuten vorher}}",
58+
"HoursBefore": "{hours, plural, =1 {eine Stunde vorher} other {# Stunden vorher}}",
59+
"DaysBefore": "{days, plural, =1 {einen Tag vorher} other {# Tage vorher}}",
60+
"WeeksBefore": "{weeks, plural, =1 {eine Woche vorher} other {# Wochen vorher}}",
61+
"MonthsBefore": "{months, plural, =1 {einen Monat vorher} other {# Monate vorher}}",
62+
"MinutesAfter": "{minutes, plural, =1 {in einer Minute} other {in # Minuten}}",
63+
"HoursAfter": "{hours, plural, =1 {in einer Stunde} other {in # Stunden}}",
64+
"DaysAfter": "{days, plural, =1 {in einem Tag} other {in # Tagen}}",
65+
"WeeksAfter": "{weeks, plural, =1 {in einer Woche} other {in # Wochen}}",
66+
"MonthsAfter": "{months, plural, =1 {in einem Monat} other {in # Monaten}}",
67+
"NoActionsDefined": "Keine Aktionen verfügbar",
68+
"Incoming": "Eingehend",
69+
"HoursLabel": "Stunden",
70+
"Back": "Zurück",
71+
"Next": "Weiter",
72+
"DropdownDefaultLabel": "Element auswählen",
73+
"DD": "TT",
74+
"MM": "MM",
75+
"YYYY": "JJJJ",
76+
"HH": "HH",
77+
"GettingWorkDone": "Arbeit erledigen",
78+
"ExpressYourself": "Ausdrücken",
79+
"Smileys": "Smileys",
80+
"Nature": "Natur",
81+
"Symbols": "Symbole",
82+
"TravelAndPlaces": "Reisen & Orte",
83+
"Objects": "Objekte",
84+
"Food": "Essen",
85+
"MoreCount": "{count} weitere",
86+
"Spacious": "Geräumig",
87+
"Compact": "Kompakt",
88+
"ThemeLight": "Hell",
89+
"ThemeDark": "Dunkel",
90+
"ThemeSystem": "System",
91+
"NoTimeZonesFound": "Keine Zeitzonen gefunden",
92+
"Selected": "Ausgewählt:",
93+
"Submit": "Absenden",
94+
"NextStep": "Nächster Schritt",
95+
"TypeHere": "Hier eingeben...",
96+
"NormalSize": "Normale Größe",
97+
"FullSize": "Volle Größe",
98+
"UseMaxWidth": "Maximale Breite",
99+
"Sidebar": "Seitenleiste",
100+
"Language": "Sprache"
101+
}
102+
}

Diff for: packages/ui/lang/en.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {a minute before} other {# minutes before}}",
5859
"HoursBefore": "{hours, plural, =1 {an hour before} other {# hours before}}",
5960
"DaysBefore": "{days, plural, =1 {a day before} other {# days before}}",

Diff for: packages/ui/lang/es.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {un minuto antes} other {# minutos antes}}",
5859
"HoursBefore": "{hours, plural, =1 {una hora antes} other {# horas antes}}",
5960
"DaysBefore": "{days, plural, =1 {un día antes} other {# días antes}}",

Diff for: packages/ui/lang/fr.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {une minute avant} other {# minutes avant}}",
5859
"HoursBefore": "{hours, plural, =1 {une heure avant} other {# heures avant}}",
5960
"DaysBefore": "{days, plural, =1 {un jour avant} other {# jours avant}}",

Diff for: packages/ui/lang/it.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {un minuto prima} other {# minuti prima}}",
5859
"HoursBefore": "{hours, plural, =1 {un'ora prima} other {# ore prima}}",
5960
"DaysBefore": "{days, plural, =1 {un giorno prima} other {# giorni prima}}",

Diff for: packages/ui/lang/pt.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {um minuto antes} other {# minutos antes}}",
5859
"HoursBefore": "{hours, plural, =1 {uma hora antes} other {# horas antes}}",
5960
"DaysBefore": "{days, plural, =1 {um dia antes} other {# dias antes}}",

Diff for: packages/ui/lang/ru.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {за минуту} one {за # минуту} few {за # минуты} other {за # минут}}",
5859
"HoursBefore": "{hours, plural, =1 {за час} one {за # час} few {за # часа} other {за # часов}}",
5960
"DaysBefore": "{days, plural, =1 {за день} one {за # день} few {за # дня} other {за # дней}}",

Diff for: packages/ui/lang/zh.json

+1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
"French": "Français",
5555
"Italian": "Italiano",
5656
"Czech": "Čeština",
57+
"German": "Deutsch",
5758
"MinutesBefore": "{minutes, plural, =1 {一分钟前} other {# 分钟前}}",
5859
"HoursBefore": "{hours, plural, =1 {一小时前} other {# 小时前}}",
5960
"DaysBefore": "{days, plural, =1 {一天前} other {# 天前}}",

Diff for: packages/ui/src/components/internal/LangSelector.svelte

+2-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@
3333
{ id: 'zh', label: ui.string.Chinese, logo: '&#x1F1E8;&#x1F1F3;' },
3434
{ id: 'fr', label: ui.string.French, logo: '&#x1F1EB;&#x1F1F7;' },
3535
{ id: 'it', label: ui.string.Italian, logo: '&#x1F1EE;&#x1F1F9;' },
36-
{ id: 'cs', label: ui.string.Czech, logo: '&#x1F1E8;&#x1F1FF;' }
36+
{ id: 'cs', label: ui.string.Czech, logo: '&#x1F1E8;&#x1F1FF;' },
37+
{ id: 'de', label: ui.string.German, logo: '&#x1F1E9;&#x1F1EA;' }
3738
].filter((lang) => uiLangs.has(lang.id))
3839
if (langs.findIndex((l) => l.id === currentLanguage) < 0 && langs.length !== 0) {
3940
setLanguage(langs[0].id)

Diff for: packages/ui/src/plugin.ts

+1
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ export const uis = plugin(uiId, {
7575
French: '' as IntlString,
7676
Italian: '' as IntlString,
7777
Czech: '' as IntlString,
78+
German: '' as IntlString,
7879
MinutesBefore: '' as IntlString,
7980
HoursBefore: '' as IntlString,
8081
DaysBefore: '' as IntlString,

0 commit comments

Comments
 (0)