taxtank-core 0.0.2 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (794) hide show
  1. package/bundles/taxtank-core.umd.js +11955 -31
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/abstract.collection.js +67 -0
  4. package/esm2015/lib/collections/bank-account.collection.js +135 -0
  5. package/esm2015/lib/collections/bank-transaction.collection.js +119 -0
  6. package/esm2015/lib/collections/client-movement.collection.js +31 -0
  7. package/esm2015/lib/collections/client-portfolio-report.collection.js +40 -0
  8. package/esm2015/lib/collections/client.collection.js +4 -0
  9. package/esm2015/lib/collections/collection-dictionary.js +83 -0
  10. package/esm2015/lib/collections/depreciation-forecast.collection.js +19 -0
  11. package/esm2015/lib/collections/depreciation.collection.js +67 -0
  12. package/esm2015/lib/collections/employee.collection.js +12 -0
  13. package/esm2015/lib/collections/income-source.collection.js +38 -0
  14. package/esm2015/lib/collections/loan.collection.js +18 -0
  15. package/esm2015/lib/collections/logbook.collection.js +97 -0
  16. package/esm2015/lib/collections/message-document.collection.js +13 -0
  17. package/esm2015/lib/collections/message.collection.js +21 -0
  18. package/esm2015/lib/collections/property.collection.js +65 -0
  19. package/esm2015/lib/collections/service-price.collection.js +10 -0
  20. package/esm2015/lib/collections/service-subscription.collection.js +17 -0
  21. package/esm2015/lib/collections/tax-return-category-item.collection.js +141 -0
  22. package/esm2015/lib/collections/tax-review.collection.js +55 -0
  23. package/esm2015/lib/collections/transaction-allocation.collection.js +40 -0
  24. package/esm2015/lib/collections/transaction.collection.js +120 -0
  25. package/esm2015/lib/collections/user-event-setting.collection.js +62 -0
  26. package/esm2015/lib/db/Enums/address-type.enum.js +6 -0
  27. package/esm2015/lib/db/Enums/bank-account-status.enum.js +6 -0
  28. package/esm2015/lib/db/Enums/bank-account-type.enum.js +12 -0
  29. package/esm2015/lib/db/Enums/bank-connection-status.enum.js +7 -0
  30. package/esm2015/lib/db/Enums/bank-transaction-type.enum.js +6 -0
  31. package/esm2015/lib/db/Enums/chart-accounts-category.enum.js +15 -0
  32. package/esm2015/lib/db/Enums/chart-accounts-etp.enum.js +9 -0
  33. package/esm2015/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.js +8 -0
  34. package/esm2015/lib/db/Enums/chart-accounts-heading-taxable.enum.js +8 -0
  35. package/esm2015/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.js +6 -0
  36. package/esm2015/lib/db/Enums/chart-accounts-list.enum.js +21 -0
  37. package/esm2015/lib/db/Enums/chart-accounts-metadata-list.enum.js +16 -0
  38. package/esm2015/lib/db/Enums/chart-accounts-metadata-type.enum.js +6 -0
  39. package/esm2015/lib/db/Enums/chart-accounts-type.enum.js +6 -0
  40. package/esm2015/lib/db/Enums/chat-status.enum.js +6 -0
  41. package/esm2015/lib/db/Enums/client-details-medicare-exemption.enum.js +7 -0
  42. package/esm2015/lib/db/Enums/client-details-work-depreciation-calculation.enum.js +6 -0
  43. package/esm2015/lib/db/Enums/client-details-working-holiday-maker.enum.js +7 -0
  44. package/esm2015/lib/db/Enums/client-invite-status.enum.js +6 -0
  45. package/esm2015/lib/db/Enums/client-invite-type.enum.js +6 -0
  46. package/esm2015/lib/db/Enums/depreciation-calculation-percent.enum.js +9 -0
  47. package/esm2015/lib/db/Enums/depreciation-calculation.enum.js +9 -0
  48. package/esm2015/lib/db/Enums/depreciation-type.enum.js +8 -0
  49. package/esm2015/lib/db/Enums/depreciation-write-off-amount.enum.js +6 -0
  50. package/esm2015/lib/db/Enums/firm-type.enum.js +6 -0
  51. package/esm2015/lib/db/Enums/income-source-type-list-other.enum.js +8 -0
  52. package/esm2015/lib/db/Enums/income-source-type-list-salary.enum.js +5 -0
  53. package/esm2015/lib/db/Enums/income-source-type-list-work.enum.js +10 -0
  54. package/esm2015/lib/db/Enums/income-source-type.enum.js +7 -0
  55. package/esm2015/lib/db/Enums/invite-status.enum.js +7 -0
  56. package/esm2015/lib/db/Enums/loan-bank-type.enum.js +12 -0
  57. package/esm2015/lib/db/Enums/loan-frequency.enum.js +8 -0
  58. package/esm2015/lib/db/Enums/loan-interest-type.enum.js +6 -0
  59. package/esm2015/lib/db/Enums/loan-payout-type.enum.js +6 -0
  60. package/esm2015/lib/db/Enums/loan-repayment-frequency.enum.js +7 -0
  61. package/esm2015/lib/db/Enums/loan-repayment-type.enum.js +6 -0
  62. package/esm2015/lib/db/Enums/loan-type.enum.js +14 -0
  63. package/esm2015/lib/db/Enums/loan-vehicle-type.enum.js +7 -0
  64. package/esm2015/lib/db/Enums/phone-type.enum.js +6 -0
  65. package/esm2015/lib/db/Enums/property-depreciation-calculation.enum.js +6 -0
  66. package/esm2015/lib/db/Enums/property-owner-access.enum.js +6 -0
  67. package/esm2015/lib/db/Enums/property-owner-status.enum.js +7 -0
  68. package/esm2015/lib/db/Enums/registration-invite-status.enum.js +6 -0
  69. package/esm2015/lib/db/Enums/salary-forecast-frequency.enum.js +8 -0
  70. package/esm2015/lib/db/Enums/service-notification-status.enum.js +7 -0
  71. package/esm2015/lib/db/Enums/service-notification-type.enum.js +6 -0
  72. package/esm2015/lib/db/Enums/service-payment-status.enum.js +6 -0
  73. package/esm2015/lib/db/Enums/service-price-recurring-interval.enum.js +8 -0
  74. package/esm2015/lib/db/Enums/service-price-type.enum.js +6 -0
  75. package/esm2015/lib/db/Enums/service-subscription-status.enum.js +10 -0
  76. package/esm2015/lib/db/Enums/spare-document-spare-type.enum.js +6 -0
  77. package/esm2015/lib/db/Enums/tank-type.enum.js +7 -0
  78. package/esm2015/lib/db/Enums/tax-calculation-medicare-exemption.enum.js +6 -0
  79. package/esm2015/lib/db/Enums/tax-calculation-type.enum.js +14 -0
  80. package/esm2015/lib/db/Enums/tax-return-category-list.enum.js +28 -0
  81. package/esm2015/lib/db/Enums/tax-return-category-section.enum.js +8 -0
  82. package/esm2015/lib/db/Enums/tax-review-status.enum.js +13 -0
  83. package/esm2015/lib/db/Enums/tax-summary-list.enum.js +17 -0
  84. package/esm2015/lib/db/Enums/tax-summary-section.enum.js +8 -0
  85. package/esm2015/lib/db/Enums/tax-summary-tax-summary.enum.js +17 -0
  86. package/esm2015/lib/db/Enums/ticket-feedback.enum.js +6 -0
  87. package/esm2015/lib/db/Enums/ticket-status.enum.js +9 -0
  88. package/esm2015/lib/db/Enums/ticket-types.enum.js +5 -0
  89. package/esm2015/lib/db/Enums/transaction-operation.enum.js +7 -0
  90. package/esm2015/lib/db/Enums/transaction-source.enum.js +6 -0
  91. package/esm2015/lib/db/Enums/transaction-type.enum.js +6 -0
  92. package/esm2015/lib/db/Enums/user-event-status.enum.js +8 -0
  93. package/esm2015/lib/db/Enums/user-event-type-frequency.enum.js +8 -0
  94. package/esm2015/lib/db/Enums/user-event-type-reminder-type.enum.js +8 -0
  95. package/esm2015/lib/db/Enums/user-event-type-reminder.enum.js +7 -0
  96. package/esm2015/lib/db/Enums/user-event-type-type.enum.js +35 -0
  97. package/esm2015/lib/db/Enums/user-medicare-exemption.enum.js +7 -0
  98. package/esm2015/lib/db/Enums/user-roles.enum.js +15 -0
  99. package/esm2015/lib/db/Enums/user-status.enum.js +8 -0
  100. package/esm2015/lib/db/Enums/user-title.enum.js +9 -0
  101. package/esm2015/lib/db/Enums/user-work-depreciation-calculation.enum.js +6 -0
  102. package/esm2015/lib/db/Enums/user-working-holiday-maker.enum.js +7 -0
  103. package/esm2015/lib/db/Enums/vehicle-claim-method.enum.js +6 -0
  104. package/esm2015/lib/db/Enums/vehicle-logbook-purpose.enum.js +6 -0
  105. package/esm2015/lib/db/Models/address.js +3 -0
  106. package/esm2015/lib/db/Models/bank-account-balance.js +3 -0
  107. package/esm2015/lib/db/Models/bank-account-property.js +3 -0
  108. package/esm2015/lib/db/Models/bank-account.js +3 -0
  109. package/esm2015/lib/db/Models/bank-connection.js +3 -0
  110. package/esm2015/lib/db/Models/bank-transaction-import.js +3 -0
  111. package/esm2015/lib/db/Models/bank-transaction.js +3 -0
  112. package/esm2015/lib/db/Models/bank.js +3 -0
  113. package/esm2015/lib/db/Models/basiq-job.js +3 -0
  114. package/esm2015/lib/db/Models/borrowing-expense-loan.js +3 -0
  115. package/esm2015/lib/db/Models/borrowing-expense.js +3 -0
  116. package/esm2015/lib/db/Models/capital-cost-property.js +3 -0
  117. package/esm2015/lib/db/Models/capital-cost.js +3 -0
  118. package/esm2015/lib/db/Models/chart-accounts-depreciation.js +3 -0
  119. package/esm2015/lib/db/Models/chart-accounts-heading.js +3 -0
  120. package/esm2015/lib/db/Models/chart-accounts-metadata.js +3 -0
  121. package/esm2015/lib/db/Models/chart-accounts-value.js +3 -0
  122. package/esm2015/lib/db/Models/chart-accounts.js +3 -0
  123. package/esm2015/lib/db/Models/chat.js +3 -0
  124. package/esm2015/lib/db/Models/client-details.js +3 -0
  125. package/esm2015/lib/db/Models/client-invite.js +3 -0
  126. package/esm2015/lib/db/Models/client-movement.js +3 -0
  127. package/esm2015/lib/db/Models/country.js +3 -0
  128. package/esm2015/lib/db/Models/depreciation-capital-project.js +3 -0
  129. package/esm2015/lib/db/Models/depreciation-forecast.js +3 -0
  130. package/esm2015/lib/db/Models/depreciation-receipt.js +3 -0
  131. package/esm2015/lib/db/Models/depreciation.js +4 -0
  132. package/esm2015/lib/db/Models/document-folder.js +3 -0
  133. package/esm2015/lib/db/Models/document.js +3 -0
  134. package/esm2015/lib/db/Models/employee-details.js +3 -0
  135. package/esm2015/lib/db/Models/employee-invite.js +3 -0
  136. package/esm2015/lib/db/Models/financial-data-system.js +3 -0
  137. package/esm2015/lib/db/Models/firm.js +3 -0
  138. package/esm2015/lib/db/Models/income-source-forecast.js +3 -0
  139. package/esm2015/lib/db/Models/income-source-type.js +3 -0
  140. package/esm2015/lib/db/Models/income-source.js +3 -0
  141. package/esm2015/lib/db/Models/loan-payout.js +3 -0
  142. package/esm2015/lib/db/Models/loan.js +3 -0
  143. package/esm2015/lib/db/Models/message-document.js +3 -0
  144. package/esm2015/lib/db/Models/message.js +3 -0
  145. package/esm2015/lib/db/Models/occupation.js +3 -0
  146. package/esm2015/lib/db/Models/phone.js +3 -0
  147. package/esm2015/lib/db/Models/property-capital-cost.js +3 -0
  148. package/esm2015/lib/db/Models/property-category-movement.js +3 -0
  149. package/esm2015/lib/db/Models/property-category.js +3 -0
  150. package/esm2015/lib/db/Models/property-document.js +3 -0
  151. package/esm2015/lib/db/Models/property-forecast.js +3 -0
  152. package/esm2015/lib/db/Models/property-owner.js +3 -0
  153. package/esm2015/lib/db/Models/property-sold.js +3 -0
  154. package/esm2015/lib/db/Models/property-subscription.js +3 -0
  155. package/esm2015/lib/db/Models/property-valuation.js +3 -0
  156. package/esm2015/lib/db/Models/property.js +3 -0
  157. package/esm2015/lib/db/Models/registration-invite.js +3 -0
  158. package/esm2015/lib/db/Models/salary-forecast.js +3 -0
  159. package/esm2015/lib/db/Models/service-notification.js +3 -0
  160. package/esm2015/lib/db/Models/service-payment.js +3 -0
  161. package/esm2015/lib/db/Models/service-price.js +3 -0
  162. package/esm2015/lib/db/Models/service-product.js +3 -0
  163. package/esm2015/lib/db/Models/service-subscription-item.js +3 -0
  164. package/esm2015/lib/db/Models/service-subscription.js +3 -0
  165. package/esm2015/lib/db/Models/tax-return-category.js +3 -0
  166. package/esm2015/lib/db/Models/tax-return-item.js +3 -0
  167. package/esm2015/lib/db/Models/tax-return.js +3 -0
  168. package/esm2015/lib/db/Models/tax-review.js +3 -0
  169. package/esm2015/lib/db/Models/ticket.js +3 -0
  170. package/esm2015/lib/db/Models/transaction-allocation.js +3 -0
  171. package/esm2015/lib/db/Models/transaction-base.js +20 -0
  172. package/esm2015/lib/db/Models/transaction-metadata.js +3 -0
  173. package/esm2015/lib/db/Models/transaction-receipt.js +3 -0
  174. package/esm2015/lib/db/Models/transaction.js +4 -0
  175. package/esm2015/lib/db/Models/user-event-setting.js +3 -0
  176. package/esm2015/lib/db/Models/user-event-type.js +3 -0
  177. package/esm2015/lib/db/Models/user-event.js +3 -0
  178. package/esm2015/lib/db/Models/user.js +3 -0
  179. package/esm2015/lib/db/Models/vehicle-claim.js +3 -0
  180. package/esm2015/lib/db/Models/vehicle-logbook.js +3 -0
  181. package/esm2015/lib/db/Models/vehicle.js +3 -0
  182. package/esm2015/lib/functions/array/index.js +4 -0
  183. package/esm2015/lib/functions/array/replace.js +6 -0
  184. package/esm2015/lib/functions/array/sort-deep.js +22 -0
  185. package/esm2015/lib/functions/array/sort.js +13 -0
  186. package/esm2015/lib/functions/clone-deep.js +5 -0
  187. package/esm2015/lib/functions/create-date.js +8 -0
  188. package/esm2015/lib/functions/enum-to-list.js +13 -0
  189. package/esm2015/lib/functions/get-doc-icon.js +18 -0
  190. package/esm2015/lib/functions/mat-options-functions.js +10 -0
  191. package/esm2015/lib/functions/mat-sort-options.js +10 -0
  192. package/esm2015/lib/functions/round-to.js +10 -0
  193. package/esm2015/lib/functions/tax-review-filter-predicate.js +10 -0
  194. package/esm2015/lib/interfaces/asset-entity-type.enum.js +12 -0
  195. package/esm2015/lib/interfaces/asset-type.enum.js +11 -0
  196. package/esm2015/lib/interfaces/asset.interface.js +2 -0
  197. package/esm2015/lib/interfaces/chart-data.interface.js +2 -0
  198. package/esm2015/lib/interfaces/chart-serie.interface.js +2 -0
  199. package/esm2015/lib/interfaces/document.interface.js +2 -0
  200. package/esm2015/lib/interfaces/documentable.interface.js +2 -0
  201. package/esm2015/lib/interfaces/event-listener.interface.js +2 -0
  202. package/esm2015/lib/interfaces/income-source-forecast.interface.js +2 -0
  203. package/esm2015/lib/interfaces/option.interface.js +2 -0
  204. package/esm2015/lib/interfaces/photoable.js +2 -0
  205. package/esm2015/lib/interfaces/receipt.interface.js +2 -0
  206. package/esm2015/lib/interfaces/salary-forecast.interface.js +2 -0
  207. package/esm2015/lib/interfaces/tank.interface.js +2 -0
  208. package/esm2015/lib/models/address/address.js +24 -0
  209. package/esm2015/lib/models/address/country.js +16 -0
  210. package/esm2015/lib/models/bank/bank-account-chart-data.js +34 -0
  211. package/esm2015/lib/models/bank/bank-account-property.js +10 -0
  212. package/esm2015/lib/models/bank/bank-account-types.const.js +15 -0
  213. package/esm2015/lib/models/bank/bank-account.js +122 -0
  214. package/esm2015/lib/models/bank/bank-connection.js +14 -0
  215. package/esm2015/lib/models/bank/bank-transaction-chart-data.js +106 -0
  216. package/esm2015/lib/models/bank/bank-transaction-summary-fields.enum.js +6 -0
  217. package/esm2015/lib/models/bank/bank-transaction.js +67 -0
  218. package/esm2015/lib/models/bank/bank.js +23 -0
  219. package/esm2015/lib/models/bank/basiq-job.js +4 -0
  220. package/esm2015/lib/models/bank/basiq-token.js +13 -0
  221. package/esm2015/lib/models/bank/type-loan.const.js +7 -0
  222. package/esm2015/lib/models/borrowing-expense/borrowing-expense-loan.js +4 -0
  223. package/esm2015/lib/models/borrowing-expense/borrowing-expense.js +4 -0
  224. package/esm2015/lib/models/chart/chart-data.js +13 -0
  225. package/esm2015/lib/models/chart/chart-serie.js +7 -0
  226. package/esm2015/lib/models/chart-accounts/chart-accounts-categories.const.js +85 -0
  227. package/esm2015/lib/models/chart-accounts/chart-accounts-depreciation.js +16 -0
  228. package/esm2015/lib/models/chart-accounts/chart-accounts-heading.js +4 -0
  229. package/esm2015/lib/models/chart-accounts/chart-accounts-metadata.js +14 -0
  230. package/esm2015/lib/models/chart-accounts/chart-accounts-tax-labels.enum.js +7 -0
  231. package/esm2015/lib/models/chart-accounts/chart-accounts.js +120 -0
  232. package/esm2015/lib/models/chat/chat-view-type.enum.js +6 -0
  233. package/esm2015/lib/models/chat/chat.js +23 -0
  234. package/esm2015/lib/models/chat/message-document.js +20 -0
  235. package/esm2015/lib/models/chat/message.js +39 -0
  236. package/esm2015/lib/models/client/client-details.js +4 -0
  237. package/esm2015/lib/models/client/client-invite.js +67 -0
  238. package/esm2015/lib/models/client/client-movement.js +27 -0
  239. package/esm2015/lib/models/client/client-portfolio-chart-data.js +57 -0
  240. package/esm2015/lib/models/client/client-portfolio-report.js +6 -0
  241. package/esm2015/lib/models/depreciation/depreciation-capital-project.js +9 -0
  242. package/esm2015/lib/models/depreciation/depreciation-forecast.js +22 -0
  243. package/esm2015/lib/models/depreciation/depreciation-group-item.js +14 -0
  244. package/esm2015/lib/models/depreciation/depreciation-group.enum.js +9 -0
  245. package/esm2015/lib/models/depreciation/depreciation-group.js +15 -0
  246. package/esm2015/lib/models/depreciation/depreciation-groups.const.js +29 -0
  247. package/esm2015/lib/models/depreciation/depreciation-receipt.js +11 -0
  248. package/esm2015/lib/models/depreciation/depreciation.js +159 -0
  249. package/esm2015/lib/models/document/document-api-url-prefix.enum.js +9 -0
  250. package/esm2015/lib/models/document/document-file-types.const.js +23 -0
  251. package/esm2015/lib/models/document/document-folder.js +10 -0
  252. package/esm2015/lib/models/document/document.js +24 -0
  253. package/esm2015/lib/models/employee/employee-details.js +10 -0
  254. package/esm2015/lib/models/employee/employee-invite.js +14 -0
  255. package/esm2015/lib/models/endpoint/endpoint.js +23 -0
  256. package/esm2015/lib/models/endpoint/endpoints.const.js +142 -0
  257. package/esm2015/lib/models/event/app-event-type.enum.js +39 -0
  258. package/esm2015/lib/models/event/app-event.js +10 -0
  259. package/esm2015/lib/models/file/icons-file.enum.js +7 -0
  260. package/esm2015/lib/models/financial-year/financial-year.js +44 -0
  261. package/esm2015/lib/models/financial-year/month-name-short.enum.js +21 -0
  262. package/esm2015/lib/models/financial-year/month-number.enum.js +21 -0
  263. package/esm2015/lib/models/financial-year/months.const.js +2 -0
  264. package/esm2015/lib/models/firm/firm.js +30 -0
  265. package/esm2015/lib/models/income-position/income-position.js +9 -0
  266. package/esm2015/lib/models/income-source/income-source-chart-data.js +45 -0
  267. package/esm2015/lib/models/income-source/income-source-forecast.js +31 -0
  268. package/esm2015/lib/models/income-source/income-source-type.js +27 -0
  269. package/esm2015/lib/models/income-source/income-source.js +51 -0
  270. package/esm2015/lib/models/income-source/salary-forecast.js +14 -0
  271. package/esm2015/lib/models/loan/loan-max-number-of-payments.enum.js +10 -0
  272. package/esm2015/lib/models/loan/loan-payment.js +12 -0
  273. package/esm2015/lib/models/loan/loan-payout.js +11 -0
  274. package/esm2015/lib/models/loan/loan.js +39 -0
  275. package/esm2015/lib/models/logbook/default-vehicle-expense.js +20 -0
  276. package/esm2015/lib/models/logbook/logbook-period.js +11 -0
  277. package/esm2015/lib/models/logbook/logbook-purpose-options.const.js +6 -0
  278. package/esm2015/lib/models/logbook/vehicle-claim.js +26 -0
  279. package/esm2015/lib/models/logbook/vehicle-logbook.js +16 -0
  280. package/esm2015/lib/models/logbook/vehicle.js +39 -0
  281. package/esm2015/lib/models/notification/notification-event-types.const.js +43 -0
  282. package/esm2015/lib/models/notification/notification.js +63 -0
  283. package/esm2015/lib/models/phone/phone.js +12 -0
  284. package/esm2015/lib/models/property/calculation-form-item.js +17 -0
  285. package/esm2015/lib/models/property/calculation-form-type.enum.js +9 -0
  286. package/esm2015/lib/models/property/capital-costs-itmes.const.js +57 -0
  287. package/esm2015/lib/models/property/corelogic-suggestion.js +7 -0
  288. package/esm2015/lib/models/property/ownership-filter-options.enum.js +10 -0
  289. package/esm2015/lib/models/property/property-capital-cost.js +4 -0
  290. package/esm2015/lib/models/property/property-category-movement.js +20 -0
  291. package/esm2015/lib/models/property/property-category.js +8 -0
  292. package/esm2015/lib/models/property/property-document.js +17 -0
  293. package/esm2015/lib/models/property/property-equity-chart-data.js +155 -0
  294. package/esm2015/lib/models/property/property-equity-chart-item.js +24 -0
  295. package/esm2015/lib/models/property/property-equity-chart-type.enum.js +6 -0
  296. package/esm2015/lib/models/property/property-forecast.js +52 -0
  297. package/esm2015/lib/models/property/property-owner.js +48 -0
  298. package/esm2015/lib/models/property/property-sold.js +12 -0
  299. package/esm2015/lib/models/property/property-subscription.js +13 -0
  300. package/esm2015/lib/models/property/property-valuation.js +23 -0
  301. package/esm2015/lib/models/property/property.js +130 -0
  302. package/esm2015/lib/models/registration-invite/registration-invite.js +10 -0
  303. package/esm2015/lib/models/service-subscription/module-url-list.const.js +12 -0
  304. package/esm2015/lib/models/service-subscription/service-payment.js +10 -0
  305. package/esm2015/lib/models/service-subscription/service-price.js +10 -0
  306. package/esm2015/lib/models/service-subscription/service-product.js +10 -0
  307. package/esm2015/lib/models/service-subscription/service-subscription-item.js +13 -0
  308. package/esm2015/lib/models/service-subscription/service-subscription.js +128 -0
  309. package/esm2015/lib/models/service-subscription/subscription-description.const.js +8 -0
  310. package/esm2015/lib/models/service-subscription/subscription-title.const.js +8 -0
  311. package/esm2015/lib/models/service-subscription/subscription-type.enum.js +8 -0
  312. package/esm2015/lib/models/tax-review/tax-review.js +86 -0
  313. package/esm2015/lib/models/tax-summary/tax-return-category-item-details.js +9 -0
  314. package/esm2015/lib/models/tax-summary/tax-return-category-item.js +15 -0
  315. package/esm2015/lib/models/tax-summary/tax-summary-section.js +30 -0
  316. package/esm2015/lib/models/tax-summary/tax-summary-type.enum.js +9 -0
  317. package/esm2015/lib/models/tax-summary/tax-summary.js +71 -0
  318. package/esm2015/lib/models/transaction/income-amount-type.enum.js +9 -0
  319. package/esm2015/lib/models/transaction/transaction-allocation.js +21 -0
  320. package/esm2015/lib/models/transaction/transaction-metadata.js +10 -0
  321. package/esm2015/lib/models/transaction/transaction-receipt.js +11 -0
  322. package/esm2015/lib/models/transaction/transaction.js +214 -0
  323. package/esm2015/lib/models/user/my-account-history-initiated-by.enum.js +6 -0
  324. package/esm2015/lib/models/user/my-account-history-status.enum.js +6 -0
  325. package/esm2015/lib/models/user/my-account-history-type.enum.js +7 -0
  326. package/esm2015/lib/models/user/my-account-history.js +3 -0
  327. package/esm2015/lib/models/user/occupation.js +4 -0
  328. package/esm2015/lib/models/user/user-roles.const.js +13 -0
  329. package/esm2015/lib/models/user/user-to-register.js +6 -0
  330. package/esm2015/lib/models/user/user-work-position.const.js +7 -0
  331. package/esm2015/lib/models/user/user.js +138 -0
  332. package/esm2015/lib/models/user-event/user-event-category.enum.js +11 -0
  333. package/esm2015/lib/models/user-event/user-event-category.js +6 -0
  334. package/esm2015/lib/models/user-event/user-event-setting-field.enum.js +10 -0
  335. package/esm2015/lib/models/user-event/user-event-setting.js +18 -0
  336. package/esm2015/lib/models/user-event/user-event-type.js +24 -0
  337. package/esm2015/lib/services/address/address.service.js +39 -0
  338. package/esm2015/lib/services/asset/assets.service.js +51 -0
  339. package/esm2015/lib/services/auth/auth.service.js +46 -0
  340. package/esm2015/lib/services/auth/jwt.service.js +36 -0
  341. package/esm2015/lib/services/bank/bank-account-calculation.service.js +30 -0
  342. package/esm2015/lib/services/bank/bank-account.service.js +108 -0
  343. package/esm2015/lib/services/bank/bank-connection.service.js +43 -0
  344. package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +65 -0
  345. package/esm2015/lib/services/bank/bank-transaction.service.js +89 -0
  346. package/esm2015/lib/services/bank/bank.service.js +24 -0
  347. package/esm2015/lib/services/bank/basiq.service.js +94 -0
  348. package/esm2015/lib/services/base-rest.service.js +190 -0
  349. package/esm2015/lib/services/borrowing-expense/borrowing-expense.service.js +73 -0
  350. package/esm2015/lib/services/chart-accounts/chart-accounts-depreciations.service.js +38 -0
  351. package/esm2015/lib/services/chart-accounts/chart-accounts.service.js +89 -0
  352. package/esm2015/lib/services/chat/chat.service.js +77 -0
  353. package/esm2015/lib/services/chat/message-document.service.js +118 -0
  354. package/esm2015/lib/services/chat/message.service.js +65 -0
  355. package/esm2015/lib/services/client/client-invite.service.js +102 -0
  356. package/esm2015/lib/services/client/client-movement.service.js +98 -0
  357. package/esm2015/lib/services/client/client-portfolio-report.service.js +37 -0
  358. package/esm2015/lib/services/depreciation/capital-project.service.js +62 -0
  359. package/esm2015/lib/services/depreciation/depreciation.service.js +146 -0
  360. package/esm2015/lib/services/document/document-folder.service.js +84 -0
  361. package/esm2015/lib/services/employee/employee-invite.service.js +53 -0
  362. package/esm2015/lib/services/employee/employee.service.js +39 -0
  363. package/esm2015/lib/services/event/event-dispatcher.service.js +30 -0
  364. package/esm2015/lib/services/event/sse.service.js +46 -0
  365. package/esm2015/lib/services/firm/firm.service.js +79 -0
  366. package/esm2015/lib/services/header-title/header-title.service.js +28 -0
  367. package/esm2015/lib/services/income-source/income-source-forecast.service.js +90 -0
  368. package/esm2015/lib/services/income-source/income-source.service.js +109 -0
  369. package/esm2015/lib/services/income-source/salary-forecast.service.js +90 -0
  370. package/esm2015/lib/services/intercom/intercom.service.js +41 -0
  371. package/esm2015/lib/services/loan/loan.service.js +145 -0
  372. package/esm2015/lib/services/notification/notification.service.js +65 -0
  373. package/esm2015/lib/services/preloader/preloader.service.js +30 -0
  374. package/esm2015/lib/services/property/corelogic.service.js +46 -0
  375. package/esm2015/lib/services/property/property-calculation.service.js +121 -0
  376. package/esm2015/lib/services/property/property-capital-cost.service.js +46 -0
  377. package/esm2015/lib/services/property/property-category.service.js +23 -0
  378. package/esm2015/lib/services/property/property-document.service.js +68 -0
  379. package/esm2015/lib/services/property/property-owner.service.js +123 -0
  380. package/esm2015/lib/services/property/property-sold.service.js +23 -0
  381. package/esm2015/lib/services/property/property.service.js +115 -0
  382. package/esm2015/lib/services/subscription/subscription.service.js +138 -0
  383. package/esm2015/lib/services/tax-review/tax-review-history.service.js +41 -0
  384. package/esm2015/lib/services/tax-review/tax-review.service.js +103 -0
  385. package/esm2015/lib/services/tax-summary/tax-summary.service.js +71 -0
  386. package/esm2015/lib/services/transaction/transaction-allocation.service.js +85 -0
  387. package/esm2015/lib/services/transaction/transaction-calculation.service.js +47 -0
  388. package/esm2015/lib/services/transaction/transaction.service.js +319 -0
  389. package/esm2015/lib/services/user/occupation.service.js +45 -0
  390. package/esm2015/lib/services/user/user-switcher.service.js +37 -0
  391. package/esm2015/lib/services/user/user.service.js +124 -0
  392. package/esm2015/lib/services/user-event/user-event-setting.service.js +59 -0
  393. package/esm2015/lib/services/user-event/user-event-type.service.js +29 -0
  394. package/esm2015/lib/services/work/work-tank.service.js +236 -0
  395. package/esm2015/lib/tt-core.module.js +1 -3
  396. package/esm2015/public-api.js +334 -3
  397. package/fesm2015/taxtank-core.js +9738 -25
  398. package/fesm2015/taxtank-core.js.map +1 -1
  399. package/lib/collections/abstract.collection.d.ts +40 -0
  400. package/lib/collections/bank-account.collection.d.ts +67 -0
  401. package/lib/collections/bank-transaction.collection.d.ts +72 -0
  402. package/lib/collections/client-movement.collection.d.ts +17 -0
  403. package/lib/collections/client-portfolio-report.collection.d.ts +26 -0
  404. package/lib/collections/client.collection.d.ts +4 -0
  405. package/lib/collections/collection-dictionary.d.ts +44 -0
  406. package/lib/collections/depreciation-forecast.collection.d.ts +11 -0
  407. package/lib/collections/depreciation.collection.d.ts +27 -0
  408. package/lib/collections/employee.collection.d.ts +6 -0
  409. package/lib/collections/income-source.collection.d.ts +25 -0
  410. package/lib/collections/loan.collection.d.ts +14 -0
  411. package/lib/collections/logbook.collection.d.ts +19 -0
  412. package/lib/collections/message-document.collection.d.ts +11 -0
  413. package/lib/collections/message.collection.d.ts +14 -0
  414. package/lib/collections/property.collection.d.ts +33 -0
  415. package/lib/collections/service-price.collection.d.ts +6 -0
  416. package/lib/collections/service-subscription.collection.d.ts +8 -0
  417. package/lib/collections/tax-return-category-item.collection.d.ts +68 -0
  418. package/lib/collections/tax-review.collection.d.ts +35 -0
  419. package/lib/collections/transaction-allocation.collection.d.ts +23 -0
  420. package/lib/collections/transaction.collection.d.ts +76 -0
  421. package/lib/collections/user-event-setting.collection.d.ts +30 -0
  422. package/lib/db/Enums/address-type.enum.d.ts +4 -0
  423. package/lib/db/Enums/bank-account-status.enum.d.ts +4 -0
  424. package/lib/db/Enums/bank-account-type.enum.d.ts +10 -0
  425. package/lib/db/Enums/bank-connection-status.enum.d.ts +5 -0
  426. package/lib/db/Enums/bank-transaction-type.enum.d.ts +4 -0
  427. package/lib/db/Enums/chart-accounts-category.enum.d.ts +13 -0
  428. package/lib/db/Enums/chart-accounts-etp.enum.d.ts +7 -0
  429. package/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.d.ts +6 -0
  430. package/lib/db/Enums/chart-accounts-heading-taxable.enum.d.ts +6 -0
  431. package/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.d.ts +4 -0
  432. package/lib/db/Enums/chart-accounts-list.enum.d.ts +19 -0
  433. package/lib/db/Enums/chart-accounts-metadata-list.enum.d.ts +14 -0
  434. package/lib/db/Enums/chart-accounts-metadata-type.enum.d.ts +4 -0
  435. package/lib/db/Enums/chart-accounts-type.enum.d.ts +4 -0
  436. package/lib/db/Enums/chat-status.enum.d.ts +4 -0
  437. package/lib/db/Enums/client-details-medicare-exemption.enum.d.ts +5 -0
  438. package/lib/db/Enums/client-details-work-depreciation-calculation.enum.d.ts +4 -0
  439. package/lib/db/Enums/client-details-working-holiday-maker.enum.d.ts +5 -0
  440. package/lib/db/Enums/client-invite-status.enum.d.ts +4 -0
  441. package/lib/db/Enums/client-invite-type.enum.d.ts +4 -0
  442. package/lib/db/Enums/depreciation-calculation-percent.enum.d.ts +7 -0
  443. package/lib/db/Enums/depreciation-calculation.enum.d.ts +7 -0
  444. package/lib/db/Enums/depreciation-type.enum.d.ts +6 -0
  445. package/lib/db/Enums/depreciation-write-off-amount.enum.d.ts +4 -0
  446. package/lib/db/Enums/firm-type.enum.d.ts +4 -0
  447. package/lib/db/Enums/income-source-type-list-other.enum.d.ts +6 -0
  448. package/lib/db/Enums/income-source-type-list-salary.enum.d.ts +3 -0
  449. package/lib/db/Enums/income-source-type-list-work.enum.d.ts +8 -0
  450. package/lib/db/Enums/income-source-type.enum.d.ts +5 -0
  451. package/lib/db/Enums/invite-status.enum.d.ts +5 -0
  452. package/lib/db/Enums/loan-bank-type.enum.d.ts +10 -0
  453. package/lib/db/Enums/loan-frequency.enum.d.ts +6 -0
  454. package/lib/db/Enums/loan-interest-type.enum.d.ts +4 -0
  455. package/lib/db/Enums/loan-payout-type.enum.d.ts +4 -0
  456. package/lib/db/Enums/loan-repayment-frequency.enum.d.ts +5 -0
  457. package/lib/db/Enums/loan-repayment-type.enum.d.ts +4 -0
  458. package/lib/db/Enums/loan-type.enum.d.ts +12 -0
  459. package/lib/db/Enums/loan-vehicle-type.enum.d.ts +5 -0
  460. package/lib/db/Enums/phone-type.enum.d.ts +4 -0
  461. package/lib/db/Enums/property-depreciation-calculation.enum.d.ts +4 -0
  462. package/lib/db/Enums/property-owner-access.enum.d.ts +4 -0
  463. package/lib/db/Enums/property-owner-status.enum.d.ts +5 -0
  464. package/lib/db/Enums/registration-invite-status.enum.d.ts +4 -0
  465. package/lib/db/Enums/salary-forecast-frequency.enum.d.ts +6 -0
  466. package/lib/db/Enums/service-notification-status.enum.d.ts +5 -0
  467. package/lib/db/Enums/service-notification-type.enum.d.ts +4 -0
  468. package/lib/db/Enums/service-payment-status.enum.d.ts +4 -0
  469. package/lib/db/Enums/service-price-recurring-interval.enum.d.ts +6 -0
  470. package/lib/db/Enums/service-price-type.enum.d.ts +4 -0
  471. package/lib/db/Enums/service-subscription-status.enum.d.ts +8 -0
  472. package/lib/db/Enums/spare-document-spare-type.enum.d.ts +4 -0
  473. package/lib/db/Enums/tank-type.enum.d.ts +5 -0
  474. package/lib/db/Enums/tax-calculation-medicare-exemption.enum.d.ts +4 -0
  475. package/lib/db/Enums/tax-calculation-type.enum.d.ts +12 -0
  476. package/lib/db/Enums/tax-return-category-list.enum.d.ts +26 -0
  477. package/lib/db/Enums/tax-return-category-section.enum.d.ts +6 -0
  478. package/lib/db/Enums/tax-review-status.enum.d.ts +11 -0
  479. package/lib/db/Enums/tax-summary-list.enum.d.ts +15 -0
  480. package/lib/db/Enums/tax-summary-section.enum.d.ts +6 -0
  481. package/lib/db/Enums/tax-summary-tax-summary.enum.d.ts +15 -0
  482. package/lib/db/Enums/ticket-feedback.enum.d.ts +4 -0
  483. package/lib/db/Enums/ticket-status.enum.d.ts +7 -0
  484. package/lib/db/Enums/ticket-types.enum.d.ts +3 -0
  485. package/lib/db/Enums/transaction-operation.enum.d.ts +5 -0
  486. package/lib/db/Enums/transaction-source.enum.d.ts +4 -0
  487. package/lib/db/Enums/transaction-type.enum.d.ts +4 -0
  488. package/lib/db/Enums/user-event-status.enum.d.ts +6 -0
  489. package/lib/db/Enums/user-event-type-frequency.enum.d.ts +6 -0
  490. package/lib/db/Enums/user-event-type-reminder-type.enum.d.ts +6 -0
  491. package/lib/db/Enums/user-event-type-reminder.enum.d.ts +5 -0
  492. package/lib/db/Enums/user-event-type-type.enum.d.ts +33 -0
  493. package/lib/db/Enums/user-medicare-exemption.enum.d.ts +5 -0
  494. package/lib/db/Enums/user-roles.enum.d.ts +13 -0
  495. package/lib/db/Enums/user-status.enum.d.ts +6 -0
  496. package/lib/db/Enums/user-title.enum.d.ts +7 -0
  497. package/lib/db/Enums/user-work-depreciation-calculation.enum.d.ts +4 -0
  498. package/lib/db/Enums/user-working-holiday-maker.enum.d.ts +5 -0
  499. package/lib/db/Enums/vehicle-claim-method.enum.d.ts +4 -0
  500. package/lib/db/Enums/vehicle-logbook-purpose.enum.d.ts +4 -0
  501. package/lib/db/Models/address.d.ts +19 -0
  502. package/lib/db/Models/bank-account-balance.d.ts +12 -0
  503. package/lib/db/Models/bank-account-property.d.ts +8 -0
  504. package/lib/db/Models/bank-account.d.ts +33 -0
  505. package/lib/db/Models/bank-connection.d.ts +14 -0
  506. package/lib/db/Models/bank-transaction-import.d.ts +11 -0
  507. package/lib/db/Models/bank-transaction.d.ts +16 -0
  508. package/lib/db/Models/bank.d.ts +11 -0
  509. package/lib/db/Models/basiq-job.d.ts +8 -0
  510. package/lib/db/Models/borrowing-expense-loan.d.ts +14 -0
  511. package/lib/db/Models/borrowing-expense.d.ts +7 -0
  512. package/lib/db/Models/capital-cost-property.d.ts +13 -0
  513. package/lib/db/Models/capital-cost.d.ts +4 -0
  514. package/lib/db/Models/chart-accounts-depreciation.d.ts +10 -0
  515. package/lib/db/Models/chart-accounts-heading.d.ts +6 -0
  516. package/lib/db/Models/chart-accounts-metadata.d.ts +11 -0
  517. package/lib/db/Models/chart-accounts-value.d.ts +12 -0
  518. package/lib/db/Models/chart-accounts.d.ts +23 -0
  519. package/lib/db/Models/chat.d.ts +17 -0
  520. package/lib/db/Models/client-details.d.ts +29 -0
  521. package/lib/db/Models/client-invite.d.ts +16 -0
  522. package/lib/db/Models/client-movement.d.ts +12 -0
  523. package/lib/db/Models/country.d.ts +5 -0
  524. package/lib/db/Models/depreciation-capital-project.d.ts +13 -0
  525. package/lib/db/Models/depreciation-forecast.d.ts +18 -0
  526. package/lib/db/Models/depreciation-receipt.d.ts +11 -0
  527. package/lib/db/Models/depreciation.d.ts +42 -0
  528. package/lib/db/Models/document-folder.d.ts +9 -0
  529. package/lib/db/Models/document.d.ts +11 -0
  530. package/lib/db/Models/employee-details.d.ts +7 -0
  531. package/lib/db/Models/employee-invite.d.ts +9 -0
  532. package/lib/db/Models/financial-data-system.d.ts +9 -0
  533. package/lib/db/Models/firm.d.ts +28 -0
  534. package/lib/db/Models/income-source-forecast.d.ts +12 -0
  535. package/lib/db/Models/income-source-type.d.ts +8 -0
  536. package/lib/db/Models/income-source.d.ts +20 -0
  537. package/lib/db/Models/loan-payout.d.ts +12 -0
  538. package/lib/db/Models/loan.d.ts +33 -0
  539. package/lib/db/Models/message-document.d.ts +15 -0
  540. package/lib/db/Models/message.d.ts +15 -0
  541. package/lib/db/Models/occupation.d.ts +5 -0
  542. package/lib/db/Models/phone.d.ts +12 -0
  543. package/lib/db/Models/property-capital-cost.d.ts +13 -0
  544. package/lib/db/Models/property-category-movement.d.ts +17 -0
  545. package/lib/db/Models/property-category.d.ts +13 -0
  546. package/lib/db/Models/property-document.d.ts +13 -0
  547. package/lib/db/Models/property-forecast.d.ts +14 -0
  548. package/lib/db/Models/property-owner.d.ts +20 -0
  549. package/lib/db/Models/property-sold.d.ts +12 -0
  550. package/lib/db/Models/property-subscription.d.ts +9 -0
  551. package/lib/db/Models/property-valuation.d.ts +12 -0
  552. package/lib/db/Models/property.d.ts +41 -0
  553. package/lib/db/Models/registration-invite.d.ts +12 -0
  554. package/lib/db/Models/salary-forecast.d.ts +15 -0
  555. package/lib/db/Models/service-notification.d.ts +13 -0
  556. package/lib/db/Models/service-payment.d.ts +11 -0
  557. package/lib/db/Models/service-price.d.ts +15 -0
  558. package/lib/db/Models/service-product.d.ts +12 -0
  559. package/lib/db/Models/service-subscription-item.d.ts +9 -0
  560. package/lib/db/Models/service-subscription.d.ts +14 -0
  561. package/lib/db/Models/tax-return-category.d.ts +12 -0
  562. package/lib/db/Models/tax-return-item.d.ts +15 -0
  563. package/lib/db/Models/tax-return.d.ts +8 -0
  564. package/lib/db/Models/tax-review.d.ts +13 -0
  565. package/lib/db/Models/ticket.d.ts +19 -0
  566. package/lib/db/Models/transaction-allocation.d.ts +8 -0
  567. package/lib/db/Models/transaction-base.d.ts +22 -0
  568. package/lib/db/Models/transaction-metadata.d.ts +11 -0
  569. package/lib/db/Models/transaction-receipt.d.ts +11 -0
  570. package/lib/db/Models/transaction.d.ts +43 -0
  571. package/lib/db/Models/user-event-setting.d.ts +10 -0
  572. package/lib/db/Models/user-event-type.d.ts +15 -0
  573. package/lib/db/Models/user-event.d.ts +13 -0
  574. package/lib/db/Models/user.d.ts +51 -0
  575. package/lib/db/Models/vehicle-claim.d.ts +11 -0
  576. package/lib/db/Models/vehicle-logbook.d.ts +16 -0
  577. package/lib/db/Models/vehicle.d.ts +8 -0
  578. package/lib/functions/array/index.d.ts +3 -0
  579. package/lib/functions/array/replace.d.ts +1 -0
  580. package/lib/functions/array/sort-deep.d.ts +1 -0
  581. package/lib/functions/array/sort.d.ts +1 -0
  582. package/lib/functions/clone-deep.d.ts +1 -0
  583. package/lib/functions/create-date.d.ts +5 -0
  584. package/lib/functions/enum-to-list.d.ts +2 -0
  585. package/lib/functions/get-doc-icon.d.ts +7 -0
  586. package/lib/functions/mat-options-functions.d.ts +2 -0
  587. package/lib/functions/mat-sort-options.d.ts +7 -0
  588. package/lib/functions/round-to.d.ts +6 -0
  589. package/lib/functions/tax-review-filter-predicate.d.ts +7 -0
  590. package/lib/interfaces/asset-entity-type.enum.d.ts +10 -0
  591. package/lib/interfaces/asset-type.enum.d.ts +8 -0
  592. package/lib/interfaces/asset.interface.d.ts +17 -0
  593. package/lib/interfaces/chart-data.interface.d.ts +10 -0
  594. package/lib/interfaces/chart-serie.interface.d.ts +8 -0
  595. package/lib/interfaces/document.interface.d.ts +18 -0
  596. package/lib/interfaces/documentable.interface.d.ts +8 -0
  597. package/lib/interfaces/event-listener.interface.d.ts +9 -0
  598. package/lib/interfaces/income-source-forecast.interface.d.ts +7 -0
  599. package/lib/interfaces/option.interface.d.ts +4 -0
  600. package/lib/interfaces/photoable.d.ts +13 -0
  601. package/lib/interfaces/receipt.interface.d.ts +12 -0
  602. package/lib/interfaces/salary-forecast.interface.d.ts +16 -0
  603. package/lib/interfaces/tank.interface.d.ts +7 -0
  604. package/lib/models/address/address.d.ts +11 -0
  605. package/lib/models/address/country.d.ts +11 -0
  606. package/lib/models/bank/bank-account-chart-data.d.ts +17 -0
  607. package/lib/models/bank/bank-account-property.d.ts +5 -0
  608. package/lib/models/bank/bank-account-types.const.d.ts +7 -0
  609. package/lib/models/bank/bank-account.d.ts +72 -0
  610. package/lib/models/bank/bank-connection.d.ts +7 -0
  611. package/lib/models/bank/bank-transaction-chart-data.d.ts +30 -0
  612. package/lib/models/bank/bank-transaction-summary-fields.enum.d.ts +4 -0
  613. package/lib/models/bank/bank-transaction.d.ts +38 -0
  614. package/lib/models/bank/bank.d.ts +8 -0
  615. package/lib/models/bank/basiq-job.d.ts +3 -0
  616. package/lib/models/bank/basiq-token.d.ts +9 -0
  617. package/lib/models/bank/type-loan.const.d.ts +2 -0
  618. package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts +3 -0
  619. package/lib/models/borrowing-expense/borrowing-expense.d.ts +3 -0
  620. package/lib/models/chart/chart-data.d.ts +9 -0
  621. package/lib/models/chart/chart-serie.d.ts +8 -0
  622. package/lib/models/chart-accounts/chart-accounts-categories.const.d.ts +4 -0
  623. package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts +7 -0
  624. package/lib/models/chart-accounts/chart-accounts-heading.d.ts +5 -0
  625. package/lib/models/chart-accounts/chart-accounts-metadata.d.ts +8 -0
  626. package/lib/models/chart-accounts/chart-accounts-tax-labels.enum.d.ts +5 -0
  627. package/lib/models/chart-accounts/chart-accounts.d.ts +66 -0
  628. package/lib/models/chat/chat-view-type.enum.d.ts +4 -0
  629. package/lib/models/chat/chat.d.ts +10 -0
  630. package/lib/models/chat/message-document.d.ts +11 -0
  631. package/lib/models/chat/message.d.ts +20 -0
  632. package/lib/models/client/client-details.d.ts +3 -0
  633. package/lib/models/client/client-invite.d.ts +34 -0
  634. package/lib/models/client/client-movement.d.ts +12 -0
  635. package/lib/models/client/client-portfolio-chart-data.d.ts +11 -0
  636. package/lib/models/client/client-portfolio-report.d.ts +10 -0
  637. package/lib/models/depreciation/depreciation-capital-project.d.ts +5 -0
  638. package/lib/models/depreciation/depreciation-forecast.d.ts +8 -0
  639. package/lib/models/depreciation/depreciation-group-item.d.ts +10 -0
  640. package/lib/models/depreciation/depreciation-group.d.ts +11 -0
  641. package/lib/models/depreciation/depreciation-group.enum.d.ts +7 -0
  642. package/lib/models/depreciation/depreciation-groups.const.d.ts +9 -0
  643. package/lib/models/depreciation/depreciation-receipt.d.ts +8 -0
  644. package/lib/models/depreciation/depreciation.d.ts +69 -0
  645. package/lib/models/document/document-api-url-prefix.enum.d.ts +7 -0
  646. package/lib/models/document/document-file-types.const.d.ts +3 -0
  647. package/lib/models/document/document-folder.d.ts +7 -0
  648. package/lib/models/document/document.d.ts +21 -0
  649. package/lib/models/employee/employee-details.d.ts +5 -0
  650. package/lib/models/employee/employee-invite.d.ts +7 -0
  651. package/lib/models/endpoint/endpoint.d.ts +22 -0
  652. package/lib/models/endpoint/endpoints.const.d.ts +7 -0
  653. package/lib/models/event/app-event-type.enum.d.ts +37 -0
  654. package/lib/models/event/app-event.d.ts +9 -0
  655. package/lib/models/file/icons-file.enum.d.ts +5 -0
  656. package/lib/models/financial-year/financial-year.d.ts +19 -0
  657. package/lib/models/financial-year/month-name-short.enum.d.ts +19 -0
  658. package/lib/models/financial-year/month-number.enum.d.ts +19 -0
  659. package/lib/models/financial-year/months.const.d.ts +1 -0
  660. package/lib/models/firm/firm.d.ts +18 -0
  661. package/lib/models/income-position/income-position.d.ts +9 -0
  662. package/lib/models/income-source/income-source-chart-data.d.ts +14 -0
  663. package/lib/models/income-source/income-source-forecast.d.ts +22 -0
  664. package/lib/models/income-source/income-source-type.d.ts +8 -0
  665. package/lib/models/income-source/income-source.d.ts +27 -0
  666. package/lib/models/income-source/salary-forecast.d.ts +16 -0
  667. package/lib/models/loan/loan-max-number-of-payments.enum.d.ts +8 -0
  668. package/lib/models/loan/loan-payment.d.ts +13 -0
  669. package/lib/models/loan/loan-payout.d.ts +9 -0
  670. package/lib/models/loan/loan.d.ts +20 -0
  671. package/lib/models/logbook/default-vehicle-expense.d.ts +5 -0
  672. package/lib/models/logbook/logbook-period.d.ts +6 -0
  673. package/lib/models/logbook/logbook-purpose-options.const.d.ts +4 -0
  674. package/lib/models/logbook/vehicle-claim.d.ts +15 -0
  675. package/lib/models/logbook/vehicle-logbook.d.ts +6 -0
  676. package/lib/models/logbook/vehicle.d.ts +12 -0
  677. package/lib/models/notification/notification-event-types.const.d.ts +7 -0
  678. package/lib/models/notification/notification.d.ts +16 -0
  679. package/lib/models/phone/phone.d.ts +6 -0
  680. package/lib/models/property/calculation-form-item.d.ts +15 -0
  681. package/lib/models/property/calculation-form-type.enum.d.ts +7 -0
  682. package/lib/models/property/capital-costs-itmes.const.d.ts +2 -0
  683. package/lib/models/property/corelogic-suggestion.d.ts +18 -0
  684. package/lib/models/property/ownership-filter-options.enum.d.ts +8 -0
  685. package/lib/models/property/property-capital-cost.d.ts +3 -0
  686. package/lib/models/property/property-category-movement.d.ts +9 -0
  687. package/lib/models/property/property-category.d.ts +4 -0
  688. package/lib/models/property/property-document.d.ts +14 -0
  689. package/lib/models/property/property-equity-chart-data.d.ts +62 -0
  690. package/lib/models/property/property-equity-chart-item.d.ts +19 -0
  691. package/lib/models/property/property-equity-chart-type.enum.d.ts +4 -0
  692. package/lib/models/property/property-forecast.d.ts +28 -0
  693. package/lib/models/property/property-owner.d.ts +21 -0
  694. package/lib/models/property/property-sold.d.ts +5 -0
  695. package/lib/models/property/property-subscription.d.ts +6 -0
  696. package/lib/models/property/property-valuation.d.ts +9 -0
  697. package/lib/models/property/property.d.ts +55 -0
  698. package/lib/models/registration-invite/registration-invite.d.ts +6 -0
  699. package/lib/models/service-subscription/module-url-list.const.d.ts +6 -0
  700. package/lib/models/service-subscription/service-payment.d.ts +5 -0
  701. package/lib/models/service-subscription/service-price.d.ts +5 -0
  702. package/lib/models/service-subscription/service-product.d.ts +5 -0
  703. package/lib/models/service-subscription/service-subscription-item.d.ts +6 -0
  704. package/lib/models/service-subscription/service-subscription.d.ts +55 -0
  705. package/lib/models/service-subscription/subscription-description.const.d.ts +3 -0
  706. package/lib/models/service-subscription/subscription-title.const.d.ts +3 -0
  707. package/lib/models/service-subscription/subscription-type.enum.d.ts +6 -0
  708. package/lib/models/tax-review/tax-review.d.ts +52 -0
  709. package/lib/models/tax-summary/tax-return-category-item-details.d.ts +13 -0
  710. package/lib/models/tax-summary/tax-return-category-item.d.ts +18 -0
  711. package/lib/models/tax-summary/tax-summary-section.d.ts +12 -0
  712. package/lib/models/tax-summary/tax-summary-type.enum.d.ts +7 -0
  713. package/lib/models/tax-summary/tax-summary.d.ts +44 -0
  714. package/lib/models/transaction/income-amount-type.enum.d.ts +7 -0
  715. package/lib/models/transaction/transaction-allocation.d.ts +12 -0
  716. package/lib/models/transaction/transaction-metadata.d.ts +5 -0
  717. package/lib/models/transaction/transaction-receipt.d.ts +8 -0
  718. package/lib/models/transaction/transaction.d.ts +98 -0
  719. package/lib/models/user/my-account-history-initiated-by.enum.d.ts +4 -0
  720. package/lib/models/user/my-account-history-status.enum.d.ts +4 -0
  721. package/lib/models/user/my-account-history-type.enum.d.ts +5 -0
  722. package/lib/models/user/my-account-history.d.ts +11 -0
  723. package/lib/models/user/occupation.d.ts +3 -0
  724. package/lib/models/user/user-roles.const.d.ts +4 -0
  725. package/lib/models/user/user-to-register.d.ts +7 -0
  726. package/lib/models/user/user-work-position.const.d.ts +3 -0
  727. package/lib/models/user/user.d.ts +64 -0
  728. package/lib/models/user-event/user-event-category.d.ts +8 -0
  729. package/lib/models/user-event/user-event-category.enum.d.ts +9 -0
  730. package/lib/models/user-event/user-event-setting-field.enum.d.ts +8 -0
  731. package/lib/models/user-event/user-event-setting.d.ts +6 -0
  732. package/lib/models/user-event/user-event-type.d.ts +5 -0
  733. package/lib/services/address/address.service.d.ts +14 -0
  734. package/lib/services/asset/assets.service.d.ts +34 -0
  735. package/lib/services/auth/auth.service.d.ts +17 -0
  736. package/lib/services/auth/jwt.service.d.ts +16 -0
  737. package/lib/services/bank/bank-account-calculation.service.d.ts +19 -0
  738. package/lib/services/bank/bank-account.service.d.ts +47 -0
  739. package/lib/services/bank/bank-connection.service.d.ts +22 -0
  740. package/lib/services/bank/bank-transaction-calculation.service.d.ts +41 -0
  741. package/lib/services/bank/bank-transaction.service.d.ts +38 -0
  742. package/lib/services/bank/bank.service.d.ts +14 -0
  743. package/lib/services/bank/basiq.service.d.ts +42 -0
  744. package/lib/services/base-rest.service.d.ts +91 -0
  745. package/lib/services/borrowing-expense/borrowing-expense.service.d.ts +19 -0
  746. package/lib/services/chart-accounts/chart-accounts-depreciations.service.d.ts +19 -0
  747. package/lib/services/chart-accounts/chart-accounts.service.d.ts +37 -0
  748. package/lib/services/chat/chat.service.d.ts +31 -0
  749. package/lib/services/chat/message-document.service.d.ts +50 -0
  750. package/lib/services/chat/message.service.d.ts +31 -0
  751. package/lib/services/client/client-invite.service.d.ts +36 -0
  752. package/lib/services/client/client-movement.service.d.ts +40 -0
  753. package/lib/services/client/client-portfolio-report.service.d.ts +16 -0
  754. package/lib/services/depreciation/capital-project.service.d.ts +20 -0
  755. package/lib/services/depreciation/depreciation.service.d.ts +59 -0
  756. package/lib/services/document/document-folder.service.d.ts +40 -0
  757. package/lib/services/employee/employee-invite.service.d.ts +21 -0
  758. package/lib/services/employee/employee.service.d.ts +16 -0
  759. package/lib/services/event/event-dispatcher.service.d.ts +17 -0
  760. package/lib/services/event/sse.service.d.ts +16 -0
  761. package/lib/services/firm/firm.service.d.ts +27 -0
  762. package/lib/services/header-title/header-title.service.d.ts +11 -0
  763. package/lib/services/income-source/income-source-forecast.service.d.ts +36 -0
  764. package/lib/services/income-source/income-source.service.d.ts +48 -0
  765. package/lib/services/income-source/salary-forecast.service.d.ts +37 -0
  766. package/lib/services/intercom/intercom.service.d.ts +21 -0
  767. package/lib/services/loan/loan.service.d.ts +63 -0
  768. package/lib/services/notification/notification.service.d.ts +31 -0
  769. package/lib/services/preloader/preloader.service.d.ts +12 -0
  770. package/lib/services/property/corelogic.service.d.ts +15 -0
  771. package/lib/services/property/property-calculation.service.d.ts +33 -0
  772. package/lib/services/property/property-capital-cost.service.d.ts +20 -0
  773. package/lib/services/property/property-category.service.d.ts +13 -0
  774. package/lib/services/property/property-document.service.d.ts +31 -0
  775. package/lib/services/property/property-owner.service.d.ts +52 -0
  776. package/lib/services/property/property-sold.service.d.ts +13 -0
  777. package/lib/services/property/property.service.d.ts +50 -0
  778. package/lib/services/subscription/subscription.service.d.ts +47 -0
  779. package/lib/services/tax-review/tax-review-history.service.d.ts +19 -0
  780. package/lib/services/tax-review/tax-review.service.d.ts +44 -0
  781. package/lib/services/tax-summary/tax-summary.service.d.ts +31 -0
  782. package/lib/services/transaction/transaction-allocation.service.d.ts +43 -0
  783. package/lib/services/transaction/transaction-calculation.service.d.ts +29 -0
  784. package/lib/services/transaction/transaction.service.d.ts +92 -0
  785. package/lib/services/user/occupation.service.d.ts +20 -0
  786. package/lib/services/user/user-switcher.service.d.ts +20 -0
  787. package/lib/services/user/user.service.d.ts +60 -0
  788. package/lib/services/user-event/user-event-setting.service.d.ts +22 -0
  789. package/lib/services/user-event/user-event-type.service.d.ts +17 -0
  790. package/lib/services/work/work-tank.service.d.ts +93 -0
  791. package/package.json +11 -3
  792. package/public-api.d.ts +335 -1
  793. package/esm2015/lib/tt-core.service.js +0 -23
  794. package/lib/tt-core.service.d.ts +0 -8
