maleo-identity 0.0.45__py3-none-any.whl → 0.0.46__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.

Potentially problematic release.


This version of maleo-identity might be problematic. Click here for more details.

@@ -8,4 +8,13 @@ class MaleoIdentityUserProfileConstants:
8
8
  ] = {
9
9
  MaleoIdentityUserProfileEnums.IdentifierType.USER_ID: int,
10
10
  MaleoIdentityUserProfileEnums.IdentifierType.ID_CARD: str,
11
+ }
12
+
13
+ MIME_TYPE_EXTENSION_MAP:Dict[
14
+ MaleoIdentityUserProfileEnums.ValidImageMimeType,
15
+ str
16
+ ] = {
17
+ MaleoIdentityUserProfileEnums.ValidImageMimeType.JPEG: ".jpeg",
18
+ MaleoIdentityUserProfileEnums.ValidImageMimeType.JPG: ".jpg",
19
+ MaleoIdentityUserProfileEnums.ValidImageMimeType.PNG: ".png",
11
20
  }
@@ -5,6 +5,11 @@ class MaleoIdentityUserProfileEnums:
5
5
  USER_ID = "user_id"
6
6
  ID_CARD = "id_card"
7
7
 
8
+ class ValidImageMimeType(StrEnum):
9
+ JPEG = "image/jpeg"
10
+ JPG = "image/jpg"
11
+ PNG = "image/png"
12
+
8
13
  class ExpandableFields(StrEnum):
9
14
  GENDER = "gender"
10
15
  BLOOD_TYPE = "blood_type"
@@ -14,6 +14,9 @@ class MaleoIdentityUserProfileSchemas:
14
14
  class IdCard(BaseModel):
15
15
  id_card:str = Field(..., max_length=16, description="User's ID Card")
16
16
 
17
+ class OptionalIdCard(BaseModel):
18
+ id_card:BaseTypes.OptionalString = Field(None, max_length=16, description="Optional User's ID Card")
19
+
17
20
  class LeadingTitle(BaseModel):
18
21
  leading_title:BaseTypes.OptionalString = Field(None, max_length=25, description="User's leading title")
19
22
 
@@ -36,4 +39,19 @@ class MaleoIdentityUserProfileSchemas:
36
39
  birth_place:BaseTypes.OptionalString = Field(None, max_length=50, description="User's birth place")
37
40
 
38
41
  class BirthDate(BaseModel):
39
- birth_date:BaseTypes.OptionalDate = Field(None, description="User's birth date")
42
+ birth_date:BaseTypes.OptionalDate = Field(None, description="User's birth date")
43
+
44
+ class AvatarName(BaseModel):
45
+ avatar_name:str = Field(..., description="User's avatar's name")
46
+
47
+ class OptionalAvatarUrl(BaseModel):
48
+ avatar_url:BaseTypes.OptionalString = Field(None, description="Avatar's URL")
49
+
50
+ class OptionalAvatar(BaseModel):
51
+ avatar:Optional[bytes] = Field(None, description="Optional Avatar")
52
+
53
+ class OptionalAvatarName(BaseModel):
54
+ avatar_name:BaseTypes.OptionalString = Field(None, description="Optional avatar's name")
55
+
56
+ class OptionalAvatarContentType(BaseModel):
57
+ content_type:BaseTypes.OptionalString = Field(None, description="Optional avatar's content type")
@@ -1,6 +1,6 @@
1
1
  from sqlalchemy import Column, ForeignKey
2
2
  from sqlalchemy.orm import relationship
3
- from sqlalchemy.types import String, Enum, Integer, Date
3
+ from sqlalchemy.types import String, Enum, Integer, Date, Text
4
4
  from maleo_metadata.enums.blood_type import MaleoMetadataBloodTypeEnums
5
5
  from maleo_metadata.enums.gender import MaleoMetadataGenderEnums
6
6
  from maleo_identity.db import MaleoIdentityMetadataManager
@@ -20,4 +20,5 @@ class UserProfilesTable(MaleoIdentityMetadataManager.Base):
20
20
  birth_place = Column(name="birth_place", type_=String(50))
21
21
  birth_date = Column(name="birth_date", type_=Date)
22
22
  gender = Column(name="gender", type_=Enum(MaleoMetadataGenderEnums.Gender, name="gender"))
