regula-documentreader-webclient 8.1.349rc0__py3-none-any.whl → 8.1.351.dev0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of regula-documentreader-webclient might be problematic. Click here for more details.

Files changed (289) hide show
  1. regula/documentreader/webclient/ext/__init__.py +0 -1
  2. regula/documentreader/webclient/ext/api/document_reader_api.py +2 -2
  3. regula/documentreader/webclient/ext/models/__init__.py +0 -2
  4. regula/documentreader/webclient/ext/models/authenticity/authenticity_check_list.py +64 -19
  5. regula/documentreader/webclient/ext/models/authenticity/fiber.py +7 -7
  6. regula/documentreader/webclient/ext/models/authenticity/ident.py +10 -9
  7. regula/documentreader/webclient/ext/models/authenticity/image_ident.py +8 -7
  8. regula/documentreader/webclient/ext/models/authenticity/ocr_security_text.py +7 -7
  9. regula/documentreader/webclient/ext/models/authenticity/security_feature.py +10 -8
  10. regula/documentreader/webclient/ext/models/images.py +4 -4
  11. regula/documentreader/webclient/ext/models/recognition_request.py +23 -24
  12. regula/documentreader/webclient/ext/models/recognition_response.py +6 -8
  13. regula/documentreader/webclient/ext/models/text.py +7 -12
  14. regula/documentreader/webclient/gen/__init__.py +100 -26
  15. regula/documentreader/webclient/gen/api/__init__.py +1 -2
  16. regula/documentreader/webclient/gen/api/healthcheck_api.py +687 -298
  17. regula/documentreader/webclient/gen/api/process_api.py +270 -125
  18. regula/documentreader/webclient/gen/api/transaction_api.py +1472 -673
  19. regula/documentreader/webclient/gen/api_client.py +583 -462
  20. regula/documentreader/webclient/gen/api_response.py +21 -0
  21. regula/documentreader/webclient/gen/configuration.py +222 -99
  22. regula/documentreader/webclient/gen/exceptions.py +81 -30
  23. regula/documentreader/webclient/gen/models/__init__.py +98 -25
  24. regula/documentreader/webclient/gen/models/area_array.py +85 -131
  25. regula/documentreader/webclient/gen/models/area_container.py +85 -157
  26. regula/documentreader/webclient/gen/models/auth_params.py +100 -526
  27. regula/documentreader/webclient/gen/models/authenticity_check_list.py +75 -136
  28. regula/documentreader/webclient/gen/models/authenticity_check_list_item.py +83 -0
  29. regula/documentreader/webclient/gen/models/authenticity_check_result.py +81 -160
  30. regula/documentreader/webclient/gen/models/authenticity_check_result_item.py +154 -217
  31. regula/documentreader/webclient/gen/models/authenticity_check_result_list_inner.py +174 -0
  32. regula/documentreader/webclient/gen/models/authenticity_result.py +68 -231
  33. regula/documentreader/webclient/gen/models/authenticity_result_type.py +35 -123
  34. regula/documentreader/webclient/gen/models/bar_code_module_type.py +32 -0
  35. regula/documentreader/webclient/gen/models/barcode_type.py +47 -0
  36. regula/documentreader/webclient/gen/models/bc_pdf417_info.py +75 -235
  37. regula/documentreader/webclient/gen/models/bc_roidetect.py +71 -183
  38. regula/documentreader/webclient/gen/models/binary_data.py +218 -0
  39. regula/documentreader/webclient/gen/models/byte_array_item.py +79 -0
  40. regula/documentreader/webclient/gen/models/byte_array_result.py +64 -233
  41. regula/documentreader/webclient/gen/models/candidates_list_item.py +83 -0
  42. regula/documentreader/webclient/gen/models/certificate_data.py +81 -0
  43. regula/documentreader/webclient/gen/models/check_diagnose.py +138 -329
  44. regula/documentreader/webclient/gen/models/check_result.py +15 -84
  45. regula/documentreader/webclient/gen/models/chosen_document_type.py +94 -334
  46. regula/documentreader/webclient/gen/models/chosen_document_type_result.py +80 -264
  47. regula/documentreader/webclient/gen/models/container_list.py +75 -134
  48. regula/documentreader/webclient/gen/models/container_list_list_inner.py +426 -0
  49. regula/documentreader/webclient/gen/models/critical.py +14 -82
  50. regula/documentreader/webclient/gen/models/cross_source_value_comparison.py +67 -156
  51. regula/documentreader/webclient/gen/models/data_module.py +74 -209
  52. regula/documentreader/webclient/gen/models/details_optical.py +83 -298
  53. regula/documentreader/webclient/gen/models/details_rfid.py +78 -268
  54. regula/documentreader/webclient/gen/models/device_info.py +76 -235
  55. regula/documentreader/webclient/gen/models/doc_bar_code_info.py +68 -230
  56. regula/documentreader/webclient/gen/models/doc_bar_code_info_fields_list.py +75 -135
  57. regula/documentreader/webclient/gen/models/doc_bar_code_info_item.py +83 -0
  58. regula/documentreader/webclient/gen/models/doc_graphics_info_item.py +83 -0
  59. regula/documentreader/webclient/gen/models/doc_visual_extended_field.py +105 -301
  60. regula/documentreader/webclient/gen/models/doc_visual_extended_field_item.py +83 -0
  61. regula/documentreader/webclient/gen/models/doc_visual_extended_info.py +75 -106
  62. regula/documentreader/webclient/gen/models/doc_visual_extended_info_item.py +83 -0
  63. regula/documentreader/webclient/gen/models/document_binary_info_result.py +90 -0
  64. regula/documentreader/webclient/gen/models/document_format.py +27 -105
  65. regula/documentreader/webclient/gen/models/document_image.py +63 -132
  66. regula/documentreader/webclient/gen/models/document_image_result.py +68 -231
  67. regula/documentreader/webclient/gen/models/document_position.py +111 -340
  68. regula/documentreader/webclient/gen/models/document_position_item.py +83 -0
  69. regula/documentreader/webclient/gen/models/document_position_result.py +68 -230
  70. regula/documentreader/webclient/gen/models/document_type.py +243 -539
  71. regula/documentreader/webclient/gen/models/document_type_recognition_result.py +15 -84
  72. regula/documentreader/webclient/gen/models/document_types_candidates.py +76 -131
  73. regula/documentreader/webclient/gen/models/document_types_candidates_list.py +76 -131
  74. regula/documentreader/webclient/gen/models/document_types_candidates_result.py +68 -230
  75. regula/documentreader/webclient/gen/models/documents_database.py +71 -191
  76. regula/documentreader/webclient/gen/models/encrypted_rcl_item.py +79 -0
  77. regula/documentreader/webclient/gen/models/encrypted_rcl_result.py +64 -233
  78. regula/documentreader/webclient/gen/models/error_coordinates.py +85 -0
  79. regula/documentreader/webclient/gen/models/face_api.py +88 -358
  80. regula/documentreader/webclient/gen/models/face_api_search.py +65 -159
  81. regula/documentreader/webclient/gen/models/face_detection.py +95 -0
  82. regula/documentreader/webclient/gen/models/face_detection_item.py +83 -0
  83. regula/documentreader/webclient/gen/models/face_detection_result.py +90 -0
  84. regula/documentreader/webclient/gen/models/face_item.py +109 -0
  85. regula/documentreader/webclient/gen/models/fdsid_list.py +91 -390
  86. regula/documentreader/webclient/gen/models/fiber_item.py +106 -0
  87. regula/documentreader/webclient/gen/models/fiber_result.py +103 -439
  88. regula/documentreader/webclient/gen/models/field_item.py +89 -0
  89. regula/documentreader/webclient/gen/models/file_image.py +81 -0
  90. regula/documentreader/webclient/gen/models/get_transactions_by_tag_response.py +66 -159
  91. regula/documentreader/webclient/gen/models/graph_data.py +95 -0
  92. regula/documentreader/webclient/gen/models/graphic_field.py +80 -271
  93. regula/documentreader/webclient/gen/models/graphic_field_type.py +40 -131
  94. regula/documentreader/webclient/gen/models/graphic_fields_list.py +75 -106
  95. regula/documentreader/webclient/gen/models/graphics_result.py +68 -231
  96. regula/documentreader/webclient/gen/models/healthcheck.py +117 -297
  97. regula/documentreader/webclient/gen/models/healthcheck_documents_database.py +91 -187
  98. regula/documentreader/webclient/gen/models/ident_item.py +110 -0
  99. regula/documentreader/webclient/gen/models/ident_result.py +107 -345
  100. regula/documentreader/webclient/gen/models/image_data.py +63 -132
  101. regula/documentreader/webclient/gen/models/image_qa.py +83 -304
  102. regula/documentreader/webclient/gen/models/image_quality_check.py +86 -263
  103. regula/documentreader/webclient/gen/models/image_quality_check_list.py +78 -133
  104. regula/documentreader/webclient/gen/models/image_quality_check_list_item.py +83 -0
  105. regula/documentreader/webclient/gen/models/image_quality_check_type.py +22 -97
  106. regula/documentreader/webclient/gen/models/image_quality_result.py +68 -231
  107. regula/documentreader/webclient/gen/models/image_transaction_data.py +61 -97
  108. regula/documentreader/webclient/gen/models/images.py +87 -133
  109. regula/documentreader/webclient/gen/models/images_available_source.py +64 -130
  110. regula/documentreader/webclient/gen/models/images_field.py +80 -162
  111. regula/documentreader/webclient/gen/models/images_field_value.py +94 -331
  112. regula/documentreader/webclient/gen/models/images_item.py +83 -0
  113. regula/documentreader/webclient/gen/models/images_result.py +68 -231
  114. regula/documentreader/webclient/gen/models/in_data.py +79 -131
  115. regula/documentreader/webclient/gen/models/in_data_transaction_images_field_value.py +72 -187
  116. regula/documentreader/webclient/gen/models/in_data_video.py +63 -131
  117. regula/documentreader/webclient/gen/models/input_barcode_type.py +33 -119
  118. regula/documentreader/webclient/gen/models/input_image_quality_checks.py +22 -97
  119. regula/documentreader/webclient/gen/models/lcid.py +179 -402
  120. regula/documentreader/webclient/gen/models/lexical_analysis_result.py +68 -234
  121. regula/documentreader/webclient/gen/models/license_item.py +79 -0
  122. regula/documentreader/webclient/gen/models/license_result.py +64 -233
  123. regula/documentreader/webclient/gen/models/light.py +61 -87
  124. regula/documentreader/webclient/gen/models/list_transactions_by_tag_response.py +75 -131
  125. regula/documentreader/webclient/gen/models/list_verified_fields.py +77 -105
  126. regula/documentreader/webclient/gen/models/list_verified_fields_item.py +83 -0
  127. regula/documentreader/webclient/gen/models/liveness_params.py +77 -247
  128. regula/documentreader/webclient/gen/models/log_level.py +17 -88
  129. regula/documentreader/webclient/gen/models/measure_system.py +14 -82
  130. regula/documentreader/webclient/gen/models/mrz_detect_mode_enum.py +15 -84
  131. regula/documentreader/webclient/gen/models/mrz_detector_result.py +90 -0
  132. regula/documentreader/webclient/gen/models/mrz_format.py +18 -90
  133. regula/documentreader/webclient/gen/models/mrz_position.py +124 -0
  134. regula/documentreader/webclient/gen/models/mrz_position_item.py +83 -0
  135. regula/documentreader/webclient/gen/models/mrz_position_result.py +90 -0
  136. regula/documentreader/webclient/gen/models/mrz_rows_item.py +91 -0
  137. regula/documentreader/webclient/gen/models/mrz_test_quality.py +105 -0
  138. regula/documentreader/webclient/gen/models/mrz_test_quality_item.py +83 -0
  139. regula/documentreader/webclient/gen/models/mrz_test_quality_result.py +90 -0
  140. regula/documentreader/webclient/gen/models/ocr_security_text_item.py +110 -0
  141. regula/documentreader/webclient/gen/models/ocr_security_text_result.py +107 -449
  142. regula/documentreader/webclient/gen/models/one_candidate.py +94 -334
  143. regula/documentreader/webclient/gen/models/one_candidate_item.py +87 -0
  144. regula/documentreader/webclient/gen/models/original_symbol.py +74 -167
  145. regula/documentreader/webclient/gen/models/out_data.py +75 -133
  146. regula/documentreader/webclient/gen/models/out_data_transaction_images_field_value.py +75 -213
  147. regula/documentreader/webclient/gen/models/p_array_field.py +103 -342
  148. regula/documentreader/webclient/gen/models/parsed_data.py +79 -0
  149. regula/documentreader/webclient/gen/models/parsing_error_codes.py +153 -0
  150. regula/documentreader/webclient/gen/models/parsing_notification_codes.py +235 -523
  151. regula/documentreader/webclient/gen/models/per_document_config.py +63 -131
  152. regula/documentreader/webclient/gen/models/photo_ident_item.py +110 -0
  153. regula/documentreader/webclient/gen/models/photo_ident_result.py +107 -423
  154. regula/documentreader/webclient/gen/models/point.py +63 -127
  155. regula/documentreader/webclient/gen/models/point_array.py +65 -97
  156. regula/documentreader/webclient/gen/models/points_container.py +75 -131
  157. regula/documentreader/webclient/gen/models/process_params.py +229 -1743
  158. regula/documentreader/webclient/gen/models/process_params_rfid.py +56 -97
  159. regula/documentreader/webclient/gen/models/process_request.py +113 -411
  160. regula/documentreader/webclient/gen/models/process_request_image.py +74 -159
  161. regula/documentreader/webclient/gen/models/process_response.py +96 -299
  162. regula/documentreader/webclient/gen/models/process_system_info.py +63 -131
  163. regula/documentreader/webclient/gen/models/processing_status.py +15 -84
  164. regula/documentreader/webclient/gen/models/raw_image_container_item.py +83 -0
  165. regula/documentreader/webclient/gen/models/raw_image_container_list.py +75 -131
  166. regula/documentreader/webclient/gen/models/rectangle_coordinates.py +71 -187
  167. regula/documentreader/webclient/gen/models/result.py +49 -133
  168. regula/documentreader/webclient/gen/models/result_item.py +195 -245
  169. regula/documentreader/webclient/gen/models/result_mrz_detector.py +93 -0
  170. regula/documentreader/webclient/gen/models/result_mrz_detector_item.py +83 -0
  171. regula/documentreader/webclient/gen/models/rfid_a_chip.py +33 -0
  172. regula/documentreader/webclient/gen/models/rfid_access_control_info.py +90 -0
  173. regula/documentreader/webclient/gen/models/rfid_access_control_procedure_type.py +35 -0
  174. regula/documentreader/webclient/gen/models/rfid_access_key.py +87 -0
  175. regula/documentreader/webclient/gen/models/rfid_application.py +101 -0
  176. regula/documentreader/webclient/gen/models/rfid_application_type.py +37 -0
  177. regula/documentreader/webclient/gen/models/rfid_attribute_data.py +81 -0
  178. regula/documentreader/webclient/gen/models/rfid_attribute_name.py +85 -0
  179. regula/documentreader/webclient/gen/models/rfid_authentication_procedure_type.py +31 -0
  180. regula/documentreader/webclient/gen/models/rfid_baud_rate.py +32 -0
  181. regula/documentreader/webclient/gen/models/rfid_card_properties_ext.py +123 -0
  182. regula/documentreader/webclient/gen/models/rfid_certificate_ex.py +130 -0
  183. regula/documentreader/webclient/gen/models/rfid_certificate_origin.py +36 -0
  184. regula/documentreader/webclient/gen/models/rfid_certificate_type.py +35 -0
  185. regula/documentreader/webclient/gen/models/rfid_data_file.py +118 -0
  186. regula/documentreader/webclient/gen/models/rfid_data_file_type.py +119 -0
  187. regula/documentreader/webclient/gen/models/rfid_data_group_type_tag.py +82 -0
  188. regula/documentreader/webclient/gen/models/rfid_dg1.py +111 -0
  189. regula/documentreader/webclient/gen/models/rfid_distinguished_name.py +95 -0
  190. regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field.py +120 -0
  191. regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_field_item.py +85 -0
  192. regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info.py +89 -0
  193. regula/documentreader/webclient/gen/models/rfid_doc_visual_extended_info_item.py +83 -0
  194. regula/documentreader/webclient/gen/models/rfid_error_codes.py +141 -0
  195. regula/documentreader/webclient/gen/models/rfid_graphics_info_result.py +90 -0
  196. regula/documentreader/webclient/gen/models/rfid_location.py +15 -84
  197. regula/documentreader/webclient/gen/models/rfid_origin.py +71 -192
  198. regula/documentreader/webclient/gen/models/rfid_password_type.py +34 -0
  199. regula/documentreader/webclient/gen/models/rfid_pki_extension.py +81 -0
  200. regula/documentreader/webclient/gen/models/rfid_raw_data.py +81 -0
  201. regula/documentreader/webclient/gen/models/rfid_security_object.py +96 -0
  202. regula/documentreader/webclient/gen/models/rfid_session_data.py +150 -0
  203. regula/documentreader/webclient/gen/models/rfid_signer_info_ex.py +133 -0
  204. regula/documentreader/webclient/gen/models/rfid_terminal.py +84 -0
  205. regula/documentreader/webclient/gen/models/rfid_terminal_type.py +32 -0
  206. regula/documentreader/webclient/gen/models/rfid_text_data_result.py +90 -0
  207. regula/documentreader/webclient/gen/models/rfid_type.py +30 -0
  208. regula/documentreader/webclient/gen/models/rfid_validity.py +88 -0
  209. regula/documentreader/webclient/gen/models/rfidpkd_resource_type.py +35 -0
  210. regula/documentreader/webclient/gen/models/scenario.py +33 -117
  211. regula/documentreader/webclient/gen/models/security_feature_item.py +102 -0
  212. regula/documentreader/webclient/gen/models/security_feature_result.py +99 -345
  213. regula/documentreader/webclient/gen/models/security_feature_type.py +68 -185
  214. regula/documentreader/webclient/gen/models/security_object_certificates.py +83 -0
  215. regula/documentreader/webclient/gen/models/source.py +18 -88
  216. regula/documentreader/webclient/gen/models/source_validity.py +65 -129
  217. regula/documentreader/webclient/gen/models/status.py +86 -264
  218. regula/documentreader/webclient/gen/models/status_item.py +83 -0
  219. regula/documentreader/webclient/gen/models/status_result.py +68 -231
  220. regula/documentreader/webclient/gen/models/string_item.py +135 -0
  221. regula/documentreader/webclient/gen/models/string_recognition_result.py +81 -108
  222. regula/documentreader/webclient/gen/models/symbol.py +79 -0
  223. regula/documentreader/webclient/gen/models/symbol_candidate.py +72 -143
  224. regula/documentreader/webclient/gen/models/symbol_estimation_item.py +115 -0
  225. regula/documentreader/webclient/gen/models/symbol_recognition_result.py +87 -135
  226. regula/documentreader/webclient/gen/models/t_doc_binary_info.py +93 -0
  227. regula/documentreader/webclient/gen/models/t_doc_binary_info_item.py +83 -0
  228. regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info.py +87 -0
  229. regula/documentreader/webclient/gen/models/t_original_rfid_graphics_info_item.py +83 -0
  230. regula/documentreader/webclient/gen/models/text.py +92 -214
  231. regula/documentreader/webclient/gen/models/text_available_source.py +67 -157
  232. regula/documentreader/webclient/gen/models/text_data_result.py +68 -230
  233. regula/documentreader/webclient/gen/models/text_field.py +115 -357
  234. regula/documentreader/webclient/gen/models/text_field_type.py +661 -1368
  235. regula/documentreader/webclient/gen/models/text_field_value.py +105 -307
  236. regula/documentreader/webclient/gen/models/text_item.py +83 -0
  237. regula/documentreader/webclient/gen/models/text_post_processing.py +16 -86
  238. regula/documentreader/webclient/gen/models/text_result.py +68 -231
  239. regula/documentreader/webclient/gen/models/transaction_image.py +61 -97
  240. regula/documentreader/webclient/gen/models/transaction_info.py +84 -302
  241. regula/documentreader/webclient/gen/models/transaction_process_get_response.py +79 -183
  242. regula/documentreader/webclient/gen/models/transaction_process_request.py +108 -299
  243. regula/documentreader/webclient/gen/models/transaction_process_response.py +107 -0
  244. regula/documentreader/webclient/gen/models/transaction_process_response_item.py +79 -0
  245. regula/documentreader/webclient/gen/models/transaction_process_result.py +93 -0
  246. regula/documentreader/webclient/gen/models/trf_ft_bytes.py +90 -0
  247. regula/documentreader/webclient/gen/models/trf_ft_string.py +85 -0
  248. regula/documentreader/webclient/gen/models/verification_result.py +17 -88
  249. regula/documentreader/webclient/gen/models/verified_field_map.py +85 -273
  250. regula/documentreader/webclient/gen/models/visibility.py +17 -88
  251. regula/documentreader/webclient/gen/models/visual_extended_field_item.py +112 -0
  252. regula/documentreader/webclient/gen/py.typed +0 -0
  253. regula/documentreader/webclient/gen/rest.py +132 -174
  254. {regula_documentreader_webclient-8.1.349rc0.dist-info → regula_documentreader_webclient-8.1.351.dev0.dist-info}/METADATA +6 -4
  255. regula_documentreader_webclient-8.1.351.dev0.dist-info/RECORD +263 -0
  256. regula/documentreader/webclient/ext/models/raw_authenticity_result_item.py +0 -27
  257. regula/documentreader/webclient/ext/models/raw_result_item.py +0 -26
  258. regula/documentreader/webclient/gen/api/default_api.py +0 -160
  259. regula/documentreader/webclient/gen/models/authenticity_result_all_of.py +0 -120
  260. regula/documentreader/webclient/gen/models/byte_array_result_all_of.py +0 -122
  261. regula/documentreader/webclient/gen/models/chosen_document_type_result_all_of.py +0 -145
  262. regula/documentreader/webclient/gen/models/device_info2.py +0 -275
  263. regula/documentreader/webclient/gen/models/doc_bar_code_info_all_of.py +0 -119
  264. regula/documentreader/webclient/gen/models/document_image_result_all_of.py +0 -120
  265. regula/documentreader/webclient/gen/models/document_position_result_all_of.py +0 -119
  266. regula/documentreader/webclient/gen/models/document_types_candidates_result_all_of.py +0 -119
  267. regula/documentreader/webclient/gen/models/encrypted_rcl_result_all_of.py +0 -122
  268. regula/documentreader/webclient/gen/models/fiber_result_all_of.py +0 -343
  269. regula/documentreader/webclient/gen/models/graphics_result_all_of.py +0 -119
  270. regula/documentreader/webclient/gen/models/ident_result_all_of.py +0 -249
  271. regula/documentreader/webclient/gen/models/image_quality_result_all_of.py +0 -120
  272. regula/documentreader/webclient/gen/models/images_result_all_of.py +0 -120
  273. regula/documentreader/webclient/gen/models/in_data_rfid_session.py +0 -121
  274. regula/documentreader/webclient/gen/models/inline_response200.py +0 -197
  275. regula/documentreader/webclient/gen/models/inline_response2001.py +0 -333
  276. regula/documentreader/webclient/gen/models/lexical_analysis_result_all_of.py +0 -119
  277. regula/documentreader/webclient/gen/models/license_result_all_of.py +0 -122
  278. regula/documentreader/webclient/gen/models/ocr_security_text_result_all_of.py +0 -353
  279. regula/documentreader/webclient/gen/models/photo_ident_result_all_of.py +0 -327
  280. regula/documentreader/webclient/gen/models/security_feature_result_all_of.py +0 -249
  281. regula/documentreader/webclient/gen/models/status_result_all_of.py +0 -120
  282. regula/documentreader/webclient/gen/models/text_data_result_all_of.py +0 -119
  283. regula/documentreader/webclient/gen/models/text_result_all_of.py +0 -120
  284. regula/documentreader/webclient/gen/models/tfdsid_list.py +0 -372
  285. regula/documentreader/webclient/gen/models/transaction_images_field_value.py +0 -227
  286. regula/documentreader/webclient/gen/models/transaction_scenario_request.py +0 -119
  287. regula_documentreader_webclient-8.1.349rc0.dist-info/RECORD +0 -192
  288. {regula_documentreader_webclient-8.1.349rc0.dist-info → regula_documentreader_webclient-8.1.351.dev0.dist-info}/WHEEL +0 -0
  289. {regula_documentreader_webclient-8.1.349rc0.dist-info → regula_documentreader_webclient-8.1.351.dev0.dist-info}/top_level.txt +0 -0
