xero-ruby 2.4.1 → 2.6.2

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.
Files changed (451) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +34 -5
  3. data/lib/xero-ruby.rb +1 -1
  4. data/lib/xero-ruby/api/accounting_api.rb +6 -1
  5. data/lib/xero-ruby/api/asset_api.rb +0 -1
  6. data/lib/xero-ruby/api/files_api.rb +0 -1
  7. data/lib/xero-ruby/api/payroll_au_api.rb +0 -1
  8. data/lib/xero-ruby/api/payroll_nz_api.rb +0 -1
  9. data/lib/xero-ruby/api/payroll_uk_api.rb +0 -1
  10. data/lib/xero-ruby/api/project_api.rb +0 -1
  11. data/lib/xero-ruby/api_client.rb +34 -27
  12. data/lib/xero-ruby/api_error.rb +3 -3
  13. data/lib/xero-ruby/configuration.rb +0 -1
  14. data/lib/xero-ruby/models/accounting/account.rb +14 -7
  15. data/lib/xero-ruby/models/accounting/account_type.rb +0 -1
  16. data/lib/xero-ruby/models/accounting/accounts.rb +14 -6
  17. data/lib/xero-ruby/models/accounting/accounts_payable.rb +14 -6
  18. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +14 -6
  19. data/lib/xero-ruby/models/accounting/action.rb +14 -6
  20. data/lib/xero-ruby/models/accounting/actions.rb +14 -6
  21. data/lib/xero-ruby/models/accounting/address.rb +16 -9
  22. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +478 -0
  23. data/lib/xero-ruby/models/accounting/allocation.rb +14 -6
  24. data/lib/xero-ruby/models/accounting/allocations.rb +14 -6
  25. data/lib/xero-ruby/models/accounting/attachment.rb +14 -6
  26. data/lib/xero-ruby/models/accounting/attachments.rb +14 -6
  27. data/lib/xero-ruby/models/accounting/balance_details.rb +14 -6
  28. data/lib/xero-ruby/models/accounting/balances.rb +14 -6
  29. data/lib/xero-ruby/models/accounting/bank_transaction.rb +14 -6
  30. data/lib/xero-ruby/models/accounting/bank_transactions.rb +14 -6
  31. data/lib/xero-ruby/models/accounting/bank_transfer.rb +14 -6
  32. data/lib/xero-ruby/models/accounting/bank_transfers.rb +14 -6
  33. data/lib/xero-ruby/models/accounting/batch_payment.rb +14 -6
  34. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +14 -6
  35. data/lib/xero-ruby/models/accounting/batch_payments.rb +14 -6
  36. data/lib/xero-ruby/models/accounting/bill.rb +14 -6
  37. data/lib/xero-ruby/models/accounting/branding_theme.rb +14 -6
  38. data/lib/xero-ruby/models/accounting/branding_themes.rb +14 -6
  39. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +15 -7
  40. data/lib/xero-ruby/models/accounting/cis_setting.rb +15 -7
  41. data/lib/xero-ruby/models/accounting/cis_settings.rb +14 -6
  42. data/lib/xero-ruby/models/accounting/contact.rb +14 -6
  43. data/lib/xero-ruby/models/accounting/contact_group.rb +14 -6
  44. data/lib/xero-ruby/models/accounting/contact_groups.rb +14 -6
  45. data/lib/xero-ruby/models/accounting/contact_person.rb +14 -6
  46. data/lib/xero-ruby/models/accounting/contacts.rb +14 -6
  47. data/lib/xero-ruby/models/accounting/conversion_balances.rb +14 -6
  48. data/lib/xero-ruby/models/accounting/conversion_date.rb +14 -6
  49. data/lib/xero-ruby/models/accounting/country_code.rb +0 -1
  50. data/lib/xero-ruby/models/accounting/credit_note.rb +35 -7
  51. data/lib/xero-ruby/models/accounting/credit_notes.rb +14 -6
  52. data/lib/xero-ruby/models/accounting/currencies.rb +14 -6
  53. data/lib/xero-ruby/models/accounting/currency.rb +14 -6
  54. data/lib/xero-ruby/models/accounting/currency_code.rb +0 -1
  55. data/lib/xero-ruby/models/accounting/element.rb +14 -6
  56. data/lib/xero-ruby/models/accounting/employee.rb +14 -6
  57. data/lib/xero-ruby/models/accounting/employees.rb +14 -6
  58. data/lib/xero-ruby/models/accounting/error.rb +14 -6
  59. data/lib/xero-ruby/models/accounting/expense_claim.rb +14 -6
  60. data/lib/xero-ruby/models/accounting/expense_claims.rb +14 -6
  61. data/lib/xero-ruby/models/accounting/external_link.rb +14 -6
  62. data/lib/xero-ruby/models/accounting/history_record.rb +14 -6
  63. data/lib/xero-ruby/models/accounting/history_records.rb +14 -6
  64. data/lib/xero-ruby/models/accounting/import_summary.rb +14 -6
  65. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +14 -6
  66. data/lib/xero-ruby/models/accounting/import_summary_object.rb +14 -6
  67. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +14 -6
  68. data/lib/xero-ruby/models/accounting/invoice.rb +26 -23
  69. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +14 -6
  70. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +14 -6
  71. data/lib/xero-ruby/models/accounting/invoices.rb +14 -6
  72. data/lib/xero-ruby/models/accounting/item.rb +14 -6
  73. data/lib/xero-ruby/models/accounting/items.rb +14 -6
  74. data/lib/xero-ruby/models/accounting/journal.rb +14 -6
  75. data/lib/xero-ruby/models/accounting/journal_line.rb +14 -6
  76. data/lib/xero-ruby/models/accounting/journals.rb +14 -6
  77. data/lib/xero-ruby/models/accounting/line_amount_types.rb +0 -1
  78. data/lib/xero-ruby/models/accounting/line_item.rb +14 -6
  79. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +14 -6
  80. data/lib/xero-ruby/models/accounting/linked_transaction.rb +14 -6
  81. data/lib/xero-ruby/models/accounting/linked_transactions.rb +14 -6
  82. data/lib/xero-ruby/models/accounting/manual_journal.rb +14 -6
  83. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +14 -6
  84. data/lib/xero-ruby/models/accounting/manual_journals.rb +14 -6
  85. data/lib/xero-ruby/models/accounting/online_invoice.rb +14 -6
  86. data/lib/xero-ruby/models/accounting/online_invoices.rb +14 -6
  87. data/lib/xero-ruby/models/accounting/organisation.rb +15 -9
  88. data/lib/xero-ruby/models/accounting/organisations.rb +14 -6
  89. data/lib/xero-ruby/models/accounting/overpayment.rb +14 -6
  90. data/lib/xero-ruby/models/accounting/overpayments.rb +14 -6
  91. data/lib/xero-ruby/models/accounting/payment.rb +14 -6
  92. data/lib/xero-ruby/models/accounting/payment_delete.rb +14 -6
  93. data/lib/xero-ruby/models/accounting/payment_service.rb +14 -6
  94. data/lib/xero-ruby/models/accounting/payment_services.rb +14 -6
  95. data/lib/xero-ruby/models/accounting/payment_term.rb +14 -6
  96. data/lib/xero-ruby/models/accounting/payment_term_type.rb +0 -1
  97. data/lib/xero-ruby/models/accounting/payments.rb +14 -6
  98. data/lib/xero-ruby/models/accounting/phone.rb +14 -6
  99. data/lib/xero-ruby/models/accounting/prepayment.rb +14 -6
  100. data/lib/xero-ruby/models/accounting/prepayments.rb +14 -6
  101. data/lib/xero-ruby/models/accounting/purchase.rb +14 -6
  102. data/lib/xero-ruby/models/accounting/purchase_order.rb +14 -6
  103. data/lib/xero-ruby/models/accounting/purchase_orders.rb +14 -6
  104. data/lib/xero-ruby/models/accounting/quote.rb +14 -6
  105. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +0 -1
  106. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +0 -1
  107. data/lib/xero-ruby/models/accounting/quotes.rb +14 -6
  108. data/lib/xero-ruby/models/accounting/receipt.rb +14 -6
  109. data/lib/xero-ruby/models/accounting/receipts.rb +14 -6
  110. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +14 -6
  111. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +14 -6
  112. data/lib/xero-ruby/models/accounting/report.rb +14 -6
  113. data/lib/xero-ruby/models/accounting/report_attribute.rb +14 -6
  114. data/lib/xero-ruby/models/accounting/report_cell.rb +14 -6
  115. data/lib/xero-ruby/models/accounting/report_fields.rb +14 -6
  116. data/lib/xero-ruby/models/accounting/report_row.rb +14 -6
  117. data/lib/xero-ruby/models/accounting/report_rows.rb +14 -6
  118. data/lib/xero-ruby/models/accounting/report_with_row.rb +14 -6
  119. data/lib/xero-ruby/models/accounting/report_with_rows.rb +14 -6
  120. data/lib/xero-ruby/models/accounting/reports.rb +14 -6
  121. data/lib/xero-ruby/models/accounting/request_empty.rb +14 -6
  122. data/lib/xero-ruby/models/accounting/row_type.rb +0 -1
  123. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +14 -6
  124. data/lib/xero-ruby/models/accounting/schedule.rb +14 -6
  125. data/lib/xero-ruby/models/accounting/setup.rb +14 -6
  126. data/lib/xero-ruby/models/accounting/tax_component.rb +14 -6
  127. data/lib/xero-ruby/models/accounting/tax_rate.rb +14 -6
  128. data/lib/xero-ruby/models/accounting/tax_rates.rb +14 -6
  129. data/lib/xero-ruby/models/accounting/tax_type.rb +0 -1
  130. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +14 -6
  131. data/lib/xero-ruby/models/accounting/time_zone.rb +0 -1
  132. data/lib/xero-ruby/models/accounting/tracking_categories.rb +14 -6
  133. data/lib/xero-ruby/models/accounting/tracking_category.rb +14 -6
  134. data/lib/xero-ruby/models/accounting/tracking_option.rb +14 -6
  135. data/lib/xero-ruby/models/accounting/tracking_options.rb +14 -6
  136. data/lib/xero-ruby/models/accounting/user.rb +14 -6
  137. data/lib/xero-ruby/models/accounting/users.rb +14 -6
  138. data/lib/xero-ruby/models/accounting/validation_error.rb +14 -6
  139. data/lib/xero-ruby/models/assets/asset.rb +14 -6
  140. data/lib/xero-ruby/models/assets/asset_status.rb +0 -1
  141. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +0 -1
  142. data/lib/xero-ruby/models/assets/asset_type.rb +14 -6
  143. data/lib/xero-ruby/models/assets/assets.rb +14 -6
  144. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +14 -6
  145. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +14 -6
  146. data/lib/xero-ruby/models/assets/error.rb +14 -6
  147. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +14 -6
  148. data/lib/xero-ruby/models/assets/pagination.rb +14 -6
  149. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +14 -6
  150. data/lib/xero-ruby/models/assets/setting.rb +14 -6
  151. data/lib/xero-ruby/models/files/association.rb +14 -6
  152. data/lib/xero-ruby/models/files/file_object.rb +14 -6
  153. data/lib/xero-ruby/models/files/file_response204.rb +14 -6
  154. data/lib/xero-ruby/models/files/files.rb +14 -6
  155. data/lib/xero-ruby/models/files/folder.rb +14 -6
  156. data/lib/xero-ruby/models/files/folders.rb +14 -6
  157. data/lib/xero-ruby/models/files/inline_object.rb +14 -6
  158. data/lib/xero-ruby/models/files/object_group.rb +0 -1
  159. data/lib/xero-ruby/models/files/object_type.rb +0 -1
  160. data/lib/xero-ruby/models/files/user.rb +14 -6
  161. data/lib/xero-ruby/models/payroll_au/account.rb +14 -6
  162. data/lib/xero-ruby/models/payroll_au/account_type.rb +0 -1
  163. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +0 -1
  164. data/lib/xero-ruby/models/payroll_au/api_exception.rb +14 -6
  165. data/lib/xero-ruby/models/payroll_au/bank_account.rb +14 -6
  166. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +0 -1
  167. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +14 -6
  168. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +14 -6
  169. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +0 -1
  170. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +14 -6
  171. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +14 -6
  172. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +0 -1
  173. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +1 -1
  174. data/lib/xero-ruby/models/payroll_au/employee.rb +14 -6
  175. data/lib/xero-ruby/models/payroll_au/employee_status.rb +0 -1
  176. data/lib/xero-ruby/models/payroll_au/employees.rb +14 -6
  177. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +0 -1
  178. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +0 -1
  179. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +0 -1
  180. data/lib/xero-ruby/models/payroll_au/home_address.rb +14 -6
  181. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +14 -6
  182. data/lib/xero-ruby/models/payroll_au/leave_application.rb +14 -6
  183. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +14 -6
  184. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +14 -6
  185. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +14 -6
  186. data/lib/xero-ruby/models/payroll_au/leave_line.rb +14 -6
  187. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +0 -1
  188. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +14 -6
  189. data/lib/xero-ruby/models/payroll_au/leave_period.rb +14 -6
  190. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +0 -1
  191. data/lib/xero-ruby/models/payroll_au/leave_type.rb +14 -6
  192. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +0 -1
  193. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +0 -1
  194. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +14 -6
  195. data/lib/xero-ruby/models/payroll_au/pay_item.rb +14 -6
  196. data/lib/xero-ruby/models/payroll_au/pay_items.rb +14 -6
  197. data/lib/xero-ruby/models/payroll_au/pay_run.rb +14 -6
  198. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +0 -1
  199. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +14 -6
  200. data/lib/xero-ruby/models/payroll_au/pay_template.rb +14 -6
  201. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +0 -1
  202. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +14 -6
  203. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +14 -6
  204. data/lib/xero-ruby/models/payroll_au/payslip.rb +14 -6
  205. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +14 -6
  206. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +14 -6
  207. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +14 -6
  208. data/lib/xero-ruby/models/payroll_au/payslips.rb +14 -6
  209. data/lib/xero-ruby/models/payroll_au/rate_type.rb +0 -1
  210. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +14 -6
  211. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +14 -6
  212. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +14 -6
  213. data/lib/xero-ruby/models/payroll_au/residency_status.rb +0 -1
  214. data/lib/xero-ruby/models/payroll_au/settings.rb +14 -6
  215. data/lib/xero-ruby/models/payroll_au/settings_object.rb +14 -6
  216. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +14 -6
  217. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +14 -6
  218. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +14 -6
  219. data/lib/xero-ruby/models/payroll_au/state.rb +0 -1
  220. data/lib/xero-ruby/models/payroll_au/super_fund.rb +14 -6
  221. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +14 -6
  222. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +14 -6
  223. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +0 -1
  224. data/lib/xero-ruby/models/payroll_au/super_funds.rb +14 -6
  225. data/lib/xero-ruby/models/payroll_au/super_line.rb +14 -6
  226. data/lib/xero-ruby/models/payroll_au/super_membership.rb +14 -6
  227. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +0 -1
  228. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +0 -1
  229. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +14 -6
  230. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +14 -6
  231. data/lib/xero-ruby/models/payroll_au/tax_line.rb +14 -6
  232. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +0 -1
  233. data/lib/xero-ruby/models/payroll_au/timesheet.rb +14 -6
  234. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +14 -6
  235. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +14 -6
  236. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +0 -1
  237. data/lib/xero-ruby/models/payroll_au/timesheets.rb +14 -6
  238. data/lib/xero-ruby/models/payroll_au/validation_error.rb +14 -6
  239. data/lib/xero-ruby/models/payroll_nz/account.rb +14 -6
  240. data/lib/xero-ruby/models/payroll_nz/accounts.rb +14 -6
  241. data/lib/xero-ruby/models/payroll_nz/address.rb +14 -6
  242. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +14 -6
  243. data/lib/xero-ruby/models/payroll_nz/benefit.rb +14 -6
  244. data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +0 -1
  245. data/lib/xero-ruby/models/payroll_nz/deduction.rb +14 -6
  246. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +14 -6
  247. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +14 -6
  248. data/lib/xero-ruby/models/payroll_nz/deductions.rb +14 -6
  249. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +14 -6
  250. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +14 -6
  251. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +14 -6
  252. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +14 -6
  253. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +14 -6
  254. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +14 -6
  255. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +14 -6
  256. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +14 -6
  257. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +14 -6
  258. data/lib/xero-ruby/models/payroll_nz/employee.rb +14 -6
  259. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +14 -6
  260. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +14 -6
  261. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +14 -6
  262. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +14 -6
  263. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +14 -6
  264. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +14 -6
  265. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +14 -6
  266. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +14 -6
  267. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +14 -6
  268. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +14 -6
  269. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +14 -6
  270. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +14 -6
  271. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +14 -6
  272. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +14 -6
  273. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +14 -6
  274. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +14 -6
  275. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +14 -6
  276. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +14 -6
  277. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +14 -6
  278. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +14 -6
  279. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +14 -6
  280. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +14 -6
  281. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +14 -6
  282. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +14 -6
  283. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +14 -6
  284. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +14 -6
  285. data/lib/xero-ruby/models/payroll_nz/employees.rb +14 -6
  286. data/lib/xero-ruby/models/payroll_nz/employment.rb +14 -6
  287. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +14 -6
  288. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +14 -6
  289. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +14 -6
  290. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +14 -6
  291. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +14 -6
  292. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +14 -6
  293. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +14 -6
  294. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +14 -6
  295. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +14 -6
  296. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +14 -6
  297. data/lib/xero-ruby/models/payroll_nz/pagination.rb +14 -6
  298. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +14 -6
  299. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +14 -6
  300. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +14 -6
  301. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +14 -6
  302. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +14 -6
  303. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +14 -6
  304. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +14 -6
  305. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +14 -6
  306. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +14 -6
  307. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +14 -6
  308. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +14 -6
  309. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +14 -6
  310. data/lib/xero-ruby/models/payroll_nz/problem.rb +14 -6
  311. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +14 -6
  312. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +14 -6
  313. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +14 -6
  314. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +14 -6
  315. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +15 -7
  316. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +14 -6
  317. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +14 -6
  318. data/lib/xero-ruby/models/payroll_nz/settings.rb +14 -6
  319. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +14 -6
  320. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +0 -1
  321. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +14 -6
  322. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +14 -6
  323. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +14 -6
  324. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +14 -6
  325. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +14 -6
  326. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +14 -6
  327. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +0 -1
  328. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +14 -6
  329. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +14 -6
  330. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +14 -6
  331. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +14 -6
  332. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +14 -6
  333. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +14 -6
  334. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +14 -6
  335. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +14 -6
  336. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +14 -6
  337. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +14 -6
  338. data/lib/xero-ruby/models/payroll_uk/account.rb +14 -6
  339. data/lib/xero-ruby/models/payroll_uk/accounts.rb +14 -6
  340. data/lib/xero-ruby/models/payroll_uk/address.rb +14 -6
  341. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +14 -6
  342. data/lib/xero-ruby/models/payroll_uk/benefit.rb +14 -6
  343. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +14 -6
  344. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +14 -6
  345. data/lib/xero-ruby/models/payroll_uk/benefits.rb +14 -6
  346. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +14 -6
  347. data/lib/xero-ruby/models/payroll_uk/deduction.rb +14 -6
  348. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +14 -6
  349. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +14 -6
  350. data/lib/xero-ruby/models/payroll_uk/deductions.rb +14 -6
  351. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +14 -6
  352. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +14 -6
  353. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +14 -6
  354. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +14 -6
  355. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +14 -6
  356. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +14 -6
  357. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +14 -6
  358. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +14 -6
  359. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +14 -6
  360. data/lib/xero-ruby/models/payroll_uk/employee.rb +14 -6
  361. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +14 -6
  362. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +14 -6
  363. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +14 -6
  364. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +14 -6
  365. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +14 -6
  366. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +14 -6
  367. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +14 -6
  368. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +14 -6
  369. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +14 -6
  370. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +14 -6
  371. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +14 -6
  372. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +14 -6
  373. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +14 -6
  374. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +14 -6
  375. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +14 -6
  376. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +14 -6
  377. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +14 -6
  378. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +14 -6
  379. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +14 -6
  380. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +14 -6
  381. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +14 -6
  382. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +14 -6
  383. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +14 -6
  384. data/lib/xero-ruby/models/payroll_uk/employees.rb +14 -6
  385. data/lib/xero-ruby/models/payroll_uk/employment.rb +14 -6
  386. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +14 -6
  387. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +14 -6
  388. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +14 -6
  389. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +14 -6
  390. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +14 -6
  391. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +14 -6
  392. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +14 -6
  393. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +14 -6
  394. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +14 -6
  395. data/lib/xero-ruby/models/payroll_uk/pagination.rb +14 -6
  396. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +14 -6
  397. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +14 -6
  398. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +14 -6
  399. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +14 -6
  400. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +14 -6
  401. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +14 -6
  402. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +14 -6
  403. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +14 -6
  404. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +14 -6
  405. data/lib/xero-ruby/models/payroll_uk/payslip.rb +14 -6
  406. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +14 -6
  407. data/lib/xero-ruby/models/payroll_uk/payslips.rb +14 -6
  408. data/lib/xero-ruby/models/payroll_uk/problem.rb +14 -6
  409. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +14 -6
  410. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +14 -6
  411. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +14 -6
  412. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +14 -6
  413. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +14 -6
  414. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +14 -6
  415. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +14 -6
  416. data/lib/xero-ruby/models/payroll_uk/settings.rb +14 -6
  417. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +14 -6
  418. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +0 -1
  419. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +14 -6
  420. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +14 -6
  421. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +14 -6
  422. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +14 -6
  423. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +14 -6
  424. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +14 -6
  425. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +14 -6
  426. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +14 -6
  427. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +14 -6
  428. data/lib/xero-ruby/models/projects/amount.rb +14 -6
  429. data/lib/xero-ruby/models/projects/charge_type.rb +0 -1
  430. data/lib/xero-ruby/models/projects/currency_code.rb +0 -1
  431. data/lib/xero-ruby/models/projects/error.rb +14 -6
  432. data/lib/xero-ruby/models/projects/pagination.rb +14 -6
  433. data/lib/xero-ruby/models/projects/project.rb +14 -6
  434. data/lib/xero-ruby/models/projects/project_create_or_update.rb +14 -6
  435. data/lib/xero-ruby/models/projects/project_patch.rb +14 -6
  436. data/lib/xero-ruby/models/projects/project_status.rb +0 -1
  437. data/lib/xero-ruby/models/projects/project_user.rb +14 -6
  438. data/lib/xero-ruby/models/projects/project_users.rb +14 -6
  439. data/lib/xero-ruby/models/projects/projects.rb +14 -6
  440. data/lib/xero-ruby/models/projects/task.rb +14 -6
  441. data/lib/xero-ruby/models/projects/task_create_or_update.rb +14 -6
  442. data/lib/xero-ruby/models/projects/tasks.rb +14 -6
  443. data/lib/xero-ruby/models/projects/time_entries.rb +14 -6
  444. data/lib/xero-ruby/models/projects/time_entry.rb +14 -6
  445. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +14 -6
  446. data/lib/xero-ruby/version.rb +2 -2
  447. data/spec/api_client_spec.rb +101 -13
  448. data/spec/api_error_spec.rb +45 -0
  449. data/spec/configuration_spec.rb +9 -16
  450. data/spec/helper_methods_spec.rb +82 -0
  451. metadata +10 -5
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -258,16 +257,22 @@ module XeroRuby::Accounting
258
257
 