23
- blood_type = Column(name="blood_type", type_=Enum(MaleoMetadataBloodTypeEnums.BloodType, name="blood_type"))
23
+ blood_type = Column(name="blood_type", type_=Enum(MaleoMetadataBloodTypeEnums.BloodType, name="blood_type"))
24
+ avatar_name = Column(name="avatar_name", type_=Text, nullable=False)
@@ -7,6 +7,8 @@ from maleo_identity.models.schemas.general import MaleoIdentityGeneralSchemas
7
7
  from maleo_identity.models.schemas.user_profile import MaleoIdentityUserProfileSchemas
8
8
 
9
9
  class UserProfileTransfers(
10
+ MaleoIdentityUserProfileSchemas.OptionalAvatarUrl,
11
+ MaleoIdentityUserProfileSchemas.AvatarName,
10
12
  MaleoMetadataBloodTypeExpandedSchemas.OptionalExpandedBloodType,
11
13
  MaleoMetadataBloodTypeExpandedSchemas.OptionalSimpleBloodType,
12
14
  MaleoMetadataGenderExpandedSchemas.OptionalExpandedGender,
@@ -27,13 +27,13 @@ class MaleoIdentityUserGeneralParametersTransfers:
27
27
  class UpdateData(
28
28
  MaleoIdentityUserSchemas.Phone,
29
29
  MaleoIdentityUserSchemas.Email,
30
- MaleoIdentityUserSchemas.Username,
31
- MaleoMetadataUserTypeExpandedSchemas.SimpleUserType
30
+ MaleoIdentityUserSchemas.Username
32
31
  ): pass
33
32
 
34
33
  class CreateData(
35
34
  MaleoIdentityUserSchemas.Password,
36
35
  UpdateData,
36
+ MaleoMetadataUserTypeExpandedSchemas.SimpleUserType,
37
37
  MaleoIdentityUserSchemas.OptionalOrganizationId
38
38
  ): pass
39
39
 
@@ -20,7 +20,13 @@ class MaleoIdentityUserProfileGeneralParametersTransfers:
20
20
 
21
21
  class CreateOrUpdateQuery(MaleoIdentityUserProfileSchemas.Expand): pass
22
22
 
23
- class CreateOrUpdateBody(
23
+ class AvatarData(
24
+ MaleoIdentityUserProfileSchemas.OptionalAvatarContentType,
25
+ MaleoIdentityUserProfileSchemas.OptionalAvatar
26
+ ): pass
27
+
28
+ class CreateOrUpdateData(
29
+ MaleoIdentityUserProfileSchemas.OptionalAvatarName,
24
30
  MaleoMetadataGenderExpandedSchemas.OptionalSimpleGender,
25
31
  MaleoMetadataBloodTypeExpandedSchemas.OptionalSimpleBloodType,
26
32
  MaleoIdentityUserProfileSchemas.BirthDate,
@@ -30,20 +36,18 @@ class MaleoIdentityUserProfileGeneralParametersTransfers:
30
36
  MaleoIdentityUserProfileSchemas.MiddleName,
31
37
  MaleoIdentityUserProfileSchemas.FirstName,
32
38
  MaleoIdentityUserProfileSchemas.LeadingTitle,
33
- MaleoIdentityUserProfileSchemas.IdCard
34
- ): pass
35
-
36
- class CreateOrUpdateData(
37
- CreateOrUpdateBody,
39
+ MaleoIdentityUserProfileSchemas.OptionalIdCard,
38
40
  MaleoIdentityGeneralSchemas.UserId
39
41
  ): pass
40
42
 
41
43
  class Create(
44
+ AvatarData,
42
45
  CreateOrUpdateData,
43
46
  CreateOrUpdateQuery
44
47
  ): pass
45
48
 
46
49
  class Update(
50
+ AvatarData,
47
51
  CreateOrUpdateData,
48
52
  CreateOrUpdateQuery,
49
53
  BaseParameterSchemas.IdentifierValue,
@@ -1,13 +1,13 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: maleo-identity
3
- Version: 0.0.45
3
+ Version: 0.0.46
4
4
  Summary: MaleoIdentity service package
5
5
  Author-email: Agra Bima Yuda <agra@nexmedis.com>
6
6
  License: MIT
7
7
  Requires-Python: >=3.7
8
8
  Description-Content-Type: text/markdown
9
- Requires-Dist: maleo_foundation>=0.2.59
10
- Requires-Dist: maleo_metadata>=0.1.7
9
+ Requires-Dist: maleo_foundation>=0.2.67
10
+ Requires-Dist: maleo_metadata>=0.1.11
11
11
 
12
12
  # README #
13
13
 
@@ -15,7 +15,7 @@ maleo_identity/constants/organization_role.py,sha256=pUcxF2h5cH1j7JzObVKEp0l6Bz3
15
15
  maleo_identity/constants/user.py,sha256=y4E1yf41czM5nGyxindnA-RLrhy-mZ8-QOBPlQBiV3Y,912
16
16
  maleo_identity/constants/user_organization.py,sha256=HiGOdWo3ggjWLPZiiptqIanEGJC2gmZ_QNGxfN3-HwI,1417
17
17
  maleo_identity/constants/user_organization_role.py,sha256=MZhiOe7arS3ii9iqlMbRvqbKINSrIl0OaC8EhPGgOOE,1470
18
- maleo_identity/constants/user_profile.py,sha256=ua2Z-MOjQLDTxasDfgRwynu734LazvClKvuHi50gRSg,401
18
+ maleo_identity/constants/user_profile.py,sha256=vH4lqNzN3k8Fur10UR_PUHYT544eYtjE3ZN8SGs4KNs,734
19
19
  maleo_identity/constants/user_system_role.py,sha256=8rnHdeX2ULJS_vHQxCof-bfR5130O7nikSTbu_YGitk,844
20
20
  maleo_identity/enums/__init__.py,sha256=PjCbm3BlcSJcP4-HEc7sfH9W34Gd847s2fHHHgZ_hQ8,936
21
21
  maleo_identity/enums/general.py,sha256=y51uhyCw5a8csBznt96Meh37wORpJbkz8mzueg_aSms,121
@@ -24,7 +24,7 @@ maleo_identity/enums/organization_role.py,sha256=n3xiZ0_OZFGn3VnUeEyF4AlUB5bDhjW
24
24
  maleo_identity/enums/user.py,sha256=jQV22g9BHJB7rypJXJyTArURbtEfsI1z0ar7dElAC1Q,382
25
25
  maleo_identity/enums/user_organization.py,sha256=Gchi2yLeepvVZv40S6_KvwAoFnZ19u5LlMJQTDEfUrs,262
26
26
  maleo_identity/enums/user_organization_role.py,sha256=AYMm9Lcpd1vu1GWAqOPV6_dRgoc7Yp6EpzcExTQT0xU,266
27
- maleo_identity/enums/user_profile.py,sha256=8KJrEwC2dCdYOt10l6EBrgECxhmWgVxofY-3xAXwn48,251
27
+ maleo_identity/enums/user_profile.py,sha256=1QjZt2XROS4TEAgkegbMVInIm-oVh0PWcCIxV7PAoCc,371
28
28
  maleo_identity/enums/user_system_role.py,sha256=-DtZXhGKS6xmJZ6bTUqeM3g-pBxlID3-oil1rtwx6_0,316
29
29
  maleo_identity/models/__init__.py,sha256=M3mB_vDV3bVyW_nwMFkE_DPptHnfu4Q-RgJci2OD614,382
30
30
  maleo_identity/models/responses/__init__.py,sha256=DOZ7d5pYmpWwNWa-zBCsp8E_Loryu75ctpBYjPrV1Uo,913
@@ -42,7 +42,7 @@ maleo_identity/models/schemas/organization_role.py,sha256=bgX9ykpFNrDqz4-eFbj49m
42
42
  maleo_identity/models/schemas/user.py,sha256=qLTK_Iv5mSM3oCoD0oWyYCQvi-QDxhopr2KQ1yUSZWs,1617
43
43
  maleo_identity/models/schemas/user_organization.py,sha256=yg6-T5BGcfTKjX7w2zSBb-OWtxQunEhWLT2dJFmuhtE,443
44
44
  maleo_identity/models/schemas/user_organization_role.py,sha256=xedjuJ9P6vRtJimRTpP8ZA45oLaqFr8hokM77gN8QRU,781
45
- maleo_identity/models/schemas/user_profile.py,sha256=vieJKBtC5tw8qaPvg4g9RoIPg0AyND1Gt6i3ZzrQ7vY,1814
45
+ maleo_identity/models/schemas/user_profile.py,sha256=x2--vAMY9KRa2Nyy7k2o4oYMz5DRm67dev3K45A7DkU,2603
46
46
  maleo_identity/models/schemas/user_system_role.py,sha256=nhtfaZsNp4gn_i5VfWeHM38OaFa3MFwnDK7AhLXiFxY,436
47
47
  maleo_identity/models/tables/__init__.py,sha256=wTFyzZbktqfWIiCPI4ErJN9JK46C_Fec76v38ddkDDw,686
48
48
  maleo_identity/models/tables/organization.py,sha256=kgtxnQjznIH-l8cnN4hcY4wTehqMnKtF39Ev7AKU_tQ,1409
@@ -50,7 +50,7 @@ maleo_identity/models/tables/organization_role.py,sha256=ICybWmJy7Sv2iBP7dlDmHnM
50
50
  maleo_identity/models/tables/user.py,sha256=n74pdWgZJH9DgMuCB-WhNBLRB-0qjLJcjivsg-Cv3rA,1159
51
51
  maleo_identity/models/tables/user_organization.py,sha256=_Txa_TUsYKDb3bpi6FQ6h33uOKp44GR1XvICBji1Aig,548
52
52
  maleo_identity/models/tables/user_organization_role.py,sha256=-kfwoCnH_SaTPr-q3p7EfRZ5AYYyATnWBl7cNQ4K5bk,609
53
- maleo_identity/models/tables/user_profile.py,sha256=CpXlT5C-adK1cIalsDMkQVoVSH7Bk8HbLKQCkmyCoGs,1459
53
+ maleo_identity/models/tables/user_profile.py,sha256=niEzQW8w1jtoJSl0395Y4u5BJPPdRpxSkF1xisTp8mc,1538
54
54
  maleo_identity/models/tables/user_system_role.py,sha256=84QxmEGwdnbz1f0Y2jq8jO9AmcBW96ZxoNahudjG9QY,824
55
55
  maleo_identity/models/transfers/__init__.py,sha256=Ad-Z2MzjEA1pw2p2WR1QZeY99uX-bUUqUhlg9ARUY9Y,362
56
56
  maleo_identity/models/transfers/general/__init__.py,sha256=zEASfoPYDlb7PADXLFevD6KVb6ZxWgCDXhc_40IgRjo,738
@@ -59,7 +59,7 @@ maleo_identity/models/transfers/general/organization_role.py,sha256=kto9v1Eywewx
59
59
  maleo_identity/models/transfers/general/user.py,sha256=nvUH6mwWjlq8_WtU0vz0IDUXTeTT_sWvf3fjGtvTG5s,989
60
60
  maleo_identity/models/transfers/general/user_organization.py,sha256=4VXSyI5SnWIqRVMjS5KwvUEpQZsl5mUuE93hpwzy8eo,611
61
61
  maleo_identity/models/transfers/general/user_organization_role.py,sha256=NPC5p5cRH0WexkIXU7roADfrLW3LUR1LzM1EA9uQTG4,886
62
- maleo_identity/models/transfers/general/user_profile.py,sha256=yMmPIN1oDlDv8YH7Mg8NXkBjgb6TvJnl3W64xiXZXeM,1491
62
+ maleo_identity/models/transfers/general/user_profile.py,sha256=POAN_WSVj0tZo6h7WAimkU1WPclvrSsNTGVKutFOUUw,1594
63
63
  maleo_identity/models/transfers/general/user_system_role.py,sha256=kfPB8abHIUVlnS12H7JxkBXXnA6wkV1hjyQPopBWxkA,667
64
64
  maleo_identity/models/transfers/parameters/__init__.py,sha256=ysazhGlRoT9kY_L_grODkvceAGeuCwIDcG7EVywwcOc,416
65
65
  maleo_identity/models/transfers/parameters/client/__init__.py,sha256=j5WO_zsvrK3nkyJQdcPF8jhAZFCJ20bug17pkbKZ0C0,1153
@@ -73,10 +73,10 @@ maleo_identity/models/transfers/parameters/client/user_system_role.py,sha256=tfT
73
73
  maleo_identity/models/transfers/parameters/general/__init__.py,sha256=aELl7jS8n-T2FLiXt-KTP8xEdaF3Cju00fK84-_yp0o,1168
74
74
  maleo_identity/models/transfers/parameters/general/organization.py,sha256=XhHIl2apPLoXCip9sjq4izNzZjhz5CcnJKZVlYDtEpM,1352
75
75
  maleo_identity/models/transfers/parameters/general/organization_role.py,sha256=7uCJXwqswPZvO8qCCueZo89D8lnwKMY6YHVq-jEdZ10,732
76
- maleo_identity/models/transfers/parameters/general/user.py,sha256=50dtBBAH8O5RcaAVjoyAr1Nfr-2Gg0AT0uKbyNgJW5w,1489
76
+ maleo_identity/models/transfers/parameters/general/user.py,sha256=2nDUE6MhM_Kz6dptBWo8IjK7dTiWEc-42YES7JMWYVw,1489
77
77
  maleo_identity/models/transfers/parameters/general/user_organization.py,sha256=81MjqzzHYUwo4UnoD2l_zpi8JB0hkN9Jo282LkfZCq0,1015
78
78
  maleo_identity/models/transfers/parameters/general/user_organization_role.py,sha256=SmlVIvRG-cFzNc0p2Fush5-sHvrUD6ABNbKVCb5w2zE,801
79
- maleo_identity/models/transfers/parameters/general/user_profile.py,sha256=QVkJMONJtnv6SVOmCe3sAohTk0SlK5VlxWsUdBhEikk,1956
79
+ maleo_identity/models/transfers/parameters/general/user_profile.py,sha256=IXczeZU3SwfxgUv6BaWPM_pmOYRCNTVEwr8DrbTotaM,2151
80
80
  maleo_identity/models/transfers/parameters/general/user_system_role.py,sha256=y3Mfrtiijjxug8LVhW1OVlegIhFkQxxjuSfkfkkM8eM,1189
81
81
  maleo_identity/models/transfers/parameters/service/__init__.py,sha256=Qm31XrFfO60_XLAxOB3g2n56MCsYsD15eOekj9HJ_tE,1168
82
82
  maleo_identity/models/transfers/parameters/service/organization.py,sha256=iEnTzACq2wCjukom3gWEwUCTsv4ApRCa7gPsff-BsWE,3137
@@ -137,7 +137,7 @@ maleo_identity/types/results/repository/user_organization.py,sha256=EFzYD28CCmQt
137
137
  maleo_identity/types/results/repository/user_organization_role.py,sha256=7SVvBMnrDnv9EFIceQmKJFisgjHqy7uN3ISyZy-QEOY,755
138
138
  maleo_identity/types/results/repository/user_profile.py,sha256=oyfExKaH6f5vyRdpNLOHQ9SJ5ILDfh2lQ_9m7QmsP3I,843
139
139
  maleo_identity/types/results/repository/user_system_role.py,sha256=6Qd9fetNARZVUiHR7BSKEZlRiHqG_XvvtApNv_OdaGE,869
140
- maleo_identity-0.0.45.dist-info/METADATA,sha256=WYi794aRlsZB4wTBpFxJTjAZaSplYlm6Qspu1KsQ2kY,867
141
- maleo_identity-0.0.45.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
142
- maleo_identity-0.0.45.dist-info/top_level.txt,sha256=mQENoRr7CBU3vx2PxHXywCHdfBm3AIzVx75IaEsArYE,15
143
- maleo_identity-0.0.45.dist-info/RECORD,,
140
+ maleo_identity-0.0.46.dist-info/METADATA,sha256=-F1pbgLAxdYCTWrjDSC5HUk4iwPxMl8E2ZTEpvmLcbA,868
141
+ maleo_identity-0.0.46.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
142
+ maleo_identity-0.0.46.dist-info/top_level.txt,sha256=mQENoRr7CBU3vx2PxHXywCHdfBm3AIzVx75IaEsArYE,15
143
+ maleo_identity-0.0.46.dist-info/RECORD,,