xero-ruby 2.10.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -6
  3. data/lib/xero-ruby/api/accounting_api.rb +5 -2
  4. data/lib/xero-ruby/models/accounting/account.rb +11 -7
  5. data/lib/xero-ruby/models/accounting/accounts.rb +11 -7
  6. data/lib/xero-ruby/models/accounting/accounts_payable.rb +11 -7
  7. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +11 -7
  8. data/lib/xero-ruby/models/accounting/action.rb +11 -7
  9. data/lib/xero-ruby/models/accounting/actions.rb +11 -7
  10. data/lib/xero-ruby/models/accounting/address.rb +11 -7
  11. data/lib/xero-ruby/models/accounting/address_for_organisation.rb +11 -7
  12. data/lib/xero-ruby/models/accounting/allocation.rb +11 -7
  13. data/lib/xero-ruby/models/accounting/allocations.rb +11 -7
  14. data/lib/xero-ruby/models/accounting/attachment.rb +11 -7
  15. data/lib/xero-ruby/models/accounting/attachments.rb +11 -7
  16. data/lib/xero-ruby/models/accounting/balance_details.rb +11 -7
  17. data/lib/xero-ruby/models/accounting/balances.rb +11 -7
  18. data/lib/xero-ruby/models/accounting/bank_transaction.rb +11 -7
  19. data/lib/xero-ruby/models/accounting/bank_transactions.rb +11 -7
  20. data/lib/xero-ruby/models/accounting/bank_transfer.rb +11 -7
  21. data/lib/xero-ruby/models/accounting/bank_transfers.rb +11 -7
  22. data/lib/xero-ruby/models/accounting/batch_payment.rb +11 -7
  23. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +11 -7
  24. data/lib/xero-ruby/models/accounting/batch_payments.rb +11 -7
  25. data/lib/xero-ruby/models/accounting/bill.rb +11 -7
  26. data/lib/xero-ruby/models/accounting/branding_theme.rb +11 -7
  27. data/lib/xero-ruby/models/accounting/branding_themes.rb +11 -7
  28. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +11 -7
  29. data/lib/xero-ruby/models/accounting/cis_org_settings.rb +11 -7
  30. data/lib/xero-ruby/models/accounting/cis_setting.rb +11 -7
  31. data/lib/xero-ruby/models/accounting/cis_settings.rb +11 -7
  32. data/lib/xero-ruby/models/accounting/contact.rb +11 -7
  33. data/lib/xero-ruby/models/accounting/contact_group.rb +11 -7
  34. data/lib/xero-ruby/models/accounting/contact_groups.rb +11 -7
  35. data/lib/xero-ruby/models/accounting/contact_person.rb +11 -7
  36. data/lib/xero-ruby/models/accounting/contacts.rb +11 -7
  37. data/lib/xero-ruby/models/accounting/conversion_balances.rb +11 -7
  38. data/lib/xero-ruby/models/accounting/conversion_date.rb +11 -7
  39. data/lib/xero-ruby/models/accounting/credit_note.rb +11 -7
  40. data/lib/xero-ruby/models/accounting/credit_notes.rb +11 -7
  41. data/lib/xero-ruby/models/accounting/currencies.rb +11 -7
  42. data/lib/xero-ruby/models/accounting/currency.rb +11 -7
  43. data/lib/xero-ruby/models/accounting/element.rb +11 -7
  44. data/lib/xero-ruby/models/accounting/employee.rb +11 -7
  45. data/lib/xero-ruby/models/accounting/employees.rb +11 -7
  46. data/lib/xero-ruby/models/accounting/error.rb +11 -7
  47. data/lib/xero-ruby/models/accounting/expense_claim.rb +11 -7
  48. data/lib/xero-ruby/models/accounting/expense_claims.rb +11 -7
  49. data/lib/xero-ruby/models/accounting/external_link.rb +11 -7
  50. data/lib/xero-ruby/models/accounting/history_record.rb +11 -7
  51. data/lib/xero-ruby/models/accounting/history_records.rb +11 -7
  52. data/lib/xero-ruby/models/accounting/import_summary.rb +11 -7
  53. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +11 -7
  54. data/lib/xero-ruby/models/accounting/import_summary_object.rb +11 -7
  55. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +11 -7
  56. data/lib/xero-ruby/models/accounting/invoice.rb +11 -7
  57. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +11 -7
  58. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +11 -7
  59. data/lib/xero-ruby/models/accounting/invoices.rb +11 -7
  60. data/lib/xero-ruby/models/accounting/item.rb +11 -7
  61. data/lib/xero-ruby/models/accounting/items.rb +11 -7
  62. data/lib/xero-ruby/models/accounting/journal.rb +11 -7
  63. data/lib/xero-ruby/models/accounting/journal_line.rb +11 -7
  64. data/lib/xero-ruby/models/accounting/journals.rb +11 -7
  65. data/lib/xero-ruby/models/accounting/line_item.rb +11 -7
  66. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +11 -7
  67. data/lib/xero-ruby/models/accounting/linked_transaction.rb +11 -7
  68. data/lib/xero-ruby/models/accounting/linked_transactions.rb +11 -7
  69. data/lib/xero-ruby/models/accounting/manual_journal.rb +11 -7
  70. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +11 -7
  71. data/lib/xero-ruby/models/accounting/manual_journals.rb +11 -7
  72. data/lib/xero-ruby/models/accounting/online_invoice.rb +11 -7
  73. data/lib/xero-ruby/models/accounting/online_invoices.rb +11 -7
  74. data/lib/xero-ruby/models/accounting/organisation.rb +11 -7
  75. data/lib/xero-ruby/models/accounting/organisations.rb +11 -7
  76. data/lib/xero-ruby/models/accounting/overpayment.rb +11 -7
  77. data/lib/xero-ruby/models/accounting/overpayments.rb +11 -7
  78. data/lib/xero-ruby/models/accounting/payment.rb +11 -7
  79. data/lib/xero-ruby/models/accounting/payment_delete.rb +11 -7
  80. data/lib/xero-ruby/models/accounting/payment_service.rb +11 -7
  81. data/lib/xero-ruby/models/accounting/payment_services.rb +11 -7
  82. data/lib/xero-ruby/models/accounting/payment_term.rb +11 -7
  83. data/lib/xero-ruby/models/accounting/payments.rb +11 -7
  84. data/lib/xero-ruby/models/accounting/phone.rb +11 -7
  85. data/lib/xero-ruby/models/accounting/prepayment.rb +24 -8
  86. data/lib/xero-ruby/models/accounting/prepayments.rb +11 -7
  87. data/lib/xero-ruby/models/accounting/purchase.rb +11 -7
  88. data/lib/xero-ruby/models/accounting/purchase_order.rb +11 -7
  89. data/lib/xero-ruby/models/accounting/purchase_orders.rb +11 -7
  90. data/lib/xero-ruby/models/accounting/quote.rb +11 -7
  91. data/lib/xero-ruby/models/accounting/quotes.rb +11 -7
  92. data/lib/xero-ruby/models/accounting/receipt.rb +11 -7
  93. data/lib/xero-ruby/models/accounting/receipts.rb +11 -7
  94. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +11 -7
  95. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +11 -7
  96. data/lib/xero-ruby/models/accounting/report.rb +11 -7
  97. data/lib/xero-ruby/models/accounting/report_attribute.rb +11 -7
  98. data/lib/xero-ruby/models/accounting/report_cell.rb +11 -7
  99. data/lib/xero-ruby/models/accounting/report_fields.rb +11 -7
  100. data/lib/xero-ruby/models/accounting/report_row.rb +11 -7
  101. data/lib/xero-ruby/models/accounting/report_rows.rb +11 -7
  102. data/lib/xero-ruby/models/accounting/report_with_row.rb +11 -7
  103. data/lib/xero-ruby/models/accounting/report_with_rows.rb +11 -7
  104. data/lib/xero-ruby/models/accounting/reports.rb +11 -7
  105. data/lib/xero-ruby/models/accounting/request_empty.rb +11 -7
  106. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +11 -7
  107. data/lib/xero-ruby/models/accounting/schedule.rb +11 -7
  108. data/lib/xero-ruby/models/accounting/setup.rb +11 -7
  109. data/lib/xero-ruby/models/accounting/tax_component.rb +11 -7
  110. data/lib/xero-ruby/models/accounting/tax_rate.rb +11 -7
  111. data/lib/xero-ruby/models/accounting/tax_rates.rb +11 -7
  112. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +11 -7
  113. data/lib/xero-ruby/models/accounting/tracking_categories.rb +11 -7
  114. data/lib/xero-ruby/models/accounting/tracking_category.rb +11 -7
  115. data/lib/xero-ruby/models/accounting/tracking_option.rb +11 -7
  116. data/lib/xero-ruby/models/accounting/tracking_options.rb +11 -7
  117. data/lib/xero-ruby/models/accounting/user.rb +11 -7
  118. data/lib/xero-ruby/models/accounting/users.rb +11 -7
  119. data/lib/xero-ruby/models/accounting/validation_error.rb +11 -7
  120. data/lib/xero-ruby/models/assets/asset.rb +11 -7
  121. data/lib/xero-ruby/models/assets/asset_type.rb +11 -7
  122. data/lib/xero-ruby/models/assets/assets.rb +11 -7
  123. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +11 -7
  124. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +11 -7
  125. data/lib/xero-ruby/models/assets/error.rb +11 -7
  126. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +11 -7
  127. data/lib/xero-ruby/models/assets/pagination.rb +11 -7
  128. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +11 -7
  129. data/lib/xero-ruby/models/assets/setting.rb +11 -7
  130. data/lib/xero-ruby/models/files/association.rb +11 -7
  131. data/lib/xero-ruby/models/files/file_object.rb +11 -7
  132. data/lib/xero-ruby/models/files/files.rb +11 -7
  133. data/lib/xero-ruby/models/files/folder.rb +11 -7
  134. data/lib/xero-ruby/models/files/folders.rb +11 -7
  135. data/lib/xero-ruby/models/files/upload_object.rb +11 -7
  136. data/lib/xero-ruby/models/files/user.rb +11 -7
  137. data/lib/xero-ruby/models/payroll_au/account.rb +11 -7
  138. data/lib/xero-ruby/models/payroll_au/api_exception.rb +11 -7
  139. data/lib/xero-ruby/models/payroll_au/bank_account.rb +11 -7
  140. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +11 -7
  141. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +11 -7
  142. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +11 -7
  143. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +11 -7
  144. data/lib/xero-ruby/models/payroll_au/employee.rb +11 -7
  145. data/lib/xero-ruby/models/payroll_au/employees.rb +11 -7
  146. data/lib/xero-ruby/models/payroll_au/home_address.rb +11 -7
  147. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +11 -7
  148. data/lib/xero-ruby/models/payroll_au/leave_application.rb +11 -7
  149. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +11 -7
  150. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +11 -7
  151. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +11 -7
  152. data/lib/xero-ruby/models/payroll_au/leave_line.rb +11 -7
  153. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +11 -7
  154. data/lib/xero-ruby/models/payroll_au/leave_period.rb +11 -7
  155. data/lib/xero-ruby/models/payroll_au/leave_type.rb +11 -7
  156. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +11 -7
  157. data/lib/xero-ruby/models/payroll_au/pay_item.rb +11 -7
  158. data/lib/xero-ruby/models/payroll_au/pay_items.rb +11 -7
  159. data/lib/xero-ruby/models/payroll_au/pay_run.rb +11 -7
  160. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +11 -7
  161. data/lib/xero-ruby/models/payroll_au/pay_template.rb +11 -7
  162. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +11 -7
  163. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +11 -7
  164. data/lib/xero-ruby/models/payroll_au/payslip.rb +11 -7
  165. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +11 -7
  166. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +11 -7
  167. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +11 -7
  168. data/lib/xero-ruby/models/payroll_au/payslips.rb +11 -7
  169. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +11 -7
  170. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +11 -7
  171. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +11 -7
  172. data/lib/xero-ruby/models/payroll_au/settings.rb +11 -7
  173. data/lib/xero-ruby/models/payroll_au/settings_object.rb +11 -7
  174. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +11 -7
  175. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +11 -7
  176. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +11 -7
  177. data/lib/xero-ruby/models/payroll_au/super_fund.rb +11 -7
  178. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +11 -7
  179. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +11 -7
  180. data/lib/xero-ruby/models/payroll_au/super_funds.rb +11 -7
  181. data/lib/xero-ruby/models/payroll_au/super_line.rb +11 -7
  182. data/lib/xero-ruby/models/payroll_au/super_membership.rb +11 -7
  183. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +11 -7
  184. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +11 -7
  185. data/lib/xero-ruby/models/payroll_au/tax_line.rb +11 -7
  186. data/lib/xero-ruby/models/payroll_au/timesheet.rb +11 -7
  187. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +11 -7
  188. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +11 -7
  189. data/lib/xero-ruby/models/payroll_au/timesheets.rb +11 -7
  190. data/lib/xero-ruby/models/payroll_au/validation_error.rb +11 -7
  191. data/lib/xero-ruby/models/payroll_nz/account.rb +11 -7
  192. data/lib/xero-ruby/models/payroll_nz/accounts.rb +11 -7
  193. data/lib/xero-ruby/models/payroll_nz/address.rb +11 -7
  194. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +11 -7
  195. data/lib/xero-ruby/models/payroll_nz/benefit.rb +11 -7
  196. data/lib/xero-ruby/models/payroll_nz/deduction.rb +11 -7
  197. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +11 -7
  198. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +11 -7
  199. data/lib/xero-ruby/models/payroll_nz/deductions.rb +11 -7
  200. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +11 -7
  201. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +11 -7
  202. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +11 -7
  203. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +11 -7
  204. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +11 -7
  205. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +11 -7
  206. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +11 -7
  207. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +11 -7
  208. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +11 -7
  209. data/lib/xero-ruby/models/payroll_nz/employee.rb +11 -7
  210. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +11 -7
  211. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +11 -7
  212. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +11 -7
  213. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +11 -7
  214. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +11 -7
  215. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +11 -7
  216. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +11 -7
  217. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +11 -7
  218. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +11 -7
  219. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +11 -7
  220. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +11 -7
  221. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +11 -7
  222. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +11 -7
  223. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +11 -7
  224. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +11 -7
  225. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +11 -7
  226. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +11 -7
  227. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +11 -7
  228. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +11 -7
  229. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +11 -7
  230. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +11 -7
  231. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +11 -7
  232. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +11 -7
  233. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +11 -7
  234. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +11 -7
  235. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +11 -7
  236. data/lib/xero-ruby/models/payroll_nz/employees.rb +11 -7
  237. data/lib/xero-ruby/models/payroll_nz/employment.rb +11 -7
  238. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +11 -7
  239. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +11 -7
  240. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +11 -7
  241. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +11 -7
  242. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +11 -7
  243. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +11 -7
  244. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +11 -7
  245. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +11 -7
  246. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +11 -7
  247. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +11 -7
  248. data/lib/xero-ruby/models/payroll_nz/pagination.rb +11 -7
  249. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +11 -7
  250. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +11 -7
  251. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +11 -7
  252. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +11 -7
  253. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +11 -7
  254. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +11 -7
  255. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +11 -7
  256. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +11 -7
  257. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +11 -7
  258. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +11 -7
  259. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +11 -7
  260. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +11 -7
  261. data/lib/xero-ruby/models/payroll_nz/problem.rb +11 -7
  262. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +11 -7
  263. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +11 -7
  264. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +11 -7
  265. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +11 -7
  266. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +11 -7
  267. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +11 -7
  268. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +11 -7
  269. data/lib/xero-ruby/models/payroll_nz/settings.rb +11 -7
  270. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +11 -7
  271. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +11 -7
  272. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +11 -7
  273. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +11 -7
  274. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +11 -7
  275. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +11 -7
  276. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +11 -7
  277. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +11 -7
  278. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +11 -7
  279. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +11 -7
  280. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +11 -7
  281. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +11 -7
  282. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +11 -7
  283. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +11 -7
  284. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +11 -7
  285. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +11 -7
  286. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +11 -7
  287. data/lib/xero-ruby/models/payroll_uk/account.rb +11 -7
  288. data/lib/xero-ruby/models/payroll_uk/accounts.rb +11 -7
  289. data/lib/xero-ruby/models/payroll_uk/address.rb +11 -7
  290. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +11 -7
  291. data/lib/xero-ruby/models/payroll_uk/benefit.rb +11 -7
  292. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +11 -7
  293. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +11 -7
  294. data/lib/xero-ruby/models/payroll_uk/benefits.rb +11 -7
  295. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +11 -7
  296. data/lib/xero-ruby/models/payroll_uk/deduction.rb +11 -7
  297. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +11 -7
  298. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +11 -7
  299. data/lib/xero-ruby/models/payroll_uk/deductions.rb +11 -7
  300. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +11 -7
  301. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +11 -7
  302. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +11 -7
  303. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +11 -7
  304. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +11 -7
  305. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +11 -7
  306. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +11 -7
  307. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +11 -7
  308. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +11 -7
  309. data/lib/xero-ruby/models/payroll_uk/employee.rb +11 -7
  310. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +11 -7
  311. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +11 -7
  312. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +11 -7
  313. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +11 -7
  314. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +11 -7
  315. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +11 -7
  316. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +11 -7
  317. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +11 -7
  318. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +11 -7
  319. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +11 -7
  320. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +11 -7
  321. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +11 -7
  322. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +11 -7
  323. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +11 -7
  324. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +11 -7
  325. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +11 -7
  326. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +11 -7
  327. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +11 -7
  328. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +11 -7
  329. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +11 -7
  330. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +11 -7
  331. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +11 -7
  332. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +11 -7
  333. data/lib/xero-ruby/models/payroll_uk/employees.rb +11 -7
  334. data/lib/xero-ruby/models/payroll_uk/employment.rb +11 -7
  335. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +11 -7
  336. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +11 -7
  337. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +11 -7
  338. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +11 -7
  339. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +11 -7
  340. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +11 -7
  341. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +11 -7
  342. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +11 -7
  343. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +11 -7
  344. data/lib/xero-ruby/models/payroll_uk/pagination.rb +11 -7
  345. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +11 -7
  346. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +11 -7
  347. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +11 -7
  348. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +11 -7
  349. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +11 -7
  350. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +11 -7
  351. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +11 -7
  352. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +11 -7
  353. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +11 -7
  354. data/lib/xero-ruby/models/payroll_uk/payslip.rb +11 -7
  355. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +11 -7
  356. data/lib/xero-ruby/models/payroll_uk/payslips.rb +11 -7
  357. data/lib/xero-ruby/models/payroll_uk/problem.rb +11 -7
  358. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +11 -7
  359. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +11 -7
  360. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +11 -7
  361. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +11 -7
  362. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +11 -7
  363. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +11 -7
  364. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +11 -7
  365. data/lib/xero-ruby/models/payroll_uk/settings.rb +11 -7
  366. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +11 -7
  367. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +11 -7
  368. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +11 -7
  369. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +11 -7
  370. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +11 -7
  371. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +11 -7
  372. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +11 -7
  373. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +11 -7
  374. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +11 -7
  375. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +11 -7
  376. data/lib/xero-ruby/models/projects/amount.rb +11 -7
  377. data/lib/xero-ruby/models/projects/error.rb +11 -7
  378. data/lib/xero-ruby/models/projects/pagination.rb +11 -7
  379. data/lib/xero-ruby/models/projects/project.rb +11 -7
  380. data/lib/xero-ruby/models/projects/project_create_or_update.rb +11 -7
  381. data/lib/xero-ruby/models/projects/project_patch.rb +11 -7
  382. data/lib/xero-ruby/models/projects/project_user.rb +11 -7
  383. data/lib/xero-ruby/models/projects/project_users.rb +11 -7
  384. data/lib/xero-ruby/models/projects/projects.rb +11 -7
  385. data/lib/xero-ruby/models/projects/task.rb +11 -7
  386. data/lib/xero-ruby/models/projects/task_create_or_update.rb +11 -7
  387. data/lib/xero-ruby/models/projects/tasks.rb +11 -7
  388. data/lib/xero-ruby/models/projects/time_entries.rb +11 -7
  389. data/lib/xero-ruby/models/projects/time_entry.rb +11 -7
  390. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +11 -7
  391. data/lib/xero-ruby/version.rb +2 -2
  392. data/spec/helper_methods_spec.rb +28 -0
  393. metadata +2 -2