@@ -4,49 +4,57 @@
4
4
  Generated by: https://openapi-generator.tech
5
5
  """
6
6
 
7
- from __future__ import absolute_import
8
-
9
7
  import io
10
8
  import json
11
- import logging
12
9
  import re
13
10
  import ssl
14
11
 
15
- # python 2 and python 3 compatibility library
16
- import six
17
- from six.moves.urllib.parse import urlencode
18
12
  import urllib3
19
13
 
20
- from regula.documentreader.webclient.gen.exceptions import ApiException, UnauthorizedException, ForbiddenException, NotFoundException, ServiceException, ApiValueError
14
+ from regula.documentreader.webclient.gen.exceptions import ApiException, ApiValueError
15
+
16
+ SUPPORTED_SOCKS_PROXIES = {"socks5", "socks5h", "socks4", "socks4a"}
17
+ RESTResponseType = urllib3.HTTPResponse
21
18
 
22
19
 
23
- logger = logging.getLogger(__name__)
20
+ def is_socks_proxy_url(url):
21
+ if url is None:
22
+ return False
23
+ split_section = url.split("://")
24
+ if len(split_section) < 2:
25
+ return False
26
+ else:
27
+ return split_section[0].lower() in SUPPORTED_SOCKS_PROXIES
24
28
 
25
29
 
26
30
  class RESTResponse(io.IOBase):
27
31
 
28
- def __init__(self, resp):
29
- self.urllib3_response = resp
32
+ def __init__(self, resp) -> None:
33
+ self.response = resp
30
34
  self.status = resp.status
31
35
  self.reason = resp.reason
32
- self.data = resp.data
36
+ self.data = None
37
+
38
+ def read(self):
39
+ if self.data is None:
40
+ self.data = self.response.data
41
+ return self.data
33
42
 
34
43
  def getheaders(self):
35
44
  """Returns a dictionary of the response headers."""
36
- return self.urllib3_response.getheaders()
45
+ return self.response.headers
37
46
 
38
47
  def getheader(self, name, default=None):
39
48
  """Returns a given response header."""
40
- return self.urllib3_response.getheader(name, default)
49
+ return self.response.headers.get(name, default)
41
50
 
42
51
 
43
- class RESTClientObject(object):
52
+ class RESTClientObject:
44
53
 
45
- def __init__(self, configuration, pools_size=4, maxsize=None):
54
+ def __init__(self, configuration) -> None:
46
55
  # urllib3.PoolManager will pass all kw parameters to connectionpool
47
56
  # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/poolmanager.py#L75 # noqa: E501
48
57
  # https://github.com/shazow/urllib3/blob/f9409436f83aeb79fbaf090181cd81b784f1b8ce/urllib3/connectionpool.py#L680 # noqa: E501
49
- # maxsize is the number of requests to host that are allowed in parallel # noqa: E501
50
58
  # Custom SSL certificates and client certificates: http://urllib3.readthedocs.io/en/latest/advanced-usage.html # noqa: E501
51
59
 
52
60
  # cert_reqs
@@ -55,70 +63,80 @@ class RESTClientObject(object):
55
63
  else:
56
64
  cert_reqs = ssl.CERT_NONE
57
65
 
58
- addition_pool_args = {}
66
+ pool_args = {
67
+ "cert_reqs": cert_reqs,
68
+ "ca_certs": configuration.ssl_ca_cert,
69
+ "cert_file": configuration.cert_file,
70
+ "key_file": configuration.key_file,
71
+ "ca_cert_data": configuration.ca_cert_data,
72
+ }
59
73
  if configuration.assert_hostname is not None:
60
- addition_pool_args['assert_hostname'] = configuration.assert_hostname # noqa: E501
74
+ pool_args['assert_hostname'] = (
75
+ configuration.assert_hostname
76
+ )
61
77
 
62
78
  if configuration.retries is not None:
63
- addition_pool_args['retries'] = configuration.retries
79
+ pool_args['retries'] = configuration.retries
80
+
81
+ if configuration.tls_server_name:
82
+ pool_args['server_hostname'] = configuration.tls_server_name
83
+
64
84
 
65
85
  if configuration.socket_options is not None:
66
- addition_pool_args['socket_options'] = configuration.socket_options
86
+ pool_args['socket_options'] = configuration.socket_options
67
87
 
68
- if maxsize is None:
69
- if configuration.connection_pool_maxsize is not None:
70
- maxsize = configuration.connection_pool_maxsize
71
- else:
72
- maxsize = 4
88
+ if configuration.connection_pool_maxsize is not None:
89
+ pool_args['maxsize'] = configuration.connection_pool_maxsize
73
90
 
74
91
  # https pool manager
92
+ self.pool_manager: urllib3.PoolManager
93
+
75
94
  if configuration.proxy:
76
- self.pool_manager = urllib3.ProxyManager(
77
- num_pools=pools_size,
78
- maxsize=maxsize,
79
- cert_reqs=cert_reqs,
80
- ca_certs=configuration.ssl_ca_cert,
81
- cert_file=configuration.cert_file,
82
- key_file=configuration.key_file,
83
- proxy_url=configuration.proxy,
84
- proxy_headers=configuration.proxy_headers,
85
- **addition_pool_args
86
- )
95
+ if is_socks_proxy_url(configuration.proxy):
96
+ from urllib3.contrib.socks import SOCKSProxyManager
97
+ pool_args["proxy_url"] = configuration.proxy
98
+ pool_args["headers"] = configuration.proxy_headers
99
+ self.pool_manager = SOCKSProxyManager(**pool_args)
100
+ else:
101
+ pool_args["proxy_url"] = configuration.proxy
102
+ pool_args["proxy_headers"] = configuration.proxy_headers
103
+ self.pool_manager = urllib3.ProxyManager(**pool_args)
87
104
  else:
88
- self.pool_manager = urllib3.PoolManager(
89
- num_pools=pools_size,
90
- maxsize=maxsize,
91
- cert_reqs=cert_reqs,
92
- ca_certs=configuration.ssl_ca_cert,
93
- cert_file=configuration.cert_file,
94
- key_file=configuration.key_file,
95
- **addition_pool_args
96
- )
97
-
98
- def request(self, method, url, query_params=None, headers=None,
99
- body=None, post_params=None, _preload_content=True,
100
- _request_timeout=None):
105
+ self.pool_manager = urllib3.PoolManager(**pool_args)
106
+
107
+ def request(
108
+ self,
109
+ method,
110
+ url,
111
+ headers=None,
112
+ body=None,
113
+ post_params=None,
114
+ _request_timeout=None
115
+ ):
101
116
  """Perform requests.
