"use client"; import { useTranslations } from "next-intl"; import Image from "next/image"; import { ReactElement } from "react"; import { AttributeElement, ContentTitle } from "../../../../components"; import { useSharedContext } from "../../../../contexts"; import { Modules } from "../../../../core"; import { usePageUrlGenerator } from "../../../../hooks"; import { Badge, Link } from "../../../../shadcnui"; import { isRemoteImageSrc } from "../../../../utils"; import { RoleInterface } from "../../../role"; import { UserInterface } from "../../data"; type UserDetailsProps = { user: UserInterface; }; export function UserStanadaloneDetails({ user }: UserDetailsProps) { const generateUrl = usePageUrlGenerator(); const t = useTranslations(); const { title } = useSharedContext(); let roles: ReactElement = <>; if (user.roles && user.roles.length > 0) { roles = (
{user.roles.map((role: RoleInterface, _index: number) => ( {t(`role.roles`, { role: role.id.replaceAll(`-`, ``) })} ))}
); } return (
{user.avatar && (
{user.name}
)}
{user.isDeleted ? (
{t(`user.errors.deleted`)}
) : ( <> {!user.isActivated && (
{t(`user.errors.inactive`)}
)} )} {roles}
); }