@@ -221,7 +221,7 @@ module XeroRuby::Projects
221
221
  value = self.send(attr)
222
222
  next if value.nil?
223
223
  key = downcase ? attr : param
224
- hash[key] = _to_hash(value)
224
+ hash[key] = _to_hash(value, downcase: downcase)
225
225
  end
226
226
  hash
227
227
  end
@@ -235,15 +235,17 @@ module XeroRuby::Projects
235
235
  # For object, use to_hash. Otherwise, just return the value
236
236
  # @param [Object] value Any valid value
237
237
  # @return [Hash] Returns the value in the form of hash
238
- def _to_hash(value)
238
+ def _to_hash(value, downcase: false)
239
239
  if value.is_a?(Array)
240
- value.compact.map { |v| _to_hash(v) }
240
+ value.map do |v|
241
+ v.to_hash(downcase: downcase)
242
+ end
241
243
  elsif value.is_a?(Hash)
242
244
  {}.tap do |hash|
243
- value.each { |k, v| hash[k] = _to_hash(v) }
245
+ value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
244
246
  end
245
247
  elsif value.respond_to? :to_hash
246
- value.to_hash
248
+ value.to_hash(downcase: downcase)
247
249
  else
248
250
  value
249
251
  end
@@ -251,8 +253,10 @@ module XeroRuby::Projects
251
253
 