259
258
  # Returns the object in the form of hash
260
259
  # @return [Hash] Returns the object in the form of hash
261
- def to_hash
260
+ def to_hash(downcase: false)
262
261
  hash = {}
263
262
  self.class.attribute_map.each_pair do |attr, param|
264
263
  value = self.send(attr)
265
264
  next if value.nil?
266
- hash[param] = _to_hash(value)
265
+ key = downcase ? attr : param
266
+ hash[key] = _to_hash(value)
267
267
  end
268
268
  hash
269
269
  end
270
270
 
271
+ # Returns the object in the form of hash with snake_case
272
+ def attributes
273
+ to_hash(downcase: true)
274
+ end
275
+
271
276
  # Outputs non-array value in the form of hash
272
277
  # For object, use to_hash. Otherwise, just return the value
273
278
  # @param [Object] value Any valid value
@@ -286,10 +291,13 @@ module XeroRuby::Accounting
286
291
  end
287
292
  end
288
293
 
289
- # customized data_parser
290
294
  def parse_date(datestring)
291
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
292
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
295
+ if datestring.include?('Date')
296
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
297
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
298
+ else # handle date 'types' for small subset of payroll API's
299
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
300
+ end
293
301
  end
294
302
  end
295
303
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -173,16 +172,22 @@ module XeroRuby::Accounting
173
172
 
