scim2-models 0.3.2__py3-none-any.whl → 0.3.4__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- scim2_models/rfc7643/group.py +4 -0
- scim2_models/rfc7643/user.py +23 -1
- {scim2_models-0.3.2.dist-info → scim2_models-0.3.4.dist-info}/METADATA +1 -1
- {scim2_models-0.3.2.dist-info → scim2_models-0.3.4.dist-info}/RECORD +6 -6
- {scim2_models-0.3.2.dist-info → scim2_models-0.3.4.dist-info}/WHEEL +0 -0
- {scim2_models-0.3.2.dist-info → scim2_models-0.3.4.dist-info}/licenses/LICENSE +0 -0
scim2_models/rfc7643/group.py
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
from typing import Annotated
|
|
2
|
+
from typing import ClassVar
|
|
2
3
|
from typing import Literal
|
|
3
4
|
from typing import Optional
|
|
4
5
|
from typing import Union
|
|
5
6
|
|
|
6
7
|
from pydantic import Field
|
|
7
8
|
|
|
9
|
+
from ..base import ComplexAttribute
|
|
8
10
|
from ..base import MultiValuedComplexAttribute
|
|
9
11
|
from ..base import Mutability
|
|
10
12
|
from ..base import Reference
|
|
@@ -41,3 +43,5 @@ class Group(Resource):
|
|
|
41
43
|
|
|
42
44
|
members: Optional[list[GroupMember]] = None
|
|
43
45
|
"""A list of members of the Group."""
|
|
46
|
+
|
|
47
|
+
Members: ClassVar[type[ComplexAttribute]] = GroupMember
|
scim2_models/rfc7643/user.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from enum import Enum
|
|
2
2
|
from typing import Annotated
|
|
3
|
+
from typing import ClassVar
|
|
3
4
|
from typing import Literal
|
|
4
5
|
from typing import Optional
|
|
5
6
|
from typing import Union
|
|
@@ -17,6 +18,7 @@ from ..base import Required
|
|
|
17
18
|
from ..base import Returned
|
|
18
19
|
from ..base import Uniqueness
|
|
19
20
|
from ..utils import Base64Bytes
|
|
21
|
+
from .resource import AnyExtension
|
|
20
22
|
from .resource import Resource
|
|
21
23
|
|
|
22
24
|
|
|
@@ -213,7 +215,7 @@ class X509Certificate(MultiValuedComplexAttribute):
|
|
|
213
215
|
"""The value of an X.509 certificate."""
|
|
214
216
|
|
|
215
217
|
|
|
216
|
-
class User(Resource):
|
|
218
|
+
class User(Resource[AnyExtension]):
|
|
217
219
|
schemas: Annotated[list[str], Required.true] = [
|
|
218
220
|
"urn:ietf:params:scim:schemas:core:2.0:User"
|
|
219
221
|
]
|
|
@@ -225,6 +227,8 @@ class User(Resource):
|
|
|
225
227
|
name: Optional[Name] = None
|
|
226
228
|
"""The components of the user's real name."""
|
|
227
229
|
|
|
230
|
+
Name: ClassVar[type[ComplexAttribute]] = Name
|
|
231
|
+
|
|
228
232
|
display_name: Optional[str] = None
|
|
229
233
|
"""The name of the User, suitable for display to end-users."""
|
|
230
234
|
|
|
@@ -270,29 +274,47 @@ class User(Resource):
|
|
|
270
274
|
emails: Optional[list[Email]] = None
|
|
271
275
|
"""Email addresses for the user."""
|
|
272
276
|
|
|
277
|
+
Emails: ClassVar[type[ComplexAttribute]] = Email
|
|
278
|
+
|
|
273
279
|
phone_numbers: Optional[list[PhoneNumber]] = None
|
|
274
280
|
"""Phone numbers for the User."""
|
|
275
281
|
|
|
282
|
+
PhoneNumbers: ClassVar[type[ComplexAttribute]] = PhoneNumber
|
|
283
|
+
|
|
276
284
|
ims: Optional[list[Im]] = None
|
|
277
285
|
"""Instant messaging addresses for the User."""
|
|
278
286
|
|
|
287
|
+
Ims: ClassVar[type[ComplexAttribute]] = Im
|
|
288
|
+
|
|
279
289
|
photos: Optional[list[Photo]] = None
|
|
280
290
|
"""URLs of photos of the User."""
|
|
281
291
|
|
|
292
|
+
Photos: ClassVar[type[ComplexAttribute]] = Photo
|
|
293
|
+
|
|
282
294
|
addresses: Optional[list[Address]] = None
|
|
283
295
|
"""A physical mailing address for this User."""
|
|
284
296
|
|
|
297
|
+
Addresses: ClassVar[type[ComplexAttribute]] = Address
|
|
298
|
+
|
|
285
299
|
groups: Annotated[Optional[list[GroupMembership]], Mutability.read_only] = None
|
|
286
300
|
"""A list of groups to which the user belongs, either through direct
|
|
287
301
|
membership, through nested groups, or dynamically calculated."""
|
|
288
302
|
|
|
303
|
+
Groups: ClassVar[type[ComplexAttribute]] = GroupMembership
|
|
304
|
+
|
|
289
305
|
entitlements: Optional[list[Entitlement]] = None
|
|
290
306
|
"""A list of entitlements for the User that represent a thing the User
|
|
291
307
|
has."""
|
|
292
308
|
|
|
309
|
+
Entitlements: ClassVar[type[ComplexAttribute]] = Entitlement
|
|
310
|
+
|
|
293
311
|
roles: Optional[list[Role]] = None
|
|
294
312
|
"""A list of roles for the User that collectively represent who the User
|
|
295
313
|
is, e.g., 'Student', 'Faculty'."""
|
|
296
314
|
|
|
315
|
+
Roles: ClassVar[type[ComplexAttribute]] = Role
|
|
316
|
+
|
|
297
317
|
x509_certificates: Optional[list[X509Certificate]] = None
|
|
298
318
|
"""A list of certificates issued to the User."""
|
|
319
|
+
|
|
320
|
+
X509Certificates: ClassVar[type[ComplexAttribute]] = X509Certificate
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scim2-models
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.4
|
|
4
4
|
Summary: SCIM2 models serialization and validation with pydantic
|
|
5
5
|
Project-URL: documentation, https://scim2-models.readthedocs.io
|
|
6
6
|
Project-URL: repository, https://github.com/python-scim/scim2-models
|
|
@@ -5,12 +5,12 @@ scim2_models/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
5
5
|
scim2_models/utils.py,sha256=MzZz212-lkVWgXcpXvNwoi_u28wBTpkTwPrfYC5v92A,2771
|
|
6
6
|
scim2_models/rfc7643/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
7
|
scim2_models/rfc7643/enterprise_user.py,sha256=EaxdHH2dcBrwWwGpaZC6iZ9dbcaVN1NpoRLAdkTYssQ,1781
|
|
8
|
-
scim2_models/rfc7643/group.py,sha256=
|
|
8
|
+
scim2_models/rfc7643/group.py,sha256=JML8OtgKjvHHv2YufiYcTtbZuN5GFVQTbm1J6MLtp8o,1427
|
|
9
9
|
scim2_models/rfc7643/resource.py,sha256=zMyk02Traoq6XNBcS_fSnXIOadZwxTdA9CV4vLuy38k,12648
|
|
10
10
|
scim2_models/rfc7643/resource_type.py,sha256=p8IKV5IakPMBX6d2Fv2MFqaQL5iTw152vmozVVSC8gU,3196
|
|
11
11
|
scim2_models/rfc7643/schema.py,sha256=B7TzMbT6ngYQrMqvqW5_LberN6EaqtZaFwBVsgoA3S0,10388
|
|
12
12
|
scim2_models/rfc7643/service_provider_config.py,sha256=deMNCXlqiNzuLcVRN9mdHiTUxhczDnvi-oO6k-Anj8U,5402
|
|
13
|
-
scim2_models/rfc7643/user.py,sha256
|
|
13
|
+
scim2_models/rfc7643/user.py,sha256=EEje4V_zbMVwVYOu2Gj1W7GjD90WnC0lUK3FJuh4jWE,10607
|
|
14
14
|
scim2_models/rfc7644/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
15
|
scim2_models/rfc7644/bulk.py,sha256=I6S40kyJPwDQwPFi668wFFDVTST7z6QTe9HTL5QUViI,2577
|
|
16
16
|
scim2_models/rfc7644/error.py,sha256=l4-vtGQYm5u13-ParhbHSeqXEil0E09QXSO9twAT3SU,6185
|
|
@@ -18,7 +18,7 @@ scim2_models/rfc7644/list_response.py,sha256=ltjV1WII2fNy8j3RX8J0_Jb5DW4hTFoO6P-
|
|
|
18
18
|
scim2_models/rfc7644/message.py,sha256=F4kPqbHAka3-wZzap9a45noQZw-o1vznTJypNABBF7w,253
|
|
19
19
|
scim2_models/rfc7644/patch_op.py,sha256=OE-ixDanTkY5zQP7EK7OAp88uE_fMk03mqmaZHxgJ-g,2210
|
|
20
20
|
scim2_models/rfc7644/search_request.py,sha256=DRGlixcWtYtbUuP9MT7PsnvyxlONLcXGEcQveWdqQng,3003
|
|
21
|
-
scim2_models-0.3.
|
|
22
|
-
scim2_models-0.3.
|
|
23
|
-
scim2_models-0.3.
|
|
24
|
-
scim2_models-0.3.
|
|
21
|
+
scim2_models-0.3.4.dist-info/METADATA,sha256=K4xDCV3A2Hv7Wq-QiCoXrPU3XoDKFaeqAzTQL8aKybY,16288
|
|
22
|
+
scim2_models-0.3.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
23
|
+
scim2_models-0.3.4.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
24
|
+
scim2_models-0.3.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|