252
254
  def parse_date(datestring)
253
255
  if datestring.include?('Date')
254
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
255
- Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
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
256
260
  else # handle date 'types' for small subset of payroll API's
257
261
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
258
262
  end
@@ -188,7 +188,7 @@ module XeroRuby::Projects
188
188
  value = self.send(attr)
189
189
  next if value.nil?
190
190
  key = downcase ? attr : param
191
- hash[key] = _to_hash(value)
191
+ hash[key] = _to_hash(value, downcase: downcase)
192
192
  end
193
193
  hash
194
194
  end
@@ -202,15 +202,17 @@ module XeroRuby::Projects
202
202
  # For object, use to_hash. Otherwise, just return the value
203
203
  # @param [Object] value Any valid value
204
204
  # @return [Hash] Returns the value in the form of hash
205
- def _to_hash(value)
205
+ def _to_hash(value, downcase: false)
206
206
  if value.is_a?(Array)
207
- value.compact.map { |v| _to_hash(v) }
207
+ value.map do |v|
208
+ v.to_hash(downcase: downcase)
209
+ end
208
210
  elsif value.is_a?(Hash)
209
211
  {}.tap do |hash|
210
- value.each { |k, v| hash[k] = _to_hash(v) }
212
+ value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
211
213
  end
212
214
  elsif value.respond_to? :to_hash
