brdocs-validation 0.3.0__py3-none-any.whl → 0.4.0__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.
- br_docs/__init__.py +2 -0
- br_docs/validators/sei.py +17 -0
- {brdocs_validation-0.3.0.dist-info → brdocs_validation-0.4.0.dist-info}/METADATA +5 -2
- {brdocs_validation-0.3.0.dist-info → brdocs_validation-0.4.0.dist-info}/RECORD +7 -6
- {brdocs_validation-0.3.0.dist-info → brdocs_validation-0.4.0.dist-info}/WHEEL +1 -1
- {brdocs_validation-0.3.0.dist-info → brdocs_validation-0.4.0.dist-info}/LICENSE.txt +0 -0
- {brdocs_validation-0.3.0.dist-info → brdocs_validation-0.4.0.dist-info}/top_level.txt +0 -0
br_docs/__init__.py
CHANGED
|
@@ -9,6 +9,7 @@ from br_docs.validators.cpf import CPFv
|
|
|
9
9
|
from br_docs.validators.nis import NISv
|
|
10
10
|
from br_docs.validators.renavam import RENAVAMv
|
|
11
11
|
from br_docs.validators.te import TEv
|
|
12
|
+
from br_docs.validators.sei import SEIv
|
|
12
13
|
|
|
13
14
|
|
|
14
15
|
CPF = Annotated[str, AfterValidator(CPFv())]
|
|
@@ -19,3 +20,4 @@ CNS = Annotated[str, AfterValidator(CNSv())]
|
|
|
19
20
|
RENAVAM = Annotated[str, AfterValidator(RENAVAMv())]
|
|
20
21
|
TE = Annotated[str, AfterValidator(TEv())]
|
|
21
22
|
CERT = Annotated[str, AfterValidator(CERTv())]
|
|
23
|
+
SEI = Annotated[str, AfterValidator(SEIv())]
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import re
|
|
2
|
+
|
|
3
|
+
from pydantic_core import PydanticCustomError
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
class SEIv:
|
|
7
|
+
Patterns = re.compile(r'^\d{5}-?\d{8}/?\d{4}-?\d{2}$')
|
|
8
|
+
|
|
9
|
+
def __call__(self, value: str) -> str:
|
|
10
|
+
self.validate(value)
|
|
11
|
+
return value
|
|
12
|
+
|
|
13
|
+
def validate(self, value: str) -> str:
|
|
14
|
+
check_format = bool(self.Patterns.match(value))
|
|
15
|
+
if check_format is not True:
|
|
16
|
+
raise PydanticCustomError('invalid', 'Invalid Value')
|
|
17
|
+
return value
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: brdocs-validation
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.4.0
|
|
4
4
|
Summary: Validate brazilian documents using Type Hints in classes inheriting Pydantic's (V2) BaseModel
|
|
5
5
|
Author-email: Vinícius Aguiar <vaguiararqdevsoftware@proton.me>
|
|
6
6
|
Maintainer-email: Vinícius Aguiar <vaguiararqdevsoftware@proton.me>
|
|
@@ -54,10 +54,12 @@ pip install brdocs-validation
|
|
|
54
54
|
| RENAVAM | | Only numbers | Length: _9, 10 & 11_ |
|
|
55
55
|
| TE | Título de eleitor | Only numbers | |
|
|
56
56
|
| CERT | Certidão de casamento, nascimento e óbito | Only numbers | |
|
|
57
|
+
| SEI | Número do Processo SEI | 12345-67890123/4567-89 OR without special chars | |
|
|
58
|
+
|
|
57
59
|
## Usage
|
|
58
60
|
|
|
59
61
|
```python
|
|
60
|
-
from br_docs import CNPJ, CPF, CNH, NIS, CNS, RENAVAM, TE, CERT
|
|
62
|
+
from br_docs import CNPJ, CPF, CNH, NIS, CNS, RENAVAM, TE, CERT, SEI
|
|
61
63
|
from pydantic import BaseModel
|
|
62
64
|
|
|
63
65
|
|
|
@@ -70,4 +72,5 @@ class User(BaseModel):
|
|
|
70
72
|
renavam: RENAVAM
|
|
71
73
|
te: TE
|
|
72
74
|
cert: CERT
|
|
75
|
+
sei: SEI
|
|
73
76
|
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
br_docs/__init__.py,sha256=
|
|
1
|
+
br_docs/__init__.py,sha256=YrOKIcR1Ie1C-fQw6MlWFklx7WHcuQ93Qid-rNMDKPE,886
|
|
2
2
|
br_docs/validators/__init__.py,sha256=7DeKn9Uq2znYN-P2yAVRkqwGY-Bvh8GIEjbpCMe9sRQ,1021
|
|
3
3
|
br_docs/validators/cert.py,sha256=KpRxqavETcpSPVJbIWz7gfs-KjjnsuvmtZcV6mmAcI4,962
|
|
4
4
|
br_docs/validators/cnh.py,sha256=3rjcusDdCdUD_id_oIWcMtM0biATDu_yYkuaq_NVSEg,1119
|
|
@@ -7,11 +7,12 @@ br_docs/validators/cns.py,sha256=sDiZEeoUZ2yo9J-3opE2ZjOTVO9eTCBlPBhRBlfuGcE,114
|
|
|
7
7
|
br_docs/validators/cpf.py,sha256=a9oxE3Su-RYpGKMAzO4SUD4kddm8qkbbhSVKFEhkOog,611
|
|
8
8
|
br_docs/validators/nis.py,sha256=47wi0sLjsr9aDdxVuVfSMRtQfV9AnW32tm2j5hRjiO0,661
|
|
9
9
|
br_docs/validators/renavam.py,sha256=IeJimMmERHGZ1b3Tjo731ThZzNR7dA1NeZA97r3CqOo,738
|
|
10
|
+
br_docs/validators/sei.py,sha256=WHy3exmb-5tlZuNmMxkTzyMHBOhUrm6uyj6nyozhXv4,448
|
|
10
11
|
br_docs/validators/te.py,sha256=KuGwM9pVydP1QKeKd6t57Ay4IG6augY11qIRwjLgDVo,1153
|
|
11
12
|
br_docs/validators/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
12
13
|
br_docs/validators/types/format.py,sha256=hj4f3KjW7mAz7l1F6pXby4_BahGNGdaIbNbmsQxrXTI,421
|
|
13
|
-
brdocs_validation-0.
|
|
14
|
-
brdocs_validation-0.
|
|
15
|
-
brdocs_validation-0.
|
|
16
|
-
brdocs_validation-0.
|
|
17
|
-
brdocs_validation-0.
|
|
14
|
+
brdocs_validation-0.4.0.dist-info/LICENSE.txt,sha256=FdwJdtrJG9B1E0C3y6BG6QhRznIfFLzPXdUzclDkZYs,1073
|
|
15
|
+
brdocs_validation-0.4.0.dist-info/METADATA,sha256=wBGHyOVXTBFMIr7HmSSSm30JY7PJdv-UEwQBL8Wo0nc,3828
|
|
16
|
+
brdocs_validation-0.4.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
17
|
+
brdocs_validation-0.4.0.dist-info/top_level.txt,sha256=COjwP4hy4qNtPXnPVmsgWBi_-2Byyw_0gmjorp3UnRA,8
|
|
18
|
+
brdocs_validation-0.4.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|