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
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -183,38 +182,53 @@ module XeroRuby::Projects
|
|
183
182
|
|
184
183
|
# Returns the object in the form of hash
|
185
184
|
# @return [Hash] Returns the object in the form of hash
|
186
|
-
def to_hash
|
185
|
+
def to_hash(downcase: false)
|
187
186
|
hash = {}
|
188
187
|
self.class.attribute_map.each_pair do |attr, param|
|
189
188
|
value = self.send(attr)
|
190
189
|
next if value.nil?
|
191
|
-
|
190
|
+
key = downcase ? attr : param
|
191
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
192
192
|
end
|
193
193
|
hash
|
194
194
|
end
|
195
195
|
|
196
|
+
# Returns the object in the form of hash with snake_case
|
197
|
+
def to_attributes
|
198
|
+
to_hash(downcase: true)
|
199
|
+
end
|
200
|
+
|
196
201
|
# Outputs non-array value in the form of hash
|
197
202
|
# For object, use to_hash. Otherwise, just return the value
|
198
203
|
# @param [Object] value Any valid value
|
199
204
|
# @return [Hash] Returns the value in the form of hash
|
200
|
-
def _to_hash(value)
|
205
|
+
def _to_hash(value, downcase: false)
|
201
206
|
if value.is_a?(Array)
|
202
|
-
value.
|
207
|
+
value.map do |v|
|
208
|
+
v.to_hash(downcase: downcase)
|
209
|
+
end
|
203
210
|
elsif value.is_a?(Hash)
|
204
211
|
{}.tap do |hash|
|
205
|
-
value.
|
212
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
206
213
|
end
|
207
214
|
elsif value.respond_to? :to_hash
|
208
|
-
value.to_hash
|
215
|
+
value.to_hash(downcase: downcase)
|
209
216
|
else
|
210
217
|
value
|
211
218
|
end
|
212
219
|
end
|
213
220
|
|
214
|
-
# customized data_parser
|
215
221
|
def parse_date(datestring)
|
216
|
-
|
217
|
-
|
222
|
+
if datestring.include?('Date')
|
223
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
224
|
+
original, date, timezone = *date_pattern.match(datestring)
|
225
|
+
date = (date.to_i / 1000)
|
226
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
227
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
228
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
229
|
+
else # handle date 'types' for small subset of payroll API's
|
230
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
231
|
+
end
|
218
232
|
end
|
219
233
|
end
|
220
234
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -183,38 +182,53 @@ module XeroRuby::Projects
|
|
183
182
|
|
184
183
|
# Returns the object in the form of hash
|
185
184
|
# @return [Hash] Returns the object in the form of hash
|
186
|
-
def to_hash
|
185
|
+
def to_hash(downcase: false)
|
187
186
|
hash = {}
|
188
187
|
self.class.attribute_map.each_pair do |attr, param|
|
189
188
|
value = self.send(attr)
|
190
189
|
next if value.nil?
|
191
|
-
|
190
|
+
key = downcase ? attr : param
|
191
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
192
192
|
end
|
193
193
|
hash
|
194
194
|
end
|
195
195
|
|
196
|
+
# Returns the object in the form of hash with snake_case
|
197
|
+
def to_attributes
|
198
|
+
to_hash(downcase: true)
|
199
|
+
end
|
200
|
+
|
196
201
|
# Outputs non-array value in the form of hash
|
197
202
|
# For object, use to_hash. Otherwise, just return the value
|
198
203
|
# @param [Object] value Any valid value
|
199
204
|
# @return [Hash] Returns the value in the form of hash
|
200
|
-
def _to_hash(value)
|
205
|
+
def _to_hash(value, downcase: false)
|
201
206
|
if value.is_a?(Array)
|
202
|
-
value.
|
207
|
+
value.map do |v|
|
208
|
+
v.to_hash(downcase: downcase)
|
209
|
+
end
|
203
210
|
elsif value.is_a?(Hash)
|
204
211
|
{}.tap do |hash|
|
205
|
-
value.
|
212
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
206
213
|
end
|
207
214
|
elsif value.respond_to? :to_hash
|
208
|
-
value.to_hash
|
215
|
+
value.to_hash(downcase: downcase)
|
209
216
|
else
|
210
217
|
value
|
211
218
|
end
|
212
219
|
end
|
213
220
|
|
214
|
-
# customized data_parser
|
215
221
|
def parse_date(datestring)
|
216
|
-
|
217
|
-
|
222
|
+
if datestring.include?('Date')
|
223
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
224
|
+
original, date, timezone = *date_pattern.match(datestring)
|
225
|
+
date = (date.to_i / 1000)
|
226
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
227
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
228
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
229
|
+
else # handle date 'types' for small subset of payroll API's
|
230
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
231
|
+
end
|
218
232
|
end
|
219
233
|
end
|
220
234
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -348,38 +347,53 @@ module XeroRuby::Projects
|
|
348
347
|
|
349
348
|
# Returns the object in the form of hash
|
350
349
|
# @return [Hash] Returns the object in the form of hash
|
351
|
-
def to_hash
|
350
|
+
def to_hash(downcase: false)
|
352
351
|
hash = {}
|
353
352
|
self.class.attribute_map.each_pair do |attr, param|
|
354
353
|
value = self.send(attr)
|
355
354
|
next if value.nil?
|
356
|
-
|
355
|
+
key = downcase ? attr : param
|
356
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
357
357
|
end
|
358
358
|
hash
|
359
359
|
end
|
360
360
|
|
361
|
+
# Returns the object in the form of hash with snake_case
|
362
|
+
def to_attributes
|
363
|
+
to_hash(downcase: true)
|
364
|
+
end
|
365
|
+
|
361
366
|
# Outputs non-array value in the form of hash
|
362
367
|
# For object, use to_hash. Otherwise, just return the value
|
363
368
|
# @param [Object] value Any valid value
|
364
369
|
# @return [Hash] Returns the value in the form of hash
|
365
|
-
def _to_hash(value)
|
370
|
+
def _to_hash(value, downcase: false)
|
366
371
|
if value.is_a?(Array)
|
367
|
-
value.
|
372
|
+
value.map do |v|
|
373
|
+
v.to_hash(downcase: downcase)
|
374
|
+
end
|
368
375
|
elsif value.is_a?(Hash)
|
369
376
|
{}.tap do |hash|
|
370
|
-
value.
|
377
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
371
378
|
end
|
372
379
|
elsif value.respond_to? :to_hash
|
373
|
-
value.to_hash
|
380
|
+
value.to_hash(downcase: downcase)
|
374
381
|
else
|
375
382
|
value
|
376
383
|
end
|
377
384
|
end
|
378
385
|
|
379
|
-
# customized data_parser
|
380
386
|
def parse_date(datestring)
|
381
|
-
|
382
|
-
|
387
|
+
if datestring.include?('Date')
|
388
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
389
|
+
original, date, timezone = *date_pattern.match(datestring)
|
390
|
+
date = (date.to_i / 1000)
|
391
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
392
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
393
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
394
|
+
else # handle date 'types' for small subset of payroll API's
|
395
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
396
|
+
end
|
383
397
|
end
|
384
398
|
end
|
385
399
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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::Projects
|
|
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
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -183,38 +182,53 @@ module XeroRuby::Projects
|
|
183
182
|
|
184
183
|
# Returns the object in the form of hash
|
185
184
|
# @return [Hash] Returns the object in the form of hash
|
186
|
-
def to_hash
|
185
|
+
def to_hash(downcase: false)
|
187
186
|
hash = {}
|
188
187
|
self.class.attribute_map.each_pair do |attr, param|
|
189
188
|
value = self.send(attr)
|
190
189
|
next if value.nil?
|
191
|
-
|
190
|
+
key = downcase ? attr : param
|
191
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
192
192
|
end
|
193
193
|
hash
|
194
194
|
end
|
195
195
|
|
196
|
+
# Returns the object in the form of hash with snake_case
|
197
|
+
def to_attributes
|
198
|
+
to_hash(downcase: true)
|
199
|
+
end
|
200
|
+
|
196
201
|
# Outputs non-array value in the form of hash
|
197
202
|
# For object, use to_hash. Otherwise, just return the value
|
198
203
|
# @param [Object] value Any valid value
|
199
204
|
# @return [Hash] Returns the value in the form of hash
|
200
|
-
def _to_hash(value)
|
205
|
+
def _to_hash(value, downcase: false)
|
201
206
|
if value.is_a?(Array)
|
202
|
-
value.
|
207
|
+
value.map do |v|
|
208
|
+
v.to_hash(downcase: downcase)
|
209
|
+
end
|
203
210
|
elsif value.is_a?(Hash)
|
204
211
|
{}.tap do |hash|
|
205
|
-
value.
|
212
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
206
213
|
end
|
207
214
|
elsif value.respond_to? :to_hash
|
208
|
-
value.to_hash
|
215
|
+
value.to_hash(downcase: downcase)
|
209
216
|
else
|
210
217
|
value
|
211
218
|
end
|
212
219
|
end
|
213
220
|
|
214
|
-
# customized data_parser
|
215
221
|
def parse_date(datestring)
|
216
|
-
|
217
|
-
|
222
|
+
if datestring.include?('Date')
|
223
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
224
|
+
original, date, timezone = *date_pattern.match(datestring)
|
225
|
+
date = (date.to_i / 1000)
|
226
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
227
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
228
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
229
|
+
else # handle date 'types' for small subset of payroll API's
|
230
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
231
|
+
end
|
218
232
|
end
|
219
233
|
end
|
220
234
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -183,38 +182,53 @@ module XeroRuby::Projects
|
|
183
182
|
|
184
183
|
# Returns the object in the form of hash
|
185
184
|
# @return [Hash] Returns the object in the form of hash
|
186
|
-
def to_hash
|
185
|
+
def to_hash(downcase: false)
|
187
186
|
hash = {}
|
188
187
|
self.class.attribute_map.each_pair do |attr, param|
|
189
188
|
value = self.send(attr)
|
190
189
|
next if value.nil?
|
191
|
-
|
190
|
+
key = downcase ? attr : param
|
191
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
192
192
|
end
|
193
193
|
hash
|
194
194
|
end
|
195
195
|
|
196
|
+
# Returns the object in the form of hash with snake_case
|
197
|
+
def to_attributes
|
198
|
+
to_hash(downcase: true)
|
199
|
+
end
|
200
|
+
|
196
201
|
# Outputs non-array value in the form of hash
|
197
202
|
# For object, use to_hash. Otherwise, just return the value
|
198
203
|
# @param [Object] value Any valid value
|
199
204
|
# @return [Hash] Returns the value in the form of hash
|
200
|
-
def _to_hash(value)
|
205
|
+
def _to_hash(value, downcase: false)
|
201
206
|
if value.is_a?(Array)
|
202
|
-
value.
|
207
|
+
value.map do |v|
|
208
|
+
v.to_hash(downcase: downcase)
|
209
|
+
end
|
203
210
|
elsif value.is_a?(Hash)
|
204
211
|
{}.tap do |hash|
|
205
|
-
value.
|
212
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
206
213
|
end
|
207
214
|
elsif value.respond_to? :to_hash
|
208
|
-
value.to_hash
|
215
|
+
value.to_hash(downcase: downcase)
|
209
216
|
else
|
210
217
|
value
|
211
218
|
end
|
212
219
|
end
|
213
220
|
|
214
|
-
# customized data_parser
|
215
221
|
def parse_date(datestring)
|
216
|
-
|
217
|
-
|
222
|
+
if datestring.include?('Date')
|
223
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
224
|
+
original, date, timezone = *date_pattern.match(datestring)
|
225
|
+
date = (date.to_i / 1000)
|
226
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
227
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
228
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
229
|
+
else # handle date 'types' for small subset of payroll API's
|
230
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
231
|
+
end
|
218
232
|
end
|
219
233
|
end
|
220
234
|
end
|
@@ -3,7 +3,6 @@
|
|
3
3
|
|
4
4
|
#This is the Xero Projects API
|
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
|
@@ -45,6 +44,7 @@ module XeroRuby::Projects
|
|
45
44
|
attr_accessor :status
|
46
45
|
ACTIVE = "ACTIVE".freeze
|
47
46
|
LOCKED = "LOCKED".freeze
|
47
|
+
INVOICED = "INVOICED".freeze
|
48
48
|
|
49
49
|
class EnumAttributeValidator
|
50
50
|
attr_reader :datatype
|
@@ -160,7 +160,7 @@ module XeroRuby::Projects
|
|
160
160
|
# Check to see if the all the properties in the model are valid
|
161
161
|
# @return true if the model is valid
|
162
162
|
def valid?
|
163
|
-
status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "LOCKED"])
|
163
|
+
status_validator = EnumAttributeValidator.new('String', ["ACTIVE", "LOCKED", "INVOICED"])
|
164
164
|
return false unless status_validator.valid?(@status)
|
165
165
|
true
|
166
166
|
end
|
@@ -168,7 +168,7 @@ module XeroRuby::Projects
|
|
168
168
|
# Custom attribute writer method checking allowed values (enum).
|
169
169
|
# @param [Object] status Object to be assigned
|
170
170
|
def status=(status)
|
171
|
-
validator = EnumAttributeValidator.new('String', ["ACTIVE", "LOCKED"])
|
171
|
+
validator = EnumAttributeValidator.new('String', ["ACTIVE", "LOCKED", "INVOICED"])
|
172
172
|
unless validator.valid?(status)
|
173
173
|
fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
|
174
174
|
end
|
@@ -287,38 +287,53 @@ module XeroRuby::Projects
|
|
287
287
|
|
288
288
|
# Returns the object in the form of hash
|
289
289
|
# @return [Hash] Returns the object in the form of hash
|
290
|
-
def to_hash
|
290
|
+
def to_hash(downcase: false)
|
291
291
|
hash = {}
|
292
292
|
self.class.attribute_map.each_pair do |attr, param|
|
293
293
|
value = self.send(attr)
|
294
294
|
next if value.nil?
|
295
|
-
|
295
|
+
key = downcase ? attr : param
|
296
|
+
hash[key] = _to_hash(value, downcase: downcase)
|
296
297
|
end
|
297
298
|
hash
|
298
299
|
end
|
299
300
|
|
301
|
+
# Returns the object in the form of hash with snake_case
|
302
|
+
def to_attributes
|
303
|
+
to_hash(downcase: true)
|
304
|
+
end
|
305
|
+
|
300
306
|
# Outputs non-array value in the form of hash
|
301
307
|
# For object, use to_hash. Otherwise, just return the value
|
302
308
|
# @param [Object] value Any valid value
|
303
309
|
# @return [Hash] Returns the value in the form of hash
|
304
|
-
def _to_hash(value)
|
310
|
+
def _to_hash(value, downcase: false)
|
305
311
|
if value.is_a?(Array)
|
306
|
-
value.
|
312
|
+
value.map do |v|
|
313
|
+
v.to_hash(downcase: downcase)
|
314
|
+
end
|
307
315
|
elsif value.is_a?(Hash)
|
308
316
|
{}.tap do |hash|
|
309
|
-
value.
|
317
|
+
value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
|
310
318
|
end
|
311
319
|
elsif value.respond_to? :to_hash
|
312
|
-
value.to_hash
|
320
|
+
value.to_hash(downcase: downcase)
|
313
321
|
else
|
314
322
|
value
|
315
323
|
end
|
316
324
|
end
|
317
325
|
|
318
|
-
# customized data_parser
|
319
326
|
def parse_date(datestring)
|
320
|
-
|
321
|
-
|
327
|
+
if datestring.include?('Date')
|
328
|
+
date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
|
329
|
+
original, date, timezone = *date_pattern.match(datestring)
|
330
|
+
date = (date.to_i / 1000)
|
331
|
+
Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
|
332
|
+
elsif /(\d\d\d\d)-(\d\d)/.match(datestring) # handles dates w/out Days: YYYY-MM*-DD
|
333
|
+
Time.parse(datestring + '-01').strftime('%Y-%m-%dT%H:%M:%S').to_s
|
334
|
+
else # handle date 'types' for small subset of payroll API's
|
335
|
+
Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
|
336
|
+
end
|
322
337
|
end
|
323
338
|
end
|
324
339
|
end
|