213
- value.to_hash
215
+ value.to_hash(downcase: downcase)
214
216
  else
215
217
  value
216
218
  end
@@ -218,8 +220,10 @@ module XeroRuby::Projects
218
220
 
219
221
  def parse_date(datestring)
220
222
  if datestring.include?('Date')
221
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
222
- Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
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
223
227
  else # handle date 'types' for small subset of payroll API's
224
228
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
225
229
  end
@@ -188,7 +188,7 @@ module XeroRuby::Projects
188
188
  value = self.send(attr)
189
189
  next if value.nil?
190
190
  key = downcase ? attr : param
191
- hash[key] = _to_hash(value)
191
+ hash[key] = _to_hash(value, downcase: downcase)
192
192
  end
193
193
  hash
194
194
  end
@@ -202,15 +202,17 @@ module XeroRuby::Projects
202
202
  # For object, use to_hash. Otherwise, just return the value
203
203
  # @param [Object] value Any valid value
204
204
  # @return [Hash] Returns the value in the form of hash
205
- def _to_hash(value)
205
+ def _to_hash(value, downcase: false)
206
206
  if value.is_a?(Array)
207
- value.compact.map { |v| _to_hash(v) }
207
+ value.map do |v|
208
+ v.to_hash(downcase: downcase)
209
+ end
208
210
  elsif value.is_a?(Hash)
