taxtank-core 0.1.1 → 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 (1258) hide show
  1. package/bundles/taxtank-core.umd.js +12021 -0
  2. package/bundles/taxtank-core.umd.js.map +1 -0
  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 +31 -0
  396. package/esm2015/public-api.js +337 -0
  397. package/esm2015/taxtank-core.js +5 -0
  398. package/fesm2015/taxtank-core.js +9777 -0
  399. package/fesm2015/taxtank-core.js.map +1 -0
  400. package/lib/collections/abstract.collection.d.ts +40 -0
  401. package/lib/collections/bank-account.collection.d.ts +67 -0
  402. package/lib/collections/bank-transaction.collection.d.ts +72 -0
  403. package/lib/collections/client-movement.collection.d.ts +17 -0
  404. package/lib/collections/client-portfolio-report.collection.d.ts +26 -0
  405. package/lib/collections/client.collection.d.ts +4 -0
  406. package/lib/collections/collection-dictionary.d.ts +44 -0
  407. package/lib/collections/depreciation-forecast.collection.d.ts +11 -0
  408. package/lib/collections/depreciation.collection.d.ts +27 -0
  409. package/lib/collections/employee.collection.d.ts +6 -0
  410. package/lib/collections/income-source.collection.d.ts +25 -0
  411. package/lib/collections/loan.collection.d.ts +14 -0
  412. package/lib/collections/logbook.collection.d.ts +19 -0
  413. package/lib/collections/message-document.collection.d.ts +11 -0
  414. package/lib/collections/message.collection.d.ts +14 -0
  415. package/lib/collections/property.collection.d.ts +33 -0
  416. package/lib/collections/service-price.collection.d.ts +6 -0
  417. package/lib/collections/service-subscription.collection.d.ts +8 -0
  418. package/lib/collections/tax-return-category-item.collection.d.ts +68 -0
  419. package/lib/collections/tax-review.collection.d.ts +35 -0
  420. package/lib/collections/transaction-allocation.collection.d.ts +23 -0
  421. package/lib/collections/transaction.collection.d.ts +76 -0
  422. package/lib/collections/user-event-setting.collection.d.ts +30 -0
  423. package/lib/db/Enums/address-type.enum.d.ts +4 -0
  424. package/lib/db/Enums/bank-account-status.enum.d.ts +4 -0
  425. package/lib/db/Enums/bank-account-type.enum.d.ts +10 -0
  426. package/lib/db/Enums/bank-connection-status.enum.d.ts +5 -0
  427. package/lib/db/Enums/bank-transaction-type.enum.d.ts +4 -0
  428. package/lib/db/Enums/chart-accounts-category.enum.d.ts +13 -0
  429. package/lib/db/Enums/chart-accounts-etp.enum.d.ts +7 -0
  430. package/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.d.ts +6 -0
  431. package/lib/db/Enums/chart-accounts-heading-taxable.enum.d.ts +6 -0
  432. package/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.d.ts +4 -0
  433. package/lib/db/Enums/chart-accounts-list.enum.d.ts +19 -0
  434. package/lib/db/Enums/chart-accounts-metadata-list.enum.d.ts +14 -0
  435. package/lib/db/Enums/chart-accounts-metadata-type.enum.d.ts +4 -0
  436. package/lib/db/Enums/chart-accounts-type.enum.d.ts +4 -0
  437. package/lib/db/Enums/chat-status.enum.d.ts +4 -0
  438. package/lib/db/Enums/client-details-medicare-exemption.enum.d.ts +5 -0
  439. package/lib/db/Enums/client-details-work-depreciation-calculation.enum.d.ts +4 -0
  440. package/lib/db/Enums/client-details-working-holiday-maker.enum.d.ts +5 -0
  441. package/lib/db/Enums/client-invite-status.enum.d.ts +4 -0
  442. package/lib/db/Enums/client-invite-type.enum.d.ts +4 -0
  443. package/lib/db/Enums/depreciation-calculation-percent.enum.d.ts +7 -0
  444. package/lib/db/Enums/depreciation-calculation.enum.d.ts +7 -0
  445. package/lib/db/Enums/depreciation-type.enum.d.ts +6 -0
  446. package/lib/db/Enums/depreciation-write-off-amount.enum.d.ts +4 -0
  447. package/lib/db/Enums/firm-type.enum.d.ts +4 -0
  448. package/lib/db/Enums/income-source-type-list-other.enum.d.ts +6 -0
  449. package/lib/db/Enums/income-source-type-list-salary.enum.d.ts +3 -0
  450. package/lib/db/Enums/income-source-type-list-work.enum.d.ts +8 -0
  451. package/lib/db/Enums/income-source-type.enum.d.ts +5 -0
  452. package/lib/db/Enums/invite-status.enum.d.ts +5 -0
  453. package/lib/db/Enums/loan-bank-type.enum.d.ts +10 -0
  454. package/lib/db/Enums/loan-frequency.enum.d.ts +6 -0
  455. package/lib/db/Enums/loan-interest-type.enum.d.ts +4 -0
  456. package/lib/db/Enums/loan-payout-type.enum.d.ts +4 -0
  457. package/lib/db/Enums/loan-repayment-frequency.enum.d.ts +5 -0
  458. package/lib/db/Enums/loan-repayment-type.enum.d.ts +4 -0
  459. package/lib/db/Enums/loan-type.enum.d.ts +12 -0
  460. package/lib/db/Enums/loan-vehicle-type.enum.d.ts +5 -0
  461. package/lib/db/Enums/phone-type.enum.d.ts +4 -0
  462. package/lib/db/Enums/property-depreciation-calculation.enum.d.ts +4 -0
  463. package/lib/db/Enums/property-owner-access.enum.d.ts +4 -0
  464. package/lib/db/Enums/property-owner-status.enum.d.ts +5 -0
  465. package/lib/db/Enums/registration-invite-status.enum.d.ts +4 -0
  466. package/lib/db/Enums/salary-forecast-frequency.enum.d.ts +6 -0
  467. package/lib/db/Enums/service-notification-status.enum.d.ts +5 -0
  468. package/lib/db/Enums/service-notification-type.enum.d.ts +4 -0
  469. package/lib/db/Enums/service-payment-status.enum.d.ts +4 -0
  470. package/lib/db/Enums/service-price-recurring-interval.enum.d.ts +6 -0
  471. package/lib/db/Enums/service-price-type.enum.d.ts +4 -0
  472. package/lib/db/Enums/service-subscription-status.enum.d.ts +8 -0
  473. package/lib/db/Enums/spare-document-spare-type.enum.d.ts +4 -0
  474. package/lib/db/Enums/tank-type.enum.d.ts +5 -0
  475. package/lib/db/Enums/tax-calculation-medicare-exemption.enum.d.ts +4 -0
  476. package/lib/db/Enums/tax-calculation-type.enum.d.ts +12 -0
  477. package/lib/db/Enums/tax-return-category-list.enum.d.ts +26 -0
  478. package/lib/db/Enums/tax-return-category-section.enum.d.ts +6 -0
  479. package/lib/db/Enums/tax-review-status.enum.d.ts +11 -0
  480. package/lib/db/Enums/tax-summary-list.enum.d.ts +15 -0
  481. package/lib/db/Enums/tax-summary-section.enum.d.ts +6 -0
  482. package/lib/db/Enums/tax-summary-tax-summary.enum.d.ts +15 -0
  483. package/lib/db/Enums/ticket-feedback.enum.d.ts +4 -0
  484. package/lib/db/Enums/ticket-status.enum.d.ts +7 -0
  485. package/lib/db/Enums/ticket-types.enum.d.ts +3 -0
  486. package/lib/db/Enums/transaction-operation.enum.d.ts +5 -0
  487. package/lib/db/Enums/transaction-source.enum.d.ts +4 -0
  488. package/lib/db/Enums/transaction-type.enum.d.ts +4 -0
  489. package/lib/db/Enums/user-event-status.enum.d.ts +6 -0
  490. package/lib/db/Enums/user-event-type-frequency.enum.d.ts +6 -0
  491. package/lib/db/Enums/user-event-type-reminder-type.enum.d.ts +6 -0
  492. package/lib/db/Enums/user-event-type-reminder.enum.d.ts +5 -0
  493. package/lib/db/Enums/user-event-type-type.enum.d.ts +33 -0
  494. package/lib/db/Enums/user-medicare-exemption.enum.d.ts +5 -0
  495. package/lib/db/Enums/user-roles.enum.d.ts +13 -0
  496. package/lib/db/Enums/user-status.enum.d.ts +6 -0
  497. package/lib/db/Enums/user-title.enum.d.ts +7 -0
  498. package/lib/db/Enums/user-work-depreciation-calculation.enum.d.ts +4 -0
  499. package/lib/db/Enums/user-working-holiday-maker.enum.d.ts +5 -0
  500. package/lib/db/Enums/vehicle-claim-method.enum.d.ts +4 -0
  501. package/lib/db/Enums/vehicle-logbook-purpose.enum.d.ts +4 -0
  502. package/lib/db/Models/address.d.ts +19 -0
  503. package/lib/db/Models/bank-account-balance.d.ts +12 -0
  504. package/lib/db/Models/bank-account-property.d.ts +8 -0
  505. package/lib/db/Models/bank-account.d.ts +33 -0
  506. package/lib/db/Models/bank-connection.d.ts +14 -0
  507. package/lib/db/Models/bank-transaction-import.d.ts +11 -0
  508. package/lib/db/Models/bank-transaction.d.ts +16 -0
  509. package/lib/db/Models/bank.d.ts +11 -0
  510. package/lib/db/Models/basiq-job.d.ts +8 -0
  511. package/lib/db/Models/borrowing-expense-loan.d.ts +14 -0
  512. package/lib/db/Models/borrowing-expense.d.ts +7 -0
  513. package/lib/db/Models/capital-cost-property.d.ts +13 -0
  514. package/lib/db/Models/capital-cost.d.ts +4 -0
  515. package/lib/db/Models/chart-accounts-depreciation.d.ts +10 -0
  516. package/lib/db/Models/chart-accounts-heading.d.ts +6 -0
  517. package/lib/db/Models/chart-accounts-metadata.d.ts +11 -0
  518. package/lib/db/Models/chart-accounts-value.d.ts +12 -0
  519. package/lib/db/Models/chart-accounts.d.ts +23 -0
  520. package/lib/db/Models/chat.d.ts +17 -0
  521. package/lib/db/Models/client-details.d.ts +29 -0
  522. package/lib/db/Models/client-invite.d.ts +16 -0
  523. package/lib/db/Models/client-movement.d.ts +12 -0
  524. package/lib/db/Models/country.d.ts +5 -0
  525. package/lib/db/Models/depreciation-capital-project.d.ts +13 -0
  526. package/lib/db/Models/depreciation-forecast.d.ts +18 -0
  527. package/lib/db/Models/depreciation-receipt.d.ts +11 -0
  528. package/lib/db/Models/depreciation.d.ts +42 -0
  529. package/lib/db/Models/document-folder.d.ts +9 -0
  530. package/lib/db/Models/document.d.ts +11 -0
  531. package/lib/db/Models/employee-details.d.ts +7 -0
  532. package/lib/db/Models/employee-invite.d.ts +9 -0
  533. package/lib/db/Models/financial-data-system.d.ts +9 -0
  534. package/lib/db/Models/firm.d.ts +28 -0
  535. package/lib/db/Models/income-source-forecast.d.ts +12 -0
  536. package/lib/db/Models/income-source-type.d.ts +8 -0
  537. package/lib/db/Models/income-source.d.ts +20 -0
  538. package/lib/db/Models/loan-payout.d.ts +12 -0
  539. package/lib/db/Models/loan.d.ts +33 -0
  540. package/lib/db/Models/message-document.d.ts +15 -0
  541. package/lib/db/Models/message.d.ts +15 -0
  542. package/lib/db/Models/occupation.d.ts +5 -0
  543. package/lib/db/Models/phone.d.ts +12 -0
  544. package/lib/db/Models/property-capital-cost.d.ts +13 -0
  545. package/lib/db/Models/property-category-movement.d.ts +17 -0
  546. package/lib/db/Models/property-category.d.ts +13 -0
  547. package/lib/db/Models/property-document.d.ts +13 -0
  548. package/lib/db/Models/property-forecast.d.ts +14 -0
  549. package/lib/db/Models/property-owner.d.ts +20 -0
  550. package/lib/db/Models/property-sold.d.ts +12 -0
  551. package/lib/db/Models/property-subscription.d.ts +9 -0
  552. package/lib/db/Models/property-valuation.d.ts +12 -0
  553. package/lib/db/Models/property.d.ts +41 -0
  554. package/lib/db/Models/registration-invite.d.ts +12 -0
  555. package/lib/db/Models/salary-forecast.d.ts +15 -0
  556. package/lib/db/Models/service-notification.d.ts +13 -0
  557. package/lib/db/Models/service-payment.d.ts +11 -0
  558. package/lib/db/Models/service-price.d.ts +15 -0
  559. package/lib/db/Models/service-product.d.ts +12 -0
  560. package/lib/db/Models/service-subscription-item.d.ts +9 -0
  561. package/lib/db/Models/service-subscription.d.ts +14 -0
  562. package/lib/db/Models/tax-return-category.d.ts +12 -0
  563. package/lib/db/Models/tax-return-item.d.ts +15 -0
  564. package/lib/db/Models/tax-return.d.ts +8 -0
  565. package/lib/db/Models/tax-review.d.ts +13 -0
  566. package/lib/db/Models/ticket.d.ts +19 -0
  567. package/lib/db/Models/transaction-allocation.d.ts +8 -0
  568. package/lib/db/Models/transaction-base.d.ts +22 -0
  569. package/lib/db/Models/transaction-metadata.d.ts +11 -0
  570. package/lib/db/Models/transaction-receipt.d.ts +11 -0
  571. package/lib/db/Models/transaction.d.ts +43 -0
  572. package/lib/db/Models/user-event-setting.d.ts +10 -0
  573. package/lib/db/Models/user-event-type.d.ts +15 -0
  574. package/lib/db/Models/user-event.d.ts +13 -0
  575. package/lib/db/Models/user.d.ts +51 -0
  576. package/lib/db/Models/vehicle-claim.d.ts +11 -0
  577. package/lib/db/Models/vehicle-logbook.d.ts +16 -0
  578. package/lib/db/Models/vehicle.d.ts +8 -0
  579. package/lib/functions/array/index.d.ts +3 -0
  580. package/lib/functions/array/replace.d.ts +1 -0
  581. package/lib/functions/array/sort-deep.d.ts +1 -0
  582. package/lib/functions/array/sort.d.ts +1 -0
  583. package/lib/functions/clone-deep.d.ts +1 -0
  584. package/lib/functions/create-date.d.ts +5 -0
  585. package/lib/functions/enum-to-list.d.ts +2 -0
  586. package/lib/functions/get-doc-icon.d.ts +7 -0
  587. package/lib/functions/mat-options-functions.d.ts +2 -0
  588. package/lib/functions/mat-sort-options.d.ts +7 -0
  589. package/lib/functions/round-to.d.ts +6 -0
  590. package/lib/functions/tax-review-filter-predicate.d.ts +7 -0
  591. package/lib/interfaces/asset-entity-type.enum.d.ts +10 -0
  592. package/lib/interfaces/asset-type.enum.d.ts +8 -0
  593. package/lib/interfaces/asset.interface.d.ts +17 -0
  594. package/lib/interfaces/chart-data.interface.d.ts +10 -0
  595. package/lib/interfaces/chart-serie.interface.d.ts +8 -0
  596. package/lib/interfaces/document.interface.d.ts +18 -0
  597. package/lib/interfaces/documentable.interface.d.ts +8 -0
  598. package/lib/interfaces/event-listener.interface.d.ts +9 -0
  599. package/lib/interfaces/income-source-forecast.interface.d.ts +7 -0
  600. package/lib/interfaces/option.interface.d.ts +4 -0
  601. package/lib/interfaces/photoable.d.ts +13 -0
  602. package/lib/interfaces/receipt.interface.d.ts +12 -0
  603. package/lib/interfaces/salary-forecast.interface.d.ts +16 -0
  604. package/lib/interfaces/tank.interface.d.ts +7 -0
  605. package/lib/models/address/address.d.ts +11 -0
  606. package/lib/models/address/country.d.ts +11 -0
  607. package/lib/models/bank/bank-account-chart-data.d.ts +17 -0
  608. package/lib/models/bank/bank-account-property.d.ts +5 -0
  609. package/lib/models/bank/bank-account-types.const.d.ts +7 -0
  610. package/lib/models/bank/bank-account.d.ts +72 -0
  611. package/lib/models/bank/bank-connection.d.ts +7 -0
  612. package/lib/models/bank/bank-transaction-chart-data.d.ts +30 -0
  613. package/lib/models/bank/bank-transaction-summary-fields.enum.d.ts +4 -0
  614. package/lib/models/bank/bank-transaction.d.ts +38 -0
  615. package/lib/models/bank/bank.d.ts +8 -0
  616. package/lib/models/bank/basiq-job.d.ts +3 -0
  617. package/lib/models/bank/basiq-token.d.ts +9 -0
  618. package/lib/models/bank/type-loan.const.d.ts +2 -0
  619. package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts +3 -0
  620. package/lib/models/borrowing-expense/borrowing-expense.d.ts +3 -0
  621. package/lib/models/chart/chart-data.d.ts +9 -0
  622. package/lib/models/chart/chart-serie.d.ts +8 -0
  623. package/lib/models/chart-accounts/chart-accounts-categories.const.d.ts +4 -0
  624. package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts +7 -0
  625. package/lib/models/chart-accounts/chart-accounts-heading.d.ts +5 -0
  626. package/lib/models/chart-accounts/chart-accounts-metadata.d.ts +8 -0
  627. package/lib/models/chart-accounts/chart-accounts-tax-labels.enum.d.ts +5 -0
  628. package/lib/models/chart-accounts/chart-accounts.d.ts +66 -0
  629. package/lib/models/chat/chat-view-type.enum.d.ts +4 -0
  630. package/lib/models/chat/chat.d.ts +10 -0
  631. package/lib/models/chat/message-document.d.ts +11 -0
  632. package/lib/models/chat/message.d.ts +20 -0
  633. package/lib/models/client/client-details.d.ts +3 -0
  634. package/lib/models/client/client-invite.d.ts +34 -0
  635. package/lib/models/client/client-movement.d.ts +12 -0
  636. package/lib/models/client/client-portfolio-chart-data.d.ts +11 -0
  637. package/lib/models/client/client-portfolio-report.d.ts +10 -0
  638. package/lib/models/depreciation/depreciation-capital-project.d.ts +5 -0
  639. package/lib/models/depreciation/depreciation-forecast.d.ts +8 -0
  640. package/lib/models/depreciation/depreciation-group-item.d.ts +10 -0
  641. package/lib/models/depreciation/depreciation-group.d.ts +11 -0
  642. package/lib/models/depreciation/depreciation-group.enum.d.ts +7 -0
  643. package/lib/models/depreciation/depreciation-groups.const.d.ts +9 -0
  644. package/lib/models/depreciation/depreciation-receipt.d.ts +8 -0
  645. package/lib/models/depreciation/depreciation.d.ts +69 -0
  646. package/lib/models/document/document-api-url-prefix.enum.d.ts +7 -0
  647. package/lib/models/document/document-file-types.const.d.ts +3 -0
  648. package/lib/models/document/document-folder.d.ts +7 -0
  649. package/lib/models/document/document.d.ts +21 -0
  650. package/lib/models/employee/employee-details.d.ts +5 -0
  651. package/lib/models/employee/employee-invite.d.ts +7 -0
  652. package/lib/models/endpoint/endpoint.d.ts +22 -0
  653. package/lib/models/endpoint/endpoints.const.d.ts +7 -0
  654. package/lib/models/event/app-event-type.enum.d.ts +37 -0
  655. package/lib/models/event/app-event.d.ts +9 -0
  656. package/lib/models/file/icons-file.enum.d.ts +5 -0
  657. package/lib/models/financial-year/financial-year.d.ts +19 -0
  658. package/lib/models/financial-year/month-name-short.enum.d.ts +19 -0
  659. package/lib/models/financial-year/month-number.enum.d.ts +19 -0
  660. package/lib/models/financial-year/months.const.d.ts +1 -0
  661. package/lib/models/firm/firm.d.ts +18 -0
  662. package/lib/models/income-position/income-position.d.ts +9 -0
  663. package/lib/models/income-source/income-source-chart-data.d.ts +14 -0
  664. package/lib/models/income-source/income-source-forecast.d.ts +22 -0
  665. package/lib/models/income-source/income-source-type.d.ts +8 -0
  666. package/lib/models/income-source/income-source.d.ts +27 -0
  667. package/lib/models/income-source/salary-forecast.d.ts +16 -0
  668. package/lib/models/loan/loan-max-number-of-payments.enum.d.ts +8 -0
  669. package/lib/models/loan/loan-payment.d.ts +13 -0
  670. package/lib/models/loan/loan-payout.d.ts +9 -0
  671. package/lib/models/loan/loan.d.ts +20 -0
  672. package/lib/models/logbook/default-vehicle-expense.d.ts +5 -0
  673. package/lib/models/logbook/logbook-period.d.ts +6 -0
  674. package/lib/models/logbook/logbook-purpose-options.const.d.ts +4 -0
  675. package/lib/models/logbook/vehicle-claim.d.ts +15 -0
  676. package/lib/models/logbook/vehicle-logbook.d.ts +6 -0
  677. package/lib/models/logbook/vehicle.d.ts +12 -0
  678. package/lib/models/notification/notification-event-types.const.d.ts +7 -0
  679. package/lib/models/notification/notification.d.ts +16 -0
  680. package/lib/models/phone/phone.d.ts +6 -0
  681. package/lib/models/property/calculation-form-item.d.ts +15 -0
  682. package/lib/models/property/calculation-form-type.enum.d.ts +7 -0
  683. package/lib/models/property/capital-costs-itmes.const.d.ts +2 -0
  684. package/lib/models/property/corelogic-suggestion.d.ts +18 -0
  685. package/lib/models/property/ownership-filter-options.enum.d.ts +8 -0
  686. package/lib/models/property/property-capital-cost.d.ts +3 -0
  687. package/lib/models/property/property-category-movement.d.ts +9 -0
  688. package/lib/models/property/property-category.d.ts +4 -0
  689. package/lib/models/property/property-document.d.ts +14 -0
  690. package/lib/models/property/property-equity-chart-data.d.ts +62 -0
  691. package/lib/models/property/property-equity-chart-item.d.ts +19 -0
  692. package/lib/models/property/property-equity-chart-type.enum.d.ts +4 -0
  693. package/lib/models/property/property-forecast.d.ts +28 -0
  694. package/lib/models/property/property-owner.d.ts +21 -0
  695. package/lib/models/property/property-sold.d.ts +5 -0
  696. package/lib/models/property/property-subscription.d.ts +6 -0
  697. package/lib/models/property/property-valuation.d.ts +9 -0
  698. package/lib/models/property/property.d.ts +55 -0
  699. package/lib/models/registration-invite/registration-invite.d.ts +6 -0
  700. package/lib/models/service-subscription/module-url-list.const.d.ts +6 -0
  701. package/lib/models/service-subscription/service-payment.d.ts +5 -0
  702. package/lib/models/service-subscription/service-price.d.ts +5 -0
  703. package/lib/models/service-subscription/service-product.d.ts +5 -0
  704. package/lib/models/service-subscription/service-subscription-item.d.ts +6 -0
  705. package/lib/models/service-subscription/service-subscription.d.ts +55 -0
  706. package/lib/models/service-subscription/subscription-description.const.d.ts +3 -0
  707. package/lib/models/service-subscription/subscription-title.const.d.ts +3 -0
  708. package/lib/models/service-subscription/subscription-type.enum.d.ts +6 -0
  709. package/lib/models/tax-review/tax-review.d.ts +52 -0
  710. package/lib/models/tax-summary/tax-return-category-item-details.d.ts +13 -0
  711. package/lib/models/tax-summary/tax-return-category-item.d.ts +18 -0
  712. package/lib/models/tax-summary/tax-summary-section.d.ts +12 -0
  713. package/lib/models/tax-summary/tax-summary-type.enum.d.ts +7 -0
  714. package/lib/models/tax-summary/tax-summary.d.ts +44 -0
  715. package/lib/models/transaction/income-amount-type.enum.d.ts +7 -0
  716. package/lib/models/transaction/transaction-allocation.d.ts +12 -0
  717. package/lib/models/transaction/transaction-metadata.d.ts +5 -0
  718. package/lib/models/transaction/transaction-receipt.d.ts +8 -0
  719. package/lib/models/transaction/transaction.d.ts +98 -0
  720. package/lib/models/user/my-account-history-initiated-by.enum.d.ts +4 -0
  721. package/lib/models/user/my-account-history-status.enum.d.ts +4 -0
  722. package/lib/models/user/my-account-history-type.enum.d.ts +5 -0
  723. package/lib/models/user/my-account-history.d.ts +11 -0
  724. package/lib/models/user/occupation.d.ts +3 -0
  725. package/lib/models/user/user-roles.const.d.ts +4 -0
  726. package/lib/models/user/user-to-register.d.ts +7 -0
  727. package/lib/models/user/user-work-position.const.d.ts +3 -0
  728. package/lib/models/user/user.d.ts +64 -0
  729. package/lib/models/user-event/user-event-category.d.ts +8 -0
  730. package/lib/models/user-event/user-event-category.enum.d.ts +9 -0
  731. package/lib/models/user-event/user-event-setting-field.enum.d.ts +8 -0
  732. package/lib/models/user-event/user-event-setting.d.ts +6 -0
  733. package/lib/models/user-event/user-event-type.d.ts +5 -0
  734. package/lib/services/address/address.service.d.ts +14 -0
  735. package/lib/services/asset/assets.service.d.ts +34 -0
  736. package/lib/services/auth/auth.service.d.ts +17 -0
  737. package/lib/services/auth/jwt.service.d.ts +16 -0
  738. package/lib/services/bank/bank-account-calculation.service.d.ts +19 -0
  739. package/lib/services/bank/bank-account.service.d.ts +47 -0
  740. package/lib/services/bank/bank-connection.service.d.ts +22 -0
  741. package/lib/services/bank/bank-transaction-calculation.service.d.ts +41 -0
  742. package/lib/services/bank/bank-transaction.service.d.ts +38 -0
  743. package/lib/services/bank/bank.service.d.ts +14 -0
  744. package/lib/services/bank/basiq.service.d.ts +42 -0
  745. package/lib/services/base-rest.service.d.ts +91 -0
  746. package/lib/services/borrowing-expense/borrowing-expense.service.d.ts +19 -0
  747. package/lib/services/chart-accounts/chart-accounts-depreciations.service.d.ts +19 -0
  748. package/lib/services/chart-accounts/chart-accounts.service.d.ts +37 -0
  749. package/lib/services/chat/chat.service.d.ts +31 -0
  750. package/lib/services/chat/message-document.service.d.ts +50 -0
  751. package/lib/services/chat/message.service.d.ts +31 -0
  752. package/lib/services/client/client-invite.service.d.ts +36 -0
  753. package/lib/services/client/client-movement.service.d.ts +40 -0
  754. package/lib/services/client/client-portfolio-report.service.d.ts +16 -0
  755. package/lib/services/depreciation/capital-project.service.d.ts +20 -0
  756. package/lib/services/depreciation/depreciation.service.d.ts +59 -0
  757. package/lib/services/document/document-folder.service.d.ts +40 -0
  758. package/lib/services/employee/employee-invite.service.d.ts +21 -0
  759. package/lib/services/employee/employee.service.d.ts +16 -0
  760. package/lib/services/event/event-dispatcher.service.d.ts +17 -0
  761. package/lib/services/event/sse.service.d.ts +16 -0
  762. package/lib/services/firm/firm.service.d.ts +27 -0
  763. package/lib/services/header-title/header-title.service.d.ts +11 -0
  764. package/lib/services/income-source/income-source-forecast.service.d.ts +36 -0
  765. package/lib/services/income-source/income-source.service.d.ts +48 -0
  766. package/lib/services/income-source/salary-forecast.service.d.ts +37 -0
  767. package/lib/services/intercom/intercom.service.d.ts +21 -0
  768. package/lib/services/loan/loan.service.d.ts +63 -0
  769. package/lib/services/notification/notification.service.d.ts +31 -0
  770. package/lib/services/preloader/preloader.service.d.ts +12 -0
  771. package/lib/services/property/corelogic.service.d.ts +15 -0
  772. package/lib/services/property/property-calculation.service.d.ts +33 -0
  773. package/lib/services/property/property-capital-cost.service.d.ts +20 -0
  774. package/lib/services/property/property-category.service.d.ts +13 -0
  775. package/lib/services/property/property-document.service.d.ts +31 -0
  776. package/lib/services/property/property-owner.service.d.ts +52 -0
  777. package/lib/services/property/property-sold.service.d.ts +13 -0
  778. package/lib/services/property/property.service.d.ts +50 -0
  779. package/lib/services/subscription/subscription.service.d.ts +47 -0
  780. package/lib/services/tax-review/tax-review-history.service.d.ts +19 -0
  781. package/lib/services/tax-review/tax-review.service.d.ts +44 -0
  782. package/lib/services/tax-summary/tax-summary.service.d.ts +31 -0
  783. package/lib/services/transaction/transaction-allocation.service.d.ts +43 -0
  784. package/lib/services/transaction/transaction-calculation.service.d.ts +29 -0
  785. package/lib/services/transaction/transaction.service.d.ts +92 -0
  786. package/lib/services/user/occupation.service.d.ts +20 -0
  787. package/lib/services/user/user-switcher.service.d.ts +20 -0
  788. package/lib/services/user/user.service.d.ts +60 -0
  789. package/lib/services/user-event/user-event-setting.service.d.ts +22 -0
  790. package/lib/services/user-event/user-event-type.service.d.ts +17 -0
  791. package/lib/services/work/work-tank.service.d.ts +93 -0
  792. package/lib/tt-core.module.d.ts +9 -0
  793. package/package.json +10 -3
  794. package/public-api.d.ts +336 -0
  795. package/taxtank-core.d.ts +5 -0
  796. package/.browserslistrc +0 -16
  797. package/karma.conf.js +0 -44
  798. package/ng-package.json +0 -12
  799. package/src/lib/collections/abstract.collection.ts +0 -83
  800. package/src/lib/collections/bank-account.collection.ts +0 -171
  801. package/src/lib/collections/bank-transaction.collection.ts +0 -153
  802. package/src/lib/collections/client-movement.collection.ts +0 -42
  803. package/src/lib/collections/client-portfolio-report.collection.ts +0 -47
  804. package/src/lib/collections/client.collection.ts +0 -5
  805. package/src/lib/collections/collection-dictionary.ts +0 -112
  806. package/src/lib/collections/depreciation-forecast.collection.ts +0 -25
  807. package/src/lib/collections/depreciation.collection.ts +0 -113
  808. package/src/lib/collections/employee.collection.ts +0 -14
  809. package/src/lib/collections/income-source.collection.ts +0 -44
  810. package/src/lib/collections/loan.collection.ts +0 -22
  811. package/src/lib/collections/logbook.collection.ts +0 -129
  812. package/src/lib/collections/message-document.collection.ts +0 -16
  813. package/src/lib/collections/message.collection.ts +0 -27
  814. package/src/lib/collections/property.collection.ts +0 -88
  815. package/src/lib/collections/service-price.collection.ts +0 -13
  816. package/src/lib/collections/service-subscription.collection.ts +0 -20
  817. package/src/lib/collections/tax-return-category-item.collection.ts +0 -148
  818. package/src/lib/collections/tax-review.collection.ts +0 -64
  819. package/src/lib/collections/transaction-allocation.collection.ts +0 -54
  820. package/src/lib/collections/transaction.collection.ts +0 -170
  821. package/src/lib/collections/user-event-setting.collection.ts +0 -70
  822. package/src/lib/db/Enums/address-type.enum.ts +0 -4
  823. package/src/lib/db/Enums/bank-account-status.enum.ts +0 -4
  824. package/src/lib/db/Enums/bank-account-type.enum.ts +0 -10
  825. package/src/lib/db/Enums/bank-connection-status.enum.ts +0 -5
  826. package/src/lib/db/Enums/bank-transaction-type.enum.ts +0 -4
  827. package/src/lib/db/Enums/chart-accounts-category.enum.ts +0 -13
  828. package/src/lib/db/Enums/chart-accounts-etp.enum.ts +0 -7
  829. package/src/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.ts +0 -6
  830. package/src/lib/db/Enums/chart-accounts-heading-taxable.enum.ts +0 -6
  831. package/src/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.ts +0 -4
  832. package/src/lib/db/Enums/chart-accounts-list.enum.ts +0 -19
  833. package/src/lib/db/Enums/chart-accounts-metadata-list.enum.ts +0 -14
  834. package/src/lib/db/Enums/chart-accounts-metadata-type.enum.ts +0 -4
  835. package/src/lib/db/Enums/chart-accounts-type.enum.ts +0 -4
  836. package/src/lib/db/Enums/chat-status.enum.ts +0 -4
  837. package/src/lib/db/Enums/client-details-medicare-exemption.enum.ts +0 -5
  838. package/src/lib/db/Enums/client-details-work-depreciation-calculation.enum.ts +0 -4
  839. package/src/lib/db/Enums/client-details-working-holiday-maker.enum.ts +0 -5
  840. package/src/lib/db/Enums/client-invite-status.enum.ts +0 -4
  841. package/src/lib/db/Enums/client-invite-type.enum.ts +0 -4
  842. package/src/lib/db/Enums/depreciation-calculation-percent.enum.ts +0 -7
  843. package/src/lib/db/Enums/depreciation-calculation.enum.ts +0 -7
  844. package/src/lib/db/Enums/depreciation-type.enum.ts +0 -6
  845. package/src/lib/db/Enums/depreciation-write-off-amount.enum.ts +0 -4
  846. package/src/lib/db/Enums/firm-type.enum.ts +0 -4
  847. package/src/lib/db/Enums/income-source-type-list-other.enum.ts +0 -6
  848. package/src/lib/db/Enums/income-source-type-list-salary.enum.ts +0 -3
  849. package/src/lib/db/Enums/income-source-type-list-work.enum.ts +0 -8
  850. package/src/lib/db/Enums/income-source-type.enum.ts +0 -5
  851. package/src/lib/db/Enums/invite-status.enum.ts +0 -5
  852. package/src/lib/db/Enums/loan-bank-type.enum.ts +0 -10
  853. package/src/lib/db/Enums/loan-frequency.enum.ts +0 -6
  854. package/src/lib/db/Enums/loan-interest-type.enum.ts +0 -4
  855. package/src/lib/db/Enums/loan-payout-type.enum.ts +0 -4
  856. package/src/lib/db/Enums/loan-repayment-frequency.enum.ts +0 -5
  857. package/src/lib/db/Enums/loan-repayment-type.enum.ts +0 -4
  858. package/src/lib/db/Enums/loan-type.enum.ts +0 -12
  859. package/src/lib/db/Enums/loan-vehicle-type.enum.ts +0 -5
  860. package/src/lib/db/Enums/phone-type.enum.ts +0 -4
  861. package/src/lib/db/Enums/property-depreciation-calculation.enum.ts +0 -4
  862. package/src/lib/db/Enums/property-owner-access.enum.ts +0 -4
  863. package/src/lib/db/Enums/property-owner-status.enum.ts +0 -5
  864. package/src/lib/db/Enums/registration-invite-status.enum.ts +0 -4
  865. package/src/lib/db/Enums/salary-forecast-frequency.enum.ts +0 -6
  866. package/src/lib/db/Enums/service-notification-status.enum.ts +0 -5
  867. package/src/lib/db/Enums/service-notification-type.enum.ts +0 -4
  868. package/src/lib/db/Enums/service-payment-status.enum.ts +0 -4
  869. package/src/lib/db/Enums/service-price-recurring-interval.enum.ts +0 -6
  870. package/src/lib/db/Enums/service-price-type.enum.ts +0 -4
  871. package/src/lib/db/Enums/service-subscription-status.enum.ts +0 -8
  872. package/src/lib/db/Enums/spare-document-spare-type.enum.ts +0 -4
  873. package/src/lib/db/Enums/tank-type.enum.ts +0 -5
  874. package/src/lib/db/Enums/tax-calculation-medicare-exemption.enum.ts +0 -4
  875. package/src/lib/db/Enums/tax-calculation-type.enum.ts +0 -12
  876. package/src/lib/db/Enums/tax-return-category-list.enum.ts +0 -26
  877. package/src/lib/db/Enums/tax-return-category-section.enum.ts +0 -6
  878. package/src/lib/db/Enums/tax-review-status.enum.ts +0 -11
  879. package/src/lib/db/Enums/tax-summary-list.enum.ts +0 -15
  880. package/src/lib/db/Enums/tax-summary-section.enum.ts +0 -6
  881. package/src/lib/db/Enums/tax-summary-tax-summary.enum.ts +0 -15
  882. package/src/lib/db/Enums/ticket-feedback.enum.ts +0 -4
  883. package/src/lib/db/Enums/ticket-status.enum.ts +0 -7
  884. package/src/lib/db/Enums/ticket-types.enum.ts +0 -3
  885. package/src/lib/db/Enums/transaction-operation.enum.ts +0 -5
  886. package/src/lib/db/Enums/transaction-source.enum.ts +0 -4
  887. package/src/lib/db/Enums/transaction-type.enum.ts +0 -4
  888. package/src/lib/db/Enums/user-event-status.enum.ts +0 -6
  889. package/src/lib/db/Enums/user-event-type-frequency.enum.ts +0 -6
  890. package/src/lib/db/Enums/user-event-type-reminder-type.enum.ts +0 -6
  891. package/src/lib/db/Enums/user-event-type-reminder.enum.ts +0 -5
  892. package/src/lib/db/Enums/user-event-type-type.enum.ts +0 -33
  893. package/src/lib/db/Enums/user-medicare-exemption.enum.ts +0 -5
  894. package/src/lib/db/Enums/user-roles.enum.ts +0 -13
  895. package/src/lib/db/Enums/user-status.enum.ts +0 -6
  896. package/src/lib/db/Enums/user-title.enum.ts +0 -7
  897. package/src/lib/db/Enums/user-work-depreciation-calculation.enum.ts +0 -4
  898. package/src/lib/db/Enums/user-working-holiday-maker.enum.ts +0 -5
  899. package/src/lib/db/Enums/vehicle-claim-method.enum.ts +0 -4
  900. package/src/lib/db/Enums/vehicle-logbook-purpose.enum.ts +0 -4
  901. package/src/lib/db/Models/address.ts +0 -20
  902. package/src/lib/db/Models/bank-account-balance.ts +0 -13
  903. package/src/lib/db/Models/bank-account-property.ts +0 -9
  904. package/src/lib/db/Models/bank-account.ts +0 -34
  905. package/src/lib/db/Models/bank-connection.ts +0 -15
  906. package/src/lib/db/Models/bank-provider-account.ts +0 -13
  907. package/src/lib/db/Models/bank-transaction-import.ts +0 -12
  908. package/src/lib/db/Models/bank-transaction-rule.ts +0 -26
  909. package/src/lib/db/Models/bank-transaction.ts +0 -17
  910. package/src/lib/db/Models/bank.ts +0 -12
  911. package/src/lib/db/Models/basiq-job.ts +0 -9
  912. package/src/lib/db/Models/borrowing-expense-loan.ts +0 -15
  913. package/src/lib/db/Models/borrowing-expense.ts +0 -7
  914. package/src/lib/db/Models/capital-cost-property.ts +0 -14
  915. package/src/lib/db/Models/capital-cost.ts +0 -4
  916. package/src/lib/db/Models/chart-accounts-depreciation.ts +0 -11
  917. package/src/lib/db/Models/chart-accounts-heading.ts +0 -7
  918. package/src/lib/db/Models/chart-accounts-metadata.ts +0 -12
  919. package/src/lib/db/Models/chart-accounts-value.ts +0 -13
  920. package/src/lib/db/Models/chart-accounts.ts +0 -24
  921. package/src/lib/db/Models/chat.ts +0 -18
  922. package/src/lib/db/Models/client-details.ts +0 -30
  923. package/src/lib/db/Models/client-invite.ts +0 -17
  924. package/src/lib/db/Models/client-movement.ts +0 -13
  925. package/src/lib/db/Models/country.ts +0 -5
  926. package/src/lib/db/Models/depreciation-capital-project.ts +0 -14
  927. package/src/lib/db/Models/depreciation-forecast.ts +0 -19
  928. package/src/lib/db/Models/depreciation-receipt.ts +0 -12
  929. package/src/lib/db/Models/depreciation.ts +0 -43
  930. package/src/lib/db/Models/document-base.ts +0 -10
  931. package/src/lib/db/Models/document-folder.ts +0 -10
  932. package/src/lib/db/Models/document.ts +0 -12
  933. package/src/lib/db/Models/employee-details.ts +0 -8
  934. package/src/lib/db/Models/employee-invite.ts +0 -10
  935. package/src/lib/db/Models/financial-data-system.ts +0 -10
  936. package/src/lib/db/Models/firm-invite.ts +0 -15
  937. package/src/lib/db/Models/firm.ts +0 -29
  938. package/src/lib/db/Models/income-source-forecast.ts +0 -13
  939. package/src/lib/db/Models/income-source-type.ts +0 -9
  940. package/src/lib/db/Models/income-source.ts +0 -21
  941. package/src/lib/db/Models/loan-payout.ts +0 -13
  942. package/src/lib/db/Models/loan.ts +0 -34
  943. package/src/lib/db/Models/message-document.ts +0 -16
  944. package/src/lib/db/Models/message.ts +0 -16
  945. package/src/lib/db/Models/occupation.ts +0 -5
  946. package/src/lib/db/Models/phone.ts +0 -13
  947. package/src/lib/db/Models/property-capital-cost.ts +0 -14
  948. package/src/lib/db/Models/property-category-movement.ts +0 -18
  949. package/src/lib/db/Models/property-category.ts +0 -14
  950. package/src/lib/db/Models/property-document.ts +0 -14
  951. package/src/lib/db/Models/property-forecast.ts +0 -15
  952. package/src/lib/db/Models/property-owner.ts +0 -21
  953. package/src/lib/db/Models/property-sold.ts +0 -13
  954. package/src/lib/db/Models/property-subscription.ts +0 -10
  955. package/src/lib/db/Models/property-valuation.ts +0 -13
  956. package/src/lib/db/Models/property.ts +0 -42
  957. package/src/lib/db/Models/registration-invite.ts +0 -13
  958. package/src/lib/db/Models/salary-forecast.ts +0 -16
  959. package/src/lib/db/Models/service-notification.ts +0 -14
  960. package/src/lib/db/Models/service-payment.ts +0 -12
  961. package/src/lib/db/Models/service-price.ts +0 -16
  962. package/src/lib/db/Models/service-product.ts +0 -13
  963. package/src/lib/db/Models/service-subscription-item.ts +0 -10
  964. package/src/lib/db/Models/service-subscription.ts +0 -15
  965. package/src/lib/db/Models/spare-document-category.ts +0 -6
  966. package/src/lib/db/Models/spare-document.ts +0 -16
  967. package/src/lib/db/Models/tax-calculation.ts +0 -19
  968. package/src/lib/db/Models/tax-return-category.ts +0 -13
  969. package/src/lib/db/Models/tax-return-item.ts +0 -16
  970. package/src/lib/db/Models/tax-return.ts +0 -9
  971. package/src/lib/db/Models/tax-review.ts +0 -14
  972. package/src/lib/db/Models/ticket.ts +0 -20
  973. package/src/lib/db/Models/transaction-allocation.ts +0 -9
  974. package/src/lib/db/Models/transaction-base.ts +0 -33
  975. package/src/lib/db/Models/transaction-metadata.ts +0 -12
  976. package/src/lib/db/Models/transaction-receipt.ts +0 -12
  977. package/src/lib/db/Models/transaction.ts +0 -44
  978. package/src/lib/db/Models/user-event-setting.ts +0 -11
  979. package/src/lib/db/Models/user-event-type.ts +0 -16
  980. package/src/lib/db/Models/user-event.ts +0 -14
  981. package/src/lib/db/Models/user.ts +0 -52
  982. package/src/lib/db/Models/vehicle-claim.ts +0 -12
  983. package/src/lib/db/Models/vehicle-logbook.ts +0 -17
  984. package/src/lib/db/Models/vehicle.ts +0 -9
  985. package/src/lib/functions/array/index.ts +0 -3
  986. package/src/lib/functions/array/replace.ts +0 -5
  987. package/src/lib/functions/array/sort-deep.ts +0 -19
  988. package/src/lib/functions/array/sort.ts +0 -8
  989. package/src/lib/functions/clone-deep.ts +0 -4
  990. package/src/lib/functions/create-date.ts +0 -7
  991. package/src/lib/functions/enum-to-list.ts +0 -16
  992. package/src/lib/functions/get-doc-icon.ts +0 -21
  993. package/src/lib/functions/mat-options-functions.ts +0 -11
  994. package/src/lib/functions/mat-sort-options.ts +0 -9
  995. package/src/lib/functions/round-to.ts +0 -9
  996. package/src/lib/functions/tax-review-filter-predicate.ts +0 -11
  997. package/src/lib/interfaces/asset-entity-type.enum.ts +0 -10
  998. package/src/lib/interfaces/asset-type.enum.ts +0 -9
  999. package/src/lib/interfaces/asset.interface.ts +0 -18
  1000. package/src/lib/interfaces/chart-data.interface.ts +0 -11
  1001. package/src/lib/interfaces/chart-serie.interface.ts +0 -8
  1002. package/src/lib/interfaces/document.interface.ts +0 -20
  1003. package/src/lib/interfaces/documentable.interface.ts +0 -9
  1004. package/src/lib/interfaces/event-listener.interface.ts +0 -9
  1005. package/src/lib/interfaces/income-source-forecast.interface.ts +0 -7
  1006. package/src/lib/interfaces/option.interface.ts +0 -4
  1007. package/src/lib/interfaces/photoable.ts +0 -14
  1008. package/src/lib/interfaces/receipt.interface.ts +0 -13
  1009. package/src/lib/interfaces/salary-forecast.interface.ts +0 -17
  1010. package/src/lib/interfaces/tank.interface.ts +0 -9
  1011. package/src/lib/models/address/address.ts +0 -24
  1012. package/src/lib/models/address/country.ts +0 -17
  1013. package/src/lib/models/bank/bank-account-chart-data.ts +0 -42
  1014. package/src/lib/models/bank/bank-account-property.ts +0 -8
  1015. package/src/lib/models/bank/bank-account-types.const.ts +0 -15
  1016. package/src/lib/models/bank/bank-account.ts +0 -136
  1017. package/src/lib/models/bank/bank-connection.ts +0 -12
  1018. package/src/lib/models/bank/bank-transaction-chart-data.ts +0 -132
  1019. package/src/lib/models/bank/bank-transaction-summary-fields.enum.ts +0 -4
  1020. package/src/lib/models/bank/bank-transaction.ts +0 -74
  1021. package/src/lib/models/bank/bank.ts +0 -21
  1022. package/src/lib/models/bank/basiq-job.ts +0 -4
  1023. package/src/lib/models/bank/basiq-token.ts +0 -16
  1024. package/src/lib/models/bank/type-loan.const.ts +0 -7
  1025. package/src/lib/models/borrowing-expense/borrowing-expense-loan.ts +0 -4
  1026. package/src/lib/models/borrowing-expense/borrowing-expense.ts +0 -4
  1027. package/src/lib/models/chart/chart-data.ts +0 -13
  1028. package/src/lib/models/chart/chart-serie.ts +0 -8
  1029. package/src/lib/models/chart-accounts/chart-accounts-categories.const.ts +0 -85
  1030. package/src/lib/models/chart-accounts/chart-accounts-depreciation.ts +0 -14
  1031. package/src/lib/models/chart-accounts/chart-accounts-heading.ts +0 -6
  1032. package/src/lib/models/chart-accounts/chart-accounts-metadata.ts +0 -15
  1033. package/src/lib/models/chart-accounts/chart-accounts-tax-labels.enum.ts +0 -5
  1034. package/src/lib/models/chart-accounts/chart-accounts.ts +0 -137
  1035. package/src/lib/models/chat/chat-view-type.enum.ts +0 -4
  1036. package/src/lib/models/chat/chat.ts +0 -23
  1037. package/src/lib/models/chat/message-document.ts +0 -18
  1038. package/src/lib/models/chat/message.ts +0 -40
  1039. package/src/lib/models/client/client-details.ts +0 -4
  1040. package/src/lib/models/client/client-invite.ts +0 -70
  1041. package/src/lib/models/client/client-movement.ts +0 -25
  1042. package/src/lib/models/client/client-portfolio-chart-data.ts +0 -65
  1043. package/src/lib/models/client/client-portfolio-report.ts +0 -10
  1044. package/src/lib/models/depreciation/depreciation-capital-project.ts +0 -10
  1045. package/src/lib/models/depreciation/depreciation-forecast.ts +0 -31
  1046. package/src/lib/models/depreciation/depreciation-group-item.ts +0 -20
  1047. package/src/lib/models/depreciation/depreciation-group.enum.ts +0 -7
  1048. package/src/lib/models/depreciation/depreciation-group.ts +0 -25
  1049. package/src/lib/models/depreciation/depreciation-groups.const.ts +0 -35
  1050. package/src/lib/models/depreciation/depreciation-receipt.ts +0 -9
  1051. package/src/lib/models/depreciation/depreciation.ts +0 -174
  1052. package/src/lib/models/document/document-api-url-prefix.enum.ts +0 -7
  1053. package/src/lib/models/document/document-file-types.const.ts +0 -22
  1054. package/src/lib/models/document/document-folder.ts +0 -11
  1055. package/src/lib/models/document/document.ts +0 -29
  1056. package/src/lib/models/employee/employee-details.ts +0 -8
  1057. package/src/lib/models/employee/employee-invite.ts +0 -12
  1058. package/src/lib/models/endpoint/endpoint.ts +0 -35
  1059. package/src/lib/models/endpoint/endpoints.const.ts +0 -157
  1060. package/src/lib/models/event/app-event-type.enum.ts +0 -37
  1061. package/src/lib/models/event/app-event.ts +0 -9
  1062. package/src/lib/models/file/icons-file.enum.ts +0 -5
  1063. package/src/lib/models/financial-year/financial-year.ts +0 -57
  1064. package/src/lib/models/financial-year/month-name-short.enum.ts +0 -19
  1065. package/src/lib/models/financial-year/month-number.enum.ts +0 -19
  1066. package/src/lib/models/financial-year/months.const.ts +0 -1
  1067. package/src/lib/models/firm/firm.ts +0 -31
  1068. package/src/lib/models/income-position/income-position.ts +0 -13
  1069. package/src/lib/models/income-source/income-source-chart-data.ts +0 -57
  1070. package/src/lib/models/income-source/income-source-forecast.ts +0 -35
  1071. package/src/lib/models/income-source/income-source-type.ts +0 -30
  1072. package/src/lib/models/income-source/income-source.ts +0 -57
  1073. package/src/lib/models/income-source/salary-forecast.ts +0 -23
  1074. package/src/lib/models/loan/loan-max-number-of-payments.enum.ts +0 -8
  1075. package/src/lib/models/loan/loan-payment.ts +0 -17
  1076. package/src/lib/models/loan/loan-payout.ts +0 -13
  1077. package/src/lib/models/loan/loan.ts +0 -38
  1078. package/src/lib/models/logbook/default-vehicle-expense.ts +0 -20
  1079. package/src/lib/models/logbook/logbook-period.ts +0 -12
  1080. package/src/lib/models/logbook/logbook-purpose-options.const.ts +0 -6
  1081. package/src/lib/models/logbook/vehicle-claim.ts +0 -27
  1082. package/src/lib/models/logbook/vehicle-logbook.ts +0 -16
  1083. package/src/lib/models/logbook/vehicle.ts +0 -46
  1084. package/src/lib/models/notification/notification-event-types.const.ts +0 -43
  1085. package/src/lib/models/notification/notification.ts +0 -66
  1086. package/src/lib/models/phone/phone.ts +0 -10
  1087. package/src/lib/models/property/calculation-form-item.ts +0 -24
  1088. package/src/lib/models/property/calculation-form-type.enum.ts +0 -7
  1089. package/src/lib/models/property/capital-costs-itmes.const.ts +0 -57
  1090. package/src/lib/models/property/corelogic-suggestion.ts +0 -18
  1091. package/src/lib/models/property/ownership-filter-options.enum.ts +0 -8
  1092. package/src/lib/models/property/property-capital-cost.ts +0 -4
  1093. package/src/lib/models/property/property-category-movement.ts +0 -18
  1094. package/src/lib/models/property/property-category.ts +0 -9
  1095. package/src/lib/models/property/property-document.ts +0 -21
  1096. package/src/lib/models/property/property-equity-chart-data.ts +0 -188
  1097. package/src/lib/models/property/property-equity-chart-item.ts +0 -35
  1098. package/src/lib/models/property/property-equity-chart-type.enum.ts +0 -4
  1099. package/src/lib/models/property/property-forecast.ts +0 -55
  1100. package/src/lib/models/property/property-owner.ts +0 -50
  1101. package/src/lib/models/property/property-sold.ts +0 -10
  1102. package/src/lib/models/property/property-subscription.ts +0 -11
  1103. package/src/lib/models/property/property-valuation.ts +0 -24
  1104. package/src/lib/models/property/property.ts +0 -157
  1105. package/src/lib/models/registration-invite/registration-invite.ts +0 -12
  1106. package/src/lib/models/service-subscription/module-url-list.const.ts +0 -11
  1107. package/src/lib/models/service-subscription/service-payment.ts +0 -8
  1108. package/src/lib/models/service-subscription/service-price.ts +0 -8
  1109. package/src/lib/models/service-subscription/service-product.ts +0 -11
  1110. package/src/lib/models/service-subscription/service-subscription-item.ts +0 -12
  1111. package/src/lib/models/service-subscription/service-subscription.ts +0 -151
  1112. package/src/lib/models/service-subscription/subscription-description.const.ts +0 -8
  1113. package/src/lib/models/service-subscription/subscription-title.const.ts +0 -8
  1114. package/src/lib/models/service-subscription/subscription-type.enum.ts +0 -6
  1115. package/src/lib/models/tax-review/tax-review.ts +0 -96
  1116. package/src/lib/models/tax-summary/tax-return-category-item-details.ts +0 -14
  1117. package/src/lib/models/tax-summary/tax-return-category-item.ts +0 -22
  1118. package/src/lib/models/tax-summary/tax-summary-section.ts +0 -32
  1119. package/src/lib/models/tax-summary/tax-summary-type.enum.ts +0 -7
  1120. package/src/lib/models/tax-summary/tax-summary.ts +0 -79
  1121. package/src/lib/models/transaction/income-amount-type.enum.ts +0 -7
  1122. package/src/lib/models/transaction/transaction-allocation.ts +0 -20
  1123. package/src/lib/models/transaction/transaction-metadata.ts +0 -8
  1124. package/src/lib/models/transaction/transaction-receipt.ts +0 -9
  1125. package/src/lib/models/transaction/transaction.ts +0 -241
  1126. package/src/lib/models/user/my-account-history-initiated-by.enum.ts +0 -4
  1127. package/src/lib/models/user/my-account-history-status.enum.ts +0 -4
  1128. package/src/lib/models/user/my-account-history-type.enum.ts +0 -5
  1129. package/src/lib/models/user/my-account-history.ts +0 -12
  1130. package/src/lib/models/user/occupation.ts +0 -4
  1131. package/src/lib/models/user/user-roles.const.ts +0 -13
  1132. package/src/lib/models/user/user-to-register.ts +0 -7
  1133. package/src/lib/models/user/user-work-position.const.ts +0 -7
  1134. package/src/lib/models/user/user.ts +0 -160
  1135. package/src/lib/models/user-event/user-event-category.enum.ts +0 -9
  1136. package/src/lib/models/user-event/user-event-category.ts +0 -9
  1137. package/src/lib/models/user-event/user-event-setting-field.enum.ts +0 -8
  1138. package/src/lib/models/user-event/user-event-setting.ts +0 -11
  1139. package/src/lib/models/user-event/user-event-type.ts +0 -22
  1140. package/src/lib/services/address/address.service.spec.ts +0 -12
  1141. package/src/lib/services/address/address.service.ts +0 -36
  1142. package/src/lib/services/asset/assets.service.spec.ts +0 -12
  1143. package/src/lib/services/asset/assets.service.ts +0 -51
  1144. package/src/lib/services/auth/auth.service.ts +0 -48
  1145. package/src/lib/services/auth/jwt.service.ts +0 -37
  1146. package/src/lib/services/bank/bank-account-calculation.service.spec.ts +0 -16
  1147. package/src/lib/services/bank/bank-account-calculation.service.ts +0 -38
  1148. package/src/lib/services/bank/bank-account.service.spec.ts +0 -12
  1149. package/src/lib/services/bank/bank-account.service.ts +0 -120
  1150. package/src/lib/services/bank/bank-connection.service.spec.ts +0 -12
  1151. package/src/lib/services/bank/bank-connection.service.ts +0 -42
  1152. package/src/lib/services/bank/bank-transaction-calculation.service.spec.ts +0 -16
  1153. package/src/lib/services/bank/bank-transaction-calculation.service.ts +0 -71
  1154. package/src/lib/services/bank/bank-transaction.service.spec.ts +0 -12
  1155. package/src/lib/services/bank/bank-transaction.service.ts +0 -97
  1156. package/src/lib/services/bank/bank.service.spec.ts +0 -12
  1157. package/src/lib/services/bank/bank.service.ts +0 -16
  1158. package/src/lib/services/bank/basiq.service.spec.ts +0 -12
  1159. package/src/lib/services/bank/basiq.service.ts +0 -103
  1160. package/src/lib/services/base-rest.service.spec.ts +0 -13
  1161. package/src/lib/services/base-rest.service.ts +0 -229
  1162. package/src/lib/services/borrowing-expense/borrowing-expense.service.spec.ts +0 -12
  1163. package/src/lib/services/borrowing-expense/borrowing-expense.service.ts +0 -82
  1164. package/src/lib/services/chart-accounts/chart-accounts-depreciations.service.spec.ts +0 -16
  1165. package/src/lib/services/chart-accounts/chart-accounts-depreciations.service.ts +0 -34
  1166. package/src/lib/services/chart-accounts/chart-accounts.service.spec.ts +0 -12
  1167. package/src/lib/services/chart-accounts/chart-accounts.service.ts +0 -101
  1168. package/src/lib/services/chat/chat.service.spec.ts +0 -16
  1169. package/src/lib/services/chat/chat.service.ts +0 -79
  1170. package/src/lib/services/chat/message-document.service.spec.ts +0 -16
  1171. package/src/lib/services/chat/message-document.service.ts +0 -133
  1172. package/src/lib/services/chat/message.service.spec.ts +0 -16
  1173. package/src/lib/services/chat/message.service.ts +0 -61
  1174. package/src/lib/services/client/client-invite.service.spec.ts +0 -16
  1175. package/src/lib/services/client/client-invite.service.ts +0 -111
  1176. package/src/lib/services/client/client-movement.service.spec.ts +0 -16
  1177. package/src/lib/services/client/client-movement.service.ts +0 -114
  1178. package/src/lib/services/client/client-portfolio-report.service.spec.ts +0 -16
  1179. package/src/lib/services/client/client-portfolio-report.service.ts +0 -34
  1180. package/src/lib/services/depreciation/capital-project.service.spec.ts +0 -16
  1181. package/src/lib/services/depreciation/capital-project.service.ts +0 -69
  1182. package/src/lib/services/depreciation/depreciation.service.spec.ts +0 -12
  1183. package/src/lib/services/depreciation/depreciation.service.ts +0 -171
  1184. package/src/lib/services/document/document-folder.service.spec.ts +0 -16
  1185. package/src/lib/services/document/document-folder.service.ts +0 -95
  1186. package/src/lib/services/employee/employee-invite.service.spec.ts +0 -16
  1187. package/src/lib/services/employee/employee-invite.service.ts +0 -53
  1188. package/src/lib/services/employee/employee.service.spec.ts +0 -16
  1189. package/src/lib/services/employee/employee.service.ts +0 -35
  1190. package/src/lib/services/event/event-dispatcher.service.spec.ts +0 -16
  1191. package/src/lib/services/event/event-dispatcher.service.ts +0 -29
  1192. package/src/lib/services/event/sse.service.spec.ts +0 -16
  1193. package/src/lib/services/event/sse.service.ts +0 -42
  1194. package/src/lib/services/firm/firm.service.spec.ts +0 -16
  1195. package/src/lib/services/firm/firm.service.ts +0 -93
  1196. package/src/lib/services/header-title/header-title.service.spec.ts +0 -12
  1197. package/src/lib/services/header-title/header-title.service.ts +0 -31
  1198. package/src/lib/services/income-source/income-source-forecast.service.spec.ts +0 -16
  1199. package/src/lib/services/income-source/income-source-forecast.service.ts +0 -91
  1200. package/src/lib/services/income-source/income-source.service.spec.ts +0 -12
  1201. package/src/lib/services/income-source/income-source.service.ts +0 -127
  1202. package/src/lib/services/income-source/salary-forecast.service.spec.ts +0 -16
  1203. package/src/lib/services/income-source/salary-forecast.service.ts +0 -92
  1204. package/src/lib/services/intercom/intercom.service.spec.ts +0 -16
  1205. package/src/lib/services/intercom/intercom.service.ts +0 -37
  1206. package/src/lib/services/loan/loan.service.spec.ts +0 -12
  1207. package/src/lib/services/loan/loan.service.ts +0 -166
  1208. package/src/lib/services/notification/notification.service.spec.ts +0 -12
  1209. package/src/lib/services/notification/notification.service.ts +0 -60
  1210. package/src/lib/services/preloader/preloader.service.spec.ts +0 -16
  1211. package/src/lib/services/preloader/preloader.service.ts +0 -28
  1212. package/src/lib/services/property/corelogic.service.spec.ts +0 -12
  1213. package/src/lib/services/property/corelogic.service.ts +0 -47
  1214. package/src/lib/services/property/property-calculation.service.spec.ts +0 -16
  1215. package/src/lib/services/property/property-calculation.service.ts +0 -166
  1216. package/src/lib/services/property/property-capital-cost.service.ts +0 -42
  1217. package/src/lib/services/property/property-category.service.spec.ts +0 -16
  1218. package/src/lib/services/property/property-category.service.ts +0 -15
  1219. package/src/lib/services/property/property-document.service.spec.ts +0 -16
  1220. package/src/lib/services/property/property-document.service.ts +0 -74
  1221. package/src/lib/services/property/property-owner.service.spec.ts +0 -12
  1222. package/src/lib/services/property/property-owner.service.ts +0 -134
  1223. package/src/lib/services/property/property-sold.service.spec.ts +0 -16
  1224. package/src/lib/services/property/property-sold.service.ts +0 -15
  1225. package/src/lib/services/property/property.service.spec.ts +0 -12
  1226. package/src/lib/services/property/property.service.ts +0 -136
  1227. package/src/lib/services/subscription/subscription.service.spec.ts +0 -12
  1228. package/src/lib/services/subscription/subscription.service.ts +0 -153
  1229. package/src/lib/services/tax-review/tax-review-history.service.spec.ts +0 -16
  1230. package/src/lib/services/tax-review/tax-review-history.service.ts +0 -35
  1231. package/src/lib/services/tax-review/tax-review.service.spec.ts +0 -16
  1232. package/src/lib/services/tax-review/tax-review.service.ts +0 -114
  1233. package/src/lib/services/tax-summary/tax-summary.service.ts +0 -70
  1234. package/src/lib/services/transaction/transaction-allocation.service.spec.ts +0 -12
  1235. package/src/lib/services/transaction/transaction-allocation.service.ts +0 -92
  1236. package/src/lib/services/transaction/transaction-calculation.service.spec.ts +0 -16
  1237. package/src/lib/services/transaction/transaction-calculation.service.ts +0 -50
  1238. package/src/lib/services/transaction/transaction.service.spec.ts +0 -12
  1239. package/src/lib/services/transaction/transaction.service.ts +0 -374
  1240. package/src/lib/services/user/occupation.service.spec.ts +0 -12
  1241. package/src/lib/services/user/occupation.service.ts +0 -42
  1242. package/src/lib/services/user/user-switcher.service.ts +0 -34
  1243. package/src/lib/services/user/user.service.spec.ts +0 -12
  1244. package/src/lib/services/user/user.service.ts +0 -140
  1245. package/src/lib/services/user-event/user-event-setting.service.spec.ts +0 -16
  1246. package/src/lib/services/user-event/user-event-setting.service.ts +0 -60
  1247. package/src/lib/services/user-event/user-event-type.service.spec.ts +0 -16
  1248. package/src/lib/services/user-event/user-event-type.service.ts +0 -24
  1249. package/src/lib/services/work/work-tank.service.spec.ts +0 -12
  1250. package/src/lib/services/work/work-tank.service.ts +0 -277
  1251. package/src/lib/tt-core.module.ts +0 -22
  1252. package/src/lib/tt-core.service.spec.ts +0 -16
  1253. package/src/lib/tt-core.service.ts +0 -17
  1254. package/src/public-api.ts +0 -425
  1255. package/src/test.ts +0 -27
  1256. package/tsconfig.lib.json +0 -15
  1257. package/tsconfig.lib.prod.json +0 -10
  1258. package/tsconfig.spec.json +0 -17
