2023-09-19 12:01:35 +00:00
|
|
|
import { type KeycloakTokenParsed } from "keycloak-js";
|
2022-11-03 14:06:26 +00:00
|
|
|
|
|
|
|
import { TranslateFunction } from "./translation/useTranslation";
|
|
|
|
|
2023-09-19 12:01:35 +00:00
|
|
|
export function loggedInUserName(
|
|
|
|
token: KeycloakTokenParsed | undefined,
|
|
|
|
t: TranslateFunction,
|
|
|
|
) {
|
|
|
|
if (!token) {
|
2022-11-03 14:06:26 +00:00
|
|
|
return t("unknownUser");
|
|
|
|
}
|
|
|
|
|
2023-09-19 12:01:35 +00:00
|
|
|
const givenName = token.given_name;
|
|
|
|
const familyName = token.family_name;
|
|
|
|
const preferredUsername = token.preferred_username;
|
2022-11-03 14:06:26 +00:00
|
|
|
|
|
|
|
if (givenName && familyName) {
|
|
|
|
return t("fullName", { givenName, familyName });
|
|
|
|
}
|
|
|
|
|
|
|
|
return givenName || familyName || preferredUsername || t("unknownUser");
|
|
|
|
}
|