@@ -7,14 +7,20 @@ import { faUserCircle } from '@fortawesome/free-solid-svg-icons';
77
88import { getConfig } from '@edx/frontend-platform' ;
99import { injectIntl , intlShape } from '@edx/frontend-platform/i18n' ;
10- import { Dropdown , Badge } from '@openedx/paragon' ;
10+ import { Avatar , Dropdown , Badge } from '@openedx/paragon' ;
1111
1212import messages from './messages' ;
1313import Notifications from '../Notifications' ;
1414import { selectShowNotificationTray } from '../Notifications/data/selectors' ;
1515import { fetchAppsNotificationCount } from '../Notifications/data/thunks' ;
1616
17- const AuthenticatedUserDropdown = ( { enterpriseLearnerPortalLink, intl, username } ) => {
17+ const AuthenticatedUserDropdown = ( props ) => {
18+ const {
19+ intl,
20+ enterpriseLearnerPortalLink,
21+ username,
22+ name,
23+ } = props ;
1824 const dispatch = useDispatch ( ) ;
1925 const showNotificationsTray = useSelector ( selectShowNotificationTray ) ;
2026
@@ -47,17 +53,25 @@ const AuthenticatedUserDropdown = ({ enterpriseLearnerPortalLink, intl, username
4753 careersMenuItem = '' ;
4854 }
4955
56+ const dropdownToggle = (
57+ < Dropdown . Toggle variant = "outline-primary" id = "user-dropdown" >
58+ < FontAwesomeIcon icon = { faUserCircle } className = "d-md-none" size = "lg" />
59+ { getConfig ( ) . HIDE_USERNAME_FROM_HEADER ? (
60+ < Avatar size = "sm" alt = { name } className = "mr-2" />
61+ ) : (
62+ < span data-hj-suppress className = "d-none d-md-inline" data-testid = "username" >
63+ { username }
64+ </ span >
65+ ) }
66+ </ Dropdown . Toggle >
67+ ) ;
68+
5069 return (
5170 < >
5271 < a className = "text-gray-700" href = { `${ getConfig ( ) . SUPPORT_URL } ` } > { intl . formatMessage ( messages . help ) } </ a >
5372 { showNotificationsTray && < Notifications /> }
5473 < Dropdown className = "user-dropdown ml-3" >
55- < Dropdown . Toggle variant = "outline-primary" id = "user-dropdown" >
56- < FontAwesomeIcon icon = { faUserCircle } className = "d-md-none" size = "lg" />
57- < span data-hj-suppress className = "d-none d-md-inline" >
58- { username }
59- </ span >
60- </ Dropdown . Toggle >
74+ { dropdownToggle }
6175 < Dropdown . Menu className = "dropdown-menu-right zIndex-2" >
6276 { dashboardMenuItem }
6377 { careersMenuItem }
@@ -89,10 +103,12 @@ AuthenticatedUserDropdown.propTypes = {
89103 enterpriseLearnerPortalLink : PropTypes . string ,
90104 intl : intlShape . isRequired ,
91105 username : PropTypes . string . isRequired ,
106+ name : PropTypes . string ,
92107} ;
93108
94109AuthenticatedUserDropdown . defaultProps = {
95110 enterpriseLearnerPortalLink : '' ,
111+ name : '' ,
96112} ;
97113
98114export default injectIntl ( AuthenticatedUserDropdown ) ;
0 commit comments