merge_ruby_client 0.1.3 → 1.0.0
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 +4 -4
- data/lib/merge_ruby_client/accounting/accounting_periods/client.rb +18 -4
- data/lib/merge_ruby_client/accounting/accounts/client.rb +26 -8
- data/lib/merge_ruby_client/accounting/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/accounting/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/accounting/async_tasks/client.rb +99 -0
- data/lib/merge_ruby_client/accounting/attachments/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/accounting/balance_sheets/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/bank_feed_accounts/client.rb +369 -0
- data/lib/merge_ruby_client/accounting/bank_feed_transactions/client.rb +408 -0
- data/lib/merge_ruby_client/accounting/cash_flow_statements/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/client.rb +35 -0
- data/lib/merge_ruby_client/accounting/company_info/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/contacts/client.rb +149 -10
- data/lib/merge_ruby_client/accounting/credit_notes/client.rb +193 -4
- data/lib/merge_ruby_client/accounting/employees/client.rb +216 -0
- data/lib/merge_ruby_client/accounting/expenses/client.rb +249 -10
- data/lib/merge_ruby_client/accounting/expenses/types/expenses_list_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/expenses/types/expenses_retrieve_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/accounting/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/general_ledger_transactions/client.rb +253 -0
- data/lib/merge_ruby_client/accounting/general_ledger_transactions/types/general_ledger_transactions_list_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/general_ledger_transactions/types/general_ledger_transactions_retrieve_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/income_statements/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/invoices/client.rb +284 -14
- data/lib/merge_ruby_client/accounting/invoices/types/invoices_list_request_expand.rb +1792 -0
- data/lib/merge_ruby_client/accounting/invoices/types/invoices_list_request_status.rb +16 -0
- data/lib/merge_ruby_client/accounting/invoices/types/invoices_retrieve_request_expand.rb +1792 -0
- data/lib/merge_ruby_client/accounting/issues/client.rb +10 -4
- data/lib/merge_ruby_client/accounting/items/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/items/types/items_list_request_expand.rb +24 -0
- data/lib/merge_ruby_client/accounting/items/types/items_retrieve_request_expand.rb +24 -0
- data/lib/merge_ruby_client/accounting/journal_entries/client.rb +247 -10
- data/lib/merge_ruby_client/accounting/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/accounting/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payments/client.rb +249 -12
- data/lib/merge_ruby_client/accounting/purchase_orders/client.rb +247 -10
- data/lib/merge_ruby_client/accounting/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/accounting/tax_rates/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/tracking_categories/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/transactions/client.rb +16 -4
- data/lib/merge_ruby_client/accounting/types/account.rb +48 -7
- data/lib/merge_ruby_client/accounting/types/account_account_type_enum.rb +34 -0
- data/lib/merge_ruby_client/accounting/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/accounting/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/accounting/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/accounting/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/accounting/types/account_request.rb +42 -5
- data/lib/merge_ruby_client/accounting/types/accounting_attachment.rb +6 -2
- data/lib/merge_ruby_client/accounting/types/accounting_period.rb +47 -19
- data/lib/merge_ruby_client/accounting/types/async_post_task.rb +74 -0
- data/lib/merge_ruby_client/accounting/types/async_post_task_result.rb +69 -0
- data/lib/merge_ruby_client/accounting/types/async_post_task_status_enum.rb +16 -0
- data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/accounting/types/balance_sheet.rb +10 -6
- data/lib/merge_ruby_client/accounting/types/bank_feed_account.rb +834 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_account_account_type_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_account_request.rb +788 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_account_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_transaction.rb +209 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_transaction_bank_feed_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_transaction_request_request.rb +167 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_transaction_request_request_bank_feed_account.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/bank_feed_transaction_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/cash_flow_statement.rb +10 -6
- data/lib/merge_ruby_client/accounting/types/company_info.rb +10 -6
- data/lib/merge_ruby_client/accounting/types/component_type_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/contact.rb +20 -4
- data/lib/merge_ruby_client/accounting/types/contact_request.rb +14 -2
- data/lib/merge_ruby_client/accounting/types/credit_note.rb +43 -15
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_credit_note.rb +132 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_credit_note_invoice.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_credit_note_request.rb +120 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_credit_note_request_invoice.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_invoice.rb +132 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_apply_line_for_invoice_credit_note.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +20 -3
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request.rb +194 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request.rb +875 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_accounting_period.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_applied_payments_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_line_items_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_payments_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_request_tracking_categories_item.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/credit_or_debit_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/employee.rb +199 -0
- data/lib/merge_ruby_client/accounting/types/employee_company.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/accounting/types/expense.rb +48 -8
- data/lib/merge_ruby_client/accounting/types/expense_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_line.rb +37 -11
- data/lib/merge_ruby_client/accounting/types/expense_line_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_line_request.rb +44 -10
- data/lib/merge_ruby_client/accounting/types/expense_line_request_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_request.rb +42 -6
- data/lib/merge_ruby_client/accounting/types/expense_request_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/external_target_field_api_response.rb +35 -2
- data/lib/merge_ruby_client/accounting/types/{accounting_period_status_enum.rb → feed_status_enum.rb} +1 -1
- data/lib/merge_ruby_client/accounting/types/field_format_enum.rb +20 -0
- data/lib/merge_ruby_client/accounting/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/accounting/types/field_mapping_api_instance_response.rb +35 -2
- data/lib/merge_ruby_client/accounting/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/accounting/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/accounting/types/field_type_enum.rb +20 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction.rb +248 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_accounting_period.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_general_ledger_transaction_lines_item.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line.rb +1490 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_account.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_employee.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_tracking_categories_item.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/income_statement.rb +10 -6
- data/lib/merge_ruby_client/accounting/types/invoice.rb +101 -33
- data/lib/merge_ruby_client/accounting/types/invoice_applied_credit_notes_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_applied_vendor_credits_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +50 -12
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request.rb +44 -10
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_request.rb +46 -10
- data/lib/merge_ruby_client/accounting/types/invoice_request_employee.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item.rb +35 -3
- data/lib/merge_ruby_client/accounting/types/item_format_enum.rb +20 -0
- data/lib/merge_ruby_client/accounting/types/item_purchase_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_sales_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_schema.rb +82 -0
- data/lib/merge_ruby_client/accounting/types/item_type_enum.rb +20 -0
- data/lib/merge_ruby_client/accounting/types/journal_entry.rb +56 -28
- data/lib/merge_ruby_client/accounting/types/journal_entry_request.rb +28 -6
- data/lib/merge_ruby_client/accounting/types/journal_line.rb +42 -10
- data/lib/merge_ruby_client/accounting/types/journal_line_request.rb +36 -8
- data/lib/merge_ruby_client/accounting/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/paginated_bank_feed_account_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_bank_feed_transaction_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_employee_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_general_ledger_transaction_list.rb +81 -0
- data/lib/merge_ruby_client/accounting/types/paginated_remote_field_class_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/patched_payment_request.rb +18 -6
- data/lib/merge_ruby_client/accounting/types/patched_payment_request_applied_to_lines_item.rb +4 -4
- data/lib/merge_ruby_client/accounting/types/payment.rb +42 -26
- data/lib/merge_ruby_client/accounting/types/payment_line_item_request.rb +14 -2
- data/lib/merge_ruby_client/accounting/types/payment_request.rb +18 -6
- data/lib/merge_ruby_client/accounting/types/purchase_order.rb +48 -22
- data/lib/merge_ruby_client/accounting/types/purchase_order_line_item.rb +32 -8
- data/lib/merge_ruby_client/accounting/types/purchase_order_line_item_request.rb +26 -6
- data/lib/merge_ruby_client/accounting/types/purchase_order_request.rb +28 -6
- data/lib/merge_ruby_client/accounting/types/remote_data.rb +8 -2
- data/lib/merge_ruby_client/accounting/types/remote_field.rb +75 -0
- data/lib/merge_ruby_client/accounting/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/accounting/types/remote_field_api_response.rb +35 -2
- data/lib/merge_ruby_client/accounting/types/remote_field_class.rb +145 -0
- data/lib/merge_ruby_client/accounting/types/remote_field_request.rb +75 -0
- data/lib/merge_ruby_client/accounting/types/remote_field_request_remote_field_class.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/report_item.rb +16 -2
- data/lib/merge_ruby_client/accounting/types/status_895_enum.rb +12 -0
- data/lib/merge_ruby_client/accounting/types/tax_component.rb +150 -0
- data/lib/merge_ruby_client/accounting/types/tax_rate.rb +73 -16
- data/lib/merge_ruby_client/accounting/types/tax_rate_tax_components_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/tracking_category.rb +12 -20
- data/lib/merge_ruby_client/accounting/types/tracking_category_company.rb +1 -1
- data/lib/merge_ruby_client/accounting/types/transaction.rb +21 -7
- data/lib/merge_ruby_client/accounting/types/{currency_enum.rb → transaction_currency_enum.rb} +1 -1
- data/lib/merge_ruby_client/accounting/types/transaction_line_item.rb +14 -10
- data/lib/merge_ruby_client/accounting/types/underlying_transaction_type_enum.rb +22 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit.rb +35 -9
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_invoice.rb +132 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_invoice_vendor_credit.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_vendor_credit.rb +132 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_vendor_credit_invoice.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_vendor_credit_request.rb +120 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_apply_line_for_vendor_credit_request_invoice.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +17 -5
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request.rb +157 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_request.rb +813 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_request_accounting_period.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_request_tracking_categories_item.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_request_vendor.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/vendor_credits/client.rb +183 -4
- data/lib/merge_ruby_client/ats/activities/client.rb +16 -4
- data/lib/merge_ruby_client/ats/applications/client.rb +30 -4
- data/lib/merge_ruby_client/ats/applications/types/applications_list_request_expand.rb +192 -0
- data/lib/merge_ruby_client/ats/applications/types/applications_retrieve_request_expand.rb +192 -0
- data/lib/merge_ruby_client/ats/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/ats/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/ats/attachments/client.rb +16 -4
- data/lib/merge_ruby_client/ats/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/ats/candidates/client.rb +16 -4
- data/lib/merge_ruby_client/ats/departments/client.rb +16 -4
- data/lib/merge_ruby_client/ats/eeocs/client.rb +16 -4
- data/lib/merge_ruby_client/ats/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/ats/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/ats/interviews/client.rb +16 -4
- data/lib/merge_ruby_client/ats/issues/client.rb +10 -4
- data/lib/merge_ruby_client/ats/job_interview_stages/client.rb +16 -4
- data/lib/merge_ruby_client/ats/job_postings/client.rb +16 -4
- data/lib/merge_ruby_client/ats/jobs/client.rb +32 -8
- data/lib/merge_ruby_client/ats/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/ats/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ats/offers/client.rb +16 -4
- data/lib/merge_ruby_client/ats/offices/client.rb +16 -4
- data/lib/merge_ruby_client/ats/reject_reasons/client.rb +16 -4
- data/lib/merge_ruby_client/ats/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/ats/scorecards/client.rb +16 -4
- data/lib/merge_ruby_client/ats/tags/client.rb +16 -4
- data/lib/merge_ruby_client/ats/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/ats/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/ats/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/ats/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/ats/types/activity.rb +8 -4
- data/lib/merge_ruby_client/ats/types/activity_request.rb +2 -2
- data/lib/merge_ruby_client/ats/types/application.rb +21 -3
- data/lib/merge_ruby_client/ats/types/application_request.rb +13 -1
- data/lib/merge_ruby_client/ats/types/application_request_screening_question_answers_item.rb +56 -0
- data/lib/merge_ruby_client/ats/types/application_screening_question_answers_item.rb +56 -0
- data/lib/merge_ruby_client/ats/types/attachment.rb +8 -2
- data/lib/merge_ruby_client/ats/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/ats/types/candidate.rb +8 -2
- data/lib/merge_ruby_client/ats/types/department.rb +6 -2
- data/lib/merge_ruby_client/ats/types/eeoc.rb +6 -2
- data/lib/merge_ruby_client/ats/types/email_address.rb +16 -2
- data/lib/merge_ruby_client/ats/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/ats/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/ats/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/ats/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/ats/types/job.rb +6 -2
- data/lib/merge_ruby_client/ats/types/job_interview_stage.rb +6 -2
- data/lib/merge_ruby_client/ats/types/job_posting.rb +6 -2
- data/lib/merge_ruby_client/ats/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/ats/types/offer.rb +6 -2
- data/lib/merge_ruby_client/ats/types/office.rb +6 -2
- data/lib/merge_ruby_client/ats/types/phone_number.rb +16 -2
- data/lib/merge_ruby_client/ats/types/reject_reason.rb +6 -2
- data/lib/merge_ruby_client/ats/types/remote_data.rb +8 -2
- data/lib/merge_ruby_client/ats/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/ats/types/remote_user.rb +6 -2
- data/lib/merge_ruby_client/ats/types/scheduled_interview.rb +6 -2
- data/lib/merge_ruby_client/ats/types/scorecard.rb +6 -2
- data/lib/merge_ruby_client/ats/types/screening_question.rb +16 -2
- data/lib/merge_ruby_client/ats/types/screening_question_answer.rb +136 -0
- data/lib/merge_ruby_client/ats/types/screening_question_answer_question.rb +58 -0
- data/lib/merge_ruby_client/ats/types/screening_question_answer_request.rb +113 -0
- data/lib/merge_ruby_client/ats/types/screening_question_answer_request_question.rb +59 -0
- data/lib/merge_ruby_client/ats/types/screening_question_option.rb +16 -2
- data/lib/merge_ruby_client/ats/types/tag.rb +6 -2
- data/lib/merge_ruby_client/ats/types/url.rb +17 -2
- data/lib/merge_ruby_client/ats/users/client.rb +16 -4
- data/lib/merge_ruby_client/crm/accounts/client.rb +38 -8
- data/lib/merge_ruby_client/crm/association_types/client.rb +16 -4
- data/lib/merge_ruby_client/crm/associations/client.rb +16 -4
- data/lib/merge_ruby_client/crm/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/crm/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/crm/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/crm/contacts/client.rb +38 -8
- data/lib/merge_ruby_client/crm/custom_object_classes/client.rb +16 -4
- data/lib/merge_ruby_client/crm/custom_objects/client.rb +127 -4
- data/lib/merge_ruby_client/crm/engagement_types/client.rb +38 -8
- data/lib/merge_ruby_client/crm/engagements/client.rb +38 -8
- data/lib/merge_ruby_client/crm/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/crm/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/crm/issues/client.rb +10 -4
- data/lib/merge_ruby_client/crm/leads/client.rb +38 -8
- data/lib/merge_ruby_client/crm/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/crm/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/crm/notes/client.rb +38 -8
- data/lib/merge_ruby_client/crm/opportunities/client.rb +44 -8
- data/lib/merge_ruby_client/crm/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/crm/stages/client.rb +38 -8
- data/lib/merge_ruby_client/crm/tasks/client.rb +38 -8
- data/lib/merge_ruby_client/crm/types/account.rb +8 -2
- data/lib/merge_ruby_client/crm/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/crm/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/crm/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/crm/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/crm/types/association.rb +6 -6
- data/lib/merge_ruby_client/crm/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/crm/types/contact.rb +8 -2
- data/lib/merge_ruby_client/crm/types/engagement.rb +6 -2
- data/lib/merge_ruby_client/crm/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/crm/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/crm/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/crm/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/crm/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/crm/types/lead.rb +8 -2
- data/lib/merge_ruby_client/crm/types/note.rb +8 -2
- data/lib/merge_ruby_client/crm/types/opportunity.rb +8 -2
- data/lib/merge_ruby_client/crm/types/remote_data.rb +8 -2
- data/lib/merge_ruby_client/crm/types/remote_field.rb +3 -3
- data/lib/merge_ruby_client/crm/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/crm/types/remote_field_request.rb +3 -3
- data/lib/merge_ruby_client/crm/types/stage.rb +6 -2
- data/lib/merge_ruby_client/crm/types/task.rb +6 -2
- data/lib/merge_ruby_client/crm/types/user.rb +6 -2
- data/lib/merge_ruby_client/crm/users/client.rb +44 -10
- data/lib/merge_ruby_client/filestorage/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/filestorage/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/filestorage/drives/client.rb +16 -4
- data/lib/merge_ruby_client/filestorage/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/filestorage/files/client.rb +20 -8
- data/lib/merge_ruby_client/filestorage/folders/client.rb +18 -6
- data/lib/merge_ruby_client/filestorage/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/groups/client.rb +32 -8
- data/lib/merge_ruby_client/filestorage/issues/client.rb +10 -4
- data/lib/merge_ruby_client/filestorage/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/filestorage/linked_accounts/client.rb +4 -6
- data/lib/merge_ruby_client/filestorage/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/filestorage/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/filestorage/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/filestorage/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/filestorage/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/filestorage/types/drive.rb +13 -5
- data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/filestorage/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/filestorage/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/filestorage/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/filestorage/types/file.rb +16 -8
- data/lib/merge_ruby_client/filestorage/types/file_request.rb +3 -3
- data/lib/merge_ruby_client/filestorage/types/folder.rb +16 -8
- data/lib/merge_ruby_client/filestorage/types/folder_request.rb +3 -3
- data/lib/merge_ruby_client/filestorage/types/group.rb +27 -7
- data/lib/merge_ruby_client/filestorage/types/group_child_groups_item.rb +55 -0
- data/lib/merge_ruby_client/filestorage/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/filestorage/types/permission.rb +8 -4
- data/lib/merge_ruby_client/filestorage/types/permission_group.rb +2 -1
- data/lib/merge_ruby_client/filestorage/types/permission_request.rb +8 -4
- data/lib/merge_ruby_client/filestorage/types/permission_request_group.rb +2 -1
- data/lib/merge_ruby_client/filestorage/types/permission_request_user.rb +2 -1
- data/lib/merge_ruby_client/filestorage/types/permission_user.rb +2 -1
- data/lib/merge_ruby_client/filestorage/types/remote_data.rb +75 -0
- data/lib/merge_ruby_client/filestorage/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/filestorage/types/user.rb +13 -5
- data/lib/merge_ruby_client/filestorage/users/client.rb +16 -4
- data/lib/merge_ruby_client/hris/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/hris/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/hris/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/hris/bank_info/client.rb +20 -6
- data/lib/merge_ruby_client/hris/benefits/client.rb +16 -4
- data/lib/merge_ruby_client/hris/companies/client.rb +16 -4
- data/lib/merge_ruby_client/hris/dependents/client.rb +16 -4
- data/lib/merge_ruby_client/hris/employee_payroll_runs/client.rb +16 -4
- data/lib/merge_ruby_client/hris/employees/client.rb +16 -4
- data/lib/merge_ruby_client/hris/employer_benefits/client.rb +16 -4
- data/lib/merge_ruby_client/hris/employments/client.rb +20 -6
- data/lib/merge_ruby_client/hris/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/hris/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/hris/groups/client.rb +16 -4
- data/lib/merge_ruby_client/hris/issues/client.rb +10 -4
- data/lib/merge_ruby_client/hris/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/hris/linked_accounts/client.rb +4 -6
- data/lib/merge_ruby_client/hris/locations/client.rb +28 -12
- data/lib/merge_ruby_client/hris/locations/types/locations_list_request_remote_fields.rb +13 -0
- data/lib/merge_ruby_client/hris/locations/types/locations_list_request_show_enum_origins.rb +13 -0
- data/lib/merge_ruby_client/hris/locations/types/locations_retrieve_request_remote_fields.rb +13 -0
- data/lib/merge_ruby_client/hris/locations/types/locations_retrieve_request_show_enum_origins.rb +13 -0
- data/lib/merge_ruby_client/hris/pay_groups/client.rb +16 -4
- data/lib/merge_ruby_client/hris/payroll_runs/client.rb +16 -4
- data/lib/merge_ruby_client/hris/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/hris/teams/client.rb +16 -4
- data/lib/merge_ruby_client/hris/time_off/client.rb +16 -4
- data/lib/merge_ruby_client/hris/time_off_balances/client.rb +16 -4
- data/lib/merge_ruby_client/hris/timesheet_entries/client.rb +42 -20
- data/lib/merge_ruby_client/hris/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/hris/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/hris/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/hris/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/hris/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/hris/types/bank_info.rb +6 -2
- data/lib/merge_ruby_client/hris/types/benefit.rb +6 -2
- data/lib/merge_ruby_client/hris/types/company.rb +6 -2
- data/lib/merge_ruby_client/hris/types/deduction.rb +6 -2
- data/lib/merge_ruby_client/hris/types/dependent.rb +6 -2
- data/lib/merge_ruby_client/hris/types/earning.rb +6 -2
- data/lib/merge_ruby_client/hris/types/employee.rb +10 -3
- data/lib/merge_ruby_client/hris/types/employee_payroll_run.rb +6 -2
- data/lib/merge_ruby_client/hris/types/employee_request.rb +2 -1
- data/lib/merge_ruby_client/hris/types/employer_benefit.rb +13 -5
- data/lib/merge_ruby_client/hris/types/employment.rb +13 -7
- data/lib/merge_ruby_client/hris/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/hris/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/hris/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/hris/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/hris/types/group.rb +6 -2
- data/lib/merge_ruby_client/hris/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/hris/types/location.rb +6 -2
- data/lib/merge_ruby_client/hris/types/pay_group.rb +6 -2
- data/lib/merge_ruby_client/hris/types/payroll_run.rb +6 -2
- data/lib/merge_ruby_client/hris/types/remote_data.rb +8 -2
- data/lib/merge_ruby_client/hris/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/hris/types/tax.rb +6 -2
- data/lib/merge_ruby_client/hris/types/team.rb +6 -2
- data/lib/merge_ruby_client/hris/types/time_off.rb +8 -2
- data/lib/merge_ruby_client/hris/types/time_off_balance.rb +14 -6
- data/lib/merge_ruby_client/hris/types/timesheet_entry.rb +23 -9
- data/lib/merge_ruby_client/hris/types/timesheet_entry_employee.rb +56 -0
- data/lib/merge_ruby_client/hris/types/timesheet_entry_request.rb +10 -4
- data/lib/merge_ruby_client/hris/types/timesheet_entry_request_employee.rb +56 -0
- data/lib/merge_ruby_client/ticketing/accounts/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/async_passthrough/client.rb +5 -5
- data/lib/merge_ruby_client/ticketing/async_passthrough/types/async_passthrough_retrieve_response.rb +57 -0
- data/lib/merge_ruby_client/ticketing/attachments/client.rb +18 -6
- data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +12 -4
- data/lib/merge_ruby_client/ticketing/collections/client.rb +22 -104
- data/lib/merge_ruby_client/ticketing/collections/types/collections_list_request_expand.rb +13 -0
- data/lib/merge_ruby_client/ticketing/collections/types/collections_retrieve_request_expand.rb +13 -0
- data/lib/merge_ruby_client/ticketing/comments/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/contacts/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/field_mapping/client.rb +36 -16
- data/lib/merge_ruby_client/ticketing/force_resync/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/issues/client.rb +10 -4
- data/lib/merge_ruby_client/ticketing/link_token/client.rb +25 -4
- data/lib/merge_ruby_client/ticketing/linked_accounts/client.rb +4 -6
- data/lib/merge_ruby_client/ticketing/projects/client.rb +32 -8
- data/lib/merge_ruby_client/ticketing/roles/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/scopes/client.rb +12 -12
- data/lib/merge_ruby_client/ticketing/tags/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/teams/client.rb +16 -4
- data/lib/merge_ruby_client/ticketing/tickets/client.rb +92 -45
- data/lib/merge_ruby_client/ticketing/tickets/types/tickets_list_request_expand.rb +128 -0
- data/lib/merge_ruby_client/ticketing/tickets/types/tickets_retrieve_request_expand.rb +128 -0
- data/lib/merge_ruby_client/ticketing/tickets/types/tickets_viewers_list_request_expand.rb +13 -0
- data/lib/merge_ruby_client/ticketing/types/account.rb +6 -2
- data/lib/merge_ruby_client/ticketing/types/account_details.rb +11 -2
- data/lib/merge_ruby_client/ticketing/types/account_details_and_actions.rb +11 -2
- data/lib/merge_ruby_client/ticketing/types/account_details_and_actions_status_enum.rb +2 -0
- data/lib/merge_ruby_client/ticketing/types/account_integration.rb +20 -8
- data/lib/merge_ruby_client/ticketing/types/attachment.rb +8 -2
- data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +14 -0
- data/lib/merge_ruby_client/ticketing/types/collection.rb +22 -6
- data/lib/merge_ruby_client/ticketing/types/collection_teams_item.rb +55 -0
- data/lib/merge_ruby_client/ticketing/types/comment.rb +20 -6
- data/lib/merge_ruby_client/ticketing/types/comment_contact.rb +3 -1
- data/lib/merge_ruby_client/ticketing/types/comment_request.rb +12 -4
- data/lib/merge_ruby_client/ticketing/types/comment_request_contact.rb +3 -1
- data/lib/merge_ruby_client/ticketing/types/comment_request_user.rb +3 -1
- data/lib/merge_ruby_client/ticketing/types/comment_user.rb +3 -1
- data/lib/merge_ruby_client/ticketing/types/contact.rb +6 -2
- data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +11 -0
- data/lib/merge_ruby_client/ticketing/types/field_mapping_api_instance_remote_field.rb +8 -6
- data/lib/merge_ruby_client/ticketing/types/field_permission_deserializer.rb +14 -14
- data/lib/merge_ruby_client/ticketing/types/field_permission_deserializer_request.rb +14 -14
- data/lib/merge_ruby_client/ticketing/types/language_enum.rb +12 -0
- data/lib/merge_ruby_client/ticketing/types/paginated_viewer_list.rb +80 -0
- data/lib/merge_ruby_client/ticketing/types/patched_ticket_request.rb +27 -7
- data/lib/merge_ruby_client/ticketing/types/project.rb +6 -2
- data/lib/merge_ruby_client/ticketing/types/remote_data.rb +8 -2
- data/lib/merge_ruby_client/ticketing/types/remote_field_api.rb +3 -3
- data/lib/merge_ruby_client/ticketing/types/role.rb +6 -2
- data/lib/merge_ruby_client/ticketing/types/tag.rb +16 -4
- data/lib/merge_ruby_client/ticketing/types/team.rb +8 -4
- data/lib/merge_ruby_client/ticketing/types/ticket.rb +38 -8
- data/lib/merge_ruby_client/ticketing/types/ticket_assigned_teams_item.rb +55 -0
- data/lib/merge_ruby_client/ticketing/types/ticket_request.rb +31 -7
- data/lib/merge_ruby_client/ticketing/types/ticket_request_assigned_teams_item.rb +55 -0
- data/lib/merge_ruby_client/ticketing/types/user.rb +10 -3
- data/lib/merge_ruby_client/ticketing/types/viewer.rb +123 -0
- data/lib/merge_ruby_client/ticketing/types/viewer_team.rb +56 -0
- data/lib/merge_ruby_client/ticketing/types/viewer_user.rb +56 -0
- data/lib/merge_ruby_client/ticketing/users/client.rb +16 -4
- data/lib/merge_ruby_client.rb +7 -7
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +248 -122
- metadata +141 -10
- data/lib/merge_ruby_client/ticketing/collections/types/collections_users_list_request_expand.rb +0 -13
- data/lib/merge_ruby_client/ticketing/tickets/types/tickets_collaborators_list_request_expand.rb +0 -13
- data/lib/merge_ruby_client/ticketing/tickets/types/tickets_list_request_status.rb +0 -14
@@ -3,13 +3,15 @@
|
|
3
3
|
require_relative "invoice_type_enum"
|
4
4
|
require_relative "invoice_request_contact"
|
5
5
|
require "date"
|
6
|
+
require_relative "invoice_request_employee"
|
6
7
|
require_relative "invoice_status_enum"
|
7
8
|
require_relative "invoice_request_company"
|
8
|
-
require_relative "
|
9
|
+
require_relative "transaction_currency_enum"
|
9
10
|
require_relative "invoice_request_payments_item"
|
10
11
|
require_relative "invoice_request_tracking_categories_item"
|
11
12
|
require_relative "invoice_line_item_request"
|
12
13
|
require_relative "invoice_request_purchase_orders_item"
|
14
|
+
require_relative "remote_field_request"
|
13
15
|
require "ostruct"
|
14
16
|
require "json"
|
15
17
|
|
@@ -17,10 +19,10 @@ module Merge
|
|
17
19
|
module Accounting
|
18
20
|
# # The Invoice Object
|
19
21
|
# ### Description
|
20
|
-
# The `Invoice` object represents an itemized record of goods and/or services
|
21
|
-
#
|
22
|
-
#
|
23
|
-
#
|
22
|
+
# The `Invoice` object represents an itemized record of goods and/or services sold
|
23
|
+
# to a customer or bought from a vendor.
|
24
|
+
# Represents a Bill when the `Invoice` type is `ACCOUNTS_PAYABLE`. References an
|
25
|
+
# Invoice when the `Invoice` type is `ACCOUNTS_RECEIVABLE`.
|
24
26
|
# ### Usage Example
|
25
27
|
# Fetch from the `LIST Invoices` endpoint and view a company's invoices.
|
26
28
|
class InvoiceRequest
|
@@ -40,6 +42,8 @@ module Merge
|
|
40
42
|
attr_reader :due_date
|
41
43
|
# @return [DateTime] The invoice's paid date.
|
42
44
|
attr_reader :paid_on_date
|
45
|
+
# @return [Merge::Accounting::InvoiceRequestEmployee] The employee this overall transaction relates to.
|
46
|
+
attr_reader :employee
|
43
47
|
# @return [String] The invoice's private note.
|
44
48
|
attr_reader :memo
|
45
49
|
# @return [Merge::Accounting::InvoiceStatusEnum] The status of the invoice.
|
@@ -52,7 +56,7 @@ module Merge
|
|
52
56
|
attr_reader :status
|
53
57
|
# @return [Merge::Accounting::InvoiceRequestCompany] The company the invoice belongs to.
|
54
58
|
attr_reader :company
|
55
|
-
# @return [Merge::Accounting::
|
59
|
+
# @return [Merge::Accounting::TransactionCurrencyEnum] The invoice's currency.
|
56
60
|
# - `XUA` - ADB Unit of Account
|
57
61
|
# - `AFN` - Afghan Afghani
|
58
62
|
# - `AFA` - Afghan Afghani (1927–2002)
|
@@ -368,6 +372,9 @@ module Merge
|
|
368
372
|
attr_reader :sub_total
|
369
373
|
# @return [Float] The total amount being paid in taxes.
|
370
374
|
attr_reader :total_tax_amount
|
375
|
+
# @return [Boolean] If the transaction is inclusive or exclusive of tax. `True` if inclusive,
|
376
|
+
# `False` if exclusive.
|
377
|
+
attr_reader :inclusive_of_tax
|
371
378
|
# @return [Float] The invoice's total amount.
|
372
379
|
attr_reader :total_amount
|
373
380
|
# @return [Float] The invoice's remaining balance.
|
@@ -384,6 +391,8 @@ module Merge
|
|
384
391
|
attr_reader :integration_params
|
385
392
|
# @return [Hash{String => Object}]
|
386
393
|
attr_reader :linked_account_params
|
394
|
+
# @return [Array<Merge::Accounting::RemoteFieldRequest>]
|
395
|
+
attr_reader :remote_fields
|
387
396
|
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
388
397
|
attr_reader :additional_properties
|
389
398
|
# @return [Object]
|
@@ -402,6 +411,7 @@ module Merge
|
|
402
411
|
# @param issue_date [DateTime] The invoice's issue date.
|
403
412
|
# @param due_date [DateTime] The invoice's due date.
|
404
413
|
# @param paid_on_date [DateTime] The invoice's paid date.
|
414
|
+
# @param employee [Merge::Accounting::InvoiceRequestEmployee] The employee this overall transaction relates to.
|
405
415
|
# @param memo [String] The invoice's private note.
|
406
416
|
# @param status [Merge::Accounting::InvoiceStatusEnum] The status of the invoice.
|
407
417
|
# - `PAID` - PAID
|
@@ -411,7 +421,7 @@ module Merge
|
|
411
421
|
# - `OPEN` - OPEN
|
412
422
|
# - `VOID` - VOID
|
413
423
|
# @param company [Merge::Accounting::InvoiceRequestCompany] The company the invoice belongs to.
|
414
|
-
# @param currency [Merge::Accounting::
|
424
|
+
# @param currency [Merge::Accounting::TransactionCurrencyEnum] The invoice's currency.
|
415
425
|
# - `XUA` - ADB Unit of Account
|
416
426
|
# - `AFN` - Afghan Afghani
|
417
427
|
# - `AFA` - Afghan Afghani (1927–2002)
|
@@ -722,6 +732,8 @@ module Merge
|
|
722
732
|
# @param total_discount [Float] The total discounts applied to the total cost.
|
723
733
|
# @param sub_total [Float] The total amount being paid before taxes.
|
724
734
|
# @param total_tax_amount [Float] The total amount being paid in taxes.
|
735
|
+
# @param inclusive_of_tax [Boolean] If the transaction is inclusive or exclusive of tax. `True` if inclusive,
|
736
|
+
# `False` if exclusive.
|
725
737
|
# @param total_amount [Float] The invoice's total amount.
|
726
738
|
# @param balance [Float] The invoice's remaining balance.
|
727
739
|
# @param payments [Array<Merge::Accounting::InvoiceRequestPaymentsItem>] Array of `Payment` object IDs.
|
@@ -730,16 +742,18 @@ module Merge
|
|
730
742
|
# @param purchase_orders [Array<Merge::Accounting::InvoiceRequestPurchaseOrdersItem>]
|
731
743
|
# @param integration_params [Hash{String => Object}]
|
732
744
|
# @param linked_account_params [Hash{String => Object}]
|
745
|
+
# @param remote_fields [Array<Merge::Accounting::RemoteFieldRequest>]
|
733
746
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
734
747
|
# @return [Merge::Accounting::InvoiceRequest]
|
735
748
|
def initialize(type: OMIT, contact: OMIT, number: OMIT, issue_date: OMIT, due_date: OMIT, paid_on_date: OMIT,
|
736
|
-
memo: OMIT, status: OMIT, company: OMIT, currency: OMIT, exchange_rate: OMIT, total_discount: OMIT, sub_total: OMIT, total_tax_amount: OMIT, total_amount: OMIT, balance: OMIT, payments: OMIT, tracking_categories: OMIT, line_items: OMIT, purchase_orders: OMIT, integration_params: OMIT, linked_account_params: OMIT, additional_properties: nil)
|
749
|
+
employee: OMIT, memo: OMIT, status: OMIT, company: OMIT, currency: OMIT, exchange_rate: OMIT, total_discount: OMIT, sub_total: OMIT, total_tax_amount: OMIT, inclusive_of_tax: OMIT, total_amount: OMIT, balance: OMIT, payments: OMIT, tracking_categories: OMIT, line_items: OMIT, purchase_orders: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil)
|
737
750
|
@type = type if type != OMIT
|
738
751
|
@contact = contact if contact != OMIT
|
739
752
|
@number = number if number != OMIT
|
740
753
|
@issue_date = issue_date if issue_date != OMIT
|
741
754
|
@due_date = due_date if due_date != OMIT
|
742
755
|
@paid_on_date = paid_on_date if paid_on_date != OMIT
|
756
|
+
@employee = employee if employee != OMIT
|
743
757
|
@memo = memo if memo != OMIT
|
744
758
|
@status = status if status != OMIT
|
745
759
|
@company = company if company != OMIT
|
@@ -748,6 +762,7 @@ module Merge
|
|
748
762
|
@total_discount = total_discount if total_discount != OMIT
|
749
763
|
@sub_total = sub_total if sub_total != OMIT
|
750
764
|
@total_tax_amount = total_tax_amount if total_tax_amount != OMIT
|
765
|
+
@inclusive_of_tax = inclusive_of_tax if inclusive_of_tax != OMIT
|
751
766
|
@total_amount = total_amount if total_amount != OMIT
|
752
767
|
@balance = balance if balance != OMIT
|
753
768
|
@payments = payments if payments != OMIT
|
@@ -756,6 +771,7 @@ module Merge
|
|
756
771
|
@purchase_orders = purchase_orders if purchase_orders != OMIT
|
757
772
|
@integration_params = integration_params if integration_params != OMIT
|
758
773
|
@linked_account_params = linked_account_params if linked_account_params != OMIT
|
774
|
+
@remote_fields = remote_fields if remote_fields != OMIT
|
759
775
|
@additional_properties = additional_properties
|
760
776
|
@_field_set = {
|
761
777
|
"type": type,
|
@@ -764,6 +780,7 @@ module Merge
|
|
764
780
|
"issue_date": issue_date,
|
765
781
|
"due_date": due_date,
|
766
782
|
"paid_on_date": paid_on_date,
|
783
|
+
"employee": employee,
|
767
784
|
"memo": memo,
|
768
785
|
"status": status,
|
769
786
|
"company": company,
|
@@ -772,6 +789,7 @@ module Merge
|
|
772
789
|
"total_discount": total_discount,
|
773
790
|
"sub_total": sub_total,
|
774
791
|
"total_tax_amount": total_tax_amount,
|
792
|
+
"inclusive_of_tax": inclusive_of_tax,
|
775
793
|
"total_amount": total_amount,
|
776
794
|
"balance": balance,
|
777
795
|
"payments": payments,
|
@@ -779,7 +797,8 @@ module Merge
|
|
779
797
|
"line_items": line_items,
|
780
798
|
"purchase_orders": purchase_orders,
|
781
799
|
"integration_params": integration_params,
|
782
|
-
"linked_account_params": linked_account_params
|
800
|
+
"linked_account_params": linked_account_params,
|
801
|
+
"remote_fields": remote_fields
|
783
802
|
}.reject do |_k, v|
|
784
803
|
v == OMIT
|
785
804
|
end
|
@@ -803,6 +822,12 @@ module Merge
|
|
803
822
|
issue_date = (DateTime.parse(parsed_json["issue_date"]) unless parsed_json["issue_date"].nil?)
|
804
823
|
due_date = (DateTime.parse(parsed_json["due_date"]) unless parsed_json["due_date"].nil?)
|
805
824
|
paid_on_date = (DateTime.parse(parsed_json["paid_on_date"]) unless parsed_json["paid_on_date"].nil?)
|
825
|
+
if parsed_json["employee"].nil?
|
826
|
+
employee = nil
|
827
|
+
else
|
828
|
+
employee = parsed_json["employee"].to_json
|
829
|
+
employee = Merge::Accounting::InvoiceRequestEmployee.from_json(json_object: employee)
|
830
|
+
end
|
806
831
|
memo = parsed_json["memo"]
|
807
832
|
status = parsed_json["status"]
|
808
833
|
if parsed_json["company"].nil?
|
@@ -816,6 +841,7 @@ module Merge
|
|
816
841
|
total_discount = parsed_json["total_discount"]
|
817
842
|
sub_total = parsed_json["sub_total"]
|
818
843
|
total_tax_amount = parsed_json["total_tax_amount"]
|
844
|
+
inclusive_of_tax = parsed_json["inclusive_of_tax"]
|
819
845
|
total_amount = parsed_json["total_amount"]
|
820
846
|
balance = parsed_json["balance"]
|
821
847
|
payments = parsed_json["payments"]&.map do |item|
|
@@ -836,6 +862,10 @@ module Merge
|
|
836
862
|
end
|
837
863
|
integration_params = parsed_json["integration_params"]
|
838
864
|
linked_account_params = parsed_json["linked_account_params"]
|
865
|
+
remote_fields = parsed_json["remote_fields"]&.map do |item|
|
866
|
+
item = item.to_json
|
867
|
+
Merge::Accounting::RemoteFieldRequest.from_json(json_object: item)
|
868
|
+
end
|
839
869
|
new(
|
840
870
|
type: type,
|
841
871
|
contact: contact,
|
@@ -843,6 +873,7 @@ module Merge
|
|
843
873
|
issue_date: issue_date,
|
844
874
|
due_date: due_date,
|
845
875
|
paid_on_date: paid_on_date,
|
876
|
+
employee: employee,
|
846
877
|
memo: memo,
|
847
878
|
status: status,
|
848
879
|
company: company,
|
@@ -851,6 +882,7 @@ module Merge
|
|
851
882
|
total_discount: total_discount,
|
852
883
|
sub_total: sub_total,
|
853
884
|
total_tax_amount: total_tax_amount,
|
885
|
+
inclusive_of_tax: inclusive_of_tax,
|
854
886
|
total_amount: total_amount,
|
855
887
|
balance: balance,
|
856
888
|
payments: payments,
|
@@ -859,6 +891,7 @@ module Merge
|
|
859
891
|
purchase_orders: purchase_orders,
|
860
892
|
integration_params: integration_params,
|
861
893
|
linked_account_params: linked_account_params,
|
894
|
+
remote_fields: remote_fields,
|
862
895
|
additional_properties: struct
|
863
896
|
)
|
864
897
|
end
|
@@ -883,14 +916,16 @@ module Merge
|
|
883
916
|
obj.issue_date&.is_a?(DateTime) != false || raise("Passed value for field obj.issue_date is not the expected type, validation failed.")
|
884
917
|
obj.due_date&.is_a?(DateTime) != false || raise("Passed value for field obj.due_date is not the expected type, validation failed.")
|
885
918
|
obj.paid_on_date&.is_a?(DateTime) != false || raise("Passed value for field obj.paid_on_date is not the expected type, validation failed.")
|
919
|
+
obj.employee.nil? || Merge::Accounting::InvoiceRequestEmployee.validate_raw(obj: obj.employee)
|
886
920
|
obj.memo&.is_a?(String) != false || raise("Passed value for field obj.memo is not the expected type, validation failed.")
|
887
921
|
obj.status&.is_a?(Merge::Accounting::InvoiceStatusEnum) != false || raise("Passed value for field obj.status is not the expected type, validation failed.")
|
888
922
|
obj.company.nil? || Merge::Accounting::InvoiceRequestCompany.validate_raw(obj: obj.company)
|
889
|
-
obj.currency&.is_a?(Merge::Accounting::
|
923
|
+
obj.currency&.is_a?(Merge::Accounting::TransactionCurrencyEnum) != false || raise("Passed value for field obj.currency is not the expected type, validation failed.")
|
890
924
|
obj.exchange_rate&.is_a?(String) != false || raise("Passed value for field obj.exchange_rate is not the expected type, validation failed.")
|
891
925
|
obj.total_discount&.is_a?(Float) != false || raise("Passed value for field obj.total_discount is not the expected type, validation failed.")
|
892
926
|
obj.sub_total&.is_a?(Float) != false || raise("Passed value for field obj.sub_total is not the expected type, validation failed.")
|
893
927
|
obj.total_tax_amount&.is_a?(Float) != false || raise("Passed value for field obj.total_tax_amount is not the expected type, validation failed.")
|
928
|
+
obj.inclusive_of_tax&.is_a?(Boolean) != false || raise("Passed value for field obj.inclusive_of_tax is not the expected type, validation failed.")
|
894
929
|
obj.total_amount&.is_a?(Float) != false || raise("Passed value for field obj.total_amount is not the expected type, validation failed.")
|
895
930
|
obj.balance&.is_a?(Float) != false || raise("Passed value for field obj.balance is not the expected type, validation failed.")
|
896
931
|
obj.payments&.is_a?(Array) != false || raise("Passed value for field obj.payments is not the expected type, validation failed.")
|
@@ -899,6 +934,7 @@ module Merge
|
|
899
934
|
obj.purchase_orders&.is_a?(Array) != false || raise("Passed value for field obj.purchase_orders is not the expected type, validation failed.")
|
900
935
|
obj.integration_params&.is_a?(Hash) != false || raise("Passed value for field obj.integration_params is not the expected type, validation failed.")
|
901
936
|
obj.linked_account_params&.is_a?(Hash) != false || raise("Passed value for field obj.linked_account_params is not the expected type, validation failed.")
|
937
|
+
obj.remote_fields&.is_a?(Array) != false || raise("Passed value for field obj.remote_fields is not the expected type, validation failed.")
|
902
938
|
end
|
903
939
|
end
|
904
940
|
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "employee"
|
5
|
+
|
6
|
+
module Merge
|
7
|
+
module Accounting
|
8
|
+
# The employee this overall transaction relates to.
|
9
|
+
class InvoiceRequestEmployee
|
10
|
+
# Deserialize a JSON object to an instance of InvoiceRequestEmployee
|
11
|
+
#
|
12
|
+
# @param json_object [String]
|
13
|
+
# @return [Merge::Accounting::InvoiceRequestEmployee]
|
14
|
+
def self.from_json(json_object:)
|
15
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
16
|
+
begin
|
17
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
18
|
+
return struct unless struct.nil?
|
19
|
+
|
20
|
+
return nil
|
21
|
+
rescue StandardError
|
22
|
+
# noop
|
23
|
+
end
|
24
|
+
begin
|
25
|
+
Merge::Accounting::Employee.validate_raw(obj: struct)
|
26
|
+
return Merge::Accounting::Employee.from_json(json_object: struct) unless struct.nil?
|
27
|
+
|
28
|
+
return nil
|
29
|
+
rescue StandardError
|
30
|
+
# noop
|
31
|
+
end
|
32
|
+
struct
|
33
|
+
end
|
34
|
+
|
35
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
36
|
+
# hash and check each fields type against the current object's property
|
37
|
+
# definitions.
|
38
|
+
#
|
39
|
+
# @param obj [Object]
|
40
|
+
# @return [Void]
|
41
|
+
def self.validate_raw(obj:)
|
42
|
+
begin
|
43
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
44
|
+
rescue StandardError
|
45
|
+
# noop
|
46
|
+
end
|
47
|
+
begin
|
48
|
+
return Merge::Accounting::Employee.validate_raw(obj: obj)
|
49
|
+
rescue StandardError
|
50
|
+
# noop
|
51
|
+
end
|
52
|
+
raise("Passed value matched no type within the union, validation failed.")
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -5,6 +5,8 @@ require_relative "status_7_d_1_enum"
|
|
5
5
|
require_relative "item_purchase_account"
|
6
6
|
require_relative "item_sales_account"
|
7
7
|
require_relative "item_company"
|
8
|
+
require_relative "item_purchase_tax_rate"
|
9
|
+
require_relative "item_sales_tax_rate"
|
8
10
|
require_relative "remote_data"
|
9
11
|
require "ostruct"
|
10
12
|
require "json"
|
@@ -41,10 +43,16 @@ module Merge
|
|
41
43
|
attr_reader :sales_account
|
42
44
|
# @return [Merge::Accounting::ItemCompany] The company the item belongs to.
|
43
45
|
attr_reader :company
|
46
|
+
# @return [Merge::Accounting::ItemPurchaseTaxRate] The default purchase tax rate for this item.
|
47
|
+
attr_reader :purchase_tax_rate
|
48
|
+
# @return [Merge::Accounting::ItemSalesTaxRate] The default sales tax rate for this item.
|
49
|
+
attr_reader :sales_tax_rate
|
44
50
|
# @return [DateTime] When the third party's item note was updated.
|
45
51
|
attr_reader :remote_updated_at
|
46
52
|
# @return [Boolean] Indicates whether or not this object has been deleted in the third party
|
47
|
-
# platform.
|
53
|
+
# platform. Full coverage deletion detection is a premium add-on. Native deletion
|
54
|
+
# detection is offered for free with limited coverage. [Learn
|
55
|
+
# more](https://docs.merge.dev/integrations/hris/supported-features/).
|
48
56
|
attr_reader :remote_was_deleted
|
49
57
|
# @return [Hash{String => Object}]
|
50
58
|
attr_reader :field_mappings
|
@@ -71,15 +79,19 @@ module Merge
|
|
71
79
|
# @param purchase_account [Merge::Accounting::ItemPurchaseAccount] References the default account used to record a purchase of the item.
|
72
80
|
# @param sales_account [Merge::Accounting::ItemSalesAccount] References the default account used to record a sale.
|
73
81
|
# @param company [Merge::Accounting::ItemCompany] The company the item belongs to.
|
82
|
+
# @param purchase_tax_rate [Merge::Accounting::ItemPurchaseTaxRate] The default purchase tax rate for this item.
|
83
|
+
# @param sales_tax_rate [Merge::Accounting::ItemSalesTaxRate] The default sales tax rate for this item.
|
74
84
|
# @param remote_updated_at [DateTime] When the third party's item note was updated.
|
75
85
|
# @param remote_was_deleted [Boolean] Indicates whether or not this object has been deleted in the third party
|
76
|
-
# platform.
|
86
|
+
# platform. Full coverage deletion detection is a premium add-on. Native deletion
|
87
|
+
# detection is offered for free with limited coverage. [Learn
|
88
|
+
# more](https://docs.merge.dev/integrations/hris/supported-features/).
|
77
89
|
# @param field_mappings [Hash{String => Object}]
|
78
90
|
# @param remote_data [Array<Merge::Accounting::RemoteData>]
|
79
91
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
80
92
|
# @return [Merge::Accounting::Item]
|
81
93
|
def initialize(id: OMIT, remote_id: OMIT, created_at: OMIT, modified_at: OMIT, name: OMIT, status: OMIT,
|
82
|
-
unit_price: OMIT, purchase_price: OMIT, purchase_account: OMIT, sales_account: OMIT, company: OMIT, remote_updated_at: OMIT, remote_was_deleted: OMIT, field_mappings: OMIT, remote_data: OMIT, additional_properties: nil)
|
94
|
+
unit_price: OMIT, purchase_price: OMIT, purchase_account: OMIT, sales_account: OMIT, company: OMIT, purchase_tax_rate: OMIT, sales_tax_rate: OMIT, remote_updated_at: OMIT, remote_was_deleted: OMIT, field_mappings: OMIT, remote_data: OMIT, additional_properties: nil)
|
83
95
|
@id = id if id != OMIT
|
84
96
|
@remote_id = remote_id if remote_id != OMIT
|
85
97
|
@created_at = created_at if created_at != OMIT
|
@@ -91,6 +103,8 @@ module Merge
|
|
91
103
|
@purchase_account = purchase_account if purchase_account != OMIT
|
92
104
|
@sales_account = sales_account if sales_account != OMIT
|
93
105
|
@company = company if company != OMIT
|
106
|
+
@purchase_tax_rate = purchase_tax_rate if purchase_tax_rate != OMIT
|
107
|
+
@sales_tax_rate = sales_tax_rate if sales_tax_rate != OMIT
|
94
108
|
@remote_updated_at = remote_updated_at if remote_updated_at != OMIT
|
95
109
|
@remote_was_deleted = remote_was_deleted if remote_was_deleted != OMIT
|
96
110
|
@field_mappings = field_mappings if field_mappings != OMIT
|
@@ -108,6 +122,8 @@ module Merge
|
|
108
122
|
"purchase_account": purchase_account,
|
109
123
|
"sales_account": sales_account,
|
110
124
|
"company": company,
|
125
|
+
"purchase_tax_rate": purchase_tax_rate,
|
126
|
+
"sales_tax_rate": sales_tax_rate,
|
111
127
|
"remote_updated_at": remote_updated_at,
|
112
128
|
"remote_was_deleted": remote_was_deleted,
|
113
129
|
"field_mappings": field_mappings,
|
@@ -150,6 +166,18 @@ module Merge
|
|
150
166
|
company = parsed_json["company"].to_json
|
151
167
|
company = Merge::Accounting::ItemCompany.from_json(json_object: company)
|
152
168
|
end
|
169
|
+
if parsed_json["purchase_tax_rate"].nil?
|
170
|
+
purchase_tax_rate = nil
|
171
|
+
else
|
172
|
+
purchase_tax_rate = parsed_json["purchase_tax_rate"].to_json
|
173
|
+
purchase_tax_rate = Merge::Accounting::ItemPurchaseTaxRate.from_json(json_object: purchase_tax_rate)
|
174
|
+
end
|
175
|
+
if parsed_json["sales_tax_rate"].nil?
|
176
|
+
sales_tax_rate = nil
|
177
|
+
else
|
178
|
+
sales_tax_rate = parsed_json["sales_tax_rate"].to_json
|
179
|
+
sales_tax_rate = Merge::Accounting::ItemSalesTaxRate.from_json(json_object: sales_tax_rate)
|
180
|
+
end
|
153
181
|
remote_updated_at = unless parsed_json["remote_updated_at"].nil?
|
154
182
|
DateTime.parse(parsed_json["remote_updated_at"])
|
155
183
|
end
|
@@ -171,6 +199,8 @@ module Merge
|
|
171
199
|
purchase_account: purchase_account,
|
172
200
|
sales_account: sales_account,
|
173
201
|
company: company,
|
202
|
+
purchase_tax_rate: purchase_tax_rate,
|
203
|
+
sales_tax_rate: sales_tax_rate,
|
174
204
|
remote_updated_at: remote_updated_at,
|
175
205
|
remote_was_deleted: remote_was_deleted,
|
176
206
|
field_mappings: field_mappings,
|
@@ -204,6 +234,8 @@ module Merge
|
|
204
234
|
obj.purchase_account.nil? || Merge::Accounting::ItemPurchaseAccount.validate_raw(obj: obj.purchase_account)
|
205
235
|
obj.sales_account.nil? || Merge::Accounting::ItemSalesAccount.validate_raw(obj: obj.sales_account)
|
206
236
|
obj.company.nil? || Merge::Accounting::ItemCompany.validate_raw(obj: obj.company)
|
237
|
+
obj.purchase_tax_rate.nil? || Merge::Accounting::ItemPurchaseTaxRate.validate_raw(obj: obj.purchase_tax_rate)
|
238
|
+
obj.sales_tax_rate.nil? || Merge::Accounting::ItemSalesTaxRate.validate_raw(obj: obj.sales_tax_rate)
|
207
239
|
obj.remote_updated_at&.is_a?(DateTime) != false || raise("Passed value for field obj.remote_updated_at is not the expected type, validation failed.")
|
208
240
|
obj.remote_was_deleted&.is_a?(Boolean) != false || raise("Passed value for field obj.remote_was_deleted is not the expected type, validation failed.")
|
209
241
|
obj.field_mappings&.is_a?(Hash) != false || raise("Passed value for field obj.field_mappings is not the expected type, validation failed.")
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Merge
|
4
|
+
module Accounting
|
5
|
+
# - `string` - uuid
|
6
|
+
# - `number` - url
|
7
|
+
# - `date` - email
|
8
|
+
# - `datetime` - phone
|
9
|
+
# - `bool` - currency
|
10
|
+
# - `list` - decimal
|
11
|
+
class ItemFormatEnum
|
12
|
+
STRING = "string"
|
13
|
+
NUMBER = "number"
|
14
|
+
DATE = "date"
|
15
|
+
DATETIME = "datetime"
|
16
|
+
BOOL = "bool"
|
17
|
+
LIST = "list"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "tax_rate"
|
5
|
+
|
6
|
+
module Merge
|
7
|
+
module Accounting
|
8
|
+
# The default purchase tax rate for this item.
|
9
|
+
class ItemPurchaseTaxRate
|
10
|
+
# Deserialize a JSON object to an instance of ItemPurchaseTaxRate
|
11
|
+
#
|
12
|
+
# @param json_object [String]
|
13
|
+
# @return [Merge::Accounting::ItemPurchaseTaxRate]
|
14
|
+
def self.from_json(json_object:)
|
15
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
16
|
+
begin
|
17
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
18
|
+
return struct unless struct.nil?
|
19
|
+
|
20
|
+
return nil
|
21
|
+
rescue StandardError
|
22
|
+
# noop
|
23
|
+
end
|
24
|
+
begin
|
25
|
+
Merge::Accounting::TaxRate.validate_raw(obj: struct)
|
26
|
+
return Merge::Accounting::TaxRate.from_json(json_object: struct) unless struct.nil?
|
27
|
+
|
28
|
+
return nil
|
29
|
+
rescue StandardError
|
30
|
+
# noop
|
31
|
+
end
|
32
|
+
struct
|
33
|
+
end
|
34
|
+
|
35
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
36
|
+
# hash and check each fields type against the current object's property
|
37
|
+
# definitions.
|
38
|
+
#
|
39
|
+
# @param obj [Object]
|
40
|
+
# @return [Void]
|
41
|
+
def self.validate_raw(obj:)
|
42
|
+
begin
|
43
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
44
|
+
rescue StandardError
|
45
|
+
# noop
|
46
|
+
end
|
47
|
+
begin
|
48
|
+
return Merge::Accounting::TaxRate.validate_raw(obj: obj)
|
49
|
+
rescue StandardError
|
50
|
+
# noop
|
51
|
+
end
|
52
|
+
raise("Passed value matched no type within the union, validation failed.")
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "json"
|
4
|
+
require_relative "tax_rate"
|
5
|
+
|
6
|
+
module Merge
|
7
|
+
module Accounting
|
8
|
+
# The default sales tax rate for this item.
|
9
|
+
class ItemSalesTaxRate
|
10
|
+
# Deserialize a JSON object to an instance of ItemSalesTaxRate
|
11
|
+
#
|
12
|
+
# @param json_object [String]
|
13
|
+
# @return [Merge::Accounting::ItemSalesTaxRate]
|
14
|
+
def self.from_json(json_object:)
|
15
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
16
|
+
begin
|
17
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
18
|
+
return struct unless struct.nil?
|
19
|
+
|
20
|
+
return nil
|
21
|
+
rescue StandardError
|
22
|
+
# noop
|
23
|
+
end
|
24
|
+
begin
|
25
|
+
Merge::Accounting::TaxRate.validate_raw(obj: struct)
|
26
|
+
return Merge::Accounting::TaxRate.from_json(json_object: struct) unless struct.nil?
|
27
|
+
|
28
|
+
return nil
|
29
|
+
rescue StandardError
|
30
|
+
# noop
|
31
|
+
end
|
32
|
+
struct
|
33
|
+
end
|
34
|
+
|
35
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
36
|
+
# hash and check each fields type against the current object's property
|
37
|
+
# definitions.
|
38
|
+
#
|
39
|
+
# @param obj [Object]
|
40
|
+
# @return [Void]
|
41
|
+
def self.validate_raw(obj:)
|
42
|
+
begin
|
43
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
44
|
+
rescue StandardError
|
45
|
+
# noop
|
46
|
+
end
|
47
|
+
begin
|
48
|
+
return Merge::Accounting::TaxRate.validate_raw(obj: obj)
|
49
|
+
rescue StandardError
|
50
|
+
# noop
|
51
|
+
end
|
52
|
+
raise("Passed value matched no type within the union, validation failed.")
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "item_type_enum"
|
4
|
+
require_relative "item_format_enum"
|
5
|
+
require "ostruct"
|
6
|
+
require "json"
|
7
|
+
|
8
|
+
module Merge
|
9
|
+
module Accounting
|
10
|
+
class ItemSchema
|
11
|
+
# @return [Merge::Accounting::ItemTypeEnum]
|
12
|
+
attr_reader :item_type
|
13
|
+
# @return [Merge::Accounting::ItemFormatEnum]
|
14
|
+
attr_reader :item_format
|
15
|
+
# @return [Array<String>]
|
16
|
+
attr_reader :item_choices
|
17
|
+
# @return [OpenStruct] Additional properties unmapped to the current class definition
|
18
|
+
attr_reader :additional_properties
|
19
|
+
# @return [Object]
|
20
|
+
attr_reader :_field_set
|
21
|
+
protected :_field_set
|
22
|
+
|
23
|
+
OMIT = Object.new
|
24
|
+
|
25
|
+
# @param item_type [Merge::Accounting::ItemTypeEnum]
|
26
|
+
# @param item_format [Merge::Accounting::ItemFormatEnum]
|
27
|
+
# @param item_choices [Array<String>]
|
28
|
+
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
29
|
+
# @return [Merge::Accounting::ItemSchema]
|
30
|
+
def initialize(item_type: OMIT, item_format: OMIT, item_choices: OMIT, additional_properties: nil)
|
31
|
+
@item_type = item_type if item_type != OMIT
|
32
|
+
@item_format = item_format if item_format != OMIT
|
33
|
+
@item_choices = item_choices if item_choices != OMIT
|
34
|
+
@additional_properties = additional_properties
|
35
|
+
@_field_set = {
|
36
|
+
"item_type": item_type,
|
37
|
+
"item_format": item_format,
|
38
|
+
"item_choices": item_choices
|
39
|
+
}.reject do |_k, v|
|
40
|
+
v == OMIT
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# Deserialize a JSON object to an instance of ItemSchema
|
45
|
+
#
|
46
|
+
# @param json_object [String]
|
47
|
+
# @return [Merge::Accounting::ItemSchema]
|
48
|
+
def self.from_json(json_object:)
|
49
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
50
|
+
parsed_json = JSON.parse(json_object)
|
51
|
+
item_type = parsed_json["item_type"]
|
52
|
+
item_format = parsed_json["item_format"]
|
53
|
+
item_choices = parsed_json["item_choices"]
|
54
|
+
new(
|
55
|
+
item_type: item_type,
|
56
|
+
item_format: item_format,
|
57
|
+
item_choices: item_choices,
|
58
|
+
additional_properties: struct
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
62
|
+
# Serialize an instance of ItemSchema to a JSON object
|
63
|
+
#
|
64
|
+
# @return [String]
|
65
|
+
def to_json(*_args)
|
66
|
+
@_field_set&.to_json
|
67
|
+
end
|
68
|
+
|
69
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
70
|
+
# hash and check each fields type against the current object's property
|
71
|
+
# definitions.
|
72
|
+
#
|
73
|
+
# @param obj [Object]
|
74
|
+
# @return [Void]
|
75
|
+
def self.validate_raw(obj:)
|
76
|
+
obj.item_type&.is_a?(Merge::Accounting::ItemTypeEnum) != false || raise("Passed value for field obj.item_type is not the expected type, validation failed.")
|
77
|
+
obj.item_format&.is_a?(Merge::Accounting::ItemFormatEnum) != false || raise("Passed value for field obj.item_format is not the expected type, validation failed.")
|
78
|
+
obj.item_choices&.is_a?(Array) != false || raise("Passed value for field obj.item_choices is not the expected type, validation failed.")
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Merge
|
4
|
+
module Accounting
|
5
|
+
# - `string` - string
|
6
|
+
# - `number` - number
|
7
|
+
# - `date` - date
|
8
|
+
# - `datetime` - datetime
|
9
|
+
# - `bool` - bool
|
10
|
+
# - `list` - list
|
11
|
+
class ItemTypeEnum
|
12
|
+
STRING = "string"
|
13
|
+
NUMBER = "number"
|
14
|
+
DATE = "date"
|
15
|
+
DATETIME = "datetime"
|
16
|
+
BOOL = "bool"
|
17
|
+
LIST = "list"
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|