diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
new file mode 100644
index 0000000..bc25558
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/config.yml
@@ -0,0 +1,5 @@
+blank_issues_enabled: false
+contact_links:
+ - name: Submit a request
+ url: https://support.regulaforensics.com/hc/requests/new?utm_source=github
+ about: Submit any requests to Regula Support Team
diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES
index 16fa86d..7aa8e86 100755
--- a/.openapi-generator/FILES
+++ b/.openapi-generator/FILES
@@ -4,6 +4,7 @@ regula/documentreader/webclient/gen/__init__.py
regula/documentreader/webclient/gen/api/__init__.py
regula/documentreader/webclient/gen/api/healthcheck_api.py
regula/documentreader/webclient/gen/api/process_api.py
+regula/documentreader/webclient/gen/api/resources_api.py
regula/documentreader/webclient/gen/api/transaction_api.py
regula/documentreader/webclient/gen/api_client.py
regula/documentreader/webclient/gen/api_response.py
@@ -21,10 +22,15 @@ regula/documentreader/webclient/gen/models/authenticity_check_result_list_inner.
regula/documentreader/webclient/gen/models/authenticity_result.py
regula/documentreader/webclient/gen/models/authenticity_result_type.py
regula/documentreader/webclient/gen/models/bar_code_module_type.py
+regula/documentreader/webclient/gen/models/barcode_position_item.py
+regula/documentreader/webclient/gen/models/barcode_position_result.py
regula/documentreader/webclient/gen/models/barcode_type.py
regula/documentreader/webclient/gen/models/bc_pdf417_info.py
regula/documentreader/webclient/gen/models/bc_roidetect.py
regula/documentreader/webclient/gen/models/binary_data.py
+regula/documentreader/webclient/gen/models/bsi_tr03135.py
+regula/documentreader/webclient/gen/models/bsiv2_item.py
+regula/documentreader/webclient/gen/models/bsiv2_result.py
regula/documentreader/webclient/gen/models/byte_array_item.py
regula/documentreader/webclient/gen/models/byte_array_result.py
regula/documentreader/webclient/gen/models/candidates_list_item.py
@@ -38,6 +44,9 @@ regula/documentreader/webclient/gen/models/container_list_list_inner.py
regula/documentreader/webclient/gen/models/critical.py
regula/documentreader/webclient/gen/models/cross_source_value_comparison.py
regula/documentreader/webclient/gen/models/data_module.py
+regula/documentreader/webclient/gen/models/database_document.py
+regula/documentreader/webclient/gen/models/database_document_list.py
+regula/documentreader/webclient/gen/models/details_age.py
regula/documentreader/webclient/gen/models/details_optical.py
regula/documentreader/webclient/gen/models/details_rfid.py
regula/documentreader/webclient/gen/models/device_info.py
@@ -45,6 +54,7 @@ regula/documentreader/webclient/gen/models/device_info_documents_database.py
regula/documentreader/webclient/gen/models/doc_bar_code_info.py
regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py
regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py
+regula/documentreader/webclient/gen/models/doc_feature.py
regula/documentreader/webclient/gen/models/doc_graphics_info_item.py
regula/documentreader/webclient/gen/models/doc_visual_extended_field.py
regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py
@@ -78,6 +88,7 @@ regula/documentreader/webclient/gen/models/fiber_result.py
regula/documentreader/webclient/gen/models/field_item.py
regula/documentreader/webclient/gen/models/file_image.py
regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py
+regula/documentreader/webclient/gen/models/glares_check_params.py
regula/documentreader/webclient/gen/models/graph_data.py
regula/documentreader/webclient/gen/models/graphic_field.py
regula/documentreader/webclient/gen/models/graphic_field_type.py
@@ -116,7 +127,13 @@ regula/documentreader/webclient/gen/models/list_verified_fields.py
regula/documentreader/webclient/gen/models/list_verified_fields_item.py
regula/documentreader/webclient/gen/models/liveness_params.py
regula/documentreader/webclient/gen/models/log_level.py
+regula/documentreader/webclient/gen/models/mdl_device_engagement.py
+regula/documentreader/webclient/gen/models/mdl_device_retrieval.py
+regula/documentreader/webclient/gen/models/mdl_item.py
+regula/documentreader/webclient/gen/models/mdl_result.py
+regula/documentreader/webclient/gen/models/mdl_server_retrieval.py
regula/documentreader/webclient/gen/models/measure_system.py
+regula/documentreader/webclient/gen/models/message.py
regula/documentreader/webclient/gen/models/mrz_detect_mode_enum.py
regula/documentreader/webclient/gen/models/mrz_detector_result.py
regula/documentreader/webclient/gen/models/mrz_format.py
@@ -140,6 +157,7 @@ regula/documentreader/webclient/gen/models/parsing_notification_codes.py
regula/documentreader/webclient/gen/models/per_document_config.py
regula/documentreader/webclient/gen/models/photo_ident_item.py
regula/documentreader/webclient/gen/models/photo_ident_result.py
+regula/documentreader/webclient/gen/models/pid.py
regula/documentreader/webclient/gen/models/point.py
regula/documentreader/webclient/gen/models/point_array.py
regula/documentreader/webclient/gen/models/points_container.py
@@ -150,6 +168,7 @@ regula/documentreader/webclient/gen/models/process_request_image.py
regula/documentreader/webclient/gen/models/process_response.py
regula/documentreader/webclient/gen/models/process_system_info.py
regula/documentreader/webclient/gen/models/processing_status.py
+regula/documentreader/webclient/gen/models/properties_params.py
regula/documentreader/webclient/gen/models/raw_image_container_item.py
regula/documentreader/webclient/gen/models/raw_image_container_list.py
regula/documentreader/webclient/gen/models/rectangle_coordinates.py
@@ -173,7 +192,6 @@ regula/documentreader/webclient/gen/models/rfid_certificate_origin.py
regula/documentreader/webclient/gen/models/rfid_certificate_type.py
regula/documentreader/webclient/gen/models/rfid_data_file.py
regula/documentreader/webclient/gen/models/rfid_data_file_type.py
-regula/documentreader/webclient/gen/models/rfid_data_group_type_tag.py
regula/documentreader/webclient/gen/models/rfid_dg1.py
regula/documentreader/webclient/gen/models/rfid_distinguished_name.py
regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py
@@ -232,6 +250,14 @@ regula/documentreader/webclient/gen/models/transaction_process_request.py
regula/documentreader/webclient/gen/models/transaction_process_result.py
regula/documentreader/webclient/gen/models/trf_ft_bytes.py
regula/documentreader/webclient/gen/models/trf_ft_string.py
+regula/documentreader/webclient/gen/models/vd_item.py
+regula/documentreader/webclient/gen/models/vds_data.py
+regula/documentreader/webclient/gen/models/vds_data_item.py
+regula/documentreader/webclient/gen/models/vds_data_result.py
+regula/documentreader/webclient/gen/models/vdsnc_data.py
+regula/documentreader/webclient/gen/models/vdsnc_data_item.py
+regula/documentreader/webclient/gen/models/vdsnc_data_result.py
+regula/documentreader/webclient/gen/models/ve_item.py
regula/documentreader/webclient/gen/models/verification_result.py
regula/documentreader/webclient/gen/models/verified_field_map.py
regula/documentreader/webclient/gen/models/visibility.py
diff --git a/.openapi-generator/VERSION b/.openapi-generator/VERSION
index eb1dc6a..368fd8f 100755
--- a/.openapi-generator/VERSION
+++ b/.openapi-generator/VERSION
@@ -1 +1 @@
-7.13.0
+7.15.0
diff --git a/Pipfile b/Pipfile
index 7e5eaa5..daf5904 100755
--- a/Pipfile
+++ b/Pipfile
@@ -7,12 +7,13 @@ name = "pypi"
certifi = ">=2024.07.04"
six = ">=1.10"
python-dateutil = ">=2.8.2"
-urllib3 = ">=2.5.0, <3.0.0"
+urllib3 = ">=2.6.3, <3.0.0"
vistir = ">=0.4.0, <=0.6.1"
idna = "==3.7"
-requests = ">=2.32.4"
+requests = ">=2.33.0"
pydantic = ">=2"
typing-extensions = ">=4.7.1"
+lazy-imports = "==1.0.1"
[dev-packages]
wheel = "*"
@@ -24,4 +25,4 @@ mypy = ">=1.5"
setuptools = "==78.1.1"
[requires]
-python_version = "3.9"
+python_version = "3.10"
diff --git a/Pipfile.lock b/Pipfile.lock
index 678eb8f..7c2e098 100644
--- a/Pipfile.lock
+++ b/Pipfile.lock
@@ -1,11 +1,11 @@
{
"_meta": {
"hash": {
- "sha256": "b8e94a46b2f9a7e7843c4f028edcce9c52f53e1568585b929aa8ec5adca42d47"
+ "sha256": "9694ad9ef82c0a0c0a8608aaa5dafc9bfaa6d3d24df12bb65f9131b21fb79bf1"
},
"pipfile-spec": 6,
"requires": {
- "python_version": "3.9"
+ "python_version": "3.10"
},
"sources": [
{
@@ -26,110 +26,147 @@
},
"certifi": {
"hashes": [
- "sha256:2e0c7ce7cb5d8f8634ca55d2ba7e6ec2689a2fd6537d8dec1296a477a4910057",
- "sha256:d747aa5a8b9bbbb1bb8c22bb13e22bd1f18e9796defa16bab421f7f7a317323b"
+ "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa",
+ "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7"
],
"index": "pypi",
"markers": "python_version >= '3.7'",
- "version": "==2025.6.15"
+ "version": "==2026.2.25"
},
"charset-normalizer": {
"hashes": [
- "sha256:005fa3432484527f9732ebd315da8da8001593e2cf46a3d817669f062c3d9ed4",
- "sha256:046595208aae0120559a67693ecc65dd75d46f7bf687f159127046628178dc45",
- "sha256:0c29de6a1a95f24b9a1aa7aefd27d2487263f00dfd55a77719b530788f75cff7",
- "sha256:0c8c57f84ccfc871a48a47321cfa49ae1df56cd1d965a09abe84066f6853b9c0",
- "sha256:0f5d9ed7f254402c9e7d35d2f5972c9bbea9040e99cd2861bd77dc68263277c7",
- "sha256:18dd2e350387c87dabe711b86f83c9c78af772c748904d372ade190b5c7c9d4d",
- "sha256:1b1bde144d98e446b056ef98e59c256e9294f6b74d7af6846bf5ffdafd687a7d",
- "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0",
- "sha256:1cad5f45b3146325bb38d6855642f6fd609c3f7cad4dbaf75549bf3b904d3184",
- "sha256:21b2899062867b0e1fde9b724f8aecb1af14f2778d69aacd1a5a1853a597a5db",
- "sha256:24498ba8ed6c2e0b56d4acbf83f2d989720a93b41d712ebd4f4979660db4417b",
- "sha256:25a23ea5c7edc53e0f29bae2c44fcb5a1aa10591aae107f2a2b2583a9c5cbc64",
- "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b",
- "sha256:28a1005facc94196e1fb3e82a3d442a9d9110b8434fc1ded7a24a2983c9888d8",
- "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff",
- "sha256:36b31da18b8890a76ec181c3cf44326bf2c48e36d393ca1b72b3f484113ea344",
- "sha256:3c21d4fca343c805a52c0c78edc01e3477f6dd1ad7c47653241cf2a206d4fc58",
- "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e",
- "sha256:43e0933a0eff183ee85833f341ec567c0980dae57c464d8a508e1b2ceb336471",
- "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148",
- "sha256:4e594135de17ab3866138f496755f302b72157d115086d100c3f19370839dd3a",
- "sha256:50bf98d5e563b83cc29471fa114366e6806bc06bc7a25fd59641e41445327836",
- "sha256:5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e",
- "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63",
- "sha256:5bf4545e3b962767e5c06fe1738f951f77d27967cb2caa64c28be7c4563e162c",
- "sha256:6333b3aa5a12c26b2a4d4e7335a28f1475e0e5e17d69d55141ee3cab736f66d1",
- "sha256:65c981bdbd3f57670af8b59777cbfae75364b483fa8a9f420f08094531d54a01",
- "sha256:68a328e5f55ec37c57f19ebb1fdc56a248db2e3e9ad769919a58672958e8f366",
- "sha256:6a0289e4589e8bdfef02a80478f1dfcb14f0ab696b5a00e1f4b8a14a307a3c58",
- "sha256:6b66f92b17849b85cad91259efc341dce9c1af48e2173bf38a85c6329f1033e5",
- "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c",
- "sha256:6fc1f5b51fa4cecaa18f2bd7a003f3dd039dd615cd69a2afd6d3b19aed6775f2",
- "sha256:70f7172939fdf8790425ba31915bfbe8335030f05b9913d7ae00a87d4395620a",
- "sha256:721c76e84fe669be19c5791da68232ca2e05ba5185575086e384352e2c309597",
- "sha256:7222ffd5e4de8e57e03ce2cef95a4c43c98fcb72ad86909abdfc2c17d227fc1b",
- "sha256:75d10d37a47afee94919c4fab4c22b9bc2a8bf7d4f46f87363bcf0573f3ff4f5",
- "sha256:76af085e67e56c8816c3ccf256ebd136def2ed9654525348cfa744b6802b69eb",
- "sha256:770cab594ecf99ae64c236bc9ee3439c3f46be49796e265ce0cc8bc17b10294f",
- "sha256:7a6ab32f7210554a96cd9e33abe3ddd86732beeafc7a28e9955cdf22ffadbab0",
- "sha256:7c48ed483eb946e6c04ccbe02c6b4d1d48e51944b6db70f697e089c193404941",
- "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0",
- "sha256:8075c35cd58273fee266c58c0c9b670947c19df5fb98e7b66710e04ad4e9ff86",
- "sha256:8272b73e1c5603666618805fe821edba66892e2870058c94c53147602eab29c7",
- "sha256:82d8fd25b7f4675d0c47cf95b594d4e7b158aca33b76aa63d07186e13c0e0ab7",
- "sha256:844da2b5728b5ce0e32d863af26f32b5ce61bc4273a9c720a9f3aa9df73b1455",
- "sha256:8755483f3c00d6c9a77f490c17e6ab0c8729e39e6390328e42521ef175380ae6",
- "sha256:915f3849a011c1f593ab99092f3cecfcb4d65d8feb4a64cf1bf2d22074dc0ec4",
- "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0",
- "sha256:982bb1e8b4ffda883b3d0a521e23abcd6fd17418f6d2c4118d257a10199c0ce3",
- "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1",
- "sha256:9cbfacf36cb0ec2897ce0ebc5d08ca44213af24265bd56eca54bee7923c48fd6",
- "sha256:a370b3e078e418187da8c3674eddb9d983ec09445c99a3a263c2011993522981",
- "sha256:a955b438e62efdf7e0b7b52a64dc5c3396e2634baa62471768a64bc2adb73d5c",
- "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980",
- "sha256:aa88ca0b1932e93f2d961bf3addbb2db902198dca337d88c89e1559e066e7645",
- "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7",
- "sha256:aaf27faa992bfee0264dc1f03f4c75e9fcdda66a519db6b957a3f826e285cf12",
- "sha256:b2680962a4848b3c4f155dc2ee64505a9c57186d0d56b43123b17ca3de18f0fa",
- "sha256:b2d318c11350e10662026ad0eb71bb51c7812fc8590825304ae0bdd4ac283acd",
- "sha256:b33de11b92e9f75a2b545d6e9b6f37e398d86c3e9e9653c4864eb7e89c5773ef",
- "sha256:b3daeac64d5b371dea99714f08ffc2c208522ec6b06fbc7866a450dd446f5c0f",
- "sha256:be1e352acbe3c78727a16a455126d9ff83ea2dfdcbc83148d2982305a04714c2",
- "sha256:bee093bf902e1d8fc0ac143c88902c3dfc8941f7ea1d6a8dd2bcb786d33db03d",
- "sha256:c72fbbe68c6f32f251bdc08b8611c7b3060612236e960ef848e0a517ddbe76c5",
- "sha256:c9e36a97bee9b86ef9a1cf7bb96747eb7a15c2f22bdb5b516434b00f2a599f02",
- "sha256:cddf7bd982eaa998934a91f69d182aec997c6c468898efe6679af88283b498d3",
- "sha256:cf713fe9a71ef6fd5adf7a79670135081cd4431c2943864757f0fa3a65b1fafd",
- "sha256:d11b54acf878eef558599658b0ffca78138c8c3655cf4f3a4a673c437e67732e",
- "sha256:d41c4d287cfc69060fa91cae9683eacffad989f1a10811995fa309df656ec214",
- "sha256:d524ba3f1581b35c03cb42beebab4a13e6cdad7b36246bd22541fa585a56cccd",
- "sha256:daac4765328a919a805fa5e2720f3e94767abd632ae410a9062dff5412bae65a",
- "sha256:db4c7bf0e07fc3b7d89ac2a5880a6a8062056801b83ff56d8464b70f65482b6c",
- "sha256:dc7039885fa1baf9be153a0626e337aa7ec8bf96b0128605fb0d77788ddc1681",
- "sha256:dccab8d5fa1ef9bfba0590ecf4d46df048d18ffe3eec01eeb73a42e0d9e7a8ba",
- "sha256:dedb8adb91d11846ee08bec4c8236c8549ac721c245678282dcb06b221aab59f",
- "sha256:e45ba65510e2647721e35323d6ef54c7974959f6081b58d4ef5d87c60c84919a",
- "sha256:e53efc7c7cee4c1e70661e2e112ca46a575f90ed9ae3fef200f2a25e954f4b28",
- "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691",
- "sha256:e70e990b2137b29dc5564715de1e12701815dacc1d056308e2b17e9095372a82",
- "sha256:e8082b26888e2f8b36a042a58307d5b917ef2b1cacab921ad3323ef91901c71a",
- "sha256:e8323a9b031aa0393768b87f04b4164a40037fb2a3c11ac06a03ffecd3618027",
- "sha256:e92fca20c46e9f5e1bb485887d074918b13543b1c2a1185e69bb8d17ab6236a7",
- "sha256:eb30abc20df9ab0814b5a2524f23d75dcf83cde762c161917a2b4b7b55b1e518",
- "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf",
- "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b",
- "sha256:efd387a49825780ff861998cd959767800d54f8308936b21025326de4b5a42b9",
- "sha256:f0aa37f3c979cf2546b73e8222bbfa3dc07a641585340179d768068e3455e544",
- "sha256:f4074c5a429281bf056ddd4c5d3b740ebca4d43ffffe2ef4bf4d2d05114299da",
- "sha256:f69a27e45c43520f5487f27627059b64aaf160415589230992cec34c5e18a509",
- "sha256:fb707f3e15060adf5b7ada797624a6c6e0138e2a26baa089df64c68ee98e040f",
- "sha256:fcbe676a55d7445b22c10967bceaaf0ee69407fbe0ece4d032b6eb8d4565982a",
- "sha256:fdb20a30fe1175ecabed17cbf7812f7b804b8a315a25f24678bcdf120a90077f"
+ "sha256:06a7e86163334edfc5d20fe104db92fcd666e5a5df0977cb5680a506fe26cc8e",
+ "sha256:0c173ce3a681f309f31b87125fecec7a5d1347261ea11ebbb856fa6006b23c8c",
+ "sha256:0e28d62a8fc7a1fa411c43bd65e346f3bce9716dc51b897fbe930c5987b402d5",
+ "sha256:0e901eb1049fdb80f5bd11ed5ea1e498ec423102f7a9b9e4645d5b8204ff2815",
+ "sha256:11afb56037cbc4b1555a34dd69151e8e069bee82e613a73bef6e714ce733585f",
+ "sha256:150b8ce8e830eb7ccb029ec9ca36022f756986aaaa7956aad6d9ec90089338c0",
+ "sha256:172985e4ff804a7ad08eebec0a1640ece87ba5041d565fff23c8f99c1f389484",
+ "sha256:197c1a244a274bb016dd8b79204850144ef77fe81c5b797dc389327adb552407",
+ "sha256:1ae6b62897110aa7c79ea2f5dd38d1abca6db663687c0b1ad9aed6f6bae3d9d6",
+ "sha256:1cf0a70018692f85172348fe06d3a4b63f94ecb055e13a00c644d368eb82e5b8",
+ "sha256:1ed80ff870ca6de33f4d953fda4d55654b9a2b340ff39ab32fa3adbcd718f264",
+ "sha256:22c6f0c2fbc31e76c3b8a86fba1a56eda6166e238c29cdd3d14befdb4a4e4815",
+ "sha256:231d4da14bcd9301310faf492051bee27df11f2bc7549bc0bb41fef11b82daa2",
+ "sha256:259695e2ccc253feb2a016303543d691825e920917e31f894ca1a687982b1de4",
+ "sha256:2a24157fa36980478dd1770b585c0f30d19e18f4fb0c47c13aa568f871718579",
+ "sha256:2b1a63e8224e401cafe7739f77efd3f9e7f5f2026bda4aead8e59afab537784f",
+ "sha256:2bd9d128ef93637a5d7a6af25363cf5dec3fa21cf80e68055aad627f280e8afa",
+ "sha256:2e1d8ca8611099001949d1cdfaefc510cf0f212484fe7c565f735b68c78c3c95",
+ "sha256:2ef7fedc7a6ecbe99969cd09632516738a97eeb8bd7258bf8a0f23114c057dab",
+ "sha256:2f7fdd9b6e6c529d6a2501a2d36b240109e78a8ceaef5687cfcfa2bbe671d297",
+ "sha256:30f445ae60aad5e1f8bdbb3108e39f6fbc09f4ea16c815c66578878325f8f15a",
+ "sha256:31215157227939b4fb3d740cd23fe27be0439afef67b785a1eb78a3ae69cba9e",
+ "sha256:34315ff4fc374b285ad7f4a0bf7dcbfe769e1b104230d40f49f700d4ab6bbd84",
+ "sha256:3516bbb8d42169de9e61b8520cbeeeb716f12f4ecfe3fd30a9919aa16c806ca8",
+ "sha256:3778fd7d7cd04ae8f54651f4a7a0bd6e39a0cf20f801720a4c21d80e9b7ad6b0",
+ "sha256:39f5068d35621da2881271e5c3205125cc456f54e9030d3f723288c873a71bf9",
+ "sha256:404a1e552cf5b675a87f0651f8b79f5f1e6fd100ee88dc612f89aa16abd4486f",
+ "sha256:419a9d91bd238052642a51938af8ac05da5b3343becde08d5cdeab9046df9ee1",
+ "sha256:423fb7e748a08f854a08a222b983f4df1912b1daedce51a72bd24fe8f26a1843",
+ "sha256:4482481cb0572180b6fd976a4d5c72a30263e98564da68b86ec91f0fe35e8565",
+ "sha256:461598cd852bfa5a61b09cae2b1c02e2efcd166ee5516e243d540ac24bfa68a7",
+ "sha256:47955475ac79cc504ef2704b192364e51d0d473ad452caedd0002605f780101c",
+ "sha256:48696db7f18afb80a068821504296eb0787d9ce239b91ca15059d1d3eaacf13b",
+ "sha256:4be9f4830ba8741527693848403e2c457c16e499100963ec711b1c6f2049b7c7",
+ "sha256:4d1d02209e06550bdaef34af58e041ad71b88e624f5d825519da3a3308e22687",
+ "sha256:4f41da960b196ea355357285ad1316a00099f22d0929fe168343b99b254729c9",
+ "sha256:517ad0e93394ac532745129ceabdf2696b609ec9f87863d337140317ebce1c14",
+ "sha256:51fb3c322c81d20567019778cb5a4a6f2dc1c200b886bc0d636238e364848c89",
+ "sha256:5273b9f0b5835ff0350c0828faea623c68bfa65b792720c453e22b25cc72930f",
+ "sha256:530d548084c4a9f7a16ed4a294d459b4f229db50df689bfe92027452452943a0",
+ "sha256:530e8cebeea0d76bdcf93357aa5e41336f48c3dc709ac52da2bb167c5b8271d9",
+ "sha256:54fae94be3d75f3e573c9a1b5402dc593de19377013c9a0e4285e3d402dd3a2a",
+ "sha256:572d7c822caf521f0525ba1bce1a622a0b85cf47ffbdae6c9c19e3b5ac3c4389",
+ "sha256:58c948d0d086229efc484fe2f30c2d382c86720f55cd9bc33591774348ad44e0",
+ "sha256:5d11595abf8dd942a77883a39d81433739b287b6aa71620f15164f8096221b30",
+ "sha256:5f8ddd609f9e1af8c7bd6e2aca279c931aefecd148a14402d4e368f3171769fd",
+ "sha256:5feb91325bbceade6afab43eb3b508c63ee53579fe896c77137ded51c6b6958e",
+ "sha256:60c74963d8350241a79cb8feea80e54d518f72c26db618862a8f53e5023deaf9",
+ "sha256:613f19aa6e082cf96e17e3ffd89383343d0d589abda756b7764cf78361fd41dc",
+ "sha256:659a1e1b500fac8f2779dd9e1570464e012f43e580371470b45277a27baa7532",
+ "sha256:695f5c2823691a25f17bc5d5ffe79fa90972cc34b002ac6c843bb8a1720e950d",
+ "sha256:69dd852c2f0ad631b8b60cfbe25a28c0058a894de5abb566619c205ce0550eae",
+ "sha256:6cceb5473417d28edd20c6c984ab6fee6c6267d38d906823ebfe20b03d607dc2",
+ "sha256:71be7e0e01753a89cf024abf7ecb6bca2c81738ead80d43004d9b5e3f1244e64",
+ "sha256:74119174722c4349af9708993118581686f343adc1c8c9c007d59be90d077f3f",
+ "sha256:74a2e659c7ecbc73562e2a15e05039f1e22c75b7c7618b4b574a3ea9118d1557",
+ "sha256:7504e9b7dc05f99a9bbb4525c67a2c155073b44d720470a148b34166a69c054e",
+ "sha256:79090741d842f564b1b2827c0b82d846405b744d31e84f18d7a7b41c20e473ff",
+ "sha256:7a6967aaf043bceabab5412ed6bd6bd26603dae84d5cb75bf8d9a74a4959d398",
+ "sha256:7bda6eebafd42133efdca535b04ccb338ab29467b3f7bf79569883676fc628db",
+ "sha256:7edbed096e4a4798710ed6bc75dcaa2a21b68b6c356553ac4823c3658d53743a",
+ "sha256:7f9019c9cb613f084481bd6a100b12e1547cf2efe362d873c2e31e4035a6fa43",
+ "sha256:802168e03fba8bbc5ce0d866d589e4b1ca751d06edee69f7f3a19c5a9fe6b597",
+ "sha256:80d0a5615143c0b3225e5e3ef22c8d5d51f3f72ce0ea6fb84c943546c7b25b6c",
+ "sha256:82060f995ab5003a2d6e0f4ad29065b7672b6593c8c63559beefe5b443242c3e",
+ "sha256:836ab36280f21fc1a03c99cd05c6b7af70d2697e374c7af0b61ed271401a72a2",
+ "sha256:8761ac29b6c81574724322a554605608a9960769ea83d2c73e396f3df896ad54",
+ "sha256:87725cfb1a4f1f8c2fc9890ae2f42094120f4b44db9360be5d99a4c6b0e03a9e",
+ "sha256:899d28f422116b08be5118ef350c292b36fc15ec2daeb9ea987c89281c7bb5c4",
+ "sha256:8bc5f0687d796c05b1e28ab0d38a50e6309906ee09375dd3aff6a9c09dd6e8f4",
+ "sha256:8bea55c4eef25b0b19a0337dc4e3f9a15b00d569c77211fa8cde38684f234fb7",
+ "sha256:8e5a94886bedca0f9b78fecd6afb6629142fd2605aa70a125d49f4edc6037ee6",
+ "sha256:90ca27cd8da8118b18a52d5f547859cc1f8354a00cd1e8e5120df3e30d6279e5",
+ "sha256:92734d4d8d187a354a556626c221cd1a892a4e0802ccb2af432a1d85ec012194",
+ "sha256:947cf925bc916d90adba35a64c82aace04fa39b46b52d4630ece166655905a69",
+ "sha256:95b52c68d64c1878818687a473a10547b3292e82b6f6fe483808fb1468e2f52f",
+ "sha256:97d0235baafca5f2b09cf332cc275f021e694e8362c6bb9c96fc9a0eb74fc316",
+ "sha256:9ca4c0b502ab399ef89248a2c84c54954f77a070f28e546a85e91da627d1301e",
+ "sha256:9cc4fc6c196d6a8b76629a70ddfcd4635a6898756e2d9cac5565cf0654605d73",
+ "sha256:9cc6e6d9e571d2f863fa77700701dae73ed5f78881efc8b3f9a4398772ff53e8",
+ "sha256:a056d1ad2633548ca18ffa2f85c202cfb48b68615129143915b8dc72a806a923",
+ "sha256:a26611d9987b230566f24a0a125f17fe0de6a6aff9f25c9f564aaa2721a5fb88",
+ "sha256:a4474d924a47185a06411e0064b803c68be044be2d60e50e8bddcc2649957c1f",
+ "sha256:a4ea868bc28109052790eb2b52a9ab33f3aa7adc02f96673526ff47419490e21",
+ "sha256:a9e68c9d88823b274cf1e72f28cb5dc89c990edf430b0bfd3e2fb0785bfeabf4",
+ "sha256:aa9cccf4a44b9b62d8ba8b4dd06c649ba683e4bf04eea606d2e94cfc2d6ff4d6",
+ "sha256:ab30e5e3e706e3063bc6de96b118688cb10396b70bb9864a430f67df98c61ecc",
+ "sha256:ac2393c73378fea4e52aa56285a3d64be50f1a12395afef9cce47772f60334c2",
+ "sha256:ad8faf8df23f0378c6d527d8b0b15ea4a2e23c89376877c598c4870d1b2c7866",
+ "sha256:b35b200d6a71b9839a46b9b7fff66b6638bb52fc9658aa58796b0326595d3021",
+ "sha256:b3694e3f87f8ac7ce279d4355645b3c878d24d1424581b46282f24b92f5a4ae2",
+ "sha256:b4ff1d35e8c5bd078be89349b6f3a845128e685e751b6ea1169cf2160b344c4d",
+ "sha256:bbc8c8650c6e51041ad1be191742b8b421d05bbd3410f43fa2a00c8db87678e8",
+ "sha256:bc72863f4d9aba2e8fd9085e63548a324ba706d2ea2c83b260da08a59b9482de",
+ "sha256:bf625105bb9eef28a56a943fec8c8a98aeb80e7d7db99bd3c388137e6eb2d237",
+ "sha256:c2274ca724536f173122f36c98ce188fd24ce3dad886ec2b7af859518ce008a4",
+ "sha256:c45a03a4c69820a399f1dda9e1d8fbf3562eda46e7720458180302021b08f778",
+ "sha256:c8ae56368f8cc97c7e40a7ee18e1cedaf8e780cd8bc5ed5ac8b81f238614facb",
+ "sha256:c907cdc8109f6c619e6254212e794d6548373cc40e1ec75e6e3823d9135d29cc",
+ "sha256:ca0276464d148c72defa8bb4390cce01b4a0e425f3b50d1435aa6d7a18107602",
+ "sha256:cd5e2801c89992ed8c0a3f0293ae83c159a60d9a5d685005383ef4caca77f2c4",
+ "sha256:d08ec48f0a1c48d75d0356cea971921848fb620fdeba805b28f937e90691209f",
+ "sha256:d1a2ee9c1499fc8f86f4521f27a973c914b211ffa87322f4ee33bb35392da2c5",
+ "sha256:d5f5d1e9def3405f60e3ca8232d56f35c98fb7bf581efcc60051ebf53cb8b611",
+ "sha256:d60377dce4511655582e300dc1e5a5f24ba0cb229005a1d5c8d0cb72bb758ab8",
+ "sha256:d73beaac5e90173ac3deb9928a74763a6d230f494e4bfb422c217a0ad8e629bf",
+ "sha256:d7de2637729c67d67cf87614b566626057e95c303bc0a55ffe391f5205e7003d",
+ "sha256:dad6e0f2e481fffdcf776d10ebee25e0ef89f16d691f1e5dee4b586375fdc64b",
+ "sha256:dda86aba335c902b6149a02a55b38e96287157e609200811837678214ba2b1db",
+ "sha256:df01808ee470038c3f8dc4f48620df7225c49c2d6639e38f96e6d6ac6e6f7b0e",
+ "sha256:e1f6e2f00a6b8edb562826e4632e26d063ac10307e80f7461f7de3ad8ef3f077",
+ "sha256:e25369dc110d58ddf29b949377a93e0716d72a24f62bad72b2b39f155949c1fd",
+ "sha256:e3c701e954abf6fc03a49f7c579cc80c2c6cc52525340ca3186c41d3f33482ef",
+ "sha256:e5bcc1a1ae744e0bb59641171ae53743760130600da8db48cbb6e4918e186e4e",
+ "sha256:e68c14b04827dd76dcbd1aeea9e604e3e4b78322d8faf2f8132c7138efa340a8",
+ "sha256:e8aeb10fcbe92767f0fa69ad5a72deca50d0dca07fbde97848997d778a50c9fe",
+ "sha256:e985a16ff513596f217cee86c21371b8cd011c0f6f056d0920aa2d926c544058",
+ "sha256:ecbbd45615a6885fe3240eb9db73b9e62518b611850fdf8ab08bd56de7ad2b17",
+ "sha256:ee4ec14bc1680d6b0afab9aea2ef27e26d2024f18b24a2d7155a52b60da7e833",
+ "sha256:ef5960d965e67165d75b7c7ffc60a83ec5abfc5c11b764ec13ea54fbef8b4421",
+ "sha256:f0cdaecd4c953bfae0b6bb64910aaaca5a424ad9c72d85cb88417bb9814f7550",
+ "sha256:f1ce721c8a7dfec21fcbdfe04e8f68174183cf4e8188e0645e92aa23985c57ff",
+ "sha256:f50498891691e0864dc3da965f340fada0771f6142a378083dc4608f4ea513e2",
+ "sha256:f5ea69428fa1b49573eef0cc44a1d43bebd45ad0c611eb7d7eac760c7ae771bc",
+ "sha256:f61aa92e4aad0be58eb6eb4e0c21acf32cf8065f4b2cae5665da756c4ceef982",
+ "sha256:f6e4333fb15c83f7d1482a76d45a0818897b3d33f00efd215528ff7c51b8e35d",
+ "sha256:f820f24b09e3e779fe84c3c456cb4108a7aa639b0d1f02c28046e11bfcd088ed",
+ "sha256:f98059e4fcd3e3e4e2d632b7cf81c2faae96c43c60b569e9c621468082f1d104",
+ "sha256:fcce033e4021347d80ed9c66dcf1e7b1546319834b74445f561d2e2221de5659"
],
"markers": "python_version >= '3.7'",
- "version": "==3.4.2"
+ "version": "==3.4.6"
},
"colorama": {
"hashes": [
@@ -148,119 +185,150 @@
"markers": "python_version >= '3.5'",
"version": "==3.7"
},
+ "lazy-imports": {
+ "hashes": [
+ "sha256:7d3e4b1547cb574ec7ef3c47a074673e2612330b2b50bf7eec939f2c393fc261",
+ "sha256:eb5accc33bf9987e5197e79476bbeb960b74a2c16619bdf41281b3240f730846"
+ ],
+ "index": "pypi",
+ "markers": "python_version >= '3.9'",
+ "version": "==1.0.1"
+ },
"pydantic": {
"hashes": [
- "sha256:d989c3c6cb79469287b1569f7447a17848c998458d49ebe294e975b9baf0f0db",
- "sha256:dde5df002701f6de26248661f6835bbe296a47bf73990135c7d07ce741b9623b"
+ "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49",
+ "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==2.11.7"
+ "version": "==2.12.5"
},
"pydantic-core": {
"hashes": [
- "sha256:0069c9acc3f3981b9ff4cdfaf088e98d83440a4c7ea1bc07460af3d4dc22e72d",
- "sha256:031c57d67ca86902726e0fae2214ce6770bbe2f710dc33063187a68744a5ecac",
- "sha256:0405262705a123b7ce9f0b92f123334d67b70fd1f20a9372b907ce1080c7ba02",
- "sha256:04a1a413977ab517154eebb2d326da71638271477d6ad87a769102f7c2488c56",
- "sha256:09fb9dd6571aacd023fe6aaca316bd01cf60ab27240d7eb39ebd66a3a15293b4",
- "sha256:0a39979dcbb70998b0e505fb1556a1d550a0781463ce84ebf915ba293ccb7e22",
- "sha256:0a9f2c9dd19656823cb8250b0724ee9c60a82f3cdf68a080979d13092a3b0fef",
- "sha256:0e03262ab796d986f978f79c943fc5f620381be7287148b8010b4097f79a39ec",
- "sha256:0e5b2671f05ba48b94cb90ce55d8bdcaaedb8ba00cc5359f6810fc918713983d",
- "sha256:0e6116757f7959a712db11f3e9c0a99ade00a5bbedae83cb801985aa154f071b",
- "sha256:0fb2d542b4d66f9470e8065c5469ec676978d625a8b7a363f07d9a501a9cb36a",
- "sha256:1082dd3e2d7109ad8b7da48e1d4710c8d06c253cbc4a27c1cff4fbcaa97a9e3f",
- "sha256:1a8695a8d00c73e50bff9dfda4d540b7dee29ff9b8053e38380426a85ef10052",
- "sha256:1e063337ef9e9820c77acc768546325ebe04ee38b08703244c1309cccc4f1bab",
- "sha256:1ea40a64d23faa25e62a70ad163571c0b342b8bf66d5fa612ac0dec4f069d916",
- "sha256:2058a32994f1fde4ca0480ab9d1e75a0e8c87c22b53a3ae66554f9af78f2fe8c",
- "sha256:235f45e5dbcccf6bd99f9f472858849f73d11120d76ea8707115415f8e5ebebf",
- "sha256:2807668ba86cb38c6817ad9bc66215ab8584d1d304030ce4f0887336f28a5e27",
- "sha256:2b0a451c263b01acebe51895bfb0e1cc842a5c666efe06cdf13846c7418caa9a",
- "sha256:2b3d326aaef0c0399d9afffeb6367d5e26ddc24d351dbc9c636840ac355dc5d8",
- "sha256:2bfb5112df54209d820d7bf9317c7a6c9025ea52e49f46b6a2060104bba37de7",
- "sha256:2f82865531efd18d6e07a04a17331af02cb7a651583c418df8266f17a63c6612",
- "sha256:329467cecfb529c925cf2bbd4d60d2c509bc2fb52a20c1045bf09bb70971a9c1",
- "sha256:3a1c81334778f9e3af2f8aeb7a960736e5cab1dfebfb26aabca09afd2906c039",
- "sha256:3abcd9392a36025e3bd55f9bd38d908bd17962cc49bc6da8e7e96285336e2bca",
- "sha256:3c6db6e52c6d70aa0d00d45cdb9b40f0433b96380071ea80b09277dba021ddf7",
- "sha256:3dc625f4aa79713512d1976fe9f0bc99f706a9dee21dfd1810b4bbbf228d0e8a",
- "sha256:3eb3fe62804e8f859c49ed20a8451342de53ed764150cb14ca71357c765dc2a6",
- "sha256:44857c3227d3fb5e753d5fe4a3420d6376fa594b07b621e220cd93703fe21782",
- "sha256:4b25d91e288e2c4e0662b8038a28c6a07eaac3e196cfc4ff69de4ea3db992a1b",
- "sha256:4c5b0a576fb381edd6d27f0a85915c6daf2f8138dc5c267a57c08a62900758c7",
- "sha256:4e61206137cbc65e6d5256e1166f88331d3b6238e082d9f74613b9b765fb9025",
- "sha256:52fb90784e0a242bb96ec53f42196a17278855b0f31ac7c3cc6f5c1ec4811849",
- "sha256:53a57d2ed685940a504248187d5685e49eb5eef0f696853647bf37c418c538f7",
- "sha256:572c7e6c8bb4774d2ac88929e3d1f12bc45714ae5ee6d9a788a9fb35e60bb04b",
- "sha256:5c4aa4e82353f65e548c476b37e64189783aa5384903bfea4f41580f255fddfa",
- "sha256:5c92edd15cd58b3c2d34873597a1e20f13094f59cf88068adb18947df5455b4e",
- "sha256:5f483cfb75ff703095c59e365360cb73e00185e01aaea067cd19acffd2ab20ea",
- "sha256:61c18fba8e5e9db3ab908620af374db0ac1baa69f0f32df4f61ae23f15e586ac",
- "sha256:6368900c2d3ef09b69cb0b913f9f8263b03786e5b2a387706c5afb66800efd51",
- "sha256:64632ff9d614e5eecfb495796ad51b0ed98c453e447a76bcbeeb69615079fc7e",
- "sha256:65132b7b4a1c0beded5e057324b7e16e10910c106d43675d9bd87d4f38dde162",
- "sha256:6b99022f1d19bc32a4c2a0d544fc9a76e3be90f0b3f4af413f87d38749300e65",
- "sha256:6bdfe4b3789761f3bcb4b1ddf33355a71079858958e3a552f16d5af19768fef2",
- "sha256:6fa6dfc3e4d1f734a34710f391ae822e0a8eb8559a85c6979e14e65ee6ba2954",
- "sha256:73662edf539e72a9440129f231ed3757faab89630d291b784ca99237fb94db2b",
- "sha256:73cf6373c21bc80b2e0dc88444f41ae60b2f070ed02095754eb5a01df12256de",
- "sha256:7cb8bc3605c29176e1b105350d2e6474142d7c1bd1d9327c4a9bdb46bf827acc",
- "sha256:7f92c15cd1e97d4b12acd1cc9004fa092578acfa57b67ad5e43a197175d01a64",
- "sha256:82f68293f055f51b51ea42fafc74b6aad03e70e191799430b90c13d643059ebb",
- "sha256:83aa99b1285bc8f038941ddf598501a86f1536789740991d7d8756e34f1e74d9",
- "sha256:87acbfcf8e90ca885206e98359d7dca4bcbb35abdc0ff66672a293e1d7a19101",
- "sha256:87b31b6846e361ef83fedb187bb5b4372d0da3f7e28d85415efa92d6125d6e6d",
- "sha256:881b21b5549499972441da4758d662aeea93f1923f953e9cbaff14b8b9565aef",
- "sha256:8d55ab81c57b8ff8548c3e4947f119551253f4e3787a7bbc0b6b3ca47498a9d3",
- "sha256:8f57a69461af2a5fa6e6bbd7a5f60d3b7e6cebb687f55106933188e79ad155c1",
- "sha256:95237e53bb015f67b63c91af7518a62a8660376a6a0db19b89acc77a4d6199f5",
- "sha256:96081f1605125ba0855dfda83f6f3df5ec90c61195421ba72223de35ccfb2f88",
- "sha256:970919794d126ba8645f3837ab6046fb4e72bbc057b3709144066204c19a455d",
- "sha256:9cb1da0f5a471435a7bc7e439b8a728e8b61e59784b2af70d7c169f8dd8ae290",
- "sha256:9fcd347d2cc5c23b06de6d3b7b8275be558a0c90549495c699e379a80bf8379e",
- "sha256:9fdac5d6ffa1b5a83bca06ffe7583f5576555e6c8b3a91fbd25ea7780f825f7d",
- "sha256:a11c8d26a50bfab49002947d3d237abe4d9e4b5bdc8846a63537b6488e197808",
- "sha256:a144d4f717285c6d9234a66778059f33a89096dfb9b39117663fd8413d582dcc",
- "sha256:a2b911a5b90e0374d03813674bf0a5fbbb7741570dcd4b4e85a2e48d17def29d",
- "sha256:a7ec89dc587667f22b6a0b6579c249fca9026ce7c333fc142ba42411fa243cdc",
- "sha256:aa9d91b338f2df0508606f7009fde642391425189bba6d8c653afd80fd6bb64e",
- "sha256:b0379a2b24882fef529ec3b4987cb5d003b9cda32256024e6fe1586ac45fc640",
- "sha256:bc7aee6f634a6f4a95676fcb5d6559a2c2a390330098dba5e5a5f28a2e4ada30",
- "sha256:bdc25f3681f7b78572699569514036afe3c243bc3059d3942624e936ec93450e",
- "sha256:c083a3bdd5a93dfe480f1125926afcdbf2917ae714bdb80b36d34318b2bec5d9",
- "sha256:c20c462aa4434b33a2661701b861604913f912254e441ab8d78d30485736115a",
- "sha256:c2fc0a768ef76c15ab9238afa6da7f69895bb5d1ee83aeea2e3509af4472d0b9",
- "sha256:c52b02ad8b4e2cf14ca7b3d918f3eb0ee91e63b3167c32591e57c4317e134f8f",
- "sha256:c54c939ee22dc8e2d545da79fc5381f1c020d6d3141d3bd747eab59164dc89fb",
- "sha256:c8e7af2f4e0194c22b5b37205bfb293d166a7344a5b0d0eaccebc376546d77d5",
- "sha256:cca3868ddfaccfbc4bfb1d608e2ccaaebe0ae628e1416aeb9c4d88c001bb45ab",
- "sha256:d3f26877a748dc4251cfcfda9dfb5f13fcb034f5308388066bcfe9031b63ae7d",
- "sha256:d53b22f2032c42eaaf025f7c40c2e3b94568ae077a606f006d206a463bc69572",
- "sha256:d87c561733f66531dced0da6e864f44ebf89a8fba55f31407b00c2f7f9449593",
- "sha256:d946c8bf0d5c24bf4fe333af284c59a19358aa3ec18cb3dc4370080da1e8ad29",
- "sha256:dac89aea9af8cd672fa7b510e7b8c33b0bba9a43186680550ccf23020f32d535",
- "sha256:db4b41f9bd95fbe5acd76d89920336ba96f03e149097365afe1cb092fceb89a1",
- "sha256:dc46a01bf8d62f227d5ecee74178ffc448ff4e5197c756331f71efcc66dc980f",
- "sha256:dd14041875d09cc0f9308e37a6f8b65f5585cf2598a53aa0123df8b129d481f8",
- "sha256:de4b83bb311557e439b9e186f733f6c645b9417c84e2eb8203f3f820a4b988bf",
- "sha256:e799c050df38a639db758c617ec771fd8fb7a5f8eaaa4b27b101f266b216a246",
- "sha256:e80b087132752f6b3d714f041ccf74403799d3b23a72722ea2e6ba2e892555b9",
- "sha256:eb8c529b2819c37140eb51b914153063d27ed88e3bdc31b71198a198e921e011",
- "sha256:eb9b459ca4df0e5c87deb59d37377461a538852765293f9e6ee834f0435a93b9",
- "sha256:efec8db3266b76ef9607c2c4c419bdb06bf335ae433b80816089ea7585816f6a",
- "sha256:f481959862f57f29601ccced557cc2e817bce7533ab8e01a797a48b49c9692b3",
- "sha256:f517ca031dfc037a9c07e748cefd8d96235088b83b4f4ba8939105d20fa1dcd6",
- "sha256:f889f7a40498cc077332c7ab6b4608d296d852182211787d4f3ee377aaae66e8",
- "sha256:f8de619080e944347f5f20de29a975c2d815d9ddd8be9b9b7268e2e3ef68605a",
- "sha256:f941635f2a3d96b2973e867144fde513665c87f13fe0e193c158ac51bfaaa7b2",
- "sha256:fa754d1850735a0b0e03bcffd9d4b4343eb417e47196e4485d9cca326073a42c",
- "sha256:fa854f5cf7e33842a892e5c73f45327760bc7bc516339fda888c75ae60edaeb6",
- "sha256:fe5b32187cbc0c862ee201ad66c30cf218e5ed468ec8dc1cf49dec66e160cc4d"
+ "sha256:0177272f88ab8312479336e1d777f6b124537d47f2123f89cb37e0accea97f90",
+ "sha256:01a3d0ab748ee531f4ea6c3e48ad9dac84ddba4b0d82291f87248f2f9de8d740",
+ "sha256:0384e2e1021894b1ff5a786dbf94771e2986ebe2869533874d7e43bc79c6f504",
+ "sha256:03b77d184b9eb40240ae9fd676ca364ce1085f203e1b1256f8ab9984dca80a84",
+ "sha256:03ca43e12fab6023fc79d28ca6b39b05f794ad08ec2feccc59a339b02f2b3d33",
+ "sha256:05a2c8852530ad2812cb7914dc61a1125dc4e06252ee98e5638a12da6cc6fb6c",
+ "sha256:070259a8818988b9a84a449a2a7337c7f430a22acc0859c6b110aa7212a6d9c0",
+ "sha256:08daa51ea16ad373ffd5e7606252cc32f07bc72b28284b6bc9c6df804816476e",
+ "sha256:0cbaad15cb0c90aa221d43c00e77bb33c93e8d36e0bf74760cd00e732d10a6a0",
+ "sha256:100baa204bb412b74fe285fb0f3a385256dad1d1879f0a5cb1499ed2e83d132a",
+ "sha256:112e305c3314f40c93998e567879e887a3160bb8689ef3d2c04b6cc62c33ac34",
+ "sha256:16f80f7abe3351f8ea6858914ddc8c77e02578544a0ebc15b4c2e1a0e813b0b2",
+ "sha256:1746d4a3d9a794cacae06a5eaaccb4b8643a131d45fbc9af23e353dc0a5ba5c3",
+ "sha256:1962293292865bca8e54702b08a4f26da73adc83dd1fcf26fbc875b35d81c815",
+ "sha256:1d1d9764366c73f996edd17abb6d9d7649a7eb690006ab6adbda117717099b14",
+ "sha256:1f8d33a7f4d5a7889e60dc39856d76d09333d8a6ed0f5f1190635cbec70ec4ba",
+ "sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375",
+ "sha256:239edca560d05757817c13dc17c50766136d21f7cd0fac50295499ae24f90fdf",
+ "sha256:242a206cd0318f95cd21bdacff3fcc3aab23e79bba5cac3db5a841c9ef9c6963",
+ "sha256:25e1c2af0fce638d5f1988b686f3b3ea8cd7de5f244ca147c777769e798a9cd1",
+ "sha256:266fb4cbf5e3cbd0b53669a6d1b039c45e3ce651fd5442eff4d07c2cc8d66808",
+ "sha256:2782c870e99878c634505236d81e5443092fba820f0373997ff75f90f68cd553",
+ "sha256:287dad91cfb551c363dc62899a80e9e14da1f0e2b6ebde82c806612ca2a13ef1",
+ "sha256:29452c56df2ed968d18d7e21f4ab0ac55e71dc59524872f6fc57dcf4a3249ed2",
+ "sha256:299e0a22e7ae2b85c1a57f104538b2656e8ab1873511fd718a1c1c6f149b77b5",
+ "sha256:2a5e06546e19f24c6a96a129142a75cee553cc018ffee48a460059b1185f4470",
+ "sha256:2b761d210c9ea91feda40d25b4efe82a1707da2ef62901466a42492c028553a2",
+ "sha256:2c010c6ded393148374c0f6f0bf89d206bf3217f201faa0635dcd56bd1520f6b",
+ "sha256:2ff4321e56e879ee8d2a879501c8e469414d948f4aba74a2d4593184eb326660",
+ "sha256:3006c3dd9ba34b0c094c544c6006cc79e87d8612999f1a5d43b769b89181f23c",
+ "sha256:33cb885e759a705b426baada1fe68cbb0a2e68e34c5d0d0289a364cf01709093",
+ "sha256:346285d28e4c8017da95144c7f3acd42740d637ff41946af5ce6e5e420502dd5",
+ "sha256:34a64bc3441dc1213096a20fe27e8e128bd3ff89921706e83c0b1ac971276594",
+ "sha256:35b44f37a3199f771c3eaa53051bc8a70cd7b54f333531c59e29fd4db5d15008",
+ "sha256:378bec5c66998815d224c9ca994f1e14c0c21cb95d2f52b6021cc0b2a58f2a5a",
+ "sha256:3f37a19d7ebcdd20b96485056ba9e8b304e27d9904d233d7b1015db320e51f0a",
+ "sha256:3f84d5c1b4ab906093bdc1ff10484838aca54ef08de4afa9de0f5f14d69639cd",
+ "sha256:4009935984bd36bd2c774e13f9a09563ce8de4abaa7226f5108262fa3e637284",
+ "sha256:406bf18d345822d6c21366031003612b9c77b3e29ffdb0f612367352aab7d586",
+ "sha256:4819fa52133c9aa3c387b3328f25c1facc356491e6135b459f1de698ff64d869",
+ "sha256:482c982f814460eabe1d3bb0adfdc583387bd4691ef00b90575ca0d2b6fe2294",
+ "sha256:4bc36bbc0b7584de96561184ad7f012478987882ebf9f9c389b23f432ea3d90f",
+ "sha256:506d766a8727beef16b7adaeb8ee6217c64fc813646b424d0804d67c16eddb66",
+ "sha256:56121965f7a4dc965bff783d70b907ddf3d57f6eba29b6d2e5dabfaf07799c51",
+ "sha256:58133647260ea01e4d0500089a8c4f07bd7aa6ce109682b1426394988d8aaacc",
+ "sha256:5921a4d3ca3aee735d9fd163808f5e8dd6c6972101e4adbda9a4667908849b97",
+ "sha256:5a4e67afbc95fa5c34cf27d9089bca7fcab4e51e57278d710320a70b956d1b9a",
+ "sha256:5cb1b2f9742240e4bb26b652a5aeb840aa4b417c7748b6f8387927bc6e45e40d",
+ "sha256:62de39db01b8d593e45871af2af9e497295db8d73b085f6bfd0b18c83c70a8f9",
+ "sha256:634e8609e89ceecea15e2d61bc9ac3718caaaa71963717bf3c8f38bfde64242c",
+ "sha256:63510af5e38f8955b8ee5687740d6ebf7c2a0886d15a6d65c32814613681bc07",
+ "sha256:650ae77860b45cfa6e2cdafc42618ceafab3a2d9a3811fcfbd3bbf8ac3c40d36",
+ "sha256:6561e94ba9dacc9c61bce40e2d6bdc3bfaa0259d3ff36ace3b1e6901936d2e3e",
+ "sha256:65840751b72fbfd82c3c640cff9284545342a4f1eb1586ad0636955b261b0b05",
+ "sha256:6cb58b9c66f7e4179a2d5e0f849c48eff5c1fca560994d6eb6543abf955a149e",
+ "sha256:6f52298fbd394f9ed112d56f3d11aabd0d5bd27beb3084cc3d8ad069483b8941",
+ "sha256:707625ef0983fcfb461acfaf14de2067c5942c6bb0f3b4c99158bed6fedd3cf3",
+ "sha256:72f6c8b11857a856bcfa48c86f5368439f74453563f951e473514579d44aa612",
+ "sha256:753e230374206729bf0a807954bcc6c150d3743928a73faffee51ac6557a03c3",
+ "sha256:76d0819de158cd855d1cbb8fcafdf6f5cf1eb8e470abe056d5d161106e38062b",
+ "sha256:76ee27c6e9c7f16f47db7a94157112a2f3a00e958bc626e2f4ee8bec5c328fbe",
+ "sha256:77b63866ca88d804225eaa4af3e664c5faf3568cea95360d21f4725ab6e07146",
+ "sha256:79ec52ec461e99e13791ec6508c722742ad745571f234ea6255bed38c6480f11",
+ "sha256:7b93a4d08587e2b7e7882de461e82b6ed76d9026ce91ca7915e740ecc7855f60",
+ "sha256:7da7087d756b19037bc2c06edc6c170eeef3c3bafcb8f532ff17d64dc427adfd",
+ "sha256:7f3bf998340c6d4b0c9a2f02d6a400e51f123b59565d74dc60d252ce888c260b",
+ "sha256:80aa89cad80b32a912a65332f64a4450ed00966111b6615ca6816153d3585a8c",
+ "sha256:8566def80554c3faa0e65ac30ab0932b9e3a5cd7f8323764303d468e5c37595a",
+ "sha256:873e0d5b4fb9b89ef7c2d2a963ea7d02879d9da0da8d9d4933dee8ee86a8b460",
+ "sha256:88942d3a3dff3afc8288c21e565e476fc278902ae4d6d134f1eeda118cc830b1",
+ "sha256:8bfeaf8735be79f225f3fefab7f941c712aaca36f1128c9d7e2352ee1aa87bdf",
+ "sha256:8e7c86f27c585ef37c35e56a96363ab8de4e549a95512445b85c96d3e2f7c1bf",
+ "sha256:915c3d10f81bec3a74fbd4faebe8391013ba61e5a1a8d48c4455b923bdda7858",
+ "sha256:93e8740d7503eb008aa2df04d3b9735f845d43ae845e6dcd2be0b55a2da43cd2",
+ "sha256:941103c9be18ac8daf7b7adca8228f8ed6bb7a1849020f643b3a14d15b1924d9",
+ "sha256:97aeba56665b4c3235a0e52b2c2f5ae9cd071b8a8310ad27bddb3f7fb30e9aa2",
+ "sha256:a39455728aabd58ceabb03c90e12f71fd30fa69615760a075b9fec596456ccc3",
+ "sha256:a3a52f6156e73e7ccb0f8cced536adccb7042be67cb45f9562e12b319c119da6",
+ "sha256:a668ce24de96165bb239160b3d854943128f4334822900534f2fe947930e5770",
+ "sha256:a75dafbf87d6276ddc5b2bf6fae5254e3d0876b626eb24969a574fff9149ee5d",
+ "sha256:aabf5777b5c8ca26f7824cb4a120a740c9588ed58df9b2d196ce92fba42ff8dc",
+ "sha256:aec5cf2fd867b4ff45b9959f8b20ea3993fc93e63c7363fe6851424c8a7e7c23",
+ "sha256:b2379fa7ed44ddecb5bfe4e48577d752db9fc10be00a6b7446e9663ba143de26",
+ "sha256:b4ececa40ac28afa90871c2cc2b9ffd2ff0bf749380fbdf57d165fd23da353aa",
+ "sha256:b5819cd790dbf0c5eb9f82c73c16b39a65dd6dd4d1439dcdea7816ec9adddab8",
+ "sha256:b74557b16e390ec12dca509bce9264c3bbd128f8a2c376eaa68003d7f327276d",
+ "sha256:b80aa5095cd3109962a298ce14110ae16b8c1aece8b72f9dafe81cf597ad80b3",
+ "sha256:b93590ae81f7010dbe380cdeab6f515902ebcbefe0b9327cc4804d74e93ae69d",
+ "sha256:b96d5f26b05d03cc60f11a7761a5ded1741da411e7fe0909e27a5e6a0cb7b034",
+ "sha256:bd3d54f38609ff308209bd43acea66061494157703364ae40c951f83ba99a1a9",
+ "sha256:bfea2a5f0b4d8d43adf9d7b8bf019fb46fdd10a2e5cde477fbcb9d1fa08c68e1",
+ "sha256:c007fe8a43d43b3969e8469004e9845944f1a80e6acd47c150856bb87f230c56",
+ "sha256:c1df3d34aced70add6f867a8cf413e299177e0c22660cc767218373d0779487b",
+ "sha256:c23e27686783f60290e36827f9c626e63154b82b116d7fe9adba1fda36da706c",
+ "sha256:c8d8b4eb992936023be7dee581270af5c6e0697a8559895f527f5b7105ecd36a",
+ "sha256:c9e19dd6e28fdcaa5a1de679aec4141f691023916427ef9bae8584f9c2fb3b0e",
+ "sha256:d0d2568a8c11bf8225044aa94409e21da0cb09dcdafe9ecd10250b2baad531a9",
+ "sha256:d38548150c39b74aeeb0ce8ee1d8e82696f4a4e16ddc6de7b1d8823f7de4b9b5",
+ "sha256:d3a978c4f57a597908b7e697229d996d77a6d3c94901e9edee593adada95ce1a",
+ "sha256:d5160812ea7a8a2ffbe233d8da666880cad0cbaf5d4de74ae15c313213d62556",
+ "sha256:dc799088c08fa04e43144b164feb0c13f9a0bc40503f8df3e9fde58a3c0c101e",
+ "sha256:df3959765b553b9440adfd3c795617c352154e497a4eaf3752555cfb5da8fc49",
+ "sha256:dfa8a0c812ac681395907e71e1274819dec685fec28273a28905df579ef137e2",
+ "sha256:e25c479382d26a2a41b7ebea1043564a937db462816ea07afa8a44c0866d52f9",
+ "sha256:e4f4a984405e91527a0d62649ee21138f8e3d0ef103be488c1dc11a80d7f184b",
+ "sha256:e536c98a7626a98feb2d3eaf75944ef6f3dbee447e1f841eae16f2f0a72d8ddc",
+ "sha256:e56ba91f47764cc14f1daacd723e3e82d1a89d783f0f5afe9c364b8bb491ccdb",
+ "sha256:e672ba74fbc2dc8eea59fb6d4aed6845e6905fc2a8afe93175d94a83ba2a01a0",
+ "sha256:e7b576130c69225432866fe2f4a469a85a54ade141d96fd396dffcf607b558f8",
+ "sha256:e8465ab91a4bd96d36dde3263f06caa6a8a6019e4113f24dc753d79a8b3a3f82",
+ "sha256:e96cea19e34778f8d59fe40775a7a574d95816eb150850a85a7a4c8f4b94ac69",
+ "sha256:ece5c59f0ce7d001e017643d8d24da587ea1f74f6993467d85ae8a5ef9d4f42b",
+ "sha256:eceb81a8d74f9267ef4081e246ffd6d129da5d87e37a77c9bde550cb04870c1c",
+ "sha256:ed2e99c456e3fadd05c991f8f437ef902e00eedf34320ba2b0842bd1c3ca3a75",
+ "sha256:f0cd744688278965817fd0839c4a4116add48d23890d468bc436f78beb28abf5",
+ "sha256:f14f8f046c14563f8eb3f45f499cc658ab8d10072961e07225e507adb700e93f",
+ "sha256:f15489ba13d61f670dcc96772e733aad1a6f9c429cc27574c6cdaed82d0146ad",
+ "sha256:f31d95a179f8d64d90f6831d71fa93290893a33148d890ba15de25642c5d075b",
+ "sha256:f41a7489d32336dbf2199c8c0a215390a751c5b014c2c1c5366e817202e9cdf7",
+ "sha256:f41eb9797986d6ebac5e8edff36d5cef9de40def462311b3eb3eeded1431e425",
+ "sha256:f547144f2966e1e16ae626d8ce72b4cfa0caedc7fa28052001c94fb2fcaa1c52"
],
"markers": "python_version >= '3.9'",
- "version": "==2.33.2"
+ "version": "==2.41.5"
},
"python-dateutil": {
"hashes": [
@@ -273,12 +341,12 @@
},
"requests": {
"hashes": [
- "sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c",
- "sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422"
+ "sha256:3324635456fa185245e24865e810cecec7b4caf933d7eb133dcde67d48cee69b",
+ "sha256:c7ebc5e8b0f21837386ad0e1c8fe8b829fa5f544d8df3b2253bff14ef29d7652"
],
"index": "pypi",
- "markers": "python_version >= '3.8'",
- "version": "==2.32.4"
+ "markers": "python_version >= '3.10'",
+ "version": "==2.33.0"
},
"six": {
"hashes": [
@@ -291,29 +359,29 @@
},
"typing-extensions": {
"hashes": [
- "sha256:8676b788e32f02ab42d9e7c61324048ae4c6d844a399eebace3d4979d75ceef4",
- "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af"
+ "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466",
+ "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==4.14.0"
+ "version": "==4.15.0"
},
"typing-inspection": {
"hashes": [
- "sha256:389055682238f53b04f7badcb49b989835495a96700ced5dab2d8feae4b26f51",
- "sha256:6ae134cc0203c33377d43188d4064e9b357dba58cff3185f22924610e70a9d28"
+ "sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7",
+ "sha256:ba561c48a67c5958007083d386c3295464928b01faa735ab8547c5692e87f464"
],
"markers": "python_version >= '3.9'",
- "version": "==0.4.1"
+ "version": "==0.4.2"
},
"urllib3": {
"hashes": [
- "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760",
- "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"
+ "sha256:1b62b6884944a57dbe321509ab94fd4d3b307075e0c2eae991ac71ee15ad38ed",
+ "sha256:bf272323e553dfb2e87d9bfd225ca7b0f467b919d7bbd355436d3fd37cb0acd4"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==2.5.0"
+ "version": "==2.6.3"
},
"vistir": {
"hashes": [
@@ -336,135 +404,196 @@
},
"certifi": {
"hashes": [
- "sha256:2e0c7ce7cb5d8f8634ca55d2ba7e6ec2689a2fd6537d8dec1296a477a4910057",
- "sha256:d747aa5a8b9bbbb1bb8c22bb13e22bd1f18e9796defa16bab421f7f7a317323b"
+ "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa",
+ "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7"
],
"index": "pypi",
"markers": "python_version >= '3.7'",
- "version": "==2025.6.15"
+ "version": "==2026.2.25"
},
"chardet": {
"hashes": [
- "sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7",
- "sha256:e1cf59446890a00105fe7b7912492ea04b6e6f06d4b742b2c788469e34c82970"
+ "sha256:069f4ff169142c45198b513702d7596b60944d3d8ebcfed2626e7716430e90e0",
+ "sha256:0cbfa21c8526022a62d1ebd1799b6e2c3598779231c0397372b6e26a4b1f4d28",
+ "sha256:2769be12361a6c7873392e435c708eca88c9f0fb6a647af75fa1386db64032d6",
+ "sha256:329aa8766c4917d3acc1b1d0462f0b2e820e24e9f341d0f858aee85396ae3002",
+ "sha256:45adca296eddec38b803ce352bffcc5fff40576246e74fcd2aa358f9c813ffe0",
+ "sha256:554bc5058a1ef76cfdc278c4420daa58e1aa5e35d66d5886bc4bb85243409b2f",
+ "sha256:57a62ef50f69bc2fb3a3ea1ffffec6d10f3d2112d3b05d6e3cb15c2c9b55f6cc",
+ "sha256:5aec4e167de05470a3e2466a1ae751d7f0ad15510f63633fdd01a0405515df7a",
+ "sha256:6cddf6f1a0834ab5a6894819a6f4c3cd8c2cc86a12fc4efdc87eadb9ce7186ab",
+ "sha256:70af3a05ca9476461160474f1324612d04b885101216894e60266c8c16510084",
+ "sha256:79c96d41ee63b098205d071caeee272968fe7a81a65151af2c02d1f51d2e2b4f",
+ "sha256:86d7ca798051fce39b980241f4e93a40e3ef1fb568e282afcdcdbf6efa56bada",
+ "sha256:8e1eaa942ae81d43d535092ff3ba660c967344178cc3876b54834a56c1207f3a",
+ "sha256:941af534a9b77d4b912e173e98680225340cf8827537e465bd6498b3e98d0cb8",
+ "sha256:a2eb2b2ed1662e74bebcdcd8f3872fd23378605601065a94ca265040026a11b3",
+ "sha256:aa1621ad7699a4ffbff131ed3d023883fca6bd6ad6f069b3b43bd4d1c5fece1d",
+ "sha256:ad98a6c2e61624b1120919353d222121b8f5848b9d33c885d949fe0235575682",
+ "sha256:b10b913b50c8dab125497abb02c8ed76434e90ce8625af9fe45e9f81fd5df858",
+ "sha256:c23262011179db48e600012e296133ab577d8e9682c91a19221164732ccb4427",
+ "sha256:d4c682730cd5ea9b528299b826b9d7fca852fa85512de1b7ad3e84b77d68f6f7",
+ "sha256:db07ed10259c0e93a55e3c285d2d78111b000e574aa4f94d89de53c72fb28127",
+ "sha256:e6285d35f79d0cdc8838d3cb01876f979c8419a74662e8de39444e40639e0b2b",
+ "sha256:e801976901fb7bc48f13653a7ca78e81fa65fe615d0d33c9383385c73e571927",
+ "sha256:efce0ddb6a3f92f52da0affe62b7c558e3641651fee982a04899509f3070ab4a",
+ "sha256:efdb3785c8700b3d0b354553827a166480a439f9754f7366f795bbe8b42d6daf",
+ "sha256:f03aef24d91168232db8b01e4d6726676708be503e6aa07e28ab808e6d0fe606"
],
"index": "pypi",
- "markers": "python_version >= '3.7'",
- "version": "==5.2.0"
+ "markers": "python_version >= '3.10'",
+ "version": "==7.4.0.post1"
},
"charset-normalizer": {
"hashes": [
- "sha256:005fa3432484527f9732ebd315da8da8001593e2cf46a3d817669f062c3d9ed4",
- "sha256:046595208aae0120559a67693ecc65dd75d46f7bf687f159127046628178dc45",
- "sha256:0c29de6a1a95f24b9a1aa7aefd27d2487263f00dfd55a77719b530788f75cff7",
- "sha256:0c8c57f84ccfc871a48a47321cfa49ae1df56cd1d965a09abe84066f6853b9c0",
- "sha256:0f5d9ed7f254402c9e7d35d2f5972c9bbea9040e99cd2861bd77dc68263277c7",
- "sha256:18dd2e350387c87dabe711b86f83c9c78af772c748904d372ade190b5c7c9d4d",
- "sha256:1b1bde144d98e446b056ef98e59c256e9294f6b74d7af6846bf5ffdafd687a7d",
- "sha256:1c95a1e2902a8b722868587c0e1184ad5c55631de5afc0eb96bc4b0d738092c0",
- "sha256:1cad5f45b3146325bb38d6855642f6fd609c3f7cad4dbaf75549bf3b904d3184",
- "sha256:21b2899062867b0e1fde9b724f8aecb1af14f2778d69aacd1a5a1853a597a5db",
- "sha256:24498ba8ed6c2e0b56d4acbf83f2d989720a93b41d712ebd4f4979660db4417b",
- "sha256:25a23ea5c7edc53e0f29bae2c44fcb5a1aa10591aae107f2a2b2583a9c5cbc64",
- "sha256:289200a18fa698949d2b39c671c2cc7a24d44096784e76614899a7ccf2574b7b",
- "sha256:28a1005facc94196e1fb3e82a3d442a9d9110b8434fc1ded7a24a2983c9888d8",
- "sha256:32fc0341d72e0f73f80acb0a2c94216bd704f4f0bce10aedea38f30502b271ff",
- "sha256:36b31da18b8890a76ec181c3cf44326bf2c48e36d393ca1b72b3f484113ea344",
- "sha256:3c21d4fca343c805a52c0c78edc01e3477f6dd1ad7c47653241cf2a206d4fc58",
- "sha256:3fddb7e2c84ac87ac3a947cb4e66d143ca5863ef48e4a5ecb83bd48619e4634e",
- "sha256:43e0933a0eff183ee85833f341ec567c0980dae57c464d8a508e1b2ceb336471",
- "sha256:4a476b06fbcf359ad25d34a057b7219281286ae2477cc5ff5e3f70a246971148",
- "sha256:4e594135de17ab3866138f496755f302b72157d115086d100c3f19370839dd3a",
- "sha256:50bf98d5e563b83cc29471fa114366e6806bc06bc7a25fd59641e41445327836",
- "sha256:5a9979887252a82fefd3d3ed2a8e3b937a7a809f65dcb1e068b090e165bbe99e",
- "sha256:5baececa9ecba31eff645232d59845c07aa030f0c81ee70184a90d35099a0e63",
- "sha256:5bf4545e3b962767e5c06fe1738f951f77d27967cb2caa64c28be7c4563e162c",
- "sha256:6333b3aa5a12c26b2a4d4e7335a28f1475e0e5e17d69d55141ee3cab736f66d1",
- "sha256:65c981bdbd3f57670af8b59777cbfae75364b483fa8a9f420f08094531d54a01",
- "sha256:68a328e5f55ec37c57f19ebb1fdc56a248db2e3e9ad769919a58672958e8f366",
- "sha256:6a0289e4589e8bdfef02a80478f1dfcb14f0ab696b5a00e1f4b8a14a307a3c58",
- "sha256:6b66f92b17849b85cad91259efc341dce9c1af48e2173bf38a85c6329f1033e5",
- "sha256:6c9379d65defcab82d07b2a9dfbfc2e95bc8fe0ebb1b176a3190230a3ef0e07c",
- "sha256:6fc1f5b51fa4cecaa18f2bd7a003f3dd039dd615cd69a2afd6d3b19aed6775f2",
- "sha256:70f7172939fdf8790425ba31915bfbe8335030f05b9913d7ae00a87d4395620a",
- "sha256:721c76e84fe669be19c5791da68232ca2e05ba5185575086e384352e2c309597",
- "sha256:7222ffd5e4de8e57e03ce2cef95a4c43c98fcb72ad86909abdfc2c17d227fc1b",
- "sha256:75d10d37a47afee94919c4fab4c22b9bc2a8bf7d4f46f87363bcf0573f3ff4f5",
- "sha256:76af085e67e56c8816c3ccf256ebd136def2ed9654525348cfa744b6802b69eb",
- "sha256:770cab594ecf99ae64c236bc9ee3439c3f46be49796e265ce0cc8bc17b10294f",
- "sha256:7a6ab32f7210554a96cd9e33abe3ddd86732beeafc7a28e9955cdf22ffadbab0",
- "sha256:7c48ed483eb946e6c04ccbe02c6b4d1d48e51944b6db70f697e089c193404941",
- "sha256:7f56930ab0abd1c45cd15be65cc741c28b1c9a34876ce8c17a2fa107810c0af0",
- "sha256:8075c35cd58273fee266c58c0c9b670947c19df5fb98e7b66710e04ad4e9ff86",
- "sha256:8272b73e1c5603666618805fe821edba66892e2870058c94c53147602eab29c7",
- "sha256:82d8fd25b7f4675d0c47cf95b594d4e7b158aca33b76aa63d07186e13c0e0ab7",
- "sha256:844da2b5728b5ce0e32d863af26f32b5ce61bc4273a9c720a9f3aa9df73b1455",
- "sha256:8755483f3c00d6c9a77f490c17e6ab0c8729e39e6390328e42521ef175380ae6",
- "sha256:915f3849a011c1f593ab99092f3cecfcb4d65d8feb4a64cf1bf2d22074dc0ec4",
- "sha256:926ca93accd5d36ccdabd803392ddc3e03e6d4cd1cf17deff3b989ab8e9dbcf0",
- "sha256:982bb1e8b4ffda883b3d0a521e23abcd6fd17418f6d2c4118d257a10199c0ce3",
- "sha256:98f862da73774290f251b9df8d11161b6cf25b599a66baf087c1ffe340e9bfd1",
- "sha256:9cbfacf36cb0ec2897ce0ebc5d08ca44213af24265bd56eca54bee7923c48fd6",
- "sha256:a370b3e078e418187da8c3674eddb9d983ec09445c99a3a263c2011993522981",
- "sha256:a955b438e62efdf7e0b7b52a64dc5c3396e2634baa62471768a64bc2adb73d5c",
- "sha256:aa6af9e7d59f9c12b33ae4e9450619cf2488e2bbe9b44030905877f0b2324980",
- "sha256:aa88ca0b1932e93f2d961bf3addbb2db902198dca337d88c89e1559e066e7645",
- "sha256:aaeeb6a479c7667fbe1099af9617c83aaca22182d6cf8c53966491a0f1b7ffb7",
- "sha256:aaf27faa992bfee0264dc1f03f4c75e9fcdda66a519db6b957a3f826e285cf12",
- "sha256:b2680962a4848b3c4f155dc2ee64505a9c57186d0d56b43123b17ca3de18f0fa",
- "sha256:b2d318c11350e10662026ad0eb71bb51c7812fc8590825304ae0bdd4ac283acd",
- "sha256:b33de11b92e9f75a2b545d6e9b6f37e398d86c3e9e9653c4864eb7e89c5773ef",
- "sha256:b3daeac64d5b371dea99714f08ffc2c208522ec6b06fbc7866a450dd446f5c0f",
- "sha256:be1e352acbe3c78727a16a455126d9ff83ea2dfdcbc83148d2982305a04714c2",
- "sha256:bee093bf902e1d8fc0ac143c88902c3dfc8941f7ea1d6a8dd2bcb786d33db03d",
- "sha256:c72fbbe68c6f32f251bdc08b8611c7b3060612236e960ef848e0a517ddbe76c5",
- "sha256:c9e36a97bee9b86ef9a1cf7bb96747eb7a15c2f22bdb5b516434b00f2a599f02",
- "sha256:cddf7bd982eaa998934a91f69d182aec997c6c468898efe6679af88283b498d3",
- "sha256:cf713fe9a71ef6fd5adf7a79670135081cd4431c2943864757f0fa3a65b1fafd",
- "sha256:d11b54acf878eef558599658b0ffca78138c8c3655cf4f3a4a673c437e67732e",
- "sha256:d41c4d287cfc69060fa91cae9683eacffad989f1a10811995fa309df656ec214",
- "sha256:d524ba3f1581b35c03cb42beebab4a13e6cdad7b36246bd22541fa585a56cccd",
- "sha256:daac4765328a919a805fa5e2720f3e94767abd632ae410a9062dff5412bae65a",
- "sha256:db4c7bf0e07fc3b7d89ac2a5880a6a8062056801b83ff56d8464b70f65482b6c",
- "sha256:dc7039885fa1baf9be153a0626e337aa7ec8bf96b0128605fb0d77788ddc1681",
- "sha256:dccab8d5fa1ef9bfba0590ecf4d46df048d18ffe3eec01eeb73a42e0d9e7a8ba",
- "sha256:dedb8adb91d11846ee08bec4c8236c8549ac721c245678282dcb06b221aab59f",
- "sha256:e45ba65510e2647721e35323d6ef54c7974959f6081b58d4ef5d87c60c84919a",
- "sha256:e53efc7c7cee4c1e70661e2e112ca46a575f90ed9ae3fef200f2a25e954f4b28",
- "sha256:e635b87f01ebc977342e2697d05b56632f5f879a4f15955dfe8cef2448b51691",
- "sha256:e70e990b2137b29dc5564715de1e12701815dacc1d056308e2b17e9095372a82",
- "sha256:e8082b26888e2f8b36a042a58307d5b917ef2b1cacab921ad3323ef91901c71a",
- "sha256:e8323a9b031aa0393768b87f04b4164a40037fb2a3c11ac06a03ffecd3618027",
- "sha256:e92fca20c46e9f5e1bb485887d074918b13543b1c2a1185e69bb8d17ab6236a7",
- "sha256:eb30abc20df9ab0814b5a2524f23d75dcf83cde762c161917a2b4b7b55b1e518",
- "sha256:eba9904b0f38a143592d9fc0e19e2df0fa2e41c3c3745554761c5f6447eedabf",
- "sha256:ef8de666d6179b009dce7bcb2ad4c4a779f113f12caf8dc77f0162c29d20490b",
- "sha256:efd387a49825780ff861998cd959767800d54f8308936b21025326de4b5a42b9",
- "sha256:f0aa37f3c979cf2546b73e8222bbfa3dc07a641585340179d768068e3455e544",
- "sha256:f4074c5a429281bf056ddd4c5d3b740ebca4d43ffffe2ef4bf4d2d05114299da",
- "sha256:f69a27e45c43520f5487f27627059b64aaf160415589230992cec34c5e18a509",
- "sha256:fb707f3e15060adf5b7ada797624a6c6e0138e2a26baa089df64c68ee98e040f",
- "sha256:fcbe676a55d7445b22c10967bceaaf0ee69407fbe0ece4d032b6eb8d4565982a",
- "sha256:fdb20a30fe1175ecabed17cbf7812f7b804b8a315a25f24678bcdf120a90077f"
+ "sha256:06a7e86163334edfc5d20fe104db92fcd666e5a5df0977cb5680a506fe26cc8e",
+ "sha256:0c173ce3a681f309f31b87125fecec7a5d1347261ea11ebbb856fa6006b23c8c",
+ "sha256:0e28d62a8fc7a1fa411c43bd65e346f3bce9716dc51b897fbe930c5987b402d5",
+ "sha256:0e901eb1049fdb80f5bd11ed5ea1e498ec423102f7a9b9e4645d5b8204ff2815",
+ "sha256:11afb56037cbc4b1555a34dd69151e8e069bee82e613a73bef6e714ce733585f",
+ "sha256:150b8ce8e830eb7ccb029ec9ca36022f756986aaaa7956aad6d9ec90089338c0",
+ "sha256:172985e4ff804a7ad08eebec0a1640ece87ba5041d565fff23c8f99c1f389484",
+ "sha256:197c1a244a274bb016dd8b79204850144ef77fe81c5b797dc389327adb552407",
+ "sha256:1ae6b62897110aa7c79ea2f5dd38d1abca6db663687c0b1ad9aed6f6bae3d9d6",
+ "sha256:1cf0a70018692f85172348fe06d3a4b63f94ecb055e13a00c644d368eb82e5b8",
+ "sha256:1ed80ff870ca6de33f4d953fda4d55654b9a2b340ff39ab32fa3adbcd718f264",
+ "sha256:22c6f0c2fbc31e76c3b8a86fba1a56eda6166e238c29cdd3d14befdb4a4e4815",
+ "sha256:231d4da14bcd9301310faf492051bee27df11f2bc7549bc0bb41fef11b82daa2",
+ "sha256:259695e2ccc253feb2a016303543d691825e920917e31f894ca1a687982b1de4",
+ "sha256:2a24157fa36980478dd1770b585c0f30d19e18f4fb0c47c13aa568f871718579",
+ "sha256:2b1a63e8224e401cafe7739f77efd3f9e7f5f2026bda4aead8e59afab537784f",
+ "sha256:2bd9d128ef93637a5d7a6af25363cf5dec3fa21cf80e68055aad627f280e8afa",
+ "sha256:2e1d8ca8611099001949d1cdfaefc510cf0f212484fe7c565f735b68c78c3c95",
+ "sha256:2ef7fedc7a6ecbe99969cd09632516738a97eeb8bd7258bf8a0f23114c057dab",
+ "sha256:2f7fdd9b6e6c529d6a2501a2d36b240109e78a8ceaef5687cfcfa2bbe671d297",
+ "sha256:30f445ae60aad5e1f8bdbb3108e39f6fbc09f4ea16c815c66578878325f8f15a",
+ "sha256:31215157227939b4fb3d740cd23fe27be0439afef67b785a1eb78a3ae69cba9e",
+ "sha256:34315ff4fc374b285ad7f4a0bf7dcbfe769e1b104230d40f49f700d4ab6bbd84",
+ "sha256:3516bbb8d42169de9e61b8520cbeeeb716f12f4ecfe3fd30a9919aa16c806ca8",
+ "sha256:3778fd7d7cd04ae8f54651f4a7a0bd6e39a0cf20f801720a4c21d80e9b7ad6b0",
+ "sha256:39f5068d35621da2881271e5c3205125cc456f54e9030d3f723288c873a71bf9",
+ "sha256:404a1e552cf5b675a87f0651f8b79f5f1e6fd100ee88dc612f89aa16abd4486f",
+ "sha256:419a9d91bd238052642a51938af8ac05da5b3343becde08d5cdeab9046df9ee1",
+ "sha256:423fb7e748a08f854a08a222b983f4df1912b1daedce51a72bd24fe8f26a1843",
+ "sha256:4482481cb0572180b6fd976a4d5c72a30263e98564da68b86ec91f0fe35e8565",
+ "sha256:461598cd852bfa5a61b09cae2b1c02e2efcd166ee5516e243d540ac24bfa68a7",
+ "sha256:47955475ac79cc504ef2704b192364e51d0d473ad452caedd0002605f780101c",
+ "sha256:48696db7f18afb80a068821504296eb0787d9ce239b91ca15059d1d3eaacf13b",
+ "sha256:4be9f4830ba8741527693848403e2c457c16e499100963ec711b1c6f2049b7c7",
+ "sha256:4d1d02209e06550bdaef34af58e041ad71b88e624f5d825519da3a3308e22687",
+ "sha256:4f41da960b196ea355357285ad1316a00099f22d0929fe168343b99b254729c9",
+ "sha256:517ad0e93394ac532745129ceabdf2696b609ec9f87863d337140317ebce1c14",
+ "sha256:51fb3c322c81d20567019778cb5a4a6f2dc1c200b886bc0d636238e364848c89",
+ "sha256:5273b9f0b5835ff0350c0828faea623c68bfa65b792720c453e22b25cc72930f",
+ "sha256:530d548084c4a9f7a16ed4a294d459b4f229db50df689bfe92027452452943a0",
+ "sha256:530e8cebeea0d76bdcf93357aa5e41336f48c3dc709ac52da2bb167c5b8271d9",
+ "sha256:54fae94be3d75f3e573c9a1b5402dc593de19377013c9a0e4285e3d402dd3a2a",
+ "sha256:572d7c822caf521f0525ba1bce1a622a0b85cf47ffbdae6c9c19e3b5ac3c4389",
+ "sha256:58c948d0d086229efc484fe2f30c2d382c86720f55cd9bc33591774348ad44e0",
+ "sha256:5d11595abf8dd942a77883a39d81433739b287b6aa71620f15164f8096221b30",
+ "sha256:5f8ddd609f9e1af8c7bd6e2aca279c931aefecd148a14402d4e368f3171769fd",
+ "sha256:5feb91325bbceade6afab43eb3b508c63ee53579fe896c77137ded51c6b6958e",
+ "sha256:60c74963d8350241a79cb8feea80e54d518f72c26db618862a8f53e5023deaf9",
+ "sha256:613f19aa6e082cf96e17e3ffd89383343d0d589abda756b7764cf78361fd41dc",
+ "sha256:659a1e1b500fac8f2779dd9e1570464e012f43e580371470b45277a27baa7532",
+ "sha256:695f5c2823691a25f17bc5d5ffe79fa90972cc34b002ac6c843bb8a1720e950d",
+ "sha256:69dd852c2f0ad631b8b60cfbe25a28c0058a894de5abb566619c205ce0550eae",
+ "sha256:6cceb5473417d28edd20c6c984ab6fee6c6267d38d906823ebfe20b03d607dc2",
+ "sha256:71be7e0e01753a89cf024abf7ecb6bca2c81738ead80d43004d9b5e3f1244e64",
+ "sha256:74119174722c4349af9708993118581686f343adc1c8c9c007d59be90d077f3f",
+ "sha256:74a2e659c7ecbc73562e2a15e05039f1e22c75b7c7618b4b574a3ea9118d1557",
+ "sha256:7504e9b7dc05f99a9bbb4525c67a2c155073b44d720470a148b34166a69c054e",
+ "sha256:79090741d842f564b1b2827c0b82d846405b744d31e84f18d7a7b41c20e473ff",
+ "sha256:7a6967aaf043bceabab5412ed6bd6bd26603dae84d5cb75bf8d9a74a4959d398",
+ "sha256:7bda6eebafd42133efdca535b04ccb338ab29467b3f7bf79569883676fc628db",
+ "sha256:7edbed096e4a4798710ed6bc75dcaa2a21b68b6c356553ac4823c3658d53743a",
+ "sha256:7f9019c9cb613f084481bd6a100b12e1547cf2efe362d873c2e31e4035a6fa43",
+ "sha256:802168e03fba8bbc5ce0d866d589e4b1ca751d06edee69f7f3a19c5a9fe6b597",
+ "sha256:80d0a5615143c0b3225e5e3ef22c8d5d51f3f72ce0ea6fb84c943546c7b25b6c",
+ "sha256:82060f995ab5003a2d6e0f4ad29065b7672b6593c8c63559beefe5b443242c3e",
+ "sha256:836ab36280f21fc1a03c99cd05c6b7af70d2697e374c7af0b61ed271401a72a2",
+ "sha256:8761ac29b6c81574724322a554605608a9960769ea83d2c73e396f3df896ad54",
+ "sha256:87725cfb1a4f1f8c2fc9890ae2f42094120f4b44db9360be5d99a4c6b0e03a9e",
+ "sha256:899d28f422116b08be5118ef350c292b36fc15ec2daeb9ea987c89281c7bb5c4",
+ "sha256:8bc5f0687d796c05b1e28ab0d38a50e6309906ee09375dd3aff6a9c09dd6e8f4",
+ "sha256:8bea55c4eef25b0b19a0337dc4e3f9a15b00d569c77211fa8cde38684f234fb7",
+ "sha256:8e5a94886bedca0f9b78fecd6afb6629142fd2605aa70a125d49f4edc6037ee6",
+ "sha256:90ca27cd8da8118b18a52d5f547859cc1f8354a00cd1e8e5120df3e30d6279e5",
+ "sha256:92734d4d8d187a354a556626c221cd1a892a4e0802ccb2af432a1d85ec012194",
+ "sha256:947cf925bc916d90adba35a64c82aace04fa39b46b52d4630ece166655905a69",
+ "sha256:95b52c68d64c1878818687a473a10547b3292e82b6f6fe483808fb1468e2f52f",
+ "sha256:97d0235baafca5f2b09cf332cc275f021e694e8362c6bb9c96fc9a0eb74fc316",
+ "sha256:9ca4c0b502ab399ef89248a2c84c54954f77a070f28e546a85e91da627d1301e",
+ "sha256:9cc4fc6c196d6a8b76629a70ddfcd4635a6898756e2d9cac5565cf0654605d73",
+ "sha256:9cc6e6d9e571d2f863fa77700701dae73ed5f78881efc8b3f9a4398772ff53e8",
+ "sha256:a056d1ad2633548ca18ffa2f85c202cfb48b68615129143915b8dc72a806a923",
+ "sha256:a26611d9987b230566f24a0a125f17fe0de6a6aff9f25c9f564aaa2721a5fb88",
+ "sha256:a4474d924a47185a06411e0064b803c68be044be2d60e50e8bddcc2649957c1f",
+ "sha256:a4ea868bc28109052790eb2b52a9ab33f3aa7adc02f96673526ff47419490e21",
+ "sha256:a9e68c9d88823b274cf1e72f28cb5dc89c990edf430b0bfd3e2fb0785bfeabf4",
+ "sha256:aa9cccf4a44b9b62d8ba8b4dd06c649ba683e4bf04eea606d2e94cfc2d6ff4d6",
+ "sha256:ab30e5e3e706e3063bc6de96b118688cb10396b70bb9864a430f67df98c61ecc",
+ "sha256:ac2393c73378fea4e52aa56285a3d64be50f1a12395afef9cce47772f60334c2",
+ "sha256:ad8faf8df23f0378c6d527d8b0b15ea4a2e23c89376877c598c4870d1b2c7866",
+ "sha256:b35b200d6a71b9839a46b9b7fff66b6638bb52fc9658aa58796b0326595d3021",
+ "sha256:b3694e3f87f8ac7ce279d4355645b3c878d24d1424581b46282f24b92f5a4ae2",
+ "sha256:b4ff1d35e8c5bd078be89349b6f3a845128e685e751b6ea1169cf2160b344c4d",
+ "sha256:bbc8c8650c6e51041ad1be191742b8b421d05bbd3410f43fa2a00c8db87678e8",
+ "sha256:bc72863f4d9aba2e8fd9085e63548a324ba706d2ea2c83b260da08a59b9482de",
+ "sha256:bf625105bb9eef28a56a943fec8c8a98aeb80e7d7db99bd3c388137e6eb2d237",
+ "sha256:c2274ca724536f173122f36c98ce188fd24ce3dad886ec2b7af859518ce008a4",
+ "sha256:c45a03a4c69820a399f1dda9e1d8fbf3562eda46e7720458180302021b08f778",
+ "sha256:c8ae56368f8cc97c7e40a7ee18e1cedaf8e780cd8bc5ed5ac8b81f238614facb",
+ "sha256:c907cdc8109f6c619e6254212e794d6548373cc40e1ec75e6e3823d9135d29cc",
+ "sha256:ca0276464d148c72defa8bb4390cce01b4a0e425f3b50d1435aa6d7a18107602",
+ "sha256:cd5e2801c89992ed8c0a3f0293ae83c159a60d9a5d685005383ef4caca77f2c4",
+ "sha256:d08ec48f0a1c48d75d0356cea971921848fb620fdeba805b28f937e90691209f",
+ "sha256:d1a2ee9c1499fc8f86f4521f27a973c914b211ffa87322f4ee33bb35392da2c5",
+ "sha256:d5f5d1e9def3405f60e3ca8232d56f35c98fb7bf581efcc60051ebf53cb8b611",
+ "sha256:d60377dce4511655582e300dc1e5a5f24ba0cb229005a1d5c8d0cb72bb758ab8",
+ "sha256:d73beaac5e90173ac3deb9928a74763a6d230f494e4bfb422c217a0ad8e629bf",
+ "sha256:d7de2637729c67d67cf87614b566626057e95c303bc0a55ffe391f5205e7003d",
+ "sha256:dad6e0f2e481fffdcf776d10ebee25e0ef89f16d691f1e5dee4b586375fdc64b",
+ "sha256:dda86aba335c902b6149a02a55b38e96287157e609200811837678214ba2b1db",
+ "sha256:df01808ee470038c3f8dc4f48620df7225c49c2d6639e38f96e6d6ac6e6f7b0e",
+ "sha256:e1f6e2f00a6b8edb562826e4632e26d063ac10307e80f7461f7de3ad8ef3f077",
+ "sha256:e25369dc110d58ddf29b949377a93e0716d72a24f62bad72b2b39f155949c1fd",
+ "sha256:e3c701e954abf6fc03a49f7c579cc80c2c6cc52525340ca3186c41d3f33482ef",
+ "sha256:e5bcc1a1ae744e0bb59641171ae53743760130600da8db48cbb6e4918e186e4e",
+ "sha256:e68c14b04827dd76dcbd1aeea9e604e3e4b78322d8faf2f8132c7138efa340a8",
+ "sha256:e8aeb10fcbe92767f0fa69ad5a72deca50d0dca07fbde97848997d778a50c9fe",
+ "sha256:e985a16ff513596f217cee86c21371b8cd011c0f6f056d0920aa2d926c544058",
+ "sha256:ecbbd45615a6885fe3240eb9db73b9e62518b611850fdf8ab08bd56de7ad2b17",
+ "sha256:ee4ec14bc1680d6b0afab9aea2ef27e26d2024f18b24a2d7155a52b60da7e833",
+ "sha256:ef5960d965e67165d75b7c7ffc60a83ec5abfc5c11b764ec13ea54fbef8b4421",
+ "sha256:f0cdaecd4c953bfae0b6bb64910aaaca5a424ad9c72d85cb88417bb9814f7550",
+ "sha256:f1ce721c8a7dfec21fcbdfe04e8f68174183cf4e8188e0645e92aa23985c57ff",
+ "sha256:f50498891691e0864dc3da965f340fada0771f6142a378083dc4608f4ea513e2",
+ "sha256:f5ea69428fa1b49573eef0cc44a1d43bebd45ad0c611eb7d7eac760c7ae771bc",
+ "sha256:f61aa92e4aad0be58eb6eb4e0c21acf32cf8065f4b2cae5665da756c4ceef982",
+ "sha256:f6e4333fb15c83f7d1482a76d45a0818897b3d33f00efd215528ff7c51b8e35d",
+ "sha256:f820f24b09e3e779fe84c3c456cb4108a7aa639b0d1f02c28046e11bfcd088ed",
+ "sha256:f98059e4fcd3e3e4e2d632b7cf81c2faae96c43c60b569e9c621468082f1d104",
+ "sha256:fcce033e4021347d80ed9c66dcf1e7b1546319834b74445f561d2e2221de5659"
],
"markers": "python_version >= '3.7'",
- "version": "==3.4.2"
+ "version": "==3.4.6"
},
"docutils": {
"hashes": [
- "sha256:3a6b18732edf182daa3cd12775bbb338cf5691468f91eeeb109deff6ebfa986f",
- "sha256:dafca5b9e384f0e419294eb4d2ff9fa826435bf15f15b7bd45723e8ad76811b2"
+ "sha256:4db53b1fde9abecbb74d91230d32ab626d94f6badfc575d6db9194a49df29968",
+ "sha256:d0013f540772d1420576855455d050a2180186c91c15779301ac2ccb3eeb68de"
],
"markers": "python_version >= '3.9'",
- "version": "==0.21.2"
+ "version": "==0.22.4"
},
"id": {
"hashes": [
- "sha256:292cb8a49eacbbdbce97244f47a97b4c62540169c976552e497fd57df0734c1d",
- "sha256:f1434e1cef91f2cbb8a4ec64663d5a23b9ed43ef44c4c957d02583d61714c658"
+ "sha256:d0732d624fb46fd4e7bc4e5152f00214450953b9e772c182c1c22964def1a069",
+ "sha256:f5ec41ed2629a508f5d0988eda142e190c9c6da971100612c4de9ad9f9b237ca"
],
- "markers": "python_version >= '3.8'",
- "version": "==1.5.0"
+ "markers": "python_version >= '3.9'",
+ "version": "==1.6.1"
},
"idna": {
"hashes": [
@@ -477,11 +606,11 @@
},
"importlib-metadata": {
"hashes": [
- "sha256:d13b81ad223b890aa16c5471f2ac3056cf76c5f10f82d6f9292f0b415f389000",
- "sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd"
+ "sha256:2d21d1cc5a017bd0559e36150c21c830ab1dc304dedd1b7ea85d20f45ef3edd7",
+ "sha256:a4f57ab599e6a2e3016d7595cfd72eb4661a5106e787a95bcc90c7105b831efc"
],
- "markers": "python_version >= '3.9'",
- "version": "==8.7.0"
+ "markers": "python_version >= '3.10'",
+ "version": "==9.0.0"
},
"jaraco.classes": {
"hashes": [
@@ -493,35 +622,131 @@
},
"jaraco.context": {
"hashes": [
- "sha256:9bae4ea555cf0b14938dc0aee7c9f32ed303aa20a3b73e7dc80111628792d1b3",
- "sha256:f797fc481b490edb305122c9181830a3a5b76d84ef6d1aef2fb9b47ab956f9e4"
+ "sha256:bf8150b79a2d5d91ae48629d8b427a8f7ba0e1097dd6202a9059f29a36379535",
+ "sha256:f1a6c9d391e661cc5b8d39861ff077a7dc24dc23833ccee564b234b81c82dfe3"
],
- "markers": "python_version >= '3.8'",
- "version": "==6.0.1"
+ "markers": "python_version >= '3.10'",
+ "version": "==6.1.2"
},
"jaraco.functools": {
"hashes": [
- "sha256:590486285803805f4b1f99c60ca9e94ed348d4added84b74c7a12885561e524e",
- "sha256:be634abfccabce56fa3053f8c7ebe37b682683a4ee7793670ced17bab0087353"
+ "sha256:9eec1e36f45c818d9bf307c8948eb03b2b56cd44087b3cdc989abca1f20b9176",
+ "sha256:da21933b0417b89515562656547a77b4931f98176eb173644c0d35032a33d6bb"
],
"markers": "python_version >= '3.9'",
- "version": "==4.2.1"
+ "version": "==4.4.0"
},
"keyring": {
"hashes": [
- "sha256:0b39998aa941431eb3d9b0d4b2460bc773b9df6fed7621c2dfb291a7e0187a66",
- "sha256:552a3f7af126ece7ed5c89753650eec89c7eaae8617d0aa4d9ad2b75111266bd"
+ "sha256:be4a0b195f149690c166e850609a477c532ddbfbaed96a404d4e43f8d5e2689f",
+ "sha256:fe01bd85eb3f8fb3dd0405defdeac9a5b4f6f0439edbb3149577f244a2e8245b"
],
"markers": "python_version >= '3.9'",
- "version": "==25.6.0"
+ "version": "==25.7.0"
+ },
+ "librt": {
+ "hashes": [
+ "sha256:01170b6729a438f0dedc4a26ed342e3dc4f02d1000b4b19f980e1877f0c297e6",
+ "sha256:039b9f2c506bd0ab0f8725aa5ba339c6f0cd19d3b514b50d134789809c24285d",
+ "sha256:05bd41cdee35b0c59c259f870f6da532a2c5ca57db95b5f23689fcb5c9e42440",
+ "sha256:086a32dbb71336627e78cc1d6ee305a68d038ef7d4c39aaff41ae8c9aa46e91a",
+ "sha256:08eec3a1fc435f0d09c87b6bf1ec798986a3544f446b864e4099633a56fcd9ed",
+ "sha256:0bf69d79a23f4f40b8673a947a234baeeb133b5078b483b7297c5916539cf5d5",
+ "sha256:0c3811485fccfda840861905b8c70bba5ec094e02825598bb9d4ca3936857a04",
+ "sha256:0d2f82168e55ddefd27c01c654ce52379c0750ddc31ee86b4b266bcf4d65f2a3",
+ "sha256:0f2ae3725904f7377e11cc37722d5d401e8b3d5851fb9273d7f4fe04f6b3d37d",
+ "sha256:10c42e1f6fd06733ef65ae7bebce2872bcafd8d6e6b0a08fe0a05a23b044fb14",
+ "sha256:153188fe98a72f206042be10a2c6026139852805215ed9539186312d50a8e972",
+ "sha256:172d57ec04346b047ca6af181e1ea4858086c80bdf455f61994c4aa6fc3f866c",
+ "sha256:190b109bb69592a3401fe1ffdea41a2e73370ace2ffdc4a0e8e2b39cdea81b78",
+ "sha256:1d3a7da44baf692f0c6aeb5b2a09c5e6fc7a703bca9ffa337ddd2e2da53f7732",
+ "sha256:228c2409c079f8c11fb2e5d7b277077f694cb93443eb760e00b3b83cb8b3176c",
+ "sha256:22b46eabd76c1986ee7d231b0765ad387d7673bbd996aa0d0d054b38ac65d8f6",
+ "sha256:237796479f4d0637d6b9cbcb926ff424a97735e68ade6facf402df4ec93375ed",
+ "sha256:2c74a2da57a094bd48d03fa5d196da83d2815678385d2978657499063709abe1",
+ "sha256:2cc68eeeef5e906839c7bb0815748b5b0a974ec27125beefc0f942715785b551",
+ "sha256:2eb345e8b33fb748227409c9f1233d4df354d6e54091f0e8fc53acdb2ffedeb7",
+ "sha256:31362dbfe297b23590530007062c32c6f6176f6099646bb2c95ab1b00a57c382",
+ "sha256:3dff3d3ca8db20e783b1bc7de49c0a2ab0b8387f31236d6a026597d07fcd68ac",
+ "sha256:43353b943613c5d9c49a25aaffdba46f888ec354e71e3529a00cca3f04d66a7a",
+ "sha256:439352ba9373f11cb8e1933da194dcc6206daf779ff8df0ed69c5e39113e6a99",
+ "sha256:4998009e7cb9e896569f4be7004f09d0ed70d386fa99d42b6d363f6d200501ac",
+ "sha256:4be2a5c926b9770c9e08e717f05737a269b9d0ebc5d2f0060f0fe3fe9ce47acb",
+ "sha256:4beb04b8c66c6ae62f8c1e0b2f097c1ebad9295c929a8d5286c05eae7c2fc7dc",
+ "sha256:4c8dfa264b9193c4ee19113c985c95f876fae5e51f731494fc4e0cf594990ba7",
+ "sha256:5212a5bd7fae98dae95710032902edcd2ec4dc994e883294f75c857b83f9aba0",
+ "sha256:52c224e14614b750c0a6d97368e16804a98c684657c7518752c356834fff83bb",
+ "sha256:56e04c14b696300d47b3bc5f1d10a00e86ae978886d0cee14e5714fafb5df5d2",
+ "sha256:5bb54f1205a3a6ab41a6fd71dfcdcbd278670d3a90ca502a30d9da583105b6f7",
+ "sha256:5cdc0f588ff4b663ea96c26d2a230c525c6fc62b28314edaaaca8ed5af931ad0",
+ "sha256:5db05697c82b3a2ec53f6e72b2ed373132b0c2e05135f0696784e97d7f5d48e7",
+ "sha256:5e4af413908f77294605e28cfd98063f54b2c790561383971d2f52d113d9c363",
+ "sha256:5fc48998000cbc39ec0d5311312dda93ecf92b39aaf184c5e817d5d440b29624",
+ "sha256:60a78b694c9aee2a0f1aaeaa7d101cf713e92e8423a941d2897f4fa37908dab9",
+ "sha256:64548cde61b692dc0dc379f4b5f59a2f582c2ebe7890d09c1ae3b9e66fa015b7",
+ "sha256:681dc2451d6d846794a828c16c22dc452d924e9f700a485b7ecb887a30aad1fd",
+ "sha256:6b1977c4ea97ce5eb7755a78fae68d87e4102e4aaf54985e8b56806849cc06a3",
+ "sha256:6cfa7fe54fd4d1f47130017351a959fe5804bda7a0bc7e07a2cdbc3fdd28d34f",
+ "sha256:738f08021b3142c2918c03692608baed43bc51144c29e35807682f8070ee2a3a",
+ "sha256:747328be0c5b7075cde86a0e09d7a9196029800ba75a1689332348e998fb85c0",
+ "sha256:758509ea3f1eba2a57558e7e98f4659d0ea7670bff49673b0dde18a3c7e6c0eb",
+ "sha256:785ae29c1f5c6e7c2cde2c7c0e148147f4503da3abc5d44d482068da5322fd9e",
+ "sha256:7aae78ab5e3206181780e56912d1b9bb9f90a7249ce12f0e8bf531d0462dd0fc",
+ "sha256:7b02679a0d783bdae30d443025b94465d8c3dc512f32f5b5031f93f57ac32071",
+ "sha256:7e2f3edca35664499fbb36e4770650c4bd4a08abc1f4458eab9df4ec56389730",
+ "sha256:7e6bad1cd94f6764e1e21950542f818a09316645337fd5ab9a7acc45d99a8f35",
+ "sha256:81fd938344fecb9373ba1b155968c8a329491d2ce38e7ddb76f30ffb938f12dc",
+ "sha256:82210adabbc331dbb65d7868b105185464ef13f56f7f76688565ad79f648b0fe",
+ "sha256:89815a22daf9c51884fb5dbe4f1ef65ee6a146e0b6a8df05f753e2e4a9359bf4",
+ "sha256:8f1125e6bbf2f1657d9a2f3ccc4a2c9b0c8b176965bb565dd4d86be67eddb4b6",
+ "sha256:8f4bb453f408137d7581be309b2fbc6868a80e7ef60c88e689078ee3a296ae71",
+ "sha256:924817ab3141aca17893386ee13261f1d100d1ef410d70afe4389f2359fea4f0",
+ "sha256:93c2af9e01e0ef80d95ae3c720be101227edae5f2fe7e3dc63d8857fadfc5a1d",
+ "sha256:97c2b54ff6717a7a563b72627990bec60d8029df17df423f0ed37d56a17a176b",
+ "sha256:9be2f15e53ce4e83cc08adc29b26fb5978db62ef2a366fbdf716c8a6c8901040",
+ "sha256:9e2c6f77b9ad48ce5603b83b7da9ee3e36b3ab425353f695cba13200c5d96596",
+ "sha256:a28f2612ab566b17f3698b0da021ff9960610301607c9a5e8eaca62f5e1c350a",
+ "sha256:a355d99c4c0d8e5b770313b8b247411ed40949ca44e33e46a4789b9293a907ee",
+ "sha256:a3b4350b13cc0e6f5bec8fa7caf29a8fb8cdc051a3bae45cfbfd7ce64f009965",
+ "sha256:aaab0e307e344cb28d800957ef3ec16605146ef0e59e059a60a176d19543d1b7",
+ "sha256:ac1e7817fd0ed3d14fd7c5df91daed84c48e4c2a11ee99c0547f9f62fdae13da",
+ "sha256:adfab487facf03f0d0857b8710cf82d0704a309d8ffc33b03d9302b4c64e91a9",
+ "sha256:b6d7ab1f01aa753188605b09a51faa44a3327400b00b8cce424c71910fc0a128",
+ "sha256:bacdb58d9939d95cc557b4dbaa86527c9db2ac1ed76a18bc8d26f6dc8647d851",
+ "sha256:be46a14693955b3bd96014ccbdb8339ee8c9346fbe11c1b78901b55125f14c73",
+ "sha256:bf512a71a23504ed08103a13c941f763db13fb11177beb3d9244c98c29fb4a61",
+ "sha256:c00e5c884f528c9932d278d5c9cbbea38a6b81eb62c02e06ae53751a83a4d52b",
+ "sha256:c25d9e338d5bed46c1632f851babf3d13c78f49a225462017cf5e11e845c5891",
+ "sha256:c336d61d2fe74a3195edc1646d53ff1cddd3a9600b09fa6ab75e5514ba4862a7",
+ "sha256:cc3656283d11540ab0ea01978378e73e10002145117055e03722417aeab30994",
+ "sha256:cf450f498c30af55551ba4f66b9123b7185362ec8b625a773b3d39aa1a717583",
+ "sha256:d0ee06b5b5291f609ddb37b9750985b27bc567791bc87c76a569b3feed8481ac",
+ "sha256:d480de377f5b687b6b1bc0c0407426da556e2a757633cc7e4d2e1a057aa688f3",
+ "sha256:d56bc4011975f7460bea7b33e1ff425d2f1adf419935ff6707273c77f8a4ada6",
+ "sha256:dd3c41254ee98604b08bd5b3af5bf0a89740d4ee0711de95b65166bf44091921",
+ "sha256:e0d138c7ae532908cbb342162b2611dbd4d90c941cd25ab82084aaf71d2c0bd0",
+ "sha256:e11769a1dbda4da7b00a76cfffa67aa47cfa66921d2724539eee4b9ede780b79",
+ "sha256:e3f0a41487fd5fad7e760b9e8a90e251e27c2816fbc2cff36a22a0e6bcbbd9dd",
+ "sha256:e692aa2d1d604e6ca12d35e51fdc36f4cda6345e28e36374579f7ef3611b3012",
+ "sha256:e70a57ecf89a0f64c24e37f38d3fe217a58169d2fe6ed6d70554964042474023",
+ "sha256:e96baa6820280077a78244b2e06e416480ed859bbd8e5d641cf5742919d8beb4",
+ "sha256:eb5656019db7c4deacf0c1a55a898c5bb8f989be904597fcb5232a2f4828fa05",
+ "sha256:eca45e982fa074090057132e30585a7e8674e9e885d402eae85633e9f449ce6c",
+ "sha256:f0af2bd2bc204fa27f3d6711d0f360e6b8c684a035206257a81673ab924aa11e",
+ "sha256:f7cdf7f26c2286ffb02e46d7bac56c94655540b26347673bea15fa52a6af17e9",
+ "sha256:fd1a720332ea335ceb544cf0a03f81df92abd4bb887679fd1e460976b0e6214b",
+ "sha256:ff8baf1f8d3f4b6b7257fcb75a501f2a5499d0dda57645baa09d4d0d34b19444"
+ ],
+ "markers": "python_version >= '3.9'",
+ "version": "==0.8.1"
},
"markdown-it-py": {
"hashes": [
- "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1",
- "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"
+ "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147",
+ "sha256:cb0a2b4aa34f932c007117b194e945bd74e0ec24133ceb5bac59009cda1cb9f3"
],
- "markers": "python_version >= '3.8'",
- "version": "==3.0.0"
+ "markers": "python_version >= '3.10'",
+ "version": "==4.0.0"
},
"mdurl": {
"hashes": [
@@ -533,50 +758,56 @@
},
"more-itertools": {
"hashes": [
- "sha256:9fddd5403be01a94b204faadcff459ec3568cf110265d3c54323e1e866ad29d3",
- "sha256:d43980384673cb07d2f7d2d918c616b30c659c089ee23953f601d6609c67510e"
+ "sha256:52d4362373dcf7c52546bc4af9a86ee7c4579df9a8dc268be0a2f949d376cc9b",
+ "sha256:f638ddf8a1a0d134181275fb5d58b086ead7c6a72429ad725c67503f13ba30bd"
],
"markers": "python_version >= '3.9'",
- "version": "==10.7.0"
+ "version": "==10.8.0"
},
"mypy": {
"hashes": [
- "sha256:051e1677689c9d9578b9c7f4d206d763f9bbd95723cd1416fad50db49d52f359",
- "sha256:08e850ea22adc4d8a4014651575567b0318ede51e8e9fe7a68f25391af699507",
- "sha256:09aa4f91ada245f0a45dbc47e548fd94e0dd5a8433e0114917dc3b526912a30c",
- "sha256:0a7cfb0fe29fe5a9841b7c8ee6dffb52382c45acdf68f032145b75620acfbd6f",
- "sha256:0ab5eca37b50188163fa7c1b73c685ac66c4e9bdee4a85c9adac0e91d8895e15",
- "sha256:1256688e284632382f8f3b9e2123df7d279f603c561f099758e66dd6ed4e8bd6",
- "sha256:13c7cd5b1cb2909aa318a90fd1b7e31f17c50b242953e7dd58345b2a814f6383",
- "sha256:1f0435cf920e287ff68af3d10a118a73f212deb2ce087619eb4e648116d1fe9b",
- "sha256:211287e98e05352a2e1d4e8759c5490925a7c784ddc84207f4714822f8cf99b6",
- "sha256:22d76a63a42619bfb90122889b903519149879ddbf2ba4251834727944c8baca",
- "sha256:2c7ce0662b6b9dc8f4ed86eb7a5d505ee3298c04b40ec13b30e572c0e5ae17c4",
- "sha256:352025753ef6a83cb9e7f2427319bb7875d1fdda8439d1e23de12ab164179574",
- "sha256:44e7acddb3c48bd2713994d098729494117803616e116032af192871aed80b79",
- "sha256:472e4e4c100062488ec643f6162dd0d5208e33e2f34544e1fc931372e806c0cc",
- "sha256:4f58ac32771341e38a853c5d0ec0dfe27e18e27da9cdb8bbc882d2249c71a3ee",
- "sha256:58e07fb958bc5d752a280da0e890c538f1515b79a65757bbdc54252ba82e0b40",
- "sha256:5e198ab3f55924c03ead626ff424cad1732d0d391478dfbf7bb97b34602395da",
- "sha256:5fc2ac4027d0ef28d6ba69a0343737a23c4d1b83672bf38d1fe237bdc0643b37",
- "sha256:66df38405fd8466ce3517eda1f6640611a0b8e70895e2a9462d1d4323c5eb4b9",
- "sha256:6bd00a0a2094841c5e47e7374bb42b83d64c527a502e3334e1173a0c24437bab",
- "sha256:7fc688329af6a287567f45cc1cefb9db662defeb14625213a5b7da6e692e2069",
- "sha256:86042bbf9f5a05ea000d3203cf87aa9d0ccf9a01f73f71c58979eb9249f46d72",
- "sha256:87ff2c13d58bdc4bbe7dc0dedfe622c0f04e2cb2a492269f3b418df2de05c536",
- "sha256:af4792433f09575d9eeca5c63d7d90ca4aeceda9d8355e136f80f8967639183d",
- "sha256:b4f0fed1022a63c6fec38f28b7fc77fca47fd490445c69d0a66266c59dd0b88a",
- "sha256:d5d2309511cc56c021b4b4e462907c2b12f669b2dbeb68300110ec27723971be",
- "sha256:ddc91eb318c8751c69ddb200a5937f1232ee8efb4e64e9f4bc475a33719de438",
- "sha256:dedb6229b2c9086247e21a83c309754b9058b438704ad2f6807f0d8227f6ebdd",
- "sha256:ea16e2a7d2714277e349e24d19a782a663a34ed60864006e8585db08f8ad1782",
- "sha256:ea7469ee5902c95542bea7ee545f7006508c65c8c54b06dc2c92676ce526f3ea",
- "sha256:f895078594d918f93337a505f8add9bd654d1a24962b4c6ed9390e12531eb31b",
- "sha256:ff9fa5b16e4c1364eb89a4d16bcda9987f05d39604e1e6c35378a2987c1aac2d"
+ "sha256:016f2246209095e8eda7538944daa1d60e1e8134d98983b9fc1e92c1fc0cb8dd",
+ "sha256:022ea7279374af1a5d78dfcab853fe6a536eebfda4b59deab53cd21f6cd9f00b",
+ "sha256:06e6170bd5836770e8104c8fdd58e5e725cfeb309f0a6c681a811f557e97eac1",
+ "sha256:19d88bb05303fe63f71dd2c6270daca27cb9401c4ca8255fe50d1d920e0eb9ba",
+ "sha256:21761006a7f497cb0d4de3d8ef4ca70532256688b0523eee02baf9eec895e27b",
+ "sha256:28902ee51f12e0f19e1e16fbe2f8f06b6637f482c459dd393efddd0ec7f82045",
+ "sha256:2899753e2f61e571b3971747e302d5f420c3fd09650e1951e99f823bc3089dac",
+ "sha256:2abb24cf3f17864770d18d673c85235ba52456b36a06b6afc1e07c1fdcd3d0e6",
+ "sha256:34c81968774648ab5ac09c29a375fdede03ba253f8f8287847bd480782f73a6a",
+ "sha256:409088884802d511ee52ca067707b90c883426bd95514e8cfda8281dc2effe24",
+ "sha256:481daf36a4c443332e2ae9c137dfee878fcea781a2e3f895d54bd3002a900957",
+ "sha256:4b84a7a18f41e167f7995200a1d07a4a6810e89d29859df936f1c3923d263042",
+ "sha256:4f28f99c824ecebcdaa2e55d82953e38ff60ee5ec938476796636b86afa3956e",
+ "sha256:5f05aa3d375b385734388e844bc01733bd33c644ab48e9684faa54e5389775ec",
+ "sha256:7bcfc336a03a1aaa26dfce9fff3e287a3ba99872a157561cbfcebe67c13308e3",
+ "sha256:804bd67b8054a85447c8954215a906d6eff9cabeabe493fb6334b24f4bfff718",
+ "sha256:8bb5c6f6d043655e055be9b542aa5f3bdd30e4f3589163e85f93f3640060509f",
+ "sha256:a009ffa5a621762d0c926a078c2d639104becab69e79538a494bcccb62cc0331",
+ "sha256:a8174a03289288c1f6c46d55cef02379b478bfbc8e358e02047487cad44c6ca1",
+ "sha256:ab43590f9cd5108f41aacf9fca31841142c786827a74ab7cc8a2eacb634e09a1",
+ "sha256:b10e7c2cd7870ba4ad9b2d8a6102eb5ffc1f16ca35e3de6bfa390c1113029d13",
+ "sha256:b13cfdd6c87fc3efb69ea4ec18ef79c74c3f98b4e5498ca9b85ab3b2c2329a67",
+ "sha256:b64d987153888790bcdb03a6473d321820597ab8dd9243b27a92153c4fa50fd2",
+ "sha256:b7951a701c07ea584c4fe327834b92a30825514c868b1f69c30445093fdd9d5a",
+ "sha256:bdb12f69bcc02700c2b47e070238f42cb87f18c0bc1fc4cdb4fb2bc5fd7a3b8b",
+ "sha256:c35d298c2c4bba75feb2195655dfea8124d855dfd7343bf8b8c055421eaf0cf8",
+ "sha256:c608937067d2fc5a4dd1a5ce92fd9e1398691b8c5d012d66e1ddd430e9244376",
+ "sha256:c9a6538e0415310aad77cb94004ca6482330fece18036b5f360b62c45814c4ef",
+ "sha256:d8dfc6ab58ca7dda47d9237349157500468e404b17213d44fc1cb77bce532288",
+ "sha256:da4869fc5e7f62a88f3fe0b5c919d1d9f7ea3cef92d3689de2823fd27e40aa75",
+ "sha256:de759aafbae8763283b2ee5869c7255391fbc4de3ff171f8f030b5ec48381b74",
+ "sha256:e3157c7594ff2ef1634ee058aafc56a82db665c9438fd41b390f3bde1ab12250",
+ "sha256:e3f276d8493c3c97930e354b2595a44a21348b320d859fb4a2b9f66da9ed27ab",
+ "sha256:ee4c11e460685c3e0c64a4c5de82ae143622410950d6be863303a1c4ba0e36d6",
+ "sha256:f1235f5ea01b7db5468d53ece6aaddf1ad0b88d9e7462b86ef96fe04995d7247",
+ "sha256:f7cee03c9a2e2ee26ec07479f38ea9c884e301d42c6d43a19d20fb014e3ba925",
+ "sha256:f859fb09d9583a985be9a493d5cfc5515b56b08f7447759a0c5deaf68d80506e",
+ "sha256:ffcebe56eb09ff0c0885e750036a095e23793ba6c2e894e7e63f6d89ad51f22e"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==1.16.1"
+ "version": "==1.19.1"
},
"mypy-extensions": {
"hashes": [
@@ -588,58 +819,62 @@
},
"nh3": {
"hashes": [
- "sha256:087ffadfdcd497658c3adc797258ce0f06be8a537786a7217649fc1c0c60c293",
- "sha256:20979783526641c81d2f5bfa6ca5ccca3d1e4472474b162c6256745fbfe31cd1",
- "sha256:2a5174551f95f2836f2ad6a8074560f261cf9740a48437d6151fd2d4d7d617ab",
- "sha256:31eedcd7d08b0eae28ba47f43fd33a653b4cdb271d64f1aeda47001618348fde",
- "sha256:4990e7ee6a55490dbf00d61a6f476c9a3258e31e711e13713b2ea7d6616f670e",
- "sha256:55823c5ea1f6b267a4fad5de39bc0524d49a47783e1fe094bcf9c537a37df251",
- "sha256:6141caabe00bbddc869665b35fc56a478eb774a8c1dfd6fba9fe1dfdf29e6efa",
- "sha256:637d4a10c834e1b7d9548592c7aad760611415fcd5bd346f77fd8a064309ae6d",
- "sha256:63ca02ac6f27fc80f9894409eb61de2cb20ef0a23740c7e29f9ec827139fa578",
- "sha256:6ae319f17cd8960d0612f0f0ddff5a90700fa71926ca800e9028e7851ce44a6f",
- "sha256:6c9c30b8b0d291a7c5ab0967ab200598ba33208f754f2f4920e9343bdd88f79a",
- "sha256:713d16686596e556b65e7f8c58328c2df63f1a7abe1277d87625dcbbc012ef82",
- "sha256:818f2b6df3763e058efa9e69677b5a92f9bc0acff3295af5ed013da544250d5b",
- "sha256:9d67709bc0d7d1f5797b21db26e7a8b3d15d21c9c5f58ccfe48b5328483b685b",
- "sha256:a5f77e62aed5c4acad635239ac1290404c7e940c81abe561fd2af011ff59f585",
- "sha256:a772dec5b7b7325780922dd904709f0f5f3a79fbf756de5291c01370f6df0967",
- "sha256:a7ea28cd49293749d67e4fcf326c554c83ec912cd09cd94aa7ec3ab1921c8283",
- "sha256:ac7006c3abd097790e611fe4646ecb19a8d7f2184b882f6093293b8d9b887431",
- "sha256:b3b5c58161e08549904ac4abd450dacd94ff648916f7c376ae4b2c0652b98ff9",
- "sha256:b8d55ea1fc7ae3633d758a92aafa3505cd3cc5a6e40470c9164d54dff6f96d42",
- "sha256:bb0014948f04d7976aabae43fcd4cb7f551f9f8ce785a4c9ef66e6c2590f8629",
- "sha256:d002b648592bf3033adfd875a48f09b8ecc000abd7f6a8769ed86b6ccc70c759",
- "sha256:d426d7be1a2f3d896950fe263332ed1662f6c78525b4520c8e9861f8d7f0d243",
- "sha256:fcff321bd60c6c5c9cb4ddf2554e22772bb41ebd93ad88171bbbb6f271255286"
+ "sha256:07999b998bf89692738f15c0eac76a416382932f855709e0b7488b595c30ec89",
+ "sha256:0961a27dc2057c38d0364cb05880e1997ae1c80220cbc847db63213720b8f304",
+ "sha256:0d825722a1e8cbc87d7ca1e47ffb1d2a6cf343ad4c1b8465becf7cadcabcdfd0",
+ "sha256:18a2e44ccb29cbb45071b8f3f2dab9ebfb41a6516f328f91f1f1fd18196239a4",
+ "sha256:3390e4333883673a684ce16c1716b481e91782d6f56dec5c85fed9feedb23382",
+ "sha256:41e46b3499918ab6128b6421677b316e79869d0c140da24069d220a94f4e72d1",
+ "sha256:43ad4eedee7e049b9069bc015b7b095d320ed6d167ecec111f877de1540656e9",
+ "sha256:47d749d99ae005ab19517224140b280dd56e77b33afb82f9b600e106d0458003",
+ "sha256:4aa8b43e68c26b68069a3b6cef09de166d1d7fa140cf8d77e409a46cbf742e44",
+ "sha256:554cc2bab281758e94d770c3fb0bf2d8be5fb403ef6b2e8841dd7c1615df7a0f",
+ "sha256:72e4e9ca1c4bd41b4a28b0190edc2e21e3f71496acd36a0162858e1a28db3d7e",
+ "sha256:75643c22f5092d8e209f766ee8108c400bc1e44760fc94d2d638eb138d18f853",
+ "sha256:7cae217f031809321db962cd7e092bda8d4e95a87f78c0226628fa6c2ea8ebc5",
+ "sha256:80b955d802bf365bd42e09f6c3d64567dce777d20e97968d94b3e9d9e99b265e",
+ "sha256:87dac8d611b4a478400e0821a13b35770e88c266582f065e7249d6a37b0f86e8",
+ "sha256:883d5a6d6ee8078c4afc8e96e022fe579c4c265775ff6ee21e39b8c542cabab3",
+ "sha256:8b61058f34c2105d44d2a4d4241bacf603a1ef5c143b08766bbd0cf23830118f",
+ "sha256:8d697e19f2995b337f648204848ac3a528eaafffc39e7ce4ac6b7a2fbe6c84af",
+ "sha256:9337517edb7c10228252cce2898e20fb3d77e32ffaccbb3c66897927d74215a0",
+ "sha256:96709a379997c1b28c8974146ca660b0dcd3794f4f6d50c1ea549bab39ac6ade",
+ "sha256:c10b1f0c741e257a5cb2978d6bac86e7c784ab20572724b20c6402c2e24bce75",
+ "sha256:ca90397c8d36c1535bf1988b2bed006597337843a164c7ec269dc8813f37536b",
+ "sha256:d866701affe67a5171b916b5c076e767a74c6a9efb7fb2006eb8d3c5f9a293d5",
+ "sha256:d8bebcb20ab4b91858385cd98fe58046ec4a624275b45ef9b976475604f45b49",
+ "sha256:dbe76feaa44e2ef9436f345016012a591550e77818876a8de5c8bc2a248e08df",
+ "sha256:f5f214618ad5eff4f2a6b13a8d4da4d9e7f37c569d90a13fb9f0caaf7d04fe21",
+ "sha256:f987cb56458323405e8e5ea827e1befcf141ffa0c0ac797d6d02e6b646056d9a"
],
"markers": "python_version >= '3.8'",
- "version": "==0.2.21"
+ "version": "==0.3.4"
},
"packaging": {
"hashes": [
- "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484",
- "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"
+ "sha256:00243ae351a257117b6a241061796684b084ed1c516a08c48a3f7e147a9d80b4",
+ "sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529"
],
"index": "pypi",
"markers": "python_version >= '3.8'",
- "version": "==25.0"
+ "version": "==26.0"
},
"pathspec": {
"hashes": [
- "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08",
- "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"
+ "sha256:0210e2ae8a21a9137c0d470578cb0e595af87edaa6ebf12ff176f14a02e0e645",
+ "sha256:fb6ae2fd4e7c921a165808a552060e722767cfa526f99ca5156ed2ce45a5c723"
],
- "markers": "python_version >= '3.8'",
- "version": "==0.12.1"
+ "markers": "python_version >= '3.9'",
+ "version": "==1.0.4"
},
"pygments": {
"hashes": [
- "sha256:636cb2477cec7f8952536970bc533bc43743542f70392ae026374600add5b887",
- "sha256:86540386c03d588bb81d44bc3928634ff26449851e99741617ecb9037ee5ec0b"
+ "sha256:6757cd03768053ff99f3039c1a36d6c0aa0b263438fcab17520b30a303a82b5f",
+ "sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176"
],
- "markers": "python_version >= '3.8'",
- "version": "==2.19.2"
+ "index": "pypi",
+ "markers": "python_version >= '3.9'",
+ "version": "==2.20.0"
},
"readme-renderer": {
"hashes": [
@@ -651,12 +886,12 @@
},
"requests": {
"hashes": [
- "sha256:27babd3cda2a6d50b30443204ee89830707d396671944c998b5975b031ac2b2c",
- "sha256:27d0316682c8a29834d3264820024b62a36942083d52caf2f14c0591336d3422"
+ "sha256:3324635456fa185245e24865e810cecec7b4caf933d7eb133dcde67d48cee69b",
+ "sha256:c7ebc5e8b0f21837386ad0e1c8fe8b829fa5f544d8df3b2253bff14ef29d7652"
],
"index": "pypi",
- "markers": "python_version >= '3.8'",
- "version": "==2.32.4"
+ "markers": "python_version >= '3.10'",
+ "version": "==2.33.0"
},
"requests-toolbelt": {
"hashes": [
@@ -676,11 +911,11 @@
},
"rich": {
"hashes": [
- "sha256:1c9491e1951aac09caffd42f448ee3d04e58923ffe14993f6e83068dc395d7e0",
- "sha256:82f1bc23a6a21ebca4ae0c45af9bdbc492ed20231dcb63f297d6d1021a9d5725"
+ "sha256:793431c1f8619afa7d3b52b2cdec859562b950ea0d4b6b505397612db8d5362d",
+ "sha256:b8daa0b9e4eef54dd8cf7c86c03713f53241884e814f4e2f5fb342fe520f639b"
],
"markers": "python_full_version >= '3.8.0'",
- "version": "==14.0.0"
+ "version": "==14.3.3"
},
"setuptools": {
"hashes": [
@@ -693,86 +928,101 @@
},
"tomli": {
"hashes": [
- "sha256:023aa114dd824ade0100497eb2318602af309e5a55595f76b626d6d9f3b7b0a6",
- "sha256:02abe224de6ae62c19f090f68da4e27b10af2b93213d36cf44e6e1c5abd19fdd",
- "sha256:286f0ca2ffeeb5b9bd4fcc8d6c330534323ec51b2f52da063b11c502da16f30c",
- "sha256:2d0f2fdd22b02c6d81637a3c95f8cd77f995846af7414c5c4b8d0545afa1bc4b",
- "sha256:33580bccab0338d00994d7f16f4c4ec25b776af3ffaac1ed74e0b3fc95e885a8",
- "sha256:400e720fe168c0f8521520190686ef8ef033fb19fc493da09779e592861b78c6",
- "sha256:40741994320b232529c802f8bc86da4e1aa9f413db394617b9a256ae0f9a7f77",
- "sha256:465af0e0875402f1d226519c9904f37254b3045fc5084697cefb9bdde1ff99ff",
- "sha256:4a8f6e44de52d5e6c657c9fe83b562f5f4256d8ebbfe4ff922c495620a7f6cea",
- "sha256:4e340144ad7ae1533cb897d406382b4b6fede8890a03738ff1683af800d54192",
- "sha256:678e4fa69e4575eb77d103de3df8a895e1591b48e740211bd1067378c69e8249",
- "sha256:6972ca9c9cc9f0acaa56a8ca1ff51e7af152a9f87fb64623e31d5c83700080ee",
- "sha256:7fc04e92e1d624a4a63c76474610238576942d6b8950a2d7f908a340494e67e4",
- "sha256:889f80ef92701b9dbb224e49ec87c645ce5df3fa2cc548664eb8a25e03127a98",
- "sha256:8d57ca8095a641b8237d5b079147646153d22552f1c637fd3ba7f4b0b29167a8",
- "sha256:8dd28b3e155b80f4d54beb40a441d366adcfe740969820caf156c019fb5c7ec4",
- "sha256:9316dc65bed1684c9a98ee68759ceaed29d229e985297003e494aa825ebb0281",
- "sha256:a198f10c4d1b1375d7687bc25294306e551bf1abfa4eace6650070a5c1ae2744",
- "sha256:a38aa0308e754b0e3c67e344754dff64999ff9b513e691d0e786265c93583c69",
- "sha256:a92ef1a44547e894e2a17d24e7557a5e85a9e1d0048b0b5e7541f76c5032cb13",
- "sha256:ac065718db92ca818f8d6141b5f66369833d4a80a9d74435a268c52bdfa73140",
- "sha256:b82ebccc8c8a36f2094e969560a1b836758481f3dc360ce9a3277c65f374285e",
- "sha256:c954d2250168d28797dd4e3ac5cf812a406cd5a92674ee4c8f123c889786aa8e",
- "sha256:cb55c73c5f4408779d0cf3eef9f762b9c9f147a77de7b258bef0a5628adc85cc",
- "sha256:cd45e1dc79c835ce60f7404ec8119f2eb06d38b1deba146f07ced3bbc44505ff",
- "sha256:d3f5614314d758649ab2ab3a62d4f2004c825922f9e370b29416484086b264ec",
- "sha256:d920f33822747519673ee656a4b6ac33e382eca9d331c87770faa3eef562aeb2",
- "sha256:db2b95f9de79181805df90bedc5a5ab4c165e6ec3fe99f970d0e302f384ad222",
- "sha256:e59e304978767a54663af13c07b3d1af22ddee3bb2fb0618ca1593e4f593a106",
- "sha256:e85e99945e688e32d5a35c1ff38ed0b3f41f43fad8df0bdf79f72b2ba7bc5272",
- "sha256:ece47d672db52ac607a3d9599a9d48dcb2f2f735c6c2d1f34130085bb12b112a",
- "sha256:f4039b9cbc3048b2416cc57ab3bda989a6fcf9b36cf8937f01a6e731b64f80d7"
+ "sha256:01f520d4f53ef97964a240a035ec2a869fe1a37dde002b57ebc4417a27ccd853",
+ "sha256:0d85819802132122da43cb86656f8d1f8c6587d54ae7dcaf30e90533028b49fe",
+ "sha256:136443dbd7e1dee43c68ac2694fde36b2849865fa258d39bf822c10e8068eac5",
+ "sha256:1d8591993e228b0c930c4bb0db464bdad97b3289fb981255d6c9a41aedc84b2d",
+ "sha256:2190f2e9dd7508d2a90ded5ed369255980a1bcdd58e52f7fe24b8162bf9fedbd",
+ "sha256:2c1c351919aca02858f740c6d33adea0c5deea37f9ecca1cc1ef9e884a619d26",
+ "sha256:36d2bd2ad5fb9eaddba5226aa02c8ec3fa4f192631e347b3ed28186d43be6b54",
+ "sha256:3d48a93ee1c9b79c04bb38772ee1b64dcf18ff43085896ea460ca8dec96f35f6",
+ "sha256:47149d5bd38761ac8be13a84864bf0b7b70bc051806bc3669ab1cbc56216b23c",
+ "sha256:4ab97e64ccda8756376892c53a72bd1f964e519c77236368527f758fbc36a53a",
+ "sha256:4b605484e43cdc43f0954ddae319fb75f04cc10dd80d830540060ee7cd0243cd",
+ "sha256:504aa796fe0569bb43171066009ead363de03675276d2d121ac1a4572397870f",
+ "sha256:51529d40e3ca50046d7606fa99ce3956a617f9b36380da3b7f0dd3dd28e68cb5",
+ "sha256:52c8ef851d9a240f11a88c003eacb03c31fc1c9c4ec64a99a0f922b93874fda9",
+ "sha256:559db847dc486944896521f68d8190be1c9e719fced785720d2216fe7022b662",
+ "sha256:5a881ab208c0baf688221f8cecc5401bd291d67e38a1ac884d6736cbcd8247e9",
+ "sha256:5cb41aa38891e073ee49d55fbc7839cfdb2bc0e600add13874d048c94aadddd1",
+ "sha256:5e262d41726bc187e69af7825504c933b6794dc3fbd5945e41a79bb14c31f585",
+ "sha256:5ee18d9ebdb417e384b58fe414e8d6af9f4e7a0ae761519fb50f721de398dd4e",
+ "sha256:7008df2e7655c495dd12d2a4ad038ff878d4ca4b81fccaf82b714e07eae4402c",
+ "sha256:734e20b57ba95624ecf1841e72b53f6e186355e216e5412de414e3c51e5e3c41",
+ "sha256:7c7e1a961a0b2f2472c1ac5b69affa0ae1132c39adcb67aba98568702b9cc23f",
+ "sha256:7f86fd587c4ed9dd76f318225e7d9b29cfc5a9d43de44e5754db8d1128487085",
+ "sha256:7f94b27a62cfad8496c8d2513e1a222dd446f095fca8987fceef261225538a15",
+ "sha256:88dceee75c2c63af144e456745e10101eb67361050196b0b6af5d717254dddf7",
+ "sha256:8a650c2dbafa08d42e51ba0b62740dae4ecb9338eefa093aa5c78ceb546fcd5c",
+ "sha256:8d65a2fbf9d2f8352685bc1364177ee3923d6baf5e7f43ea4959d7d8bc326a36",
+ "sha256:96481a5786729fd470164b47cdb3e0e58062a496f455ee41b4403be77cb5a076",
+ "sha256:a120733b01c45e9a0c34aeef92bf0cf1d56cfe81ed9d47d562f9ed591a9828ac",
+ "sha256:b1d22e6e9387bf4739fbe23bfa80e93f6b0373a7f1b96c6227c32bef95a4d7a8",
+ "sha256:b8c198f8c1805dc42708689ed6864951fd2494f924149d3e4bce7710f8eb5232",
+ "sha256:c2541745709bad0264b7d4705ad453b76ccd191e64aa6f0fc66b69a293a45ece",
+ "sha256:c742f741d58a28940ce01d58f0ab2ea3ced8b12402f162f4d534dfe18ba1cd6a",
+ "sha256:c7f2c7f2b9ca6bdeef8f0fa897f8e05085923eb091721675170254cbc5b02897",
+ "sha256:d312ef37c91508b0ab2cee7da26ec0b3ed2f03ce12bd87a588d771ae15dcf82d",
+ "sha256:d4d8fe59808a54658fcc0160ecfb1b30f9089906c50b23bcb4c69eddc19ec2b4",
+ "sha256:da25dc3563bff5965356133435b757a795a17b17d01dbc0f42fb32447ddfd917",
+ "sha256:eab21f45c7f66c13f2a9e0e1535309cee140182a9cdae1e041d02e47291e8396",
+ "sha256:eb0dc4e38e6a1fd579e5d50369aa2e10acfc9cace504579b2faabb478e76941a",
+ "sha256:ec9bfaf3ad2df51ace80688143a6a4ebc09a248f6ff781a9945e51937008fcbc",
+ "sha256:ede3e6487c5ef5d28634ba3f31f989030ad6af71edfb0055cbbd14189ff240ba",
+ "sha256:f3c6818a1a86dd6dca7ddcaaf76947d5ba31aecc28cb1b67009a5877c9a64f3f",
+ "sha256:f758f1b9299d059cc3f6546ae2af89670cb1c4d48ea29c3cacc4fe7de3058257",
+ "sha256:f8f0fc26ec2cc2b965b7a3b87cd19c5c6b8c5e5f436b984e85f486d652285c30",
+ "sha256:fd0409a3653af6c147209d267a0e4243f0ae46b011aa978b1080359fddc9b6cf",
+ "sha256:ff18e6a727ee0ab0388507b89d1bc6a22b138d1e2fa56d1ad494586d61d2eae9",
+ "sha256:ff2983983d34813c1aeb0fa89091e76c3a22889ee83ab27c5eeb45100560c049"
],
"markers": "python_version >= '3.8'",
- "version": "==2.2.1"
+ "version": "==2.4.1"
},
"twine": {
"hashes": [
- "sha256:a47f973caf122930bf0fbbf17f80b83bc1602c9ce393c7845f289a3001dc5384",
- "sha256:be324f6272eff91d07ee93f251edf232fc647935dd585ac003539b42404a8dbd"
+ "sha256:418ebf08ccda9a8caaebe414433b0ba5e25eb5e4a927667122fbe8f829f985d8",
+ "sha256:e5ed0d2fd70c9959770dce51c8f39c8945c574e18173a7b81802dab51b4b75cf"
],
"index": "pypi",
- "markers": "python_version >= '3.8'",
- "version": "==6.1.0"
+ "markers": "python_version >= '3.9'",
+ "version": "==6.2.0"
},
"types-python-dateutil": {
"hashes": [
- "sha256:13e80d6c9c47df23ad773d54b2826bd52dbbb41be87c3f339381c1700ad21ee5",
- "sha256:2b2b3f57f9c6a61fba26a9c0ffb9ea5681c9b83e69cd897c6b5f668d9c0cab93"
+ "sha256:a107aef5841db41ace381dbbbd7e4945220fc940f7a72172a0be5a92d9ab7164",
+ "sha256:a23a50a07f6eb87e729d4cb0c2eb511c81761eeb3f505db2c1413be94aae8335"
],
"index": "pypi",
- "markers": "python_version >= '3.9'",
- "version": "==2.9.0.20250516"
+ "markers": "python_version >= '3.10'",
+ "version": "==2.9.0.20260323"
},
"typing-extensions": {
"hashes": [
- "sha256:8676b788e32f02ab42d9e7c61324048ae4c6d844a399eebace3d4979d75ceef4",
- "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af"
+ "sha256:0cea48d173cc12fa28ecabc3b837ea3cf6f38c6d1136f85cbaaf598984861466",
+ "sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==4.14.0"
+ "version": "==4.15.0"
},
"urllib3": {
"hashes": [
- "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760",
- "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"
+ "sha256:1b62b6884944a57dbe321509ab94fd4d3b307075e0c2eae991ac71ee15ad38ed",
+ "sha256:bf272323e553dfb2e87d9bfd225ca7b0f467b919d7bbd355436d3fd37cb0acd4"
],
"index": "pypi",
"markers": "python_version >= '3.9'",
- "version": "==2.5.0"
+ "version": "==2.6.3"
},
"wheel": {
"hashes": [
- "sha256:661e1abd9198507b1409a20c02106d9670b2576e916d58f520316666abca6729",
- "sha256:708e7481cc80179af0e556bbf0cc00b8444c7321e2700b8d8580231d13017248"
+ "sha256:4b399d56c9d9338230118d705d9737a2a468ccca63d5e813e2a4fc7815d8bc4d",
+ "sha256:e3e79874b07d776c40bd6033f8ddf76a7dad46a7b8aa1b2787a83083519a1803"
],
"index": "pypi",
- "markers": "python_version >= '3.8'",
- "version": "==0.45.1"
+ "markers": "python_version >= '3.9'",
+ "version": "==0.46.3"
},
"zipp": {
"hashes": [
diff --git a/dev.md b/dev.md
index 7d7e72a..d29538e 100644
--- a/dev.md
+++ b/dev.md
@@ -13,14 +13,21 @@ and use next command from the project root.
## Generator configuration Features
-1. When generating oneOf schemas, the generator creates its
+1. Two client generation modes have been added:
+strict (for client testing) and lenient (for release).
+In strict mode, the client will throw an exception if the
+types do not match or the required fields are missing;
+in lenient mode, error data will be output as a warning to
+the console. The templates for generating these modes
+are located in the generator-templates folder.
+2. When generating oneOf schemas, the generator creates its
own abstract class, which does not look like it would like.
The problem was solved by replacing the abstract generator
class with ours using typeMappings in the generator config.
-2. The generator treats the discriminator value as a string,
+3. The generator treats the discriminator value as a string,
but in our case it's numbers. To solve this problem, changes
have been made to the model_generic.mustache template.
-3. By default, when the discriminator was unknown, the client
+4. By default, when the discriminator was unknown, the client
threw an error. To avoid this, such models will be skipped.
To solve this problem, changes have been made
to the model_generic.mustache template.
diff --git a/generator-templates/lenient/model_generic.mustache b/generator-templates/lenient/model_generic.mustache
new file mode 100644
index 0000000..f2ee4fb
--- /dev/null
+++ b/generator-templates/lenient/model_generic.mustache
@@ -0,0 +1,404 @@
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+{{#vendorExtensions.x-py-other-imports}}
+{{{.}}}
+{{/vendorExtensions.x-py-other-imports}}
+{{#vendorExtensions.x-py-model-imports}}
+{{{.}}}
+{{/vendorExtensions.x-py-model-imports}}
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+{{#hasChildren}}
+{{#discriminator}}
+{{! If this model is a super class, importlib is used. So import the necessary modules for the type here. }}
+from typing import TYPE_CHECKING
+if TYPE_CHECKING:
+{{#mappedModels}}
+ from {{packageName}}.models.{{model.classFilename}} import {{modelName}}
+{{/mappedModels}}
+
+{{/discriminator}}
+{{/hasChildren}}
+class {{classname}}({{#parent}}{{{.}}}{{/parent}}{{^parent}}BaseModel{{/parent}}):
+ """
+ {{#description}}{{{description}}}{{/description}}{{^description}}{{{classname}}}{{/description}}
+ """ # noqa: E501
+{{#vars}}
+ {{name}}: SkipValidation[{{^required}}Optional[{{/required}}{{dataType}}{{^required}}]{{/required}}] = Field(alias="{{baseName}}"{{^required}}, default=None{{/required}}{{#description}}, description="{{{description}}}"{{/description}})
+{{/vars}}
+{{#isAdditionalPropertiesTrue}}
+ additional_properties: Dict[str, Any] = {}
+{{/isAdditionalPropertiesTrue}}
+ __properties: ClassVar[List[str]] = [{{#allVars}}"{{baseName}}"{{^-last}}, {{/-last}}{{/allVars}}]
+{{#vars}}
+ {{#vendorExtensions.x-regex}}
+
+ @field_validator('{{{name}}}')
+ def {{{name}}}_validate_regular_expression(cls, value):
+ """Validates the regular expression"""
+ {{^required}}
+ if value is None:
+ return value
+
+ {{/required}}
+ {{#required}}
+ {{#isNullable}}
+ if value is None:
+ return value
+
+ {{/isNullable}}
+ {{/required}}
+ if not re.match(r"{{{.}}}", value{{#vendorExtensions.x-modifiers}} ,re.{{{.}}}{{/vendorExtensions.x-modifiers}}):
+ raise ValueError(r"must validate the regular expression {{{vendorExtensions.x-pattern}}}")
+ return value
+ {{/vendorExtensions.x-regex}}
+ {{#isEnum}}
+
+ @field_validator('{{{name}}}')
+ def {{{name}}}_validate_enum(cls, value):
+ """Validates the enum"""
+ {{^required}}
+ if value is None:
+ return value
+
+ {{/required}}
+ {{#required}}
+ {{#isNullable}}
+ if value is None:
+ return value
+
+ {{/isNullable}}
+ {{/required}}
+ {{#isContainer}}
+ {{#isArray}}
+ for i in value:
+ if i not in set([{{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}}]):
+ raise ValueError("each list item must be one of ({{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}})")
+ {{/isArray}}
+ {{#isMap}}
+ for i in value.values():
+ if i not in set([{{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}}]):
+ raise ValueError("dict values must be one of enum values ({{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}})")
+ {{/isMap}}
+ {{/isContainer}}
+ {{^isContainer}}
+ if value not in set([{{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}}]):
+ raise ValueError("must be one of enum values ({{#allowableValues}}{{#enumVars}}{{{value}}}{{^-last}}, {{/-last}}{{/enumVars}}{{/allowableValues}})")
+ {{/isContainer}}
+ return value
+ {{/isEnum}}
+{{/vars}}
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+{{#hasChildren}}
+{{#discriminator}}
+ # JSON field name that stores the object type
+ __discriminator_property_name: ClassVar[str] = '{{discriminator.propertyBaseName}}'
+
+ # discriminator mappings
+ __discriminator_value_class_map: ClassVar[Dict[str, str]] = {
+ {{#mappedModels}}'{{{mappingName}}}': '{{{modelName}}}'{{^-last}},{{/-last}}{{/mappedModels}}
+ }
+
+ @classmethod
+ def get_discriminator_value(cls, obj: Dict[str, Any]) -> Optional[str]:
+ """Returns the discriminator value (object type) of the data"""
+ discriminator_value = obj[cls.__discriminator_property_name]
+ if discriminator_value:
+ return cls.__discriminator_value_class_map.get(str(discriminator_value))
+ else:
+ return None
+
+{{/discriminator}}
+{{/hasChildren}}
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[{{^hasChildren}}Self{{/hasChildren}}{{#hasChildren}}{{#discriminator}}Union[{{#mappedModels}}{{{modelName}}}{{^-last}}, {{/-last}}{{/mappedModels}}]{{/discriminator}}{{^discriminator}}Self{{/discriminator}}{{/hasChildren}}]:
+ """Create an instance of {{{classname}}} from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ {{#vendorExtensions.x-py-readonly}}
+ * OpenAPI `readOnly` fields are excluded.
+ {{/vendorExtensions.x-py-readonly}}
+ {{#isAdditionalPropertiesTrue}}
+ * Fields in `self.additional_properties` are added to the output dict.
+ {{/isAdditionalPropertiesTrue}}
+ """
+ excluded_fields: Set[str] = set([
+ {{#vendorExtensions.x-py-readonly}}
+ "{{{.}}}",
+ {{/vendorExtensions.x-py-readonly}}
+ {{#isAdditionalPropertiesTrue}}
+ "additional_properties",
+ {{/isAdditionalPropertiesTrue}}
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ {{#allVars}}
+ {{#isContainer}}
+ {{#isArray}}
+ {{#items.isArray}}
+ {{^items.items.isPrimitiveType}}
+ # override the default output from pydantic by calling `to_dict()` of each item in {{{name}}} (list of list)
+ _items = []
+ if self.{{{name}}}:
+ for _item_{{{name}}} in self.{{{name}}}:
+ if _item_{{{name}}}:
+ _items.append(
+ [_inner_item.to_dict() for _inner_item in _item_{{{name}}} if _inner_item is not None]
+ )
+ _dict['{{{baseName}}}'] = _items
+ {{/items.items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{^items.isArray}}
+ {{^items.isPrimitiveType}}
+ {{^items.isEnumOrRef}}
+ # override the default output from pydantic by calling `to_dict()` of each item in {{{name}}} (list)
+ _items = []
+ if self.{{{name}}}:
+ for _item_{{{name}}} in self.{{{name}}}:
+ if _item_{{{name}}} and hasattr(_item_{{{name}}}, "to_dict"):
+ _items.append(_item_{{{name}}}.to_dict())
+ _dict['{{{baseName}}}'] = _items
+ {{/items.isEnumOrRef}}
+ {{/items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{/isArray}}
+ {{#isMap}}
+ {{#items.isArray}}
+ {{^items.items.isPrimitiveType}}
+ # override the default output from pydantic by calling `to_dict()` of each value in {{{name}}} (dict of array)
+ _field_dict_of_array = {}
+ if self.{{{name}}}:
+ for _key_{{{name}}} in self.{{{name}}}:
+ if self.{{{name}}}[_key_{{{name}}}] is not None:
+ _field_dict_of_array[_key_{{{name}}}] = [
+ _item.to_dict() for _item in self.{{{name}}}[_key_{{{name}}}]
+ ]
+ _dict['{{{baseName}}}'] = _field_dict_of_array
+ {{/items.items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{^items.isArray}}
+ {{^items.isPrimitiveType}}
+ {{^items.isEnumOrRef}}
+ # override the default output from pydantic by calling `to_dict()` of each value in {{{name}}} (dict)
+ _field_dict = {}
+ if self.{{{name}}}:
+ for _key_{{{name}}} in self.{{{name}}}:
+ if self.{{{name}}}[_key_{{{name}}}]:
+ _field_dict[_key_{{{name}}}] = self.{{{name}}}[_key_{{{name}}}].to_dict()
+ _dict['{{{baseName}}}'] = _field_dict
+ {{/items.isEnumOrRef}}
+ {{/items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{/isMap}}
+ {{/isContainer}}
+ {{^isContainer}}
+ {{^isPrimitiveType}}
+ {{^isEnumOrRef}}
+ # override the default output from pydantic by calling `to_dict()` of {{{name}}}
+ if self.{{{name}}} and isinstance(self.{{{name}}}, {{{dataType}}}):
+ _dict['{{{baseName}}}'] = self.{{{name}}}.to_dict()
+ {{/isEnumOrRef}}
+ {{/isPrimitiveType}}
+ {{/isContainer}}
+ {{/allVars}}
+ {{#isAdditionalPropertiesTrue}}
+ # puts key-value pairs in additional_properties in the top level
+ if self.additional_properties is not None:
+ for _key, _value in self.additional_properties.items():
+ _dict[_key] = _value
+
+ {{/isAdditionalPropertiesTrue}}
+ {{#allVars}}
+ {{#isNullable}}
+ # set to None if {{{name}}} (nullable) is None
+ # and model_fields_set contains the field
+ if self.{{name}} is None and "{{{name}}}" in self.model_fields_set:
+ _dict['{{{baseName}}}'] = None
+
+ {{/isNullable}}
+ {{/allVars}}
+ return _dict
+
+ {{#hasChildren}}
+ @classmethod
+ def from_dict(cls, obj: Dict[str, Any]) -> Optional[{{#discriminator}}Union[{{#mappedModels}}{{{modelName}}}{{^-last}}, {{/-last}}{{/mappedModels}}]{{/discriminator}}{{^discriminator}}Self{{/discriminator}}]:
+ """Create an instance of {{{classname}}} from a dict"""
+ {{#discriminator}}
+ # look up the object type based on discriminator mapping
+ object_type = cls.get_discriminator_value(obj)
+ {{#mappedModels}}
+ if object_type == '{{{modelName}}}':
+ return import_module("{{packageName}}.models.{{model.classFilename}}").{{modelName}}.from_dict(obj)
+ {{/mappedModels}}
+
+ return None
+ {{/discriminator}}
+ {{/hasChildren}}
+ {{^hasChildren}}
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of {{{classname}}} from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ {{#disallowAdditionalPropertiesIfNotPresent}}
+ {{^isAdditionalPropertiesTrue}}
+ # raise errors for additional fields in the input
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ raise ValueError("Error due to additional fields (not defined in {{classname}}) in the input: " + _key)
+
+ {{/isAdditionalPropertiesTrue}}
+ {{/disallowAdditionalPropertiesIfNotPresent}}
+ _obj = cls.model_validate({
+ {{#allVars}}
+ {{#isContainer}}
+ {{#isArray}}
+ {{#items.isArray}}
+ {{#items.items.isPrimitiveType}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{^-last}},{{/-last}}
+ {{/items.items.isPrimitiveType}}
+ {{^items.items.isPrimitiveType}}
+ "{{{baseName}}}": [
+ [{{{items.items.dataType}}}.from_dict(_inner_item) for _inner_item in _item]
+ for _item in obj["{{{baseName}}}"]
+ ] if obj.get("{{{baseName}}}") is not None else None{{^-last}},{{/-last}}
+ {{/items.items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{^items.isArray}}
+ {{^items.isPrimitiveType}}
+ {{#items.isEnumOrRef}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{^-last}},{{/-last}}
+ {{/items.isEnumOrRef}}
+ {{^items.isEnumOrRef}}
+ "{{{baseName}}}": [{{{items.dataType}}}.from_dict(_item) for _item in obj.get("{{{baseName}}}", []) if {{{items.dataType}}}.from_dict(_item) is not None]{{^-last}},{{/-last}}
+ {{/items.isEnumOrRef}}
+ {{/items.isPrimitiveType}}
+ {{#items.isPrimitiveType}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{^-last}},{{/-last}}
+ {{/items.isPrimitiveType}}
+ {{/items.isArray}}
+ {{/isArray}}
+ {{#isMap}}
+ {{^items.isPrimitiveType}}
+ {{^items.isEnumOrRef}}
+ {{#items.isContainer}}
+ {{#items.isMap}}
+ "{{{baseName}}}": dict(
+ (_k, dict(
+ (_ik, {{{items.items.dataType}}}.from_dict(_iv))
+ for _ik, _iv in _v.items()
+ )
+ if _v is not None
+ else None
+ )
+ for _k, _v in obj.get("{{{baseName}}}").items()
+ )
+ if obj.get("{{{baseName}}}") is not None
+ else None{{^-last}},{{/-last}}
+ {{/items.isMap}}
+ {{#items.isArray}}
+ "{{{baseName}}}": dict(
+ (_k,
+ [{{{items.items.dataType}}}.from_dict(_item) for _item in _v]
+ if _v is not None
+ else None
+ )
+ for _k, _v in obj.get("{{{baseName}}}", {}).items()
+ ){{^-last}},{{/-last}}
+ {{/items.isArray}}
+ {{/items.isContainer}}
+ {{^items.isContainer}}
+ "{{{baseName}}}": dict(
+ (_k, {{{items.dataType}}}.from_dict(_v))
+ for _k, _v in obj["{{{baseName}}}"].items()
+ )
+ if obj.get("{{{baseName}}}") is not None
+ else None{{^-last}},{{/-last}}
+ {{/items.isContainer}}
+ {{/items.isEnumOrRef}}
+ {{#items.isEnumOrRef}}
+ "{{{baseName}}}": dict((_k, _v) for _k, _v in obj.get("{{{baseName}}}").items()) if obj.get("{{{baseName}}}") is not None else None{{^-last}},{{/-last}}
+ {{/items.isEnumOrRef}}
+ {{/items.isPrimitiveType}}
+ {{#items.isPrimitiveType}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{^-last}},{{/-last}}
+ {{/items.isPrimitiveType}}
+ {{/isMap}}
+ {{/isContainer}}
+ {{^isContainer}}
+ {{^isPrimitiveType}}
+ {{^isEnumOrRef}}
+ "{{{baseName}}}": {{{dataType}}}.from_dict(obj["{{{baseName}}}"]) if obj.get("{{{baseName}}}") is not None else None{{^-last}},{{/-last}}
+ {{/isEnumOrRef}}
+ {{#isEnumOrRef}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{#defaultValue}} if obj.get("{{baseName}}") is not None else {{{defaultValue}}}{{/defaultValue}}{{^-last}},{{/-last}}
+ {{/isEnumOrRef}}
+ {{/isPrimitiveType}}
+ {{#isPrimitiveType}}
+ {{#defaultValue}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}") if obj.get("{{{baseName}}}") is not None else {{{defaultValue}}}{{^-last}},{{/-last}}
+ {{/defaultValue}}
+ {{^defaultValue}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{^-last}},{{/-last}}
+ {{/defaultValue}}
+ {{/isPrimitiveType}}
+ {{/isContainer}}
+ {{/allVars}}
+ })
+ {{#isAdditionalPropertiesTrue}}
+ # store additional fields in additional_properties
+ for _key in obj.keys():
+ if _key not in cls.__properties:
+ _obj.additional_properties[_key] = obj.get(_key)
+
+ {{/isAdditionalPropertiesTrue}}
+ return _obj
+ {{/hasChildren}}
+
+{{#vendorExtensions.x-py-postponed-model-imports.size}}
+{{#vendorExtensions.x-py-postponed-model-imports}}
+{{{.}}}
+{{/vendorExtensions.x-py-postponed-model-imports}}
+# TODO: Rewrite to not use raise_errors
+{{classname}}.model_rebuild(raise_errors=False)
+{{/vendorExtensions.x-py-postponed-model-imports.size}}
\ No newline at end of file
diff --git a/generator-templates/partial_header.mustache b/generator-templates/lenient/partial_header.mustache
similarity index 100%
rename from generator-templates/partial_header.mustache
rename to generator-templates/lenient/partial_header.mustache
diff --git a/generator-templates/model_generic.mustache b/generator-templates/strict/model_generic.mustache
similarity index 99%
rename from generator-templates/model_generic.mustache
rename to generator-templates/strict/model_generic.mustache
index fbbc17d..031dfb4 100644
--- a/generator-templates/model_generic.mustache
+++ b/generator-templates/strict/model_generic.mustache
@@ -368,7 +368,7 @@ class {{classname}}({{#parent}}{{{.}}}{{/parent}}{{^parent}}BaseModel{{/parent}}
"{{{baseName}}}": {{{dataType}}}.from_dict(obj["{{{baseName}}}"]) if obj.get("{{{baseName}}}") is not None else None{{^-last}},{{/-last}}
{{/isEnumOrRef}}
{{#isEnumOrRef}}
- "{{{baseName}}}": obj.get("{{{baseName}}}"){{#defaultValue}} if obj.get("{{baseName}}") is not None else {{defaultValue}}{{/defaultValue}}{{^-last}},{{/-last}}
+ "{{{baseName}}}": obj.get("{{{baseName}}}"){{#defaultValue}} if obj.get("{{baseName}}") is not None else {{{defaultValue}}}{{/defaultValue}}{{^-last}},{{/-last}}
{{/isEnumOrRef}}
{{/isPrimitiveType}}
{{#isPrimitiveType}}
diff --git a/generator-templates/strict/partial_header.mustache b/generator-templates/strict/partial_header.mustache
new file mode 100644
index 0000000..1ce7639
--- /dev/null
+++ b/generator-templates/strict/partial_header.mustache
@@ -0,0 +1,3 @@
+"""
+ Generated by: https://openapi-generator.tech
+"""
\ No newline at end of file
diff --git a/regula/documentreader/webclient/ext/api/document_reader_api.py b/regula/documentreader/webclient/ext/api/document_reader_api.py
index 13ade47..347c5e4 100755
--- a/regula/documentreader/webclient/ext/api/document_reader_api.py
+++ b/regula/documentreader/webclient/ext/api/document_reader_api.py
@@ -3,14 +3,14 @@
from regula.documentreader.webclient import ProcessResponse
from regula.documentreader.webclient.gen import ApiClient
from regula.documentreader.webclient.ext.models.recognition_response import RecognitionResponse
-from regula.documentreader.webclient.gen.api import HealthcheckApi, ProcessApi
+from regula.documentreader.webclient.gen.api import HealthcheckApi, ProcessApi, ResourcesApi, TransactionApi
from regula.documentreader.webclient.gen.configuration import Configuration
from regula.documentreader.webclient.gen.models import ProcessRequest
Base64String = str
-class DocumentReaderApi(HealthcheckApi, ProcessApi):
+class DocumentReaderApi(HealthcheckApi, ProcessApi, ResourcesApi, TransactionApi):
def __init__(self, host=None, debug=False, verify_ssl=True, api_client=None):
if api_client:
@@ -36,8 +36,22 @@ def process(self, process_request: ProcessRequest) -> RecognitionResponse:
def deserialize_to_recognition_response(self, content: Union[bytes, bytearray, str]) -> RecognitionResponse:
response = self.__to_response_object(content)
- response = self.api_client.deserialize(response, ProcessResponse)
- return RecognitionResponse(response)
+
+ if hasattr(response, 'to_str'):
+ response_text = response.to_str()
+ elif hasattr(response, 'data'):
+ data = response.data
+ if isinstance(data, (bytes, bytearray)):
+ response_text = data.decode('utf-8')
+ else:
+ response_text = str(data)
+ else:
+ response_text = str(content) if not isinstance(content, str) else content
+
+ content_type = "application/json"
+ process_response = self.api_client.deserialize(response_text, "ProcessResponse", content_type)
+
+ return RecognitionResponse(process_response)
@staticmethod
def __to_response_object(content: Union[bytes, bytearray, str]):
diff --git a/regula/documentreader/webclient/gen/__init__.py b/regula/documentreader/webclient/gen/__init__.py
index 801fb65..1207645 100644
--- a/regula/documentreader/webclient/gen/__init__.py
+++ b/regula/documentreader/webclient/gen/__init__.py
@@ -8,246 +8,825 @@
__version__ = "1.0.0"
-# import apis into sdk package
-from regula.documentreader.webclient.gen.api.healthcheck_api import HealthcheckApi
-from regula.documentreader.webclient.gen.api.process_api import ProcessApi
-from regula.documentreader.webclient.gen.api.transaction_api import TransactionApi
+# Define package exports
+__all__ = [
+ "HealthcheckApi",
+ "ProcessApi",
+ "ResourcesApi",
+ "TransactionApi",
+ "ApiResponse",
+ "ApiClient",
+ "Configuration",
+ "OpenApiException",
+ "ApiTypeError",
+ "ApiValueError",
+ "ApiKeyError",
+ "ApiAttributeError",
+ "ApiException",
+ "AreaArray",
+ "AreaContainer",
+ "AuthParams",
+ "AuthenticityCheckList",
+ "AuthenticityCheckListItem",
+ "AuthenticityCheckResult",
+ "AuthenticityCheckResultItem",
+ "AuthenticityCheckResultListInner",
+ "AuthenticityResult",
+ "AuthenticityResultType",
+ "BSIV2Item",
+ "BSIV2Result",
+ "BarCodeModuleType",
+ "BarcodePositionItem",
+ "BarcodePositionResult",
+ "BarcodeType",
+ "BcPDF417INFO",
+ "BcROIDETECT",
+ "BinaryData",
+ "BsiTr03135",
+ "ByteArrayItem",
+ "ByteArrayResult",
+ "CandidatesListItem",
+ "CertificateData",
+ "CheckDiagnose",
+ "CheckResult",
+ "ChosenDocumentType",
+ "ChosenDocumentTypeResult",
+ "ContainerList",
+ "ContainerListListInner",
+ "Critical",
+ "CrossSourceValueComparison",
+ "DataModule",
+ "DatabaseDocument",
+ "DatabaseDocumentList",
+ "DetailsAge",
+ "DetailsOptical",
+ "DetailsRFID",
+ "DeviceInfo",
+ "DeviceInfoDocumentsDatabase",
+ "DocBarCodeInfo",
+ "DocBarCodeInfoFieldsList",
+ "DocBarCodeInfoItem",
+ "DocFeature",
+ "DocGraphicsInfoItem",
+ "DocVisualExtendedField",
+ "DocVisualExtendedFieldItem",
+ "DocVisualExtendedInfo",
+ "DocVisualExtendedInfoItem",
+ "DocumentBinaryInfoResult",
+ "DocumentFormat",
+ "DocumentImage",
+ "DocumentImageResult",
+ "DocumentPosition",
+ "DocumentPositionItem",
+ "DocumentPositionResult",
+ "DocumentType",
+ "DocumentTypeRecognitionResult",
+ "DocumentTypesCandidates",
+ "DocumentTypesCandidatesList",
+ "DocumentTypesCandidatesResult",
+ "DocumentsDatabase",
+ "EncryptedRCLItem",
+ "EncryptedRCLResult",
+ "ErrorCoordinates",
+ "FDSIDList",
+ "FaceApi",
+ "FaceApiSearch",
+ "FaceDetection",
+ "FaceDetectionItem",
+ "FaceDetectionResult",
+ "FaceItem",
+ "FiberItem",
+ "FiberResult",
+ "FieldItem",
+ "FileImage",
+ "GetTransactionsByTagResponse",
+ "GlaresCheckParams",
+ "GraphData",
+ "GraphicField",
+ "GraphicFieldType",
+ "GraphicFieldsList",
+ "GraphicsResult",
+ "Healthcheck",
+ "HealthcheckDocumentsDatabase",
+ "IdentItem",
+ "IdentResult",
+ "ImageData",
+ "ImageQA",
+ "ImageQualityCheck",
+ "ImageQualityCheckList",
+ "ImageQualityCheckListItem",
+ "ImageQualityCheckType",
+ "ImageQualityResult",
+ "ImageTransactionData",
+ "Images",
+ "ImagesAvailableSource",
+ "ImagesField",
+ "ImagesFieldValue",
+ "ImagesItem",
+ "ImagesResult",
+ "InData",
+ "InDataTransactionImagesFieldValue",
+ "InDataVideo",
+ "InputBarcodeType",
+ "InputImageQualityChecks",
+ "LCID",
+ "LexicalAnalysisResult",
+ "LicenseItem",
+ "LicenseResult",
+ "Light",
+ "ListTransactionsByTagResponse",
+ "ListVerifiedFields",
+ "ListVerifiedFieldsItem",
+ "LivenessParams",
+ "LogLevel",
+ "MDLDeviceEngagement",
+ "MDLDeviceRetrieval",
+ "MDLItem",
+ "MDLResult",
+ "MDLServerRetrieval",
+ "MRZDetectorResult",
+ "MRZFormat",
+ "MRZPositionResult",
+ "MRZRowsItem",
+ "MRZTestQuality",
+ "MRZTestQualityItem",
+ "MRZTestQualityResult",
+ "MeasureSystem",
+ "Message",
+ "MrzDetectModeEnum",
+ "MrzPositionItem",
+ "OCRSecurityTextItem",
+ "OCRSecurityTextResult",
+ "OneCandidate",
+ "OneCandidateItem",
+ "OriginalSymbol",
+ "OutData",
+ "OutDataTransactionImagesFieldValue",
+ "PArrayField",
+ "PID",
+ "ParsedData",
+ "ParsingErrorCodes",
+ "ParsingNotificationCodes",
+ "PerDocumentConfig",
+ "PhotoIdentItem",
+ "PhotoIdentResult",
+ "Point",
+ "PointArray",
+ "PointsContainer",
+ "ProcessParams",
+ "ProcessParamsRfid",
+ "ProcessRequest",
+ "ProcessRequestImage",
+ "ProcessResponse",
+ "ProcessSystemInfo",
+ "ProcessingStatus",
+ "PropertiesParams",
+ "RFIDDocVisualExtendedField",
+ "RFIDDocVisualExtendedFieldItem",
+ "RFIDDocVisualExtendedInfo",
+ "RFIDDocVisualExtendedInfoItem",
+ "RFIDErrorCodes",
+ "RFIDGraphicsInfoResult",
+ "RFIDPKDResourceType",
+ "RFIDTextDataResult",
+ "RawImageContainerItem",
+ "RawImageContainerList",
+ "RectangleCoordinates",
+ "Result",
+ "ResultItem",
+ "ResultMRZDetector",
+ "ResultMRZDetectorItem",
+ "RfidAChip",
+ "RfidAccessControlInfo",
+ "RfidAccessControlProcedureType",
+ "RfidAccessKey",
+ "RfidApplication",
+ "RfidApplicationType",
+ "RfidAttributeData",
+ "RfidAttributeName",
+ "RfidAuthenticationProcedureType",
+ "RfidBaudRate",
+ "RfidCardPropertiesExt",
+ "RfidCertificateEx",
+ "RfidCertificateOrigin",
+ "RfidCertificateType",
+ "RfidDG1",
+ "RfidDataFile",
+ "RfidDataFileType",
+ "RfidDistinguishedName",
+ "RfidLocation",
+ "RfidOrigin",
+ "RfidPasswordType",
+ "RfidPkiExtension",
+ "RfidRawData",
+ "RfidSecurityObject",
+ "RfidSessionData",
+ "RfidSignerInfoEx",
+ "RfidTerminal",
+ "RfidTerminalType",
+ "RfidType",
+ "RfidValidity",
+ "Scenario",
+ "SecurityFeatureItem",
+ "SecurityFeatureResult",
+ "SecurityFeatureType",
+ "SecurityObjectCertificates",
+ "Source",
+ "SourceValidity",
+ "Status",
+ "StatusItem",
+ "StatusResult",
+ "StringItem",
+ "StringRecognitionResult",
+ "Symbol",
+ "SymbolCandidate",
+ "SymbolEstimationItem",
+ "SymbolRecognitionResult",
+ "TDocBinaryInfo",
+ "TDocBinaryInfoItem",
+ "TOriginalRFIDGraphicsInfo",
+ "TOriginalRFIDGraphicsInfoItem",
+ "Text",
+ "TextAvailableSource",
+ "TextDataResult",
+ "TextField",
+ "TextFieldType",
+ "TextFieldValue",
+ "TextItem",
+ "TextPostProcessing",
+ "TextResult",
+ "TransactionImage",
+ "TransactionInfo",
+ "TransactionProcessGetResponse",
+ "TransactionProcessRequest",
+ "TransactionProcessResult",
+ "TrfFtBytes",
+ "TrfFtString",
+ "VDItem",
+ "VDSData",
+ "VDSDataItem",
+ "VDSDataResult",
+ "VDSNCData",
+ "VDSNCDataItem",
+ "VDSNCDataResult",
+ "VEItem",
+ "VerificationResult",
+ "VerifiedFieldMap",
+ "Visibility",
+ "VisualExtendedFieldItem",
+]
+
+if __import__("typing").TYPE_CHECKING:
+ # import apis into sdk package
+ from regula.documentreader.webclient.gen.api.healthcheck_api import HealthcheckApi as HealthcheckApi
+ from regula.documentreader.webclient.gen.api.process_api import ProcessApi as ProcessApi
+ from regula.documentreader.webclient.gen.api.resources_api import ResourcesApi as ResourcesApi
+ from regula.documentreader.webclient.gen.api.transaction_api import TransactionApi as TransactionApi
+
+ # import ApiClient
+ from regula.documentreader.webclient.gen.api_response import ApiResponse as ApiResponse
+ from regula.documentreader.webclient.gen.api_client import ApiClient as ApiClient
+ from regula.documentreader.webclient.gen.configuration import Configuration as Configuration
+ from regula.documentreader.webclient.gen.exceptions import OpenApiException as OpenApiException
+ from regula.documentreader.webclient.gen.exceptions import ApiTypeError as ApiTypeError
+ from regula.documentreader.webclient.gen.exceptions import ApiValueError as ApiValueError
+ from regula.documentreader.webclient.gen.exceptions import ApiKeyError as ApiKeyError
+ from regula.documentreader.webclient.gen.exceptions import ApiAttributeError as ApiAttributeError
+ from regula.documentreader.webclient.gen.exceptions import ApiException as ApiException
+
+ # import models into sdk package
+ from regula.documentreader.webclient.gen.models.area_array import AreaArray as AreaArray
+ from regula.documentreader.webclient.gen.models.area_container import AreaContainer as AreaContainer
+ from regula.documentreader.webclient.gen.models.auth_params import AuthParams as AuthParams
+ from regula.documentreader.webclient.gen.models.authenticity_check_list import AuthenticityCheckList as AuthenticityCheckList
+ from regula.documentreader.webclient.gen.models.authenticity_check_list_item import AuthenticityCheckListItem as AuthenticityCheckListItem
+ from regula.documentreader.webclient.gen.models.authenticity_check_result import AuthenticityCheckResult as AuthenticityCheckResult
+ from regula.documentreader.webclient.gen.models.authenticity_check_result_item import AuthenticityCheckResultItem as AuthenticityCheckResultItem
+ from regula.documentreader.webclient.gen.models.authenticity_check_result_list_inner import AuthenticityCheckResultListInner as AuthenticityCheckResultListInner
+ from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult as AuthenticityResult
+ from regula.documentreader.webclient.gen.models.authenticity_result_type import AuthenticityResultType as AuthenticityResultType
+ from regula.documentreader.webclient.gen.models.bsiv2_item import BSIV2Item as BSIV2Item
+ from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result as BSIV2Result
+ from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType as BarCodeModuleType
+ from regula.documentreader.webclient.gen.models.barcode_position_item import BarcodePositionItem as BarcodePositionItem
+ from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult as BarcodePositionResult
+ from regula.documentreader.webclient.gen.models.barcode_type import BarcodeType as BarcodeType
+ from regula.documentreader.webclient.gen.models.bc_pdf417_info import BcPDF417INFO as BcPDF417INFO
+ from regula.documentreader.webclient.gen.models.bc_roidetect import BcROIDETECT as BcROIDETECT
+ from regula.documentreader.webclient.gen.models.binary_data import BinaryData as BinaryData
+ from regula.documentreader.webclient.gen.models.bsi_tr03135 import BsiTr03135 as BsiTr03135
+ from regula.documentreader.webclient.gen.models.byte_array_item import ByteArrayItem as ByteArrayItem
+ from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult as ByteArrayResult
+ from regula.documentreader.webclient.gen.models.candidates_list_item import CandidatesListItem as CandidatesListItem
+ from regula.documentreader.webclient.gen.models.certificate_data import CertificateData as CertificateData
+ from regula.documentreader.webclient.gen.models.check_diagnose import CheckDiagnose as CheckDiagnose
+ from regula.documentreader.webclient.gen.models.check_result import CheckResult as CheckResult
+ from regula.documentreader.webclient.gen.models.chosen_document_type import ChosenDocumentType as ChosenDocumentType
+ from regula.documentreader.webclient.gen.models.chosen_document_type_result import ChosenDocumentTypeResult as ChosenDocumentTypeResult
+ from regula.documentreader.webclient.gen.models.container_list import ContainerList as ContainerList
+ from regula.documentreader.webclient.gen.models.container_list_list_inner import ContainerListListInner as ContainerListListInner
+ from regula.documentreader.webclient.gen.models.critical import Critical as Critical
+ from regula.documentreader.webclient.gen.models.cross_source_value_comparison import CrossSourceValueComparison as CrossSourceValueComparison
+ from regula.documentreader.webclient.gen.models.data_module import DataModule as DataModule
+ from regula.documentreader.webclient.gen.models.database_document import DatabaseDocument as DatabaseDocument
+ from regula.documentreader.webclient.gen.models.database_document_list import DatabaseDocumentList as DatabaseDocumentList
+ from regula.documentreader.webclient.gen.models.details_age import DetailsAge as DetailsAge
+ from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical as DetailsOptical
+ from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID as DetailsRFID
+ from regula.documentreader.webclient.gen.models.device_info import DeviceInfo as DeviceInfo
+ from regula.documentreader.webclient.gen.models.device_info_documents_database import DeviceInfoDocumentsDatabase as DeviceInfoDocumentsDatabase
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo as DocBarCodeInfo
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList as DocBarCodeInfoFieldsList
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info_item import DocBarCodeInfoItem as DocBarCodeInfoItem
+ from regula.documentreader.webclient.gen.models.doc_feature import DocFeature as DocFeature
+ from regula.documentreader.webclient.gen.models.doc_graphics_info_item import DocGraphicsInfoItem as DocGraphicsInfoItem
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField as DocVisualExtendedField
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_field_item import DocVisualExtendedFieldItem as DocVisualExtendedFieldItem
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_info import DocVisualExtendedInfo as DocVisualExtendedInfo
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_info_item import DocVisualExtendedInfoItem as DocVisualExtendedInfoItem
+ from regula.documentreader.webclient.gen.models.document_binary_info_result import DocumentBinaryInfoResult as DocumentBinaryInfoResult
+ from regula.documentreader.webclient.gen.models.document_format import DocumentFormat as DocumentFormat
+ from regula.documentreader.webclient.gen.models.document_image import DocumentImage as DocumentImage
+ from regula.documentreader.webclient.gen.models.document_image_result import DocumentImageResult as DocumentImageResult
+ from regula.documentreader.webclient.gen.models.document_position import DocumentPosition as DocumentPosition
+ from regula.documentreader.webclient.gen.models.document_position_item import DocumentPositionItem as DocumentPositionItem
+ from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult as DocumentPositionResult
+ from regula.documentreader.webclient.gen.models.document_type import DocumentType as DocumentType
+ from regula.documentreader.webclient.gen.models.document_type_recognition_result import DocumentTypeRecognitionResult as DocumentTypeRecognitionResult
+ from regula.documentreader.webclient.gen.models.document_types_candidates import DocumentTypesCandidates as DocumentTypesCandidates
+ from regula.documentreader.webclient.gen.models.document_types_candidates_list import DocumentTypesCandidatesList as DocumentTypesCandidatesList
+ from regula.documentreader.webclient.gen.models.document_types_candidates_result import DocumentTypesCandidatesResult as DocumentTypesCandidatesResult
+ from regula.documentreader.webclient.gen.models.documents_database import DocumentsDatabase as DocumentsDatabase
+ from regula.documentreader.webclient.gen.models.encrypted_rcl_item import EncryptedRCLItem as EncryptedRCLItem
+ from regula.documentreader.webclient.gen.models.encrypted_rcl_result import EncryptedRCLResult as EncryptedRCLResult
+ from regula.documentreader.webclient.gen.models.error_coordinates import ErrorCoordinates as ErrorCoordinates
+ from regula.documentreader.webclient.gen.models.fdsid_list import FDSIDList as FDSIDList
+ from regula.documentreader.webclient.gen.models.face_api import FaceApi as FaceApi
+ from regula.documentreader.webclient.gen.models.face_api_search import FaceApiSearch as FaceApiSearch
+ from regula.documentreader.webclient.gen.models.face_detection import FaceDetection as FaceDetection
+ from regula.documentreader.webclient.gen.models.face_detection_item import FaceDetectionItem as FaceDetectionItem
+ from regula.documentreader.webclient.gen.models.face_detection_result import FaceDetectionResult as FaceDetectionResult
+ from regula.documentreader.webclient.gen.models.face_item import FaceItem as FaceItem
+ from regula.documentreader.webclient.gen.models.fiber_item import FiberItem as FiberItem
+ from regula.documentreader.webclient.gen.models.fiber_result import FiberResult as FiberResult
+ from regula.documentreader.webclient.gen.models.field_item import FieldItem as FieldItem
+ from regula.documentreader.webclient.gen.models.file_image import FileImage as FileImage
+ from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse as GetTransactionsByTagResponse
+ from regula.documentreader.webclient.gen.models.glares_check_params import GlaresCheckParams as GlaresCheckParams
+ from regula.documentreader.webclient.gen.models.graph_data import GraphData as GraphData
+ from regula.documentreader.webclient.gen.models.graphic_field import GraphicField as GraphicField
+ from regula.documentreader.webclient.gen.models.graphic_field_type import GraphicFieldType as GraphicFieldType
+ from regula.documentreader.webclient.gen.models.graphic_fields_list import GraphicFieldsList as GraphicFieldsList
+ from regula.documentreader.webclient.gen.models.graphics_result import GraphicsResult as GraphicsResult
+ from regula.documentreader.webclient.gen.models.healthcheck import Healthcheck as Healthcheck
+ from regula.documentreader.webclient.gen.models.healthcheck_documents_database import HealthcheckDocumentsDatabase as HealthcheckDocumentsDatabase
+ from regula.documentreader.webclient.gen.models.ident_item import IdentItem as IdentItem
+ from regula.documentreader.webclient.gen.models.ident_result import IdentResult as IdentResult
+ from regula.documentreader.webclient.gen.models.image_data import ImageData as ImageData
+ from regula.documentreader.webclient.gen.models.image_qa import ImageQA as ImageQA
+ from regula.documentreader.webclient.gen.models.image_quality_check import ImageQualityCheck as ImageQualityCheck
+ from regula.documentreader.webclient.gen.models.image_quality_check_list import ImageQualityCheckList as ImageQualityCheckList
+ from regula.documentreader.webclient.gen.models.image_quality_check_list_item import ImageQualityCheckListItem as ImageQualityCheckListItem
+ from regula.documentreader.webclient.gen.models.image_quality_check_type import ImageQualityCheckType as ImageQualityCheckType
+ from regula.documentreader.webclient.gen.models.image_quality_result import ImageQualityResult as ImageQualityResult
+ from regula.documentreader.webclient.gen.models.image_transaction_data import ImageTransactionData as ImageTransactionData
+ from regula.documentreader.webclient.gen.models.images import Images as Images
+ from regula.documentreader.webclient.gen.models.images_available_source import ImagesAvailableSource as ImagesAvailableSource
+ from regula.documentreader.webclient.gen.models.images_field import ImagesField as ImagesField
+ from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue as ImagesFieldValue
+ from regula.documentreader.webclient.gen.models.images_item import ImagesItem as ImagesItem
+ from regula.documentreader.webclient.gen.models.images_result import ImagesResult as ImagesResult
+ from regula.documentreader.webclient.gen.models.in_data import InData as InData
+ from regula.documentreader.webclient.gen.models.in_data_transaction_images_field_value import InDataTransactionImagesFieldValue as InDataTransactionImagesFieldValue
+ from regula.documentreader.webclient.gen.models.in_data_video import InDataVideo as InDataVideo
+ from regula.documentreader.webclient.gen.models.input_barcode_type import InputBarcodeType as InputBarcodeType
+ from regula.documentreader.webclient.gen.models.input_image_quality_checks import InputImageQualityChecks as InputImageQualityChecks
+ from regula.documentreader.webclient.gen.models.lcid import LCID as LCID
+ from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult as LexicalAnalysisResult
+ from regula.documentreader.webclient.gen.models.license_item import LicenseItem as LicenseItem
+ from regula.documentreader.webclient.gen.models.license_result import LicenseResult as LicenseResult
+ from regula.documentreader.webclient.gen.models.light import Light as Light
+ from regula.documentreader.webclient.gen.models.list_transactions_by_tag_response import ListTransactionsByTagResponse as ListTransactionsByTagResponse
+ from regula.documentreader.webclient.gen.models.list_verified_fields import ListVerifiedFields as ListVerifiedFields
+ from regula.documentreader.webclient.gen.models.list_verified_fields_item import ListVerifiedFieldsItem as ListVerifiedFieldsItem
+ from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams as LivenessParams
+ from regula.documentreader.webclient.gen.models.log_level import LogLevel as LogLevel
+ from regula.documentreader.webclient.gen.models.mdl_device_engagement import MDLDeviceEngagement as MDLDeviceEngagement
+ from regula.documentreader.webclient.gen.models.mdl_device_retrieval import MDLDeviceRetrieval as MDLDeviceRetrieval
+ from regula.documentreader.webclient.gen.models.mdl_item import MDLItem as MDLItem
+ from regula.documentreader.webclient.gen.models.mdl_result import MDLResult as MDLResult
+ from regula.documentreader.webclient.gen.models.mdl_server_retrieval import MDLServerRetrieval as MDLServerRetrieval
+ from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult as MRZDetectorResult
+ from regula.documentreader.webclient.gen.models.mrz_format import MRZFormat as MRZFormat
+ from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult as MRZPositionResult
+ from regula.documentreader.webclient.gen.models.mrz_rows_item import MRZRowsItem as MRZRowsItem
+ from regula.documentreader.webclient.gen.models.mrz_test_quality import MRZTestQuality as MRZTestQuality
+ from regula.documentreader.webclient.gen.models.mrz_test_quality_item import MRZTestQualityItem as MRZTestQualityItem
+ from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult as MRZTestQualityResult
+ from regula.documentreader.webclient.gen.models.measure_system import MeasureSystem as MeasureSystem
+ from regula.documentreader.webclient.gen.models.message import Message as Message
+ from regula.documentreader.webclient.gen.models.mrz_detect_mode_enum import MrzDetectModeEnum as MrzDetectModeEnum
+ from regula.documentreader.webclient.gen.models.mrz_position_item import MrzPositionItem as MrzPositionItem
+ from regula.documentreader.webclient.gen.models.ocr_security_text_item import OCRSecurityTextItem as OCRSecurityTextItem
+ from regula.documentreader.webclient.gen.models.ocr_security_text_result import OCRSecurityTextResult as OCRSecurityTextResult
+ from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate as OneCandidate
+ from regula.documentreader.webclient.gen.models.one_candidate_item import OneCandidateItem as OneCandidateItem
+ from regula.documentreader.webclient.gen.models.original_symbol import OriginalSymbol as OriginalSymbol
+ from regula.documentreader.webclient.gen.models.out_data import OutData as OutData
+ from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue as OutDataTransactionImagesFieldValue
+ from regula.documentreader.webclient.gen.models.p_array_field import PArrayField as PArrayField
+ from regula.documentreader.webclient.gen.models.pid import PID as PID
+ from regula.documentreader.webclient.gen.models.parsed_data import ParsedData as ParsedData
+ from regula.documentreader.webclient.gen.models.parsing_error_codes import ParsingErrorCodes as ParsingErrorCodes
+ from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes as ParsingNotificationCodes
+ from regula.documentreader.webclient.gen.models.per_document_config import PerDocumentConfig as PerDocumentConfig
+ from regula.documentreader.webclient.gen.models.photo_ident_item import PhotoIdentItem as PhotoIdentItem
+ from regula.documentreader.webclient.gen.models.photo_ident_result import PhotoIdentResult as PhotoIdentResult
+ from regula.documentreader.webclient.gen.models.point import Point as Point
+ from regula.documentreader.webclient.gen.models.point_array import PointArray as PointArray
+ from regula.documentreader.webclient.gen.models.points_container import PointsContainer as PointsContainer
+ from regula.documentreader.webclient.gen.models.process_params import ProcessParams as ProcessParams
+ from regula.documentreader.webclient.gen.models.process_params_rfid import ProcessParamsRfid as ProcessParamsRfid
+ from regula.documentreader.webclient.gen.models.process_request import ProcessRequest as ProcessRequest
+ from regula.documentreader.webclient.gen.models.process_request_image import ProcessRequestImage as ProcessRequestImage
+ from regula.documentreader.webclient.gen.models.process_response import ProcessResponse as ProcessResponse
+ from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo as ProcessSystemInfo
+ from regula.documentreader.webclient.gen.models.processing_status import ProcessingStatus as ProcessingStatus
+ from regula.documentreader.webclient.gen.models.properties_params import PropertiesParams as PropertiesParams
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField as RFIDDocVisualExtendedField
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field_item import RFIDDocVisualExtendedFieldItem as RFIDDocVisualExtendedFieldItem
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo as RFIDDocVisualExtendedInfo
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info_item import RFIDDocVisualExtendedInfoItem as RFIDDocVisualExtendedInfoItem
+ from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes as RFIDErrorCodes
+ from regula.documentreader.webclient.gen.models.rfid_graphics_info_result import RFIDGraphicsInfoResult as RFIDGraphicsInfoResult
+ from regula.documentreader.webclient.gen.models.rfidpkd_resource_type import RFIDPKDResourceType as RFIDPKDResourceType
+ from regula.documentreader.webclient.gen.models.rfid_text_data_result import RFIDTextDataResult as RFIDTextDataResult
+ from regula.documentreader.webclient.gen.models.raw_image_container_item import RawImageContainerItem as RawImageContainerItem
+ from regula.documentreader.webclient.gen.models.raw_image_container_list import RawImageContainerList as RawImageContainerList
+ from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates as RectangleCoordinates
+ from regula.documentreader.webclient.gen.models.result import Result as Result
+ from regula.documentreader.webclient.gen.models.result_item import ResultItem as ResultItem
+ from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector as ResultMRZDetector
+ from regula.documentreader.webclient.gen.models.result_mrz_detector_item import ResultMRZDetectorItem as ResultMRZDetectorItem
+ from regula.documentreader.webclient.gen.models.rfid_a_chip import RfidAChip as RfidAChip
+ from regula.documentreader.webclient.gen.models.rfid_access_control_info import RfidAccessControlInfo as RfidAccessControlInfo
+ from regula.documentreader.webclient.gen.models.rfid_access_control_procedure_type import RfidAccessControlProcedureType as RfidAccessControlProcedureType
+ from regula.documentreader.webclient.gen.models.rfid_access_key import RfidAccessKey as RfidAccessKey
+ from regula.documentreader.webclient.gen.models.rfid_application import RfidApplication as RfidApplication
+ from regula.documentreader.webclient.gen.models.rfid_application_type import RfidApplicationType as RfidApplicationType
+ from regula.documentreader.webclient.gen.models.rfid_attribute_data import RfidAttributeData as RfidAttributeData
+ from regula.documentreader.webclient.gen.models.rfid_attribute_name import RfidAttributeName as RfidAttributeName
+ from regula.documentreader.webclient.gen.models.rfid_authentication_procedure_type import RfidAuthenticationProcedureType as RfidAuthenticationProcedureType
+ from regula.documentreader.webclient.gen.models.rfid_baud_rate import RfidBaudRate as RfidBaudRate
+ from regula.documentreader.webclient.gen.models.rfid_card_properties_ext import RfidCardPropertiesExt as RfidCardPropertiesExt
+ from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx as RfidCertificateEx
+ from regula.documentreader.webclient.gen.models.rfid_certificate_origin import RfidCertificateOrigin as RfidCertificateOrigin
+ from regula.documentreader.webclient.gen.models.rfid_certificate_type import RfidCertificateType as RfidCertificateType
+ from regula.documentreader.webclient.gen.models.rfid_dg1 import RfidDG1 as RfidDG1
+ from regula.documentreader.webclient.gen.models.rfid_data_file import RfidDataFile as RfidDataFile
+ from regula.documentreader.webclient.gen.models.rfid_data_file_type import RfidDataFileType as RfidDataFileType
+ from regula.documentreader.webclient.gen.models.rfid_distinguished_name import RfidDistinguishedName as RfidDistinguishedName
+ from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation as RfidLocation
+ from regula.documentreader.webclient.gen.models.rfid_origin import RfidOrigin as RfidOrigin
+ from regula.documentreader.webclient.gen.models.rfid_password_type import RfidPasswordType as RfidPasswordType
+ from regula.documentreader.webclient.gen.models.rfid_pki_extension import RfidPkiExtension as RfidPkiExtension
+ from regula.documentreader.webclient.gen.models.rfid_raw_data import RfidRawData as RfidRawData
+ from regula.documentreader.webclient.gen.models.rfid_security_object import RfidSecurityObject as RfidSecurityObject
+ from regula.documentreader.webclient.gen.models.rfid_session_data import RfidSessionData as RfidSessionData
+ from regula.documentreader.webclient.gen.models.rfid_signer_info_ex import RfidSignerInfoEx as RfidSignerInfoEx
+ from regula.documentreader.webclient.gen.models.rfid_terminal import RfidTerminal as RfidTerminal
+ from regula.documentreader.webclient.gen.models.rfid_terminal_type import RfidTerminalType as RfidTerminalType
+ from regula.documentreader.webclient.gen.models.rfid_type import RfidType as RfidType
+ from regula.documentreader.webclient.gen.models.rfid_validity import RfidValidity as RfidValidity
+ from regula.documentreader.webclient.gen.models.scenario import Scenario as Scenario
+ from regula.documentreader.webclient.gen.models.security_feature_item import SecurityFeatureItem as SecurityFeatureItem
+ from regula.documentreader.webclient.gen.models.security_feature_result import SecurityFeatureResult as SecurityFeatureResult
+ from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType as SecurityFeatureType
+ from regula.documentreader.webclient.gen.models.security_object_certificates import SecurityObjectCertificates as SecurityObjectCertificates
+ from regula.documentreader.webclient.gen.models.source import Source as Source
+ from regula.documentreader.webclient.gen.models.source_validity import SourceValidity as SourceValidity
+ from regula.documentreader.webclient.gen.models.status import Status as Status
+ from regula.documentreader.webclient.gen.models.status_item import StatusItem as StatusItem
+ from regula.documentreader.webclient.gen.models.status_result import StatusResult as StatusResult
+ from regula.documentreader.webclient.gen.models.string_item import StringItem as StringItem
+ from regula.documentreader.webclient.gen.models.string_recognition_result import StringRecognitionResult as StringRecognitionResult
+ from regula.documentreader.webclient.gen.models.symbol import Symbol as Symbol
+ from regula.documentreader.webclient.gen.models.symbol_candidate import SymbolCandidate as SymbolCandidate
+ from regula.documentreader.webclient.gen.models.symbol_estimation_item import SymbolEstimationItem as SymbolEstimationItem
+ from regula.documentreader.webclient.gen.models.symbol_recognition_result import SymbolRecognitionResult as SymbolRecognitionResult
+ from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo as TDocBinaryInfo
+ from regula.documentreader.webclient.gen.models.t_doc_binary_info_item import TDocBinaryInfoItem as TDocBinaryInfoItem
+ from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo as TOriginalRFIDGraphicsInfo
+ from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info_item import TOriginalRFIDGraphicsInfoItem as TOriginalRFIDGraphicsInfoItem
+ from regula.documentreader.webclient.gen.models.text import Text as Text
+ from regula.documentreader.webclient.gen.models.text_available_source import TextAvailableSource as TextAvailableSource
+ from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult as TextDataResult
+ from regula.documentreader.webclient.gen.models.text_field import TextField as TextField
+ from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType as TextFieldType
+ from regula.documentreader.webclient.gen.models.text_field_value import TextFieldValue as TextFieldValue
+ from regula.documentreader.webclient.gen.models.text_item import TextItem as TextItem
+ from regula.documentreader.webclient.gen.models.text_post_processing import TextPostProcessing as TextPostProcessing
+ from regula.documentreader.webclient.gen.models.text_result import TextResult as TextResult
+ from regula.documentreader.webclient.gen.models.transaction_image import TransactionImage as TransactionImage
+ from regula.documentreader.webclient.gen.models.transaction_info import TransactionInfo as TransactionInfo
+ from regula.documentreader.webclient.gen.models.transaction_process_get_response import TransactionProcessGetResponse as TransactionProcessGetResponse
+ from regula.documentreader.webclient.gen.models.transaction_process_request import TransactionProcessRequest as TransactionProcessRequest
+ from regula.documentreader.webclient.gen.models.transaction_process_result import TransactionProcessResult as TransactionProcessResult
+ from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes as TrfFtBytes
+ from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString as TrfFtString
+ from regula.documentreader.webclient.gen.models.vd_item import VDItem as VDItem
+ from regula.documentreader.webclient.gen.models.vds_data import VDSData as VDSData
+ from regula.documentreader.webclient.gen.models.vds_data_item import VDSDataItem as VDSDataItem
+ from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult as VDSDataResult
+ from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData as VDSNCData
+ from regula.documentreader.webclient.gen.models.vdsnc_data_item import VDSNCDataItem as VDSNCDataItem
+ from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult as VDSNCDataResult
+ from regula.documentreader.webclient.gen.models.ve_item import VEItem as VEItem
+ from regula.documentreader.webclient.gen.models.verification_result import VerificationResult as VerificationResult
+ from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap as VerifiedFieldMap
+ from regula.documentreader.webclient.gen.models.visibility import Visibility as Visibility
+ from regula.documentreader.webclient.gen.models.visual_extended_field_item import VisualExtendedFieldItem as VisualExtendedFieldItem
+
+else:
+ from lazy_imports import LazyModule, as_package, load
+
+ load(
+ LazyModule(
+ *as_package(__file__),
+ ("__version__", __version__),
+ ("__all__", __all__),
+ """# import apis into sdk package
+from regula.documentreader.webclient.gen.api.healthcheck_api import HealthcheckApi as HealthcheckApi
+from regula.documentreader.webclient.gen.api.process_api import ProcessApi as ProcessApi
+from regula.documentreader.webclient.gen.api.resources_api import ResourcesApi as ResourcesApi
+from regula.documentreader.webclient.gen.api.transaction_api import TransactionApi as TransactionApi
# import ApiClient
-from regula.documentreader.webclient.gen.api_response import ApiResponse
-from regula.documentreader.webclient.gen.api_client import ApiClient
-from regula.documentreader.webclient.gen.configuration import Configuration
-from regula.documentreader.webclient.gen.exceptions import OpenApiException
-from regula.documentreader.webclient.gen.exceptions import ApiTypeError
-from regula.documentreader.webclient.gen.exceptions import ApiValueError
-from regula.documentreader.webclient.gen.exceptions import ApiKeyError
-from regula.documentreader.webclient.gen.exceptions import ApiAttributeError
-from regula.documentreader.webclient.gen.exceptions import ApiException
+from regula.documentreader.webclient.gen.api_response import ApiResponse as ApiResponse
+from regula.documentreader.webclient.gen.api_client import ApiClient as ApiClient
+from regula.documentreader.webclient.gen.configuration import Configuration as Configuration
+from regula.documentreader.webclient.gen.exceptions import OpenApiException as OpenApiException
+from regula.documentreader.webclient.gen.exceptions import ApiTypeError as ApiTypeError
+from regula.documentreader.webclient.gen.exceptions import ApiValueError as ApiValueError
+from regula.documentreader.webclient.gen.exceptions import ApiKeyError as ApiKeyError
+from regula.documentreader.webclient.gen.exceptions import ApiAttributeError as ApiAttributeError
+from regula.documentreader.webclient.gen.exceptions import ApiException as ApiException
# import models into sdk package
-from regula.documentreader.webclient.gen.models.area_array import AreaArray
-from regula.documentreader.webclient.gen.models.area_container import AreaContainer
-from regula.documentreader.webclient.gen.models.auth_params import AuthParams
-from regula.documentreader.webclient.gen.models.authenticity_check_list import AuthenticityCheckList
-from regula.documentreader.webclient.gen.models.authenticity_check_list_item import AuthenticityCheckListItem
-from regula.documentreader.webclient.gen.models.authenticity_check_result import AuthenticityCheckResult
-from regula.documentreader.webclient.gen.models.authenticity_check_result_item import AuthenticityCheckResultItem
-from regula.documentreader.webclient.gen.models.authenticity_check_result_list_inner import AuthenticityCheckResultListInner
-from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult
-from regula.documentreader.webclient.gen.models.authenticity_result_type import AuthenticityResultType
-from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType
-from regula.documentreader.webclient.gen.models.barcode_type import BarcodeType
-from regula.documentreader.webclient.gen.models.bc_pdf417_info import BcPDF417INFO
-from regula.documentreader.webclient.gen.models.bc_roidetect import BcROIDETECT
-from regula.documentreader.webclient.gen.models.binary_data import BinaryData
-from regula.documentreader.webclient.gen.models.byte_array_item import ByteArrayItem
-from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult
-from regula.documentreader.webclient.gen.models.candidates_list_item import CandidatesListItem
-from regula.documentreader.webclient.gen.models.certificate_data import CertificateData
-from regula.documentreader.webclient.gen.models.check_diagnose import CheckDiagnose
-from regula.documentreader.webclient.gen.models.check_result import CheckResult
-from regula.documentreader.webclient.gen.models.chosen_document_type import ChosenDocumentType
-from regula.documentreader.webclient.gen.models.chosen_document_type_result import ChosenDocumentTypeResult
-from regula.documentreader.webclient.gen.models.container_list import ContainerList
-from regula.documentreader.webclient.gen.models.container_list_list_inner import ContainerListListInner
-from regula.documentreader.webclient.gen.models.critical import Critical
-from regula.documentreader.webclient.gen.models.cross_source_value_comparison import CrossSourceValueComparison
-from regula.documentreader.webclient.gen.models.data_module import DataModule
-from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical
-from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID
-from regula.documentreader.webclient.gen.models.device_info import DeviceInfo
-from regula.documentreader.webclient.gen.models.device_info_documents_database import DeviceInfoDocumentsDatabase
-from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo
-from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList
-from regula.documentreader.webclient.gen.models.doc_bar_code_info_item import DocBarCodeInfoItem
-from regula.documentreader.webclient.gen.models.doc_graphics_info_item import DocGraphicsInfoItem
-from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField
-from regula.documentreader.webclient.gen.models.doc_visual_extended_field_item import DocVisualExtendedFieldItem
-from regula.documentreader.webclient.gen.models.doc_visual_extended_info import DocVisualExtendedInfo
-from regula.documentreader.webclient.gen.models.doc_visual_extended_info_item import DocVisualExtendedInfoItem
-from regula.documentreader.webclient.gen.models.document_binary_info_result import DocumentBinaryInfoResult
-from regula.documentreader.webclient.gen.models.document_format import DocumentFormat
-from regula.documentreader.webclient.gen.models.document_image import DocumentImage
-from regula.documentreader.webclient.gen.models.document_image_result import DocumentImageResult
-from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
-from regula.documentreader.webclient.gen.models.document_position_item import DocumentPositionItem
-from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult
-from regula.documentreader.webclient.gen.models.document_type import DocumentType
-from regula.documentreader.webclient.gen.models.document_type_recognition_result import DocumentTypeRecognitionResult
-from regula.documentreader.webclient.gen.models.document_types_candidates import DocumentTypesCandidates
-from regula.documentreader.webclient.gen.models.document_types_candidates_list import DocumentTypesCandidatesList
-from regula.documentreader.webclient.gen.models.document_types_candidates_result import DocumentTypesCandidatesResult
-from regula.documentreader.webclient.gen.models.documents_database import DocumentsDatabase
-from regula.documentreader.webclient.gen.models.encrypted_rcl_item import EncryptedRCLItem
-from regula.documentreader.webclient.gen.models.encrypted_rcl_result import EncryptedRCLResult
-from regula.documentreader.webclient.gen.models.error_coordinates import ErrorCoordinates
-from regula.documentreader.webclient.gen.models.fdsid_list import FDSIDList
-from regula.documentreader.webclient.gen.models.face_api import FaceApi
-from regula.documentreader.webclient.gen.models.face_api_search import FaceApiSearch
-from regula.documentreader.webclient.gen.models.face_detection import FaceDetection
-from regula.documentreader.webclient.gen.models.face_detection_item import FaceDetectionItem
-from regula.documentreader.webclient.gen.models.face_detection_result import FaceDetectionResult
-from regula.documentreader.webclient.gen.models.face_item import FaceItem
-from regula.documentreader.webclient.gen.models.fiber_item import FiberItem
-from regula.documentreader.webclient.gen.models.fiber_result import FiberResult
-from regula.documentreader.webclient.gen.models.field_item import FieldItem
-from regula.documentreader.webclient.gen.models.file_image import FileImage
-from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse
-from regula.documentreader.webclient.gen.models.graph_data import GraphData
-from regula.documentreader.webclient.gen.models.graphic_field import GraphicField
-from regula.documentreader.webclient.gen.models.graphic_field_type import GraphicFieldType
-from regula.documentreader.webclient.gen.models.graphic_fields_list import GraphicFieldsList
-from regula.documentreader.webclient.gen.models.graphics_result import GraphicsResult
-from regula.documentreader.webclient.gen.models.healthcheck import Healthcheck
-from regula.documentreader.webclient.gen.models.healthcheck_documents_database import HealthcheckDocumentsDatabase
-from regula.documentreader.webclient.gen.models.ident_item import IdentItem
-from regula.documentreader.webclient.gen.models.ident_result import IdentResult
-from regula.documentreader.webclient.gen.models.image_data import ImageData
-from regula.documentreader.webclient.gen.models.image_qa import ImageQA
-from regula.documentreader.webclient.gen.models.image_quality_check import ImageQualityCheck
-from regula.documentreader.webclient.gen.models.image_quality_check_list import ImageQualityCheckList
-from regula.documentreader.webclient.gen.models.image_quality_check_list_item import ImageQualityCheckListItem
-from regula.documentreader.webclient.gen.models.image_quality_check_type import ImageQualityCheckType
-from regula.documentreader.webclient.gen.models.image_quality_result import ImageQualityResult
-from regula.documentreader.webclient.gen.models.image_transaction_data import ImageTransactionData
-from regula.documentreader.webclient.gen.models.images import Images
-from regula.documentreader.webclient.gen.models.images_available_source import ImagesAvailableSource
-from regula.documentreader.webclient.gen.models.images_field import ImagesField
-from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue
-from regula.documentreader.webclient.gen.models.images_item import ImagesItem
-from regula.documentreader.webclient.gen.models.images_result import ImagesResult
-from regula.documentreader.webclient.gen.models.in_data import InData
-from regula.documentreader.webclient.gen.models.in_data_transaction_images_field_value import InDataTransactionImagesFieldValue
-from regula.documentreader.webclient.gen.models.in_data_video import InDataVideo
-from regula.documentreader.webclient.gen.models.input_barcode_type import InputBarcodeType
-from regula.documentreader.webclient.gen.models.input_image_quality_checks import InputImageQualityChecks
-from regula.documentreader.webclient.gen.models.lcid import LCID
-from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult
-from regula.documentreader.webclient.gen.models.license_item import LicenseItem
-from regula.documentreader.webclient.gen.models.license_result import LicenseResult
-from regula.documentreader.webclient.gen.models.light import Light
-from regula.documentreader.webclient.gen.models.list_transactions_by_tag_response import ListTransactionsByTagResponse
-from regula.documentreader.webclient.gen.models.list_verified_fields import ListVerifiedFields
-from regula.documentreader.webclient.gen.models.list_verified_fields_item import ListVerifiedFieldsItem
-from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams
-from regula.documentreader.webclient.gen.models.log_level import LogLevel
-from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult
-from regula.documentreader.webclient.gen.models.mrz_format import MRZFormat
-from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult
-from regula.documentreader.webclient.gen.models.mrz_rows_item import MRZRowsItem
-from regula.documentreader.webclient.gen.models.mrz_test_quality import MRZTestQuality
-from regula.documentreader.webclient.gen.models.mrz_test_quality_item import MRZTestQualityItem
-from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult
-from regula.documentreader.webclient.gen.models.measure_system import MeasureSystem
-from regula.documentreader.webclient.gen.models.mrz_detect_mode_enum import MrzDetectModeEnum
-from regula.documentreader.webclient.gen.models.mrz_position_item import MrzPositionItem
-from regula.documentreader.webclient.gen.models.ocr_security_text_item import OCRSecurityTextItem
-from regula.documentreader.webclient.gen.models.ocr_security_text_result import OCRSecurityTextResult
-from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate
-from regula.documentreader.webclient.gen.models.one_candidate_item import OneCandidateItem
-from regula.documentreader.webclient.gen.models.original_symbol import OriginalSymbol
-from regula.documentreader.webclient.gen.models.out_data import OutData
-from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue
-from regula.documentreader.webclient.gen.models.p_array_field import PArrayField
-from regula.documentreader.webclient.gen.models.parsed_data import ParsedData
-from regula.documentreader.webclient.gen.models.parsing_error_codes import ParsingErrorCodes
-from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes
-from regula.documentreader.webclient.gen.models.per_document_config import PerDocumentConfig
-from regula.documentreader.webclient.gen.models.photo_ident_item import PhotoIdentItem
-from regula.documentreader.webclient.gen.models.photo_ident_result import PhotoIdentResult
-from regula.documentreader.webclient.gen.models.point import Point
-from regula.documentreader.webclient.gen.models.point_array import PointArray
-from regula.documentreader.webclient.gen.models.points_container import PointsContainer
-from regula.documentreader.webclient.gen.models.process_params import ProcessParams
-from regula.documentreader.webclient.gen.models.process_params_rfid import ProcessParamsRfid
-from regula.documentreader.webclient.gen.models.process_request import ProcessRequest
-from regula.documentreader.webclient.gen.models.process_request_image import ProcessRequestImage
-from regula.documentreader.webclient.gen.models.process_response import ProcessResponse
-from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo
-from regula.documentreader.webclient.gen.models.processing_status import ProcessingStatus
-from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField
-from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field_item import RFIDDocVisualExtendedFieldItem
-from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo
-from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info_item import RFIDDocVisualExtendedInfoItem
-from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes
-from regula.documentreader.webclient.gen.models.rfid_graphics_info_result import RFIDGraphicsInfoResult
-from regula.documentreader.webclient.gen.models.rfidpkd_resource_type import RFIDPKDResourceType
-from regula.documentreader.webclient.gen.models.rfid_text_data_result import RFIDTextDataResult
-from regula.documentreader.webclient.gen.models.raw_image_container_item import RawImageContainerItem
-from regula.documentreader.webclient.gen.models.raw_image_container_list import RawImageContainerList
-from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
-from regula.documentreader.webclient.gen.models.result import Result
-from regula.documentreader.webclient.gen.models.result_item import ResultItem
-from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector
-from regula.documentreader.webclient.gen.models.result_mrz_detector_item import ResultMRZDetectorItem
-from regula.documentreader.webclient.gen.models.rfid_a_chip import RfidAChip
-from regula.documentreader.webclient.gen.models.rfid_access_control_info import RfidAccessControlInfo
-from regula.documentreader.webclient.gen.models.rfid_access_control_procedure_type import RfidAccessControlProcedureType
-from regula.documentreader.webclient.gen.models.rfid_access_key import RfidAccessKey
-from regula.documentreader.webclient.gen.models.rfid_application import RfidApplication
-from regula.documentreader.webclient.gen.models.rfid_application_type import RfidApplicationType
-from regula.documentreader.webclient.gen.models.rfid_attribute_data import RfidAttributeData
-from regula.documentreader.webclient.gen.models.rfid_attribute_name import RfidAttributeName
-from regula.documentreader.webclient.gen.models.rfid_authentication_procedure_type import RfidAuthenticationProcedureType
-from regula.documentreader.webclient.gen.models.rfid_baud_rate import RfidBaudRate
-from regula.documentreader.webclient.gen.models.rfid_card_properties_ext import RfidCardPropertiesExt
-from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx
-from regula.documentreader.webclient.gen.models.rfid_certificate_origin import RfidCertificateOrigin
-from regula.documentreader.webclient.gen.models.rfid_certificate_type import RfidCertificateType
-from regula.documentreader.webclient.gen.models.rfid_dg1 import RfidDG1
-from regula.documentreader.webclient.gen.models.rfid_data_file import RfidDataFile
-from regula.documentreader.webclient.gen.models.rfid_data_file_type import RfidDataFileType
-from regula.documentreader.webclient.gen.models.rfid_data_group_type_tag import RfidDataGroupTypeTag
-from regula.documentreader.webclient.gen.models.rfid_distinguished_name import RfidDistinguishedName
-from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation
-from regula.documentreader.webclient.gen.models.rfid_origin import RfidOrigin
-from regula.documentreader.webclient.gen.models.rfid_password_type import RfidPasswordType
-from regula.documentreader.webclient.gen.models.rfid_pki_extension import RfidPkiExtension
-from regula.documentreader.webclient.gen.models.rfid_raw_data import RfidRawData
-from regula.documentreader.webclient.gen.models.rfid_security_object import RfidSecurityObject
-from regula.documentreader.webclient.gen.models.rfid_session_data import RfidSessionData
-from regula.documentreader.webclient.gen.models.rfid_signer_info_ex import RfidSignerInfoEx
-from regula.documentreader.webclient.gen.models.rfid_terminal import RfidTerminal
-from regula.documentreader.webclient.gen.models.rfid_terminal_type import RfidTerminalType
-from regula.documentreader.webclient.gen.models.rfid_type import RfidType
-from regula.documentreader.webclient.gen.models.rfid_validity import RfidValidity
-from regula.documentreader.webclient.gen.models.scenario import Scenario
-from regula.documentreader.webclient.gen.models.security_feature_item import SecurityFeatureItem
-from regula.documentreader.webclient.gen.models.security_feature_result import SecurityFeatureResult
-from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType
-from regula.documentreader.webclient.gen.models.security_object_certificates import SecurityObjectCertificates
-from regula.documentreader.webclient.gen.models.source import Source
-from regula.documentreader.webclient.gen.models.source_validity import SourceValidity
-from regula.documentreader.webclient.gen.models.status import Status
-from regula.documentreader.webclient.gen.models.status_item import StatusItem
-from regula.documentreader.webclient.gen.models.status_result import StatusResult
-from regula.documentreader.webclient.gen.models.string_item import StringItem
-from regula.documentreader.webclient.gen.models.string_recognition_result import StringRecognitionResult
-from regula.documentreader.webclient.gen.models.symbol import Symbol
-from regula.documentreader.webclient.gen.models.symbol_candidate import SymbolCandidate
-from regula.documentreader.webclient.gen.models.symbol_estimation_item import SymbolEstimationItem
-from regula.documentreader.webclient.gen.models.symbol_recognition_result import SymbolRecognitionResult
-from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo
-from regula.documentreader.webclient.gen.models.t_doc_binary_info_item import TDocBinaryInfoItem
-from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo
-from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info_item import TOriginalRFIDGraphicsInfoItem
-from regula.documentreader.webclient.gen.models.text import Text
-from regula.documentreader.webclient.gen.models.text_available_source import TextAvailableSource
-from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult
-from regula.documentreader.webclient.gen.models.text_field import TextField
-from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
-from regula.documentreader.webclient.gen.models.text_field_value import TextFieldValue
-from regula.documentreader.webclient.gen.models.text_item import TextItem
-from regula.documentreader.webclient.gen.models.text_post_processing import TextPostProcessing
-from regula.documentreader.webclient.gen.models.text_result import TextResult
-from regula.documentreader.webclient.gen.models.transaction_image import TransactionImage
-from regula.documentreader.webclient.gen.models.transaction_info import TransactionInfo
-from regula.documentreader.webclient.gen.models.transaction_process_get_response import TransactionProcessGetResponse
-from regula.documentreader.webclient.gen.models.transaction_process_request import TransactionProcessRequest
-from regula.documentreader.webclient.gen.models.transaction_process_result import TransactionProcessResult
-from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
-from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
-from regula.documentreader.webclient.gen.models.verification_result import VerificationResult
-from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap
-from regula.documentreader.webclient.gen.models.visibility import Visibility
-from regula.documentreader.webclient.gen.models.visual_extended_field_item import VisualExtendedFieldItem
+from regula.documentreader.webclient.gen.models.area_array import AreaArray as AreaArray
+from regula.documentreader.webclient.gen.models.area_container import AreaContainer as AreaContainer
+from regula.documentreader.webclient.gen.models.auth_params import AuthParams as AuthParams
+from regula.documentreader.webclient.gen.models.authenticity_check_list import AuthenticityCheckList as AuthenticityCheckList
+from regula.documentreader.webclient.gen.models.authenticity_check_list_item import AuthenticityCheckListItem as AuthenticityCheckListItem
+from regula.documentreader.webclient.gen.models.authenticity_check_result import AuthenticityCheckResult as AuthenticityCheckResult
+from regula.documentreader.webclient.gen.models.authenticity_check_result_item import AuthenticityCheckResultItem as AuthenticityCheckResultItem
+from regula.documentreader.webclient.gen.models.authenticity_check_result_list_inner import AuthenticityCheckResultListInner as AuthenticityCheckResultListInner
+from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult as AuthenticityResult
+from regula.documentreader.webclient.gen.models.authenticity_result_type import AuthenticityResultType as AuthenticityResultType
+from regula.documentreader.webclient.gen.models.bsiv2_item import BSIV2Item as BSIV2Item
+from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result as BSIV2Result
+from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType as BarCodeModuleType
+from regula.documentreader.webclient.gen.models.barcode_position_item import BarcodePositionItem as BarcodePositionItem
+from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult as BarcodePositionResult
+from regula.documentreader.webclient.gen.models.barcode_type import BarcodeType as BarcodeType
+from regula.documentreader.webclient.gen.models.bc_pdf417_info import BcPDF417INFO as BcPDF417INFO
+from regula.documentreader.webclient.gen.models.bc_roidetect import BcROIDETECT as BcROIDETECT
+from regula.documentreader.webclient.gen.models.binary_data import BinaryData as BinaryData
+from regula.documentreader.webclient.gen.models.bsi_tr03135 import BsiTr03135 as BsiTr03135
+from regula.documentreader.webclient.gen.models.byte_array_item import ByteArrayItem as ByteArrayItem
+from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult as ByteArrayResult
+from regula.documentreader.webclient.gen.models.candidates_list_item import CandidatesListItem as CandidatesListItem
+from regula.documentreader.webclient.gen.models.certificate_data import CertificateData as CertificateData
+from regula.documentreader.webclient.gen.models.check_diagnose import CheckDiagnose as CheckDiagnose
+from regula.documentreader.webclient.gen.models.check_result import CheckResult as CheckResult
+from regula.documentreader.webclient.gen.models.chosen_document_type import ChosenDocumentType as ChosenDocumentType
+from regula.documentreader.webclient.gen.models.chosen_document_type_result import ChosenDocumentTypeResult as ChosenDocumentTypeResult
+from regula.documentreader.webclient.gen.models.container_list import ContainerList as ContainerList
+from regula.documentreader.webclient.gen.models.container_list_list_inner import ContainerListListInner as ContainerListListInner
+from regula.documentreader.webclient.gen.models.critical import Critical as Critical
+from regula.documentreader.webclient.gen.models.cross_source_value_comparison import CrossSourceValueComparison as CrossSourceValueComparison
+from regula.documentreader.webclient.gen.models.data_module import DataModule as DataModule
+from regula.documentreader.webclient.gen.models.database_document import DatabaseDocument as DatabaseDocument
+from regula.documentreader.webclient.gen.models.database_document_list import DatabaseDocumentList as DatabaseDocumentList
+from regula.documentreader.webclient.gen.models.details_age import DetailsAge as DetailsAge
+from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical as DetailsOptical
+from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID as DetailsRFID
+from regula.documentreader.webclient.gen.models.device_info import DeviceInfo as DeviceInfo
+from regula.documentreader.webclient.gen.models.device_info_documents_database import DeviceInfoDocumentsDatabase as DeviceInfoDocumentsDatabase
+from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo as DocBarCodeInfo
+from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList as DocBarCodeInfoFieldsList
+from regula.documentreader.webclient.gen.models.doc_bar_code_info_item import DocBarCodeInfoItem as DocBarCodeInfoItem
+from regula.documentreader.webclient.gen.models.doc_feature import DocFeature as DocFeature
+from regula.documentreader.webclient.gen.models.doc_graphics_info_item import DocGraphicsInfoItem as DocGraphicsInfoItem
+from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField as DocVisualExtendedField
+from regula.documentreader.webclient.gen.models.doc_visual_extended_field_item import DocVisualExtendedFieldItem as DocVisualExtendedFieldItem
+from regula.documentreader.webclient.gen.models.doc_visual_extended_info import DocVisualExtendedInfo as DocVisualExtendedInfo
+from regula.documentreader.webclient.gen.models.doc_visual_extended_info_item import DocVisualExtendedInfoItem as DocVisualExtendedInfoItem
+from regula.documentreader.webclient.gen.models.document_binary_info_result import DocumentBinaryInfoResult as DocumentBinaryInfoResult
+from regula.documentreader.webclient.gen.models.document_format import DocumentFormat as DocumentFormat
+from regula.documentreader.webclient.gen.models.document_image import DocumentImage as DocumentImage
+from regula.documentreader.webclient.gen.models.document_image_result import DocumentImageResult as DocumentImageResult
+from regula.documentreader.webclient.gen.models.document_position import DocumentPosition as DocumentPosition
+from regula.documentreader.webclient.gen.models.document_position_item import DocumentPositionItem as DocumentPositionItem
+from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult as DocumentPositionResult
+from regula.documentreader.webclient.gen.models.document_type import DocumentType as DocumentType
+from regula.documentreader.webclient.gen.models.document_type_recognition_result import DocumentTypeRecognitionResult as DocumentTypeRecognitionResult
+from regula.documentreader.webclient.gen.models.document_types_candidates import DocumentTypesCandidates as DocumentTypesCandidates
+from regula.documentreader.webclient.gen.models.document_types_candidates_list import DocumentTypesCandidatesList as DocumentTypesCandidatesList
+from regula.documentreader.webclient.gen.models.document_types_candidates_result import DocumentTypesCandidatesResult as DocumentTypesCandidatesResult
+from regula.documentreader.webclient.gen.models.documents_database import DocumentsDatabase as DocumentsDatabase
+from regula.documentreader.webclient.gen.models.encrypted_rcl_item import EncryptedRCLItem as EncryptedRCLItem
+from regula.documentreader.webclient.gen.models.encrypted_rcl_result import EncryptedRCLResult as EncryptedRCLResult
+from regula.documentreader.webclient.gen.models.error_coordinates import ErrorCoordinates as ErrorCoordinates
+from regula.documentreader.webclient.gen.models.fdsid_list import FDSIDList as FDSIDList
+from regula.documentreader.webclient.gen.models.face_api import FaceApi as FaceApi
+from regula.documentreader.webclient.gen.models.face_api_search import FaceApiSearch as FaceApiSearch
+from regula.documentreader.webclient.gen.models.face_detection import FaceDetection as FaceDetection
+from regula.documentreader.webclient.gen.models.face_detection_item import FaceDetectionItem as FaceDetectionItem
+from regula.documentreader.webclient.gen.models.face_detection_result import FaceDetectionResult as FaceDetectionResult
+from regula.documentreader.webclient.gen.models.face_item import FaceItem as FaceItem
+from regula.documentreader.webclient.gen.models.fiber_item import FiberItem as FiberItem
+from regula.documentreader.webclient.gen.models.fiber_result import FiberResult as FiberResult
+from regula.documentreader.webclient.gen.models.field_item import FieldItem as FieldItem
+from regula.documentreader.webclient.gen.models.file_image import FileImage as FileImage
+from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse as GetTransactionsByTagResponse
+from regula.documentreader.webclient.gen.models.glares_check_params import GlaresCheckParams as GlaresCheckParams
+from regula.documentreader.webclient.gen.models.graph_data import GraphData as GraphData
+from regula.documentreader.webclient.gen.models.graphic_field import GraphicField as GraphicField
+from regula.documentreader.webclient.gen.models.graphic_field_type import GraphicFieldType as GraphicFieldType
+from regula.documentreader.webclient.gen.models.graphic_fields_list import GraphicFieldsList as GraphicFieldsList
+from regula.documentreader.webclient.gen.models.graphics_result import GraphicsResult as GraphicsResult
+from regula.documentreader.webclient.gen.models.healthcheck import Healthcheck as Healthcheck
+from regula.documentreader.webclient.gen.models.healthcheck_documents_database import HealthcheckDocumentsDatabase as HealthcheckDocumentsDatabase
+from regula.documentreader.webclient.gen.models.ident_item import IdentItem as IdentItem
+from regula.documentreader.webclient.gen.models.ident_result import IdentResult as IdentResult
+from regula.documentreader.webclient.gen.models.image_data import ImageData as ImageData
+from regula.documentreader.webclient.gen.models.image_qa import ImageQA as ImageQA
+from regula.documentreader.webclient.gen.models.image_quality_check import ImageQualityCheck as ImageQualityCheck
+from regula.documentreader.webclient.gen.models.image_quality_check_list import ImageQualityCheckList as ImageQualityCheckList
+from regula.documentreader.webclient.gen.models.image_quality_check_list_item import ImageQualityCheckListItem as ImageQualityCheckListItem
+from regula.documentreader.webclient.gen.models.image_quality_check_type import ImageQualityCheckType as ImageQualityCheckType
+from regula.documentreader.webclient.gen.models.image_quality_result import ImageQualityResult as ImageQualityResult
+from regula.documentreader.webclient.gen.models.image_transaction_data import ImageTransactionData as ImageTransactionData
+from regula.documentreader.webclient.gen.models.images import Images as Images
+from regula.documentreader.webclient.gen.models.images_available_source import ImagesAvailableSource as ImagesAvailableSource
+from regula.documentreader.webclient.gen.models.images_field import ImagesField as ImagesField
+from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue as ImagesFieldValue
+from regula.documentreader.webclient.gen.models.images_item import ImagesItem as ImagesItem
+from regula.documentreader.webclient.gen.models.images_result import ImagesResult as ImagesResult
+from regula.documentreader.webclient.gen.models.in_data import InData as InData
+from regula.documentreader.webclient.gen.models.in_data_transaction_images_field_value import InDataTransactionImagesFieldValue as InDataTransactionImagesFieldValue
+from regula.documentreader.webclient.gen.models.in_data_video import InDataVideo as InDataVideo
+from regula.documentreader.webclient.gen.models.input_barcode_type import InputBarcodeType as InputBarcodeType
+from regula.documentreader.webclient.gen.models.input_image_quality_checks import InputImageQualityChecks as InputImageQualityChecks
+from regula.documentreader.webclient.gen.models.lcid import LCID as LCID
+from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult as LexicalAnalysisResult
+from regula.documentreader.webclient.gen.models.license_item import LicenseItem as LicenseItem
+from regula.documentreader.webclient.gen.models.license_result import LicenseResult as LicenseResult
+from regula.documentreader.webclient.gen.models.light import Light as Light
+from regula.documentreader.webclient.gen.models.list_transactions_by_tag_response import ListTransactionsByTagResponse as ListTransactionsByTagResponse
+from regula.documentreader.webclient.gen.models.list_verified_fields import ListVerifiedFields as ListVerifiedFields
+from regula.documentreader.webclient.gen.models.list_verified_fields_item import ListVerifiedFieldsItem as ListVerifiedFieldsItem
+from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams as LivenessParams
+from regula.documentreader.webclient.gen.models.log_level import LogLevel as LogLevel
+from regula.documentreader.webclient.gen.models.mdl_device_engagement import MDLDeviceEngagement as MDLDeviceEngagement
+from regula.documentreader.webclient.gen.models.mdl_device_retrieval import MDLDeviceRetrieval as MDLDeviceRetrieval
+from regula.documentreader.webclient.gen.models.mdl_item import MDLItem as MDLItem
+from regula.documentreader.webclient.gen.models.mdl_result import MDLResult as MDLResult
+from regula.documentreader.webclient.gen.models.mdl_server_retrieval import MDLServerRetrieval as MDLServerRetrieval
+from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult as MRZDetectorResult
+from regula.documentreader.webclient.gen.models.mrz_format import MRZFormat as MRZFormat
+from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult as MRZPositionResult
+from regula.documentreader.webclient.gen.models.mrz_rows_item import MRZRowsItem as MRZRowsItem
+from regula.documentreader.webclient.gen.models.mrz_test_quality import MRZTestQuality as MRZTestQuality
+from regula.documentreader.webclient.gen.models.mrz_test_quality_item import MRZTestQualityItem as MRZTestQualityItem
+from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult as MRZTestQualityResult
+from regula.documentreader.webclient.gen.models.measure_system import MeasureSystem as MeasureSystem
+from regula.documentreader.webclient.gen.models.message import Message as Message
+from regula.documentreader.webclient.gen.models.mrz_detect_mode_enum import MrzDetectModeEnum as MrzDetectModeEnum
+from regula.documentreader.webclient.gen.models.mrz_position_item import MrzPositionItem as MrzPositionItem
+from regula.documentreader.webclient.gen.models.ocr_security_text_item import OCRSecurityTextItem as OCRSecurityTextItem
+from regula.documentreader.webclient.gen.models.ocr_security_text_result import OCRSecurityTextResult as OCRSecurityTextResult
+from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate as OneCandidate
+from regula.documentreader.webclient.gen.models.one_candidate_item import OneCandidateItem as OneCandidateItem
+from regula.documentreader.webclient.gen.models.original_symbol import OriginalSymbol as OriginalSymbol
+from regula.documentreader.webclient.gen.models.out_data import OutData as OutData
+from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue as OutDataTransactionImagesFieldValue
+from regula.documentreader.webclient.gen.models.p_array_field import PArrayField as PArrayField
+from regula.documentreader.webclient.gen.models.pid import PID as PID
+from regula.documentreader.webclient.gen.models.parsed_data import ParsedData as ParsedData
+from regula.documentreader.webclient.gen.models.parsing_error_codes import ParsingErrorCodes as ParsingErrorCodes
+from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes as ParsingNotificationCodes
+from regula.documentreader.webclient.gen.models.per_document_config import PerDocumentConfig as PerDocumentConfig
+from regula.documentreader.webclient.gen.models.photo_ident_item import PhotoIdentItem as PhotoIdentItem
+from regula.documentreader.webclient.gen.models.photo_ident_result import PhotoIdentResult as PhotoIdentResult
+from regula.documentreader.webclient.gen.models.point import Point as Point
+from regula.documentreader.webclient.gen.models.point_array import PointArray as PointArray
+from regula.documentreader.webclient.gen.models.points_container import PointsContainer as PointsContainer
+from regula.documentreader.webclient.gen.models.process_params import ProcessParams as ProcessParams
+from regula.documentreader.webclient.gen.models.process_params_rfid import ProcessParamsRfid as ProcessParamsRfid
+from regula.documentreader.webclient.gen.models.process_request import ProcessRequest as ProcessRequest
+from regula.documentreader.webclient.gen.models.process_request_image import ProcessRequestImage as ProcessRequestImage
+from regula.documentreader.webclient.gen.models.process_response import ProcessResponse as ProcessResponse
+from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo as ProcessSystemInfo
+from regula.documentreader.webclient.gen.models.processing_status import ProcessingStatus as ProcessingStatus
+from regula.documentreader.webclient.gen.models.properties_params import PropertiesParams as PropertiesParams
+from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField as RFIDDocVisualExtendedField
+from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field_item import RFIDDocVisualExtendedFieldItem as RFIDDocVisualExtendedFieldItem
+from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo as RFIDDocVisualExtendedInfo
+from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info_item import RFIDDocVisualExtendedInfoItem as RFIDDocVisualExtendedInfoItem
+from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes as RFIDErrorCodes
+from regula.documentreader.webclient.gen.models.rfid_graphics_info_result import RFIDGraphicsInfoResult as RFIDGraphicsInfoResult
+from regula.documentreader.webclient.gen.models.rfidpkd_resource_type import RFIDPKDResourceType as RFIDPKDResourceType
+from regula.documentreader.webclient.gen.models.rfid_text_data_result import RFIDTextDataResult as RFIDTextDataResult
+from regula.documentreader.webclient.gen.models.raw_image_container_item import RawImageContainerItem as RawImageContainerItem
+from regula.documentreader.webclient.gen.models.raw_image_container_list import RawImageContainerList as RawImageContainerList
+from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates as RectangleCoordinates
+from regula.documentreader.webclient.gen.models.result import Result as Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem as ResultItem
+from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector as ResultMRZDetector
+from regula.documentreader.webclient.gen.models.result_mrz_detector_item import ResultMRZDetectorItem as ResultMRZDetectorItem
+from regula.documentreader.webclient.gen.models.rfid_a_chip import RfidAChip as RfidAChip
+from regula.documentreader.webclient.gen.models.rfid_access_control_info import RfidAccessControlInfo as RfidAccessControlInfo
+from regula.documentreader.webclient.gen.models.rfid_access_control_procedure_type import RfidAccessControlProcedureType as RfidAccessControlProcedureType
+from regula.documentreader.webclient.gen.models.rfid_access_key import RfidAccessKey as RfidAccessKey
+from regula.documentreader.webclient.gen.models.rfid_application import RfidApplication as RfidApplication
+from regula.documentreader.webclient.gen.models.rfid_application_type import RfidApplicationType as RfidApplicationType
+from regula.documentreader.webclient.gen.models.rfid_attribute_data import RfidAttributeData as RfidAttributeData
+from regula.documentreader.webclient.gen.models.rfid_attribute_name import RfidAttributeName as RfidAttributeName
+from regula.documentreader.webclient.gen.models.rfid_authentication_procedure_type import RfidAuthenticationProcedureType as RfidAuthenticationProcedureType
+from regula.documentreader.webclient.gen.models.rfid_baud_rate import RfidBaudRate as RfidBaudRate
+from regula.documentreader.webclient.gen.models.rfid_card_properties_ext import RfidCardPropertiesExt as RfidCardPropertiesExt
+from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx as RfidCertificateEx
+from regula.documentreader.webclient.gen.models.rfid_certificate_origin import RfidCertificateOrigin as RfidCertificateOrigin
+from regula.documentreader.webclient.gen.models.rfid_certificate_type import RfidCertificateType as RfidCertificateType
+from regula.documentreader.webclient.gen.models.rfid_dg1 import RfidDG1 as RfidDG1
+from regula.documentreader.webclient.gen.models.rfid_data_file import RfidDataFile as RfidDataFile
+from regula.documentreader.webclient.gen.models.rfid_data_file_type import RfidDataFileType as RfidDataFileType
+from regula.documentreader.webclient.gen.models.rfid_distinguished_name import RfidDistinguishedName as RfidDistinguishedName
+from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation as RfidLocation
+from regula.documentreader.webclient.gen.models.rfid_origin import RfidOrigin as RfidOrigin
+from regula.documentreader.webclient.gen.models.rfid_password_type import RfidPasswordType as RfidPasswordType
+from regula.documentreader.webclient.gen.models.rfid_pki_extension import RfidPkiExtension as RfidPkiExtension
+from regula.documentreader.webclient.gen.models.rfid_raw_data import RfidRawData as RfidRawData
+from regula.documentreader.webclient.gen.models.rfid_security_object import RfidSecurityObject as RfidSecurityObject
+from regula.documentreader.webclient.gen.models.rfid_session_data import RfidSessionData as RfidSessionData
+from regula.documentreader.webclient.gen.models.rfid_signer_info_ex import RfidSignerInfoEx as RfidSignerInfoEx
+from regula.documentreader.webclient.gen.models.rfid_terminal import RfidTerminal as RfidTerminal
+from regula.documentreader.webclient.gen.models.rfid_terminal_type import RfidTerminalType as RfidTerminalType
+from regula.documentreader.webclient.gen.models.rfid_type import RfidType as RfidType
+from regula.documentreader.webclient.gen.models.rfid_validity import RfidValidity as RfidValidity
+from regula.documentreader.webclient.gen.models.scenario import Scenario as Scenario
+from regula.documentreader.webclient.gen.models.security_feature_item import SecurityFeatureItem as SecurityFeatureItem
+from regula.documentreader.webclient.gen.models.security_feature_result import SecurityFeatureResult as SecurityFeatureResult
+from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType as SecurityFeatureType
+from regula.documentreader.webclient.gen.models.security_object_certificates import SecurityObjectCertificates as SecurityObjectCertificates
+from regula.documentreader.webclient.gen.models.source import Source as Source
+from regula.documentreader.webclient.gen.models.source_validity import SourceValidity as SourceValidity
+from regula.documentreader.webclient.gen.models.status import Status as Status
+from regula.documentreader.webclient.gen.models.status_item import StatusItem as StatusItem
+from regula.documentreader.webclient.gen.models.status_result import StatusResult as StatusResult
+from regula.documentreader.webclient.gen.models.string_item import StringItem as StringItem
+from regula.documentreader.webclient.gen.models.string_recognition_result import StringRecognitionResult as StringRecognitionResult
+from regula.documentreader.webclient.gen.models.symbol import Symbol as Symbol
+from regula.documentreader.webclient.gen.models.symbol_candidate import SymbolCandidate as SymbolCandidate
+from regula.documentreader.webclient.gen.models.symbol_estimation_item import SymbolEstimationItem as SymbolEstimationItem
+from regula.documentreader.webclient.gen.models.symbol_recognition_result import SymbolRecognitionResult as SymbolRecognitionResult
+from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo as TDocBinaryInfo
+from regula.documentreader.webclient.gen.models.t_doc_binary_info_item import TDocBinaryInfoItem as TDocBinaryInfoItem
+from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo as TOriginalRFIDGraphicsInfo
+from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info_item import TOriginalRFIDGraphicsInfoItem as TOriginalRFIDGraphicsInfoItem
+from regula.documentreader.webclient.gen.models.text import Text as Text
+from regula.documentreader.webclient.gen.models.text_available_source import TextAvailableSource as TextAvailableSource
+from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult as TextDataResult
+from regula.documentreader.webclient.gen.models.text_field import TextField as TextField
+from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType as TextFieldType
+from regula.documentreader.webclient.gen.models.text_field_value import TextFieldValue as TextFieldValue
+from regula.documentreader.webclient.gen.models.text_item import TextItem as TextItem
+from regula.documentreader.webclient.gen.models.text_post_processing import TextPostProcessing as TextPostProcessing
+from regula.documentreader.webclient.gen.models.text_result import TextResult as TextResult
+from regula.documentreader.webclient.gen.models.transaction_image import TransactionImage as TransactionImage
+from regula.documentreader.webclient.gen.models.transaction_info import TransactionInfo as TransactionInfo
+from regula.documentreader.webclient.gen.models.transaction_process_get_response import TransactionProcessGetResponse as TransactionProcessGetResponse
+from regula.documentreader.webclient.gen.models.transaction_process_request import TransactionProcessRequest as TransactionProcessRequest
+from regula.documentreader.webclient.gen.models.transaction_process_result import TransactionProcessResult as TransactionProcessResult
+from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes as TrfFtBytes
+from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString as TrfFtString
+from regula.documentreader.webclient.gen.models.vd_item import VDItem as VDItem
+from regula.documentreader.webclient.gen.models.vds_data import VDSData as VDSData
+from regula.documentreader.webclient.gen.models.vds_data_item import VDSDataItem as VDSDataItem
+from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult as VDSDataResult
+from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData as VDSNCData
+from regula.documentreader.webclient.gen.models.vdsnc_data_item import VDSNCDataItem as VDSNCDataItem
+from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult as VDSNCDataResult
+from regula.documentreader.webclient.gen.models.ve_item import VEItem as VEItem
+from regula.documentreader.webclient.gen.models.verification_result import VerificationResult as VerificationResult
+from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap as VerifiedFieldMap
+from regula.documentreader.webclient.gen.models.visibility import Visibility as Visibility
+from regula.documentreader.webclient.gen.models.visual_extended_field_item import VisualExtendedFieldItem as VisualExtendedFieldItem
+
+""",
+ name=__name__,
+ doc=__doc__,
+ )
+ )
diff --git a/regula/documentreader/webclient/gen/api/__init__.py b/regula/documentreader/webclient/gen/api/__init__.py
index b26c61e..b82bcb2 100644
--- a/regula/documentreader/webclient/gen/api/__init__.py
+++ b/regula/documentreader/webclient/gen/api/__init__.py
@@ -1,7 +1,26 @@
# flake8: noqa
-# import apis into api package
+if __import__("typing").TYPE_CHECKING:
+ # import apis into api package
+ from regula.documentreader.webclient.gen.api.healthcheck_api import HealthcheckApi
+ from regula.documentreader.webclient.gen.api.process_api import ProcessApi
+ from regula.documentreader.webclient.gen.api.resources_api import ResourcesApi
+ from regula.documentreader.webclient.gen.api.transaction_api import TransactionApi
+
+else:
+ from lazy_imports import LazyModule, as_package, load
+
+ load(
+ LazyModule(
+ *as_package(__file__),
+ """# import apis into api package
from regula.documentreader.webclient.gen.api.healthcheck_api import HealthcheckApi
from regula.documentreader.webclient.gen.api.process_api import ProcessApi
+from regula.documentreader.webclient.gen.api.resources_api import ResourcesApi
from regula.documentreader.webclient.gen.api.transaction_api import TransactionApi
+""",
+ name=__name__,
+ doc=__doc__,
+ )
+ )
diff --git a/regula/documentreader/webclient/gen/api/resources_api.py b/regula/documentreader/webclient/gen/api/resources_api.py
new file mode 100644
index 0000000..d183283
--- /dev/null
+++ b/regula/documentreader/webclient/gen/api/resources_api.py
@@ -0,0 +1,270 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+import warnings
+from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
+from typing import Any, Dict, List, Optional, Tuple, Union
+from typing_extensions import Annotated
+
+from regula.documentreader.webclient.gen.models.database_document_list import DatabaseDocumentList
+
+from regula.documentreader.webclient.gen.api_client import ApiClient, RequestSerialized
+from regula.documentreader.webclient.gen.api_response import ApiResponse
+from regula.documentreader.webclient.gen.rest import RESTResponseType
+
+
+class ResourcesApi:
+ """NOTE: This class is auto generated by OpenAPI Generator
+ Ref: https://openapi-generator.tech
+
+ Do not edit the class manually.
+ """
+
+ def __init__(self, api_client=None) -> None:
+ if api_client is None:
+ api_client = ApiClient.get_default()
+ self.api_client = api_client
+
+
+ @validate_call
+ def doclist(
+ self,
+ _request_timeout: Union[
+ None,
+ Annotated[StrictFloat, Field(gt=0)],
+ Tuple[
+ Annotated[StrictFloat, Field(gt=0)],
+ Annotated[StrictFloat, Field(gt=0)]
+ ]
+ ] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> DatabaseDocumentList:
+ """Returns the list of documents stored in the database that the Web Service API is running with.
+
+
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._doclist_serialize(
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index
+ )
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "DatabaseDocumentList",
+ }
+ response_data = self.api_client.call_api(
+ *_param,
+ _request_timeout=_request_timeout
+ )
+ response_data.read()
+ return self.api_client.response_deserialize(
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ ).data
+
+
+ @validate_call
+ def doclist_with_http_info(
+ self,
+ _request_timeout: Union[
+ None,
+ Annotated[StrictFloat, Field(gt=0)],
+ Tuple[
+ Annotated[StrictFloat, Field(gt=0)],
+ Annotated[StrictFloat, Field(gt=0)]
+ ]
+ ] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> ApiResponse[DatabaseDocumentList]:
+ """Returns the list of documents stored in the database that the Web Service API is running with.
+
+
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._doclist_serialize(
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index
+ )
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "DatabaseDocumentList",
+ }
+ response_data = self.api_client.call_api(
+ *_param,
+ _request_timeout=_request_timeout
+ )
+ response_data.read()
+ return self.api_client.response_deserialize(
+ response_data=response_data,
+ response_types_map=_response_types_map,
+ )
+
+
+ @validate_call
+ def doclist_without_preload_content(
+ self,
+ _request_timeout: Union[
+ None,
+ Annotated[StrictFloat, Field(gt=0)],
+ Tuple[
+ Annotated[StrictFloat, Field(gt=0)],
+ Annotated[StrictFloat, Field(gt=0)]
+ ]
+ ] = None,
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
+ _content_type: Optional[StrictStr] = None,
+ _headers: Optional[Dict[StrictStr, Any]] = None,
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
+ ) -> RESTResponseType:
+ """Returns the list of documents stored in the database that the Web Service API is running with.
+
+
+ :param _request_timeout: timeout setting for this request. If one
+ number provided, it will be total request
+ timeout. It can also be a pair (tuple) of
+ (connection, read) timeouts.
+ :type _request_timeout: int, tuple(int, int), optional
+ :param _request_auth: set to override the auth_settings for an a single
+ request; this effectively ignores the
+ authentication in the spec for a single request.
+ :type _request_auth: dict, optional
+ :param _content_type: force content-type for the request.
+ :type _content_type: str, Optional
+ :param _headers: set to override the headers for a single
+ request; this effectively ignores the headers
+ in the spec for a single request.
+ :type _headers: dict, optional
+ :param _host_index: set to override the host_index for a single
+ request; this effectively ignores the host_index
+ in the spec for a single request.
+ :type _host_index: int, optional
+ :return: Returns the result object.
+ """ # noqa: E501
+
+ _param = self._doclist_serialize(
+ _request_auth=_request_auth,
+ _content_type=_content_type,
+ _headers=_headers,
+ _host_index=_host_index
+ )
+
+ _response_types_map: Dict[str, Optional[str]] = {
+ '200': "DatabaseDocumentList",
+ }
+ response_data = self.api_client.call_api(
+ *_param,
+ _request_timeout=_request_timeout
+ )
+ return response_data.response
+
+
+ def _doclist_serialize(
+ self,
+ _request_auth,
+ _content_type,
+ _headers,
+ _host_index,
+ ) -> RequestSerialized:
+
+ _host = None
+
+ _collection_formats: Dict[str, str] = {
+ }
+
+ _path_params: Dict[str, str] = {}
+ _query_params: List[Tuple[str, str]] = []
+ _header_params: Dict[str, Optional[str]] = _headers or {}
+ _form_params: List[Tuple[str, str]] = []
+ _files: Dict[
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
+ ] = {}
+ _body_params: Optional[bytes] = None
+
+ # process the path parameters
+ # process the query parameters
+ # process the header parameters
+ # process the form parameters
+ # process the body parameter
+
+
+ # set the HTTP header `Accept`
+ if 'Accept' not in _header_params:
+ _header_params['Accept'] = self.api_client.select_header_accept(
+ [
+ 'application/json'
+ ]
+ )
+
+
+ # authentication setting
+ _auth_settings: List[str] = [
+ ]
+
+ return self.api_client.param_serialize(
+ method='GET',
+ resource_path='/api/doclist',
+ path_params=_path_params,
+ query_params=_query_params,
+ header_params=_header_params,
+ body=_body_params,
+ post_params=_form_params,
+ files=_files,
+ auth_settings=_auth_settings,
+ collection_formats=_collection_formats,
+ _host=_host,
+ _request_auth=_request_auth
+ )
+
+
diff --git a/regula/documentreader/webclient/gen/api/transaction_api.py b/regula/documentreader/webclient/gen/api/transaction_api.py
index aef94e4..e3f4646 100644
--- a/regula/documentreader/webclient/gen/api/transaction_api.py
+++ b/regula/documentreader/webclient/gen/api/transaction_api.py
@@ -11,6 +11,7 @@
from pydantic import Field, StrictBool, StrictBytes, StrictStr
from typing import Any, Dict, Optional, Tuple, Union
from typing_extensions import Annotated
+from uuid import UUID
from regula.documentreader.webclient.gen.models.list_transactions_by_tag_response import ListTransactionsByTagResponse
from regula.documentreader.webclient.gen.models.process_response import ProcessResponse
from regula.documentreader.webclient.gen.models.transaction_process_get_response import TransactionProcessGetResponse
@@ -38,7 +39,7 @@ def __init__(self, api_client=None) -> None:
@validate_call
def api_v2_tag_tag_id_delete(
self,
- tag_id: Annotated[StrictStr, Field(description="Tag id")],
+ tag_id: Annotated[UUID, Field(description="Tag id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -106,7 +107,7 @@ def api_v2_tag_tag_id_delete(
@validate_call
def api_v2_tag_tag_id_delete_with_http_info(
self,
- tag_id: Annotated[StrictStr, Field(description="Tag id")],
+ tag_id: Annotated[UUID, Field(description="Tag id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -174,7 +175,7 @@ def api_v2_tag_tag_id_delete_with_http_info(
@validate_call
def api_v2_tag_tag_id_delete_without_preload_content(
self,
- tag_id: Annotated[StrictStr, Field(description="Tag id")],
+ tag_id: Annotated[UUID, Field(description="Tag id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -564,7 +565,7 @@ def _api_v2_tag_tag_id_transactions_get_serialize(
@validate_call
def api_v2_transaction_transaction_id_file_get(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
name: Annotated[StrictStr, Field(description="File name")],
_request_timeout: Union[
None,
@@ -635,7 +636,7 @@ def api_v2_transaction_transaction_id_file_get(
@validate_call
def api_v2_transaction_transaction_id_file_get_with_http_info(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
name: Annotated[StrictStr, Field(description="File name")],
_request_timeout: Union[
None,
@@ -706,7 +707,7 @@ def api_v2_transaction_transaction_id_file_get_with_http_info(
@validate_call
def api_v2_transaction_transaction_id_file_get_without_preload_content(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
name: Annotated[StrictStr, Field(description="File name")],
_request_timeout: Union[
None,
@@ -841,7 +842,7 @@ def _api_v2_transaction_transaction_id_file_get_serialize(
@validate_call
def api_v2_transaction_transaction_id_get(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -909,7 +910,7 @@ def api_v2_transaction_transaction_id_get(
@validate_call
def api_v2_transaction_transaction_id_get_with_http_info(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -977,7 +978,7 @@ def api_v2_transaction_transaction_id_get_with_http_info(
@validate_call
def api_v2_transaction_transaction_id_get_without_preload_content(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -1104,8 +1105,9 @@ def _api_v2_transaction_transaction_id_get_serialize(
@validate_call
def api_v2_transaction_transaction_id_process_post(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
transaction_process_request: TransactionProcessRequest,
+ use_cache: Annotated[Optional[StrictBool], Field(description="Get processed values from storage in case transaction has already processed.")] = None,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -1126,6 +1128,8 @@ def api_v2_transaction_transaction_id_process_post(
:type transaction_id: str
:param transaction_process_request: (required)
:type transaction_process_request: TransactionProcessRequest
+ :param use_cache: Get processed values from storage in case transaction has already processed.
+ :type use_cache: bool
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
@@ -1151,6 +1155,7 @@ def api_v2_transaction_transaction_id_process_post(
_param = self._api_v2_transaction_transaction_id_process_post_serialize(
transaction_id=transaction_id,
transaction_process_request=transaction_process_request,
+ use_cache=use_cache,
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
@@ -1176,8 +1181,9 @@ def api_v2_transaction_transaction_id_process_post(
@validate_call
def api_v2_transaction_transaction_id_process_post_with_http_info(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
transaction_process_request: TransactionProcessRequest,
+ use_cache: Annotated[Optional[StrictBool], Field(description="Get processed values from storage in case transaction has already processed.")] = None,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -1198,6 +1204,8 @@ def api_v2_transaction_transaction_id_process_post_with_http_info(
:type transaction_id: str
:param transaction_process_request: (required)
:type transaction_process_request: TransactionProcessRequest
+ :param use_cache: Get processed values from storage in case transaction has already processed.
+ :type use_cache: bool
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
@@ -1223,6 +1231,7 @@ def api_v2_transaction_transaction_id_process_post_with_http_info(
_param = self._api_v2_transaction_transaction_id_process_post_serialize(
transaction_id=transaction_id,
transaction_process_request=transaction_process_request,
+ use_cache=use_cache,
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
@@ -1248,8 +1257,9 @@ def api_v2_transaction_transaction_id_process_post_with_http_info(
@validate_call
def api_v2_transaction_transaction_id_process_post_without_preload_content(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
transaction_process_request: TransactionProcessRequest,
+ use_cache: Annotated[Optional[StrictBool], Field(description="Get processed values from storage in case transaction has already processed.")] = None,
_request_timeout: Union[
None,
Annotated[StrictFloat, Field(gt=0)],
@@ -1270,6 +1280,8 @@ def api_v2_transaction_transaction_id_process_post_without_preload_content(
:type transaction_id: str
:param transaction_process_request: (required)
:type transaction_process_request: TransactionProcessRequest
+ :param use_cache: Get processed values from storage in case transaction has already processed.
+ :type use_cache: bool
:param _request_timeout: timeout setting for this request. If one
number provided, it will be total request
timeout. It can also be a pair (tuple) of
@@ -1295,6 +1307,7 @@ def api_v2_transaction_transaction_id_process_post_without_preload_content(
_param = self._api_v2_transaction_transaction_id_process_post_serialize(
transaction_id=transaction_id,
transaction_process_request=transaction_process_request,
+ use_cache=use_cache,
_request_auth=_request_auth,
_content_type=_content_type,
_headers=_headers,
@@ -1317,6 +1330,7 @@ def _api_v2_transaction_transaction_id_process_post_serialize(
self,
transaction_id,
transaction_process_request,
+ use_cache,
_request_auth,
_content_type,
_headers,
@@ -1341,6 +1355,10 @@ def _api_v2_transaction_transaction_id_process_post_serialize(
if transaction_id is not None:
_path_params['transactionId'] = transaction_id
# process the query parameters
+ if use_cache is not None:
+
+ _query_params.append(('useCache', use_cache))
+
# process the header parameters
# process the form parameters
# process the body parameter
@@ -1395,7 +1413,7 @@ def _api_v2_transaction_transaction_id_process_post_serialize(
@validate_call
def api_v2_transaction_transaction_id_results_get(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
with_images: Annotated[Optional[StrictBool], Field(description="With base64 images or url")] = None,
_request_timeout: Union[
None,
@@ -1467,7 +1485,7 @@ def api_v2_transaction_transaction_id_results_get(
@validate_call
def api_v2_transaction_transaction_id_results_get_with_http_info(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
with_images: Annotated[Optional[StrictBool], Field(description="With base64 images or url")] = None,
_request_timeout: Union[
None,
@@ -1539,7 +1557,7 @@ def api_v2_transaction_transaction_id_results_get_with_http_info(
@validate_call
def api_v2_transaction_transaction_id_results_get_without_preload_content(
self,
- transaction_id: Annotated[StrictStr, Field(description="Transaction id")],
+ transaction_id: Annotated[UUID, Field(description="Transaction id")],
with_images: Annotated[Optional[StrictBool], Field(description="With base64 images or url")] = None,
_request_timeout: Union[
None,
diff --git a/regula/documentreader/webclient/gen/api_client.py b/regula/documentreader/webclient/gen/api_client.py
index bae09e5..dac2aa5 100644
--- a/regula/documentreader/webclient/gen/api_client.py
+++ b/regula/documentreader/webclient/gen/api_client.py
@@ -13,6 +13,7 @@
import os
import re
import tempfile
+import uuid
from urllib.parse import quote
from typing import Tuple, Optional, List, Dict, Union
@@ -348,6 +349,8 @@ def sanitize_for_serialization(self, obj):
return obj.get_secret_value()
elif isinstance(obj, self.PRIMITIVE_TYPES):
return obj
+ elif isinstance(obj, uuid.UUID):
+ return str(obj)
elif isinstance(obj, list):
return [
self.sanitize_for_serialization(sub_obj) for sub_obj in obj
@@ -374,6 +377,10 @@ def sanitize_for_serialization(self, obj):
else:
obj_dict = obj.__dict__
+ if isinstance(obj_dict, list):
+ # here we handle instances that can either be a list or something else, and only became a real list by calling to_dict()
+ return self.sanitize_for_serialization(obj_dict)
+
return {
key: self.sanitize_for_serialization(val)
for key, val in obj_dict.items()
@@ -396,7 +403,7 @@ def deserialize(self, response_text: str, response_type: str, content_type: Opti
data = json.loads(response_text)
except ValueError:
data = response_text
- elif re.match(r'^application/(json|[\w!#$&.+-^_]+\+json)\s*(;|$)', content_type, re.IGNORECASE):
+ elif re.match(r'^application/(json|[\w!#$&.+\-^_]+\+json)\s*(;|$)', content_type, re.IGNORECASE):
if response_text == "":
data = ""
else:
diff --git a/regula/documentreader/webclient/gen/models/__init__.py b/regula/documentreader/webclient/gen/models/__init__.py
index e22cefc..5eb8b79 100644
--- a/regula/documentreader/webclient/gen/models/__init__.py
+++ b/regula/documentreader/webclient/gen/models/__init__.py
@@ -5,7 +5,267 @@
Generated by: https://openapi-generator.tech
"""
-# import models into model package
+if __import__("typing").TYPE_CHECKING:
+ # import models into model package
+ from regula.documentreader.webclient.gen.models.area_array import AreaArray
+ from regula.documentreader.webclient.gen.models.area_container import AreaContainer
+ from regula.documentreader.webclient.gen.models.auth_params import AuthParams
+ from regula.documentreader.webclient.gen.models.authenticity_check_list import AuthenticityCheckList
+ from regula.documentreader.webclient.gen.models.authenticity_check_list_item import AuthenticityCheckListItem
+ from regula.documentreader.webclient.gen.models.authenticity_check_result import AuthenticityCheckResult
+ from regula.documentreader.webclient.gen.models.authenticity_check_result_item import AuthenticityCheckResultItem
+ from regula.documentreader.webclient.gen.models.authenticity_check_result_list_inner import AuthenticityCheckResultListInner
+ from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult
+ from regula.documentreader.webclient.gen.models.authenticity_result_type import AuthenticityResultType
+ from regula.documentreader.webclient.gen.models.bsiv2_item import BSIV2Item
+ from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result
+ from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType
+ from regula.documentreader.webclient.gen.models.barcode_position_item import BarcodePositionItem
+ from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult
+ from regula.documentreader.webclient.gen.models.barcode_type import BarcodeType
+ from regula.documentreader.webclient.gen.models.bc_pdf417_info import BcPDF417INFO
+ from regula.documentreader.webclient.gen.models.bc_roidetect import BcROIDETECT
+ from regula.documentreader.webclient.gen.models.binary_data import BinaryData
+ from regula.documentreader.webclient.gen.models.bsi_tr03135 import BsiTr03135
+ from regula.documentreader.webclient.gen.models.byte_array_item import ByteArrayItem
+ from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult
+ from regula.documentreader.webclient.gen.models.candidates_list_item import CandidatesListItem
+ from regula.documentreader.webclient.gen.models.certificate_data import CertificateData
+ from regula.documentreader.webclient.gen.models.check_diagnose import CheckDiagnose
+ from regula.documentreader.webclient.gen.models.check_result import CheckResult
+ from regula.documentreader.webclient.gen.models.chosen_document_type import ChosenDocumentType
+ from regula.documentreader.webclient.gen.models.chosen_document_type_result import ChosenDocumentTypeResult
+ from regula.documentreader.webclient.gen.models.container_list import ContainerList
+ from regula.documentreader.webclient.gen.models.container_list_list_inner import ContainerListListInner
+ from regula.documentreader.webclient.gen.models.critical import Critical
+ from regula.documentreader.webclient.gen.models.cross_source_value_comparison import CrossSourceValueComparison
+ from regula.documentreader.webclient.gen.models.data_module import DataModule
+ from regula.documentreader.webclient.gen.models.database_document import DatabaseDocument
+ from regula.documentreader.webclient.gen.models.database_document_list import DatabaseDocumentList
+ from regula.documentreader.webclient.gen.models.details_age import DetailsAge
+ from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical
+ from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID
+ from regula.documentreader.webclient.gen.models.device_info import DeviceInfo
+ from regula.documentreader.webclient.gen.models.device_info_documents_database import DeviceInfoDocumentsDatabase
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList
+ from regula.documentreader.webclient.gen.models.doc_bar_code_info_item import DocBarCodeInfoItem
+ from regula.documentreader.webclient.gen.models.doc_feature import DocFeature
+ from regula.documentreader.webclient.gen.models.doc_graphics_info_item import DocGraphicsInfoItem
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_field_item import DocVisualExtendedFieldItem
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_info import DocVisualExtendedInfo
+ from regula.documentreader.webclient.gen.models.doc_visual_extended_info_item import DocVisualExtendedInfoItem
+ from regula.documentreader.webclient.gen.models.document_binary_info_result import DocumentBinaryInfoResult
+ from regula.documentreader.webclient.gen.models.document_format import DocumentFormat
+ from regula.documentreader.webclient.gen.models.document_image import DocumentImage
+ from regula.documentreader.webclient.gen.models.document_image_result import DocumentImageResult
+ from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
+ from regula.documentreader.webclient.gen.models.document_position_item import DocumentPositionItem
+ from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult
+ from regula.documentreader.webclient.gen.models.document_type import DocumentType
+ from regula.documentreader.webclient.gen.models.document_type_recognition_result import DocumentTypeRecognitionResult
+ from regula.documentreader.webclient.gen.models.document_types_candidates import DocumentTypesCandidates
+ from regula.documentreader.webclient.gen.models.document_types_candidates_list import DocumentTypesCandidatesList
+ from regula.documentreader.webclient.gen.models.document_types_candidates_result import DocumentTypesCandidatesResult
+ from regula.documentreader.webclient.gen.models.documents_database import DocumentsDatabase
+ from regula.documentreader.webclient.gen.models.encrypted_rcl_item import EncryptedRCLItem
+ from regula.documentreader.webclient.gen.models.encrypted_rcl_result import EncryptedRCLResult
+ from regula.documentreader.webclient.gen.models.error_coordinates import ErrorCoordinates
+ from regula.documentreader.webclient.gen.models.fdsid_list import FDSIDList
+ from regula.documentreader.webclient.gen.models.face_api import FaceApi
+ from regula.documentreader.webclient.gen.models.face_api_search import FaceApiSearch
+ from regula.documentreader.webclient.gen.models.face_detection import FaceDetection
+ from regula.documentreader.webclient.gen.models.face_detection_item import FaceDetectionItem
+ from regula.documentreader.webclient.gen.models.face_detection_result import FaceDetectionResult
+ from regula.documentreader.webclient.gen.models.face_item import FaceItem
+ from regula.documentreader.webclient.gen.models.fiber_item import FiberItem
+ from regula.documentreader.webclient.gen.models.fiber_result import FiberResult
+ from regula.documentreader.webclient.gen.models.field_item import FieldItem
+ from regula.documentreader.webclient.gen.models.file_image import FileImage
+ from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse
+ from regula.documentreader.webclient.gen.models.glares_check_params import GlaresCheckParams
+ from regula.documentreader.webclient.gen.models.graph_data import GraphData
+ from regula.documentreader.webclient.gen.models.graphic_field import GraphicField
+ from regula.documentreader.webclient.gen.models.graphic_field_type import GraphicFieldType
+ from regula.documentreader.webclient.gen.models.graphic_fields_list import GraphicFieldsList
+ from regula.documentreader.webclient.gen.models.graphics_result import GraphicsResult
+ from regula.documentreader.webclient.gen.models.healthcheck import Healthcheck
+ from regula.documentreader.webclient.gen.models.healthcheck_documents_database import HealthcheckDocumentsDatabase
+ from regula.documentreader.webclient.gen.models.ident_item import IdentItem
+ from regula.documentreader.webclient.gen.models.ident_result import IdentResult
+ from regula.documentreader.webclient.gen.models.image_data import ImageData
+ from regula.documentreader.webclient.gen.models.image_qa import ImageQA
+ from regula.documentreader.webclient.gen.models.image_quality_check import ImageQualityCheck
+ from regula.documentreader.webclient.gen.models.image_quality_check_list import ImageQualityCheckList
+ from regula.documentreader.webclient.gen.models.image_quality_check_list_item import ImageQualityCheckListItem
+ from regula.documentreader.webclient.gen.models.image_quality_check_type import ImageQualityCheckType
+ from regula.documentreader.webclient.gen.models.image_quality_result import ImageQualityResult
+ from regula.documentreader.webclient.gen.models.image_transaction_data import ImageTransactionData
+ from regula.documentreader.webclient.gen.models.images import Images
+ from regula.documentreader.webclient.gen.models.images_available_source import ImagesAvailableSource
+ from regula.documentreader.webclient.gen.models.images_field import ImagesField
+ from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue
+ from regula.documentreader.webclient.gen.models.images_item import ImagesItem
+ from regula.documentreader.webclient.gen.models.images_result import ImagesResult
+ from regula.documentreader.webclient.gen.models.in_data import InData
+ from regula.documentreader.webclient.gen.models.in_data_transaction_images_field_value import InDataTransactionImagesFieldValue
+ from regula.documentreader.webclient.gen.models.in_data_video import InDataVideo
+ from regula.documentreader.webclient.gen.models.input_barcode_type import InputBarcodeType
+ from regula.documentreader.webclient.gen.models.input_image_quality_checks import InputImageQualityChecks
+ from regula.documentreader.webclient.gen.models.lcid import LCID
+ from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult
+ from regula.documentreader.webclient.gen.models.license_item import LicenseItem
+ from regula.documentreader.webclient.gen.models.license_result import LicenseResult
+ from regula.documentreader.webclient.gen.models.light import Light
+ from regula.documentreader.webclient.gen.models.list_transactions_by_tag_response import ListTransactionsByTagResponse
+ from regula.documentreader.webclient.gen.models.list_verified_fields import ListVerifiedFields
+ from regula.documentreader.webclient.gen.models.list_verified_fields_item import ListVerifiedFieldsItem
+ from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams
+ from regula.documentreader.webclient.gen.models.log_level import LogLevel
+ from regula.documentreader.webclient.gen.models.mdl_device_engagement import MDLDeviceEngagement
+ from regula.documentreader.webclient.gen.models.mdl_device_retrieval import MDLDeviceRetrieval
+ from regula.documentreader.webclient.gen.models.mdl_item import MDLItem
+ from regula.documentreader.webclient.gen.models.mdl_result import MDLResult
+ from regula.documentreader.webclient.gen.models.mdl_server_retrieval import MDLServerRetrieval
+ from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult
+ from regula.documentreader.webclient.gen.models.mrz_format import MRZFormat
+ from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult
+ from regula.documentreader.webclient.gen.models.mrz_rows_item import MRZRowsItem
+ from regula.documentreader.webclient.gen.models.mrz_test_quality import MRZTestQuality
+ from regula.documentreader.webclient.gen.models.mrz_test_quality_item import MRZTestQualityItem
+ from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult
+ from regula.documentreader.webclient.gen.models.measure_system import MeasureSystem
+ from regula.documentreader.webclient.gen.models.message import Message
+ from regula.documentreader.webclient.gen.models.mrz_detect_mode_enum import MrzDetectModeEnum
+ from regula.documentreader.webclient.gen.models.mrz_position_item import MrzPositionItem
+ from regula.documentreader.webclient.gen.models.ocr_security_text_item import OCRSecurityTextItem
+ from regula.documentreader.webclient.gen.models.ocr_security_text_result import OCRSecurityTextResult
+ from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate
+ from regula.documentreader.webclient.gen.models.one_candidate_item import OneCandidateItem
+ from regula.documentreader.webclient.gen.models.original_symbol import OriginalSymbol
+ from regula.documentreader.webclient.gen.models.out_data import OutData
+ from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue
+ from regula.documentreader.webclient.gen.models.p_array_field import PArrayField
+ from regula.documentreader.webclient.gen.models.pid import PID
+ from regula.documentreader.webclient.gen.models.parsed_data import ParsedData
+ from regula.documentreader.webclient.gen.models.parsing_error_codes import ParsingErrorCodes
+ from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes
+ from regula.documentreader.webclient.gen.models.per_document_config import PerDocumentConfig
+ from regula.documentreader.webclient.gen.models.photo_ident_item import PhotoIdentItem
+ from regula.documentreader.webclient.gen.models.photo_ident_result import PhotoIdentResult
+ from regula.documentreader.webclient.gen.models.point import Point
+ from regula.documentreader.webclient.gen.models.point_array import PointArray
+ from regula.documentreader.webclient.gen.models.points_container import PointsContainer
+ from regula.documentreader.webclient.gen.models.process_params import ProcessParams
+ from regula.documentreader.webclient.gen.models.process_params_rfid import ProcessParamsRfid
+ from regula.documentreader.webclient.gen.models.process_request import ProcessRequest
+ from regula.documentreader.webclient.gen.models.process_request_image import ProcessRequestImage
+ from regula.documentreader.webclient.gen.models.process_response import ProcessResponse
+ from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo
+ from regula.documentreader.webclient.gen.models.processing_status import ProcessingStatus
+ from regula.documentreader.webclient.gen.models.properties_params import PropertiesParams
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field_item import RFIDDocVisualExtendedFieldItem
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo
+ from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info_item import RFIDDocVisualExtendedInfoItem
+ from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes
+ from regula.documentreader.webclient.gen.models.rfid_graphics_info_result import RFIDGraphicsInfoResult
+ from regula.documentreader.webclient.gen.models.rfidpkd_resource_type import RFIDPKDResourceType
+ from regula.documentreader.webclient.gen.models.rfid_text_data_result import RFIDTextDataResult
+ from regula.documentreader.webclient.gen.models.raw_image_container_item import RawImageContainerItem
+ from regula.documentreader.webclient.gen.models.raw_image_container_list import RawImageContainerList
+ from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
+ from regula.documentreader.webclient.gen.models.result import Result
+ from regula.documentreader.webclient.gen.models.result_item import ResultItem
+ from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector
+ from regula.documentreader.webclient.gen.models.result_mrz_detector_item import ResultMRZDetectorItem
+ from regula.documentreader.webclient.gen.models.rfid_a_chip import RfidAChip
+ from regula.documentreader.webclient.gen.models.rfid_access_control_info import RfidAccessControlInfo
+ from regula.documentreader.webclient.gen.models.rfid_access_control_procedure_type import RfidAccessControlProcedureType
+ from regula.documentreader.webclient.gen.models.rfid_access_key import RfidAccessKey
+ from regula.documentreader.webclient.gen.models.rfid_application import RfidApplication
+ from regula.documentreader.webclient.gen.models.rfid_application_type import RfidApplicationType
+ from regula.documentreader.webclient.gen.models.rfid_attribute_data import RfidAttributeData
+ from regula.documentreader.webclient.gen.models.rfid_attribute_name import RfidAttributeName
+ from regula.documentreader.webclient.gen.models.rfid_authentication_procedure_type import RfidAuthenticationProcedureType
+ from regula.documentreader.webclient.gen.models.rfid_baud_rate import RfidBaudRate
+ from regula.documentreader.webclient.gen.models.rfid_card_properties_ext import RfidCardPropertiesExt
+ from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx
+ from regula.documentreader.webclient.gen.models.rfid_certificate_origin import RfidCertificateOrigin
+ from regula.documentreader.webclient.gen.models.rfid_certificate_type import RfidCertificateType
+ from regula.documentreader.webclient.gen.models.rfid_dg1 import RfidDG1
+ from regula.documentreader.webclient.gen.models.rfid_data_file import RfidDataFile
+ from regula.documentreader.webclient.gen.models.rfid_data_file_type import RfidDataFileType
+ from regula.documentreader.webclient.gen.models.rfid_distinguished_name import RfidDistinguishedName
+ from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation
+ from regula.documentreader.webclient.gen.models.rfid_origin import RfidOrigin
+ from regula.documentreader.webclient.gen.models.rfid_password_type import RfidPasswordType
+ from regula.documentreader.webclient.gen.models.rfid_pki_extension import RfidPkiExtension
+ from regula.documentreader.webclient.gen.models.rfid_raw_data import RfidRawData
+ from regula.documentreader.webclient.gen.models.rfid_security_object import RfidSecurityObject
+ from regula.documentreader.webclient.gen.models.rfid_session_data import RfidSessionData
+ from regula.documentreader.webclient.gen.models.rfid_signer_info_ex import RfidSignerInfoEx
+ from regula.documentreader.webclient.gen.models.rfid_terminal import RfidTerminal
+ from regula.documentreader.webclient.gen.models.rfid_terminal_type import RfidTerminalType
+ from regula.documentreader.webclient.gen.models.rfid_type import RfidType
+ from regula.documentreader.webclient.gen.models.rfid_validity import RfidValidity
+ from regula.documentreader.webclient.gen.models.scenario import Scenario
+ from regula.documentreader.webclient.gen.models.security_feature_item import SecurityFeatureItem
+ from regula.documentreader.webclient.gen.models.security_feature_result import SecurityFeatureResult
+ from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType
+ from regula.documentreader.webclient.gen.models.security_object_certificates import SecurityObjectCertificates
+ from regula.documentreader.webclient.gen.models.source import Source
+ from regula.documentreader.webclient.gen.models.source_validity import SourceValidity
+ from regula.documentreader.webclient.gen.models.status import Status
+ from regula.documentreader.webclient.gen.models.status_item import StatusItem
+ from regula.documentreader.webclient.gen.models.status_result import StatusResult
+ from regula.documentreader.webclient.gen.models.string_item import StringItem
+ from regula.documentreader.webclient.gen.models.string_recognition_result import StringRecognitionResult
+ from regula.documentreader.webclient.gen.models.symbol import Symbol
+ from regula.documentreader.webclient.gen.models.symbol_candidate import SymbolCandidate
+ from regula.documentreader.webclient.gen.models.symbol_estimation_item import SymbolEstimationItem
+ from regula.documentreader.webclient.gen.models.symbol_recognition_result import SymbolRecognitionResult
+ from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo
+ from regula.documentreader.webclient.gen.models.t_doc_binary_info_item import TDocBinaryInfoItem
+ from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo
+ from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info_item import TOriginalRFIDGraphicsInfoItem
+ from regula.documentreader.webclient.gen.models.text import Text
+ from regula.documentreader.webclient.gen.models.text_available_source import TextAvailableSource
+ from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult
+ from regula.documentreader.webclient.gen.models.text_field import TextField
+ from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
+ from regula.documentreader.webclient.gen.models.text_field_value import TextFieldValue
+ from regula.documentreader.webclient.gen.models.text_item import TextItem
+ from regula.documentreader.webclient.gen.models.text_post_processing import TextPostProcessing
+ from regula.documentreader.webclient.gen.models.text_result import TextResult
+ from regula.documentreader.webclient.gen.models.transaction_image import TransactionImage
+ from regula.documentreader.webclient.gen.models.transaction_info import TransactionInfo
+ from regula.documentreader.webclient.gen.models.transaction_process_get_response import TransactionProcessGetResponse
+ from regula.documentreader.webclient.gen.models.transaction_process_request import TransactionProcessRequest
+ from regula.documentreader.webclient.gen.models.transaction_process_result import TransactionProcessResult
+ from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
+ from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
+ from regula.documentreader.webclient.gen.models.vd_item import VDItem
+ from regula.documentreader.webclient.gen.models.vds_data import VDSData
+ from regula.documentreader.webclient.gen.models.vds_data_item import VDSDataItem
+ from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult
+ from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData
+ from regula.documentreader.webclient.gen.models.vdsnc_data_item import VDSNCDataItem
+ from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult
+ from regula.documentreader.webclient.gen.models.ve_item import VEItem
+ from regula.documentreader.webclient.gen.models.verification_result import VerificationResult
+ from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap
+ from regula.documentreader.webclient.gen.models.visibility import Visibility
+ from regula.documentreader.webclient.gen.models.visual_extended_field_item import VisualExtendedFieldItem
+
+else:
+ from lazy_imports import LazyModule, as_package, load
+
+ load(
+ LazyModule(
+ *as_package(__file__),
+ """# import models into model package
from regula.documentreader.webclient.gen.models.area_array import AreaArray
from regula.documentreader.webclient.gen.models.area_container import AreaContainer
from regula.documentreader.webclient.gen.models.auth_params import AuthParams
@@ -16,11 +276,16 @@
from regula.documentreader.webclient.gen.models.authenticity_check_result_list_inner import AuthenticityCheckResultListInner
from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult
from regula.documentreader.webclient.gen.models.authenticity_result_type import AuthenticityResultType
+from regula.documentreader.webclient.gen.models.bsiv2_item import BSIV2Item
+from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result
from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType
+from regula.documentreader.webclient.gen.models.barcode_position_item import BarcodePositionItem
+from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult
from regula.documentreader.webclient.gen.models.barcode_type import BarcodeType
from regula.documentreader.webclient.gen.models.bc_pdf417_info import BcPDF417INFO
from regula.documentreader.webclient.gen.models.bc_roidetect import BcROIDETECT
from regula.documentreader.webclient.gen.models.binary_data import BinaryData
+from regula.documentreader.webclient.gen.models.bsi_tr03135 import BsiTr03135
from regula.documentreader.webclient.gen.models.byte_array_item import ByteArrayItem
from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult
from regula.documentreader.webclient.gen.models.candidates_list_item import CandidatesListItem
@@ -34,6 +299,9 @@
from regula.documentreader.webclient.gen.models.critical import Critical
from regula.documentreader.webclient.gen.models.cross_source_value_comparison import CrossSourceValueComparison
from regula.documentreader.webclient.gen.models.data_module import DataModule
+from regula.documentreader.webclient.gen.models.database_document import DatabaseDocument
+from regula.documentreader.webclient.gen.models.database_document_list import DatabaseDocumentList
+from regula.documentreader.webclient.gen.models.details_age import DetailsAge
from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical
from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID
from regula.documentreader.webclient.gen.models.device_info import DeviceInfo
@@ -41,6 +309,7 @@
from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo
from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList
from regula.documentreader.webclient.gen.models.doc_bar_code_info_item import DocBarCodeInfoItem
+from regula.documentreader.webclient.gen.models.doc_feature import DocFeature
from regula.documentreader.webclient.gen.models.doc_graphics_info_item import DocGraphicsInfoItem
from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField
from regula.documentreader.webclient.gen.models.doc_visual_extended_field_item import DocVisualExtendedFieldItem
@@ -74,6 +343,7 @@
from regula.documentreader.webclient.gen.models.field_item import FieldItem
from regula.documentreader.webclient.gen.models.file_image import FileImage
from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse
+from regula.documentreader.webclient.gen.models.glares_check_params import GlaresCheckParams
from regula.documentreader.webclient.gen.models.graph_data import GraphData
from regula.documentreader.webclient.gen.models.graphic_field import GraphicField
from regula.documentreader.webclient.gen.models.graphic_field_type import GraphicFieldType
@@ -112,6 +382,11 @@
from regula.documentreader.webclient.gen.models.list_verified_fields_item import ListVerifiedFieldsItem
from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams
from regula.documentreader.webclient.gen.models.log_level import LogLevel
+from regula.documentreader.webclient.gen.models.mdl_device_engagement import MDLDeviceEngagement
+from regula.documentreader.webclient.gen.models.mdl_device_retrieval import MDLDeviceRetrieval
+from regula.documentreader.webclient.gen.models.mdl_item import MDLItem
+from regula.documentreader.webclient.gen.models.mdl_result import MDLResult
+from regula.documentreader.webclient.gen.models.mdl_server_retrieval import MDLServerRetrieval
from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult
from regula.documentreader.webclient.gen.models.mrz_format import MRZFormat
from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult
@@ -120,6 +395,7 @@
from regula.documentreader.webclient.gen.models.mrz_test_quality_item import MRZTestQualityItem
from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult
from regula.documentreader.webclient.gen.models.measure_system import MeasureSystem
+from regula.documentreader.webclient.gen.models.message import Message
from regula.documentreader.webclient.gen.models.mrz_detect_mode_enum import MrzDetectModeEnum
from regula.documentreader.webclient.gen.models.mrz_position_item import MrzPositionItem
from regula.documentreader.webclient.gen.models.ocr_security_text_item import OCRSecurityTextItem
@@ -130,6 +406,7 @@
from regula.documentreader.webclient.gen.models.out_data import OutData
from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue
from regula.documentreader.webclient.gen.models.p_array_field import PArrayField
+from regula.documentreader.webclient.gen.models.pid import PID
from regula.documentreader.webclient.gen.models.parsed_data import ParsedData
from regula.documentreader.webclient.gen.models.parsing_error_codes import ParsingErrorCodes
from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes
@@ -146,6 +423,7 @@
from regula.documentreader.webclient.gen.models.process_response import ProcessResponse
from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo
from regula.documentreader.webclient.gen.models.processing_status import ProcessingStatus
+from regula.documentreader.webclient.gen.models.properties_params import PropertiesParams
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field_item import RFIDDocVisualExtendedFieldItem
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo
@@ -178,7 +456,6 @@
from regula.documentreader.webclient.gen.models.rfid_dg1 import RfidDG1
from regula.documentreader.webclient.gen.models.rfid_data_file import RfidDataFile
from regula.documentreader.webclient.gen.models.rfid_data_file_type import RfidDataFileType
-from regula.documentreader.webclient.gen.models.rfid_data_group_type_tag import RfidDataGroupTypeTag
from regula.documentreader.webclient.gen.models.rfid_distinguished_name import RfidDistinguishedName
from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation
from regula.documentreader.webclient.gen.models.rfid_origin import RfidOrigin
@@ -228,7 +505,21 @@
from regula.documentreader.webclient.gen.models.transaction_process_result import TransactionProcessResult
from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
+from regula.documentreader.webclient.gen.models.vd_item import VDItem
+from regula.documentreader.webclient.gen.models.vds_data import VDSData
+from regula.documentreader.webclient.gen.models.vds_data_item import VDSDataItem
+from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult
+from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData
+from regula.documentreader.webclient.gen.models.vdsnc_data_item import VDSNCDataItem
+from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult
+from regula.documentreader.webclient.gen.models.ve_item import VEItem
from regula.documentreader.webclient.gen.models.verification_result import VerificationResult
from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap
from regula.documentreader.webclient.gen.models.visibility import Visibility
from regula.documentreader.webclient.gen.models.visual_extended_field_item import VisualExtendedFieldItem
+
+""",
+ name=__name__,
+ doc=__doc__,
+ )
+ )
diff --git a/regula/documentreader/webclient/gen/models/area_array.py b/regula/documentreader/webclient/gen/models/area_array.py
index a14b304..70aa7b4 100644
--- a/regula/documentreader/webclient/gen/models/area_array.py
+++ b/regula/documentreader/webclient/gen/models/area_array.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AreaArray(BaseModel):
"""
AreaArray
""" # noqa: E501
- count: Union[StrictFloat, StrictInt] = Field(description="Number of elements in List and Points", alias="Count")
- list: List[RectangleCoordinates] = Field(alias="List")
- points: List[PointArray] = Field(alias="Points")
+ count: SkipValidation[float] = Field(alias="Count", description="Number of elements in List and Points")
+ list: SkipValidation[List[RectangleCoordinates]] = Field(alias="List")
+ points: SkipValidation[List[PointArray]] = Field(alias="Points")
__properties: ClassVar[List[str]] = ["Count", "List", "Points"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -68,14 +71,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in points (list)
_items = []
if self.points:
for _item_points in self.points:
- if _item_points:
+ if _item_points and hasattr(_item_points, "to_dict"):
_items.append(_item_points.to_dict())
_dict['Points'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/area_container.py b/regula/documentreader/webclient/gen/models/area_container.py
index 69ea160..20f59be 100644
--- a/regula/documentreader/webclient/gen/models/area_container.py
+++ b/regula/documentreader/webclient/gen/models/area_container.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AreaContainer(BaseModel):
"""
Checked fragment coordinates
""" # noqa: E501
- count: StrictInt = Field(alias="Count")
- list: List[RectangleCoordinates] = Field(alias="List")
- points: List[PointsContainer] = Field(alias="Points")
+ count: SkipValidation[int] = Field(alias="Count")
+ list: SkipValidation[List[RectangleCoordinates]] = Field(alias="List")
+ points: SkipValidation[List[PointsContainer]] = Field(alias="Points")
__properties: ClassVar[List[str]] = ["Count", "List", "Points"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -68,14 +71,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in points (list)
_items = []
if self.points:
for _item_points in self.points:
- if _item_points:
+ if _item_points and hasattr(_item_points, "to_dict"):
_items.append(_item_points.to_dict())
_dict['Points'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/auth_params.py b/regula/documentreader/webclient/gen/models/auth_params.py
index 6452be9..e7daf5a 100644
--- a/regula/documentreader/webclient/gen/models/auth_params.py
+++ b/regula/documentreader/webclient/gen/models/auth_params.py
@@ -12,35 +12,41 @@
from pydantic import BaseModel, ConfigDict, Field, StrictBool
from typing import Any, ClassVar, Dict, List, Optional
from regula.documentreader.webclient.gen.models.liveness_params import LivenessParams
+from regula.documentreader.webclient.gen.models.properties_params import PropertiesParams
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AuthParams(BaseModel):
"""
AuthParams
""" # noqa: E501
- check_liveness: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable document liveness check", alias="checkLiveness")
- liveness_params: Optional[LivenessParams] = Field(default=None, alias="livenessParams")
- check_uv_luminiscence: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Document luminescence check in UV light", alias="checkUVLuminiscence")
- check_irb900: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable B900 ink MRZ contrast check in IR light", alias="checkIRB900")
- check_image_patterns: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Image patterns presence/absence check (position, shape, color)", alias="checkImagePatterns")
- check_fibers: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Fibers detection", alias="checkFibers")
- check_ext_mrz: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Extended MRZ Check", alias="checkExtMRZ")
- check_ext_ocr: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Extended OCR Check", alias="checkExtOCR")
- check_axial: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable laminate integrity check in axial light", alias="checkAxial")
- check_barcode_format: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Barcode format check (code metadata, data format, contents format, etc.)", alias="checkBarcodeFormat")
- check_ir_visibility: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Document elements visibility check in IR light", alias="checkIRVisibility")
- check_ipi: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Invisible Personal Information (IPI) check", alias="checkIPI")
- check_photo_embedding: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Owner's photo embedding check (is photo printed or sticked)", alias="checkPhotoEmbedding")
- check_photo_comparison: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Portrait comparison check", alias="checkPhotoComparison")
- check_letter_screen: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable LetterScreen check", alias="checkLetterScreen")
- check_security_text: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Security text check", alias="checkSecurityText")
- __properties: ClassVar[List[str]] = ["checkLiveness", "livenessParams", "checkUVLuminiscence", "checkIRB900", "checkImagePatterns", "checkFibers", "checkExtMRZ", "checkExtOCR", "checkAxial", "checkBarcodeFormat", "checkIRVisibility", "checkIPI", "checkPhotoEmbedding", "checkPhotoComparison", "checkLetterScreen", "checkSecurityText"]
+ check_liveness: SkipValidation[Optional[bool]] = Field(alias="checkLiveness", default=None, description="This parameter is used to enable document liveness check")
+ liveness_params: SkipValidation[Optional[LivenessParams]] = Field(alias="livenessParams", default=None)
+ check_uv_luminiscence: SkipValidation[Optional[bool]] = Field(alias="checkUVLuminiscence", default=None, description="This parameter is used to enable Document luminescence check in UV light")
+ check_irb900: SkipValidation[Optional[bool]] = Field(alias="checkIRB900", default=None, description="This parameter is used to enable B900 ink MRZ contrast check in IR light")
+ check_image_patterns: SkipValidation[Optional[bool]] = Field(alias="checkImagePatterns", default=None, description="This parameter is used to enable Image patterns presence/absence check (position, shape, color)")
+ check_fibers: SkipValidation[Optional[bool]] = Field(alias="checkFibers", default=None, description="This parameter is used to enable Fibers detection")
+ check_ext_mrz: SkipValidation[Optional[bool]] = Field(alias="checkExtMRZ", default=None, description="This parameter is used to enable Extended MRZ Check")
+ check_ext_ocr: SkipValidation[Optional[bool]] = Field(alias="checkExtOCR", default=None, description="This parameter is used to enable Extended OCR Check")
+ check_axial: SkipValidation[Optional[bool]] = Field(alias="checkAxial", default=None, description="This parameter is used to enable laminate integrity check in axial light")
+ check_barcode_format: SkipValidation[Optional[bool]] = Field(alias="checkBarcodeFormat", default=None, description="This parameter is used to enable Barcode format check (code metadata, data format, contents format, etc.)")
+ check_ir_visibility: SkipValidation[Optional[bool]] = Field(alias="checkIRVisibility", default=None, description="This parameter is used to enable Document elements visibility check in IR light")
+ check_ipi: SkipValidation[Optional[bool]] = Field(alias="checkIPI", default=None, description="This parameter is used to enable Invisible Personal Information (IPI) check")
+ check_photo_embedding: SkipValidation[Optional[bool]] = Field(alias="checkPhotoEmbedding", default=None, description="This parameter is used to enable Owner's photo embedding check (is photo printed or sticked)")
+ check_photo_comparison: SkipValidation[Optional[bool]] = Field(alias="checkPhotoComparison", default=None, description="This parameter is used to enable Portrait comparison check")
+ check_letter_screen: SkipValidation[Optional[bool]] = Field(alias="checkLetterScreen", default=None, description="This parameter is used to enable LetterScreen check")
+ check_security_text: SkipValidation[Optional[bool]] = Field(alias="checkSecurityText", default=None, description="This parameter is used to enable Security text check")
+ check_properties: SkipValidation[Optional[bool]] = Field(alias="checkProperties", default=None, description="Set to true to enable detection of the document properties, such as holder's signature and other attributes.")
+ properties_params: SkipValidation[Optional[PropertiesParams]] = Field(alias="propertiesParams", default=None)
+ __properties: ClassVar[List[str]] = ["checkLiveness", "livenessParams", "checkUVLuminiscence", "checkIRB900", "checkImagePatterns", "checkFibers", "checkExtMRZ", "checkExtOCR", "checkAxial", "checkBarcodeFormat", "checkIRVisibility", "checkIPI", "checkPhotoEmbedding", "checkPhotoComparison", "checkLetterScreen", "checkSecurityText", "checkProperties", "propertiesParams"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -77,8 +83,11 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of liveness_params
- if self.liveness_params:
+ if self.liveness_params and isinstance(self.liveness_params, LivenessParams):
_dict['livenessParams'] = self.liveness_params.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of properties_params
+ if self.properties_params and isinstance(self.properties_params, PropertiesParams):
+ _dict['propertiesParams'] = self.properties_params.to_dict()
return _dict
@classmethod
@@ -106,7 +115,9 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"checkPhotoEmbedding": obj.get("checkPhotoEmbedding"),
"checkPhotoComparison": obj.get("checkPhotoComparison"),
"checkLetterScreen": obj.get("checkLetterScreen"),
- "checkSecurityText": obj.get("checkSecurityText")
+ "checkSecurityText": obj.get("checkSecurityText"),
+ "checkProperties": obj.get("checkProperties"),
+ "propertiesParams": PropertiesParams.from_dict(obj["propertiesParams"]) if obj.get("propertiesParams") is not None else None
})
return _obj
diff --git a/regula/documentreader/webclient/gen/models/authenticity_check_list.py b/regula/documentreader/webclient/gen/models/authenticity_check_list.py
index 0ad286a..9481036 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_check_list.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_check_list.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.authenticity_check_result import AuthenticityCheckResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AuthenticityCheckList(BaseModel):
"""
AuthenticityCheckList
""" # noqa: E501
- count: StrictInt = Field(description="Count of items in List", alias="Count")
- list: List[AuthenticityCheckResult] = Field(description="Authenticity Check", alias="List")
+ count: SkipValidation[int] = Field(alias="Count", description="Count of items in List")
+ list: SkipValidation[List[AuthenticityCheckResult]] = Field(alias="List", description="Authenticity Check")
__properties: ClassVar[List[str]] = ["Count", "List"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/authenticity_check_list_item.py b/regula/documentreader/webclient/gen/models/authenticity_check_list_item.py
index a3f0bb0..74496fa 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_check_list_item.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_check_list_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.authenticity_check_list import AuthenticityCheckList
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AuthenticityCheckListItem(BaseModel):
"""
AuthenticityCheckListItem
""" # noqa: E501
- authenticity_check_list: AuthenticityCheckList = Field(alias="AuthenticityCheckList")
+ authenticity_check_list: SkipValidation[AuthenticityCheckList] = Field(alias="AuthenticityCheckList")
__properties: ClassVar[List[str]] = ["AuthenticityCheckList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of authenticity_check_list
- if self.authenticity_check_list:
+ if self.authenticity_check_list and isinstance(self.authenticity_check_list, AuthenticityCheckList):
_dict['AuthenticityCheckList'] = self.authenticity_check_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/authenticity_check_result.py b/regula/documentreader/webclient/gen/models/authenticity_check_result.py
index c249889..9669303 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_check_result.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_check_result.py
@@ -16,21 +16,24 @@
from regula.documentreader.webclient.gen.models.check_result import CheckResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AuthenticityCheckResult(BaseModel):
"""
AuthenticityCheckResult
""" # noqa: E501
- type: AuthenticityResultType = Field(alias="Type")
- result: CheckResult = Field(alias="Result")
- count: Optional[StrictInt] = Field(default=None, description="Count of items in List", alias="Count")
- list: List[AuthenticityCheckResultItem] = Field(alias="List")
+ type: SkipValidation[AuthenticityResultType] = Field(alias="Type")
+ result: SkipValidation[CheckResult] = Field(alias="Result")
+ count: SkipValidation[Optional[int]] = Field(alias="Count", default=None, description="Count of items in List")
+ list: SkipValidation[List[AuthenticityCheckResultItem]] = Field(alias="List")
__properties: ClassVar[List[str]] = ["Type", "Result", "Count", "List"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -70,7 +73,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/authenticity_check_result_item.py b/regula/documentreader/webclient/gen/models/authenticity_check_result_item.py
index 8d4b9e3..adf0b8f 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_check_result_item.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_check_result_item.py
@@ -17,6 +17,7 @@
from regula.documentreader.webclient.gen.models.check_result import CheckResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
from typing import TYPE_CHECKING
if TYPE_CHECKING:
@@ -47,16 +48,18 @@ class AuthenticityCheckResultItem(BaseModel):
"""
Common fields for all authenticity result objects
""" # noqa: E501
- type: AuthenticityResultType = Field(alias="Type")
- element_result: Optional[CheckResult] = Field(default=None, alias="ElementResult")
- element_diagnose: Optional[CheckDiagnose] = Field(default=None, alias="ElementDiagnose")
- percent_value: Optional[StrictInt] = Field(default=None, alias="PercentValue")
+ type: SkipValidation[AuthenticityResultType] = Field(alias="Type")
+ element_result: SkipValidation[Optional[CheckResult]] = Field(alias="ElementResult", default=None)
+ element_diagnose: SkipValidation[Optional[CheckDiagnose]] = Field(alias="ElementDiagnose", default=None)
+ percent_value: SkipValidation[Optional[int]] = Field(alias="PercentValue", default=None)
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/authenticity_result.py b/regula/documentreader/webclient/gen/models/authenticity_result.py
index 606a681..dcf8fba 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_result.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class AuthenticityResult(ResultItem):
"""
AuthenticityResult
""" # noqa: E501
- authenticity_check_list: AuthenticityCheckList = Field(alias="AuthenticityCheckList")
+ authenticity_check_list: SkipValidation[AuthenticityCheckList] = Field(alias="AuthenticityCheckList")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "AuthenticityCheckList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of authenticity_check_list
- if self.authenticity_check_list:
+ if self.authenticity_check_list and isinstance(self.authenticity_check_list, AuthenticityCheckList):
_dict['AuthenticityCheckList'] = self.authenticity_check_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/authenticity_result_type.py b/regula/documentreader/webclient/gen/models/authenticity_result_type.py
index 91e3c6a..3a0b9d3 100644
--- a/regula/documentreader/webclient/gen/models/authenticity_result_type.py
+++ b/regula/documentreader/webclient/gen/models/authenticity_result_type.py
@@ -40,6 +40,7 @@ class AuthenticityResultType(int, Enum):
EXTENDED_OCR_CHECK = 4194304
EXTENDED_MRZ_CHECK = 8388608
ENCRYPTED_IPI = 16777216
+ PROPERTY = 33554432
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/barcode_position_item.py b/regula/documentreader/webclient/gen/models/barcode_position_item.py
new file mode 100644
index 0000000..52ea76f
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/barcode_position_item.py
@@ -0,0 +1,86 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class BarcodePositionItem(BaseModel):
+ """
+ BarcodePositionItem
+ """ # noqa: E501
+ barcode_position: SkipValidation[DocumentPosition] = Field(alias="BarcodePosition")
+ __properties: ClassVar[List[str]] = ["BarcodePosition"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of BarcodePositionItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of barcode_position
+ if self.barcode_position and isinstance(self.barcode_position, DocumentPosition):
+ _dict['BarcodePosition'] = self.barcode_position.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of BarcodePositionItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "BarcodePosition": DocumentPosition.from_dict(obj["BarcodePosition"]) if obj.get("BarcodePosition") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/barcode_position_result.py b/regula/documentreader/webclient/gen/models/barcode_position_result.py
new file mode 100644
index 0000000..cc62413
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/barcode_position_result.py
@@ -0,0 +1,93 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
+from regula.documentreader.webclient.gen.models.result import Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class BarcodePositionResult(ResultItem):
+ """
+ Contains information about barcode position on the input image, its center, angle, etc
+ """ # noqa: E501
+ barcode_position: SkipValidation[DocumentPosition] = Field(alias="BarcodePosition")
+ __properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "BarcodePosition"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of BarcodePositionResult from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of barcode_position
+ if self.barcode_position and isinstance(self.barcode_position, DocumentPosition):
+ _dict['BarcodePosition'] = self.barcode_position.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of BarcodePositionResult from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "buf_length": obj.get("buf_length"),
+ "light": obj.get("light"),
+ "list_idx": obj.get("list_idx"),
+ "page_idx": obj.get("page_idx"),
+ "result_type": obj.get("result_type"),
+ "BarcodePosition": DocumentPosition.from_dict(obj["BarcodePosition"]) if obj.get("BarcodePosition") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/bc_pdf417_info.py b/regula/documentreader/webclient/gen/models/bc_pdf417_info.py
index 4b4a803..4cb3aa2 100644
--- a/regula/documentreader/webclient/gen/models/bc_pdf417_info.py
+++ b/regula/documentreader/webclient/gen/models/bc_pdf417_info.py
@@ -13,23 +13,26 @@
from typing import Any, ClassVar, Dict, List, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class BcPDF417INFO(BaseModel):
"""
BcPDF417INFO
""" # noqa: E501
- angle: Union[StrictFloat, StrictInt] = Field(alias="Angle")
- bc_column: StrictInt = Field(alias="bcColumn")
- bc_error_level: StrictInt = Field(alias="bcErrorLevel")
- bc_row: StrictInt = Field(alias="bcRow")
- min_x: Union[StrictFloat, StrictInt] = Field(alias="minX")
- min_y: Union[StrictFloat, StrictInt] = Field(alias="minY")
+ angle: SkipValidation[float] = Field(alias="Angle")
+ bc_column: SkipValidation[int] = Field(alias="bcColumn")
+ bc_error_level: SkipValidation[int] = Field(alias="bcErrorLevel")
+ bc_row: SkipValidation[int] = Field(alias="bcRow")
+ min_x: SkipValidation[float] = Field(alias="minX")
+ min_y: SkipValidation[float] = Field(alias="minY")
__properties: ClassVar[List[str]] = ["Angle", "bcColumn", "bcErrorLevel", "bcRow", "minX", "minY"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/bc_roidetect.py b/regula/documentreader/webclient/gen/models/bc_roidetect.py
index 0461af9..8f8e503 100644
--- a/regula/documentreader/webclient/gen/models/bc_roidetect.py
+++ b/regula/documentreader/webclient/gen/models/bc_roidetect.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class BcROIDETECT(BaseModel):
"""
BcROIDETECT
""" # noqa: E501
- bottom: StrictInt
- left: StrictInt
- right: StrictInt
- top: StrictInt
+ bottom: SkipValidation[int] = Field(alias="bottom")
+ left: SkipValidation[int] = Field(alias="left")
+ right: SkipValidation[int] = Field(alias="right")
+ top: SkipValidation[int] = Field(alias="top")
__properties: ClassVar[List[str]] = ["bottom", "left", "right", "top"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/binary_data.py b/regula/documentreader/webclient/gen/models/binary_data.py
index 938f643..ebb133c 100644
--- a/regula/documentreader/webclient/gen/models/binary_data.py
+++ b/regula/documentreader/webclient/gen/models/binary_data.py
@@ -17,81 +17,84 @@
from regula.documentreader.webclient.gen.models.rfid_session_data import RfidSessionData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class BinaryData(BaseModel):
"""
Structure is used for storing the results of one bar-code module reading.
""" # noqa: E501
- rfid_authentication_info: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_Authentication_Info")
- rfid_mifare_data_validity: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_MIFARE_Data_Validity")
- rfid_mifare_data: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_MIFARE_Data")
- rfid_ef_com: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_EF_COM")
- rfid_dg1: Optional[RfidDG1] = Field(default=None, alias="RFID_DG1")
- rfid_dg2: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG2")
- rfid_dg3: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG3")
- rfid_dg4: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG4")
- rfid_dg5: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG5")
- rfid_dg6: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG6")
- rfid_dg7: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG7")
- rfid_dg8: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG8")
- rfid_dg9: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG9")
- rfid_dg10: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG10")
- rfid_dg11: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG11")
- rfid_dg12: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG12")
- rfid_dg13: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG13")
- rfid_dg14: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG14")
- rfid_dg15: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG15")
- rfid_dg16: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_DG16")
- rfid_ef_sod: Optional[Dict[str, Any]] = Field(default=None, alias="RFID_EF_SOD")
- e_id_dg1: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG1")
- e_id_dg2: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG2")
- e_id_dg3: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG3")
- e_id_dg4: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG4")
- e_id_dg5: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG5")
- e_id_dg6: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG6")
- e_id_dg7: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG7")
- e_id_dg8: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG8")
- e_id_dg9: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG9")
- e_id_dg10: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG10")
- e_id_dg11: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG11")
- e_id_dg12: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG12")
- e_id_dg13: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG13")
- e_id_dg14: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG14")
- e_id_dg15: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG15")
- e_id_dg16: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG16")
- e_id_dg17: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG17")
- e_id_dg18: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG18")
- e_id_dg19: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG19")
- e_id_dg20: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG20")
- e_id_dg21: Optional[Dict[str, Any]] = Field(default=None, alias="eID_DG21")
- e_dl_com: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_COM")
- e_dl_sod: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_SOD")
- e_dl_dg1: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG1")
- e_dl_dg2: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG2")
- e_dl_dg3: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG3")
- e_dl_dg4: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG4")
- e_dl_dg5: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG5")
- e_dl_dg6: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG6")
- e_dl_dg7: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG7")
- e_dl_dg8: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG8")
- e_dl_dg9: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG9")
- e_dl_dg10: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG10")
- e_dl_dg11: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG11")
- e_dl_dg12: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG12")
- e_dl_dg13: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG13")
- e_dl_dg14: Optional[Dict[str, Any]] = Field(default=None, alias="eDL_DG14")
- visible_digital_seal: Optional[Dict[str, Any]] = Field(default=None, alias="Visible_Digital_Seal")
- visible_digital_seal_nc: Optional[Dict[str, Any]] = Field(default=None, alias="Visible_Digital_Seal_NC")
- digital_signature: Optional[Dict[str, Any]] = Field(default=None, alias="Digital_Signature")
- rfid_session_data: Optional[RfidSessionData] = Field(default=None, alias="RFID_Session_Data")
- rfid_session_data_status: Optional[DetailsRFID] = Field(default=None, alias="RFID_Session_Data_Status")
- rfid_e_passp_directory: Optional[List[RfidDataFileType]] = Field(default=None, description="Indexes of groups that aren't read", alias="RFID_ePassp_Directory")
+ rfid_authentication_info: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_Authentication_Info", default=None)
+ rfid_mifare_data_validity: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_MIFARE_Data_Validity", default=None)
+ rfid_mifare_data: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_MIFARE_Data", default=None)
+ rfid_ef_com: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_EF_COM", default=None)
+ rfid_dg1: SkipValidation[Optional[RfidDG1]] = Field(alias="RFID_DG1", default=None)
+ rfid_dg2: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG2", default=None)
+ rfid_dg3: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG3", default=None)
+ rfid_dg4: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG4", default=None)
+ rfid_dg5: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG5", default=None)
+ rfid_dg6: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG6", default=None)
+ rfid_dg7: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG7", default=None)
+ rfid_dg8: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG8", default=None)
+ rfid_dg9: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG9", default=None)
+ rfid_dg10: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG10", default=None)
+ rfid_dg11: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG11", default=None)
+ rfid_dg12: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG12", default=None)
+ rfid_dg13: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG13", default=None)
+ rfid_dg14: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG14", default=None)
+ rfid_dg15: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG15", default=None)
+ rfid_dg16: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_DG16", default=None)
+ rfid_ef_sod: SkipValidation[Optional[Dict[str, object]]] = Field(alias="RFID_EF_SOD", default=None)
+ e_id_dg1: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG1", default=None)
+ e_id_dg2: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG2", default=None)
+ e_id_dg3: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG3", default=None)
+ e_id_dg4: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG4", default=None)
+ e_id_dg5: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG5", default=None)
+ e_id_dg6: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG6", default=None)
+ e_id_dg7: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG7", default=None)
+ e_id_dg8: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG8", default=None)
+ e_id_dg9: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG9", default=None)
+ e_id_dg10: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG10", default=None)
+ e_id_dg11: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG11", default=None)
+ e_id_dg12: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG12", default=None)
+ e_id_dg13: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG13", default=None)
+ e_id_dg14: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG14", default=None)
+ e_id_dg15: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG15", default=None)
+ e_id_dg16: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG16", default=None)
+ e_id_dg17: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG17", default=None)
+ e_id_dg18: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG18", default=None)
+ e_id_dg19: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG19", default=None)
+ e_id_dg20: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG20", default=None)
+ e_id_dg21: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eID_DG21", default=None)
+ e_dl_com: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_COM", default=None)
+ e_dl_sod: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_SOD", default=None)
+ e_dl_dg1: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG1", default=None)
+ e_dl_dg2: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG2", default=None)
+ e_dl_dg3: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG3", default=None)
+ e_dl_dg4: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG4", default=None)
+ e_dl_dg5: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG5", default=None)
+ e_dl_dg6: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG6", default=None)
+ e_dl_dg7: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG7", default=None)
+ e_dl_dg8: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG8", default=None)
+ e_dl_dg9: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG9", default=None)
+ e_dl_dg10: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG10", default=None)
+ e_dl_dg11: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG11", default=None)
+ e_dl_dg12: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG12", default=None)
+ e_dl_dg13: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG13", default=None)
+ e_dl_dg14: SkipValidation[Optional[Dict[str, object]]] = Field(alias="eDL_DG14", default=None)
+ visible_digital_seal: SkipValidation[Optional[Dict[str, object]]] = Field(alias="Visible_Digital_Seal", default=None)
+ visible_digital_seal_nc: SkipValidation[Optional[Dict[str, object]]] = Field(alias="Visible_Digital_Seal_NC", default=None)
+ digital_signature: SkipValidation[Optional[Dict[str, object]]] = Field(alias="Digital_Signature", default=None)
+ rfid_session_data: SkipValidation[Optional[RfidSessionData]] = Field(alias="RFID_Session_Data", default=None)
+ rfid_session_data_status: SkipValidation[Optional[DetailsRFID]] = Field(alias="RFID_Session_Data_Status", default=None)
+ rfid_e_passp_directory: SkipValidation[Optional[List[RfidDataFileType]]] = Field(alias="RFID_ePassp_Directory", default=None, description="Indexes of groups that aren't read")
__properties: ClassVar[List[str]] = ["RFID_Authentication_Info", "RFID_MIFARE_Data_Validity", "RFID_MIFARE_Data", "RFID_EF_COM", "RFID_DG1", "RFID_DG2", "RFID_DG3", "RFID_DG4", "RFID_DG5", "RFID_DG6", "RFID_DG7", "RFID_DG8", "RFID_DG9", "RFID_DG10", "RFID_DG11", "RFID_DG12", "RFID_DG13", "RFID_DG14", "RFID_DG15", "RFID_DG16", "RFID_EF_SOD", "eID_DG1", "eID_DG2", "eID_DG3", "eID_DG4", "eID_DG5", "eID_DG6", "eID_DG7", "eID_DG8", "eID_DG9", "eID_DG10", "eID_DG11", "eID_DG12", "eID_DG13", "eID_DG14", "eID_DG15", "eID_DG16", "eID_DG17", "eID_DG18", "eID_DG19", "eID_DG20", "eID_DG21", "eDL_COM", "eDL_SOD", "eDL_DG1", "eDL_DG2", "eDL_DG3", "eDL_DG4", "eDL_DG5", "eDL_DG6", "eDL_DG7", "eDL_DG8", "eDL_DG9", "eDL_DG10", "eDL_DG11", "eDL_DG12", "eDL_DG13", "eDL_DG14", "Visible_Digital_Seal", "Visible_Digital_Seal_NC", "Digital_Signature", "RFID_Session_Data", "RFID_Session_Data_Status", "RFID_ePassp_Directory"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -128,13 +131,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of rfid_dg1
- if self.rfid_dg1:
+ if self.rfid_dg1 and isinstance(self.rfid_dg1, RfidDG1):
_dict['RFID_DG1'] = self.rfid_dg1.to_dict()
# override the default output from pydantic by calling `to_dict()` of rfid_session_data
- if self.rfid_session_data:
+ if self.rfid_session_data and isinstance(self.rfid_session_data, RfidSessionData):
_dict['RFID_Session_Data'] = self.rfid_session_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of rfid_session_data_status
- if self.rfid_session_data_status:
+ if self.rfid_session_data_status and isinstance(self.rfid_session_data_status, DetailsRFID):
_dict['RFID_Session_Data_Status'] = self.rfid_session_data_status.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/bsi_tr03135.py b/regula/documentreader/webclient/gen/models/bsi_tr03135.py
new file mode 100644
index 0000000..aa66dae
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/bsi_tr03135.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class BsiTr03135(BaseModel):
+ """
+ BsiTr03135
+ """ # noqa: E501
+ generate_result: SkipValidation[Optional[bool]] = Field(alias="generateResult", default=None, description="When enabled, returns processing results in accordance with the BSI TR-03135 standard in addition to the existing processing results.")
+ __properties: ClassVar[List[str]] = ["generateResult"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of BsiTr03135 from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of BsiTr03135 from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "generateResult": obj.get("generateResult")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/bsiv2_item.py b/regula/documentreader/webclient/gen/models/bsiv2_item.py
new file mode 100644
index 0000000..a32b169
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/bsiv2_item.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class BSIV2Item(BaseModel):
+ """
+ BSIV2Item
+ """ # noqa: E501
+ xml_buffer: SkipValidation[str] = Field(alias="XML_buffer")
+ __properties: ClassVar[List[str]] = ["XML_buffer"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of BSIV2Item from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of BSIV2Item from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "XML_buffer": obj.get("XML_buffer")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/bsiv2_result.py b/regula/documentreader/webclient/gen/models/bsiv2_result.py
new file mode 100644
index 0000000..a3f7740
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/bsiv2_result.py
@@ -0,0 +1,89 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import ConfigDict, Field, StrictStr
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.result import Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class BSIV2Result(ResultItem):
+ """
+ BSIV2Result
+ """ # noqa: E501
+ xml_buffer: SkipValidation[str] = Field(alias="XML_buffer")
+ __properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "XML_buffer"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of BSIV2Result from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of BSIV2Result from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "buf_length": obj.get("buf_length"),
+ "light": obj.get("light"),
+ "list_idx": obj.get("list_idx"),
+ "page_idx": obj.get("page_idx"),
+ "result_type": obj.get("result_type"),
+ "XML_buffer": obj.get("XML_buffer")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/byte_array_item.py b/regula/documentreader/webclient/gen/models/byte_array_item.py
index b1348fa..c27050b 100644
--- a/regula/documentreader/webclient/gen/models/byte_array_item.py
+++ b/regula/documentreader/webclient/gen/models/byte_array_item.py
@@ -13,18 +13,21 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ByteArrayItem(BaseModel):
"""
ByteArrayItem
""" # noqa: E501
- byte_array: StrictStr = Field(description="Byte array in base64", alias="ByteArray")
+ byte_array: SkipValidation[str] = Field(alias="ByteArray", description="Byte array in base64")
__properties: ClassVar[List[str]] = ["ByteArray"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/byte_array_result.py b/regula/documentreader/webclient/gen/models/byte_array_result.py
index e58b897..5c93010 100644
--- a/regula/documentreader/webclient/gen/models/byte_array_result.py
+++ b/regula/documentreader/webclient/gen/models/byte_array_result.py
@@ -15,18 +15,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ByteArrayResult(ResultItem):
"""
ByteArrayResult
""" # noqa: E501
- byte_array: StrictStr = Field(description="Byte array in base64", alias="ByteArray")
+ byte_array: SkipValidation[str] = Field(alias="ByteArray", description="Byte array in base64")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "ByteArray"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/candidates_list_item.py b/regula/documentreader/webclient/gen/models/candidates_list_item.py
index e5a3f84..7ff7358 100644
--- a/regula/documentreader/webclient/gen/models/candidates_list_item.py
+++ b/regula/documentreader/webclient/gen/models/candidates_list_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.document_types_candidates_list import DocumentTypesCandidatesList
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class CandidatesListItem(BaseModel):
"""
CandidatesListItem
""" # noqa: E501
- candidates_list: Optional[DocumentTypesCandidatesList] = Field(default=None, alias="CandidatesList")
+ candidates_list: SkipValidation[Optional[DocumentTypesCandidatesList]] = Field(alias="CandidatesList", default=None)
__properties: ClassVar[List[str]] = ["CandidatesList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of candidates_list
- if self.candidates_list:
+ if self.candidates_list and isinstance(self.candidates_list, DocumentTypesCandidatesList):
_dict['CandidatesList'] = self.candidates_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/certificate_data.py b/regula/documentreader/webclient/gen/models/certificate_data.py
index db1d4d9..ec3a45d 100644
--- a/regula/documentreader/webclient/gen/models/certificate_data.py
+++ b/regula/documentreader/webclient/gen/models/certificate_data.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class CertificateData(BaseModel):
"""
CertificateData
""" # noqa: E501
- data: StrictStr = Field(alias="Data")
- length: StrictInt = Field(alias="Length")
+ data: SkipValidation[str] = Field(alias="Data")
+ length: SkipValidation[int] = Field(alias="Length")
__properties: ClassVar[List[str]] = ["Data", "Length"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/check_diagnose.py b/regula/documentreader/webclient/gen/models/check_diagnose.py
index 2360176..856450b 100644
--- a/regula/documentreader/webclient/gen/models/check_diagnose.py
+++ b/regula/documentreader/webclient/gen/models/check_diagnose.py
@@ -68,6 +68,8 @@ class CheckDiagnose(int, Enum):
FIELD_POS_CORRECTOR_FACE_PRESENCE_CHECK_ERROR = 84
FIELD_POS_CORRECTOR_FACE_ABSENCE_CHECK_ERROR = 85
FIELD_POS_CORRECTOR_INCORRECT_HEAD_POSITION = 86
+ FIELD_POS_CORRECTOR_AGE_CHECK_ERROR = 87
+ FIELD_POS_CORRECTOR_SEX_CHECK_ERROR = 88
OVI_IR_INVISIBLE = 90
OVI_INSUFFICIENT_AREA = 91
OVI_COLOR_INVARIABLE = 92
@@ -97,6 +99,7 @@ class CheckDiagnose(int, Enum):
TEXT_COLOR_SHOULD_BE_GREEN = 131
TEXT_COLOR_SHOULD_BE_RED = 132
TEXT_SHOULD_BE_BLACK = 133
+ TEXT_IS_ABSENT = 134
BARCODE_WAS_READ_WITH_ERRORS = 140
BARCODE_DATA_FORMAT_ERROR = 141
BARCODE_SIZE_PARAMS_ERROR = 142
@@ -136,6 +139,7 @@ class CheckDiagnose(int, Enum):
DOC_LIVENESS_BLACK_AND_WHITE_COPY_DETECTED = 239
DOC_LIVENESS_ELECTRONIC_DEVICE_DETECTED = 240
DOC_LIVENESS_INVALID_BARCODE_BACKGROUND = 241
+ DOC_LIVENESS_VIRTUAL_CAMERA_DETECTED = 242
CHD_ICAO_IDB_BASE32_ERROR = 243
CHD_ICAO_IDB_ZIPPED_ERROR = 244
CHD_ICAO_IDB_MESSAGE_ZONE_EMPTY = 245
@@ -143,6 +147,9 @@ class CheckDiagnose(int, Enum):
CHD_ICAO_IDB_SIGNATURE_MUST_NOT_BE_PRESENT = 247
CHD_ICAO_IDB_CERTIFICATE_MUST_NOT_BE_PRESENT = 248
CHD_INCORRECT_OBJECT_COLOR = 250
+ PROPERTY_NO_SIGNATURE = 260
+ PROPERTY_TEXT_AS_SIGNATURE = 261
+ PROPERTY_FINGERPRINT_AS_SIGNATURE = 262
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/chosen_document_type.py b/regula/documentreader/webclient/gen/models/chosen_document_type.py
index 5d56b05..9cab23b 100644
--- a/regula/documentreader/webclient/gen/models/chosen_document_type.py
+++ b/regula/documentreader/webclient/gen/models/chosen_document_type.py
@@ -16,29 +16,32 @@
from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ChosenDocumentType(BaseModel):
"""
Contains information about one document type candidate
""" # noqa: E501
- document_name: Optional[StrictStr] = Field(default=None, description="Document name", alias="DocumentName")
- id: StrictInt = Field(description="Unique document type template identifier (Regula's internal numeric code)", alias="ID")
- p: Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]] = Field(description="A measure of the likelihood of correct recognition in the analysis of this type of document", alias="P")
- rotated180: StrictInt = Field(description="Indicates if the document of the given type is rotated by 180 degrees", alias="Rotated180")
- rfid_presence: RfidLocation = Field(alias="RFID_Presence")
- fdsid_list: Optional[FDSIDList] = Field(default=None, alias="FDSIDList")
- necessary_lights: StrictInt = Field(description="Combination of lighting scheme identifiers (Light enum) required to conduct OCR for this type of document", alias="NecessaryLights")
- check_authenticity: StrictInt = Field(description="Set of authentication options provided for this type of document (combination of Authenticity enum)", alias="CheckAuthenticity")
- uv_exp: StrictInt = Field(description="The required exposure value of the camera when receiving images of a document of this type for a UV lighting scheme", alias="UVExp")
- authenticity_necessary_lights: StrictInt = Field(description="Combination of lighting scheme identifiers (combination of Light enum) needed to perform all authenticity checks specified in CheckAuthenticity", alias="AuthenticityNecessaryLights")
- ovi_exp: Union[StrictFloat, StrictInt] = Field(description="Camera exposure value necessary when obtaining document images of the given type for AXIAL lighting scheme", alias="OVIExp")
- rotation_angle: Optional[StrictInt] = Field(default=None, alias="RotationAngle")
+ document_name: SkipValidation[Optional[str]] = Field(alias="DocumentName", default=None, description="Document name")
+ id: SkipValidation[int] = Field(alias="ID", description="Unique document type template identifier (Regula's internal numeric code)")
+ p: SkipValidation[float] = Field(alias="P", description="A measure of the likelihood of correct recognition in the analysis of this type of document")
+ rotated180: SkipValidation[int] = Field(alias="Rotated180", description="Indicates if the document of the given type is rotated by 180 degrees")
+ rfid_presence: SkipValidation[RfidLocation] = Field(alias="RFID_Presence")
+ fdsid_list: SkipValidation[Optional[FDSIDList]] = Field(alias="FDSIDList", default=None)
+ necessary_lights: SkipValidation[int] = Field(alias="NecessaryLights", description="Combination of lighting scheme identifiers (Light enum) required to conduct OCR for this type of document")
+ check_authenticity: SkipValidation[int] = Field(alias="CheckAuthenticity", description="Set of authentication options provided for this type of document (combination of Authenticity enum)")
+ uv_exp: SkipValidation[int] = Field(alias="UVExp", description="The required exposure value of the camera when receiving images of a document of this type for a UV lighting scheme")
+ authenticity_necessary_lights: SkipValidation[int] = Field(alias="AuthenticityNecessaryLights", description="Combination of lighting scheme identifiers (combination of Light enum) needed to perform all authenticity checks specified in CheckAuthenticity")
+ ovi_exp: SkipValidation[float] = Field(alias="OVIExp", description="Camera exposure value necessary when obtaining document images of the given type for AXIAL lighting scheme")
+ rotation_angle: SkipValidation[Optional[int]] = Field(alias="RotationAngle", default=None)
__properties: ClassVar[List[str]] = ["DocumentName", "ID", "P", "Rotated180", "RFID_Presence", "FDSIDList", "NecessaryLights", "CheckAuthenticity", "UVExp", "AuthenticityNecessaryLights", "OVIExp", "RotationAngle"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,7 +78,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of fdsid_list
- if self.fdsid_list:
+ if self.fdsid_list and isinstance(self.fdsid_list, FDSIDList):
_dict['FDSIDList'] = self.fdsid_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/chosen_document_type_result.py b/regula/documentreader/webclient/gen/models/chosen_document_type_result.py
index 5ac2148..954a5fc 100644
--- a/regula/documentreader/webclient/gen/models/chosen_document_type_result.py
+++ b/regula/documentreader/webclient/gen/models/chosen_document_type_result.py
@@ -16,19 +16,22 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ChosenDocumentTypeResult(ResultItem):
"""
Contains information about the type of document that was determined based on the analysis of the provided image
""" # noqa: E501
- one_candidate: OneCandidate = Field(alias="OneCandidate")
- xml_buffer: Optional[StrictStr] = Field(default=None, alias="XML_buffer")
+ one_candidate: SkipValidation[OneCandidate] = Field(alias="OneCandidate")
+ xml_buffer: SkipValidation[Optional[str]] = Field(alias="XML_buffer", default=None)
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "OneCandidate", "XML_buffer"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of one_candidate
- if self.one_candidate:
+ if self.one_candidate and isinstance(self.one_candidate, OneCandidate):
_dict['OneCandidate'] = self.one_candidate.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/container_list.py b/regula/documentreader/webclient/gen/models/container_list.py
index 7995ee1..60f01d8 100644
--- a/regula/documentreader/webclient/gen/models/container_list.py
+++ b/regula/documentreader/webclient/gen/models/container_list.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ContainerList(BaseModel):
"""
List with various objects, containing processing results
""" # noqa: E501
- count: Optional[StrictInt] = Field(default=None, description="Length of list (Count for items)", alias="Count")
- list: List[ResultItem] = Field(alias="List")
+ count: SkipValidation[Optional[int]] = Field(alias="Count", default=None, description="Length of list (Count for items)")
+ list: SkipValidation[List[ResultItem]] = Field(alias="List")
__properties: ClassVar[List[str]] = ["Count", "List"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/container_list_list_inner.py b/regula/documentreader/webclient/gen/models/container_list_list_inner.py
index 878c3d8..a73c3ca 100644
--- a/regula/documentreader/webclient/gen/models/container_list_list_inner.py
+++ b/regula/documentreader/webclient/gen/models/container_list_list_inner.py
@@ -10,6 +10,8 @@
from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator
from typing import Any, List, Optional
from regula.documentreader.webclient.gen.models.authenticity_result import AuthenticityResult
+from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult
+from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result
from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult
from regula.documentreader.webclient.gen.models.chosen_document_type_result import ChosenDocumentTypeResult
from regula.documentreader.webclient.gen.models.doc_bar_code_info import DocBarCodeInfo
@@ -24,6 +26,7 @@
from regula.documentreader.webclient.gen.models.images_result import ImagesResult
from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult
from regula.documentreader.webclient.gen.models.license_result import LicenseResult
+from regula.documentreader.webclient.gen.models.mdl_result import MDLResult
from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult
from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult
from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult
@@ -32,11 +35,13 @@
from regula.documentreader.webclient.gen.models.status_result import StatusResult
from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult
from regula.documentreader.webclient.gen.models.text_result import TextResult
+from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult
+from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult
from pydantic import StrictStr, Field
from typing import Union, List, Set, Optional, Dict
from typing_extensions import Literal, Self
-CONTAINERLISTLISTINNER_ONE_OF_SCHEMAS = ["AuthenticityResult", "ByteArrayResult", "ChosenDocumentTypeResult", "DocBarCodeInfo", "DocumentBinaryInfoResult", "DocumentImageResult", "DocumentPositionResult", "DocumentTypesCandidatesResult", "EncryptedRCLResult", "FaceDetectionResult", "GraphicsResult", "ImageQualityResult", "ImagesResult", "LexicalAnalysisResult", "LicenseResult", "MRZDetectorResult", "MRZPositionResult", "MRZTestQualityResult", "RFIDGraphicsInfoResult", "RFIDTextDataResult", "StatusResult", "TextDataResult", "TextResult"]
+CONTAINERLISTLISTINNER_ONE_OF_SCHEMAS = ["AuthenticityResult", "BSIV2Result", "BarcodePositionResult", "ByteArrayResult", "ChosenDocumentTypeResult", "DocBarCodeInfo", "DocumentBinaryInfoResult", "DocumentImageResult", "DocumentPositionResult", "DocumentTypesCandidatesResult", "EncryptedRCLResult", "FaceDetectionResult", "GraphicsResult", "ImageQualityResult", "ImagesResult", "LexicalAnalysisResult", "LicenseResult", "MDLResult", "MRZDetectorResult", "MRZPositionResult", "MRZTestQualityResult", "RFIDGraphicsInfoResult", "RFIDTextDataResult", "StatusResult", "TextDataResult", "TextResult", "VDSDataResult", "VDSNCDataResult"]
class ContainerListListInner(BaseModel):
"""
@@ -64,32 +69,42 @@ class ContainerListListInner(BaseModel):
oneof_schema_10_validator: Optional[AuthenticityResult] = None
# data type: ImageQualityResult
oneof_schema_11_validator: Optional[ImageQualityResult] = None
+ # data type: BarcodePositionResult
+ oneof_schema_12_validator: Optional[BarcodePositionResult] = None
# data type: DocumentPositionResult
- oneof_schema_12_validator: Optional[DocumentPositionResult] = None
+ oneof_schema_13_validator: Optional[DocumentPositionResult] = None
# data type: DocBarCodeInfo
- oneof_schema_13_validator: Optional[DocBarCodeInfo] = None
+ oneof_schema_14_validator: Optional[DocBarCodeInfo] = None
# data type: LicenseResult
- oneof_schema_14_validator: Optional[LicenseResult] = None
+ oneof_schema_15_validator: Optional[LicenseResult] = None
# data type: EncryptedRCLResult
- oneof_schema_15_validator: Optional[EncryptedRCLResult] = None
+ oneof_schema_16_validator: Optional[EncryptedRCLResult] = None
# data type: DocumentBinaryInfoResult
- oneof_schema_16_validator: Optional[DocumentBinaryInfoResult] = None
+ oneof_schema_17_validator: Optional[DocumentBinaryInfoResult] = None
# data type: ByteArrayResult
- oneof_schema_17_validator: Optional[ByteArrayResult] = None
+ oneof_schema_18_validator: Optional[ByteArrayResult] = None
# data type: FaceDetectionResult
- oneof_schema_18_validator: Optional[FaceDetectionResult] = None
+ oneof_schema_19_validator: Optional[FaceDetectionResult] = None
# data type: MRZDetectorResult
- oneof_schema_19_validator: Optional[MRZDetectorResult] = None
+ oneof_schema_20_validator: Optional[MRZDetectorResult] = None
# data type: MRZPositionResult
- oneof_schema_20_validator: Optional[MRZPositionResult] = None
+ oneof_schema_21_validator: Optional[MRZPositionResult] = None
# data type: MRZTestQualityResult
- oneof_schema_21_validator: Optional[MRZTestQualityResult] = None
+ oneof_schema_22_validator: Optional[MRZTestQualityResult] = None
# data type: RFIDGraphicsInfoResult
- oneof_schema_22_validator: Optional[RFIDGraphicsInfoResult] = None
+ oneof_schema_23_validator: Optional[RFIDGraphicsInfoResult] = None
# data type: RFIDTextDataResult
- oneof_schema_23_validator: Optional[RFIDTextDataResult] = None
- actual_instance: Optional[Union[AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult]] = None
- one_of_schemas: Set[str] = { "AuthenticityResult", "ByteArrayResult", "ChosenDocumentTypeResult", "DocBarCodeInfo", "DocumentBinaryInfoResult", "DocumentImageResult", "DocumentPositionResult", "DocumentTypesCandidatesResult", "EncryptedRCLResult", "FaceDetectionResult", "GraphicsResult", "ImageQualityResult", "ImagesResult", "LexicalAnalysisResult", "LicenseResult", "MRZDetectorResult", "MRZPositionResult", "MRZTestQualityResult", "RFIDGraphicsInfoResult", "RFIDTextDataResult", "StatusResult", "TextDataResult", "TextResult" }
+ oneof_schema_24_validator: Optional[RFIDTextDataResult] = None
+ # data type: VDSNCDataResult
+ oneof_schema_25_validator: Optional[VDSNCDataResult] = None
+ # data type: VDSDataResult
+ oneof_schema_26_validator: Optional[VDSDataResult] = None
+ # data type: MDLResult
+ oneof_schema_27_validator: Optional[MDLResult] = None
+ # data type: BSIV2Result
+ oneof_schema_28_validator: Optional[BSIV2Result] = None
+ actual_instance: Optional[Union[AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult]] = None
+ one_of_schemas: Set[str] = { "AuthenticityResult", "BSIV2Result", "BarcodePositionResult", "ByteArrayResult", "ChosenDocumentTypeResult", "DocBarCodeInfo", "DocumentBinaryInfoResult", "DocumentImageResult", "DocumentPositionResult", "DocumentTypesCandidatesResult", "EncryptedRCLResult", "FaceDetectionResult", "GraphicsResult", "ImageQualityResult", "ImagesResult", "LexicalAnalysisResult", "LicenseResult", "MDLResult", "MRZDetectorResult", "MRZPositionResult", "MRZTestQualityResult", "RFIDGraphicsInfoResult", "RFIDTextDataResult", "StatusResult", "TextDataResult", "TextResult", "VDSDataResult", "VDSNCDataResult" }
model_config = ConfigDict(
validate_assignment=True,
@@ -170,6 +185,11 @@ def actual_instance_must_validate_oneof(cls, v):
error_messages.append(f"Error! Input type `{type(v)}` is not `ImageQualityResult`")
else:
match += 1
+ # validate data type: BarcodePositionResult
+ if not isinstance(v, BarcodePositionResult):
+ error_messages.append(f"Error! Input type `{type(v)}` is not `BarcodePositionResult`")
+ else:
+ match += 1
# validate data type: DocumentPositionResult
if not isinstance(v, DocumentPositionResult):
error_messages.append(f"Error! Input type `{type(v)}` is not `DocumentPositionResult`")
@@ -230,12 +250,32 @@ def actual_instance_must_validate_oneof(cls, v):
error_messages.append(f"Error! Input type `{type(v)}` is not `RFIDTextDataResult`")
else:
match += 1
+ # validate data type: VDSNCDataResult
+ if not isinstance(v, VDSNCDataResult):
+ error_messages.append(f"Error! Input type `{type(v)}` is not `VDSNCDataResult`")
+ else:
+ match += 1
+ # validate data type: VDSDataResult
+ if not isinstance(v, VDSDataResult):
+ error_messages.append(f"Error! Input type `{type(v)}` is not `VDSDataResult`")
+ else:
+ match += 1
+ # validate data type: MDLResult
+ if not isinstance(v, MDLResult):
+ error_messages.append(f"Error! Input type `{type(v)}` is not `MDLResult`")
+ else:
+ match += 1
+ # validate data type: BSIV2Result
+ if not isinstance(v, BSIV2Result):
+ error_messages.append(f"Error! Input type `{type(v)}` is not `BSIV2Result`")
+ else:
+ match += 1
if match > 1:
# more than 1 match
- raise ValueError("Multiple matches found when setting `actual_instance` in ContainerListListInner with oneOf schemas: AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult. Details: " + ", ".join(error_messages))
+ raise ValueError("Multiple matches found when setting `actual_instance` in ContainerListListInner with oneOf schemas: AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. Details: " + ", ".join(error_messages))
elif match == 0:
# no match
- raise ValueError("No match found when setting `actual_instance` in ContainerListListInner with oneOf schemas: AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult. Details: " + ", ".join(error_messages))
+ raise ValueError("No match found when setting `actual_instance` in ContainerListListInner with oneOf schemas: AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. Details: " + ", ".join(error_messages))
else:
return v
@@ -316,6 +356,12 @@ def from_json(cls, json_str: str) -> Self:
match += 1
except (ValidationError, ValueError) as e:
error_messages.append(str(e))
+ # deserialize data into BarcodePositionResult
+ try:
+ instance.actual_instance = BarcodePositionResult.from_json(json_str)
+ match += 1
+ except (ValidationError, ValueError) as e:
+ error_messages.append(str(e))
# deserialize data into DocumentPositionResult
try:
instance.actual_instance = DocumentPositionResult.from_json(json_str)
@@ -388,13 +434,37 @@ def from_json(cls, json_str: str) -> Self:
match += 1
except (ValidationError, ValueError) as e:
error_messages.append(str(e))
+ # deserialize data into VDSNCDataResult
+ try:
+ instance.actual_instance = VDSNCDataResult.from_json(json_str)
+ match += 1
+ except (ValidationError, ValueError) as e:
+ error_messages.append(str(e))
+ # deserialize data into VDSDataResult
+ try:
+ instance.actual_instance = VDSDataResult.from_json(json_str)
+ match += 1
+ except (ValidationError, ValueError) as e:
+ error_messages.append(str(e))
+ # deserialize data into MDLResult
+ try:
+ instance.actual_instance = MDLResult.from_json(json_str)
+ match += 1
+ except (ValidationError, ValueError) as e:
+ error_messages.append(str(e))
+ # deserialize data into BSIV2Result
+ try:
+ instance.actual_instance = BSIV2Result.from_json(json_str)
+ match += 1
+ except (ValidationError, ValueError) as e:
+ error_messages.append(str(e))
if match > 1:
# more than 1 match
- raise ValueError("Multiple matches found when deserializing the JSON string into ContainerListListInner with oneOf schemas: AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult. Details: " + ", ".join(error_messages))
+ raise ValueError("Multiple matches found when deserializing the JSON string into ContainerListListInner with oneOf schemas: AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. Details: " + ", ".join(error_messages))
elif match == 0:
# no match
- raise ValueError("No match found when deserializing the JSON string into ContainerListListInner with oneOf schemas: AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult. Details: " + ", ".join(error_messages))
+ raise ValueError("No match found when deserializing the JSON string into ContainerListListInner with oneOf schemas: AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult. Details: " + ", ".join(error_messages))
else:
return instance
@@ -408,7 +478,7 @@ def to_json(self) -> str:
else:
return json.dumps(self.actual_instance)
- def to_dict(self) -> Optional[Union[Dict[str, Any], AuthenticityResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult]]:
+ def to_dict(self) -> Optional[Union[Dict[str, Any], AuthenticityResult, BSIV2Result, BarcodePositionResult, ByteArrayResult, ChosenDocumentTypeResult, DocBarCodeInfo, DocumentBinaryInfoResult, DocumentImageResult, DocumentPositionResult, DocumentTypesCandidatesResult, EncryptedRCLResult, FaceDetectionResult, GraphicsResult, ImageQualityResult, ImagesResult, LexicalAnalysisResult, LicenseResult, MDLResult, MRZDetectorResult, MRZPositionResult, MRZTestQualityResult, RFIDGraphicsInfoResult, RFIDTextDataResult, StatusResult, TextDataResult, TextResult, VDSDataResult, VDSNCDataResult]]:
"""Returns the dict representation of the actual instance"""
if self.actual_instance is None:
return None
diff --git a/regula/documentreader/webclient/gen/models/cross_source_value_comparison.py b/regula/documentreader/webclient/gen/models/cross_source_value_comparison.py
index 411125c..5dd1c39 100644
--- a/regula/documentreader/webclient/gen/models/cross_source_value_comparison.py
+++ b/regula/documentreader/webclient/gen/models/cross_source_value_comparison.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class CrossSourceValueComparison(BaseModel):
"""
CrossSourceValueComparison
""" # noqa: E501
- source_left: Source = Field(alias="sourceLeft")
- source_right: Source = Field(alias="sourceRight")
- status: CheckResult
+ source_left: SkipValidation[Source] = Field(alias="sourceLeft")
+ source_right: SkipValidation[Source] = Field(alias="sourceRight")
+ status: SkipValidation[CheckResult] = Field(alias="status")
__properties: ClassVar[List[str]] = ["sourceLeft", "sourceRight", "status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/data_module.py b/regula/documentreader/webclient/gen/models/data_module.py
index 9d54192..f0eeb9a 100644
--- a/regula/documentreader/webclient/gen/models/data_module.py
+++ b/regula/documentreader/webclient/gen/models/data_module.py
@@ -14,22 +14,25 @@
from regula.documentreader.webclient.gen.models.bar_code_module_type import BarCodeModuleType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DataModule(BaseModel):
"""
DataModule
""" # noqa: E501
- m_data: StrictStr = Field(alias="mData")
- m_length: StrictInt = Field(alias="mLength")
- m_reserved1: Optional[StrictInt] = Field(default=None, alias="mReserved1")
- m_reserver2: Optional[StrictInt] = Field(default=None, alias="mReserver2")
- m_type: BarCodeModuleType = Field(alias="mType")
+ m_data: SkipValidation[str] = Field(alias="mData")
+ m_length: SkipValidation[int] = Field(alias="mLength")
+ m_reserved1: SkipValidation[Optional[int]] = Field(alias="mReserved1", default=None)
+ m_reserver2: SkipValidation[Optional[int]] = Field(alias="mReserver2", default=None)
+ m_type: SkipValidation[BarCodeModuleType] = Field(alias="mType")
__properties: ClassVar[List[str]] = ["mData", "mLength", "mReserved1", "mReserver2", "mType"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/database_document.py b/regula/documentreader/webclient/gen/models/database_document.py
new file mode 100644
index 0000000..ced8549
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/database_document.py
@@ -0,0 +1,115 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from regula.documentreader.webclient.gen.models.document_type import DocumentType
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class DatabaseDocument(BaseModel):
+ """
+ DatabaseDocument
+ """ # noqa: E501
+ barcode_fields: SkipValidation[bool] = Field(alias="barcode_fields", description="Whether the document has a barcode.")
+ country: SkipValidation[str] = Field(alias="country", description="Country name.")
+ created: SkipValidation[str] = Field(alias="created", description="Date when the document description was created in the database.")
+ doc_type: SkipValidation[DocumentType] = Field(alias="doc_type")
+ document: SkipValidation[str] = Field(alias="document", description="Document name.")
+ graphic_fields: SkipValidation[bool] = Field(alias="graphic_fields", description="The presence of graphic fields in the document.")
+ id: SkipValidation[int] = Field(alias="id", description="Document code.")
+ mrz: SkipValidation[bool] = Field(alias="mrz", description="The document has an MRZ.")
+ region: SkipValidation[Optional[str]] = Field(alias="region", default=None, description="Country region.")
+ rfid_chip: SkipValidation[bool] = Field(alias="rfid_chip", description="The document has an RFID chip.")
+ text_fields: SkipValidation[bool] = Field(alias="text_fields", description="The presence of text fields in the document.")
+ updated: SkipValidation[str] = Field(alias="updated", description="Date when the document description was updated in the database.")
+ year: SkipValidation[Optional[str]] = Field(alias="year", default=None, description="The year when the document was issued.")
+ sovereignty: SkipValidation[Optional[str]] = Field(alias="sovereignty", default=None, description="Guardian country.")
+ deprecated: SkipValidation[Optional[bool]] = Field(alias="deprecated", default=None, description="Whether the document is no longer in circulation.")
+ icao_code: SkipValidation[Optional[str]] = Field(alias="icao_code", default=None, description="ICAO country code.")
+ doc_codes: SkipValidation[Optional[str]] = Field(alias="doc_codes", default=None, description="Document codes.")
+ __properties: ClassVar[List[str]] = ["barcode_fields", "country", "created", "doc_type", "document", "graphic_fields", "id", "mrz", "region", "rfid_chip", "text_fields", "updated", "year", "sovereignty", "deprecated", "icao_code", "doc_codes"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of DatabaseDocument from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of DatabaseDocument from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "barcode_fields": obj.get("barcode_fields"),
+ "country": obj.get("country"),
+ "created": obj.get("created"),
+ "doc_type": obj.get("doc_type"),
+ "document": obj.get("document"),
+ "graphic_fields": obj.get("graphic_fields"),
+ "id": obj.get("id"),
+ "mrz": obj.get("mrz"),
+ "region": obj.get("region"),
+ "rfid_chip": obj.get("rfid_chip"),
+ "text_fields": obj.get("text_fields"),
+ "updated": obj.get("updated"),
+ "year": obj.get("year"),
+ "sovereignty": obj.get("sovereignty"),
+ "deprecated": obj.get("deprecated"),
+ "icao_code": obj.get("icao_code"),
+ "doc_codes": obj.get("doc_codes")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/database_document_list.py b/regula/documentreader/webclient/gen/models/database_document_list.py
new file mode 100644
index 0000000..631f700
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/database_document_list.py
@@ -0,0 +1,90 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.database_document import DatabaseDocument
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class DatabaseDocumentList(BaseModel):
+ """
+ DatabaseDocumentList
+ """ # noqa: E501
+ items: SkipValidation[List[DatabaseDocument]] = Field(alias="items", description="The list of documents stored in the database.")
+ __properties: ClassVar[List[str]] = ["items"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of DatabaseDocumentList from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in items (list)
+ _items = []
+ if self.items:
+ for _item_items in self.items:
+ if _item_items and hasattr(_item_items, "to_dict"):
+ _items.append(_item_items.to_dict())
+ _dict['items'] = _items
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of DatabaseDocumentList from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "items": [DatabaseDocument.from_dict(_item) for _item in obj.get("items", []) if DatabaseDocument.from_dict(_item) is not None]
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/details_age.py b/regula/documentreader/webclient/gen/models/details_age.py
new file mode 100644
index 0000000..c5d8274
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/details_age.py
@@ -0,0 +1,93 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.check_result import CheckResult
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class DetailsAge(BaseModel):
+ """
+ DetailsAge
+ """ # noqa: E501
+ threshold: SkipValidation[int] = Field(alias="threshold")
+ over_threshold: SkipValidation[CheckResult] = Field(alias="overThreshold")
+ over18: SkipValidation[CheckResult] = Field(alias="over18")
+ over21: SkipValidation[CheckResult] = Field(alias="over21")
+ over25: SkipValidation[CheckResult] = Field(alias="over25")
+ over65: SkipValidation[CheckResult] = Field(alias="over65")
+ __properties: ClassVar[List[str]] = ["threshold", "overThreshold", "over18", "over21", "over25", "over65"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of DetailsAge from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of DetailsAge from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "threshold": obj.get("threshold"),
+ "overThreshold": obj.get("overThreshold"),
+ "over18": obj.get("over18"),
+ "over21": obj.get("over21"),
+ "over25": obj.get("over25"),
+ "over65": obj.get("over65")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/details_optical.py b/regula/documentreader/webclient/gen/models/details_optical.py
index caa4079..7045d2e 100644
--- a/regula/documentreader/webclient/gen/models/details_optical.py
+++ b/regula/documentreader/webclient/gen/models/details_optical.py
@@ -14,26 +14,29 @@
from regula.documentreader.webclient.gen.models.check_result import CheckResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DetailsOptical(BaseModel):
"""
Details on performed optical checks
""" # noqa: E501
- overall_status: CheckResult = Field(alias="overallStatus")
- doc_type: CheckResult = Field(alias="docType")
- expiry: CheckResult
- image_qa: CheckResult = Field(alias="imageQA")
- mrz: CheckResult
- pages_count: StrictInt = Field(description="Number of processed pages in the document", alias="pagesCount")
- security: CheckResult
- text: CheckResult
- vds: Optional[StrictInt] = None
+ overall_status: SkipValidation[CheckResult] = Field(alias="overallStatus")
+ doc_type: SkipValidation[CheckResult] = Field(alias="docType")
+ expiry: SkipValidation[CheckResult] = Field(alias="expiry")
+ image_qa: SkipValidation[CheckResult] = Field(alias="imageQA")
+ mrz: SkipValidation[CheckResult] = Field(alias="mrz")
+ pages_count: SkipValidation[int] = Field(alias="pagesCount", description="Number of processed pages in the document")
+ security: SkipValidation[CheckResult] = Field(alias="security")
+ text: SkipValidation[CheckResult] = Field(alias="text")
+ vds: SkipValidation[Optional[int]] = Field(alias="vds", default=None)
__properties: ClassVar[List[str]] = ["overallStatus", "docType", "expiry", "imageQA", "mrz", "pagesCount", "security", "text", "vds"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/details_rfid.py b/regula/documentreader/webclient/gen/models/details_rfid.py
index 64ac8e0..c275d7d 100644
--- a/regula/documentreader/webclient/gen/models/details_rfid.py
+++ b/regula/documentreader/webclient/gen/models/details_rfid.py
@@ -14,24 +14,27 @@
from regula.documentreader.webclient.gen.models.check_result import CheckResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DetailsRFID(BaseModel):
"""
Details on performed RFID checks
""" # noqa: E501
- overall_status: CheckResult = Field(alias="overallStatus")
- aa: CheckResult = Field(alias="AA")
- bac: CheckResult = Field(alias="BAC")
- ca: CheckResult = Field(alias="CA")
- pa: CheckResult = Field(alias="PA")
- pace: CheckResult = Field(alias="PACE")
- ta: CheckResult = Field(alias="TA")
+ overall_status: SkipValidation[CheckResult] = Field(alias="overallStatus")
+ aa: SkipValidation[CheckResult] = Field(alias="AA")
+ bac: SkipValidation[CheckResult] = Field(alias="BAC")
+ ca: SkipValidation[CheckResult] = Field(alias="CA")
+ pa: SkipValidation[CheckResult] = Field(alias="PA")
+ pace: SkipValidation[CheckResult] = Field(alias="PACE")
+ ta: SkipValidation[CheckResult] = Field(alias="TA")
__properties: ClassVar[List[str]] = ["overallStatus", "AA", "BAC", "CA", "PA", "PACE", "TA"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/device_info.py b/regula/documentreader/webclient/gen/models/device_info.py
index baa9572..5733e34 100644
--- a/regula/documentreader/webclient/gen/models/device_info.py
+++ b/regula/documentreader/webclient/gen/models/device_info.py
@@ -15,27 +15,30 @@
from regula.documentreader.webclient.gen.models.device_info_documents_database import DeviceInfoDocumentsDatabase
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DeviceInfo(BaseModel):
"""
DeviceInfo
""" # noqa: E501
- app_name: Optional[StrictStr] = Field(default=None, description="Application name.", alias="app-name")
- version: Optional[StrictStr] = Field(default=None, description="Product version.")
- license_id: Optional[StrictStr] = Field(default=None, description="Unique license identifier.", alias="license-id")
- license_serial: Optional[StrictStr] = Field(default=None, description="License serial number.", alias="license-serial")
- license_type: Optional[StrictStr] = Field(default=None, alias="license-type")
- valid_until: Optional[datetime] = Field(default=None, description="License validity date.", alias="valid-until")
- server_time: Optional[StrictStr] = Field(default=None, alias="server-time")
- supported_scenarios: Optional[List[StrictStr]] = Field(default=None, description="List of supported scenarios.", alias="supported-scenarios")
- metadata: Optional[Dict[str, Any]] = None
- documents_database: Optional[DeviceInfoDocumentsDatabase] = Field(default=None, alias="documents-database")
+ app_name: SkipValidation[Optional[str]] = Field(alias="app-name", default=None, description="Application name.")
+ version: SkipValidation[Optional[str]] = Field(alias="version", default=None, description="Product version.")
+ license_id: SkipValidation[Optional[str]] = Field(alias="license-id", default=None, description="Unique license identifier.")
+ license_serial: SkipValidation[Optional[str]] = Field(alias="license-serial", default=None, description="License serial number.")
+ license_type: SkipValidation[Optional[str]] = Field(alias="license-type", default=None)
+ valid_until: SkipValidation[Optional[datetime]] = Field(alias="valid-until", default=None, description="License validity date.")
+ server_time: SkipValidation[Optional[str]] = Field(alias="server-time", default=None)
+ supported_scenarios: SkipValidation[Optional[List[str]]] = Field(alias="supported-scenarios", default=None, description="List of supported scenarios.")
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None)
+ documents_database: SkipValidation[Optional[DeviceInfoDocumentsDatabase]] = Field(alias="documents-database", default=None)
__properties: ClassVar[List[str]] = ["app-name", "version", "license-id", "license-serial", "license-type", "valid-until", "server-time", "supported-scenarios", "metadata", "documents-database"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -72,7 +75,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of documents_database
- if self.documents_database:
+ if self.documents_database and isinstance(self.documents_database, DeviceInfoDocumentsDatabase):
_dict['documents-database'] = self.documents_database.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/device_info_documents_database.py b/regula/documentreader/webclient/gen/models/device_info_documents_database.py
index 36cb856..4e177c2 100644
--- a/regula/documentreader/webclient/gen/models/device_info_documents_database.py
+++ b/regula/documentreader/webclient/gen/models/device_info_documents_database.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DeviceInfoDocumentsDatabase(BaseModel):
"""
Database information.
""" # noqa: E501
- id: Optional[StrictStr] = Field(description="Database identifier.")
- version: Optional[StrictStr] = Field(description="Database version.")
- export_date: Optional[StrictStr] = Field(description="Date of database creation.", alias="export-date")
- description: Optional[StrictStr] = Field(description="Description of the database contents, such as the list of supported countries and documents.")
+ id: SkipValidation[str] = Field(alias="id", description="Database identifier.")
+ version: SkipValidation[str] = Field(alias="version", description="Database version.")
+ export_date: SkipValidation[str] = Field(alias="export-date", description="Date of database creation.")
+ description: SkipValidation[str] = Field(alias="description", description="Description of the database contents, such as the list of supported countries and documents.")
__properties: ClassVar[List[str]] = ["id", "version", "export-date", "description"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/doc_bar_code_info.py b/regula/documentreader/webclient/gen/models/doc_bar_code_info.py
index 480fa5a..29ce99c 100644
--- a/regula/documentreader/webclient/gen/models/doc_bar_code_info.py
+++ b/regula/documentreader/webclient/gen/models/doc_bar_code_info.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocBarCodeInfo(ResultItem):
"""
Raw data from BarCodes
""" # noqa: E501
- doc_bar_code_info: DocBarCodeInfoFieldsList = Field(alias="DocBarCodeInfo")
+ doc_bar_code_info: SkipValidation[DocBarCodeInfoFieldsList] = Field(alias="DocBarCodeInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "DocBarCodeInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_bar_code_info
- if self.doc_bar_code_info:
+ if self.doc_bar_code_info and isinstance(self.doc_bar_code_info, DocBarCodeInfoFieldsList):
_dict['DocBarCodeInfo'] = self.doc_bar_code_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py b/regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py
index 2fdaf07..875eeb5 100644
--- a/regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py
+++ b/regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.p_array_field import PArrayField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocBarCodeInfoFieldsList(BaseModel):
"""
DocBarCodeInfoFieldsList
""" # noqa: E501
- n_fields: StrictInt = Field(description="Count of array fields", alias="nFields")
- p_array_fields: List[PArrayField] = Field(description="Data from barcode", alias="pArrayFields")
+ n_fields: SkipValidation[int] = Field(alias="nFields", description="Count of array fields")
+ p_array_fields: SkipValidation[List[PArrayField]] = Field(alias="pArrayFields", description="Data from barcode")
__properties: ClassVar[List[str]] = ["nFields", "pArrayFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.p_array_fields:
for _item_p_array_fields in self.p_array_fields:
- if _item_p_array_fields:
+ if _item_p_array_fields and hasattr(_item_p_array_fields, "to_dict"):
_items.append(_item_p_array_fields.to_dict())
_dict['pArrayFields'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py b/regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py
index 8869af6..82e4452 100644
--- a/regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py
+++ b/regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.doc_bar_code_info_fields_list import DocBarCodeInfoFieldsList
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocBarCodeInfoItem(BaseModel):
"""
DocBarCodeInfoItem
""" # noqa: E501
- doc_bar_code_info: DocBarCodeInfoFieldsList = Field(alias="DocBarCodeInfo")
+ doc_bar_code_info: SkipValidation[DocBarCodeInfoFieldsList] = Field(alias="DocBarCodeInfo")
__properties: ClassVar[List[str]] = ["DocBarCodeInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_bar_code_info
- if self.doc_bar_code_info:
+ if self.doc_bar_code_info and isinstance(self.doc_bar_code_info, DocBarCodeInfoFieldsList):
_dict['DocBarCodeInfo'] = self.doc_bar_code_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_feature.py b/regula/documentreader/webclient/gen/models/doc_feature.py
new file mode 100644
index 0000000..b9e5f9a
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/doc_feature.py
@@ -0,0 +1,88 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
+from typing import Any, ClassVar, Dict, List, Union
+from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class DocFeature(BaseModel):
+ """
+ DocFeature
+ """ # noqa: E501
+ type: SkipValidation[float] = Field(alias="Type")
+ data: SkipValidation[TrfFtBytes] = Field(alias="Data")
+ __properties: ClassVar[List[str]] = ["Type", "Data"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of DocFeature from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of data
+ if self.data and isinstance(self.data, TrfFtBytes):
+ _dict['Data'] = self.data.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of DocFeature from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "Type": obj.get("Type"),
+ "Data": TrfFtBytes.from_dict(obj["Data"]) if obj.get("Data") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/doc_graphics_info_item.py b/regula/documentreader/webclient/gen/models/doc_graphics_info_item.py
index 5437eed..ccfd731 100644
--- a/regula/documentreader/webclient/gen/models/doc_graphics_info_item.py
+++ b/regula/documentreader/webclient/gen/models/doc_graphics_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.graphic_fields_list import GraphicFieldsList
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocGraphicsInfoItem(BaseModel):
"""
DocGraphicsInfoItem
""" # noqa: E501
- doc_graphics_info: GraphicFieldsList = Field(alias="DocGraphicsInfo")
+ doc_graphics_info: SkipValidation[GraphicFieldsList] = Field(alias="DocGraphicsInfo")
__properties: ClassVar[List[str]] = ["DocGraphicsInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_graphics_info
- if self.doc_graphics_info:
+ if self.doc_graphics_info and isinstance(self.doc_graphics_info, GraphicFieldsList):
_dict['DocGraphicsInfo'] = self.doc_graphics_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_visual_extended_field.py b/regula/documentreader/webclient/gen/models/doc_visual_extended_field.py
index 38185eb..b77c138 100644
--- a/regula/documentreader/webclient/gen/models/doc_visual_extended_field.py
+++ b/regula/documentreader/webclient/gen/models/doc_visual_extended_field.py
@@ -17,30 +17,33 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocVisualExtendedField(BaseModel):
"""
DocVisualExtendedField
""" # noqa: E501
- w_field_type: TextFieldType = Field(alias="wFieldType")
- field_name: StrictStr = Field(description="Field symbolic name (null-terminated string)", alias="FieldName")
- strings_count: Union[StrictFloat, StrictInt] = Field(description="Number of StringsResult array elements", alias="StringsCount")
- strings_result: List[StringRecognitionResult] = Field(description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.", alias="StringsResult")
- buf_length: Union[StrictFloat, StrictInt] = Field(description="Buf_Text text string length", alias="Buf_Length")
- buf_text: StrictStr = Field(description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'", alias="Buf_Text")
- field_mask: Optional[StrictStr] = Field(default=None, alias="FieldMask")
- validity: Optional[StrictInt] = Field(default=None, alias="Validity")
- in_comparison: Optional[StrictInt] = Field(default=None, alias="InComparison")
- w_lcid: Optional[LCID] = Field(default=None, alias="wLCID")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
- reserved3: Optional[StrictInt] = Field(default=None, alias="Reserved3")
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
+ w_field_type: SkipValidation[TextFieldType] = Field(alias="wFieldType")
+ field_name: SkipValidation[str] = Field(alias="FieldName", description="Field symbolic name (null-terminated string)")
+ strings_count: SkipValidation[float] = Field(alias="StringsCount", description="Number of StringsResult array elements")
+ strings_result: SkipValidation[List[StringRecognitionResult]] = Field(alias="StringsResult", description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.")
+ buf_length: SkipValidation[float] = Field(alias="Buf_Length", description="Buf_Text text string length")
+ buf_text: SkipValidation[Optional[str]] = Field(alias="Buf_Text", default=None, description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'")
+ field_mask: SkipValidation[Optional[str]] = Field(alias="FieldMask", default=None)
+ validity: SkipValidation[Optional[int]] = Field(alias="Validity", default=None)
+ in_comparison: SkipValidation[Optional[int]] = Field(alias="InComparison", default=None)
+ w_lcid: SkipValidation[Optional[LCID]] = Field(alias="wLCID", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
+ reserved3: SkipValidation[Optional[int]] = Field(alias="Reserved3", default=None)
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
__properties: ClassVar[List[str]] = ["wFieldType", "FieldName", "StringsCount", "StringsResult", "Buf_Length", "Buf_Text", "FieldMask", "Validity", "InComparison", "wLCID", "Reserved2", "Reserved3", "FieldRect"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -80,11 +83,11 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.strings_result:
for _item_strings_result in self.strings_result:
- if _item_strings_result:
+ if _item_strings_result and hasattr(_item_strings_result, "to_dict"):
_items.append(_item_strings_result.to_dict())
_dict['StringsResult'] = _items
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py b/regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py
index 81290df..f2b4281 100644
--- a/regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py
+++ b/regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocVisualExtendedFieldItem(BaseModel):
"""
DocVisualExtendedFieldItem
""" # noqa: E501
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
__properties: ClassVar[List[str]] = ["FieldRect"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_visual_extended_info.py b/regula/documentreader/webclient/gen/models/doc_visual_extended_info.py
index 2131903..ecf58f0 100644
--- a/regula/documentreader/webclient/gen/models/doc_visual_extended_info.py
+++ b/regula/documentreader/webclient/gen/models/doc_visual_extended_info.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.doc_visual_extended_field import DocVisualExtendedField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocVisualExtendedInfo(BaseModel):
"""
Container for extracted text fields. Fields are identified by type and language
""" # noqa: E501
- n_fields: Union[StrictFloat, StrictInt] = Field(description="Number of pArrayFields array elements", alias="nFields")
- p_array_fields: List[DocVisualExtendedField] = Field(alias="pArrayFields")
+ n_fields: SkipValidation[float] = Field(alias="nFields", description="Number of pArrayFields array elements")
+ p_array_fields: SkipValidation[List[DocVisualExtendedField]] = Field(alias="pArrayFields")
__properties: ClassVar[List[str]] = ["nFields", "pArrayFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.p_array_fields:
for _item_p_array_fields in self.p_array_fields:
- if _item_p_array_fields:
+ if _item_p_array_fields and hasattr(_item_p_array_fields, "to_dict"):
_items.append(_item_p_array_fields.to_dict())
_dict['pArrayFields'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/doc_visual_extended_info_item.py b/regula/documentreader/webclient/gen/models/doc_visual_extended_info_item.py
index 357ec9a..05b0540 100644
--- a/regula/documentreader/webclient/gen/models/doc_visual_extended_info_item.py
+++ b/regula/documentreader/webclient/gen/models/doc_visual_extended_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.doc_visual_extended_info import DocVisualExtendedInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocVisualExtendedInfoItem(BaseModel):
"""
DocVisualExtendedInfoItem
""" # noqa: E501
- doc_visual_extended_info: DocVisualExtendedInfo = Field(alias="DocVisualExtendedInfo")
+ doc_visual_extended_info: SkipValidation[DocVisualExtendedInfo] = Field(alias="DocVisualExtendedInfo")
__properties: ClassVar[List[str]] = ["DocVisualExtendedInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_visual_extended_info
- if self.doc_visual_extended_info:
+ if self.doc_visual_extended_info and isinstance(self.doc_visual_extended_info, DocVisualExtendedInfo):
_dict['DocVisualExtendedInfo'] = self.doc_visual_extended_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_binary_info_result.py b/regula/documentreader/webclient/gen/models/document_binary_info_result.py
index 70fce2d..2054145 100644
--- a/regula/documentreader/webclient/gen/models/document_binary_info_result.py
+++ b/regula/documentreader/webclient/gen/models/document_binary_info_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentBinaryInfoResult(ResultItem):
"""
Structure is used to store the data reading results from the RFID-chip in a form of a list of the logically separated data groups.
""" # noqa: E501
- t_doc_binary_info: TDocBinaryInfo = Field(alias="TDocBinaryInfo")
+ t_doc_binary_info: SkipValidation[TDocBinaryInfo] = Field(alias="TDocBinaryInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "TDocBinaryInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of t_doc_binary_info
- if self.t_doc_binary_info:
+ if self.t_doc_binary_info and isinstance(self.t_doc_binary_info, TDocBinaryInfo):
_dict['TDocBinaryInfo'] = self.t_doc_binary_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_image.py b/regula/documentreader/webclient/gen/models/document_image.py
index cca1dbc..c7b3853 100644
--- a/regula/documentreader/webclient/gen/models/document_image.py
+++ b/regula/documentreader/webclient/gen/models/document_image.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentImage(BaseModel):
"""
DocumentImage
""" # noqa: E501
- image: Optional[StrictStr] = Field(default=None, description="Base64 encoded image")
- format: Optional[StrictStr] = Field(default=None, description="Image format")
+ image: SkipValidation[Optional[str]] = Field(alias="image", default=None, description="Base64 encoded image")
+ format: SkipValidation[Optional[str]] = Field(alias="format", default=None, description="Image format")
__properties: ClassVar[List[str]] = ["image", "format"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/document_image_result.py b/regula/documentreader/webclient/gen/models/document_image_result.py
index ec09c62..321805f 100644
--- a/regula/documentreader/webclient/gen/models/document_image_result.py
+++ b/regula/documentreader/webclient/gen/models/document_image_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentImageResult(ResultItem):
"""
Contains document image.
""" # noqa: E501
- raw_image_container: ImageData = Field(alias="RawImageContainer")
+ raw_image_container: SkipValidation[ImageData] = Field(alias="RawImageContainer")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "RawImageContainer"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of raw_image_container
- if self.raw_image_container:
+ if self.raw_image_container and isinstance(self.raw_image_container, ImageData):
_dict['RawImageContainer'] = self.raw_image_container.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_position.py b/regula/documentreader/webclient/gen/models/document_position.py
index 5d72185..80963b5 100644
--- a/regula/documentreader/webclient/gen/models/document_position.py
+++ b/regula/documentreader/webclient/gen/models/document_position.py
@@ -15,32 +15,35 @@
from regula.documentreader.webclient.gen.models.point import Point
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentPosition(BaseModel):
"""
DocumentPosition
""" # noqa: E501
- doc_format: DocumentFormat = Field(alias="docFormat")
- angle: Union[StrictFloat, StrictInt] = Field(description="Document rotation angle", alias="Angle")
- width: StrictInt = Field(description="Document width", alias="Width")
- height: StrictInt = Field(description="Document height", alias="Height")
- center: Point = Field(alias="Center")
- left_bottom: Point = Field(alias="LeftBottom")
- left_top: Point = Field(alias="LeftTop")
- right_bottom: Point = Field(alias="RightBottom")
- right_top: Point = Field(alias="RightTop")
- dpi: StrictInt = Field(alias="Dpi")
- inverse: Optional[StrictInt] = Field(default=None, alias="Inverse")
- obj_area: Optional[StrictInt] = Field(default=None, alias="ObjArea")
- obj_int_angle_dev: Optional[StrictInt] = Field(default=None, alias="ObjIntAngleDev")
- perspective_tr: Optional[StrictInt] = Field(default=None, alias="PerspectiveTr")
- result_status: Optional[StrictInt] = Field(default=None, alias="ResultStatus")
+ doc_format: SkipValidation[DocumentFormat] = Field(alias="docFormat")
+ angle: SkipValidation[float] = Field(alias="Angle", description="Document rotation angle")
+ width: SkipValidation[int] = Field(alias="Width", description="Document width")
+ height: SkipValidation[int] = Field(alias="Height", description="Document height")
+ center: SkipValidation[Point] = Field(alias="Center")
+ left_bottom: SkipValidation[Point] = Field(alias="LeftBottom")
+ left_top: SkipValidation[Point] = Field(alias="LeftTop")
+ right_bottom: SkipValidation[Point] = Field(alias="RightBottom")
+ right_top: SkipValidation[Point] = Field(alias="RightTop")
+ dpi: SkipValidation[int] = Field(alias="Dpi")
+ inverse: SkipValidation[Optional[int]] = Field(alias="Inverse", default=None)
+ obj_area: SkipValidation[Optional[int]] = Field(alias="ObjArea", default=None)
+ obj_int_angle_dev: SkipValidation[Optional[int]] = Field(alias="ObjIntAngleDev", default=None)
+ perspective_tr: SkipValidation[Optional[int]] = Field(alias="PerspectiveTr", default=None)
+ result_status: SkipValidation[Optional[int]] = Field(alias="ResultStatus", default=None)
__properties: ClassVar[List[str]] = ["docFormat", "Angle", "Width", "Height", "Center", "LeftBottom", "LeftTop", "RightBottom", "RightTop", "Dpi", "Inverse", "ObjArea", "ObjIntAngleDev", "PerspectiveTr", "ResultStatus"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -77,19 +80,19 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of center
- if self.center:
+ if self.center and isinstance(self.center, Point):
_dict['Center'] = self.center.to_dict()
# override the default output from pydantic by calling `to_dict()` of left_bottom
- if self.left_bottom:
+ if self.left_bottom and isinstance(self.left_bottom, Point):
_dict['LeftBottom'] = self.left_bottom.to_dict()
# override the default output from pydantic by calling `to_dict()` of left_top
- if self.left_top:
+ if self.left_top and isinstance(self.left_top, Point):
_dict['LeftTop'] = self.left_top.to_dict()
# override the default output from pydantic by calling `to_dict()` of right_bottom
- if self.right_bottom:
+ if self.right_bottom and isinstance(self.right_bottom, Point):
_dict['RightBottom'] = self.right_bottom.to_dict()
# override the default output from pydantic by calling `to_dict()` of right_top
- if self.right_top:
+ if self.right_top and isinstance(self.right_top, Point):
_dict['RightTop'] = self.right_top.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_position_item.py b/regula/documentreader/webclient/gen/models/document_position_item.py
index b39e6d8..e31e7a5 100644
--- a/regula/documentreader/webclient/gen/models/document_position_item.py
+++ b/regula/documentreader/webclient/gen/models/document_position_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentPositionItem(BaseModel):
"""
DocumentPositionItem
""" # noqa: E501
- document_position: DocumentPosition = Field(alias="DocumentPosition")
+ document_position: SkipValidation[DocumentPosition] = Field(alias="DocumentPosition")
__properties: ClassVar[List[str]] = ["DocumentPosition"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of document_position
- if self.document_position:
+ if self.document_position and isinstance(self.document_position, DocumentPosition):
_dict['DocumentPosition'] = self.document_position.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_position_result.py b/regula/documentreader/webclient/gen/models/document_position_result.py
index a840e60..49eff8d 100644
--- a/regula/documentreader/webclient/gen/models/document_position_result.py
+++ b/regula/documentreader/webclient/gen/models/document_position_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentPositionResult(ResultItem):
"""
Contains information about document position on the input image, its center, angle, etc
""" # noqa: E501
- document_position: DocumentPosition = Field(alias="DocumentPosition")
+ document_position: SkipValidation[DocumentPosition] = Field(alias="DocumentPosition")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "DocumentPosition"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of document_position
- if self.document_position:
+ if self.document_position and isinstance(self.document_position, DocumentPosition):
_dict['DocumentPosition'] = self.document_position.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_types_candidates.py b/regula/documentreader/webclient/gen/models/document_types_candidates.py
index 628e880..077284e 100644
--- a/regula/documentreader/webclient/gen/models/document_types_candidates.py
+++ b/regula/documentreader/webclient/gen/models/document_types_candidates.py
@@ -15,19 +15,22 @@
from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentTypesCandidates(BaseModel):
"""
DocumentTypesCandidates
""" # noqa: E501
- rec_result: Optional[DocumentTypeRecognitionResult] = Field(default=None, alias="RecResult")
- candidates: Optional[List[OneCandidate]] = Field(default=None, alias="Candidates")
+ rec_result: SkipValidation[Optional[DocumentTypeRecognitionResult]] = Field(alias="RecResult", default=None)
+ candidates: SkipValidation[Optional[List[OneCandidate]]] = Field(alias="Candidates", default=None)
__properties: ClassVar[List[str]] = ["RecResult", "Candidates"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.candidates:
for _item_candidates in self.candidates:
- if _item_candidates:
+ if _item_candidates and hasattr(_item_candidates, "to_dict"):
_items.append(_item_candidates.to_dict())
_dict['Candidates'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_types_candidates_list.py b/regula/documentreader/webclient/gen/models/document_types_candidates_list.py
index 87ab948..b78e764 100644
--- a/regula/documentreader/webclient/gen/models/document_types_candidates_list.py
+++ b/regula/documentreader/webclient/gen/models/document_types_candidates_list.py
@@ -15,19 +15,22 @@
from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentTypesCandidatesList(BaseModel):
"""
DocumentTypesCandidatesList
""" # noqa: E501
- rec_result: Optional[DocumentTypeRecognitionResult] = Field(default=None, alias="RecResult")
- candidates: Optional[List[OneCandidate]] = Field(default=None, alias="Candidates")
+ rec_result: SkipValidation[Optional[DocumentTypeRecognitionResult]] = Field(alias="RecResult", default=None)
+ candidates: SkipValidation[Optional[List[OneCandidate]]] = Field(alias="Candidates", default=None)
__properties: ClassVar[List[str]] = ["RecResult", "Candidates"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.candidates:
for _item_candidates in self.candidates:
- if _item_candidates:
+ if _item_candidates and hasattr(_item_candidates, "to_dict"):
_items.append(_item_candidates.to_dict())
_dict['Candidates'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/document_types_candidates_result.py b/regula/documentreader/webclient/gen/models/document_types_candidates_result.py
index b341d37..4a8bc3b 100644
--- a/regula/documentreader/webclient/gen/models/document_types_candidates_result.py
+++ b/regula/documentreader/webclient/gen/models/document_types_candidates_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentTypesCandidatesResult(ResultItem):
"""
DocumentTypesCandidatesResult
""" # noqa: E501
- candidates_list: Optional[DocumentTypesCandidatesList] = Field(default=None, alias="CandidatesList")
+ candidates_list: SkipValidation[Optional[DocumentTypesCandidatesList]] = Field(alias="CandidatesList", default=None)
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "CandidatesList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of candidates_list
- if self.candidates_list:
+ if self.candidates_list and isinstance(self.candidates_list, DocumentTypesCandidatesList):
_dict['CandidatesList'] = self.candidates_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/documents_database.py b/regula/documentreader/webclient/gen/models/documents_database.py
index 47f3a86..31d5efa 100644
--- a/regula/documentreader/webclient/gen/models/documents_database.py
+++ b/regula/documentreader/webclient/gen/models/documents_database.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class DocumentsDatabase(BaseModel):
"""
Document database information
""" # noqa: E501
- description: Optional[StrictStr] = Field(default=None, description="Document database description", alias="Description")
- export_date: Optional[StrictStr] = Field(default=None, description="Date the document database was created", alias="ExportDate")
- id: Optional[StrictStr] = Field(default=None, description="Document database identifier", alias="ID")
- version: Optional[StrictStr] = Field(default=None, description="Document database version", alias="Version")
+ description: SkipValidation[Optional[str]] = Field(alias="Description", default=None, description="Document database description")
+ export_date: SkipValidation[Optional[str]] = Field(alias="ExportDate", default=None, description="Date the document database was created")
+ id: SkipValidation[Optional[str]] = Field(alias="ID", default=None, description="Document database identifier")
+ version: SkipValidation[Optional[str]] = Field(alias="Version", default=None, description="Document database version")
__properties: ClassVar[List[str]] = ["Description", "ExportDate", "ID", "Version"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/encrypted_rcl_item.py b/regula/documentreader/webclient/gen/models/encrypted_rcl_item.py
index 735de62..57dbaa5 100644
--- a/regula/documentreader/webclient/gen/models/encrypted_rcl_item.py
+++ b/regula/documentreader/webclient/gen/models/encrypted_rcl_item.py
@@ -13,18 +13,21 @@
from typing import Any, ClassVar, Dict, List, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class EncryptedRCLItem(BaseModel):
"""
EncryptedRCLItem
""" # noqa: E501
- encrypted_rcl: Union[StrictBytes, StrictStr] = Field(description="Base64 encoded data", alias="EncryptedRCL")
+ encrypted_rcl: SkipValidation[bytearray] = Field(alias="EncryptedRCL", description="Base64 encoded data")
__properties: ClassVar[List[str]] = ["EncryptedRCL"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/encrypted_rcl_result.py b/regula/documentreader/webclient/gen/models/encrypted_rcl_result.py
index 0920406..6fc224f 100644
--- a/regula/documentreader/webclient/gen/models/encrypted_rcl_result.py
+++ b/regula/documentreader/webclient/gen/models/encrypted_rcl_result.py
@@ -15,18 +15,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class EncryptedRCLResult(ResultItem):
"""
Contains encrypted result container list
""" # noqa: E501
- encrypted_rcl: Union[StrictBytes, StrictStr] = Field(description="Base64 encoded data", alias="EncryptedRCL")
+ encrypted_rcl: SkipValidation[bytearray] = Field(alias="EncryptedRCL", description="Base64 encoded data")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "EncryptedRCL"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/error_coordinates.py b/regula/documentreader/webclient/gen/models/error_coordinates.py
index 9b95cb0..8675e50 100644
--- a/regula/documentreader/webclient/gen/models/error_coordinates.py
+++ b/regula/documentreader/webclient/gen/models/error_coordinates.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ErrorCoordinates(BaseModel):
"""
ErrorCoordinates
""" # noqa: E501
- left: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="Left")
- top: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="Top")
- right: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="Right")
- bottom: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, alias="Bottom")
+ left: SkipValidation[Optional[float]] = Field(alias="Left", default=None)
+ top: SkipValidation[Optional[float]] = Field(alias="Top", default=None)
+ right: SkipValidation[Optional[float]] = Field(alias="Right", default=None)
+ bottom: SkipValidation[Optional[float]] = Field(alias="Bottom", default=None)
__properties: ClassVar[List[str]] = ["Left", "Top", "Right", "Bottom"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/face_api.py b/regula/documentreader/webclient/gen/models/face_api.py
index cdae3e6..58d6643 100644
--- a/regula/documentreader/webclient/gen/models/face_api.py
+++ b/regula/documentreader/webclient/gen/models/face_api.py
@@ -14,27 +14,30 @@
from regula.documentreader.webclient.gen.models.face_api_search import FaceApiSearch
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceApi(BaseModel):
"""
FaceApi
""" # noqa: E501
- url: Optional[StrictStr] = Field(default=None, description="The URL of the Regula Face Web service to be used.")
- mode: Optional[StrictStr] = Field(default=None, description="The processing mode: \"match\" or \"match+search\".")
- search: Optional[FaceApiSearch] = None
- threshold: Optional[StrictInt] = Field(default=None, description="The similarity threshold, 0-100. Above 75 means that the faces' similarity is verified, below 75 is not.")
- service_timeout: Optional[StrictInt] = Field(default=None, description="The Regula Face Web service requests timeout, ms.", alias="serviceTimeout")
- proxy: Optional[StrictStr] = Field(default=None, description="Proxy to use, should be set according to the cURL standard.")
- proxy_userpwd: Optional[StrictStr] = Field(default=None, description="Username and password to use for proxy authentication, should be set according to the cURL standard.")
- proxy_type: Optional[StrictInt] = Field(default=None, description="Proxy protocol type, should be set according to the cURL standard.")
- child_age_threshold: Optional[StrictInt] = Field(default=None, description="The age threshold for the portrait comparison. Default: 13.", alias="childAgeThreshold")
- child_doc_validity_years: Optional[StrictInt] = Field(default=None, description="Estimated duration of validity for a child's passport, years. Default: 5.", alias="childDocValidityYears")
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="The URL of the Regula Face Web service to be used.")
+ mode: SkipValidation[Optional[str]] = Field(alias="mode", default=None, description="The processing mode: \"match\" or \"match+search\".")
+ search: SkipValidation[Optional[FaceApiSearch]] = Field(alias="search", default=None)
+ threshold: SkipValidation[Optional[int]] = Field(alias="threshold", default=None, description="The similarity threshold, 0-100. Above 75 means that the faces' similarity is verified, below 75 is not.")
+ service_timeout: SkipValidation[Optional[int]] = Field(alias="serviceTimeout", default=None, description="The Regula Face Web service requests timeout, ms.")
+ proxy: SkipValidation[Optional[str]] = Field(alias="proxy", default=None, description="Proxy to use, should be set according to the cURL standard.")
+ proxy_userpwd: SkipValidation[Optional[str]] = Field(alias="proxy_userpwd", default=None, description="Username and password to use for proxy authentication, should be set according to the cURL standard.")
+ proxy_type: SkipValidation[Optional[int]] = Field(alias="proxy_type", default=None, description="Proxy protocol type, should be set according to the cURL standard.")
+ child_age_threshold: SkipValidation[Optional[int]] = Field(alias="childAgeThreshold", default=None, description="The age threshold for the portrait comparison. Default: 13.")
+ child_doc_validity_years: SkipValidation[Optional[int]] = Field(alias="childDocValidityYears", default=None, description="Estimated duration of validity for a child's passport, years. Default: 5.")
__properties: ClassVar[List[str]] = ["url", "mode", "search", "threshold", "serviceTimeout", "proxy", "proxy_userpwd", "proxy_type", "childAgeThreshold", "childDocValidityYears"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -71,7 +74,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of search
- if self.search:
+ if self.search and isinstance(self.search, FaceApiSearch):
_dict['search'] = self.search.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/face_api_search.py b/regula/documentreader/webclient/gen/models/face_api_search.py
index af98df7..d695a50 100644
--- a/regula/documentreader/webclient/gen/models/face_api_search.py
+++ b/regula/documentreader/webclient/gen/models/face_api_search.py
@@ -9,24 +9,27 @@
import re # noqa: F401
import json
-from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
+from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
from typing import Any, ClassVar, Dict, List, Optional, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceApiSearch(BaseModel):
"""
A search filter that can be applied if the \"match+search\" mode is enabled. May include limit, threshold, group_ids. If the group_ids are specified, the search is performed only in these groups. Find more information in the OpenAPI documentation.
""" # noqa: E501
- limit: Optional[StrictInt] = Field(default=None, description="The maximum number of results to be returned.")
- threshold: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="The similarity threshold.")
- group_ids: Optional[List[StrictInt]] = Field(default=None, description=" The groups where to conduct the search.")
+ limit: SkipValidation[Optional[int]] = Field(alias="limit", default=None, description="The maximum number of results to be returned.")
+ threshold: SkipValidation[Optional[float]] = Field(alias="threshold", default=None, description="The similarity threshold.")
+ group_ids: SkipValidation[Optional[List[str]]] = Field(alias="group_ids", default=None, description=" The groups where to conduct the search.")
__properties: ClassVar[List[str]] = ["limit", "threshold", "group_ids"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/face_detection.py b/regula/documentreader/webclient/gen/models/face_detection.py
index cf878be..1704e1d 100644
--- a/regula/documentreader/webclient/gen/models/face_detection.py
+++ b/regula/documentreader/webclient/gen/models/face_detection.py
@@ -14,22 +14,25 @@
from regula.documentreader.webclient.gen.models.face_item import FaceItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceDetection(BaseModel):
"""
FaceDetection
""" # noqa: E501
- count: StrictInt = Field(alias="Count")
- count_false_detection: StrictInt = Field(alias="CountFalseDetection")
- res: List[FaceItem] = Field(alias="Res")
- reserved1: Optional[StrictInt] = Field(default=None, alias="Reserved1")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
+ count: SkipValidation[int] = Field(alias="Count")
+ count_false_detection: SkipValidation[int] = Field(alias="CountFalseDetection")
+ res: SkipValidation[List[FaceItem]] = Field(alias="Res")
+ reserved1: SkipValidation[Optional[int]] = Field(alias="Reserved1", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
__properties: ClassVar[List[str]] = ["Count", "CountFalseDetection", "Res", "Reserved1", "Reserved2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,7 +72,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.res:
for _item_res in self.res:
- if _item_res:
+ if _item_res and hasattr(_item_res, "to_dict"):
_items.append(_item_res.to_dict())
_dict['Res'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/face_detection_item.py b/regula/documentreader/webclient/gen/models/face_detection_item.py
index 2897f60..34d4507 100644
--- a/regula/documentreader/webclient/gen/models/face_detection_item.py
+++ b/regula/documentreader/webclient/gen/models/face_detection_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.face_detection import FaceDetection
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceDetectionItem(BaseModel):
"""
FaceDetectionItem
""" # noqa: E501
- face_detection: Optional[FaceDetection] = Field(default=None, alias="FaceDetection")
+ face_detection: SkipValidation[Optional[FaceDetection]] = Field(alias="FaceDetection", default=None)
__properties: ClassVar[List[str]] = ["FaceDetection"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of face_detection
- if self.face_detection:
+ if self.face_detection and isinstance(self.face_detection, FaceDetection):
_dict['FaceDetection'] = self.face_detection.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/face_detection_result.py b/regula/documentreader/webclient/gen/models/face_detection_result.py
index 7621e29..e623146 100644
--- a/regula/documentreader/webclient/gen/models/face_detection_result.py
+++ b/regula/documentreader/webclient/gen/models/face_detection_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceDetectionResult(ResultItem):
"""
FaceDetectionResult
""" # noqa: E501
- face_detection: Optional[FaceDetection] = Field(default=None, alias="FaceDetection")
+ face_detection: SkipValidation[Optional[FaceDetection]] = Field(alias="FaceDetection", default=None)
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "FaceDetection"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of face_detection
- if self.face_detection:
+ if self.face_detection and isinstance(self.face_detection, FaceDetection):
_dict['FaceDetection'] = self.face_detection.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/face_item.py b/regula/documentreader/webclient/gen/models/face_item.py
index b174f1b..700ae8e 100644
--- a/regula/documentreader/webclient/gen/models/face_item.py
+++ b/regula/documentreader/webclient/gen/models/face_item.py
@@ -16,25 +16,28 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FaceItem(BaseModel):
"""
FaceItem
""" # noqa: E501
- coincidence_to_photo_area: StrictInt = Field(alias="CoincidenceToPhotoArea")
- face_rect: RectangleCoordinates = Field(alias="FaceRect")
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
- graph_field_number: StrictInt = Field(alias="GraphFieldNumber")
- landmarks: List[Point] = Field(alias="Landmarks")
- light_type: Light = Field(alias="LightType")
- orientation: StrictInt = Field(alias="Orientation")
- probability: StrictInt = Field(alias="Probability")
+ coincidence_to_photo_area: SkipValidation[int] = Field(alias="CoincidenceToPhotoArea")
+ face_rect: SkipValidation[RectangleCoordinates] = Field(alias="FaceRect")
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
+ graph_field_number: SkipValidation[int] = Field(alias="GraphFieldNumber")
+ landmarks: SkipValidation[List[Point]] = Field(alias="Landmarks")
+ light_type: SkipValidation[Light] = Field(alias="LightType")
+ orientation: SkipValidation[int] = Field(alias="Orientation")
+ probability: SkipValidation[int] = Field(alias="Probability")
__properties: ClassVar[List[str]] = ["CoincidenceToPhotoArea", "FaceRect", "FieldRect", "GraphFieldNumber", "Landmarks", "LightType", "Orientation", "Probability"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -71,16 +74,16 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of face_rect
- if self.face_rect:
+ if self.face_rect and isinstance(self.face_rect, RectangleCoordinates):
_dict['FaceRect'] = self.face_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in landmarks (list)
_items = []
if self.landmarks:
for _item_landmarks in self.landmarks:
- if _item_landmarks:
+ if _item_landmarks and hasattr(_item_landmarks, "to_dict"):
_items.append(_item_landmarks.to_dict())
_dict['Landmarks'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/fdsid_list.py b/regula/documentreader/webclient/gen/models/fdsid_list.py
index 669b1a1..2906a11 100644
--- a/regula/documentreader/webclient/gen/models/fdsid_list.py
+++ b/regula/documentreader/webclient/gen/models/fdsid_list.py
@@ -16,29 +16,32 @@
from regula.documentreader.webclient.gen.models.document_type import DocumentType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FDSIDList(BaseModel):
"""
Extended document type info and Regula's 'Information Reference Systems' links
""" # noqa: E501
- icao_code: Annotated[str, Field(min_length=3, strict=True, max_length=3)] = Field(description="ICAO code of the issuing country", alias="ICAOCode")
- count: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Number of elements in the List", alias="Count")
- list: Optional[List[StrictInt]] = Field(default=None, description="Document identifiers in 'Information Reference Systems'", alias="List")
- d_type: DocumentType = Field(alias="dType")
- d_format: DocumentFormat = Field(alias="dFormat")
- d_mrz: StrictBool = Field(description="Flag indicating the presence of MRZ on the document", alias="dMRZ")
- d_description: Optional[StrictStr] = Field(default=None, description="Document description", alias="dDescription")
- d_year: Optional[StrictStr] = Field(default=None, description="Year of publication of the document", alias="dYear")
- d_country_name: StrictStr = Field(description="Issuing country name", alias="dCountryName")
- d_state_code: Optional[StrictStr] = Field(default=None, description="Issuing state code", alias="dStateCode")
- d_state_name: Optional[StrictStr] = Field(default=None, description="Issuing state name", alias="dStateName")
- is_deprecated: StrictBool = Field(description="Whether the document is deprecated", alias="isDeprecated")
+ icao_code: SkipValidation[str] = Field(alias="ICAOCode", description="ICAO code of the issuing country")
+ count: SkipValidation[Optional[float]] = Field(alias="Count", default=None, description="Number of elements in the List")
+ list: SkipValidation[Optional[List[int]]] = Field(alias="List", default=None, description="Document identifiers in 'Information Reference Systems'")
+ d_type: SkipValidation[DocumentType] = Field(alias="dType")
+ d_format: SkipValidation[DocumentFormat] = Field(alias="dFormat")
+ d_mrz: SkipValidation[bool] = Field(alias="dMRZ", description="Flag indicating the presence of MRZ on the document")
+ d_description: SkipValidation[Optional[str]] = Field(alias="dDescription", default=None, description="Document description")
+ d_year: SkipValidation[Optional[str]] = Field(alias="dYear", default=None, description="Year of publication of the document")
+ d_country_name: SkipValidation[str] = Field(alias="dCountryName", description="Issuing country name")
+ d_state_code: SkipValidation[Optional[str]] = Field(alias="dStateCode", default=None, description="Issuing state code")
+ d_state_name: SkipValidation[Optional[str]] = Field(alias="dStateName", default=None, description="Issuing state name")
+ is_deprecated: SkipValidation[bool] = Field(alias="isDeprecated", description="Whether the document is deprecated")
__properties: ClassVar[List[str]] = ["ICAOCode", "Count", "List", "dType", "dFormat", "dMRZ", "dDescription", "dYear", "dCountryName", "dStateCode", "dStateName", "isDeprecated"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/fiber_item.py b/regula/documentreader/webclient/gen/models/fiber_item.py
index fbfd310..39519f4 100644
--- a/regula/documentreader/webclient/gen/models/fiber_item.py
+++ b/regula/documentreader/webclient/gen/models/fiber_item.py
@@ -15,26 +15,29 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FiberItem(BaseModel):
"""
FiberItem
""" # noqa: E501
- rect_count: StrictInt = Field(description="For UV_Fibers authenticity result type", alias="RectCount")
- expected_count: StrictInt = Field(description="Expected fibers number. For UV_Fibers authentication result type", alias="ExpectedCount")
- light_value: Optional[Light] = Field(default=None, alias="LightValue")
- light_disp: Optional[StrictInt] = Field(default=None, description="For UV_Background authentication result type", alias="LightDisp")
- rect_array: List[RectangleCoordinates] = Field(description="Coordinates of located areas for defined fibers type", alias="RectArray")
- width: List[StrictInt] = Field(description="Fibers width value for located areas (in pixels)", alias="Width")
- length: List[StrictInt] = Field(description="Fibers length value for located areas (in pixels)", alias="Length")
- area: List[StrictInt] = Field(description="Fibers value for areas (in pixels)", alias="Area")
- color_values: List[StrictInt] = Field(description="Fibers color value", alias="ColorValues")
+ rect_count: SkipValidation[int] = Field(alias="RectCount", description="For UV_Fibers authenticity result type")
+ expected_count: SkipValidation[int] = Field(alias="ExpectedCount", description="Expected fibers number. For UV_Fibers authentication result type")
+ light_value: SkipValidation[Optional[Light]] = Field(alias="LightValue", default=None)
+ light_disp: SkipValidation[Optional[int]] = Field(alias="LightDisp", default=None, description="For UV_Background authentication result type")
+ rect_array: SkipValidation[List[RectangleCoordinates]] = Field(alias="RectArray", description="Coordinates of located areas for defined fibers type")
+ width: SkipValidation[List[int]] = Field(alias="Width", description="Fibers width value for located areas (in pixels)")
+ length: SkipValidation[List[int]] = Field(alias="Length", description="Fibers length value for located areas (in pixels)")
+ area: SkipValidation[List[int]] = Field(alias="Area", description="Fibers value for areas (in pixels)")
+ color_values: SkipValidation[List[int]] = Field(alias="ColorValues", description="Fibers color value")
__properties: ClassVar[List[str]] = ["RectCount", "ExpectedCount", "LightValue", "LightDisp", "RectArray", "Width", "Length", "Area", "ColorValues"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -74,7 +77,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.rect_array:
for _item_rect_array in self.rect_array:
- if _item_rect_array:
+ if _item_rect_array and hasattr(_item_rect_array, "to_dict"):
_items.append(_item_rect_array.to_dict())
_dict['RectArray'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/fiber_result.py b/regula/documentreader/webclient/gen/models/fiber_result.py
index 2fc872b..27608ba 100644
--- a/regula/documentreader/webclient/gen/models/fiber_result.py
+++ b/regula/documentreader/webclient/gen/models/fiber_result.py
@@ -19,26 +19,29 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FiberResult(AuthenticityCheckResultItem):
"""
FiberResult
""" # noqa: E501
- rect_count: StrictInt = Field(description="For UV_Fibers authenticity result type", alias="RectCount")
- expected_count: StrictInt = Field(description="Expected fibers number. For UV_Fibers authentication result type", alias="ExpectedCount")
- light_value: Optional[Light] = Field(default=None, alias="LightValue")
- light_disp: Optional[StrictInt] = Field(default=None, description="For UV_Background authentication result type", alias="LightDisp")
- rect_array: List[RectangleCoordinates] = Field(description="Coordinates of located areas for defined fibers type", alias="RectArray")
- width: List[StrictInt] = Field(description="Fibers width value for located areas (in pixels)", alias="Width")
- length: List[StrictInt] = Field(description="Fibers length value for located areas (in pixels)", alias="Length")
- area: List[StrictInt] = Field(description="Fibers value for areas (in pixels)", alias="Area")
- color_values: List[StrictInt] = Field(description="Fibers color value", alias="ColorValues")
+ rect_count: SkipValidation[int] = Field(alias="RectCount", description="For UV_Fibers authenticity result type")
+ expected_count: SkipValidation[int] = Field(alias="ExpectedCount", description="Expected fibers number. For UV_Fibers authentication result type")
+ light_value: SkipValidation[Optional[Light]] = Field(alias="LightValue", default=None)
+ light_disp: SkipValidation[Optional[int]] = Field(alias="LightDisp", default=None, description="For UV_Background authentication result type")
+ rect_array: SkipValidation[List[RectangleCoordinates]] = Field(alias="RectArray", description="Coordinates of located areas for defined fibers type")
+ width: SkipValidation[List[int]] = Field(alias="Width", description="Fibers width value for located areas (in pixels)")
+ length: SkipValidation[List[int]] = Field(alias="Length", description="Fibers length value for located areas (in pixels)")
+ area: SkipValidation[List[int]] = Field(alias="Area", description="Fibers value for areas (in pixels)")
+ color_values: SkipValidation[List[int]] = Field(alias="ColorValues", description="Fibers color value")
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue", "RectCount", "ExpectedCount", "LightValue", "LightDisp", "RectArray", "Width", "Length", "Area", "ColorValues"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -78,7 +81,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.rect_array:
for _item_rect_array in self.rect_array:
- if _item_rect_array:
+ if _item_rect_array and hasattr(_item_rect_array, "to_dict"):
_items.append(_item_rect_array.to_dict())
_dict['RectArray'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/field_item.py b/regula/documentreader/webclient/gen/models/field_item.py
index a28bb90..08b2111 100644
--- a/regula/documentreader/webclient/gen/models/field_item.py
+++ b/regula/documentreader/webclient/gen/models/field_item.py
@@ -13,23 +13,26 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FieldItem(BaseModel):
"""
FieldItem
""" # noqa: E501
- field_length: StrictInt = Field(alias="FieldLength")
- field_pos: StrictInt = Field(alias="FieldPos")
- field_type: StrictInt = Field(alias="FieldType")
- test_result: StrictInt = Field(alias="TEST_RESULT")
- valid_check_sum: StrictInt = Field(alias="ValidCheckSum")
- reserved: StrictInt
+ field_length: SkipValidation[int] = Field(alias="FieldLength")
+ field_pos: SkipValidation[int] = Field(alias="FieldPos")
+ field_type: SkipValidation[int] = Field(alias="FieldType")
+ test_result: SkipValidation[int] = Field(alias="TEST_RESULT")
+ valid_check_sum: SkipValidation[int] = Field(alias="ValidCheckSum")
+ reserved: SkipValidation[int] = Field(alias="reserved")
__properties: ClassVar[List[str]] = ["FieldLength", "FieldPos", "FieldType", "TEST_RESULT", "ValidCheckSum", "reserved"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/file_image.py b/regula/documentreader/webclient/gen/models/file_image.py
index 23cd938..eb4442f 100644
--- a/regula/documentreader/webclient/gen/models/file_image.py
+++ b/regula/documentreader/webclient/gen/models/file_image.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class FileImage(BaseModel):
"""
FileImage
""" # noqa: E501
- data: StrictStr = Field(alias="Data")
- length: StrictInt = Field(alias="Length")
+ data: SkipValidation[str] = Field(alias="Data")
+ length: SkipValidation[int] = Field(alias="Length")
__properties: ClassVar[List[str]] = ["Data", "Length"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py b/regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py
index bd0d9d7..3f0d6d2 100644
--- a/regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py
+++ b/regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py
@@ -10,24 +10,28 @@
import json
from datetime import datetime
-from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from pydantic import BaseModel, ConfigDict, Field, StrictInt
from typing import Any, ClassVar, Dict, List, Optional
+from uuid import UUID
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class GetTransactionsByTagResponse(BaseModel):
"""
GetTransactionsByTagResponse
""" # noqa: E501
- id: Optional[StrictStr] = Field(default=None, description="Transaction id")
- state: Optional[StrictInt] = Field(default=None, description="Transaction status")
- updated_at: Optional[datetime] = Field(default=None, description="Last time updated", alias="updatedAt")
+ id: SkipValidation[Optional[str]] = Field(alias="id", default=None, description="Transaction id")
+ state: SkipValidation[Optional[int]] = Field(alias="state", default=None, description="Transaction status")
+ updated_at: SkipValidation[Optional[datetime]] = Field(alias="updatedAt", default=None, description="Last time updated")
__properties: ClassVar[List[str]] = ["id", "state", "updatedAt"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/glares_check_params.py b/regula/documentreader/webclient/gen/models/glares_check_params.py
new file mode 100644
index 0000000..5f836f0
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/glares_check_params.py
@@ -0,0 +1,84 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
+from typing import Any, ClassVar, Dict, List, Optional, Union
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class GlaresCheckParams(BaseModel):
+ """
+ GlaresCheckParams
+ """ # noqa: E501
+ img_margin_part: SkipValidation[Optional[float]] = Field(alias="imgMarginPart", default=None, description="Margin from the edges of the image. 0.35 = 35%")
+ max_glaring_part: SkipValidation[Optional[float]] = Field(alias="maxGlaringPart", default=None, description="The maximum allowable part of the area occupied by the glare. The same: 0.06 = 6%")
+ __properties: ClassVar[List[str]] = ["imgMarginPart", "maxGlaringPart"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of GlaresCheckParams from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of GlaresCheckParams from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "imgMarginPart": obj.get("imgMarginPart"),
+ "maxGlaringPart": obj.get("maxGlaringPart")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/graph_data.py b/regula/documentreader/webclient/gen/models/graph_data.py
index 98d99b2..d185164 100644
--- a/regula/documentreader/webclient/gen/models/graph_data.py
+++ b/regula/documentreader/webclient/gen/models/graph_data.py
@@ -14,24 +14,27 @@
from regula.documentreader.webclient.gen.models.file_image import FileImage
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class GraphData(BaseModel):
"""
GraphData
""" # noqa: E501
- field_type: StrictInt = Field(alias="FieldType")
- file_image: FileImage = Field(alias="File_Image")
- graphics_type: StrictInt = Field(alias="GraphicsType")
- origin_dg: StrictInt = Field(alias="OriginDG")
- origin_dg_tag: StrictInt = Field(alias="OriginDGTag")
- origin_entry_view: StrictInt = Field(alias="OriginEntryView")
- origin_tag_entry: StrictInt = Field(alias="OriginTagEntry")
+ field_type: SkipValidation[int] = Field(alias="FieldType")
+ file_image: SkipValidation[FileImage] = Field(alias="File_Image")
+ graphics_type: SkipValidation[int] = Field(alias="GraphicsType")
+ origin_dg: SkipValidation[int] = Field(alias="OriginDG")
+ origin_dg_tag: SkipValidation[int] = Field(alias="OriginDGTag")
+ origin_entry_view: SkipValidation[int] = Field(alias="OriginEntryView")
+ origin_tag_entry: SkipValidation[int] = Field(alias="OriginTagEntry")
__properties: ClassVar[List[str]] = ["FieldType", "File_Image", "GraphicsType", "OriginDG", "OriginDGTag", "OriginEntryView", "OriginTagEntry"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -68,7 +71,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of file_image
- if self.file_image:
+ if self.file_image and isinstance(self.file_image, FileImage):
_dict['File_Image'] = self.file_image.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/graphic_field.py b/regula/documentreader/webclient/gen/models/graphic_field.py
index 0defc35..3073145 100644
--- a/regula/documentreader/webclient/gen/models/graphic_field.py
+++ b/regula/documentreader/webclient/gen/models/graphic_field.py
@@ -16,21 +16,24 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class GraphicField(BaseModel):
"""
Information about one graphic field - abstract class
""" # noqa: E501
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
- field_type: GraphicFieldType = Field(alias="FieldType")
- field_name: StrictStr = Field(description="Graphic field symbolic name", alias="FieldName")
- image: ImageData
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
+ field_type: SkipValidation[GraphicFieldType] = Field(alias="FieldType")
+ field_name: SkipValidation[str] = Field(alias="FieldName", description="Graphic field symbolic name")
+ image: SkipValidation[ImageData] = Field(alias="image")
__properties: ClassVar[List[str]] = ["FieldRect", "FieldType", "FieldName", "image"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,10 +70,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of image
- if self.image:
+ if self.image and isinstance(self.image, ImageData):
_dict['image'] = self.image.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/graphic_fields_list.py b/regula/documentreader/webclient/gen/models/graphic_fields_list.py
index 678800f..89e4e7f 100644
--- a/regula/documentreader/webclient/gen/models/graphic_fields_list.py
+++ b/regula/documentreader/webclient/gen/models/graphic_fields_list.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.graphic_field import GraphicField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class GraphicFieldsList(BaseModel):
"""
GraphicFieldsList
""" # noqa: E501
- p_array_fields: List[GraphicField] = Field(alias="pArrayFields")
- n_fields: Union[StrictFloat, StrictInt] = Field(description="Number of pArrayFields array elements", alias="nFields")
+ p_array_fields: SkipValidation[List[GraphicField]] = Field(alias="pArrayFields")
+ n_fields: SkipValidation[float] = Field(alias="nFields", description="Number of pArrayFields array elements")
__properties: ClassVar[List[str]] = ["pArrayFields", "nFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.p_array_fields:
for _item_p_array_fields in self.p_array_fields:
- if _item_p_array_fields:
+ if _item_p_array_fields and hasattr(_item_p_array_fields, "to_dict"):
_items.append(_item_p_array_fields.to_dict())
_dict['pArrayFields'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/graphics_result.py b/regula/documentreader/webclient/gen/models/graphics_result.py
index 17cccf2..a38ba37 100644
--- a/regula/documentreader/webclient/gen/models/graphics_result.py
+++ b/regula/documentreader/webclient/gen/models/graphics_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class GraphicsResult(ResultItem):
"""
Graphic fields extracted from one of the document sources. Returns separate results for each provided page.
""" # noqa: E501
- doc_graphics_info: GraphicFieldsList = Field(alias="DocGraphicsInfo")
+ doc_graphics_info: SkipValidation[GraphicFieldsList] = Field(alias="DocGraphicsInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "DocGraphicsInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_graphics_info
- if self.doc_graphics_info:
+ if self.doc_graphics_info and isinstance(self.doc_graphics_info, GraphicFieldsList):
_dict['DocGraphicsInfo'] = self.doc_graphics_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/healthcheck.py b/regula/documentreader/webclient/gen/models/healthcheck.py
index 83f97ba..8bd047f 100644
--- a/regula/documentreader/webclient/gen/models/healthcheck.py
+++ b/regula/documentreader/webclient/gen/models/healthcheck.py
@@ -15,26 +15,29 @@
from regula.documentreader.webclient.gen.models.healthcheck_documents_database import HealthcheckDocumentsDatabase
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Healthcheck(BaseModel):
"""
Healthcheck
""" # noqa: E501
- app: StrictStr = Field(description="Application name.")
- license_id: Optional[StrictStr] = Field(description="Unique license identifier.", alias="licenseId")
- license_type: Optional[StrictStr] = Field(description="License type.", alias="licenseType")
- license_serial: Optional[StrictStr] = Field(description="License serial number.", alias="licenseSerial")
- license_valid_until: Optional[datetime] = Field(description="License validity date.", alias="licenseValidUntil")
- scenarios: Optional[List[StrictStr]] = Field(description="List of supported scenarios.")
- version: Optional[StrictStr] = Field(description="Product version.")
- metadata: Optional[Dict[str, Any]] = None
- documents_database: Optional[HealthcheckDocumentsDatabase] = Field(default=None, alias="documentsDatabase")
+ app: SkipValidation[str] = Field(alias="app", description="Application name.")
+ license_id: SkipValidation[str] = Field(alias="licenseId", description="Unique license identifier.")
+ license_type: SkipValidation[str] = Field(alias="licenseType", description="License type.")
+ license_serial: SkipValidation[str] = Field(alias="licenseSerial", description="License serial number.")
+ license_valid_until: SkipValidation[datetime] = Field(alias="licenseValidUntil", description="License validity date.")
+ scenarios: SkipValidation[List[str]] = Field(alias="scenarios", description="List of supported scenarios.")
+ version: SkipValidation[str] = Field(alias="version", description="Product version.")
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None)
+ documents_database: SkipValidation[Optional[HealthcheckDocumentsDatabase]] = Field(alias="documentsDatabase", default=None)
__properties: ClassVar[List[str]] = ["app", "licenseId", "licenseType", "licenseSerial", "licenseValidUntil", "scenarios", "version", "metadata", "documentsDatabase"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -71,7 +74,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of documents_database
- if self.documents_database:
+ if self.documents_database and isinstance(self.documents_database, HealthcheckDocumentsDatabase):
_dict['documentsDatabase'] = self.documents_database.to_dict()
# set to None if license_id (nullable) is None
# and model_fields_set contains the field
diff --git a/regula/documentreader/webclient/gen/models/healthcheck_documents_database.py b/regula/documentreader/webclient/gen/models/healthcheck_documents_database.py
index 57b4641..70fa2e9 100644
--- a/regula/documentreader/webclient/gen/models/healthcheck_documents_database.py
+++ b/regula/documentreader/webclient/gen/models/healthcheck_documents_database.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class HealthcheckDocumentsDatabase(BaseModel):
"""
Database information.
""" # noqa: E501
- id: Optional[StrictStr] = Field(description="Database identifier.")
- version: Optional[StrictStr] = Field(description="Database version.")
- export_date: Optional[StrictStr] = Field(description="Date of database creation.", alias="exportDate")
- description: Optional[StrictStr] = Field(description="Description of the database contents, such as the list of supported countries and documents.")
+ id: SkipValidation[str] = Field(alias="id", description="Database identifier.")
+ version: SkipValidation[str] = Field(alias="version", description="Database version.")
+ export_date: SkipValidation[str] = Field(alias="exportDate", description="Date of database creation.")
+ description: SkipValidation[str] = Field(alias="description", description="Description of the database contents, such as the list of supported countries and documents.")
__properties: ClassVar[List[str]] = ["id", "version", "exportDate", "description"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/ident_item.py b/regula/documentreader/webclient/gen/models/ident_item.py
index aa356e3..6d73a6b 100644
--- a/regula/documentreader/webclient/gen/models/ident_item.py
+++ b/regula/documentreader/webclient/gen/models/ident_item.py
@@ -18,24 +18,27 @@
from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class IdentItem(BaseModel):
"""
IdentItem
""" # noqa: E501
- element_type: SecurityFeatureType = Field(alias="ElementType")
- light_index: Light = Field(alias="LightIndex")
- area: Optional[RectangleCoordinates] = Field(default=None, alias="Area")
- image: ImageData = Field(alias="Image")
- etalon_image: ImageData = Field(alias="EtalonImage")
- area_list: Optional[AreaContainer] = Field(default=None, alias="AreaList")
- element_id: Optional[StrictInt] = Field(default=None, alias="ElementID")
+ element_type: SkipValidation[SecurityFeatureType] = Field(alias="ElementType")
+ light_index: SkipValidation[Light] = Field(alias="LightIndex")
+ area: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="Area", default=None)
+ image: SkipValidation[ImageData] = Field(alias="Image")
+ etalon_image: SkipValidation[ImageData] = Field(alias="EtalonImage")
+ area_list: SkipValidation[Optional[AreaContainer]] = Field(alias="AreaList", default=None)
+ element_id: SkipValidation[Optional[int]] = Field(alias="ElementID", default=None)
__properties: ClassVar[List[str]] = ["ElementType", "LightIndex", "Area", "Image", "EtalonImage", "AreaList", "ElementID"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -72,16 +75,16 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of area
- if self.area:
+ if self.area and isinstance(self.area, RectangleCoordinates):
_dict['Area'] = self.area.to_dict()
# override the default output from pydantic by calling `to_dict()` of image
- if self.image:
+ if self.image and isinstance(self.image, ImageData):
_dict['Image'] = self.image.to_dict()
# override the default output from pydantic by calling `to_dict()` of etalon_image
- if self.etalon_image:
+ if self.etalon_image and isinstance(self.etalon_image, ImageData):
_dict['EtalonImage'] = self.etalon_image.to_dict()
# override the default output from pydantic by calling `to_dict()` of area_list
- if self.area_list:
+ if self.area_list and isinstance(self.area_list, AreaContainer):
_dict['AreaList'] = self.area_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/ident_result.py b/regula/documentreader/webclient/gen/models/ident_result.py
index 1619713..c95dddf 100644
--- a/regula/documentreader/webclient/gen/models/ident_result.py
+++ b/regula/documentreader/webclient/gen/models/ident_result.py
@@ -22,24 +22,27 @@
from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class IdentResult(AuthenticityCheckResultItem):
"""
IdentResult
""" # noqa: E501
- element_type: SecurityFeatureType = Field(alias="ElementType")
- light_index: Light = Field(alias="LightIndex")
- area: Optional[RectangleCoordinates] = Field(default=None, alias="Area")
- image: ImageData = Field(alias="Image")
- etalon_image: ImageData = Field(alias="EtalonImage")
- area_list: Optional[AreaContainer] = Field(default=None, alias="AreaList")
- element_id: Optional[StrictInt] = Field(default=None, alias="ElementID")
+ element_type: SkipValidation[SecurityFeatureType] = Field(alias="ElementType")
+ light_index: SkipValidation[Light] = Field(alias="LightIndex")
+ area: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="Area", default=None)
+ image: SkipValidation[ImageData] = Field(alias="Image")
+ etalon_image: SkipValidation[ImageData] = Field(alias="EtalonImage")
+ area_list: SkipValidation[Optional[AreaContainer]] = Field(alias="AreaList", default=None)
+ element_id: SkipValidation[Optional[int]] = Field(alias="ElementID", default=None)
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue", "ElementType", "LightIndex", "Area", "Image", "EtalonImage", "AreaList", "ElementID"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -76,16 +79,16 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of area
- if self.area:
+ if self.area and isinstance(self.area, RectangleCoordinates):
_dict['Area'] = self.area.to_dict()
# override the default output from pydantic by calling `to_dict()` of image
- if self.image:
+ if self.image and isinstance(self.image, ImageData):
_dict['Image'] = self.image.to_dict()
# override the default output from pydantic by calling `to_dict()` of etalon_image
- if self.etalon_image:
+ if self.etalon_image and isinstance(self.etalon_image, ImageData):
_dict['EtalonImage'] = self.etalon_image.to_dict()
# override the default output from pydantic by calling `to_dict()` of area_list
- if self.area_list:
+ if self.area_list and isinstance(self.area_list, AreaContainer):
_dict['AreaList'] = self.area_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/image_data.py b/regula/documentreader/webclient/gen/models/image_data.py
index d827c58..333e501 100644
--- a/regula/documentreader/webclient/gen/models/image_data.py
+++ b/regula/documentreader/webclient/gen/models/image_data.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageData(BaseModel):
"""
ImageData
""" # noqa: E501
- image: Optional[StrictStr] = Field(default=None, description="Base64 encoded image")
- format: Optional[StrictStr] = Field(default=None, description="Image format")
+ image: SkipValidation[Optional[str]] = Field(alias="image", default=None, description="Base64 encoded image")
+ format: SkipValidation[Optional[str]] = Field(alias="format", default=None, description="Image format")
__properties: ClassVar[List[str]] = ["image", "format"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/image_qa.py b/regula/documentreader/webclient/gen/models/image_qa.py
index 6bd827e..a376892 100644
--- a/regula/documentreader/webclient/gen/models/image_qa.py
+++ b/regula/documentreader/webclient/gen/models/image_qa.py
@@ -11,29 +11,34 @@
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictFloat, StrictInt
from typing import Any, ClassVar, Dict, List, Optional, Union
+from regula.documentreader.webclient.gen.models.glares_check_params import GlaresCheckParams
from regula.documentreader.webclient.gen.models.input_image_quality_checks import InputImageQualityChecks
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageQA(BaseModel):
"""
ImageQA
""" # noqa: E501
- brightness_threshold: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Set the threshold for an actual document brightness below which the check fails", alias="brightnessThreshold")
- dpi_threshold: Optional[StrictInt] = Field(default=None, description="This parameter sets threshold for Image QA check of the presented document physical dpi. If actual document dpi is below this threshold, check will fail.", alias="dpiThreshold")
- angle_threshold: Optional[StrictInt] = Field(default=None, description="This parameter sets threshold for Image QA check of the presented document perspective angle in degrees. If actual document perspective angle is above this threshold, check will fail.", alias="angleThreshold")
- focus_check: Optional[StrictBool] = Field(default=None, description="This option enables focus check while performing image quality validation.", alias="focusCheck")
- glares_check: Optional[StrictBool] = Field(default=None, description="This option enables glares check while performing image quality validation.", alias="glaresCheck")
- colorness_check: Optional[StrictBool] = Field(default=None, description="This option enables colorness check while performing image quality validation.", alias="colornessCheck")
- moire_check: Optional[StrictBool] = Field(default=None, description="This option enables screen capture (moire patterns) check while performing image quality validation.", alias="moireCheck")
- document_position_indent: Optional[StrictInt] = Field(default=None, description="This parameter specifies the necessary margin. Default 0.", alias="documentPositionIndent")
- expected_pass: Optional[List[InputImageQualityChecks]] = Field(default=None, description="This parameter controls the quality checks that the image should pass to be considered a valid input during the scanning process.", alias="expectedPass")
- __properties: ClassVar[List[str]] = ["brightnessThreshold", "dpiThreshold", "angleThreshold", "focusCheck", "glaresCheck", "colornessCheck", "moireCheck", "documentPositionIndent", "expectedPass"]
+ brightness_threshold: SkipValidation[Optional[float]] = Field(alias="brightnessThreshold", default=None, description="Set the threshold for an actual document brightness below which the check fails")
+ dpi_threshold: SkipValidation[Optional[int]] = Field(alias="dpiThreshold", default=None, description="This parameter sets threshold for Image QA check of the presented document physical dpi. If actual document dpi is below this threshold, check will fail.")
+ angle_threshold: SkipValidation[Optional[int]] = Field(alias="angleThreshold", default=None, description="This parameter sets threshold for Image QA check of the presented document perspective angle in degrees. If actual document perspective angle is above this threshold, check will fail.")
+ focus_check: SkipValidation[Optional[bool]] = Field(alias="focusCheck", default=None, description="This option enables focus check while performing image quality validation.")
+ glares_check: SkipValidation[Optional[bool]] = Field(alias="glaresCheck", default=None, description="This option enables glares check while performing image quality validation.")
+ colorness_check: SkipValidation[Optional[bool]] = Field(alias="colornessCheck", default=None, description="This option enables colorness check while performing image quality validation.")
+ moire_check: SkipValidation[Optional[bool]] = Field(alias="moireCheck", default=None, description="This option enables screen capture (moire patterns) check while performing image quality validation.")
+ document_position_indent: SkipValidation[Optional[int]] = Field(alias="documentPositionIndent", default=None, description="This parameter specifies the necessary margin. Default 0.")
+ expected_pass: SkipValidation[Optional[List[InputImageQualityChecks]]] = Field(alias="expectedPass", default=None, description="This parameter controls the quality checks that the image should pass to be considered a valid input during the scanning process.")
+ glares_check_params: SkipValidation[Optional[GlaresCheckParams]] = Field(alias="glaresCheckParams", default=None)
+ __properties: ClassVar[List[str]] = ["brightnessThreshold", "dpiThreshold", "angleThreshold", "focusCheck", "glaresCheck", "colornessCheck", "moireCheck", "documentPositionIndent", "expectedPass", "glaresCheckParams"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,6 +74,9 @@ def to_dict(self) -> Dict[str, Any]:
exclude=excluded_fields,
exclude_none=True,
)
+ # override the default output from pydantic by calling `to_dict()` of glares_check_params
+ if self.glares_check_params and isinstance(self.glares_check_params, GlaresCheckParams):
+ _dict['glaresCheckParams'] = self.glares_check_params.to_dict()
return _dict
@classmethod
@@ -89,7 +97,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"colornessCheck": obj.get("colornessCheck"),
"moireCheck": obj.get("moireCheck"),
"documentPositionIndent": obj.get("documentPositionIndent"),
- "expectedPass": obj.get("expectedPass")
+ "expectedPass": obj.get("expectedPass"),
+ "glaresCheckParams": GlaresCheckParams.from_dict(obj["glaresCheckParams"]) if obj.get("glaresCheckParams") is not None else None
})
return _obj
diff --git a/regula/documentreader/webclient/gen/models/image_quality_check.py b/regula/documentreader/webclient/gen/models/image_quality_check.py
index 5ac03c1..38110fa 100644
--- a/regula/documentreader/webclient/gen/models/image_quality_check.py
+++ b/regula/documentreader/webclient/gen/models/image_quality_check.py
@@ -17,24 +17,27 @@
from regula.documentreader.webclient.gen.models.security_feature_type import SecurityFeatureType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageQualityCheck(BaseModel):
"""
ImageQualityCheck
""" # noqa: E501
- type: ImageQualityCheckType
- result: CheckResult
- feature_type: SecurityFeatureType = Field(alias="featureType")
- areas: Optional[AreaArray] = None
- mean: Union[StrictFloat, StrictInt] = Field(description="Check mean value")
- std_dev: Union[StrictFloat, StrictInt] = Field(description="Check deviation value")
- probability: StrictInt = Field(description="Check probability value")
+ type: SkipValidation[ImageQualityCheckType] = Field(alias="type")
+ result: SkipValidation[CheckResult] = Field(alias="result")
+ feature_type: SkipValidation[SecurityFeatureType] = Field(alias="featureType")
+ areas: SkipValidation[Optional[AreaArray]] = Field(alias="areas", default=None)
+ mean: SkipValidation[float] = Field(alias="mean", description="Check mean value")
+ std_dev: SkipValidation[float] = Field(alias="std_dev", description="Check deviation value")
+ probability: SkipValidation[int] = Field(alias="probability", description="Check probability value")
__properties: ClassVar[List[str]] = ["type", "result", "featureType", "areas", "mean", "std_dev", "probability"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -71,7 +74,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of areas
- if self.areas:
+ if self.areas and isinstance(self.areas, AreaArray):
_dict['areas'] = self.areas.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/image_quality_check_list.py b/regula/documentreader/webclient/gen/models/image_quality_check_list.py
index ca12eec..ac43013 100644
--- a/regula/documentreader/webclient/gen/models/image_quality_check_list.py
+++ b/regula/documentreader/webclient/gen/models/image_quality_check_list.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.image_quality_check import ImageQualityCheck
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageQualityCheckList(BaseModel):
"""
ImageQualityCheckList
""" # noqa: E501
- result: CheckResult
- list: List[ImageQualityCheck] = Field(alias="List")
- count: Union[StrictFloat, StrictInt] = Field(description="Number of List array elements", alias="Count")
+ result: SkipValidation[CheckResult] = Field(alias="result")
+ list: SkipValidation[List[ImageQualityCheck]] = Field(alias="List")
+ count: SkipValidation[float] = Field(alias="Count", description="Number of List array elements")
__properties: ClassVar[List[str]] = ["result", "List", "Count"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -68,7 +71,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/image_quality_check_list_item.py b/regula/documentreader/webclient/gen/models/image_quality_check_list_item.py
index c074aab..ebda09a 100644
--- a/regula/documentreader/webclient/gen/models/image_quality_check_list_item.py
+++ b/regula/documentreader/webclient/gen/models/image_quality_check_list_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.image_quality_check_list import ImageQualityCheckList
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageQualityCheckListItem(BaseModel):
"""
ImageQualityCheckListItem
""" # noqa: E501
- image_quality_check_list: ImageQualityCheckList = Field(alias="ImageQualityCheckList")
+ image_quality_check_list: SkipValidation[ImageQualityCheckList] = Field(alias="ImageQualityCheckList")
__properties: ClassVar[List[str]] = ["ImageQualityCheckList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of image_quality_check_list
- if self.image_quality_check_list:
+ if self.image_quality_check_list and isinstance(self.image_quality_check_list, ImageQualityCheckList):
_dict['ImageQualityCheckList'] = self.image_quality_check_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/image_quality_check_type.py b/regula/documentreader/webclient/gen/models/image_quality_check_type.py
index a9312b7..4e34305 100644
--- a/regula/documentreader/webclient/gen/models/image_quality_check_type.py
+++ b/regula/documentreader/webclient/gen/models/image_quality_check_type.py
@@ -25,6 +25,7 @@ class ImageQualityCheckType(int, Enum):
Perspective = 4
Bounds = 5
Portrait = 7
+ Handwritten = 8
Brightness = 9
Occlusion = 10
diff --git a/regula/documentreader/webclient/gen/models/image_quality_result.py b/regula/documentreader/webclient/gen/models/image_quality_result.py
index 324313a..306413c 100644
--- a/regula/documentreader/webclient/gen/models/image_quality_result.py
+++ b/regula/documentreader/webclient/gen/models/image_quality_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageQualityResult(ResultItem):
"""
ImageQualityResult
""" # noqa: E501
- image_quality_check_list: ImageQualityCheckList = Field(alias="ImageQualityCheckList")
+ image_quality_check_list: SkipValidation[ImageQualityCheckList] = Field(alias="ImageQualityCheckList")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "ImageQualityCheckList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of image_quality_check_list
- if self.image_quality_check_list:
+ if self.image_quality_check_list and isinstance(self.image_quality_check_list, ImageQualityCheckList):
_dict['ImageQualityCheckList'] = self.image_quality_check_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/image_transaction_data.py b/regula/documentreader/webclient/gen/models/image_transaction_data.py
index ec1b2e9..26306c8 100644
--- a/regula/documentreader/webclient/gen/models/image_transaction_data.py
+++ b/regula/documentreader/webclient/gen/models/image_transaction_data.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImageTransactionData(BaseModel):
"""
ImageTransactionData
""" # noqa: E501
- image: Optional[ImagesFieldValue] = None
+ image: SkipValidation[Optional[ImagesFieldValue]] = Field(alias="image", default=None)
__properties: ClassVar[List[str]] = ["image"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of image
- if self.image:
+ if self.image and isinstance(self.image, ImagesFieldValue):
_dict['image'] = self.image.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/images.py b/regula/documentreader/webclient/gen/models/images.py
index ba00336..eef51de 100644
--- a/regula/documentreader/webclient/gen/models/images.py
+++ b/regula/documentreader/webclient/gen/models/images.py
@@ -15,21 +15,24 @@
from regula.documentreader.webclient.gen.models.images_field import ImagesField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Images(BaseModel):
"""
Images
""" # noqa: E501
- field_count: Optional[StrictInt] = Field(default=None, description="Fields count", alias="fieldCount")
- available_source_count: Optional[StrictInt] = Field(default=None, description="Available sources count", alias="availableSourceCount")
- available_source_list: List[ImagesAvailableSource] = Field(alias="availableSourceList")
- field_list: List[ImagesField] = Field(alias="fieldList")
+ field_count: SkipValidation[Optional[int]] = Field(alias="fieldCount", default=None, description="Fields count")
+ available_source_count: SkipValidation[Optional[int]] = Field(alias="availableSourceCount", default=None, description="Available sources count")
+ available_source_list: SkipValidation[List[ImagesAvailableSource]] = Field(alias="availableSourceList")
+ field_list: SkipValidation[List[ImagesField]] = Field(alias="fieldList")
__properties: ClassVar[List[str]] = ["fieldCount", "availableSourceCount", "availableSourceList", "fieldList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,14 +72,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.available_source_list:
for _item_available_source_list in self.available_source_list:
- if _item_available_source_list:
+ if _item_available_source_list and hasattr(_item_available_source_list, "to_dict"):
_items.append(_item_available_source_list.to_dict())
_dict['availableSourceList'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in field_list (list)
_items = []
if self.field_list:
for _item_field_list in self.field_list:
- if _item_field_list:
+ if _item_field_list and hasattr(_item_field_list, "to_dict"):
_items.append(_item_field_list.to_dict())
_dict['fieldList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/images_available_source.py b/regula/documentreader/webclient/gen/models/images_available_source.py
index af0e0dc..ba82adc 100644
--- a/regula/documentreader/webclient/gen/models/images_available_source.py
+++ b/regula/documentreader/webclient/gen/models/images_available_source.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImagesAvailableSource(BaseModel):
"""
ImagesAvailableSource
""" # noqa: E501
- container_type: StrictInt = Field(description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="containerType")
- source: Source
+ container_type: SkipValidation[int] = Field(alias="containerType", description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
+ source: SkipValidation[Source] = Field(alias="source")
__properties: ClassVar[List[str]] = ["containerType", "source"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/images_field.py b/regula/documentreader/webclient/gen/models/images_field.py
index e5bfbf7..3b3e744 100644
--- a/regula/documentreader/webclient/gen/models/images_field.py
+++ b/regula/documentreader/webclient/gen/models/images_field.py
@@ -15,21 +15,24 @@
from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImagesField(BaseModel):
"""
ImagesField
""" # noqa: E501
- field_name: StrictStr = Field(description="Human readable field name. Do not bind to this name - use GraphicFieldType instead.", alias="fieldName")
- field_type: GraphicFieldType = Field(alias="fieldType")
- value_list: List[ImagesFieldValue] = Field(alias="valueList")
- value_count: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Field value count", alias="valueCount")
+ field_name: SkipValidation[str] = Field(alias="fieldName", description="Human readable field name. Do not bind to this name - use GraphicFieldType instead.")
+ field_type: SkipValidation[GraphicFieldType] = Field(alias="fieldType")
+ value_list: SkipValidation[List[ImagesFieldValue]] = Field(alias="valueList")
+ value_count: SkipValidation[Optional[float]] = Field(alias="valueCount", default=None, description="Field value count")
__properties: ClassVar[List[str]] = ["fieldName", "fieldType", "valueList", "valueCount"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,7 +72,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.value_list:
for _item_value_list in self.value_list:
- if _item_value_list:
+ if _item_value_list and hasattr(_item_value_list, "to_dict"):
_items.append(_item_value_list.to_dict())
_dict['valueList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/images_field_value.py b/regula/documentreader/webclient/gen/models/images_field_value.py
index 7e08d8e..a3f00e2 100644
--- a/regula/documentreader/webclient/gen/models/images_field_value.py
+++ b/regula/documentreader/webclient/gen/models/images_field_value.py
@@ -17,26 +17,29 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImagesFieldValue(BaseModel):
"""
ImagesFieldValue
""" # noqa: E501
- source: Source
- value: Optional[StrictStr] = Field(default=None, description="Base64 encoded image")
- original_value: Optional[StrictStr] = Field(default=None, description="Base64 encoded image", alias="originalValue")
- original_page_index: Optional[StrictInt] = Field(default=None, description="Original page index", alias="originalPageIndex")
- page_index: StrictInt = Field(description="Page index of the image from input list", alias="pageIndex")
- light_index: Light = Field(alias="lightIndex")
- container_type: StrictInt = Field(description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="containerType")
- field_rect: Optional[RectangleCoordinates] = Field(default=None, alias="fieldRect")
- rfid_origin: Optional[RfidOrigin] = Field(default=None, alias="rfidOrigin")
+ source: SkipValidation[Source] = Field(alias="source")
+ value: SkipValidation[Optional[str]] = Field(alias="value", default=None, description="Base64 encoded image")
+ original_value: SkipValidation[Optional[str]] = Field(alias="originalValue", default=None, description="Base64 encoded image")
+ original_page_index: SkipValidation[Optional[int]] = Field(alias="originalPageIndex", default=None, description="Original page index")
+ page_index: SkipValidation[int] = Field(alias="pageIndex", description="Page index of the image from input list")
+ light_index: SkipValidation[Light] = Field(alias="lightIndex")
+ container_type: SkipValidation[int] = Field(alias="containerType", description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
+ field_rect: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="fieldRect", default=None)
+ rfid_origin: SkipValidation[Optional[RfidOrigin]] = Field(alias="rfidOrigin", default=None)
__properties: ClassVar[List[str]] = ["source", "value", "originalValue", "originalPageIndex", "pageIndex", "lightIndex", "containerType", "fieldRect", "rfidOrigin"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -73,10 +76,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['fieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of rfid_origin
- if self.rfid_origin:
+ if self.rfid_origin and isinstance(self.rfid_origin, RfidOrigin):
_dict['rfidOrigin'] = self.rfid_origin.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/images_item.py b/regula/documentreader/webclient/gen/models/images_item.py
index a29aa2f..59d1f78 100644
--- a/regula/documentreader/webclient/gen/models/images_item.py
+++ b/regula/documentreader/webclient/gen/models/images_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.images import Images
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImagesItem(BaseModel):
"""
ImagesItem
""" # noqa: E501
- images: Images = Field(alias="Images")
+ images: SkipValidation[Images] = Field(alias="Images")
__properties: ClassVar[List[str]] = ["Images"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of images
- if self.images:
+ if self.images and isinstance(self.images, Images):
_dict['Images'] = self.images.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/images_result.py b/regula/documentreader/webclient/gen/models/images_result.py
index 5f72b1c..334d9af 100644
--- a/regula/documentreader/webclient/gen/models/images_result.py
+++ b/regula/documentreader/webclient/gen/models/images_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ImagesResult(ResultItem):
"""
ImagesResult
""" # noqa: E501
- images: Images = Field(alias="Images")
+ images: SkipValidation[Images] = Field(alias="Images")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "Images"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of images
- if self.images:
+ if self.images and isinstance(self.images, Images):
_dict['Images'] = self.images.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/in_data.py b/regula/documentreader/webclient/gen/models/in_data.py
index 369db82..4cc1547 100644
--- a/regula/documentreader/webclient/gen/models/in_data.py
+++ b/regula/documentreader/webclient/gen/models/in_data.py
@@ -15,19 +15,22 @@
from regula.documentreader.webclient.gen.models.in_data_video import InDataVideo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class InData(BaseModel):
"""
InData
""" # noqa: E501
- video: Optional[InDataVideo] = None
- images: Optional[List[InDataTransactionImagesFieldValue]] = None
+ video: SkipValidation[Optional[InDataVideo]] = Field(alias="video", default=None)
+ images: SkipValidation[Optional[List[InDataTransactionImagesFieldValue]]] = Field(alias="images", default=None)
__properties: ClassVar[List[str]] = ["video", "images"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,13 +67,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of video
- if self.video:
+ if self.video and isinstance(self.video, InDataVideo):
_dict['video'] = self.video.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in images (list)
_items = []
if self.images:
for _item_images in self.images:
- if _item_images:
+ if _item_images and hasattr(_item_images, "to_dict"):
_items.append(_item_images.to_dict())
_dict['images'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/in_data_transaction_images_field_value.py b/regula/documentreader/webclient/gen/models/in_data_transaction_images_field_value.py
index 045f440..bb35c83 100644
--- a/regula/documentreader/webclient/gen/models/in_data_transaction_images_field_value.py
+++ b/regula/documentreader/webclient/gen/models/in_data_transaction_images_field_value.py
@@ -14,21 +14,24 @@
from regula.documentreader.webclient.gen.models.light import Light
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class InDataTransactionImagesFieldValue(BaseModel):
"""
InDataTransactionImagesFieldValue
""" # noqa: E501
- light: Optional[Light] = None
- list_idx: Optional[StrictInt] = Field(default=None, alias="listIdx")
- page_idx: Optional[StrictInt] = Field(default=None, description="Page index of the image from input list", alias="pageIdx")
- url: Optional[StrictStr] = Field(default=None, description="Image url")
+ light: SkipValidation[Optional[Light]] = Field(alias="light", default=None)
+ list_idx: SkipValidation[Optional[int]] = Field(alias="listIdx", default=None)
+ page_idx: SkipValidation[Optional[int]] = Field(alias="pageIdx", default=None, description="Page index of the image from input list")
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="Image url")
__properties: ClassVar[List[str]] = ["light", "listIdx", "pageIdx", "url"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/in_data_video.py b/regula/documentreader/webclient/gen/models/in_data_video.py
index acc0446..3a7a889 100644
--- a/regula/documentreader/webclient/gen/models/in_data_video.py
+++ b/regula/documentreader/webclient/gen/models/in_data_video.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class InDataVideo(BaseModel):
"""
Video
""" # noqa: E501
- metadata: Optional[Dict[str, Any]] = Field(default=None, description="A free-form object containing video's extended attributes.")
- url: Optional[StrictStr] = Field(default=None, description="Video url")
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None, description="A free-form object containing video's extended attributes.")
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="Video url")
__properties: ClassVar[List[str]] = ["metadata", "url"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/lexical_analysis_result.py b/regula/documentreader/webclient/gen/models/lexical_analysis_result.py
index 672ddbf..7f13e78 100644
--- a/regula/documentreader/webclient/gen/models/lexical_analysis_result.py
+++ b/regula/documentreader/webclient/gen/models/lexical_analysis_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class LexicalAnalysisResult(ResultItem):
"""
Lexical data analysis allows you to compare the results of reading the text data of the MRZ, the document filling area, barcodes and data from the memory of the RFID chip for an additional assessment of the authenticity of the document. Single result for all pages. Consider using Result.TEXT type for more simplicity.
""" # noqa: E501
- list_verified_fields: ListVerifiedFields = Field(alias="ListVerifiedFields")
+ list_verified_fields: SkipValidation[ListVerifiedFields] = Field(alias="ListVerifiedFields")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "ListVerifiedFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of list_verified_fields
- if self.list_verified_fields:
+ if self.list_verified_fields and isinstance(self.list_verified_fields, ListVerifiedFields):
_dict['ListVerifiedFields'] = self.list_verified_fields.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/license_item.py b/regula/documentreader/webclient/gen/models/license_item.py
index 0c9e4ae..3f07a41 100644
--- a/regula/documentreader/webclient/gen/models/license_item.py
+++ b/regula/documentreader/webclient/gen/models/license_item.py
@@ -13,18 +13,21 @@
from typing import Any, ClassVar, Dict, List, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class LicenseItem(BaseModel):
"""
LicenseItem
""" # noqa: E501
- license: Union[StrictBytes, StrictStr] = Field(description="Base64 encoded data", alias="License")
+ license: SkipValidation[bytearray] = Field(alias="License", description="Base64 encoded data")
__properties: ClassVar[List[str]] = ["License"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/license_result.py b/regula/documentreader/webclient/gen/models/license_result.py
index 367483e..9d7fbe6 100644
--- a/regula/documentreader/webclient/gen/models/license_result.py
+++ b/regula/documentreader/webclient/gen/models/license_result.py
@@ -15,18 +15,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class LicenseResult(ResultItem):
"""
Contains license
""" # noqa: E501
- license: Union[StrictBytes, StrictStr] = Field(description="Base64 encoded data", alias="License")
+ license: SkipValidation[bytearray] = Field(alias="License", description="Base64 encoded data")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "License"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/list_transactions_by_tag_response.py b/regula/documentreader/webclient/gen/models/list_transactions_by_tag_response.py
index da9c74b..e3e397c 100644
--- a/regula/documentreader/webclient/gen/models/list_transactions_by_tag_response.py
+++ b/regula/documentreader/webclient/gen/models/list_transactions_by_tag_response.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.get_transactions_by_tag_response import GetTransactionsByTagResponse
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ListTransactionsByTagResponse(BaseModel):
"""
ListTransactionsByTagResponse
""" # noqa: E501
- items: Optional[List[GetTransactionsByTagResponse]] = None
- metadata: Optional[Dict[str, Any]] = None
+ items: SkipValidation[Optional[List[GetTransactionsByTagResponse]]] = Field(alias="items", default=None)
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None)
__properties: ClassVar[List[str]] = ["items", "metadata"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.items:
for _item_items in self.items:
- if _item_items:
+ if _item_items and hasattr(_item_items, "to_dict"):
_items.append(_item_items.to_dict())
_dict['items'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/list_verified_fields.py b/regula/documentreader/webclient/gen/models/list_verified_fields.py
index 024ac19..50677dc 100644
--- a/regula/documentreader/webclient/gen/models/list_verified_fields.py
+++ b/regula/documentreader/webclient/gen/models/list_verified_fields.py
@@ -14,20 +14,23 @@
from regula.documentreader.webclient.gen.models.verified_field_map import VerifiedFieldMap
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ListVerifiedFields(BaseModel):
"""
ListVerifiedFields
""" # noqa: E501
- count: Union[StrictFloat, StrictInt] = Field(description="Number of pFieldMaps array elements", alias="Count")
- p_field_maps: List[VerifiedFieldMap] = Field(alias="pFieldMaps")
- p_date_format: Optional[StrictStr] = Field(default=None, alias="pDateFormat")
+ count: SkipValidation[float] = Field(alias="Count", description="Number of pFieldMaps array elements")
+ p_field_maps: SkipValidation[List[VerifiedFieldMap]] = Field(alias="pFieldMaps")
+ p_date_format: SkipValidation[Optional[str]] = Field(alias="pDateFormat", default=None)
__properties: ClassVar[List[str]] = ["Count", "pFieldMaps", "pDateFormat"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.p_field_maps:
for _item_p_field_maps in self.p_field_maps:
- if _item_p_field_maps:
+ if _item_p_field_maps and hasattr(_item_p_field_maps, "to_dict"):
_items.append(_item_p_field_maps.to_dict())
_dict['pFieldMaps'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/list_verified_fields_item.py b/regula/documentreader/webclient/gen/models/list_verified_fields_item.py
index f6b738e..f96c867 100644
--- a/regula/documentreader/webclient/gen/models/list_verified_fields_item.py
+++ b/regula/documentreader/webclient/gen/models/list_verified_fields_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.list_verified_fields import ListVerifiedFields
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ListVerifiedFieldsItem(BaseModel):
"""
ListVerifiedFieldsItem
""" # noqa: E501
- list_verified_fields: ListVerifiedFields = Field(alias="ListVerifiedFields")
+ list_verified_fields: SkipValidation[ListVerifiedFields] = Field(alias="ListVerifiedFields")
__properties: ClassVar[List[str]] = ["ListVerifiedFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of list_verified_fields
- if self.list_verified_fields:
+ if self.list_verified_fields and isinstance(self.list_verified_fields, ListVerifiedFields):
_dict['ListVerifiedFields'] = self.list_verified_fields.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/liveness_params.py b/regula/documentreader/webclient/gen/models/liveness_params.py
index ecf3313..5b91275 100644
--- a/regula/documentreader/webclient/gen/models/liveness_params.py
+++ b/regula/documentreader/webclient/gen/models/liveness_params.py
@@ -13,24 +13,28 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class LivenessParams(BaseModel):
"""
LivenessParams
""" # noqa: E501
- check_ovi: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable OVI check", alias="checkOVI")
- check_mli: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable MLI check", alias="checkMLI")
- check_holo: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Hologram detection", alias="checkHolo")
- check_ed: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Electronic device detection", alias="checkED")
- check_black_and_white_copy: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Black and white copy check", alias="checkBlackAndWhiteCopy")
- check_dynaprint: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Dynaprint check", alias="checkDynaprint")
- check_geometry: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable Geometry check", alias="checkGeometry")
- __properties: ClassVar[List[str]] = ["checkOVI", "checkMLI", "checkHolo", "checkED", "checkBlackAndWhiteCopy", "checkDynaprint", "checkGeometry"]
+ check_ovi: SkipValidation[Optional[bool]] = Field(alias="checkOVI", default=None, description="This parameter is used to enable OVI check")
+ check_mli: SkipValidation[Optional[bool]] = Field(alias="checkMLI", default=None, description="This parameter is used to enable MLI check")
+ check_holo: SkipValidation[Optional[bool]] = Field(alias="checkHolo", default=None, description="This parameter is used to enable Hologram detection")
+ check_ed: SkipValidation[Optional[bool]] = Field(alias="checkED", default=None, description="This parameter is used to enable Electronic device detection")
+ check_black_and_white_copy: SkipValidation[Optional[bool]] = Field(alias="checkBlackAndWhiteCopy", default=None, description="This parameter is used to enable Black and white copy check")
+ check_dynaprint: SkipValidation[Optional[bool]] = Field(alias="checkDynaprint", default=None, description="This parameter is used to enable Dynaprint check")
+ check_geometry: SkipValidation[Optional[bool]] = Field(alias="checkGeometry", default=None, description="This parameter is used to enable Geometry check")
+ check_barcode_background: SkipValidation[Optional[bool]] = Field(alias="checkBarcodeBackground", default=None, description="This parameter is used to enable Barcode background check as part of the Liveness checks")
+ __properties: ClassVar[List[str]] = ["checkOVI", "checkMLI", "checkHolo", "checkED", "checkBlackAndWhiteCopy", "checkDynaprint", "checkGeometry", "checkBarcodeBackground"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -84,7 +88,8 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"checkED": obj.get("checkED"),
"checkBlackAndWhiteCopy": obj.get("checkBlackAndWhiteCopy"),
"checkDynaprint": obj.get("checkDynaprint"),
- "checkGeometry": obj.get("checkGeometry")
+ "checkGeometry": obj.get("checkGeometry"),
+ "checkBarcodeBackground": obj.get("checkBarcodeBackground")
})
return _obj
diff --git a/regula/documentreader/webclient/gen/models/mdl_device_engagement.py b/regula/documentreader/webclient/gen/models/mdl_device_engagement.py
new file mode 100644
index 0000000..efa41bc
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/mdl_device_engagement.py
@@ -0,0 +1,29 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import json
+from enum import Enum
+from typing_extensions import Self
+
+
+class MDLDeviceEngagement(int, Enum):
+ """
+ MDLDeviceEngagement
+ """
+
+ """
+ allowed enum values
+ """
+ QR = 0
+ NFC = 1
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Self:
+ """Create an instance of MDLDeviceEngagement from a JSON string"""
+ return cls(json.loads(json_str))
+
+
diff --git a/regula/documentreader/webclient/gen/models/mdl_device_retrieval.py b/regula/documentreader/webclient/gen/models/mdl_device_retrieval.py
new file mode 100644
index 0000000..6108987
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/mdl_device_retrieval.py
@@ -0,0 +1,30 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import json
+from enum import Enum
+from typing_extensions import Self
+
+
+class MDLDeviceRetrieval(int, Enum):
+ """
+ MDLDeviceRetrieval
+ """
+
+ """
+ allowed enum values
+ """
+ NFC = 1
+ BLE = 2
+ WIFI_AWARE = 3
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Self:
+ """Create an instance of MDLDeviceRetrieval from a JSON string"""
+ return cls(json.loads(json_str))
+
+
diff --git a/regula/documentreader/webclient/gen/models/mdl_item.py b/regula/documentreader/webclient/gen/models/mdl_item.py
new file mode 100644
index 0000000..97b063b
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/mdl_item.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class MDLItem(BaseModel):
+ """
+ MDLItem
+ """ # noqa: E501
+ mdl_parsed_response: SkipValidation[Dict[str, object]] = Field(alias="MDLParsedResponse")
+ __properties: ClassVar[List[str]] = ["MDLParsedResponse"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of MDLItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of MDLItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "MDLParsedResponse": obj.get("MDLParsedResponse")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/mdl_result.py b/regula/documentreader/webclient/gen/models/mdl_result.py
new file mode 100644
index 0000000..0812f69
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/mdl_result.py
@@ -0,0 +1,89 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.result import Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class MDLResult(ResultItem):
+ """
+ MDLResult
+ """ # noqa: E501
+ mdl_parsed_response: SkipValidation[Dict[str, object]] = Field(alias="MDLParsedResponse")
+ __properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "MDLParsedResponse"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of MDLResult from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of MDLResult from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "buf_length": obj.get("buf_length"),
+ "light": obj.get("light"),
+ "list_idx": obj.get("list_idx"),
+ "page_idx": obj.get("page_idx"),
+ "result_type": obj.get("result_type"),
+ "MDLParsedResponse": obj.get("MDLParsedResponse")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/mdl_server_retrieval.py b/regula/documentreader/webclient/gen/models/mdl_server_retrieval.py
new file mode 100644
index 0000000..739bee7
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/mdl_server_retrieval.py
@@ -0,0 +1,29 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import json
+from enum import Enum
+from typing_extensions import Self
+
+
+class MDLServerRetrieval(int, Enum):
+ """
+ MDLServerRetrieval
+ """
+
+ """
+ allowed enum values
+ """
+ WEB_API = 0
+ OIDC = 1
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Self:
+ """Create an instance of MDLServerRetrieval from a JSON string"""
+ return cls(json.loads(json_str))
+
+
diff --git a/regula/documentreader/webclient/gen/models/message.py b/regula/documentreader/webclient/gen/models/message.py
new file mode 100644
index 0000000..391732a
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/message.py
@@ -0,0 +1,98 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from regula.documentreader.webclient.gen.models.pid import PID
+from regula.documentreader.webclient.gen.models.ve_item import VEItem
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class Message(BaseModel):
+ """
+ Message
+ """ # noqa: E501
+ pid: SkipValidation[Optional[PID]] = Field(alias="pid", default=None)
+ uvci: SkipValidation[Optional[str]] = Field(alias="uvci", default=None)
+ ve: SkipValidation[Optional[List[VEItem]]] = Field(alias="ve", default=None)
+ __properties: ClassVar[List[str]] = ["pid", "uvci", "ve"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of Message from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of pid
+ if self.pid and isinstance(self.pid, PID):
+ _dict['pid'] = self.pid.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of each item in ve (list)
+ _items = []
+ if self.ve:
+ for _item_ve in self.ve:
+ if _item_ve and hasattr(_item_ve, "to_dict"):
+ _items.append(_item_ve.to_dict())
+ _dict['ve'] = _items
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of Message from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "pid": PID.from_dict(obj["pid"]) if obj.get("pid") is not None else None,
+ "uvci": obj.get("uvci"),
+ "ve": [VEItem.from_dict(_item) for _item in obj.get("ve", []) if VEItem.from_dict(_item) is not None]
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/mrz_detector_result.py b/regula/documentreader/webclient/gen/models/mrz_detector_result.py
index e3e3d5b..baae706 100644
--- a/regula/documentreader/webclient/gen/models/mrz_detector_result.py
+++ b/regula/documentreader/webclient/gen/models/mrz_detector_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZDetectorResult(ResultItem):
"""
MRZDetectorResult
""" # noqa: E501
- result_mrz_detector: ResultMRZDetector = Field(alias="ResultMRZDetector")
+ result_mrz_detector: SkipValidation[ResultMRZDetector] = Field(alias="ResultMRZDetector")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "ResultMRZDetector"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of result_mrz_detector
- if self.result_mrz_detector:
+ if self.result_mrz_detector and isinstance(self.result_mrz_detector, ResultMRZDetector):
_dict['ResultMRZDetector'] = self.result_mrz_detector.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_position.py b/regula/documentreader/webclient/gen/models/mrz_position.py
deleted file mode 100644
index adf1a25..0000000
--- a/regula/documentreader/webclient/gen/models/mrz_position.py
+++ /dev/null
@@ -1,124 +0,0 @@
-# coding: utf-8
-
-"""
- Generated by: https://openapi-generator.tech
-"""
-
-from __future__ import annotations
-import pprint
-import re # noqa: F401
-import json
-
-from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
-from typing import Any, ClassVar, Dict, List, Optional, Union
-from regula.documentreader.webclient.gen.models.document_format import DocumentFormat
-from regula.documentreader.webclient.gen.models.point import Point
-from typing import Optional, Set
-from typing_extensions import Self
-
-class MrzPosition(BaseModel):
- """
- MrzPosition
- """ # noqa: E501
- doc_format: DocumentFormat = Field(alias="docFormat")
- angle: Union[StrictFloat, StrictInt] = Field(description="Document rotation angle", alias="Angle")
- width: StrictInt = Field(description="Document width", alias="Width")
- height: StrictInt = Field(description="Document height", alias="Height")
- center: Point = Field(alias="Center")
- left_bottom: Point = Field(alias="LeftBottom")
- left_top: Point = Field(alias="LeftTop")
- right_bottom: Point = Field(alias="RightBottom")
- right_top: Point = Field(alias="RightTop")
- dpi: StrictInt = Field(alias="Dpi")
- inverse: Optional[StrictInt] = Field(default=None, alias="Inverse")
- obj_area: Optional[StrictInt] = Field(default=None, alias="ObjArea")
- obj_int_angle_dev: Optional[StrictInt] = Field(default=None, alias="ObjIntAngleDev")
- perspective_tr: Optional[StrictInt] = Field(default=None, alias="PerspectiveTr")
- result_status: Optional[StrictInt] = Field(default=None, alias="ResultStatus")
- __properties: ClassVar[List[str]] = ["docFormat", "Angle", "Width", "Height", "Center", "LeftBottom", "LeftTop", "RightBottom", "RightTop", "Dpi", "Inverse", "ObjArea", "ObjIntAngleDev", "PerspectiveTr", "ResultStatus"]
-
- model_config = ConfigDict(
- populate_by_name=True,
- validate_assignment=True,
- protected_namespaces=(),
- )
-
-
- def to_str(self) -> str:
- """Returns the string representation of the model using alias"""
- return pprint.pformat(self.model_dump(by_alias=True))
-
- def to_json(self) -> str:
- """Returns the JSON representation of the model using alias"""
- # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
- return json.dumps(self.to_dict())
-
- @classmethod
- def from_json(cls, json_str: str) -> Optional[Self]:
- """Create an instance of MrzPosition from a JSON string"""
- return cls.from_dict(json.loads(json_str))
-
- def to_dict(self) -> Dict[str, Any]:
- """Return the dictionary representation of the model using alias.
-
- This has the following differences from calling pydantic's
- `self.model_dump(by_alias=True)`:
-
- * `None` is only added to the output dict for nullable fields that
- were set at model initialization. Other fields with value `None`
- are ignored.
- """
- excluded_fields: Set[str] = set([
- ])
-
- _dict = self.model_dump(
- by_alias=True,
- exclude=excluded_fields,
- exclude_none=True,
- )
- # override the default output from pydantic by calling `to_dict()` of center
- if self.center:
- _dict['Center'] = self.center.to_dict()
- # override the default output from pydantic by calling `to_dict()` of left_bottom
- if self.left_bottom:
- _dict['LeftBottom'] = self.left_bottom.to_dict()
- # override the default output from pydantic by calling `to_dict()` of left_top
- if self.left_top:
- _dict['LeftTop'] = self.left_top.to_dict()
- # override the default output from pydantic by calling `to_dict()` of right_bottom
- if self.right_bottom:
- _dict['RightBottom'] = self.right_bottom.to_dict()
- # override the default output from pydantic by calling `to_dict()` of right_top
- if self.right_top:
- _dict['RightTop'] = self.right_top.to_dict()
- return _dict
-
- @classmethod
- def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
- """Create an instance of MrzPosition from a dict"""
- if obj is None:
- return None
-
- if not isinstance(obj, dict):
- return cls.model_validate(obj)
-
- _obj = cls.model_validate({
- "docFormat": obj.get("docFormat"),
- "Angle": obj.get("Angle"),
- "Width": obj.get("Width"),
- "Height": obj.get("Height"),
- "Center": Point.from_dict(obj["Center"]) if obj.get("Center") is not None else None,
- "LeftBottom": Point.from_dict(obj["LeftBottom"]) if obj.get("LeftBottom") is not None else None,
- "LeftTop": Point.from_dict(obj["LeftTop"]) if obj.get("LeftTop") is not None else None,
- "RightBottom": Point.from_dict(obj["RightBottom"]) if obj.get("RightBottom") is not None else None,
- "RightTop": Point.from_dict(obj["RightTop"]) if obj.get("RightTop") is not None else None,
- "Dpi": obj.get("Dpi"),
- "Inverse": obj.get("Inverse"),
- "ObjArea": obj.get("ObjArea"),
- "ObjIntAngleDev": obj.get("ObjIntAngleDev"),
- "PerspectiveTr": obj.get("PerspectiveTr"),
- "ResultStatus": obj.get("ResultStatus")
- })
- return _obj
-
-
diff --git a/regula/documentreader/webclient/gen/models/mrz_position_item.py b/regula/documentreader/webclient/gen/models/mrz_position_item.py
index b3ff8b9..13661ec 100644
--- a/regula/documentreader/webclient/gen/models/mrz_position_item.py
+++ b/regula/documentreader/webclient/gen/models/mrz_position_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.document_position import DocumentPosition
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MrzPositionItem(BaseModel):
"""
MrzPositionItem
""" # noqa: E501
- mrz_position: DocumentPosition = Field(alias="MrzPosition")
+ mrz_position: SkipValidation[DocumentPosition] = Field(alias="MrzPosition")
__properties: ClassVar[List[str]] = ["MrzPosition"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of mrz_position
- if self.mrz_position:
+ if self.mrz_position and isinstance(self.mrz_position, DocumentPosition):
_dict['MrzPosition'] = self.mrz_position.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_position_result.py b/regula/documentreader/webclient/gen/models/mrz_position_result.py
index 074a172..f9860ef 100644
--- a/regula/documentreader/webclient/gen/models/mrz_position_result.py
+++ b/regula/documentreader/webclient/gen/models/mrz_position_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZPositionResult(ResultItem):
"""
MRZPositionResult
""" # noqa: E501
- mrz_position: DocumentPosition = Field(alias="MrzPosition")
+ mrz_position: SkipValidation[DocumentPosition] = Field(alias="MrzPosition")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "MrzPosition"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of mrz_position
- if self.mrz_position:
+ if self.mrz_position and isinstance(self.mrz_position, DocumentPosition):
_dict['MrzPosition'] = self.mrz_position.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_rows_item.py b/regula/documentreader/webclient/gen/models/mrz_rows_item.py
index fb5c3af..135f1ea 100644
--- a/regula/documentreader/webclient/gen/models/mrz_rows_item.py
+++ b/regula/documentreader/webclient/gen/models/mrz_rows_item.py
@@ -14,20 +14,23 @@
from regula.documentreader.webclient.gen.models.symbol import Symbol
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZRowsItem(BaseModel):
"""
MRZRowsItem
""" # noqa: E501
- length: StrictInt
- max_length: StrictInt = Field(alias="maxLength")
- symbols: List[Symbol]
+ length: SkipValidation[int] = Field(alias="length")
+ max_length: SkipValidation[int] = Field(alias="maxLength")
+ symbols: SkipValidation[List[Symbol]] = Field(alias="symbols")
__properties: ClassVar[List[str]] = ["length", "maxLength", "symbols"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,7 +70,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.symbols:
for _item_symbols in self.symbols:
- if _item_symbols:
+ if _item_symbols and hasattr(_item_symbols, "to_dict"):
_items.append(_item_symbols.to_dict())
_dict['symbols'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_test_quality.py b/regula/documentreader/webclient/gen/models/mrz_test_quality.py
index 857c5af..76f2661 100644
--- a/regula/documentreader/webclient/gen/models/mrz_test_quality.py
+++ b/regula/documentreader/webclient/gen/models/mrz_test_quality.py
@@ -15,27 +15,30 @@
from regula.documentreader.webclient.gen.models.string_item import StringItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZTestQuality(BaseModel):
"""
MRZTestQuality
""" # noqa: E501
- check_sums: CheckResult = Field(alias="CHECK_SUMS")
- contrast_print: CheckResult = Field(alias="CONTRAST_PRINT")
- doc_format: StrictInt = Field(alias="DOC_FORMAT")
- mrz_format: StrictInt = Field(alias="MRZ_FORMAT")
- print_position: CheckResult = Field(alias="PRINT_POSITION")
- stain_mrz: CheckResult = Field(alias="STAIN_MRZ")
- symbols_param: CheckResult = Field(alias="SYMBOLS_PARAM")
- str_count: StrictInt = Field(alias="StrCount")
- strings: List[StringItem] = Field(alias="Strings")
- textual_filling: CheckResult = Field(alias="TEXTUAL_FILLING")
+ check_sums: SkipValidation[CheckResult] = Field(alias="CHECK_SUMS")
+ contrast_print: SkipValidation[CheckResult] = Field(alias="CONTRAST_PRINT")
+ doc_format: SkipValidation[int] = Field(alias="DOC_FORMAT")
+ mrz_format: SkipValidation[int] = Field(alias="MRZ_FORMAT")
+ print_position: SkipValidation[CheckResult] = Field(alias="PRINT_POSITION")
+ stain_mrz: SkipValidation[CheckResult] = Field(alias="STAIN_MRZ")
+ symbols_param: SkipValidation[CheckResult] = Field(alias="SYMBOLS_PARAM")
+ str_count: SkipValidation[int] = Field(alias="StrCount")
+ strings: SkipValidation[List[StringItem]] = Field(alias="Strings")
+ textual_filling: SkipValidation[CheckResult] = Field(alias="TEXTUAL_FILLING")
__properties: ClassVar[List[str]] = ["CHECK_SUMS", "CONTRAST_PRINT", "DOC_FORMAT", "MRZ_FORMAT", "PRINT_POSITION", "STAIN_MRZ", "SYMBOLS_PARAM", "StrCount", "Strings", "TEXTUAL_FILLING"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,7 +78,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.strings:
for _item_strings in self.strings:
- if _item_strings:
+ if _item_strings and hasattr(_item_strings, "to_dict"):
_items.append(_item_strings.to_dict())
_dict['Strings'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_test_quality_item.py b/regula/documentreader/webclient/gen/models/mrz_test_quality_item.py
index 2c22f9c..b613b71 100644
--- a/regula/documentreader/webclient/gen/models/mrz_test_quality_item.py
+++ b/regula/documentreader/webclient/gen/models/mrz_test_quality_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.mrz_test_quality import MRZTestQuality
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZTestQualityItem(BaseModel):
"""
MRZTestQualityItem
""" # noqa: E501
- mrz_test_quality: MRZTestQuality = Field(alias="MRZTestQuality")
+ mrz_test_quality: SkipValidation[MRZTestQuality] = Field(alias="MRZTestQuality")
__properties: ClassVar[List[str]] = ["MRZTestQuality"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of mrz_test_quality
- if self.mrz_test_quality:
+ if self.mrz_test_quality and isinstance(self.mrz_test_quality, MRZTestQuality):
_dict['MRZTestQuality'] = self.mrz_test_quality.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/mrz_test_quality_result.py b/regula/documentreader/webclient/gen/models/mrz_test_quality_result.py
index 37367cb..40d6284 100644
--- a/regula/documentreader/webclient/gen/models/mrz_test_quality_result.py
+++ b/regula/documentreader/webclient/gen/models/mrz_test_quality_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class MRZTestQualityResult(ResultItem):
"""
MRZTestQualityResult
""" # noqa: E501
- mrz_test_quality: MRZTestQuality = Field(alias="MRZTestQuality")
+ mrz_test_quality: SkipValidation[MRZTestQuality] = Field(alias="MRZTestQuality")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "MRZTestQuality"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of mrz_test_quality
- if self.mrz_test_quality:
+ if self.mrz_test_quality and isinstance(self.mrz_test_quality, MRZTestQuality):
_dict['MRZTestQuality'] = self.mrz_test_quality.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/ocr_security_text_item.py b/regula/documentreader/webclient/gen/models/ocr_security_text_item.py
index d11509a..323b1b9 100644
--- a/regula/documentreader/webclient/gen/models/ocr_security_text_item.py
+++ b/regula/documentreader/webclient/gen/models/ocr_security_text_item.py
@@ -17,28 +17,31 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OCRSecurityTextItem(BaseModel):
"""
OCRSecurityTextItem
""" # noqa: E501
- critical_flag: Critical = Field(alias="CriticalFlag")
- light_type: Light = Field(alias="LightType")
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
- etalon_result_type: StrictInt = Field(description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="EtalonResultType")
- etalon_field_type: TextFieldType = Field(alias="EtalonFieldType")
- etalon_light_type: Light = Field(alias="EtalonLightType")
- etalon_field_rect: RectangleCoordinates = Field(alias="EtalonFieldRect")
- security_text_result_ocr: StrictStr = Field(alias="SecurityTextResultOCR")
- etalon_result_ocr: StrictStr = Field(alias="EtalonResultOCR")
- reserved1: Optional[StrictInt] = Field(default=None, alias="Reserved1")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
+ critical_flag: SkipValidation[Critical] = Field(alias="CriticalFlag")
+ light_type: SkipValidation[Light] = Field(alias="LightType")
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
+ etalon_result_type: SkipValidation[int] = Field(alias="EtalonResultType", description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
+ etalon_field_type: SkipValidation[TextFieldType] = Field(alias="EtalonFieldType")
+ etalon_light_type: SkipValidation[Light] = Field(alias="EtalonLightType")
+ etalon_field_rect: SkipValidation[RectangleCoordinates] = Field(alias="EtalonFieldRect")
+ security_text_result_ocr: SkipValidation[str] = Field(alias="SecurityTextResultOCR")
+ etalon_result_ocr: SkipValidation[str] = Field(alias="EtalonResultOCR")
+ reserved1: SkipValidation[Optional[int]] = Field(alias="Reserved1", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
__properties: ClassVar[List[str]] = ["CriticalFlag", "LightType", "FieldRect", "EtalonResultType", "EtalonFieldType", "EtalonLightType", "EtalonFieldRect", "SecurityTextResultOCR", "EtalonResultOCR", "Reserved1", "Reserved2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,10 +78,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of etalon_field_rect
- if self.etalon_field_rect:
+ if self.etalon_field_rect and isinstance(self.etalon_field_rect, RectangleCoordinates):
_dict['EtalonFieldRect'] = self.etalon_field_rect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/ocr_security_text_result.py b/regula/documentreader/webclient/gen/models/ocr_security_text_result.py
index 1408d2a..80349f8 100644
--- a/regula/documentreader/webclient/gen/models/ocr_security_text_result.py
+++ b/regula/documentreader/webclient/gen/models/ocr_security_text_result.py
@@ -21,28 +21,31 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OCRSecurityTextResult(AuthenticityCheckResultItem):
"""
OCRSecurityTextResult
""" # noqa: E501
- critical_flag: Critical = Field(alias="CriticalFlag")
- light_type: Light = Field(alias="LightType")
- field_rect: RectangleCoordinates = Field(alias="FieldRect")
- etalon_result_type: StrictInt = Field(description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="EtalonResultType")
- etalon_field_type: TextFieldType = Field(alias="EtalonFieldType")
- etalon_light_type: Light = Field(alias="EtalonLightType")
- etalon_field_rect: RectangleCoordinates = Field(alias="EtalonFieldRect")
- security_text_result_ocr: StrictStr = Field(alias="SecurityTextResultOCR")
- etalon_result_ocr: StrictStr = Field(alias="EtalonResultOCR")
- reserved1: Optional[StrictInt] = Field(default=None, alias="Reserved1")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
+ critical_flag: SkipValidation[Critical] = Field(alias="CriticalFlag")
+ light_type: SkipValidation[Light] = Field(alias="LightType")
+ field_rect: SkipValidation[RectangleCoordinates] = Field(alias="FieldRect")
+ etalon_result_type: SkipValidation[int] = Field(alias="EtalonResultType", description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
+ etalon_field_type: SkipValidation[TextFieldType] = Field(alias="EtalonFieldType")
+ etalon_light_type: SkipValidation[Light] = Field(alias="EtalonLightType")
+ etalon_field_rect: SkipValidation[RectangleCoordinates] = Field(alias="EtalonFieldRect")
+ security_text_result_ocr: SkipValidation[str] = Field(alias="SecurityTextResultOCR")
+ etalon_result_ocr: SkipValidation[str] = Field(alias="EtalonResultOCR")
+ reserved1: SkipValidation[Optional[int]] = Field(alias="Reserved1", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue", "CriticalFlag", "LightType", "FieldRect", "EtalonResultType", "EtalonFieldType", "EtalonLightType", "EtalonFieldRect", "SecurityTextResultOCR", "EtalonResultOCR", "Reserved1", "Reserved2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -79,10 +82,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['FieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of etalon_field_rect
- if self.etalon_field_rect:
+ if self.etalon_field_rect and isinstance(self.etalon_field_rect, RectangleCoordinates):
_dict['EtalonFieldRect'] = self.etalon_field_rect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/one_candidate.py b/regula/documentreader/webclient/gen/models/one_candidate.py
index e46eea2..99c087b 100644
--- a/regula/documentreader/webclient/gen/models/one_candidate.py
+++ b/regula/documentreader/webclient/gen/models/one_candidate.py
@@ -16,29 +16,32 @@
from regula.documentreader.webclient.gen.models.rfid_location import RfidLocation
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OneCandidate(BaseModel):
"""
Contains information about one document type candidate
""" # noqa: E501
- document_name: Optional[StrictStr] = Field(default=None, description="Document name", alias="DocumentName")
- id: StrictInt = Field(description="Unique document type template identifier (Regula's internal numeric code)", alias="ID")
- p: Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]] = Field(description="A measure of the likelihood of correct recognition in the analysis of this type of document", alias="P")
- rotated180: StrictInt = Field(description="Indicates if the document of the given type is rotated by 180 degrees", alias="Rotated180")
- rfid_presence: RfidLocation = Field(alias="RFID_Presence")
- fdsid_list: Optional[FDSIDList] = Field(default=None, alias="FDSIDList")
- necessary_lights: StrictInt = Field(description="Combination of lighting scheme identifiers (Light enum) required to conduct OCR for this type of document", alias="NecessaryLights")
- check_authenticity: StrictInt = Field(description="Set of authentication options provided for this type of document (combination of Authenticity enum)", alias="CheckAuthenticity")
- uv_exp: StrictInt = Field(description="The required exposure value of the camera when receiving images of a document of this type for a UV lighting scheme", alias="UVExp")
- authenticity_necessary_lights: StrictInt = Field(description="Combination of lighting scheme identifiers (combination of Light enum) needed to perform all authenticity checks specified in CheckAuthenticity", alias="AuthenticityNecessaryLights")
- ovi_exp: Union[StrictFloat, StrictInt] = Field(description="Camera exposure value necessary when obtaining document images of the given type for AXIAL lighting scheme", alias="OVIExp")
- rotation_angle: Optional[StrictInt] = Field(default=None, alias="RotationAngle")
+ document_name: SkipValidation[Optional[str]] = Field(alias="DocumentName", default=None, description="Document name")
+ id: SkipValidation[int] = Field(alias="ID", description="Unique document type template identifier (Regula's internal numeric code)")
+ p: SkipValidation[float] = Field(alias="P", description="A measure of the likelihood of correct recognition in the analysis of this type of document")
+ rotated180: SkipValidation[int] = Field(alias="Rotated180", description="Indicates if the document of the given type is rotated by 180 degrees")
+ rfid_presence: SkipValidation[RfidLocation] = Field(alias="RFID_Presence")
+ fdsid_list: SkipValidation[Optional[FDSIDList]] = Field(alias="FDSIDList", default=None)
+ necessary_lights: SkipValidation[int] = Field(alias="NecessaryLights", description="Combination of lighting scheme identifiers (Light enum) required to conduct OCR for this type of document")
+ check_authenticity: SkipValidation[int] = Field(alias="CheckAuthenticity", description="Set of authentication options provided for this type of document (combination of Authenticity enum)")
+ uv_exp: SkipValidation[int] = Field(alias="UVExp", description="The required exposure value of the camera when receiving images of a document of this type for a UV lighting scheme")
+ authenticity_necessary_lights: SkipValidation[int] = Field(alias="AuthenticityNecessaryLights", description="Combination of lighting scheme identifiers (combination of Light enum) needed to perform all authenticity checks specified in CheckAuthenticity")
+ ovi_exp: SkipValidation[float] = Field(alias="OVIExp", description="Camera exposure value necessary when obtaining document images of the given type for AXIAL lighting scheme")
+ rotation_angle: SkipValidation[Optional[int]] = Field(alias="RotationAngle", default=None)
__properties: ClassVar[List[str]] = ["DocumentName", "ID", "P", "Rotated180", "RFID_Presence", "FDSIDList", "NecessaryLights", "CheckAuthenticity", "UVExp", "AuthenticityNecessaryLights", "OVIExp", "RotationAngle"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,7 +78,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of fdsid_list
- if self.fdsid_list:
+ if self.fdsid_list and isinstance(self.fdsid_list, FDSIDList):
_dict['FDSIDList'] = self.fdsid_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/one_candidate_item.py b/regula/documentreader/webclient/gen/models/one_candidate_item.py
index 675cde4..e4376f1 100644
--- a/regula/documentreader/webclient/gen/models/one_candidate_item.py
+++ b/regula/documentreader/webclient/gen/models/one_candidate_item.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.one_candidate import OneCandidate
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OneCandidateItem(BaseModel):
"""
OneCandidateItem
""" # noqa: E501
- one_candidate: OneCandidate = Field(alias="OneCandidate")
- xml_buffer: Optional[StrictStr] = Field(default=None, alias="XML_buffer")
+ one_candidate: SkipValidation[OneCandidate] = Field(alias="OneCandidate")
+ xml_buffer: SkipValidation[Optional[str]] = Field(alias="XML_buffer", default=None)
__properties: ClassVar[List[str]] = ["OneCandidate", "XML_buffer"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,7 +68,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of one_candidate
- if self.one_candidate:
+ if self.one_candidate and isinstance(self.one_candidate, OneCandidate):
_dict['OneCandidate'] = self.one_candidate.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/original_symbol.py b/regula/documentreader/webclient/gen/models/original_symbol.py
index 88df32e..e7fba91 100644
--- a/regula/documentreader/webclient/gen/models/original_symbol.py
+++ b/regula/documentreader/webclient/gen/models/original_symbol.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OriginalSymbol(BaseModel):
"""
OriginalSymbol
""" # noqa: E501
- code: StrictInt = Field(description="Unicode symbol code")
- probability: Annotated[int, Field(le=100, strict=True, ge=0)] = Field(description="Probability of correctness reading of a single character")
- rect: Optional[RectangleCoordinates] = None
+ code: SkipValidation[int] = Field(alias="code", description="Unicode symbol code")
+ probability: SkipValidation[int] = Field(alias="probability", description="Probability of correctness reading of a single character")
+ rect: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="rect", default=None)
__properties: ClassVar[List[str]] = ["code", "probability", "rect"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,7 +68,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of rect
- if self.rect:
+ if self.rect and isinstance(self.rect, RectangleCoordinates):
_dict['rect'] = self.rect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/out_data.py b/regula/documentreader/webclient/gen/models/out_data.py
index 1e30f61..d570c63 100644
--- a/regula/documentreader/webclient/gen/models/out_data.py
+++ b/regula/documentreader/webclient/gen/models/out_data.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.out_data_transaction_images_field_value import OutDataTransactionImagesFieldValue
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OutData(BaseModel):
"""
OutData
""" # noqa: E501
- url: Optional[StrictStr] = Field(default=None, description="Response url")
- images: Optional[List[OutDataTransactionImagesFieldValue]] = None
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="Response url")
+ images: SkipValidation[Optional[List[OutDataTransactionImagesFieldValue]]] = Field(alias="images", default=None)
__properties: ClassVar[List[str]] = ["url", "images"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.images:
for _item_images in self.images:
- if _item_images:
+ if _item_images and hasattr(_item_images, "to_dict"):
_items.append(_item_images.to_dict())
_dict['images'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/out_data_transaction_images_field_value.py b/regula/documentreader/webclient/gen/models/out_data_transaction_images_field_value.py
index f80116c..0c343db 100644
--- a/regula/documentreader/webclient/gen/models/out_data_transaction_images_field_value.py
+++ b/regula/documentreader/webclient/gen/models/out_data_transaction_images_field_value.py
@@ -15,22 +15,25 @@
from regula.documentreader.webclient.gen.models.light import Light
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class OutDataTransactionImagesFieldValue(BaseModel):
"""
OutDataTransactionImagesFieldValue
""" # noqa: E501
- field_type: Optional[GraphicFieldType] = Field(default=None, alias="fieldType")
- light: Optional[Light] = None
- list_idx: Optional[StrictInt] = Field(default=None, alias="listIdx")
- page_idx: Optional[StrictInt] = Field(default=None, description="Page index of the image from input list", alias="pageIdx")
- url: Optional[StrictStr] = Field(default=None, description="Image url")
+ field_type: SkipValidation[Optional[GraphicFieldType]] = Field(alias="fieldType", default=None)
+ light: SkipValidation[Optional[Light]] = Field(alias="light", default=None)
+ list_idx: SkipValidation[Optional[int]] = Field(alias="listIdx", default=None)
+ page_idx: SkipValidation[Optional[int]] = Field(alias="pageIdx", default=None, description="Page index of the image from input list")
+ url: SkipValidation[Optional[str]] = Field(alias="url", default=None, description="Image url")
__properties: ClassVar[List[str]] = ["fieldType", "light", "listIdx", "pageIdx", "url"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/p_array_field.py b/regula/documentreader/webclient/gen/models/p_array_field.py
index 7156d85..6cc291e 100644
--- a/regula/documentreader/webclient/gen/models/p_array_field.py
+++ b/regula/documentreader/webclient/gen/models/p_array_field.py
@@ -18,27 +18,30 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PArrayField(BaseModel):
"""
PArrayField
""" # noqa: E501
- bc_angle_detect: Union[StrictFloat, StrictInt] = Field(alias="bcAngle_DETECT")
- bc_code_result: StrictInt = Field(alias="bcCodeResult")
- bc_count_module: StrictInt = Field(alias="bcCountModule")
- bc_data_module: List[DataModule] = Field(alias="bcDataModule")
- bc_pdf417_info: Optional[BcPDF417INFO] = Field(default=None, alias="bcPDF417INFO")
- bc_roi_detect: BcROIDETECT = Field(alias="bcROI_DETECT")
- bc_text_decoder_types: Optional[StrictInt] = Field(default=None, alias="bcTextDecoderTypes")
- bc_text_field_type: Optional[TextFieldType] = Field(default=None, alias="bcTextFieldType")
- bc_type_decode: BarcodeType = Field(alias="bcType_DECODE")
- bc_type_detect: StrictInt = Field(alias="bcType_DETECT")
+ bc_angle_detect: SkipValidation[float] = Field(alias="bcAngle_DETECT")
+ bc_code_result: SkipValidation[int] = Field(alias="bcCodeResult")
+ bc_count_module: SkipValidation[int] = Field(alias="bcCountModule")
+ bc_data_module: SkipValidation[List[DataModule]] = Field(alias="bcDataModule")
+ bc_pdf417_info: SkipValidation[Optional[BcPDF417INFO]] = Field(alias="bcPDF417INFO", default=None)
+ bc_roi_detect: SkipValidation[BcROIDETECT] = Field(alias="bcROI_DETECT")
+ bc_text_decoder_types: SkipValidation[Optional[int]] = Field(alias="bcTextDecoderTypes", default=None)
+ bc_text_field_type: SkipValidation[Optional[TextFieldType]] = Field(alias="bcTextFieldType", default=None)
+ bc_type_decode: SkipValidation[BarcodeType] = Field(alias="bcType_DECODE")
+ bc_type_detect: SkipValidation[int] = Field(alias="bcType_DETECT")
__properties: ClassVar[List[str]] = ["bcAngle_DETECT", "bcCodeResult", "bcCountModule", "bcDataModule", "bcPDF417INFO", "bcROI_DETECT", "bcTextDecoderTypes", "bcTextFieldType", "bcType_DECODE", "bcType_DETECT"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -78,14 +81,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.bc_data_module:
for _item_bc_data_module in self.bc_data_module:
- if _item_bc_data_module:
+ if _item_bc_data_module and hasattr(_item_bc_data_module, "to_dict"):
_items.append(_item_bc_data_module.to_dict())
_dict['bcDataModule'] = _items
# override the default output from pydantic by calling `to_dict()` of bc_pdf417_info
- if self.bc_pdf417_info:
+ if self.bc_pdf417_info and isinstance(self.bc_pdf417_info, BcPDF417INFO):
_dict['bcPDF417INFO'] = self.bc_pdf417_info.to_dict()
# override the default output from pydantic by calling `to_dict()` of bc_roi_detect
- if self.bc_roi_detect:
+ if self.bc_roi_detect and isinstance(self.bc_roi_detect, BcROIDETECT):
_dict['bcROI_DETECT'] = self.bc_roi_detect.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/parsed_data.py b/regula/documentreader/webclient/gen/models/parsed_data.py
index 45425b7..7603818 100644
--- a/regula/documentreader/webclient/gen/models/parsed_data.py
+++ b/regula/documentreader/webclient/gen/models/parsed_data.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ParsedData(BaseModel):
"""
ParsedData
""" # noqa: E501
- parsing_notifications: Optional[List[ParsingNotificationCodes]] = Field(default=None, alias="ParsingNotifications")
+ parsing_notifications: SkipValidation[Optional[List[ParsingNotificationCodes]]] = Field(alias="ParsingNotifications", default=None)
__properties: ClassVar[List[str]] = ["ParsingNotifications"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/parsing_notification_codes.py b/regula/documentreader/webclient/gen/models/parsing_notification_codes.py
index 587276d..5e06684 100644
--- a/regula/documentreader/webclient/gen/models/parsing_notification_codes.py
+++ b/regula/documentreader/webclient/gen/models/parsing_notification_codes.py
@@ -201,6 +201,8 @@ class ParsingNotificationCodes(int, Enum):
ntfLDS_Biometrics_BDB_Data_PoseAngleU_Roll = 2417491968
ntfLDS_Biometrics_BDB_Data_FaceImageType = 2417557504
ntfLDS_Biometrics_BDB_Data_ImageDataType = 2417623040
+ ntfLDS_SI_Storage_CS_NonConsistant = 2432696593
+ ntfLDS_SI_Storage_CS_PACE_CAM_Key_Missing = 2432696594
ntfLDS_Biometrics_RB_Data_Incorrect = 2449539072
ntfLDS_Biometrics_RB_Item_Incorrect = 2449604608
ntfLDS_Biometrics_RB_Item_Missing = 2449670144
diff --git a/regula/documentreader/webclient/gen/models/per_document_config.py b/regula/documentreader/webclient/gen/models/per_document_config.py
index a0a719a..4cfb22d 100644
--- a/regula/documentreader/webclient/gen/models/per_document_config.py
+++ b/regula/documentreader/webclient/gen/models/per_document_config.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PerDocumentConfig(BaseModel):
"""
PerDocumentConfig
""" # noqa: E501
- doc_id: Optional[List[StrictInt]] = Field(default=None, description="Specific template IDs, for which apply current custom configuration", alias="docID")
- exclude_auth_checks: Optional[StrictInt] = Field(default=None, description="Contains items from AuthenticityResultType as sum via OR operation", alias="excludeAuthChecks")
+ doc_id: SkipValidation[Optional[List[int]]] = Field(alias="docID", default=None, description="Specific template IDs, for which apply current custom configuration")
+ exclude_auth_checks: SkipValidation[Optional[int]] = Field(alias="excludeAuthChecks", default=None, description="Contains items from AuthenticityResultType as sum via OR operation")
__properties: ClassVar[List[str]] = ["docID", "excludeAuthChecks"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/photo_ident_item.py b/regula/documentreader/webclient/gen/models/photo_ident_item.py
index 6d865d7..6a976aa 100644
--- a/regula/documentreader/webclient/gen/models/photo_ident_item.py
+++ b/regula/documentreader/webclient/gen/models/photo_ident_item.py
@@ -17,26 +17,29 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PhotoIdentItem(BaseModel):
"""
PhotoIdentItem
""" # noqa: E501
- light_index: Light = Field(alias="LightIndex")
- area: RectangleCoordinates = Field(alias="Area")
- source_image: ImageData = Field(alias="SourceImage")
- result_images: RawImageContainerList = Field(alias="ResultImages")
- field_types_count: Optional[StrictInt] = Field(default=None, alias="FieldTypesCount")
- field_types_list: Optional[List[StrictInt]] = Field(default=None, alias="FieldTypesList")
- step: Optional[StrictInt] = Field(default=None, alias="Step")
- angle: Optional[StrictInt] = Field(default=None, alias="Angle")
- reserved3: Optional[StrictInt] = Field(default=None, alias="Reserved3")
+ light_index: SkipValidation[Light] = Field(alias="LightIndex")
+ area: SkipValidation[RectangleCoordinates] = Field(alias="Area")
+ source_image: SkipValidation[ImageData] = Field(alias="SourceImage")
+ result_images: SkipValidation[RawImageContainerList] = Field(alias="ResultImages")
+ field_types_count: SkipValidation[Optional[int]] = Field(alias="FieldTypesCount", default=None)
+ field_types_list: SkipValidation[Optional[List[int]]] = Field(alias="FieldTypesList", default=None)
+ step: SkipValidation[Optional[int]] = Field(alias="Step", default=None)
+ angle: SkipValidation[Optional[int]] = Field(alias="Angle", default=None)
+ reserved3: SkipValidation[Optional[int]] = Field(alias="Reserved3", default=None)
__properties: ClassVar[List[str]] = ["LightIndex", "Area", "SourceImage", "ResultImages", "FieldTypesCount", "FieldTypesList", "Step", "Angle", "Reserved3"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -73,13 +76,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of area
- if self.area:
+ if self.area and isinstance(self.area, RectangleCoordinates):
_dict['Area'] = self.area.to_dict()
# override the default output from pydantic by calling `to_dict()` of source_image
- if self.source_image:
+ if self.source_image and isinstance(self.source_image, ImageData):
_dict['SourceImage'] = self.source_image.to_dict()
# override the default output from pydantic by calling `to_dict()` of result_images
- if self.result_images:
+ if self.result_images and isinstance(self.result_images, RawImageContainerList):
_dict['ResultImages'] = self.result_images.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/photo_ident_result.py b/regula/documentreader/webclient/gen/models/photo_ident_result.py
index 48b8c16..ba1c97c 100644
--- a/regula/documentreader/webclient/gen/models/photo_ident_result.py
+++ b/regula/documentreader/webclient/gen/models/photo_ident_result.py
@@ -21,26 +21,29 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PhotoIdentResult(AuthenticityCheckResultItem):
"""
PhotoIdentResult
""" # noqa: E501
- light_index: Light = Field(alias="LightIndex")
- area: RectangleCoordinates = Field(alias="Area")
- source_image: ImageData = Field(alias="SourceImage")
- result_images: RawImageContainerList = Field(alias="ResultImages")
- field_types_count: Optional[StrictInt] = Field(default=None, alias="FieldTypesCount")
- field_types_list: Optional[List[StrictInt]] = Field(default=None, alias="FieldTypesList")
- step: Optional[StrictInt] = Field(default=None, alias="Step")
- angle: Optional[StrictInt] = Field(default=None, alias="Angle")
- reserved3: Optional[StrictInt] = Field(default=None, alias="Reserved3")
+ light_index: SkipValidation[Light] = Field(alias="LightIndex")
+ area: SkipValidation[RectangleCoordinates] = Field(alias="Area")
+ source_image: SkipValidation[ImageData] = Field(alias="SourceImage")
+ result_images: SkipValidation[RawImageContainerList] = Field(alias="ResultImages")
+ field_types_count: SkipValidation[Optional[int]] = Field(alias="FieldTypesCount", default=None)
+ field_types_list: SkipValidation[Optional[List[int]]] = Field(alias="FieldTypesList", default=None)
+ step: SkipValidation[Optional[int]] = Field(alias="Step", default=None)
+ angle: SkipValidation[Optional[int]] = Field(alias="Angle", default=None)
+ reserved3: SkipValidation[Optional[int]] = Field(alias="Reserved3", default=None)
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue", "LightIndex", "Area", "SourceImage", "ResultImages", "FieldTypesCount", "FieldTypesList", "Step", "Angle", "Reserved3"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -77,13 +80,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of area
- if self.area:
+ if self.area and isinstance(self.area, RectangleCoordinates):
_dict['Area'] = self.area.to_dict()
# override the default output from pydantic by calling `to_dict()` of source_image
- if self.source_image:
+ if self.source_image and isinstance(self.source_image, ImageData):
_dict['SourceImage'] = self.source_image.to_dict()
# override the default output from pydantic by calling `to_dict()` of result_images
- if self.result_images:
+ if self.result_images and isinstance(self.result_images, RawImageContainerList):
_dict['ResultImages'] = self.result_images.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/pid.py b/regula/documentreader/webclient/gen/models/pid.py
new file mode 100644
index 0000000..f92aae8
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/pid.py
@@ -0,0 +1,88 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class PID(BaseModel):
+ """
+ PID
+ """ # noqa: E501
+ dob: SkipValidation[Optional[str]] = Field(alias="dob", default=None)
+ i: SkipValidation[Optional[str]] = Field(alias="i", default=None)
+ n: SkipValidation[Optional[str]] = Field(alias="n", default=None)
+ sex: SkipValidation[Optional[str]] = Field(alias="sex", default=None)
+ __properties: ClassVar[List[str]] = ["dob", "i", "n", "sex"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of PID from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of PID from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "dob": obj.get("dob"),
+ "i": obj.get("i"),
+ "n": obj.get("n"),
+ "sex": obj.get("sex")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/point.py b/regula/documentreader/webclient/gen/models/point.py
index ea35b9e..e84cf86 100644
--- a/regula/documentreader/webclient/gen/models/point.py
+++ b/regula/documentreader/webclient/gen/models/point.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Point(BaseModel):
"""
Point
""" # noqa: E501
- x: StrictInt
- y: StrictInt
+ x: SkipValidation[int] = Field(alias="x")
+ y: SkipValidation[int] = Field(alias="y")
__properties: ClassVar[List[str]] = ["x", "y"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/point_array.py b/regula/documentreader/webclient/gen/models/point_array.py
index 8b6bd6a..d98d4bd 100644
--- a/regula/documentreader/webclient/gen/models/point_array.py
+++ b/regula/documentreader/webclient/gen/models/point_array.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.point import Point
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PointArray(BaseModel):
"""
PointArray
""" # noqa: E501
- points_list: List[Point] = Field(alias="PointsList")
+ points_list: SkipValidation[List[Point]] = Field(alias="PointsList")
__properties: ClassVar[List[str]] = ["PointsList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,7 +68,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.points_list:
for _item_points_list in self.points_list:
- if _item_points_list:
+ if _item_points_list and hasattr(_item_points_list, "to_dict"):
_items.append(_item_points_list.to_dict())
_dict['PointsList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/points_container.py b/regula/documentreader/webclient/gen/models/points_container.py
index ca1413c..749d01a 100644
--- a/regula/documentreader/webclient/gen/models/points_container.py
+++ b/regula/documentreader/webclient/gen/models/points_container.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.point import Point
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class PointsContainer(BaseModel):
"""
PointsContainer
""" # noqa: E501
- point_count: Optional[StrictInt] = Field(default=None, alias="PointCount")
- points_list: List[Point] = Field(alias="PointsList")
+ point_count: SkipValidation[Optional[int]] = Field(alias="PointCount", default=None)
+ points_list: SkipValidation[List[Point]] = Field(alias="PointsList")
__properties: ClassVar[List[str]] = ["PointCount", "PointsList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.points_list:
for _item_points_list in self.points_list:
- if _item_points_list:
+ if _item_points_list and hasattr(_item_points_list, "to_dict"):
_items.append(_item_points_list.to_dict())
_dict['PointsList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/process_params.py b/regula/documentreader/webclient/gen/models/process_params.py
index 72f3fd5..4506635 100644
--- a/regula/documentreader/webclient/gen/models/process_params.py
+++ b/regula/documentreader/webclient/gen/models/process_params.py
@@ -12,6 +12,7 @@
from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
from typing import Any, ClassVar, Dict, List, Optional
from regula.documentreader.webclient.gen.models.auth_params import AuthParams
+from regula.documentreader.webclient.gen.models.bsi_tr03135 import BsiTr03135
from regula.documentreader.webclient.gen.models.document_format import DocumentFormat
from regula.documentreader.webclient.gen.models.document_type import DocumentType
from regula.documentreader.webclient.gen.models.face_api import FaceApi
@@ -30,81 +31,90 @@
from regula.documentreader.webclient.gen.models.text_post_processing import TextPostProcessing
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessParams(BaseModel):
"""
ProcessParams
""" # noqa: E501
- generate_dtcvc: Optional[StrictBool] = Field(default=None, description="This parameter is used to generate separate DTC-VC data container from RFID session data.", alias="generateDTCVC")
- lcid_filter: Optional[List[LCID]] = Field(default=None, description="The list of LCID types to recognize. If empty, values with all LCID types will be extracted. Empty by default.", alias="lcidFilter")
- check_liveness: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable document liveness check.", alias="checkLiveness")
- lcid_ignore_filter: Optional[List[LCID]] = Field(default=None, description="The list of LCID types to ignore during the recognition. If empty, values with all LCID types will be extracted. Narrowing down the list can reduce processing time. Empty by default.", alias="lcidIgnoreFilter")
- one_shot_identification: Optional[StrictBool] = Field(default=None, description="This parameter allows processing an image that contains a person and a document and compare the portrait photo from the document with the person's face", alias="oneShotIdentification")
- use_face_api: Optional[StrictBool] = Field(default=None, description="This parameter allows comparing faces on Regula Face Web Service", alias="useFaceApi")
- face_api: Optional[FaceApi] = Field(default=None, alias="faceApi")
- do_detect_can: Optional[StrictBool] = Field(default=None, description="This parameter allows enabling the CAN (Card Access Number) detection and recognition when using scenarios with document location and MRZ reading, such as the MrzAndLocate scenario.", alias="doDetectCan")
- image_output_max_height: Optional[StrictInt] = Field(default=None, description="This parameter allows setting maximum height in pixels of output images and thus reducing image size to desired. Does not change the aspect ratio. Changes disabled if equals to 0. Default 0.", alias="imageOutputMaxHeight")
- image_output_max_width: Optional[StrictInt] = Field(default=None, description="This parameter allows setting maximum width in pixels of output images and thus reducing image size to desired. Does not change the aspect ratio. Changes disabled if equals to 0. Default 0.", alias="imageOutputMaxWidth")
- scenario: Scenario
- result_type_output: Optional[List[Result]] = Field(default=None, description="Types of results to return in response. See 'Result' enum for available options", alias="resultTypeOutput")
- double_page_spread: Optional[StrictBool] = Field(default=None, description="Enable this option if the image you provide contains double page spread of the passport and you want to process both pages in one go. It makes sense to use it for documents that have meaningful information on both pages, like Russian domestic passport, or some others. Disabled by default.", alias="doublePageSpread")
- generate_double_page_spread_image: Optional[StrictBool] = Field(default=None, description="When enabled together with \"doublePageSpread\" and there is a passport with two pages spread in the image, pages will be cropped, straightened and aligned together, as if the document was captured on a flatbed scanner. Disabled by default.", alias="generateDoublePageSpreadImage")
- field_types_filter: Optional[List[TextFieldType]] = Field(default=None, description="List of text field types to extract. If empty, all text fields from template will be extracted. Narrowing the list can shorten processing time. Empty by default.", alias="fieldTypesFilter")
- date_format: Optional[StrictStr] = Field(default=None, description="This option allows you to set dates format so that solution will return dates in this format. For example, if you supply 'MM/dd/yyyy', and document have printed date '09 JUL 2020' for the date os issue, you will get '07/09/2020' as a result. By default it is set to system locale default (where the service is running).", alias="dateFormat")
- measure_system: Optional[MeasureSystem] = Field(default=None, alias="measureSystem")
- image_dpi_out_max: Optional[StrictInt] = Field(default=None, description="This parameter controls maximum resolution in dpi of output images. Resolution will remain original in case 0 is supplied. By default is set to return images in response with resolution not greater than 300 dpi for all scenarios except FullAuth. In FullAuth scenario this limit is 1000 dpi by default.", alias="imageDpiOutMax")
- already_cropped: Optional[StrictBool] = Field(default=None, description="This option can be enabled if you know for sure that the image you provide contains already cropped document by its edges. This was designed to process on the server side images captured and cropped on mobile. Disabled by default.", alias="alreadyCropped")
- custom_params: Optional[Dict[str, Any]] = Field(default=None, description="This option allows passing custom processing parameters that can be implemented in future without changing API.", alias="customParams")
- config: Optional[List[PerDocumentConfig]] = Field(default=None, description="This option allows setting additional custom configuration per document type. If recognized document has ID specified in config, processing adjusts according to designated configuration.")
- log: Optional[StrictBool] = Field(default=None, description="When enabled, results will contain transaction processing log. Disabled by default")
- log_level: Optional[LogLevel] = Field(default=None, alias="logLevel")
- force_doc_id: Optional[StrictInt] = Field(default=None, description="Force use of specific template ID and skip document type identification step.", alias="forceDocID")
- match_text_field_mask: Optional[StrictBool] = Field(default=None, description="When disabled, text field OCR will be done as is and then the recognized value will be matched to the field mask for validity. If enabled, we are trying to read a field value with maximum efforts to match the mask and provide a correctly formatted value, making assumptions based on the provided field mask in the template. Enabled by default.", alias="matchTextFieldMask")
- fast_doc_detect: Optional[StrictBool] = Field(default=None, description="When enabled, shorten the list of candidates to process during document detection in a single image process mode. Reduces processing time for specific backgrounds. Enabled by default.", alias="fastDocDetect")
- update_ocr_validity_by_glare: Optional[StrictBool] = Field(default=None, description="When enabled, fail OCR field validity, if there is a glare over the text field on the image. Disabled by default.", alias="updateOCRValidityByGlare")
- check_required_text_fields: Optional[StrictBool] = Field(default=None, description="When enabled, each field in template will be checked for value presence and if the field is marked as required, but has no value, it will have 'error' in validity status. Disabled by default.", alias="checkRequiredTextFields")
- return_cropped_barcode: Optional[StrictBool] = Field(default=None, description="When enabled, returns cropped barcode images for unknown documents. Disabled by default.", alias="returnCroppedBarcode")
- image_qa: Optional[ImageQA] = Field(default=None, alias="imageQa")
- strict_image_quality: Optional[StrictBool] = Field(default=None, description="When enabled, the image quality check status affects the document optical and overall status. Disabled by default.", alias="strictImageQuality")
- respect_image_quality: Optional[StrictBool] = Field(default=None, description="Deprecated. Please use strictImageQuality instead. When enabled, image quality checks status affects document optical and overall status. Disabled by default.", alias="respectImageQuality")
- force_doc_format: Optional[DocumentFormat] = Field(default=None, alias="forceDocFormat")
- no_graphics: Optional[StrictBool] = Field(default=None, description="When enabled, no graphic fields will be cropped from document image. Disabled by default.", alias="noGraphics")
- depersonalize_log: Optional[StrictBool] = Field(default=None, description="When enabled, all personal data will be forcibly removed from the logs. Disabled by default.", alias="depersonalizeLog")
- multi_doc_on_image: Optional[StrictBool] = Field(default=None, description="This option allows locating and cropping multiple documents from one image if enabled. Disabled by default.", alias="multiDocOnImage")
- shift_expiry_date: Optional[StrictInt] = Field(default=None, description="This option allows shifting the date of expiry into the future or past for number of months specified. This is useful, for example, in some cases when document might be still valid for some period after original expiration date to prevent negative validity status for such documents. Or by shifting the date to the past will set negative validity for the documents that is about to expire in a specified number of months. 0 by default", alias="shiftExpiryDate")
- minimal_holder_age: Optional[StrictInt] = Field(default=None, description="This options allows specifying the minimal age in years of the document holder for the document to be considered valid.", alias="minimalHolderAge")
- return_uncropped_image: Optional[StrictBool] = Field(default=None, description="When enabled, returns input images in output. Disabled by default.", alias="returnUncroppedImage")
- mrz_formats_filter: Optional[List[MRZFormat]] = Field(default=None, description="This option allows limiting MRZ formats to be recognized by specifying them in array.", alias="mrzFormatsFilter")
- force_read_mrz_before_locate: Optional[StrictBool] = Field(default=None, description="When enabled, make sure that in series processing MRZ is located fully inside the result document image, if present on the document. Enabling this option may add extra processing time, by disabling optimizations, but allows more stability in output image quality. Disabled by default.", alias="forceReadMrzBeforeLocate")
- parse_barcodes: Optional[StrictBool] = Field(default=None, description="This option can be disabled to stop parsing after barcode is read. Enabled by default.", alias="parseBarcodes")
- convert_case: Optional[TextPostProcessing] = Field(default=None, alias="convertCase")
- split_names: Optional[StrictBool] = Field(default=None, description="When enabled, the Surname and GivenNames fields from MRZ will be divided into ft_First_Name, ft_Second_Name, ft_Third_Name, ft_Fourth_Name, ft_Last_Name fields. Disabled by default.", alias="splitNames")
- disable_perforation_ocr: Optional[StrictBool] = Field(default=None, description="When enabled, OCR of perforated fields in the document template will not be performed. Disabled by default.", alias="disablePerforationOCR")
- document_group_filter: Optional[List[DocumentType]] = Field(default=None, description="List of specific eligible document types from DocumentType enum to recognize from. You may, for example, specify only passports to be recognized by setting this property. Empty by default.", alias="documentGroupFilter")
- process_auth: Optional[StrictInt] = Field(default=None, description="Authenticity checks that should be performed regardless of the document type. The available checks are listed in the eRPRM_Authenticity enum. Note that only supported by your license checks can be added.", alias="processAuth")
- device_id: Optional[StrictInt] = Field(default=None, description="This parameter is used to specify the document reader device type from which input images were captured. Default 0.", alias="deviceId")
- device_type: Optional[StrictInt] = Field(default=None, description="This parameter is used to specify the document reader device type from which input images were captured. Default 0.", alias="deviceType")
- device_type_hex: Optional[StrictStr] = Field(default=None, description="This parameter is used to specify the document reader device type from which input images were captured", alias="deviceTypeHex")
- ignore_device_id_from_image: Optional[StrictBool] = Field(default=None, description="This parameter is used to tell the processing engine to ignore any parameters saved in the image when scanned from the document reader device. Default false", alias="ignoreDeviceIdFromImage")
- document_id_list: Optional[List[StrictInt]] = Field(default=None, description="List of the document ID's to process. All documents will be processed, if empty.", alias="documentIdList")
- rfid: Optional[ProcessParamsRfid] = None
- check_auth: Optional[StrictBool] = Field(default=None, description="This parameter is used to enable authenticity checks", alias="checkAuth")
- auth_params: Optional[AuthParams] = Field(default=None, alias="authParams")
- mrz_detect_mode: Optional[MrzDetectModeEnum] = Field(default=None, alias="mrzDetectMode")
- generate_numeric_codes: Optional[StrictBool] = Field(default=None, description="This parameter is used to generate numeric representation for issuing state and nationality codes", alias="generateNumericCodes")
- strict_barcode_digital_signature_check: Optional[StrictBool] = Field(default=None, description="This parameter if enabled will require all necessary certificates to verify digital signature in barcode data to be present in order for the Barcode format check to succeed.", alias="strictBarcodeDigitalSignatureCheck")
- select_longest_names: Optional[StrictBool] = Field(default=None, description="Select the longest value from the different value sources and write it to the value field if comparison is done successfully. The parameter applies this logic to the personal names, such as given name, surname, surname and given name, middle name and etc.", alias="selectLongestNames")
- do_barcodes: Optional[List[InputBarcodeType]] = Field(default=None, description="Set the types of barcodes to process.", alias="doBarcodes")
- strict_dl_category_expiry: Optional[StrictBool] = Field(default=None, description="Set to force DL categories expiry date to affect the overall status or not. As documents usually have their own date of expiry, which might be less or greater than category expiry date, this might be handy for specific cases.", alias="strictDLCategoryExpiry")
- generate_alpha2_codes: Optional[StrictBool] = Field(default=None, description="Set to generate Alpha-2 codes for nationality and issuing state fields.", alias="generateAlpha2Codes")
- pdf_pages_limit: Optional[StrictInt] = Field(default=None, description="Limits the number of pages to be processed from a PDF file.", alias="pdfPagesLimit")
- disable_auth_resolution_filter: Optional[StrictBool] = Field(default=None, description="This parameter if enabled will ignore the minimum barcode resolution needed to start processing.", alias="disableAuthResolutionFilter")
- __properties: ClassVar[List[str]] = ["generateDTCVC", "lcidFilter", "checkLiveness", "lcidIgnoreFilter", "oneShotIdentification", "useFaceApi", "faceApi", "doDetectCan", "imageOutputMaxHeight", "imageOutputMaxWidth", "scenario", "resultTypeOutput", "doublePageSpread", "generateDoublePageSpreadImage", "fieldTypesFilter", "dateFormat", "measureSystem", "imageDpiOutMax", "alreadyCropped", "customParams", "config", "log", "logLevel", "forceDocID", "matchTextFieldMask", "fastDocDetect", "updateOCRValidityByGlare", "checkRequiredTextFields", "returnCroppedBarcode", "imageQa", "strictImageQuality", "respectImageQuality", "forceDocFormat", "noGraphics", "depersonalizeLog", "multiDocOnImage", "shiftExpiryDate", "minimalHolderAge", "returnUncroppedImage", "mrzFormatsFilter", "forceReadMrzBeforeLocate", "parseBarcodes", "convertCase", "splitNames", "disablePerforationOCR", "documentGroupFilter", "processAuth", "deviceId", "deviceType", "deviceTypeHex", "ignoreDeviceIdFromImage", "documentIdList", "rfid", "checkAuth", "authParams", "mrzDetectMode", "generateNumericCodes", "strictBarcodeDigitalSignatureCheck", "selectLongestNames", "doBarcodes", "strictDLCategoryExpiry", "generateAlpha2Codes", "pdfPagesLimit", "disableAuthResolutionFilter"]
+ generate_dtcvc: SkipValidation[Optional[bool]] = Field(alias="generateDTCVC", default=None, description="This parameter is used to generate separate DTC-VC data container from RFID session data.")
+ lcid_filter: SkipValidation[Optional[List[LCID]]] = Field(alias="lcidFilter", default=None, description="The list of LCID types to recognize. If empty, values with all LCID types will be extracted. Empty by default.")
+ check_liveness: SkipValidation[Optional[bool]] = Field(alias="checkLiveness", default=None, description="This parameter is used to enable document liveness check.")
+ lcid_ignore_filter: SkipValidation[Optional[List[LCID]]] = Field(alias="lcidIgnoreFilter", default=None, description="The list of LCID types to ignore during the recognition. If empty, values with all LCID types will be extracted. Narrowing down the list can reduce processing time. Empty by default.")
+ one_shot_identification: SkipValidation[Optional[bool]] = Field(alias="oneShotIdentification", default=None, description="This parameter allows processing an image that contains a person and a document and compare the portrait photo from the document with the person's face")
+ use_face_api: SkipValidation[Optional[bool]] = Field(alias="useFaceApi", default=None, description="This parameter allows comparing faces on Regula Face Web Service")
+ face_api: SkipValidation[Optional[FaceApi]] = Field(alias="faceApi", default=None)
+ do_detect_can: SkipValidation[Optional[bool]] = Field(alias="doDetectCan", default=None, description="This parameter allows enabling the CAN (Card Access Number) detection and recognition when using scenarios with document location and MRZ reading, such as the MrzAndLocate scenario.")
+ image_output_max_height: SkipValidation[Optional[int]] = Field(alias="imageOutputMaxHeight", default=None, description="This parameter allows setting maximum height in pixels of output images and thus reducing image size to desired. Does not change the aspect ratio. Changes disabled if equals to 0. Default 0.")
+ image_output_max_width: SkipValidation[Optional[int]] = Field(alias="imageOutputMaxWidth", default=None, description="This parameter allows setting maximum width in pixels of output images and thus reducing image size to desired. Does not change the aspect ratio. Changes disabled if equals to 0. Default 0.")
+ scenario: SkipValidation[Scenario] = Field(alias="scenario")
+ result_type_output: SkipValidation[Optional[List[Result]]] = Field(alias="resultTypeOutput", default=None, description="Types of results to return in response. See 'Result' enum for available options")
+ double_page_spread: SkipValidation[Optional[bool]] = Field(alias="doublePageSpread", default=None, description="Enable this option if the image you provide contains double page spread of the passport and you want to process both pages in one go. It makes sense to use it for documents that have meaningful information on both pages, like Russian domestic passport, or some others. Disabled by default.")
+ generate_double_page_spread_image: SkipValidation[Optional[bool]] = Field(alias="generateDoublePageSpreadImage", default=None, description="When enabled together with \"doublePageSpread\" and there is a passport with two pages spread in the image, pages will be cropped, straightened and aligned together, as if the document was captured on a flatbed scanner. Disabled by default.")
+ field_types_filter: SkipValidation[Optional[List[TextFieldType]]] = Field(alias="fieldTypesFilter", default=None, description="If a document contains Visual zone, you can set the list of field types to extract. In this case, other fields are skipped during the processing, i.e. document recognition becomes faster. This filter is not applicable to the MRZ, barcode or RFID. If the fieldTypesFilter is empty, all fields are extracted. Empty by default. If fieldTypesFilter and fieldTypesIgnoreFilter are used simultaneously, fieldTypesFilter takes priority.")
+ field_types_ignore_filter: SkipValidation[Optional[List[TextFieldType]]] = Field(alias="fieldTypesIgnoreFilter", default=None, description="If a document contains a Visual zone, you can specify a list of field types that should be excluded from extraction. All field types listed in this array are skipped during processing, while the remaining fields are recognized. This filter is not applicable to the MRZ, barcode or RFID. If the fieldTypesIgnoreFilter is empty, all fields are extracted. Empty by default. If fieldTypesFilter and fieldTypesIgnoreFilter are used simultaneously, fieldTypesFilter takes priority.")
+ date_format: SkipValidation[Optional[str]] = Field(alias="dateFormat", default=None, description="This option allows you to set dates format so that solution will return dates in this format. For example, if you supply 'MM/dd/yyyy', and document have printed date '09 JUL 2020' for the date os issue, you will get '07/09/2020' as a result. By default it is set to system locale default (where the service is running).")
+ measure_system: SkipValidation[Optional[MeasureSystem]] = Field(alias="measureSystem", default=None)
+ image_dpi_out_max: SkipValidation[Optional[int]] = Field(alias="imageDpiOutMax", default=None, description="This parameter controls maximum resolution in dpi of output images. Resolution will remain original in case 0 is supplied. By default is set to return images in response with resolution not greater than 300 dpi for all scenarios except FullAuth. In FullAuth scenario this limit is 1000 dpi by default.")
+ already_cropped: SkipValidation[Optional[bool]] = Field(alias="alreadyCropped", default=None, description="This option can be enabled if you know for sure that the image you provide contains already cropped document by its edges. This was designed to process on the server side images captured and cropped on mobile. Disabled by default.")
+ custom_params: SkipValidation[Optional[Dict[str, object]]] = Field(alias="customParams", default=None, description="This option allows passing custom processing parameters that can be implemented in future without changing API.")
+ config: SkipValidation[Optional[List[PerDocumentConfig]]] = Field(alias="config", default=None, description="This option allows setting additional custom configuration per document type. If recognized document has ID specified in config, processing adjusts according to designated configuration.")
+ log: SkipValidation[Optional[bool]] = Field(alias="log", default=None, description="When enabled, results will contain transaction processing log. Disabled by default")
+ log_level: SkipValidation[Optional[LogLevel]] = Field(alias="logLevel", default=None)
+ force_doc_id: SkipValidation[Optional[int]] = Field(alias="forceDocID", default=None, description="Force use of specific template ID and skip document type identification step.")
+ match_text_field_mask: SkipValidation[Optional[bool]] = Field(alias="matchTextFieldMask", default=None, description="When disabled, text field OCR will be done as is and then the recognized value will be matched to the field mask for validity. If enabled, we are trying to read a field value with maximum efforts to match the mask and provide a correctly formatted value, making assumptions based on the provided field mask in the template. Enabled by default.")
+ fast_doc_detect: SkipValidation[Optional[bool]] = Field(alias="fastDocDetect", default=None, description="When enabled, shorten the list of candidates to process during document detection in a single image process mode. Reduces processing time for specific backgrounds. Enabled by default.")
+ update_ocr_validity_by_glare: SkipValidation[Optional[bool]] = Field(alias="updateOCRValidityByGlare", default=None, description="When enabled, fail OCR field validity, if there is a glare over the text field on the image. Disabled by default.")
+ check_required_text_fields: SkipValidation[Optional[bool]] = Field(alias="checkRequiredTextFields", default=None, description="When enabled, each field in template will be checked for value presence and if the field is marked as required, but has no value, it will have 'error' in validity status. Disabled by default.")
+ return_cropped_barcode: SkipValidation[Optional[bool]] = Field(alias="returnCroppedBarcode", default=None, description="When enabled, returns cropped barcode images for unknown documents. Disabled by default.")
+ image_qa: SkipValidation[Optional[ImageQA]] = Field(alias="imageQa", default=None)
+ strict_image_quality: SkipValidation[Optional[bool]] = Field(alias="strictImageQuality", default=None, description="When enabled, the image quality check status affects the document optical and overall status. Disabled by default.")
+ respect_image_quality: SkipValidation[Optional[bool]] = Field(alias="respectImageQuality", default=None, description="Deprecated. Please use strictImageQuality instead. When enabled, image quality checks status affects document optical and overall status. Disabled by default.")
+ force_doc_format: SkipValidation[Optional[DocumentFormat]] = Field(alias="forceDocFormat", default=None)
+ no_graphics: SkipValidation[Optional[bool]] = Field(alias="noGraphics", default=None, description="When enabled, no graphic fields will be cropped from document image. Disabled by default.")
+ depersonalize_log: SkipValidation[Optional[bool]] = Field(alias="depersonalizeLog", default=None, description="When enabled, all personal data will be forcibly removed from the logs. Disabled by default.")
+ multi_doc_on_image: SkipValidation[Optional[bool]] = Field(alias="multiDocOnImage", default=None, description="This option allows locating and cropping multiple documents from one image if enabled. Disabled by default.")
+ shift_expiry_date: SkipValidation[Optional[int]] = Field(alias="shiftExpiryDate", default=None, description="This option allows shifting the date of expiry into the future or past for number of months specified. This is useful, for example, in some cases when document might be still valid for some period after original expiration date to prevent negative validity status for such documents. Or by shifting the date to the past will set negative validity for the documents that is about to expire in a specified number of months. 0 by default")
+ minimal_holder_age: SkipValidation[Optional[int]] = Field(alias="minimalHolderAge", default=None, description="This options allows specifying the minimal age in years of the document holder for the document to be considered valid.")
+ return_uncropped_image: SkipValidation[Optional[bool]] = Field(alias="returnUncroppedImage", default=None, description="When enabled, returns input images in output. Disabled by default.")
+ mrz_formats_filter: SkipValidation[Optional[List[MRZFormat]]] = Field(alias="mrzFormatsFilter", default=None, description="This option allows limiting MRZ formats to be recognized by specifying them in array.")
+ parse_barcodes: SkipValidation[Optional[bool]] = Field(alias="parseBarcodes", default=None, description="This option can be disabled to stop parsing after barcode is read. Enabled by default.")
+ convert_case: SkipValidation[Optional[TextPostProcessing]] = Field(alias="convertCase", default=None)
+ split_names: SkipValidation[Optional[bool]] = Field(alias="splitNames", default=None, description="When enabled, the Surname and GivenNames fields from MRZ will be divided into ft_First_Name, ft_Second_Name, ft_Third_Name, ft_Fourth_Name, ft_Last_Name fields. Disabled by default.")
+ disable_perforation_ocr: SkipValidation[Optional[bool]] = Field(alias="disablePerforationOCR", default=None, description="When enabled, OCR of perforated fields in the document template will not be performed. Disabled by default.")
+ document_group_filter: SkipValidation[Optional[List[DocumentType]]] = Field(alias="documentGroupFilter", default=None, description="List of specific eligible document types from DocumentType enum to recognize from. You may, for example, specify only passports to be recognized by setting this property. Empty by default.")
+ process_auth: SkipValidation[Optional[int]] = Field(alias="processAuth", default=None, description="Authenticity checks that should be performed regardless of the document type. The available checks are listed in the eRPRM_Authenticity enum. Note that only supported by your license checks can be added.")
+ device_id: SkipValidation[Optional[int]] = Field(alias="deviceId", default=None, description="This parameter is used to specify the document reader device type from which input images were captured. Default 0.")
+ device_type: SkipValidation[Optional[int]] = Field(alias="deviceType", default=None, description="This parameter is used to specify the document reader device type from which input images were captured. Default 0.")
+ device_type_hex: SkipValidation[Optional[str]] = Field(alias="deviceTypeHex", default=None, description="This parameter is used to specify the document reader device type from which input images were captured")
+ ignore_device_id_from_image: SkipValidation[Optional[bool]] = Field(alias="ignoreDeviceIdFromImage", default=None, description="This parameter is used to tell the processing engine to ignore any parameters saved in the image when scanned from the document reader device. Default false")
+ document_id_list: SkipValidation[Optional[List[int]]] = Field(alias="documentIdList", default=None, description="List of the document ID's to process. All documents will be processed, if empty.")
+ rfid: SkipValidation[Optional[ProcessParamsRfid]] = Field(alias="rfid", default=None)
+ check_auth: SkipValidation[Optional[bool]] = Field(alias="checkAuth", default=None, description="This parameter is used to enable authenticity checks")
+ auth_params: SkipValidation[Optional[AuthParams]] = Field(alias="authParams", default=None)
+ mrz_detect_mode: SkipValidation[Optional[MrzDetectModeEnum]] = Field(alias="mrzDetectMode", default=None)
+ generate_numeric_codes: SkipValidation[Optional[bool]] = Field(alias="generateNumericCodes", default=None, description="This parameter is used to generate numeric representation for issuing state and nationality codes")
+ strict_barcode_digital_signature_check: SkipValidation[Optional[bool]] = Field(alias="strictBarcodeDigitalSignatureCheck", default=None, description="This parameter if enabled will require all necessary certificates to verify digital signature in barcode data to be present in order for the Barcode format check to succeed.")
+ select_longest_names: SkipValidation[Optional[bool]] = Field(alias="selectLongestNames", default=None, description="Select the longest value from the different value sources and write it to the value field if comparison is done successfully. The parameter applies this logic to the personal names, such as given name, surname, surname and given name, middle name and etc.")
+ do_barcodes: SkipValidation[Optional[List[InputBarcodeType]]] = Field(alias="doBarcodes", default=None, description="Set the types of barcodes to process.")
+ strict_dl_category_expiry: SkipValidation[Optional[bool]] = Field(alias="strictDLCategoryExpiry", default=None, description="Set to force DL categories expiry date to affect the overall status or not. As documents usually have their own date of expiry, which might be less or greater than category expiry date, this might be handy for specific cases.")
+ generate_alpha2_codes: SkipValidation[Optional[bool]] = Field(alias="generateAlpha2Codes", default=None, description="Set to generate Alpha-2 codes for nationality and issuing state fields.")
+ pdf_pages_limit: SkipValidation[Optional[int]] = Field(alias="pdfPagesLimit", default=None, description="Limits the number of pages to be processed from a PDF file.")
+ disable_auth_resolution_filter: SkipValidation[Optional[bool]] = Field(alias="disableAuthResolutionFilter", default=None, description="This parameter if enabled will ignore the minimum barcode resolution needed to start processing.")
+ strict_security_checks: SkipValidation[Optional[bool]] = Field(alias="strictSecurityChecks", default=None, description="When enabled, this parameter marks security checks that don’t meet minimum requirements as 'Failed' (instead of 'WasNotDone'), which causes the overall security status to be 'Failed'.")
+ return_transliterated_fields: SkipValidation[Optional[bool]] = Field(alias="returnTransliteratedFields", default=None, description="Allows transliteration to be turned on or off; by default, it is enabled.")
+ bsi_tr03135: SkipValidation[Optional[BsiTr03135]] = Field(alias="bsiTr03135", default=None)
+ strict_expiry_date: SkipValidation[Optional[bool]] = Field(alias="strictExpiryDate", default=None, description="When disabled, date of expiry doesn't affect the MRZ and text statuses.")
+ check_vds: SkipValidation[Optional[bool]] = Field(alias="checkVDS", default=None, description="This parameter is used to enable Visible Digital Seal check. Disabled by default.")
+ strict_age_check: SkipValidation[Optional[bool]] = Field(alias="strictAgeCheck", default=None, description="When enabled, the age check status affects the overall status.")
+ __properties: ClassVar[List[str]] = ["generateDTCVC", "lcidFilter", "checkLiveness", "lcidIgnoreFilter", "oneShotIdentification", "useFaceApi", "faceApi", "doDetectCan", "imageOutputMaxHeight", "imageOutputMaxWidth", "scenario", "resultTypeOutput", "doublePageSpread", "generateDoublePageSpreadImage", "fieldTypesFilter", "fieldTypesIgnoreFilter", "dateFormat", "measureSystem", "imageDpiOutMax", "alreadyCropped", "customParams", "config", "log", "logLevel", "forceDocID", "matchTextFieldMask", "fastDocDetect", "updateOCRValidityByGlare", "checkRequiredTextFields", "returnCroppedBarcode", "imageQa", "strictImageQuality", "respectImageQuality", "forceDocFormat", "noGraphics", "depersonalizeLog", "multiDocOnImage", "shiftExpiryDate", "minimalHolderAge", "returnUncroppedImage", "mrzFormatsFilter", "parseBarcodes", "convertCase", "splitNames", "disablePerforationOCR", "documentGroupFilter", "processAuth", "deviceId", "deviceType", "deviceTypeHex", "ignoreDeviceIdFromImage", "documentIdList", "rfid", "checkAuth", "authParams", "mrzDetectMode", "generateNumericCodes", "strictBarcodeDigitalSignatureCheck", "selectLongestNames", "doBarcodes", "strictDLCategoryExpiry", "generateAlpha2Codes", "pdfPagesLimit", "disableAuthResolutionFilter", "strictSecurityChecks", "returnTransliteratedFields", "bsiTr03135", "strictExpiryDate", "checkVDS", "strictAgeCheck"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -141,24 +151,27 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of face_api
- if self.face_api:
+ if self.face_api and isinstance(self.face_api, FaceApi):
_dict['faceApi'] = self.face_api.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in config (list)
_items = []
if self.config:
for _item_config in self.config:
- if _item_config:
+ if _item_config and hasattr(_item_config, "to_dict"):
_items.append(_item_config.to_dict())
_dict['config'] = _items
# override the default output from pydantic by calling `to_dict()` of image_qa
- if self.image_qa:
+ if self.image_qa and isinstance(self.image_qa, ImageQA):
_dict['imageQa'] = self.image_qa.to_dict()
# override the default output from pydantic by calling `to_dict()` of rfid
- if self.rfid:
+ if self.rfid and isinstance(self.rfid, ProcessParamsRfid):
_dict['rfid'] = self.rfid.to_dict()
# override the default output from pydantic by calling `to_dict()` of auth_params
- if self.auth_params:
+ if self.auth_params and isinstance(self.auth_params, AuthParams):
_dict['authParams'] = self.auth_params.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of bsi_tr03135
+ if self.bsi_tr03135 and isinstance(self.bsi_tr03135, BsiTr03135):
+ _dict['bsiTr03135'] = self.bsi_tr03135.to_dict()
return _dict
@classmethod
@@ -186,6 +199,7 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"doublePageSpread": obj.get("doublePageSpread"),
"generateDoublePageSpreadImage": obj.get("generateDoublePageSpreadImage"),
"fieldTypesFilter": obj.get("fieldTypesFilter"),
+ "fieldTypesIgnoreFilter": obj.get("fieldTypesIgnoreFilter"),
"dateFormat": obj.get("dateFormat"),
"measureSystem": obj.get("measureSystem"),
"imageDpiOutMax": obj.get("imageDpiOutMax"),
@@ -211,7 +225,6 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"minimalHolderAge": obj.get("minimalHolderAge"),
"returnUncroppedImage": obj.get("returnUncroppedImage"),
"mrzFormatsFilter": obj.get("mrzFormatsFilter"),
- "forceReadMrzBeforeLocate": obj.get("forceReadMrzBeforeLocate"),
"parseBarcodes": obj.get("parseBarcodes"),
"convertCase": obj.get("convertCase"),
"splitNames": obj.get("splitNames"),
@@ -234,7 +247,13 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"strictDLCategoryExpiry": obj.get("strictDLCategoryExpiry"),
"generateAlpha2Codes": obj.get("generateAlpha2Codes"),
"pdfPagesLimit": obj.get("pdfPagesLimit"),
- "disableAuthResolutionFilter": obj.get("disableAuthResolutionFilter")
+ "disableAuthResolutionFilter": obj.get("disableAuthResolutionFilter"),
+ "strictSecurityChecks": obj.get("strictSecurityChecks"),
+ "returnTransliteratedFields": obj.get("returnTransliteratedFields"),
+ "bsiTr03135": BsiTr03135.from_dict(obj["bsiTr03135"]) if obj.get("bsiTr03135") is not None else None,
+ "strictExpiryDate": obj.get("strictExpiryDate"),
+ "checkVDS": obj.get("checkVDS"),
+ "strictAgeCheck": obj.get("strictAgeCheck")
})
return _obj
diff --git a/regula/documentreader/webclient/gen/models/process_params_rfid.py b/regula/documentreader/webclient/gen/models/process_params_rfid.py
index 21e526e..2489a80 100644
--- a/regula/documentreader/webclient/gen/models/process_params_rfid.py
+++ b/regula/documentreader/webclient/gen/models/process_params_rfid.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.parsing_notification_codes import ParsingNotificationCodes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessParamsRfid(BaseModel):
"""
Params for the RFID chip data reprocessing
""" # noqa: E501
- pa_ignore_notification_codes: Optional[List[ParsingNotificationCodes]] = Field(default=None, description="A list of notification codes that should be ignored during passive authentication (PA)", alias="paIgnoreNotificationCodes")
+ pa_ignore_notification_codes: SkipValidation[Optional[List[ParsingNotificationCodes]]] = Field(alias="paIgnoreNotificationCodes", default=None, description="A list of notification codes that should be ignored during passive authentication (PA)")
__properties: ClassVar[List[str]] = ["paIgnoreNotificationCodes"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/process_request.py b/regula/documentreader/webclient/gen/models/process_request.py
index 7d438b2..2940a73 100644
--- a/regula/documentreader/webclient/gen/models/process_request.py
+++ b/regula/documentreader/webclient/gen/models/process_request.py
@@ -17,29 +17,32 @@
from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessRequest(BaseModel):
"""
ProcessRequest
""" # noqa: E501
- process_param: ProcessParams = Field(alias="processParam")
- list: Optional[List[ProcessRequestImage]] = Field(default=None, alias="List")
- tag: Optional[StrictStr] = Field(default=None, description="Session ID")
- tenant: Optional[StrictStr] = Field(default=None, description="Customer name")
- env: Optional[StrictStr] = Field(default=None, description="Environment type")
- live_portrait: Optional[StrictStr] = Field(default=None, description="Live portrait photo", alias="livePortrait")
- ext_portrait: Optional[StrictStr] = Field(default=None, description="Portrait photo from an external source", alias="extPortrait")
- container_list: Optional[ContainerList] = Field(default=None, alias="ContainerList")
- system_info: Optional[ProcessSystemInfo] = Field(default=None, alias="systemInfo")
- pass_back_object: Optional[Dict[str, Any]] = Field(default=None, description="Free-form object to be included in response. Must be object, not list or simple value. Do not affect document processing. Use it freely to pass your app params. Stored in process logs.", alias="passBackObject")
- dtc: Optional[StrictStr] = Field(default=None, description="Digital Travel Credential (DTC-VC) data in base64 format for processing")
- image_urls: Optional[List[StrictStr]] = Field(default=None, description="URLs to the document images for processing.", alias="ImageUrls")
+ process_param: SkipValidation[ProcessParams] = Field(alias="processParam")
+ list: SkipValidation[Optional[List[ProcessRequestImage]]] = Field(alias="List", default=None)
+ tag: SkipValidation[Optional[str]] = Field(alias="tag", default=None, description="Session ID")
+ tenant: SkipValidation[Optional[str]] = Field(alias="tenant", default=None, description="Customer name")
+ env: SkipValidation[Optional[str]] = Field(alias="env", default=None, description="Environment type")
+ live_portrait: SkipValidation[Optional[str]] = Field(alias="livePortrait", default=None, description="Live portrait photo")
+ ext_portrait: SkipValidation[Optional[str]] = Field(alias="extPortrait", default=None, description="Portrait photo from an external source")
+ container_list: SkipValidation[Optional[ContainerList]] = Field(alias="ContainerList", default=None)
+ system_info: SkipValidation[Optional[ProcessSystemInfo]] = Field(alias="systemInfo", default=None)
+ pass_back_object: SkipValidation[Optional[Dict[str, object]]] = Field(alias="passBackObject", default=None, description="Free-form object to be included in response. Must be object, not list or simple value. Do not affect document processing. Use it freely to pass your app params. Stored in process logs.")
+ dtc: SkipValidation[Optional[str]] = Field(alias="dtc", default=None, description="Digital Travel Credential (DTC-VC) data in base64 format for processing")
+ image_urls: SkipValidation[Optional[List[str]]] = Field(alias="ImageUrls", default=None, description="URLs to the document images for processing.")
__properties: ClassVar[List[str]] = ["processParam", "List", "tag", "tenant", "env", "livePortrait", "extPortrait", "ContainerList", "systemInfo", "passBackObject", "dtc", "ImageUrls"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -76,20 +79,20 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of process_param
- if self.process_param:
+ if self.process_param and isinstance(self.process_param, ProcessParams):
_dict['processParam'] = self.process_param.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in list (list)
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
# override the default output from pydantic by calling `to_dict()` of container_list
- if self.container_list:
+ if self.container_list and isinstance(self.container_list, ContainerList):
_dict['ContainerList'] = self.container_list.to_dict()
# override the default output from pydantic by calling `to_dict()` of system_info
- if self.system_info:
+ if self.system_info and isinstance(self.system_info, ProcessSystemInfo):
_dict['systemInfo'] = self.system_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/process_request_image.py b/regula/documentreader/webclient/gen/models/process_request_image.py
index 8a78a61..6265901 100644
--- a/regula/documentreader/webclient/gen/models/process_request_image.py
+++ b/regula/documentreader/webclient/gen/models/process_request_image.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.light import Light
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessRequestImage(BaseModel):
"""
ProcessRequestImage
""" # noqa: E501
- image_data: Optional[ImageData] = Field(default=None, alias="ImageData")
- light: Optional[Light] = None
- page_idx: Optional[StrictInt] = Field(default=None, description="page/image number")
+ image_data: SkipValidation[Optional[ImageData]] = Field(alias="ImageData", default=None)
+ light: SkipValidation[Optional[Light]] = Field(alias="light", default=None)
+ page_idx: SkipValidation[Optional[int]] = Field(alias="page_idx", default=None, description="page/image number")
__properties: ClassVar[List[str]] = ["ImageData", "light", "page_idx"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,7 +68,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of image_data
- if self.image_data:
+ if self.image_data and isinstance(self.image_data, ImageData):
_dict['ImageData'] = self.image_data.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/process_response.py b/regula/documentreader/webclient/gen/models/process_response.py
index c5ab3d7..97a9608 100644
--- a/regula/documentreader/webclient/gen/models/process_response.py
+++ b/regula/documentreader/webclient/gen/models/process_response.py
@@ -17,27 +17,30 @@
from regula.documentreader.webclient.gen.models.transaction_info import TransactionInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessResponse(BaseModel):
"""
ProcessResponse
""" # noqa: E501
- chip_page: RfidLocation = Field(alias="ChipPage")
- core_lib_result_code: Optional[StrictInt] = Field(default=None, alias="CoreLibResultCode")
- processing_finished: ProcessingStatus = Field(alias="ProcessingFinished")
- container_list: ContainerList = Field(alias="ContainerList")
- transaction_info: TransactionInfo = Field(alias="TransactionInfo")
- log: Optional[StrictStr] = Field(default=None, description="Base64 encoded transaction processing log")
- pass_back_object: Optional[Dict[str, Any]] = Field(default=None, description="Free-form object provided in request. See passBackObject property of ProcessRequest.", alias="passBackObject")
- more_pages_available: StrictInt = Field(alias="morePagesAvailable")
- elapsed_time: StrictInt = Field(description="Time the document processing has taken, ms.", alias="elapsedTime")
- metadata: Optional[Dict[str, Any]] = None
+ chip_page: SkipValidation[RfidLocation] = Field(alias="ChipPage")
+ core_lib_result_code: SkipValidation[Optional[int]] = Field(alias="CoreLibResultCode", default=None)
+ processing_finished: SkipValidation[ProcessingStatus] = Field(alias="ProcessingFinished")
+ container_list: SkipValidation[ContainerList] = Field(alias="ContainerList")
+ transaction_info: SkipValidation[TransactionInfo] = Field(alias="TransactionInfo")
+ log: SkipValidation[Optional[str]] = Field(alias="log", default=None, description="Base64 encoded transaction processing log")
+ pass_back_object: SkipValidation[Optional[Dict[str, object]]] = Field(alias="passBackObject", default=None, description="Free-form object provided in request. See passBackObject property of ProcessRequest.")
+ more_pages_available: SkipValidation[int] = Field(alias="morePagesAvailable")
+ elapsed_time: SkipValidation[int] = Field(alias="elapsedTime", description="Time the document processing has taken, ms.")
+ metadata: SkipValidation[Optional[Dict[str, object]]] = Field(alias="metadata", default=None)
__properties: ClassVar[List[str]] = ["ChipPage", "CoreLibResultCode", "ProcessingFinished", "ContainerList", "TransactionInfo", "log", "passBackObject", "morePagesAvailable", "elapsedTime", "metadata"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -74,10 +77,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of container_list
- if self.container_list:
+ if self.container_list and isinstance(self.container_list, ContainerList):
_dict['ContainerList'] = self.container_list.to_dict()
# override the default output from pydantic by calling `to_dict()` of transaction_info
- if self.transaction_info:
+ if self.transaction_info and isinstance(self.transaction_info, TransactionInfo):
_dict['TransactionInfo'] = self.transaction_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/process_system_info.py b/regula/documentreader/webclient/gen/models/process_system_info.py
index e80c854..331247b 100644
--- a/regula/documentreader/webclient/gen/models/process_system_info.py
+++ b/regula/documentreader/webclient/gen/models/process_system_info.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ProcessSystemInfo(BaseModel):
"""
ProcessSystemInfo
""" # noqa: E501
- license: Optional[StrictStr] = Field(default=None, description="Base64 encoded license file")
- recaptcha_token: Optional[StrictStr] = Field(default=None, description="For internal use. Demo-sites recaptcha token.")
+ license: SkipValidation[Optional[str]] = Field(alias="license", default=None, description="Base64 encoded license file")
+ recaptcha_token: SkipValidation[Optional[str]] = Field(alias="recaptcha_token", default=None, description="For internal use. Demo-sites recaptcha token.")
__properties: ClassVar[List[str]] = ["license", "recaptcha_token"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/properties_params.py b/regula/documentreader/webclient/gen/models/properties_params.py
new file mode 100644
index 0000000..a258cdf
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/properties_params.py
@@ -0,0 +1,82 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictBool
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class PropertiesParams(BaseModel):
+ """
+ PropertiesParams
+ """ # noqa: E501
+ check_holders_signature: SkipValidation[Optional[bool]] = Field(alias="checkHoldersSignature", default=None, description="Set to true to enable detection of the document holder’s signature.")
+ __properties: ClassVar[List[str]] = ["checkHoldersSignature"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of PropertiesParams from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of PropertiesParams from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "checkHoldersSignature": obj.get("checkHoldersSignature")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/raw_image_container_item.py b/regula/documentreader/webclient/gen/models/raw_image_container_item.py
index 80aed25..d5b8e9c 100644
--- a/regula/documentreader/webclient/gen/models/raw_image_container_item.py
+++ b/regula/documentreader/webclient/gen/models/raw_image_container_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.image_data import ImageData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RawImageContainerItem(BaseModel):
"""
RawImageContainerItem
""" # noqa: E501
- raw_image_container: ImageData = Field(alias="RawImageContainer")
+ raw_image_container: SkipValidation[ImageData] = Field(alias="RawImageContainer")
__properties: ClassVar[List[str]] = ["RawImageContainer"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of raw_image_container
- if self.raw_image_container:
+ if self.raw_image_container and isinstance(self.raw_image_container, ImageData):
_dict['RawImageContainer'] = self.raw_image_container.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/raw_image_container_list.py b/regula/documentreader/webclient/gen/models/raw_image_container_list.py
index 82e3e24..8238bed 100644
--- a/regula/documentreader/webclient/gen/models/raw_image_container_list.py
+++ b/regula/documentreader/webclient/gen/models/raw_image_container_list.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.image_data import ImageData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RawImageContainerList(BaseModel):
"""
RawImageContainerList
""" # noqa: E501
- count: StrictInt = Field(alias="Count")
- images: List[ImageData] = Field(alias="Images")
+ count: SkipValidation[int] = Field(alias="Count")
+ images: SkipValidation[List[ImageData]] = Field(alias="Images")
__properties: ClassVar[List[str]] = ["Count", "Images"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.images:
for _item_images in self.images:
- if _item_images:
+ if _item_images and hasattr(_item_images, "to_dict"):
_items.append(_item_images.to_dict())
_dict['Images'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rectangle_coordinates.py b/regula/documentreader/webclient/gen/models/rectangle_coordinates.py
index a00f24e..742916a 100644
--- a/regula/documentreader/webclient/gen/models/rectangle_coordinates.py
+++ b/regula/documentreader/webclient/gen/models/rectangle_coordinates.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RectangleCoordinates(BaseModel):
"""
Coordinates of the rectangle region on a document image(result type 1). Represented by two points - (left, top) + (right, bottom)
""" # noqa: E501
- left: StrictInt
- top: StrictInt
- right: StrictInt
- bottom: StrictInt
+ left: SkipValidation[int] = Field(alias="left")
+ top: SkipValidation[int] = Field(alias="top")
+ right: SkipValidation[int] = Field(alias="right")
+ bottom: SkipValidation[int] = Field(alias="bottom")
__properties: ClassVar[List[str]] = ["left", "top", "right", "bottom"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/result.py b/regula/documentreader/webclient/gen/models/result.py
index c40c7ff..0090e40 100644
--- a/regula/documentreader/webclient/gen/models/result.py
+++ b/regula/documentreader/webclient/gen/models/result.py
@@ -45,6 +45,7 @@ class Result(int, Enum):
LICENSE = 50
MRZ_POSITION = 61
BARCODE_POSITION = 62
+ BSI_XML_V2 = 73
DOCUMENT_POSITION = 85
MRZ_DETECTOR = 87
FACE_DETECTION = 97
@@ -54,6 +55,9 @@ class Result(int, Enum):
RFID_BINARY_DATA = 104
RFID_ORIGINAL_GRAPHICS = 105
DTC_VC = 109
+ MDL_PARSED_RESPONSE = 121
+ VDS_NC = 124
+ VDS = 125
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/result_item.py b/regula/documentreader/webclient/gen/models/result_item.py
index d8ad2a7..5bc5853 100644
--- a/regula/documentreader/webclient/gen/models/result_item.py
+++ b/regula/documentreader/webclient/gen/models/result_item.py
@@ -15,6 +15,7 @@
from regula.documentreader.webclient.gen.models.result import Result
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
from typing import TYPE_CHECKING
if TYPE_CHECKING:
@@ -25,6 +26,9 @@
from regula.documentreader.webclient.gen.models.document_binary_info_result import DocumentBinaryInfoResult
from regula.documentreader.webclient.gen.models.rfid_graphics_info_result import RFIDGraphicsInfoResult
from regula.documentreader.webclient.gen.models.byte_array_result import ByteArrayResult
+ from regula.documentreader.webclient.gen.models.mdl_result import MDLResult
+ from regula.documentreader.webclient.gen.models.vdsnc_data_result import VDSNCDataResult
+ from regula.documentreader.webclient.gen.models.vds_data_result import VDSDataResult
from regula.documentreader.webclient.gen.models.lexical_analysis_result import LexicalAnalysisResult
from regula.documentreader.webclient.gen.models.document_image_result import DocumentImageResult
from regula.documentreader.webclient.gen.models.text_data_result import TextDataResult
@@ -47,8 +51,9 @@
from regula.documentreader.webclient.gen.models.license_result import LicenseResult
from regula.documentreader.webclient.gen.models.graphics_result import GraphicsResult
from regula.documentreader.webclient.gen.models.mrz_position_result import MRZPositionResult
- from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult
+ from regula.documentreader.webclient.gen.models.barcode_position_result import BarcodePositionResult
from regula.documentreader.webclient.gen.models.mrz_test_quality_result import MRZTestQualityResult
+ from regula.documentreader.webclient.gen.models.bsiv2_result import BSIV2Result
from regula.documentreader.webclient.gen.models.document_types_candidates_result import DocumentTypesCandidatesResult
from regula.documentreader.webclient.gen.models.document_position_result import DocumentPositionResult
from regula.documentreader.webclient.gen.models.mrz_detector_result import MRZDetectorResult
@@ -59,17 +64,19 @@ class ResultItem(BaseModel):
"""
Common fields for all result objects
""" # noqa: E501
- buf_length: Optional[StrictInt] = None
- light: Optional[StrictInt] = None
- list_idx: Optional[StrictInt] = None
- page_idx: Optional[StrictInt] = None
- result_type: Result
+ buf_length: SkipValidation[Optional[int]] = Field(alias="buf_length", default=None)
+ light: SkipValidation[Optional[int]] = Field(alias="light", default=None)
+ list_idx: SkipValidation[Optional[int]] = Field(alias="list_idx", default=None)
+ page_idx: SkipValidation[Optional[int]] = Field(alias="page_idx", default=None)
+ result_type: SkipValidation[Result] = Field(alias="result_type")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -78,7 +85,7 @@ class ResultItem(BaseModel):
# discriminator mappings
__discriminator_value_class_map: ClassVar[Dict[str, str]] = {
- '1': 'DocumentImageResult','101': 'DocumentBinaryInfoResult','102': 'RFIDTextDataResult','103': 'GraphicsResult','104': 'DocumentBinaryInfoResult','105': 'RFIDGraphicsInfoResult','109': 'ByteArrayResult','15': 'LexicalAnalysisResult','16': 'DocumentImageResult','17': 'TextDataResult','18': 'TextDataResult','19': 'GraphicsResult','20': 'AuthenticityResult','26': 'TextDataResult','3': 'TextDataResult','30': 'ImageQualityResult','32': 'GraphicsResult','33': 'StatusResult','34': 'AuthenticityResult','35': 'GraphicsResult','36': 'TextResult','37': 'ImagesResult','38': 'GraphicsResult','39': 'AuthenticityResult','49': 'EncryptedRCLResult','5': 'DocBarCodeInfo','50': 'LicenseResult','6': 'GraphicsResult','61': 'MRZPositionResult','62': 'DocumentPositionResult','7': 'MRZTestQualityResult','8': 'DocumentTypesCandidatesResult','85': 'DocumentPositionResult','87': 'MRZDetectorResult','9': 'ChosenDocumentTypeResult','97': 'FaceDetectionResult'
+ '1': 'DocumentImageResult','101': 'DocumentBinaryInfoResult','102': 'RFIDTextDataResult','103': 'GraphicsResult','104': 'DocumentBinaryInfoResult','105': 'RFIDGraphicsInfoResult','109': 'ByteArrayResult','121': 'MDLResult','124': 'VDSNCDataResult','125': 'VDSDataResult','15': 'LexicalAnalysisResult','16': 'DocumentImageResult','17': 'TextDataResult','18': 'TextDataResult','19': 'GraphicsResult','20': 'AuthenticityResult','26': 'TextDataResult','3': 'TextDataResult','30': 'ImageQualityResult','32': 'GraphicsResult','33': 'StatusResult','34': 'AuthenticityResult','35': 'GraphicsResult','36': 'TextResult','37': 'ImagesResult','38': 'GraphicsResult','39': 'AuthenticityResult','49': 'EncryptedRCLResult','5': 'DocBarCodeInfo','50': 'LicenseResult','6': 'GraphicsResult','61': 'MRZPositionResult','62': 'BarcodePositionResult','7': 'MRZTestQualityResult','73': 'BSIV2Result','8': 'DocumentTypesCandidatesResult','85': 'DocumentPositionResult','87': 'MRZDetectorResult','9': 'ChosenDocumentTypeResult','97': 'FaceDetectionResult'
}
@classmethod
@@ -100,7 +107,7 @@ def to_json(self) -> str:
return json.dumps(self.to_dict())
@classmethod
- def from_json(cls, json_str: str) -> Optional[Union[DocumentImageResult, DocumentBinaryInfoResult, RFIDTextDataResult, GraphicsResult, DocumentBinaryInfoResult, RFIDGraphicsInfoResult, ByteArrayResult, LexicalAnalysisResult, DocumentImageResult, TextDataResult, TextDataResult, GraphicsResult, AuthenticityResult, TextDataResult, TextDataResult, ImageQualityResult, GraphicsResult, StatusResult, AuthenticityResult, GraphicsResult, TextResult, ImagesResult, GraphicsResult, AuthenticityResult, EncryptedRCLResult, DocBarCodeInfo, LicenseResult, GraphicsResult, MRZPositionResult, DocumentPositionResult, MRZTestQualityResult, DocumentTypesCandidatesResult, DocumentPositionResult, MRZDetectorResult, ChosenDocumentTypeResult, FaceDetectionResult]]:
+ def from_json(cls, json_str: str) -> Optional[Union[DocumentImageResult, DocumentBinaryInfoResult, RFIDTextDataResult, GraphicsResult, DocumentBinaryInfoResult, RFIDGraphicsInfoResult, ByteArrayResult, MDLResult, VDSNCDataResult, VDSDataResult, LexicalAnalysisResult, DocumentImageResult, TextDataResult, TextDataResult, GraphicsResult, AuthenticityResult, TextDataResult, TextDataResult, ImageQualityResult, GraphicsResult, StatusResult, AuthenticityResult, GraphicsResult, TextResult, ImagesResult, GraphicsResult, AuthenticityResult, EncryptedRCLResult, DocBarCodeInfo, LicenseResult, GraphicsResult, MRZPositionResult, BarcodePositionResult, MRZTestQualityResult, BSIV2Result, DocumentTypesCandidatesResult, DocumentPositionResult, MRZDetectorResult, ChosenDocumentTypeResult, FaceDetectionResult]]:
"""Create an instance of ResultItem from a JSON string"""
return cls.from_dict(json.loads(json_str))
@@ -125,7 +132,7 @@ def to_dict(self) -> Dict[str, Any]:
return _dict
@classmethod
- def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[DocumentImageResult, DocumentBinaryInfoResult, RFIDTextDataResult, GraphicsResult, DocumentBinaryInfoResult, RFIDGraphicsInfoResult, ByteArrayResult, LexicalAnalysisResult, DocumentImageResult, TextDataResult, TextDataResult, GraphicsResult, AuthenticityResult, TextDataResult, TextDataResult, ImageQualityResult, GraphicsResult, StatusResult, AuthenticityResult, GraphicsResult, TextResult, ImagesResult, GraphicsResult, AuthenticityResult, EncryptedRCLResult, DocBarCodeInfo, LicenseResult, GraphicsResult, MRZPositionResult, DocumentPositionResult, MRZTestQualityResult, DocumentTypesCandidatesResult, DocumentPositionResult, MRZDetectorResult, ChosenDocumentTypeResult, FaceDetectionResult]]:
+ def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[DocumentImageResult, DocumentBinaryInfoResult, RFIDTextDataResult, GraphicsResult, DocumentBinaryInfoResult, RFIDGraphicsInfoResult, ByteArrayResult, MDLResult, VDSNCDataResult, VDSDataResult, LexicalAnalysisResult, DocumentImageResult, TextDataResult, TextDataResult, GraphicsResult, AuthenticityResult, TextDataResult, TextDataResult, ImageQualityResult, GraphicsResult, StatusResult, AuthenticityResult, GraphicsResult, TextResult, ImagesResult, GraphicsResult, AuthenticityResult, EncryptedRCLResult, DocBarCodeInfo, LicenseResult, GraphicsResult, MRZPositionResult, BarcodePositionResult, MRZTestQualityResult, BSIV2Result, DocumentTypesCandidatesResult, DocumentPositionResult, MRZDetectorResult, ChosenDocumentTypeResult, FaceDetectionResult]]:
"""Create an instance of ResultItem from a dict"""
# look up the object type based on discriminator mapping
object_type = cls.get_discriminator_value(obj)
@@ -143,6 +150,12 @@ def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[DocumentImageResult, D
return import_module("regula.documentreader.webclient.gen.models.rfid_graphics_info_result").RFIDGraphicsInfoResult.from_dict(obj)
if object_type == 'ByteArrayResult':
return import_module("regula.documentreader.webclient.gen.models.byte_array_result").ByteArrayResult.from_dict(obj)
+ if object_type == 'MDLResult':
+ return import_module("regula.documentreader.webclient.gen.models.mdl_result").MDLResult.from_dict(obj)
+ if object_type == 'VDSNCDataResult':
+ return import_module("regula.documentreader.webclient.gen.models.vdsnc_data_result").VDSNCDataResult.from_dict(obj)
+ if object_type == 'VDSDataResult':
+ return import_module("regula.documentreader.webclient.gen.models.vds_data_result").VDSDataResult.from_dict(obj)
if object_type == 'LexicalAnalysisResult':
return import_module("regula.documentreader.webclient.gen.models.lexical_analysis_result").LexicalAnalysisResult.from_dict(obj)
if object_type == 'DocumentImageResult':
@@ -187,10 +200,12 @@ def from_dict(cls, obj: Dict[str, Any]) -> Optional[Union[DocumentImageResult, D
return import_module("regula.documentreader.webclient.gen.models.graphics_result").GraphicsResult.from_dict(obj)
if object_type == 'MRZPositionResult':
return import_module("regula.documentreader.webclient.gen.models.mrz_position_result").MRZPositionResult.from_dict(obj)
- if object_type == 'DocumentPositionResult':
- return import_module("regula.documentreader.webclient.gen.models.document_position_result").DocumentPositionResult.from_dict(obj)
+ if object_type == 'BarcodePositionResult':
+ return import_module("regula.documentreader.webclient.gen.models.barcode_position_result").BarcodePositionResult.from_dict(obj)
if object_type == 'MRZTestQualityResult':
return import_module("regula.documentreader.webclient.gen.models.mrz_test_quality_result").MRZTestQualityResult.from_dict(obj)
+ if object_type == 'BSIV2Result':
+ return import_module("regula.documentreader.webclient.gen.models.bsiv2_result").BSIV2Result.from_dict(obj)
if object_type == 'DocumentTypesCandidatesResult':
return import_module("regula.documentreader.webclient.gen.models.document_types_candidates_result").DocumentTypesCandidatesResult.from_dict(obj)
if object_type == 'DocumentPositionResult':
diff --git a/regula/documentreader/webclient/gen/models/result_mrz_detector.py b/regula/documentreader/webclient/gen/models/result_mrz_detector.py
index 228e7dd..1500b2a 100644
--- a/regula/documentreader/webclient/gen/models/result_mrz_detector.py
+++ b/regula/documentreader/webclient/gen/models/result_mrz_detector.py
@@ -14,21 +14,24 @@
from regula.documentreader.webclient.gen.models.mrz_rows_item import MRZRowsItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ResultMRZDetector(BaseModel):
"""
ResultMRZDetector
""" # noqa: E501
- mrz_format: StrictInt = Field(alias="MRZFormat")
- mrz_rows: List[MRZRowsItem] = Field(alias="MRZRows")
- mrz_rows_num: StrictInt = Field(alias="MRZRowsNum")
- bounding_quadrangle: List[Union[StrictFloat, StrictInt]] = Field(alias="boundingQuadrangle")
+ mrz_format: SkipValidation[int] = Field(alias="MRZFormat")
+ mrz_rows: SkipValidation[List[MRZRowsItem]] = Field(alias="MRZRows")
+ mrz_rows_num: SkipValidation[int] = Field(alias="MRZRowsNum")
+ bounding_quadrangle: SkipValidation[List[float]] = Field(alias="boundingQuadrangle")
__properties: ClassVar[List[str]] = ["MRZFormat", "MRZRows", "MRZRowsNum", "boundingQuadrangle"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -68,7 +71,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.mrz_rows:
for _item_mrz_rows in self.mrz_rows:
- if _item_mrz_rows:
+ if _item_mrz_rows and hasattr(_item_mrz_rows, "to_dict"):
_items.append(_item_mrz_rows.to_dict())
_dict['MRZRows'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/result_mrz_detector_item.py b/regula/documentreader/webclient/gen/models/result_mrz_detector_item.py
index 9af5e40..863568b 100644
--- a/regula/documentreader/webclient/gen/models/result_mrz_detector_item.py
+++ b/regula/documentreader/webclient/gen/models/result_mrz_detector_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.result_mrz_detector import ResultMRZDetector
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class ResultMRZDetectorItem(BaseModel):
"""
ResultMRZDetectorItem
""" # noqa: E501
- result_mrz_detector: ResultMRZDetector = Field(alias="ResultMRZDetector")
+ result_mrz_detector: SkipValidation[ResultMRZDetector] = Field(alias="ResultMRZDetector")
__properties: ClassVar[List[str]] = ["ResultMRZDetector"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of result_mrz_detector
- if self.result_mrz_detector:
+ if self.result_mrz_detector and isinstance(self.result_mrz_detector, ResultMRZDetector):
_dict['ResultMRZDetector'] = self.result_mrz_detector.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_access_control_info.py b/regula/documentreader/webclient/gen/models/rfid_access_control_info.py
index e34cd3a..0a3a62f 100644
--- a/regula/documentreader/webclient/gen/models/rfid_access_control_info.py
+++ b/regula/documentreader/webclient/gen/models/rfid_access_control_info.py
@@ -15,22 +15,25 @@
from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidAccessControlInfo(BaseModel):
"""
Structure is used to describe the results of a single authentication procedure or a procedure of secure data access within the context of the communication session with electronic document
""" # noqa: E501
- type: RfidAccessControlProcedureType = Field(alias="Type")
- status: RFIDErrorCodes = Field(alias="Status")
- active_option_idx: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Index of the active variant of the procedure", alias="ActiveOptionIdx")
- notifications: List[StrictInt] = Field(description="List of remarks arisen during the procedure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.", alias="Notifications")
- access_control_options: Optional[List[Any]] = Field(default=None, description="List of structures with are used to describe the variants of the authentication or secure data access procedure performance within the context of the communication session with electronic document", alias="AccessControlOptions")
+ type: SkipValidation[RfidAccessControlProcedureType] = Field(alias="Type")
+ status: SkipValidation[RFIDErrorCodes] = Field(alias="Status")
+ active_option_idx: SkipValidation[Optional[float]] = Field(alias="ActiveOptionIdx", default=None, description="Index of the active variant of the procedure")
+ notifications: SkipValidation[List[int]] = Field(alias="Notifications", description="List of remarks arisen during the procedure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.")
+ access_control_options: SkipValidation[Optional[List[object]]] = Field(alias="AccessControlOptions", default=None, description="List of structures with are used to describe the variants of the authentication or secure data access procedure performance within the context of the communication session with electronic document")
__properties: ClassVar[List[str]] = ["Type", "Status", "ActiveOptionIdx", "Notifications", "AccessControlOptions"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_access_key.py b/regula/documentreader/webclient/gen/models/rfid_access_key.py
index 400dc7b..f3f7625 100644
--- a/regula/documentreader/webclient/gen/models/rfid_access_key.py
+++ b/regula/documentreader/webclient/gen/models/rfid_access_key.py
@@ -15,21 +15,24 @@
from regula.documentreader.webclient.gen.models.rfid_password_type import RfidPasswordType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidAccessKey(BaseModel):
"""
Structure is used to describe the contents of secure data access key within the context of the communication session with electronic document
""" # noqa: E501
- access_key: StrictStr = Field(description="Key contents", alias="AccessKey")
- key_type: RfidPasswordType = Field(alias="KeyType")
- access_type: RfidAccessControlProcedureType = Field(alias="AccessType")
- check_full_key_matching: StrictBool = Field(description="Logical sign of the need for a full comparison of AccessKey contents with the contents of DG1 (MRZ) data group", alias="CheckFullKeyMatching")
+ access_key: SkipValidation[str] = Field(alias="AccessKey", description="Key contents")
+ key_type: SkipValidation[RfidPasswordType] = Field(alias="KeyType")
+ access_type: SkipValidation[RfidAccessControlProcedureType] = Field(alias="AccessType")
+ check_full_key_matching: SkipValidation[bool] = Field(alias="CheckFullKeyMatching", description="Logical sign of the need for a full comparison of AccessKey contents with the contents of DG1 (MRZ) data group")
__properties: ClassVar[List[str]] = ["AccessKey", "KeyType", "AccessType", "CheckFullKeyMatching"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_application.py b/regula/documentreader/webclient/gen/models/rfid_application.py
index 6595303..4f36ff3 100644
--- a/regula/documentreader/webclient/gen/models/rfid_application.py
+++ b/regula/documentreader/webclient/gen/models/rfid_application.py
@@ -16,24 +16,27 @@
from regula.documentreader.webclient.gen.models.rfid_error_codes import RFIDErrorCodes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidApplication(BaseModel):
"""
Structure is used to describe the contents of a single LDS application and their analysis within the context of the communication session with electronic document
""" # noqa: E501
- type: RfidApplicationType = Field(alias="Type")
- status: RFIDErrorCodes = Field(alias="Status")
- application_id: StrictStr = Field(description="Application identifier", alias="ApplicationID")
- version: StrictStr = Field(description="Version of the application", alias="Version")
- unicode_version: StrictStr = Field(description="Unicode version for application", alias="UnicodeVersion")
- data_hash_algorithm: StrictStr = Field(description="Algorithm for calculating hash values for files for the procedure of PA", alias="DataHashAlgorithm")
- files: List[RfidDataFile] = Field(description="List of containers to store information about the read files of the application", alias="Files")
+ type: SkipValidation[RfidApplicationType] = Field(alias="Type")
+ status: SkipValidation[RFIDErrorCodes] = Field(alias="Status")
+ application_id: SkipValidation[str] = Field(alias="ApplicationID", description="Application identifier")
+ version: SkipValidation[str] = Field(alias="Version", description="Version of the application")
+ unicode_version: SkipValidation[str] = Field(alias="UnicodeVersion", description="Unicode version for application")
+ data_hash_algorithm: SkipValidation[str] = Field(alias="DataHashAlgorithm", description="Algorithm for calculating hash values for files for the procedure of PA")
+ files: SkipValidation[List[RfidDataFile]] = Field(alias="Files", description="List of containers to store information about the read files of the application")
__properties: ClassVar[List[str]] = ["Type", "Status", "ApplicationID", "Version", "UnicodeVersion", "DataHashAlgorithm", "Files"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -73,7 +76,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.files:
for _item_files in self.files:
- if _item_files:
+ if _item_files and hasattr(_item_files, "to_dict"):
_items.append(_item_files.to_dict())
_dict['Files'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_application_type.py b/regula/documentreader/webclient/gen/models/rfid_application_type.py
index aa563c3..70e9fb6 100644
--- a/regula/documentreader/webclient/gen/models/rfid_application_type.py
+++ b/regula/documentreader/webclient/gen/models/rfid_application_type.py
@@ -18,7 +18,7 @@ class RfidApplicationType(int, Enum):
"""
allowed enum values
"""
- UNSPECIFIED = 0
+ ROOT_FILES = 0
E_PASSPORT = 1
E_ID = 2
E_SIGN = 3
@@ -27,7 +27,6 @@ class RfidApplicationType(int, Enum):
LDS2_VisaRecords = 6
LDS2_AddBiometrics = 7
eDTC_PC = 8
- ROOT_FILES = 0
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/rfid_attribute_data.py b/regula/documentreader/webclient/gen/models/rfid_attribute_data.py
index 5a89772..e309a4c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_attribute_data.py
+++ b/regula/documentreader/webclient/gen/models/rfid_attribute_data.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidAttributeData(BaseModel):
"""
Structure contains the data of one attribute of the digital signature object.
""" # noqa: E501
- type: StrictStr = Field(description="Contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)", alias="Type")
- data: StrictStr = Field(description="Attribute binary data. Base64 encoded.", alias="Data")
+ type: SkipValidation[str] = Field(alias="Type", description="Contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)")
+ data: SkipValidation[str] = Field(alias="Data", description="Attribute binary data. Base64 encoded.")
__properties: ClassVar[List[str]] = ["Type", "Data"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_attribute_name.py b/regula/documentreader/webclient/gen/models/rfid_attribute_name.py
index 95a267a..bf7906b 100644
--- a/regula/documentreader/webclient/gen/models/rfid_attribute_name.py
+++ b/regula/documentreader/webclient/gen/models/rfid_attribute_name.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidAttributeName(BaseModel):
"""
Structure contains information that serves as the distinguished name (identifier) of an object.
""" # noqa: E501
- type: StrictStr = Field(description="Attribute identifier (OID ASCII string); contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)", alias="Type")
- value: TrfFtString = Field(alias="Value")
+ type: SkipValidation[str] = Field(alias="Type", description="Attribute identifier (OID ASCII string); contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)")
+ value: SkipValidation[TrfFtString] = Field(alias="Value")
__properties: ClassVar[List[str]] = ["Type", "Value"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -63,7 +66,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of value
- if self.value:
+ if self.value and isinstance(self.value, TrfFtString):
_dict['Value'] = self.value.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_card_properties_ext.py b/regula/documentreader/webclient/gen/models/rfid_card_properties_ext.py
index 9ed41e4..b24a8f7 100644
--- a/regula/documentreader/webclient/gen/models/rfid_card_properties_ext.py
+++ b/regula/documentreader/webclient/gen/models/rfid_card_properties_ext.py
@@ -16,31 +16,34 @@
from regula.documentreader.webclient.gen.models.rfid_type import RfidType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidCardPropertiesExt(BaseModel):
"""
Structure is used to store extended information about the characteristics of the RFID-chip located in the scope of the reader
""" # noqa: E501
- rfid_type: RfidType = Field(alias="RFID_Type")
- baudrate1: StrictStr = Field(description="Numeric Baudrate1 value in hexadecimal format (e.g. 0x0000000F)", alias="Baudrate1")
- baudrate2: StrictStr = Field(description="Numeric Baudrate2 value in hexadecimal format", alias="Baudrate2")
- support_4: StrictBool = Field(description="Boolean Support_4 value", alias="Support_4")
- chip_type_a: RfidAChip = Field(alias="ChipType_A")
- support_mifare: StrictBool = Field(description="Sign of support for ISO/IEC 14443-3 data exchange protocol", alias="Support_Mifare")
- mifare_memory: Union[StrictFloat, StrictInt] = Field(description="Amount of operational memory MIFARE® of the chip, kilobytes", alias="MifareMemory")
- uid: StrictStr = Field(description="UID contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. F9 4F 41 60)", alias="UID")
- atq_a: Optional[Any] = Field(description="Reply of the «A» type chip to «REQA» command of ISO/IEC 14443-3 protocol (Answer To Request, Type A – ATQA) – for the internal use by the main control library", alias="ATQ_A")
- sak: Optional[Any] = Field(description="Response of type-A RFID-chip to SELECT command of ISO/IEC 14443-3 protocol (Select Acknowledge, SAK).", alias="SAK")
- atq_b: Optional[Any] = Field(description="ATQ_B contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. 50 F9 4F 41 60 00 00 00 00 77 81 81)", alias="ATQ_B")
- bit_rate_s: RfidBaudRate = Field(alias="BitRateS")
- bit_rate_r: RfidBaudRate = Field(alias="BitRateR")
- atr: StrictStr = Field(description="ATR-string of RFID-chip", alias="ATR")
+ rfid_type: SkipValidation[RfidType] = Field(alias="RFID_Type")
+ baudrate1: SkipValidation[str] = Field(alias="Baudrate1", description="Numeric Baudrate1 value in hexadecimal format (e.g. 0x0000000F)")
+ baudrate2: SkipValidation[str] = Field(alias="Baudrate2", description="Numeric Baudrate2 value in hexadecimal format")
+ support_4: SkipValidation[bool] = Field(alias="Support_4", description="Boolean Support_4 value")
+ chip_type_a: SkipValidation[RfidAChip] = Field(alias="ChipType_A")
+ support_mifare: SkipValidation[bool] = Field(alias="Support_Mifare", description="Sign of support for ISO/IEC 14443-3 data exchange protocol")
+ mifare_memory: SkipValidation[float] = Field(alias="MifareMemory", description="Amount of operational memory MIFARE® of the chip, kilobytes")
+ uid: SkipValidation[str] = Field(alias="UID", description="UID contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. F9 4F 41 60)")
+ atq_a: SkipValidation[object] = Field(alias="ATQ_A", description="Reply of the «A» type chip to «REQA» command of ISO/IEC 14443-3 protocol (Answer To Request, Type A – ATQA) – for the internal use by the main control library")
+ sak: SkipValidation[object] = Field(alias="SAK", description="Response of type-A RFID-chip to SELECT command of ISO/IEC 14443-3 protocol (Select Acknowledge, SAK).")
+ atq_b: SkipValidation[object] = Field(alias="ATQ_B", description="ATQ_B contents in text format. Each byte is represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. 50 F9 4F 41 60 00 00 00 00 77 81 81)")
+ bit_rate_s: SkipValidation[RfidBaudRate] = Field(alias="BitRateS")
+ bit_rate_r: SkipValidation[RfidBaudRate] = Field(alias="BitRateR")
+ atr: SkipValidation[str] = Field(alias="ATR", description="ATR-string of RFID-chip")
__properties: ClassVar[List[str]] = ["RFID_Type", "Baudrate1", "Baudrate2", "Support_4", "ChipType_A", "Support_Mifare", "MifareMemory", "UID", "ATQ_A", "SAK", "ATQ_B", "BitRateS", "BitRateR", "ATR"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_certificate_ex.py b/regula/documentreader/webclient/gen/models/rfid_certificate_ex.py
index bcea675..16ff1e5 100644
--- a/regula/documentreader/webclient/gen/models/rfid_certificate_ex.py
+++ b/regula/documentreader/webclient/gen/models/rfid_certificate_ex.py
@@ -20,30 +20,33 @@
from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidCertificateEx(BaseModel):
"""
Structure is used to describe the certificate contents used for the digital signature verification of the document security object within the context of the communication session with electronic document.
""" # noqa: E501
- version: Union[StrictFloat, StrictInt] = Field(description="Version of Certificate ASN.1 structure", alias="Version")
- serial_number: StrictStr = Field(description="Certificate serial number. Base64 encoded.", alias="SerialNumber")
- signature_algorithm: StrictStr = Field(description="Certificate digital signature algorithm identifier (OID); String in the format S1 (S2), where S1 – algorithm name, S2 – identifier (OID string).", alias="SignatureAlgorithm")
- issuer: RfidDistinguishedName = Field(alias="Issuer")
- validity: RfidValidity = Field(alias="Validity")
- subject: RfidDistinguishedName = Field(alias="Subject")
- subject_pk_algorithm: StrictStr = Field(description="Certificate public key algorithm identifier (OID); String in the format S1 (S2), where S1 – algorithm name, S2 – identifier (OID string).", alias="SubjectPKAlgorithm")
- extensions: List[RfidPkiExtension] = Field(description="List of the certificate extensions", alias="Extensions")
- notifications: List[StrictInt] = Field(description="List of remarks arisen during the analysis of the certificate data structure and its validity verification. Can be ParsingErrorCodes or ParsingNotificationCodes enum.", alias="Notifications")
- origin: RfidCertificateOrigin = Field(alias="Origin")
- type: RfidCertificateType = Field(alias="Type")
- file_name: TrfFtString = Field(alias="FileName")
- pa_status: RFIDErrorCodes = Field(alias="PA_Status")
+ version: SkipValidation[float] = Field(alias="Version", description="Version of Certificate ASN.1 structure")
+ serial_number: SkipValidation[str] = Field(alias="SerialNumber", description="Certificate serial number. Base64 encoded.")
+ signature_algorithm: SkipValidation[str] = Field(alias="SignatureAlgorithm", description="Certificate digital signature algorithm identifier (OID); String in the format S1 (S2), where S1 – algorithm name, S2 – identifier (OID string).")
+ issuer: SkipValidation[RfidDistinguishedName] = Field(alias="Issuer")
+ validity: SkipValidation[RfidValidity] = Field(alias="Validity")
+ subject: SkipValidation[RfidDistinguishedName] = Field(alias="Subject")
+ subject_pk_algorithm: SkipValidation[str] = Field(alias="SubjectPKAlgorithm", description="Certificate public key algorithm identifier (OID); String in the format S1 (S2), where S1 – algorithm name, S2 – identifier (OID string).")
+ extensions: SkipValidation[List[RfidPkiExtension]] = Field(alias="Extensions", description="List of the certificate extensions")
+ notifications: SkipValidation[List[int]] = Field(alias="Notifications", description="List of remarks arisen during the analysis of the certificate data structure and its validity verification. Can be ParsingErrorCodes or ParsingNotificationCodes enum.")
+ origin: SkipValidation[RfidCertificateOrigin] = Field(alias="Origin")
+ type: SkipValidation[RfidCertificateType] = Field(alias="Type")
+ file_name: SkipValidation[TrfFtString] = Field(alias="FileName")
+ pa_status: SkipValidation[RFIDErrorCodes] = Field(alias="PA_Status")
__properties: ClassVar[List[str]] = ["Version", "SerialNumber", "SignatureAlgorithm", "Issuer", "Validity", "Subject", "SubjectPKAlgorithm", "Extensions", "Notifications", "Origin", "Type", "FileName", "PA_Status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -80,23 +83,23 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of issuer
- if self.issuer:
+ if self.issuer and isinstance(self.issuer, RfidDistinguishedName):
_dict['Issuer'] = self.issuer.to_dict()
# override the default output from pydantic by calling `to_dict()` of validity
- if self.validity:
+ if self.validity and isinstance(self.validity, RfidValidity):
_dict['Validity'] = self.validity.to_dict()
# override the default output from pydantic by calling `to_dict()` of subject
- if self.subject:
+ if self.subject and isinstance(self.subject, RfidDistinguishedName):
_dict['Subject'] = self.subject.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in extensions (list)
_items = []
if self.extensions:
for _item_extensions in self.extensions:
- if _item_extensions:
+ if _item_extensions and hasattr(_item_extensions, "to_dict"):
_items.append(_item_extensions.to_dict())
_dict['Extensions'] = _items
# override the default output from pydantic by calling `to_dict()` of file_name
- if self.file_name:
+ if self.file_name and isinstance(self.file_name, TrfFtString):
_dict['FileName'] = self.file_name.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_data_file.py b/regula/documentreader/webclient/gen/models/rfid_data_file.py
index 0af4cab..8320995 100644
--- a/regula/documentreader/webclient/gen/models/rfid_data_file.py
+++ b/regula/documentreader/webclient/gen/models/rfid_data_file.py
@@ -20,29 +20,32 @@
from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidDataFile(BaseModel):
"""
Structure is used to describe the contents of a single file of the LDS of electronic document and the analysis of its contents within the context of the communication session with electronic document
""" # noqa: E501
- file_id: Optional[StrictStr] = Field(default=None, description="File identifier. Each byte of FileID represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. 01 1E)", alias="FileID")
- type: RfidDataFileType = Field(alias="Type")
- file_data: Optional[TrfFtBytes] = Field(default=None, alias="FileData")
- reading_status: RFIDErrorCodes = Field(alias="ReadingStatus")
- reading_time: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Time of reading, milliseconds", alias="ReadingTime")
- pa_status: Optional[RFIDErrorCodes] = Field(default=None, alias="PA_Status")
- notifications: Optional[List[StrictInt]] = Field(default=None, description="List of remarks arisen when reading data from the memory of the chip and analysing their ASN.1-structure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.", alias="Notifications")
- doc_fields_text: Optional[List[TextFieldType]] = Field(default=None, description="List of document text fields formed on the basis of the file contents", alias="DocFields_Text")
- doc_fields_graphics: Optional[List[GraphicFieldType]] = Field(default=None, description="List of document graphic fields formed on the basis of the file contents", alias="DocFields_Graphics")
- doc_fields_originals: Optional[List[GraphicFieldType]] = Field(default=None, description="List of the original binary representation of graphic document fields formed on the basis of the file contents", alias="DocFields_Originals")
- parsed_data: Optional[ParsedData] = Field(default=None, alias="ParsedData")
- security_object_certificates: Optional[SecurityObjectCertificates] = Field(default=None, alias="SecurityObject_Certificates")
+ file_id: SkipValidation[Optional[str]] = Field(alias="FileID", default=None, description="File identifier. Each byte of FileID represented by its hexadecimal value. The individual bytes are separated by spaces (e.g. 01 1E)")
+ type: SkipValidation[RfidDataFileType] = Field(alias="Type")
+ file_data: SkipValidation[Optional[TrfFtBytes]] = Field(alias="FileData", default=None)
+ reading_status: SkipValidation[RFIDErrorCodes] = Field(alias="ReadingStatus")
+ reading_time: SkipValidation[Optional[float]] = Field(alias="ReadingTime", default=None, description="Time of reading, milliseconds")
+ pa_status: SkipValidation[Optional[RFIDErrorCodes]] = Field(alias="PA_Status", default=None)
+ notifications: SkipValidation[Optional[List[int]]] = Field(alias="Notifications", default=None, description="List of remarks arisen when reading data from the memory of the chip and analysing their ASN.1-structure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.")
+ doc_fields_text: SkipValidation[Optional[List[TextFieldType]]] = Field(alias="DocFields_Text", default=None, description="List of document text fields formed on the basis of the file contents")
+ doc_fields_graphics: SkipValidation[Optional[List[GraphicFieldType]]] = Field(alias="DocFields_Graphics", default=None, description="List of document graphic fields formed on the basis of the file contents")
+ doc_fields_originals: SkipValidation[Optional[List[GraphicFieldType]]] = Field(alias="DocFields_Originals", default=None, description="List of the original binary representation of graphic document fields formed on the basis of the file contents")
+ parsed_data: SkipValidation[Optional[ParsedData]] = Field(alias="ParsedData", default=None)
+ security_object_certificates: SkipValidation[Optional[SecurityObjectCertificates]] = Field(alias="SecurityObject_Certificates", default=None)
__properties: ClassVar[List[str]] = ["FileID", "Type", "FileData", "ReadingStatus", "ReadingTime", "PA_Status", "Notifications", "DocFields_Text", "DocFields_Graphics", "DocFields_Originals", "ParsedData", "SecurityObject_Certificates"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -79,13 +82,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of file_data
- if self.file_data:
+ if self.file_data and isinstance(self.file_data, TrfFtBytes):
_dict['FileData'] = self.file_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of parsed_data
- if self.parsed_data:
+ if self.parsed_data and isinstance(self.parsed_data, ParsedData):
_dict['ParsedData'] = self.parsed_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of security_object_certificates
- if self.security_object_certificates:
+ if self.security_object_certificates and isinstance(self.security_object_certificates, SecurityObjectCertificates):
_dict['SecurityObject_Certificates'] = self.security_object_certificates.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_data_file_type.py b/regula/documentreader/webclient/gen/models/rfid_data_file_type.py
index 28150d0..9ef8e8c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_data_file_type.py
+++ b/regula/documentreader/webclient/gen/models/rfid_data_file_type.py
@@ -68,6 +68,7 @@ class RfidDataFileType(int, Enum):
ID_DG19 = 119
ID_DG20 = 120
ID_DG21 = 121
+ ID_DG22 = 122
DL_COM = 150
DL_DG1 = 151
DL_DG2 = 152
diff --git a/regula/documentreader/webclient/gen/models/rfid_dg1.py b/regula/documentreader/webclient/gen/models/rfid_dg1.py
index 0127773..09108a4 100644
--- a/regula/documentreader/webclient/gen/models/rfid_dg1.py
+++ b/regula/documentreader/webclient/gen/models/rfid_dg1.py
@@ -12,36 +12,38 @@
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr
from typing import Any, ClassVar, Dict, List, Union
from regula.documentreader.webclient.gen.models.document_format import DocumentFormat
-from regula.documentreader.webclient.gen.models.rfid_data_group_type_tag import RfidDataGroupTypeTag
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidDG1(BaseModel):
"""
Structure used to store the contents of EF.DG1 informational data group of ePassport application – document MRZ data
""" # noqa: E501
- type: RfidDataGroupTypeTag = Field(alias="Type")
- document_id: DocumentFormat = Field(alias="DocumentID")
- document_type: StrictStr = Field(description="Symbolic code of document type", alias="DocumentType")
- state: StrictStr = Field(description="Symbolic code of document issuing state", alias="State")
- holder: StrictStr = Field(description="DO’s name and surname", alias="Holder")
- document_number: StrictStr = Field(description="Document number", alias="DocumentNumber")
- check_digit_document_number: Union[StrictFloat, StrictInt] = Field(description="Check digit of document number", alias="CheckDigitDocumentNumber")
- nationality: StrictStr = Field(description="Symbolic code of DO’s nationality", alias="Nationality")
- birthday: StrictStr = Field(description="DO’s date of birth", alias="Birthday")
- check_digit_birthday: Union[StrictFloat, StrictInt] = Field(description="Check digit of DO’s date of birth", alias="CheckDigitBirthday")
- sex: StrictStr = Field(description="DO’s sex", alias="Sex")
- expiry_date: StrictStr = Field(description="Term of validity of the document", alias="ExpiryDate")
- check_digit_expiry_date: Union[StrictFloat, StrictInt] = Field(description="Check digit of term of validity of the document", alias="CheckDigitExpiryDate")
- optional_data: StrictStr = Field(description="DO’s personal number or other additional data", alias="OptionalData")
- check_digit_optional_data: Union[StrictFloat, StrictInt] = Field(description="Check digit of additional data", alias="CheckDigitOptionalData")
- check_digit_composite: Union[StrictFloat, StrictInt] = Field(description="General check digit", alias="CheckDigitComposite")
+ type: SkipValidation[int] = Field(alias="Type")
+ document_id: SkipValidation[DocumentFormat] = Field(alias="DocumentID")
+ document_type: SkipValidation[str] = Field(alias="DocumentType", description="Symbolic code of document type")
+ state: SkipValidation[str] = Field(alias="State", description="Symbolic code of document issuing state")
+ holder: SkipValidation[str] = Field(alias="Holder", description="DO’s name and surname")
+ document_number: SkipValidation[str] = Field(alias="DocumentNumber", description="Document number")
+ check_digit_document_number: SkipValidation[float] = Field(alias="CheckDigitDocumentNumber", description="Check digit of document number")
+ nationality: SkipValidation[str] = Field(alias="Nationality", description="Symbolic code of DO’s nationality")
+ birthday: SkipValidation[str] = Field(alias="Birthday", description="DO’s date of birth")
+ check_digit_birthday: SkipValidation[float] = Field(alias="CheckDigitBirthday", description="Check digit of DO’s date of birth")
+ sex: SkipValidation[str] = Field(alias="Sex", description="DO’s sex")
+ expiry_date: SkipValidation[str] = Field(alias="ExpiryDate", description="Term of validity of the document")
+ check_digit_expiry_date: SkipValidation[float] = Field(alias="CheckDigitExpiryDate", description="Check digit of term of validity of the document")
+ optional_data: SkipValidation[str] = Field(alias="OptionalData", description="DO’s personal number or other additional data")
+ check_digit_optional_data: SkipValidation[float] = Field(alias="CheckDigitOptionalData", description="Check digit of additional data")
+ check_digit_composite: SkipValidation[float] = Field(alias="CheckDigitComposite", description="General check digit")
__properties: ClassVar[List[str]] = ["Type", "DocumentID", "DocumentType", "State", "Holder", "DocumentNumber", "CheckDigitDocumentNumber", "Nationality", "Birthday", "CheckDigitBirthday", "Sex", "ExpiryDate", "CheckDigitExpiryDate", "OptionalData", "CheckDigitOptionalData", "CheckDigitComposite"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_distinguished_name.py b/regula/documentreader/webclient/gen/models/rfid_distinguished_name.py
index d6292dc..79fc943 100644
--- a/regula/documentreader/webclient/gen/models/rfid_distinguished_name.py
+++ b/regula/documentreader/webclient/gen/models/rfid_distinguished_name.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidDistinguishedName(BaseModel):
"""
Contents of the identifier in binary form. Base64 encoded.
""" # noqa: E501
- data: StrictStr = Field(description="Contents of the identifier in binary form. Base64 encoded.", alias="Data")
- friendly_name: TrfFtString = Field(alias="FriendlyName")
- attributes: List[RfidAttributeName] = Field(description="List of individual attributes contained in the identifier", alias="Attributes")
+ data: SkipValidation[str] = Field(alias="Data", description="Contents of the identifier in binary form. Base64 encoded.")
+ friendly_name: SkipValidation[TrfFtString] = Field(alias="FriendlyName")
+ attributes: SkipValidation[List[RfidAttributeName]] = Field(alias="Attributes", description="List of individual attributes contained in the identifier")
__properties: ClassVar[List[str]] = ["Data", "FriendlyName", "Attributes"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,13 +68,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of friendly_name
- if self.friendly_name:
+ if self.friendly_name and isinstance(self.friendly_name, TrfFtString):
_dict['FriendlyName'] = self.friendly_name.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in attributes (list)
_items = []
if self.attributes:
for _item_attributes in self.attributes:
- if _item_attributes:
+ if _item_attributes and hasattr(_item_attributes, "to_dict"):
_items.append(_item_attributes.to_dict())
_dict['Attributes'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py
index c77ace5..32a4f9c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py
+++ b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py
@@ -16,33 +16,36 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDDocVisualExtendedField(BaseModel):
"""
RFIDDocVisualExtendedField
""" # noqa: E501
- w_field_type: TextFieldType = Field(alias="wFieldType")
- field_name: StrictStr = Field(description="Field symbolic name (null-terminated string)", alias="FieldName")
- strings_count: Union[StrictFloat, StrictInt] = Field(description="Number of StringsResult array elements", alias="StringsCount")
- strings_result: List[StringRecognitionResult] = Field(description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.", alias="StringsResult")
- buf_length: Union[StrictFloat, StrictInt] = Field(description="Buf_Text text string length", alias="Buf_Length")
- buf_text: StrictStr = Field(description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'", alias="Buf_Text")
- field_mask: Optional[StrictStr] = Field(default=None, alias="FieldMask")
- validity: Optional[StrictInt] = Field(default=None, alias="Validity")
- in_comparison: Optional[StrictInt] = Field(default=None, alias="InComparison")
- w_lcid: Optional[LCID] = Field(default=None, alias="wLCID")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
- reserved3: Optional[StrictInt] = Field(default=None, alias="Reserved3")
- origin_dg: StrictInt = Field(alias="OriginDG")
- origin_dg_tag: Optional[StrictInt] = Field(default=None, alias="OriginDGTag")
- origin_tag_entry: Union[StrictFloat, StrictInt] = Field(description="Record index of the text field source in the data group", alias="OriginTagEntry")
- origin_entry_view: Optional[StrictInt] = Field(default=None, alias="OriginEntryView")
+ w_field_type: SkipValidation[TextFieldType] = Field(alias="wFieldType")
+ field_name: SkipValidation[str] = Field(alias="FieldName", description="Field symbolic name (null-terminated string)")
+ strings_count: SkipValidation[float] = Field(alias="StringsCount", description="Number of StringsResult array elements")
+ strings_result: SkipValidation[List[StringRecognitionResult]] = Field(alias="StringsResult", description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.")
+ buf_length: SkipValidation[float] = Field(alias="Buf_Length", description="Buf_Text text string length")
+ buf_text: SkipValidation[Optional[str]] = Field(alias="Buf_Text", default=None, description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'")
+ field_mask: SkipValidation[Optional[str]] = Field(alias="FieldMask", default=None)
+ validity: SkipValidation[Optional[int]] = Field(alias="Validity", default=None)
+ in_comparison: SkipValidation[Optional[int]] = Field(alias="InComparison", default=None)
+ w_lcid: SkipValidation[Optional[LCID]] = Field(alias="wLCID", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
+ reserved3: SkipValidation[Optional[int]] = Field(alias="Reserved3", default=None)
+ origin_dg: SkipValidation[int] = Field(alias="OriginDG")
+ origin_dg_tag: SkipValidation[Optional[int]] = Field(alias="OriginDGTag", default=None)
+ origin_tag_entry: SkipValidation[float] = Field(alias="OriginTagEntry", description="Record index of the text field source in the data group")
+ origin_entry_view: SkipValidation[Optional[int]] = Field(alias="OriginEntryView", default=None)
__properties: ClassVar[List[str]] = ["wFieldType", "FieldName", "StringsCount", "StringsResult", "Buf_Length", "Buf_Text", "FieldMask", "Validity", "InComparison", "wLCID", "Reserved2", "Reserved3", "OriginDG", "OriginDGTag", "OriginTagEntry", "OriginEntryView"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -82,7 +85,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.strings_result:
for _item_strings_result in self.strings_result:
- if _item_strings_result:
+ if _item_strings_result and hasattr(_item_strings_result, "to_dict"):
_items.append(_item_strings_result.to_dict())
_dict['StringsResult'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field_item.py b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field_item.py
index b4581c1..9f725a5 100644
--- a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field_item.py
+++ b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field_item.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDDocVisualExtendedFieldItem(BaseModel):
"""
RFIDDocVisualExtendedFieldItem
""" # noqa: E501
- origin_dg: StrictInt = Field(alias="OriginDG")
- origin_dg_tag: Optional[StrictInt] = Field(default=None, alias="OriginDGTag")
- origin_tag_entry: Union[StrictFloat, StrictInt] = Field(description="Record index of the text field source in the data group", alias="OriginTagEntry")
- origin_entry_view: Optional[StrictInt] = Field(default=None, alias="OriginEntryView")
+ origin_dg: SkipValidation[int] = Field(alias="OriginDG")
+ origin_dg_tag: SkipValidation[Optional[int]] = Field(alias="OriginDGTag", default=None)
+ origin_tag_entry: SkipValidation[float] = Field(alias="OriginTagEntry", description="Record index of the text field source in the data group")
+ origin_entry_view: SkipValidation[Optional[int]] = Field(alias="OriginEntryView", default=None)
__properties: ClassVar[List[str]] = ["OriginDG", "OriginDGTag", "OriginTagEntry", "OriginEntryView"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info.py b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info.py
index 2e438d0..2b8f0e5 100644
--- a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info.py
+++ b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_field import RFIDDocVisualExtendedField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDDocVisualExtendedInfo(BaseModel):
"""
Container for extracted text fields. Fields are identified by type and language
""" # noqa: E501
- n_fields: Union[StrictFloat, StrictInt] = Field(description="Number of pArrayFields array elements", alias="nFields")
- p_array_fields: List[RFIDDocVisualExtendedField] = Field(alias="pArrayFields")
+ n_fields: SkipValidation[float] = Field(alias="nFields", description="Number of pArrayFields array elements")
+ p_array_fields: SkipValidation[List[RFIDDocVisualExtendedField]] = Field(alias="pArrayFields")
__properties: ClassVar[List[str]] = ["nFields", "pArrayFields"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,7 +69,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.p_array_fields:
for _item_p_array_fields in self.p_array_fields:
- if _item_p_array_fields:
+ if _item_p_array_fields and hasattr(_item_p_array_fields, "to_dict"):
_items.append(_item_p_array_fields.to_dict())
_dict['pArrayFields'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info_item.py b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info_item.py
index 907a54b..fdeb62c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info_item.py
+++ b/regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDDocVisualExtendedInfoItem(BaseModel):
"""
RFIDDocVisualExtendedInfoItem
""" # noqa: E501
- doc_visual_extended_info: RFIDDocVisualExtendedInfo = Field(alias="DocVisualExtendedInfo")
+ doc_visual_extended_info: SkipValidation[RFIDDocVisualExtendedInfo] = Field(alias="DocVisualExtendedInfo")
__properties: ClassVar[List[str]] = ["DocVisualExtendedInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_visual_extended_info
- if self.doc_visual_extended_info:
+ if self.doc_visual_extended_info and isinstance(self.doc_visual_extended_info, RFIDDocVisualExtendedInfo):
_dict['DocVisualExtendedInfo'] = self.doc_visual_extended_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_graphics_info_result.py b/regula/documentreader/webclient/gen/models/rfid_graphics_info_result.py
index 51f8f2e..58122de 100644
--- a/regula/documentreader/webclient/gen/models/rfid_graphics_info_result.py
+++ b/regula/documentreader/webclient/gen/models/rfid_graphics_info_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDGraphicsInfoResult(ResultItem):
"""
RFIDGraphicsInfoResult
""" # noqa: E501
- t_original_rfid_graphics_info: TOriginalRFIDGraphicsInfo = Field(alias="TOriginalRFIDGraphicsInfo")
+ t_original_rfid_graphics_info: SkipValidation[TOriginalRFIDGraphicsInfo] = Field(alias="TOriginalRFIDGraphicsInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "TOriginalRFIDGraphicsInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of t_original_rfid_graphics_info
- if self.t_original_rfid_graphics_info:
+ if self.t_original_rfid_graphics_info and isinstance(self.t_original_rfid_graphics_info, TOriginalRFIDGraphicsInfo):
_dict['TOriginalRFIDGraphicsInfo'] = self.t_original_rfid_graphics_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_origin.py b/regula/documentreader/webclient/gen/models/rfid_origin.py
index 298971f..72ff39c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_origin.py
+++ b/regula/documentreader/webclient/gen/models/rfid_origin.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidOrigin(BaseModel):
"""
Location of data in RFID chip
""" # noqa: E501
- dg: StrictInt = Field(description="Source data group file")
- dg_tag: StrictInt = Field(description="Index of the source record of the image with biometric information in the information data group", alias="dgTag")
- tag_entry: StrictInt = Field(description="Index of the template in the record with biometric data", alias="tagEntry")
- entry_view: StrictInt = Field(description="Index of the variant of the biometric data template", alias="entryView")
+ dg: SkipValidation[int] = Field(alias="dg", description="Source data group file")
+ dg_tag: SkipValidation[int] = Field(alias="dgTag", description="Index of the source record of the image with biometric information in the information data group")
+ tag_entry: SkipValidation[int] = Field(alias="tagEntry", description="Index of the template in the record with biometric data")
+ entry_view: SkipValidation[int] = Field(alias="entryView", description="Index of the variant of the biometric data template")
__properties: ClassVar[List[str]] = ["dg", "dgTag", "tagEntry", "entryView"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_pki_extension.py b/regula/documentreader/webclient/gen/models/rfid_pki_extension.py
index 031b270..a7bcda5 100644
--- a/regula/documentreader/webclient/gen/models/rfid_pki_extension.py
+++ b/regula/documentreader/webclient/gen/models/rfid_pki_extension.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidPkiExtension(BaseModel):
"""
Extension identifier (OID, ASCII string); Contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)
""" # noqa: E501
- type: StrictStr = Field(description="Extension identifier (OID, ASCII string); Contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)", alias="Type")
- data: StrictStr = Field(description="Extension binary data. Base64 encoded.", alias="Data")
+ type: SkipValidation[str] = Field(alias="Type", description="Extension identifier (OID, ASCII string); Contents of the identifier in the format S1 (S2), where S1 – attribute name, S2 – identifier (OID string)")
+ data: SkipValidation[str] = Field(alias="Data", description="Extension binary data. Base64 encoded.")
__properties: ClassVar[List[str]] = ["Type", "Data"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_raw_data.py b/regula/documentreader/webclient/gen/models/rfid_raw_data.py
index 8e8f207..d803a4c 100644
--- a/regula/documentreader/webclient/gen/models/rfid_raw_data.py
+++ b/regula/documentreader/webclient/gen/models/rfid_raw_data.py
@@ -13,19 +13,22 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidRawData(BaseModel):
"""
RfidRawData
""" # noqa: E501
- data: StrictStr = Field(alias="Data")
- field_type: StrictInt = Field(alias="FieldType")
+ data: SkipValidation[str] = Field(alias="Data")
+ field_type: SkipValidation[int] = Field(alias="FieldType")
__properties: ClassVar[List[str]] = ["Data", "FieldType"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_security_object.py b/regula/documentreader/webclient/gen/models/rfid_security_object.py
index ad78bc5..07b18a1 100644
--- a/regula/documentreader/webclient/gen/models/rfid_security_object.py
+++ b/regula/documentreader/webclient/gen/models/rfid_security_object.py
@@ -14,22 +14,25 @@
from regula.documentreader.webclient.gen.models.rfid_signer_info_ex import RfidSignerInfoEx
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidSecurityObject(BaseModel):
"""
Structure is used to describe the contents of a single document security object (SO) and the results of its check within the context of the communication session with electronic document
""" # noqa: E501
- version: Union[StrictFloat, StrictInt] = Field(description="Security object version", alias="Version")
- object_type: StrictStr = Field(description="Identifier of the security object", alias="ObjectType")
- file_reference: Union[StrictFloat, StrictInt] = Field(description="Reference to the source file of the security object data", alias="FileReference")
- notifications: List[StrictInt] = Field(description="List of remarks arisen during the analysis of SO data structure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.", alias="Notifications")
- signer_infos: List[RfidSignerInfoEx] = Field(description="List of containers to store information about digital signature objects contained in the SO", alias="SignerInfos")
+ version: SkipValidation[float] = Field(alias="Version", description="Security object version")
+ object_type: SkipValidation[str] = Field(alias="ObjectType", description="Identifier of the security object")
+ file_reference: SkipValidation[float] = Field(alias="FileReference", description="Reference to the source file of the security object data")
+ notifications: SkipValidation[List[int]] = Field(alias="Notifications", description="List of remarks arisen during the analysis of SO data structure. Can be ParsingErrorCodes or ParsingNotificationCodes enum.")
+ signer_infos: SkipValidation[List[RfidSignerInfoEx]] = Field(alias="SignerInfos", description="List of containers to store information about digital signature objects contained in the SO")
__properties: ClassVar[List[str]] = ["Version", "ObjectType", "FileReference", "Notifications", "SignerInfos"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,7 +72,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.signer_infos:
for _item_signer_infos in self.signer_infos:
- if _item_signer_infos:
+ if _item_signer_infos and hasattr(_item_signer_infos, "to_dict"):
_items.append(_item_signer_infos.to_dict())
_dict['SignerInfos'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_session_data.py b/regula/documentreader/webclient/gen/models/rfid_session_data.py
index 880afba..cddd0b3 100644
--- a/regula/documentreader/webclient/gen/models/rfid_session_data.py
+++ b/regula/documentreader/webclient/gen/models/rfid_session_data.py
@@ -22,34 +22,37 @@
from regula.documentreader.webclient.gen.models.rfid_terminal import RfidTerminal
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidSessionData(BaseModel):
"""
Structure is used to describe the results of work with the SDK within the context of the current communication session with electronic document
""" # noqa: E501
- virtual_mode: Optional[StrictBool] = Field(default=None, description="Sign of virtual session when working with loaded data from a previous communication session with the electronic document", alias="VirtualMode")
- sdk_version: Optional[StrictStr] = Field(default=None, description="Text SDKVersion value in format A.B (e.g. 3.1)", alias="SDKVersion")
- driver_version: Optional[StrictStr] = Field(default=None, description="Text DriverVersion value in format A.B.C.D (e.g. 6.2.5.4)", alias="DriverVersion")
- firmware_version: Optional[StrictStr] = Field(default=None, description="Text FirmwareVersion value in format A.B (e.g. 5.19)", alias="FirmwareVersion")
- applications: List[RfidApplication] = Field(description="List of containers to store information about the involved applications of electronic document", alias="Applications")
- access_controls: List[RfidAccessControlInfo] = Field(description="List of containers to store information about the supported procedures of authentication and secure data access within the context of the session", alias="AccessControls")
- card_properties: RfidCardPropertiesExt = Field(alias="CardProperties")
- ext_le_support: RFIDErrorCodes = Field(alias="ExtLeSupport")
- process_time: Union[StrictFloat, StrictInt] = Field(description="Time of processing, milliseconds", alias="ProcessTime")
- root_files: List[Any] = Field(description="List of containers to store information about the read files of the root Master File", alias="RootFiles")
- total_bytes_sent: Union[StrictFloat, StrictInt] = Field(description="Total number of bytes transmitted to the RFID-chip during the whole session", alias="TotalBytesSent")
- total_bytes_received: Union[StrictFloat, StrictInt] = Field(description="Total number of bytes received from the RFID-chip during the whole session", alias="TotalBytesReceived")
- session_key: RfidAccessKey = Field(alias="Session_key")
- session_terminal: RfidTerminal = Field(alias="Session_terminal")
- session_procedure: RfidAuthenticationProcedureType = Field(alias="Session_procedure")
- security_objects: List[RfidSecurityObject] = Field(description="List of containers to store information about the detected document security objects", alias="SecurityObjects")
- status: Optional[CheckResult] = Field(default=None, alias="Status")
+ virtual_mode: SkipValidation[Optional[bool]] = Field(alias="VirtualMode", default=None, description="Sign of virtual session when working with loaded data from a previous communication session with the electronic document")
+ sdk_version: SkipValidation[Optional[str]] = Field(alias="SDKVersion", default=None, description="Text SDKVersion value in format A.B (e.g. 3.1)")
+ driver_version: SkipValidation[Optional[str]] = Field(alias="DriverVersion", default=None, description="Text DriverVersion value in format A.B.C.D (e.g. 6.2.5.4)")
+ firmware_version: SkipValidation[Optional[str]] = Field(alias="FirmwareVersion", default=None, description="Text FirmwareVersion value in format A.B (e.g. 5.19)")
+ applications: SkipValidation[List[RfidApplication]] = Field(alias="Applications", description="List of containers to store information about the involved applications of electronic document")
+ access_controls: SkipValidation[List[RfidAccessControlInfo]] = Field(alias="AccessControls", description="List of containers to store information about the supported procedures of authentication and secure data access within the context of the session")
+ card_properties: SkipValidation[RfidCardPropertiesExt] = Field(alias="CardProperties")
+ ext_le_support: SkipValidation[RFIDErrorCodes] = Field(alias="ExtLeSupport")
+ process_time: SkipValidation[float] = Field(alias="ProcessTime", description="Time of processing, milliseconds")
+ root_files: SkipValidation[List[object]] = Field(alias="RootFiles", description="List of containers to store information about the read files of the root Master File")
+ total_bytes_sent: SkipValidation[float] = Field(alias="TotalBytesSent", description="Total number of bytes transmitted to the RFID-chip during the whole session")
+ total_bytes_received: SkipValidation[float] = Field(alias="TotalBytesReceived", description="Total number of bytes received from the RFID-chip during the whole session")
+ session_key: SkipValidation[Optional[RfidAccessKey]] = Field(alias="Session_key", default=None)
+ session_terminal: SkipValidation[RfidTerminal] = Field(alias="Session_terminal")
+ session_procedure: SkipValidation[RfidAuthenticationProcedureType] = Field(alias="Session_procedure")
+ security_objects: SkipValidation[List[RfidSecurityObject]] = Field(alias="SecurityObjects", description="List of containers to store information about the detected document security objects")
+ status: SkipValidation[Optional[CheckResult]] = Field(alias="Status", default=None)
__properties: ClassVar[List[str]] = ["VirtualMode", "SDKVersion", "DriverVersion", "FirmwareVersion", "Applications", "AccessControls", "CardProperties", "ExtLeSupport", "ProcessTime", "RootFiles", "TotalBytesSent", "TotalBytesReceived", "Session_key", "Session_terminal", "Session_procedure", "SecurityObjects", "Status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -89,30 +92,30 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.applications:
for _item_applications in self.applications:
- if _item_applications:
+ if _item_applications and hasattr(_item_applications, "to_dict"):
_items.append(_item_applications.to_dict())
_dict['Applications'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in access_controls (list)
_items = []
if self.access_controls:
for _item_access_controls in self.access_controls:
- if _item_access_controls:
+ if _item_access_controls and hasattr(_item_access_controls, "to_dict"):
_items.append(_item_access_controls.to_dict())
_dict['AccessControls'] = _items
# override the default output from pydantic by calling `to_dict()` of card_properties
- if self.card_properties:
+ if self.card_properties and isinstance(self.card_properties, RfidCardPropertiesExt):
_dict['CardProperties'] = self.card_properties.to_dict()
# override the default output from pydantic by calling `to_dict()` of session_key
- if self.session_key:
+ if self.session_key and isinstance(self.session_key, RfidAccessKey):
_dict['Session_key'] = self.session_key.to_dict()
# override the default output from pydantic by calling `to_dict()` of session_terminal
- if self.session_terminal:
+ if self.session_terminal and isinstance(self.session_terminal, RfidTerminal):
_dict['Session_terminal'] = self.session_terminal.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in security_objects (list)
_items = []
if self.security_objects:
for _item_security_objects in self.security_objects:
- if _item_security_objects:
+ if _item_security_objects and hasattr(_item_security_objects, "to_dict"):
_items.append(_item_security_objects.to_dict())
_dict['SecurityObjects'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_signer_info_ex.py b/regula/documentreader/webclient/gen/models/rfid_signer_info_ex.py
index c677652..93f53ec 100644
--- a/regula/documentreader/webclient/gen/models/rfid_signer_info_ex.py
+++ b/regula/documentreader/webclient/gen/models/rfid_signer_info_ex.py
@@ -18,29 +18,32 @@
from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidSignerInfoEx(BaseModel):
"""
Structure is used to describe the contents of a single copy of digital signature of the document security object and the results of its check within the context of the communication session with electronic document
""" # noqa: E501
- version: Union[StrictFloat, StrictInt] = Field(description="Version of SignerInfo ASN.1 structure", alias="Version")
- issuer: RfidDistinguishedName = Field(alias="Issuer")
- serial_number: TrfFtBytes = Field(alias="SerialNumber")
- subject_key_identifier: TrfFtBytes = Field(alias="SubjectKeyIdentifier")
- digest_algorithm: StrictStr = Field(description="Hash algorithm identifier (OID) for digital signature generation", alias="DigestAlgorithm")
- signed_attributes: List[RfidAttributeData] = Field(description="List of the signed attributes", alias="SignedAttributes")
- signature_algorithm: StrictStr = Field(description="Digital signature algorithm identifier (OID)", alias="SignatureAlgorithm")
- signature: TrfFtBytes = Field(alias="Signature")
- pa_status: RFIDErrorCodes = Field(alias="PA_Status")
- certificate_chain: List[RfidCertificateEx] = Field(description="Certificate chain, used for the digital signature verification.", alias="CertificateChain")
- data_to_hash: StrictStr = Field(description="Binary data array used to calculate the hash value for digital signature verification. Base64 encoded.", alias="DataToHash")
- notifications: List[StrictInt] = Field(description="Can be ParsingErrorCodes or ParsingNotificationCodes enum.", alias="Notifications")
+ version: SkipValidation[float] = Field(alias="Version", description="Version of SignerInfo ASN.1 structure")
+ issuer: SkipValidation[RfidDistinguishedName] = Field(alias="Issuer")
+ serial_number: SkipValidation[TrfFtBytes] = Field(alias="SerialNumber")
+ subject_key_identifier: SkipValidation[TrfFtBytes] = Field(alias="SubjectKeyIdentifier")
+ digest_algorithm: SkipValidation[str] = Field(alias="DigestAlgorithm", description="Hash algorithm identifier (OID) for digital signature generation")
+ signed_attributes: SkipValidation[List[RfidAttributeData]] = Field(alias="SignedAttributes", description="List of the signed attributes")
+ signature_algorithm: SkipValidation[str] = Field(alias="SignatureAlgorithm", description="Digital signature algorithm identifier (OID)")
+ signature: SkipValidation[TrfFtBytes] = Field(alias="Signature")
+ pa_status: SkipValidation[RFIDErrorCodes] = Field(alias="PA_Status")
+ certificate_chain: SkipValidation[List[RfidCertificateEx]] = Field(alias="CertificateChain", description="Certificate chain, used for the digital signature verification.")
+ data_to_hash: SkipValidation[str] = Field(alias="DataToHash", description="Binary data array used to calculate the hash value for digital signature verification. Base64 encoded.")
+ notifications: SkipValidation[List[int]] = Field(alias="Notifications", description="Can be ParsingErrorCodes or ParsingNotificationCodes enum.")
__properties: ClassVar[List[str]] = ["Version", "Issuer", "SerialNumber", "SubjectKeyIdentifier", "DigestAlgorithm", "SignedAttributes", "SignatureAlgorithm", "Signature", "PA_Status", "CertificateChain", "DataToHash", "Notifications"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -77,29 +80,29 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of issuer
- if self.issuer:
+ if self.issuer and isinstance(self.issuer, RfidDistinguishedName):
_dict['Issuer'] = self.issuer.to_dict()
# override the default output from pydantic by calling `to_dict()` of serial_number
- if self.serial_number:
+ if self.serial_number and isinstance(self.serial_number, TrfFtBytes):
_dict['SerialNumber'] = self.serial_number.to_dict()
# override the default output from pydantic by calling `to_dict()` of subject_key_identifier
- if self.subject_key_identifier:
+ if self.subject_key_identifier and isinstance(self.subject_key_identifier, TrfFtBytes):
_dict['SubjectKeyIdentifier'] = self.subject_key_identifier.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in signed_attributes (list)
_items = []
if self.signed_attributes:
for _item_signed_attributes in self.signed_attributes:
- if _item_signed_attributes:
+ if _item_signed_attributes and hasattr(_item_signed_attributes, "to_dict"):
_items.append(_item_signed_attributes.to_dict())
_dict['SignedAttributes'] = _items
# override the default output from pydantic by calling `to_dict()` of signature
- if self.signature:
+ if self.signature and isinstance(self.signature, TrfFtBytes):
_dict['Signature'] = self.signature.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in certificate_chain (list)
_items = []
if self.certificate_chain:
for _item_certificate_chain in self.certificate_chain:
- if _item_certificate_chain:
+ if _item_certificate_chain and hasattr(_item_certificate_chain, "to_dict"):
_items.append(_item_certificate_chain.to_dict())
_dict['CertificateChain'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_terminal.py b/regula/documentreader/webclient/gen/models/rfid_terminal.py
index de85af0..fd8faff 100644
--- a/regula/documentreader/webclient/gen/models/rfid_terminal.py
+++ b/regula/documentreader/webclient/gen/models/rfid_terminal.py
@@ -14,20 +14,23 @@
from regula.documentreader.webclient.gen.models.rfid_terminal_type import RfidTerminalType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidTerminal(BaseModel):
"""
Structure is used to describe the terminal type within the context of the communication session with electronic document
""" # noqa: E501
- term_type: RfidTerminalType = Field(alias="TermType")
- auth_req: Union[StrictFloat, StrictInt] = Field(description="Declared (set) combination of flags of access rights to the functionality of the document (combination of eRfidTerminalAuthorizationRequirement values)", alias="AuthReq")
- auth_req2: Union[StrictFloat, StrictInt] = Field(description="Declared (set) combination of flags of access rights to the functionality of the document (combination of RfidTerminalAuthorizationRequirement values)", alias="AuthReq2")
+ term_type: SkipValidation[RfidTerminalType] = Field(alias="TermType")
+ auth_req: SkipValidation[float] = Field(alias="AuthReq", description="Declared (set) combination of flags of access rights to the functionality of the document (combination of eRfidTerminalAuthorizationRequirement values)")
+ auth_req2: SkipValidation[float] = Field(alias="AuthReq2", description="Declared (set) combination of flags of access rights to the functionality of the document (combination of RfidTerminalAuthorizationRequirement values)")
__properties: ClassVar[List[str]] = ["TermType", "AuthReq", "AuthReq2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/rfid_text_data_result.py b/regula/documentreader/webclient/gen/models/rfid_text_data_result.py
index 5f5d0f3..939a491 100644
--- a/regula/documentreader/webclient/gen/models/rfid_text_data_result.py
+++ b/regula/documentreader/webclient/gen/models/rfid_text_data_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.rfid_doc_visual_extended_info import RFIDDocVisualExtendedInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RFIDTextDataResult(ResultItem):
"""
RFIDTextDataResult
""" # noqa: E501
- doc_visual_extended_info: RFIDDocVisualExtendedInfo = Field(alias="DocVisualExtendedInfo")
+ doc_visual_extended_info: SkipValidation[RFIDDocVisualExtendedInfo] = Field(alias="DocVisualExtendedInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "DocVisualExtendedInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_visual_extended_info
- if self.doc_visual_extended_info:
+ if self.doc_visual_extended_info and isinstance(self.doc_visual_extended_info, RFIDDocVisualExtendedInfo):
_dict['DocVisualExtendedInfo'] = self.doc_visual_extended_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/rfid_validity.py b/regula/documentreader/webclient/gen/models/rfid_validity.py
index 7d7199b..b276e5a 100644
--- a/regula/documentreader/webclient/gen/models/rfid_validity.py
+++ b/regula/documentreader/webclient/gen/models/rfid_validity.py
@@ -14,19 +14,22 @@
from regula.documentreader.webclient.gen.models.trf_ft_string import TrfFtString
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class RfidValidity(BaseModel):
"""
Structure contains information on a certificate validity.
""" # noqa: E501
- not_before: TrfFtString = Field(alias="NotBefore")
- not_after: TrfFtString = Field(alias="NotAfter")
+ not_before: SkipValidation[TrfFtString] = Field(alias="NotBefore")
+ not_after: SkipValidation[TrfFtString] = Field(alias="NotAfter")
__properties: ClassVar[List[str]] = ["NotBefore", "NotAfter"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -63,10 +66,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of not_before
- if self.not_before:
+ if self.not_before and isinstance(self.not_before, TrfFtString):
_dict['NotBefore'] = self.not_before.to_dict()
# override the default output from pydantic by calling `to_dict()` of not_after
- if self.not_after:
+ if self.not_after and isinstance(self.not_after, TrfFtString):
_dict['NotAfter'] = self.not_after.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/scenario.py b/regula/documentreader/webclient/gen/models/scenario.py
index c17c669..cddbcb6 100644
--- a/regula/documentreader/webclient/gen/models/scenario.py
+++ b/regula/documentreader/webclient/gen/models/scenario.py
@@ -38,6 +38,7 @@ class Scenario(str, Enum):
CAPTURE = 'Capture'
DTC = 'DTC'
RFID = 'RFID'
+ MDL = 'mDL'
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/security_feature_item.py b/regula/documentreader/webclient/gen/models/security_feature_item.py
index 8f304b6..65beb31 100644
--- a/regula/documentreader/webclient/gen/models/security_feature_item.py
+++ b/regula/documentreader/webclient/gen/models/security_feature_item.py
@@ -18,23 +18,26 @@
from regula.documentreader.webclient.gen.models.visibility import Visibility
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SecurityFeatureItem(BaseModel):
"""
SecurityFeatureItem
""" # noqa: E501
- element_type: SecurityFeatureType = Field(alias="ElementType")
- element_rect: RectangleCoordinates = Field(alias="ElementRect")
- visibility: Visibility = Field(alias="Visibility")
- critical_flag: Critical = Field(alias="CriticalFlag")
- area_list: Optional[AreaContainer] = Field(default=None, alias="AreaList")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
+ element_type: SkipValidation[SecurityFeatureType] = Field(alias="ElementType")
+ element_rect: SkipValidation[RectangleCoordinates] = Field(alias="ElementRect")
+ visibility: SkipValidation[Visibility] = Field(alias="Visibility")
+ critical_flag: SkipValidation[Critical] = Field(alias="CriticalFlag")
+ area_list: SkipValidation[Optional[AreaContainer]] = Field(alias="AreaList", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
__properties: ClassVar[List[str]] = ["ElementType", "ElementRect", "Visibility", "CriticalFlag", "AreaList", "Reserved2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -71,10 +74,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of element_rect
- if self.element_rect:
+ if self.element_rect and isinstance(self.element_rect, RectangleCoordinates):
_dict['ElementRect'] = self.element_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of area_list
- if self.area_list:
+ if self.area_list and isinstance(self.area_list, AreaContainer):
_dict['AreaList'] = self.area_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/security_feature_result.py b/regula/documentreader/webclient/gen/models/security_feature_result.py
index 5648bac..fe9ca0a 100644
--- a/regula/documentreader/webclient/gen/models/security_feature_result.py
+++ b/regula/documentreader/webclient/gen/models/security_feature_result.py
@@ -22,23 +22,26 @@
from regula.documentreader.webclient.gen.models.visibility import Visibility
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SecurityFeatureResult(AuthenticityCheckResultItem):
"""
SecurityFeatureResult
""" # noqa: E501
- element_type: SecurityFeatureType = Field(alias="ElementType")
- element_rect: RectangleCoordinates = Field(alias="ElementRect")
- visibility: Visibility = Field(alias="Visibility")
- critical_flag: Critical = Field(alias="CriticalFlag")
- area_list: Optional[AreaContainer] = Field(default=None, alias="AreaList")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
+ element_type: SkipValidation[SecurityFeatureType] = Field(alias="ElementType")
+ element_rect: SkipValidation[RectangleCoordinates] = Field(alias="ElementRect")
+ visibility: SkipValidation[Visibility] = Field(alias="Visibility")
+ critical_flag: SkipValidation[Critical] = Field(alias="CriticalFlag")
+ area_list: SkipValidation[Optional[AreaContainer]] = Field(alias="AreaList", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
__properties: ClassVar[List[str]] = ["Type", "ElementResult", "ElementDiagnose", "PercentValue", "ElementType", "ElementRect", "Visibility", "CriticalFlag", "AreaList", "Reserved2"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,10 +78,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of element_rect
- if self.element_rect:
+ if self.element_rect and isinstance(self.element_rect, RectangleCoordinates):
_dict['ElementRect'] = self.element_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of area_list
- if self.area_list:
+ if self.area_list and isinstance(self.area_list, AreaContainer):
_dict['AreaList'] = self.area_list.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/security_feature_type.py b/regula/documentreader/webclient/gen/models/security_feature_type.py
index 6aa5f9c..b4bc8c0 100644
--- a/regula/documentreader/webclient/gen/models/security_feature_type.py
+++ b/regula/documentreader/webclient/gen/models/security_feature_type.py
@@ -73,6 +73,13 @@ class SecurityFeatureType(int, Enum):
LIVENESS_BLACK_AND_WHITE_COPY_CHECK = 53
LIVENESS_DYNAPRINT = 54
LIVENESS_GEOMETRY_CHECK = 55
+ AGE_CHECK = 56
+ SEX_CHECK = 57
+ PORTRAIT_COMPARISON_RFID_VS_GHOST = 58
+ PORTRAIT_COMPARISON_BARCODE_VS_GHOST = 59
+ PORTRAIT_COMPARISON_GHOST_VS_LIVE = 60
+ PORTRAIT_COMPARISON_EXT_VS_GHOST = 61
+ SIGNATURE_PRESENCE = 62
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/security_object_certificates.py b/regula/documentreader/webclient/gen/models/security_object_certificates.py
index a5c7211..ca9041c 100644
--- a/regula/documentreader/webclient/gen/models/security_object_certificates.py
+++ b/regula/documentreader/webclient/gen/models/security_object_certificates.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.certificate_data import CertificateData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SecurityObjectCertificates(BaseModel):
"""
SecurityObjectCertificates
""" # noqa: E501
- certificate_data: Optional[CertificateData] = Field(default=None, alias="Certificate_Data")
+ certificate_data: SkipValidation[Optional[CertificateData]] = Field(alias="Certificate_Data", default=None)
__properties: ClassVar[List[str]] = ["Certificate_Data"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of certificate_data
- if self.certificate_data:
+ if self.certificate_data and isinstance(self.certificate_data, CertificateData):
_dict['Certificate_Data'] = self.certificate_data.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/source.py b/regula/documentreader/webclient/gen/models/source.py
index dd9866c..0fc9b2a 100644
--- a/regula/documentreader/webclient/gen/models/source.py
+++ b/regula/documentreader/webclient/gen/models/source.py
@@ -24,6 +24,8 @@ class Source(str, Enum):
RFID = 'RFID'
MAGNETIC = 'MAGNETIC'
EXTERNAL = 'EXTERNAL'
+ LIVE = 'LIVE'
+ FINGERPRINT = 'FINGERPRINT'
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/source_validity.py b/regula/documentreader/webclient/gen/models/source_validity.py
index e5cda8f..e4be0fb 100644
--- a/regula/documentreader/webclient/gen/models/source_validity.py
+++ b/regula/documentreader/webclient/gen/models/source_validity.py
@@ -15,19 +15,22 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SourceValidity(BaseModel):
"""
SourceValidity
""" # noqa: E501
- source: Source
- status: CheckResult
+ source: SkipValidation[Source] = Field(alias="source")
+ status: SkipValidation[CheckResult] = Field(alias="status")
__properties: ClassVar[List[str]] = ["source", "status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/status.py b/regula/documentreader/webclient/gen/models/status.py
index 821d44c..659d364 100644
--- a/regula/documentreader/webclient/gen/models/status.py
+++ b/regula/documentreader/webclient/gen/models/status.py
@@ -12,28 +12,35 @@
from pydantic import BaseModel, ConfigDict, Field
from typing import Any, ClassVar, Dict, List, Optional
from regula.documentreader.webclient.gen.models.check_result import CheckResult
+from regula.documentreader.webclient.gen.models.details_age import DetailsAge
from regula.documentreader.webclient.gen.models.details_optical import DetailsOptical
from regula.documentreader.webclient.gen.models.details_rfid import DetailsRFID
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Status(BaseModel):
"""
Status
""" # noqa: E501
- overall_status: CheckResult = Field(alias="overallStatus")
- optical: CheckResult
- portrait: CheckResult
- rfid: CheckResult
- stop_list: CheckResult = Field(alias="stopList")
- details_rfid: Optional[DetailsRFID] = Field(default=None, alias="detailsRFID")
- details_optical: DetailsOptical = Field(alias="detailsOptical")
- __properties: ClassVar[List[str]] = ["overallStatus", "optical", "portrait", "rfid", "stopList", "detailsRFID", "detailsOptical"]
+ overall_status: SkipValidation[CheckResult] = Field(alias="overallStatus")
+ optical: SkipValidation[CheckResult] = Field(alias="optical")
+ portrait: SkipValidation[CheckResult] = Field(alias="portrait")
+ rfid: SkipValidation[CheckResult] = Field(alias="rfid")
+ stop_list: SkipValidation[CheckResult] = Field(alias="stopList")
+ details_rfid: SkipValidation[Optional[DetailsRFID]] = Field(alias="detailsRFID", default=None)
+ details_optical: SkipValidation[DetailsOptical] = Field(alias="detailsOptical")
+ age: SkipValidation[CheckResult] = Field(alias="age")
+ details_age: SkipValidation[DetailsAge] = Field(alias="detailsAge")
+ m_dl: SkipValidation[CheckResult] = Field(alias="mDL")
+ __properties: ClassVar[List[str]] = ["overallStatus", "optical", "portrait", "rfid", "stopList", "detailsRFID", "detailsOptical", "age", "detailsAge", "mDL"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -70,11 +77,14 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of details_rfid
- if self.details_rfid:
+ if self.details_rfid and isinstance(self.details_rfid, DetailsRFID):
_dict['detailsRFID'] = self.details_rfid.to_dict()
# override the default output from pydantic by calling `to_dict()` of details_optical
- if self.details_optical:
+ if self.details_optical and isinstance(self.details_optical, DetailsOptical):
_dict['detailsOptical'] = self.details_optical.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of details_age
+ if self.details_age and isinstance(self.details_age, DetailsAge):
+ _dict['detailsAge'] = self.details_age.to_dict()
return _dict
@classmethod
@@ -93,7 +103,10 @@ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
"rfid": obj.get("rfid"),
"stopList": obj.get("stopList"),
"detailsRFID": DetailsRFID.from_dict(obj["detailsRFID"]) if obj.get("detailsRFID") is not None else None,
- "detailsOptical": DetailsOptical.from_dict(obj["detailsOptical"]) if obj.get("detailsOptical") is not None else None
+ "detailsOptical": DetailsOptical.from_dict(obj["detailsOptical"]) if obj.get("detailsOptical") is not None else None,
+ "age": obj.get("age"),
+ "detailsAge": DetailsAge.from_dict(obj["detailsAge"]) if obj.get("detailsAge") is not None else None,
+ "mDL": obj.get("mDL")
})
return _obj
diff --git a/regula/documentreader/webclient/gen/models/status_item.py b/regula/documentreader/webclient/gen/models/status_item.py
index 2b28fdb..049c3da 100644
--- a/regula/documentreader/webclient/gen/models/status_item.py
+++ b/regula/documentreader/webclient/gen/models/status_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.status import Status
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class StatusItem(BaseModel):
"""
StatusItem
""" # noqa: E501
- status: Status = Field(alias="Status")
+ status: SkipValidation[Status] = Field(alias="Status")
__properties: ClassVar[List[str]] = ["Status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of status
- if self.status:
+ if self.status and isinstance(self.status, Status):
_dict['Status'] = self.status.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/status_result.py b/regula/documentreader/webclient/gen/models/status_result.py
index d24b469..8648bb1 100644
--- a/regula/documentreader/webclient/gen/models/status_result.py
+++ b/regula/documentreader/webclient/gen/models/status_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.status import Status
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class StatusResult(ResultItem):
"""
StatusResult
""" # noqa: E501
- status: Status = Field(alias="Status")
+ status: SkipValidation[Status] = Field(alias="Status")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "Status"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of status
- if self.status:
+ if self.status and isinstance(self.status, Status):
_dict['Status'] = self.status.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/string_item.py b/regula/documentreader/webclient/gen/models/string_item.py
index f184624..48d89f0 100644
--- a/regula/documentreader/webclient/gen/models/string_item.py
+++ b/regula/documentreader/webclient/gen/models/string_item.py
@@ -18,34 +18,37 @@
from regula.documentreader.webclient.gen.models.symbol_estimation_item import SymbolEstimationItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class StringItem(BaseModel):
"""
StringItem
""" # noqa: E501
- alignment_symbols_in_string: CheckResult = Field(alias="ALIGNMENT_SYMBOLS_IN_STRING")
- check_sums: CheckResult = Field(alias="CHECK_SUMS")
- error_position: ErrorCoordinates = Field(alias="ErrorPOSITION")
- field_count: StrictInt = Field(alias="FieldCount")
- fields: List[FieldItem] = Field(alias="Fields")
- strings_distance: CheckResult = Field(alias="STRINGS_DISTANCE")
- strings_interval: CheckResult = Field(alias="STRINGS_INTERVAL")
- string_filling: CheckResult = Field(alias="STRING_FILLING")
- strings_position: Optional[CheckResult] = Field(default=None, alias="STRINGS_POSITION")
- symbols_param: CheckResult = Field(alias="SYMBOLS_PARAM")
- size_error_alignment: Union[StrictFloat, StrictInt] = Field(alias="SizeError_ALIGNMENT")
- size_error_distance: Union[StrictFloat, StrictInt] = Field(alias="SizeError_DISTANCE")
- size_error_interval: Union[StrictFloat, StrictInt] = Field(alias="SizeError_INTERVAL")
- string_angle: Union[StrictFloat, StrictInt] = Field(alias="StringAngle")
- string_borders: RectangleCoordinates = Field(alias="StringBorders")
- symbols_count: StrictInt = Field(alias="SymbolsCount")
- symbols_estimations: List[SymbolEstimationItem] = Field(alias="SymbolsEstimations")
+ alignment_symbols_in_string: SkipValidation[CheckResult] = Field(alias="ALIGNMENT_SYMBOLS_IN_STRING")
+ check_sums: SkipValidation[CheckResult] = Field(alias="CHECK_SUMS")
+ error_position: SkipValidation[ErrorCoordinates] = Field(alias="ErrorPOSITION")
+ field_count: SkipValidation[int] = Field(alias="FieldCount")
+ fields: SkipValidation[List[FieldItem]] = Field(alias="Fields")
+ strings_distance: SkipValidation[CheckResult] = Field(alias="STRINGS_DISTANCE")
+ strings_interval: SkipValidation[CheckResult] = Field(alias="STRINGS_INTERVAL")
+ string_filling: SkipValidation[CheckResult] = Field(alias="STRING_FILLING")
+ strings_position: SkipValidation[Optional[CheckResult]] = Field(alias="STRINGS_POSITION", default=None)
+ symbols_param: SkipValidation[CheckResult] = Field(alias="SYMBOLS_PARAM")
+ size_error_alignment: SkipValidation[float] = Field(alias="SizeError_ALIGNMENT")
+ size_error_distance: SkipValidation[float] = Field(alias="SizeError_DISTANCE")
+ size_error_interval: SkipValidation[float] = Field(alias="SizeError_INTERVAL")
+ string_angle: SkipValidation[float] = Field(alias="StringAngle")
+ string_borders: SkipValidation[RectangleCoordinates] = Field(alias="StringBorders")
+ symbols_count: SkipValidation[int] = Field(alias="SymbolsCount")
+ symbols_estimations: SkipValidation[List[SymbolEstimationItem]] = Field(alias="SymbolsEstimations")
__properties: ClassVar[List[str]] = ["ALIGNMENT_SYMBOLS_IN_STRING", "CHECK_SUMS", "ErrorPOSITION", "FieldCount", "Fields", "STRINGS_DISTANCE", "STRINGS_INTERVAL", "STRING_FILLING", "STRINGS_POSITION", "SYMBOLS_PARAM", "SizeError_ALIGNMENT", "SizeError_DISTANCE", "SizeError_INTERVAL", "StringAngle", "StringBorders", "SymbolsCount", "SymbolsEstimations"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -82,23 +85,23 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of error_position
- if self.error_position:
+ if self.error_position and isinstance(self.error_position, ErrorCoordinates):
_dict['ErrorPOSITION'] = self.error_position.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in fields (list)
_items = []
if self.fields:
for _item_fields in self.fields:
- if _item_fields:
+ if _item_fields and hasattr(_item_fields, "to_dict"):
_items.append(_item_fields.to_dict())
_dict['Fields'] = _items
# override the default output from pydantic by calling `to_dict()` of string_borders
- if self.string_borders:
+ if self.string_borders and isinstance(self.string_borders, RectangleCoordinates):
_dict['StringBorders'] = self.string_borders.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in symbols_estimations (list)
_items = []
if self.symbols_estimations:
for _item_symbols_estimations in self.symbols_estimations:
- if _item_symbols_estimations:
+ if _item_symbols_estimations and hasattr(_item_symbols_estimations, "to_dict"):
_items.append(_item_symbols_estimations.to_dict())
_dict['SymbolsEstimations'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/string_recognition_result.py b/regula/documentreader/webclient/gen/models/string_recognition_result.py
index 81b1fc9..424590c 100644
--- a/regula/documentreader/webclient/gen/models/string_recognition_result.py
+++ b/regula/documentreader/webclient/gen/models/string_recognition_result.py
@@ -14,22 +14,25 @@
from regula.documentreader.webclient.gen.models.symbol_recognition_result import SymbolRecognitionResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class StringRecognitionResult(BaseModel):
"""
Describes single row recognition results in multi-line text field of a document
""" # noqa: E501
- symbols_count: Union[StrictFloat, StrictInt] = Field(description="Number of StringResult array elements", alias="SymbolsCount")
- string_result: List[SymbolRecognitionResult] = Field(description="Array of recognition results for individual characters of a string", alias="StringResult")
- buf_length: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Buf_Text text string length", alias="Buf_Length")
- buf_text: Optional[StrictStr] = Field(default=None, description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'", alias="Buf_Text")
- reserved: Optional[StrictInt] = Field(default=None, alias="Reserved")
+ symbols_count: SkipValidation[float] = Field(alias="SymbolsCount", description="Number of StringResult array elements")
+ string_result: SkipValidation[List[SymbolRecognitionResult]] = Field(alias="StringResult", description="Array of recognition results for individual characters of a string")
+ buf_length: SkipValidation[Optional[float]] = Field(alias="Buf_Length", default=None, description="Buf_Text text string length")
+ buf_text: SkipValidation[Optional[str]] = Field(alias="Buf_Text", default=None, description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'")
+ reserved: SkipValidation[Optional[int]] = Field(alias="Reserved", default=None)
__properties: ClassVar[List[str]] = ["SymbolsCount", "StringResult", "Buf_Length", "Buf_Text", "Reserved"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,7 +72,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.string_result:
for _item_string_result in self.string_result:
- if _item_string_result:
+ if _item_string_result and hasattr(_item_string_result, "to_dict"):
_items.append(_item_string_result.to_dict())
_dict['StringResult'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/symbol.py b/regula/documentreader/webclient/gen/models/symbol.py
index 84fc2e3..6bdaadf 100644
--- a/regula/documentreader/webclient/gen/models/symbol.py
+++ b/regula/documentreader/webclient/gen/models/symbol.py
@@ -13,18 +13,21 @@
from typing import Any, ClassVar, Dict, List
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Symbol(BaseModel):
"""
Symbol
""" # noqa: E501
- bounding_rect: List[StrictInt] = Field(alias="boundingRect")
+ bounding_rect: SkipValidation[List[int]] = Field(alias="boundingRect")
__properties: ClassVar[List[str]] = ["boundingRect"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/symbol_candidate.py b/regula/documentreader/webclient/gen/models/symbol_candidate.py
index 9b79234..175ca77 100644
--- a/regula/documentreader/webclient/gen/models/symbol_candidate.py
+++ b/regula/documentreader/webclient/gen/models/symbol_candidate.py
@@ -14,21 +14,24 @@
from typing_extensions import Annotated
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SymbolCandidate(BaseModel):
"""
Describes an individual character recognition candidate
""" # noqa: E501
- symbol_code: StrictInt = Field(description="Unicode symbol code", alias="SymbolCode")
- symbol_probability: Annotated[int, Field(le=100, strict=True, ge=0)] = Field(description="character recognition probability (0–100,%)", alias="SymbolProbability")
- var_class: Optional[StrictInt] = Field(default=None, alias="Class")
- sub_class: Optional[StrictInt] = Field(default=None, alias="SubClass")
+ symbol_code: SkipValidation[int] = Field(alias="SymbolCode", description="Unicode symbol code")
+ symbol_probability: SkipValidation[int] = Field(alias="SymbolProbability", description="character recognition probability (0–100,%)")
+ var_class: SkipValidation[Optional[int]] = Field(alias="Class", default=None)
+ sub_class: SkipValidation[Optional[int]] = Field(alias="SubClass", default=None)
__properties: ClassVar[List[str]] = ["SymbolCode", "SymbolProbability", "Class", "SubClass"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/symbol_estimation_item.py b/regula/documentreader/webclient/gen/models/symbol_estimation_item.py
index 5341b4b..bf9e6da 100644
--- a/regula/documentreader/webclient/gen/models/symbol_estimation_item.py
+++ b/regula/documentreader/webclient/gen/models/symbol_estimation_item.py
@@ -14,34 +14,37 @@
from regula.documentreader.webclient.gen.models.rectangle_coordinates import RectangleCoordinates
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SymbolEstimationItem(BaseModel):
"""
SymbolEstimationItem
""" # noqa: E501
- alignment_nearest_symbols: StrictInt = Field(alias="ALIGNMENT_NEAREST_SYMBOLS")
- contrast_print: StrictInt = Field(alias="CONTRAST_PRINT")
- contrast_symbol: StrictInt = Field(alias="CONTRAST_SYMBOL")
- char_symbol: StrictInt = Field(alias="CharSymbol")
- edge: StrictInt = Field(alias="EDGE")
- emptiness: StrictInt = Field(alias="EMPTINESS")
- stain: StrictInt = Field(alias="STAIN")
- symbols_interval: StrictInt = Field(alias="SYMBOLS_INTERVAL")
- symbol_param: StrictInt = Field(alias="SYMBOL_PARAM")
- symbol_size: StrictInt = Field(alias="SYMBOL_SIZE")
- size_error_align_with_next: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorAlignWithNext")
- size_error_align_with_prev: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorAlignWithPrev")
- size_error_interv_with_next: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorIntervWithNext")
- size_error_interv_with_prev: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorIntervWithPrev")
- size_error_symbol_height: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorSymbolHeight")
- size_error_symbol_width: Union[StrictFloat, StrictInt] = Field(alias="SizeErrorSymbolWidth")
- symbol_bounds: RectangleCoordinates = Field(alias="SymbolBounds")
+ alignment_nearest_symbols: SkipValidation[int] = Field(alias="ALIGNMENT_NEAREST_SYMBOLS")
+ contrast_print: SkipValidation[int] = Field(alias="CONTRAST_PRINT")
+ contrast_symbol: SkipValidation[int] = Field(alias="CONTRAST_SYMBOL")
+ char_symbol: SkipValidation[int] = Field(alias="CharSymbol")
+ edge: SkipValidation[int] = Field(alias="EDGE")
+ emptiness: SkipValidation[int] = Field(alias="EMPTINESS")
+ stain: SkipValidation[int] = Field(alias="STAIN")
+ symbols_interval: SkipValidation[int] = Field(alias="SYMBOLS_INTERVAL")
+ symbol_param: SkipValidation[int] = Field(alias="SYMBOL_PARAM")
+ symbol_size: SkipValidation[int] = Field(alias="SYMBOL_SIZE")
+ size_error_align_with_next: SkipValidation[float] = Field(alias="SizeErrorAlignWithNext")
+ size_error_align_with_prev: SkipValidation[float] = Field(alias="SizeErrorAlignWithPrev")
+ size_error_interv_with_next: SkipValidation[float] = Field(alias="SizeErrorIntervWithNext")
+ size_error_interv_with_prev: SkipValidation[float] = Field(alias="SizeErrorIntervWithPrev")
+ size_error_symbol_height: SkipValidation[float] = Field(alias="SizeErrorSymbolHeight")
+ size_error_symbol_width: SkipValidation[float] = Field(alias="SizeErrorSymbolWidth")
+ symbol_bounds: SkipValidation[RectangleCoordinates] = Field(alias="SymbolBounds")
__properties: ClassVar[List[str]] = ["ALIGNMENT_NEAREST_SYMBOLS", "CONTRAST_PRINT", "CONTRAST_SYMBOL", "CharSymbol", "EDGE", "EMPTINESS", "STAIN", "SYMBOLS_INTERVAL", "SYMBOL_PARAM", "SYMBOL_SIZE", "SizeErrorAlignWithNext", "SizeErrorAlignWithPrev", "SizeErrorIntervWithNext", "SizeErrorIntervWithPrev", "SizeErrorSymbolHeight", "SizeErrorSymbolWidth", "SymbolBounds"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -78,7 +81,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of symbol_bounds
- if self.symbol_bounds:
+ if self.symbol_bounds and isinstance(self.symbol_bounds, RectangleCoordinates):
_dict['SymbolBounds'] = self.symbol_bounds.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/symbol_recognition_result.py b/regula/documentreader/webclient/gen/models/symbol_recognition_result.py
index 798448c..e09aff5 100644
--- a/regula/documentreader/webclient/gen/models/symbol_recognition_result.py
+++ b/regula/documentreader/webclient/gen/models/symbol_recognition_result.py
@@ -15,22 +15,25 @@
from regula.documentreader.webclient.gen.models.symbol_candidate import SymbolCandidate
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class SymbolRecognitionResult(BaseModel):
"""
Describes a single character recognition results in the text field line
""" # noqa: E501
- symbol_rect: Optional[RectangleCoordinates] = Field(default=None, alias="SymbolRect")
- candidates_count: Union[StrictFloat, StrictInt] = Field(description="Number of significant elements of ListOfCandidates array", alias="CandidatesCount")
- list_of_candidates: List[SymbolCandidate] = Field(description="Array of candidate characters. Sorted in descending order of recognition probabilities (the first element has highest probability)", alias="ListOfCandidates")
- base_line_bottom: Optional[StrictInt] = Field(default=None, alias="BaseLineBottom")
- base_line_top: Optional[StrictInt] = Field(default=None, alias="BaseLineTop")
+ symbol_rect: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="SymbolRect", default=None)
+ candidates_count: SkipValidation[float] = Field(alias="CandidatesCount", description="Number of significant elements of ListOfCandidates array")
+ list_of_candidates: SkipValidation[List[SymbolCandidate]] = Field(alias="ListOfCandidates", description="Array of candidate characters. Sorted in descending order of recognition probabilities (the first element has highest probability)")
+ base_line_bottom: SkipValidation[Optional[int]] = Field(alias="BaseLineBottom", default=None)
+ base_line_top: SkipValidation[Optional[int]] = Field(alias="BaseLineTop", default=None)
__properties: ClassVar[List[str]] = ["SymbolRect", "CandidatesCount", "ListOfCandidates", "BaseLineBottom", "BaseLineTop"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -67,13 +70,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of symbol_rect
- if self.symbol_rect:
+ if self.symbol_rect and isinstance(self.symbol_rect, RectangleCoordinates):
_dict['SymbolRect'] = self.symbol_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in list_of_candidates (list)
_items = []
if self.list_of_candidates:
for _item_list_of_candidates in self.list_of_candidates:
- if _item_list_of_candidates:
+ if _item_list_of_candidates and hasattr(_item_list_of_candidates, "to_dict"):
_items.append(_item_list_of_candidates.to_dict())
_dict['ListOfCandidates'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/t_doc_binary_info.py b/regula/documentreader/webclient/gen/models/t_doc_binary_info.py
index a85b61f..4de4021 100644
--- a/regula/documentreader/webclient/gen/models/t_doc_binary_info.py
+++ b/regula/documentreader/webclient/gen/models/t_doc_binary_info.py
@@ -15,19 +15,22 @@
from regula.documentreader.webclient.gen.models.rfid_raw_data import RfidRawData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TDocBinaryInfo(BaseModel):
"""
TDocBinaryInfo
""" # noqa: E501
- rfid_binary_data: Optional[BinaryData] = Field(default=None, alias="RFID_BINARY_DATA")
- rfid_raw_data: Optional[List[RfidRawData]] = Field(default=None, alias="RFID_RAW_DATA")
+ rfid_binary_data: SkipValidation[Optional[BinaryData]] = Field(alias="RFID_BINARY_DATA", default=None)
+ rfid_raw_data: SkipValidation[Optional[List[RfidRawData]]] = Field(alias="RFID_RAW_DATA", default=None)
__properties: ClassVar[List[str]] = ["RFID_BINARY_DATA", "RFID_RAW_DATA"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,13 +67,13 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of rfid_binary_data
- if self.rfid_binary_data:
+ if self.rfid_binary_data and isinstance(self.rfid_binary_data, BinaryData):
_dict['RFID_BINARY_DATA'] = self.rfid_binary_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in rfid_raw_data (list)
_items = []
if self.rfid_raw_data:
for _item_rfid_raw_data in self.rfid_raw_data:
- if _item_rfid_raw_data:
+ if _item_rfid_raw_data and hasattr(_item_rfid_raw_data, "to_dict"):
_items.append(_item_rfid_raw_data.to_dict())
_dict['RFID_RAW_DATA'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/t_doc_binary_info_item.py b/regula/documentreader/webclient/gen/models/t_doc_binary_info_item.py
index 0e76537..bf80f21 100644
--- a/regula/documentreader/webclient/gen/models/t_doc_binary_info_item.py
+++ b/regula/documentreader/webclient/gen/models/t_doc_binary_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.t_doc_binary_info import TDocBinaryInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TDocBinaryInfoItem(BaseModel):
"""
TDocBinaryInfoItem
""" # noqa: E501
- t_doc_binary_info: TDocBinaryInfo = Field(alias="TDocBinaryInfo")
+ t_doc_binary_info: SkipValidation[TDocBinaryInfo] = Field(alias="TDocBinaryInfo")
__properties: ClassVar[List[str]] = ["TDocBinaryInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of t_doc_binary_info
- if self.t_doc_binary_info:
+ if self.t_doc_binary_info and isinstance(self.t_doc_binary_info, TDocBinaryInfo):
_dict['TDocBinaryInfo'] = self.t_doc_binary_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info.py b/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info.py
index 26de231..343de04 100644
--- a/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info.py
+++ b/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.graph_data import GraphData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TOriginalRFIDGraphicsInfo(BaseModel):
"""
TOriginalRFIDGraphicsInfo
""" # noqa: E501
- rfid_original_graph_data: List[GraphData] = Field(alias="RFID_ORIGINAL_GRAPH_DATA")
+ rfid_original_graph_data: SkipValidation[List[GraphData]] = Field(alias="RFID_ORIGINAL_GRAPH_DATA")
__properties: ClassVar[List[str]] = ["RFID_ORIGINAL_GRAPH_DATA"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -65,7 +68,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.rfid_original_graph_data:
for _item_rfid_original_graph_data in self.rfid_original_graph_data:
- if _item_rfid_original_graph_data:
+ if _item_rfid_original_graph_data and hasattr(_item_rfid_original_graph_data, "to_dict"):
_items.append(_item_rfid_original_graph_data.to_dict())
_dict['RFID_ORIGINAL_GRAPH_DATA'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info_item.py b/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info_item.py
index 77bcb36..fed0bd8 100644
--- a/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info_item.py
+++ b/regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.t_original_rfid_graphics_info import TOriginalRFIDGraphicsInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TOriginalRFIDGraphicsInfoItem(BaseModel):
"""
TOriginalRFIDGraphicsInfoItem
""" # noqa: E501
- t_original_rfid_graphics_info: TOriginalRFIDGraphicsInfo = Field(alias="TOriginalRFIDGraphicsInfo")
+ t_original_rfid_graphics_info: SkipValidation[TOriginalRFIDGraphicsInfo] = Field(alias="TOriginalRFIDGraphicsInfo")
__properties: ClassVar[List[str]] = ["TOriginalRFIDGraphicsInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of t_original_rfid_graphics_info
- if self.t_original_rfid_graphics_info:
+ if self.t_original_rfid_graphics_info and isinstance(self.t_original_rfid_graphics_info, TOriginalRFIDGraphicsInfo):
_dict['TOriginalRFIDGraphicsInfo'] = self.t_original_rfid_graphics_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text.py b/regula/documentreader/webclient/gen/models/text.py
index 86ebc5a..cfa57e3 100644
--- a/regula/documentreader/webclient/gen/models/text.py
+++ b/regula/documentreader/webclient/gen/models/text.py
@@ -16,23 +16,26 @@
from regula.documentreader.webclient.gen.models.text_field import TextField
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class Text(BaseModel):
"""
Contains all document text fields data with validity and cross-source compare checks
""" # noqa: E501
- status: CheckResult
- validity_status: CheckResult = Field(alias="validityStatus")
- comparison_status: CheckResult = Field(alias="comparisonStatus")
- date_format: StrictStr = Field(description="Date format", alias="dateFormat")
- field_list: List[TextField] = Field(alias="fieldList")
- available_source_list: List[TextAvailableSource] = Field(alias="availableSourceList")
+ status: SkipValidation[CheckResult] = Field(alias="status")
+ validity_status: SkipValidation[CheckResult] = Field(alias="validityStatus")
+ comparison_status: SkipValidation[CheckResult] = Field(alias="comparisonStatus")
+ date_format: SkipValidation[str] = Field(alias="dateFormat", description="Date format")
+ field_list: SkipValidation[List[TextField]] = Field(alias="fieldList")
+ available_source_list: SkipValidation[List[TextAvailableSource]] = Field(alias="availableSourceList")
__properties: ClassVar[List[str]] = ["status", "validityStatus", "comparisonStatus", "dateFormat", "fieldList", "availableSourceList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -72,14 +75,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.field_list:
for _item_field_list in self.field_list:
- if _item_field_list:
+ if _item_field_list and hasattr(_item_field_list, "to_dict"):
_items.append(_item_field_list.to_dict())
_dict['fieldList'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in available_source_list (list)
_items = []
if self.available_source_list:
for _item_available_source_list in self.available_source_list:
- if _item_available_source_list:
+ if _item_available_source_list and hasattr(_item_available_source_list, "to_dict"):
_items.append(_item_available_source_list.to_dict())
_dict['availableSourceList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text_available_source.py b/regula/documentreader/webclient/gen/models/text_available_source.py
index 50ee41c..6952fe8 100644
--- a/regula/documentreader/webclient/gen/models/text_available_source.py
+++ b/regula/documentreader/webclient/gen/models/text_available_source.py
@@ -15,20 +15,23 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextAvailableSource(BaseModel):
"""
TextAvailableSource
""" # noqa: E501
- source: Source
- validity_status: CheckResult = Field(alias="validityStatus")
- container_type: Optional[StrictInt] = Field(default=0, description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="containerType")
+ source: SkipValidation[Source] = Field(alias="source")
+ validity_status: SkipValidation[CheckResult] = Field(alias="validityStatus")
+ container_type: SkipValidation[Optional[int]] = Field(alias="containerType", default=None, description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
__properties: ClassVar[List[str]] = ["source", "validityStatus", "containerType"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/text_data_result.py b/regula/documentreader/webclient/gen/models/text_data_result.py
index f7ee573..2a79ec5 100644
--- a/regula/documentreader/webclient/gen/models/text_data_result.py
+++ b/regula/documentreader/webclient/gen/models/text_data_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.result_item import ResultItem
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextDataResult(ResultItem):
"""
Text fields extracted from one document source. Contains results of specific source for each provided page.
""" # noqa: E501
- doc_visual_extended_info: DocVisualExtendedInfo = Field(alias="DocVisualExtendedInfo")
+ doc_visual_extended_info: SkipValidation[DocVisualExtendedInfo] = Field(alias="DocVisualExtendedInfo")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "DocVisualExtendedInfo"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of doc_visual_extended_info
- if self.doc_visual_extended_info:
+ if self.doc_visual_extended_info and isinstance(self.doc_visual_extended_info, DocVisualExtendedInfo):
_dict['DocVisualExtendedInfo'] = self.doc_visual_extended_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text_field.py b/regula/documentreader/webclient/gen/models/text_field.py
index 1603d28..74df885 100644
--- a/regula/documentreader/webclient/gen/models/text_field.py
+++ b/regula/documentreader/webclient/gen/models/text_field.py
@@ -19,28 +19,31 @@
from regula.documentreader.webclient.gen.models.text_field_value import TextFieldValue
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextField(BaseModel):
"""
TextField
""" # noqa: E501
- field_type: TextFieldType = Field(alias="fieldType")
- field_name: StrictStr = Field(description="Field name. Only use to search values for fields with fieldType=50(other). In general, use fieldType for lookup.", alias="fieldName")
- lcid: LCID
- lcid_name: Optional[StrictStr] = Field(default=None, description="LCID name", alias="lcidName")
- status: CheckResult
- validity_status: CheckResult = Field(alias="validityStatus")
- comparison_status: CheckResult = Field(alias="comparisonStatus")
- value: StrictStr = Field(description="The most confidence value, selected from valueList")
- value_list: List[TextFieldValue] = Field(alias="valueList")
- validity_list: List[SourceValidity] = Field(description="Validity of all field values for given source. If there are two values on different pages for one field-source pair, then validity also will include logical match checking. If such values do not match, validity will return error.", alias="validityList")
- comparison_list: List[CrossSourceValueComparison] = Field(alias="comparisonList")
+ field_type: SkipValidation[TextFieldType] = Field(alias="fieldType")
+ field_name: SkipValidation[str] = Field(alias="fieldName", description="Field name. Only use to search values for fields with fieldType=50(other). In general, use fieldType for lookup.")
+ lcid: SkipValidation[LCID] = Field(alias="lcid")
+ lcid_name: SkipValidation[Optional[str]] = Field(alias="lcidName", default=None, description="LCID name")
+ status: SkipValidation[CheckResult] = Field(alias="status")
+ validity_status: SkipValidation[CheckResult] = Field(alias="validityStatus")
+ comparison_status: SkipValidation[CheckResult] = Field(alias="comparisonStatus")
+ value: SkipValidation[str] = Field(alias="value", description="The most confidence value, selected from valueList")
+ value_list: SkipValidation[List[TextFieldValue]] = Field(alias="valueList")
+ validity_list: SkipValidation[List[SourceValidity]] = Field(alias="validityList", description="Validity of all field values for given source. If there are two values on different pages for one field-source pair, then validity also will include logical match checking. If such values do not match, validity will return error.")
+ comparison_list: SkipValidation[List[CrossSourceValueComparison]] = Field(alias="comparisonList")
__properties: ClassVar[List[str]] = ["fieldType", "fieldName", "lcid", "lcidName", "status", "validityStatus", "comparisonStatus", "value", "valueList", "validityList", "comparisonList"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -80,21 +83,21 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.value_list:
for _item_value_list in self.value_list:
- if _item_value_list:
+ if _item_value_list and hasattr(_item_value_list, "to_dict"):
_items.append(_item_value_list.to_dict())
_dict['valueList'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in validity_list (list)
_items = []
if self.validity_list:
for _item_validity_list in self.validity_list:
- if _item_validity_list:
+ if _item_validity_list and hasattr(_item_validity_list, "to_dict"):
_items.append(_item_validity_list.to_dict())
_dict['validityList'] = _items
# override the default output from pydantic by calling `to_dict()` of each item in comparison_list (list)
_items = []
if self.comparison_list:
for _item_comparison_list in self.comparison_list:
- if _item_comparison_list:
+ if _item_comparison_list and hasattr(_item_comparison_list, "to_dict"):
_items.append(_item_comparison_list.to_dict())
_dict['comparisonList'] = _items
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text_field_type.py b/regula/documentreader/webclient/gen/models/text_field_type.py
index 0bb0992..51d5127 100644
--- a/regula/documentreader/webclient/gen/models/text_field_type.py
+++ b/regula/documentreader/webclient/gen/models/text_field_type.py
@@ -667,6 +667,12 @@ class TextFieldType(int, Enum):
FT_NATIONALITY_CODE_ALPHA2 = 697
FT_FIRST_ISSUE_DATE_CHECK_DIGIT = 698
FT_FIRST_ISSUE_DATE_CHECKSUM = 699
+ FT_EXPIRY_TIMESTAMP = 700
+ FT_COMMERCIAL_INDICATOR = 701
+ FT_NON_DOMICILED_INDICATOR = 702
+ FT_JURISDICTION_SPECIFIC_DATA = 703
+ FT_DATA_DATE_OF_EXPIRY = 704
+ FT_CONSUL = 705
@classmethod
def from_json(cls, json_str: str) -> Self:
diff --git a/regula/documentreader/webclient/gen/models/text_field_value.py b/regula/documentreader/webclient/gen/models/text_field_value.py
index bfa6b6a..1a48de3 100644
--- a/regula/documentreader/webclient/gen/models/text_field_value.py
+++ b/regula/documentreader/webclient/gen/models/text_field_value.py
@@ -19,27 +19,30 @@
from regula.documentreader.webclient.gen.models.source import Source
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextFieldValue(BaseModel):
"""
TextFieldValue
""" # noqa: E501
- source: Source
- value: StrictStr = Field(description="Parsed/processed value. Date format converted for output, delimiters removed")
- original_value: Optional[StrictStr] = Field(default=None, description="Original value as seen in the document", alias="originalValue")
- original_validity: CheckResult = Field(alias="originalValidity")
- original_symbols: Optional[List[OriginalSymbol]] = Field(default=None, alias="originalSymbols")
- page_index: StrictInt = Field(description="Page index of the image from input list", alias="pageIndex")
- probability: Annotated[int, Field(le=100, strict=True, ge=0)] = Field(description="Min recognition probability. Combined minimum probability from single characters probabilities")
- field_rect: Optional[RectangleCoordinates] = Field(default=None, alias="fieldRect")
- rfid_origin: Optional[RfidOrigin] = Field(default=None, alias="rfidOrigin")
- container_type: Optional[StrictInt] = Field(default=0, description="Same as Result type, but used for safe parsing of not-described values. See Result type.", alias="containerType")
+ source: SkipValidation[Source] = Field(alias="source")
+ value: SkipValidation[str] = Field(alias="value", description="Parsed/processed value. Date format converted for output, delimiters removed")
+ original_value: SkipValidation[Optional[str]] = Field(alias="originalValue", default=None, description="Original value as seen in the document")
+ original_validity: SkipValidation[CheckResult] = Field(alias="originalValidity")
+ original_symbols: SkipValidation[Optional[List[OriginalSymbol]]] = Field(alias="originalSymbols", default=None)
+ page_index: SkipValidation[int] = Field(alias="pageIndex", description="Page index of the image from input list")
+ probability: SkipValidation[int] = Field(alias="probability", description="Min recognition probability. Combined minimum probability from single characters probabilities")
+ field_rect: SkipValidation[Optional[RectangleCoordinates]] = Field(alias="fieldRect", default=None)
+ rfid_origin: SkipValidation[Optional[RfidOrigin]] = Field(alias="rfidOrigin", default=None)
+ container_type: SkipValidation[Optional[int]] = Field(alias="containerType", default=None, description="Same as Result type, but used for safe parsing of not-described values. See Result type.")
__properties: ClassVar[List[str]] = ["source", "value", "originalValue", "originalValidity", "originalSymbols", "pageIndex", "probability", "fieldRect", "rfidOrigin", "containerType"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -79,14 +82,14 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.original_symbols:
for _item_original_symbols in self.original_symbols:
- if _item_original_symbols:
+ if _item_original_symbols and hasattr(_item_original_symbols, "to_dict"):
_items.append(_item_original_symbols.to_dict())
_dict['originalSymbols'] = _items
# override the default output from pydantic by calling `to_dict()` of field_rect
- if self.field_rect:
+ if self.field_rect and isinstance(self.field_rect, RectangleCoordinates):
_dict['fieldRect'] = self.field_rect.to_dict()
# override the default output from pydantic by calling `to_dict()` of rfid_origin
- if self.rfid_origin:
+ if self.rfid_origin and isinstance(self.rfid_origin, RfidOrigin):
_dict['rfidOrigin'] = self.rfid_origin.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text_item.py b/regula/documentreader/webclient/gen/models/text_item.py
index 025277b..810e67e 100644
--- a/regula/documentreader/webclient/gen/models/text_item.py
+++ b/regula/documentreader/webclient/gen/models/text_item.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.text import Text
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextItem(BaseModel):
"""
TextItem
""" # noqa: E501
- text: Text = Field(alias="Text")
+ text: SkipValidation[Text] = Field(alias="Text")
__properties: ClassVar[List[str]] = ["Text"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of text
- if self.text:
+ if self.text and isinstance(self.text, Text):
_dict['Text'] = self.text.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/text_result.py b/regula/documentreader/webclient/gen/models/text_result.py
index a5bee75..a05b92e 100644
--- a/regula/documentreader/webclient/gen/models/text_result.py
+++ b/regula/documentreader/webclient/gen/models/text_result.py
@@ -16,18 +16,21 @@
from regula.documentreader.webclient.gen.models.text import Text
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TextResult(ResultItem):
"""
TextResult
""" # noqa: E501
- text: Text = Field(alias="Text")
+ text: SkipValidation[Text] = Field(alias="Text")
__properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "Text"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -64,7 +67,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of text
- if self.text:
+ if self.text and isinstance(self.text, Text):
_dict['Text'] = self.text.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/transaction_image.py b/regula/documentreader/webclient/gen/models/transaction_image.py
index 36efc9b..1d76e5e 100644
--- a/regula/documentreader/webclient/gen/models/transaction_image.py
+++ b/regula/documentreader/webclient/gen/models/transaction_image.py
@@ -14,18 +14,21 @@
from regula.documentreader.webclient.gen.models.images_field_value import ImagesFieldValue
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TransactionImage(BaseModel):
"""
TransactionImage
""" # noqa: E501
- image: Optional[ImagesFieldValue] = None
+ image: SkipValidation[Optional[ImagesFieldValue]] = Field(alias="image", default=None)
__properties: ClassVar[List[str]] = ["image"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -62,7 +65,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of image
- if self.image:
+ if self.image and isinstance(self.image, ImagesFieldValue):
_dict['image'] = self.image.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/transaction_info.py b/regula/documentreader/webclient/gen/models/transaction_info.py
index 62874b7..5a3637e 100644
--- a/regula/documentreader/webclient/gen/models/transaction_info.py
+++ b/regula/documentreader/webclient/gen/models/transaction_info.py
@@ -14,25 +14,28 @@
from regula.documentreader.webclient.gen.models.documents_database import DocumentsDatabase
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TransactionInfo(BaseModel):
"""
TransactionInfo
""" # noqa: E501
- computer_name: Optional[StrictStr] = Field(default=None, description="Computer name", alias="ComputerName")
- date_time: Optional[StrictStr] = Field(default=None, description="Date and time", alias="DateTime")
- documents_database: Optional[DocumentsDatabase] = Field(default=None, alias="DocumentsDatabase")
- system_info: Optional[StrictStr] = Field(default=None, description="System information", alias="SystemInfo")
- tag: Optional[StrictStr] = Field(default=None, description="Transaction tag", alias="Tag")
- transaction_id: Optional[StrictStr] = Field(default=None, description="Transaction identifier", alias="TransactionID")
- user_name: Optional[StrictStr] = Field(default=None, description="User name", alias="UserName")
- version: Optional[StrictStr] = Field(default=None, description="SDK version", alias="Version")
+ computer_name: SkipValidation[Optional[str]] = Field(alias="ComputerName", default=None, description="Computer name")
+ date_time: SkipValidation[Optional[str]] = Field(alias="DateTime", default=None, description="Date and time")
+ documents_database: SkipValidation[Optional[DocumentsDatabase]] = Field(alias="DocumentsDatabase", default=None)
+ system_info: SkipValidation[Optional[str]] = Field(alias="SystemInfo", default=None, description="System information")
+ tag: SkipValidation[Optional[str]] = Field(alias="Tag", default=None, description="Transaction tag")
+ transaction_id: SkipValidation[Optional[str]] = Field(alias="TransactionID", default=None, description="Transaction identifier")
+ user_name: SkipValidation[Optional[str]] = Field(alias="UserName", default=None, description="User name")
+ version: SkipValidation[Optional[str]] = Field(alias="Version", default=None, description="SDK version")
__properties: ClassVar[List[str]] = ["ComputerName", "DateTime", "DocumentsDatabase", "SystemInfo", "Tag", "TransactionID", "UserName", "Version"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -69,7 +72,7 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of documents_database
- if self.documents_database:
+ if self.documents_database and isinstance(self.documents_database, DocumentsDatabase):
_dict['DocumentsDatabase'] = self.documents_database.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/transaction_process_get_response.py b/regula/documentreader/webclient/gen/models/transaction_process_get_response.py
index ff7db0e..ae0efa0 100644
--- a/regula/documentreader/webclient/gen/models/transaction_process_get_response.py
+++ b/regula/documentreader/webclient/gen/models/transaction_process_get_response.py
@@ -11,25 +11,29 @@
from pydantic import BaseModel, ConfigDict, Field, StrictStr
from typing import Any, ClassVar, Dict, List, Optional
+from uuid import UUID
from regula.documentreader.webclient.gen.models.in_data import InData
from regula.documentreader.webclient.gen.models.out_data import OutData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TransactionProcessGetResponse(BaseModel):
"""
TransactionProcessGetResponse
""" # noqa: E501
- transaction_id: Optional[StrictStr] = Field(default=None, alias="transactionId")
- tag: Optional[StrictStr] = None
- out_data: Optional[OutData] = Field(default=None, alias="outData")
- in_data: Optional[InData] = Field(default=None, alias="inData")
+ transaction_id: SkipValidation[Optional[str]] = Field(alias="transactionId", default=None)
+ tag: SkipValidation[Optional[str]] = Field(alias="tag", default=None)
+ out_data: SkipValidation[Optional[OutData]] = Field(alias="outData", default=None)
+ in_data: SkipValidation[Optional[InData]] = Field(alias="inData", default=None)
__properties: ClassVar[List[str]] = ["transactionId", "tag", "outData", "inData"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,10 +70,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of out_data
- if self.out_data:
+ if self.out_data and isinstance(self.out_data, OutData):
_dict['outData'] = self.out_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of in_data
- if self.in_data:
+ if self.in_data and isinstance(self.in_data, InData):
_dict['inData'] = self.in_data.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/transaction_process_request.py b/regula/documentreader/webclient/gen/models/transaction_process_request.py
index 5a23bc5..96c555e 100644
--- a/regula/documentreader/webclient/gen/models/transaction_process_request.py
+++ b/regula/documentreader/webclient/gen/models/transaction_process_request.py
@@ -17,28 +17,31 @@
from regula.documentreader.webclient.gen.models.process_system_info import ProcessSystemInfo
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TransactionProcessRequest(BaseModel):
"""
TransactionProcessRequest
""" # noqa: E501
- process_param: ProcessParams = Field(alias="processParam")
- list: Optional[List[ProcessRequestImage]] = Field(default=None, alias="List")
- tag: Optional[StrictStr] = Field(default=None, description="Session ID")
- tenant: Optional[StrictStr] = Field(default=None, description="Customer name")
- env: Optional[StrictStr] = Field(default=None, description="Environment type")
- live_portrait: Optional[StrictStr] = Field(default=None, description="Live portrait photo", alias="livePortrait")
- ext_portrait: Optional[StrictStr] = Field(default=None, description="Portrait photo from an external source", alias="extPortrait")
- container_list: Optional[ContainerList] = Field(default=None, alias="ContainerList")
- system_info: Optional[ProcessSystemInfo] = Field(default=None, alias="systemInfo")
- pass_back_object: Optional[Dict[str, Any]] = Field(default=None, description="Free-form object to be included in response. Must be object, not list or simple value. Do not affect document processing. Use it freely to pass your app params. Stored in process logs.", alias="passBackObject")
- dtc: Optional[StrictStr] = Field(default=None, description="Digital Travel Credential (DTC-VC) data in base64 format for processing")
+ process_param: SkipValidation[ProcessParams] = Field(alias="processParam")
+ list: SkipValidation[Optional[List[ProcessRequestImage]]] = Field(alias="List", default=None)
+ tag: SkipValidation[Optional[str]] = Field(alias="tag", default=None, description="Session ID")
+ tenant: SkipValidation[Optional[str]] = Field(alias="tenant", default=None, description="Customer name")
+ env: SkipValidation[Optional[str]] = Field(alias="env", default=None, description="Environment type")
+ live_portrait: SkipValidation[Optional[str]] = Field(alias="livePortrait", default=None, description="Live portrait photo")
+ ext_portrait: SkipValidation[Optional[str]] = Field(alias="extPortrait", default=None, description="Portrait photo from an external source")
+ container_list: SkipValidation[Optional[ContainerList]] = Field(alias="ContainerList", default=None)
+ system_info: SkipValidation[Optional[ProcessSystemInfo]] = Field(alias="systemInfo", default=None)
+ pass_back_object: SkipValidation[Optional[Dict[str, object]]] = Field(alias="passBackObject", default=None, description="Free-form object to be included in response. Must be object, not list or simple value. Do not affect document processing. Use it freely to pass your app params. Stored in process logs.")
+ dtc: SkipValidation[Optional[str]] = Field(alias="dtc", default=None, description="Digital Travel Credential (DTC-VC) data in base64 format for processing")
__properties: ClassVar[List[str]] = ["processParam", "List", "tag", "tenant", "env", "livePortrait", "extPortrait", "ContainerList", "systemInfo", "passBackObject", "dtc"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -75,20 +78,20 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of process_param
- if self.process_param:
+ if self.process_param and isinstance(self.process_param, ProcessParams):
_dict['processParam'] = self.process_param.to_dict()
# override the default output from pydantic by calling `to_dict()` of each item in list (list)
_items = []
if self.list:
for _item_list in self.list:
- if _item_list:
+ if _item_list and hasattr(_item_list, "to_dict"):
_items.append(_item_list.to_dict())
_dict['List'] = _items
# override the default output from pydantic by calling `to_dict()` of container_list
- if self.container_list:
+ if self.container_list and isinstance(self.container_list, ContainerList):
_dict['ContainerList'] = self.container_list.to_dict()
# override the default output from pydantic by calling `to_dict()` of system_info
- if self.system_info:
+ if self.system_info and isinstance(self.system_info, ProcessSystemInfo):
_dict['systemInfo'] = self.system_info.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/transaction_process_result.py b/regula/documentreader/webclient/gen/models/transaction_process_result.py
index 31a00e2..b923d3f 100644
--- a/regula/documentreader/webclient/gen/models/transaction_process_result.py
+++ b/regula/documentreader/webclient/gen/models/transaction_process_result.py
@@ -11,25 +11,29 @@
from pydantic import BaseModel, ConfigDict, Field, StrictStr
from typing import Any, ClassVar, Dict, List, Optional
+from uuid import UUID
from regula.documentreader.webclient.gen.models.in_data import InData
from regula.documentreader.webclient.gen.models.out_data import OutData
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TransactionProcessResult(BaseModel):
"""
TransactionProcessResult
""" # noqa: E501
- out_data: Optional[OutData] = Field(default=None, alias="outData")
- in_data: Optional[InData] = Field(default=None, alias="inData")
- tag: Optional[StrictStr] = None
- transaction_id: Optional[StrictStr] = Field(default=None, alias="transactionId")
+ out_data: SkipValidation[Optional[OutData]] = Field(alias="outData", default=None)
+ in_data: SkipValidation[Optional[InData]] = Field(alias="inData", default=None)
+ tag: SkipValidation[Optional[str]] = Field(alias="tag", default=None)
+ transaction_id: SkipValidation[Optional[str]] = Field(alias="transactionId", default=None)
__properties: ClassVar[List[str]] = ["outData", "inData", "tag", "transactionId"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -66,10 +70,10 @@ def to_dict(self) -> Dict[str, Any]:
exclude_none=True,
)
# override the default output from pydantic by calling `to_dict()` of out_data
- if self.out_data:
+ if self.out_data and isinstance(self.out_data, OutData):
_dict['outData'] = self.out_data.to_dict()
# override the default output from pydantic by calling `to_dict()` of in_data
- if self.in_data:
+ if self.in_data and isinstance(self.in_data, InData):
_dict['inData'] = self.in_data.to_dict()
return _dict
diff --git a/regula/documentreader/webclient/gen/models/trf_ft_bytes.py b/regula/documentreader/webclient/gen/models/trf_ft_bytes.py
index b25e14f..5684ef2 100644
--- a/regula/documentreader/webclient/gen/models/trf_ft_bytes.py
+++ b/regula/documentreader/webclient/gen/models/trf_ft_bytes.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional, Union
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TrfFtBytes(BaseModel):
"""
Structure is used to store an array of binary information that is a part of one of the informational data groups
""" # noqa: E501
- type: StrictInt = Field(description="Logical type of the field", alias="Type")
- status: Union[StrictFloat, StrictInt] = Field(description="Result of logical analysis of compliance of the contents of the field with the requirements of the specification", alias="Status")
- length: Union[StrictFloat, StrictInt] = Field(description="Length of Data array", alias="Length")
- data: Optional[StrictStr] = Field(description="Binary data array. Base64 encoded.", alias="Data")
+ type: SkipValidation[int] = Field(alias="Type", description="Logical type of the field")
+ status: SkipValidation[float] = Field(alias="Status", description="Result of logical analysis of compliance of the contents of the field with the requirements of the specification")
+ length: SkipValidation[float] = Field(alias="Length", description="Length of Data array")
+ data: SkipValidation[str] = Field(alias="Data", description="Binary data array. Base64 encoded.")
__properties: ClassVar[List[str]] = ["Type", "Status", "Length", "Data"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/trf_ft_string.py b/regula/documentreader/webclient/gen/models/trf_ft_string.py
index 01cfd9a..aa5770f 100644
--- a/regula/documentreader/webclient/gen/models/trf_ft_string.py
+++ b/regula/documentreader/webclient/gen/models/trf_ft_string.py
@@ -13,21 +13,24 @@
from typing import Any, ClassVar, Dict, List, Optional
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class TrfFtString(BaseModel):
"""
Structure is used to store information about the numeric field (4 bytes) that is a part of one of the informational data groups.
""" # noqa: E501
- type: Optional[StrictInt] = Field(default=None, alias="Type")
- status: Optional[StrictInt] = Field(default=None, description="Result of logical analysis of compliance of the contents of the field with the requirements of the specification", alias="Status")
- format: Optional[StrictStr] = Field(default=None, description="Mask of format of text information (for example, «YYMMDD» for date of birth)", alias="Format")
- data: StrictStr = Field(description="Numeric value.", alias="Data")
+ type: SkipValidation[Optional[int]] = Field(alias="Type", default=None)
+ status: SkipValidation[Optional[int]] = Field(alias="Status", default=None, description="Result of logical analysis of compliance of the contents of the field with the requirements of the specification")
+ format: SkipValidation[Optional[str]] = Field(alias="Format", default=None, description="Mask of format of text information (for example, «YYMMDD» for date of birth)")
+ data: SkipValidation[Optional[str]] = Field(alias="Data", default=None, description="Numeric value.")
__properties: ClassVar[List[str]] = ["Type", "Status", "Format", "Data"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/vd_item.py b/regula/documentreader/webclient/gen/models/vd_item.py
new file mode 100644
index 0000000..e4218a4
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vd_item.py
@@ -0,0 +1,90 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDItem(BaseModel):
+ """
+ VDItem
+ """ # noqa: E501
+ adm: SkipValidation[Optional[str]] = Field(alias="adm", default=None)
+ ctr: SkipValidation[Optional[str]] = Field(alias="ctr", default=None)
+ dvc: SkipValidation[Optional[str]] = Field(alias="dvc", default=None)
+ lot: SkipValidation[Optional[str]] = Field(alias="lot", default=None)
+ seq: SkipValidation[Optional[int]] = Field(alias="seq", default=None)
+ __properties: ClassVar[List[str]] = ["adm", "ctr", "dvc", "lot", "seq"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "adm": obj.get("adm"),
+ "ctr": obj.get("ctr"),
+ "dvc": obj.get("dvc"),
+ "lot": obj.get("lot"),
+ "seq": obj.get("seq")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vds_data.py b/regula/documentreader/webclient/gen/models/vds_data.py
new file mode 100644
index 0000000..5b2497b
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vds_data.py
@@ -0,0 +1,126 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from regula.documentreader.webclient.gen.models.doc_feature import DocFeature
+from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx
+from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSData(BaseModel):
+ """
+ VDSData
+ """ # noqa: E501
+ certificate: SkipValidation[Optional[str]] = Field(alias="Certificate", default=None)
+ certificate_chain: SkipValidation[Optional[List[RfidCertificateEx]]] = Field(alias="CertificateChain", default=None)
+ doc_features: SkipValidation[Optional[List[DocFeature]]] = Field(alias="DocFeatures", default=None)
+ doc_issue_date: SkipValidation[Optional[str]] = Field(alias="DocIssueDate", default=None)
+ doc_type: SkipValidation[Optional[int]] = Field(alias="DocType", default=None)
+ feature_ref: SkipValidation[Optional[int]] = Field(alias="FeatureRef", default=None)
+ issuing_country: SkipValidation[Optional[str]] = Field(alias="IssuingCountry", default=None)
+ notifications: SkipValidation[Optional[List[int]]] = Field(alias="Notifications", default=None)
+ signature: SkipValidation[Optional[TrfFtBytes]] = Field(alias="Signature", default=None)
+ signature_date: SkipValidation[Optional[str]] = Field(alias="SignatureDate", default=None)
+ signer: SkipValidation[Optional[str]] = Field(alias="Signer", default=None)
+ type: SkipValidation[Optional[int]] = Field(alias="Type", default=None)
+ version: SkipValidation[Optional[int]] = Field(alias="Version", default=None)
+ __properties: ClassVar[List[str]] = ["Certificate", "CertificateChain", "DocFeatures", "DocIssueDate", "DocType", "FeatureRef", "IssuingCountry", "Notifications", "Signature", "SignatureDate", "Signer", "Type", "Version"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSData from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in certificate_chain (list)
+ _items = []
+ if self.certificate_chain:
+ for _item_certificate_chain in self.certificate_chain:
+ if _item_certificate_chain and hasattr(_item_certificate_chain, "to_dict"):
+ _items.append(_item_certificate_chain.to_dict())
+ _dict['CertificateChain'] = _items
+ # override the default output from pydantic by calling `to_dict()` of each item in doc_features (list)
+ _items = []
+ if self.doc_features:
+ for _item_doc_features in self.doc_features:
+ if _item_doc_features and hasattr(_item_doc_features, "to_dict"):
+ _items.append(_item_doc_features.to_dict())
+ _dict['DocFeatures'] = _items
+ # override the default output from pydantic by calling `to_dict()` of signature
+ if self.signature and isinstance(self.signature, TrfFtBytes):
+ _dict['Signature'] = self.signature.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSData from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "Certificate": obj.get("Certificate"),
+ "CertificateChain": [RfidCertificateEx.from_dict(_item) for _item in obj.get("CertificateChain", []) if RfidCertificateEx.from_dict(_item) is not None],
+ "DocFeatures": [DocFeature.from_dict(_item) for _item in obj.get("DocFeatures", []) if DocFeature.from_dict(_item) is not None],
+ "DocIssueDate": obj.get("DocIssueDate"),
+ "DocType": obj.get("DocType"),
+ "FeatureRef": obj.get("FeatureRef"),
+ "IssuingCountry": obj.get("IssuingCountry"),
+ "Notifications": obj.get("Notifications"),
+ "Signature": TrfFtBytes.from_dict(obj["Signature"]) if obj.get("Signature") is not None else None,
+ "SignatureDate": obj.get("SignatureDate"),
+ "Signer": obj.get("Signer"),
+ "Type": obj.get("Type"),
+ "Version": obj.get("Version")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vds_data_item.py b/regula/documentreader/webclient/gen/models/vds_data_item.py
new file mode 100644
index 0000000..7b0a28a
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vds_data_item.py
@@ -0,0 +1,86 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.vds_data import VDSData
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSDataItem(BaseModel):
+ """
+ VDSDataItem
+ """ # noqa: E501
+ dft_vds: SkipValidation[VDSData] = Field(alias="dftVDS")
+ __properties: ClassVar[List[str]] = ["dftVDS"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSDataItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of dft_vds
+ if self.dft_vds and isinstance(self.dft_vds, VDSData):
+ _dict['dftVDS'] = self.dft_vds.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSDataItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "dftVDS": VDSData.from_dict(obj["dftVDS"]) if obj.get("dftVDS") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vds_data_result.py b/regula/documentreader/webclient/gen/models/vds_data_result.py
new file mode 100644
index 0000000..2877751
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vds_data_result.py
@@ -0,0 +1,93 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.result import Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem
+from regula.documentreader.webclient.gen.models.vds_data import VDSData
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSDataResult(ResultItem):
+ """
+ VDSDataResult
+ """ # noqa: E501
+ dft_vds: SkipValidation[VDSData] = Field(alias="dftVDS")
+ __properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "dftVDS"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSDataResult from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of dft_vds
+ if self.dft_vds and isinstance(self.dft_vds, VDSData):
+ _dict['dftVDS'] = self.dft_vds.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSDataResult from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "buf_length": obj.get("buf_length"),
+ "light": obj.get("light"),
+ "list_idx": obj.get("list_idx"),
+ "page_idx": obj.get("page_idx"),
+ "result_type": obj.get("result_type"),
+ "dftVDS": VDSData.from_dict(obj["dftVDS"]) if obj.get("dftVDS") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vdsnc_data.py b/regula/documentreader/webclient/gen/models/vdsnc_data.py
new file mode 100644
index 0000000..bebec84
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vdsnc_data.py
@@ -0,0 +1,117 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from regula.documentreader.webclient.gen.models.message import Message
+from regula.documentreader.webclient.gen.models.rfid_certificate_ex import RfidCertificateEx
+from regula.documentreader.webclient.gen.models.trf_ft_bytes import TrfFtBytes
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSNCData(BaseModel):
+ """
+ VDSNCData
+ """ # noqa: E501
+ certificate: SkipValidation[Optional[TrfFtBytes]] = Field(alias="Certificate", default=None)
+ certificate_chain: SkipValidation[Optional[List[RfidCertificateEx]]] = Field(alias="CertificateChain", default=None)
+ issuing_country: SkipValidation[Optional[str]] = Field(alias="IssuingCountry", default=None)
+ message: SkipValidation[Optional[Message]] = Field(alias="Message", default=None)
+ notifications: SkipValidation[Optional[List[int]]] = Field(alias="Notifications", default=None)
+ signature: SkipValidation[Optional[TrfFtBytes]] = Field(alias="Signature", default=None)
+ signature_alg: SkipValidation[Optional[str]] = Field(alias="SignatureAlg", default=None)
+ type: SkipValidation[Optional[str]] = Field(alias="Type", default=None)
+ version: SkipValidation[Optional[int]] = Field(alias="Version", default=None)
+ __properties: ClassVar[List[str]] = ["Certificate", "CertificateChain", "IssuingCountry", "Message", "Notifications", "Signature", "SignatureAlg", "Type", "Version"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSNCData from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of certificate
+ if self.certificate and isinstance(self.certificate, TrfFtBytes):
+ _dict['Certificate'] = self.certificate.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of each item in certificate_chain (list)
+ _items = []
+ if self.certificate_chain:
+ for _item_certificate_chain in self.certificate_chain:
+ if _item_certificate_chain and hasattr(_item_certificate_chain, "to_dict"):
+ _items.append(_item_certificate_chain.to_dict())
+ _dict['CertificateChain'] = _items
+ # override the default output from pydantic by calling `to_dict()` of message
+ if self.message and isinstance(self.message, Message):
+ _dict['Message'] = self.message.to_dict()
+ # override the default output from pydantic by calling `to_dict()` of signature
+ if self.signature and isinstance(self.signature, TrfFtBytes):
+ _dict['Signature'] = self.signature.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSNCData from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "Certificate": TrfFtBytes.from_dict(obj["Certificate"]) if obj.get("Certificate") is not None else None,
+ "CertificateChain": [RfidCertificateEx.from_dict(_item) for _item in obj.get("CertificateChain", []) if RfidCertificateEx.from_dict(_item) is not None],
+ "IssuingCountry": obj.get("IssuingCountry"),
+ "Message": Message.from_dict(obj["Message"]) if obj.get("Message") is not None else None,
+ "Notifications": obj.get("Notifications"),
+ "Signature": TrfFtBytes.from_dict(obj["Signature"]) if obj.get("Signature") is not None else None,
+ "SignatureAlg": obj.get("SignatureAlg"),
+ "Type": obj.get("Type"),
+ "Version": obj.get("Version")
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vdsnc_data_item.py b/regula/documentreader/webclient/gen/models/vdsnc_data_item.py
new file mode 100644
index 0000000..8029dda
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vdsnc_data_item.py
@@ -0,0 +1,86 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSNCDataItem(BaseModel):
+ """
+ VDSNCDataItem
+ """ # noqa: E501
+ dft_vds_nc: SkipValidation[VDSNCData] = Field(alias="dftVDS_NC")
+ __properties: ClassVar[List[str]] = ["dftVDS_NC"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSNCDataItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of dft_vds_nc
+ if self.dft_vds_nc and isinstance(self.dft_vds_nc, VDSNCData):
+ _dict['dftVDS_NC'] = self.dft_vds_nc.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSNCDataItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "dftVDS_NC": VDSNCData.from_dict(obj["dftVDS_NC"]) if obj.get("dftVDS_NC") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/vdsnc_data_result.py b/regula/documentreader/webclient/gen/models/vdsnc_data_result.py
new file mode 100644
index 0000000..cd8fc15
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/vdsnc_data_result.py
@@ -0,0 +1,93 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import ConfigDict, Field
+from typing import Any, ClassVar, Dict, List
+from regula.documentreader.webclient.gen.models.result import Result
+from regula.documentreader.webclient.gen.models.result_item import ResultItem
+from regula.documentreader.webclient.gen.models.vdsnc_data import VDSNCData
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VDSNCDataResult(ResultItem):
+ """
+ VDSNCDataResult
+ """ # noqa: E501
+ dft_vds_nc: SkipValidation[VDSNCData] = Field(alias="dftVDS_NC")
+ __properties: ClassVar[List[str]] = ["buf_length", "light", "list_idx", "page_idx", "result_type", "dftVDS_NC"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VDSNCDataResult from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of dft_vds_nc
+ if self.dft_vds_nc and isinstance(self.dft_vds_nc, VDSNCData):
+ _dict['dftVDS_NC'] = self.dft_vds_nc.to_dict()
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VDSNCDataResult from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "buf_length": obj.get("buf_length"),
+ "light": obj.get("light"),
+ "list_idx": obj.get("list_idx"),
+ "page_idx": obj.get("page_idx"),
+ "result_type": obj.get("result_type"),
+ "dftVDS_NC": VDSNCData.from_dict(obj["dftVDS_NC"]) if obj.get("dftVDS_NC") is not None else None
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/ve_item.py b/regula/documentreader/webclient/gen/models/ve_item.py
new file mode 100644
index 0000000..c202c58
--- /dev/null
+++ b/regula/documentreader/webclient/gen/models/ve_item.py
@@ -0,0 +1,96 @@
+# coding: utf-8
+
+"""
+ Generated by: https://openapi-generator.tech
+"""
+
+from __future__ import annotations
+import pprint
+import re # noqa: F401
+import json
+
+from pydantic import BaseModel, ConfigDict, StrictStr
+from typing import Any, ClassVar, Dict, List, Optional
+from regula.documentreader.webclient.gen.models.vd_item import VDItem
+from typing import Optional, Set
+from typing_extensions import Self
+from pydantic import SkipValidation, Field
+
+class VEItem(BaseModel):
+ """
+ VEItem
+ """ # noqa: E501
+ des: SkipValidation[Optional[str]] = Field(alias="des", default=None)
+ dis: SkipValidation[Optional[str]] = Field(alias="dis", default=None)
+ nam: SkipValidation[Optional[str]] = Field(alias="nam", default=None)
+ vd: SkipValidation[Optional[List[VDItem]]] = Field(alias="vd", default=None)
+ __properties: ClassVar[List[str]] = ["des", "dis", "nam", "vd"]
+
+ model_config = ConfigDict(
+ populate_by_name=True,
+ validate_assignment=True,
+ protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
+ )
+
+
+ def to_str(self) -> str:
+ """Returns the string representation of the model using alias"""
+ return pprint.pformat(self.model_dump(by_alias=True))
+
+ def to_json(self) -> str:
+ """Returns the JSON representation of the model using alias"""
+ # TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
+ return json.dumps(self.to_dict())
+
+ @classmethod
+ def from_json(cls, json_str: str) -> Optional[Self]:
+ """Create an instance of VEItem from a JSON string"""
+ return cls.from_dict(json.loads(json_str))
+
+ def to_dict(self) -> Dict[str, Any]:
+ """Return the dictionary representation of the model using alias.
+
+ This has the following differences from calling pydantic's
+ `self.model_dump(by_alias=True)`:
+
+ * `None` is only added to the output dict for nullable fields that
+ were set at model initialization. Other fields with value `None`
+ are ignored.
+ """
+ excluded_fields: Set[str] = set([
+ ])
+
+ _dict = self.model_dump(
+ by_alias=True,
+ exclude=excluded_fields,
+ exclude_none=True,
+ )
+ # override the default output from pydantic by calling `to_dict()` of each item in vd (list)
+ _items = []
+ if self.vd:
+ for _item_vd in self.vd:
+ if _item_vd and hasattr(_item_vd, "to_dict"):
+ _items.append(_item_vd.to_dict())
+ _dict['vd'] = _items
+ return _dict
+
+ @classmethod
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
+ """Create an instance of VEItem from a dict"""
+ if obj is None:
+ return None
+
+ if not isinstance(obj, dict):
+ return cls.model_validate(obj)
+
+ _obj = cls.model_validate({
+ "des": obj.get("des"),
+ "dis": obj.get("dis"),
+ "nam": obj.get("nam"),
+ "vd": [VDItem.from_dict(_item) for _item in obj.get("vd", []) if VDItem.from_dict(_item) is not None]
+ })
+ return _obj
+
+
diff --git a/regula/documentreader/webclient/gen/models/verified_field_map.py b/regula/documentreader/webclient/gen/models/verified_field_map.py
index f6fd491..233f978 100644
--- a/regula/documentreader/webclient/gen/models/verified_field_map.py
+++ b/regula/documentreader/webclient/gen/models/verified_field_map.py
@@ -17,24 +17,27 @@
from regula.documentreader.webclient.gen.models.verification_result import VerificationResult
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class VerifiedFieldMap(BaseModel):
"""
VerifiedFieldMap
""" # noqa: E501
- w_field_type: TextFieldType = Field(alias="wFieldType")
- w_lcid: LCID = Field(alias="wLCID")
- field_mrz: Optional[StrictStr] = Field(default=None, description="Field data extracted from mrz(machine readable zone)", alias="Field_MRZ")
- field_visual: Optional[StrictStr] = Field(default=None, description="Field data extracted from visual zone", alias="Field_Visual")
- field_barcode: Optional[StrictStr] = Field(default=None, description="Field data extracted from barcode", alias="Field_Barcode")
- field_rfid: Optional[StrictStr] = Field(default=None, description="Field data extracted from rfid chip", alias="Field_RFID")
- matrix: Annotated[List[VerificationResult], Field(min_length=10, max_length=10)] = Field(description="results comparison matrix. Elements of the matrix with indices 0, 1, 2, 3 take one of the values Disabled(0), Verified(1) or Not_Verified(2), elements with indices 4, 5, 6, 7, 8 are one of the values Disabled(0), Compare_Match(3) or Compare_Not_Match(4). Elements of the Matrix matrix have the following semantic meaning: - element with index 0 –– the result of verification of data from the MRZ; - 1 –– the result of verification of data from the RFID microcircuit; - 2 –– the result of verification of data from text areas of the document; - 3 –– the result of verification data from barcodes; - 4 - the result of comparing MRZ data and RFID microcircuits; - 5 - the result of comparing MRZ data and text areas of document filling; - 6 - the result of comparing MRZ data and bar codes; - 7 - the result of comparing the data of text areas of the document and the RFID chip; - 8 - the result of comparing the data of the text areas of the document and barcodes; - 9 - the result of comparing the data of the RFID chip and barcodes.", alias="Matrix")
+ w_field_type: SkipValidation[TextFieldType] = Field(alias="wFieldType")
+ w_lcid: SkipValidation[LCID] = Field(alias="wLCID")
+ field_mrz: SkipValidation[Optional[str]] = Field(alias="Field_MRZ", default=None, description="Field data extracted from mrz(machine readable zone)")
+ field_visual: SkipValidation[Optional[str]] = Field(alias="Field_Visual", default=None, description="Field data extracted from visual zone")
+ field_barcode: SkipValidation[Optional[str]] = Field(alias="Field_Barcode", default=None, description="Field data extracted from barcode")
+ field_rfid: SkipValidation[Optional[str]] = Field(alias="Field_RFID", default=None, description="Field data extracted from rfid chip")
+ matrix: SkipValidation[List[VerificationResult]] = Field(alias="Matrix", description="results comparison matrix. Elements of the matrix with indices 0, 1, 2, 3 take one of the values Disabled(0), Verified(1) or Not_Verified(2), elements with indices 4, 5, 6, 7, 8 are one of the values Disabled(0), Compare_Match(3) or Compare_Not_Match(4). Elements of the Matrix matrix have the following semantic meaning: - element with index 0 –– the result of verification of data from the MRZ; - 1 –– the result of verification of data from the RFID microcircuit; - 2 –– the result of verification of data from text areas of the document; - 3 –– the result of verification data from barcodes; - 4 - the result of comparing MRZ data and RFID microcircuits; - 5 - the result of comparing MRZ data and text areas of document filling; - 6 - the result of comparing MRZ data and bar codes; - 7 - the result of comparing the data of text areas of the document and the RFID chip; - 8 - the result of comparing the data of the text areas of the document and barcodes; - 9 - the result of comparing the data of the RFID chip and barcodes.")
__properties: ClassVar[List[str]] = ["wFieldType", "wLCID", "Field_MRZ", "Field_Visual", "Field_Barcode", "Field_RFID", "Matrix"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
diff --git a/regula/documentreader/webclient/gen/models/visual_extended_field_item.py b/regula/documentreader/webclient/gen/models/visual_extended_field_item.py
index 76afcf0..a1b4262 100644
--- a/regula/documentreader/webclient/gen/models/visual_extended_field_item.py
+++ b/regula/documentreader/webclient/gen/models/visual_extended_field_item.py
@@ -16,29 +16,32 @@
from regula.documentreader.webclient.gen.models.text_field_type import TextFieldType
from typing import Optional, Set
from typing_extensions import Self
+from pydantic import SkipValidation, Field
class VisualExtendedFieldItem(BaseModel):
"""
VisualExtendedFieldItem
""" # noqa: E501
- w_field_type: TextFieldType = Field(alias="wFieldType")
- field_name: StrictStr = Field(description="Field symbolic name (null-terminated string)", alias="FieldName")
- strings_count: Union[StrictFloat, StrictInt] = Field(description="Number of StringsResult array elements", alias="StringsCount")
- strings_result: List[StringRecognitionResult] = Field(description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.", alias="StringsResult")
- buf_length: Union[StrictFloat, StrictInt] = Field(description="Buf_Text text string length", alias="Buf_Length")
- buf_text: StrictStr = Field(description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'", alias="Buf_Text")
- field_mask: Optional[StrictStr] = Field(default=None, alias="FieldMask")
- validity: Optional[StrictInt] = Field(default=None, alias="Validity")
- in_comparison: Optional[StrictInt] = Field(default=None, alias="InComparison")
- w_lcid: Optional[LCID] = Field(default=None, alias="wLCID")
- reserved2: Optional[StrictInt] = Field(default=None, alias="Reserved2")
- reserved3: Optional[StrictInt] = Field(default=None, alias="Reserved3")
+ w_field_type: SkipValidation[TextFieldType] = Field(alias="wFieldType")
+ field_name: SkipValidation[str] = Field(alias="FieldName", description="Field symbolic name (null-terminated string)")
+ strings_count: SkipValidation[float] = Field(alias="StringsCount", description="Number of StringsResult array elements")
+ strings_result: SkipValidation[List[StringRecognitionResult]] = Field(alias="StringsResult", description="Array of recognizing probabilities for a each line of text field. Only for Result.VISUAL_TEXT and Result.MRZ_TEXT results.")
+ buf_length: SkipValidation[float] = Field(alias="Buf_Length", description="Buf_Text text string length")
+ buf_text: SkipValidation[Optional[str]] = Field(alias="Buf_Text", default=None, description="Text field data in UTF8 format. Results of reading different lines of a multi-line field are separated by '^'")
+ field_mask: SkipValidation[Optional[str]] = Field(alias="FieldMask", default=None)
+ validity: SkipValidation[Optional[int]] = Field(alias="Validity", default=None)
+ in_comparison: SkipValidation[Optional[int]] = Field(alias="InComparison", default=None)
+ w_lcid: SkipValidation[Optional[LCID]] = Field(alias="wLCID", default=None)
+ reserved2: SkipValidation[Optional[int]] = Field(alias="Reserved2", default=None)
+ reserved3: SkipValidation[Optional[int]] = Field(alias="Reserved3", default=None)
__properties: ClassVar[List[str]] = ["wFieldType", "FieldName", "StringsCount", "StringsResult", "Buf_Length", "Buf_Text", "FieldMask", "Validity", "InComparison", "wLCID", "Reserved2", "Reserved3"]
model_config = ConfigDict(
populate_by_name=True,
validate_assignment=True,
protected_namespaces=(),
+ arbitrary_types_allowed=True,
+ use_enum_values=True
)
@@ -78,7 +81,7 @@ def to_dict(self) -> Dict[str, Any]:
_items = []
if self.strings_result:
for _item_strings_result in self.strings_result:
- if _item_strings_result:
+ if _item_strings_result and hasattr(_item_strings_result, "to_dict"):
_items.append(_item_strings_result.to_dict())
_dict['StringsResult'] = _items
return _dict
diff --git a/setup.py b/setup.py
index 44583bd..a81edbc 100644
--- a/setup.py
+++ b/setup.py
@@ -30,9 +30,10 @@
"urllib3>=1.25.3, <3.0.0",
"vistir>=0.4.0, <=0.6.1",
"idna==3.7",
- "requests>=2.32.3",
+ "requests>=2.32.4",
"pydantic>=2",
"typing-extensions>=4.7.1",
+ "lazy-imports==1.0.1",
],
packages=find_packages(exclude=["test", "tests", "example"]),
include_package_data=True,
diff --git a/update-models.sh b/update-models.sh
index 25aa541..b50f010 100755
--- a/update-models.sh
+++ b/update-models.sh
@@ -1,13 +1,19 @@
#!/bin/sh
-DOCS_DEFINITION_FOLDER="${PWD}/../DocumentReader-web-openapi" \
-\
-&& docker run --user "$(id -u):$(id -g)" --rm \
+MODE="$1"
+DOCS_DEFINITION_FOLDER="${PWD}/../DocumentReader-web-openapi"
+TEMPLATE_PATH="/client/generator-templates/lenient"
+
+if [ "$MODE" = "strict" ]; then
+ TEMPLATE_PATH="/client/generator-templates/strict"
+fi
+
+docker run --user "$(id -u):$(id -g)" --rm \
-v "${PWD}:/client" \
-v "$DOCS_DEFINITION_FOLDER:/definitions" \
-openapitools/openapi-generator-cli:v7.13.0 generate \
+openapitools/openapi-generator-cli:v7.15.0 generate \
-g python \
-i /definitions/index.yml \
-o /client \
--t /client/generator-templates \
+-t $TEMPLATE_PATH \
-c /client/generator-config.json || exit 1