xero-ruby 2.4.1 → 3.2.1
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/README.md +240 -189
- data/lib/xero-ruby.rb +10 -4
- data/lib/xero-ruby/api/accounting_api.rb +1308 -920
- data/lib/xero-ruby/api/asset_api.rb +15 -14
- data/lib/xero-ruby/api/files_api.rb +204 -85
- data/lib/xero-ruby/api/payroll_au_api.rb +121 -93
- data/lib/xero-ruby/api/payroll_nz_api.rb +307 -240
- data/lib/xero-ruby/api/payroll_uk_api.rb +317 -254
- data/lib/xero-ruby/api/project_api.rb +71 -59
- data/lib/xero-ruby/api_client.rb +182 -128
- data/lib/xero-ruby/api_error.rb +4 -4
- data/lib/xero-ruby/configuration.rb +17 -5
- data/lib/xero-ruby/models/accounting/account.rb +25 -12
- data/lib/xero-ruby/models/accounting/account_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/accounts.rb +25 -11
- data/lib/xero-ruby/models/accounting/accounts_payable.rb +25 -11
- data/lib/xero-ruby/models/accounting/accounts_receivable.rb +25 -11
- data/lib/xero-ruby/models/accounting/action.rb +25 -11
- data/lib/xero-ruby/models/accounting/actions.rb +25 -11
- data/lib/xero-ruby/models/accounting/address.rb +27 -14
- data/lib/xero-ruby/models/accounting/address_for_organisation.rb +484 -0
- data/lib/xero-ruby/models/accounting/allocation.rb +25 -11
- data/lib/xero-ruby/models/accounting/allocations.rb +25 -11
- data/lib/xero-ruby/models/accounting/attachment.rb +25 -11
- data/lib/xero-ruby/models/accounting/attachments.rb +25 -11
- data/lib/xero-ruby/models/accounting/balance_details.rb +25 -11
- data/lib/xero-ruby/models/accounting/balances.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transaction.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transactions.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transfer.rb +25 -11
- data/lib/xero-ruby/models/accounting/bank_transfers.rb +25 -11
- data/lib/xero-ruby/models/accounting/batch_payment.rb +41 -15
- data/lib/xero-ruby/models/accounting/batch_payment_details.rb +25 -11
- data/lib/xero-ruby/models/accounting/batch_payments.rb +25 -11
- data/lib/xero-ruby/models/accounting/bill.rb +25 -11
- data/lib/xero-ruby/models/accounting/branding_theme.rb +25 -11
- data/lib/xero-ruby/models/accounting/branding_themes.rb +25 -11
- data/lib/xero-ruby/models/accounting/budget.rb +327 -0
- data/lib/xero-ruby/models/accounting/budget_balance.rb +267 -0
- data/lib/xero-ruby/models/accounting/budget_line.rb +244 -0
- data/lib/xero-ruby/models/{files/file_response204.rb → accounting/budgets.rb} +40 -24
- data/lib/xero-ruby/models/accounting/cis_org_setting.rb +26 -12
- data/lib/xero-ruby/models/accounting/cis_org_settings.rb +224 -0
- data/lib/xero-ruby/models/accounting/cis_setting.rb +26 -12
- data/lib/xero-ruby/models/accounting/cis_settings.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_group.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_groups.rb +25 -11
- data/lib/xero-ruby/models/accounting/contact_person.rb +25 -11
- data/lib/xero-ruby/models/accounting/contacts.rb +25 -11
- data/lib/xero-ruby/models/accounting/conversion_balances.rb +25 -11
- data/lib/xero-ruby/models/accounting/conversion_date.rb +25 -11
- data/lib/xero-ruby/models/accounting/country_code.rb +1 -2
- data/lib/xero-ruby/models/accounting/credit_note.rb +62 -16
- data/lib/xero-ruby/models/accounting/credit_notes.rb +25 -11
- data/lib/xero-ruby/models/accounting/currencies.rb +25 -11
- data/lib/xero-ruby/models/accounting/currency.rb +25 -11
- data/lib/xero-ruby/models/accounting/currency_code.rb +1 -2
- data/lib/xero-ruby/models/accounting/element.rb +25 -11
- data/lib/xero-ruby/models/accounting/employee.rb +25 -11
- data/lib/xero-ruby/models/accounting/employees.rb +25 -11
- data/lib/xero-ruby/models/accounting/error.rb +25 -11
- data/lib/xero-ruby/models/accounting/expense_claim.rb +25 -11
- data/lib/xero-ruby/models/accounting/expense_claims.rb +25 -11
- data/lib/xero-ruby/models/accounting/external_link.rb +25 -11
- data/lib/xero-ruby/models/accounting/history_record.rb +25 -11
- data/lib/xero-ruby/models/accounting/history_records.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +33 -19
- data/lib/xero-ruby/models/accounting/import_summary_object.rb +25 -11
- data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoice.rb +37 -28
- data/lib/xero-ruby/models/accounting/invoice_reminder.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoice_reminders.rb +25 -11
- data/lib/xero-ruby/models/accounting/invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/item.rb +25 -11
- data/lib/xero-ruby/models/accounting/items.rb +25 -11
- data/lib/xero-ruby/models/accounting/journal.rb +25 -11
- data/lib/xero-ruby/models/accounting/journal_line.rb +25 -11
- data/lib/xero-ruby/models/accounting/journals.rb +25 -11
- data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -2
- data/lib/xero-ruby/models/accounting/line_item.rb +36 -12
- data/lib/xero-ruby/models/accounting/line_item_tracking.rb +25 -11
- data/lib/xero-ruby/models/accounting/linked_transaction.rb +25 -11
- data/lib/xero-ruby/models/accounting/linked_transactions.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journal.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journal_line.rb +25 -11
- data/lib/xero-ruby/models/accounting/manual_journals.rb +25 -11
- data/lib/xero-ruby/models/accounting/online_invoice.rb +25 -11
- data/lib/xero-ruby/models/accounting/online_invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/organisation.rb +26 -14
- data/lib/xero-ruby/models/accounting/organisations.rb +25 -11
- data/lib/xero-ruby/models/accounting/overpayment.rb +25 -11
- data/lib/xero-ruby/models/accounting/overpayments.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment.rb +36 -12
- data/lib/xero-ruby/models/accounting/payment_delete.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_service.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_services.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_term.rb +25 -11
- data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/payments.rb +25 -11
- data/lib/xero-ruby/models/accounting/phone.rb +25 -11
- data/lib/xero-ruby/models/accounting/prepayment.rb +38 -12
- data/lib/xero-ruby/models/accounting/prepayments.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase_order.rb +25 -11
- data/lib/xero-ruby/models/accounting/purchase_orders.rb +25 -11
- data/lib/xero-ruby/models/accounting/quote.rb +25 -11
- data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -2
- data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -2
- data/lib/xero-ruby/models/accounting/quotes.rb +25 -11
- data/lib/xero-ruby/models/accounting/receipt.rb +25 -11
- data/lib/xero-ruby/models/accounting/receipts.rb +25 -11
- data/lib/xero-ruby/models/accounting/repeating_invoice.rb +25 -11
- data/lib/xero-ruby/models/accounting/repeating_invoices.rb +25 -11
- data/lib/xero-ruby/models/accounting/report.rb +26 -22
- data/lib/xero-ruby/models/accounting/report_attribute.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_cell.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_fields.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_row.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_rows.rb +25 -11
- data/lib/xero-ruby/models/accounting/report_with_row.rb +26 -12
- data/lib/xero-ruby/models/accounting/report_with_rows.rb +25 -11
- data/lib/xero-ruby/models/accounting/reports.rb +25 -11
- data/lib/xero-ruby/models/accounting/request_empty.rb +25 -11
- data/lib/xero-ruby/models/accounting/row_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +25 -11
- data/lib/xero-ruby/models/accounting/schedule.rb +25 -11
- data/lib/xero-ruby/models/accounting/setup.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_component.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_rate.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_rates.rb +25 -11
- data/lib/xero-ruby/models/accounting/tax_type.rb +1 -2
- data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +25 -11
- data/lib/xero-ruby/models/accounting/time_zone.rb +1 -2
- data/lib/xero-ruby/models/accounting/tracking_categories.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_category.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_option.rb +25 -11
- data/lib/xero-ruby/models/accounting/tracking_options.rb +25 -11
- data/lib/xero-ruby/models/accounting/user.rb +25 -11
- data/lib/xero-ruby/models/accounting/users.rb +25 -11
- data/lib/xero-ruby/models/accounting/validation_error.rb +25 -11
- data/lib/xero-ruby/models/assets/asset.rb +25 -11
- data/lib/xero-ruby/models/assets/asset_status.rb +1 -2
- data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -2
- data/lib/xero-ruby/models/assets/asset_type.rb +25 -11
- data/lib/xero-ruby/models/assets/assets.rb +25 -11
- data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +25 -11
- data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +25 -11
- data/lib/xero-ruby/models/assets/error.rb +25 -11
- data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +26 -12
- data/lib/xero-ruby/models/assets/pagination.rb +25 -11
- data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +26 -12
- data/lib/xero-ruby/models/assets/setting.rb +25 -11
- data/lib/xero-ruby/models/files/association.rb +25 -11
- data/lib/xero-ruby/models/files/file_object.rb +25 -11
- data/lib/xero-ruby/models/files/files.rb +25 -11
- data/lib/xero-ruby/models/files/folder.rb +25 -11
- data/lib/xero-ruby/models/files/folders.rb +25 -11
- data/lib/xero-ruby/models/files/object_group.rb +1 -2
- data/lib/xero-ruby/models/files/object_type.rb +1 -2
- data/lib/xero-ruby/models/files/{inline_object.rb → upload_object.rb} +43 -14
- data/lib/xero-ruby/models/files/user.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/account.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/account_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/allowance_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/api_exception.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/bank_account.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/calendar_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/deduction_line.rb +25 -16
- data/lib/xero-ruby/models/payroll_au/deduction_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/earnings_type.rb +2 -2
- data/lib/xero-ruby/models/payroll_au/employee.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/employee_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/employees.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/employment_basis.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/home_address.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_application.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_applications.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_balance.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/leave_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_period.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/leave_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/opening_balances.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_item.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_items.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_run.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/pay_runs.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/pay_template.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/payslips.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/rate_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/residency_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/settings.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/state.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/super_fund.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/super_funds.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/super_line.rb +26 -12
- data/lib/xero-ruby/models/payroll_au/super_membership.rb +26 -12
- data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tax_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/timesheet.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +1 -2
- data/lib/xero-ruby/models/payroll_au/timesheets.rb +25 -11
- data/lib/xero-ruby/models/payroll_au/validation_error.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/account.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/accounts.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/address.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/bank_account.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/benefit.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employees.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employment.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/employment_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/leave_period.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pagination.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_method.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/problem.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +28 -13
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/superannuations.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tax_code.rb +0 -1
- data/lib/xero-ruby/models/payroll_nz/tax_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet.rb +28 -13
- data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +25 -11
- data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/timesheets.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +24 -10
- data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/account.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/accounts.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/address.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/bank_account.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/benefits.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/deductions.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +34 -12
- data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +25 -11
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employees.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employment.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/employment_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_period.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_type.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/leave_types.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pagination.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_method.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslip.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/payslips.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/problem.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +27 -12
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/settings.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +0 -1
- data/lib/xero-ruby/models/payroll_uk/tax_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet.rb +25 -11
- data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/timesheets.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +24 -10
- data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +24 -10
- data/lib/xero-ruby/models/projects/amount.rb +24 -10
- data/lib/xero-ruby/models/projects/charge_type.rb +0 -1
- data/lib/xero-ruby/models/projects/currency_code.rb +0 -1
- data/lib/xero-ruby/models/projects/error.rb +24 -10
- data/lib/xero-ruby/models/projects/pagination.rb +24 -10
- data/lib/xero-ruby/models/projects/project.rb +24 -10
- data/lib/xero-ruby/models/projects/project_create_or_update.rb +24 -10
- data/lib/xero-ruby/models/projects/project_patch.rb +24 -10
- data/lib/xero-ruby/models/projects/project_status.rb +0 -1
- data/lib/xero-ruby/models/projects/project_user.rb +24 -10
- data/lib/xero-ruby/models/projects/project_users.rb +24 -10
- data/lib/xero-ruby/models/projects/projects.rb +24 -10
- data/lib/xero-ruby/models/projects/task.rb +24 -10
- data/lib/xero-ruby/models/projects/task_create_or_update.rb +24 -10
- data/lib/xero-ruby/models/projects/tasks.rb +24 -10
- data/lib/xero-ruby/models/projects/time_entries.rb +24 -10
- data/lib/xero-ruby/models/projects/time_entry.rb +27 -12
- data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +24 -10
- data/lib/xero-ruby/string_serialization.rb +52 -0
- data/lib/xero-ruby/version.rb +3 -3
- data/lib/xero-ruby/where.rb +65 -0
- data/spec/api_client_spec.rb +292 -14
- data/spec/api_error_spec.rb +45 -0
- data/spec/configuration_spec.rb +26 -16
- data/spec/files/models/inline_object_spec.rb +3 -3
- data/spec/helper_methods_spec.rb +110 -0
- data/spec/where_spec.rb +82 -0
- metadata +43 -12
- data/spec/files/models/file_response204_spec.rb +0 -41
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -35,6 +34,9 @@ module XeroRuby::Accounting
|
|
35
34
|
# See Accounts
|
36
35
|
attr_accessor :account_code
|
37
36
|
|
37
|
+
# The associated account ID related to this line item
|
38
|
+
attr_accessor :account_id
|
39
|
+
|
38
40
|
# The tax type from TaxRates
|
39
41
|
attr_accessor :tax_type
|
40
42
|
|
@@ -65,6 +67,7 @@ module XeroRuby::Accounting
|
|
65
67
|
:'unit_amount' => :'UnitAmount',
|
66
68
|
:'item_code' => :'ItemCode',
|
67
69
|
:'account_code' => :'AccountCode',
|
70
|
+
:'account_id' => :'AccountID',
|
68
71
|
:'tax_type' => :'TaxType',
|
69
72
|
:'tax_amount' => :'TaxAmount',
|
70
73
|
:'line_amount' => :'LineAmount',
|
@@ -84,6 +87,7 @@ module XeroRuby::Accounting
|
|
84
87
|
:'unit_amount' => :'BigDecimal',
|
85
88
|
:'item_code' => :'String',
|
86
89
|
:'account_code' => :'String',
|
90
|
+
:'account_id' => :'String',
|
87
91
|
:'tax_type' => :'String',
|
88
92
|
:'tax_amount' => :'BigDecimal',
|
89
93
|
:'line_amount' => :'BigDecimal',
|
@@ -133,6 +137,10 @@ module XeroRuby::Accounting
|
|
133
137
|
self.account_code = attributes[:'account_code']
|
134
138
|
end
|
135
139
|
|
140
|
+
if attributes.key?(:'account_id')
|
141
|
+
self.account_id = attributes[:'account_id']
|
142
|
+
end
|
143
|
+
|
136
144
|
if attributes.key?(:'tax_type')
|
137
145
|
self.tax_type = attributes[:'tax_type']
|
138
146
|
end
|
@@ -188,6 +196,7 @@ module XeroRuby::Accounting
|
|
188
196
|
unit_amount == o.unit_amount &&
|
189
197
|
item_code == o.item_code &&
|
190
198
|
account_code == o.account_code &&
|
199
|
+
account_id == o.account_id &&
|
191
200
|
tax_type == o.tax_type &&
|
192
201
|
tax_amount == o.tax_amount &&
|
193
202
|
line_amount == o.line_amount &&
|
@@ -206,7 +215,7 @@ module XeroRuby::Accounting
|
|
206
215
|
# Calculates hash code according to all attributes.
|
207
216
|
# @return [Integer] Hash code
|
208
217
|
def hash
|
209
|
-
[line_item_id, description, quantity, unit_amount, item_code, account_code, tax_type, tax_amount, line_amount, tracking, discount_rate, discount_amount, repeating_invoice_id].hash
|
218
|
+
[line_item_id, description, quantity, unit_amount, item_code, account_code, account_id, tax_type, tax_amount, line_amount, tracking, discount_rate, discount_amount, repeating_invoice_id].hash
|
210
219
|
end
|
211
220
|
|
212
221
|
# Builds the object from hash
|
@@ -293,38 +302,53 @@ module XeroRuby::Accounting
|
|
293
302
|
|
294
303
|
# Returns the object in the form of hash
|
295
304
|
# @return [Hash] Returns the object in the form of hash
|
296
|
-
def to_hash
|
305
|
+
def to_hash(downcase: false)
|
297
306
|
hash = {}
|
298
307
|
self.class.attribute_map.each_pair do |attr, param|
|
299
308
|
value = self.send(attr)
|
300
309
|
next if value.nil?
|
301
|
-
|
310
|
+
key = downcase ? attr : param
|
311
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
302
312
|
end
|
303
313
|
hash
|
304
314
|
end
|
305
315
|
|
316
|
+
# Returns the object in the form of hash with snake_case
|
317
|
+
def to_attributes
|
318
|
+
to_hash(downcase: true)
|
319
|
+
end
|
320
|
+
|
306
321
|
# Outputs non-array value in the form of hash
|
307
322
|
# For object, use to_hash. Otherwise, just return the value
|
308
323
|
# @param [Object] value Any valid value
|
309
324
|
# @return [Hash] Returns the value in the form of hash
|
310
|
-
def _to_hash(value)
|
325
|
+
def _to_hash(value, downcase: false)
|
311
326
|
if value.is_a?(Array)
|
312
|
-
value.
|
327
|
+
value.map do |v|
|
328
|
+
v.to_hash(downcase: downcase)
|
329
|
+
end
|
313
330
|
elsif value.is_a?(Hash)
|
314
331
|
{}.tap do |hash|
|
315
|
-
value.
|
332
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
316
333
|
end
|
317
334
|
elsif value.respond_to? :to_hash
|
318
|
-
value.to_hash
|
335
|
+
value.to_hash(downcase: downcase)
|
319
336
|
else
|
320
337
|
value
|
321
338
|
end
|
322
339
|
end
|
323
340
|
|
324
|
-
# customized data_parser
|
325
341
|
def parse_date(datestring)
|
326
|
-
|
327
|
-
|
342
|
+
if datestring.include?('Date')
|
343
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
344
|
+
original, date, timezone = *date_pattern.match(datestring)
|
345
|
+
date = (date.to_i / 1000)
|
346
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
347
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
348
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
349
|
+
else # handle date 'types' for small subset of payroll API's
|
350
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
351
|
+
end
|
328
352
|
end
|
329
353
|
end
|
330
354
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -216,38 +215,53 @@ module XeroRuby::Accounting
|
|
216
215
|
|
217
216
|
# Returns the object in the form of hash
|
218
217
|
# @return [Hash] Returns the object in the form of hash
|
219
|
-
def to_hash
|
218
|
+
def to_hash(downcase: false)
|
220
219
|
hash = {}
|
221
220
|
self.class.attribute_map.each_pair do |attr, param|
|
222
221
|
value = self.send(attr)
|
223
222
|
next if value.nil?
|
224
|
-
|
223
|
+
key = downcase ? attr : param
|
224
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
225
225
|
end
|
226
226
|
hash
|
227
227
|
end
|
228
228
|
|
229
|
+
# Returns the object in the form of hash with snake_case
|
230
|
+
def to_attributes
|
231
|
+
to_hash(downcase: true)
|
232
|
+
end
|
233
|
+
|
229
234
|
# Outputs non-array value in the form of hash
|
230
235
|
# For object, use to_hash. Otherwise, just return the value
|
231
236
|
# @param [Object] value Any valid value
|
232
237
|
# @return [Hash] Returns the value in the form of hash
|
233
|
-
def _to_hash(value)
|
238
|
+
def _to_hash(value, downcase: false)
|
234
239
|
if value.is_a?(Array)
|
235
|
-
value.
|
240
|
+
value.map do |v|
|
241
|
+
v.to_hash(downcase: downcase)
|
242
|
+
end
|
236
243
|
elsif value.is_a?(Hash)
|
237
244
|
{}.tap do |hash|
|
238
|
-
value.
|
245
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
239
246
|
end
|
240
247
|
elsif value.respond_to? :to_hash
|
241
|
-
value.to_hash
|
248
|
+
value.to_hash(downcase: downcase)
|
242
249
|
else
|
243
250
|
value
|
244
251
|
end
|
245
252
|
end
|
246
253
|
|
247
|
-
# customized data_parser
|
248
254
|
def parse_date(datestring)
|
249
|
-
|
250
|
-
|
255
|
+
if datestring.include?('Date')
|
256
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
257
|
+
original, date, timezone = *date_pattern.match(datestring)
|
258
|
+
date = (date.to_i / 1000)
|
259
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
260
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
261
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
262
|
+
else # handle date 'types' for small subset of payroll API's
|
263
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
264
|
+
end
|
251
265
|
end
|
252
266
|
end
|
253
267
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -339,38 +338,53 @@ module XeroRuby::Accounting
|
|
339
338
|
|
340
339
|
# Returns the object in the form of hash
|
341
340
|
# @return [Hash] Returns the object in the form of hash
|
342
|
-
def to_hash
|
341
|
+
def to_hash(downcase: false)
|
343
342
|
hash = {}
|
344
343
|
self.class.attribute_map.each_pair do |attr, param|
|
345
344
|
value = self.send(attr)
|
346
345
|
next if value.nil?
|
347
|
-
|
346
|
+
key = downcase ? attr : param
|
347
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
348
348
|
end
|
349
349
|
hash
|
350
350
|
end
|
351
351
|
|
352
|
+
# Returns the object in the form of hash with snake_case
|
353
|
+
def to_attributes
|
354
|
+
to_hash(downcase: true)
|
355
|
+
end
|
356
|
+
|
352
357
|
# Outputs non-array value in the form of hash
|
353
358
|
# For object, use to_hash. Otherwise, just return the value
|
354
359
|
# @param [Object] value Any valid value
|
355
360
|
# @return [Hash] Returns the value in the form of hash
|
356
|
-
def _to_hash(value)
|
361
|
+
def _to_hash(value, downcase: false)
|
357
362
|
if value.is_a?(Array)
|
358
|
-
value.
|
363
|
+
value.map do |v|
|
364
|
+
v.to_hash(downcase: downcase)
|
365
|
+
end
|
359
366
|
elsif value.is_a?(Hash)
|
360
367
|
{}.tap do |hash|
|
361
|
-
value.
|
368
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
362
369
|
end
|
363
370
|
elsif value.respond_to? :to_hash
|
364
|
-
value.to_hash
|
371
|
+
value.to_hash(downcase: downcase)
|
365
372
|
else
|
366
373
|
value
|
367
374
|
end
|
368
375
|
end
|
369
376
|
|
370
|
-
# customized data_parser
|
371
377
|
def parse_date(datestring)
|
372
|
-
|
373
|
-
|
378
|
+
if datestring.include?('Date')
|
379
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
380
|
+
original, date, timezone = *date_pattern.match(datestring)
|
381
|
+
date = (date.to_i / 1000)
|
382
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
383
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
384
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
385
|
+
else # handle date 'types' for small subset of payroll API's
|
386
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
387
|
+
end
|
374
388
|
end
|
375
389
|
end
|
376
390
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -173,38 +172,53 @@ module XeroRuby::Accounting
|
|
173
172
|
|
174
173
|
# Returns the object in the form of hash
|
175
174
|
# @return [Hash] Returns the object in the form of hash
|
176
|
-
def to_hash
|
175
|
+
def to_hash(downcase: false)
|
177
176
|
hash = {}
|
178
177
|
self.class.attribute_map.each_pair do |attr, param|
|
179
178
|
value = self.send(attr)
|
180
179
|
next if value.nil?
|
181
|
-
|
180
|
+
key = downcase ? attr : param
|
181
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
182
182
|
end
|
183
183
|
hash
|
184
184
|
end
|
185
185
|
|
186
|
+
# Returns the object in the form of hash with snake_case
|
187
|
+
def to_attributes
|
188
|
+
to_hash(downcase: true)
|
189
|
+
end
|
190
|
+
|
186
191
|
# Outputs non-array value in the form of hash
|
187
192
|
# For object, use to_hash. Otherwise, just return the value
|
188
193
|
# @param [Object] value Any valid value
|
189
194
|
# @return [Hash] Returns the value in the form of hash
|
190
|
-
def _to_hash(value)
|
195
|
+
def _to_hash(value, downcase: false)
|
191
196
|
if value.is_a?(Array)
|
192
|
-
value.
|
197
|
+
value.map do |v|
|
198
|
+
v.to_hash(downcase: downcase)
|
199
|
+
end
|
193
200
|
elsif value.is_a?(Hash)
|
194
201
|
{}.tap do |hash|
|
195
|
-
value.
|
202
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
196
203
|
end
|
197
204
|
elsif value.respond_to? :to_hash
|
198
|
-
value.to_hash
|
205
|
+
value.to_hash(downcase: downcase)
|
199
206
|
else
|
200
207
|
value
|
201
208
|
end
|
202
209
|
end
|
203
210
|
|
204
|
-
# customized data_parser
|
205
211
|
def parse_date(datestring)
|
206
|
-
|
207
|
-
|
212
|
+
if datestring.include?('Date')
|
213
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
214
|
+
original, date, timezone = *date_pattern.match(datestring)
|
215
|
+
date = (date.to_i / 1000)
|
216
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
217
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
218
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
219
|
+
else # handle date 'types' for small subset of payroll API's
|
220
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
221
|
+
end
|
208
222
|
end
|
209
223
|
end
|
210
224
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -355,38 +354,53 @@ module XeroRuby::Accounting
|
|
355
354
|
|
356
355
|
# Returns the object in the form of hash
|
357
356
|
# @return [Hash] Returns the object in the form of hash
|
358
|
-
def to_hash
|
357
|
+
def to_hash(downcase: false)
|
359
358
|
hash = {}
|
360
359
|
self.class.attribute_map.each_pair do |attr, param|
|
361
360
|
value = self.send(attr)
|
362
361
|
next if value.nil?
|
363
|
-
|
362
|
+
key = downcase ? attr : param
|
363
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
364
364
|
end
|
365
365
|
hash
|
366
366
|
end
|
367
367
|
|
368
|
+
# Returns the object in the form of hash with snake_case
|
369
|
+
def to_attributes
|
370
|
+
to_hash(downcase: true)
|
371
|
+
end
|
372
|
+
|
368
373
|
# Outputs non-array value in the form of hash
|
369
374
|
# For object, use to_hash. Otherwise, just return the value
|
370
375
|
# @param [Object] value Any valid value
|
371
376
|
# @return [Hash] Returns the value in the form of hash
|
372
|
-
def _to_hash(value)
|
377
|
+
def _to_hash(value, downcase: false)
|
373
378
|
if value.is_a?(Array)
|
374
|
-
value.
|
379
|
+
value.map do |v|
|
380
|
+
v.to_hash(downcase: downcase)
|
381
|
+
end
|
375
382
|
elsif value.is_a?(Hash)
|
376
383
|
{}.tap do |hash|
|
377
|
-
value.
|
384
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
378
385
|
end
|
379
386
|
elsif value.respond_to? :to_hash
|
380
|
-
value.to_hash
|
387
|
+
value.to_hash(downcase: downcase)
|
381
388
|
else
|
382
389
|
value
|
383
390
|
end
|
384
391
|
end
|
385
392
|
|
386
|
-
# customized data_parser
|
387
393
|
def parse_date(datestring)
|
388
|
-
|
389
|
-
|
394
|
+
if datestring.include?('Date')
|
395
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
396
|
+
original, date, timezone = *date_pattern.match(datestring)
|
397
|
+
date = (date.to_i / 1000)
|
398
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
399
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
400
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
401
|
+
else # handle date 'types' for small subset of payroll API's
|
402
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
403
|
+
end
|
390
404
|
end
|
391
405
|
end
|
392
406
|
end
|
@@ -1,9 +1,8 @@
|
|
1
1
|
=begin
|
2
|
-
#Accounting API
|
2
|
+
#Xero Accounting API
|
3
3
|
|
4
4
|
#No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
|
5
5
|
|
6
|
-
The version of the OpenAPI document: 2.6.0
|
7
6
|
Contact: api@xero.com
|
8
7
|
Generated by: https://openapi-generator.tech
|
9
8
|
OpenAPI Generator version: 4.3.1
|
@@ -243,38 +242,53 @@ module XeroRuby::Accounting
|
|
243
242
|
|
244
243
|
# Returns the object in the form of hash
|
245
244
|
# @return [Hash] Returns the object in the form of hash
|
246
|
-
def to_hash
|
245
|
+
def to_hash(downcase: false)
|
247
246
|
hash = {}
|
248
247
|
self.class.attribute_map.each_pair do |attr, param|
|
249
248
|
value = self.send(attr)
|
250
249
|
next if value.nil?
|
251
|
-
|
250
|
+
key = downcase ? attr : param
|
251
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
252
252
|
end
|
253
253
|
hash
|
254
254
|
end
|
255
255
|
|
256
|
+
# Returns the object in the form of hash with snake_case
|
257
|
+
def to_attributes
|
258
|
+
to_hash(downcase: true)
|
259
|
+
end
|
260
|
+
|
256
261
|
# Outputs non-array value in the form of hash
|
257
262
|
# For object, use to_hash. Otherwise, just return the value
|
258
263
|
# @param [Object] value Any valid value
|
259
264
|
# @return [Hash] Returns the value in the form of hash
|
260
|
-
def _to_hash(value)
|
265
|
+
def _to_hash(value, downcase: false)
|
261
266
|
if value.is_a?(Array)
|
262
|
-
value.
|
267
|
+
value.map do |v|
|
268
|
+
v.to_hash(downcase: downcase)
|
269
|
+
end
|
263
270
|
elsif value.is_a?(Hash)
|
264
271
|
{}.tap do |hash|
|
265
|
-
value.
|
272
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
266
273
|
end
|
267
274
|
elsif value.respond_to? :to_hash
|
268
|
-
value.to_hash
|
275
|
+
value.to_hash(downcase: downcase)
|
269
276
|
else
|
270
277
|
value
|
271
278
|
end
|
272
279
|
end
|
273
280
|
|
274
|
-
# customized data_parser
|
275
281
|
def parse_date(datestring)
|
276
|
-
|
277
|
-
|
282
|
+
if datestring.include?('Date')
|
283
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
284
|
+
original, date, timezone = *date_pattern.match(datestring)
|
285
|
+
date = (date.to_i / 1000)
|
286
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
287
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
288
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
289
|
+
else # handle date 'types' for small subset of payroll API's
|
290
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
291
|
+
end
|
278
292
|
end
|
279
293
|
end
|
280
294
|
end
|