feat: Rename to Toju and add translation
Some checks failed
Deploy Web Apps / deploy (push) Successful in 5m52s
Build Android APK / build-android-apk (push) Failing after 23m15s
Queue Release Build / prepare (push) Successful in 1m42s
Queue Release Build / build-linux (push) Failing after 9m33s
Queue Release Build / build-windows (push) Successful in 26m5s
Queue Release Build / finalize (push) Has been skipped

This commit is contained in:
2026-06-05 17:13:03 +02:00
parent 8ecfc9a1fe
commit ee293d7daf
301 changed files with 8247 additions and 2218 deletions

View File

@@ -45,6 +45,7 @@ import {
ContextMenuComponent,
LeaveServerDialogComponent
} from '../../../shared';
import { AppI18nService, APP_TRANSLATE_IMPORTS } from '../../../core/i18n';
const ACTIVATION_DEBOUNCE_MS = 150;
@@ -61,12 +62,14 @@ const ACTIVATION_DEBOUNCE_MS = 150;
DmRailComponent,
LeaveServerDialogComponent,
ThemeNodeDirective,
UserBarComponent
UserBarComponent,
...APP_TRANSLATE_IMPORTS
],
viewProviders: [provideIcons({ lucidePhone, lucidePlus })],
templateUrl: './servers-rail.component.html'
})
export class ServersRailComponent {
private readonly appI18n = inject(AppI18nService);
private store = inject(Store);
private router = inject(Router);
private voiceSession = inject(VoiceSessionFacade);
@@ -420,6 +423,15 @@ export class ServersRailComponent {
return this.voicePresenceByRoom()[roomId] ?? 0;
}
voicePresenceTitle(roomId: string): string {
const count = this.voicePresenceCount(roomId);
return this.appI18n.instant(
count === 1 ? 'serversRail.voicePresence.oneUser' : 'serversRail.voicePresence.manyUsers',
{ count }
);
}
formatUnreadCount(count: number): string {
return count > 99 ? '99+' : String(count);
}
@@ -627,7 +639,7 @@ export class ServersRailComponent {
status?: number;
};
const errorCode = serverError?.error?.errorCode;
const message = serverError?.error?.error || 'Failed to join server';
const message = serverError?.error?.error || this.appI18n.instant('serversRail.joinFailed');
if (errorCode === 'PASSWORD_REQUIRED') {
this.passwordPromptRoom.set(room);