174
173
  # Returns the object in the form of hash
175
174
  # @return [Hash] Returns the object in the form of hash
176
- def to_hash
175
+ def to_hash(downcase: false)
177
176
  hash = {}
178
177
  self.class.attribute_map.each_pair do |attr, param|
179
178
  value = self.send(attr)
180
179
  next if value.nil?
181
- hash[param] = _to_hash(value)
180
+ key = downcase ? attr : param
181
+ hash[key] = _to_hash(value)
182
182
  end
183
183
  hash
184
184
  end
185
185
 
186
+ # Returns the object in the form of hash with snake_case
187
+ def attributes
188
+ to_hash(downcase: true)
189
+ end
190
+
186
191
  # Outputs non-array value in the form of hash
187
192
  # For object, use to_hash. Otherwise, just return the value
188
193
  # @param [Object] value Any valid value
@@ -201,10 +206,13 @@ module XeroRuby::Accounting
201
206
  end
202
207
  end
203
208
 
204
- # customized data_parser
205
209
  def parse_date(datestring)
206
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
210
+ if datestring.include?('Date')
211
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
212
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
213
+ else # handle date 'types' for small subset of payroll API's
214
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
215
+ end
208
216
  end
209
217
  end
210
218
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -221,16 +220,22 @@ module XeroRuby::Accounting
221
220
 
