|
29 | 29 |
|
30 | 30 | from . import utils |
31 | 31 | from .asset import Asset |
32 | | -from .enums import TeamMembershipState, try_enum |
| 32 | +from .enums import TeamMembershipState, TeamRole, try_enum |
33 | 33 | from .user import BaseUser |
34 | 34 |
|
35 | 35 | if TYPE_CHECKING: |
@@ -136,16 +136,18 @@ class TeamMember(BaseUser): |
136 | 136 | The team that the member is from. |
137 | 137 | membership_state: :class:`TeamMembershipState` |
138 | 138 | The membership state of the member (e.g. invited or accepted) |
| 139 | + role: :class:`TeamRole` |
| 140 | + The role of the team member (e.g. admin, developer, read_only). |
139 | 141 | """ |
140 | 142 |
|
141 | | - __slots__ = ("team", "membership_state", "permissions") |
| 143 | + __slots__ = ("team", "membership_state", "role") |
142 | 144 |
|
143 | 145 | def __init__(self, team: Team, state: ConnectionState, data: TeamMemberPayload): |
144 | 146 | self.team: Team = team |
145 | 147 | self.membership_state: TeamMembershipState = try_enum( |
146 | 148 | TeamMembershipState, data["membership_state"] |
147 | 149 | ) |
148 | | - self.permissions: list[str] = data["permissions"] |
| 150 | + self.role: TeamRole = TeamRole.owner if team.owner_id == int(data["user"]["id"]) else try_enum(TeamRole, data["role"]) |
149 | 151 | super().__init__(state=state, data=data["user"]) |
150 | 152 |
|
151 | 153 | def __repr__(self) -> str: |
|
0 commit comments