xero-ruby 2.10.2 → 3.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/README.md +6 -6
- data/lib/xero-ruby/api/accounting_api.rb +5 -2
- data/lib/xero-ruby/models/accounting/account.rb +11 -7
- data/lib/xero-ruby/models/accounting/accounts.rb +11 -7
- data/lib/xero-ruby/models/accounting/accounts_payable.rb +11 -7
- data/lib/xero-ruby/models/accounting/accounts_receivable.rb +11 -7
- data/lib/xero-ruby/models/accounting/action.rb +11 -7
- data/lib/xero-ruby/models/accounting/actions.rb +11 -7
- data/lib/xero-ruby/models/accounting/address.rb +11 -7
- data/lib/xero-ruby/models/accounting/address_for_organisation.rb +11 -7
- data/lib/xero-ruby/models/accounting/allocation.rb +11 -7
- data/lib/xero-ruby/models/accounting/allocations.rb +11 -7
- data/lib/xero-ruby/models/accounting/attachment.rb +11 -7
- data/lib/xero-ruby/models/accounting/attachments.rb +11 -7
- data/lib/xero-ruby/models/accounting/balance_details.rb +11 -7
- data/lib/xero-ruby/models/accounting/balances.rb +11 -7
- data/lib/xero-ruby/models/accounting/bank_transaction.rb +11 -7
- data/lib/xero-ruby/models/accounting/bank_transactions.rb +11 -7
- data/lib/xero-ruby/models/accounting/bank_transfer.rb +11 -7
- data/lib/xero-ruby/models/accounting/bank_transfers.rb +11 -7
- data/lib/xero-ruby/models/accounting/batch_payment.rb +11 -7
- data/lib/xero-ruby/models/accounting/batch_payment_details.rb +11 -7
- data/lib/xero-ruby/models/accounting/batch_payments.rb +11 -7
- data/lib/xero-ruby/models/accounting/bill.rb +11 -7
- data/lib/xero-ruby/models/accounting/branding_theme.rb +11 -7
- data/lib/xero-ruby/models/accounting/branding_themes.rb +11 -7
- data/lib/xero-ruby/models/accounting/cis_org_setting.rb +11 -7
- data/lib/xero-ruby/models/accounting/cis_org_settings.rb +11 -7
- data/lib/xero-ruby/models/accounting/cis_setting.rb +11 -7
- data/lib/xero-ruby/models/accounting/cis_settings.rb +11 -7
- data/lib/xero-ruby/models/accounting/contact.rb +11 -7
- data/lib/xero-ruby/models/accounting/contact_group.rb +11 -7
- data/lib/xero-ruby/models/accounting/contact_groups.rb +11 -7
- data/lib/xero-ruby/models/accounting/contact_person.rb +11 -7
- data/lib/xero-ruby/models/accounting/contacts.rb +11 -7
- data/lib/xero-ruby/models/accounting/conversion_balances.rb +11 -7
- data/lib/xero-ruby/models/accounting/conversion_date.rb +11 -7
- data/lib/xero-ruby/models/accounting/credit_note.rb +11 -7
- data/lib/xero-ruby/models/accounting/credit_notes.rb +11 -7
- data/lib/xero-ruby/models/accounting/currencies.rb +11 -7
- data/lib/xero-ruby/models/accounting/currency.rb +11 -7
- data/lib/xero-ruby/models/accounting/element.rb +11 -7
- data/lib/xero-ruby/models/accounting/employee.rb +11 -7
- data/lib/xero-ruby/models/accounting/employees.rb +11 -7
- data/lib/xero-ruby/models/accounting/error.rb +11 -7
- data/lib/xero-ruby/models/accounting/expense_claim.rb +11 -7
- data/lib/xero-ruby/models/accounting/expense_claims.rb +11 -7
- data/lib/xero-ruby/models/accounting/external_link.rb +11 -7
- data/lib/xero-ruby/models/accounting/history_record.rb +11 -7
- data/lib/xero-ruby/models/accounting/history_records.rb +11 -7
- data/lib/xero-ruby/models/accounting/import_summary.rb +11 -7
- data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +11 -7
- data/lib/xero-ruby/models/accounting/import_summary_object.rb +11 -7
- data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +11 -7
- data/lib/xero-ruby/models/accounting/invoice.rb +11 -7
- data/lib/xero-ruby/models/accounting/invoice_reminder.rb +11 -7
- data/lib/xero-ruby/models/accounting/invoice_reminders.rb +11 -7
- data/lib/xero-ruby/models/accounting/invoices.rb +11 -7
- data/lib/xero-ruby/models/accounting/item.rb +11 -7
- data/lib/xero-ruby/models/accounting/items.rb +11 -7
- data/lib/xero-ruby/models/accounting/journal.rb +11 -7
- data/lib/xero-ruby/models/accounting/journal_line.rb +11 -7
- data/lib/xero-ruby/models/accounting/journals.rb +11 -7
- data/lib/xero-ruby/models/accounting/line_item.rb +11 -7
- data/lib/xero-ruby/models/accounting/line_item_tracking.rb +11 -7
- data/lib/xero-ruby/models/accounting/linked_transaction.rb +11 -7
- data/lib/xero-ruby/models/accounting/linked_transactions.rb +11 -7
- data/lib/xero-ruby/models/accounting/manual_journal.rb +11 -7
- data/lib/xero-ruby/models/accounting/manual_journal_line.rb +11 -7
- data/lib/xero-ruby/models/accounting/manual_journals.rb +11 -7
- data/lib/xero-ruby/models/accounting/online_invoice.rb +11 -7
- data/lib/xero-ruby/models/accounting/online_invoices.rb +11 -7
- data/lib/xero-ruby/models/accounting/organisation.rb +11 -7
- data/lib/xero-ruby/models/accounting/organisations.rb +11 -7
- data/lib/xero-ruby/models/accounting/overpayment.rb +11 -7
- data/lib/xero-ruby/models/accounting/overpayments.rb +11 -7
- data/lib/xero-ruby/models/accounting/payment.rb +11 -7
- data/lib/xero-ruby/models/accounting/payment_delete.rb +11 -7
- data/lib/xero-ruby/models/accounting/payment_service.rb +11 -7
- data/lib/xero-ruby/models/accounting/payment_services.rb +11 -7
- data/lib/xero-ruby/models/accounting/payment_term.rb +11 -7
- data/lib/xero-ruby/models/accounting/payments.rb +11 -7
- data/lib/xero-ruby/models/accounting/phone.rb +11 -7
- data/lib/xero-ruby/models/accounting/prepayment.rb +24 -8
- data/lib/xero-ruby/models/accounting/prepayments.rb +11 -7
- data/lib/xero-ruby/models/accounting/purchase.rb +11 -7
- data/lib/xero-ruby/models/accounting/purchase_order.rb +11 -7
- data/lib/xero-ruby/models/accounting/purchase_orders.rb +11 -7
- data/lib/xero-ruby/models/accounting/quote.rb +11 -7
- data/lib/xero-ruby/models/accounting/quotes.rb +11 -7
- data/lib/xero-ruby/models/accounting/receipt.rb +11 -7
- data/lib/xero-ruby/models/accounting/receipts.rb +11 -7
- data/lib/xero-ruby/models/accounting/repeating_invoice.rb +11 -7
- data/lib/xero-ruby/models/accounting/repeating_invoices.rb +11 -7
- data/lib/xero-ruby/models/accounting/report.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_attribute.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_cell.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_fields.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_row.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_rows.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_with_row.rb +11 -7
- data/lib/xero-ruby/models/accounting/report_with_rows.rb +11 -7
- data/lib/xero-ruby/models/accounting/reports.rb +11 -7
- data/lib/xero-ruby/models/accounting/request_empty.rb +11 -7
- data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +11 -7
- data/lib/xero-ruby/models/accounting/schedule.rb +11 -7
- data/lib/xero-ruby/models/accounting/setup.rb +11 -7
- data/lib/xero-ruby/models/accounting/tax_component.rb +11 -7
- data/lib/xero-ruby/models/accounting/tax_rate.rb +11 -7
- data/lib/xero-ruby/models/accounting/tax_rates.rb +11 -7
- data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +11 -7
- data/lib/xero-ruby/models/accounting/tracking_categories.rb +11 -7
- data/lib/xero-ruby/models/accounting/tracking_category.rb +11 -7
- data/lib/xero-ruby/models/accounting/tracking_option.rb +11 -7
- data/lib/xero-ruby/models/accounting/tracking_options.rb +11 -7
- data/lib/xero-ruby/models/accounting/user.rb +11 -7
- data/lib/xero-ruby/models/accounting/users.rb +11 -7
- data/lib/xero-ruby/models/accounting/validation_error.rb +11 -7
- data/lib/xero-ruby/models/assets/asset.rb +11 -7
- data/lib/xero-ruby/models/assets/asset_type.rb +11 -7
- data/lib/xero-ruby/models/assets/assets.rb +11 -7
- data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +11 -7
- data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +11 -7
- data/lib/xero-ruby/models/assets/error.rb +11 -7
- data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +11 -7
- data/lib/xero-ruby/models/assets/pagination.rb +11 -7
- data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +11 -7
- data/lib/xero-ruby/models/assets/setting.rb +11 -7
- data/lib/xero-ruby/models/files/association.rb +11 -7
- data/lib/xero-ruby/models/files/file_object.rb +11 -7
- data/lib/xero-ruby/models/files/files.rb +11 -7
- data/lib/xero-ruby/models/files/folder.rb +11 -7
- data/lib/xero-ruby/models/files/folders.rb +11 -7
- data/lib/xero-ruby/models/files/upload_object.rb +11 -7
- data/lib/xero-ruby/models/files/user.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/account.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/api_exception.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/bank_account.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/deduction_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/deduction_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/employee.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/employees.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/home_address.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_application.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_applications.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_lines.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_period.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/leave_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/opening_balances.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/pay_item.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/pay_items.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/pay_run.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/pay_runs.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/pay_template.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payslip.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payslip_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/payslips.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/settings.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/settings_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_fund.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_funds.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/super_membership.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/tax_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/timesheet.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/timesheets.rb +11 -7
- data/lib/xero-ruby/models/payroll_au/validation_error.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/account.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/accounts.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/address.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/bank_account.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/benefit.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/deduction.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/deductions.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employees.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employment.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/employment_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_period.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/leave_types.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pagination.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_run.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/payment_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/payment_method.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/problem.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/settings.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/superannuations.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/tax_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheet.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/timesheets.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +11 -7
- data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/account.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/accounts.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/address.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/bank_account.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/benefit.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/benefits.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/deduction.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/deductions.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employees.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employment.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/employment_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_period.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_type.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/leave_types.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pagination.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_run.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payment_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payment_method.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payslip.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/payslips.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/problem.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/settings.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/tax_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheet.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/timesheets.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +11 -7
- data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +11 -7
- data/lib/xero-ruby/models/projects/amount.rb +11 -7
- data/lib/xero-ruby/models/projects/error.rb +11 -7
- data/lib/xero-ruby/models/projects/pagination.rb +11 -7
- data/lib/xero-ruby/models/projects/project.rb +11 -7
- data/lib/xero-ruby/models/projects/project_create_or_update.rb +11 -7
- data/lib/xero-ruby/models/projects/project_patch.rb +11 -7
- data/lib/xero-ruby/models/projects/project_user.rb +11 -7
- data/lib/xero-ruby/models/projects/project_users.rb +11 -7
- data/lib/xero-ruby/models/projects/projects.rb +11 -7
- data/lib/xero-ruby/models/projects/task.rb +11 -7
- data/lib/xero-ruby/models/projects/task_create_or_update.rb +11 -7
- data/lib/xero-ruby/models/projects/tasks.rb +11 -7
- data/lib/xero-ruby/models/projects/time_entries.rb +11 -7
- data/lib/xero-ruby/models/projects/time_entry.rb +11 -7
- data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +11 -7
- data/lib/xero-ruby/version.rb +2 -2
- data/spec/helper_methods_spec.rb +28 -0
- metadata +2 -2
@@ -208,7 +208,7 @@ module XeroRuby::Accounting
|
|
208
208
|
value = self.send(attr)
|
209
209
|
next if value.nil?
|
210
210
|
key = downcase ? attr : param
|
211
|
-
hash[key] = _to_hash(value)
|
211
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
212
212
|
end
|
213
213
|
hash
|
214
214
|
end
|
@@ -222,15 +222,17 @@ module XeroRuby::Accounting
|
|
222
222
|
# For object, use to_hash. Otherwise, just return the value
|
223
223
|
# @param [Object] value Any valid value
|
224
224
|
# @return [Hash] Returns the value in the form of hash
|
225
|
-
def _to_hash(value)
|
225
|
+
def _to_hash(value, downcase: false)
|
226
226
|
if value.is_a?(Array)
|
227
|
-
value.
|
227
|
+
value.map do |v|
|
228
|
+
v.to_hash(downcase: downcase)
|
229
|
+
end
|
228
230
|
elsif value.is_a?(Hash)
|
229
231
|
{}.tap do |hash|
|
230
|
-
value.
|
232
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
231
233
|
end
|
232
234
|
elsif value.respond_to? :to_hash
|
233
|
-
value.to_hash
|
235
|
+
value.to_hash(downcase: downcase)
|
234
236
|
else
|
235
237
|
value
|
236
238
|
end
|
@@ -238,8 +240,10 @@ module XeroRuby::Accounting
|
|
238
240
|
|
239
241
|
def parse_date(datestring)
|
240
242
|
if datestring.include?('Date')
|
241
|
-
|
242
|
-
|
243
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
244
|
+
original, date, timezone = *date_pattern.match(datestring)
|
245
|
+
date = (date.to_i / 1000)
|
246
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
243
247
|
else # handle date 'types' for small subset of payroll API's
|
244
248
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
245
249
|
end
|
@@ -329,7 +329,7 @@ module XeroRuby::Accounting
|
|
329
329
|
value = self.send(attr)
|
330
330
|
next if value.nil?
|
331
331
|
key = downcase ? attr : param
|
332
|
-
hash[key] = _to_hash(value)
|
332
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
333
333
|
end
|
334
334
|
hash
|
335
335
|
end
|
@@ -343,15 +343,17 @@ module XeroRuby::Accounting
|
|
343
343
|
# For object, use to_hash. Otherwise, just return the value
|
344
344
|
# @param [Object] value Any valid value
|
345
345
|
# @return [Hash] Returns the value in the form of hash
|
346
|
-
def _to_hash(value)
|
346
|
+
def _to_hash(value, downcase: false)
|
347
347
|
if value.is_a?(Array)
|
348
|
-
value.
|
348
|
+
value.map do |v|
|
349
|
+
v.to_hash(downcase: downcase)
|
350
|
+
end
|
349
351
|
elsif value.is_a?(Hash)
|
350
352
|
{}.tap do |hash|
|
351
|
-
value.
|
353
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
352
354
|
end
|
353
355
|
elsif value.respond_to? :to_hash
|
354
|
-
value.to_hash
|
356
|
+
value.to_hash(downcase: downcase)
|
355
357
|
else
|
356
358
|
value
|
357
359
|
end
|
@@ -359,8 +361,10 @@ module XeroRuby::Accounting
|
|
359
361
|
|
360
362
|
def parse_date(datestring)
|
361
363
|
if datestring.include?('Date')
|
362
|
-
|
363
|
-
|
364
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
365
|
+
original, date, timezone = *date_pattern.match(datestring)
|
366
|
+
date = (date.to_i / 1000)
|
367
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
364
368
|
else # handle date 'types' for small subset of payroll API's
|
365
369
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
366
370
|
end
|
@@ -178,7 +178,7 @@ module XeroRuby::Accounting
|
|
178
178
|
value = self.send(attr)
|
179
179
|
next if value.nil?
|
180
180
|
key = downcase ? attr : param
|
181
|
-
hash[key] = _to_hash(value)
|
181
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
182
182
|
end
|
183
183
|
hash
|
184
184
|
end
|
@@ -192,15 +192,17 @@ module XeroRuby::Accounting
|
|
192
192
|
# For object, use to_hash. Otherwise, just return the value
|
193
193
|
# @param [Object] value Any valid value
|
194
194
|
# @return [Hash] Returns the value in the form of hash
|
195
|
-
def _to_hash(value)
|
195
|
+
def _to_hash(value, downcase: false)
|
196
196
|
if value.is_a?(Array)
|
197
|
-
value.
|
197
|
+
value.map do |v|
|
198
|
+
v.to_hash(downcase: downcase)
|
199
|
+
end
|
198
200
|
elsif value.is_a?(Hash)
|
199
201
|
{}.tap do |hash|
|
200
|
-
value.
|
202
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
201
203
|
end
|
202
204
|
elsif value.respond_to? :to_hash
|
203
|
-
value.to_hash
|
205
|
+
value.to_hash(downcase: downcase)
|
204
206
|
else
|
205
207
|
value
|
206
208
|
end
|
@@ -208,8 +210,10 @@ module XeroRuby::Accounting
|
|
208
210
|
|
209
211
|
def parse_date(datestring)
|
210
212
|
if datestring.include?('Date')
|
211
|
-
|
212
|
-
|
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
|
213
217
|
else # handle date 'types' for small subset of payroll API's
|
214
218
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
215
219
|
end
|
@@ -235,7 +235,7 @@ module XeroRuby::Accounting
|
|
235
235
|
value = self.send(attr)
|
236
236
|
next if value.nil?
|
237
237
|
key = downcase ? attr : param
|
238
|
-
hash[key] = _to_hash(value)
|
238
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
239
239
|
end
|
240
240
|
hash
|
241
241
|
end
|
@@ -249,15 +249,17 @@ module XeroRuby::Accounting
|
|
249
249
|
# For object, use to_hash. Otherwise, just return the value
|
250
250
|
# @param [Object] value Any valid value
|
251
251
|
# @return [Hash] Returns the value in the form of hash
|
252
|
-
def _to_hash(value)
|
252
|
+
def _to_hash(value, downcase: false)
|
253
253
|
if value.is_a?(Array)
|
254
|
-
value.
|
254
|
+
value.map do |v|
|
255
|
+
v.to_hash(downcase: downcase)
|
256
|
+
end
|
255
257
|
elsif value.is_a?(Hash)
|
256
258
|
{}.tap do |hash|
|
257
|
-
value.
|
259
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
258
260
|
end
|
259
261
|
elsif value.respond_to? :to_hash
|
260
|
-
value.to_hash
|
262
|
+
value.to_hash(downcase: downcase)
|
261
263
|
else
|
262
264
|
value
|
263
265
|
end
|
@@ -265,8 +267,10 @@ module XeroRuby::Accounting
|
|
265
267
|
|
266
268
|
def parse_date(datestring)
|
267
269
|
if datestring.include?('Date')
|
268
|
-
|
269
|
-
|
270
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
271
|
+
original, date, timezone = *date_pattern.match(datestring)
|
272
|
+
date = (date.to_i / 1000)
|
273
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
270
274
|
else # handle date 'types' for small subset of payroll API's
|
271
275
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
272
276
|
end
|
@@ -206,7 +206,7 @@ module XeroRuby::Accounting
|
|
206
206
|
value = self.send(attr)
|
207
207
|
next if value.nil?
|
208
208
|
key = downcase ? attr : param
|
209
|
-
hash[key] = _to_hash(value)
|
209
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
210
210
|
end
|
211
211
|
hash
|
212
212
|
end
|
@@ -220,15 +220,17 @@ module XeroRuby::Accounting
|
|
220
220
|
# For object, use to_hash. Otherwise, just return the value
|
221
221
|
# @param [Object] value Any valid value
|
222
222
|
# @return [Hash] Returns the value in the form of hash
|
223
|
-
def _to_hash(value)
|
223
|
+
def _to_hash(value, downcase: false)
|
224
224
|
if value.is_a?(Array)
|
225
|
-
value.
|
225
|
+
value.map do |v|
|
226
|
+
v.to_hash(downcase: downcase)
|
227
|
+
end
|
226
228
|
elsif value.is_a?(Hash)
|
227
229
|
{}.tap do |hash|
|
228
|
-
value.
|
230
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
229
231
|
end
|
230
232
|
elsif value.respond_to? :to_hash
|
231
|
-
value.to_hash
|
233
|
+
value.to_hash(downcase: downcase)
|
232
234
|
else
|
233
235
|
value
|
234
236
|
end
|
@@ -236,8 +238,10 @@ module XeroRuby::Accounting
|
|
236
238
|
|
237
239
|
def parse_date(datestring)
|
238
240
|
if datestring.include?('Date')
|
239
|
-
|
240
|
-
|
241
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
242
|
+
original, date, timezone = *date_pattern.match(datestring)
|
243
|
+
date = (date.to_i / 1000)
|
244
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
241
245
|
else # handle date 'types' for small subset of payroll API's
|
242
246
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
243
247
|
end
|
@@ -178,7 +178,7 @@ module XeroRuby::Accounting
|
|
178
178
|
value = self.send(attr)
|
179
179
|
next if value.nil?
|
180
180
|
key = downcase ? attr : param
|
181
|
-
hash[key] = _to_hash(value)
|
181
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
182
182
|
end
|
183
183
|
hash
|
184
184
|
end
|
@@ -192,15 +192,17 @@ module XeroRuby::Accounting
|
|
192
192
|
# For object, use to_hash. Otherwise, just return the value
|
193
193
|
# @param [Object] value Any valid value
|
194
194
|
# @return [Hash] Returns the value in the form of hash
|
195
|
-
def _to_hash(value)
|
195
|
+
def _to_hash(value, downcase: false)
|
196
196
|
if value.is_a?(Array)
|
197
|
-
value.
|
197
|
+
value.map do |v|
|
198
|
+
v.to_hash(downcase: downcase)
|
199
|
+
end
|
198
200
|
elsif value.is_a?(Hash)
|
199
201
|
{}.tap do |hash|
|
200
|
-
value.
|
202
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
201
203
|
end
|
202
204
|
elsif value.respond_to? :to_hash
|
203
|
-
value.to_hash
|
205
|
+
value.to_hash(downcase: downcase)
|
204
206
|
else
|
205
207
|
value
|
206
208
|
end
|
@@ -208,8 +210,10 @@ module XeroRuby::Accounting
|
|
208
210
|
|
209
211
|
def parse_date(datestring)
|
210
212
|
if datestring.include?('Date')
|
211
|
-
|
212
|
-
|
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
|
213
217
|
else # handle date 'types' for small subset of payroll API's
|
214
218
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
215
219
|
end
|
@@ -187,7 +187,7 @@ module XeroRuby::Accounting
|
|
187
187
|
value = self.send(attr)
|
188
188
|
next if value.nil?
|
189
189
|
key = downcase ? attr : param
|
190
|
-
hash[key] = _to_hash(value)
|
190
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
191
191
|
end
|
192
192
|
hash
|
193
193
|
end
|
@@ -201,15 +201,17 @@ module XeroRuby::Accounting
|
|
201
201
|
# For object, use to_hash. Otherwise, just return the value
|
202
202
|
# @param [Object] value Any valid value
|
203
203
|
# @return [Hash] Returns the value in the form of hash
|
204
|
-
def _to_hash(value)
|
204
|
+
def _to_hash(value, downcase: false)
|
205
205
|
if value.is_a?(Array)
|
206
|
-
value.
|
206
|
+
value.map do |v|
|
207
|
+
v.to_hash(downcase: downcase)
|
208
|
+
end
|
207
209
|
elsif value.is_a?(Hash)
|
208
210
|
{}.tap do |hash|
|
209
|
-
value.
|
211
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
210
212
|
end
|
211
213
|
elsif value.respond_to? :to_hash
|
212
|
-
value.to_hash
|
214
|
+
value.to_hash(downcase: downcase)
|
213
215
|
else
|
214
216
|
value
|
215
217
|
end
|
@@ -217,8 +219,10 @@ module XeroRuby::Accounting
|
|
217
219
|
|
218
220
|
def parse_date(datestring)
|
219
221
|
if datestring.include?('Date')
|
220
|
-
|
221
|
-
|
222
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
223
|
+
original, date, timezone = *date_pattern.match(datestring)
|
224
|
+
date = (date.to_i / 1000)
|
225
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
222
226
|
else # handle date 'types' for small subset of payroll API's
|
223
227
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
224
228
|
end
|
@@ -257,7 +257,7 @@ module XeroRuby::Accounting
|
|
257
257
|
value = self.send(attr)
|
258
258
|
next if value.nil?
|
259
259
|
key = downcase ? attr : param
|
260
|
-
hash[key] = _to_hash(value)
|
260
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
261
261
|
end
|
262
262
|
hash
|
263
263
|
end
|
@@ -271,15 +271,17 @@ module XeroRuby::Accounting
|
|
271
271
|
# For object, use to_hash. Otherwise, just return the value
|
272
272
|
# @param [Object] value Any valid value
|
273
273
|
# @return [Hash] Returns the value in the form of hash
|
274
|
-
def _to_hash(value)
|
274
|
+
def _to_hash(value, downcase: false)
|
275
275
|
if value.is_a?(Array)
|
276
|
-
value.
|
276
|
+
value.map do |v|
|
277
|
+
v.to_hash(downcase: downcase)
|
278
|
+
end
|
277
279
|
elsif value.is_a?(Hash)
|
278
280
|
{}.tap do |hash|
|
279
|
-
value.
|
281
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
280
282
|
end
|
281
283
|
elsif value.respond_to? :to_hash
|
282
|
-
value.to_hash
|
284
|
+
value.to_hash(downcase: downcase)
|
283
285
|
else
|
284
286
|
value
|
285
287
|
end
|
@@ -287,8 +289,10 @@ module XeroRuby::Accounting
|
|
287
289
|
|
288
290
|
def parse_date(datestring)
|
289
291
|
if datestring.include?('Date')
|
290
|
-
|
291
|
-
|
292
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
293
|
+
original, date, timezone = *date_pattern.match(datestring)
|
294
|
+
date = (date.to_i / 1000)
|
295
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
292
296
|
else # handle date 'types' for small subset of payroll API's
|
293
297
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
294
298
|
end
|
@@ -176,7 +176,7 @@ module XeroRuby::Accounting
|
|
176
176
|
value = self.send(attr)
|
177
177
|
next if value.nil?
|
178
178
|
key = downcase ? attr : param
|
179
|
-
hash[key] = _to_hash(value)
|
179
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
180
180
|
end
|
181
181
|
hash
|
182
182
|
end
|
@@ -190,15 +190,17 @@ module XeroRuby::Accounting
|
|
190
190
|
# For object, use to_hash. Otherwise, just return the value
|
191
191
|
# @param [Object] value Any valid value
|
192
192
|
# @return [Hash] Returns the value in the form of hash
|
193
|
-
def _to_hash(value)
|
193
|
+
def _to_hash(value, downcase: false)
|
194
194
|
if value.is_a?(Array)
|
195
|
-
value.
|
195
|
+
value.map do |v|
|
196
|
+
v.to_hash(downcase: downcase)
|
197
|
+
end
|
196
198
|
elsif value.is_a?(Hash)
|
197
199
|
{}.tap do |hash|
|
198
|
-
value.
|
200
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
199
201
|
end
|
200
202
|
elsif value.respond_to? :to_hash
|
201
|
-
value.to_hash
|
203
|
+
value.to_hash(downcase: downcase)
|
202
204
|
else
|
203
205
|
value
|
204
206
|
end
|
@@ -206,8 +208,10 @@ module XeroRuby::Accounting
|
|
206
208
|
|
207
209
|
def parse_date(datestring)
|
208
210
|
if datestring.include?('Date')
|
209
|
-
|
210
|
-
|
211
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
212
|
+
original, date, timezone = *date_pattern.match(datestring)
|
213
|
+
date = (date.to_i / 1000)
|
214
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
211
215
|
else # handle date 'types' for small subset of payroll API's
|
212
216
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
213
217
|
end
|
@@ -176,7 +176,7 @@ module XeroRuby::Accounting
|
|
176
176
|
value = self.send(attr)
|
177
177
|
next if value.nil?
|
178
178
|
key = downcase ? attr : param
|
179
|
-
hash[key] = _to_hash(value)
|
179
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
180
180
|
end
|
181
181
|
hash
|
182
182
|
end
|
@@ -190,15 +190,17 @@ module XeroRuby::Accounting
|
|
190
190
|
# For object, use to_hash. Otherwise, just return the value
|
191
191
|
# @param [Object] value Any valid value
|
192
192
|
# @return [Hash] Returns the value in the form of hash
|
193
|
-
def _to_hash(value)
|
193
|
+
def _to_hash(value, downcase: false)
|
194
194
|
if value.is_a?(Array)
|
195
|
-
value.
|
195
|
+
value.map do |v|
|
196
|
+
v.to_hash(downcase: downcase)
|
197
|
+
end
|
196
198
|
elsif value.is_a?(Hash)
|
197
199
|
{}.tap do |hash|
|
198
|
-
value.
|
200
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
199
201
|
end
|
200
202
|
elsif value.respond_to? :to_hash
|
201
|
-
value.to_hash
|
203
|
+
value.to_hash(downcase: downcase)
|
202
204
|
else
|
203
205
|
value
|
204
206
|
end
|
@@ -206,8 +208,10 @@ module XeroRuby::Accounting
|
|
206
208
|
|
207
209
|
def parse_date(datestring)
|
208
210
|
if datestring.include?('Date')
|
209
|
-
|
210
|
-
|
211
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
212
|
+
original, date, timezone = *date_pattern.match(datestring)
|
213
|
+
date = (date.to_i / 1000)
|
214
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
211
215
|
else # handle date 'types' for small subset of payroll API's
|
212
216
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
213
217
|
end
|
@@ -661,7 +661,7 @@ module XeroRuby::Accounting
|
|
661
661
|
value = self.send(attr)
|
662
662
|
next if value.nil?
|
663
663
|
key = downcase ? attr : param
|
664
|
-
hash[key] = _to_hash(value)
|
664
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
665
665
|
end
|
666
666
|
hash
|
667
667
|
end
|
@@ -675,15 +675,17 @@ module XeroRuby::Accounting
|
|
675
675
|
# For object, use to_hash. Otherwise, just return the value
|
676
676
|
# @param [Object] value Any valid value
|
677
677
|
# @return [Hash] Returns the value in the form of hash
|
678
|
-
def _to_hash(value)
|
678
|
+
def _to_hash(value, downcase: false)
|
679
679
|
if value.is_a?(Array)
|
680
|
-
value.
|
680
|
+
value.map do |v|
|
681
|
+
v.to_hash(downcase: downcase)
|
682
|
+
end
|
681
683
|
elsif value.is_a?(Hash)
|
682
684
|
{}.tap do |hash|
|
683
|
-
value.
|
685
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
684
686
|
end
|
685
687
|
elsif value.respond_to? :to_hash
|
686
|
-
value.to_hash
|
688
|
+
value.to_hash(downcase: downcase)
|
687
689
|
else
|
688
690
|
value
|
689
691
|
end
|
@@ -691,8 +693,10 @@ module XeroRuby::Accounting
|
|
691
693
|
|
692
694
|
def parse_date(datestring)
|
693
695
|
if datestring.include?('Date')
|
694
|
-
|
695
|
-
|
696
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
697
|
+
original, date, timezone = *date_pattern.match(datestring)
|
698
|
+
date = (date.to_i / 1000)
|
699
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
696
700
|
else # handle date 'types' for small subset of payroll API's
|
697
701
|
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
698
702
|
end
|