222
221
  # Returns the object in the form of hash
223
222
  # @return [Hash] Returns the object in the form of hash
224
- def to_hash
223
+ def to_hash(downcase: false)
225
224
  hash = {}
226
225
  self.class.attribute_map.each_pair do |attr, param|
227
226
  value = self.send(attr)
228
227
  next if value.nil?
229
- hash[param] = _to_hash(value)
228
+ key = downcase ? attr : param
229
+ hash[key] = _to_hash(value)
230
230
  end
231
231
  hash
232
232
  end
233
233
 
234
+ # Returns the object in the form of hash with snake_case
235
+ def attributes
236
+ to_hash(downcase: true)
237
+ end
238
+
234
239
  # Outputs non-array value in the form of hash
235
240
  # For object, use to_hash. Otherwise, just return the value
236
241
  # @param [Object] value Any valid value
@@ -249,10 +254,13 @@ module XeroRuby::Accounting
249
254
  end
250
255
  end
251
256
 
252
- # customized data_parser
253
257
  def parse_date(datestring)
254
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
255
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
258
+ if datestring.include?('Date')
259
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
260
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
261
+ else # handle date 'types' for small subset of payroll API's
262
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
263
+ end
256
264
  end
257
265
  end
258
266
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -173,16 +172,22 @@ module XeroRuby::Accounting
173
172
 
