MCPcopy Create free account
hub / github.com/CommE2E/comm / useThreadFrozenDueToViewerBlock

Function useThreadFrozenDueToViewerBlock

lib/shared/thread-utils.js:1021–1052  ·  view source on GitHub ↗
(
  threadInfo: ThreadInfo,
  communityThreadInfo: ?ThreadInfo,
  viewerID: ?string,
  userInfos: UserInfos,
)

Source from the content-addressed store, hash-verified

1019}
1020
1021function useThreadFrozenDueToViewerBlock(
1022 threadInfo: ThreadInfo,
1023 communityThreadInfo: ?ThreadInfo,
1024 viewerID: ?string,
1025 userInfos: UserInfos,
1026): boolean {
1027 const communityThreadInfoArray = React.useMemo(
1028 () => (communityThreadInfo ? [communityThreadInfo] : []),
1029 [communityThreadInfo],
1030 );
1031 const communityRootsMembersToRole = useCommunityRootMembersToRole(
1032 communityThreadInfoArray,
1033 );
1034 const memberToRole = communityRootsMembersToRole[communityThreadInfo?.id];
1035
1036 const memberHasAdminRole = threadMembersWithoutAddedAdmin(threadInfo).some(
1037 m => roleIsAdminRole(memberToRole?.[m.id]),
1038 );
1039
1040 return React.useMemo(() => {
1041 if (memberHasAdminRole) {
1042 return false;
1043 }
1044
1045 return threadIsWithBlockedUserOnlyWithoutAdminRoleCheck(
1046 threadInfo,
1047 viewerID,
1048 userInfos,
1049 true,
1050 );
1051 }, [memberHasAdminRole, threadInfo, userInfos, viewerID]);
1052}
1053
1054const threadTypeDescriptions: { [ThreadType]: string } = {
1055 [threadTypes.COMMUNITY_OPEN_SUBTHREAD]:

Callers 2

Tested by

no test coverage detected