Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- type TeamMember = TeamMember' 'Required
- newTeamMember :: forall tag tag. Lens (TeamMember' tag) (TeamMember' tag) (NewTeamMember' tag) (NewTeamMember' tag)
- mkTeamMember :: UserId -> PermissionType tag -> Maybe (UserId, UTCTimeMillis) -> UserLegalHoldStatus -> TeamMember' tag
- userId :: Lens' TeamMember UserId
- permissions :: Lens (TeamMember' tag1) (TeamMember' tag2) (PermissionType tag1) (PermissionType tag2)
- invitation :: Lens' TeamMember (Maybe (UserId, UTCTimeMillis))
- legalHoldStatus :: forall tag. Lens' (TeamMember' tag) UserLegalHoldStatus
- ntmNewTeamMember :: NewTeamMember' tag -> TeamMember' tag
- setOptionalPerms :: (TeamMember -> Bool) -> TeamMember -> TeamMember' 'Optional
- setOptionalPermsMany :: (TeamMember -> Bool) -> TeamMemberList -> TeamMemberList' 'Optional
- teamMemberObjectSchema :: ObjectSchema SwaggerDoc TeamMember
- type TeamMemberList = TeamMemberList' 'Required
- type TeamMemberListOptPerms = TeamMemberList' 'Optional
- newtype TeamMembersPage = TeamMembersPage {
- unTeamMembersPage :: TeamMembersPage'
- type TeamMembersPagingState = MultiTablePagingState TeamMembersPagingName TeamMembersTable
- teamMemberPagingState :: PageWithState TeamMember -> TeamMembersPagingState
- newTeamMemberList :: [TeamMember] -> ListType -> TeamMemberList
- teamMembers :: forall tag tag. Lens (TeamMemberList' tag) (TeamMemberList' tag) [TeamMember' tag] [TeamMember' tag]
- teamMemberListType :: forall tag. Lens' (TeamMemberList' tag) ListType
- type HardTruncationLimit = 2000 :: Nat
- hardTruncationLimit :: Integral a => a
- data NewListType
- toNewListType :: ListType -> NewListType
- data ListType
- type NewTeamMember = NewTeamMember' 'Required
- type TeamMemberOptPerms = TeamMember' 'Optional
- mkNewTeamMember :: UserId -> PermissionType 'Required -> Maybe (UserId, UTCTimeMillis) -> NewTeamMember
- nUserId :: forall tag. Lens' (NewTeamMember' tag) UserId
- nPermissions :: forall tag tag. Lens (NewTeamMember' tag) (NewTeamMember' tag) (PermissionType tag) (PermissionType tag)
- optionalPermissions :: TeamMemberOptPerms -> Maybe Permissions
- nInvitation :: forall tag. Lens' (NewTeamMember' tag) (Maybe (UserId, UTCTimeMillis))
- data TeamMemberDeleteData
- newTeamMemberDeleteData :: Maybe PlainTextPassword6 -> TeamMemberDeleteData
- tmdAuthPassword :: Iso' TeamMemberDeleteData (Maybe PlainTextPassword6)
- isAdminOrOwner :: Permissions -> Bool
- permissionsRole :: Permissions -> Maybe Role
- rolePermissions :: Role -> Permissions
- class IsPerm perm where
- type PermError (e :: perm) :: GalleyError
- roleHasPerm :: Role -> perm -> Bool
- roleGrantsPerm :: Role -> perm -> Bool
- hasPermission :: TeamMember -> perm -> Bool
- mayGrantPermission :: TeamMember -> perm -> Bool
- data HiddenPerm
- = ChangeLegalHoldTeamSettings
- | ChangeLegalHoldUserSettings
- | ViewLegalHoldUserSettings
- | ChangeTeamFeature
- | ChangeTeamSearchVisibility
- | ViewTeamSearchVisibility
- | ViewSameTeamEmails
- | ReadIdp
- | CreateUpdateDeleteIdp
- | CreateReadDeleteScimToken
- | DownloadTeamMembersCsv
- | ChangeTeamMemberProfiles
- | SearchContacts
TeamMember
type TeamMember = TeamMember' 'Required Source #
newTeamMember :: forall tag tag. Lens (TeamMember' tag) (TeamMember' tag) (NewTeamMember' tag) (NewTeamMember' tag) Source #
mkTeamMember :: UserId -> PermissionType tag -> Maybe (UserId, UTCTimeMillis) -> UserLegalHoldStatus -> TeamMember' tag Source #
permissions :: Lens (TeamMember' tag1) (TeamMember' tag2) (PermissionType tag1) (PermissionType tag2) Source #
invitation :: Lens' TeamMember (Maybe (UserId, UTCTimeMillis)) Source #
legalHoldStatus :: forall tag. Lens' (TeamMember' tag) UserLegalHoldStatus Source #
ntmNewTeamMember :: NewTeamMember' tag -> TeamMember' tag Source #
setOptionalPerms :: (TeamMember -> Bool) -> TeamMember -> TeamMember' 'Optional Source #
setOptionalPermsMany :: (TeamMember -> Bool) -> TeamMemberList -> TeamMemberList' 'Optional Source #
TeamMemberList
type TeamMemberList = TeamMemberList' 'Required Source #
type TeamMemberListOptPerms = TeamMemberList' 'Optional Source #
newtype TeamMembersPage Source #
TeamMembersPage | |
|
Instances
type TeamMembersPagingState = MultiTablePagingState TeamMembersPagingName TeamMembersTable Source #
newTeamMemberList :: [TeamMember] -> ListType -> TeamMemberList Source #
teamMembers :: forall tag tag. Lens (TeamMemberList' tag) (TeamMemberList' tag) [TeamMember' tag] [TeamMember' tag] Source #
teamMemberListType :: forall tag. Lens' (TeamMemberList' tag) ListType Source #
type HardTruncationLimit = 2000 :: Nat Source #
hardTruncationLimit :: Integral a => a Source #
data NewListType Source #
Like ListType
, but without backwards-compatible and boolean-blind json serialization.
Instances
toNewListType :: ListType -> NewListType Source #
Instances
Arbitrary ListType Source # | |
FromJSON ListType Source # | |
ToJSON ListType Source # | |
Generic ListType Source # | |
Show ListType Source # | |
Eq ListType Source # | |
Ord ListType Source # | |
Defined in Wire.API.Team.Member | |
ToSchema ListType Source # | |
Defined in Wire.API.Team.Member | |
ToSchema ListType Source # | |
Defined in Wire.API.Team.Member | |
type Rep ListType Source # | |
NewTeamMember
type NewTeamMember = NewTeamMember' 'Required Source #
type TeamMemberOptPerms = TeamMember' 'Optional Source #
mkNewTeamMember :: UserId -> PermissionType 'Required -> Maybe (UserId, UTCTimeMillis) -> NewTeamMember Source #
nPermissions :: forall tag tag. Lens (NewTeamMember' tag) (NewTeamMember' tag) (PermissionType tag) (PermissionType tag) Source #
nInvitation :: forall tag. Lens' (NewTeamMember' tag) (Maybe (UserId, UTCTimeMillis)) Source #
TeamMemberDeleteData
data TeamMemberDeleteData Source #
Instances
Arbitrary TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member | |
FromJSON TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member | |
ToJSON TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member toJSON :: TeamMemberDeleteData -> Value Source # toEncoding :: TeamMemberDeleteData -> Encoding Source # toJSONList :: [TeamMemberDeleteData] -> Value Source # toEncodingList :: [TeamMemberDeleteData] -> Encoding Source # | |
Show TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member showsPrec :: Int -> TeamMemberDeleteData -> ShowS # show :: TeamMemberDeleteData -> String # showList :: [TeamMemberDeleteData] -> ShowS # | |
Eq TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member (==) :: TeamMemberDeleteData -> TeamMemberDeleteData -> Bool # (/=) :: TeamMemberDeleteData -> TeamMemberDeleteData -> Bool # | |
ToSchema TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member | |
ToSchema TeamMemberDeleteData Source # | |
Defined in Wire.API.Team.Member |
Permissions
isAdminOrOwner :: Permissions -> Bool Source #
permissionsRole :: Permissions -> Maybe Role Source #
rolePermissions :: Role -> Permissions Source #
class IsPerm perm where Source #
See Note [hidden team roles]
type PermError (e :: perm) :: GalleyError Source #
roleHasPerm :: Role -> perm -> Bool Source #
roleGrantsPerm :: Role -> perm -> Bool Source #
hasPermission :: TeamMember -> perm -> Bool Source #
mayGrantPermission :: TeamMember -> perm -> Bool Source #
Instances
IsPerm HiddenPerm Source # | |
Defined in Wire.API.Team.Member type PermError e :: GalleyError Source # roleHasPerm :: Role -> HiddenPerm -> Bool Source # roleGrantsPerm :: Role -> HiddenPerm -> Bool Source # hasPermission :: TeamMember -> HiddenPerm -> Bool Source # mayGrantPermission :: TeamMember -> HiddenPerm -> Bool Source # | |
IsPerm Perm Source # | |
Defined in Wire.API.Team.Member type PermError e :: GalleyError Source # roleHasPerm :: Role -> Perm -> Bool Source # roleGrantsPerm :: Role -> Perm -> Bool Source # hasPermission :: TeamMember -> Perm -> Bool Source # mayGrantPermission :: TeamMember -> Perm -> Bool Source # |
data HiddenPerm Source #
See Note [hidden team roles]
ChangeLegalHoldTeamSettings | |
ChangeLegalHoldUserSettings | |
ViewLegalHoldUserSettings | |
ChangeTeamFeature | |
ChangeTeamSearchVisibility | |
ViewTeamSearchVisibility | |
ViewSameTeamEmails | |
ReadIdp | |
CreateUpdateDeleteIdp | |
CreateReadDeleteScimToken | |
DownloadTeamMembersCsv | this has its own permission because we're not sure how efficient this end-point is. better not let all team members play with it unless we have to. |
ChangeTeamMemberProfiles | |
SearchContacts |