Changeset View
Changeset View
Standalone View
Standalone View
lib/shared/avatar-utils.js
Show First 20 Lines • Show All 95 Lines • ▼ Show 20 Lines | ): ClientAvatar { | ||||
if (memberInfos.length === 0) { | if (memberInfos.length === 0) { | ||||
return defaultAnonymousUserEmojiAvatar; | return defaultAnonymousUserEmojiAvatar; | ||||
} | } | ||||
return getAvatarForUser(memberInfos[0]); | return getAvatarForUser(memberInfos[0]); | ||||
} | } | ||||
function useGetAvatarForThread( | function useAvatarForThread(thread: RawThreadInfo | ThreadInfo): ClientAvatar { | ||||
thread: RawThreadInfo | ThreadInfo, | |||||
): ClientAvatar { | |||||
const containingThreadID = thread.containingThreadID; | const containingThreadID = thread.containingThreadID; | ||||
const containingThreadInfo = useSelector(state => | const containingThreadInfo = useSelector(state => | ||||
containingThreadID ? threadInfoSelector(state)[containingThreadID] : null, | containingThreadID ? threadInfoSelector(state)[containingThreadID] : null, | ||||
); | ); | ||||
if (thread.avatar) { | if (thread.avatar) { | ||||
return thread.avatar; | return thread.avatar; | ||||
} | } | ||||
▲ Show 20 Lines • Show All 41 Lines • ▼ Show 20 Lines | ): ResolvedClientAvatar { | ||||
}, [ensAvatarURI, avatarInfo]); | }, [ensAvatarURI, avatarInfo]); | ||||
return resolvedAvatar; | return resolvedAvatar; | ||||
} | } | ||||
export { | export { | ||||
getAvatarForUser, | getAvatarForUser, | ||||
getUserAvatarForThread, | getUserAvatarForThread, | ||||
useGetAvatarForThread, | useAvatarForThread, | ||||
useENSResolvedAvatar, | useENSResolvedAvatar, | ||||
}; | }; |