cuenca-validations 2.0.3.dev1__tar.gz → 2.0.4__tar.gz

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.
Files changed (34) hide show
  1. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/PKG-INFO +1 -1
  2. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/files.py +3 -2
  3. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/general.py +5 -1
  4. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/requests.py +8 -10
  5. cuenca_validations-2.0.4/cuenca_validations/version.py +1 -0
  6. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations.egg-info/PKG-INFO +1 -1
  7. cuenca_validations-2.0.3.dev1/cuenca_validations/version.py +0 -1
  8. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/LICENSE +0 -0
  9. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/README.md +0 -0
  10. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/__init__.py +0 -0
  11. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/card_bins.py +0 -0
  12. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/errors.py +0 -0
  13. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/py.typed +0 -0
  14. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/__init__.py +0 -0
  15. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/card.py +0 -0
  16. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/enums.py +0 -0
  17. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/helpers.py +0 -0
  18. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/identities.py +0 -0
  19. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/morals.py +0 -0
  20. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/types/queries.py +0 -0
  21. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/typing.py +0 -0
  22. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations/validators.py +0 -0
  23. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations.egg-info/SOURCES.txt +0 -0
  24. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations.egg-info/dependency_links.txt +0 -0
  25. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations.egg-info/requires.txt +0 -0
  26. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/cuenca_validations.egg-info/top_level.txt +0 -0
  27. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/setup.cfg +0 -0
  28. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/setup.py +0 -0
  29. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/__init__.py +0 -0
  30. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/test_card.py +0 -0
  31. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/test_errors.py +0 -0
  32. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/test_helpers.py +0 -0
  33. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/test_statement.py +0 -0
  34. {cuenca_validations-2.0.3.dev1 → cuenca_validations-2.0.4}/tests/test_types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca_validations
3
- Version: 2.0.3.dev1
3
+ Version: 2.0.4
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -1,12 +1,13 @@
1
1
  from typing import Optional
2
2
 
3
- from pydantic import BaseModel, HttpUrl
3
+ from pydantic import BaseModel
4
4
 
5
5
  from .enums import KYCFileType
6
+ from .general import SerializableHttpUrl
6
7
 
7
8
 
8
9
  class BatchFileMetadata(BaseModel):
9
10
  id: Optional[str] = None
10
11
  is_back: bool
11
12
  type: KYCFileType
12
- url: HttpUrl
13
+ url: SerializableHttpUrl
@@ -1,11 +1,15 @@
1
1
  import json
2
2
  from typing import Annotated, Any, Optional
3
3
 
4
- from pydantic import Field, StringConstraints
4
+ from pydantic import AnyUrl, Field, HttpUrl, PlainSerializer, StringConstraints
5
5
 
6
6
  from ..validators import sanitize_dict, sanitize_item
7
7
  from .enums import State
8
8
 
9
+ SerializableHttpUrl = Annotated[HttpUrl, PlainSerializer(str, return_type=str)]
10
+
11
+ SerializableAnyUrl = Annotated[AnyUrl, PlainSerializer(str, return_type=str)]
12
+
9
13
 
10
14
  class SantizedDict(dict):
11
15
  def __init__(self, *args, **kwargs):
@@ -3,12 +3,10 @@ from typing import Annotated, Optional, Union
3
3
 
4
4
  from clabe import Clabe
5
5
  from pydantic import (
6
- AnyUrl,
7
6
  BaseModel,
8
7
  ConfigDict,
9
8
  EmailStr,
10
9
  Field,
11
- HttpUrl,
12
10
  StrictStr,
13
11
  StringConstraints,
14
12
  field_validator,
@@ -56,7 +54,7 @@ from .card import (
56
54
  PaymentCardNumber,
57
55
  StrictPaymentCardNumber,
58
56
  )
59
- from .general import StrictPositiveInt
57
+ from .general import SerializableAnyUrl, SerializableHttpUrl, StrictPositiveInt
60
58
  from .identities import (
61
59
  Address,
62
60
  Beneficiary,
@@ -479,7 +477,7 @@ class UserUpdateRequest(BaseModel):
479
477
  status: Optional[UserStatus] = None
480
478
  terms_of_service: Optional[TOSRequest] = None
481
479
  platform_terms_of_service: Optional[TOSAgreement] = None
482
- curp_document_uri: Optional[HttpUrl] = None
480
+ curp_document_uri: Optional[SerializableHttpUrl] = None
483
481
 
484
482
  @field_validator('beneficiaries')
485
483
  @classmethod
@@ -492,7 +490,7 @@ class UserUpdateRequest(BaseModel):
492
490
 
493
491
 
494
492
  class UserLoginRequest(BaseRequest):
495
- password: Password
493
+ password: str # Set password field to str for backward compatibility.
496
494
  user_id: Optional[str] = Field(None, description='Deprecated field')
497
495
  model_config = ConfigDict(
498
496
  json_schema_extra={'example': {'password': 'supersecret'}},
@@ -502,8 +500,8 @@ class UserLoginRequest(BaseRequest):
502
500
  class SessionRequest(BaseRequest):
503
501
  user_id: str
504
502
  type: SessionType
505
- success_url: Optional[AnyUrl] = None
506
- failure_url: Optional[AnyUrl] = None
503
+ success_url: Optional[SerializableAnyUrl] = None
504
+ failure_url: Optional[SerializableAnyUrl] = None
507
505
  model_config = ConfigDict(
508
506
  json_schema_extra={
509
507
  'example': {
@@ -517,13 +515,13 @@ class SessionRequest(BaseRequest):
517
515
 
518
516
 
519
517
  class EndpointRequest(BaseRequest):
520
- url: HttpUrl
518
+ url: SerializableHttpUrl
521
519
  events: Optional[list[WebhookEvent]] = None
522
520
  user_id: Optional[str] = None
523
521
 
524
522
 
525
523
  class EndpointUpdateRequest(BaseRequest):
526
- url: Optional[HttpUrl] = None
524
+ url: Optional[SerializableHttpUrl] = None
527
525
  is_enable: Optional[bool] = None
528
526
  events: Optional[list[WebhookEvent]] = None
529
527
 
@@ -538,7 +536,7 @@ class FileUploadRequest(BaseRequest):
538
536
 
539
537
  class FileRequest(BaseModel):
540
538
  is_back: Optional[bool] = False
541
- url: HttpUrl
539
+ url: SerializableHttpUrl
542
540
  type: KYCFileType
543
541
 
544
542
 
@@ -0,0 +1 @@
1
+ __version__ = '2.0.4'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: cuenca_validations
3
- Version: 2.0.3.dev1
3
+ Version: 2.0.4
4
4
  Summary: Cuenca common validations
5
5
  Home-page: https://github.com/cuenca-mx/cuenca-validations
6
6
  Author: Cuenca
@@ -1 +0,0 @@
1
- __version__ = '2.0.3.dev1'