@@ -0,0 +1,102 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { map } from 'rxjs/operators';
3
+ import { replace } from '../../functions/array';
4
+ import _ from 'lodash';
5
+ import { plainToClass } from 'class-transformer';
6
+ import { BaseRestService } from '../base-rest.service';
7
+ import { ClientInvite } from '../../models/client/client-invite';
8
+ import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
9
+ import { AppEvent } from '../../models/event/app-event';
10
+ import * as i0 from "@angular/core";
11
+ export class ClientInviteService extends BaseRestService {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.url = 'clients/invites';
15
+ this.modelClass = ClientInvite;
16
+ }
17
+ /**
18
+ * Import employees for firm from CSV file
19
+ * @param file
20
+ */
21
+ import(file) {
22
+ const formData = new FormData();
23
+ formData.append('file', file);
24
+ return this.http.post(`${this.environment.apiV2}/${this.url}/import`, formData)
25
+ .pipe(map((clientInvite) => {
26
+ return clientInvite;
27
+ }));
28
+ }
29
+ /**
30
+ * Accept client invitation from firm to user
31
+ * @param invite
32
+ */
33
+ accept(invite) {
34
+ return this.http.post(`${this.environment.apiV2}/${this.url}/${invite.id}/accept`, null)
35
+ .pipe(map(() => {
36
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CLIENT_INVITE_ACCEPTED, invite));
37
+ // set cache without accepted invite
38
+ this.cache = this.cache.filter((clientInvite) => invite.id !== clientInvite.id);
39
+ this.updateCache();
40
+ }));
41
+ }
42
+ /**
43
+ * Reject client invitation from firm to user
44
+ * @param invite
45
+ */
46
+ reject(invite) {
47
+ return this.http.post(`${this.environment.apiV2}/${this.url}/${invite.id}/reject`, null)
48
+ .pipe(map((rejectedInvite) => {
49
+ const updatedInvite = plainToClass(ClientInvite, rejectedInvite);
50
+ // avoid cache changes
51
+ // @TODO make cache readonly
52
+ const tempCache = _.cloneDeep(this.cache);
53
+ replace(tempCache, plainToClass(ClientInvite, updatedInvite));
54
+ this.cache = tempCache;
55
+ this.updateCache();
56
+ return updatedInvite;
57
+ }));
58
+ }
59
+ /**
60
+ * Resend invitation from firm to client
61
+ * @param invite
62
+ */
63
+ resend(invite) {
64
+ return this.http.post(`${this.environment.apiV2}/${this.url}/${invite.id}/resend`, null)
65
+ .pipe(map((rejectedInvite) => {
66
+ const updatedInvite = plainToClass(ClientInvite, rejectedInvite);
67
+ // avoid cache changes
68
+ // @TODO make cache readonly
69
+ const tempCache = _.cloneDeep(this.cache);
70
+ replace(tempCache, plainToClass(ClientInvite, updatedInvite));
71
+ this.cache = tempCache;
72
+ this.updateCache();
73
+ return updatedInvite;
74
+ }));
75
+ }
76
+ /**
77
+ * Send invitation from client to firm
78
+ * @param invite
79
+ */
80
+ inviteFirmByUser(invite) {
81
+ return this.http.post(`${this.environment.apiV2}/firms/invite`, invite)
82
+ .pipe(map((inviteBase) => {
83
+ const newInvite = plainToClass(ClientInvite, inviteBase);
84
+ // avoid cache changes
85
+ // @TODO make cache readonly
86
+ const tempCache = _.cloneDeep(this.cache);
87
+ tempCache.push(newInvite);
88
+ this.cache = tempCache;
89
+ this.updateCache();
90
+ return newInvite;
91
+ }));
92
+ }
93
+ }
94
+ ClientInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
95
+ ClientInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, providedIn: 'root' });
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, decorators: [{
97
+ type: Injectable,
98
+ args: [{
99
+ providedIn: 'root'
100
+ }]
101
+ }] });
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWludml0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2NsaWVudC9jbGllbnQtaW52aXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hELE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBS3hELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxlQUErQztJQUh4Rjs7UUFJRSxRQUFHLEdBQVcsaUJBQWlCLENBQUM7UUFDaEMsZUFBVSxHQUF3QixZQUFZLENBQUM7S0E2RmhEO0lBM0ZDOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxJQUFVO1FBQ2YsTUFBTSxRQUFRLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUMxQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUU5QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsU0FBUyxFQUFFLFFBQVEsQ0FBQzthQUM1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QVcsQ0FBQyxLQUFLLGVBQWUsRUFBRSxNQUFNLENBQUM7YUFDcEUsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFVBQTRCLEVBQWdCLEVBQUU7WUFDakQsTUFBTSxTQUFTLEdBQWlCLFlBQVksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDdkUsc0JBQXNCO1lBQ3RCLDRCQUE0QjtZQUM1QixNQUFNLFNBQVMsR0FBbUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUQsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQztZQUN2QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7O2lIQTlGVSxtQkFBbUI7cUhBQW5CLG1CQUFtQixjQUZsQixNQUFNOzRGQUVQLG1CQUFtQjtrQkFIL0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDbGllbnRJbnZpdGUgYXMgQ2xpZW50SW52aXRlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9jbGllbnQtaW52aXRlJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHJlcGxhY2UgfSBmcm9tICcuLi8uLi9mdW5jdGlvbnMvYXJyYXknO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEJhc2VSZXN0U2VydmljZSB9IGZyb20gJy4uL2Jhc2UtcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IENsaWVudEludml0ZSB9IGZyb20gJy4uLy4uL21vZGVscy9jbGllbnQvY2xpZW50LWludml0ZSc7XG5pbXBvcnQgeyBBcHBFdmVudFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V2ZW50L2FwcC1ldmVudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgQXBwRXZlbnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50SW52aXRlU2VydmljZSBleHRlbmRzIEJhc2VSZXN0U2VydmljZTxDbGllbnRJbnZpdGVCYXNlLCBDbGllbnRJbnZpdGU+IHtcbiAgdXJsOiBzdHJpbmcgPSAnY2xpZW50cy9pbnZpdGVzJztcbiAgbW9kZWxDbGFzczogdHlwZW9mIENsaWVudEludml0ZSA9IENsaWVudEludml0ZTtcblxuICAvKipcbiAgICogSW1wb3J0IGVtcGxveWVlcyBmb3IgZmlybSBmcm9tIENTViBmaWxlXG4gICAqIEBwYXJhbSBmaWxlXG4gICAqL1xuICBpbXBvcnQoZmlsZTogRmlsZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlW10+IHtcbiAgICBjb25zdCBmb3JtRGF0YTogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YS5hcHBlbmQoJ2ZpbGUnLCBmaWxlKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS9pbXBvcnRgLCBmb3JtRGF0YSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGNsaWVudEludml0ZTogQ2xpZW50SW52aXRlW10pID0+IHtcbiAgICAgICAgICByZXR1cm4gY2xpZW50SW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBY2NlcHQgY2xpZW50IGludml0YXRpb24gZnJvbSBmaXJtIHRvIHVzZXJcbiAgICogQHBhcmFtIGludml0ZVxuICAgKi9cbiAgYWNjZXB0KGludml0ZTogQ2xpZW50SW52aXRlKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH0vJHtpbnZpdGUuaWR9L2FjY2VwdGAsIG51bGwpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpOiB2b2lkID0+IHtcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX0lOVklURV9BQ0NFUFRFRCwgaW52aXRlKSk7XG4gICAgICAgICAgLy8gc2V0IGNhY2hlIHdpdGhvdXQgYWNjZXB0ZWQgaW52aXRlXG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHRoaXMuY2FjaGUuZmlsdGVyKChjbGllbnRJbnZpdGU6IENsaWVudEludml0ZSkgPT4gaW52aXRlLmlkICE9PSBjbGllbnRJbnZpdGUuaWQpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogUmVqZWN0IGNsaWVudCBpbnZpdGF0aW9uIGZyb20gZmlybSB0byB1c2VyXG4gICAqIEBwYXJhbSBpbnZpdGVcbiAgICovXG4gIHJlamVjdChpbnZpdGU6IENsaWVudEludml0ZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7aW52aXRlLmlkfS9yZWplY3RgLCBudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVqZWN0ZWRJbnZpdGU6IENsaWVudEludml0ZUJhc2UpOiBDbGllbnRJbnZpdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnZpdGU6IENsaWVudEludml0ZSA9IHBsYWluVG9DbGFzcyhDbGllbnRJbnZpdGUsIHJlamVjdGVkSW52aXRlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICByZXBsYWNlKHRlbXBDYWNoZSwgcGxhaW5Ub0NsYXNzKENsaWVudEludml0ZSwgdXBkYXRlZEludml0ZSkpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNlbmQgaW52aXRhdGlvbiBmcm9tIGZpcm0gdG8gY2xpZW50XG4gICAqIEBwYXJhbSBpbnZpdGVcbiAgICovXG4gIHJlc2VuZChpbnZpdGU6IENsaWVudEludml0ZSk6IE9ic2VydmFibGU8Q2xpZW50SW52aXRlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7aW52aXRlLmlkfS9yZXNlbmRgLCBudWxsKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVqZWN0ZWRJbnZpdGU6IENsaWVudEludml0ZUJhc2UpOiBDbGllbnRJbnZpdGUgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnZpdGU6IENsaWVudEludml0ZSA9IHBsYWluVG9DbGFzcyhDbGllbnRJbnZpdGUsIHJlamVjdGVkSW52aXRlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICByZXBsYWNlKHRlbXBDYWNoZSwgcGxhaW5Ub0NsYXNzKENsaWVudEludml0ZSwgdXBkYXRlZEludml0ZSkpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW52aXRlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZW5kIGludml0YXRpb24gZnJvbSBjbGllbnQgdG8gZmlybVxuICAgKiBAcGFyYW0gaW52aXRlXG4gICAqL1xuICBpbnZpdGVGaXJtQnlVc2VyKGludml0ZTogQ2xpZW50SW52aXRlKTogT2JzZXJ2YWJsZTxDbGllbnRJbnZpdGU+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZmlybXMvaW52aXRlYCwgaW52aXRlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoaW52aXRlQmFzZTogQ2xpZW50SW52aXRlQmFzZSk6IENsaWVudEludml0ZSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV3SW52aXRlOiBDbGllbnRJbnZpdGUgPSBwbGFpblRvQ2xhc3MoQ2xpZW50SW52aXRlLCBpbnZpdGVCYXNlKTtcbiAgICAgICAgICAvLyBhdm9pZCBjYWNoZSBjaGFuZ2VzXG4gICAgICAgICAgLy8gQFRPRE8gbWFrZSBjYWNoZSByZWFkb25seVxuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQ2xpZW50SW52aXRlW10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB0ZW1wQ2FjaGUucHVzaChuZXdJbnZpdGUpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiBuZXdJbnZpdGU7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,98 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { forkJoin } from 'rxjs';
3
+ import { map } from 'rxjs/operators';
4
+ import { ClientMovementCollection } from '../../collections/client-movement.collection';
5
+ import { plainToClass } from 'class-transformer';
6
+ import { BaseRestService } from '../base-rest.service';
7
+ import { ClientMovement } from '../../models/client/client-movement';
8
+ import { AppEvent } from '../../models/event/app-event';
9
+ import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "@angular/common/http";
12
+ import * as i2 from "../event/event-dispatcher.service";
13
+ export class ClientMovementService extends BaseRestService {
14
+ constructor(http, eventDispatcherService, environment) {
15
+ super(http, eventDispatcherService, environment);
16
+ this.http = http;
17
+ this.eventDispatcherService = eventDispatcherService;
18
+ this.environment = environment;
19
+ this.modelClass = ClientMovement;
20
+ this.url = 'client-movements';
21
+ this.isHydra = true;
22
+ this.listenEvents();
23
+ }
24
+ /**
25
+ * @TODO BaseRestService should return collection
26
+ */
27
+ getAll() {
28
+ return this.get().pipe(map((clientMovements) => {
29
+ return new ClientMovementCollection(clientMovements);
30
+ }));
31
+ }
32
+ getActive() {
33
+ return this.getAll().pipe(map((clientMovements) => {
34
+ return clientMovements.active;
35
+ }));
36
+ }
37
+ getActiveByFirmType(type) {
38
+ return this.getActive().pipe(map((clientMovements) => {
39
+ return clientMovements.getByFirmType(type);
40
+ }));
41
+ }
42
+ update(movement) {
43
+ // extend base 'add' method and pass into it movement without id
44
+ return super.add(plainToClass(ClientMovement, Object.assign({}, movement, { id: null }))).pipe(map((updatedMovement) => {
45
+ // remove provided movement from cache
46
+ this.cache = this.cache.filter((item) => item.id !== movement.id);
47
+ this.updateCache();
48
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CLIENT_TRANSFER_TO_OTHER_EMPLOYEE, [updatedMovement.client]));
49
+ return updatedMovement;
50
+ }));
51
+ }
52
+ updateBatch(clientMovements) {
53
+ const batch = clientMovements.map((clientMovement) => this.update(clientMovement));
54
+ return forkJoin(batch);
55
+ }
56
+ /**
57
+ * Reject current firm
58
+ */
59
+ close(clientMovement) {
60
+ clientMovement.dateTo = new Date();
61
+ return this.http.put(`${this.environment.apiV2}/client-movements/${clientMovement.id}/close`, clientMovement)
62
+ .pipe(map(() => {
63
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.CLIENT_MOVEMENT_CLOSED, null));
64
+ this.cache = this.cache.filter((movement) => movement.id !== clientMovement.id);
65
+ this.updateCache();
66
+ }));
67
+ }
68
+ /**
69
+ * Listen Event Dispatcher service
70
+ */
71
+ listenEvents() {
72
+ this.listenClientInvites();
73
+ }
74
+ /**
75
+ * Listen to EventDispatcherService event related to clients invitations
76
+ */
77
+ listenClientInvites() {
78
+ this.eventDispatcherService.on(AppEventTypeEnum.CLIENT_INVITE_ACCEPTED)
79
+ .subscribe(() => {
80
+ this.fetch().subscribe((clientMovements) => {
81
+ this.cache = clientMovements;
82
+ this.updateCache();
83
+ });
84
+ });
85
+ }
86
+ }
87
+ ClientMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
88
+ ClientMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, providedIn: 'root' });
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, decorators: [{
90
+ type: Injectable,
91
+ args: [{
92
+ providedIn: 'root'
93
+ }]
94
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
95
+ type: Inject,
96
+ args: ['environment']
97
+ }] }]; } });
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW1vdmVtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvY2xpZW50L2NsaWVudC1tb3ZlbWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxRQUFRLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXJFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQU0xRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBbUQ7SUFLNUYsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFQbkQsZUFBVSxHQUEwQixjQUFjLENBQUM7UUFDbkQsUUFBRyxHQUFXLGtCQUFrQixDQUFDO1FBQ2pDLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFRdEIsSUFBSSxDQUFDLFlB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O0lBQ0gsWUFBWTtRQUNWLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRDs7T0FFRztJQUNLLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDO2FBQ3BFLFNBQVMsQ0FBQyxHQUFTLEVBQUU7WUFDcEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGVBQWlDLEVBQUUsRUFBRTtnQkFDM0QsSUFBSSxDQUFDLEtBQUssR0FBRyxlQUFlLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7bUhBOUZVLHFCQUFxQixrRkFRdEIsYUFBYTt1SEFSWixxQkFBcUIsY0FGcEIsTUFBTTs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50IGFzIENsaWVudE1vdmVtZW50QmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9jbGllbnQtbW92ZW1lbnQnO1xuaW1wb3J0IHsgZm9ya0pvaW4sIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2NsaWVudC1tb3ZlbWVudC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IEZpcm1UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2Zpcm0tdHlwZS5lbnVtJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBCYXNlUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9iYXNlLXJlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudCB9IGZyb20gJy4uLy4uL21vZGVscy9jbGllbnQvY2xpZW50LW1vdmVtZW50JztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwRXZlbnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50JztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5cblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50TW92ZW1lbnRTZXJ2aWNlIGV4dGVuZHMgQmFzZVJlc3RTZXJ2aWNlPENsaWVudE1vdmVtZW50QmFzZSwgQ2xpZW50TW92ZW1lbnQ+IHtcbiAgbW9kZWxDbGFzczogdHlwZW9mIENsaWVudE1vdmVtZW50ID0gQ2xpZW50TW92ZW1lbnQ7XG4gIHVybDogc3RyaW5nID0gJ2NsaWVudC1tb3ZlbWVudHMnO1xuICBpc0h5ZHJhOiBib29sZWFuID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICAgIHN1cGVyKGh0dHAsIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIEJhc2VSZXN0U2VydmljZSBzaG91bGQgcmV0dXJuIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldEFsbCgpOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50Q29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpLnBpcGUoXG4gICAgICBtYXAoKGNsaWVudE1vdmVtZW50czogQ2xpZW50TW92ZW1lbnRbXSkgPT4ge1xuICAgICAgICByZXR1cm4gbmV3IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbihjbGllbnRNb3ZlbWVudHMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QWN0aXZlKCk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWxsKCkucGlwZShcbiAgICAgIG1hcCgoY2xpZW50TW92ZW1lbnRzOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24pOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24gPT4ge1xuICAgICAgICByZXR1cm4gY2xpZW50TW92ZW1lbnRzLmFjdGl2ZTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFjdGl2ZUJ5RmlybVR5cGUodHlwZTogRmlybVR5cGVFbnVtKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRBY3RpdmUoKS5waXBlKFxuICAgICAgbWFwKChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbik6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiA9PiB7XG4gICAgICAgIHJldHVybiBjbGllbnRNb3ZlbWVudHMuZ2V0QnlGaXJtVHlwZSh0eXBlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHVwZGF0ZShtb3ZlbWVudDogQ2xpZW50TW92ZW1lbnQpOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50PiB7XG4gICAgLy8gZXh0ZW5kIGJhc2UgJ2FkZCcgbWV0aG9kIGFuZCBwYXNzIGludG8gaXQgbW92ZW1lbnQgd2l0aG91dCBpZFxuICAgIHJldHVybiBzdXBlci5hZGQocGxhaW5Ub0NsYXNzKENsaWVudE1vdmVtZW50LCBPYmplY3QuYXNzaWduKHt9LCBtb3ZlbWVudCwge2lkOiBudWxsfSkpKS5waXBlKFxuICAgICAgbWFwKCh1cGRhdGVkTW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KSA9PiB7XG4gICAgICAgIC8vIHJlbW92ZSBwcm92aWRlZCBtb3ZlbWVudCBmcm9tIGNhY2hlXG4gICAgICAgIHRoaXMuY2FjaGUgPSB0aGlzLmNhY2hlLmZpbHRlcigoaXRlbTogQ2xpZW50TW92ZW1lbnQpID0+IGl0ZW0uaWQgIT09IG1vdmVtZW50LmlkKTtcbiAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuXG4gICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5DTElFTlRfVFJBTlNGRVJfVE9fT1RIRVJfRU1QTE9ZRUUsIFt1cGRhdGVkTW92ZW1lbnQuY2xpZW50XSkpO1xuXG4gICAgICAgIHJldHVybiB1cGRhdGVkTW92ZW1lbnQ7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICB1cGRhdGVCYXRjaChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50W10pOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50W10+IHtcbiAgICBjb25zdCBiYXRjaDogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD5bXSA9IGNsaWVudE1vdmVtZW50cy5tYXAoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gdGhpcy51cGRhdGUoY2xpZW50TW92ZW1lbnQpKTtcbiAgICByZXR1cm4gZm9ya0pvaW4oYmF0Y2gpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlamVjdCBjdXJyZW50IGZpcm1cbiAgICovXG4gIGNsb3NlKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIGNsaWVudE1vdmVtZW50LmRhdGVUbyA9IG5ldyBEYXRlKCk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vY2xpZW50LW1vdmVtZW50cy8ke2NsaWVudE1vdmVtZW50LmlkfS9jbG9zZWAsIGNsaWVudE1vdmVtZW50KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKTogdm9pZCA9PiB7XG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkNMSUVOVF9NT1ZFTUVOVF9DTE9TRUQsIG51bGwpKTtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKG1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCk6IGJvb2xlYW4gPT4gbW92ZW1lbnQuaWQgIT09IGNsaWVudE1vdmVtZW50LmlkKTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBFdmVudCBEaXNwYXRjaGVyIHNlcnZpY2VcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkNsaWVudEludml0ZXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudCByZWxhdGVkIHRvIGNsaWVudHMgaW52aXRhdGlvbnNcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuQ2xpZW50SW52aXRlcygpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oQXBwRXZlbnRUeXBlRW51bS5DTElFTlRfSU5WSVRFX0FDQ0VQVEVEKVxuICAgICAgLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICAgIHRoaXMuZmV0Y2goKS5zdWJzY3JpYmUoKGNsaWVudE1vdmVtZW50czogQ2xpZW50TW92ZW1lbnRbXSkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSBjbGllbnRNb3ZlbWVudHM7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,37 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { map } from 'rxjs/operators';
3
+ import { plainToClass } from 'class-transformer';
4
+ import { ClientPortfolioReport } from '../../models/client/client-portfolio-report';
5
+ import { ClientPortfolioReportCollection } from '../../collections/client-portfolio-report.collection';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common/http";
8
+ // @Todo refactor with BaseRest service
9
+ /**
10
+ * Service to work with employee clients tax summary data
11
+ */
12
+ export class ClientPortfolioReportService {
13
+ constructor(http, environment) {
14
+ this.http = http;
15
+ this.environment = environment;
16
+ this.url = 'portfolio-reports';
17
+ }
18
+ get() {
19
+ return this.http.get(`${this.environment.apiV2}/${this.url}`)
20
+ .pipe(map((response) => {
21
+ const clientReports = response['hydra:member'].map((item) => plainToClass(ClientPortfolioReport, item));
22
+ return new ClientPortfolioReportCollection(clientReports);
23
+ }));
24
+ }
25
+ }
26
+ ClientPortfolioReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
27
+ ClientPortfolioReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, providedIn: 'root' });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, decorators: [{
29
+ type: Injectable,
30
+ args: [{
31
+ providedIn: 'root'
32
+ }]
33
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
34
+ type: Inject,
35
+ args: ['environment']
36
+ }] }]; } });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXBvcnRmb2xpby1yZXBvcnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9jbGllbnQvY2xpZW50LXBvcnRmb2xpby1yZXBvcnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7QUFFdkcsdUNBQXVDO0FBQ3ZDOztHQUVHO0FBSUgsTUFBTSxPQUFPLDRCQUE0QjtJQUd2QyxZQUNVLElBQWdCLEVBQ08sV0FBZ0I7UUFEdkMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNPLGdCQUFXLEdBQVgsV0FBVyxDQUFLO1FBSmpELFFBQUcsR0FBVyxtQkFBbUIsQ0FBQztJQU1sQyxDQUFDO0lBRUQsR0FBRztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDMUQsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQWdCLEVBQUUsRUFBRTtZQUN2QixNQUFNLGFBQWEsR0FBNEIsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVksRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLHFCQUFxQixFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDekksT0FBTyxJQUFJLCtCQUErQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDOzswSEFqQlUsNEJBQTRCLDRDQUs3QixhQUFhOzhIQUxaLDRCQUE0QixjQUYzQixNQUFNOzRGQUVQLDRCQUE0QjtrQkFIeEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENsaWVudFBvcnRmb2xpb1JlcG9ydCB9IGZyb20gJy4uLy4uL21vZGVscy9jbGllbnQvY2xpZW50LXBvcnRmb2xpby1yZXBvcnQnO1xuaW1wb3J0IHsgQ2xpZW50UG9ydGZvbGlvUmVwb3J0Q29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2NsaWVudC1wb3J0Zm9saW8tcmVwb3J0LmNvbGxlY3Rpb24nO1xuXG4vLyBAVG9kbyByZWZhY3RvciB3aXRoIEJhc2VSZXN0IHNlcnZpY2Vcbi8qKlxuICogU2VydmljZSB0byB3b3JrIHdpdGggZW1wbG95ZWUgY2xpZW50cyB0YXggc3VtbWFyeSBkYXRhXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIENsaWVudFBvcnRmb2xpb1JlcG9ydFNlcnZpY2Uge1xuICB1cmw6IHN0cmluZyA9ICdwb3J0Zm9saW8tcmVwb3J0cyc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICB9XG5cbiAgZ2V0KCk6IE9ic2VydmFibGU8Q2xpZW50UG9ydGZvbGlvUmVwb3J0Q29sbGVjdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCBjbGllbnRSZXBvcnRzOiBDbGllbnRQb3J0Zm9saW9SZXBvcnRbXSA9IHJlc3BvbnNlWydoeWRyYTptZW1iZXInXS5tYXAoKGl0ZW06IG9iamVjdCkgPT4gcGxhaW5Ub0NsYXNzKENsaWVudFBvcnRmb2xpb1JlcG9ydCwgaXRlbSkpO1xuICAgICAgICAgIHJldHVybiBuZXcgQ2xpZW50UG9ydGZvbGlvUmVwb3J0Q29sbGVjdGlvbihjbGllbnRSZXBvcnRzKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,62 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { ReplaySubject } from 'rxjs';
3
+ import { map } from 'rxjs/operators';
4
+ import { replace } from '../../functions/array';
5
+ import { plainToClass } from 'class-transformer';
6
+ import { DepreciationCapitalProject } from '../../models/depreciation/depreciation-capital-project';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/common/http";
9
+ /**
10
+ * Service for work with DepreciationCapitalProjects
11
+ */
12
+ export class CapitalProjectService {
13
+ constructor(http, environment) {
14
+ this.http = http;
15
+ this.environment = environment;
16
+ this.cacheSubject = new ReplaySubject(1);
17
+ }
18
+ get(propertyId) {
19
+ this.cacheSubject.next([]);
20
+ this.http.get(`${this.environment.apiV2}/properties/${propertyId}/depreciation-capital-projects`)
21
+ .subscribe((capitalProjectsBase) => {
22
+ this.cache = capitalProjectsBase.map((capitalProjectBase) => {
23
+ return plainToClass(DepreciationCapitalProject, capitalProjectBase);
24
+ });
25
+ this.cacheSubject.next(this.cache);
26
+ });
27
+ return this.cacheSubject.asObservable();
28
+ }
29
+ add(capitalProject, propertyId) {
30
+ return this.http.post(`${this.environment.apiV2}/properties/${propertyId}/depreciation-capital-projects`, capitalProject)
31
+ .pipe(map((capitalProjectBase) => {
32
+ this.cache.push(plainToClass(DepreciationCapitalProject, capitalProjectBase));
33
+ this.cacheSubject.next(this.cache);
34
+ }));
35
+ }
36
+ update(capitalProject, propertyId) {
37
+ return this.http.put(`${this.environment.apiV2}/properties/${propertyId}/depreciation-capital-projects/${capitalProject.id}`, capitalProject)
38
+ .pipe(map((capitalProjectBase) => {
39
+ replace(this.cache, plainToClass(DepreciationCapitalProject, capitalProjectBase));
40
+ this.cacheSubject.next(this.cache);
41
+ }));
42
+ }
43
+ delete(capitalProject, propertyId) {
44
+ return this.http.delete(`${this.environment.apiV2}/properties/${propertyId}/depreciation-capital-projects/${capitalProject.id}`)
45
+ .pipe(map(() => {
46
+ this.cache = this.cache.filter((item) => capitalProject.id !== item.id);
47
+ this.cacheSubject.next(this.cache);
48
+ }));
49
+ }
50
+ }
51
+ CapitalProjectService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CapitalProjectService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
52
+ CapitalProjectService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CapitalProjectService, providedIn: 'root' });
53
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CapitalProjectService, decorators: [{
54
+ type: Injectable,
55
+ args: [{
56
+ providedIn: 'root'
57
+ }]
58
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: undefined, decorators: [{
59
+ type: Inject,
60
+ args: ['environment']
61
+ }] }]; } });
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwaXRhbC1wcm9qZWN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvZGVwcmVjaWF0aW9uL2NhcGl0YWwtcHJvamVjdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBYyxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDakQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sd0RBQXdELENBQUM7OztBQUVwRzs7R0FFRztBQUlILE1BQU0sT0FBTyxxQkFBcUI7SUFJaEMsWUFDVSxJQUFnQixFQUNPLFdBQWdCO1FBRHZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDTyxnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUpqRCxpQkFBWSxHQUFnRCxJQUFJLGFBQWEsQ0FBK0IsQ0FBQyxDQUFDLENBQUM7SUFNL0csQ0FBQztJQUVELEdBQUcsQ0FBQyxVQUFrQjtRQUNwQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxlQUFlLFVBQVUsZ0NBQWdDLENBQUM7YUFDOUYsU0FBUyxDQUFDLENBQUMsbUJBQXFELEVBQUUsRUFBRTtZQUNuRSxJQUFJLENBQUMsS0FBSyxHQUFHLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxDQUFDLGtCQUFrRCxFQUFFLEVBQUU7Z0JBQzFGLE9BQU8sWUFBWSxDQUFDLDBCQUEwQixFQUFFLGtCQUFrQixDQUFDLENBQUM7WUFDdEUsQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQUM7UUFFTCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUMsQ0FBQztJQUVELEdBQUcsQ0FBQyxjQUEwQyxFQUFFLFVBQWtCO1FBQ2hFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssZUFBZSxVQUFVLGdDQUFnQyxFQUFFLGNBQWMsQ0FBQzthQUN0SCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsa0JBQWtELEVBQVEsRUFBRTtZQUMvRCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsMEJBQTBCLEVBQUUsa0JBQWtCLENBQUMsQ0FBQyxDQUFDO1lBQzlFLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUEwQyxFQUFFLFVBQWtCO1FBQ25FLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssZUFBZSxVQUFVLGtDQUFrQyxjQUFjLENBQUMsRUFBRSxFQUFFLEVBQUUsY0FBYyxDQUFDO2FBQzFJLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxrQkFBa0QsRUFBUSxFQUFFO1lBQy9ELE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQywwQkFBMEIsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7WUFDbEYsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQTBDLEVBQUUsVUFBa0I7UUFDbkUsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxlQUFlLFVBQVUsa0NBQWtDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUM3SCxJQUFJLENBQ0gsR0FBRyxDQUFDLEdBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFnQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNwRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7O21IQXBEVSxxQkFBcUIsNENBTXRCLGFBQWE7dUhBTloscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdCBhcyBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZGVwcmVjaWF0aW9uLWNhcGl0YWwtcHJvamVjdCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdCB9IGZyb20gJy4uLy4uL21vZGVscy9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLWNhcGl0YWwtcHJvamVjdCc7XG5cbi8qKlxuICogU2VydmljZSBmb3Igd29yayB3aXRoIERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0c1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDYXBpdGFsUHJvamVjdFNlcnZpY2Uge1xuICBjYWNoZTogRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3RbXTtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0W10+ID0gbmV3IFJlcGxheVN1YmplY3Q8RGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3RbXT4oMSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJpdmF0ZSBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICB9XG5cbiAgZ2V0KHByb3BlcnR5SWQ6IG51bWJlcik6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3RbXT4ge1xuICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQoW10pO1xuXG4gICAgdGhpcy5odHRwLmdldChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9wcm9wZXJ0aWVzLyR7cHJvcGVydHlJZH0vZGVwcmVjaWF0aW9uLWNhcGl0YWwtcHJvamVjdHNgKVxuICAgICAgLnN1YnNjcmliZSgoY2FwaXRhbFByb2plY3RzQmFzZTogRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3RCYXNlW10pID0+IHtcbiAgICAgICAgdGhpcy5jYWNoZSA9IGNhcGl0YWxQcm9qZWN0c0Jhc2UubWFwKChjYXBpdGFsUHJvamVjdEJhc2U6IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0QmFzZSkgPT4ge1xuICAgICAgICAgIHJldHVybiBwbGFpblRvQ2xhc3MoRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QsIGNhcGl0YWxQcm9qZWN0QmFzZSk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgfSk7XG5cbiAgICByZXR1cm4gdGhpcy5jYWNoZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBhZGQoY2FwaXRhbFByb2plY3Q6IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0LCBwcm9wZXJ0eUlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vcHJvcGVydGllcy8ke3Byb3BlcnR5SWR9L2RlcHJlY2lhdGlvbi1jYXBpdGFsLXByb2plY3RzYCwgY2FwaXRhbFByb2plY3QpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChjYXBpdGFsUHJvamVjdEJhc2U6IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0QmFzZSk6IHZvaWQgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUucHVzaChwbGFpblRvQ2xhc3MoRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QsIGNhcGl0YWxQcm9qZWN0QmFzZSkpO1xuICAgICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgdXBkYXRlKGNhcGl0YWxQcm9qZWN0OiBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdCwgcHJvcGVydHlJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vcHJvcGVydGllcy8ke3Byb3BlcnR5SWR9L2RlcHJlY2lhdGlvbi1jYXBpdGFsLXByb2plY3RzLyR7Y2FwaXRhbFByb2plY3QuaWR9YCwgY2FwaXRhbFByb2plY3QpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChjYXBpdGFsUHJvamVjdEJhc2U6IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0QmFzZSk6IHZvaWQgPT4ge1xuICAgICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0LCBjYXBpdGFsUHJvamVjdEJhc2UpKTtcbiAgICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGRlbGV0ZShjYXBpdGFsUHJvamVjdDogRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QsIHByb3BlcnR5SWQ6IG51bWJlcik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L3Byb3BlcnRpZXMvJHtwcm9wZXJ0eUlkfS9kZXByZWNpYXRpb24tY2FwaXRhbC1wcm9qZWN0cy8ke2NhcGl0YWxQcm9qZWN0LmlkfWApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpOiB2b2lkID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKGl0ZW06IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0KSA9PiBjYXBpdGFsUHJvamVjdC5pZCAhPT0gaXRlbS5pZCk7XG4gICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,146 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { map } from 'rxjs/operators';
3
+ import { replace } from '../../functions/array';
4
+ import { plainToClass } from 'class-transformer';
5
+ import { BaseRestService } from '../base-rest.service';
6
+ import { Depreciation } from '../../models/depreciation/depreciation';
7
+ import { AppEvent } from '../../models/event/app-event';
8
+ import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
9
+ import { FinancialYear } from '../../models/financial-year/financial-year';
10
+ import { DepreciationReceipt } from '../../models/depreciation/depreciation-receipt';
11
+ import * as i0 from "@angular/core";
12
+ import * as i1 from "@angular/common/http";
13
+ import * as i2 from "../event/event-dispatcher.service";
14
+ export class DepreciationService extends BaseRestService {
15
+ constructor(http, eventDispatcherService, environment) {
16
+ super(http, eventDispatcherService, environment);
17
+ this.http = http;
18
+ this.eventDispatcherService = eventDispatcherService;
19
+ this.environment = environment;
20
+ this.modelClass = Depreciation;
21
+ this.url = 'depreciations';
22
+ this.listenEvents();
23
+ }
24
+ /**
25
+ * Add a single depreciation
26
+ * @TODO add auto-generation for events
27
+ */
28
+ add(depreciation) {
29
+ return this.addBatch([depreciation])
30
+ .pipe(map((newDepreciations) => {
31
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.DEPRECIATIONS_CREATED, newDepreciations[0]));
32
+ return newDepreciations[0];
33
+ }));
34
+ }
35
+ /**
36
+ * Add multiple depreciations
37
+ * @TODO add auto-generation for events
38
+ */
39
+ addBatch(depreciations) {
40
+ return super.addBatch(depreciations).pipe(map((newDepreciations) => {
41
+ this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.DEPRECIATIONS_CREATED, newDepreciations));
42
+ return newDepreciations;
43
+ }));
44
+ }
45
+ /**
46
+ * Listen to Depreciations events
47
+ */
48
+ listenEvents() {
49
+ this.listenToUpdatedLoan();
50
+ this.listenToVehicleClaim();
51
+ this.listenToUpdatedBankAccount();
52
+ }
53
+ /**
54
+ * Get depreciations related to Vehicle category
55
+ */
56
+ getVehicleDepreciations() {
57
+ return this.get().pipe(map((depreciations) => {
58
+ return depreciations.filter((depreciation) => depreciation.isVehicleDepreciation());
59
+ }));
60
+ }
61
+ getCloseBalance(depreciation) {
62
+ return this.http.post(`${this.environment.apiV2}/${this.url}/closing-balance?financialYear=${new FinancialYear().year}`, depreciation)
63
+ .pipe(map((response) => {
64
+ return response || 0;
65
+ }));
66
+ }
67
+ /**
68
+ * @TODO wrong place, move to collection model
69
+ */
70
+ calculateSummaryAmount(depreciationList) {
71
+ return depreciationList.reduce((sum, depreciation) => {
72
+ // depreciation may not have forecast item for current financial year
73
+ if (!depreciation.currentYearForecast) {
74
+ return sum;
75
+ }
76
+ return sum + depreciation.currentYearForecast.claimAmount;
77
+ }, 0);
78
+ }
79
+ calculateBorrowingExpenses(depreciationList) {
80
+ return this.getByIds(depreciationList)
81
+ .pipe(map((depreciations) => {
82
+ return this.calculateSummaryAmount(depreciations.filter((depreciation) => depreciation.isBorrowingExpense()));
83
+ }));
84
+ }
85
+ calculateDepreciations(depreciationList) {
86
+ return this.getByIds(depreciationList)
87
+ .pipe(map((depreciations) => {
88
+ return this.calculateSummaryAmount(depreciations.filter((depreciation) => !depreciation.isBorrowingExpense()));
89
+ }));
90
+ }
91
+ /**
92
+ * Upload depreciation receipt
93
+ * @param depreciation for which will be uploaded receipt
94
+ */
95
+ uploadReceipt(depreciation) {
96
+ const formData = new FormData();
97
+ formData.append('file', depreciation.file);
98
+ depreciation.receipt = null;
99
+ this.http.post(`${this.environment.apiV2}/${this.url}/${depreciation.id}/receipts`, formData)
100
+ .subscribe((receiptResponse) => {
101
+ // we don't need to keep file after save
102
+ depreciation.file = null;
103
+ depreciation.receipt = plainToClass(DepreciationReceipt, receiptResponse);
104
+ replace(this.cache, depreciation);
105
+ this.cacheSubject.next(this.cache.slice());
106
+ });
107
+ }
108
+ /**
109
+ * Listen to EventDispatcherService event related to updated bank loan
110
+ */
111
+ listenToUpdatedLoan() {
112
+ this.eventDispatcherService.on([AppEventTypeEnum.LOAN_UPDATED, AppEventTypeEnum.PROPERTY_OWNER_UPDATED]).subscribe(() => {
113
+ this.fetch().subscribe();
114
+ });
115
+ }
116
+ /**
117
+ * Listen to EventDispatcherService event related to updated bank account
118
+ */
119
+ listenToUpdatedBankAccount() {
120
+ this.eventDispatcherService.on([AppEventTypeEnum.BANK_ACCOUNT_UPDATED]).subscribe((bankAccount) => {
121
+ if (bankAccount.isPropertyTank()) {
122
+ this.fetch().subscribe();
123
+ }
124
+ });
125
+ }
126
+ /**
127
+ * Listen to EventDispatcherService event related to updated vehicle claim
128
+ */
129
+ listenToVehicleClaim() {
130
+ this.eventDispatcherService.on([AppEventTypeEnum.VEHICLE_CLAIM_CREATED, AppEventTypeEnum.VEHICLE_CLAIM_UPDATED]).subscribe(() => {
131
+ this.fetch().subscribe();
132
+ });
133
+ }
134
+ }
135
+ DepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
136
+ DepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, providedIn: 'root' });
137
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, decorators: [{
138
+ type: Injectable,
139
+ args: [{
140
+ providedIn: 'root'
141
+ }]
142
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
143
+ type: Inject,
144
+ args: ['environment']
145
+ }] }]; } });
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFaEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFFdEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7OztBQU1yRixNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZUFBK0M7SUFJdEYsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFObkQsZUFBVSxHQUF3QixZQUFZLENBQUM7UUFDL0MsUUFBRyxHQUFXLGVBQWUsQ0FBQztR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QUNLLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxFQUFFLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3RILElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLDBCQUEwQjtRQUNoQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtZQUM3RyxJQUFJLFdBQVcsQ0FBQyxjQUFjLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO2FBQzFCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixFQUFFLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzlILElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O2lIQXRKVSxtQkFBbUIsa0ZBT3BCLGFBQWE7cUhBUFosbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb24gYXMgRGVwcmVjaWF0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQmFzZVJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vYmFzZS1yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uL2V2ZW50L2V2ZW50LWRpc3BhdGNoZXIuc2VydmljZSc7XG5pbXBvcnQgeyBBcHBFdmVudCB9IGZyb20gJy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHsgQXBwRXZlbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEZpbmFuY2lhbFllYXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmluYW5jaWFsLXllYXIvZmluYW5jaWFsLXllYXInO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uUmVjZWlwdCB9IGZyb20gJy4uLy4uL21vZGVscy9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQmFua0FjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYmFuay9iYW5rLWFjY291bnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEZXByZWNpYXRpb25TZXJ2aWNlIGV4dGVuZHMgQmFzZVJlc3RTZXJ2aWNlPERlcHJlY2lhdGlvbkJhc2UsIERlcHJlY2lhdGlvbj4ge1xuICBtb2RlbENsYXNzOiB0eXBlb2YgRGVwcmVjaWF0aW9uID0gRGVwcmVjaWF0aW9uO1xuICB1cmw6IHN0cmluZyA9ICdkZXByZWNpYXRpb25zJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55XG4gICkge1xuICAgIHN1cGVyKGh0dHAsIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBhIHNpbmdsZSBkZXByZWNpYXRpb25cbiAgICogQFRPRE8gYWRkIGF1dG8tZ2VuZXJhdGlvbiBmb3IgZXZlbnRzXG4gICAqL1xuICBhZGQoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBPYnNlcnZhYmxlPERlcHJlY2lhdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmFkZEJhdGNoKFtkZXByZWNpYXRpb25dKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobmV3RGVwcmVjaWF0aW9uczogRGVwcmVjaWF0aW9uW10pOiBEZXByZWNpYXRpb24gPT4ge1xuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5ERVBSRUNJQVRJT05TX0NSRUFURUQsIG5ld0RlcHJlY2lhdGlvbnNbMF0pKTtcbiAgICAgICAgICByZXR1cm4gbmV3RGVwcmVjaWF0aW9uc1swXTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBZGQgbXVsdGlwbGUgZGVwcmVjaWF0aW9uc1xuICAgKiBAVE9ETyBhZGQgYXV0by1nZW5lcmF0aW9uIGZvciBldmVudHNcbiAgICovXG4gIGFkZEJhdGNoKGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbltdKTogT2JzZXJ2YWJsZTxEZXByZWNpYXRpb25bXT4ge1xuICAgIHJldHVybiBzdXBlci5hZGRCYXRjaChkZXByZWNpYXRpb25zKS5waXBlKFxuICAgICAgbWFwKChuZXdEZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25bXSk6IERlcHJlY2lhdGlvbltdID0+IHtcbiAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkRFUFJFQ0lBVElPTlNfQ1JFQVRFRCwgbmV3RGVwcmVjaWF0aW9ucykpO1xuICAgICAgICByZXR1cm4gbmV3RGVwcmVjaWF0aW9ucztcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRGVwcmVjaWF0aW9ucyBldmVudHNcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvVXBkYXRlZExvYW4oKTtcbiAgICB0aGlzLmxpc3RlblRvVmVoaWNsZUNsYWltKCk7XG4gICAgdGhpcy5saXN0ZW5Ub1VwZGF0ZWRCYW5rQWNjb3VudCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBkZXByZWNpYXRpb25zIHJlbGF0ZWQgdG8gVmVoaWNsZSBjYXRlZ29yeVxuICAgKi9cbiAgZ2V0VmVoaWNsZURlcHJlY2lhdGlvbnMoKTogT2JzZXJ2YWJsZTxEZXByZWNpYXRpb25bXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpLnBpcGUoXG4gICAgICBtYXAoKGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbltdKSA9PiB7XG4gICAgICAgIHJldHVybiBkZXByZWNpYXRpb25zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pID0+IGRlcHJlY2lhdGlvbi5pc1ZlaGljbGVEZXByZWNpYXRpb24oKSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuXG4gIGdldENsb3NlQmFsYW5jZShkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9L2Nsb3NpbmctYmFsYW5jZT9maW5hbmNpYWxZZWFyPSR7bmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyfWAsIGRlcHJlY2lhdGlvbilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBudW1iZXIpID0+IHtcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UgfHwgMDtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gd3JvbmcgcGxhY2UsIG1vdmUgdG8gY29sbGVjdGlvbiBtb2RlbFxuICAgKi9cbiAgY2FsY3VsYXRlU3VtbWFyeUFtb3VudChkZXByZWNpYXRpb25MaXN0OiBEZXByZWNpYXRpb25bXSk6IG51bWJlciB7XG4gICAgcmV0dXJuIGRlcHJlY2lhdGlvbkxpc3QucmVkdWNlKChzdW06IG51bWJlciwgZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pID0+IHtcbiAgICAgIC8vIGRlcHJlY2lhdGlvbiBtYXkgbm90IGhhdmUgZm9yZWNhc3QgaXRlbSBmb3IgY3VycmVudCBmaW5hbmNpYWwgeWVhclxuICAgICAgaWYgKCFkZXByZWNpYXRpb24uY3VycmVudFllYXJGb3JlY2FzdCkge1xuICAgICAgICByZXR1cm4gc3VtO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmN1cnJlbnRZZWFyRm9yZWNhc3QuY2xhaW1BbW91bnQ7XG4gICAgfSwgMCk7XG4gIH1cblxuICBjYWxjdWxhdGVCb3Jyb3dpbmdFeHBlbnNlcyhkZXByZWNpYXRpb25MaXN0OiBEZXByZWNpYXRpb25bXSk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QnlJZHMoZGVwcmVjaWF0aW9uTGlzdClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbltdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlU3VtbWFyeUFtb3VudChkZXByZWNpYXRpb25zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pID0+IGRlcHJlY2lhdGlvbi5pc0JvcnJvd2luZ0V4cGVuc2UoKSkpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGNhbGN1bGF0ZURlcHJlY2lhdGlvbnMoZGVwcmVjaWF0aW9uTGlzdDogRGVwcmVjaWF0aW9uW10pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmdldEJ5SWRzKGRlcHJlY2lhdGlvbkxpc3QpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25bXSkgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmNhbGN1bGF0ZVN1bW1hcnlBbW91bnQoZGVwcmVjaWF0aW9ucy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKSA9PiAhZGVwcmVjaWF0aW9uLmlzQm9ycm93aW5nRXhwZW5zZSgpKSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cblxuICAvKipcbiAgICogVXBsb2FkIGRlcHJlY2lhdGlvbiByZWNlaXB0XG4gICAqIEBwYXJhbSBkZXByZWNpYXRpb24gZm9yIHdoaWNoIHdpbGwgYmUgdXBsb2FkZWQgcmVjZWlwdFxuICAgKi9cbiAgdXBsb2FkUmVjZWlwdChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IHZvaWQge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGRlcHJlY2lhdGlvbi5maWxlKTtcbiAgICBkZXByZWNpYXRpb24ucmVjZWlwdCA9IG51bGw7XG5cbiAgICB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke2RlcHJlY2lhdGlvbi5pZH0vcmVjZWlwdHNgLCBmb3JtRGF0YSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlY2VpcHRSZXNwb25zZTogYW55KSA9PiB7XG4gICAgICAgIC8vIHdlIGRvbid0IG5lZWQgdG8ga2VlcCBmaWxlIGFmdGVyIHNhdmVcbiAgICAgICAgZGVwcmVjaWF0aW9uLmZpbGUgPSBudWxsO1xuICAgICAgICBkZXByZWNpYXRpb24ucmVjZWlwdCA9IHBsYWluVG9DbGFzcyhEZXByZWNpYXRpb25SZWNlaXB0LCByZWNlaXB0UmVzcG9uc2UpO1xuICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIGRlcHJlY2lhdGlvbik7XG4gICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZS5zbGljZSgpKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gdXBkYXRlZCBiYW5rIGxvYW5cbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVG9VcGRhdGVkTG9hbigpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oW0FwcEV2ZW50VHlwZUVudW0uTE9BTl9VUERBVEVELCBBcHBFdmVudFR5cGVFbnVtLlBST1BFUlRZX09XTkVSX1VQREFURURdKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50IHJlbGF0ZWQgdG8gdXBkYXRlZCBiYW5rIGFjY291bnRcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVG9VcGRhdGVkQmFua0FjY291bnQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtBcHBFdmVudFR5cGVFbnVtLkJBTktfQUNDT1VOVF9VUERBVEVEXSkuc3Vic2NyaWJlKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgIGlmIChiYW5rQWNjb3VudC5pc1Byb3BlcnR5VGFuaygpKSB7XG4gICAgICAgIHRoaXMuZmV0Y2goKS5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudCByZWxhdGVkIHRvIHVwZGF0ZWQgdmVoaWNsZSBjbGFpbVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub1ZlaGljbGVDbGFpbSgpOiB2b2lkIHtcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oW0FwcEV2ZW50VHlwZUVudW0uVkVISUNMRV9DTEFJTV9DUkVBVEVELCBBcHBFdmVudFR5cGVFbnVtLlZFSElDTEVfQ0xBSU1fVVBEQVRFRF0pLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmZldGNoKCkuc3Vic2NyaWJlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,84 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { Document } from '../../models/document/document';
3
+ import { replace } from '../../functions/array';
4
+ import { map } from 'rxjs/operators';
5
+ import { plainToClass } from 'class-transformer';
6
+ import { BaseRestService } from '../base-rest.service';
7
+ import { DocumentFolder } from '../../models/document/document-folder';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "@angular/common/http";
10
+ import * as i2 from "../event/event-dispatcher.service";
11
+ /**
12
+ * Service to handle document-folders and depending documents logic
13
+ */
14
+ export class DocumentFolderService extends BaseRestService {
15
+ constructor(http, eventDispatcherService, environment) {
16
+ super(http, eventDispatcherService, environment);
17
+ this.http = http;
18
+ this.eventDispatcherService = eventDispatcherService;
19
+ this.environment = environment;
20
+ this.url = 'folders';
21
+ this.modelClass = DocumentFolder;
22
+ }
23
+ /**
24
+ * Add new document to the folder
25
+ * @param file to be uploaded to the folder
26
+ * @param folder for document
27
+ */
28
+ addDocument(file, folder) {
29
+ // create formData object with provided file
30
+ const formDataDocument = new FormData();
31
+ formDataDocument.append('file', file);
32
+ return this.http.post(`${this.environment.apiV2}/folders/${folder.id}/documents`, formDataDocument).pipe(map((response) => {
33
+ const updatedFolder = Object.assign(plainToClass(DocumentFolder, {}), folder);
34
+ updatedFolder.documents.push(plainToClass(Document, response));
35
+ replace(this.cache, plainToClass(DocumentFolder, updatedFolder));
36
+ this.cacheSubject.next(this.cache);
37
+ }));
38
+ }
39
+ /**
40
+ * Edit folder document by moving it from one folder to another
41
+ * @param editedDocument
42
+ * @param selectedFolder to move the document to
43
+ * @param oldFolderId: id of old folder from which need to remove the document
44
+ */
45
+ updateDocument(editedDocument, selectedFolder, oldFolderId) {
46
+ return this.http.put(`${this.environment.apiV2}/folders/${selectedFolder.id}/documents/${editedDocument.id}`, editedDocument).pipe(map((response) => {
47
+ const oldFolder = this.cache.find((folder) => folder.id === oldFolderId);
48
+ // Remove document from old folder
49
+ oldFolder.documents = oldFolder.documents.filter((deletedDocument) => deletedDocument.id !== response.id);
50
+ // update old folder and replace it in cache
51
+ response.folder = plainToClass(DocumentFolder, { id: selectedFolder.id, name: selectedFolder.name });
52
+ replace(this.cache, plainToClass(DocumentFolder, oldFolder));
53
+ // update new document folder and replace it in cache
54
+ selectedFolder.documents.push(plainToClass(Document, response));
55
+ replace(this.cache, plainToClass(DocumentFolder, selectedFolder));
56
+ this.cacheSubject.next(this.cache);
57
+ }));
58
+ }
59
+ /**
60
+ * Delete document from folder
61
+ * @param document to remove
62
+ * @param folder from which document should be removed
63
+ */
64
+ deleteDocument(document, folder) {
65
+ return this.http.delete(`${this.environment.apiV2}/folders/${folder.id}/documents/${document.id}`).pipe(map(() => {
66
+ folder.documents = folder.documents
67
+ .filter((deletedDocument) => deletedDocument.id !== document.id);
68
+ replace(this.cache, plainToClass(DocumentFolder, folder));
69
+ this.cacheSubject.next(this.cache);
70
+ }));
71
+ }
72
+ }
73
+ DocumentFolderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
74
+ DocumentFolderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, providedIn: 'root' });
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, decorators: [{
76
+ type: Injectable,
77
+ args: [{
78
+ providedIn: 'root'
79
+ }]
80
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
81
+ type: Inject,
82
+ args: ['environment']
83
+ }] }]; } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvZG9jdW1lbnQvZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJbkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzFELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7QUFHdkU7O0dBRUc7QUFJSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsZUFBbUQ7SUFJNUYsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFObkQsUUFBRyxHQUFXLFNBQVMsQ0FBQztRQUN4QixlQUFVLEdBQTBCLGNBQWMsQ0FBQztJQVFuRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFVLEVBQUUsTUFBc0I7UUFDNUMsNENBQTRDO1FBQzVDLE1BQU0sZ0JBQWdCLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNsRCxnQkFB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QUFFLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzdFLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxjQUFjLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUUxRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O21IQTFFVSxxQkFBcUIsa0ZBT3RCLGFBQWE7dUhBUFoscUJBQXFCLGNBRnBCLE1BQU07NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudEZvbGRlciBhcyBEb2N1bWVudEZvbGRlckJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZG9jdW1lbnQtZm9sZGVyJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBEb2N1bWVudCBhcyBEb2N1bWVudEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZG9jdW1lbnQnO1xuaW1wb3J0IHsgRG9jdW1lbnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvZG9jdW1lbnQvZG9jdW1lbnQnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBCYXNlUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9iYXNlLXJlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBEb2N1bWVudEZvbGRlciB9IGZyb20gJy4uLy4uL21vZGVscy9kb2N1bWVudC9kb2N1bWVudC1mb2xkZXInO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uL2V2ZW50L2V2ZW50LWRpc3BhdGNoZXIuc2VydmljZSc7XG5cbi8qKlxuICogU2VydmljZSB0byBoYW5kbGUgZG9jdW1lbnQtZm9sZGVycyBhbmQgZGVwZW5kaW5nIGRvY3VtZW50cyBsb2dpY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEb2N1bWVudEZvbGRlclNlcnZpY2UgZXh0ZW5kcyBCYXNlUmVzdFNlcnZpY2U8RG9jdW1lbnRGb2xkZXJCYXNlLCBEb2N1bWVudEZvbGRlcj4ge1xuICB1cmw6IHN0cmluZyA9ICdmb2xkZXJzJztcbiAgbW9kZWxDbGFzczogdHlwZW9mIERvY3VtZW50Rm9sZGVyID0gRG9jdW1lbnRGb2xkZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueVxuICApIHtcbiAgICBzdXBlcihodHRwLCBldmVudERpc3BhdGNoZXJTZXJ2aWNlLCBlbnZpcm9ubWVudCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIG5ldyBkb2N1bWVudCB0byB0aGUgZm9sZGVyXG4gICAqIEBwYXJhbSBmaWxlIHRvIGJlIHVwbG9hZGVkIHRvIHRoZSBmb2xkZXJcbiAgICogQHBhcmFtIGZvbGRlciBmb3IgZG9jdW1lbnRcbiAgICovXG4gIGFkZERvY3VtZW50KGZpbGU6IEZpbGUsIGZvbGRlcjogRG9jdW1lbnRGb2xkZXIpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAvLyBjcmVhdGUgZm9ybURhdGEgb2JqZWN0IHdpdGggcHJvdmlkZWQgZmlsZVxuICAgIGNvbnN0IGZvcm1EYXRhRG9jdW1lbnQ6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9ybURhdGFEb2N1bWVudC5hcHBlbmQoJ2ZpbGUnLCBmaWxlKTtcblxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9mb2xkZXJzLyR7Zm9sZGVyLmlkfS9kb2N1bWVudHNgLCBmb3JtRGF0YURvY3VtZW50KS5waXBlKFxuICAgICAgbWFwKChyZXNwb25zZTogRG9jdW1lbnRCYXNlKSA9PiB7XG4gICAgICAgIGNvbnN0IHVwZGF0ZWRGb2xkZXI6IERvY3VtZW50Rm9sZGVyID0gT2JqZWN0LmFzc2lnbihwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIHt9KSwgZm9sZGVyKTtcbiAgICAgICAgdXBkYXRlZEZvbGRlci5kb2N1bWVudHMucHVzaChwbGFpblRvQ2xhc3MoRG9jdW1lbnQsIHJlc3BvbnNlKSk7XG5cbiAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCBwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIHVwZGF0ZWRGb2xkZXIpKTtcbiAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFZGl0IGZvbGRlciBkb2N1bWVudCBieSBtb3ZpbmcgaXQgZnJvbSBvbmUgZm9sZGVyIHRvIGFub3RoZXJcbiAgICogQHBhcmFtIGVkaXRlZERvY3VtZW50XG4gICAqIEBwYXJhbSBzZWxlY3RlZEZvbGRlciB0byBtb3ZlIHRoZSBkb2N1bWVudCB0b1xuICAgKiBAcGFyYW0gb2xkRm9sZGVySWQ6IGlkIG9mIG9sZCBmb2xkZXIgZnJvbSB3aGljaCBuZWVkIHRvIHJlbW92ZSB0aGUgZG9jdW1lbnRcbiAgICovXG4gIHVwZGF0ZURvY3VtZW50KGVkaXRlZERvY3VtZW50OiBEb2N1bWVudCwgc2VsZWN0ZWRGb2xkZXI6IERvY3VtZW50Rm9sZGVyLCBvbGRGb2xkZXJJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZm9sZGVycy8ke3NlbGVjdGVkRm9sZGVyLmlkfS9kb2N1bWVudHMvJHtlZGl0ZWREb2N1bWVudC5pZH1gLCBlZGl0ZWREb2N1bWVudCkucGlwZShcbiAgICAgIG1hcCgocmVzcG9uc2U6IERvY3VtZW50QmFzZSkgPT4ge1xuICAgICAgICBjb25zdCBvbGRGb2xkZXI6IERvY3VtZW50Rm9sZGVyID0gdGhpcy5jYWNoZS5maW5kKChmb2xkZXI6IERvY3VtZW50Rm9sZGVyKSA9PiBmb2xkZXIuaWQgPT09IG9sZEZvbGRlcklkKTtcbiAgICAgICAgLy8gUmVtb3ZlIGRvY3VtZW50IGZyb20gb2xkIGZvbGRlclxuICAgICAgICBvbGRGb2xkZXIuZG9jdW1lbnRzID0gb2xkRm9sZGVyLmRvY3VtZW50cy5maWx0ZXIoKGRlbGV0ZWREb2N1bWVudDogRG9jdW1lbnQpID0+IGRlbGV0ZWREb2N1bWVudC5pZCAhPT0gcmVzcG9uc2UuaWQpO1xuXG4gICAgICAgIC8vIHVwZGF0ZSBvbGQgZm9sZGVyIGFuZCByZXBsYWNlIGl0IGluIGNhY2hlXG4gICAgICAgIHJlc3BvbnNlLmZvbGRlciA9IHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwge2lkOiBzZWxlY3RlZEZvbGRlci5pZCwgbmFtZTogc2VsZWN0ZWRGb2xkZXIubmFtZX0pO1xuICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwgb2xkRm9sZGVyKSk7XG5cbiAgICAgICAgLy8gdXBkYXRlIG5ldyBkb2N1bWVudCBmb2xkZXIgYW5kIHJlcGxhY2UgaXQgaW4gY2FjaGVcbiAgICAgICAgc2VsZWN0ZWRGb2xkZXIuZG9jdW1lbnRzLnB1c2gocGxhaW5Ub0NsYXNzKERvY3VtZW50LCByZXNwb25zZSkpO1xuICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwgc2VsZWN0ZWRGb2xkZXIpKTtcblxuICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBkb2N1bWVudCBmcm9tIGZvbGRlclxuICAgKiBAcGFyYW0gZG9jdW1lbnQgdG8gcmVtb3ZlXG4gICAqIEBwYXJhbSBmb2xkZXIgZnJvbSB3aGljaCBkb2N1bWVudCBzaG91bGQgYmUgcmVtb3ZlZFxuICAgKi9cbiAgZGVsZXRlRG9jdW1lbnQoZG9jdW1lbnQ6IERvY3VtZW50LCBmb2xkZXI6IERvY3VtZW50Rm9sZGVyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5kZWxldGUoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vZm9sZGVycy8ke2ZvbGRlci5pZH0vZG9jdW1lbnRzLyR7ZG9jdW1lbnQuaWR9YCkucGlwZShcbiAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgIGZvbGRlci5kb2N1bWVudHMgPSBmb2xkZXIuZG9jdW1lbnRzXG4gICAgICAgICAgLmZpbHRlcigoZGVsZXRlZERvY3VtZW50OiBEb2N1bWVudCkgPT4gZGVsZXRlZERvY3VtZW50LmlkICE9PSBkb2N1bWVudC5pZCk7XG4gICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgcGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCBmb2xkZXIpKTtcblxuICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=