merge_ruby_client 1.1.0 → 2.1.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 +2 -2
- data/lib/merge_ruby_client/accounting/accounts/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/accounting/balance_sheets/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/bank_feed_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/bank_feed_transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/cash_flow_statements/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/client.rb +14 -0
- data/lib/merge_ruby_client/accounting/company_info/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/contacts/client.rb +187 -10
- data/lib/merge_ruby_client/accounting/credit_notes/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/employees/client.rb +35 -8
- data/lib/merge_ruby_client/accounting/expense_reports/client.rb +765 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_lines_list_request_expand.rb +73 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_list_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/expense_reports/types/expense_reports_retrieve_request_expand.rb +25 -0
- data/lib/merge_ruby_client/accounting/expenses/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/general_ledger_transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/income_statements/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/invoices/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/issues/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/items/client.rb +334 -2
- data/lib/merge_ruby_client/accounting/journal_entries/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payment_methods/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payment_terms/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/payments/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/projects/client.rb +251 -0
- data/lib/merge_ruby_client/accounting/projects/types/projects_list_request_expand.rb +13 -0
- data/lib/merge_ruby_client/accounting/projects/types/projects_retrieve_request_expand.rb +13 -0
- data/lib/merge_ruby_client/accounting/purchase_orders/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/tax_rates/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/tracking_categories/client.rb +18 -10
- data/lib/merge_ruby_client/accounting/transactions/client.rb +2 -2
- data/lib/merge_ruby_client/accounting/transactions/types/transactions_list_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/transactions/types/transactions_retrieve_request_expand.rb +32 -0
- data/lib/merge_ruby_client/accounting/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/accounting/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/credit_note_line_item_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/accounting/types/expense_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/expense_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_line_request.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/expense_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report.rb +869 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line.rb +921 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_account.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request.rb +899 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_account.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_request_tax_rate.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_line_tax_rate.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request.rb +819 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_accounting_period.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_request_employee.rb +57 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/expense_report_status_enum.rb +16 -0
- data/lib/merge_ruby_client/accounting/types/external_target_field_api_response.rb +23 -1
- data/lib/merge_ruby_client/accounting/types/field_mapping_api_instance_response.rb +23 -1
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/general_ledger_transaction_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/invoice_line_item_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/item.rb +18 -1
- data/lib/merge_ruby_client/accounting/types/item_request_request.rb +202 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_purchase_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_purchase_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_sales_account.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_request_request_sales_tax_rate.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/item_response.rb +101 -0
- data/lib/merge_ruby_client/accounting/types/journal_line.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/journal_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/journal_line_request.rb +15 -1
- data/lib/merge_ruby_client/accounting/types/journal_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/paginated_expense_report_line_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_expense_report_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/paginated_project_list.rb +80 -0
- data/lib/merge_ruby_client/accounting/types/patched_contact_request.rb +188 -0
- data/lib/merge_ruby_client/accounting/types/patched_contact_request_addresses_item.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/patched_item_request_request.rb +172 -0
- data/lib/merge_ruby_client/accounting/types/project.rb +162 -0
- data/lib/merge_ruby_client/accounting/types/project_company.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/project_contact.rb +56 -0
- data/lib/merge_ruby_client/accounting/types/remote_field_api_response.rb +12 -1
- data/lib/merge_ruby_client/accounting/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/accounting/types/type_2_bb_enum.rb +16 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request.rb +29 -1
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request_contact.rb +55 -0
- data/lib/merge_ruby_client/accounting/types/vendor_credit_line_request_project.rb +55 -0
- data/lib/merge_ruby_client/accounting/vendor_credits/client.rb +2 -2
- data/lib/merge_ruby_client/ats/activities/client.rb +2 -2
- data/lib/merge_ruby_client/ats/applications/client.rb +2 -2
- data/lib/merge_ruby_client/ats/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/ats/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/ats/candidates/client.rb +2 -2
- data/lib/merge_ruby_client/ats/departments/client.rb +2 -2
- data/lib/merge_ruby_client/ats/eeocs/client.rb +2 -2
- data/lib/merge_ruby_client/ats/interviews/client.rb +2 -2
- data/lib/merge_ruby_client/ats/issues/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_interview_stages/client.rb +2 -2
- data/lib/merge_ruby_client/ats/job_postings/client.rb +2 -2
- data/lib/merge_ruby_client/ats/jobs/client.rb +4 -4
- data/lib/merge_ruby_client/ats/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ats/offers/client.rb +2 -2
- data/lib/merge_ruby_client/ats/offices/client.rb +2 -2
- data/lib/merge_ruby_client/ats/reject_reasons/client.rb +2 -2
- data/lib/merge_ruby_client/ats/scorecards/client.rb +2 -2
- data/lib/merge_ruby_client/ats/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/ats/tags/client.rb +2 -2
- data/lib/merge_ruby_client/ats/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/ats/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/ats/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ats/users/client.rb +2 -2
- data/lib/merge_ruby_client/crm/accounts/client.rb +10 -6
- data/lib/merge_ruby_client/crm/association_types/client.rb +2 -2
- data/lib/merge_ruby_client/crm/associations/client.rb +10 -2
- data/lib/merge_ruby_client/crm/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/crm/contacts/client.rb +10 -6
- data/lib/merge_ruby_client/crm/custom_object_classes/client.rb +2 -2
- data/lib/merge_ruby_client/crm/custom_objects/client.rb +14 -6
- data/lib/merge_ruby_client/crm/engagement_types/client.rb +10 -6
- data/lib/merge_ruby_client/crm/engagements/client.rb +10 -6
- data/lib/merge_ruby_client/crm/issues/client.rb +2 -2
- data/lib/merge_ruby_client/crm/leads/client.rb +10 -6
- data/lib/merge_ruby_client/crm/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/crm/notes/client.rb +10 -6
- data/lib/merge_ruby_client/crm/opportunities/client.rb +10 -6
- data/lib/merge_ruby_client/crm/stages/client.rb +10 -6
- data/lib/merge_ruby_client/crm/sync_status/client.rb +22 -8
- data/lib/merge_ruby_client/crm/tasks/client.rb +10 -6
- data/lib/merge_ruby_client/crm/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/crm/types/custom_object_request.rb +26 -3
- data/lib/merge_ruby_client/crm/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/crm/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/crm/users/client.rb +10 -6
- data/lib/merge_ruby_client/filestorage/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/filestorage/drives/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/files/client.rb +70 -16
- data/lib/merge_ruby_client/filestorage/files/types/files_download_request_meta_list_request_order_by.rb +14 -0
- data/lib/merge_ruby_client/filestorage/files/types/files_list_request_order_by.rb +14 -0
- data/lib/merge_ruby_client/filestorage/folders/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/groups/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/issues/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/filestorage/sync_status/client.rb +22 -8
- data/lib/merge_ruby_client/filestorage/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/filestorage/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/filestorage/types/download_request_meta.rb +2 -9
- data/lib/merge_ruby_client/filestorage/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/filestorage/types/file.rb +13 -1
- data/lib/merge_ruby_client/filestorage/types/file_request.rb +13 -1
- data/lib/merge_ruby_client/filestorage/users/client.rb +2 -2
- data/lib/merge_ruby_client/hris/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/hris/bank_info/client.rb +2 -2
- data/lib/merge_ruby_client/hris/benefits/client.rb +2 -2
- data/lib/merge_ruby_client/hris/companies/client.rb +2 -2
- data/lib/merge_ruby_client/hris/dependents/client.rb +8 -4
- data/lib/merge_ruby_client/hris/employee_payroll_runs/client.rb +2 -2
- data/lib/merge_ruby_client/hris/employees/client.rb +8 -4
- data/lib/merge_ruby_client/hris/employer_benefits/client.rb +2 -2
- data/lib/merge_ruby_client/hris/employments/client.rb +2 -2
- data/lib/merge_ruby_client/hris/groups/client.rb +2 -2
- data/lib/merge_ruby_client/hris/issues/client.rb +2 -2
- data/lib/merge_ruby_client/hris/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/hris/locations/client.rb +2 -2
- data/lib/merge_ruby_client/hris/pay_groups/client.rb +2 -2
- data/lib/merge_ruby_client/hris/payroll_runs/client.rb +2 -2
- data/lib/merge_ruby_client/hris/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/hris/teams/client.rb +2 -2
- data/lib/merge_ruby_client/hris/time_off/client.rb +2 -2
- data/lib/merge_ruby_client/hris/time_off_balances/client.rb +2 -2
- data/lib/merge_ruby_client/hris/timesheet_entries/client.rb +2 -2
- data/lib/merge_ruby_client/hris/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/hris/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/hris/types/benefit.rb +9 -9
- data/lib/merge_ruby_client/hris/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ticketing/accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/attachments/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/audit_trail/client.rb +8 -6
- data/lib/merge_ruby_client/ticketing/collections/client.rb +4 -4
- data/lib/merge_ruby_client/ticketing/comments/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/contacts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/issues/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/linked_accounts/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/projects/client.rb +4 -4
- data/lib/merge_ruby_client/ticketing/roles/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/sync_status/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/tags/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/teams/client.rb +2 -2
- data/lib/merge_ruby_client/ticketing/tickets/client.rb +40 -20
- data/lib/merge_ruby_client/ticketing/types/account_details_and_actions.rb +10 -2
- data/lib/merge_ruby_client/ticketing/types/audit_log_event.rb +2 -0
- data/lib/merge_ruby_client/ticketing/types/collection.rb +18 -16
- data/lib/merge_ruby_client/ticketing/types/{access_level_enum.rb → collection_access_level_enum.rb} +3 -1
- data/lib/merge_ruby_client/ticketing/types/event_type_enum.rb +2 -0
- data/lib/merge_ruby_client/ticketing/types/patched_ticket_request.rb +28 -9
- data/lib/merge_ruby_client/ticketing/types/remote_field_class.rb +9 -1
- data/lib/merge_ruby_client/ticketing/types/ticket.rb +20 -1
- data/lib/merge_ruby_client/ticketing/types/ticket_access_level_enum.rb +16 -0
- data/lib/merge_ruby_client/ticketing/types/ticket_request.rb +20 -1
- data/lib/merge_ruby_client/ticketing/users/client.rb +2 -2
- data/lib/merge_ruby_client.rb +14 -14
- data/lib/requests.rb +2 -2
- data/lib/types_export.rb +473 -409
- metadata +69 -3
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "contact"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
# The credit note's contact.
|
|
9
|
+
class CreditNoteLineItemRequestContact
|
|
10
|
+
# Deserialize a JSON object to an instance of CreditNoteLineItemRequestContact
|
|
11
|
+
#
|
|
12
|
+
# @param json_object [String]
|
|
13
|
+
# @return [Merge::Accounting::CreditNoteLineItemRequestContact]
|
|
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::Contact.validate_raw(obj: struct)
|
|
26
|
+
return Merge::Accounting::Contact.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::Contact.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,55 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "contact"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
class CreditNoteLineItemRequestProject
|
|
9
|
+
# Deserialize a JSON object to an instance of CreditNoteLineItemRequestProject
|
|
10
|
+
#
|
|
11
|
+
# @param json_object [String]
|
|
12
|
+
# @return [Merge::Accounting::CreditNoteLineItemRequestProject]
|
|
13
|
+
def self.from_json(json_object:)
|
|
14
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
15
|
+
begin
|
|
16
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
|
17
|
+
return struct unless struct.nil?
|
|
18
|
+
|
|
19
|
+
return nil
|
|
20
|
+
rescue StandardError
|
|
21
|
+
# noop
|
|
22
|
+
end
|
|
23
|
+
begin
|
|
24
|
+
Merge::Accounting::Contact.validate_raw(obj: struct)
|
|
25
|
+
return Merge::Accounting::Contact.from_json(json_object: struct) unless struct.nil?
|
|
26
|
+
|
|
27
|
+
return nil
|
|
28
|
+
rescue StandardError
|
|
29
|
+
# noop
|
|
30
|
+
end
|
|
31
|
+
struct
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
35
|
+
# hash and check each fields type against the current object's property
|
|
36
|
+
# definitions.
|
|
37
|
+
#
|
|
38
|
+
# @param obj [Object]
|
|
39
|
+
# @return [Void]
|
|
40
|
+
def self.validate_raw(obj:)
|
|
41
|
+
begin
|
|
42
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
|
43
|
+
rescue StandardError
|
|
44
|
+
# noop
|
|
45
|
+
end
|
|
46
|
+
begin
|
|
47
|
+
return Merge::Accounting::Contact.validate_raw(obj: obj)
|
|
48
|
+
rescue StandardError
|
|
49
|
+
# noop
|
|
50
|
+
end
|
|
51
|
+
raise("Passed value matched no type within the union, validation failed.")
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -7,6 +7,7 @@ module Merge
|
|
|
7
7
|
# * `CREATED_TEST_API_KEY` - CREATED_TEST_API_KEY
|
|
8
8
|
# * `DELETED_TEST_API_KEY` - DELETED_TEST_API_KEY
|
|
9
9
|
# * `REGENERATED_PRODUCTION_API_KEY` - REGENERATED_PRODUCTION_API_KEY
|
|
10
|
+
# * `REGENERATED_WEBHOOK_SIGNATURE` - REGENERATED_WEBHOOK_SIGNATURE
|
|
10
11
|
# * `INVITED_USER` - INVITED_USER
|
|
11
12
|
# * `TWO_FACTOR_AUTH_ENABLED` - TWO_FACTOR_AUTH_ENABLED
|
|
12
13
|
# * `TWO_FACTOR_AUTH_DISABLED` - TWO_FACTOR_AUTH_DISABLED
|
|
@@ -61,6 +62,7 @@ module Merge
|
|
|
61
62
|
CREATED_TEST_API_KEY = "CREATED_TEST_API_KEY"
|
|
62
63
|
DELETED_TEST_API_KEY = "DELETED_TEST_API_KEY"
|
|
63
64
|
REGENERATED_PRODUCTION_API_KEY = "REGENERATED_PRODUCTION_API_KEY"
|
|
65
|
+
REGENERATED_WEBHOOK_SIGNATURE = "REGENERATED_WEBHOOK_SIGNATURE"
|
|
64
66
|
INVITED_USER = "INVITED_USER"
|
|
65
67
|
TWO_FACTOR_AUTH_ENABLED = "TWO_FACTOR_AUTH_ENABLED"
|
|
66
68
|
TWO_FACTOR_AUTH_DISABLED = "TWO_FACTOR_AUTH_DISABLED"
|
|
@@ -8,6 +8,7 @@ require_relative "expense_line_employee"
|
|
|
8
8
|
require_relative "transaction_currency_enum"
|
|
9
9
|
require_relative "expense_line_account"
|
|
10
10
|
require_relative "expense_line_contact"
|
|
11
|
+
require_relative "expense_line_project"
|
|
11
12
|
require "ostruct"
|
|
12
13
|
require "json"
|
|
13
14
|
|
|
@@ -351,6 +352,8 @@ module Merge
|
|
|
351
352
|
attr_reader :account
|
|
352
353
|
# @return [Merge::Accounting::ExpenseLineContact] The expense's contact.
|
|
353
354
|
attr_reader :contact
|
|
355
|
+
# @return [Merge::Accounting::ExpenseLineProject]
|
|
356
|
+
attr_reader :project
|
|
354
357
|
# @return [String] The description of the item that was purchased by the company.
|
|
355
358
|
attr_reader :description
|
|
356
359
|
# @return [String] The expense line item's exchange rate.
|
|
@@ -689,6 +692,7 @@ module Merge
|
|
|
689
692
|
# * `ZWL` - Zimbabwean Dollar (2009)
|
|
690
693
|
# @param account [Merge::Accounting::ExpenseLineAccount] The expense's payment account.
|
|
691
694
|
# @param contact [Merge::Accounting::ExpenseLineContact] The expense's contact.
|
|
695
|
+
# @param project [Merge::Accounting::ExpenseLineProject]
|
|
692
696
|
# @param description [String] The description of the item that was purchased by the company.
|
|
693
697
|
# @param exchange_rate [String] The expense line item's exchange rate.
|
|
694
698
|
# @param tax_rate [String] The tax rate that applies to this line item.
|
|
@@ -699,7 +703,7 @@ module Merge
|
|
|
699
703
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
700
704
|
# @return [Merge::Accounting::ExpenseLine]
|
|
701
705
|
def initialize(id: OMIT, remote_id: OMIT, created_at: OMIT, modified_at: OMIT, item: OMIT, net_amount: OMIT,
|
|
702
|
-
tracking_category: OMIT, tracking_categories: OMIT, company: OMIT, employee: OMIT, currency: OMIT, account: OMIT, contact: OMIT, description: OMIT, exchange_rate: OMIT, tax_rate: OMIT, remote_was_deleted: OMIT, additional_properties: nil)
|
|
706
|
+
tracking_category: OMIT, tracking_categories: OMIT, company: OMIT, employee: OMIT, currency: OMIT, account: OMIT, contact: OMIT, project: OMIT, description: OMIT, exchange_rate: OMIT, tax_rate: OMIT, remote_was_deleted: OMIT, additional_properties: nil)
|
|
703
707
|
@id = id if id != OMIT
|
|
704
708
|
@remote_id = remote_id if remote_id != OMIT
|
|
705
709
|
@created_at = created_at if created_at != OMIT
|
|
@@ -713,6 +717,7 @@ module Merge
|
|
|
713
717
|
@currency = currency if currency != OMIT
|
|
714
718
|
@account = account if account != OMIT
|
|
715
719
|
@contact = contact if contact != OMIT
|
|
720
|
+
@project = project if project != OMIT
|
|
716
721
|
@description = description if description != OMIT
|
|
717
722
|
@exchange_rate = exchange_rate if exchange_rate != OMIT
|
|
718
723
|
@tax_rate = tax_rate if tax_rate != OMIT
|
|
@@ -732,6 +737,7 @@ module Merge
|
|
|
732
737
|
"currency": currency,
|
|
733
738
|
"account": account,
|
|
734
739
|
"contact": contact,
|
|
740
|
+
"project": project,
|
|
735
741
|
"description": description,
|
|
736
742
|
"exchange_rate": exchange_rate,
|
|
737
743
|
"tax_rate": tax_rate,
|
|
@@ -789,6 +795,12 @@ module Merge
|
|
|
789
795
|
contact = parsed_json["contact"].to_json
|
|
790
796
|
contact = Merge::Accounting::ExpenseLineContact.from_json(json_object: contact)
|
|
791
797
|
end
|
|
798
|
+
if parsed_json["project"].nil?
|
|
799
|
+
project = nil
|
|
800
|
+
else
|
|
801
|
+
project = parsed_json["project"].to_json
|
|
802
|
+
project = Merge::Accounting::ExpenseLineProject.from_json(json_object: project)
|
|
803
|
+
end
|
|
792
804
|
description = parsed_json["description"]
|
|
793
805
|
exchange_rate = parsed_json["exchange_rate"]
|
|
794
806
|
tax_rate = parsed_json["tax_rate"]
|
|
@@ -807,6 +819,7 @@ module Merge
|
|
|
807
819
|
currency: currency,
|
|
808
820
|
account: account,
|
|
809
821
|
contact: contact,
|
|
822
|
+
project: project,
|
|
810
823
|
description: description,
|
|
811
824
|
exchange_rate: exchange_rate,
|
|
812
825
|
tax_rate: tax_rate,
|
|
@@ -842,6 +855,7 @@ module Merge
|
|
|
842
855
|
obj.currency&.is_a?(Merge::Accounting::TransactionCurrencyEnum) != false || raise("Passed value for field obj.currency is not the expected type, validation failed.")
|
|
843
856
|
obj.account.nil? || Merge::Accounting::ExpenseLineAccount.validate_raw(obj: obj.account)
|
|
844
857
|
obj.contact.nil? || Merge::Accounting::ExpenseLineContact.validate_raw(obj: obj.contact)
|
|
858
|
+
obj.project.nil? || Merge::Accounting::ExpenseLineProject.validate_raw(obj: obj.project)
|
|
845
859
|
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
|
846
860
|
obj.exchange_rate&.is_a?(String) != false || raise("Passed value for field obj.exchange_rate is not the expected type, validation failed.")
|
|
847
861
|
obj.tax_rate&.is_a?(String) != false || raise("Passed value for field obj.tax_rate is not the expected type, validation failed.")
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "project"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
class ExpenseLineProject
|
|
9
|
+
# Deserialize a JSON object to an instance of ExpenseLineProject
|
|
10
|
+
#
|
|
11
|
+
# @param json_object [String]
|
|
12
|
+
# @return [Merge::Accounting::ExpenseLineProject]
|
|
13
|
+
def self.from_json(json_object:)
|
|
14
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
15
|
+
begin
|
|
16
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
|
17
|
+
return struct unless struct.nil?
|
|
18
|
+
|
|
19
|
+
return nil
|
|
20
|
+
rescue StandardError
|
|
21
|
+
# noop
|
|
22
|
+
end
|
|
23
|
+
begin
|
|
24
|
+
Merge::Accounting::Project.validate_raw(obj: struct)
|
|
25
|
+
return Merge::Accounting::Project.from_json(json_object: struct) unless struct.nil?
|
|
26
|
+
|
|
27
|
+
return nil
|
|
28
|
+
rescue StandardError
|
|
29
|
+
# noop
|
|
30
|
+
end
|
|
31
|
+
struct
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
35
|
+
# hash and check each fields type against the current object's property
|
|
36
|
+
# definitions.
|
|
37
|
+
#
|
|
38
|
+
# @param obj [Object]
|
|
39
|
+
# @return [Void]
|
|
40
|
+
def self.validate_raw(obj:)
|
|
41
|
+
begin
|
|
42
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
|
43
|
+
rescue StandardError
|
|
44
|
+
# noop
|
|
45
|
+
end
|
|
46
|
+
begin
|
|
47
|
+
return Merge::Accounting::Project.validate_raw(obj: obj)
|
|
48
|
+
rescue StandardError
|
|
49
|
+
# noop
|
|
50
|
+
end
|
|
51
|
+
raise("Passed value matched no type within the union, validation failed.")
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
@@ -7,6 +7,7 @@ require_relative "expense_line_request_employee"
|
|
|
7
7
|
require_relative "transaction_currency_enum"
|
|
8
8
|
require_relative "expense_line_request_account"
|
|
9
9
|
require_relative "expense_line_request_contact"
|
|
10
|
+
require_relative "expense_line_request_project"
|
|
10
11
|
require_relative "remote_field_request"
|
|
11
12
|
require "ostruct"
|
|
12
13
|
require "json"
|
|
@@ -345,6 +346,8 @@ module Merge
|
|
|
345
346
|
attr_reader :account
|
|
346
347
|
# @return [Merge::Accounting::ExpenseLineRequestContact] The expense's contact.
|
|
347
348
|
attr_reader :contact
|
|
349
|
+
# @return [Merge::Accounting::ExpenseLineRequestProject]
|
|
350
|
+
attr_reader :project
|
|
348
351
|
# @return [String] The description of the item that was purchased by the company.
|
|
349
352
|
attr_reader :description
|
|
350
353
|
# @return [String] The expense line item's exchange rate.
|
|
@@ -681,6 +684,7 @@ module Merge
|
|
|
681
684
|
# * `ZWL` - Zimbabwean Dollar (2009)
|
|
682
685
|
# @param account [Merge::Accounting::ExpenseLineRequestAccount] The expense's payment account.
|
|
683
686
|
# @param contact [Merge::Accounting::ExpenseLineRequestContact] The expense's contact.
|
|
687
|
+
# @param project [Merge::Accounting::ExpenseLineRequestProject]
|
|
684
688
|
# @param description [String] The description of the item that was purchased by the company.
|
|
685
689
|
# @param exchange_rate [String] The expense line item's exchange rate.
|
|
686
690
|
# @param tax_rate [String] The tax rate that applies to this line item.
|
|
@@ -690,7 +694,7 @@ module Merge
|
|
|
690
694
|
# @param additional_properties [OpenStruct] Additional properties unmapped to the current class definition
|
|
691
695
|
# @return [Merge::Accounting::ExpenseLineRequest]
|
|
692
696
|
def initialize(remote_id: OMIT, item: OMIT, net_amount: OMIT, tracking_category: OMIT, tracking_categories: OMIT,
|
|
693
|
-
company: OMIT, employee: OMIT, currency: OMIT, account: OMIT, contact: OMIT, description: OMIT, exchange_rate: OMIT, tax_rate: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil)
|
|
697
|
+
company: OMIT, employee: OMIT, currency: OMIT, account: OMIT, contact: OMIT, project: OMIT, description: OMIT, exchange_rate: OMIT, tax_rate: OMIT, integration_params: OMIT, linked_account_params: OMIT, remote_fields: OMIT, additional_properties: nil)
|
|
694
698
|
@remote_id = remote_id if remote_id != OMIT
|
|
695
699
|
@item = item if item != OMIT
|
|
696
700
|
@net_amount = net_amount if net_amount != OMIT
|
|
@@ -701,6 +705,7 @@ module Merge
|
|
|
701
705
|
@currency = currency if currency != OMIT
|
|
702
706
|
@account = account if account != OMIT
|
|
703
707
|
@contact = contact if contact != OMIT
|
|
708
|
+
@project = project if project != OMIT
|
|
704
709
|
@description = description if description != OMIT
|
|
705
710
|
@exchange_rate = exchange_rate if exchange_rate != OMIT
|
|
706
711
|
@tax_rate = tax_rate if tax_rate != OMIT
|
|
@@ -719,6 +724,7 @@ module Merge
|
|
|
719
724
|
"currency": currency,
|
|
720
725
|
"account": account,
|
|
721
726
|
"contact": contact,
|
|
727
|
+
"project": project,
|
|
722
728
|
"description": description,
|
|
723
729
|
"exchange_rate": exchange_rate,
|
|
724
730
|
"tax_rate": tax_rate,
|
|
@@ -775,6 +781,12 @@ module Merge
|
|
|
775
781
|
contact = parsed_json["contact"].to_json
|
|
776
782
|
contact = Merge::Accounting::ExpenseLineRequestContact.from_json(json_object: contact)
|
|
777
783
|
end
|
|
784
|
+
if parsed_json["project"].nil?
|
|
785
|
+
project = nil
|
|
786
|
+
else
|
|
787
|
+
project = parsed_json["project"].to_json
|
|
788
|
+
project = Merge::Accounting::ExpenseLineRequestProject.from_json(json_object: project)
|
|
789
|
+
end
|
|
778
790
|
description = parsed_json["description"]
|
|
779
791
|
exchange_rate = parsed_json["exchange_rate"]
|
|
780
792
|
tax_rate = parsed_json["tax_rate"]
|
|
@@ -795,6 +807,7 @@ module Merge
|
|
|
795
807
|
currency: currency,
|
|
796
808
|
account: account,
|
|
797
809
|
contact: contact,
|
|
810
|
+
project: project,
|
|
798
811
|
description: description,
|
|
799
812
|
exchange_rate: exchange_rate,
|
|
800
813
|
tax_rate: tax_rate,
|
|
@@ -829,6 +842,7 @@ module Merge
|
|
|
829
842
|
obj.currency&.is_a?(Merge::Accounting::TransactionCurrencyEnum) != false || raise("Passed value for field obj.currency is not the expected type, validation failed.")
|
|
830
843
|
obj.account.nil? || Merge::Accounting::ExpenseLineRequestAccount.validate_raw(obj: obj.account)
|
|
831
844
|
obj.contact.nil? || Merge::Accounting::ExpenseLineRequestContact.validate_raw(obj: obj.contact)
|
|
845
|
+
obj.project.nil? || Merge::Accounting::ExpenseLineRequestProject.validate_raw(obj: obj.project)
|
|
832
846
|
obj.description&.is_a?(String) != false || raise("Passed value for field obj.description is not the expected type, validation failed.")
|
|
833
847
|
obj.exchange_rate&.is_a?(String) != false || raise("Passed value for field obj.exchange_rate is not the expected type, validation failed.")
|
|
834
848
|
obj.tax_rate&.is_a?(String) != false || raise("Passed value for field obj.tax_rate is not the expected type, validation failed.")
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "json"
|
|
4
|
+
require_relative "contact"
|
|
5
|
+
|
|
6
|
+
module Merge
|
|
7
|
+
module Accounting
|
|
8
|
+
class ExpenseLineRequestProject
|
|
9
|
+
# Deserialize a JSON object to an instance of ExpenseLineRequestProject
|
|
10
|
+
#
|
|
11
|
+
# @param json_object [String]
|
|
12
|
+
# @return [Merge::Accounting::ExpenseLineRequestProject]
|
|
13
|
+
def self.from_json(json_object:)
|
|
14
|
+
struct = JSON.parse(json_object, object_class: OpenStruct)
|
|
15
|
+
begin
|
|
16
|
+
struct.is_a?(String) != false || raise("Passed value for field struct is not the expected type, validation failed.")
|
|
17
|
+
return struct unless struct.nil?
|
|
18
|
+
|
|
19
|
+
return nil
|
|
20
|
+
rescue StandardError
|
|
21
|
+
# noop
|
|
22
|
+
end
|
|
23
|
+
begin
|
|
24
|
+
Merge::Accounting::Contact.validate_raw(obj: struct)
|
|
25
|
+
return Merge::Accounting::Contact.from_json(json_object: struct) unless struct.nil?
|
|
26
|
+
|
|
27
|
+
return nil
|
|
28
|
+
rescue StandardError
|
|
29
|
+
# noop
|
|
30
|
+
end
|
|
31
|
+
struct
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# Leveraged for Union-type generation, validate_raw attempts to parse the given
|
|
35
|
+
# hash and check each fields type against the current object's property
|
|
36
|
+
# definitions.
|
|
37
|
+
#
|
|
38
|
+
# @param obj [Object]
|
|
39
|
+
# @return [Void]
|
|
40
|
+
def self.validate_raw(obj:)
|
|
41
|
+
begin
|
|
42
|
+
return obj.is_a?(String) != false || raise("Passed value for field obj is not the expected type, validation failed.")
|
|
43
|
+
rescue StandardError
|
|
44
|
+
# noop
|
|
45
|
+
end
|
|
46
|
+
begin
|
|
47
|
+
return Merge::Accounting::Contact.validate_raw(obj: obj)
|
|
48
|
+
rescue StandardError
|
|
49
|
+
# noop
|
|
50
|
+
end
|
|
51
|
+
raise("Passed value matched no type within the union, validation failed.")
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|