feat: Rename to Toju and add translation
Some checks failed
Build Android APK / build-android-apk (push) Has been cancelled
Deploy Web Apps / deploy (push) Has been cancelled
Queue Release Build / prepare (push) Has been cancelled
Queue Release Build / build-linux (push) Has been cancelled
Queue Release Build / build-windows (push) Has been cancelled
Queue Release Build / finalize (push) Has been cancelled

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

View File

@@ -5,6 +5,7 @@ import {
RoomRoleAssignment
} from '../../../../shared-kernel';
import { SYSTEM_ROLE_IDS } from '../constants/access-control.constants';
import { localizeSystemRoleDisplayName } from './role-display.rules';
import type { MemberIdentity } from '../models/access-control.model';
import {
buildRoleLookup,
@@ -106,13 +107,19 @@ export function getAssignedRoleIds(assignments: readonly RoomRoleAssignment[] |
return uniqueStrings(assignment?.roleIds ?? []);
}
export function getDisplayRoleName(room: Room, member: MemberIdentity | null | undefined): string {
export function getDisplayRoleName(
room: Room,
member: MemberIdentity | null | undefined,
translate?: (key: string) => string
): string {
const translateOr = (key: string, fallback: string) => translate?.(key) ?? fallback;
if (!member) {
return 'Member';
return translateOr('shared.leaveServer.roles.member', 'Member');
}
if (room.hostId === member.id || room.hostId === member.oderId) {
return 'Owner';
return translateOr('shared.leaveServer.roles.owner', 'Owner');
}
const roles = normalizeRoomRoles(room.roles, room.permissions);
@@ -121,8 +128,13 @@ export function getDisplayRoleName(room: Room, member: MemberIdentity | null | u
.map((roleId) => roleLookup.get(roleId))
.filter((role): role is RoomRole => !!role)
.sort(roleSortDescending);
const roleName = assignedRoles[0]?.name;
return assignedRoles[0]?.name || '@everyone';
if (!roleName) {
return translateOr('shared.accessControl.roles.everyone', '@everyone');
}
return translate ? localizeSystemRoleDisplayName(roleName, translate) : roleName;
}
export function getAssignedRoles(room: Room, identity: MemberIdentity | null | undefined): RoomRole[] {