@ -7,6 +7,10 @@ import Button from '../../Common/Button';
const messages = defineMessages ( {
settings : 'Edit Settings' ,
profile : 'View Profile' ,
joindate : 'Joined {joindate}' ,
requests :
'{requestCount} {requestCount, plural, one {Request} other {Requests}}' ,
userid : 'User ID: {userid}' ,
} ) ;
interface ProfileHeaderProps {
@ -21,6 +25,19 @@ const ProfileHeader: React.FC<ProfileHeaderProps> = ({
const intl = useIntl ( ) ;
const { user : loggedInUser , hasPermission } = useUser ( ) ;
const subtextItems : React.ReactNode [ ] = [
intl . formatMessage ( messages . joindate , {
joindate : intl.formatDate ( user . createdAt ) ,
} ) ,
intl . formatMessage ( messages . requests , {
requestCount : user.requestCount ,
} ) ,
] ;
if ( hasPermission ( Permission . MANAGE_REQUESTS ) ) {
subtextItems . push ( intl . formatMessage ( messages . userid , { userid : user.id } ) ) ;
}
return (
< div className = "relative z-40 mt-6 mb-12 md:flex md:items-end md:justify-between md:space-x-5" >
< div className = "flex items-end space-x-5 justify-items-end" >
@ -55,8 +72,11 @@ const ProfileHeader: React.FC<ProfileHeaderProps> = ({
) }
< / h1 >
< p className = "text-sm font-medium text-gray-400" >
Joined { intl . formatDate ( user . createdAt ) } | { ' ' }
{ intl . formatNumber ( user . requestCount ) } Requests
{ subtextItems . reduce ( ( prev , curr ) = > (
< >
{ prev } | { curr }
< / >
) ) }
< / p >
< / div >
< / div >