209
211
  {}.tap do |hash|
210
- value.each { |k, v| hash[k] = _to_hash(v) }
212
+ value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
211
213
  end
212
214
  elsif value.respond_to? :to_hash
213
- value.to_hash
215
+ value.to_hash(downcase: downcase)
214
216
  else
215
217
  value
216
218
  end
@@ -218,8 +220,10 @@ module XeroRuby::Projects
218
220
 
219
221
  def parse_date(datestring)
220
222
  if datestring.include?('Date')
221
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
222
- Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
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
223
227
  else # handle date 'types' for small subset of payroll API's
224
228
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
225
229
  end
@@ -293,7 +293,7 @@ module XeroRuby::Projects
293
293
  value = self.send(attr)
294
294
  next if value.nil?
295
295
  key = downcase ? attr : param
296
- hash[key] = _to_hash(value)
296
+ hash[key] = _to_hash(value, downcase: downcase)
297
297
  end
298
298
  hash
299
299
  end
@@ -307,15 +307,17 @@ module XeroRuby::Projects
307
307
  # For object, use to_hash. Otherwise, just return the value
308
308
  # @param [Object] value Any valid value
309
309
  # @return [Hash] Returns the value in the form of hash
310
- def _to_hash(value)
310
+ def _to_hash(value, downcase: false)
311
311
  if value.is_a?(Array)
