galley-0.83.0: Conversations
Safe HaskellSafe-Inferred
LanguageGHC2021

Galley.API.Teams

Synopsis

Documentation

getManyTeams :: (Member TeamStore r, Member (Queue DeleteItem) r, Member (ListItems LegacyPaging TeamId) r) => UserId -> Sem r TeamList Source #

DEPRECATED.

The endpoint was designed to query non-binding teams. However, non-binding teams is a feature that has never been adopted by clients, but the endpoint also returns the binding team of a user and it is possible that this is being used by a client, even though unlikely.

The following functionality has been changed: query parameters will be ignored, which has the effect that regardless of the parameters the response will always contain the binding team of the user if it exists. Even though they are ignored, the use of query parameters will not result in an error.

(If you want to be pedantic, the size parameter is still honored: its allowed range is between 1 and 100, and that will always be an upper bound of the result set of size 0 or one.)

getSearchVisibilityInternal :: Member SearchVisibilityStore r => TeamId -> Sem r TeamSearchVisibilityView Source #

Modify and get visibility type for a team (internal, no user permission checks)

ensureNotTooLargeForLegalHold :: forall r. (Member LegalHoldStore r, Member TeamStore r, Member TeamFeatureStore r, Member (ErrorS 'TooManyTeamMembersOnTeamWithLegalhold) r) => TeamId -> Int -> Sem r () Source #

Ensure that a team doesn't exceed the member count limit for the LegalHold feature. A team with more members than the fanout limit is too large, because the fanout limit would prevent turning LegalHold feature _off_ again (for details see removeSettings).

If LegalHold is configured for whitelisted teams only we consider the team size unlimited, because we make the assumption that these teams won't turn LegalHold off after activation. FUTUREWORK: Find a way around the fanout limit.