174
173
  # Returns the object in the form of hash
175
174
  # @return [Hash] Returns the object in the form of hash
176
- def to_hash
175
+ def to_hash(downcase: false)
177
176
  hash = {}
178
177
  self.class.attribute_map.each_pair do |attr, param|
179
178
  value = self.send(attr)
180
179
  next if value.nil?
181
- hash[param] = _to_hash(value)
180
+ key = downcase ? attr : param
181
+ hash[key] = _to_hash(value)
182
182
  end
183
183
  hash
184
184
  end
185
185
 
186
+ # Returns the object in the form of hash with snake_case
187
+ def attributes
188
+ to_hash(downcase: true)
189
+ end
190
+
186
191
  # Outputs non-array value in the form of hash
187
192
  # For object, use to_hash. Otherwise, just return the value
188
193
  # @param [Object] value Any valid value
@@ -201,10 +206,13 @@ module XeroRuby::Accounting
201
206
  end
202
207
  end
203
208
 
204
- # customized data_parser
205
209
  def parse_date(datestring)
206
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
210
+ if datestring.include?('Date')
211
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
212
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
213
+ else # handle date 'types' for small subset of payroll API's
214
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
215
+ end
208
216
  end
209
217
  end
210
218
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -192,16 +191,22 @@ module XeroRuby::Accounting
192
191
 