312
- value.compact.map { |v| _to_hash(v) }
312
+ value.map do |v|
313
+ v.to_hash(downcase: downcase)
314
+ end
313
315
  elsif value.is_a?(Hash)
314
316
  {}.tap do |hash|
315
- value.each { |k, v| hash[k] = _to_hash(v) }
317
+ value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
316
318
  end
317
319
  elsif value.respond_to? :to_hash
318
- value.to_hash
320
+ value.to_hash(downcase: downcase)
319
321
  else
320
322
  value
321
323
  end
@@ -323,8 +325,10 @@ module XeroRuby::Projects
323
325
 
324
326
  def parse_date(datestring)
325
327
  if datestring.include?('Date')
326
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
327
- Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
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
328
332
  else # handle date 'types' for small subset of payroll API's
329
333
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
330
334
  end
@@ -236,7 +236,7 @@ module XeroRuby::Projects
236
236
  value = self.send(attr)
237
237
  next if value.nil?
238
238
  key = downcase ? attr : param
239
- hash[key] = _to_hash(value)
239
+ hash[key] = _to_hash(value, downcase: downcase)
240
240
  end
241
241
  hash
242
242
  end
@@ -250,15 +250,17 @@ module XeroRuby::Projects
250
250
  # For object, use to_hash. Otherwise, just return the value
