|
1 | 1 | from enum import Enum
|
2 |
| -from typing import ClassVar |
3 | 2 | from typing import Annotated
|
| 3 | +from typing import ClassVar |
4 | 4 | from typing import Literal
|
5 | 5 | from typing import Optional
|
6 | 6 | from typing import Union
|
@@ -224,10 +224,11 @@ class User(Resource[AnyExtension]):
|
224 | 224 | """Unique identifier for the User, typically used by the user to directly
|
225 | 225 | authenticate to the service provider."""
|
226 | 226 |
|
227 |
| - Name: ClassVar[type[ComplexAttribute]] = Name |
228 | 227 | name: Optional[Name] = None
|
229 | 228 | """The components of the user's real name."""
|
230 | 229 |
|
| 230 | + Name: ClassVar[type[ComplexAttribute]] = Name |
| 231 | + |
231 | 232 | display_name: Optional[str] = None
|
232 | 233 | """The name of the User, suitable for display to end-users."""
|
233 | 234 |
|
@@ -270,41 +271,50 @@ class User(Resource[AnyExtension]):
|
270 | 271 | password: Annotated[Optional[str], Mutability.write_only, Returned.never] = None
|
271 | 272 | """The User's cleartext password."""
|
272 | 273 |
|
273 |
| - Emails: ClassVar[type[ComplexAttribute]] = Email |
274 | 274 | emails: Optional[list[Email]] = None
|
275 | 275 | """Email addresses for the user."""
|
276 | 276 |
|
277 |
| - PhoneNumbers: ClassVar[type[ComplexAttribute]] = PhoneNumber |
| 277 | + Emails: ClassVar[type[ComplexAttribute]] = Email |
| 278 | + |
278 | 279 | phone_numbers: Optional[list[PhoneNumber]] = None
|
279 | 280 | """Phone numbers for the User."""
|
280 | 281 |
|
281 |
| - Ims: ClassVar[type[ComplexAttribute]] = Im |
| 282 | + PhoneNumbers: ClassVar[type[ComplexAttribute]] = PhoneNumber |
| 283 | + |
282 | 284 | ims: Optional[list[Im]] = None
|
283 | 285 | """Instant messaging addresses for the User."""
|
284 | 286 |
|
285 |
| - Photos: ClassVar[type[ComplexAttribute]] = Photo |
| 287 | + Ims: ClassVar[type[ComplexAttribute]] = Im |
| 288 | + |
286 | 289 | photos: Optional[list[Photo]] = None
|
287 | 290 | """URLs of photos of the User."""
|
288 | 291 |
|
289 |
| - Addresses: ClassVar[type[ComplexAttribute]] = Address |
| 292 | + Photos: ClassVar[type[ComplexAttribute]] = Photo |
| 293 | + |
290 | 294 | addresses: Optional[list[Address]] = None
|
291 | 295 | """A physical mailing address for this User."""
|
292 | 296 |
|
293 |
| - Groups: ClassVar[type[ComplexAttribute]] = GroupMembership |
| 297 | + Addresses: ClassVar[type[ComplexAttribute]] = Address |
| 298 | + |
294 | 299 | groups: Annotated[Optional[list[GroupMembership]], Mutability.read_only] = None
|
295 | 300 | """A list of groups to which the user belongs, either through direct
|
296 | 301 | membership, through nested groups, or dynamically calculated."""
|
297 | 302 |
|
298 |
| - Entitlements: ClassVar[type[ComplexAttribute]] = Entitlement |
| 303 | + Groups: ClassVar[type[ComplexAttribute]] = GroupMembership |
| 304 | + |
299 | 305 | entitlements: Optional[list[Entitlement]] = None
|
300 | 306 | """A list of entitlements for the User that represent a thing the User
|
301 | 307 | has."""
|
302 | 308 |
|
303 |
| - Roles: ClassVar[type[ComplexAttribute]] = Role |
| 309 | + Entitlements: ClassVar[type[ComplexAttribute]] = Entitlement |
| 310 | + |
304 | 311 | roles: Optional[list[Role]] = None
|
305 | 312 | """A list of roles for the User that collectively represent who the User
|
306 | 313 | is, e.g., 'Student', 'Faculty'."""
|
307 | 314 |
|
308 |
| - X509Certificates: ClassVar[type[ComplexAttribute]] = X509Certificate |
| 315 | + Roles: ClassVar[type[ComplexAttribute]] = Role |
| 316 | + |
309 | 317 | x509_certificates: Optional[list[X509Certificate]] = None
|
310 | 318 | """A list of certificates issued to the User."""
|
| 319 | + |
| 320 | + X509Certificates: ClassVar[type[ComplexAttribute]] = X509Certificate |
0 commit comments