193
192
  # Returns the object in the form of hash
194
193
  # @return [Hash] Returns the object in the form of hash
195
- def to_hash
194
+ def to_hash(downcase: false)
196
195
  hash = {}
197
196
  self.class.attribute_map.each_pair do |attr, param|
198
197
  value = self.send(attr)
199
198
  next if value.nil?
200
- hash[param] = _to_hash(value)
199
+ key = downcase ? attr : param
200
+ hash[key] = _to_hash(value)
201
201
  end
202
202
  hash
203
203
  end
204
204
 
205
+ # Returns the object in the form of hash with snake_case
206
+ def attributes
207
+ to_hash(downcase: true)
208
+ end
209
+
205
210
  # Outputs non-array value in the form of hash
206
211
  # For object, use to_hash. Otherwise, just return the value
207
212
  # @param [Object] value Any valid value
@@ -220,10 +225,13 @@ module XeroRuby::Accounting
220
225
  end
221
226
  end
222
227
 
223
- # customized data_parser
224
228
  def parse_date(datestring)
225
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
226
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
229
+ if datestring.include?('Date')
230
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
231
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
232
+ else # handle date 'types' for small subset of payroll API's
233
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
234
+ end
227
235
  end
228
236
  end
229
237
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -182,16 +181,22 @@ module XeroRuby::Accounting
182
181
 