251
251
  # @param [Object] value Any valid value
252
252
  # @return [Hash] Returns the value in the form of hash
253
- def _to_hash(value)
253
+ def _to_hash(value, downcase: false)
254
254
  if value.is_a?(Array)
255
- value.compact.map { |v| _to_hash(v) }
255
+ value.map do |v|
256
+ v.to_hash(downcase: downcase)
257
+ end
256
258
  elsif value.is_a?(Hash)
257
259
  {}.tap do |hash|
258
- value.each { |k, v| hash[k] = _to_hash(v) }
260
+ value.map { |k, v| hash[k] = _to_hash(v, downcase: downcase) }
259
261
  end
260
262
  elsif value.respond_to? :to_hash
261
- value.to_hash
263
+ value.to_hash(downcase: downcase)
262
264
  else
263
265
  value
264
266
  end
@@ -266,8 +268,10 @@ module XeroRuby::Projects
266
268
 
267
269
  def parse_date(datestring)
268
270
  if datestring.include?('Date')
269
- seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
270
- Time.at(seconds_since_epoch).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
271
+ date_pattern = /\/Date\((-?\d+)(\+\d+)?\)\//
272
+ original, date, timezone = *date_pattern.match(datestring)
273
+ date = (date.to_i / 1000)
274
+ Time.at(date).utc.strftime('%Y-%m-%dT%H:%M:%S%z').to_s
271
275
  else # handle date 'types' for small subset of payroll API's