@@ -0,0 +1,44 @@
1
+ export class FinancialYear {
2
+ constructor(date) {
3
+ this.yearStartDate = '-07-01';
4
+ this.yearEndDate = '-06-30';
5
+ this.year = date ? FinancialYear.toFinYear(date) : +localStorage.getItem('financialYear') || FinancialYear.toFinYear(new Date());
6
+ this.setStartDate(this.year);
7
+ this.setEndDate(this.year);
8
+ }
9
+ includes(date) {
10
+ return this.year === new FinancialYear(date).year;
11
+ }
12
+ static toFinYear(date) {
13
+ return date.getFullYear() + (date.getMonth() >= this.startMonthIndex ? 1 : 0);
14
+ }
15
+ get prevFinYear() {
16
+ return new FinancialYear(new Date(`${new Date().getFullYear() - 1}${this.yearStartDate}`));
17
+ }
18
+ /**
19
+ * Get date by desired month
20
+ */
21
+ getMonthDate(monthIndex) {
22
+ if (monthIndex >= FinancialYear.startMonthIndex) {
23
+ return new Date(`${this.year - 1}-${monthIndex + 1}-01`);
24
+ }
25
+ return new Date(`${this.year}-${monthIndex + 1}-01`);
26
+ }
27
+ setStartDate(year) {
28
+ this.startDate = new Date(`${year - 1}${this.yearStartDate}`);
29
+ }
30
+ setEndDate(year) {
31
+ this.endDate = new Date(`${year}${this.yearEndDate}`);
32
+ }
33
+ getPastMonths() {
34
+ const months = [];
35
+ const now = new Date();
36
+ const endDate = this.endDate < now ? this.endDate : now;
37
+ for (const d = this.startDate; d <= endDate; d.setMonth(d.getMonth() + 1)) {
38
+ months.push(d.getMonth());
39
+ }
40
+ return months;
41
+ }
42
+ }
43
+ FinancialYear.startMonthIndex = 6;
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluYW5jaWFsLXllYXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQVksSUFBVztRQVlmLGtCQUFhLEdBQVcsUUFBUSxDQUFDO1FBQ2pDLGdCQUFXLEdBQVcsUUFBUSxDQUFDO1FBWnJDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLElBQUksYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7UUFFakksSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQVVELFFBQVEsQ0FBQyxJQUFVO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDcEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBVTtRQUN6QixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLENBQUMsVUFBa0I7UUFDN0IsSUFBSSxVQUFVLElBQUksYUFBYSxDQUFDLGVBQWUsRUFBRTtZQUMvQyxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksVUFBVSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUQ7UUFDRCxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxVQUFVLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU8sWUFBWSxDQUFDLElBQVk7UUFDL0IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVPLFVBQVUsQ0FBQyxJQUFZO1FBQzdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLE1BQU0sR0FBYSxFQUFFLENBQUM7UUFDNUIsTUFBTSxHQUFHLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUM3QixNQUFNLE9BQU8sR0FBUyxJQUFJLENBQUMsT0FBTyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1FBQzlELEtBQUssTUFBTSxDQUFDLEdBQVMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLElBQUksT0FBTyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQy9FLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDM0I7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztBQS9DTSw2QkFBZSxHQUFXLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBGaW5hbmNpYWxZZWFyIHtcclxuICBjb25zdHJ1Y3RvcihkYXRlPzogRGF0ZSkge1xyXG4gICAgdGhpcy55ZWFyID0gZGF0ZSA/IEZpbmFuY2lhbFllYXIudG9GaW5ZZWFyKGRhdGUpIDogK2xvY2FsU3RvcmFnZS5nZXRJdGVtKCdmaW5hbmNpYWxZZWFyJykgfHwgRmluYW5jaWFsWWVhci50b0ZpblllYXIobmV3IERhdGUoKSk7XHJcblxyXG4gICAgdGhpcy5zZXRTdGFydERhdGUodGhpcy55ZWFyKTtcclxuICAgIHRoaXMuc2V0RW5kRGF0ZSh0aGlzLnllYXIpO1xyXG4gIH1cclxuXHJcbiAgc3RhdGljIHN0YXJ0TW9udGhJbmRleDogbnVtYmVyID0gNjtcclxuICB5ZWFyOiBudW1iZXI7XHJcbiAgc3RhcnREYXRlOiBEYXRlO1xyXG4gIGVuZERhdGU6IERhdGU7XHJcblxyXG4gIHByaXZhdGUgeWVhclN0YXJ0RGF0ZTogc3RyaW5nID0gJy0wNy0wMSc7XHJcbiAgcHJpdmF0ZSB5ZWFyRW5kRGF0ZTogc3RyaW5nID0gJy0wNi0zMCc7XHJcblxyXG4gIGluY2x1ZGVzKGRhdGU6IERhdGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLnllYXIgPT09IG5ldyBGaW5hbmNpYWxZZWFyKGRhdGUpLnllYXI7XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgdG9GaW5ZZWFyKGRhdGU6IERhdGUpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIGRhdGUuZ2V0RnVsbFllYXIoKSArIChkYXRlLmdldE1vbnRoKCkgPj0gdGhpcy5zdGFydE1vbnRoSW5kZXggPyAxIDogMCk7XHJcbiAgfVxyXG5cclxuICBnZXQgcHJldkZpblllYXIoKTogRmluYW5jaWFsWWVhciB7XHJcbiAgICByZXR1cm4gbmV3IEZpbmFuY2lhbFllYXIobmV3IERhdGUoYCR7bmV3IERhdGUoKS5nZXRGdWxsWWVhcigpIC0gMX0ke3RoaXMueWVhclN0YXJ0RGF0ZX1gKSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgZGF0ZSBieSBkZXNpcmVkIG1vbnRoXHJcbiAgICovXHJcbiAgZ2V0TW9udGhEYXRlKG1vbnRoSW5kZXg6IG51bWJlcik6IERhdGUge1xyXG4gICAgaWYgKG1vbnRoSW5kZXggPj0gRmluYW5jaWFsWWVhci5zdGFydE1vbnRoSW5kZXgpIHtcclxuICAgICAgcmV0dXJuIG5ldyBEYXRlKGAke3RoaXMueWVhciAtIDF9LSR7bW9udGhJbmRleCArIDF9LTAxYCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IERhdGUoYCR7dGhpcy55ZWFyfS0ke21vbnRoSW5kZXggKyAxfS0wMWApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRTdGFydERhdGUoeWVhcjogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0YXJ0RGF0ZSA9IG5ldyBEYXRlKGAke3llYXIgLSAxfSR7dGhpcy55ZWFyU3RhcnREYXRlfWApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRFbmREYXRlKHllYXI6IG51bWJlcik6IHZvaWQge1xyXG4gICAgdGhpcy5lbmREYXRlID0gbmV3IERhdGUoYCR7eWVhcn0ke3RoaXMueWVhckVuZERhdGV9YCk7XHJcbiAgfVxyXG5cclxuICBnZXRQYXN0TW9udGhzKCk6IG51bWJlcltdIHtcclxuICAgIGNvbnN0IG1vbnRoczogbnVtYmVyW10gPSBbXTtcclxuICAgIGNvbnN0IG5vdzogRGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICBjb25zdCBlbmREYXRlOiBEYXRlID0gdGhpcy5lbmREYXRlIDwgbm93ID8gdGhpcy5lbmREYXRlIDogbm93O1xyXG4gICAgZm9yIChjb25zdCBkOiBEYXRlID0gdGhpcy5zdGFydERhdGU7IGQgPD0gZW5kRGF0ZTsgZC5zZXRNb250aChkLmdldE1vbnRoKCkgKyAxKSkge1xyXG4gICAgICBtb250aHMucHVzaChkLmdldE1vbnRoKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtb250aHM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @TODO move to pipe/translation
3
+ * enum with months short names.
4
+ * Order of items match with financial year months order
5
+ */
6
+ export var MonthNameShortEnum;
7
+ (function (MonthNameShortEnum) {
8
+ MonthNameShortEnum["JULY"] = "Jul";
9
+ MonthNameShortEnum["AUGUST"] = "Aug";
10
+ MonthNameShortEnum["SEPTEMBER"] = "Sep";
11
+ MonthNameShortEnum["OCTOBER"] = "Oct";
12
+ MonthNameShortEnum["NOVEMBER"] = "Nov";
13
+ MonthNameShortEnum["DECEMBER"] = "Dec";
14
+ MonthNameShortEnum["JANUARY"] = "Jan";
15
+ MonthNameShortEnum["FEBRUARY"] = "Feb";
16
+ MonthNameShortEnum["MARCH"] = "Mar";
17
+ MonthNameShortEnum["APRIL"] = "Apr";
18
+ MonthNameShortEnum["MAY"] = "May";
19
+ MonthNameShortEnum["JUNE"] = "Jun";
20
+ })(MonthNameShortEnum || (MonthNameShortEnum = {}));
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGgtbmFtZS1zaG9ydC5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9maW5hbmNpYWwteWVhci9tb250aC1uYW1lLXNob3J0LmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUNILE1BQU0sQ0FBTixJQUFZLGtCQWFYO0FBYkQsV0FBWSxrQkFBa0I7SUFDNUIsa0NBQVksQ0FBQTtJQUNaLG9DQUFjLENBQUE7SUFDZCx1Q0FBaUIsQ0FBQTtJQUNqQixxQ0FBZSxDQUFBO0lBQ2Ysc0NBQWdCLENBQUE7SUFDaEIsc0NBQWdCLENBQUE7SUFDaEIscUNBQWUsQ0FBQTtJQUNmLHNDQUFnQixDQUFBO0lBQ2hCLG1DQUFhLENBQUE7SUFDYixtQ0FBYSxDQUFBO0lBQ2IsaUNBQVcsQ0FBQTtJQUNYLGtDQUFZLENBQUE7QUFDZCxDQUFDLEVBYlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQWE3QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBAVE9ETyBtb3ZlIHRvIHBpcGUvdHJhbnNsYXRpb25cclxuICogZW51bSB3aXRoIG1vbnRocyBzaG9ydCBuYW1lcy5cclxuICogT3JkZXIgb2YgaXRlbXMgbWF0Y2ggd2l0aCBmaW5hbmNpYWwgeWVhciBtb250aHMgb3JkZXJcclxuICovXHJcbmV4cG9ydCBlbnVtIE1vbnRoTmFtZVNob3J0RW51bSB7XHJcbiAgSlVMWSA9ICdKdWwnLFxyXG4gIEFVR1VTVCA9ICdBdWcnLFxyXG4gIFNFUFRFTUJFUiA9ICdTZXAnLFxyXG4gIE9DVE9CRVIgPSAnT2N0JyxcclxuICBOT1ZFTUJFUiA9ICdOb3YnLFxyXG4gIERFQ0VNQkVSID0gJ0RlYycsXHJcbiAgSkFOVUFSWSA9ICdKYW4nLFxyXG4gIEZFQlJVQVJZID0gJ0ZlYicsXHJcbiAgTUFSQ0ggPSAnTWFyJyxcclxuICBBUFJJTCA9ICdBcHInLFxyXG4gIE1BWSA9ICdNYXknLFxyXG4gIEpVTkUgPSAnSnVuJ1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ /**
2
+ * enum with months indexes.
3
+ * item value match with js Date month index from 0 to 11
4
+ * Order of items match with financial year months order
5
+ */
6
+ export var MonthNumberEnum;
7
+ (function (MonthNumberEnum) {
8
+ MonthNumberEnum[MonthNumberEnum["JULY"] = 6] = "JULY";
9
+ MonthNumberEnum[MonthNumberEnum["AUGUST"] = 7] = "AUGUST";
10
+ MonthNumberEnum[MonthNumberEnum["SEPTEMBER"] = 8] = "SEPTEMBER";
11
+ MonthNumberEnum[MonthNumberEnum["OCTOBER"] = 9] = "OCTOBER";
12
+ MonthNumberEnum[MonthNumberEnum["NOVEMBER"] = 10] = "NOVEMBER";
13
+ MonthNumberEnum[MonthNumberEnum["DECEMBER"] = 11] = "DECEMBER";
14
+ MonthNumberEnum[MonthNumberEnum["JANUARY"] = 0] = "JANUARY";
15
+ MonthNumberEnum[MonthNumberEnum["FEBRUARY"] = 1] = "FEBRUARY";
16
+ MonthNumberEnum[MonthNumberEnum["MARCH"] = 2] = "MARCH";
17
+ MonthNumberEnum[MonthNumberEnum["APRIL"] = 3] = "APRIL";
18
+ MonthNumberEnum[MonthNumberEnum["MAY"] = 4] = "MAY";
19
+ MonthNumberEnum[MonthNumberEnum["JUNE"] = 5] = "JUNE";
20
+ })(MonthNumberEnum || (MonthNumberEnum = {}));
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGgtbnVtYmVyLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL21vbnRoLW51bWJlci5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLENBQU4sSUFBWSxlQWFYO0FBYkQsV0FBWSxlQUFlO0lBQ3pCLHFEQUFRLENBQUE7SUFDUix5REFBVSxDQUFBO0lBQ1YsK0RBQWEsQ0FBQTtJQUNiLDJEQUFXLENBQUE7SUFDWCw4REFBYSxDQUFBO0lBQ2IsOERBQWEsQ0FBQTtJQUNiLDJEQUFXLENBQUE7SUFDWCw2REFBWSxDQUFBO0lBQ1osdURBQVMsQ0FBQTtJQUNULHVEQUFTLENBQUE7SUFDVCxtREFBTyxDQUFBO0lBQ1AscURBQVEsQ0FBQTtBQUNWLENBQUMsRUFiVyxlQUFlLEtBQWYsZUFBZSxRQWExQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBlbnVtIHdpdGggbW9udGhzIGluZGV4ZXMuXHJcbiAqIGl0ZW0gdmFsdWUgbWF0Y2ggd2l0aCBqcyBEYXRlIG1vbnRoIGluZGV4IGZyb20gMCB0byAxMVxyXG4gKiBPcmRlciBvZiBpdGVtcyBtYXRjaCB3aXRoIGZpbmFuY2lhbCB5ZWFyIG1vbnRocyBvcmRlclxyXG4gKi9cclxuZXhwb3J0IGVudW0gTW9udGhOdW1iZXJFbnVtIHtcclxuICBKVUxZID0gNixcclxuICBBVUdVU1QgPSA3LFxyXG4gIFNFUFRFTUJFUiA9IDgsXHJcbiAgT0NUT0JFUiA9IDksXHJcbiAgTk9WRU1CRVIgPSAxMCxcclxuICBERUNFTUJFUiA9IDExLFxyXG4gIEpBTlVBUlkgPSAwLFxyXG4gIEZFQlJVQVJZID0gMSxcclxuICBNQVJDSCA9IDIsXHJcbiAgQVBSSUwgPSAzLFxyXG4gIE1BWSA9IDQsXHJcbiAgSlVORSA9IDVcclxufVxyXG4iXX0=
@@ -0,0 +1,2 @@
1
+ export const MONTHS = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', 'Jan'];
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9udGhzLmNvbnN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9maW5hbmNpYWwteWVhci9tb250aHMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFhLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgTU9OVEhTOiBzdHJpbmdbXSA9IFsnSmFuJywgJ0ZlYicsICdNYXInLCAnQXByJywgJ01heScsICdKdW4nLCAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnLCAnSmFuJ107XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { __decorate } from "tslib";
2
+ import { Firm as FirmBase } from '../../db/Models/firm';
3
+ import { Phone } from '../phone/phone';
4
+ import { Address } from '../address/address';
5
+ import { User } from '../user/user';
6
+ import { Type } from 'class-transformer';
7
+ export class Firm extends FirmBase {
8
+ /**
9
+ * get firm photo link
10
+ */
11
+ getPhoto() {
12
+ return this.photo;
13
+ }
14
+ /**
15
+ * get firm initials
16
+ */
17
+ getInitials() {
18
+ return `${this.name[0].toUpperCase()}${this.name[1]}`;
19
+ }
20
+ }
21
+ __decorate([
22
+ Type(() => User)
23
+ ], Firm.prototype, "owner", void 0);
24
+ __decorate([
25
+ Type(() => Address)
26
+ ], Firm.prototype, "address", void 0);
27
+ __decorate([
28
+ Type(() => Phone)
29
+ ], Firm.prototype, "phone", void 0);
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvZmlybS9maXJtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxJQUFJLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDN0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHekMsTUFBTSxPQUFPLElBQUssU0FBUSxRQUFRO0lBVWhDOztPQUVHO0lBQ0gsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ3hELENBQUM7Q0FDRjtBQXJCQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7bUNBQ0w7QUFHWjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7cUNBQ0g7QUFHakI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO21DQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlybSBhcyBGaXJtQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9maXJtJztcclxuaW1wb3J0IHsgUGhvbmUgfSBmcm9tICcuLi9waG9uZS9waG9uZSc7XHJcbmltcG9ydCB7IEFkZHJlc3MgfSBmcm9tICcuLi9hZGRyZXNzL2FkZHJlc3MnO1xyXG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcclxuaW1wb3J0IHsgUGhvdG9hYmxlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9waG90b2FibGUnO1xyXG5cclxuZXhwb3J0IGNsYXNzIEZpcm0gZXh0ZW5kcyBGaXJtQmFzZSBpbXBsZW1lbnRzIFBob3RvYWJsZSB7XHJcbiAgQFR5cGUoKCkgPT4gVXNlcilcclxuICBvd25lcjogVXNlcjtcclxuXHJcbiAgQFR5cGUoKCkgPT4gQWRkcmVzcylcclxuICBhZGRyZXNzOiBBZGRyZXNzO1xyXG5cclxuICBAVHlwZSgoKSA9PiBQaG9uZSlcclxuICBwaG9uZTogUGhvbmU7XHJcblxyXG4gIC8qKlxyXG4gICAqIGdldCBmaXJtIHBob3RvIGxpbmtcclxuICAgKi9cclxuICBnZXRQaG90bygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIHRoaXMucGhvdG87XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBnZXQgZmlybSBpbml0aWFsc1xyXG4gICAqL1xyXG4gIGdldEluaXRpYWxzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7dGhpcy5uYW1lWzBdLnRvVXBwZXJDYXNlKCl9JHt0aGlzLm5hbWVbMV19YDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,9 @@
1
+ import { __decorate } from "tslib";
2
+ import { Type } from 'class-transformer';
3
+ // Todo extend from the base model when the backend is ready TT-555
4
+ export class IncomePosition {
5
+ }
6
+ __decorate([
7
+ Type(() => Date)
8
+ ], IncomePosition.prototype, "date", void 0);
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXBvc2l0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtcG9zaXRpb24vaW5jb21lLXBvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsbUVBQW1FO0FBQ25FLE1BQU0sT0FBTyxjQUFjO0NBUzFCO0FBUEM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuLy8gVG9kbyBleHRlbmQgZnJvbSB0aGUgYmFzZSBtb2RlbCB3aGVuIHRoZSBiYWNrZW5kIGlzIHJlYWR5IFRULTU1NVxuZXhwb3J0IGNsYXNzIEluY29tZVBvc2l0aW9uIHtcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZTogRGF0ZTtcbiAgaW5jb21lOiBudW1iZXI7XG4gIGV4cGVuc2VzOiBudW1iZXI7XG4gIG90aGVySW5jb21lOiBudW1iZXI7XG4gIG90aGVyRGVkdWN0aW9uczogbnVtYmVyO1xuICBpbmNvbWVGb3JlY2FzdDogbnVtYmVyO1xuICBpbmNvbWVTb3VyY2VGb3JlY2FzdDogbnVtYmVyO1xufVxuIl19
@@ -0,0 +1,45 @@
1
+ import { FinancialYear } from '../financial-year/financial-year';
2
+ import { MonthNameShortEnum } from '../financial-year/month-name-short.enum';
3
+ import { MonthNumberEnum } from '../financial-year/month-number.enum';
4
+ /**
5
+ * Income sources chart data
6
+ */
7
+ export class IncomeSourceChartData {
8
+ constructor(forecastedIncomeAmount, transactions) {
9
+ this.forecastedIncomeAmount = forecastedIncomeAmount;
10
+ this.transactions = transactions;
11
+ }
12
+ /**
13
+ * Get prepared data for income sources chart
14
+ */
15
+ get() {
16
+ const chartData = [{
17
+ id: 'actualIncome',
18
+ name: 'Actual Income',
19
+ data: [],
20
+ // display future actual incomes with dash line and past actual incomes with solid line
21
+ zones: [{
22
+ // line style after current month
23
+ value: new FinancialYear().getMonthDate(new Date().getMonth()).getTime(),
24
+ dashStyle: 'Solid'
25
+ }, {
26
+ // default line style
27
+ dashStyle: 'Dash'
28
+ }]
29
+ }, {
30
+ id: 'forecastedIncome',
31
+ name: 'Forecasted Income',
32
+ data: [],
33
+ }];
34
+ for (const key in MonthNameShortEnum) {
35
+ if (MonthNameShortEnum.hasOwnProperty(key)) {
36
+ // transaction collection for provided month
37
+ const monthTransactionCollection = this.transactions.getByMonth(+MonthNumberEnum[key]);
38
+ chartData[0].data.push([new FinancialYear().getMonthDate(+MonthNumberEnum[key]).getTime(), monthTransactionCollection.amount]);
39
+ chartData[1].data.push([new FinancialYear().getMonthDate(+MonthNumberEnum[key]).getTime(), this.forecastedIncomeAmount / 12]);
40
+ }
41
+ }
42
+ return chartData;
43
+ }
44
+ }
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS1jaGFydC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtY2hhcnQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUNFLHNCQUE4QixFQUM5QixZQUFtQztRQUVuQyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsc0JBQXNCLENBQUM7UUFDckQsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRztRQUNELE1BQU0sU0FBUyxHQUFpQixDQUFDO2dCQUMvQixFQUFFLEVBQUUsY0FBYztnQkFDbEIsSUFBSSxFQUFFLGVBQWU7Z0JBQ3JCLElBQUksRUFBRSxFQUFFO2dCQUNSLHVGQUF1RjtnQkFDdkYsS0FBSyxFQUFFLENBQUM7d0JBQ04saUNBQWlDO3dCQUNqQyxLQUFLLEVBQUUsSUFBSSxhQUFhLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTt3QkFDeEUsU0FBUyxFQUFFLE9BQU87cUJBQ25CLEVBQUU7d0JBQ0QscUJBQXFCO3dCQUNyQixTQUFTLEVBQUUsTUFBTTtxQkFDbEIsQ0FBQzthQUNILEVBQUU7Z0JBQ0QsRUFBRSxFQUFFLGtCQUFrQjtnQkFDdEIsSUFBSSxFQUFFLG1CQUFtQjtnQkFDekIsSUFBSSxFQUFFLEVBQUU7YUFDVCxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sR0FBRyxJQUFJLGtCQUFrQixFQUFFO1lBQ3BDLElBQUksa0JBQWtCLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQyw0Q0FBNEM7Z0JBQzVDLE1BQU0sMEJBQTBCLEdBQTBCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBRTlHLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSwwQkFBMEIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUMvSCxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDL0g7U0FDRjtRQUVELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL3RyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgSUNoYXJ0RGF0YSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY2hhcnQtZGF0YS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IE1vbnRoTmFtZVNob3J0RW51bSB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL21vbnRoLW5hbWUtc2hvcnQuZW51bSc7XG5pbXBvcnQgeyBNb250aE51bWJlckVudW0gfSBmcm9tICcuLi9maW5hbmNpYWwteWVhci9tb250aC1udW1iZXIuZW51bSc7XG5cbi8qKlxuICogSW5jb21lIHNvdXJjZXMgY2hhcnQgZGF0YVxuICovXG5leHBvcnQgY2xhc3MgSW5jb21lU291cmNlQ2hhcnREYXRhIHtcbiAgcHJpdmF0ZSBmb3JlY2FzdGVkSW5jb21lQW1vdW50OiBudW1iZXI7XG4gIHByaXZhdGUgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZm9yZWNhc3RlZEluY29tZUFtb3VudDogbnVtYmVyLFxuICAgIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICApIHtcbiAgICB0aGlzLmZvcmVjYXN0ZWRJbmNvbWVBbW91bnQgPSBmb3JlY2FzdGVkSW5jb21lQW1vdW50O1xuICAgIHRoaXMudHJhbnNhY3Rpb25zID0gdHJhbnNhY3Rpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBwcmVwYXJlZCBkYXRhIGZvciBpbmNvbWUgc291cmNlcyBjaGFydFxuICAgKi9cbiAgZ2V0KCk6IElDaGFydERhdGFbXSB7XG4gICAgY29uc3QgY2hhcnREYXRhOiBJQ2hhcnREYXRhW10gPSBbe1xuICAgICAgaWQ6ICdhY3R1YWxJbmNvbWUnLFxuICAgICAgbmFtZTogJ0FjdHVhbCBJbmNvbWUnLFxuICAgICAgZGF0YTogW10sXG4gICAgICAvLyBkaXNwbGF5IGZ1dHVyZSBhY3R1YWwgaW5jb21lcyB3aXRoIGRhc2ggbGluZSBhbmQgcGFzdCBhY3R1YWwgaW5jb21lcyB3aXRoIHNvbGlkIGxpbmVcbiAgICAgIHpvbmVzOiBbe1xuICAgICAgICAvLyBsaW5lIHN0eWxlIGFmdGVyIGN1cnJlbnQgbW9udGhcbiAgICAgICAgdmFsdWU6IG5ldyBGaW5hbmNpYWxZZWFyKCkuZ2V0TW9udGhEYXRlKG5ldyBEYXRlKCkuZ2V0TW9udGgoKSkuZ2V0VGltZSgpLFxuICAgICAgICBkYXNoU3R5bGU6ICdTb2xpZCdcbiAgICAgIH0sIHtcbiAgICAgICAgLy8gZGVmYXVsdCBsaW5lIHN0eWxlXG4gICAgICAgIGRhc2hTdHlsZTogJ0Rhc2gnXG4gICAgICB9XVxuICAgIH0sIHtcbiAgICAgIGlkOiAnZm9yZWNhc3RlZEluY29tZScsXG4gICAgICBuYW1lOiAnRm9yZWNhc3RlZCBJbmNvbWUnLFxuICAgICAgZGF0YTogW10sXG4gICAgfV07XG5cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBNb250aE5hbWVTaG9ydEVudW0pIHtcbiAgICAgIGlmIChNb250aE5hbWVTaG9ydEVudW0uaGFzT3duUHJvcGVydHkoa2V5KSkge1xuICAgICAgICAvLyB0cmFuc2FjdGlvbiBjb2xsZWN0aW9uIGZvciBwcm92aWRlZCBtb250aFxuICAgICAgICBjb25zdCBtb250aFRyYW5zYWN0aW9uQ29sbGVjdGlvbjogVHJhbnNhY3Rpb25Db2xsZWN0aW9uID0gdGhpcy50cmFuc2FjdGlvbnMuZ2V0QnlNb250aCgrTW9udGhOdW1iZXJFbnVtW2tleV0pO1xuXG4gICAgICAgIGNoYXJ0RGF0YVswXS5kYXRhLnB1c2goW25ldyBGaW5hbmNpYWxZZWFyKCkuZ2V0TW9udGhEYXRlKCtNb250aE51bWJlckVudW1ba2V5XSkuZ2V0VGltZSgpLCBtb250aFRyYW5zYWN0aW9uQ29sbGVjdGlvbi5hbW91bnRdKTtcbiAgICAgICAgY2hhcnREYXRhWzFdLmRhdGEucHVzaChbbmV3IEZpbmFuY2lhbFllYXIoKS5nZXRNb250aERhdGUoK01vbnRoTnVtYmVyRW51bVtrZXldKS5nZXRUaW1lKCksIHRoaXMuZm9yZWNhc3RlZEluY29tZUFtb3VudCAvIDEyXSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNoYXJ0RGF0YTtcbiAgfVxufVxuIl19
@@ -0,0 +1,31 @@
1
+ import { __decorate } from "tslib";
2
+ import { IncomeSourceForecast as IncomeSourceForecastBase } from '../../db/Models/income-source-forecast';
3
+ import { SalaryForecastFrequencyEnum } from '../../db/Enums/salary-forecast-frequency.enum';
4
+ import { Type } from 'class-transformer';
5
+ import { IncomeSourceType } from './income-source-type';
6
+ import { IncomeSource } from './income-source';
7
+ export class IncomeSourceForecast extends IncomeSourceForecastBase {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.paygIncome = 0;
11
+ this.frequency = SalaryForecastFrequencyEnum.ANNUAL;
12
+ this.isTaxFree = false;
13
+ }
14
+ /**
15
+ * Sometimes Income source has Salary & Income source forecasts,
16
+ * and we need these fields to work with Income source forecasts like with Salary Forecasts
17
+ */
18
+ get netPay() {
19
+ return this.amount;
20
+ }
21
+ get grossAmount() {
22
+ return this.amount + this.tax + this.taxInstalments + this.frankingCredits;
23
+ }
24
+ }
25
+ __decorate([
26
+ Type(() => IncomeSourceType)
27
+ ], IncomeSourceForecast.prototype, "incomeSourceType", void 0);
28
+ __decorate([
29
+ Type(() => IncomeSource)
30
+ ], IncomeSourceForecast.prototype, "incomeSource", void 0);
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS1mb3JlY2FzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLWZvcmVjYXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsb0JBQW9CLElBQUksd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUU1RixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE1BQU0sT0FBTyxvQkFBcUIsU0FBUSx3QkFBd0I7SUFBbEU7O1FBT0UsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUV2QixjQUFTLEdBQWdDLDJCQUEyQixDQUFDLE1BQU0sQ0FBQztRQUM1RSxjQUFTLEdBQVksS0FBSyxDQUFDO0lBZ0I3QixDQUFDO0lBWEM7OztPQUdHO0lBQ0gsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDN0UsQ0FBQztDQUNGO0FBdEJDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDOzhEQUNNO0FBU25DO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzswREFDRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluY29tZVNvdXJjZUZvcmVjYXN0IGFzIEluY29tZVNvdXJjZUZvcmVjYXN0QmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9pbmNvbWUtc291cmNlLWZvcmVjYXN0JztcbmltcG9ydCB7IFNhbGFyeUZvcmVjYXN0RnJlcXVlbmN5RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3NhbGFyeS1mb3JlY2FzdC1mcmVxdWVuY3kuZW51bSc7XG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBJU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NhbGFyeS1mb3JlY2FzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZSB9IGZyb20gJy4vaW5jb21lLXNvdXJjZS10eXBlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4vaW5jb21lLXNvdXJjZSc7XG5cbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VGb3JlY2FzdCBleHRlbmRzIEluY29tZVNvdXJjZUZvcmVjYXN0QmFzZSBpbXBsZW1lbnRzIElJbmNvbWVTb3VyY2VGb3JlY2FzdCwgSVNhbGFyeUZvcmVjYXN0IHtcbiAgaWQ6IG51bWJlcjtcblxuICBAVHlwZSgoKSA9PiBJbmNvbWVTb3VyY2VUeXBlKVxuICBpbmNvbWVTb3VyY2VUeXBlOiBJbmNvbWVTb3VyY2VUeXBlO1xuXG4gIHRheDogbnVtYmVyO1xuICBwYXlnSW5jb21lOiBudW1iZXIgPSAwO1xuICBmaW5hbmNpYWxZZWFyOiBudW1iZXI7XG4gIGZyZXF1ZW5jeTogU2FsYXJ5Rm9yZWNhc3RGcmVxdWVuY3lFbnVtID0gU2FsYXJ5Rm9yZWNhc3RGcmVxdWVuY3lFbnVtLkFOTlVBTDtcbiAgaXNUYXhGcmVlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQFR5cGUoKCkgPT4gSW5jb21lU291cmNlKVxuICBpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZTtcblxuICAvKipcbiAgICogU29tZXRpbWVzIEluY29tZSBzb3VyY2UgaGFzIFNhbGFyeSAmIEluY29tZSBzb3VyY2UgZm9yZWNhc3RzLFxuICAgKiBhbmQgd2UgbmVlZCB0aGVzZSBmaWVsZHMgdG8gd29yayB3aXRoIEluY29tZSBzb3VyY2UgZm9yZWNhc3RzIGxpa2Ugd2l0aCBTYWxhcnkgRm9yZWNhc3RzXG4gICAqL1xuICBnZXQgbmV0UGF5KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuYW1vdW50O1xuICB9XG5cbiAgZ2V0IGdyb3NzQW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuYW1vdW50ICsgdGhpcy50YXggKyB0aGlzLnRheEluc3RhbG1lbnRzICsgdGhpcy5mcmFua2luZ0NyZWRpdHM7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { IncomeSourceType as IncomeSourceTypeBase } from '../../db/Models/income-source-type';
2
+ import { IncomeSourceTypeListSalaryEnum } from '../../db/Enums/income-source-type-list-salary.enum';
3
+ import { IncomeSourceTypeListWorkEnum } from '../../db/Enums/income-source-type-list-work.enum';
4
+ import { IncomeSourceTypeListOtherEnum } from '../../db/Enums/income-source-type-list-other.enum';
5
+ import { IncomeSourceTypeEnum } from '../../db/Enums/income-source-type.enum';
6
+ export class IncomeSourceType extends IncomeSourceTypeBase {
7
+ isSalary() {
8
+ return !!IncomeSourceTypeListSalaryEnum[this.id];
9
+ }
10
+ isWork() {
11
+ return !!IncomeSourceTypeListWorkEnum[this.id];
12
+ }
13
+ isOther() {
14
+ return !!IncomeSourceTypeListOtherEnum[this.id];
15
+ }
16
+ get type() {
17
+ switch (true) {
18
+ case this.isSalary():
19
+ return IncomeSourceTypeEnum.SALARY;
20
+ case this.isWork():
21
+ return IncomeSourceTypeEnum.WORK;
22
+ default:
23
+ return IncomeSourceTypeEnum.OTHER;
24
+ }
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS10eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUNwRyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNoRyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUU5RSxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsb0JBQW9CO0lBQ3hELFFBQVE7UUFDTixPQUFPLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELE1BQU07UUFDSixPQUFPLENBQUMsQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLENBQUMsQ0FBQyw2QkFBNkIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNsQixPQUFPLG9CQUFvQixDQUFDLE1BQU0sQ0FBQztZQUNyQyxLQUFLLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hCLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDO1lBQ25DO2dCQUNFLE9BQU8sb0JBQW9CLENBQUMsS0FBSyxDQUFDO1NBQ3JDO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZSBhcyBJbmNvbWVTb3VyY2VUeXBlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9pbmNvbWUtc291cmNlLXR5cGUnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUxpc3RTYWxhcnlFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLWxpc3Qtc2FsYXJ5LmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LXdvcmsuZW51bSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlTGlzdE90aGVyRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS1saXN0LW90aGVyLmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9pbmNvbWUtc291cmNlLXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VUeXBlIGV4dGVuZHMgSW5jb21lU291cmNlVHlwZUJhc2Uge1xuICBpc1NhbGFyeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISFJbmNvbWVTb3VyY2VUeXBlTGlzdFNhbGFyeUVudW1bdGhpcy5pZF07XG4gIH1cblxuICBpc1dvcmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhSW5jb21lU291cmNlVHlwZUxpc3RXb3JrRW51bVt0aGlzLmlkXTtcbiAgfVxuXG4gIGlzT3RoZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhSW5jb21lU291cmNlVHlwZUxpc3RPdGhlckVudW1bdGhpcy5pZF07XG4gIH1cblxuICBnZXQgdHlwZSgpOiBJbmNvbWVTb3VyY2VUeXBlRW51bSB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNTYWxhcnkoKTpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLlNBTEFSWTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmsoKTpcbiAgICAgICAgcmV0dXJuIEluY29tZVNvdXJjZVR5cGVFbnVtLldPUks7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gSW5jb21lU291cmNlVHlwZUVudW0uT1RIRVI7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,51 @@
1
+ import { __decorate } from "tslib";
2
+ import { IncomeSource as IncomeSourceBase } from '../../db/Models/income-source';
3
+ import { IncomeSourceTypeEnum } from '../../db/Enums/income-source-type.enum';
4
+ import { Type } from 'class-transformer';
5
+ import { SalaryForecast } from './salary-forecast';
6
+ import { IncomeSourceForecast } from './income-source-forecast';
7
+ import { FinancialYear } from '../financial-year/financial-year';
8
+ export class IncomeSource extends IncomeSourceBase {
9
+ isSalaryIncome() {
10
+ return this.type === IncomeSourceTypeEnum.SALARY;
11
+ }
12
+ isWorkIncome() {
13
+ return this.type === IncomeSourceTypeEnum.WORK;
14
+ }
15
+ isOtherIncome() {
16
+ return this.type === IncomeSourceTypeEnum.OTHER;
17
+ }
18
+ /**
19
+ * Get salary and other income forecasts
20
+ */
21
+ get forecasts() {
22
+ return [...this.salaryForecasts, ...this.incomeSourceForecasts];
23
+ }
24
+ /**
25
+ * Get actual (1st from the list) forecast
26
+ */
27
+ get actualForecast() {
28
+ return this.forecasts[0];
29
+ }
30
+ /**
31
+ * Check if user was working in month taken by the index
32
+ * @param monthIndex by which month should be taken
33
+ */
34
+ isWorkedInMonth(monthIndex) {
35
+ const monthDate = new FinancialYear().getMonthDate(monthIndex);
36
+ return (!this.dateFrom || monthDate >= this.dateFrom) && (!this.dateTo || monthDate < this.dateTo);
37
+ }
38
+ }
39
+ __decorate([
40
+ Type(() => SalaryForecast)
41
+ ], IncomeSource.prototype, "salaryForecasts", void 0);
42
+ __decorate([
43
+ Type(() => IncomeSourceForecast)
44
+ ], IncomeSource.prototype, "incomeSourceForecasts", void 0);
45
+ __decorate([
46
+ Type(() => Date)
47
+ ], IncomeSource.prototype, "dateFrom", void 0);
48
+ __decorate([
49
+ Type(() => Date)
50
+ ], IncomeSource.prototype, "dateTo", void 0);
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsWUFBWSxJQUFJLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFHOUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFakUsTUFBTSxPQUFPLFlBQWEsU0FBUSxnQkFBZ0I7SUFhaEQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxNQUFNLENBQUM7SUFDbkQsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsSUFBSSxDQUFDO0lBQ2pELENBQUM7SUFFRCxhQUFhO1FBQ1gsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLEtBQUssQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFNBQVM7UUFDWCxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsZUFBZSxDQUFDLFVBQWtCO1FBQ2hDLE1BQU0sU0FBUyxHQUFTLElBQUksYUFBYSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3JFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JHLENBQUM7Q0FDRjtBQTdDQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7cURBQ087QUFHbEM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsb0JBQW9CLENBQUM7MkRBQ2E7QUFHOUM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzhDQUNGO0FBR2Y7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzRDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5jb21lU291cmNlIGFzIEluY29tZVNvdXJjZUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvaW5jb21lLXNvdXJjZSc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xyXG5pbXBvcnQgeyBJU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NhbGFyeS1mb3JlY2FzdC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcclxuaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuL3NhbGFyeS1mb3JlY2FzdCc7XHJcbmltcG9ydCB7IEluY29tZVNvdXJjZUZvcmVjYXN0IH0gZnJvbSAnLi9pbmNvbWUtc291cmNlLWZvcmVjYXN0JztcclxuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcclxuXHJcbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2UgZXh0ZW5kcyBJbmNvbWVTb3VyY2VCYXNlIHtcclxuICBAVHlwZSgoKSA9PiBTYWxhcnlGb3JlY2FzdClcclxuICBzYWxhcnlGb3JlY2FzdHM6IFNhbGFyeUZvcmVjYXN0W107XHJcblxyXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZUZvcmVjYXN0KVxyXG4gIGluY29tZVNvdXJjZUZvcmVjYXN0czogSW5jb21lU291cmNlRm9yZWNhc3RbXTtcclxuXHJcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcclxuICBkYXRlRnJvbTogRGF0ZTtcclxuXHJcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcclxuICBkYXRlVG86IERhdGU7XHJcblxyXG4gIGlzU2FsYXJ5SW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSW5jb21lU291cmNlVHlwZUVudW0uU0FMQVJZO1xyXG4gIH1cclxuXHJcbiAgaXNXb3JrSW5jb21lKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gSW5jb21lU291cmNlVHlwZUVudW0uV09SSztcclxuICB9XHJcblxyXG4gIGlzT3RoZXJJbmNvbWUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBJbmNvbWVTb3VyY2VUeXBlRW51bS5PVEhFUjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBzYWxhcnkgYW5kIG90aGVyIGluY29tZSBmb3JlY2FzdHNcclxuICAgKi9cclxuICBnZXQgZm9yZWNhc3RzKCk6IElTYWxhcnlGb3JlY2FzdFtdIHtcclxuICAgIHJldHVybiBbLi4udGhpcy5zYWxhcnlGb3JlY2FzdHMsIC4uLnRoaXMuaW5jb21lU291cmNlRm9yZWNhc3RzXTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhY3R1YWwgKDFzdCBmcm9tIHRoZSBsaXN0KSBmb3JlY2FzdFxyXG4gICAqL1xyXG4gIGdldCBhY3R1YWxGb3JlY2FzdCgpOiBJSW5jb21lU291cmNlRm9yZWNhc3Qge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9yZWNhc3RzWzBdO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgdXNlciB3YXMgd29ya2luZyBpbiBtb250aCB0YWtlbiBieSB0aGUgaW5kZXhcclxuICAgKiBAcGFyYW0gbW9udGhJbmRleCBieSB3aGljaCBtb250aCBzaG91bGQgYmUgdGFrZW5cclxuICAgKi9cclxuICBpc1dvcmtlZEluTW9udGgobW9udGhJbmRleDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBtb250aERhdGU6IERhdGUgPSBuZXcgRmluYW5jaWFsWWVhcigpLmdldE1vbnRoRGF0ZShtb250aEluZGV4KTtcclxuICAgIHJldHVybiAoIXRoaXMuZGF0ZUZyb20gfHwgbW9udGhEYXRlID49IHRoaXMuZGF0ZUZyb20pICYmICghdGhpcy5kYXRlVG8gfHwgbW9udGhEYXRlIDwgdGhpcy5kYXRlVG8pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,14 @@
1
+ import { __decorate } from "tslib";
2
+ import { SalaryForecast as SalaryForecastBase } from '../../db/Models/salary-forecast';
3
+ import { IncomeSource } from './income-source';
4
+ import { Expose, Transform, Type } from 'class-transformer';
5
+ export class SalaryForecast extends SalaryForecastBase {
6
+ }
7
+ __decorate([
8
+ Transform(({ obj }) => obj.netPay + obj.tax),
9
+ Expose()
10
+ ], SalaryForecast.prototype, "grossAmount", void 0);
11
+ __decorate([
12
+ Type(() => IncomeSource)
13
+ ], SalaryForecast.prototype, "incomeSource", void 0);
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsYXJ5LWZvcmVjYXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9pbmNvbWUtc291cmNlL3NhbGFyeS1mb3JlY2FzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBR3ZGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU1RCxNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtDQWVyRDtBQVhXO0lBRFQsU0FBUyxDQUFDLENBQUMsRUFBQyxHQUFHLEVBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDO0lBQzFDLE1BQU0sRUFBRTttREFBcUI7QUFVOUI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO29EQUNFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3QgYXMgU2FsYXJ5Rm9yZWNhc3RCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3NhbGFyeS1mb3JlY2FzdCc7XG5pbXBvcnQgeyBJU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NhbGFyeS1mb3JlY2FzdC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3RGcmVxdWVuY3lFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvc2FsYXJ5LWZvcmVjYXN0LWZyZXF1ZW5jeS5lbnVtJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4vaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBJSW5jb21lU291cmNlRm9yZWNhc3QgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2luY29tZS1zb3VyY2UtZm9yZWNhc3QuaW50ZXJmYWNlJztcbmltcG9ydCB7IEV4cG9zZSwgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5leHBvcnQgY2xhc3MgU2FsYXJ5Rm9yZWNhc3QgZXh0ZW5kcyBTYWxhcnlGb3JlY2FzdEJhc2UgaW1wbGVtZW50cyBJSW5jb21lU291cmNlRm9yZWNhc3QsIElTYWxhcnlGb3JlY2FzdCB7XG4gIGlkOiBudW1iZXI7XG5cbiAgQFRyYW5zZm9ybSgoe29ian0pID0+IG9iai5uZXRQYXkgKyBvYmoudGF4KVxuICBARXhwb3NlKCkgZ3Jvc3NBbW91bnQ6IG51bWJlcjtcblxuICB0YXg6IG51bWJlcjtcbiAgbmV0UGF5OiBudW1iZXI7XG4gIHBheWdJbmNvbWU6IG51bWJlcjtcbiAgZmluYW5jaWFsWWVhcjogbnVtYmVyO1xuICBmcmVxdWVuY3k6IFNhbGFyeUZvcmVjYXN0RnJlcXVlbmN5RW51bTtcbiAgaXNUYXhGcmVlOiBib29sZWFuO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG59XG4iXX0=
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Enum with maximum number of payments, depending on the frequency
3
+ */
4
+ export var LoanMaxNumberOfPaymentsEnum;
5
+ (function (LoanMaxNumberOfPaymentsEnum) {
6
+ LoanMaxNumberOfPaymentsEnum[LoanMaxNumberOfPaymentsEnum["WEEKLY"] = 260] = "WEEKLY";
7
+ LoanMaxNumberOfPaymentsEnum[LoanMaxNumberOfPaymentsEnum["FORTNIGHTLY"] = 130] = "FORTNIGHTLY";
8
+ LoanMaxNumberOfPaymentsEnum[LoanMaxNumberOfPaymentsEnum["MONTHLY"] = 60] = "MONTHLY";
9
+ })(LoanMaxNumberOfPaymentsEnum || (LoanMaxNumberOfPaymentsEnum = {}));
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi1tYXgtbnVtYmVyLW9mLXBheW1lbnRzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvYW4vbG9hbi1tYXgtbnVtYmVyLW9mLXBheW1lbnRzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSwyQkFJWDtBQUpELFdBQVksMkJBQTJCO0lBQ3JDLG1GQUFZLENBQUE7SUFDWiw2RkFBaUIsQ0FBQTtJQUNqQixvRkFBWSxDQUFBO0FBQ2QsQ0FBQyxFQUpXLDJCQUEyQixLQUEzQiwyQkFBMkIsUUFJdEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEVudW0gd2l0aCBtYXhpbXVtIG51bWJlciBvZiBwYXltZW50cywgZGVwZW5kaW5nIG9uIHRoZSBmcmVxdWVuY3lcbiAqL1xuZXhwb3J0IGVudW0gTG9hbk1heE51bWJlck9mUGF5bWVudHNFbnVtIHtcbiAgV0VFS0xZID0gMjYwLFxuICBGT1JUTklHSFRMWSA9IDEzMCxcbiAgTU9OVEhMWSA9IDYwLFxufVxuIl19
@@ -0,0 +1,12 @@
1
+ import { __decorate } from "tslib";
2
+ import { Type } from 'class-transformer';
3
+ // @Todo no base model from backend list
4
+ /**
5
+ * Loan payment class
6
+ */
7
+ export class LoanPayment {
8
+ }
9
+ __decorate([
10
+ Type(() => Date)
11
+ ], LoanPayment.prototype, "date", void 0);
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi1wYXltZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9sb2FuL2xvYW4tcGF5bWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLHdDQUF3QztBQUN4Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxXQUFXO0NBVXZCO0FBUkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNOIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuLy8gQFRvZG8gbm8gYmFzZSBtb2RlbCBmcm9tIGJhY2tlbmQgbGlzdFxuLyoqXG4gKiBMb2FuIHBheW1lbnQgY2xhc3NcbiAqL1xuZXhwb3J0IGNsYXNzIExvYW5QYXltZW50IHtcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZTogRGF0ZTtcbiAgaW50ZXJlc3RBY2NydWVkOiBudW1iZXI7XG4gIGludGVyZXN0QmFsYW5jZTogbnVtYmVyO1xuICBudW1iZXI6IG51bWJlcjtcbiAgcGF5bWVudER1ZTogbnVtYmVyO1xuICBwcmluY2lwYWxCYWxhbmNlOiBudW1iZXI7XG4gIHByaW5jaXBhbFBhaWQ6IG51bWJlcjtcbiAgdG90YWxPd2VkOiBudW1iZXI7XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ import { LoanPayout as LoanPayoutBase } from '../../db/Models/loan-payout';
2
+ import { LoanPayoutTypeEnum } from '../../db/Enums/loan-payout-type.enum';
3
+ export class LoanPayout extends LoanPayoutBase {
4
+ /**
5
+ * Check if payout type is refinance
6
+ */
7
+ isRefinance() {
8
+ return this.type === LoanPayoutTypeEnum.REFINANCE;
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi1wYXlvdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvYW4vbG9hbi1wYXlvdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsSUFBSSxjQUFjLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUxRSxNQUFNLE9BQU8sVUFBVyxTQUFRLGNBQWM7SUFHNUM7O09BRUc7SUFDSCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGtCQUFrQixDQUFDLFNBQVMsQ0FBQztJQUNwRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2FuUGF5b3V0IGFzIExvYW5QYXlvdXRCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL2xvYW4tcGF5b3V0JztcbmltcG9ydCB7IExvYW5QYXlvdXRUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2xvYW4tcGF5b3V0LXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBMb2FuUGF5b3V0IGV4dGVuZHMgTG9hblBheW91dEJhc2Uge1xuICB0eXBlOiBMb2FuUGF5b3V0VHlwZUVudW07XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHBheW91dCB0eXBlIGlzIHJlZmluYW5jZVxuICAgKi9cbiAgaXNSZWZpbmFuY2UoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gTG9hblBheW91dFR5cGVFbnVtLlJFRklOQU5DRTtcbiAgfVxufVxuIl19
@@ -0,0 +1,39 @@
1
+ import { __decorate } from "tslib";
2
+ import { Loan as LoanBase } from '../../db/Models/loan';
3
+ import { LoanRepaymentTypeEnum } from '../../db/Enums/loan-repayment-type.enum';
4
+ import { LoanVehicleTypeEnum } from '../../db/Enums/loan-vehicle-type.enum';
5
+ import { Type } from 'class-transformer';
6
+ import { LoanPayment } from './loan-payment';
7
+ import { LoanPayout } from './loan-payout';
8
+ import { FinancialYear } from '../financial-year/financial-year';
9
+ import last from 'lodash/last';
10
+ export class Loan extends LoanBase {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.repaymentType = LoanRepaymentTypeEnum.PRINCIPAL_AND_INTEREST;
14
+ }
15
+ /**
16
+ * Check if loan type is related to LoanVehicleTypeEnum
17
+ */
18
+ isVehicle() {
19
+ return this.type in LoanVehicleTypeEnum;
20
+ }
21
+ /**
22
+ * Get the last payment for passed financial year
23
+ * @param year financial year for filter
24
+ */
25
+ getLastPaymentByYear(year) {
26
+ const finYear = new FinancialYear(new Date(year.toString()));
27
+ return last(this.payments.filter((payment) => payment.date > finYear.startDate && payment.date < finYear.endDate));
28
+ }
29
+ }
30
+ __decorate([
31
+ Type(() => LoanPayment)
32
+ ], Loan.prototype, "payments", void 0);
33
+ __decorate([
34
+ Type(() => Date)
35
+ ], Loan.prototype, "commencementDate", void 0);
36
+ __decorate([
37
+ Type(() => LoanPayout)
38
+ ], Loan.prototype, "payout", void 0);
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvbG9hbi9sb2FuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxJQUFJLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBRS9CLE1BQU0sT0FBTyxJQUFLLFNBQVEsUUFBUTtJQUFsQzs7UUFVRSxrQkFBYSxHQUEwQixxQkFBcUIsQ0FBQyxzQkFBc0IsQ0FBQztJQWtCdEYsQ0FBQztJQWZDOztPQUVHO0lBQ0gsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxtQkFBbUIsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9CLENBQUMsSUFBWTtRQUMvQixNQUFNLE9BQU8sR0FBa0IsSUFBSSxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1RSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQW9CLEVBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzNJLENBQUM7Q0FDRjtBQTFCQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7c0NBQ0E7QUFHeEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzhDQUNNO0FBR3ZCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQztvQ0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvYW4gYXMgTG9hbkJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvbG9hbic7XG5pbXBvcnQgeyBMb2FuUmVwYXltZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9sb2FuLXJlcGF5bWVudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgTG9hblZlaGljbGVUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2xvYW4tdmVoaWNsZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IExvYW5QYXltZW50IH0gZnJvbSAnLi9sb2FuLXBheW1lbnQnO1xuaW1wb3J0IHsgTG9hblBheW91dCB9IGZyb20gJy4vbG9hbi1wYXlvdXQnO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCBsYXN0IGZyb20gJ2xvZGFzaC9sYXN0JztcblxuZXhwb3J0IGNsYXNzIExvYW4gZXh0ZW5kcyBMb2FuQmFzZSB7XG4gIEBUeXBlKCgpID0+IExvYW5QYXltZW50KVxuICBwYXltZW50czogTG9hblBheW1lbnRbXTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBjb21tZW5jZW1lbnREYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IExvYW5QYXlvdXQpXG4gIHBheW91dDogTG9hblBheW91dDtcblxuICByZXBheW1lbnRUeXBlOiBMb2FuUmVwYXltZW50VHlwZUVudW0gPSBMb2FuUmVwYXltZW50VHlwZUVudW0uUFJJTkNJUEFMX0FORF9JTlRFUkVTVDtcbiAgY3VycmVudEJhbGFuY2U6IG51bWJlcjtcblxuICAvKipcbiAgICogQ2hlY2sgaWYgbG9hbiB0eXBlIGlzIHJlbGF0ZWQgdG8gTG9hblZlaGljbGVUeXBlRW51bVxuICAgKi9cbiAgaXNWZWhpY2xlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgaW4gTG9hblZlaGljbGVUeXBlRW51bTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGxhc3QgcGF5bWVudCBmb3IgcGFzc2VkIGZpbmFuY2lhbCB5ZWFyXG4gICAqIEBwYXJhbSB5ZWFyIGZpbmFuY2lhbCB5ZWFyIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldExhc3RQYXltZW50QnlZZWFyKHllYXI6IG51bWJlcik6IExvYW5QYXltZW50IHtcbiAgICBjb25zdCBmaW5ZZWFyOiBGaW5hbmNpYWxZZWFyID0gbmV3IEZpbmFuY2lhbFllYXIobmV3IERhdGUoeWVhci50b1N0cmluZygpKSk7XG4gICAgcmV0dXJuIGxhc3QodGhpcy5wYXltZW50cy5maWx0ZXIoKHBheW1lbnQ6IExvYW5QYXltZW50KTogYm9vbGVhbiA9PiBwYXltZW50LmRhdGUgPiBmaW5ZZWFyLnN0YXJ0RGF0ZSAmJiBwYXltZW50LmRhdGUgPCBmaW5ZZWFyLmVuZERhdGUpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { TransactionSourceEnum } from '../../db/Enums/transaction-source.enum';
2
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
3
+ import { TransactionTypeEnum } from '../../db/Enums/transaction-type.enum';
4
+ import { ChartAccountsListEnum } from '../../db/Enums/chart-accounts-list.enum';
5
+ import { FinancialYear } from '../financial-year/financial-year';
6
+ /**
7
+ * Default vehicle transaction object,
8
+ * which could be used to create transaction with 'Klms travelled for work' chart accounts category
9
+ */
10
+ export const DEFAULT_VEHICLE_EXPENSE = {
11
+ source: TransactionSourceEnum.CASH,
12
+ tankType: TankTypeEnum.WORK,
13
+ type: TransactionTypeEnum.DEBIT,
14
+ taxWithheld: 0,
15
+ description: 'Klm’s method',
16
+ date: new Date(`${new FinancialYear().year}-06-30`),
17
+ chartAccounts: { id: ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK },
18
+ claimPercent: 100
19
+ };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC12ZWhpY2xlLWV4cGVuc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvZ2Jvb2svZGVmYXVsdC12ZWhpY2xlLWV4cGVuc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUVqRTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBVztJQUM3QyxNQUFNLEVBQUUscUJBQXFCLENBQUMsSUFBSTtJQUNsQyxRQUFRLEVBQUUsWUFBWSxDQUFDLElBQUk7SUFDM0IsSUFBSSxFQUFFLG1CQUFtQixDQUFDLEtBQUs7SUFDL0IsV0FBVyxFQUFFLENBQUM7SUFDZCxXQUFXLEVBQUUsY0FBYztJQUMzQixJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLGFBQWEsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDO0lBQ25ELGFBQWEsRUFBRSxFQUFDLEVBQUUsRUFBRSxxQkFBcUIsQ0FBQyx1QkFBdUIsRUFBQztJQUNsRSxZQUFZLEVBQUUsR0FBRztDQUNsQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25Tb3VyY2VFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tc291cmNlLmVudW0nO1xuaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1saXN0LmVudW0nO1xuaW1wb3J0IHsgRmluYW5jaWFsWWVhciB9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcblxuLyoqXG4gKiBEZWZhdWx0IHZlaGljbGUgdHJhbnNhY3Rpb24gb2JqZWN0LFxuICogd2hpY2ggY291bGQgYmUgdXNlZCB0byBjcmVhdGUgdHJhbnNhY3Rpb24gd2l0aCAnS2xtcyB0cmF2ZWxsZWQgZm9yIHdvcmsnIGNoYXJ0IGFjY291bnRzIGNhdGVnb3J5XG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX1ZFSElDTEVfRVhQRU5TRTogb2JqZWN0ID0ge1xuICBzb3VyY2U6IFRyYW5zYWN0aW9uU291cmNlRW51bS5DQVNILFxuICB0YW5rVHlwZTogVGFua1R5cGVFbnVtLldPUkssXG4gIHR5cGU6IFRyYW5zYWN0aW9uVHlwZUVudW0uREVCSVQsXG4gIHRheFdpdGhoZWxkOiAwLFxuICBkZXNjcmlwdGlvbjogJ0tsbeKAmXMgbWV0aG9kJyxcbiAgZGF0ZTogbmV3IERhdGUoYCR7bmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyfS0wNi0zMGApLFxuICBjaGFydEFjY291bnRzOiB7aWQ6IENoYXJ0QWNjb3VudHNMaXN0RW51bS5LTE1TX1RSQVZFTExFRF9GT1JfV09SS30sXG4gIGNsYWltUGVyY2VudDogMTAwXG59O1xuIl19
@@ -0,0 +1,11 @@
1
+ import { __decorate } from "tslib";
2
+ import { Type } from 'class-transformer';
3
+ export class LogbookPeriod {
4
+ }
5
+ __decorate([
6
+ Type(() => Date)
7
+ ], LogbookPeriod.prototype, "from", void 0);
8
+ __decorate([
9
+ Type(() => Date)
10
+ ], LogbookPeriod.prototype, "to", void 0);
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nYm9vay1wZXJpb2QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvZ2Jvb2svbG9nYm9vay1wZXJpb2QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sYUFBYTtDQVN6QjtBQVBDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBMb2dib29rUGVyaW9kIHtcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZnJvbTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICB0bzogRGF0ZTtcblxuICBraWxvbWV0ZXJzOiBudW1iZXI7XG4gIHdvcmtVc2FnZTogbnVtYmVyO1xufVxuIl19
@@ -0,0 +1,6 @@
1
+ import { VehicleLogbookPurposeEnum } from '../../db/Enums/vehicle-logbook-purpose.enum';
2
+ export const WORK_TANK_LOGBOOK_PURPOSE_OPTIONS = [
3
+ { label: 'Business', value: VehicleLogbookPurposeEnum.BUSINESS },
4
+ { label: 'Personal', value: VehicleLogbookPurposeEnum.PERSONAL }
5
+ ];
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nYm9vay1wdXJwb3NlLW9wdGlvbnMuY29uc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL2xvZ2Jvb2svbG9nYm9vay1wdXJwb3NlLW9wdGlvbnMuY29uc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkNBQTZDLENBQUM7QUFFeEYsTUFBTSxDQUFDLE1BQU0saUNBQWlDLEdBQTBEO0lBQ3RHLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLENBQUMsUUFBUSxFQUFFO0lBQ2hFLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUseUJBQXlCLENBQUMsUUFBUSxFQUFFO0NBQ2pFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWhpY2xlTG9nYm9va1B1cnBvc2VFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdmVoaWNsZS1sb2dib29rLXB1cnBvc2UuZW51bSc7XG5cbmV4cG9ydCBjb25zdCBXT1JLX1RBTktfTE9HQk9PS19QVVJQT1NFX09QVElPTlM6IHtba2V5OiBzdHJpbmddOiBWZWhpY2xlTG9nYm9va1B1cnBvc2VFbnVtIHwgc3RyaW5nfVtdID0gW1xuICB7IGxhYmVsOiAnQnVzaW5lc3MnLCB2YWx1ZTogVmVoaWNsZUxvZ2Jvb2tQdXJwb3NlRW51bS5CVVNJTkVTUyB9LFxuICB7IGxhYmVsOiAnUGVyc29uYWwnLCB2YWx1ZTogVmVoaWNsZUxvZ2Jvb2tQdXJwb3NlRW51bS5QRVJTT05BTCB9XG5dO1xuIl19
@@ -0,0 +1,26 @@
1
+ import { VehicleClaim as VehicleClaimBase } from '../../db/Models/vehicle-claim';
2
+ import { VehicleClaimMethodEnum } from '../../db/Enums/vehicle-claim-method.enum';
3
+ import { FinancialYear } from '../financial-year/financial-year';
4
+ const WEEKS_IN_YEAR = 52;
5
+ export class VehicleClaim extends VehicleClaimBase {
6
+ constructor() {
7
+ super(...arguments);
8
+ // limit for kms claim method
9
+ this.kmsLimit = 5000;
10
+ this.financialYear = new FinancialYear().year;
11
+ this.method = VehicleClaimMethodEnum.KMS;
12
+ this.kilometers = 0;
13
+ this.workUsage = 0;
14
+ this.isManual = true;
15
+ }
16
+ /**
17
+ * get amount of kilometres per week
18
+ */
19
+ get averageWeeklyTraveledKms() {
20
+ return this.kilometers / WEEKS_IN_YEAR;
21
+ }
22
+ get isLogbookMethod() {
23
+ return this.method === VehicleClaimMethodEnum.LOGBOOK;
24
+ }
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvbG9nYm9vay92ZWhpY2xlLWNsYWltLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLElBQUksZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFakUsTUFBTSxhQUFhLEdBQUcsRUFBRSxDQUFDO0FBRXpCLE1BQU0sT0FBTyxZQUFhLFNBQVEsZ0JBQWdCO0lBQWxEOztRQUNFLDZCQUE2QjtRQUM3QixhQUFRLEdBQVcsSUFBSSxDQUFDO1FBQ3hCLGtCQUFhLEdBQVcsSUFBSSxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUM7UUFFakQsV0FBTSxHQUEyQixzQkFBc0IsQ0FBQyxHQUFHLENBQUM7UUFDNUQsZUFBVSxHQUFXLENBQUMsQ0FBQztRQUN2QixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBWSxJQUFJLENBQUM7SUFZM0IsQ0FBQztJQVZDOztPQUVHO0lBQ0gsSUFBSSx3QkFBd0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FBQztJQUN6QyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxzQkFBc0IsQ0FBQyxPQUFPLENBQUM7SUFDeEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVmVoaWNsZUNsYWltIGFzIFZlaGljbGVDbGFpbUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdmVoaWNsZS1jbGFpbSc7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1NZXRob2RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdmVoaWNsZS1jbGFpbS1tZXRob2QuZW51bSc7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vZmluYW5jaWFsLXllYXIvZmluYW5jaWFsLXllYXInO1xuXG5jb25zdCBXRUVLU19JTl9ZRUFSID0gNTI7XG5cbmV4cG9ydCBjbGFzcyBWZWhpY2xlQ2xhaW0gZXh0ZW5kcyBWZWhpY2xlQ2xhaW1CYXNlIHtcbiAgLy8gbGltaXQgZm9yIGttcyBjbGFpbSBtZXRob2RcbiAga21zTGltaXQ6IG51bWJlciA9IDUwMDA7XG4gIGZpbmFuY2lhbFllYXI6IG51bWJlciA9IG5ldyBGaW5hbmNpYWxZZWFyKCkueWVhcjtcblxuICBtZXRob2Q6IFZlaGljbGVDbGFpbU1ldGhvZEVudW0gPSBWZWhpY2xlQ2xhaW1NZXRob2RFbnVtLktNUztcbiAga2lsb21ldGVyczogbnVtYmVyID0gMDtcbiAgd29ya1VzYWdlOiBudW1iZXIgPSAwO1xuICBpc01hbnVhbDogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIGdldCBhbW91bnQgb2Yga2lsb21ldHJlcyBwZXIgd2Vla1xuICAgKi9cbiAgZ2V0IGF2ZXJhZ2VXZWVrbHlUcmF2ZWxlZEttcygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmtpbG9tZXRlcnMgLyBXRUVLU19JTl9ZRUFSO1xuICB9XG5cbiAgZ2V0IGlzTG9nYm9va01ldGhvZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5tZXRob2QgPT09IFZlaGljbGVDbGFpbU1ldGhvZEVudW0uTE9HQk9PSztcbiAgfVxufVxuIl19
@@ -0,0 +1,16 @@
1
+ import { __decorate } from "tslib";
2
+ import { VehicleLogbook as VehicleLogbookBase } from '../../db/Models/vehicle-logbook';
3
+ import { VehicleLogbookPurposeEnum } from '../../db/Enums/vehicle-logbook-purpose.enum';
4
+ import { Type } from 'class-transformer';
5
+ export class VehicleLogbook extends VehicleLogbookBase {
6
+ get kilometres() {
7
+ return this.odometerEnd - this.odometerStart;
8
+ }
9
+ get isWork() {
10
+ return this.purpose === VehicleLogbookPurposeEnum.BUSINESS;
11
+ }
12
+ }
13
+ __decorate([
14
+ Type(() => Date)
15
+ ], VehicleLogbook.prototype, "date", void 0);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1sb2dib29rLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9sb2dib29rL3ZlaGljbGUtbG9nYm9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtJQUlwRCxJQUFJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsT0FBTyxLQUFLLHlCQUF5QixDQUFDLFFBQVEsQ0FBQztJQUM3RCxDQUFDO0NBQ0Y7QUFUQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7NENBQ04iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWhpY2xlTG9nYm9vayBhcyBWZWhpY2xlTG9nYm9va0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdmVoaWNsZS1sb2dib29rJztcbmltcG9ydCB7IFZlaGljbGVMb2dib29rUHVycG9zZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy92ZWhpY2xlLWxvZ2Jvb2stcHVycG9zZS5lbnVtJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBWZWhpY2xlTG9nYm9vayBleHRlbmRzIFZlaGljbGVMb2dib29rQmFzZSB7XG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGRhdGU6IERhdGU7XG5cbiAgZ2V0IGtpbG9tZXRyZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5vZG9tZXRlckVuZCAtIHRoaXMub2RvbWV0ZXJTdGFydDtcbiAgfVxuXG4gIGdldCBpc1dvcmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHVycG9zZSA9PT0gVmVoaWNsZUxvZ2Jvb2tQdXJwb3NlRW51bS5CVVNJTkVTUztcbiAgfVxufVxuIl19
@@ -0,0 +1,39 @@
1
+ import { __decorate } from "tslib";
2
+ import { Vehicle as VehicleBase } from '../../db/Models/vehicle';
3
+ import { VehicleLogbookPurposeEnum } from '../../db/Enums/vehicle-logbook-purpose.enum';
4
+ import { VehicleLogbook } from './vehicle-logbook';
5
+ import { Type } from 'class-transformer';
6
+ export class Vehicle extends VehicleBase {
7
+ get workKilometersPercentage() {
8
+ return this.workKilometres / this.totalKilometres * 100;
9
+ }
10
+ get totalKilometres() {
11
+ let kilometers = 0;
12
+ this.logbook.forEach((lb) => {
13
+ kilometers += lb.kilometres;
14
+ });
15
+ return kilometers;
16
+ }
17
+ get workKilometres() {
18
+ let kilometers = 0;
19
+ this.logbook.forEach((lb) => {
20
+ if (lb.purpose === VehicleLogbookPurposeEnum.BUSINESS) {
21
+ kilometers += lb.kilometres;
22
+ }
23
+ });
24
+ return kilometers;
25
+ }
26
+ get personalKilometres() {
27
+ return this.totalKilometres - this.workKilometres;
28
+ }
29
+ get lastLogbook() {
30
+ if (!this.logbook.length) {
31
+ return { odometerEnd: 0 };
32
+ }
33
+ return this.logbook.slice(-1)[0];
34
+ }
35
+ }
36
+ __decorate([
37
+ Type(() => VehicleLogbook)
38
+ ], Vehicle.prototype, "logbook", void 0);
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvbG9nYm9vay92ZWhpY2xlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsTUFBTSxPQUFPLE9BQVEsU0FBUSxXQUFXO0lBSXRDLElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxHQUFHLEdBQUcsQ0FBQztJQUMxRCxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLElBQUksVUFBVSxHQUFXLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQWtCLEVBQUUsRUFBRTtZQUMxQyxVQUFVLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQztRQUM5QixDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsSUFBSSxVQUFVLEdBQVcsQ0FBQyxDQUFDO1FBRTNCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBa0IsRUFBRSxFQUFFO1lBQzFDLElBQUksRUFBRSxDQUFDLE9BQU8sS0FBSyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUU7Z0JBQ3JELFVBQVUsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDO2FBQzdCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUN4QixPQUFPLEVBQUMsV0FBVyxFQUFFLENBQUMsRUFBQyxDQUFDO1NBQ3pCO1FBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7Q0FDRjtBQXRDQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7d0NBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWhpY2xlIGFzIFZlaGljbGVCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3ZlaGljbGUnO1xuaW1wb3J0IHsgVmVoaWNsZUxvZ2Jvb2tQdXJwb3NlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3ZlaGljbGUtbG9nYm9vay1wdXJwb3NlLmVudW0nO1xuaW1wb3J0IHsgVmVoaWNsZUxvZ2Jvb2sgfSBmcm9tICcuL3ZlaGljbGUtbG9nYm9vayc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZSBleHRlbmRzIFZlaGljbGVCYXNlIHtcbiAgQFR5cGUoKCkgPT4gVmVoaWNsZUxvZ2Jvb2spXG4gIGxvZ2Jvb2s6IFZlaGljbGVMb2dib29rW107XG5cbiAgZ2V0IHdvcmtLaWxvbWV0ZXJzUGVyY2VudGFnZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLndvcmtLaWxvbWV0cmVzIC8gdGhpcy50b3RhbEtpbG9tZXRyZXMgKiAxMDA7XG4gIH1cblxuICBnZXQgdG90YWxLaWxvbWV0cmVzKCk6IG51bWJlciB7XG4gICAgbGV0IGtpbG9tZXRlcnM6IG51bWJlciA9IDA7XG5cbiAgICB0aGlzLmxvZ2Jvb2suZm9yRWFjaCgobGI6IFZlaGljbGVMb2dib29rKSA9PiB7XG4gICAgICBraWxvbWV0ZXJzICs9IGxiLmtpbG9tZXRyZXM7XG4gICAgfSk7XG5cbiAgICByZXR1cm4ga2lsb21ldGVycztcbiAgfVxuXG4gIGdldCB3b3JrS2lsb21ldHJlcygpOiBudW1iZXIge1xuICAgIGxldCBraWxvbWV0ZXJzOiBudW1iZXIgPSAwO1xuXG4gICAgdGhpcy5sb2dib29rLmZvckVhY2goKGxiOiBWZWhpY2xlTG9nYm9vaykgPT4ge1xuICAgICAgaWYgKGxiLnB1cnBvc2UgPT09IFZlaGljbGVMb2dib29rUHVycG9zZUVudW0uQlVTSU5FU1MpIHtcbiAgICAgICAga2lsb21ldGVycyArPSBsYi5raWxvbWV0cmVzO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGtpbG9tZXRlcnM7XG4gIH1cblxuICBnZXQgcGVyc29uYWxLaWxvbWV0cmVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxLaWxvbWV0cmVzIC0gdGhpcy53b3JrS2lsb21ldHJlcztcbiAgfVxuXG4gIGdldCBsYXN0TG9nYm9vaygpOiBWZWhpY2xlTG9nYm9vayB8IHtvZG9tZXRlckVuZDogbnVtYmVyfSB7XG4gICAgaWYgKCF0aGlzLmxvZ2Jvb2subGVuZ3RoKSB7XG4gICAgICByZXR1cm4ge29kb21ldGVyRW5kOiAwfTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubG9nYm9vay5zbGljZSgtMSlbMF07XG4gIH1cbn1cbiJdfQ==