galley-0.83.0: Conversations
Safe HaskellSafe-Inferred
LanguageGHC2021

Galley.Effects.MemberStore

Synopsis

Member store effect

data MemberStore m a where Source #

Constructors

CreateMembers :: ToUserRole u => ConvId -> UserList u -> MemberStore m ([LocalMember], [RemoteMember]) 
CreateMembersInRemoteConversation :: Remote ConvId -> [UserId] -> MemberStore m () 
CreateBotMember :: ServiceRef -> BotId -> ConvId -> MemberStore m BotMember 
GetLocalMember :: ConvId -> UserId -> MemberStore m (Maybe LocalMember) 
GetLocalMembers :: ConvId -> MemberStore m [LocalMember] 
GetAllLocalMembers :: MemberStore m [LocalMember] 
GetRemoteMember :: ConvId -> Remote UserId -> MemberStore m (Maybe RemoteMember) 
GetRemoteMembers :: ConvId -> MemberStore m [RemoteMember] 
CheckLocalMemberRemoteConv :: UserId -> Remote ConvId -> MemberStore m Bool 
SelectRemoteMembers :: [UserId] -> Remote ConvId -> MemberStore m ([UserId], Bool) 
SetSelfMember :: Qualified ConvId -> Local UserId -> MemberUpdate -> MemberStore m () 
SetOtherMember :: Local ConvId -> Qualified UserId -> OtherMemberUpdate -> MemberStore m () 
DeleteMembers :: ConvId -> UserList UserId -> MemberStore m () 
DeleteMembersInRemoteConversation :: Remote ConvId -> [UserId] -> MemberStore m () 
AddMLSClients :: GroupId -> Qualified UserId -> Set (ClientId, LeafIndex) -> MemberStore m () 
PlanClientRemoval :: Foldable f => GroupId -> f ClientIdentity -> MemberStore m () 
RemoveMLSClients :: GroupId -> Qualified UserId -> Set ClientId -> MemberStore m () 
RemoveAllMLSClients :: GroupId -> MemberStore m () 
LookupMLSClients :: GroupId -> MemberStore m ClientMap 
LookupMLSClientLeafIndices :: GroupId -> MemberStore m (ClientMap, IndexMap) 
GetRemoteMembersByDomain :: Domain -> MemberStore m [(ConvId, RemoteMember)] 
GetLocalMembersByDomain :: Domain -> MemberStore m [(ConvId, UserId)] 

Create members

createMember :: Member MemberStore r => Local ConvId -> Local UserId -> Sem r [LocalMember] Source #

Add a member to a local conversation, as an admin.

Read members

Update members

Delete members