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,389 @@
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 PayRun
20
+ # Xero unique identifier for the pay run
21
+ attr_accessor :pay_run_id
22
+
23
+ # Xero unique identifier for the payroll calendar
24
+ attr_accessor :payroll_calendar_id
25
+
26
+ # Period start date of the payroll calendar
27
+ attr_accessor :period_start_date
28
+
29
+ # Period end date of the payroll calendar
30
+ attr_accessor :period_end_date
31
+
32
+ # Payment date of the pay run
33
+ attr_accessor :payment_date
34
+
35
+ # Total cost of the pay run
36
+ attr_accessor :total_cost
37
+
38
+ # Total pay of the pay run
39
+ attr_accessor :total_pay
40
+
41
+ # Pay run status
42
+ attr_accessor :pay_run_status
43
+ DRAFT = "Draft".freeze
44
+ POSTED = "Posted".freeze
45
+
46
+ # Pay run type
47
+ attr_accessor :pay_run_type
48
+ SCHEDULED = "Scheduled".freeze
49
+ UNSCHEDULED = "Unscheduled".freeze
50
+ EARLIER_YEAR_UPDATE = "EarlierYearUpdate".freeze
51
+
52
+ # Calendar type of the pay run
53
+ attr_accessor :calendar_type
54
+ WEEKLY = "Weekly".freeze
55
+ FORTNIGHTLY = "Fortnightly".freeze
56
+ FOUR_WEEKLY = "FourWeekly".freeze
57
+ MONTHLY = "Monthly".freeze
58
+ ANNUAL = "Annual".freeze
59
+ QUARTERLY = "Quarterly".freeze
60
+
61
+ # Posted date time of the pay run
62
+ attr_accessor :posted_date_time
63
+
64
+
65
+ attr_accessor :pay_slips
66
+
67
+ class EnumAttributeValidator
68
+ attr_reader :datatype
69
+ attr_reader :allowable_values
70
+
71
+ def initialize(datatype, allowable_values)
72
+ @allowable_values = allowable_values.map do |value|
73
+ case datatype.to_s
74
+ when /Integer/i
75
+ value.to_i
76
+ when /Float/i
77
+ value.to_f
78
+ else
79
+ value
80
+ end
81
+ end
82
+ end
83
+
84
+ def valid?(value)
85
+ !value || allowable_values.include?(value)
86
+ end
87
+ end
88
+
89
+ # Attribute mapping from ruby-style variable name to JSON key.
90
+ def self.attribute_map
91
+ {
92
+ :'pay_run_id' => :'payRunID',
93
+ :'payroll_calendar_id' => :'payrollCalendarID',
94
+ :'period_start_date' => :'periodStartDate',
95
+ :'period_end_date' => :'periodEndDate',
96
+ :'payment_date' => :'paymentDate',
97
+ :'total_cost' => :'totalCost',
98
+ :'total_pay' => :'totalPay',
99
+ :'pay_run_status' => :'payRunStatus',
100
+ :'pay_run_type' => :'payRunType',
101
+ :'calendar_type' => :'calendarType',
102
+ :'posted_date_time' => :'postedDateTime',
103
+ :'pay_slips' => :'paySlips'
104
+ }
105
+ end
106
+
107
+ # Attribute type mapping.
108
+ def self.openapi_types
109
+ {
110
+ :'pay_run_id' => :'String',
111
+ :'payroll_calendar_id' => :'String',
112
+ :'period_start_date' => :'Date',
113
+ :'period_end_date' => :'Date',
114
+ :'payment_date' => :'Date',
115
+ :'total_cost' => :'Float',
116
+ :'total_pay' => :'Float',
117
+ :'pay_run_status' => :'String',
118
+ :'pay_run_type' => :'String',
119
+ :'calendar_type' => :'String',
120
+ :'posted_date_time' => :'Date',
121
+ :'pay_slips' => :'Array<Payslip>'
122
+ }
123
+ end
124
+
125
+ # Initializes the object
126
+ # @param [Hash] attributes Model attributes in the form of hash
127
+ def initialize(attributes = {})
128
+ if (!attributes.is_a?(Hash))
129
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::PayRun` initialize method"
130
+ end
131
+
132
+ # check to see if the attribute exists and convert string to symbol for hash key
133
+ attributes = attributes.each_with_object({}) { |(k, v), h|
134
+ if (!self.class.attribute_map.key?(k.to_sym))
135
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::PayRun`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
136
+ end
137
+ h[k.to_sym] = v
138
+ }
139
+
140
+ if attributes.key?(:'pay_run_id')
141
+ self.pay_run_id = attributes[:'pay_run_id']
142
+ end
143
+
144
+ if attributes.key?(:'payroll_calendar_id')
145
+ self.payroll_calendar_id = attributes[:'payroll_calendar_id']
146
+ end
147
+
148
+ if attributes.key?(:'period_start_date')
149
+ self.period_start_date = attributes[:'period_start_date']
150
+ end
151
+
152
+ if attributes.key?(:'period_end_date')
153
+ self.period_end_date = attributes[:'period_end_date']
154
+ end
155
+
156
+ if attributes.key?(:'payment_date')
157
+ self.payment_date = attributes[:'payment_date']
158
+ end
159
+
160
+ if attributes.key?(:'total_cost')
161
+ self.total_cost = attributes[:'total_cost']
162
+ end
163
+
164
+ if attributes.key?(:'total_pay')
165
+ self.total_pay = attributes[:'total_pay']
166
+ end
167
+
168
+ if attributes.key?(:'pay_run_status')
169
+ self.pay_run_status = attributes[:'pay_run_status']
170
+ end
171
+
172
+ if attributes.key?(:'pay_run_type')
173
+ self.pay_run_type = attributes[:'pay_run_type']
174
+ end
175
+
176
+ if attributes.key?(:'calendar_type')
177
+ self.calendar_type = attributes[:'calendar_type']
178
+ end
179
+
180
+ if attributes.key?(:'posted_date_time')
181
+ self.posted_date_time = attributes[:'posted_date_time']
182
+ end
183
+
184
+ if attributes.key?(:'pay_slips')
185
+ if (value = attributes[:'pay_slips']).is_a?(Array)
186
+ self.pay_slips = value
187
+ end
188
+ end
189
+ end
190
+
191
+ # Show invalid properties with the reasons. Usually used together with valid?
192
+ # @return Array for valid properties with the reasons
193
+ def list_invalid_properties
194
+ invalid_properties = Array.new
195
+ invalid_properties
196
+ end
197
+
198
+ # Check to see if the all the properties in the model are valid
199
+ # @return true if the model is valid
200
+ def valid?
201
+ pay_run_status_validator = EnumAttributeValidator.new('String', ["Draft", "Posted"])
202
+ return false unless pay_run_status_validator.valid?(@pay_run_status)
203
+ pay_run_type_validator = EnumAttributeValidator.new('String', ["Scheduled", "Unscheduled", "EarlierYearUpdate"])
204
+ return false unless pay_run_type_validator.valid?(@pay_run_type)
205
+ calendar_type_validator = EnumAttributeValidator.new('String', ["Weekly", "Fortnightly", "FourWeekly", "Monthly", "Annual", "Quarterly"])
206
+ return false unless calendar_type_validator.valid?(@calendar_type)
207
+ true
208
+ end
209
+
210
+ # Custom attribute writer method checking allowed values (enum).
211
+ # @param [Object] pay_run_status Object to be assigned
212
+ def pay_run_status=(pay_run_status)
213
+ validator = EnumAttributeValidator.new('String', ["Draft", "Posted"])
214
+ unless validator.valid?(pay_run_status)
215
+ fail ArgumentError, "invalid value for \"pay_run_status\", must be one of #{validator.allowable_values}."
216
+ end
217
+ @pay_run_status = pay_run_status
218
+ end
219
+
220
+ # Custom attribute writer method checking allowed values (enum).
221
+ # @param [Object] pay_run_type Object to be assigned
222
+ def pay_run_type=(pay_run_type)
223
+ validator = EnumAttributeValidator.new('String', ["Scheduled", "Unscheduled", "EarlierYearUpdate"])
224
+ unless validator.valid?(pay_run_type)
225
+ fail ArgumentError, "invalid value for \"pay_run_type\", must be one of #{validator.allowable_values}."
226
+ end
227
+ @pay_run_type = pay_run_type
228
+ end
229
+
230
+ # Custom attribute writer method checking allowed values (enum).
231
+ # @param [Object] calendar_type Object to be assigned
232
+ def calendar_type=(calendar_type)
233
+ validator = EnumAttributeValidator.new('String', ["Weekly", "Fortnightly", "FourWeekly", "Monthly", "Annual", "Quarterly"])
234
+ unless validator.valid?(calendar_type)
235
+ fail ArgumentError, "invalid value for \"calendar_type\", must be one of #{validator.allowable_values}."
236
+ end
237
+ @calendar_type = calendar_type
238
+ end
239
+
240
+ # Checks equality by comparing each attribute.
241
+ # @param [Object] Object to be compared
242
+ def ==(o)
243
+ return true if self.equal?(o)
244
+ self.class == o.class &&
245
+ pay_run_id == o.pay_run_id &&
246
+ payroll_calendar_id == o.payroll_calendar_id &&
247
+ period_start_date == o.period_start_date &&
248
+ period_end_date == o.period_end_date &&
249
+ payment_date == o.payment_date &&
250
+ total_cost == o.total_cost &&
251
+ total_pay == o.total_pay &&
252
+ pay_run_status == o.pay_run_status &&
253
+ pay_run_type == o.pay_run_type &&
254
+ calendar_type == o.calendar_type &&
255
+ posted_date_time == o.posted_date_time &&
256
+ pay_slips == o.pay_slips
257
+ end
258
+
259
+ # @see the `==` method
260
+ # @param [Object] Object to be compared
261
+ def eql?(o)
262
+ self == o
263
+ end
264
+
265
+ # Calculates hash code according to all attributes.
266
+ # @return [Integer] Hash code
267
+ def hash
268
+ [pay_run_id, payroll_calendar_id, period_start_date, period_end_date, payment_date, total_cost, total_pay, pay_run_status, pay_run_type, calendar_type, posted_date_time, pay_slips].hash
269
+ end
270
+
271
+ # Builds the object from hash
272
+ # @param [Hash] attributes Model attributes in the form of hash
273
+ # @return [Object] Returns the model itself
274
+ def self.build_from_hash(attributes)
275
+ new.build_from_hash(attributes)
276
+ end
277
+
278
+ # Builds the object from hash
279
+ # @param [Hash] attributes Model attributes in the form of hash
280
+ # @return [Object] Returns the model itself
281
+ def build_from_hash(attributes)
282
+ return nil unless attributes.is_a?(Hash)
283
+ self.class.openapi_types.each_pair do |key, type|
284
+ if type =~ /\AArray<(.*)>/i
285
+ # check to ensure the input is an array given that the attribute
286
+ # is documented as an array but the input is not
287
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
288
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
289
+ end
290
+ elsif !attributes[self.class.attribute_map[key]].nil?
291
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
292
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
293
+ end
294
+
295
+ self
296
+ end
297
+
298
+ # Deserializes the data based on type
299
+ # @param string type Data type
300
+ # @param string value Value to be deserialized
301
+ # @return [Object] Deserialized data
302
+ def _deserialize(type, value)
303
+ case type.to_sym
304
+ when :DateTime
305
+ DateTime.parse(parse_date(value))
306
+ when :Date
307
+ Date.parse(parse_date(value))
308
+ when :String
309
+ value.to_s
310
+ when :Integer
311
+ value.to_i
312
+ when :Float
313
+ value.to_f
314
+ when :BigDecimal
315
+ BigDecimal(value.to_s)
316
+ when :Boolean
317
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
318
+ true
319
+ else
320
+ false
321
+ end
322
+ when :Object
323
+ # generic object (usually a Hash), return directly
324
+ value
325
+ when /\AArray<(?<inner_type>.+)>\z/
326
+ inner_type = Regexp.last_match[:inner_type]
327
+ value.map { |v| _deserialize(inner_type, v) }
328
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
329
+ k_type = Regexp.last_match[:k_type]
330
+ v_type = Regexp.last_match[:v_type]
331
+ {}.tap do |hash|
332
+ value.each do |k, v|
333
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
334
+ end
335
+ end
336
+ else # model
337
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
338
+ end
339
+ end
340
+
341
+ # Returns the string representation of the object
342
+ # @return [String] String presentation of the object
343
+ def to_s
344
+ to_hash.to_s
345
+ end
346
+
347
+ # to_body is an alias to to_hash (backward compatibility)
348
+ # @return [Hash] Returns the object in the form of hash
349
+ def to_body
350
+ to_hash
351
+ end
352
+
353
+ # Returns the object in the form of hash
354
+ # @return [Hash] Returns the object in the form of hash
355
+ def to_hash
356
+ hash = {}
357
+ self.class.attribute_map.each_pair do |attr, param|
358
+ value = self.send(attr)
359
+ next if value.nil?
360
+ hash[param] = _to_hash(value)
361
+ end
362
+ hash
363
+ end
364
+
365
+ # Outputs non-array value in the form of hash
366
+ # For object, use to_hash. Otherwise, just return the value
367
+ # @param [Object] value Any valid value
368
+ # @return [Hash] Returns the value in the form of hash
369
+ def _to_hash(value)
370
+ if value.is_a?(Array)
371
+ value.compact.map { |v| _to_hash(v) }
372
+ elsif value.is_a?(Hash)
373
+ {}.tap do |hash|
374
+ value.each { |k, v| hash[k] = _to_hash(v) }
375
+ end
376
+ elsif value.respond_to? :to_hash
377
+ value.to_hash
378
+ else
379
+ value
380
+ end
381
+ end
382
+
383
+ # customized data_parser
384
+ def parse_date(datestring)
385
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
386
+ return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
387
+ end
388
+ end
389
+ end
@@ -0,0 +1,328 @@
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 PayRunCalendar
20
+ # Xero unique identifier for the payroll calendar
21
+ attr_accessor :payroll_calendar_id
22
+
23
+ # Name of the calendar
24
+ attr_accessor :name
25
+
26
+ # Type of the calendar
27
+ attr_accessor :calendar_type
28
+ WEEKLY = "Weekly".freeze
29
+ FORTNIGHTLY = "Fortnightly".freeze
30
+ FOUR_WEEKLY = "FourWeekly".freeze
31
+ MONTHLY = "Monthly".freeze
32
+ ANNUAL = "Annual".freeze
33
+ QUARTERLY = "Quarterly".freeze
34
+
35
+ # Period start date of the calendar
36
+ attr_accessor :period_start_date
37
+
38
+ # Period end date of the calendar
39
+ attr_accessor :period_end_date
40
+
41
+ # Payment date of the calendar
42
+ attr_accessor :payment_date
43
+
44
+ # UTC timestamp of the last update to the pay run calendar
45
+ attr_accessor :updated_date_utc
46
+
47
+ class EnumAttributeValidator
48
+ attr_reader :datatype
49
+ attr_reader :allowable_values
50
+
51
+ def initialize(datatype, allowable_values)
52
+ @allowable_values = allowable_values.map do |value|
53
+ case datatype.to_s
54
+ when /Integer/i
55
+ value.to_i
56
+ when /Float/i
57
+ value.to_f
58
+ else
59
+ value
60
+ end
61
+ end
62
+ end
63
+
64
+ def valid?(value)
65
+ !value || allowable_values.include?(value)
66
+ end
67
+ end
68
+
69
+ # Attribute mapping from ruby-style variable name to JSON key.
70
+ def self.attribute_map
71
+ {
72
+ :'payroll_calendar_id' => :'payrollCalendarID',
73
+ :'name' => :'name',
74
+ :'calendar_type' => :'calendarType',
75
+ :'period_start_date' => :'periodStartDate',
76
+ :'period_end_date' => :'periodEndDate',
77
+ :'payment_date' => :'paymentDate',
78
+ :'updated_date_utc' => :'updatedDateUTC'
79
+ }
80
+ end
81
+
82
+ # Attribute type mapping.
83
+ def self.openapi_types
84
+ {
85
+ :'payroll_calendar_id' => :'String',
86
+ :'name' => :'String',
87
+ :'calendar_type' => :'String',
88
+ :'period_start_date' => :'Date',
89
+ :'period_end_date' => :'Date',
90
+ :'payment_date' => :'Date',
91
+ :'updated_date_utc' => :'DateTime'
92
+ }
93
+ end
94
+
95
+ # Initializes the object
96
+ # @param [Hash] attributes Model attributes in the form of hash
97
+ def initialize(attributes = {})
98
+ if (!attributes.is_a?(Hash))
99
+ fail ArgumentError, "The input argument (attributes) must be a hash in `XeroRuby::PayrollUk::PayRunCalendar` initialize method"
100
+ end
101
+
102
+ # check to see if the attribute exists and convert string to symbol for hash key
103
+ attributes = attributes.each_with_object({}) { |(k, v), h|
104
+ if (!self.class.attribute_map.key?(k.to_sym))
105
+ fail ArgumentError, "`#{k}` is not a valid attribute in `XeroRuby::PayrollUk::PayRunCalendar`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
106
+ end
107
+ h[k.to_sym] = v
108
+ }
109
+
110
+ if attributes.key?(:'payroll_calendar_id')
111
+ self.payroll_calendar_id = attributes[:'payroll_calendar_id']
112
+ end
113
+
114
+ if attributes.key?(:'name')
115
+ self.name = attributes[:'name']
116
+ end
117
+
118
+ if attributes.key?(:'calendar_type')
119
+ self.calendar_type = attributes[:'calendar_type']
120
+ end
121
+
122
+ if attributes.key?(:'period_start_date')
123
+ self.period_start_date = attributes[:'period_start_date']
124
+ end
125
+
126
+ if attributes.key?(:'period_end_date')
127
+ self.period_end_date = attributes[:'period_end_date']
128
+ end
129
+
130
+ if attributes.key?(:'payment_date')
131
+ self.payment_date = attributes[:'payment_date']
132
+ end
133
+
134
+ if attributes.key?(:'updated_date_utc')
135
+ self.updated_date_utc = attributes[:'updated_date_utc']
136
+ end
137
+ end
138
+
139
+ # Show invalid properties with the reasons. Usually used together with valid?
140
+ # @return Array for valid properties with the reasons
141
+ def list_invalid_properties
142
+ invalid_properties = Array.new
143
+ if @name.nil?
144
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
145
+ end
146
+
147
+ if @calendar_type.nil?
148
+ invalid_properties.push('invalid value for "calendar_type", calendar_type cannot be nil.')
149
+ end
150
+
151
+ if @period_start_date.nil?
152
+ invalid_properties.push('invalid value for "period_start_date", period_start_date cannot be nil.')
153
+ end
154
+
155
+ if @payment_date.nil?
156
+ invalid_properties.push('invalid value for "payment_date", payment_date cannot be nil.')
157
+ end
158
+
159
+ invalid_properties
160
+ end
161
+
162
+ # Check to see if the all the properties in the model are valid
163
+ # @return true if the model is valid
164
+ def valid?
165
+ return false if @name.nil?
166
+ return false if @calendar_type.nil?
167
+ calendar_type_validator = EnumAttributeValidator.new('String', ["Weekly", "Fortnightly", "FourWeekly", "Monthly", "Annual", "Quarterly"])
168
+ return false unless calendar_type_validator.valid?(@calendar_type)
169
+ return false if @period_start_date.nil?
170
+ return false if @payment_date.nil?
171
+ true
172
+ end
173
+
174
+ # Custom attribute writer method checking allowed values (enum).
175
+ # @param [Object] calendar_type Object to be assigned
176
+ def calendar_type=(calendar_type)
177
+ validator = EnumAttributeValidator.new('String', ["Weekly", "Fortnightly", "FourWeekly", "Monthly", "Annual", "Quarterly"])
178
+ unless validator.valid?(calendar_type)
179
+ fail ArgumentError, "invalid value for \"calendar_type\", must be one of #{validator.allowable_values}."
180
+ end
181
+ @calendar_type = calendar_type
182
+ end
183
+
184
+ # Checks equality by comparing each attribute.
185
+ # @param [Object] Object to be compared
186
+ def ==(o)
187
+ return true if self.equal?(o)
188
+ self.class == o.class &&
189
+ payroll_calendar_id == o.payroll_calendar_id &&
190
+ name == o.name &&
191
+ calendar_type == o.calendar_type &&
192
+ period_start_date == o.period_start_date &&
193
+ period_end_date == o.period_end_date &&
194
+ payment_date == o.payment_date &&
195
+ updated_date_utc == o.updated_date_utc
196
+ end
197
+
198
+ # @see the `==` method
199
+ # @param [Object] Object to be compared
200
+ def eql?(o)
201
+ self == o
202
+ end
203
+
204
+ # Calculates hash code according to all attributes.
205
+ # @return [Integer] Hash code
206
+ def hash
207
+ [payroll_calendar_id, name, calendar_type, period_start_date, period_end_date, payment_date, updated_date_utc].hash
208
+ end
209
+
210
+ # Builds the object from hash
211
+ # @param [Hash] attributes Model attributes in the form of hash
212
+ # @return [Object] Returns the model itself
213
+ def self.build_from_hash(attributes)
214
+ new.build_from_hash(attributes)
215
+ end
216
+
217
+ # Builds the object from hash
218
+ # @param [Hash] attributes Model attributes in the form of hash
219
+ # @return [Object] Returns the model itself
220
+ def build_from_hash(attributes)
221
+ return nil unless attributes.is_a?(Hash)
222
+ self.class.openapi_types.each_pair do |key, type|
223
+ if type =~ /\AArray<(.*)>/i
224
+ # check to ensure the input is an array given that the attribute
225
+ # is documented as an array but the input is not
226
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
227
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
228
+ end
229
+ elsif !attributes[self.class.attribute_map[key]].nil?
230
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
231
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
232
+ end
233
+
234
+ self
235
+ end
236
+
237
+ # Deserializes the data based on type
238
+ # @param string type Data type
239
+ # @param string value Value to be deserialized
240
+ # @return [Object] Deserialized data
241
+ def _deserialize(type, value)
242
+ case type.to_sym
243
+ when :DateTime
244
+ DateTime.parse(parse_date(value))
245
+ when :Date
246
+ Date.parse(parse_date(value))
247
+ when :String
248
+ value.to_s
249
+ when :Integer
250
+ value.to_i
251
+ when :Float
252
+ value.to_f
253
+ when :BigDecimal
254
+ BigDecimal(value.to_s)
255
+ when :Boolean
256
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
257
+ true
258
+ else
259
+ false
260
+ end
261
+ when :Object
262
+ # generic object (usually a Hash), return directly
263
+ value
264
+ when /\AArray<(?<inner_type>.+)>\z/
265
+ inner_type = Regexp.last_match[:inner_type]
266
+ value.map { |v| _deserialize(inner_type, v) }
267
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
268
+ k_type = Regexp.last_match[:k_type]
269
+ v_type = Regexp.last_match[:v_type]
270
+ {}.tap do |hash|
271
+ value.each do |k, v|
272
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
273
+ end
274
+ end
275
+ else # model
276
+ XeroRuby::PayrollUk.const_get(type).build_from_hash(value)
277
+ end
278
+ end
279
+
280
+ # Returns the string representation of the object
281
+ # @return [String] String presentation of the object
282
+ def to_s
283
+ to_hash.to_s
284
+ end
285
+
286
+ # to_body is an alias to to_hash (backward compatibility)
287
+ # @return [Hash] Returns the object in the form of hash
288
+ def to_body
289
+ to_hash
290
+ end
291
+
292
+ # Returns the object in the form of hash
293
+ # @return [Hash] Returns the object in the form of hash
294
+ def to_hash
295
+ hash = {}
296
+ self.class.attribute_map.each_pair do |attr, param|
297
+ value = self.send(attr)
298
+ next if value.nil?
299
+ hash[param] = _to_hash(value)
300
+ end
301
+ hash
302
+ end
303
+
304
+ # Outputs non-array value in the form of hash
305
+ # For object, use to_hash. Otherwise, just return the value
306
+ # @param [Object] value Any valid value
307
+ # @return [Hash] Returns the value in the form of hash
308
+ def _to_hash(value)
309
+ if value.is_a?(Array)
310
+ value.compact.map { |v| _to_hash(v) }
311
+ elsif value.is_a?(Hash)
312
+ {}.tap do |hash|
313
+ value.each { |k, v| hash[k] = _to_hash(v) }
314
+ end
315
+ elsif value.respond_to? :to_hash
316
+ value.to_hash
317
+ else
318
+ value
319
+ end
320
+ end
321
+
322
+ # customized data_parser
323
+ def parse_date(datestring)
324
+ seconds_since_epoch = datestring.scan(/[0-9]+/)[0].to_i / 1000.0
325
+ return Time.at(seconds_since_epoch).strftime('%Y-%m-%dT%l:%M:%S%z').to_s
326
+ end
327
+ end
328
+ end