102
117
 
103
118
  :param method: http request method
104
119
  :param url: http request url
105
- :param query_params: query parameters in the url
106
120
  :param headers: http request headers
107
121
  :param body: request json body, for `application/json`
108
122
  :param post_params: request post parameters,
109
123
  `application/x-www-form-urlencoded`
110
124
  and `multipart/form-data`
111
- :param _preload_content: if False, the urllib3.HTTPResponse object will
112
- be returned without reading/decoding response
113
- data. Default is True.
114
125
  :param _request_timeout: timeout setting for this request. If one
115
126
  number provided, it will be total request
116
127
  timeout. It can also be a pair (tuple) of
117
128
  (connection, read) timeouts.
118
129
  """
119
130
  method = method.upper()
120
- assert method in ['GET', 'HEAD', 'DELETE', 'POST', 'PUT',
121
- 'PATCH', 'OPTIONS']
131
+ assert method in [
132
+ 'GET',
133
+ 'HEAD',
134
+ 'DELETE',
135
+ 'POST',
136
+ 'PUT',
137
+ 'PATCH',
138
+ 'OPTIONS'
139
+ ]
122
140
 
123
141
  if post_params and body:
124
142
  raise ApiValueError(
@@ -130,60 +148,83 @@ class RESTClientObject(object):
130
148
 
131
149
  timeout = None
132
150
  if _request_timeout:
133
- if isinstance(_request_timeout, six.integer_types + (float, )): # noqa: E501,F821
151
+ if isinstance(_request_timeout, (int, float)):
134
152
  timeout = urllib3.Timeout(total=_request_timeout)
135
- elif (isinstance(_request_timeout, tuple) and
136
- len(_request_timeout) == 2):
153
+ elif (
154
+ isinstance(_request_timeout, tuple)
155
+ and len(_request_timeout) == 2
156
+ ):
137
157
  timeout = urllib3.Timeout(
138
- connect=_request_timeout[0], read=_request_timeout[1])
139
-
140
- if 'Content-Type' not in headers:
141
- headers['Content-Type'] = 'application/json'
158
+ connect=_request_timeout[0],
159
+ read=_request_timeout[1]
160
+ )
142
161
 
143
162
  try:
144
163
  # For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
145
164
  if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
146
- if query_params:
147
- url += '?' + urlencode(query_params)
148
- if re.search('json', headers['Content-Type'], re.IGNORECASE):
165
+
166
+ # no content type provided or payload is json
167
+ content_type = headers.get('Content-Type')
168
+ if (
169
+ not content_type
170
+ or re.search('json', content_type, re.IGNORECASE)
171
+ ):
149
172
  request_body = None
150
173
  if body is not None:
151
174
  request_body = json.dumps(body)
152
175
  r = self.pool_manager.request(
153
- method, url,
176
+ method,
177
+ url,
154
178
  body=request_body,
155
- preload_content=_preload_content,
156
179
  timeout=timeout,
157
- headers=headers)
158
- elif headers['Content-Type'] == 'application/x-www-form-urlencoded': # noqa: E501
180
+ headers=headers,
181
+ preload_content=False
182
+ )
183
+ elif content_type == 'application/x-www-form-urlencoded':
159
184
  r = self.pool_manager.request(
160
- method, url,
185
+ method,
186
+ url,
161
187
  fields=post_params,
162
188
  encode_multipart=False,
163
- preload_content=_preload_content,
164
189
  timeout=timeout,
165
- headers=headers)
166
- elif headers['Content-Type'] == 'multipart/form-data':
190
+ headers=headers,
191
+ preload_content=False
192
+ )
193
+ elif content_type == 'multipart/form-data':
167
194
  # must del headers['Content-Type'], or the correct
168
195
  # Content-Type which generated by urllib3 will be
169
196
  # overwritten.
170
197
  del headers['Content-Type']
198
+ # Ensures that dict objects are serialized
199
+ post_params = [(a, json.dumps(b)) if isinstance(b, dict) else (a,b) for a, b in post_params]
171
200
  r = self.pool_manager.request(
172
- method, url,
201
+ method,
202
+ url,
173
203
  fields=post_params,
174
204
  encode_multipart=True,
175
- preload_content=_preload_content,
176
205
  timeout=timeout,
177
- headers=headers)
206
+ headers=headers,
207
+ preload_content=False
208
+ )
178
209
  # Pass a `string` parameter directly in the body to support
179
- # other content types than Json when `body` argument is
180
- # provided in serialized form
210
+ # other content types than JSON when `body` argument is
211
+ # provided in serialized form.
181
212
  elif isinstance(body, str) or isinstance(body, bytes):
182
- request_body = body
183
213
  r = self.pool_manager.request(
184
- method, url,
214
+ method,
215
+ url,
216
+ body=body,
217
+ timeout=timeout,
218
+ headers=headers,
219
+ preload_content=False
220
+ )
221
+ elif headers['Content-Type'].startswith('text/') and isinstance(body, bool):
222
+ request_body = "true" if body else "false"
223
+ r = self.pool_manager.request(
224
+ method,
225
+ url,
185
226
  body=request_body,
186
- preload_content=_preload_content,
227
+ preload_content=False,
187
228
  timeout=timeout,
188
229
  headers=headers)
189
230
  else:
@@ -194,99 +235,16 @@ class RESTClientObject(object):
194
235
  raise ApiException(status=0, reason=msg)
195
236
  # For `GET`, `HEAD`
196
237
  else:
197
- r = self.pool_manager.request(method, url,
198
- fields=query_params,
199
- preload_content=_preload_content,
200
- timeout=timeout,
201
- headers=headers)
238
+ r = self.pool_manager.request(
239
+ method,
240
+ url,
241
+ fields={},
242
+ timeout=timeout,
243
+ headers=headers,
244
+ preload_content=False
245
+ )
202
246
  except urllib3.exceptions.SSLError as e:
203
- msg = "{0}\n{1}".format(type(e).__name__, str(e))
247
+ msg = "\n".join([type(e).__name__, str(e)])
204
248
  raise ApiException(status=0, reason=msg)
205
249
 
206
- if _preload_content:
207
- r = RESTResponse(r)
208
-
209
- # log response body
210
- logger.debug("response body: %s", r.data)
211
-
212
- if not 200 <= r.status <= 299:
213
- if r.status == 401:
214
- raise UnauthorizedException(http_resp=r)
215
-
216
- if r.status == 403:
217
- raise ForbiddenException(http_resp=r)
218
-
219
- if r.status == 404:
220
- raise NotFoundException(http_resp=r)
221
-
222
- if 500 <= r.status <= 599:
223
- raise ServiceException(http_resp=r)
224
-
225
- raise ApiException(http_resp=r)
226
-
227
- return r
228
-
229
- def GET(self, url, headers=None, query_params=None, _preload_content=True,
230
- _request_timeout=None):
231
- return self.request("GET", url,
232
- headers=headers,
233
- _preload_content=_preload_content,
234
- _request_timeout=_request_timeout,
235
- query_params=query_params)
236
-
237
- def HEAD(self, url, headers=None, query_params=None, _preload_content=True,
238
- _request_timeout=None):
239
- return self.request("HEAD", url,
240
- headers=headers,
241
- _preload_content=_preload_content,
242
- _request_timeout=_request_timeout,
243
- query_params=query_params)
244
-
245
- def OPTIONS(self, url, headers=None, query_params=None, post_params=None,
246
- body=None, _preload_content=True, _request_timeout=None):
247
- return self.request("OPTIONS", url,
248
- headers=headers,
249
- query_params=query_params,
250
- post_params=post_params,
251
- _preload_content=_preload_content,
252
- _request_timeout=_request_timeout,
253
- body=body)
254
-
255
- def DELETE(self, url, headers=None, query_params=None, body=None,
256
- _preload_content=True, _request_timeout=None):
257
- return self.request("DELETE", url,
258
- headers=headers,
259
- query_params=query_params,
260
- _preload_content=_preload_content,
261
- _request_timeout=_request_timeout,
262
- body=body)
263
-
264
- def POST(self, url, headers=None, query_params=None, post_params=None,
265
- body=None, _preload_content=True, _request_timeout=None):
266
- return self.request("POST", url,
267
- headers=headers,
268
- query_params=query_params,
269
- post_params=post_params,
270
- _preload_content=_preload_content,
271
- _request_timeout=_request_timeout,
272
- body=body)
273
-
274
- def PUT(self, url, headers=None, query_params=None, post_params=None,
275
- body=None, _preload_content=True, _request_timeout=None):
276
- return self.request("PUT", url,
277
- headers=headers,
278
- query_params=query_params,
279
- post_params=post_params,
280
- _preload_content=_preload_content,
281
- _request_timeout=_request_timeout,
282
- body=body)
283
-
284
- def PATCH(self, url, headers=None, query_params=None, post_params=None,
285
- body=None, _preload_content=True, _request_timeout=None):
286
- return self.request("PATCH", url,
287
- headers=headers,
288
- query_params=query_params,
289
- post_params=post_params,
290
- _preload_content=_preload_content,
291
- _request_timeout=_request_timeout,
292
- body=body)
250
+ return RESTResponse(r)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: regula_documentreader_webclient
3
- Version: 8.1.349rc0
3
+ Version: 8.1.351.dev0
4
4
  Summary: Regula's Document Reader python client
5
5
  Home-page: https://regulaforensics.com
6
6
  Author: Regula Forensics, Inc.
@@ -10,11 +10,13 @@ Requires-Python: >=3.8
10
10
  Description-Content-Type: text/markdown
11
11
  Requires-Dist: certifi>=2024.07.04
12
12
  Requires-Dist: six>=1.10
13
- Requires-Dist: python-dateutil>=2.5.3
14
- Requires-Dist: urllib3>=1.26.19
13
+ Requires-Dist: python-dateutil>=2.8.2
14
+ Requires-Dist: urllib3<3.0.0,>=1.25.3
15
15
  Requires-Dist: vistir<=0.6.1,>=0.4.0
16
16
  Requires-Dist: idna==3.7
17
17
  Requires-Dist: requests>=2.32.3
18
+ Requires-Dist: pydantic>=2
19
+ Requires-Dist: typing-extensions>=4.7.1
18
20
 
19
21
  # Regula Document Reader web API Python 3.8+ client
20
22
 
@@ -57,7 +59,7 @@ with open("australia_passport.jpg", "rb") as f:
57
59
 
58
60
  with DocumentReaderApi(host='http://localhost:8080') as api:
59
61
  params = ProcessParams(
60
- scenario=Scenario.FULL_PROCESS,
62
+ scenario=Scenario.FULLPROCESS,
61
63
  result_type_output=[Result.DOCUMENT_IMAGE, Result.STATUS, Result.TEXT, Result.IMAGES]
62
64
  )
63
65
  request = RecognitionRequest(process_params=params, images=[input_image])