183
182
  # Returns the object in the form of hash
184
183
  # @return [Hash] Returns the object in the form of hash
185
- def to_hash
184
+ def to_hash(downcase: false)
186
185
  hash = {}
187
186
  self.class.attribute_map.each_pair do |attr, param|
188
187
  value = self.send(attr)
189
188
  next if value.nil?
190
- hash[param] = _to_hash(value)
189
+ key = downcase ? attr : param
190
+ hash[key] = _to_hash(value)
191
191
  end
192
192
  hash
193
193
  end
194
194
 
195
+ # Returns the object in the form of hash with snake_case
196
+ def attributes
197
+ to_hash(downcase: true)
198
+ end
199
+
195
200
  # Outputs non-array value in the form of hash
196
201
  # For object, use to_hash. Otherwise, just return the value
197
202
  # @param [Object] value Any valid value
@@ -210,10 +215,13 @@ module XeroRuby::Accounting
210
215
  end
211
216
  end
212
217
 
213
- # customized data_parser
214
218
  def parse_date(datestring)
215
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
216
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
219
+ if datestring.include?('Date')
220
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
221
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
222
+ else # handle date 'types' for small subset of payroll API's
223
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
224
+ end
217
225
  end
218
226
  end
219
227
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -459,16 +458,22 @@ module XeroRuby::Accounting
459
458
 
