11import React from 'react' ;
2- import { shallowEqual , useSelector } from 'react-redux' ;
2+ import { shallowEqual } from 'react-redux' ;
33
4- import { IApplicationState } from '../../definitions' ;
54import { getUserSelector } from '../../selectors/login' ;
65import Avatar from './Avatar' ;
76import { IAvatar } from './interfaces' ;
87import { useAvatarETag } from './useAvatarETag' ;
8+ import { useAppSelector } from '../../lib/hooks' ;
99
1010const AvatarContainer = ( {
1111 style,
@@ -22,24 +22,27 @@ const AvatarContainer = ({
2222 rid,
2323 accessibilityLabel
2424} : IAvatar ) : React . ReactElement => {
25- const server = useSelector ( ( state : IApplicationState ) => state . server . server ) ;
26- const serverVersion = useSelector ( ( state : IApplicationState ) => state . server . version ) ;
27- const { id, token, username } = useSelector (
28- ( state : IApplicationState ) => ( {
25+ const server = useAppSelector ( state => state . server . server ) ;
26+ const serverVersion = useAppSelector ( state => state . server . version ) ;
27+ const { id, token, username } = useAppSelector (
28+ state => ( {
2929 id : getUserSelector ( state ) . id ,
3030 token : getUserSelector ( state ) . token ,
3131 username : getUserSelector ( state ) . username
3232 } ) ,
3333 shallowEqual
3434 ) ;
3535
36- const { avatarExternalProviderUrl, roomAvatarExternalProviderUrl, cdnPrefix } = useSelector ( ( state : IApplicationState ) => ( {
37- avatarExternalProviderUrl : state . settings . Accounts_AvatarExternalProviderUrl as string ,
38- roomAvatarExternalProviderUrl : state . settings . Accounts_RoomAvatarExternalProviderUrl as string ,
39- cdnPrefix : state . settings . CDN_PREFIX as string
40- } ) ) ;
41- const blockUnauthenticatedAccess = useSelector (
42- ( state : IApplicationState ) => state . settings . Accounts_AvatarBlockUnauthenticatedAccess ?? true
36+ const { avatarExternalProviderUrl, roomAvatarExternalProviderUrl, cdnPrefix } = useAppSelector (
37+ state => ( {
38+ avatarExternalProviderUrl : state . settings . Accounts_AvatarExternalProviderUrl as string ,
39+ roomAvatarExternalProviderUrl : state . settings . Accounts_RoomAvatarExternalProviderUrl as string ,
40+ cdnPrefix : state . settings . CDN_PREFIX as string
41+ } ) ,
42+ shallowEqual
43+ ) ;
44+ const blockUnauthenticatedAccess = useAppSelector (
45+ state => state . settings . Accounts_AvatarBlockUnauthenticatedAccess ?? true
4346 ) as boolean ;
4447
4548 const { avatarETag } = useAvatarETag ( { username, text, type, rid, id } ) ;
0 commit comments