mindee-lite 5.0.0.beta1
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.
- checksums.yaml +7 -0
- data/.editorconfig +24 -0
- data/.gitattributes +14 -0
- data/.gitignore +76 -0
- data/.gitmodules +3 -0
- data/.pre-commit-config.yaml +36 -0
- data/.rubocop.yml +49 -0
- data/.yardopts +4 -0
- data/CHANGELOG.md +515 -0
- data/CODE_OF_CONDUCT.md +129 -0
- data/CONTRIBUTING.md +107 -0
- data/Gemfile +14 -0
- data/LICENSE +21 -0
- data/README.md +42 -0
- data/Rakefile +40 -0
- data/Steepfile +30 -0
- data/bin/console +14 -0
- data/bin/mindee.rb +30 -0
- data/bin/v1/parser.rb +153 -0
- data/bin/v1/products.rb +88 -0
- data/bin/v2/parser.rb +235 -0
- data/bin/v2/products.rb +34 -0
- data/docs/code_samples/bank_account_details_v1.txt +24 -0
- data/docs/code_samples/bank_account_details_v2.txt +24 -0
- data/docs/code_samples/bank_statement_fr_v2_async.txt +24 -0
- data/docs/code_samples/barcode_reader_v1.txt +24 -0
- data/docs/code_samples/cropper_v1.txt +21 -0
- data/docs/code_samples/default.txt +30 -0
- data/docs/code_samples/default_async.txt +29 -0
- data/docs/code_samples/expense_receipts_v5.txt +25 -0
- data/docs/code_samples/expense_receipts_v5_async.txt +24 -0
- data/docs/code_samples/financial_document_v1.txt +25 -0
- data/docs/code_samples/financial_document_v1_async.txt +24 -0
- data/docs/code_samples/idcard_fr_v1.txt +24 -0
- data/docs/code_samples/idcard_fr_v2.txt +24 -0
- data/docs/code_samples/international_id_v2_async.txt +24 -0
- data/docs/code_samples/invoice_splitter_v1_async.txt +24 -0
- data/docs/code_samples/invoices_v4.txt +25 -0
- data/docs/code_samples/invoices_v4_async.txt +24 -0
- data/docs/code_samples/multi_receipts_detector_v1.txt +24 -0
- data/docs/code_samples/passport_v1.txt +24 -0
- data/docs/code_samples/resume_v1_async.txt +24 -0
- data/docs/code_samples/v2_classification.txt +30 -0
- data/docs/code_samples/v2_crop.txt +30 -0
- data/docs/code_samples/v2_extraction.txt +42 -0
- data/docs/code_samples/v2_extraction_webhook.txt +45 -0
- data/docs/code_samples/v2_ocr.txt +30 -0
- data/docs/code_samples/v2_split.txt +30 -0
- data/docs/code_samples/workflow_execution.txt +28 -0
- data/docs/code_samples/workflow_polling.txt +35 -0
- data/examples/auto_invoice_splitter_extraction.rb +48 -0
- data/examples/auto_multi_receipts_detector_extraction.rb +30 -0
- data/lib/mindee/dependency.rb +29 -0
- data/lib/mindee/error/mindee_error.rb +17 -0
- data/lib/mindee/error/mindee_http_error.rb +36 -0
- data/lib/mindee/error/mindee_http_error_v2.rb +45 -0
- data/lib/mindee/error/mindee_http_unknown_error_v2.rb +18 -0
- data/lib/mindee/error/mindee_input_error.rb +30 -0
- data/lib/mindee/error.rb +6 -0
- data/lib/mindee/geometry/min_max.rb +23 -0
- data/lib/mindee/geometry/point.rb +41 -0
- data/lib/mindee/geometry/polygon.rb +37 -0
- data/lib/mindee/geometry/quadrilateral.rb +50 -0
- data/lib/mindee/geometry/utils.rb +88 -0
- data/lib/mindee/geometry.rb +7 -0
- data/lib/mindee/http/.rubocop.yml +7 -0
- data/lib/mindee/http/http_error_handler.rb +106 -0
- data/lib/mindee/http/response_validation.rb +81 -0
- data/lib/mindee/http.rb +3 -0
- data/lib/mindee/image/extracted_image.rb +89 -0
- data/lib/mindee/image/image_compressor.rb +29 -0
- data/lib/mindee/image/image_extractor.rb +118 -0
- data/lib/mindee/image/image_utils.rb +165 -0
- data/lib/mindee/image.rb +6 -0
- data/lib/mindee/input/base_parameters.rb +149 -0
- data/lib/mindee/input/local_response.rb +80 -0
- data/lib/mindee/input/polling_options.rb +26 -0
- data/lib/mindee/input/sources/base64_input_source.rb +31 -0
- data/lib/mindee/input/sources/bytes_input_source.rb +21 -0
- data/lib/mindee/input/sources/file_input_source.rb +20 -0
- data/lib/mindee/input/sources/local_input_source.rb +216 -0
- data/lib/mindee/input/sources/path_input_source.rb +20 -0
- data/lib/mindee/input/sources/url_input_source.rb +130 -0
- data/lib/mindee/input/sources.rb +8 -0
- data/lib/mindee/input.rb +4 -0
- data/lib/mindee/logging/logger.rb +24 -0
- data/lib/mindee/logging.rb +3 -0
- data/lib/mindee/page_options.rb +24 -0
- data/lib/mindee/pdf/extracted_pdf.rb +70 -0
- data/lib/mindee/pdf/pdf_compressor.rb +121 -0
- data/lib/mindee/pdf/pdf_extractor.rb +121 -0
- data/lib/mindee/pdf/pdf_processor.rb +91 -0
- data/lib/mindee/pdf/pdf_tools.rb +201 -0
- data/lib/mindee/pdf.rb +7 -0
- data/lib/mindee/v1/client.rb +490 -0
- data/lib/mindee/v1/extraction/multi_receipts_extractor.rb +32 -0
- data/lib/mindee/v1/extraction.rb +3 -0
- data/lib/mindee/v1/http/.rubocop.yml +7 -0
- data/lib/mindee/v1/http/endpoint.rb +221 -0
- data/lib/mindee/v1/http/workflow_endpoint.rb +93 -0
- data/lib/mindee/v1/http.rb +4 -0
- data/lib/mindee/v1/parsing/common/api_request.rb +38 -0
- data/lib/mindee/v1/parsing/common/api_response.rb +63 -0
- data/lib/mindee/v1/parsing/common/document.rb +86 -0
- data/lib/mindee/v1/parsing/common/execution.rb +78 -0
- data/lib/mindee/v1/parsing/common/execution_file.rb +26 -0
- data/lib/mindee/v1/parsing/common/execution_priority.rb +38 -0
- data/lib/mindee/v1/parsing/common/extras/cropper_extra.rb +32 -0
- data/lib/mindee/v1/parsing/common/extras/extras.rb +62 -0
- data/lib/mindee/v1/parsing/common/extras/full_text_ocr_extra.rb +35 -0
- data/lib/mindee/v1/parsing/common/extras/rag_extra.rb +28 -0
- data/lib/mindee/v1/parsing/common/extras.rb +6 -0
- data/lib/mindee/v1/parsing/common/inference.rb +69 -0
- data/lib/mindee/v1/parsing/common/job.rb +48 -0
- data/lib/mindee/v1/parsing/common/ocr/mvision_v1.rb +52 -0
- data/lib/mindee/v1/parsing/common/ocr/ocr.rb +180 -0
- data/lib/mindee/v1/parsing/common/ocr.rb +3 -0
- data/lib/mindee/v1/parsing/common/orientation.rb +28 -0
- data/lib/mindee/v1/parsing/common/page.rb +49 -0
- data/lib/mindee/v1/parsing/common/prediction.rb +19 -0
- data/lib/mindee/v1/parsing/common/product.rb +26 -0
- data/lib/mindee/v1/parsing/common/workflow_response.rb +30 -0
- data/lib/mindee/v1/parsing/common.rb +15 -0
- data/lib/mindee/v1/parsing/standard/abstract_field.rb +74 -0
- data/lib/mindee/v1/parsing/standard/address_field.rb +51 -0
- data/lib/mindee/v1/parsing/standard/amount_field.rb +28 -0
- data/lib/mindee/v1/parsing/standard/base_field.rb +30 -0
- data/lib/mindee/v1/parsing/standard/boolean_field.rb +29 -0
- data/lib/mindee/v1/parsing/standard/classification_field.rb +18 -0
- data/lib/mindee/v1/parsing/standard/company_registration_field.rb +45 -0
- data/lib/mindee/v1/parsing/standard/date_field.rb +40 -0
- data/lib/mindee/v1/parsing/standard/feature_field.rb +26 -0
- data/lib/mindee/v1/parsing/standard/locale_field.rb +52 -0
- data/lib/mindee/v1/parsing/standard/payment_details_field.rb +44 -0
- data/lib/mindee/v1/parsing/standard/position_field.rb +61 -0
- data/lib/mindee/v1/parsing/standard/string_field.rb +26 -0
- data/lib/mindee/v1/parsing/standard/tax_field.rb +110 -0
- data/lib/mindee/v1/parsing/standard.rb +15 -0
- data/lib/mindee/v1/parsing/universal/universal_list_field.rb +60 -0
- data/lib/mindee/v1/parsing/universal/universal_object_field.rb +123 -0
- data/lib/mindee/v1/parsing/universal.rb +4 -0
- data/lib/mindee/v1/parsing.rb +5 -0
- data/lib/mindee/v1/product/.rubocop.yml +12 -0
- data/lib/mindee/v1/product/barcode_reader/barcode_reader_v1.rb +47 -0
- data/lib/mindee/v1/product/barcode_reader/barcode_reader_v1_document.rb +47 -0
- data/lib/mindee/v1/product/barcode_reader/barcode_reader_v1_page.rb +38 -0
- data/lib/mindee/v1/product/cropper/cropper_v1.rb +47 -0
- data/lib/mindee/v1/product/cropper/cropper_v1_document.rb +15 -0
- data/lib/mindee/v1/product/cropper/cropper_v1_page.rb +55 -0
- data/lib/mindee/v1/product/financial_document/financial_document_v1.rb +47 -0
- data/lib/mindee/v1/product/financial_document/financial_document_v1_document.rb +329 -0
- data/lib/mindee/v1/product/financial_document/financial_document_v1_line_item.rb +124 -0
- data/lib/mindee/v1/product/financial_document/financial_document_v1_line_items.rb +64 -0
- data/lib/mindee/v1/product/financial_document/financial_document_v1_page.rb +38 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v1.rb +49 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v1_document.rb +49 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v1_page.rb +40 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v2.rb +49 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_bban.rb +63 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_document.rb +60 -0
- data/lib/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_page.rb +40 -0
- data/lib/mindee/v1/product/fr/bank_statement/bank_statement_v2.rb +49 -0
- data/lib/mindee/v1/product/fr/bank_statement/bank_statement_v2_document.rb +169 -0
- data/lib/mindee/v1/product/fr/bank_statement/bank_statement_v2_page.rb +40 -0
- data/lib/mindee/v1/product/fr/bank_statement/bank_statement_v2_transaction.rb +78 -0
- data/lib/mindee/v1/product/fr/bank_statement/bank_statement_v2_transactions.rb +56 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v1.rb +49 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v1_document.rb +106 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v1_page.rb +57 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v2.rb +49 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v2_document.rb +143 -0
- data/lib/mindee/v1/product/fr/id_card/id_card_v2_page.rb +65 -0
- data/lib/mindee/v1/product/international_id/international_id_v2.rb +47 -0
- data/lib/mindee/v1/product/international_id/international_id_v2_document.rb +164 -0
- data/lib/mindee/v1/product/international_id/international_id_v2_page.rb +38 -0
- data/lib/mindee/v1/product/invoice/invoice_v4.rb +47 -0
- data/lib/mindee/v1/product/invoice/invoice_v4_document.rb +300 -0
- data/lib/mindee/v1/product/invoice/invoice_v4_line_item.rb +124 -0
- data/lib/mindee/v1/product/invoice/invoice_v4_line_items.rb +64 -0
- data/lib/mindee/v1/product/invoice/invoice_v4_page.rb +38 -0
- data/lib/mindee/v1/product/invoice_splitter/invoice_splitter_v1.rb +47 -0
- data/lib/mindee/v1/product/invoice_splitter/invoice_splitter_v1_document.rb +66 -0
- data/lib/mindee/v1/product/invoice_splitter/invoice_splitter_v1_invoice_page_group.rb +58 -0
- data/lib/mindee/v1/product/invoice_splitter/invoice_splitter_v1_invoice_page_groups.rb +50 -0
- data/lib/mindee/v1/product/invoice_splitter/invoice_splitter_v1_page.rb +38 -0
- data/lib/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1.rb +47 -0
- data/lib/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1_document.rb +38 -0
- data/lib/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1_page.rb +38 -0
- data/lib/mindee/v1/product/passport/passport_v1.rb +47 -0
- data/lib/mindee/v1/product/passport/passport_v1_document.rb +112 -0
- data/lib/mindee/v1/product/passport/passport_v1_page.rb +38 -0
- data/lib/mindee/v1/product/receipt/receipt_v5.rb +47 -0
- data/lib/mindee/v1/product/receipt/receipt_v5_document.rb +187 -0
- data/lib/mindee/v1/product/receipt/receipt_v5_line_item.rb +88 -0
- data/lib/mindee/v1/product/receipt/receipt_v5_line_items.rb +56 -0
- data/lib/mindee/v1/product/receipt/receipt_v5_page.rb +38 -0
- data/lib/mindee/v1/product/resume/resume_v1.rb +47 -0
- data/lib/mindee/v1/product/resume/resume_v1_certificate.rb +82 -0
- data/lib/mindee/v1/product/resume/resume_v1_certificates.rb +60 -0
- data/lib/mindee/v1/product/resume/resume_v1_document.rb +340 -0
- data/lib/mindee/v1/product/resume/resume_v1_education.rb +106 -0
- data/lib/mindee/v1/product/resume/resume_v1_educations.rb +66 -0
- data/lib/mindee/v1/product/resume/resume_v1_language.rb +66 -0
- data/lib/mindee/v1/product/resume/resume_v1_languages.rb +56 -0
- data/lib/mindee/v1/product/resume/resume_v1_page.rb +38 -0
- data/lib/mindee/v1/product/resume/resume_v1_professional_experience.rb +122 -0
- data/lib/mindee/v1/product/resume/resume_v1_professional_experiences.rb +70 -0
- data/lib/mindee/v1/product/resume/resume_v1_social_networks_url.rb +66 -0
- data/lib/mindee/v1/product/resume/resume_v1_social_networks_urls.rb +56 -0
- data/lib/mindee/v1/product/universal/universal.rb +48 -0
- data/lib/mindee/v1/product/universal/universal_document.rb +35 -0
- data/lib/mindee/v1/product/universal/universal_page.rb +54 -0
- data/lib/mindee/v1/product/universal/universal_prediction.rb +128 -0
- data/lib/mindee/v1/product.rb +18 -0
- data/lib/mindee/v1.rb +7 -0
- data/lib/mindee/v2/client.rb +132 -0
- data/lib/mindee/v2/file_operation/crop.rb +51 -0
- data/lib/mindee/v2/file_operation/crop_files.rb +25 -0
- data/lib/mindee/v2/file_operation/split.rb +37 -0
- data/lib/mindee/v2/file_operation/split_files.rb +25 -0
- data/lib/mindee/v2/file_operation.rb +6 -0
- data/lib/mindee/v2/http/.rubocop.yml +7 -0
- data/lib/mindee/v2/http/api_v2_settings.rb +65 -0
- data/lib/mindee/v2/http/mindee_api_v2.rb +230 -0
- data/lib/mindee/v2/http.rb +4 -0
- data/lib/mindee/v2/parsing/base_inference.rb +44 -0
- data/lib/mindee/v2/parsing/base_response.rb +15 -0
- data/lib/mindee/v2/parsing/common_response.rb +20 -0
- data/lib/mindee/v2/parsing/error_item.rb +21 -0
- data/lib/mindee/v2/parsing/error_response.rb +51 -0
- data/lib/mindee/v2/parsing/field/base_field.rb +63 -0
- data/lib/mindee/v2/parsing/field/field_confidence.rb +128 -0
- data/lib/mindee/v2/parsing/field/field_location.rb +33 -0
- data/lib/mindee/v2/parsing/field/inference_fields.rb +105 -0
- data/lib/mindee/v2/parsing/field/list_field.rb +79 -0
- data/lib/mindee/v2/parsing/field/object_field.rb +138 -0
- data/lib/mindee/v2/parsing/field/simple_field.rb +60 -0
- data/lib/mindee/v2/parsing/field.rb +9 -0
- data/lib/mindee/v2/parsing/inference_active_options.rb +67 -0
- data/lib/mindee/v2/parsing/inference_file.rb +38 -0
- data/lib/mindee/v2/parsing/inference_job.rb +25 -0
- data/lib/mindee/v2/parsing/inference_model.rb +30 -0
- data/lib/mindee/v2/parsing/job.rb +93 -0
- data/lib/mindee/v2/parsing/job_response.rb +30 -0
- data/lib/mindee/v2/parsing/job_webhook.rb +59 -0
- data/lib/mindee/v2/parsing/rag_metadata.rb +17 -0
- data/lib/mindee/v2/parsing/raw_text.rb +27 -0
- data/lib/mindee/v2/parsing/raw_text_page.rb +24 -0
- data/lib/mindee/v2/parsing/search/pagination_metadata.rb +44 -0
- data/lib/mindee/v2/parsing/search/search_model.rb +38 -0
- data/lib/mindee/v2/parsing/search/search_models.rb +34 -0
- data/lib/mindee/v2/parsing/search/search_response.rb +38 -0
- data/lib/mindee/v2/parsing/search.rb +6 -0
- data/lib/mindee/v2/parsing.rb +16 -0
- data/lib/mindee/v2/product/base_product.rb +28 -0
- data/lib/mindee/v2/product/classification/classification.rb +20 -0
- data/lib/mindee/v2/product/classification/classification_classifier.rb +25 -0
- data/lib/mindee/v2/product/classification/classification_inference.rb +35 -0
- data/lib/mindee/v2/product/classification/classification_response.rb +32 -0
- data/lib/mindee/v2/product/classification/classification_result.rb +27 -0
- data/lib/mindee/v2/product/classification/params/classification_parameters.rb +47 -0
- data/lib/mindee/v2/product/crop/crop.rb +20 -0
- data/lib/mindee/v2/product/crop/crop_inference.rb +34 -0
- data/lib/mindee/v2/product/crop/crop_item.rb +39 -0
- data/lib/mindee/v2/product/crop/crop_response.rb +40 -0
- data/lib/mindee/v2/product/crop/crop_result.rb +34 -0
- data/lib/mindee/v2/product/crop/params/crop_parameters.rb +47 -0
- data/lib/mindee/v2/product/extraction/extraction.rb +21 -0
- data/lib/mindee/v2/product/extraction/extraction_inference.rb +40 -0
- data/lib/mindee/v2/product/extraction/extraction_response.rb +32 -0
- data/lib/mindee/v2/product/extraction/extraction_result.rb +44 -0
- data/lib/mindee/v2/product/extraction/params/data_schema.rb +51 -0
- data/lib/mindee/v2/product/extraction/params/data_schema_field.rb +69 -0
- data/lib/mindee/v2/product/extraction/params/data_schema_replace.rb +39 -0
- data/lib/mindee/v2/product/extraction/params/extraction_parameters.rb +125 -0
- data/lib/mindee/v2/product/ocr/ocr.rb +20 -0
- data/lib/mindee/v2/product/ocr/ocr_inference.rb +34 -0
- data/lib/mindee/v2/product/ocr/ocr_page.rb +33 -0
- data/lib/mindee/v2/product/ocr/ocr_response.rb +32 -0
- data/lib/mindee/v2/product/ocr/ocr_result.rb +34 -0
- data/lib/mindee/v2/product/ocr/ocr_word.rb +29 -0
- data/lib/mindee/v2/product/ocr/params/ocr_parameters.rb +47 -0
- data/lib/mindee/v2/product/split/params/split_parameters.rb +48 -0
- data/lib/mindee/v2/product/split/split.rb +19 -0
- data/lib/mindee/v2/product/split/split_inference.rb +34 -0
- data/lib/mindee/v2/product/split/split_range.rb +38 -0
- data/lib/mindee/v2/product/split/split_response.rb +40 -0
- data/lib/mindee/v2/product/split/split_result.rb +34 -0
- data/lib/mindee/v2/product.rb +7 -0
- data/lib/mindee/v2.rb +7 -0
- data/lib/mindee/version.rb +26 -0
- data/lib/mindee.rb +135 -0
- data/mindee-lite.gemspec +36 -0
- data/mindee.gemspec +44 -0
- data/sig/custom/marcel.rbs +3 -0
- data/sig/custom/mini_magick.rbs +31 -0
- data/sig/custom/net_http.rbs +43 -0
- data/sig/custom/origami.rbs +59 -0
- data/sig/mindee/dependency.rbs +13 -0
- data/sig/mindee/error/mindee_error.rbs +13 -0
- data/sig/mindee/error/mindee_http_error.rbs +17 -0
- data/sig/mindee/error/mindee_http_error_v2.rbs +15 -0
- data/sig/mindee/error/mindee_http_unknown_error_v2.rbs +9 -0
- data/sig/mindee/error/mindee_input_error.rbs +18 -0
- data/sig/mindee/geometry/min_max.rbs +11 -0
- data/sig/mindee/geometry/point.rbs +14 -0
- data/sig/mindee/geometry/polygon.rbs +12 -0
- data/sig/mindee/geometry/quadrilateral.rbs +15 -0
- data/sig/mindee/geometry/utils.rbs +13 -0
- data/sig/mindee/http/http_error_handler.rbs +15 -0
- data/sig/mindee/http/response_validation.rbs +11 -0
- data/sig/mindee/image/extracted_image.rbs +21 -0
- data/sig/mindee/image/image_compressor.rbs +8 -0
- data/sig/mindee/image/image_extractor.rbs +13 -0
- data/sig/mindee/image/image_utils.rbs +19 -0
- data/sig/mindee/input/base_parameters.rbs +35 -0
- data/sig/mindee/input/local_response.rbs +14 -0
- data/sig/mindee/input/polling_options.rbs +12 -0
- data/sig/mindee/input/sources/base64_input_source.rbs +11 -0
- data/sig/mindee/input/sources/bytes_input_source.rbs +10 -0
- data/sig/mindee/input/sources/file_input_source.rbs +10 -0
- data/sig/mindee/input/sources/local_input_source.rbs +30 -0
- data/sig/mindee/input/sources/path_input_source.rbs +10 -0
- data/sig/mindee/input/sources/url_input_source.rbs +20 -0
- data/sig/mindee/logging/logger.rbs +11 -0
- data/sig/mindee/page_options.rbs +11 -0
- data/sig/mindee/pdf/extracted_pdf.rbs +17 -0
- data/sig/mindee/pdf/pdf_compressor.rbs +15 -0
- data/sig/mindee/pdf/pdf_extractor.rbs +19 -0
- data/sig/mindee/pdf/pdf_processor.rbs +12 -0
- data/sig/mindee/pdf/pdf_tools.rbs +31 -0
- data/sig/mindee/v1/client.rbs +84 -0
- data/sig/mindee/v1/extraction/multi_receipts_extractor.rbs +8 -0
- data/sig/mindee/v1/http/endpoint.rbs +41 -0
- data/sig/mindee/v1/http/workflow_endpoint.rbs +22 -0
- data/sig/mindee/v1/parsing/common/api_request.rbs +22 -0
- data/sig/mindee/v1/parsing/common/api_response.rbs +31 -0
- data/sig/mindee/v1/parsing/common/document.rbs +32 -0
- data/sig/mindee/v1/parsing/common/execution.rbs +26 -0
- data/sig/mindee/v1/parsing/common/execution_file.rbs +16 -0
- data/sig/mindee/v1/parsing/common/execution_priority.rbs +16 -0
- data/sig/mindee/v1/parsing/common/extras/cropper_extra.rbs +18 -0
- data/sig/mindee/v1/parsing/common/extras/extras.rbs +24 -0
- data/sig/mindee/v1/parsing/common/extras/full_text_ocr_extra.rbs +22 -0
- data/sig/mindee/v1/parsing/common/extras/rag_extra.rbs +19 -0
- data/sig/mindee/v1/parsing/common/inference.rbs +31 -0
- data/sig/mindee/v1/parsing/common/job.rbs +24 -0
- data/sig/mindee/v1/parsing/common/ocr/mvision_v1.rbs +20 -0
- data/sig/mindee/v1/parsing/common/ocr/ocr.rbs +56 -0
- data/sig/mindee/v1/parsing/common/orientation.rbs +15 -0
- data/sig/mindee/v1/parsing/common/page.rbs +19 -0
- data/sig/mindee/v1/parsing/common/prediction.rbs +14 -0
- data/sig/mindee/v1/parsing/common/product.rbs +16 -0
- data/sig/mindee/v1/parsing/common/workflow_response.rbs +22 -0
- data/sig/mindee/v1/parsing/standard/abstract_field.rbs +30 -0
- data/sig/mindee/v1/parsing/standard/address_field.rbs +28 -0
- data/sig/mindee/v1/parsing/standard/amount_field.rbs +16 -0
- data/sig/mindee/v1/parsing/standard/base_field.rbs +16 -0
- data/sig/mindee/v1/parsing/standard/boolean_field.rbs +16 -0
- data/sig/mindee/v1/parsing/standard/classification_field.rbs +12 -0
- data/sig/mindee/v1/parsing/standard/company_registration_field.rbs +20 -0
- data/sig/mindee/v1/parsing/standard/date_field.rbs +20 -0
- data/sig/mindee/v1/parsing/standard/feature_field.rbs +12 -0
- data/sig/mindee/v1/parsing/standard/locale_field.rbs +24 -0
- data/sig/mindee/v1/parsing/standard/payment_details_field.rbs +19 -0
- data/sig/mindee/v1/parsing/standard/position_field.rbs +26 -0
- data/sig/mindee/v1/parsing/standard/string_field.rbs +16 -0
- data/sig/mindee/v1/parsing/standard/tax_field.rbs +33 -0
- data/sig/mindee/v1/parsing/universal/universal_list_field.rbs +21 -0
- data/sig/mindee/v1/parsing/universal/universal_object_field.rbs +38 -0
- data/sig/mindee/v1/product/barcode_reader/barcode_reader_v1.rbs +13 -0
- data/sig/mindee/v1/product/barcode_reader/barcode_reader_v1_document.rbs +16 -0
- data/sig/mindee/v1/product/barcode_reader/barcode_reader_v1_page.rbs +17 -0
- data/sig/mindee/v1/product/cropper/cropper_v1.rbs +13 -0
- data/sig/mindee/v1/product/cropper/cropper_v1_document.rbs +14 -0
- data/sig/mindee/v1/product/cropper/cropper_v1_page.rbs +19 -0
- data/sig/mindee/v1/product/financial_document/financial_document_v1.rbs +13 -0
- data/sig/mindee/v1/product/financial_document/financial_document_v1_document.rbs +49 -0
- data/sig/mindee/v1/product/financial_document/financial_document_v1_line_item.rbs +35 -0
- data/sig/mindee/v1/product/financial_document/financial_document_v1_line_items.rbs +15 -0
- data/sig/mindee/v1/product/financial_document/financial_document_v1_page.rbs +17 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v1.rbs +15 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v1_document.rbs +19 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v1_page.rbs +19 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v2.rbs +15 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_bban.rbs +25 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_document.rbs +20 -0
- data/sig/mindee/v1/product/fr/bank_account_details/bank_account_details_v2_page.rbs +19 -0
- data/sig/mindee/v1/product/fr/bank_statement/bank_statement_v2.rbs +15 -0
- data/sig/mindee/v1/product/fr/bank_statement/bank_statement_v2_document.rbs +31 -0
- data/sig/mindee/v1/product/fr/bank_statement/bank_statement_v2_page.rbs +19 -0
- data/sig/mindee/v1/product/fr/bank_statement/bank_statement_v2_transaction.rbs +27 -0
- data/sig/mindee/v1/product/fr/bank_statement/bank_statement_v2_transactions.rbs +17 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v1.rbs +15 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v1_document.rbs +26 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v1_page.rbs +20 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v2.rbs +15 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v2_document.rbs +31 -0
- data/sig/mindee/v1/product/fr/id_card/id_card_v2_page.rbs +21 -0
- data/sig/mindee/v1/product/international_id/international_id_v2.rbs +13 -0
- data/sig/mindee/v1/product/international_id/international_id_v2_document.rbs +31 -0
- data/sig/mindee/v1/product/international_id/international_id_v2_page.rbs +17 -0
- data/sig/mindee/v1/product/invoice/invoice_v4.rbs +13 -0
- data/sig/mindee/v1/product/invoice/invoice_v4_document.rbs +45 -0
- data/sig/mindee/v1/product/invoice/invoice_v4_line_item.rbs +35 -0
- data/sig/mindee/v1/product/invoice/invoice_v4_line_items.rbs +15 -0
- data/sig/mindee/v1/product/invoice/invoice_v4_page.rbs +17 -0
- data/sig/mindee/v1/product/invoice_splitter/invoice_splitter_v1.rbs +13 -0
- data/sig/mindee/v1/product/invoice_splitter/invoice_splitter_v1_document.rbs +17 -0
- data/sig/mindee/v1/product/invoice_splitter/invoice_splitter_v1_invoice_page_group.rbs +21 -0
- data/sig/mindee/v1/product/invoice_splitter/invoice_splitter_v1_invoice_page_groups.rbs +15 -0
- data/sig/mindee/v1/product/invoice_splitter/invoice_splitter_v1_page.rbs +17 -0
- data/sig/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1.rbs +14 -0
- data/sig/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1_document.rbs +15 -0
- data/sig/mindee/v1/product/multi_receipts_detector/multi_receipts_detector_v1_page.rbs +17 -0
- data/sig/mindee/v1/product/passport/passport_v1.rbs +13 -0
- data/sig/mindee/v1/product/passport/passport_v1_document.rbs +25 -0
- data/sig/mindee/v1/product/passport/passport_v1_page.rbs +17 -0
- data/sig/mindee/v1/product/receipt/receipt_v5.rbs +13 -0
- data/sig/mindee/v1/product/receipt/receipt_v5_document.rbs +33 -0
- data/sig/mindee/v1/product/receipt/receipt_v5_line_item.rbs +27 -0
- data/sig/mindee/v1/product/receipt/receipt_v5_line_items.rbs +15 -0
- data/sig/mindee/v1/product/receipt/receipt_v5_page.rbs +17 -0
- data/sig/mindee/v1/product/resume/resume_v1.rbs +13 -0
- data/sig/mindee/v1/product/resume/resume_v1_certificate.rbs +27 -0
- data/sig/mindee/v1/product/resume/resume_v1_certificates.rbs +17 -0
- data/sig/mindee/v1/product/resume/resume_v1_document.rbs +69 -0
- data/sig/mindee/v1/product/resume/resume_v1_education.rbs +33 -0
- data/sig/mindee/v1/product/resume/resume_v1_educations.rbs +17 -0
- data/sig/mindee/v1/product/resume/resume_v1_language.rbs +23 -0
- data/sig/mindee/v1/product/resume/resume_v1_languages.rbs +17 -0
- data/sig/mindee/v1/product/resume/resume_v1_page.rbs +19 -0
- data/sig/mindee/v1/product/resume/resume_v1_professional_experience.rbs +37 -0
- data/sig/mindee/v1/product/resume/resume_v1_professional_experiences.rbs +17 -0
- data/sig/mindee/v1/product/resume/resume_v1_social_networks_url.rbs +23 -0
- data/sig/mindee/v1/product/resume/resume_v1_social_networks_urls.rbs +17 -0
- data/sig/mindee/v1/product/universal/universal.rbs +16 -0
- data/sig/mindee/v1/product/universal/universal_document.rbs +12 -0
- data/sig/mindee/v1/product/universal/universal_page.rbs +18 -0
- data/sig/mindee/v1/product/universal/universal_prediction.rbs +30 -0
- data/sig/mindee/v2/client.rbs +29 -0
- data/sig/mindee/v2/file_operation/crop.rbs +10 -0
- data/sig/mindee/v2/file_operation/crop_files.rbs +9 -0
- data/sig/mindee/v2/file_operation/split.rbs +11 -0
- data/sig/mindee/v2/file_operation/split_files.rbs +9 -0
- data/sig/mindee/v2/http/api_v2_settings.rbs +27 -0
- data/sig/mindee/v2/http/mindee_api_v2.rbs +52 -0
- data/sig/mindee/v2/parsing/base_inference.rbs +18 -0
- data/sig/mindee/v2/parsing/base_response.rbs +11 -0
- data/sig/mindee/v2/parsing/common_response.rbs +12 -0
- data/sig/mindee/v2/parsing/error_item.rbs +13 -0
- data/sig/mindee/v2/parsing/error_response.rbs +20 -0
- data/sig/mindee/v2/parsing/field/base_field.rbs +17 -0
- data/sig/mindee/v2/parsing/field/field_confidence.rbs +30 -0
- data/sig/mindee/v2/parsing/field/field_location.rbs +16 -0
- data/sig/mindee/v2/parsing/field/inference_fields.rbs +20 -0
- data/sig/mindee/v2/parsing/field/list_field.rbs +23 -0
- data/sig/mindee/v2/parsing/field/object_field.rbs +27 -0
- data/sig/mindee/v2/parsing/field/simple_field.rbs +16 -0
- data/sig/mindee/v2/parsing/inference_active_options.rbs +26 -0
- data/sig/mindee/v2/parsing/inference_file.rbs +17 -0
- data/sig/mindee/v2/parsing/inference_job.rbs +13 -0
- data/sig/mindee/v2/parsing/inference_model.rbs +12 -0
- data/sig/mindee/v2/parsing/job.rbs +24 -0
- data/sig/mindee/v2/parsing/job_response.rbs +14 -0
- data/sig/mindee/v2/parsing/job_webhook.rbs +19 -0
- data/sig/mindee/v2/parsing/rag_metadata.rbs +13 -0
- data/sig/mindee/v2/parsing/raw_text.rbs +12 -0
- data/sig/mindee/v2/parsing/raw_text_page.rbs +11 -0
- data/sig/mindee/v2/parsing/search/pagination_metadata.rbs +20 -0
- data/sig/mindee/v2/parsing/search/search_model.rbs +19 -0
- data/sig/mindee/v2/parsing/search/search_response.rbs +17 -0
- data/sig/mindee/v2/parsing/search_models.rbs +14 -0
- data/sig/mindee/v2/product/base_product.rbs +19 -0
- data/sig/mindee/v2/product/classification/classification.rbs +10 -0
- data/sig/mindee/v2/product/classification/classification_classifier.rbs +15 -0
- data/sig/mindee/v2/product/classification/classification_inference.rbs +15 -0
- data/sig/mindee/v2/product/classification/classification_response.rbs +23 -0
- data/sig/mindee/v2/product/classification/classification_result.rbs +15 -0
- data/sig/mindee/v2/product/classification/params/classification_parameters/classification_parameters.rbs +23 -0
- data/sig/mindee/v2/product/crop/crop.rbs +10 -0
- data/sig/mindee/v2/product/crop/crop_inference.rbs +14 -0
- data/sig/mindee/v2/product/crop/crop_item.rbs +18 -0
- data/sig/mindee/v2/product/crop/crop_response.rbs +25 -0
- data/sig/mindee/v2/product/crop/crop_result.rbs +14 -0
- data/sig/mindee/v2/product/crop/params/crop_parameters/crop_parameters.rbs +23 -0
- data/sig/mindee/v2/product/extraction/extraction.rbs +15 -0
- data/sig/mindee/v2/product/extraction/extraction_inference.rbs +19 -0
- data/sig/mindee/v2/product/extraction/extraction_response.rbs +24 -0
- data/sig/mindee/v2/product/extraction/extraction_result.rbs +18 -0
- data/sig/mindee/v2/product/extraction/params/data_schema.rbs +21 -0
- data/sig/mindee/v2/product/extraction/params/data_schema_field.rbs +29 -0
- data/sig/mindee/v2/product/extraction/params/data_schema_replace.rbs +21 -0
- data/sig/mindee/v2/product/extraction/params/extraction_parameters.rbs +38 -0
- data/sig/mindee/v2/product/ocr/ocr.rbs +10 -0
- data/sig/mindee/v2/product/ocr/ocr_inference.rbs +14 -0
- data/sig/mindee/v2/product/ocr/ocr_page.rbs +15 -0
- data/sig/mindee/v2/product/ocr/ocr_response.rbs +23 -0
- data/sig/mindee/v2/product/ocr/ocr_result.rbs +14 -0
- data/sig/mindee/v2/product/ocr/ocr_word.rbs +15 -0
- data/sig/mindee/v2/product/ocr/params/ocr_parameters/ocr_parameters.rbs +24 -0
- data/sig/mindee/v2/product/split/params/split_parameters/split_parameters.rbs +23 -0
- data/sig/mindee/v2/product/split/split.rbs +10 -0
- data/sig/mindee/v2/product/split/split_inference.rbs +14 -0
- data/sig/mindee/v2/product/split/split_range.rbs +18 -0
- data/sig/mindee/v2/product/split/split_response.rbs +25 -0
- data/sig/mindee/v2/product/split/split_result.rbs +14 -0
- data/sig/mindee/version.rbs +6 -0
- data/sig/mindee.rbs +62 -0
- metadata +600 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# lib/mindee/input/polling_options.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module Input
|
|
4
|
+
class PollingOptions
|
|
5
|
+
attr_reader delay_sec: Integer | Float
|
|
6
|
+
attr_reader initial_delay_sec: Integer | Float
|
|
7
|
+
attr_reader max_retries: Integer
|
|
8
|
+
|
|
9
|
+
def initialize: (?initial_delay_sec: Float, ?delay_sec: Float, ?max_retries: Integer) -> Integer
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# lib/mindee/input/sources/base64_input_source.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module Input
|
|
4
|
+
module Source
|
|
5
|
+
class Base64InputSource < LocalInputSource
|
|
6
|
+
def initialize: (String, String, ?repair_pdf: bool) -> void
|
|
7
|
+
def read_contents: (?close: bool) -> [String?, Hash[:filename, String]]
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# lib/mindee/input/sources/local_input_source.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module Input
|
|
4
|
+
module Source
|
|
5
|
+
ALLOWED_MIME_TYPES: Array[String]
|
|
6
|
+
class LocalInputSource
|
|
7
|
+
attr_reader file_mimetype: String
|
|
8
|
+
attr_reader filename: String
|
|
9
|
+
attr_reader io_stream: StringIO | File
|
|
10
|
+
def initialize: (StringIO | File, String, ?repair_pdf: bool) -> void
|
|
11
|
+
|
|
12
|
+
def fix_pdf!: (?maximum_offset: Integer) -> void
|
|
13
|
+
def self.fix_pdf: (StringIO | File, ?maximum_offset: Integer) -> StringIO
|
|
14
|
+
|
|
15
|
+
def logger: () -> Logger
|
|
16
|
+
|
|
17
|
+
def rescue_broken_pdf: (untyped) -> void
|
|
18
|
+
def pdf?: -> bool
|
|
19
|
+
def apply_page_options: (PageOptions) -> StringIO?
|
|
20
|
+
def process_pdf: (PageOptions) -> StringIO?
|
|
21
|
+
def read_contents: (?close: bool) -> [String?, Hash[:filename, String]]
|
|
22
|
+
def page_count: -> Integer
|
|
23
|
+
def write_to_file: (String?) -> void
|
|
24
|
+
def compress!: (?quality: Integer, ?max_width: Integer?, ?max_height: Integer?, ?force_source_text: bool, ?disable_source_text: bool) -> Integer
|
|
25
|
+
def source_text?: -> bool?
|
|
26
|
+
end
|
|
27
|
+
def self.convert_to_unicode_escape: (String) -> String
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# lib/mindee/input/sources/url_input_source.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module Input
|
|
4
|
+
module Source
|
|
5
|
+
class URLInputSource
|
|
6
|
+
def url: -> String
|
|
7
|
+
def logger: () -> Logger
|
|
8
|
+
def initialize: (String) -> void
|
|
9
|
+
def write_to_file: (String, ?filename: String?, ?username: String?, ?password: String?, ?token: String?, ?max_redirects: Integer) -> String
|
|
10
|
+
def as_local_input_source: (?filename: String?, ?username: String?, ?password: String?, ?token: String?, ?max_redirects: Integer) -> BytesInputSource?
|
|
11
|
+
def fetch_file_content: (?username: String?, ?password: String?, ?token: String?, ?max_redirects: Integer) -> String
|
|
12
|
+
def extract_filename_from_url: (::URI::File | ::URI::FTP | ::URI::HTTP | ::URI::HTTPS | ::URI::LDAP | ::URI::LDAPS | ::URI::MailTo | ::URI::WS | ::URI::WSS | ::URI::Generic) -> String
|
|
13
|
+
def fill_filename: (String?) -> String
|
|
14
|
+
def make_request: (URI::Generic, Net::HTTP::Get, Integer) -> Net::HTTPRedirection
|
|
15
|
+
def get_file_extension: (String) -> String?
|
|
16
|
+
def generate_file_name: (?extension: String?) -> String
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# lib/mindee/page_options.rb
|
|
2
|
+
|
|
3
|
+
module Mindee
|
|
4
|
+
class PageOptions
|
|
5
|
+
attr_accessor page_indexes: Array[Integer]
|
|
6
|
+
attr_accessor operation: :KEEP_ONLY | :REMOVE
|
|
7
|
+
attr_accessor on_min_pages: Integer?
|
|
8
|
+
|
|
9
|
+
def initialize: (params: Hash[String | Symbol, untyped]) -> void
|
|
10
|
+
end
|
|
11
|
+
end
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# lib/mindee/pdf/extracted_pdf.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module PDF
|
|
4
|
+
class ExtractedPDF
|
|
5
|
+
attr_reader pdf_bytes: StringIO
|
|
6
|
+
attr_reader filename: String
|
|
7
|
+
|
|
8
|
+
def initialize: (StringIO | File, String) -> void
|
|
9
|
+
|
|
10
|
+
def page_count: -> Integer
|
|
11
|
+
|
|
12
|
+
def write_to_file: (String, ?override: bool) -> void
|
|
13
|
+
|
|
14
|
+
def as_input_source: -> Input::Source::BytesInputSource
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# lib/mindee/pdf/pdf_compressor.rb
|
|
2
|
+
PDFReader: untyped
|
|
3
|
+
PDF: untyped
|
|
4
|
+
module Mindee
|
|
5
|
+
module PDF
|
|
6
|
+
module PDFCompressor
|
|
7
|
+
def self.logger: () -> Logger
|
|
8
|
+
def self.compress_pdf: (StringIO | File, ?quality: Integer, ?force_source_text_compression: bool, ?disable_source_text: bool) -> (StringIO | File)
|
|
9
|
+
def self.process_pdf_pages: (Origami::PDF, Integer) -> Array[Origami::Page]
|
|
10
|
+
def self.create_output_pdf: (Array[Origami::Page], bool, StringIO | File) -> Origami::PDF
|
|
11
|
+
def self.inject_text: (StringIO | File, Array[Origami::Page]) -> nil
|
|
12
|
+
def self.process_pdf_page: (StringIO, Integer, Integer, Array[Integer]?) -> Origami::Page
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# lib/mindee/pdf/pdf_extractor.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module PDF
|
|
4
|
+
class PDFExtractor
|
|
5
|
+
attr_reader filename: String
|
|
6
|
+
attr_reader source_pdf: StringIO
|
|
7
|
+
|
|
8
|
+
def initialize: (Input::Source::LocalInputSource) -> void
|
|
9
|
+
|
|
10
|
+
def page_count: -> Integer
|
|
11
|
+
|
|
12
|
+
def cut_pages: (Array[Integer]) -> StringIO
|
|
13
|
+
|
|
14
|
+
def extract_sub_documents: (Array[Array[Integer]]) -> Array[ExtractedPDF]
|
|
15
|
+
|
|
16
|
+
def extract_invoices: (Array[V1::Product::InvoiceSplitter::InvoiceSplitterV1InvoicePageGroup] | Array[Array[Integer]], ?strict: bool) -> Array[ExtractedPDF]
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# lib/mindee/pdf/pdf_processor.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module PDF
|
|
4
|
+
module PDFProcessor
|
|
5
|
+
def self.parse: (StringIO | File, PageOptions) -> StringIO
|
|
6
|
+
def self.indexes_from_keep: (Array[Integer], Array[Integer]) -> (Array[Integer])
|
|
7
|
+
def self.indexes_from_remove: (Array[Integer], Array[Integer]) -> (Array[Integer])
|
|
8
|
+
def self.open_pdf: (StringIO | File) -> Origami::PDF
|
|
9
|
+
def self.get_page: (Origami::PDF, Integer) -> StringIO
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# lib/mindee/pdf/pdf_tools.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module PDF
|
|
4
|
+
module PDFTools
|
|
5
|
+
BitsPerComponent: Integer
|
|
6
|
+
ColorSpace: Symbol
|
|
7
|
+
Contents: Origami::Stream
|
|
8
|
+
Height: Integer | Float
|
|
9
|
+
Width: Integer | Float
|
|
10
|
+
|
|
11
|
+
def self.pdf_header?: (StringIO | File) -> bool
|
|
12
|
+
|
|
13
|
+
def to_io_stream: (?Hash[Symbol, untyped]) -> StringIO
|
|
14
|
+
def intents_as_pdfa1: () -> void
|
|
15
|
+
def delinearize!: () -> void
|
|
16
|
+
def linearized?: () -> bool
|
|
17
|
+
def compile: (Hash[String | Symbol, untyped]) -> StringIO
|
|
18
|
+
def output: (Hash[String | Symbol, untyped]) -> String
|
|
19
|
+
def load_all_objects: () -> void
|
|
20
|
+
def self.stream_has_text?: (Origami::Stream) -> bool
|
|
21
|
+
def self.source_text?: (StringIO | File) -> bool
|
|
22
|
+
def self.create_xobject: (MiniMagick::Image) -> Origami::Graphics::ImageXObject
|
|
23
|
+
def self.set_xobject_properties: (Origami::Graphics::ImageXObject, MiniMagick::Image) -> void
|
|
24
|
+
def self.determine_filter: (MiniMagick::Image) -> (:DCTDecode | :FlateDecode | :LZWDecode)
|
|
25
|
+
def self.determine_colorspace: (MiniMagick::Image) -> (:DeviceCMYK | :DeviceGray | :DeviceRGB)
|
|
26
|
+
def self.add_content_to_page: (Origami::Page, String, Integer, Integer) -> void
|
|
27
|
+
def self.set_page_dimensions: (Origami::Page, Integer | Float, Integer | Float) -> void
|
|
28
|
+
def self.process_image_xobject: (MiniMagick::Image | StringIO, Integer, Integer | Float, Integer | Float) -> Origami::Graphics::ImageXObject
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# lib/v1/mindee/client.rb
|
|
2
|
+
|
|
3
|
+
module Mindee
|
|
4
|
+
module V1
|
|
5
|
+
OTS_OWNER: String
|
|
6
|
+
|
|
7
|
+
class ParseOptions
|
|
8
|
+
attr_accessor all_words: bool
|
|
9
|
+
attr_accessor full_text: bool
|
|
10
|
+
attr_accessor close_file: bool
|
|
11
|
+
attr_accessor page_options: PageOptions
|
|
12
|
+
attr_accessor cropper: bool
|
|
13
|
+
attr_accessor rag: bool
|
|
14
|
+
attr_accessor workflow_id: String?
|
|
15
|
+
attr_accessor initial_delay_sec: Integer | Float
|
|
16
|
+
attr_accessor delay_sec: Integer | Float
|
|
17
|
+
attr_accessor max_retries: Integer
|
|
18
|
+
|
|
19
|
+
def initialize: (params: Hash[String | Symbol, untyped]) -> void
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
class WorkflowOptions
|
|
23
|
+
attr_accessor document_alias: (String?)
|
|
24
|
+
attr_accessor priority: (Symbol?)
|
|
25
|
+
attr_accessor full_text: bool
|
|
26
|
+
attr_accessor rag: bool?
|
|
27
|
+
attr_accessor public_url: (String?)
|
|
28
|
+
attr_accessor page_options: (PageOptions)
|
|
29
|
+
attr_accessor close_file: bool
|
|
30
|
+
|
|
31
|
+
def initialize: (params: Hash[String | Symbol, untyped]) -> void
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
class Client
|
|
35
|
+
@api_key: String?
|
|
36
|
+
|
|
37
|
+
def initialize: (?api_key: String) -> void
|
|
38
|
+
|
|
39
|
+
def logger: () -> Logging
|
|
40
|
+
|
|
41
|
+
def parse: (Input::Source::LocalInputSource | Input::Source::URLInputSource, singleton(V1::Parsing::Common::Inference), ?endpoint: (V1::HTTP::Endpoint?), options: ParseOptions | Hash[String | Symbol, untyped]) -> V1::Parsing::Common::ApiResponse
|
|
42
|
+
|
|
43
|
+
def parse_sync: (Input::Source::LocalInputSource | Input::Source::URLInputSource, singleton(V1::Parsing::Common::Inference), V1::HTTP::Endpoint, ParseOptions) -> V1::Parsing::Common::ApiResponse
|
|
44
|
+
|
|
45
|
+
def enqueue: (Input::Source::LocalInputSource | Input::Source::URLInputSource, singleton(V1::Parsing::Common::Inference), ?endpoint: (V1::HTTP::Endpoint?), options: ParseOptions | Hash[String | Symbol, untyped]) -> V1::Parsing::Common::ApiResponse
|
|
46
|
+
|
|
47
|
+
def parse_queued: (String, singleton(V1::Parsing::Common::Inference), ?endpoint: V1::HTTP::Endpoint?) -> V1::Parsing::Common::ApiResponse
|
|
48
|
+
|
|
49
|
+
def enqueue_and_parse: (Input::Source::URLInputSource | Input::Source::LocalInputSource, singleton(V1::Parsing::Common::Inference), V1::HTTP::Endpoint, ParseOptions) -> V1::Parsing::Common::ApiResponse
|
|
50
|
+
|
|
51
|
+
def execute_workflow: (Input::Source::URLInputSource | Input::Source::LocalInputSource, String, options: (Hash[String | Symbol, untyped] | WorkflowOptions)) -> V1::Parsing::Common::WorkflowResponse
|
|
52
|
+
|
|
53
|
+
def load_prediction: (singleton(V1::Parsing::Common::Inference), Input::LocalResponse) -> V1::Parsing::Common::ApiResponse
|
|
54
|
+
|
|
55
|
+
def source_from_path: (String, ?repair_pdf: bool) -> Input::Source::PathInputSource
|
|
56
|
+
|
|
57
|
+
def source_from_bytes: (String, String, ?repair_pdf: bool) -> Input::Source::BytesInputSource
|
|
58
|
+
|
|
59
|
+
def source_from_b64string: (String, String, ?repair_pdf: bool) -> Input::Source::Base64InputSource
|
|
60
|
+
|
|
61
|
+
def source_from_file: (File, String, ?repair_pdf: bool) -> Input::Source::FileInputSource
|
|
62
|
+
|
|
63
|
+
def source_from_url: (String) -> Input::Source::URLInputSource
|
|
64
|
+
|
|
65
|
+
def create_endpoint: (endpoint_name: String, account_name: String, version: String) -> V1::HTTP::Endpoint
|
|
66
|
+
|
|
67
|
+
private
|
|
68
|
+
|
|
69
|
+
def normalize_parse_options: ((Hash[String | Symbol, untyped] | ParseOptions)) -> ParseOptions
|
|
70
|
+
|
|
71
|
+
def process_pdf_if_required: (Input::Source::LocalInputSource, ParseOptions | WorkflowOptions) -> void
|
|
72
|
+
|
|
73
|
+
def initialize_endpoint: (singleton(V1::Parsing::Common::Inference), ?endpoint_name: String, ?account_name: String, ?version: String) -> V1::HTTP::Endpoint
|
|
74
|
+
|
|
75
|
+
def validate_async_params: (Integer | Float, Integer | Float, Integer) -> void
|
|
76
|
+
|
|
77
|
+
def fix_endpoint_name: (singleton(V1::Parsing::Common::Inference), String?) -> String
|
|
78
|
+
|
|
79
|
+
def fix_account_name: (String) -> String
|
|
80
|
+
|
|
81
|
+
def fix_version: (singleton(V1::Parsing::Common::Inference), String) -> String
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
end
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# lib/mindee/v1/extraction/multi_receipts_extractor.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Extraction
|
|
5
|
+
def self.extract_receipts: (Input::Source::LocalInputSource, Product::MultiReceiptsDetector::MultiReceiptsDetectorV1) -> Array[Image::ExtractedImage]
|
|
6
|
+
end
|
|
7
|
+
end
|
|
8
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# lib/mindee/v1/http/endpoint.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module HTTP
|
|
5
|
+
API_KEY_ENV_NAME: String
|
|
6
|
+
API_KEY_DEFAULT: String?
|
|
7
|
+
BASE_URL_ENV_NAME: String
|
|
8
|
+
BASE_URL_DEFAULT: String
|
|
9
|
+
REQUEST_TIMEOUT_ENV_NAME: String
|
|
10
|
+
TIMEOUT_DEFAULT: Integer
|
|
11
|
+
USER_AGENT: String
|
|
12
|
+
|
|
13
|
+
class Endpoint
|
|
14
|
+
attr_reader api_key: String
|
|
15
|
+
attr_reader base_url: String
|
|
16
|
+
attr_reader request_timeout: Integer
|
|
17
|
+
attr_reader url_root: String
|
|
18
|
+
|
|
19
|
+
def logger: () -> Logger
|
|
20
|
+
|
|
21
|
+
def initialize: (String, String, String?, ?api_key: String) -> String
|
|
22
|
+
|
|
23
|
+
def predict: (Input::Source::LocalInputSource | Input::Source::URLInputSource, ParseOptions) -> [Hash[String | Symbol, untyped], String]
|
|
24
|
+
|
|
25
|
+
def predict_async: (Input::Source::LocalInputSource | Input::Source::URLInputSource, ParseOptions) -> [Hash[String | Symbol, untyped], String]
|
|
26
|
+
|
|
27
|
+
def parse_async: (String) -> [Hash[String | Symbol, untyped], String]
|
|
28
|
+
|
|
29
|
+
def predict_req_post: (Input::Source::LocalInputSource | Input::Source::URLInputSource, ParseOptions) -> Net::HTTPResponse
|
|
30
|
+
|
|
31
|
+
def document_queue_req_post: (Input::Source::LocalInputSource | Input::Source::URLInputSource, ParseOptions) -> Net::HTTPResponse
|
|
32
|
+
|
|
33
|
+
def document_queue_req_get: (String) -> Net::HTTPResponse
|
|
34
|
+
|
|
35
|
+
def check_api_key: -> void
|
|
36
|
+
|
|
37
|
+
def configure_ssl: (Net::HTTP) -> void
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# lib/mindee/v1/http/workflow_endpoint.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module HTTP
|
|
5
|
+
class WorkflowEndpoint
|
|
6
|
+
def api_key: -> String
|
|
7
|
+
|
|
8
|
+
def request_timeout: -> Integer
|
|
9
|
+
|
|
10
|
+
def url: -> String
|
|
11
|
+
|
|
12
|
+
def initialize: (untyped, ?api_key: String) -> String
|
|
13
|
+
|
|
14
|
+
def execute_workflow: (Input::Source::LocalInputSource | Input::Source::URLInputSource, WorkflowOptions) -> [Hash[String, untyped], String]
|
|
15
|
+
|
|
16
|
+
def workflow_execution_req_post: (Input::Source::LocalInputSource | Input::Source::URLInputSource, WorkflowOptions) -> Net::HTTPResponse?
|
|
17
|
+
|
|
18
|
+
def check_api_key: -> nil
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/api_request.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
class ApiRequest
|
|
7
|
+
def error: -> Hash[String, untyped]
|
|
8
|
+
|
|
9
|
+
def ressources: -> Array[String]
|
|
10
|
+
|
|
11
|
+
def status: -> [RequestStatus, Symbol]
|
|
12
|
+
|
|
13
|
+
def status_code: -> Integer
|
|
14
|
+
|
|
15
|
+
def url: -> String
|
|
16
|
+
|
|
17
|
+
def initialize: (Hash[String, untyped]) -> void
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/api_response.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
module JobStatus
|
|
7
|
+
WAITING: :waiting
|
|
8
|
+
PROCESSING: :processing
|
|
9
|
+
COMPLETED: :completed
|
|
10
|
+
FAILURE: :failed
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
module RequestStatus
|
|
14
|
+
FAILURE: :failure
|
|
15
|
+
SUCCESS: :success
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
class ApiResponse
|
|
19
|
+
attr_reader document: Parsing::Common::Document?
|
|
20
|
+
attr_reader job: Parsing::Common::Job?
|
|
21
|
+
attr_reader api_request: Parsing::Common::ApiRequest
|
|
22
|
+
attr_reader raw_http: String
|
|
23
|
+
|
|
24
|
+
def logger: () -> Logger
|
|
25
|
+
|
|
26
|
+
def initialize: (singleton(Parsing::Common::Inference), Hash[String | Symbol, untyped] | Net::HTTPResponse, String) -> void
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/document.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
class Document
|
|
7
|
+
def inference: -> Inference
|
|
8
|
+
|
|
9
|
+
def name: -> String
|
|
10
|
+
|
|
11
|
+
def id: -> String
|
|
12
|
+
|
|
13
|
+
def extras: -> Extras::Extras?
|
|
14
|
+
|
|
15
|
+
def ocr: -> OCR::OCR?
|
|
16
|
+
|
|
17
|
+
def n_pages: -> Integer
|
|
18
|
+
|
|
19
|
+
def self.load_ocr: (Hash[String | Symbol, untyped]) -> Parsing::Common::OCR::OCR?
|
|
20
|
+
|
|
21
|
+
def self.extract_extras: (Hash[String | Symbol, untyped]) -> Parsing::Common::Extras::Extras?
|
|
22
|
+
|
|
23
|
+
def initialize: (singleton(Parsing::Common::Inference), Hash[String | Symbol, untyped]) -> void
|
|
24
|
+
|
|
25
|
+
def to_s: -> String
|
|
26
|
+
|
|
27
|
+
def inject_full_text_ocr: (Hash[String | Symbol, untyped]) -> void
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/execution.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
class Execution
|
|
7
|
+
attr_reader available_at: Time?
|
|
8
|
+
attr_reader batch_name: String
|
|
9
|
+
attr_reader created_at: Time
|
|
10
|
+
attr_reader file: ExecutionFile
|
|
11
|
+
attr_reader id: String
|
|
12
|
+
attr_reader inference: Inference
|
|
13
|
+
attr_reader priority: Symbol?
|
|
14
|
+
attr_reader reviewed_at: Time?
|
|
15
|
+
attr_reader reviewed_prediction: Prediction?
|
|
16
|
+
attr_reader status: Symbol
|
|
17
|
+
attr_reader type: String?
|
|
18
|
+
attr_reader uploaded_at: Time?
|
|
19
|
+
attr_reader workflow_id: String
|
|
20
|
+
|
|
21
|
+
def initialize: (singleton(Parsing::Common::Inference), Hash[String | Symbol, untyped]) -> void
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/execution_file.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
class ExecutionFile
|
|
7
|
+
def name: -> String
|
|
8
|
+
|
|
9
|
+
def alias: -> String?
|
|
10
|
+
|
|
11
|
+
def initialize: (Hash[String | Symbol, untyped]) -> void
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/execution_priority.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
module ExecutionPriority
|
|
7
|
+
LOW: :low
|
|
8
|
+
MEDIUM: :medium
|
|
9
|
+
HIGH: :high
|
|
10
|
+
|
|
11
|
+
def self.to_priority: (untyped) -> (:high | :low | :medium)?
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/extras/cropper_extra.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
module Extras
|
|
7
|
+
class CropperExtra
|
|
8
|
+
attr_reader croppings: Array[Standard::PositionField]
|
|
9
|
+
|
|
10
|
+
def initialize: (Hash[String | Symbol, untyped], ?Integer?) -> void
|
|
11
|
+
|
|
12
|
+
def to_s: -> String
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/extras/extras.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
module Extras
|
|
7
|
+
class Extras
|
|
8
|
+
attr_reader cropper: CropperExtra?
|
|
9
|
+
attr_reader full_text_ocr: FullTextOCRExtra
|
|
10
|
+
attr_reader rag: RAGExtra?
|
|
11
|
+
|
|
12
|
+
def initialize: (Hash[String | Symbol, untyped]) -> void
|
|
13
|
+
|
|
14
|
+
def to_s: -> String
|
|
15
|
+
|
|
16
|
+
def add_artificial_extra: (Hash[String | Symbol, untyped]) -> void
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def empty?: -> bool
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/extras/full_text_ocr_extra.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
module Extras
|
|
7
|
+
class FullTextOCRExtra
|
|
8
|
+
def contents: -> String?
|
|
9
|
+
|
|
10
|
+
def language: -> String?
|
|
11
|
+
|
|
12
|
+
def initialize: (Hash[String | Symbol, untyped]) -> nil
|
|
13
|
+
|
|
14
|
+
def to_s: -> String
|
|
15
|
+
|
|
16
|
+
def <<: (?untyped?) -> untyped
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/extras/rag_extra.rb
|
|
2
|
+
|
|
3
|
+
module Mindee
|
|
4
|
+
module V1
|
|
5
|
+
module Parsing
|
|
6
|
+
module Common
|
|
7
|
+
module Extras
|
|
8
|
+
class RAGExtra
|
|
9
|
+
def matching_document_id: -> String?
|
|
10
|
+
|
|
11
|
+
def initialize: (untyped) -> nil
|
|
12
|
+
|
|
13
|
+
def to_s: -> String
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# lib/mindee/v1/parsing/common/inference.rb
|
|
2
|
+
module Mindee
|
|
3
|
+
module V1
|
|
4
|
+
module Parsing
|
|
5
|
+
module Common
|
|
6
|
+
class Inference
|
|
7
|
+
def self.endpoint_name: () -> String?
|
|
8
|
+
|
|
9
|
+
def self.endpoint_version: () -> String?
|
|
10
|
+
|
|
11
|
+
def self.has_async: () -> bool
|
|
12
|
+
|
|
13
|
+
def self.has_sync: () -> bool
|
|
14
|
+
|
|
15
|
+
attr_reader endpoint_name: String
|
|
16
|
+
attr_reader endpoint_version: String
|
|
17
|
+
attr_reader extras: Extras::Extras
|
|
18
|
+
attr_reader has_async: bool
|
|
19
|
+
attr_reader has_sync: bool
|
|
20
|
+
attr_reader is_rotation_applied: bool
|
|
21
|
+
attr_reader pages: Array[Page]
|
|
22
|
+
attr_reader product: Product
|
|
23
|
+
|
|
24
|
+
def initialize: (Hash[String | Symbol, untyped]) -> void
|
|
25
|
+
|
|
26
|
+
def to_s: -> String
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|