272
276
  Time.parse(datestring).strftime('%Y-%m-%dT%H:%M:%S').to_s
273
277
  end
@@ -7,9 +7,9 @@ Contact: api@xero.com
7
7
  Generated by: https://openapi-generator.tech
8
8
  OpenAPI Generator version: 4.3.1
9
9
 
10
- The version of the XeroOpenAPI document: 2.11.0
10
+ The version of the XeroOpenAPI document: 2.12.0
11
11
  =end
12
12
 
13
13
  module XeroRuby
14
- VERSION = '2.10.2'
14
+ VERSION = '3.0.0'
15
15
  end
@@ -59,6 +59,20 @@ describe 'shared helper methods' do
59
59
  )
60
60
  }
61
61
 
62
+ let(:contact_capitalized_with_nested_objects) {
63
+ XeroRuby::Accounting::Contact.new({
64
+ has_attachments: false,
65
+ has_validation_errors: false,
66
+ phones: [
67
+ XeroRuby::Accounting::Phone.new({
68
+ phone_type: "MOBILE",
69
+ phone_number: "555-1212",
70
+ phone_area_code: "415"
71
+ })
72
+ ]
73
+ })
74
+ }
75
+
62
76
  describe '#to_hash' do
63
77
  it 'can serialize invoice attributes into a PascalCase hash' do
64
78
  expect(invoice.to_hash).to eq(:CurrencyCode => "USD", :HasAttachments => false, :HasErrors => false, :InvoiceNumber => "abc-123", :TotalDiscount => 100, :Type => "ACCPAY")
@@ -77,6 +91,20 @@ describe 'shared helper methods' do
77
91
  it 'can serialize contact attributes into a snake_case hash' do
78
92
  expect(contact.to_attributes).to eq({account_number: "abc-123", contact_status: "ACTIVE", email_address: "email@gmail.com", first_name: 'Contact', has_attachments: false, has_validation_errors: false, last_name: "Name", name: "Contact Name"})
79
93
  end
94
+
95
+ it 'can serialize nested attributes into a snake_case hash' do
96
+ expect(contact_capitalized_with_nested_objects.to_attributes).to eq({
97
+ has_attachments: false,
98
+ has_validation_errors: false,
99
+ phones: [
100
+ {
101
+ phone_type: "MOBILE",
102
+ phone_number: "555-1212",
103
+ phone_area_code: "415"
104
+ }
105
+ ]
106
+ })
107
+ end
80
108
  end
81
109
  end
82
110
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xero-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.10.2
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Xero API Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-03 00:00:00.000000000 Z
11
+ date: 2021-05-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday