xero-ruby 2.2.2 → 2.4.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 (1028) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +93 -49
  3. data/docs/accounting/AccountingApi.md +1752 -1590
  4. data/docs/accounting/Action.md +19 -0
  5. data/docs/accounting/Actions.md +17 -0
  6. data/docs/accounting/BalanceDetails.md +21 -0
  7. data/docs/accounting/ConversionBalances.md +21 -0
  8. data/docs/accounting/ConversionDate.md +19 -0
  9. data/docs/accounting/CreditNote.md +2 -0
  10. data/docs/accounting/ExpenseClaim.md +1 -1
  11. data/docs/accounting/ImportSummary.md +19 -0
  12. data/docs/accounting/ImportSummaryAccounts.md +33 -0
  13. data/docs/accounting/ImportSummaryObject.md +17 -0
  14. data/docs/accounting/ImportSummaryOrganisation.md +17 -0
  15. data/docs/accounting/Invoice.md +2 -0
  16. data/docs/accounting/Setup.md +21 -0
  17. data/docs/accounting/TrackingOption.md +3 -3
  18. data/docs/assets/Asset.md +2 -0
  19. data/docs/assets/AssetApi.md +30 -42
  20. data/docs/files/Association.md +23 -0
  21. data/docs/files/FileObject.md +31 -0
  22. data/docs/files/FileResponse204.md +17 -0
  23. data/docs/files/Files.md +23 -0
  24. data/docs/files/FilesApi.md +1116 -0
  25. data/docs/files/Folder.md +25 -0
  26. data/docs/files/Folders.md +17 -0
  27. data/docs/files/InlineObject.md +23 -0
  28. data/docs/files/ObjectGroup.md +16 -0
  29. data/docs/files/ObjectType.md +16 -0
  30. data/docs/files/User.md +25 -0
  31. data/docs/payroll_au/APIException.md +21 -0
  32. data/docs/payroll_au/Account.md +23 -0
  33. data/docs/payroll_au/AccountType.md +16 -0
  34. data/docs/payroll_au/AllowanceType.md +16 -0
  35. data/docs/payroll_au/BankAccount.md +27 -0
  36. data/docs/payroll_au/CalendarType.md +16 -0
  37. data/docs/payroll_au/DeductionLine.md +25 -0
  38. data/docs/payroll_au/DeductionType.md +33 -0
  39. data/docs/payroll_au/DeductionTypeCalculationType.md +16 -0
  40. data/docs/payroll_au/EarningsLine.md +33 -0
  41. data/docs/payroll_au/EarningsRate.md +49 -0
  42. data/docs/payroll_au/EarningsRateCalculationType.md +16 -0
  43. data/docs/payroll_au/EarningsType.md +16 -0
  44. data/docs/payroll_au/Employee.md +77 -0
  45. data/docs/payroll_au/EmployeeStatus.md +16 -0
  46. data/docs/payroll_au/Employees.md +17 -0
  47. data/docs/payroll_au/EmploymentBasis.md +16 -0
  48. data/docs/payroll_au/EmploymentTerminationPaymentType.md +16 -0
  49. data/docs/payroll_au/EntitlementFinalPayPayoutType.md +16 -0
  50. data/docs/payroll_au/HomeAddress.md +27 -0
  51. data/docs/payroll_au/LeaveAccrualLine.md +21 -0
  52. data/docs/payroll_au/LeaveApplication.md +35 -0
  53. data/docs/payroll_au/LeaveApplications.md +17 -0
  54. data/docs/payroll_au/LeaveBalance.md +23 -0
  55. data/docs/payroll_au/LeaveEarningsLine.md +21 -0
  56. data/docs/payroll_au/LeaveLine.md +31 -0
  57. data/docs/payroll_au/LeaveLineCalculationType.md +16 -0
  58. data/docs/payroll_au/LeaveLines.md +17 -0
  59. data/docs/payroll_au/LeavePeriod.md +23 -0
  60. data/docs/payroll_au/LeavePeriodStatus.md +16 -0
  61. data/docs/payroll_au/LeaveType.md +33 -0
  62. data/docs/payroll_au/LeaveTypeContributionType.md +16 -0
  63. data/docs/payroll_au/ManualTaxType.md +16 -0
  64. data/docs/payroll_au/OpeningBalances.md +29 -0
  65. data/docs/payroll_au/PayItem.md +23 -0
  66. data/docs/payroll_au/PayItems.md +17 -0
  67. data/docs/payroll_au/PayRun.md +47 -0
  68. data/docs/payroll_au/PayRunStatus.md +16 -0
  69. data/docs/payroll_au/PayRuns.md +17 -0
  70. data/docs/payroll_au/PayTemplate.md +25 -0
  71. data/docs/payroll_au/PaymentFrequencyType.md +16 -0
  72. data/docs/payroll_au/PayrollAuApi.md +2018 -0
  73. data/docs/payroll_au/PayrollCalendar.md +29 -0
  74. data/docs/payroll_au/PayrollCalendars.md +17 -0
  75. data/docs/payroll_au/Payslip.md +53 -0
  76. data/docs/payroll_au/PayslipLines.md +31 -0
  77. data/docs/payroll_au/PayslipObject.md +17 -0
  78. data/docs/payroll_au/PayslipSummary.md +39 -0
  79. data/docs/payroll_au/Payslips.md +17 -0
  80. data/docs/payroll_au/RateType.md +16 -0
  81. data/docs/payroll_au/ReimbursementLine.md +23 -0
  82. data/docs/payroll_au/ReimbursementLines.md +17 -0
  83. data/docs/payroll_au/ReimbursementType.md +25 -0
  84. data/docs/payroll_au/ResidencyStatus.md +16 -0
  85. data/docs/payroll_au/Settings.md +21 -0
  86. data/docs/payroll_au/SettingsObject.md +17 -0
  87. data/docs/payroll_au/SettingsTrackingCategories.md +19 -0
  88. data/docs/payroll_au/SettingsTrackingCategoriesEmployeeGroups.md +19 -0
  89. data/docs/payroll_au/SettingsTrackingCategoriesTimesheetCategories.md +19 -0
  90. data/docs/payroll_au/State.md +16 -0
  91. data/docs/payroll_au/SuperFund.md +41 -0
  92. data/docs/payroll_au/SuperFundProduct.md +23 -0
  93. data/docs/payroll_au/SuperFundProducts.md +17 -0
  94. data/docs/payroll_au/SuperFundType.md +16 -0
  95. data/docs/payroll_au/SuperFunds.md +17 -0
  96. data/docs/payroll_au/SuperLine.md +31 -0
  97. data/docs/payroll_au/SuperMembership.md +21 -0
  98. data/docs/payroll_au/SuperannuationCalculationType.md +16 -0
  99. data/docs/payroll_au/SuperannuationContributionType.md +16 -0
  100. data/docs/payroll_au/SuperannuationLine.md +33 -0
  101. data/docs/payroll_au/TFNExemptionType.md +16 -0
  102. data/docs/payroll_au/TaxDeclaration.md +47 -0
  103. data/docs/payroll_au/TaxLine.md +27 -0
  104. data/docs/payroll_au/Timesheet.md +33 -0
  105. data/docs/payroll_au/TimesheetLine.md +23 -0
  106. data/docs/payroll_au/TimesheetObject.md +17 -0
  107. data/docs/payroll_au/TimesheetStatus.md +16 -0
  108. data/docs/payroll_au/Timesheets.md +17 -0
  109. data/docs/payroll_au/ValidationError.md +17 -0
  110. data/docs/payroll_nz/Account.md +23 -0
  111. data/docs/payroll_nz/Accounts.md +17 -0
  112. data/docs/payroll_nz/Address.md +27 -0
  113. data/docs/payroll_nz/BankAccount.md +31 -0
  114. data/docs/payroll_nz/Benefit.md +35 -0
  115. data/docs/payroll_nz/CalendarType.md +16 -0
  116. data/docs/payroll_nz/Deduction.md +27 -0
  117. data/docs/payroll_nz/DeductionLine.md +25 -0
  118. data/docs/payroll_nz/DeductionObject.md +21 -0
  119. data/docs/payroll_nz/Deductions.md +21 -0
  120. data/docs/payroll_nz/EarningsLine.md +35 -0
  121. data/docs/payroll_nz/EarningsOrder.md +25 -0
  122. data/docs/payroll_nz/EarningsOrderObject.md +21 -0
  123. data/docs/payroll_nz/EarningsOrders.md +21 -0
  124. data/docs/payroll_nz/EarningsRate.md +35 -0
  125. data/docs/payroll_nz/EarningsRateObject.md +21 -0
  126. data/docs/payroll_nz/EarningsRates.md +21 -0
  127. data/docs/payroll_nz/EarningsTemplate.md +27 -0
  128. data/docs/payroll_nz/EarningsTemplateObject.md +21 -0
  129. data/docs/payroll_nz/Employee.md +43 -0
  130. data/docs/payroll_nz/EmployeeEarningsTemplates.md +21 -0
  131. data/docs/payroll_nz/EmployeeLeave.md +29 -0
  132. data/docs/payroll_nz/EmployeeLeaveBalance.md +23 -0
  133. data/docs/payroll_nz/EmployeeLeaveBalances.md +21 -0
  134. data/docs/payroll_nz/EmployeeLeaveObject.md +21 -0
  135. data/docs/payroll_nz/EmployeeLeaveSetup.md +29 -0
  136. data/docs/payroll_nz/EmployeeLeaveSetupObject.md +21 -0
  137. data/docs/payroll_nz/EmployeeLeaveType.md +35 -0
  138. data/docs/payroll_nz/EmployeeLeaveTypeObject.md +21 -0
  139. data/docs/payroll_nz/EmployeeLeaveTypes.md +21 -0
  140. data/docs/payroll_nz/EmployeeLeaves.md +21 -0
  141. data/docs/payroll_nz/EmployeeObject.md +21 -0
  142. data/docs/payroll_nz/EmployeeOpeningBalance.md +23 -0
  143. data/docs/payroll_nz/EmployeeOpeningBalancesObject.md +21 -0
  144. data/docs/payroll_nz/EmployeePayTemplate.md +19 -0
  145. data/docs/payroll_nz/EmployeePayTemplateObject.md +21 -0
  146. data/docs/payroll_nz/EmployeePayTemplates.md +21 -0
  147. data/docs/payroll_nz/EmployeeStatutoryLeaveBalance.md +21 -0
  148. data/docs/payroll_nz/EmployeeStatutoryLeaveBalanceObject.md +21 -0
  149. data/docs/payroll_nz/EmployeeStatutoryLeaveSummary.md +29 -0
  150. data/docs/payroll_nz/EmployeeStatutoryLeavesSummaries.md +21 -0
  151. data/docs/payroll_nz/EmployeeStatutorySickLeave.md +47 -0
  152. data/docs/payroll_nz/EmployeeStatutorySickLeaveObject.md +21 -0
  153. data/docs/payroll_nz/EmployeeStatutorySickLeaves.md +21 -0
  154. data/docs/payroll_nz/EmployeeTax.md +47 -0
  155. data/docs/payroll_nz/EmployeeTaxObject.md +21 -0
  156. data/docs/payroll_nz/Employees.md +21 -0
  157. data/docs/payroll_nz/Employment.md +21 -0
  158. data/docs/payroll_nz/EmploymentObject.md +21 -0
  159. data/docs/payroll_nz/GrossEarningsHistory.md +19 -0
  160. data/docs/payroll_nz/InvalidField.md +19 -0
  161. data/docs/payroll_nz/LeaveAccrualLine.md +19 -0
  162. data/docs/payroll_nz/LeaveEarningsLine.md +35 -0
  163. data/docs/payroll_nz/LeavePeriod.md +23 -0
  164. data/docs/payroll_nz/LeavePeriods.md +21 -0
  165. data/docs/payroll_nz/LeaveType.md +27 -0
  166. data/docs/payroll_nz/LeaveTypeObject.md +21 -0
  167. data/docs/payroll_nz/LeaveTypes.md +21 -0
  168. data/docs/payroll_nz/Pagination.md +23 -0
  169. data/docs/payroll_nz/PayRun.md +39 -0
  170. data/docs/payroll_nz/PayRunCalendar.md +29 -0
  171. data/docs/payroll_nz/PayRunCalendarObject.md +21 -0
  172. data/docs/payroll_nz/PayRunCalendars.md +21 -0
  173. data/docs/payroll_nz/PayRunObject.md +21 -0
  174. data/docs/payroll_nz/PayRuns.md +21 -0
  175. data/docs/payroll_nz/PaySlip.md +75 -0
  176. data/docs/payroll_nz/PaySlipObject.md +21 -0
  177. data/docs/payroll_nz/PaySlips.md +21 -0
  178. data/docs/payroll_nz/PaymentLine.md +25 -0
  179. data/docs/payroll_nz/PaymentMethod.md +19 -0
  180. data/docs/payroll_nz/PaymentMethodObject.md +21 -0
  181. data/docs/payroll_nz/PayrollNzApi.md +4544 -0
  182. data/docs/payroll_nz/Problem.md +27 -0
  183. data/docs/payroll_nz/Reimbursement.md +33 -0
  184. data/docs/payroll_nz/ReimbursementLine.md +25 -0
  185. data/docs/payroll_nz/ReimbursementObject.md +21 -0
  186. data/docs/payroll_nz/Reimbursements.md +21 -0
  187. data/docs/payroll_nz/SalaryAndWage.md +35 -0
  188. data/docs/payroll_nz/SalaryAndWageObject.md +21 -0
  189. data/docs/payroll_nz/SalaryAndWages.md +21 -0
  190. data/docs/payroll_nz/Settings.md +21 -0
  191. data/docs/payroll_nz/StatutoryDeduction.md +25 -0
  192. data/docs/payroll_nz/StatutoryDeductionCategory.md +16 -0
  193. data/docs/payroll_nz/StatutoryDeductionLine.md +23 -0
  194. data/docs/payroll_nz/StatutoryDeductionObject.md +21 -0
  195. data/docs/payroll_nz/StatutoryDeductions.md +21 -0
  196. data/docs/payroll_nz/SuperannuationLine.md +27 -0
  197. data/docs/payroll_nz/SuperannuationObject.md +21 -0
  198. data/docs/payroll_nz/Superannuations.md +21 -0
  199. data/docs/payroll_nz/TaxCode.md +16 -0
  200. data/docs/payroll_nz/TaxLine.md +25 -0
  201. data/docs/payroll_nz/TaxSettings.md +27 -0
  202. data/docs/payroll_nz/Timesheet.md +33 -0
  203. data/docs/payroll_nz/TimesheetEarningsLine.md +35 -0
  204. data/docs/payroll_nz/TimesheetLine.md +25 -0
  205. data/docs/payroll_nz/TimesheetLineObject.md +21 -0
  206. data/docs/payroll_nz/TimesheetObject.md +21 -0
  207. data/docs/payroll_nz/Timesheets.md +21 -0
  208. data/docs/payroll_nz/TrackingCategories.md +21 -0
  209. data/docs/payroll_nz/TrackingCategory.md +19 -0
  210. data/docs/payroll_uk/Account.md +23 -0
  211. data/docs/payroll_uk/Accounts.md +17 -0
  212. data/docs/payroll_uk/Address.md +25 -0
  213. data/docs/payroll_uk/BankAccount.md +21 -0
  214. data/docs/payroll_uk/Benefit.md +43 -0
  215. data/docs/payroll_uk/BenefitLine.md +25 -0
  216. data/docs/payroll_uk/BenefitObject.md +21 -0
  217. data/docs/payroll_uk/Benefits.md +21 -0
  218. data/docs/payroll_uk/CourtOrderLine.md +19 -0
  219. data/docs/payroll_uk/Deduction.md +47 -0
  220. data/docs/payroll_uk/DeductionLine.md +23 -0
  221. data/docs/payroll_uk/DeductionObject.md +21 -0
  222. data/docs/payroll_uk/Deductions.md +21 -0
  223. data/docs/payroll_uk/EarningsLine.md +33 -0
  224. data/docs/payroll_uk/EarningsOrder.md +25 -0
  225. data/docs/payroll_uk/EarningsOrderObject.md +21 -0
  226. data/docs/payroll_uk/EarningsOrders.md +21 -0
  227. data/docs/payroll_uk/EarningsRate.md +35 -0
  228. data/docs/payroll_uk/EarningsRateObject.md +21 -0
  229. data/docs/payroll_uk/EarningsRates.md +21 -0
  230. data/docs/payroll_uk/EarningsTemplate.md +27 -0
  231. data/docs/payroll_uk/EarningsTemplateObject.md +21 -0
  232. data/docs/payroll_uk/Employee.md +45 -0
  233. data/docs/payroll_uk/EmployeeLeave.md +29 -0
  234. data/docs/payroll_uk/EmployeeLeaveBalance.md +23 -0
  235. data/docs/payroll_uk/EmployeeLeaveBalances.md +21 -0
  236. data/docs/payroll_uk/EmployeeLeaveObject.md +21 -0
  237. data/docs/payroll_uk/EmployeeLeaveType.md +27 -0
  238. data/docs/payroll_uk/EmployeeLeaveTypeObject.md +21 -0
  239. data/docs/payroll_uk/EmployeeLeaveTypes.md +21 -0
  240. data/docs/payroll_uk/EmployeeLeaves.md +21 -0
  241. data/docs/payroll_uk/EmployeeObject.md +21 -0
  242. data/docs/payroll_uk/EmployeeOpeningBalances.md +27 -0
  243. data/docs/payroll_uk/EmployeeOpeningBalancesObject.md +21 -0
  244. data/docs/payroll_uk/EmployeePayTemplate.md +19 -0
  245. data/docs/payroll_uk/EmployeePayTemplateObject.md +21 -0
  246. data/docs/payroll_uk/EmployeePayTemplates.md +21 -0
  247. data/docs/payroll_uk/EmployeeStatutoryLeaveBalance.md +21 -0
  248. data/docs/payroll_uk/EmployeeStatutoryLeaveBalanceObject.md +21 -0
  249. data/docs/payroll_uk/EmployeeStatutoryLeaveSummary.md +29 -0
  250. data/docs/payroll_uk/EmployeeStatutoryLeavesSummaries.md +21 -0
  251. data/docs/payroll_uk/EmployeeStatutorySickLeave.md +47 -0
  252. data/docs/payroll_uk/EmployeeStatutorySickLeaveObject.md +21 -0
  253. data/docs/payroll_uk/EmployeeStatutorySickLeaves.md +21 -0
  254. data/docs/payroll_uk/EmployeeTax.md +37 -0
  255. data/docs/payroll_uk/EmployeeTaxObject.md +21 -0
  256. data/docs/payroll_uk/Employees.md +21 -0
  257. data/docs/payroll_uk/Employment.md +23 -0
  258. data/docs/payroll_uk/EmploymentObject.md +21 -0
  259. data/docs/payroll_uk/InvalidField.md +19 -0
  260. data/docs/payroll_uk/LeaveAccrualLine.md +19 -0
  261. data/docs/payroll_uk/LeaveEarningsLine.md +27 -0
  262. data/docs/payroll_uk/LeavePeriod.md +23 -0
  263. data/docs/payroll_uk/LeavePeriods.md +21 -0
  264. data/docs/payroll_uk/LeaveType.md +31 -0
  265. data/docs/payroll_uk/LeaveTypeObject.md +21 -0
  266. data/docs/payroll_uk/LeaveTypes.md +21 -0
  267. data/docs/payroll_uk/Pagination.md +23 -0
  268. data/docs/payroll_uk/PayRun.md +39 -0
  269. data/docs/payroll_uk/PayRunCalendar.md +29 -0
  270. data/docs/payroll_uk/PayRunCalendarObject.md +21 -0
  271. data/docs/payroll_uk/PayRunCalendars.md +21 -0
  272. data/docs/payroll_uk/PayRunObject.md +21 -0
  273. data/docs/payroll_uk/PayRuns.md +21 -0
  274. data/docs/payroll_uk/PaymentLine.md +25 -0
  275. data/docs/payroll_uk/PaymentMethod.md +19 -0
  276. data/docs/payroll_uk/PaymentMethodObject.md +21 -0
  277. data/docs/payroll_uk/PayrollUkApi.md +4683 -0
  278. data/docs/payroll_uk/Payslip.md +71 -0
  279. data/docs/payroll_uk/PayslipObject.md +21 -0
  280. data/docs/payroll_uk/Payslips.md +21 -0
  281. data/docs/payroll_uk/Problem.md +27 -0
  282. data/docs/payroll_uk/Reimbursement.md +23 -0
  283. data/docs/payroll_uk/ReimbursementLine.md +21 -0
  284. data/docs/payroll_uk/ReimbursementObject.md +21 -0
  285. data/docs/payroll_uk/Reimbursements.md +21 -0
  286. data/docs/payroll_uk/SalaryAndWage.md +33 -0
  287. data/docs/payroll_uk/SalaryAndWageObject.md +21 -0
  288. data/docs/payroll_uk/SalaryAndWages.md +21 -0
  289. data/docs/payroll_uk/Settings.md +21 -0
  290. data/docs/payroll_uk/StatutoryDeduction.md +25 -0
  291. data/docs/payroll_uk/StatutoryDeductionCategory.md +16 -0
  292. data/docs/payroll_uk/TaxLine.md +27 -0
  293. data/docs/payroll_uk/Timesheet.md +33 -0
  294. data/docs/payroll_uk/TimesheetEarningsLine.md +27 -0
  295. data/docs/payroll_uk/TimesheetLine.md +25 -0
  296. data/docs/payroll_uk/TimesheetLineObject.md +21 -0
  297. data/docs/payroll_uk/TimesheetObject.md +21 -0
  298. data/docs/payroll_uk/Timesheets.md +21 -0
  299. data/docs/payroll_uk/TrackingCategories.md +21 -0
  300. data/docs/payroll_uk/TrackingCategory.md +19 -0
  301. data/docs/projects/ProjectApi.md +69 -92
  302. data/lib/xero-ruby.rb +292 -1
  303. data/lib/xero-ruby/api/accounting_api.rb +1061 -336
  304. data/lib/xero-ruby/api/asset_api.rb +7 -9
  305. data/lib/xero-ruby/api/files_api.rb +1271 -0
  306. data/lib/xero-ruby/api/payroll_au_api.rb +2254 -0
  307. data/lib/xero-ruby/api/payroll_nz_api.rb +5261 -0
  308. data/lib/xero-ruby/api/payroll_uk_api.rb +5404 -0
  309. data/lib/xero-ruby/api/project_api.rb +17 -16
  310. data/lib/xero-ruby/api_client.rb +41 -31
  311. data/lib/xero-ruby/api_error.rb +1 -1
  312. data/lib/xero-ruby/configuration.rb +9 -1
  313. data/lib/xero-ruby/models/accounting/account.rb +3 -2
  314. data/lib/xero-ruby/models/accounting/account_type.rb +1 -1
  315. data/lib/xero-ruby/models/accounting/accounts.rb +2 -2
  316. data/lib/xero-ruby/models/accounting/accounts_payable.rb +2 -2
  317. data/lib/xero-ruby/models/accounting/accounts_receivable.rb +2 -2
  318. data/lib/xero-ruby/models/accounting/action.rb +254 -0
  319. data/lib/xero-ruby/models/accounting/actions.rb +210 -0
  320. data/lib/xero-ruby/models/accounting/address.rb +2 -2
  321. data/lib/xero-ruby/models/accounting/allocation.rb +2 -2
  322. data/lib/xero-ruby/models/accounting/allocations.rb +2 -2
  323. data/lib/xero-ruby/models/accounting/attachment.rb +2 -2
  324. data/lib/xero-ruby/models/accounting/attachments.rb +2 -2
  325. data/lib/xero-ruby/models/accounting/balance_details.rb +229 -0
  326. data/lib/xero-ruby/models/accounting/balances.rb +2 -2
  327. data/lib/xero-ruby/models/accounting/bank_transaction.rb +2 -2
  328. data/lib/xero-ruby/models/accounting/bank_transactions.rb +2 -2
  329. data/lib/xero-ruby/models/accounting/bank_transfer.rb +2 -2
  330. data/lib/xero-ruby/models/accounting/bank_transfers.rb +2 -2
  331. data/lib/xero-ruby/models/accounting/batch_payment.rb +7 -7
  332. data/lib/xero-ruby/models/accounting/batch_payment_details.rb +2 -17
  333. data/lib/xero-ruby/models/accounting/batch_payments.rb +2 -2
  334. data/lib/xero-ruby/models/accounting/bill.rb +2 -2
  335. data/lib/xero-ruby/models/accounting/branding_theme.rb +2 -2
  336. data/lib/xero-ruby/models/accounting/branding_themes.rb +2 -2
  337. data/lib/xero-ruby/models/accounting/cis_org_setting.rb +2 -2
  338. data/lib/xero-ruby/models/accounting/cis_setting.rb +2 -2
  339. data/lib/xero-ruby/models/accounting/cis_settings.rb +2 -2
  340. data/lib/xero-ruby/models/accounting/contact.rb +2 -2
  341. data/lib/xero-ruby/models/accounting/contact_group.rb +2 -2
  342. data/lib/xero-ruby/models/accounting/contact_groups.rb +2 -2
  343. data/lib/xero-ruby/models/accounting/contact_person.rb +2 -2
  344. data/lib/xero-ruby/models/accounting/contacts.rb +2 -2
  345. data/lib/xero-ruby/models/accounting/conversion_balances.rb +231 -0
  346. data/lib/xero-ruby/models/accounting/conversion_date.rb +219 -0
  347. data/lib/xero-ruby/models/accounting/country_code.rb +1 -1
  348. data/lib/xero-ruby/models/accounting/credit_note.rb +13 -3
  349. data/lib/xero-ruby/models/accounting/credit_notes.rb +2 -2
  350. data/lib/xero-ruby/models/accounting/currencies.rb +2 -2
  351. data/lib/xero-ruby/models/accounting/currency.rb +2 -2
  352. data/lib/xero-ruby/models/accounting/currency_code.rb +5 -3
  353. data/lib/xero-ruby/models/accounting/element.rb +2 -2
  354. data/lib/xero-ruby/models/accounting/employee.rb +2 -2
  355. data/lib/xero-ruby/models/accounting/employees.rb +2 -2
  356. data/lib/xero-ruby/models/accounting/error.rb +2 -2
  357. data/lib/xero-ruby/models/accounting/expense_claim.rb +3 -3
  358. data/lib/xero-ruby/models/accounting/expense_claims.rb +2 -2
  359. data/lib/xero-ruby/models/accounting/external_link.rb +2 -2
  360. data/lib/xero-ruby/models/accounting/history_record.rb +2 -2
  361. data/lib/xero-ruby/models/accounting/history_records.rb +2 -2
  362. data/lib/xero-ruby/models/accounting/import_summary.rb +219 -0
  363. data/lib/xero-ruby/models/accounting/import_summary_accounts.rb +289 -0
  364. data/lib/xero-ruby/models/accounting/import_summary_object.rb +208 -0
  365. data/lib/xero-ruby/models/accounting/import_summary_organisation.rb +208 -0
  366. data/lib/xero-ruby/models/accounting/invoice.rb +13 -3
  367. data/lib/xero-ruby/models/accounting/invoice_reminder.rb +2 -2
  368. data/lib/xero-ruby/models/accounting/invoice_reminders.rb +2 -2
  369. data/lib/xero-ruby/models/accounting/invoices.rb +2 -2
  370. data/lib/xero-ruby/models/accounting/item.rb +2 -2
  371. data/lib/xero-ruby/models/accounting/items.rb +2 -2
  372. data/lib/xero-ruby/models/accounting/journal.rb +2 -2
  373. data/lib/xero-ruby/models/accounting/journal_line.rb +2 -2
  374. data/lib/xero-ruby/models/accounting/journals.rb +2 -2
  375. data/lib/xero-ruby/models/accounting/line_amount_types.rb +1 -1
  376. data/lib/xero-ruby/models/accounting/line_item.rb +2 -2
  377. data/lib/xero-ruby/models/accounting/line_item_tracking.rb +2 -2
  378. data/lib/xero-ruby/models/accounting/linked_transaction.rb +2 -2
  379. data/lib/xero-ruby/models/accounting/linked_transactions.rb +2 -2
  380. data/lib/xero-ruby/models/accounting/manual_journal.rb +2 -2
  381. data/lib/xero-ruby/models/accounting/manual_journal_line.rb +2 -2
  382. data/lib/xero-ruby/models/accounting/manual_journals.rb +2 -2
  383. data/lib/xero-ruby/models/accounting/online_invoice.rb +2 -2
  384. data/lib/xero-ruby/models/accounting/online_invoices.rb +2 -2
  385. data/lib/xero-ruby/models/accounting/organisation.rb +4 -2
  386. data/lib/xero-ruby/models/accounting/organisations.rb +2 -2
  387. data/lib/xero-ruby/models/accounting/overpayment.rb +2 -2
  388. data/lib/xero-ruby/models/accounting/overpayments.rb +2 -2
  389. data/lib/xero-ruby/models/accounting/payment.rb +2 -2
  390. data/lib/xero-ruby/models/accounting/payment_delete.rb +2 -2
  391. data/lib/xero-ruby/models/accounting/payment_service.rb +2 -2
  392. data/lib/xero-ruby/models/accounting/payment_services.rb +2 -2
  393. data/lib/xero-ruby/models/accounting/payment_term.rb +2 -2
  394. data/lib/xero-ruby/models/accounting/payment_term_type.rb +1 -1
  395. data/lib/xero-ruby/models/accounting/payments.rb +2 -2
  396. data/lib/xero-ruby/models/accounting/phone.rb +2 -2
  397. data/lib/xero-ruby/models/accounting/prepayment.rb +2 -2
  398. data/lib/xero-ruby/models/accounting/prepayments.rb +2 -2
  399. data/lib/xero-ruby/models/accounting/purchase.rb +2 -2
  400. data/lib/xero-ruby/models/accounting/purchase_order.rb +2 -2
  401. data/lib/xero-ruby/models/accounting/purchase_orders.rb +2 -2
  402. data/lib/xero-ruby/models/accounting/quote.rb +2 -2
  403. data/lib/xero-ruby/models/accounting/quote_line_amount_types.rb +1 -1
  404. data/lib/xero-ruby/models/accounting/quote_status_codes.rb +1 -1
  405. data/lib/xero-ruby/models/accounting/quotes.rb +2 -2
  406. data/lib/xero-ruby/models/accounting/receipt.rb +2 -2
  407. data/lib/xero-ruby/models/accounting/receipts.rb +2 -2
  408. data/lib/xero-ruby/models/accounting/repeating_invoice.rb +2 -2
  409. data/lib/xero-ruby/models/accounting/repeating_invoices.rb +2 -2
  410. data/lib/xero-ruby/models/accounting/report.rb +2 -2
  411. data/lib/xero-ruby/models/accounting/report_attribute.rb +2 -2
  412. data/lib/xero-ruby/models/accounting/report_cell.rb +2 -2
  413. data/lib/xero-ruby/models/accounting/report_fields.rb +2 -2
  414. data/lib/xero-ruby/models/accounting/report_row.rb +2 -2
  415. data/lib/xero-ruby/models/accounting/report_rows.rb +2 -2
  416. data/lib/xero-ruby/models/accounting/report_with_row.rb +2 -2
  417. data/lib/xero-ruby/models/accounting/report_with_rows.rb +2 -2
  418. data/lib/xero-ruby/models/accounting/reports.rb +2 -2
  419. data/lib/xero-ruby/models/accounting/request_empty.rb +2 -2
  420. data/lib/xero-ruby/models/accounting/row_type.rb +1 -1
  421. data/lib/xero-ruby/models/accounting/sales_tracking_category.rb +2 -2
  422. data/lib/xero-ruby/models/accounting/schedule.rb +2 -2
  423. data/lib/xero-ruby/models/accounting/setup.rb +232 -0
  424. data/lib/xero-ruby/models/accounting/tax_component.rb +2 -2
  425. data/lib/xero-ruby/models/accounting/tax_rate.rb +2 -2
  426. data/lib/xero-ruby/models/accounting/tax_rates.rb +2 -2
  427. data/lib/xero-ruby/models/accounting/tax_type.rb +1 -1
  428. data/lib/xero-ruby/models/accounting/ten_ninety_nine_contact.rb +2 -2
  429. data/lib/xero-ruby/models/accounting/time_zone.rb +1 -1
  430. data/lib/xero-ruby/models/accounting/tracking_categories.rb +2 -2
  431. data/lib/xero-ruby/models/accounting/tracking_category.rb +2 -2
  432. data/lib/xero-ruby/models/accounting/tracking_option.rb +10 -10
  433. data/lib/xero-ruby/models/accounting/tracking_options.rb +2 -2
  434. data/lib/xero-ruby/models/accounting/user.rb +2 -2
  435. data/lib/xero-ruby/models/accounting/users.rb +2 -2
  436. data/lib/xero-ruby/models/accounting/validation_error.rb +2 -2
  437. data/lib/xero-ruby/models/assets/asset.rb +13 -3
  438. data/lib/xero-ruby/models/assets/asset_status.rb +1 -1
  439. data/lib/xero-ruby/models/assets/asset_status_query_param.rb +1 -1
  440. data/lib/xero-ruby/models/assets/asset_type.rb +2 -2
  441. data/lib/xero-ruby/models/assets/assets.rb +2 -2
  442. data/lib/xero-ruby/models/assets/book_depreciation_detail.rb +2 -2
  443. data/lib/xero-ruby/models/assets/book_depreciation_setting.rb +2 -2
  444. data/lib/xero-ruby/models/assets/error.rb +2 -2
  445. data/lib/xero-ruby/models/assets/field_validation_errors_element.rb +2 -2
  446. data/lib/xero-ruby/models/assets/pagination.rb +2 -2
  447. data/lib/xero-ruby/models/assets/resource_validation_errors_element.rb +2 -2
  448. data/lib/xero-ruby/models/assets/setting.rb +2 -2
  449. data/lib/xero-ruby/models/files/association.rb +238 -0
  450. data/lib/xero-ruby/models/files/file_object.rb +278 -0
  451. data/lib/xero-ruby/models/files/file_response204.rb +208 -0
  452. data/lib/xero-ruby/models/files/files.rb +240 -0
  453. data/lib/xero-ruby/models/files/folder.rb +248 -0
  454. data/lib/xero-ruby/models/files/folders.rb +210 -0
  455. data/lib/xero-ruby/models/files/inline_object.rb +238 -0
  456. data/lib/xero-ruby/models/files/object_group.rb +46 -0
  457. data/lib/xero-ruby/models/files/object_type.rb +90 -0
  458. data/lib/xero-ruby/models/files/user.rb +253 -0
  459. data/lib/xero-ruby/models/payroll_au/account.rb +238 -0
  460. data/lib/xero-ruby/models/payroll_au/account_type.rb +58 -0
  461. data/lib/xero-ruby/models/payroll_au/allowance_type.rb +42 -0
  462. data/lib/xero-ruby/models/payroll_au/api_exception.rb +229 -0
  463. data/lib/xero-ruby/models/payroll_au/bank_account.rb +258 -0
  464. data/lib/xero-ruby/models/payroll_au/calendar_type.rb +41 -0
  465. data/lib/xero-ruby/models/payroll_au/deduction_line.rb +258 -0
  466. data/lib/xero-ruby/models/payroll_au/deduction_type.rb +340 -0
  467. data/lib/xero-ruby/models/payroll_au/deduction_type_calculation_type.rb +38 -0
  468. data/lib/xero-ruby/models/payroll_au/earnings_line.rb +293 -0
  469. data/lib/xero-ruby/models/payroll_au/earnings_rate.rb +398 -0
  470. data/lib/xero-ruby/models/payroll_au/earnings_rate_calculation_type.rb +38 -0
  471. data/lib/xero-ruby/models/payroll_au/earnings_type.rb +44 -0
  472. data/lib/xero-ruby/models/payroll_au/employee.rb +571 -0
  473. data/lib/xero-ruby/models/payroll_au/employee_status.rb +37 -0
  474. data/lib/xero-ruby/models/payroll_au/employees.rb +210 -0
  475. data/lib/xero-ruby/models/payroll_au/employment_basis.rb +40 -0
  476. data/lib/xero-ruby/models/payroll_au/employment_termination_payment_type.rb +37 -0
  477. data/lib/xero-ruby/models/payroll_au/entitlement_final_pay_payout_type.rb +37 -0
  478. data/lib/xero-ruby/models/payroll_au/home_address.rb +263 -0
  479. data/lib/xero-ruby/models/payroll_au/leave_accrual_line.rb +228 -0
  480. data/lib/xero-ruby/models/payroll_au/leave_application.rb +302 -0
  481. data/lib/xero-ruby/models/payroll_au/leave_applications.rb +210 -0
  482. data/lib/xero-ruby/models/payroll_au/leave_balance.rb +238 -0
  483. data/lib/xero-ruby/models/payroll_au/leave_earnings_line.rb +228 -0
  484. data/lib/xero-ruby/models/payroll_au/leave_line.rb +278 -0
  485. data/lib/xero-ruby/models/payroll_au/leave_line_calculation_type.rb +40 -0
  486. data/lib/xero-ruby/models/payroll_au/leave_lines.rb +211 -0
  487. data/lib/xero-ruby/models/payroll_au/leave_period.rb +238 -0
  488. data/lib/xero-ruby/models/payroll_au/leave_period_status.rb +37 -0
  489. data/lib/xero-ruby/models/payroll_au/leave_type.rb +303 -0
  490. data/lib/xero-ruby/models/payroll_au/leave_type_contribution_type.rb +39 -0
  491. data/lib/xero-ruby/models/payroll_au/manual_tax_type.rb +40 -0
  492. data/lib/xero-ruby/models/payroll_au/opening_balances.rb +278 -0
  493. data/lib/xero-ruby/models/payroll_au/pay_item.rb +246 -0
  494. data/lib/xero-ruby/models/payroll_au/pay_items.rb +208 -0
  495. data/lib/xero-ruby/models/payroll_au/pay_run.rb +367 -0
  496. data/lib/xero-ruby/models/payroll_au/pay_run_status.rb +37 -0
  497. data/lib/xero-ruby/models/payroll_au/pay_runs.rb +210 -0
  498. data/lib/xero-ruby/models/payroll_au/pay_template.rb +258 -0
  499. data/lib/xero-ruby/models/payroll_au/payment_frequency_type.rb +42 -0
  500. data/lib/xero-ruby/models/payroll_au/payroll_calendar.rb +270 -0
  501. data/lib/xero-ruby/models/payroll_au/payroll_calendars.rb +210 -0
  502. data/lib/xero-ruby/models/payroll_au/payslip.rb +404 -0
  503. data/lib/xero-ruby/models/payroll_au/payslip_lines.rb +294 -0
  504. data/lib/xero-ruby/models/payroll_au/payslip_object.rb +208 -0
  505. data/lib/xero-ruby/models/payroll_au/payslip_summary.rb +318 -0
  506. data/lib/xero-ruby/models/payroll_au/payslips.rb +210 -0
  507. data/lib/xero-ruby/models/payroll_au/rate_type.rb +38 -0
  508. data/lib/xero-ruby/models/payroll_au/reimbursement_line.rb +253 -0
  509. data/lib/xero-ruby/models/payroll_au/reimbursement_lines.rb +211 -0
  510. data/lib/xero-ruby/models/payroll_au/reimbursement_type.rb +263 -0
  511. data/lib/xero-ruby/models/payroll_au/residency_status.rb +38 -0
  512. data/lib/xero-ruby/models/payroll_au/settings.rb +230 -0
  513. data/lib/xero-ruby/models/payroll_au/settings_object.rb +208 -0
  514. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories.rb +219 -0
  515. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_employee_groups.rb +219 -0
  516. data/lib/xero-ruby/models/payroll_au/settings_tracking_categories_timesheet_categories.rb +219 -0
  517. data/lib/xero-ruby/models/payroll_au/state.rb +43 -0
  518. data/lib/xero-ruby/models/payroll_au/super_fund.rb +335 -0
  519. data/lib/xero-ruby/models/payroll_au/super_fund_product.rb +238 -0
  520. data/lib/xero-ruby/models/payroll_au/super_fund_products.rb +210 -0
  521. data/lib/xero-ruby/models/payroll_au/super_fund_type.rb +37 -0
  522. data/lib/xero-ruby/models/payroll_au/super_funds.rb +210 -0
  523. data/lib/xero-ruby/models/payroll_au/super_line.rb +278 -0
  524. data/lib/xero-ruby/models/payroll_au/super_membership.rb +238 -0
  525. data/lib/xero-ruby/models/payroll_au/superannuation_calculation_type.rb +38 -0
  526. data/lib/xero-ruby/models/payroll_au/superannuation_contribution_type.rb +39 -0
  527. data/lib/xero-ruby/models/payroll_au/superannuation_line.rb +288 -0
  528. data/lib/xero-ruby/models/payroll_au/tax_declaration.rb +358 -0
  529. data/lib/xero-ruby/models/payroll_au/tax_line.rb +258 -0
  530. data/lib/xero-ruby/models/payroll_au/tfn_exemption_type.rb +39 -0
  531. data/lib/xero-ruby/models/payroll_au/timesheet.rb +307 -0
  532. data/lib/xero-ruby/models/payroll_au/timesheet_line.rb +240 -0
  533. data/lib/xero-ruby/models/payroll_au/timesheet_object.rb +208 -0
  534. data/lib/xero-ruby/models/payroll_au/timesheet_status.rb +40 -0
  535. data/lib/xero-ruby/models/payroll_au/timesheets.rb +210 -0
  536. data/lib/xero-ruby/models/payroll_au/validation_error.rb +208 -0
  537. data/lib/xero-ruby/models/payroll_nz/account.rb +276 -0
  538. data/lib/xero-ruby/models/payroll_nz/accounts.rb +210 -0
  539. data/lib/xero-ruby/models/payroll_nz/address.rb +273 -0
  540. data/lib/xero-ruby/models/payroll_nz/bank_account.rb +329 -0
  541. data/lib/xero-ruby/models/payroll_nz/benefit.rb +369 -0
  542. data/lib/xero-ruby/models/payroll_nz/calendar_type.rb +42 -0
  543. data/lib/xero-ruby/models/payroll_nz/deduction.rb +311 -0
  544. data/lib/xero-ruby/models/payroll_nz/deduction_line.rb +248 -0
  545. data/lib/xero-ruby/models/payroll_nz/deduction_object.rb +228 -0
  546. data/lib/xero-ruby/models/payroll_nz/deductions.rb +230 -0
  547. data/lib/xero-ruby/models/payroll_nz/earnings_line.rb +298 -0
  548. data/lib/xero-ruby/models/payroll_nz/earnings_order.rb +255 -0
  549. data/lib/xero-ruby/models/payroll_nz/earnings_order_object.rb +228 -0
  550. data/lib/xero-ruby/models/payroll_nz/earnings_orders.rb +230 -0
  551. data/lib/xero-ruby/models/payroll_nz/earnings_rate.rb +387 -0
  552. data/lib/xero-ruby/models/payroll_nz/earnings_rate_object.rb +228 -0
  553. data/lib/xero-ruby/models/payroll_nz/earnings_rates.rb +230 -0
  554. data/lib/xero-ruby/models/payroll_nz/earnings_template.rb +258 -0
  555. data/lib/xero-ruby/models/payroll_nz/earnings_template_object.rb +228 -0
  556. data/lib/xero-ruby/models/payroll_nz/employee.rb +374 -0
  557. data/lib/xero-ruby/models/payroll_nz/employee_earnings_templates.rb +230 -0
  558. data/lib/xero-ruby/models/payroll_nz/employee_leave.rb +290 -0
  559. data/lib/xero-ruby/models/payroll_nz/employee_leave_balance.rb +238 -0
  560. data/lib/xero-ruby/models/payroll_nz/employee_leave_balances.rb +230 -0
  561. data/lib/xero-ruby/models/payroll_nz/employee_leave_object.rb +228 -0
  562. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup.rb +268 -0
  563. data/lib/xero-ruby/models/payroll_nz/employee_leave_setup_object.rb +228 -0
  564. data/lib/xero-ruby/models/payroll_nz/employee_leave_type.rb +336 -0
  565. data/lib/xero-ruby/models/payroll_nz/employee_leave_type_object.rb +228 -0
  566. data/lib/xero-ruby/models/payroll_nz/employee_leave_types.rb +230 -0
  567. data/lib/xero-ruby/models/payroll_nz/employee_leaves.rb +230 -0
  568. data/lib/xero-ruby/models/payroll_nz/employee_object.rb +228 -0
  569. data/lib/xero-ruby/models/payroll_nz/employee_opening_balance.rb +238 -0
  570. data/lib/xero-ruby/models/payroll_nz/employee_opening_balances_object.rb +230 -0
  571. data/lib/xero-ruby/models/payroll_nz/employee_pay_template.rb +220 -0
  572. data/lib/xero-ruby/models/payroll_nz/employee_pay_template_object.rb +228 -0
  573. data/lib/xero-ruby/models/payroll_nz/employee_pay_templates.rb +228 -0
  574. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance.rb +280 -0
  575. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_balance_object.rb +228 -0
  576. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leave_summary.rb +322 -0
  577. data/lib/xero-ruby/models/payroll_nz/employee_statutory_leaves_summaries.rb +230 -0
  578. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave.rb +419 -0
  579. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leave_object.rb +228 -0
  580. data/lib/xero-ruby/models/payroll_nz/employee_statutory_sick_leaves.rb +230 -0
  581. data/lib/xero-ruby/models/payroll_nz/employee_tax.rb +397 -0
  582. data/lib/xero-ruby/models/payroll_nz/employee_tax_object.rb +228 -0
  583. data/lib/xero-ruby/models/payroll_nz/employees.rb +230 -0
  584. data/lib/xero-ruby/models/payroll_nz/employment.rb +228 -0
  585. data/lib/xero-ruby/models/payroll_nz/employment_object.rb +228 -0
  586. data/lib/xero-ruby/models/payroll_nz/gross_earnings_history.rb +218 -0
  587. data/lib/xero-ruby/models/payroll_nz/invalid_field.rb +218 -0
  588. data/lib/xero-ruby/models/payroll_nz/leave_accrual_line.rb +218 -0
  589. data/lib/xero-ruby/models/payroll_nz/leave_earnings_line.rb +298 -0
  590. data/lib/xero-ruby/models/payroll_nz/leave_period.rb +274 -0
  591. data/lib/xero-ruby/models/payroll_nz/leave_periods.rb +230 -0
  592. data/lib/xero-ruby/models/payroll_nz/leave_type.rb +273 -0
  593. data/lib/xero-ruby/models/payroll_nz/leave_type_object.rb +228 -0
  594. data/lib/xero-ruby/models/payroll_nz/leave_types.rb +230 -0
  595. data/lib/xero-ruby/models/payroll_nz/pagination.rb +238 -0
  596. data/lib/xero-ruby/models/payroll_nz/pay_run.rb +371 -0
  597. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar.rb +288 -0
  598. data/lib/xero-ruby/models/payroll_nz/pay_run_calendar_object.rb +228 -0
  599. data/lib/xero-ruby/models/payroll_nz/pay_run_calendars.rb +230 -0
  600. data/lib/xero-ruby/models/payroll_nz/pay_run_object.rb +228 -0
  601. data/lib/xero-ruby/models/payroll_nz/pay_runs.rb +230 -0
  602. data/lib/xero-ruby/models/payroll_nz/pay_slip.rb +557 -0
  603. data/lib/xero-ruby/models/payroll_nz/pay_slip_object.rb +228 -0
  604. data/lib/xero-ruby/models/payroll_nz/pay_slips.rb +230 -0
  605. data/lib/xero-ruby/models/payroll_nz/payment_line.rb +248 -0
  606. data/lib/xero-ruby/models/payroll_nz/payment_method.rb +257 -0
  607. data/lib/xero-ruby/models/payroll_nz/payment_method_object.rb +228 -0
  608. data/lib/xero-ruby/models/payroll_nz/problem.rb +261 -0
  609. data/lib/xero-ruby/models/payroll_nz/reimbursement.rb +364 -0
  610. data/lib/xero-ruby/models/payroll_nz/reimbursement_line.rb +248 -0
  611. data/lib/xero-ruby/models/payroll_nz/reimbursement_object.rb +228 -0
  612. data/lib/xero-ruby/models/payroll_nz/reimbursements.rb +230 -0
  613. data/lib/xero-ruby/models/payroll_nz/salary_and_wage.rb +383 -0
  614. data/lib/xero-ruby/models/payroll_nz/salary_and_wage_object.rb +228 -0
  615. data/lib/xero-ruby/models/payroll_nz/salary_and_wages.rb +230 -0
  616. data/lib/xero-ruby/models/payroll_nz/settings.rb +228 -0
  617. data/lib/xero-ruby/models/payroll_nz/statutory_deduction.rb +248 -0
  618. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_category.rb +46 -0
  619. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_line.rb +238 -0
  620. data/lib/xero-ruby/models/payroll_nz/statutory_deduction_object.rb +228 -0
  621. data/lib/xero-ruby/models/payroll_nz/statutory_deductions.rb +230 -0
  622. data/lib/xero-ruby/models/payroll_nz/superannuation_line.rb +258 -0
  623. data/lib/xero-ruby/models/payroll_nz/superannuation_object.rb +228 -0
  624. data/lib/xero-ruby/models/payroll_nz/superannuations.rb +230 -0
  625. data/lib/xero-ruby/models/payroll_nz/tax_code.rb +54 -0
  626. data/lib/xero-ruby/models/payroll_nz/tax_line.rb +248 -0
  627. data/lib/xero-ruby/models/payroll_nz/tax_settings.rb +294 -0
  628. data/lib/xero-ruby/models/payroll_nz/timesheet.rb +347 -0
  629. data/lib/xero-ruby/models/payroll_nz/timesheet_earnings_line.rb +298 -0
  630. data/lib/xero-ruby/models/payroll_nz/timesheet_line.rb +263 -0
  631. data/lib/xero-ruby/models/payroll_nz/timesheet_line_object.rb +228 -0
  632. data/lib/xero-ruby/models/payroll_nz/timesheet_object.rb +228 -0
  633. data/lib/xero-ruby/models/payroll_nz/timesheets.rb +230 -0
  634. data/lib/xero-ruby/models/payroll_nz/tracking_categories.rb +228 -0
  635. data/lib/xero-ruby/models/payroll_nz/tracking_category.rb +218 -0
  636. data/lib/xero-ruby/models/payroll_uk/account.rb +279 -0
  637. data/lib/xero-ruby/models/payroll_uk/accounts.rb +210 -0
  638. data/lib/xero-ruby/models/payroll_uk/address.rb +263 -0
  639. data/lib/xero-ruby/models/payroll_uk/bank_account.rb +243 -0
  640. data/lib/xero-ruby/models/payroll_uk/benefit.rb +418 -0
  641. data/lib/xero-ruby/models/payroll_uk/benefit_line.rb +248 -0
  642. data/lib/xero-ruby/models/payroll_uk/benefit_object.rb +228 -0
  643. data/lib/xero-ruby/models/payroll_uk/benefits.rb +230 -0
  644. data/lib/xero-ruby/models/payroll_uk/court_order_line.rb +218 -0
  645. data/lib/xero-ruby/models/payroll_uk/deduction.rb +426 -0
  646. data/lib/xero-ruby/models/payroll_uk/deduction_line.rb +238 -0
  647. data/lib/xero-ruby/models/payroll_uk/deduction_object.rb +228 -0
  648. data/lib/xero-ruby/models/payroll_uk/deductions.rb +230 -0
  649. data/lib/xero-ruby/models/payroll_uk/earnings_line.rb +288 -0
  650. data/lib/xero-ruby/models/payroll_uk/earnings_order.rb +255 -0
  651. data/lib/xero-ruby/models/payroll_uk/earnings_order_object.rb +228 -0
  652. data/lib/xero-ruby/models/payroll_uk/earnings_orders.rb +230 -0
  653. data/lib/xero-ruby/models/payroll_uk/earnings_rate.rb +387 -0
  654. data/lib/xero-ruby/models/payroll_uk/earnings_rate_object.rb +228 -0
  655. data/lib/xero-ruby/models/payroll_uk/earnings_rates.rb +230 -0
  656. data/lib/xero-ruby/models/payroll_uk/earnings_template.rb +258 -0
  657. data/lib/xero-ruby/models/payroll_uk/earnings_template_object.rb +228 -0
  658. data/lib/xero-ruby/models/payroll_uk/employee.rb +384 -0
  659. data/lib/xero-ruby/models/payroll_uk/employee_leave.rb +290 -0
  660. data/lib/xero-ruby/models/payroll_uk/employee_leave_balance.rb +238 -0
  661. data/lib/xero-ruby/models/payroll_uk/employee_leave_balances.rb +230 -0
  662. data/lib/xero-ruby/models/payroll_uk/employee_leave_object.rb +228 -0
  663. data/lib/xero-ruby/models/payroll_uk/employee_leave_type.rb +306 -0
  664. data/lib/xero-ruby/models/payroll_uk/employee_leave_type_object.rb +228 -0
  665. data/lib/xero-ruby/models/payroll_uk/employee_leave_types.rb +230 -0
  666. data/lib/xero-ruby/models/payroll_uk/employee_leaves.rb +230 -0
  667. data/lib/xero-ruby/models/payroll_uk/employee_object.rb +228 -0
  668. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances.rb +258 -0
  669. data/lib/xero-ruby/models/payroll_uk/employee_opening_balances_object.rb +228 -0
  670. data/lib/xero-ruby/models/payroll_uk/employee_pay_template.rb +220 -0
  671. data/lib/xero-ruby/models/payroll_uk/employee_pay_template_object.rb +228 -0
  672. data/lib/xero-ruby/models/payroll_uk/employee_pay_templates.rb +230 -0
  673. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance.rb +280 -0
  674. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_balance_object.rb +228 -0
  675. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leave_summary.rb +322 -0
  676. data/lib/xero-ruby/models/payroll_uk/employee_statutory_leaves_summaries.rb +230 -0
  677. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave.rb +419 -0
  678. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leave_object.rb +228 -0
  679. data/lib/xero-ruby/models/payroll_uk/employee_statutory_sick_leaves.rb +230 -0
  680. data/lib/xero-ruby/models/payroll_uk/employee_tax.rb +308 -0
  681. data/lib/xero-ruby/models/payroll_uk/employee_tax_object.rb +228 -0
  682. data/lib/xero-ruby/models/payroll_uk/employees.rb +230 -0
  683. data/lib/xero-ruby/models/payroll_uk/employment.rb +280 -0
  684. data/lib/xero-ruby/models/payroll_uk/employment_object.rb +228 -0
  685. data/lib/xero-ruby/models/payroll_uk/invalid_field.rb +218 -0
  686. data/lib/xero-ruby/models/payroll_uk/leave_accrual_line.rb +218 -0
  687. data/lib/xero-ruby/models/payroll_uk/leave_earnings_line.rb +258 -0
  688. data/lib/xero-ruby/models/payroll_uk/leave_period.rb +274 -0
  689. data/lib/xero-ruby/models/payroll_uk/leave_periods.rb +230 -0
  690. data/lib/xero-ruby/models/payroll_uk/leave_type.rb +293 -0
  691. data/lib/xero-ruby/models/payroll_uk/leave_type_object.rb +228 -0
  692. data/lib/xero-ruby/models/payroll_uk/leave_types.rb +230 -0
  693. data/lib/xero-ruby/models/payroll_uk/pagination.rb +238 -0
  694. data/lib/xero-ruby/models/payroll_uk/pay_run.rb +389 -0
  695. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar.rb +328 -0
  696. data/lib/xero-ruby/models/payroll_uk/pay_run_calendar_object.rb +228 -0
  697. data/lib/xero-ruby/models/payroll_uk/pay_run_calendars.rb +230 -0
  698. data/lib/xero-ruby/models/payroll_uk/pay_run_object.rb +228 -0
  699. data/lib/xero-ruby/models/payroll_uk/pay_runs.rb +230 -0
  700. data/lib/xero-ruby/models/payroll_uk/payment_line.rb +248 -0
  701. data/lib/xero-ruby/models/payroll_uk/payment_method.rb +262 -0
  702. data/lib/xero-ruby/models/payroll_uk/payment_method_object.rb +228 -0
  703. data/lib/xero-ruby/models/payroll_uk/payslip.rb +537 -0
  704. data/lib/xero-ruby/models/payroll_uk/payslip_object.rb +228 -0
  705. data/lib/xero-ruby/models/payroll_uk/payslips.rb +230 -0
  706. data/lib/xero-ruby/models/payroll_uk/problem.rb +261 -0
  707. data/lib/xero-ruby/models/payroll_uk/reimbursement.rb +248 -0
  708. data/lib/xero-ruby/models/payroll_uk/reimbursement_line.rb +228 -0
  709. data/lib/xero-ruby/models/payroll_uk/reimbursement_object.rb +228 -0
  710. data/lib/xero-ruby/models/payroll_uk/reimbursements.rb +230 -0
  711. data/lib/xero-ruby/models/payroll_uk/salary_and_wage.rb +368 -0
  712. data/lib/xero-ruby/models/payroll_uk/salary_and_wage_object.rb +228 -0
  713. data/lib/xero-ruby/models/payroll_uk/salary_and_wages.rb +230 -0
  714. data/lib/xero-ruby/models/payroll_uk/settings.rb +228 -0
  715. data/lib/xero-ruby/models/payroll_uk/statutory_deduction.rb +248 -0
  716. data/lib/xero-ruby/models/payroll_uk/statutory_deduction_category.rb +49 -0
  717. data/lib/xero-ruby/models/payroll_uk/tax_line.rb +258 -0
  718. data/lib/xero-ruby/models/payroll_uk/timesheet.rb +347 -0
  719. data/lib/xero-ruby/models/payroll_uk/timesheet_earnings_line.rb +258 -0
  720. data/lib/xero-ruby/models/payroll_uk/timesheet_line.rb +263 -0
  721. data/lib/xero-ruby/models/payroll_uk/timesheet_line_object.rb +228 -0
  722. data/lib/xero-ruby/models/payroll_uk/timesheet_object.rb +228 -0
  723. data/lib/xero-ruby/models/payroll_uk/timesheets.rb +230 -0
  724. data/lib/xero-ruby/models/payroll_uk/tracking_categories.rb +228 -0
  725. data/lib/xero-ruby/models/payroll_uk/tracking_category.rb +218 -0
  726. data/lib/xero-ruby/models/projects/amount.rb +2 -2
  727. data/lib/xero-ruby/models/projects/charge_type.rb +1 -1
  728. data/lib/xero-ruby/models/projects/currency_code.rb +1 -1
  729. data/lib/xero-ruby/models/projects/error.rb +2 -2
  730. data/lib/xero-ruby/models/projects/pagination.rb +2 -2
  731. data/lib/xero-ruby/models/projects/project.rb +2 -2
  732. data/lib/xero-ruby/models/projects/project_create_or_update.rb +2 -2
  733. data/lib/xero-ruby/models/projects/project_patch.rb +2 -2
  734. data/lib/xero-ruby/models/projects/project_status.rb +1 -1
  735. data/lib/xero-ruby/models/projects/project_user.rb +2 -2
  736. data/lib/xero-ruby/models/projects/project_users.rb +2 -2
  737. data/lib/xero-ruby/models/projects/projects.rb +2 -2
  738. data/lib/xero-ruby/models/projects/task.rb +2 -2
  739. data/lib/xero-ruby/models/projects/task_create_or_update.rb +2 -2
  740. data/lib/xero-ruby/models/projects/tasks.rb +2 -2
  741. data/lib/xero-ruby/models/projects/time_entries.rb +2 -2
  742. data/lib/xero-ruby/models/projects/time_entry.rb +2 -2
  743. data/lib/xero-ruby/models/projects/time_entry_create_or_update.rb +2 -2
  744. data/lib/xero-ruby/version.rb +2 -2
  745. data/spec/api_client_spec.rb +3 -3
  746. data/spec/files/api/files_api_spec.rb +249 -0
  747. data/spec/files/models/association_spec.rb +59 -0
  748. data/spec/files/models/file_object_spec.rb +83 -0
  749. data/spec/files/models/file_response204_spec.rb +41 -0
  750. data/spec/files/models/files_spec.rb +59 -0
  751. data/spec/files/models/folder_spec.rb +65 -0
  752. data/spec/files/models/folders_spec.rb +41 -0
  753. data/spec/files/models/inline_object_spec.rb +59 -0
  754. data/spec/files/models/object_group_spec.rb +35 -0
  755. data/spec/files/models/object_type_spec.rb +35 -0
  756. data/spec/files/models/user_spec.rb +81 -0
  757. data/spec/payroll_au/api/payroll_au_api_spec.rb +415 -0
  758. data/spec/payroll_au/models/account_spec.rb +59 -0
  759. data/spec/payroll_au/models/account_type_spec.rb +35 -0
  760. data/spec/payroll_au/models/allowance_type_spec.rb +35 -0
  761. data/spec/payroll_au/models/api_exception_spec.rb +53 -0
  762. data/spec/payroll_au/models/bank_account_spec.rb +71 -0
  763. data/spec/payroll_au/models/calendar_type_spec.rb +35 -0
  764. data/spec/payroll_au/models/deduction_line_spec.rb +65 -0
  765. data/spec/payroll_au/models/deduction_type_calculation_type_spec.rb +35 -0
  766. data/spec/payroll_au/models/deduction_type_spec.rb +93 -0
  767. data/spec/payroll_au/models/earnings_line_spec.rb +89 -0
  768. data/spec/payroll_au/models/earnings_rate_calculation_type_spec.rb +35 -0
  769. data/spec/payroll_au/models/earnings_rate_spec.rb +137 -0
  770. data/spec/payroll_au/models/earnings_type_spec.rb +35 -0
  771. data/spec/payroll_au/models/employee_spec.rb +225 -0
  772. data/spec/payroll_au/models/employee_status_spec.rb +35 -0
  773. data/spec/payroll_au/models/employees_spec.rb +41 -0
  774. data/spec/payroll_au/models/employment_basis_spec.rb +35 -0
  775. data/spec/payroll_au/models/employment_termination_payment_type_spec.rb +35 -0
  776. data/spec/payroll_au/models/entitlement_final_pay_payout_type_spec.rb +35 -0
  777. data/spec/payroll_au/models/home_address_spec.rb +71 -0
  778. data/spec/payroll_au/models/leave_accrual_line_spec.rb +53 -0
  779. data/spec/payroll_au/models/leave_application_spec.rb +95 -0
  780. data/spec/payroll_au/models/leave_applications_spec.rb +41 -0
  781. data/spec/payroll_au/models/leave_balance_spec.rb +59 -0
  782. data/spec/payroll_au/models/leave_earnings_line_spec.rb +53 -0
  783. data/spec/payroll_au/models/leave_line_calculation_type_spec.rb +35 -0
  784. data/spec/payroll_au/models/leave_line_spec.rb +83 -0
  785. data/spec/payroll_au/models/leave_lines_spec.rb +41 -0
  786. data/spec/payroll_au/models/leave_period_spec.rb +59 -0
  787. data/spec/payroll_au/models/leave_period_status_spec.rb +35 -0
  788. data/spec/payroll_au/models/leave_type_contribution_type_spec.rb +35 -0
  789. data/spec/payroll_au/models/leave_type_spec.rb +89 -0
  790. data/spec/payroll_au/models/manual_tax_type_spec.rb +35 -0
  791. data/spec/payroll_au/models/opening_balances_spec.rb +77 -0
  792. data/spec/payroll_au/models/pay_item_spec.rb +59 -0
  793. data/spec/payroll_au/models/pay_items_spec.rb +41 -0
  794. data/spec/payroll_au/models/pay_run_spec.rb +131 -0
  795. data/spec/payroll_au/models/pay_run_status_spec.rb +35 -0
  796. data/spec/payroll_au/models/pay_runs_spec.rb +41 -0
  797. data/spec/payroll_au/models/pay_template_spec.rb +65 -0
  798. data/spec/payroll_au/models/payment_frequency_type_spec.rb +35 -0
  799. data/spec/payroll_au/models/payroll_calendar_spec.rb +77 -0
  800. data/spec/payroll_au/models/payroll_calendars_spec.rb +41 -0
  801. data/spec/payroll_au/models/payslip_lines_spec.rb +83 -0
  802. data/spec/payroll_au/models/payslip_object_spec.rb +41 -0
  803. data/spec/payroll_au/models/payslip_spec.rb +149 -0
  804. data/spec/payroll_au/models/payslip_summary_spec.rb +107 -0
  805. data/spec/payroll_au/models/payslips_spec.rb +41 -0
  806. data/spec/payroll_au/models/rate_type_spec.rb +35 -0
  807. data/spec/payroll_au/models/reimbursement_line_spec.rb +59 -0
  808. data/spec/payroll_au/models/reimbursement_lines_spec.rb +41 -0
  809. data/spec/payroll_au/models/reimbursement_type_spec.rb +65 -0
  810. data/spec/payroll_au/models/residency_status_spec.rb +35 -0
  811. data/spec/payroll_au/models/settings_object_spec.rb +41 -0
  812. data/spec/payroll_au/models/settings_spec.rb +53 -0
  813. data/spec/payroll_au/models/settings_tracking_categories_employee_groups_spec.rb +47 -0
  814. data/spec/payroll_au/models/settings_tracking_categories_spec.rb +47 -0
  815. data/spec/payroll_au/models/settings_tracking_categories_timesheet_categories_spec.rb +47 -0
  816. data/spec/payroll_au/models/state_spec.rb +35 -0
  817. data/spec/payroll_au/models/super_fund_product_spec.rb +59 -0
  818. data/spec/payroll_au/models/super_fund_products_spec.rb +41 -0
  819. data/spec/payroll_au/models/super_fund_spec.rb +113 -0
  820. data/spec/payroll_au/models/super_fund_type_spec.rb +35 -0
  821. data/spec/payroll_au/models/super_funds_spec.rb +41 -0
  822. data/spec/payroll_au/models/super_line_spec.rb +83 -0
  823. data/spec/payroll_au/models/super_membership_spec.rb +53 -0
  824. data/spec/payroll_au/models/superannuation_calculation_type_spec.rb +35 -0
  825. data/spec/payroll_au/models/superannuation_contribution_type_spec.rb +35 -0
  826. data/spec/payroll_au/models/superannuation_line_spec.rb +89 -0
  827. data/spec/payroll_au/models/tax_declaration_spec.rb +131 -0
  828. data/spec/payroll_au/models/tax_line_spec.rb +71 -0
  829. data/spec/payroll_au/models/tfn_exemption_type_spec.rb +35 -0
  830. data/spec/payroll_au/models/timesheet_line_spec.rb +59 -0
  831. data/spec/payroll_au/models/timesheet_object_spec.rb +41 -0
  832. data/spec/payroll_au/models/timesheet_spec.rb +89 -0
  833. data/spec/payroll_au/models/timesheet_status_spec.rb +35 -0
  834. data/spec/payroll_au/models/timesheets_spec.rb +41 -0
  835. data/spec/payroll_au/models/validation_error_spec.rb +41 -0
  836. data/spec/payroll_nz/api/payroll_nz_api_spec.rb +886 -0
  837. data/spec/payroll_nz/models/account_spec.rb +63 -0
  838. data/spec/payroll_nz/models/accounts_spec.rb +41 -0
  839. data/spec/payroll_nz/models/address_spec.rb +71 -0
  840. data/spec/payroll_nz/models/bank_account_spec.rb +87 -0
  841. data/spec/payroll_nz/models/benefit_spec.rb +103 -0
  842. data/spec/payroll_nz/models/deduction_line_spec.rb +65 -0
  843. data/spec/payroll_nz/models/deduction_object_spec.rb +53 -0
  844. data/spec/payroll_nz/models/deduction_spec.rb +75 -0
  845. data/spec/payroll_nz/models/deductions_spec.rb +53 -0
  846. data/spec/payroll_nz/models/earnings_line_spec.rb +95 -0
  847. data/spec/payroll_nz/models/earnings_order_object_spec.rb +53 -0
  848. data/spec/payroll_nz/models/earnings_order_spec.rb +65 -0
  849. data/spec/payroll_nz/models/earnings_orders_spec.rb +53 -0
  850. data/spec/payroll_nz/models/earnings_rate_object_spec.rb +53 -0
  851. data/spec/payroll_nz/models/earnings_rate_spec.rb +103 -0
  852. data/spec/payroll_nz/models/earnings_rates_spec.rb +53 -0
  853. data/spec/payroll_nz/models/earnings_template_object_spec.rb +53 -0
  854. data/spec/payroll_nz/models/earnings_template_spec.rb +71 -0
  855. data/spec/payroll_nz/models/employee_earnings_templates_spec.rb +53 -0
  856. data/spec/payroll_nz/models/employee_leave_balance_spec.rb +59 -0
  857. data/spec/payroll_nz/models/employee_leave_balances_spec.rb +53 -0
  858. data/spec/payroll_nz/models/employee_leave_object_spec.rb +53 -0
  859. data/spec/payroll_nz/models/employee_leave_setup_object_spec.rb +53 -0
  860. data/spec/payroll_nz/models/employee_leave_setup_spec.rb +77 -0
  861. data/spec/payroll_nz/models/employee_leave_spec.rb +77 -0
  862. data/spec/payroll_nz/models/employee_leave_type_object_spec.rb +53 -0
  863. data/spec/payroll_nz/models/employee_leave_type_spec.rb +99 -0
  864. data/spec/payroll_nz/models/employee_leave_types_spec.rb +53 -0
  865. data/spec/payroll_nz/models/employee_leaves_spec.rb +53 -0
  866. data/spec/payroll_nz/models/employee_object_spec.rb +53 -0
  867. data/spec/payroll_nz/models/employee_opening_balance_spec.rb +59 -0
  868. data/spec/payroll_nz/models/employee_opening_balances_object_spec.rb +53 -0
  869. data/spec/payroll_nz/models/employee_pay_template_object_spec.rb +53 -0
  870. data/spec/payroll_nz/models/employee_pay_template_spec.rb +47 -0
  871. data/spec/payroll_nz/models/employee_pay_templates_spec.rb +53 -0
  872. data/spec/payroll_nz/models/employee_spec.rb +123 -0
  873. data/spec/payroll_nz/models/employee_statutory_leave_balance_object_spec.rb +53 -0
  874. data/spec/payroll_nz/models/employee_statutory_leave_balance_spec.rb +61 -0
  875. data/spec/payroll_nz/models/employee_statutory_leave_summary_spec.rb +85 -0
  876. data/spec/payroll_nz/models/employee_statutory_leaves_summaries_spec.rb +53 -0
  877. data/spec/payroll_nz/models/employee_statutory_sick_leave_object_spec.rb +53 -0
  878. data/spec/payroll_nz/models/employee_statutory_sick_leave_spec.rb +135 -0
  879. data/spec/payroll_nz/models/employee_statutory_sick_leaves_spec.rb +53 -0
  880. data/spec/payroll_nz/models/employee_tax_object_spec.rb +53 -0
  881. data/spec/payroll_nz/models/employee_tax_spec.rb +135 -0
  882. data/spec/payroll_nz/models/employees_spec.rb +53 -0
  883. data/spec/payroll_nz/models/employment_object_spec.rb +53 -0
  884. data/spec/payroll_nz/models/employment_spec.rb +53 -0
  885. data/spec/payroll_nz/models/gross_earnings_history_spec.rb +47 -0
  886. data/spec/payroll_nz/models/invalid_field_spec.rb +47 -0
  887. data/spec/payroll_nz/models/leave_accrual_line_spec.rb +47 -0
  888. data/spec/payroll_nz/models/leave_earnings_line_spec.rb +95 -0
  889. data/spec/payroll_nz/models/leave_period_spec.rb +63 -0
  890. data/spec/payroll_nz/models/leave_periods_spec.rb +53 -0
  891. data/spec/payroll_nz/models/leave_type_object_spec.rb +53 -0
  892. data/spec/payroll_nz/models/leave_type_spec.rb +71 -0
  893. data/spec/payroll_nz/models/leave_types_spec.rb +53 -0
  894. data/spec/payroll_nz/models/pagination_spec.rb +59 -0
  895. data/spec/payroll_nz/models/pay_run_calendar_object_spec.rb +53 -0
  896. data/spec/payroll_nz/models/pay_run_calendar_spec.rb +81 -0
  897. data/spec/payroll_nz/models/pay_run_calendars_spec.rb +53 -0
  898. data/spec/payroll_nz/models/pay_run_object_spec.rb +53 -0
  899. data/spec/payroll_nz/models/pay_run_spec.rb +119 -0
  900. data/spec/payroll_nz/models/pay_runs_spec.rb +53 -0
  901. data/spec/payroll_nz/models/pay_slip_object_spec.rb +53 -0
  902. data/spec/payroll_nz/models/pay_slip_spec.rb +219 -0
  903. data/spec/payroll_nz/models/pay_slips_spec.rb +53 -0
  904. data/spec/payroll_nz/models/payment_line_spec.rb +65 -0
  905. data/spec/payroll_nz/models/payment_method_object_spec.rb +53 -0
  906. data/spec/payroll_nz/models/payment_method_spec.rb +51 -0
  907. data/spec/payroll_nz/models/problem_spec.rb +71 -0
  908. data/spec/payroll_nz/models/reimbursement_line_spec.rb +65 -0
  909. data/spec/payroll_nz/models/reimbursement_object_spec.rb +53 -0
  910. data/spec/payroll_nz/models/reimbursement_spec.rb +101 -0
  911. data/spec/payroll_nz/models/reimbursements_spec.rb +53 -0
  912. data/spec/payroll_nz/models/salary_and_wage_object_spec.rb +53 -0
  913. data/spec/payroll_nz/models/salary_and_wage_spec.rb +103 -0
  914. data/spec/payroll_nz/models/salary_and_wages_spec.rb +53 -0
  915. data/spec/payroll_nz/models/settings_spec.rb +53 -0
  916. data/spec/payroll_nz/models/statutory_deduction_category_spec.rb +35 -0
  917. data/spec/payroll_nz/models/statutory_deduction_line_spec.rb +59 -0
  918. data/spec/payroll_nz/models/statutory_deduction_object_spec.rb +53 -0
  919. data/spec/payroll_nz/models/statutory_deduction_spec.rb +65 -0
  920. data/spec/payroll_nz/models/statutory_deductions_spec.rb +53 -0
  921. data/spec/payroll_nz/models/superannuation_line_spec.rb +71 -0
  922. data/spec/payroll_nz/models/superannuation_object_spec.rb +53 -0
  923. data/spec/payroll_nz/models/superannuations_spec.rb +53 -0
  924. data/spec/payroll_nz/models/tax_code_spec.rb +35 -0
  925. data/spec/payroll_nz/models/tax_line_spec.rb +65 -0
  926. data/spec/payroll_nz/models/tax_settings_spec.rb +75 -0
  927. data/spec/payroll_nz/models/timesheet_earnings_line_spec.rb +95 -0
  928. data/spec/payroll_nz/models/timesheet_line_object_spec.rb +53 -0
  929. data/spec/payroll_nz/models/timesheet_line_spec.rb +65 -0
  930. data/spec/payroll_nz/models/timesheet_object_spec.rb +53 -0
  931. data/spec/payroll_nz/models/timesheet_spec.rb +93 -0
  932. data/spec/payroll_nz/models/timesheets_spec.rb +53 -0
  933. data/spec/payroll_nz/models/tracking_categories_spec.rb +53 -0
  934. data/spec/payroll_nz/models/tracking_category_spec.rb +47 -0
  935. data/spec/payroll_uk/api/payroll_uk_api_spec.rb +912 -0
  936. data/spec/payroll_uk/models/account_spec.rb +63 -0
  937. data/spec/payroll_uk/models/accounts_spec.rb +41 -0
  938. data/spec/payroll_uk/models/address_spec.rb +65 -0
  939. data/spec/payroll_uk/models/bank_account_spec.rb +53 -0
  940. data/spec/payroll_uk/models/benefit_line_spec.rb +65 -0
  941. data/spec/payroll_uk/models/benefit_object_spec.rb +53 -0
  942. data/spec/payroll_uk/models/benefit_spec.rb +127 -0
  943. data/spec/payroll_uk/models/benefits_spec.rb +53 -0
  944. data/spec/payroll_uk/models/court_order_line_spec.rb +47 -0
  945. data/spec/payroll_uk/models/deduction_line_spec.rb +59 -0
  946. data/spec/payroll_uk/models/deduction_object_spec.rb +53 -0
  947. data/spec/payroll_uk/models/deduction_spec.rb +139 -0
  948. data/spec/payroll_uk/models/deductions_spec.rb +53 -0
  949. data/spec/payroll_uk/models/earnings_line_spec.rb +89 -0
  950. data/spec/payroll_uk/models/earnings_order_object_spec.rb +53 -0
  951. data/spec/payroll_uk/models/earnings_order_spec.rb +65 -0
  952. data/spec/payroll_uk/models/earnings_orders_spec.rb +53 -0
  953. data/spec/payroll_uk/models/earnings_rate_object_spec.rb +53 -0
  954. data/spec/payroll_uk/models/earnings_rate_spec.rb +103 -0
  955. data/spec/payroll_uk/models/earnings_rates_spec.rb +53 -0
  956. data/spec/payroll_uk/models/earnings_template_object_spec.rb +53 -0
  957. data/spec/payroll_uk/models/earnings_template_spec.rb +71 -0
  958. data/spec/payroll_uk/models/employee_leave_balance_spec.rb +59 -0
  959. data/spec/payroll_uk/models/employee_leave_balances_spec.rb +53 -0
  960. data/spec/payroll_uk/models/employee_leave_object_spec.rb +53 -0
  961. data/spec/payroll_uk/models/employee_leave_spec.rb +77 -0
  962. data/spec/payroll_uk/models/employee_leave_type_object_spec.rb +53 -0
  963. data/spec/payroll_uk/models/employee_leave_type_spec.rb +75 -0
  964. data/spec/payroll_uk/models/employee_leave_types_spec.rb +53 -0
  965. data/spec/payroll_uk/models/employee_leaves_spec.rb +53 -0
  966. data/spec/payroll_uk/models/employee_object_spec.rb +53 -0
  967. data/spec/payroll_uk/models/employee_opening_balances_object_spec.rb +53 -0
  968. data/spec/payroll_uk/models/employee_opening_balances_spec.rb +71 -0
  969. data/spec/payroll_uk/models/employee_pay_template_object_spec.rb +53 -0
  970. data/spec/payroll_uk/models/employee_pay_template_spec.rb +47 -0
  971. data/spec/payroll_uk/models/employee_pay_templates_spec.rb +53 -0
  972. data/spec/payroll_uk/models/employee_spec.rb +129 -0
  973. data/spec/payroll_uk/models/employee_statutory_leave_balance_object_spec.rb +53 -0
  974. data/spec/payroll_uk/models/employee_statutory_leave_balance_spec.rb +61 -0
  975. data/spec/payroll_uk/models/employee_statutory_leave_summary_spec.rb +85 -0
  976. data/spec/payroll_uk/models/employee_statutory_leaves_summaries_spec.rb +53 -0
  977. data/spec/payroll_uk/models/employee_statutory_sick_leave_object_spec.rb +53 -0
  978. data/spec/payroll_uk/models/employee_statutory_sick_leave_spec.rb +135 -0
  979. data/spec/payroll_uk/models/employee_statutory_sick_leaves_spec.rb +53 -0
  980. data/spec/payroll_uk/models/employee_tax_object_spec.rb +53 -0
  981. data/spec/payroll_uk/models/employee_tax_spec.rb +101 -0
  982. data/spec/payroll_uk/models/employees_spec.rb +53 -0
  983. data/spec/payroll_uk/models/employment_object_spec.rb +53 -0
  984. data/spec/payroll_uk/models/employment_spec.rb +63 -0
  985. data/spec/payroll_uk/models/invalid_field_spec.rb +47 -0
  986. data/spec/payroll_uk/models/leave_accrual_line_spec.rb +47 -0
  987. data/spec/payroll_uk/models/leave_earnings_line_spec.rb +71 -0
  988. data/spec/payroll_uk/models/leave_period_spec.rb +63 -0
  989. data/spec/payroll_uk/models/leave_periods_spec.rb +53 -0
  990. data/spec/payroll_uk/models/leave_type_object_spec.rb +53 -0
  991. data/spec/payroll_uk/models/leave_type_spec.rb +83 -0
  992. data/spec/payroll_uk/models/leave_types_spec.rb +53 -0
  993. data/spec/payroll_uk/models/pagination_spec.rb +59 -0
  994. data/spec/payroll_uk/models/pay_run_calendar_object_spec.rb +53 -0
  995. data/spec/payroll_uk/models/pay_run_calendar_spec.rb +81 -0
  996. data/spec/payroll_uk/models/pay_run_calendars_spec.rb +53 -0
  997. data/spec/payroll_uk/models/pay_run_object_spec.rb +53 -0
  998. data/spec/payroll_uk/models/pay_run_spec.rb +119 -0
  999. data/spec/payroll_uk/models/pay_runs_spec.rb +53 -0
  1000. data/spec/payroll_uk/models/payment_line_spec.rb +65 -0
  1001. data/spec/payroll_uk/models/payment_method_object_spec.rb +53 -0
  1002. data/spec/payroll_uk/models/payment_method_spec.rb +51 -0
  1003. data/spec/payroll_uk/models/payslip_object_spec.rb +53 -0
  1004. data/spec/payroll_uk/models/payslip_spec.rb +201 -0
  1005. data/spec/payroll_uk/models/payslips_spec.rb +53 -0
  1006. data/spec/payroll_uk/models/problem_spec.rb +71 -0
  1007. data/spec/payroll_uk/models/reimbursement_line_spec.rb +53 -0
  1008. data/spec/payroll_uk/models/reimbursement_object_spec.rb +53 -0
  1009. data/spec/payroll_uk/models/reimbursement_spec.rb +59 -0
  1010. data/spec/payroll_uk/models/reimbursements_spec.rb +53 -0
  1011. data/spec/payroll_uk/models/salary_and_wage_object_spec.rb +53 -0
  1012. data/spec/payroll_uk/models/salary_and_wage_spec.rb +97 -0
  1013. data/spec/payroll_uk/models/salary_and_wages_spec.rb +53 -0
  1014. data/spec/payroll_uk/models/settings_spec.rb +53 -0
  1015. data/spec/payroll_uk/models/statutory_deduction_category_spec.rb +35 -0
  1016. data/spec/payroll_uk/models/statutory_deduction_spec.rb +65 -0
  1017. data/spec/payroll_uk/models/tax_line_spec.rb +71 -0
  1018. data/spec/payroll_uk/models/timesheet_earnings_line_spec.rb +71 -0
  1019. data/spec/payroll_uk/models/timesheet_line_object_spec.rb +53 -0
  1020. data/spec/payroll_uk/models/timesheet_line_spec.rb +65 -0
  1021. data/spec/payroll_uk/models/timesheet_object_spec.rb +53 -0
  1022. data/spec/payroll_uk/models/timesheet_spec.rb +93 -0
  1023. data/spec/payroll_uk/models/timesheets_spec.rb +53 -0
  1024. data/spec/payroll_uk/models/tracking_categories_spec.rb +53 -0
  1025. data/spec/payroll_uk/models/tracking_category_spec.rb +47 -0
  1026. data/xero-ruby.gem +0 -0
  1027. data/xero-ruby.gemspec +1 -1
  1028. metadata +1144 -2
@@ -0,0 +1,49 @@
1
+ =begin
2
+ #Xero Payroll UK
3
+
4
+ #This is the Xero Payroll API for orgs in the UK region.
5
+
6
+ The version of the OpenAPI document: 2.6.0
7
+ Contact: api@xero.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'time'
14
+ require 'date'
15
+
16
+ module XeroRuby::PayrollUk
17
+ class StatutoryDeductionCategory
18
+ ADDITIONAL_STUDENT_LOAN = "AdditionalStudentLoan".freeze
19
+ CHILD_SUPPORT = "ChildSupport".freeze
20
+ COURT_FINES = "CourtFines".freeze
21
+ CREDITOR = "Creditor".freeze
22
+ FEDERAL_LEVY = "FederalLevy".freeze
23
+ INLAND_REVENUE_ARREARS = "InlandRevenueArrears".freeze
24
+ KIWI_SAVER = "KiwiSaver".freeze
25
+ MSD_REPAYMENTS = "MsdRepayments".freeze
26
+ NON_PRIORITY_ORDER = "NonPriorityOrder".freeze
27
+ PRIORITY_ORDER = "PriorityOrder".freeze
28
+ TABLE_BASED = "TableBased".freeze
29
+ STUDENT_LOAN = "StudentLoan".freeze
30
+ VOLUNTARY_STUDENT_LOAN = "VoluntaryStudentLoan".freeze
31
+ US_CHILD_SUPPORT = "USChildSupport".freeze
32
+
33
+ # Builds the enum from string
34
+ # @param [String] The enum value in the form of the string
35
+ # @return [String] The enum value
36
+ def self.build_from_hash(value)
37
+ new.build_from_hash(value)
38
+ end
39
+
40
+ # Builds the enum from string
41
+ # @param [String] The enum value in the form of the string
42
+ # @return [String] The enum value
43
+ def build_from_hash(value)
44
+ constantValues = StatutoryDeductionCategory.constants.select { |c| StatutoryDeductionCategory::const_get(c) == value }
45
+ raise "Invalid ENUM value #{value} for class #StatutoryDeductionCategory" if constantValues.empty?
46
+ value
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,258 @@
1
+ =begin
2
+ #Xero Payroll UK
3
+
4
+ #This is the Xero Payroll API for orgs in the UK region.
5
+
6
+ The version of the OpenAPI document: 2.6.0
7
+ Contact: api@xero.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'time'
14
+ require 'date'
15
+
16
+ module XeroRuby::PayrollUk
17
+ require 'bigdecimal'
18
+
19
+ class TaxLine
20
+ # Xero identifier for payroll tax line
21
+ attr_accessor :tax_line_id
22
+
23
+ # Tax line description
24
+ attr_accessor :description
25
+
26
+ # Identifies if the amount is paid for by the employee or employer. True if employer pays the tax
27
+ attr_accessor :is_employer_tax
28
+
29
+ # The amount of the tax line
30
+ attr_accessor :amount
31
+
32
+ # Tax type ID
33
+ attr_accessor :global_tax_type_id
34
+
35
+ # Identifies if the tax line is a manual adjustment
36
+ attr_accessor :manual_adjustment
37
+
38
+ # Attribute mapping from ruby-style variable name to JSON key.
39
+ def self.attribute_map
40
+ {
41
+ :'tax_line_id' => :'taxLineID',
42
+ :'description' => :'description',
43
+ :'is_employer_tax' => :'isEmployerTax',
44
+ :'amount' => :'amount',
45
+ :'global_tax_type_id' => :'globalTaxTypeID',
46
+ :'manual_adjustment' => :'manualAdjustment'
47
+ }
48
+ end
49
+
50
+ # Attribute type mapping.
51
+ def self.openapi_types
52
+ {
53
+ :'tax_line_id' => :'String',
54
+ :'description' => :'String',
55
+ :'is_employer_tax' => :'Boolean',
56
+ :'amount' => :'Float',
57
+ :'global_tax_type_id' => :'String',
58
+ :'manual_adjustment' => :'Boolean'
59
+ }
60
+ end
61
+
62
+ # Initializes the object
63
+ # @param [Hash] attributes Model attributes in the form of hash
64
+ def initialize(attributes = {})
65
+ if (!attributes.is_a?(Hash))
66
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::TaxLine` initialize method"
67
+ end
68
+
69
+ # check to see if the attribute exists and convert string to symbol for hash key
70
+ attributes = attributes.each_with_object({}) { |(k, v), h|
71
+ if (!self.class.attribute_map.key?(k.to_sym))
72
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::TaxLine`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
73
+ end
74
+ h[k.to_sym] = v
75
+ }
76
+
77
+ if attributes.key?(:'tax_line_id')
78
+ self.tax_line_id = attributes[:'tax_line_id']
79
+ end
80
+
81
+ if attributes.key?(:'description')
82
+ self.description = attributes[:'description']
83
+ end
84
+
85
+ if attributes.key?(:'is_employer_tax')
86
+ self.is_employer_tax = attributes[:'is_employer_tax']
87
+ end
88
+
89
+ if attributes.key?(:'amount')
90
+ self.amount = attributes[:'amount']
91
+ end
92
+
93
+ if attributes.key?(:'global_tax_type_id')
94
+ self.global_tax_type_id = attributes[:'global_tax_type_id']
95
+ end
96
+
97
+ if attributes.key?(:'manual_adjustment')
98
+ self.manual_adjustment = attributes[:'manual_adjustment']
99
+ end
100
+ end
101
+
102
+ # Show invalid properties with the reasons. Usually used together with valid?
103
+ # @return Array for valid properties with the reasons
104
+ def list_invalid_properties
105
+ invalid_properties = Array.new
106
+ invalid_properties
107
+ end
108
+
109
+ # Check to see if the all the properties in the model are valid
110
+ # @return true if the model is valid
111
+ def valid?
112
+ true
113
+ end
114
+
115
+ # Checks equality by comparing each attribute.
116
+ # @param [Object] Object to be compared
117
+ def ==(o)
118
+ return true if self.equal?(o)
119
+ self.class == o.class &&
120
+ tax_line_id == o.tax_line_id &&
121
+ description == o.description &&
122
+ is_employer_tax == o.is_employer_tax &&
123
+ amount == o.amount &&
124
+ global_tax_type_id == o.global_tax_type_id &&
125
+ manual_adjustment == o.manual_adjustment
126
+ end
127
+
128
+ # @see the `==` method
129
+ # @param [Object] Object to be compared
130
+ def eql?(o)
131
+ self == o
132
+ end
133
+
134
+ # Calculates hash code according to all attributes.
135
+ # @return [Integer] Hash code
136
+ def hash
137
+ [tax_line_id, description, is_employer_tax, amount, global_tax_type_id, manual_adjustment].hash
138
+ end
139
+
140
+ # Builds the object from hash
141
+ # @param [Hash] attributes Model attributes in the form of hash
142
+ # @return [Object] Returns the model itself
143
+ def self.build_from_hash(attributes)
144
+ new.build_from_hash(attributes)
145
+ end
146
+
147
+ # Builds the object from hash
148
+ # @param [Hash] attributes Model attributes in the form of hash
149
+ # @return [Object] Returns the model itself
150
+ def build_from_hash(attributes)
151
+ return nil unless attributes.is_a?(Hash)
152
+ self.class.openapi_types.each_pair do |key, type|
153
+ if type =~ /\AArray<(.*)>/i
154
+ # check to ensure the input is an array given that the attribute
155
+ # is documented as an array but the input is not
156
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
157
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
158
+ end
159
+ elsif !attributes[self.class.attribute_map[key]].nil?
160
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
161
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
162
+ end
163
+
164
+ self
165
+ end
166
+
167
+ # Deserializes the data based on type
168
+ # @param string type Data type
169
+ # @param string value Value to be deserialized
170
+ # @return [Object] Deserialized data
171
+ def _deserialize(type, value)
172
+ case type.to_sym
173
+ when :DateTime
174
+ DateTime.parse(parse_date(value))
175
+ when :Date
176
+ Date.parse(parse_date(value))
177
+ when :String
178
+ value.to_s
179
+ when :Integer
180
+ value.to_i
181
+ when :Float
182
+ value.to_f
183
+ when :BigDecimal
184
+ BigDecimal(value.to_s)
185
+ when :Boolean
186
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
187
+ true
188
+ else
189
+ false
190
+ end
191
+ when :Object
192
+ # generic object (usually a Hash), return directly
193
+ value
194
+ when /\AArray<(?<inner_type>.+)>\z/
195
+ inner_type = Regexp.last_match[:inner_type]
196
+ value.map { |v| _deserialize(inner_type, v) }
197
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
198
+ k_type = Regexp.last_match[:k_type]
199
+ v_type = Regexp.last_match[:v_type]
200
+ {}.tap do |hash|
201
+ value.each do |k, v|
202
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
203
+ end
204
+ end
205
+ else # model
206
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
207
+ end
208
+ end
209
+
210
+ # Returns the string representation of the object
211
+ # @return [String] String presentation of the object
212
+ def to_s
213
+ to_hash.to_s
214
+ end
215
+
216
+ # to_body is an alias to to_hash (backward compatibility)
217
+ # @return [Hash] Returns the object in the form of hash
218
+ def to_body
219
+ to_hash
220
+ end
221
+
222
+ # Returns the object in the form of hash
223
+ # @return [Hash] Returns the object in the form of hash
224
+ def to_hash
225
+ hash = {}
226
+ self.class.attribute_map.each_pair do |attr, param|
227
+ value = self.send(attr)
228
+ next if value.nil?
229
+ hash[param] = _to_hash(value)
230
+ end
231
+ hash
232
+ end
233
+
234
+ # Outputs non-array value in the form of hash
235
+ # For object, use to_hash. Otherwise, just return the value
236
+ # @param [Object] value Any valid value
237
+ # @return [Hash] Returns the value in the form of hash
238
+ def _to_hash(value)
239
+ if value.is_a?(Array)
240
+ value.compact.map { |v| _to_hash(v) }
241
+ elsif value.is_a?(Hash)
242
+ {}.tap do |hash|
243
+ value.each { |k, v| hash[k] = _to_hash(v) }
244
+ end
245
+ elsif value.respond_to? :to_hash
246
+ value.to_hash
247
+ else
248
+ value
249
+ end
250
+ end
251
+
252
+ # customized data_parser
253
+ 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
256
+ end
257
+ end
258
+ end
@@ -0,0 +1,347 @@
1
+ =begin
2
+ #Xero Payroll UK
3
+
4
+ #This is the Xero Payroll API for orgs in the UK region.
5
+
6
+ The version of the OpenAPI document: 2.6.0
7
+ Contact: api@xero.com
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'time'
14
+ require 'date'
15
+
16
+ module XeroRuby::PayrollUk
17
+ require 'bigdecimal'
18
+
19
+ class Timesheet
20
+ # The Xero identifier for a Timesheet
21
+ attr_accessor :timesheet_id
22
+
23
+ # The Xero identifier for the Payroll Calandar that the Timesheet applies to
24
+ attr_accessor :payroll_calendar_id
25
+
26
+ # The Xero identifier for the Employee that the Timesheet is for
27
+ attr_accessor :employee_id
28
+
29
+ # The Start Date of the Timesheet period (YYYY-MM-DD)
30
+ attr_accessor :start_date
31
+
32
+ # The End Date of the Timesheet period (YYYY-MM-DD)
33
+ attr_accessor :end_date
34
+
35
+ # Status of the timesheet
36
+ attr_accessor :status
37
+ DRAFT = "Draft".freeze
38
+ APPROVED = "Approved".freeze
39
+ COMPLETED = "Completed".freeze
40
+
41
+ # The Total Hours of the Timesheet
42
+ attr_accessor :total_hours
43
+
44
+ # The UTC date time that the Timesheet was last updated
45
+ attr_accessor :updated_date_utc
46
+
47
+
48
+ attr_accessor :timesheet_lines
49
+
50
+ class EnumAttributeValidator
51
+ attr_reader :datatype
52
+ attr_reader :allowable_values
53
+
54
+ def initialize(datatype, allowable_values)
55
+ @allowable_values = allowable_values.map do |value|
56
+ case datatype.to_s
57
+ when /Integer/i
58
+ value.to_i
59
+ when /Float/i
60
+ value.to_f
61
+ else
62
+ value
63
+ end
64
+ end
65
+ end
66
+
67
+ def valid?(value)
68
+ !value || allowable_values.include?(value)
69
+ end
70
+ end
71
+
72
+ # Attribute mapping from ruby-style variable name to JSON key.
73
+ def self.attribute_map
74
+ {
75
+ :'timesheet_id' => :'timesheetID',
76
+ :'payroll_calendar_id' => :'payrollCalendarID',
77
+ :'employee_id' => :'employeeID',
78
+ :'start_date' => :'startDate',
79
+ :'end_date' => :'endDate',
80
+ :'status' => :'status',
81
+ :'total_hours' => :'totalHours',
82
+ :'updated_date_utc' => :'updatedDateUTC',
83
+ :'timesheet_lines' => :'timesheetLines'
84
+ }
85
+ end
86
+
87
+ # Attribute type mapping.
88
+ def self.openapi_types
89
+ {
90
+ :'timesheet_id' => :'String',
91
+ :'payroll_calendar_id' => :'String',
92
+ :'employee_id' => :'String',
93
+ :'start_date' => :'Date',
94
+ :'end_date' => :'Date',
95
+ :'status' => :'String',
96
+ :'total_hours' => :'Float',
97
+ :'updated_date_utc' => :'DateTime',
98
+ :'timesheet_lines' => :'Array<TimesheetLine>'
99
+ }
100
+ end
101
+
102
+ # Initializes the object
103
+ # @param [Hash] attributes Model attributes in the form of hash
104
+ def initialize(attributes = {})
105
+ if (!attributes.is_a?(Hash))
106
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::Timesheet` initialize method"
107
+ end
108
+
109
+ # check to see if the attribute exists and convert string to symbol for hash key
110
+ attributes = attributes.each_with_object({}) { |(k, v), h|
111
+ if (!self.class.attribute_map.key?(k.to_sym))
112
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::Timesheet`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
113
+ end
114
+ h[k.to_sym] = v
115
+ }
116
+
117
+ if attributes.key?(:'timesheet_id')
118
+ self.timesheet_id = attributes[:'timesheet_id']
119
+ end
120
+
121
+ if attributes.key?(:'payroll_calendar_id')
122
+ self.payroll_calendar_id = attributes[:'payroll_calendar_id']
123
+ end
124
+
125
+ if attributes.key?(:'employee_id')
126
+ self.employee_id = attributes[:'employee_id']
127
+ end
128
+
129
+ if attributes.key?(:'start_date')
130
+ self.start_date = attributes[:'start_date']
131
+ end
132
+
133
+ if attributes.key?(:'end_date')
134
+ self.end_date = attributes[:'end_date']
135
+ end
136
+
137
+ if attributes.key?(:'status')
138
+ self.status = attributes[:'status']
139
+ end
140
+
141
+ if attributes.key?(:'total_hours')
142
+ self.total_hours = attributes[:'total_hours']
143
+ end
144
+
145
+ if attributes.key?(:'updated_date_utc')
146
+ self.updated_date_utc = attributes[:'updated_date_utc']
147
+ end
148
+
149
+ if attributes.key?(:'timesheet_lines')
150
+ if (value = attributes[:'timesheet_lines']).is_a?(Array)
151
+ self.timesheet_lines = value
152
+ end
153
+ end
154
+ end
155
+
156
+ # Show invalid properties with the reasons. Usually used together with valid?
157
+ # @return Array for valid properties with the reasons
158
+ def list_invalid_properties
159
+ invalid_properties = Array.new
160
+ if @payroll_calendar_id.nil?
161
+ invalid_properties.push('invalid value for "payroll_calendar_id", payroll_calendar_id cannot be nil.')
162
+ end
163
+
164
+ if @employee_id.nil?
165
+ invalid_properties.push('invalid value for "employee_id", employee_id cannot be nil.')
166
+ end
167
+
168
+ if @start_date.nil?
169
+ invalid_properties.push('invalid value for "start_date", start_date cannot be nil.')
170
+ end
171
+
172
+ if @end_date.nil?
173
+ invalid_properties.push('invalid value for "end_date", end_date cannot be nil.')
174
+ end
175
+
176
+ invalid_properties
177
+ end
178
+
179
+ # Check to see if the all the properties in the model are valid
180
+ # @return true if the model is valid
181
+ def valid?
182
+ return false if @payroll_calendar_id.nil?
183
+ return false if @employee_id.nil?
184
+ return false if @start_date.nil?
185
+ return false if @end_date.nil?
186
+ status_validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed"])
187
+ return false unless status_validator.valid?(@status)
188
+ true
189
+ end
190
+
191
+ # Custom attribute writer method checking allowed values (enum).
192
+ # @param [Object] status Object to be assigned
193
+ def status=(status)
194
+ validator = EnumAttributeValidator.new('String', ["Draft", "Approved", "Completed"])
195
+ unless validator.valid?(status)
196
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
197
+ end
198
+ @status = status
199
+ end
200
+
201
+ # Checks equality by comparing each attribute.
202
+ # @param [Object] Object to be compared
203
+ def ==(o)
204
+ return true if self.equal?(o)
205
+ self.class == o.class &&
206
+ timesheet_id == o.timesheet_id &&
207
+ payroll_calendar_id == o.payroll_calendar_id &&
208
+ employee_id == o.employee_id &&
209
+ start_date == o.start_date &&
210
+ end_date == o.end_date &&
211
+ status == o.status &&
212
+ total_hours == o.total_hours &&
213
+ updated_date_utc == o.updated_date_utc &&
214
+ timesheet_lines == o.timesheet_lines
215
+ end
216
+
217
+ # @see the `==` method
218
+ # @param [Object] Object to be compared
219
+ def eql?(o)
220
+ self == o
221
+ end
222
+
223
+ # Calculates hash code according to all attributes.
224
+ # @return [Integer] Hash code
225
+ def hash
226
+ [timesheet_id, payroll_calendar_id, employee_id, start_date, end_date, status, total_hours, updated_date_utc, timesheet_lines].hash
227
+ end
228
+
229
+ # Builds the object from hash
230
+ # @param [Hash] attributes Model attributes in the form of hash
231
+ # @return [Object] Returns the model itself
232
+ def self.build_from_hash(attributes)
233
+ new.build_from_hash(attributes)
234
+ end
235
+
236
+ # Builds the object from hash
237
+ # @param [Hash] attributes Model attributes in the form of hash
238
+ # @return [Object] Returns the model itself
239
+ def build_from_hash(attributes)
240
+ return nil unless attributes.is_a?(Hash)
241
+ self.class.openapi_types.each_pair do |key, type|
242
+ if type =~ /\AArray<(.*)>/i
243
+ # check to ensure the input is an array given that the attribute
244
+ # is documented as an array but the input is not
245
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
246
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
247
+ end
248
+ elsif !attributes[self.class.attribute_map[key]].nil?
249
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
250
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
251
+ end
252
+
253
+ self
254
+ end
255
+
256
+ # Deserializes the data based on type
257
+ # @param string type Data type
258
+ # @param string value Value to be deserialized
259
+ # @return [Object] Deserialized data
260
+ def _deserialize(type, value)
261
+ case type.to_sym
262
+ when :DateTime
263
+ DateTime.parse(parse_date(value))
264
+ when :Date
265
+ Date.parse(parse_date(value))
266
+ when :String
267
+ value.to_s
268
+ when :Integer
269
+ value.to_i
270
+ when :Float
271
+ value.to_f
272
+ when :BigDecimal
273
+ BigDecimal(value.to_s)
274
+ when :Boolean
275
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
276
+ true
277
+ else
278
+ false
279
+ end
280
+ when :Object
281
+ # generic object (usually a Hash), return directly
282
+ value
283
+ when /\AArray<(?<inner_type>.+)>\z/
284
+ inner_type = Regexp.last_match[:inner_type]
285
+ value.map { |v| _deserialize(inner_type, v) }
286
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
287
+ k_type = Regexp.last_match[:k_type]
288
+ v_type = Regexp.last_match[:v_type]
289
+ {}.tap do |hash|
290
+ value.each do |k, v|
291
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
292
+ end
293
+ end
294
+ else # model
295
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
296
+ end
297
+ end
298
+
299
+ # Returns the string representation of the object
300
+ # @return [String] String presentation of the object
301
+ def to_s
302
+ to_hash.to_s
303
+ end
304
+
305
+ # to_body is an alias to to_hash (backward compatibility)
306
+ # @return [Hash] Returns the object in the form of hash
307
+ def to_body
308
+ to_hash
309
+ end
310
+
311
+ # Returns the object in the form of hash
312
+ # @return [Hash] Returns the object in the form of hash
313
+ def to_hash
314
+ hash = {}
315
+ self.class.attribute_map.each_pair do |attr, param|
316
+ value = self.send(attr)
317
+ next if value.nil?
318
+ hash[param] = _to_hash(value)
319
+ end
320
+ hash
321
+ end
322
+
323
+ # Outputs non-array value in the form of hash
324
+ # For object, use to_hash. Otherwise, just return the value
325
+ # @param [Object] value Any valid value
326
+ # @return [Hash] Returns the value in the form of hash
327
+ def _to_hash(value)
328
+ if value.is_a?(Array)
329
+ value.compact.map { |v| _to_hash(v) }
330
+ elsif value.is_a?(Hash)
331
+ {}.tap do |hash|
332
+ value.each { |k, v| hash[k] = _to_hash(v) }
333
+ end
334
+ elsif value.respond_to? :to_hash
335
+ value.to_hash
336
+ else
337
+ value
338
+ end
339
+ end
340
+
341
+ # customized data_parser
342
+ def parse_date(datestring)
343
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
344
+ return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
345
+ end
346
+ end
347
+ end