460
459
  # Returns the object in the form of hash
461
460
  # @return [Hash] Returns the object in the form of hash
462
- def to_hash
461
+ def to_hash(downcase: false)
463
462
  hash = {}
464
463
  self.class.attribute_map.each_pair do |attr, param|
465
464
  value = self.send(attr)
466
465
  next if value.nil?
467
- hash[param] = _to_hash(value)
466
+ key = downcase ? attr : param
467
+ hash[key] = _to_hash(value)
468
468
  end
469
469
  hash
470
470
  end
471
471
 
472
+ # Returns the object in the form of hash with snake_case
473
+ def attributes
474
+ to_hash(downcase: true)
475
+ end
476
+
472
477
  # Outputs non-array value in the form of hash
473
478
  # For object, use to_hash. Otherwise, just return the value
474
479
  # @param [Object] value Any valid value
@@ -487,10 +492,13 @@ module XeroRuby::Accounting
487
492
  end
488
493
  end
489
494
 
490
- # customized data_parser
491
495
  def parse_date(datestring)
492
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
493
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
496
+ if datestring.include?('Date')
497
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
498
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
499
+ else # handle date 'types' for small subset of payroll API's
500
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
501
+ end
494
502
  end
495
503
  end
496
504
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -173,16 +172,22 @@ module XeroRuby::Accounting
173
172
 
174
173
  # Returns the object in the form of hash
175
174
  # @return [Hash] Returns the object in the form of hash
176
- def to_hash
175
+ def to_hash(downcase: false)
177
176
  hash = {}
178
177
  self.class.attribute_map.each_pair do |attr, param|
179
178
  value = self.send(attr)
180
179
  next if value.nil?
181
- hash[param] = _to_hash(value)
180
+ key = downcase ? attr : param
181
+ hash[key] = _to_hash(value)
182
182
  end
183
183
  hash
184
184
  end
185
185
 
186
+ # Returns the object in the form of hash with snake_case
187
+ def attributes
188
+ to_hash(downcase: true)
189
+ end
190
+
186
191
  # Outputs non-array value in the form of hash
187
192
  # For object, use to_hash. Otherwise, just return the value
188
193
  # @param [Object] value Any valid value
@@ -201,10 +206,13 @@ module XeroRuby::Accounting
201
206
  end
202
207
  end
203
208
 
204
- # customized data_parser
205
209
  def parse_date(datestring)
206
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
207
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
210
+ if datestring.include?('Date')
211
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
212
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
213
+ else # handle date 'types' for small subset of payroll API's
214
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
215
+ end
208
216
  end
209
217
  end
210
218
  end
@@ -3,7 +3,6 @@
3
3
 
4
4
  #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
5
 
6
- The version of the OpenAPI document: 2.6.0
7
6
  Contact: api@xero.com
8
7
  Generated by: https://openapi-generator.tech
9
8
  OpenAPI Generator version: 4.3.1
@@ -290,16 +289,22 @@ module XeroRuby::Accounting
290
289
 
291
290
  # Returns the object in the form of hash
292
291
  # @return [Hash] Returns the object in the form of hash
293
- def to_hash
292
+ def to_hash(downcase: false)
294
293
  hash = {}
295
294
  self.class.attribute_map.each_pair do |attr, param|
296
295
  value = self.send(attr)
297
296
  next if value.nil?
298
- hash[param] = _to_hash(value)
297
+ key = downcase ? attr : param
298
+ hash[key] = _to_hash(value)
299
299
  end
300
300
  hash
301
301
  end
302
302
 
303
+ # Returns the object in the form of hash with snake_case
304
+ def attributes
305
+ to_hash(downcase: true)
306
+ end
307
+
303
308
  # Outputs non-array value in the form of hash
304
309
  # For object, use to_hash. Otherwise, just return the value
305
310
  # @param [Object] value Any valid value
@@ -318,10 +323,13 @@ module XeroRuby::Accounting
318
323
  end
319
324
  end
320
325
 
321
- # customized data_parser
322
326
  def parse_date(datestring)
323
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
324
- return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
327
+ if datestring.include?('Date')
328
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
329
+ Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
330
+ else # handle date 'types' for small subset of payroll API's
331
+ Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
332
+ end
325
333
  end
326
334
  end
327
335
  end