taxtank-core 0.33.115 → 0.33.117

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 (1065) hide show
  1. package/README.md +5 -5
  2. package/esm2022/common/public-api.mjs +4 -0
  3. package/esm2022/common/src/common.module.mjs +38 -0
  4. package/esm2022/common/src/db/enums/index.mjs +2 -0
  5. package/esm2022/common/src/db/enums/user/index.mjs +2 -0
  6. package/esm2022/common/src/db/enums/user/user-roles.enum.mjs +18 -0
  7. package/esm2022/common/src/db/index.mjs +2 -0
  8. package/esm2022/common/src/interceptors/interceptors.module.mjs +28 -0
  9. package/esm2022/common/src/interceptors/jwt-interceptor.mjs +138 -0
  10. package/esm2022/common/src/services/auth/auth-messages.enum.mjs +5 -0
  11. package/esm2022/common/src/services/auth/auth-tokens.interface.mjs +2 -0
  12. package/esm2022/common/src/services/auth/auth.service.mjs +56 -0
  13. package/esm2022/common/src/services/auth/index.mjs +6 -0
  14. package/esm2022/common/src/services/auth/jwt-decoded.interface.mjs +2 -0
  15. package/esm2022/common/src/services/auth/jwt.service.mjs +52 -0
  16. package/esm2022/common/src/services/index.mjs +3 -0
  17. package/esm2022/common/src/services/mixpanel.service.mjs +60 -0
  18. package/esm2022/common/taxtank-core-common.mjs +5 -0
  19. package/esm2022/public-api.mjs +188 -0
  20. package/esm2022/src/lib/collections/account-setup-item.collection.mjs +12 -0
  21. package/esm2022/src/lib/collections/allocation-group.collection.mjs +9 -0
  22. package/esm2022/src/lib/collections/allocation-rule.collection.mjs +26 -0
  23. package/esm2022/src/lib/collections/asset-sale.collection.mjs +59 -0
  24. package/esm2022/src/lib/collections/bank-account.collection.mjs +120 -0
  25. package/esm2022/src/lib/collections/bank-transaction.collection.mjs +131 -0
  26. package/esm2022/src/lib/collections/chart-accounts/chart-accounts-value.collection.mjs +20 -0
  27. package/esm2022/src/lib/collections/chart-accounts/index.mjs +2 -0
  28. package/esm2022/src/lib/collections/chart-accounts.collection.mjs +26 -0
  29. package/esm2022/src/lib/collections/chat/chat.collection.mjs +8 -0
  30. package/esm2022/src/lib/collections/chat/index.mjs +4 -0
  31. package/esm2022/src/lib/collections/chat/message-document.collection.mjs +13 -0
  32. package/esm2022/src/lib/collections/chat/message.collection.mjs +31 -0
  33. package/esm2022/src/lib/collections/client-invite.collection.mjs +7 -0
  34. package/esm2022/src/lib/collections/client-movement.collection.mjs +48 -0
  35. package/esm2022/src/lib/collections/client-portfolio-report.collection.mjs +40 -0
  36. package/esm2022/src/lib/collections/client.collection.mjs +4 -0
  37. package/esm2022/src/lib/collections/collection-dictionary.mjs +124 -0
  38. package/esm2022/src/lib/collections/collection.mjs +176 -0
  39. package/esm2022/src/lib/collections/depreciation-forecast.collection.mjs +19 -0
  40. package/esm2022/src/lib/collections/depreciation.collection.mjs +112 -0
  41. package/esm2022/src/lib/collections/exportable.collection.mjs +19 -0
  42. package/esm2022/src/lib/collections/firm/employee-invite.collection.mjs +10 -0
  43. package/esm2022/src/lib/collections/firm/employee.collection.mjs +18 -0
  44. package/esm2022/src/lib/collections/firm/index.mjs +3 -0
  45. package/esm2022/src/lib/collections/holding/holding-sale.collection.mjs +41 -0
  46. package/esm2022/src/lib/collections/holding/holding-trade.collection.mjs +81 -0
  47. package/esm2022/src/lib/collections/holding/holding-type.collection.mjs +13 -0
  48. package/esm2022/src/lib/collections/holding/holding.collection.mjs +43 -0
  49. package/esm2022/src/lib/collections/holding/index.mjs +5 -0
  50. package/esm2022/src/lib/collections/home-office/home-office-claim.collection.mjs +7 -0
  51. package/esm2022/src/lib/collections/home-office/index.mjs +2 -0
  52. package/esm2022/src/lib/collections/income-source/income-source-forecast.collection.mjs +11 -0
  53. package/esm2022/src/lib/collections/income-source/income-source.collection.mjs +43 -0
  54. package/esm2022/src/lib/collections/income-source/index.mjs +3 -0
  55. package/esm2022/src/lib/collections/index.mjs +37 -0
  56. package/esm2022/src/lib/collections/loan/index.mjs +3 -0
  57. package/esm2022/src/lib/collections/loan/loan-payment.collection.mjs +40 -0
  58. package/esm2022/src/lib/collections/loan/loan.collection.mjs +46 -0
  59. package/esm2022/src/lib/collections/property/index.mjs +7 -0
  60. package/esm2022/src/lib/collections/property/property-category-movement.collection.mjs +23 -0
  61. package/esm2022/src/lib/collections/property/property-sale/index.mjs +3 -0
  62. package/esm2022/src/lib/collections/property/property-sale/property-sale-tax-exemption-meta-field.collection.mjs +17 -0
  63. package/esm2022/src/lib/collections/property/property-sale/property-sale.collection.mjs +13 -0
  64. package/esm2022/src/lib/collections/property/property-share.collection.mjs +20 -0
  65. package/esm2022/src/lib/collections/property/property-valuation.collection.mjs +14 -0
  66. package/esm2022/src/lib/collections/property/property.collection.mjs +113 -0
  67. package/esm2022/src/lib/collections/property/tax-exemption.collection.mjs +11 -0
  68. package/esm2022/src/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.mjs +12 -0
  69. package/esm2022/src/lib/collections/report/depreciation/depreciation-report-item.collection.mjs +12 -0
  70. package/esm2022/src/lib/collections/report/income-expense/transaction-report-item.collection.mjs +30 -0
  71. package/esm2022/src/lib/collections/report/index.mjs +8 -0
  72. package/esm2022/src/lib/collections/report/property/property-report-item-depreciation.collection.mjs +21 -0
  73. package/esm2022/src/lib/collections/report/property/property-report-item-transaction.collection.mjs +21 -0
  74. package/esm2022/src/lib/collections/report/property/property-report-item.collection.mjs +13 -0
  75. package/esm2022/src/lib/collections/report/vehicle-expense/vehicle-expense.collection.mjs +17 -0
  76. package/esm2022/src/lib/collections/sole/index.mjs +4 -0
  77. package/esm2022/src/lib/collections/sole/sole-business-loss.collection.mjs +41 -0
  78. package/esm2022/src/lib/collections/sole/sole-invoice-item.collection.mjs +10 -0
  79. package/esm2022/src/lib/collections/sole/sole-invoice.collection.mjs +40 -0
  80. package/esm2022/src/lib/collections/subscription/index.mjs +5 -0
  81. package/esm2022/src/lib/collections/subscription/service-price.collection.mjs +50 -0
  82. package/esm2022/src/lib/collections/subscription/service-product.collection.mjs +11 -0
  83. package/esm2022/src/lib/collections/subscription/service-subscription.collection.mjs +58 -0
  84. package/esm2022/src/lib/collections/subscription/subscription-item.collection.mjs +17 -0
  85. package/esm2022/src/lib/collections/tax-review.collection.mjs +47 -0
  86. package/esm2022/src/lib/collections/tax-summary/index.mjs +3 -0
  87. package/esm2022/src/lib/collections/tax-summary/report-item.collection.mjs +101 -0
  88. package/esm2022/src/lib/collections/tax-summary/tax-return-categories.const.mjs +113 -0
  89. package/esm2022/src/lib/collections/transaction/index.mjs +4 -0
  90. package/esm2022/src/lib/collections/transaction/transaction-allocation.collection.mjs +39 -0
  91. package/esm2022/src/lib/collections/transaction/transaction-base.collection.mjs +4 -0
  92. package/esm2022/src/lib/collections/transaction/transaction.collection.mjs +235 -0
  93. package/esm2022/src/lib/collections/user/user.collection.mjs +4 -0
  94. package/esm2022/src/lib/collections/user-event-setting.collection.mjs +10 -0
  95. package/esm2022/src/lib/collections/user-event-type-collection.mjs +11 -0
  96. package/esm2022/src/lib/collections/vehicle/best-vehicle-logbook.collection.mjs +94 -0
  97. package/esm2022/src/lib/collections/vehicle/index.mjs +4 -0
  98. package/esm2022/src/lib/collections/vehicle/vehicle-claim.collection.mjs +25 -0
  99. package/esm2022/src/lib/collections/vehicle/vehicle-logbook.collection.mjs +43 -0
  100. package/esm2022/src/lib/core.module.mjs +25 -0
  101. package/esm2022/src/lib/db/Enums/address-type.enum.mjs +6 -0
  102. package/esm2022/src/lib/db/Enums/annual-frequency.enum.mjs +9 -0
  103. package/esm2022/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-comparison-operator.enum.mjs +9 -0
  104. package/esm2022/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-field.enum.mjs +6 -0
  105. package/esm2022/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-operator.enum.mjs +6 -0
  106. package/esm2022/src/lib/db/Enums/bank/allocation-rule/allocation-rule-type.enum.mjs +7 -0
  107. package/esm2022/src/lib/db/Enums/bank/allocation-rule/index.mjs +5 -0
  108. package/esm2022/src/lib/db/Enums/bank/bank-account-status.enum.mjs +6 -0
  109. package/esm2022/src/lib/db/Enums/bank/bank-account-type.enum.mjs +13 -0
  110. package/esm2022/src/lib/db/Enums/bank/bank-connection-status.enum.mjs +8 -0
  111. package/esm2022/src/lib/db/Enums/bank/bank-popular.enum.mjs +14 -0
  112. package/esm2022/src/lib/db/Enums/bank/bank-provider.enum.mjs +7 -0
  113. package/esm2022/src/lib/db/Enums/bank/bank-transaction-type.enum.mjs +6 -0
  114. package/esm2022/src/lib/db/Enums/bank/index.mjs +8 -0
  115. package/esm2022/src/lib/db/Enums/bank/loan/index.mjs +11 -0
  116. package/esm2022/src/lib/db/Enums/bank/loan/loan-bank-type.enum.mjs +12 -0
  117. package/esm2022/src/lib/db/Enums/bank/loan/loan-frequency.enum.mjs +8 -0
  118. package/esm2022/src/lib/db/Enums/bank/loan/loan-interest-type-label.enum.mjs +6 -0
  119. package/esm2022/src/lib/db/Enums/bank/loan/loan-interest-type.enum.mjs +6 -0
  120. package/esm2022/src/lib/db/Enums/bank/loan/loan-payout-type.enum.mjs +6 -0
  121. package/esm2022/src/lib/db/Enums/bank/loan/loan-repayment-frequency.enum.mjs +7 -0
  122. package/esm2022/src/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.mjs +6 -0
  123. package/esm2022/src/lib/db/Enums/bank/loan/loan-repayment-type.enum.mjs +6 -0
  124. package/esm2022/src/lib/db/Enums/bank/loan/loan-type.enum.mjs +14 -0
  125. package/esm2022/src/lib/db/Enums/bank/loan/loan-vehicle-type.enum.mjs +7 -0
  126. package/esm2022/src/lib/db/Enums/chart-accounts/business-chart-accounts.enum.mjs +48 -0
  127. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-adjustment-included-list.enum.mjs +19 -0
  128. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-category.enum.mjs +20 -0
  129. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.mjs +9 -0
  130. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.mjs +50 -0
  131. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.mjs +8 -0
  132. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.mjs +8 -0
  133. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.mjs +8 -0
  134. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-holding-untaxed-income-list.enum.mjs +11 -0
  135. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.mjs +10 -0
  136. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-list.enum.mjs +62 -0
  137. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-list.enum.mjs +19 -0
  138. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-type.enum.mjs +6 -0
  139. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-property-adjustments-list.enum.mjs +50 -0
  140. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.mjs +17 -0
  141. package/esm2022/src/lib/db/Enums/chart-accounts/chart-accounts-type.enum.mjs +6 -0
  142. package/esm2022/src/lib/db/Enums/chart-accounts/index.mjs +17 -0
  143. package/esm2022/src/lib/db/Enums/chat-status.enum.mjs +6 -0
  144. package/esm2022/src/lib/db/Enums/client/client-details-medicare-exemption.enum.mjs +7 -0
  145. package/esm2022/src/lib/db/Enums/client/client-details-work-depreciation-calculation.enum.mjs +6 -0
  146. package/esm2022/src/lib/db/Enums/client/client-details-working-holiday-maker.enum.mjs +7 -0
  147. package/esm2022/src/lib/db/Enums/client/client-invite-status.enum.mjs +6 -0
  148. package/esm2022/src/lib/db/Enums/client/client-invite-type.enum.mjs +6 -0
  149. package/esm2022/src/lib/db/Enums/client/index.mjs +7 -0
  150. package/esm2022/src/lib/db/Enums/client/timezone.enum.mjs +11 -0
  151. package/esm2022/src/lib/db/Enums/depreciation-calculation-percent.enum.mjs +9 -0
  152. package/esm2022/src/lib/db/Enums/depreciation-calculation.enum.mjs +10 -0
  153. package/esm2022/src/lib/db/Enums/depreciation-type.enum.mjs +8 -0
  154. package/esm2022/src/lib/db/Enums/depreciation-write-off-amount.enum.mjs +6 -0
  155. package/esm2022/src/lib/db/Enums/document-type.enum.mjs +5 -0
  156. package/esm2022/src/lib/db/Enums/file-type.enum.mjs +14 -0
  157. package/esm2022/src/lib/db/Enums/firm/employee-invite-role.enum.mjs +6 -0
  158. package/esm2022/src/lib/db/Enums/firm/firm-type.enum.mjs +6 -0
  159. package/esm2022/src/lib/db/Enums/firm/index.mjs +3 -0
  160. package/esm2022/src/lib/db/Enums/holding/holding-trade-type.enum.mjs +6 -0
  161. package/esm2022/src/lib/db/Enums/holding/holding-type-category.enum.mjs +18 -0
  162. package/esm2022/src/lib/db/Enums/holding/holding-type-exchange-list.enum.mjs +11 -0
  163. package/esm2022/src/lib/db/Enums/holding/index.mjs +4 -0
  164. package/esm2022/src/lib/db/Enums/home-office/home-office-claim-method.enum.mjs +7 -0
  165. package/esm2022/src/lib/db/Enums/home-office/index.mjs +2 -0
  166. package/esm2022/src/lib/db/Enums/income-source/income-source-forecast-trust-type.enum.mjs +15 -0
  167. package/esm2022/src/lib/db/Enums/income-source/income-source-type-list-holding.enum.mjs +9 -0
  168. package/esm2022/src/lib/db/Enums/income-source/income-source-type-list-other.enum.mjs +9 -0
  169. package/esm2022/src/lib/db/Enums/income-source/income-source-type-list-sole.enum.mjs +5 -0
  170. package/esm2022/src/lib/db/Enums/income-source/income-source-type-list-work.enum.mjs +10 -0
  171. package/esm2022/src/lib/db/Enums/income-source/income-source-type.enum.mjs +11 -0
  172. package/esm2022/src/lib/db/Enums/income-source/index.mjs +7 -0
  173. package/esm2022/src/lib/db/Enums/index.mjs +13 -0
  174. package/esm2022/src/lib/db/Enums/invite-status.enum.mjs +7 -0
  175. package/esm2022/src/lib/db/Enums/phone-type.enum.mjs +6 -0
  176. package/esm2022/src/lib/db/Enums/property/property-category-list.enum.mjs +7 -0
  177. package/esm2022/src/lib/db/Enums/property/property-depreciation-calculation.enum.mjs +6 -0
  178. package/esm2022/src/lib/db/Enums/property/property-sale/tax-exemption-meta-field.enum.mjs +9 -0
  179. package/esm2022/src/lib/db/Enums/property/property-sale/tax-exemption.enum.mjs +12 -0
  180. package/esm2022/src/lib/db/Enums/property/property-share-access.enum.mjs +6 -0
  181. package/esm2022/src/lib/db/Enums/property/property-share-status.enum.mjs +7 -0
  182. package/esm2022/src/lib/db/Enums/registration-invite-status.enum.mjs +6 -0
  183. package/esm2022/src/lib/db/Enums/salary-forecast-frequency.enum.mjs +8 -0
  184. package/esm2022/src/lib/db/Enums/service-notification-status.enum.mjs +7 -0
  185. package/esm2022/src/lib/db/Enums/service-notification-type.enum.mjs +6 -0
  186. package/esm2022/src/lib/db/Enums/setup-item-type.enum.mjs +6 -0
  187. package/esm2022/src/lib/db/Enums/sole/index.mjs +6 -0
  188. package/esm2022/src/lib/db/Enums/sole/sole-depreciation-method.enum.mjs +6 -0
  189. package/esm2022/src/lib/db/Enums/sole/sole-invoice-state.enum.mjs +10 -0
  190. package/esm2022/src/lib/db/Enums/sole/sole-invoice-statuses.enum.mjs +7 -0
  191. package/esm2022/src/lib/db/Enums/sole/sole-invoice-tax-type.enum.mjs +7 -0
  192. package/esm2022/src/lib/db/Enums/sole/sole-invoice-template-tax-type.enum.mjs +7 -0
  193. package/esm2022/src/lib/db/Enums/spare-document-spare-type.enum.mjs +6 -0
  194. package/esm2022/src/lib/db/Enums/subscription/index.mjs +2 -0
  195. package/esm2022/src/lib/db/Enums/subscription/service-payment-method-card-brand.enum.mjs +12 -0
  196. package/esm2022/src/lib/db/Enums/subscription/service-payment-method-type.enum.mjs +6 -0
  197. package/esm2022/src/lib/db/Enums/subscription/service-payment-status.enum.mjs +6 -0
  198. package/esm2022/src/lib/db/Enums/subscription/service-price-list.enum.mjs +8 -0
  199. package/esm2022/src/lib/db/Enums/subscription/service-price-recurring-interval.enum.mjs +8 -0
  200. package/esm2022/src/lib/db/Enums/subscription/service-price-type.enum.mjs +9 -0
  201. package/esm2022/src/lib/db/Enums/subscription/service-product-id.enum.mjs +11 -0
  202. package/esm2022/src/lib/db/Enums/subscription/service-product-status.enum.mjs +6 -0
  203. package/esm2022/src/lib/db/Enums/subscription/service-subscription-status.enum.mjs +10 -0
  204. package/esm2022/src/lib/db/Enums/tank-type.enum.mjs +10 -0
  205. package/esm2022/src/lib/db/Enums/tax-calculation-medicare-exemption.enum.mjs +6 -0
  206. package/esm2022/src/lib/db/Enums/tax-calculation-type.enum.mjs +14 -0
  207. package/esm2022/src/lib/db/Enums/tax-return/index.mjs +4 -0
  208. package/esm2022/src/lib/db/Enums/tax-return/tax-return-category-list.enum.mjs +66 -0
  209. package/esm2022/src/lib/db/Enums/tax-return/tax-return-category-section.enum.mjs +9 -0
  210. package/esm2022/src/lib/db/Enums/tax-return/tax-return-item.enum.mjs +20 -0
  211. package/esm2022/src/lib/db/Enums/tax-review-status.enum.mjs +13 -0
  212. package/esm2022/src/lib/db/Enums/tax-summary-list.enum.mjs +17 -0
  213. package/esm2022/src/lib/db/Enums/tax-summary-section.enum.mjs +9 -0
  214. package/esm2022/src/lib/db/Enums/tax-summary-tax-summary.enum.mjs +17 -0
  215. package/esm2022/src/lib/db/Enums/ticket-feedback.enum.mjs +6 -0
  216. package/esm2022/src/lib/db/Enums/ticket-status.enum.mjs +9 -0
  217. package/esm2022/src/lib/db/Enums/ticket-types.enum.mjs +5 -0
  218. package/esm2022/src/lib/db/Enums/transaction-operation.enum.mjs +8 -0
  219. package/esm2022/src/lib/db/Enums/transaction-source.enum.mjs +6 -0
  220. package/esm2022/src/lib/db/Enums/transaction-type.enum.mjs +6 -0
  221. package/esm2022/src/lib/db/Enums/user/gender.enum.mjs +14 -0
  222. package/esm2022/src/lib/db/Enums/user/index.mjs +2 -0
  223. package/esm2022/src/lib/db/Enums/user-event-status.enum.mjs +9 -0
  224. package/esm2022/src/lib/db/Enums/user-event-type-client-type.enum.mjs +29 -0
  225. package/esm2022/src/lib/db/Enums/user-event-type-employee-type.enum.mjs +17 -0
  226. package/esm2022/src/lib/db/Enums/user-event-type-frequency.enum.mjs +7 -0
  227. package/esm2022/src/lib/db/Enums/user-event-type-type.enum.mjs +53 -0
  228. package/esm2022/src/lib/db/Enums/user-event-type-user-type.enum.mjs +7 -0
  229. package/esm2022/src/lib/db/Enums/user-medicare-exemption.enum.mjs +7 -0
  230. package/esm2022/src/lib/db/Enums/user-status.enum.mjs +7 -0
  231. package/esm2022/src/lib/db/Enums/user-title.enum.mjs +9 -0
  232. package/esm2022/src/lib/db/Enums/user-work-depreciation-calculation.enum.mjs +6 -0
  233. package/esm2022/src/lib/db/Enums/user-working-holiday-maker.enum.mjs +7 -0
  234. package/esm2022/src/lib/db/Enums/vehicle-claim-details-method.enum.mjs +6 -0
  235. package/esm2022/src/lib/db/Enums/vehicle-logbook-purpose.enum.mjs +6 -0
  236. package/esm2022/src/lib/db/Json/chart-accounts/chart-accounts-value.json +530 -0
  237. package/esm2022/src/lib/db/Json/holding/holding-type-exchange.json +79 -0
  238. package/esm2022/src/lib/db/Json/income-source/income_source_type.json +62 -0
  239. package/esm2022/src/lib/db/Json/property/tax-exemption.json +47 -0
  240. package/esm2022/src/lib/db/Json/tax-return/tax-return-item.json +1778 -0
  241. package/esm2022/src/lib/db/Models/abstract-model.mjs +17 -0
  242. package/esm2022/src/lib/db/Models/address.mjs +4 -0
  243. package/esm2022/src/lib/db/Models/bank/bank-account-balance.mjs +9 -0
  244. package/esm2022/src/lib/db/Models/bank/bank-account-property.mjs +9 -0
  245. package/esm2022/src/lib/db/Models/bank/bank-account.mjs +10 -0
  246. package/esm2022/src/lib/db/Models/bank/bank-connection.mjs +5 -0
  247. package/esm2022/src/lib/db/Models/bank/bank-transaction-import.mjs +4 -0
  248. package/esm2022/src/lib/db/Models/bank/bank-transaction.mjs +5 -0
  249. package/esm2022/src/lib/db/Models/bank/bank.mjs +4 -0
  250. package/esm2022/src/lib/db/Models/bank/basiq-job-step.enum.mjs +8 -0
  251. package/esm2022/src/lib/db/Models/bank/basiq-job.mjs +4 -0
  252. package/esm2022/src/lib/db/Models/budget/budget-rule.mjs +4 -0
  253. package/esm2022/src/lib/db/Models/budget/budget.mjs +4 -0
  254. package/esm2022/src/lib/db/Models/budget/index.mjs +3 -0
  255. package/esm2022/src/lib/db/Models/chart-accounts/chart-accounts-depreciation.mjs +4 -0
  256. package/esm2022/src/lib/db/Models/chart-accounts/chart-accounts-heading.mjs +4 -0
  257. package/esm2022/src/lib/db/Models/chart-accounts/chart-accounts-meta-field.mjs +4 -0
  258. package/esm2022/src/lib/db/Models/chart-accounts/chart-accounts-value.mjs +4 -0
  259. package/esm2022/src/lib/db/Models/chart-accounts/chart-accounts.mjs +4 -0
  260. package/esm2022/src/lib/db/Models/client/annual-client-details.mjs +3 -0
  261. package/esm2022/src/lib/db/Models/client/client-details.mjs +4 -0
  262. package/esm2022/src/lib/db/Models/client/index.mjs +4 -0
  263. package/esm2022/src/lib/db/Models/client/occupation.mjs +4 -0
  264. package/esm2022/src/lib/db/Models/country.mjs +4 -0
  265. package/esm2022/src/lib/db/Models/depreciation/depreciation-capital-project.mjs +4 -0
  266. package/esm2022/src/lib/db/Models/depreciation/depreciation-forecast.mjs +4 -0
  267. package/esm2022/src/lib/db/Models/depreciation/depreciation.mjs +10 -0
  268. package/esm2022/src/lib/db/Models/document/document-folder.mjs +4 -0
  269. package/esm2022/src/lib/db/Models/document/folder-document.mjs +4 -0
  270. package/esm2022/src/lib/db/Models/document/property-document.mjs +4 -0
  271. package/esm2022/src/lib/db/Models/file.mjs +4 -0
  272. package/esm2022/src/lib/db/Models/firm/accountant/tax-review.mjs +4 -0
  273. package/esm2022/src/lib/db/Models/firm/accountant/ticket.mjs +4 -0
  274. package/esm2022/src/lib/db/Models/firm/chat.mjs +4 -0
  275. package/esm2022/src/lib/db/Models/firm/client-invite.mjs +5 -0
  276. package/esm2022/src/lib/db/Models/firm/client-movement.mjs +5 -0
  277. package/esm2022/src/lib/db/Models/firm/employee-invite.mjs +4 -0
  278. package/esm2022/src/lib/db/Models/firm/firm-invite.mjs +4 -0
  279. package/esm2022/src/lib/db/Models/firm/firm.mjs +4 -0
  280. package/esm2022/src/lib/db/Models/firm/message-document.mjs +4 -0
  281. package/esm2022/src/lib/db/Models/firm/message.mjs +5 -0
  282. package/esm2022/src/lib/db/Models/holding/holding-sale.mjs +3 -0
  283. package/esm2022/src/lib/db/Models/holding/holding-trade-import.mjs +3 -0
  284. package/esm2022/src/lib/db/Models/holding/holding-trade.mjs +3 -0
  285. package/esm2022/src/lib/db/Models/holding/holding-type-exchange.mjs +3 -0
  286. package/esm2022/src/lib/db/Models/holding/holding-type.mjs +3 -0
  287. package/esm2022/src/lib/db/Models/holding/index.mjs +5 -0
  288. package/esm2022/src/lib/db/Models/incomeSource/income-source-forecast.mjs +4 -0
  289. package/esm2022/src/lib/db/Models/incomeSource/income-source-type.mjs +4 -0
  290. package/esm2022/src/lib/db/Models/incomeSource/income-source.mjs +4 -0
  291. package/esm2022/src/lib/db/Models/incomeSource/salary-forecast.mjs +4 -0
  292. package/esm2022/src/lib/db/Models/index.mjs +96 -0
  293. package/esm2022/src/lib/db/Models/loan/borrowing-expense-loan.mjs +4 -0
  294. package/esm2022/src/lib/db/Models/loan/borrowing-expense.mjs +4 -0
  295. package/esm2022/src/lib/db/Models/loan/loan-payout.mjs +13 -0
  296. package/esm2022/src/lib/db/Models/loan/loan.mjs +22 -0
  297. package/esm2022/src/lib/db/Models/observable-model.mjs +14 -0
  298. package/esm2022/src/lib/db/Models/phone.mjs +4 -0
  299. package/esm2022/src/lib/db/Models/property/borrowing-report.mjs +4 -0
  300. package/esm2022/src/lib/db/Models/property/property-category-movement.mjs +5 -0
  301. package/esm2022/src/lib/db/Models/property/property-category.mjs +5 -0
  302. package/esm2022/src/lib/db/Models/property/property-forecast.mjs +4 -0
  303. package/esm2022/src/lib/db/Models/property/property-sale/property-sale-tax-exemption-meta-field.mjs +4 -0
  304. package/esm2022/src/lib/db/Models/property/property-sale/property-sale.mjs +5 -0
  305. package/esm2022/src/lib/db/Models/property/property-sale/tax-exemption-meta-field.mjs +4 -0
  306. package/esm2022/src/lib/db/Models/property/property-sale/tax-exemption.mjs +4 -0
  307. package/esm2022/src/lib/db/Models/property/property-share.mjs +10 -0
  308. package/esm2022/src/lib/db/Models/property/property-subscription.mjs +4 -0
  309. package/esm2022/src/lib/db/Models/property/property-valuation.mjs +5 -0
  310. package/esm2022/src/lib/db/Models/property/property.mjs +30 -0
  311. package/esm2022/src/lib/db/Models/service-notification.mjs +4 -0
  312. package/esm2022/src/lib/db/Models/setup-item.mjs +4 -0
  313. package/esm2022/src/lib/db/Models/sole/bas-report.mjs +4 -0
  314. package/esm2022/src/lib/db/Models/sole/sole-business-activity.mjs +4 -0
  315. package/esm2022/src/lib/db/Models/sole/sole-business-allocation.mjs +4 -0
  316. package/esm2022/src/lib/db/Models/sole/sole-business-loss-offset-rule.mjs +4 -0
  317. package/esm2022/src/lib/db/Models/sole/sole-business-loss.mjs +4 -0
  318. package/esm2022/src/lib/db/Models/sole/sole-business.mjs +5 -0
  319. package/esm2022/src/lib/db/Models/sole/sole-contact.mjs +4 -0
  320. package/esm2022/src/lib/db/Models/sole/sole-depreciation-method.mjs +4 -0
  321. package/esm2022/src/lib/db/Models/sole/sole-details.mjs +5 -0
  322. package/esm2022/src/lib/db/Models/sole/sole-forecast.mjs +4 -0
  323. package/esm2022/src/lib/db/Models/sole/sole-invoice-item.mjs +4 -0
  324. package/esm2022/src/lib/db/Models/sole/sole-invoice-template.mjs +4 -0
  325. package/esm2022/src/lib/db/Models/sole/sole-invoice.mjs +4 -0
  326. package/esm2022/src/lib/db/Models/spare/spare-document-category.mjs +4 -0
  327. package/esm2022/src/lib/db/Models/spare/spare-document.mjs +4 -0
  328. package/esm2022/src/lib/db/Models/subscription/service-payment-method.mjs +4 -0
  329. package/esm2022/src/lib/db/Models/subscription/service-payment.mjs +4 -0
  330. package/esm2022/src/lib/db/Models/subscription/service-price.mjs +4 -0
  331. package/esm2022/src/lib/db/Models/subscription/service-product.mjs +4 -0
  332. package/esm2022/src/lib/db/Models/subscription/service-subscription-item.mjs +4 -0
  333. package/esm2022/src/lib/db/Models/subscription/service-subscription.mjs +5 -0
  334. package/esm2022/src/lib/db/Models/tax-calculation.mjs +4 -0
  335. package/esm2022/src/lib/db/Models/tax-return/index.mjs +4 -0
  336. package/esm2022/src/lib/db/Models/tax-return/tax-return-category.mjs +4 -0
  337. package/esm2022/src/lib/db/Models/tax-return/tax-return-item.mjs +4 -0
  338. package/esm2022/src/lib/db/Models/tax-return/tax-return.mjs +4 -0
  339. package/esm2022/src/lib/db/Models/transaction/allocation-rule-condition.mjs +4 -0
  340. package/esm2022/src/lib/db/Models/transaction/allocation-rule-transaction-meta-field.mjs +4 -0
  341. package/esm2022/src/lib/db/Models/transaction/allocation-rule-transaction.mjs +5 -0
  342. package/esm2022/src/lib/db/Models/transaction/allocation-rule.mjs +4 -0
  343. package/esm2022/src/lib/db/Models/transaction/transaction-allocation.mjs +4 -0
  344. package/esm2022/src/lib/db/Models/transaction/transaction-base.mjs +88 -0
  345. package/esm2022/src/lib/db/Models/transaction/transaction-meta-field.mjs +4 -0
  346. package/esm2022/src/lib/db/Models/transaction/transaction.mjs +5 -0
  347. package/esm2022/src/lib/db/Models/user/employee-details.mjs +4 -0
  348. package/esm2022/src/lib/db/Models/user/registration-invite.mjs +4 -0
  349. package/esm2022/src/lib/db/Models/user/user-event-setting.mjs +4 -0
  350. package/esm2022/src/lib/db/Models/user/user-event-type-category.mjs +4 -0
  351. package/esm2022/src/lib/db/Models/user/user-event-type.mjs +4 -0
  352. package/esm2022/src/lib/db/Models/user/user-event.mjs +4 -0
  353. package/esm2022/src/lib/db/Models/user/user.mjs +5 -0
  354. package/esm2022/src/lib/db/Models/vehicle/vehicle-claim-details.mjs +4 -0
  355. package/esm2022/src/lib/db/Models/vehicle/vehicle-claim.mjs +5 -0
  356. package/esm2022/src/lib/db/Models/vehicle/vehicle-logbook.mjs +4 -0
  357. package/esm2022/src/lib/db/Models/vehicle/vehicle.mjs +4 -0
  358. package/esm2022/src/lib/db-static/chart-accounts/chart-accounts-values.mjs +9 -0
  359. package/esm2022/src/lib/forms/abstract.form.mjs +163 -0
  360. package/esm2022/src/lib/forms/address/address.form.mjs +188 -0
  361. package/esm2022/src/lib/forms/address/index.mjs +2 -0
  362. package/esm2022/src/lib/forms/aussie/aussie-appointment.form.mjs +19 -0
  363. package/esm2022/src/lib/forms/aussie/aussie-confirmation.form.mjs +12 -0
  364. package/esm2022/src/lib/forms/aussie/aussie-store.form.mjs +27 -0
  365. package/esm2022/src/lib/forms/aussie/index.mjs +4 -0
  366. package/esm2022/src/lib/forms/bank/bank-account/bank-account-add-manual.form.mjs +45 -0
  367. package/esm2022/src/lib/forms/bank/bank-account/bank-account-allocation.form.mjs +45 -0
  368. package/esm2022/src/lib/forms/bank/bank-account/bank-account-import.form.mjs +24 -0
  369. package/esm2022/src/lib/forms/bank/bank-account/bank-account-properties.form.mjs +63 -0
  370. package/esm2022/src/lib/forms/bank/bank-account/bank-accounts-import.form.mjs +50 -0
  371. package/esm2022/src/lib/forms/budget/budget.form.mjs +69 -0
  372. package/esm2022/src/lib/forms/budget/index.mjs +2 -0
  373. package/esm2022/src/lib/forms/chart-accounts/chart-accounts.form.mjs +14 -0
  374. package/esm2022/src/lib/forms/chart-accounts/index.mjs +2 -0
  375. package/esm2022/src/lib/forms/chat/chat-filter.form.mjs +36 -0
  376. package/esm2022/src/lib/forms/chat/index.mjs +2 -0
  377. package/esm2022/src/lib/forms/client/annual-client-details.form.mjs +38 -0
  378. package/esm2022/src/lib/forms/client/capital-loss.form.mjs +13 -0
  379. package/esm2022/src/lib/forms/client/index.mjs +3 -0
  380. package/esm2022/src/lib/forms/collection.form.mjs +29 -0
  381. package/esm2022/src/lib/forms/depreciation/depreciation.form.mjs +48 -0
  382. package/esm2022/src/lib/forms/depreciation/index.mjs +2 -0
  383. package/esm2022/src/lib/forms/document-folder/document-folder.form.mjs +11 -0
  384. package/esm2022/src/lib/forms/document-folder/document.form.mjs +11 -0
  385. package/esm2022/src/lib/forms/document-folder/index.mjs +3 -0
  386. package/esm2022/src/lib/forms/firm/client-invite-put.form.mjs +13 -0
  387. package/esm2022/src/lib/forms/firm/client-invite.form.mjs +18 -0
  388. package/esm2022/src/lib/forms/firm/client-movement.form.mjs +22 -0
  389. package/esm2022/src/lib/forms/firm/employee-details.form.mjs +21 -0
  390. package/esm2022/src/lib/forms/firm/employee-invite.form.mjs +24 -0
  391. package/esm2022/src/lib/forms/firm/firm-branch.form.mjs +13 -0
  392. package/esm2022/src/lib/forms/firm/firm-invite.form.mjs +18 -0
  393. package/esm2022/src/lib/forms/firm/firm.form.mjs +18 -0
  394. package/esm2022/src/lib/forms/firm/index.mjs +9 -0
  395. package/esm2022/src/lib/forms/form-validations.enum.mjs +12 -0
  396. package/esm2022/src/lib/forms/holding/holding-reinvest.form.mjs +85 -0
  397. package/esm2022/src/lib/forms/holding/holding-trade/holding-trade-filter.form.mjs +44 -0
  398. package/esm2022/src/lib/forms/holding/holding-trade/holding-trade.form.mjs +30 -0
  399. package/esm2022/src/lib/forms/holding/holding-trade/index.mjs +3 -0
  400. package/esm2022/src/lib/forms/holding/holding-trade-import.form.mjs +25 -0
  401. package/esm2022/src/lib/forms/holding/holding-type.form.mjs +16 -0
  402. package/esm2022/src/lib/forms/holding/index.mjs +5 -0
  403. package/esm2022/src/lib/forms/home-office/home-office-calculator.form.mjs +32 -0
  404. package/esm2022/src/lib/forms/home-office/home-office-claim.form.mjs +43 -0
  405. package/esm2022/src/lib/forms/home-office/home-office-log.form.mjs +15 -0
  406. package/esm2022/src/lib/forms/home-office/index.mjs +4 -0
  407. package/esm2022/src/lib/forms/index.mjs +32 -0
  408. package/esm2022/src/lib/forms/loan/index.mjs +2 -0
  409. package/esm2022/src/lib/forms/loan/loan.form.mjs +86 -0
  410. package/esm2022/src/lib/forms/login/login.form.mjs +11 -0
  411. package/esm2022/src/lib/forms/phone/index.mjs +2 -0
  412. package/esm2022/src/lib/forms/phone/phone.form.mjs +18 -0
  413. package/esm2022/src/lib/forms/property/borrowing-report.form.mjs +32 -0
  414. package/esm2022/src/lib/forms/property/index.mjs +10 -0
  415. package/esm2022/src/lib/forms/property/property-add.form.mjs +58 -0
  416. package/esm2022/src/lib/forms/property/property-category-movement-form.mjs +21 -0
  417. package/esm2022/src/lib/forms/property/property-document.form.mjs +14 -0
  418. package/esm2022/src/lib/forms/property/property-edit.form.mjs +17 -0
  419. package/esm2022/src/lib/forms/property/property-forecast.form.mjs +28 -0
  420. package/esm2022/src/lib/forms/property/property-sale/index.mjs +4 -0
  421. package/esm2022/src/lib/forms/property/property-sale/property-sale-cost-base.form.mjs +38 -0
  422. package/esm2022/src/lib/forms/property/property-sale/property-sale-cost-sale.form.mjs +66 -0
  423. package/esm2022/src/lib/forms/property/property-sale/property-sale-exemptions.form.mjs +107 -0
  424. package/esm2022/src/lib/forms/property/property-share.form.mjs +16 -0
  425. package/esm2022/src/lib/forms/property/property-valuation.form.mjs +40 -0
  426. package/esm2022/src/lib/forms/register/register-client.form.mjs +22 -0
  427. package/esm2022/src/lib/forms/register/register-firm.form.mjs +22 -0
  428. package/esm2022/src/lib/forms/report/my-tax/index.mjs +17 -0
  429. package/esm2022/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.mjs +31 -0
  430. package/esm2022/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.mjs +81 -0
  431. package/esm2022/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.mjs +14 -0
  432. package/esm2022/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.mjs +79 -0
  433. package/esm2022/src/lib/forms/report/my-tax/my-tax-cgt.form.mjs +30 -0
  434. package/esm2022/src/lib/forms/report/my-tax/my-tax-deductions.form.mjs +85 -0
  435. package/esm2022/src/lib/forms/report/my-tax/my-tax-dividends.form.mjs +23 -0
  436. package/esm2022/src/lib/forms/report/my-tax/my-tax-income-statements.form.mjs +108 -0
  437. package/esm2022/src/lib/forms/report/my-tax/my-tax-income-tests.form.mjs +10 -0
  438. package/esm2022/src/lib/forms/report/my-tax/my-tax-interest.form.mjs +12 -0
  439. package/esm2022/src/lib/forms/report/my-tax/my-tax-losses.form.mjs +11 -0
  440. package/esm2022/src/lib/forms/report/my-tax/my-tax-medicare.form.mjs +38 -0
  441. package/esm2022/src/lib/forms/report/my-tax/my-tax-offsets.form.mjs +10 -0
  442. package/esm2022/src/lib/forms/report/my-tax/my-tax-other-income.form.mjs +43 -0
  443. package/esm2022/src/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.mjs +37 -0
  444. package/esm2022/src/lib/forms/report/my-tax/my-tax-rent.form.mjs +13 -0
  445. package/esm2022/src/lib/forms/sole/bas-report.form.mjs +63 -0
  446. package/esm2022/src/lib/forms/sole/index.mjs +12 -0
  447. package/esm2022/src/lib/forms/sole/invoice-payment.form.mjs +14 -0
  448. package/esm2022/src/lib/forms/sole/sole-business-allocations.form.mjs +64 -0
  449. package/esm2022/src/lib/forms/sole/sole-business-loss.form.mjs +24 -0
  450. package/esm2022/src/lib/forms/sole/sole-business.form.mjs +70 -0
  451. package/esm2022/src/lib/forms/sole/sole-contact.form.mjs +20 -0
  452. package/esm2022/src/lib/forms/sole/sole-depreciation-method.form.mjs +10 -0
  453. package/esm2022/src/lib/forms/sole/sole-details.form.mjs +12 -0
  454. package/esm2022/src/lib/forms/sole/sole-invoice-item.form.mjs +15 -0
  455. package/esm2022/src/lib/forms/sole/sole-invoice-template.form.mjs +15 -0
  456. package/esm2022/src/lib/forms/sole/sole-invoice.form.mjs +158 -0
  457. package/esm2022/src/lib/forms/tax-review/index.mjs +3 -0
  458. package/esm2022/src/lib/forms/tax-review/tax-review-filter-status.enum.mjs +6 -0
  459. package/esm2022/src/lib/forms/tax-review/tax-review-filter.form.mjs +49 -0
  460. package/esm2022/src/lib/forms/transaction/allocation-rule-condition.form.mjs +16 -0
  461. package/esm2022/src/lib/forms/transaction/allocation-rule-transaction-meta-field.form.mjs +12 -0
  462. package/esm2022/src/lib/forms/transaction/allocation-rule-transaction.form.mjs +146 -0
  463. package/esm2022/src/lib/forms/transaction/allocation-rule.form.mjs +188 -0
  464. package/esm2022/src/lib/forms/transaction/holding/holding-income.form.mjs +59 -0
  465. package/esm2022/src/lib/forms/transaction/index.mjs +9 -0
  466. package/esm2022/src/lib/forms/transaction/messages.enum.mjs +5 -0
  467. package/esm2022/src/lib/forms/transaction/sole/sole-income.form.mjs +17 -0
  468. package/esm2022/src/lib/forms/transaction/sole/sole-transaction.form.mjs +7 -0
  469. package/esm2022/src/lib/forms/transaction/transaction-base-filter.form.mjs +48 -0
  470. package/esm2022/src/lib/forms/transaction/transaction-base.form.mjs +98 -0
  471. package/esm2022/src/lib/forms/transaction/transaction.form.mjs +62 -0
  472. package/esm2022/src/lib/forms/transaction/work/work-expense.form.mjs +46 -0
  473. package/esm2022/src/lib/forms/transaction/work/work-income.form.mjs +90 -0
  474. package/esm2022/src/lib/forms/transaction/work/work-transaction.form.mjs +38 -0
  475. package/esm2022/src/lib/forms/user/client-details.form.mjs +35 -0
  476. package/esm2022/src/lib/forms/user/index.mjs +6 -0
  477. package/esm2022/src/lib/forms/user/password.form.mjs +14 -0
  478. package/esm2022/src/lib/forms/user/reset-password.form.mjs +11 -0
  479. package/esm2022/src/lib/forms/user/user-invite.form.mjs +17 -0
  480. package/esm2022/src/lib/forms/user/user.form.mjs +18 -0
  481. package/esm2022/src/lib/forms/vehicle/index.mjs +5 -0
  482. package/esm2022/src/lib/forms/vehicle/vehicle-claim-details.form.mjs +17 -0
  483. package/esm2022/src/lib/forms/vehicle/vehicle-claim.form.mjs +28 -0
  484. package/esm2022/src/lib/forms/vehicle/vehicle-logbook.form.mjs +62 -0
  485. package/esm2022/src/lib/forms/vehicle/vehicle.form.mjs +17 -0
  486. package/esm2022/src/lib/functions/array/index.mjs +5 -0
  487. package/esm2022/src/lib/functions/array/replace.mjs +6 -0
  488. package/esm2022/src/lib/functions/array/sort-deep.mjs +22 -0
  489. package/esm2022/src/lib/functions/array/sort.mjs +13 -0
  490. package/esm2022/src/lib/functions/array/to-array.mjs +7 -0
  491. package/esm2022/src/lib/functions/clone-deep.mjs +5 -0
  492. package/esm2022/src/lib/functions/create-date.mjs +8 -0
  493. package/esm2022/src/lib/functions/enum-to-list.mjs +13 -0
  494. package/esm2022/src/lib/functions/get-doc-icon.mjs +18 -0
  495. package/esm2022/src/lib/functions/mat-options-functions.mjs +13 -0
  496. package/esm2022/src/lib/functions/mat-sort-options.mjs +10 -0
  497. package/esm2022/src/lib/interceptors/aussie.interceptor.mjs +35 -0
  498. package/esm2022/src/lib/interceptors/basiq-client-id.interceptor.mjs +31 -0
  499. package/esm2022/src/lib/interceptors/basiq-token.interceptor.mjs +33 -0
  500. package/esm2022/src/lib/interceptors/corelogic-interceptor.mjs +41 -0
  501. package/esm2022/src/lib/interceptors/financial-year-interceptor.mjs +42 -0
  502. package/esm2022/src/lib/interceptors/interceptors.module.mjs +107 -0
  503. package/esm2022/src/lib/interceptors/preloader.interceptor.mjs +32 -0
  504. package/esm2022/src/lib/interceptors/rewardful.interceptor.mjs +43 -0
  505. package/esm2022/src/lib/interceptors/user-switcher-interceptor.mjs +40 -0
  506. package/esm2022/src/lib/interfaces/asset-entity-type.enum.mjs +12 -0
  507. package/esm2022/src/lib/interfaces/asset-type.enum.mjs +13 -0
  508. package/esm2022/src/lib/interfaces/asset.interface.mjs +2 -0
  509. package/esm2022/src/lib/interfaces/chart-data.interface.mjs +2 -0
  510. package/esm2022/src/lib/interfaces/chart-serie.interface.mjs +2 -0
  511. package/esm2022/src/lib/interfaces/document.interface.mjs +2 -0
  512. package/esm2022/src/lib/interfaces/documentable.interface.mjs +2 -0
  513. package/esm2022/src/lib/interfaces/event-listener.interface.mjs +2 -0
  514. package/esm2022/src/lib/interfaces/expense.interface.mjs +2 -0
  515. package/esm2022/src/lib/interfaces/income-source-forecast.interface.mjs +2 -0
  516. package/esm2022/src/lib/interfaces/index.mjs +14 -0
  517. package/esm2022/src/lib/interfaces/option.interface.mjs +2 -0
  518. package/esm2022/src/lib/interfaces/tank.interface.mjs +2 -0
  519. package/esm2022/src/lib/interfaces/updatable.interface.mjs +2 -0
  520. package/esm2022/src/lib/messages/index.mjs +2 -0
  521. package/esm2022/src/lib/messages/messages.enum.mjs +16 -0
  522. package/esm2022/src/lib/models/account-setup/account-setup-item.mjs +38 -0
  523. package/esm2022/src/lib/models/account-setup/account-setup-items.enum.mjs +19 -0
  524. package/esm2022/src/lib/models/address/address.mjs +50 -0
  525. package/esm2022/src/lib/models/address/country.mjs +18 -0
  526. package/esm2022/src/lib/models/address/index.mjs +4 -0
  527. package/esm2022/src/lib/models/address/states.enum.mjs +12 -0
  528. package/esm2022/src/lib/models/asset-sale.mjs +10 -0
  529. package/esm2022/src/lib/models/aussie/aussie-appointment.mjs +14 -0
  530. package/esm2022/src/lib/models/aussie/aussie-broker.mjs +33 -0
  531. package/esm2022/src/lib/models/aussie/aussie-store.interface.mjs +2 -0
  532. package/esm2022/src/lib/models/aussie/aussie-store.mjs +10 -0
  533. package/esm2022/src/lib/models/aussie/index.mjs +5 -0
  534. package/esm2022/src/lib/models/badge/badge-color.enum.mjs +8 -0
  535. package/esm2022/src/lib/models/badge/badge.mjs +14 -0
  536. package/esm2022/src/lib/models/bank/allocation-group.mjs +64 -0
  537. package/esm2022/src/lib/models/bank/bank-account-chart-data.mjs +30 -0
  538. package/esm2022/src/lib/models/bank/bank-account-property.mjs +14 -0
  539. package/esm2022/src/lib/models/bank/bank-account.mjs +166 -0
  540. package/esm2022/src/lib/models/bank/bank-connection.mjs +76 -0
  541. package/esm2022/src/lib/models/bank/bank-external-stats.mjs +8 -0
  542. package/esm2022/src/lib/models/bank/bank-transaction-chart-data.mjs +99 -0
  543. package/esm2022/src/lib/models/bank/bank-transaction-summary-fields.enum.mjs +6 -0
  544. package/esm2022/src/lib/models/bank/bank-transaction.mjs +78 -0
  545. package/esm2022/src/lib/models/bank/bank.mjs +37 -0
  546. package/esm2022/src/lib/models/bank/basiq/basiq-config.mjs +12 -0
  547. package/esm2022/src/lib/models/bank/basiq/basiq-connection-data.interface.mjs +2 -0
  548. package/esm2022/src/lib/models/bank/basiq/basiq-connections-response.interface.mjs +2 -0
  549. package/esm2022/src/lib/models/bank/basiq/basiq-job-response.mjs +15 -0
  550. package/esm2022/src/lib/models/bank/basiq/basiq-job-step.mjs +18 -0
  551. package/esm2022/src/lib/models/bank/basiq/basiq-job.mjs +4 -0
  552. package/esm2022/src/lib/models/bank/basiq/basiq-token-response.interface.mjs +2 -0
  553. package/esm2022/src/lib/models/bank/basiq/basiq-token.mjs +15 -0
  554. package/esm2022/src/lib/models/bank/basiq/index.mjs +9 -0
  555. package/esm2022/src/lib/models/bank/index.mjs +13 -0
  556. package/esm2022/src/lib/models/bank/type-loan.const.mjs +6 -0
  557. package/esm2022/src/lib/models/borrowing-expense/borrowing-expense-loan.mjs +4 -0
  558. package/esm2022/src/lib/models/borrowing-expense/borrowing-expense.mjs +4 -0
  559. package/esm2022/src/lib/models/borrowing-expense/index.mjs +3 -0
  560. package/esm2022/src/lib/models/budget/budget-rule.mjs +14 -0
  561. package/esm2022/src/lib/models/budget/budget.mjs +18 -0
  562. package/esm2022/src/lib/models/budget/index.mjs +3 -0
  563. package/esm2022/src/lib/models/chart/chart-data.mjs +13 -0
  564. package/esm2022/src/lib/models/chart/chart-serie.mjs +7 -0
  565. package/esm2022/src/lib/models/chart-accounts/chart-accounts-categories.const.mjs +122 -0
  566. package/esm2022/src/lib/models/chart-accounts/chart-accounts-category.e-collection.mjs +48 -0
  567. package/esm2022/src/lib/models/chart-accounts/chart-accounts-depreciation.mjs +16 -0
  568. package/esm2022/src/lib/models/chart-accounts/chart-accounts-heading.mjs +4 -0
  569. package/esm2022/src/lib/models/chart-accounts/chart-accounts-meta-field.mjs +20 -0
  570. package/esm2022/src/lib/models/chart-accounts/chart-accounts-tax-labels.enum.mjs +7 -0
  571. package/esm2022/src/lib/models/chart-accounts/chart-accounts-value.mjs +4 -0
  572. package/esm2022/src/lib/models/chart-accounts/chart-accounts.mjs +280 -0
  573. package/esm2022/src/lib/models/chart-accounts/index.mjs +9 -0
  574. package/esm2022/src/lib/models/chat/chat-view-type.enum.mjs +6 -0
  575. package/esm2022/src/lib/models/chat/chat.mjs +30 -0
  576. package/esm2022/src/lib/models/chat/index.mjs +5 -0
  577. package/esm2022/src/lib/models/chat/message-document.mjs +21 -0
  578. package/esm2022/src/lib/models/chat/message.mjs +43 -0
  579. package/esm2022/src/lib/models/client/annual-client-details.mjs +19 -0
  580. package/esm2022/src/lib/models/client/capital-loss.interface.mjs +2 -0
  581. package/esm2022/src/lib/models/client/capital-loss.mjs +15 -0
  582. package/esm2022/src/lib/models/client/client-details.mjs +30 -0
  583. package/esm2022/src/lib/models/client/client-invite.mjs +70 -0
  584. package/esm2022/src/lib/models/client/client-movement.mjs +26 -0
  585. package/esm2022/src/lib/models/client/client-portfolio-chart-data.mjs +55 -0
  586. package/esm2022/src/lib/models/client/client-portfolio-report.mjs +7 -0
  587. package/esm2022/src/lib/models/client/index.mjs +10 -0
  588. package/esm2022/src/lib/models/client/sharesight/index.mjs +4 -0
  589. package/esm2022/src/lib/models/client/sharesight/sharesight-details-messages.enum.mjs +9 -0
  590. package/esm2022/src/lib/models/client/sharesight/sharesight-details.interface.mjs +2 -0
  591. package/esm2022/src/lib/models/client/sharesight/sharesight-details.mjs +22 -0
  592. package/esm2022/src/lib/models/color/alphabet-colors.enum.mjs +30 -0
  593. package/esm2022/src/lib/models/date-range.mjs +10 -0
  594. package/esm2022/src/lib/models/depreciation/depreciation-capital-project.mjs +9 -0
  595. package/esm2022/src/lib/models/depreciation/depreciation-forecast.mjs +42 -0
  596. package/esm2022/src/lib/models/depreciation/depreciation-group-item.mjs +18 -0
  597. package/esm2022/src/lib/models/depreciation/depreciation-group.enum.mjs +10 -0
  598. package/esm2022/src/lib/models/depreciation/depreciation-group.mjs +20 -0
  599. package/esm2022/src/lib/models/depreciation/depreciation-groups.const.mjs +34 -0
  600. package/esm2022/src/lib/models/depreciation/depreciation-lvp-rate.enum.mjs +9 -0
  601. package/esm2022/src/lib/models/depreciation/depreciation.mjs +179 -0
  602. package/esm2022/src/lib/models/depreciation/index.mjs +9 -0
  603. package/esm2022/src/lib/models/dictionary/dictionary.mjs +50 -0
  604. package/esm2022/src/lib/models/dictionary/index.mjs +2 -0
  605. package/esm2022/src/lib/models/document/document-api-url-prefix.enum.mjs +9 -0
  606. package/esm2022/src/lib/models/document/document-file-types.const.mjs +23 -0
  607. package/esm2022/src/lib/models/document/document-folder.mjs +4 -0
  608. package/esm2022/src/lib/models/document/document.mjs +17 -0
  609. package/esm2022/src/lib/models/document/index.mjs +5 -0
  610. package/esm2022/src/lib/models/employee/employee-details.mjs +16 -0
  611. package/esm2022/src/lib/models/employee/employee-invite.mjs +30 -0
  612. package/esm2022/src/lib/models/endpoint/endpoint.mjs +23 -0
  613. package/esm2022/src/lib/models/endpoint/endpoints.const.mjs +273 -0
  614. package/esm2022/src/lib/models/event/app-event-type.enum.mjs +60 -0
  615. package/esm2022/src/lib/models/event/app-event.mjs +21 -0
  616. package/esm2022/src/lib/models/event/index.mjs +3 -0
  617. package/esm2022/src/lib/models/export/export-cell-type.enum.mjs +11 -0
  618. package/esm2022/src/lib/models/export/export-cell.mjs +6 -0
  619. package/esm2022/src/lib/models/export/export-data-table.mjs +3 -0
  620. package/esm2022/src/lib/models/export/export-format.enum.mjs +6 -0
  621. package/esm2022/src/lib/models/file/file.mjs +15 -0
  622. package/esm2022/src/lib/models/file/icons-file.enum.mjs +7 -0
  623. package/esm2022/src/lib/models/file/index.mjs +2 -0
  624. package/esm2022/src/lib/models/financial-year/financial-year.mjs +54 -0
  625. package/esm2022/src/lib/models/financial-year/index.mjs +5 -0
  626. package/esm2022/src/lib/models/financial-year/month-name-short.enum.mjs +21 -0
  627. package/esm2022/src/lib/models/financial-year/month-number.enum.mjs +21 -0
  628. package/esm2022/src/lib/models/financial-year/months.const.mjs +2 -0
  629. package/esm2022/src/lib/models/firm/firm-branch.interface.mjs +2 -0
  630. package/esm2022/src/lib/models/firm/firm-branch.mjs +22 -0
  631. package/esm2022/src/lib/models/firm/firm.mjs +26 -0
  632. package/esm2022/src/lib/models/firm/index.mjs +3 -0
  633. package/esm2022/src/lib/models/holding/holding-reinvest.mjs +22 -0
  634. package/esm2022/src/lib/models/holding/holding-sale.mjs +39 -0
  635. package/esm2022/src/lib/models/holding/holding-trade-import.mjs +16 -0
  636. package/esm2022/src/lib/models/holding/holding-trade.mjs +90 -0
  637. package/esm2022/src/lib/models/holding/holding-type-exchange.mjs +16 -0
  638. package/esm2022/src/lib/models/holding/holding-type.mjs +67 -0
  639. package/esm2022/src/lib/models/holding/holding.mjs +54 -0
  640. package/esm2022/src/lib/models/holding/index.mjs +8 -0
  641. package/esm2022/src/lib/models/home-office/home-office-claim.interface.mjs +2 -0
  642. package/esm2022/src/lib/models/home-office/home-office-claim.mjs +46 -0
  643. package/esm2022/src/lib/models/home-office/home-office-log.interface.mjs +2 -0
  644. package/esm2022/src/lib/models/home-office/home-office-log.mjs +18 -0
  645. package/esm2022/src/lib/models/home-office/index.mjs +5 -0
  646. package/esm2022/src/lib/models/income-position/income-position.mjs +9 -0
  647. package/esm2022/src/lib/models/income-source/income-source-chart-data.mjs +45 -0
  648. package/esm2022/src/lib/models/income-source/income-source-forecast.mjs +34 -0
  649. package/esm2022/src/lib/models/income-source/income-source-type.mjs +20 -0
  650. package/esm2022/src/lib/models/income-source/income-source.mjs +58 -0
  651. package/esm2022/src/lib/models/income-source/index.mjs +7 -0
  652. package/esm2022/src/lib/models/income-source/salary-forecast.mjs +36 -0
  653. package/esm2022/src/lib/models/income-source/sole-forecast.mjs +13 -0
  654. package/esm2022/src/lib/models/index.mjs +30 -0
  655. package/esm2022/src/lib/models/loan/index.mjs +5 -0
  656. package/esm2022/src/lib/models/loan/loan-max-number-of-payments.enum.mjs +11 -0
  657. package/esm2022/src/lib/models/loan/loan-payment.mjs +13 -0
  658. package/esm2022/src/lib/models/loan/loan-payout.mjs +11 -0
  659. package/esm2022/src/lib/models/loan/loan.mjs +84 -0
  660. package/esm2022/src/lib/models/notification/index.mjs +2 -0
  661. package/esm2022/src/lib/models/notification/notification.mjs +39 -0
  662. package/esm2022/src/lib/models/pdf/pdf-orientation.enum.mjs +6 -0
  663. package/esm2022/src/lib/models/pdf/pdf-settings.mjs +17 -0
  664. package/esm2022/src/lib/models/phone/phone.mjs +19 -0
  665. package/esm2022/src/lib/models/property/borrowing-report.mjs +50 -0
  666. package/esm2022/src/lib/models/property/calculation-form-item.mjs +17 -0
  667. package/esm2022/src/lib/models/property/calculation-form-type.enum.mjs +9 -0
  668. package/esm2022/src/lib/models/property/capital-costs-itmes.const.mjs +57 -0
  669. package/esm2022/src/lib/models/property/corelogic-suggestion.mjs +7 -0
  670. package/esm2022/src/lib/models/property/index.mjs +19 -0
  671. package/esm2022/src/lib/models/property/property-category-movement.mjs +24 -0
  672. package/esm2022/src/lib/models/property/property-category.mjs +15 -0
  673. package/esm2022/src/lib/models/property/property-corelogic-stats.interface.mjs +2 -0
  674. package/esm2022/src/lib/models/property/property-document.mjs +17 -0
  675. package/esm2022/src/lib/models/property/property-equity-chart-data.mjs +168 -0
  676. package/esm2022/src/lib/models/property/property-equity-chart-item.mjs +24 -0
  677. package/esm2022/src/lib/models/property/property-equity-chart-type.enum.mjs +6 -0
  678. package/esm2022/src/lib/models/property/property-forecast.mjs +45 -0
  679. package/esm2022/src/lib/models/property/property-sale/index.mjs +6 -0
  680. package/esm2022/src/lib/models/property/property-sale/property-sale-cost-base.mjs +20 -0
  681. package/esm2022/src/lib/models/property/property-sale/property-sale-tax-exemption-meta-field.mjs +4 -0
  682. package/esm2022/src/lib/models/property/property-sale/property-sale.mjs +55 -0
  683. package/esm2022/src/lib/models/property/property-sale/tax-exemption-meta-field.mjs +4 -0
  684. package/esm2022/src/lib/models/property/property-sale/tax-exemption.mjs +8 -0
  685. package/esm2022/src/lib/models/property/property-share.mjs +47 -0
  686. package/esm2022/src/lib/models/property/property-subscription.mjs +13 -0
  687. package/esm2022/src/lib/models/property/property-valuation.mjs +31 -0
  688. package/esm2022/src/lib/models/property/property.mjs +269 -0
  689. package/esm2022/src/lib/models/registration-invite/registration-invite.mjs +17 -0
  690. package/esm2022/src/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.mjs +10 -0
  691. package/esm2022/src/lib/models/report/depreciation/depreciation-lvp-report-item.mjs +21 -0
  692. package/esm2022/src/lib/models/report/depreciation/depreciation-report-item.mjs +25 -0
  693. package/esm2022/src/lib/models/report/depreciation/index.mjs +4 -0
  694. package/esm2022/src/lib/models/report/income-expense/transaction-report-item.mjs +16 -0
  695. package/esm2022/src/lib/models/report/index.mjs +9 -0
  696. package/esm2022/src/lib/models/report/my-tax/ato-links.mjs +11 -0
  697. package/esm2022/src/lib/models/report/my-tax/index.mjs +26 -0
  698. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.mjs +27 -0
  699. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.mjs +11 -0
  700. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.mjs +16 -0
  701. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.mjs +15 -0
  702. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.mjs +74 -0
  703. package/esm2022/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.mjs +70 -0
  704. package/esm2022/src/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.mjs +9 -0
  705. package/esm2022/src/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.mjs +30 -0
  706. package/esm2022/src/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.mjs +13 -0
  707. package/esm2022/src/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.mjs +62 -0
  708. package/esm2022/src/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.mjs +10 -0
  709. package/esm2022/src/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.mjs +96 -0
  710. package/esm2022/src/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.mjs +17 -0
  711. package/esm2022/src/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.mjs +40 -0
  712. package/esm2022/src/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.mjs +76 -0
  713. package/esm2022/src/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.mjs +8 -0
  714. package/esm2022/src/lib/models/report/my-tax/my-tax-interest/my-tax-interest.mjs +11 -0
  715. package/esm2022/src/lib/models/report/my-tax/my-tax-losses/my-tax-losses.mjs +11 -0
  716. package/esm2022/src/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.mjs +8 -0
  717. package/esm2022/src/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.mjs +47 -0
  718. package/esm2022/src/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.mjs +30 -0
  719. package/esm2022/src/lib/models/report/my-tax/my-tax-rent/my-tax-rent.mjs +43 -0
  720. package/esm2022/src/lib/models/report/property/index.mjs +4 -0
  721. package/esm2022/src/lib/models/report/property/property-report-item-depreciation.mjs +20 -0
  722. package/esm2022/src/lib/models/report/property/property-report-item-transaction.mjs +12 -0
  723. package/esm2022/src/lib/models/report/property/property-report-item.mjs +30 -0
  724. package/esm2022/src/lib/models/report/report.interface.mjs +2 -0
  725. package/esm2022/src/lib/models/report/reports.const.mjs +107 -0
  726. package/esm2022/src/lib/models/report/sole/index.mjs +2 -0
  727. package/esm2022/src/lib/models/report/sole/sole-business/sole-business-loss-report.mjs +17 -0
  728. package/esm2022/src/lib/models/report/vehicle-expense/vehicle-expense.mjs +15 -0
  729. package/esm2022/src/lib/models/service-subscription/index.mjs +10 -0
  730. package/esm2022/src/lib/models/service-subscription/module-url-list.const.mjs +12 -0
  731. package/esm2022/src/lib/models/service-subscription/payment-method-brand.enum.mjs +12 -0
  732. package/esm2022/src/lib/models/service-subscription/service-payment-method.mjs +31 -0
  733. package/esm2022/src/lib/models/service-subscription/service-payment.mjs +22 -0
  734. package/esm2022/src/lib/models/service-subscription/service-price.mjs +25 -0
  735. package/esm2022/src/lib/models/service-subscription/service-product-icons.enum.mjs +11 -0
  736. package/esm2022/src/lib/models/service-subscription/service-product-roles.const.mjs +11 -0
  737. package/esm2022/src/lib/models/service-subscription/service-product.mjs +27 -0
  738. package/esm2022/src/lib/models/service-subscription/service-promo-code-duration.enum.mjs +7 -0
  739. package/esm2022/src/lib/models/service-subscription/service-promo-code.mjs +30 -0
  740. package/esm2022/src/lib/models/service-subscription/service-subscription-item.mjs +24 -0
  741. package/esm2022/src/lib/models/service-subscription/service-subscription.mjs +161 -0
  742. package/esm2022/src/lib/models/sole/bas-report.mjs +42 -0
  743. package/esm2022/src/lib/models/sole/index.mjs +13 -0
  744. package/esm2022/src/lib/models/sole/sole-business-activity.mjs +4 -0
  745. package/esm2022/src/lib/models/sole/sole-business-allocation.mjs +18 -0
  746. package/esm2022/src/lib/models/sole/sole-business-loss-offset-rule.mjs +9 -0
  747. package/esm2022/src/lib/models/sole/sole-business-loss.mjs +27 -0
  748. package/esm2022/src/lib/models/sole/sole-business.mjs +57 -0
  749. package/esm2022/src/lib/models/sole/sole-contact.mjs +30 -0
  750. package/esm2022/src/lib/models/sole/sole-depreciation-method.mjs +8 -0
  751. package/esm2022/src/lib/models/sole/sole-details.mjs +10 -0
  752. package/esm2022/src/lib/models/sole/sole-invoice-item.mjs +70 -0
  753. package/esm2022/src/lib/models/sole/sole-invoice-template.mjs +31 -0
  754. package/esm2022/src/lib/models/sole/sole-invoice.mjs +139 -0
  755. package/esm2022/src/lib/models/tax-return/index.mjs +4 -0
  756. package/esm2022/src/lib/models/tax-return/tax-return-category.mjs +19 -0
  757. package/esm2022/src/lib/models/tax-return/tax-return-item.mjs +40 -0
  758. package/esm2022/src/lib/models/tax-return/tax-return.mjs +10 -0
  759. package/esm2022/src/lib/models/tax-review/tax-review.mjs +96 -0
  760. package/esm2022/src/lib/models/tax-summary/report-item-details.mjs +10 -0
  761. package/esm2022/src/lib/models/tax-summary/report-item.mjs +28 -0
  762. package/esm2022/src/lib/models/tax-summary/tax-summary-section.mjs +32 -0
  763. package/esm2022/src/lib/models/tax-summary/tax-summary-type.enum.mjs +9 -0
  764. package/esm2022/src/lib/models/tax-summary/tax-summary.mjs +153 -0
  765. package/esm2022/src/lib/models/toast/toast-type.enum.mjs +8 -0
  766. package/esm2022/src/lib/models/toast/toast.mjs +10 -0
  767. package/esm2022/src/lib/models/transaction/allocation-rule-condition.mjs +40 -0
  768. package/esm2022/src/lib/models/transaction/allocation-rule-transaction-meta-field.mjs +4 -0
  769. package/esm2022/src/lib/models/transaction/allocation-rule-transaction.mjs +110 -0
  770. package/esm2022/src/lib/models/transaction/allocation-rule.mjs +131 -0
  771. package/esm2022/src/lib/models/transaction/income-amount-type.enum.mjs +9 -0
  772. package/esm2022/src/lib/models/transaction/index.mjs +9 -0
  773. package/esm2022/src/lib/models/transaction/transaction-allocation.mjs +21 -0
  774. package/esm2022/src/lib/models/transaction/transaction-category.enum.mjs +8 -0
  775. package/esm2022/src/lib/models/transaction/transaction-meta-field.mjs +17 -0
  776. package/esm2022/src/lib/models/transaction/transaction.mjs +243 -0
  777. package/esm2022/src/lib/models/user/index.mjs +10 -0
  778. package/esm2022/src/lib/models/user/my-account-history-initiated-by.enum.mjs +6 -0
  779. package/esm2022/src/lib/models/user/my-account-history-status.enum.mjs +6 -0
  780. package/esm2022/src/lib/models/user/my-account-history-type.enum.mjs +7 -0
  781. package/esm2022/src/lib/models/user/my-account-history.mjs +3 -0
  782. package/esm2022/src/lib/models/user/occupation.mjs +4 -0
  783. package/esm2022/src/lib/models/user/user-roles.const.mjs +20 -0
  784. package/esm2022/src/lib/models/user/user-to-register.mjs +6 -0
  785. package/esm2022/src/lib/models/user/user-work-position.const.mjs +7 -0
  786. package/esm2022/src/lib/models/user/user.mjs +165 -0
  787. package/esm2022/src/lib/models/user-event/user-event-setting-field.enum.mjs +10 -0
  788. package/esm2022/src/lib/models/user-event/user-event-setting.mjs +18 -0
  789. package/esm2022/src/lib/models/user-event/user-event-type-category.mjs +4 -0
  790. package/esm2022/src/lib/models/user-event/user-event-type.mjs +23 -0
  791. package/esm2022/src/lib/models/vehicle/index.mjs +5 -0
  792. package/esm2022/src/lib/models/vehicle/vehicle-claim-details.mjs +26 -0
  793. package/esm2022/src/lib/models/vehicle/vehicle-claim.mjs +61 -0
  794. package/esm2022/src/lib/models/vehicle/vehicle-logbook.mjs +27 -0
  795. package/esm2022/src/lib/models/vehicle/vehicle.mjs +10 -0
  796. package/esm2022/src/lib/pipes/app-currency.pipe.mjs +23 -0
  797. package/esm2022/src/lib/pipes/app-percent.pipe.mjs +21 -0
  798. package/esm2022/src/lib/pipes/index.mjs +4 -0
  799. package/esm2022/src/lib/pipes/safe-url.pipe.mjs +21 -0
  800. package/esm2022/src/lib/services/account-setup/account-setup.service.mjs +168 -0
  801. package/esm2022/src/lib/services/account-setup/index.mjs +2 -0
  802. package/esm2022/src/lib/services/adblock/adblock.service.mjs +48 -0
  803. package/esm2022/src/lib/services/adblock/index.mjs +2 -0
  804. package/esm2022/src/lib/services/asset/assets.service.mjs +51 -0
  805. package/esm2022/src/lib/services/asset/index.mjs +2 -0
  806. package/esm2022/src/lib/services/bank/bank-account-calculation.service.mjs +32 -0
  807. package/esm2022/src/lib/services/bank/index.mjs +2 -0
  808. package/esm2022/src/lib/services/data.service.mjs +44 -0
  809. package/esm2022/src/lib/services/event/event-dispatcher.service.mjs +41 -0
  810. package/esm2022/src/lib/services/event/index.mjs +3 -0
  811. package/esm2022/src/lib/services/event/sse.service.mjs +48 -0
  812. package/esm2022/src/lib/services/export/export-formatter.service.mjs +34 -0
  813. package/esm2022/src/lib/services/export/index.mjs +2 -0
  814. package/esm2022/src/lib/services/firm/current-firm-branch.service.mjs +26 -0
  815. package/esm2022/src/lib/services/firm/index.mjs +2 -0
  816. package/esm2022/src/lib/services/header-title/header-title.service.mjs +28 -0
  817. package/esm2022/src/lib/services/header-title/index.mjs +2 -0
  818. package/esm2022/src/lib/services/http/address/address.service.mjs +37 -0
  819. package/esm2022/src/lib/services/http/address/index.mjs +2 -0
  820. package/esm2022/src/lib/services/http/aussie/aussie.service.mjs +33 -0
  821. package/esm2022/src/lib/services/http/aussie/index.mjs +2 -0
  822. package/esm2022/src/lib/services/http/bank/bank-account/bank-account.service.mjs +102 -0
  823. package/esm2022/src/lib/services/http/bank/bank-account/index.mjs +2 -0
  824. package/esm2022/src/lib/services/http/bank/bank-connection/bank-connection-messages.enum.mjs +26 -0
  825. package/esm2022/src/lib/services/http/bank/bank-connection/bank-connection.service.mjs +91 -0
  826. package/esm2022/src/lib/services/http/bank/bank-connection/index.mjs +3 -0
  827. package/esm2022/src/lib/services/http/bank/bank-transaction/bank-transaction.service.mjs +77 -0
  828. package/esm2022/src/lib/services/http/bank/bank-transaction/index.mjs +2 -0
  829. package/esm2022/src/lib/services/http/bank/bank.service.mjs +26 -0
  830. package/esm2022/src/lib/services/http/bank/basiq/basiq-messages.enum.mjs +7 -0
  831. package/esm2022/src/lib/services/http/bank/basiq/basiq-token.service.mjs +39 -0
  832. package/esm2022/src/lib/services/http/bank/basiq/basiq.service.mjs +159 -0
  833. package/esm2022/src/lib/services/http/bank/basiq/index.mjs +4 -0
  834. package/esm2022/src/lib/services/http/bank/index.mjs +6 -0
  835. package/esm2022/src/lib/services/http/budget/budget-messages.enum.mjs +8 -0
  836. package/esm2022/src/lib/services/http/budget/budget.service.mjs +23 -0
  837. package/esm2022/src/lib/services/http/budget/index.mjs +3 -0
  838. package/esm2022/src/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.mjs +26 -0
  839. package/esm2022/src/lib/services/http/chart-accounts/chart-accounts-depreciations/index.mjs +2 -0
  840. package/esm2022/src/lib/services/http/chart-accounts/chart-accounts-messages.enum.mjs +8 -0
  841. package/esm2022/src/lib/services/http/chart-accounts/chart-accounts.service.mjs +49 -0
  842. package/esm2022/src/lib/services/http/chart-accounts/index.mjs +4 -0
  843. package/esm2022/src/lib/services/http/chat/chat.service.mjs +88 -0
  844. package/esm2022/src/lib/services/http/chat/index.mjs +4 -0
  845. package/esm2022/src/lib/services/http/chat/message-document.service.mjs +80 -0
  846. package/esm2022/src/lib/services/http/chat/message.service.mjs +39 -0
  847. package/esm2022/src/lib/services/http/client/annual-client-details.service.mjs +23 -0
  848. package/esm2022/src/lib/services/http/client/capital-loss/capital-loss-messages.enum.mjs +7 -0
  849. package/esm2022/src/lib/services/http/client/capital-loss/capital-loss.service.mjs +23 -0
  850. package/esm2022/src/lib/services/http/client/capital-loss/index.mjs +3 -0
  851. package/esm2022/src/lib/services/http/client/client-coupon.service.mjs +27 -0
  852. package/esm2022/src/lib/services/http/client/index.mjs +6 -0
  853. package/esm2022/src/lib/services/http/client/occupation/occupation.service.mjs +43 -0
  854. package/esm2022/src/lib/services/http/client/sharesight-details.service.mjs +29 -0
  855. package/esm2022/src/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.mjs +27 -0
  856. package/esm2022/src/lib/services/http/depreciation/depreciation-capital-project/index.mjs +2 -0
  857. package/esm2022/src/lib/services/http/depreciation/depreciation.service.mjs +105 -0
  858. package/esm2022/src/lib/services/http/depreciation/index.mjs +3 -0
  859. package/esm2022/src/lib/services/http/document/document-folder/document-folder-messages.enum.mjs +8 -0
  860. package/esm2022/src/lib/services/http/document/document-folder/document-folder.service.mjs +26 -0
  861. package/esm2022/src/lib/services/http/document/document-folder/index.mjs +3 -0
  862. package/esm2022/src/lib/services/http/document/document-messages.enum.mjs +8 -0
  863. package/esm2022/src/lib/services/http/document/document.service.mjs +23 -0
  864. package/esm2022/src/lib/services/http/document/index.mjs +4 -0
  865. package/esm2022/src/lib/services/http/facebook/facebook-auth-options.interface.mjs +2 -0
  866. package/esm2022/src/lib/services/http/facebook/facebook-auth-response.interface.mjs +2 -0
  867. package/esm2022/src/lib/services/http/facebook/facebook-status-response.interface.mjs +2 -0
  868. package/esm2022/src/lib/services/http/facebook/facebook.service.mjs +87 -0
  869. package/esm2022/src/lib/services/http/facebook/index.mjs +2 -0
  870. package/esm2022/src/lib/services/http/file/file.service.mjs +39 -0
  871. package/esm2022/src/lib/services/http/file/index.mjs +2 -0
  872. package/esm2022/src/lib/services/http/firm/client-invite/client-invite-messages.enum.mjs +15 -0
  873. package/esm2022/src/lib/services/http/firm/client-invite/client-invite.service.mjs +104 -0
  874. package/esm2022/src/lib/services/http/firm/client-invite/index.mjs +3 -0
  875. package/esm2022/src/lib/services/http/firm/client-movement/client-movement-messages.enum.mjs +8 -0
  876. package/esm2022/src/lib/services/http/firm/client-movement/client-movement.service.mjs +86 -0
  877. package/esm2022/src/lib/services/http/firm/client-movement/index.mjs +3 -0
  878. package/esm2022/src/lib/services/http/firm/employee/employee-messages.enum.mjs +14 -0
  879. package/esm2022/src/lib/services/http/firm/employee/employee.service.mjs +48 -0
  880. package/esm2022/src/lib/services/http/firm/employee/index.mjs +3 -0
  881. package/esm2022/src/lib/services/http/firm/employee-invite/employee-invite.service.mjs +48 -0
  882. package/esm2022/src/lib/services/http/firm/employee-invite/index.mjs +2 -0
  883. package/esm2022/src/lib/services/http/firm/firm-branch/firm-branch-messages.enum.mjs +9 -0
  884. package/esm2022/src/lib/services/http/firm/firm-branch/firm-branch.service.mjs +23 -0
  885. package/esm2022/src/lib/services/http/firm/firm-branch/index.mjs +3 -0
  886. package/esm2022/src/lib/services/http/firm/firm-messages.enum.mjs +6 -0
  887. package/esm2022/src/lib/services/http/firm/firm.service.mjs +63 -0
  888. package/esm2022/src/lib/services/http/firm/index.mjs +9 -0
  889. package/esm2022/src/lib/services/http/firm/portfolio-report/client-portfolio-report.service.mjs +37 -0
  890. package/esm2022/src/lib/services/http/firm/portfolio-report/index.mjs +2 -0
  891. package/esm2022/src/lib/services/http/google/google.service.mjs +77 -0
  892. package/esm2022/src/lib/services/http/google/index.mjs +2 -0
  893. package/esm2022/src/lib/services/http/holding/holding-sale.service.mjs +25 -0
  894. package/esm2022/src/lib/services/http/holding/holding-trade-import/holding-trade-import-messages.enum.mjs +9 -0
  895. package/esm2022/src/lib/services/http/holding/holding-trade-import/holding-trade-import.service.mjs +45 -0
  896. package/esm2022/src/lib/services/http/holding/holding-trade-messages.enum.mjs +10 -0
  897. package/esm2022/src/lib/services/http/holding/holding-trade.service.mjs +42 -0
  898. package/esm2022/src/lib/services/http/holding/holding-type-messages.enum.mjs +8 -0
  899. package/esm2022/src/lib/services/http/holding/holding-type.service.mjs +47 -0
  900. package/esm2022/src/lib/services/http/holding/index.mjs +9 -0
  901. package/esm2022/src/lib/services/http/home-office/home-office-claim-messages.enum.mjs +8 -0
  902. package/esm2022/src/lib/services/http/home-office/home-office-claim.service.mjs +25 -0
  903. package/esm2022/src/lib/services/http/home-office/home-office-log-messages.enum.mjs +8 -0
  904. package/esm2022/src/lib/services/http/home-office/home-office-log.service.mjs +31 -0
  905. package/esm2022/src/lib/services/http/home-office/index.mjs +5 -0
  906. package/esm2022/src/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.mjs +84 -0
  907. package/esm2022/src/lib/services/http/income-source/income-source-forecast/index.mjs +2 -0
  908. package/esm2022/src/lib/services/http/income-source/income-source-messages.enum.mjs +10 -0
  909. package/esm2022/src/lib/services/http/income-source/income-source.service.mjs +93 -0
  910. package/esm2022/src/lib/services/http/income-source/index.mjs +6 -0
  911. package/esm2022/src/lib/services/http/income-source/salary-forecast/index.mjs +2 -0
  912. package/esm2022/src/lib/services/http/income-source/salary-forecast/salary-forecast.service.mjs +83 -0
  913. package/esm2022/src/lib/services/http/income-source/sole-forecast/index.mjs +2 -0
  914. package/esm2022/src/lib/services/http/income-source/sole-forecast/sole-forecast.service.mjs +91 -0
  915. package/esm2022/src/lib/services/http/index.mjs +32 -0
  916. package/esm2022/src/lib/services/http/loan/borrowing-expense/borrowing-expense.service.mjs +74 -0
  917. package/esm2022/src/lib/services/http/loan/borrowing-expense/index.mjs +2 -0
  918. package/esm2022/src/lib/services/http/loan/index.mjs +4 -0
  919. package/esm2022/src/lib/services/http/loan/loan-messages.enum.mjs +8 -0
  920. package/esm2022/src/lib/services/http/loan/loan.service.mjs +94 -0
  921. package/esm2022/src/lib/services/http/pdf/pdf.service.mjs +30 -0
  922. package/esm2022/src/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.mjs +7 -0
  923. package/esm2022/src/lib/services/http/property/borrowing-report/borrowing-report.service.mjs +23 -0
  924. package/esm2022/src/lib/services/http/property/borrowing-report/index.mjs +3 -0
  925. package/esm2022/src/lib/services/http/property/index.mjs +10 -0
  926. package/esm2022/src/lib/services/http/property/property-category/index.mjs +2 -0
  927. package/esm2022/src/lib/services/http/property/property-category/property-category.service.mjs +26 -0
  928. package/esm2022/src/lib/services/http/property/property-category-movement/index.mjs +2 -0
  929. package/esm2022/src/lib/services/http/property/property-category-movement/property-category-movement.service.mjs +33 -0
  930. package/esm2022/src/lib/services/http/property/property-document/index.mjs +3 -0
  931. package/esm2022/src/lib/services/http/property/property-document/property-document-messages.enum.mjs +8 -0
  932. package/esm2022/src/lib/services/http/property/property-document/property-document.service.mjs +26 -0
  933. package/esm2022/src/lib/services/http/property/property-messages.enum.mjs +11 -0
  934. package/esm2022/src/lib/services/http/property/property-sale/index.mjs +3 -0
  935. package/esm2022/src/lib/services/http/property/property-sale/property-sale.service.mjs +25 -0
  936. package/esm2022/src/lib/services/http/property/property-share/index.mjs +2 -0
  937. package/esm2022/src/lib/services/http/property/property-share/property-share.service.mjs +68 -0
  938. package/esm2022/src/lib/services/http/property/property-valuation/index.mjs +3 -0
  939. package/esm2022/src/lib/services/http/property/property-valuation/property-valuation-messages.enum.mjs +7 -0
  940. package/esm2022/src/lib/services/http/property/property-valuation/property-valuation.service.mjs +24 -0
  941. package/esm2022/src/lib/services/http/property/property.service.mjs +136 -0
  942. package/esm2022/src/lib/services/http/rest/http-error-messages.const.mjs +14 -0
  943. package/esm2022/src/lib/services/http/rest/http-method.type.mjs +2 -0
  944. package/esm2022/src/lib/services/http/rest/index.mjs +5 -0
  945. package/esm2022/src/lib/services/http/rest/rest-method.type.mjs +2 -0
  946. package/esm2022/src/lib/services/http/rest/rest-old.service.mjs +247 -0
  947. package/esm2022/src/lib/services/http/rest/rest.service.mjs +356 -0
  948. package/esm2022/src/lib/services/http/rest-messages.enum.mjs +7 -0
  949. package/esm2022/src/lib/services/http/service-notification/index.mjs +2 -0
  950. package/esm2022/src/lib/services/http/service-notification/service-notification.service.mjs +72 -0
  951. package/esm2022/src/lib/services/http/setup-item/setup-item.service.mjs +23 -0
  952. package/esm2022/src/lib/services/http/sole/bas-report/bas-report-messages.enum.mjs +8 -0
  953. package/esm2022/src/lib/services/http/sole/bas-report/bas-report.service.mjs +20 -0
  954. package/esm2022/src/lib/services/http/sole/bas-report/index.mjs +3 -0
  955. package/esm2022/src/lib/services/http/sole/index.mjs +11 -0
  956. package/esm2022/src/lib/services/http/sole/sole-business/index.mjs +3 -0
  957. package/esm2022/src/lib/services/http/sole/sole-business/sole-business-messages.enum.mjs +5 -0
  958. package/esm2022/src/lib/services/http/sole/sole-business/sole-business.service.mjs +24 -0
  959. package/esm2022/src/lib/services/http/sole/sole-business-activity/sole-business-activity.service.mjs +20 -0
  960. package/esm2022/src/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.mjs +23 -0
  961. package/esm2022/src/lib/services/http/sole/sole-business-loss/sole-business-loss.service.mjs +41 -0
  962. package/esm2022/src/lib/services/http/sole/sole-contact/sole-contact.service.mjs +20 -0
  963. package/esm2022/src/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.mjs +73 -0
  964. package/esm2022/src/lib/services/http/sole/sole-details/sole-details.service.mjs +33 -0
  965. package/esm2022/src/lib/services/http/sole/sole-invoice/sole-invoice.service.mjs +46 -0
  966. package/esm2022/src/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.mjs +20 -0
  967. package/esm2022/src/lib/services/http/subscription/index.mjs +7 -0
  968. package/esm2022/src/lib/services/http/subscription/service-payment/service-payment.service.mjs +33 -0
  969. package/esm2022/src/lib/services/http/subscription/service-payment-method/service-payment-method.service.mjs +45 -0
  970. package/esm2022/src/lib/services/http/subscription/service-price/service-price.service.mjs +26 -0
  971. package/esm2022/src/lib/services/http/subscription/service-product/service-product.service.mjs +23 -0
  972. package/esm2022/src/lib/services/http/subscription/service-subscription/subscription-messages.enum.mjs +10 -0
  973. package/esm2022/src/lib/services/http/subscription/service-subscription/subscription.service.mjs +84 -0
  974. package/esm2022/src/lib/services/http/tax-review/index.mjs +4 -0
  975. package/esm2022/src/lib/services/http/tax-review/tax-review-history/tax-review-history.service.mjs +45 -0
  976. package/esm2022/src/lib/services/http/tax-review/tax-review-messages.enum.mjs +20 -0
  977. package/esm2022/src/lib/services/http/tax-review/tax-review.service.mjs +106 -0
  978. package/esm2022/src/lib/services/http/tax-summary/index.mjs +2 -0
  979. package/esm2022/src/lib/services/http/tax-summary/tax-summary.service.mjs +71 -0
  980. package/esm2022/src/lib/services/http/transaction/index.mjs +5 -0
  981. package/esm2022/src/lib/services/http/transaction/prior-transaction.service.mjs +33 -0
  982. package/esm2022/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.mjs +26 -0
  983. package/esm2022/src/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.mjs +117 -0
  984. package/esm2022/src/lib/services/http/transaction/transaction.service.mjs +273 -0
  985. package/esm2022/src/lib/services/http/user/financial-year/financial-year.service.mjs +29 -0
  986. package/esm2022/src/lib/services/http/user/index.mjs +8 -0
  987. package/esm2022/src/lib/services/http/user/user-event-setting/user-event-setting.service.mjs +23 -0
  988. package/esm2022/src/lib/services/http/user/user-event-type/user-event-type.service.mjs +23 -0
  989. package/esm2022/src/lib/services/http/user/user-messages.enum.mjs +8 -0
  990. package/esm2022/src/lib/services/http/user/user.service.mjs +112 -0
  991. package/esm2022/src/lib/services/http/user/users-invite/users-invite.service.mjs +23 -0
  992. package/esm2022/src/lib/services/http/vehicle/index.mjs +6 -0
  993. package/esm2022/src/lib/services/http/vehicle/vehicle-claim-details.service.mjs +74 -0
  994. package/esm2022/src/lib/services/http/vehicle/vehicle-claim.service.mjs +49 -0
  995. package/esm2022/src/lib/services/http/vehicle/vehicle-logbook/index.mjs +3 -0
  996. package/esm2022/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook-messages.enum.mjs +8 -0
  997. package/esm2022/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook.service.mjs +26 -0
  998. package/esm2022/src/lib/services/http/vehicle/vehicle-messages.enum.mjs +8 -0
  999. package/esm2022/src/lib/services/http/vehicle/vehicle.service.mjs +25 -0
  1000. package/esm2022/src/lib/services/http/youtube/index.mjs +3 -0
  1001. package/esm2022/src/lib/services/http/youtube/youtube-video.interface.mjs +2 -0
  1002. package/esm2022/src/lib/services/http/youtube/youtube.service.mjs +34 -0
  1003. package/esm2022/src/lib/services/index.mjs +19 -0
  1004. package/esm2022/src/lib/services/intercom/index.mjs +2 -0
  1005. package/esm2022/src/lib/services/intercom/intercom.service.mjs +41 -0
  1006. package/esm2022/src/lib/services/json/chart-accounts/chart-accounts-value.service.mjs +23 -0
  1007. package/esm2022/src/lib/services/json/holding/holding-type-exchange.service.mjs +23 -0
  1008. package/esm2022/src/lib/services/json/income-source/income-source-type.service.mjs +23 -0
  1009. package/esm2022/src/lib/services/json/index.mjs +6 -0
  1010. package/esm2022/src/lib/services/json/tax-exemption/tax-exemption.service.mjs +23 -0
  1011. package/esm2022/src/lib/services/json/tax-return/tax-return-item.service.mjs +23 -0
  1012. package/esm2022/src/lib/services/pdf/index.mjs +6 -0
  1013. package/esm2022/src/lib/services/pdf/js-pdf.mjs +10 -0
  1014. package/esm2022/src/lib/services/pdf/pdf-from-dom-element/file-settings.mjs +21 -0
  1015. package/esm2022/src/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.mjs +47 -0
  1016. package/esm2022/src/lib/services/pdf/pdf-from-table/file-settings.mjs +36 -0
  1017. package/esm2022/src/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.mjs +46 -0
  1018. package/esm2022/src/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.mjs +42 -0
  1019. package/esm2022/src/lib/services/pdf/pdf-from-table/pdf-from-table.service.mjs +63 -0
  1020. package/esm2022/src/lib/services/preloader/index.mjs +2 -0
  1021. package/esm2022/src/lib/services/preloader/preloader.service.mjs +30 -0
  1022. package/esm2022/src/lib/services/property/corelogic/corelogic-messages.enum.mjs +5 -0
  1023. package/esm2022/src/lib/services/property/corelogic/corelogic.service.mjs +48 -0
  1024. package/esm2022/src/lib/services/property/corelogic/index.mjs +3 -0
  1025. package/esm2022/src/lib/services/property/equity-position-chart/equity-position-chart.service.mjs +39 -0
  1026. package/esm2022/src/lib/services/property/equity-position-chart/index.mjs +2 -0
  1027. package/esm2022/src/lib/services/property/index.mjs +4 -0
  1028. package/esm2022/src/lib/services/property/property-calculation/index.mjs +2 -0
  1029. package/esm2022/src/lib/services/property/property-calculation/property-calculation.service.mjs +158 -0
  1030. package/esm2022/src/lib/services/report/index.mjs +2 -0
  1031. package/esm2022/src/lib/services/report/property/property-transaction-report.service.mjs +68 -0
  1032. package/esm2022/src/lib/services/toast/index.mjs +2 -0
  1033. package/esm2022/src/lib/services/toast/toast.service.mjs +59 -0
  1034. package/esm2022/src/lib/services/user/index.mjs +2 -0
  1035. package/esm2022/src/lib/services/user/user-switcher.service.mjs +37 -0
  1036. package/esm2022/src/lib/services/xlsx/index.mjs +2 -0
  1037. package/esm2022/src/lib/services/xlsx/xlsx.service.mjs +102 -0
  1038. package/esm2022/src/lib/validators/at-least-one-enabled.validator.mjs +9 -0
  1039. package/esm2022/src/lib/validators/at-least-one.validator.mjs +9 -0
  1040. package/esm2022/src/lib/validators/autocomplete.validator.mjs +8 -0
  1041. package/esm2022/src/lib/validators/conditional.validator.mjs +26 -0
  1042. package/esm2022/src/lib/validators/current-fin-year.validator.mjs +15 -0
  1043. package/esm2022/src/lib/validators/date/max-date.validator.mjs +17 -0
  1044. package/esm2022/src/lib/validators/date/min-date.validator.mjs +17 -0
  1045. package/esm2022/src/lib/validators/date-range.validator.mjs +22 -0
  1046. package/esm2022/src/lib/validators/fields-sum.validator.mjs +24 -0
  1047. package/esm2022/src/lib/validators/file.validator.mjs +36 -0
  1048. package/esm2022/src/lib/validators/greater-than.validator.mjs +12 -0
  1049. package/esm2022/src/lib/validators/group.validator.mjs +11 -0
  1050. package/esm2022/src/lib/validators/index.mjs +15 -0
  1051. package/esm2022/src/lib/validators/match-sum.validator.mjs +16 -0
  1052. package/esm2022/src/lib/validators/password-match.validator.mjs +17 -0
  1053. package/esm2022/src/lib/validators/password.validator.mjs +20 -0
  1054. package/esm2022/src/lib/validators/phone-number.validator.mjs +9 -0
  1055. package/esm2022/src/lib/validators/required-length.validator.mjs +12 -0
  1056. package/esm2022/src/lib/validators/string/alpha-space.validator.mjs +10 -0
  1057. package/esm2022/src/lib/validators/unique-email.validator.mjs +19 -0
  1058. package/esm2022/taxtank-core.mjs +5 -0
  1059. package/fesm2022/taxtank-core-common.mjs +20 -20
  1060. package/fesm2022/taxtank-core-common.mjs.map +1 -1
  1061. package/fesm2022/taxtank-core.mjs +408 -409
  1062. package/fesm2022/taxtank-core.mjs.map +1 -1
  1063. package/package.json +19 -15
  1064. package/src/lib/db/Enums/holding/holding-type-category.enum.d.ts +3 -3
  1065. package/src/lib/models/index.d.ts +0 -1
@@ -0,0 +1,28 @@
1
+ import { __decorate } from "tslib";
2
+ import { AbstractModel } from '../../db/Models';
3
+ import { ReportItemDetails } from './report-item-details';
4
+ import { Transform, Type } from 'class-transformer';
5
+ import { Collection, ReportItemCollection } from '../../collections';
6
+ /**
7
+ * @Todo no base model - should be generated on backend side
8
+ * Used in tax summary reports to show amounts relating to a tax return category entity and details of what this
9
+ * amount is comprised of. Example here shows an amount of $951.96 and also details of what this amount is comprised of:
10
+ */
11
+ export class ReportItem extends AbstractModel {
12
+ /**
13
+ * Get amount for one income source
14
+ * @param name Name of income source for filter
15
+ */
16
+ getAmountByIncomeSourceName(name) {
17
+ return this.details.find((detail) => detail.name === name)?.amount || 0;
18
+ }
19
+ }
20
+ __decorate([
21
+ Type(() => ReportItem),
22
+ Transform(({ value }) => new ReportItemCollection(value))
23
+ ], ReportItem.prototype, "items", void 0);
24
+ __decorate([
25
+ Type(() => ReportItemDetails),
26
+ Transform(({ value }) => new Collection(value))
27
+ ], ReportItem.prototype, "details", void 0);
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFxQixNQUFNLGlCQUFpQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXJFOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sVUFBVyxTQUFRLGFBQWE7SUFrQjNDOzs7T0FHRztJQUNILDJCQUEyQixDQUFDLElBQVk7UUFDdEMsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQXlCLEVBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0NBQ0Y7QUFsQkM7SUFGQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDO0lBQ3RCLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7eUNBQzlCO0FBUzVCO0lBRkMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQzdCLFNBQVMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUksVUFBVSxDQUFvQixLQUFLLENBQUMsQ0FBQzsyQ0FDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdE1vZGVsLCBUYXhSZXR1cm5DYXRlZ29yeSB9IGZyb20gJy4uLy4uL2RiL01vZGVscyc7XG5pbXBvcnQgeyBSZXBvcnRJdGVtRGV0YWlscyB9IGZyb20gJy4vcmVwb3J0LWl0ZW0tZGV0YWlscyc7XG5pbXBvcnQgeyBUcmFuc2Zvcm0sIFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBDb2xsZWN0aW9uLCBSZXBvcnRJdGVtQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zJztcblxuLyoqXG4gKiBAVG9kbyBubyBiYXNlIG1vZGVsIC0gc2hvdWxkIGJlIGdlbmVyYXRlZCBvbiBiYWNrZW5kIHNpZGVcbiAqIFVzZWQgaW4gdGF4IHN1bW1hcnkgcmVwb3J0cyB0byBzaG93IGFtb3VudHMgcmVsYXRpbmcgdG8gYSB0YXggcmV0dXJuIGNhdGVnb3J5IGVudGl0eSBhbmQgZGV0YWlscyBvZiB3aGF0IHRoaXNcbiAqIGFtb3VudCBpcyBjb21wcmlzZWQgb2YuIEV4YW1wbGUgaGVyZSBzaG93cyBhbiBhbW91bnQgb2YgJDk1MS45NiBhbmQgYWxzbyBkZXRhaWxzIG9mIHdoYXQgdGhpcyBhbW91bnQgaXMgY29tcHJpc2VkIG9mOlxuICovXG5leHBvcnQgY2xhc3MgUmVwb3J0SXRlbSBleHRlbmRzIEFic3RyYWN0TW9kZWwge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgdGF4UmV0dXJuQ2F0ZWdvcnk6IFRheFJldHVybkNhdGVnb3J5O1xuICB0aXRsZTogc3RyaW5nO1xuXG4gIEBUeXBlKCgpID0+IFJlcG9ydEl0ZW0pXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gbmV3IFJlcG9ydEl0ZW1Db2xsZWN0aW9uKHZhbHVlKSlcbiAgaXRlbXM6IFJlcG9ydEl0ZW1Db2xsZWN0aW9uO1xuXG4gIC8qKlxuICAgKiBAVG9kbyBBbGV4OiBXZSBuZWVkIHRvIGFwcGx5IHRoaXMgZXZlcnl3aGVyZSAtIHRyYW5zZm9ybSBhbiBhcnJheSBpbnRvIGEgY29sbGVjdGlvbixcbiAgICogYnV0IGF0IHRoZSBtb21lbnQgd2UgY2FuJ3QgZG8gdGhpcyBkdWUgdG8gaW5oZXJpdGFuY2UgZnJvbSB0aGUgYmFzZSBtb2RlbC5cbiAgICogUG90ZW50aWFsIHNvbHV0aW9uOiBJbmhlcml0IENvbGxlY3Rpb24gZnJvbSBBcnJheVxuICAgKi9cbiAgQFR5cGUoKCkgPT4gUmVwb3J0SXRlbURldGFpbHMpXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gbmV3IENvbGxlY3Rpb248UmVwb3J0SXRlbURldGFpbHM+KHZhbHVlKSlcbiAgZGV0YWlsczogQ29sbGVjdGlvbjxSZXBvcnRJdGVtRGV0YWlscz47XG5cbiAgLyoqXG4gICAqIEdldCBhbW91bnQgZm9yIG9uZSBpbmNvbWUgc291cmNlXG4gICAqIEBwYXJhbSBuYW1lIE5hbWUgb2YgaW5jb21lIHNvdXJjZSBmb3IgZmlsdGVyXG4gICAqL1xuICBnZXRBbW91bnRCeUluY29tZVNvdXJjZU5hbWUobmFtZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kZXRhaWxzLmZpbmQoKGRldGFpbDogUmVwb3J0SXRlbURldGFpbHMpOiBib29sZWFuID0+IGRldGFpbC5uYW1lID09PSBuYW1lKT8uYW1vdW50IHx8IDA7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { __decorate } from "tslib";
2
+ import { TaxSummarySectionEnum } from '../../db/Enums/tax-summary-section.enum';
3
+ import { ReportItem } from './report-item';
4
+ import { ReportItemCollection } from '../../collections';
5
+ import { Transform, Type } from 'class-transformer';
6
+ /**
7
+ * Base class for each sections of Tax Summary report, contains common properties/methods
8
+ * See also TaxSummary model
9
+ */
10
+ export class TaxSummarySection {
11
+ }
12
+ __decorate([
13
+ Type(() => ReportItem),
14
+ Transform(({ value }) => new ReportItemCollection(value))
15
+ ], TaxSummarySection.prototype, "items", void 0);
16
+ __decorate([
17
+ Transform(({ obj }) => {
18
+ switch (obj.section) {
19
+ case TaxSummarySectionEnum.WORK_TANK:
20
+ return 'taxSummaryWorkTank';
21
+ case TaxSummarySectionEnum.PROPERTY_TANK:
22
+ return 'taxSummaryPropertyTank';
23
+ case TaxSummarySectionEnum.OTHER_TANK:
24
+ return 'taxSummaryOtherIncome';
25
+ case TaxSummarySectionEnum.SOLE_TANK:
26
+ return 'taxSummarySoleTank';
27
+ default:
28
+ return 'taxSummaryTotal';
29
+ }
30
+ })
31
+ ], TaxSummarySection.prototype, "id", void 0);
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXN1bW1hcnktc2VjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdGF4LXN1bW1hcnkvdGF4LXN1bW1hcnktc2VjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxpQkFBaUI7Q0F3QjdCO0FBbEJDO0lBRkMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFVBQVUsQ0FBQztJQUN0QixTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO2dEQUM5QjtBQWlCNUI7SUFkQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUU7UUFDckIsUUFBUSxHQUFHLENBQUMsT0FBTyxFQUFFO1lBQ25CLEtBQUsscUJBQXFCLENBQUMsU0FBUztnQkFDbEMsT0FBTyxvQkFBb0IsQ0FBQztZQUM5QixLQUFLLHFCQUFxQixDQUFDLGFBQWE7Z0JBQ3RDLE9BQU8sd0JBQXdCLENBQUM7WUFDbEMsS0FBSyxxQkFBcUIsQ0FBQyxVQUFVO2dCQUNuQyxPQUFPLHVCQUF1QixDQUFDO1lBQ2pDLEtBQUsscUJBQXFCLENBQUMsU0FBUztnQkFDbEMsT0FBTyxvQkFBb0IsQ0FBQztZQUM5QjtnQkFDRSxPQUFPLGlCQUFpQixDQUFDO1NBQzVCO0lBQ0gsQ0FBQyxDQUFDOzZDQUNVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGF4U3VtbWFyeVNlY3Rpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGF4LXN1bW1hcnktc2VjdGlvbi5lbnVtJztcbmltcG9ydCB7IFJlcG9ydEl0ZW0gfSBmcm9tICcuL3JlcG9ydC1pdGVtJztcbmltcG9ydCB7IFJlcG9ydEl0ZW1Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgVHJhbnNmb3JtLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGVhY2ggc2VjdGlvbnMgb2YgVGF4IFN1bW1hcnkgcmVwb3J0LCBjb250YWlucyBjb21tb24gcHJvcGVydGllcy9tZXRob2RzXG4gKiBTZWUgYWxzbyBUYXhTdW1tYXJ5IG1vZGVsXG4gKi9cbmV4cG9ydCBjbGFzcyBUYXhTdW1tYXJ5U2VjdGlvbiB7XG4gIHNlY3Rpb246IFRheFN1bW1hcnlTZWN0aW9uRW51bTtcbiAgbmV0QW1vdW50OiBudW1iZXI7XG5cbiAgQFR5cGUoKCkgPT4gUmVwb3J0SXRlbSlcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiBuZXcgUmVwb3J0SXRlbUNvbGxlY3Rpb24odmFsdWUpKVxuICBpdGVtczogUmVwb3J0SXRlbUNvbGxlY3Rpb247XG5cbiAgLy8gaWQgdGhhdCB3aWxsIGJlIGFkZGVkIGFzIEhUTUwgSWRcbiAgQFRyYW5zZm9ybSgoeyBvYmogfSkgPT4ge1xuICAgIHN3aXRjaCAob2JqLnNlY3Rpb24pIHtcbiAgICAgIGNhc2UgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLldPUktfVEFOSzpcbiAgICAgICAgcmV0dXJuICd0YXhTdW1tYXJ5V29ya1RhbmsnO1xuICAgICAgY2FzZSBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uUFJPUEVSVFlfVEFOSzpcbiAgICAgICAgcmV0dXJuICd0YXhTdW1tYXJ5UHJvcGVydHlUYW5rJztcbiAgICAgIGNhc2UgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX1RBTks6XG4gICAgICAgIHJldHVybiAndGF4U3VtbWFyeU90aGVySW5jb21lJztcbiAgICAgIGNhc2UgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlNPTEVfVEFOSzpcbiAgICAgICAgcmV0dXJuICd0YXhTdW1tYXJ5U29sZVRhbmsnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICd0YXhTdW1tYXJ5VG90YWwnO1xuICAgIH1cbiAgfSlcbiAgaWQ/OiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Enum for tax summary types
3
+ */
4
+ export var TaxSummaryTypeEnum;
5
+ (function (TaxSummaryTypeEnum) {
6
+ TaxSummaryTypeEnum["ACTUALS"] = "actuals";
7
+ TaxSummaryTypeEnum["FORECASTS"] = "forecasts";
8
+ })(TaxSummaryTypeEnum || (TaxSummaryTypeEnum = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXN1bW1hcnktdHlwZS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy90YXgtc3VtbWFyeS90YXgtc3VtbWFyeS10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxrQkFHWDtBQUhELFdBQVksa0JBQWtCO0lBQzVCLHlDQUFtQixDQUFBO0lBQ25CLDZDQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFIVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBRzdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFbnVtIGZvciB0YXggc3VtbWFyeSB0eXBlc1xuICovXG5leHBvcnQgZW51bSBUYXhTdW1tYXJ5VHlwZUVudW0ge1xuICBBQ1RVQUxTID0gJ2FjdHVhbHMnLFxuICBGT1JFQ0FTVFMgPSAnZm9yZWNhc3RzJ1xufVxuIl19
@@ -0,0 +1,153 @@
1
+ import { __decorate } from "tslib";
2
+ import { TaxSummarySection } from './tax-summary-section';
3
+ import { Type } from 'class-transformer';
4
+ import { ReportItemCollection, TAX_RETURN_CATEGORIES } from '../../collections';
5
+ import { TaxReturnCategoryListEnum } from '../../db/Enums';
6
+ import { TaxSummarySectionEnum } from '../../db/Enums/tax-summary-section.enum';
7
+ /**
8
+ * @Todo refactor with base model when it will be provided
9
+ * Tax summary report structure
10
+ */
11
+ export class TaxSummary {
12
+ get sections() {
13
+ return [this.work, this.property, this.other, this.sole, this.summary];
14
+ }
15
+ getReportItems(sections) {
16
+ return new ReportItemCollection([].concat(...sections.map((section) => section.items.toArray())));
17
+ }
18
+ get taxPercent() {
19
+ // Check if netAmount is not 0 to avoid division by zero
20
+ if (!this.summary.netAmount) {
21
+ return 0;
22
+ }
23
+ return this.summary.items.findByCategory(TaxReturnCategoryListEnum.GROSS_TAX_PAYABLE).amount / this.summary.netAmount;
24
+ }
25
+ /**
26
+ * Work Net Cash = Income - tax withheld - expenses - interest
27
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
28
+ */
29
+ get workNetCash() {
30
+ const taxWithheld = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.taxWithheld, TaxSummarySectionEnum.WORK_TANK);
31
+ return this.workNetTotal - Math.abs(taxWithheld);
32
+ }
33
+ get income() {
34
+ return this.getReportItems([this.work, this.property, this.sole, this.other]).sumByCategories([
35
+ ...TAX_RETURN_CATEGORIES.work.income,
36
+ ...TAX_RETURN_CATEGORIES.property.income,
37
+ ...TAX_RETURN_CATEGORIES.sole.income,
38
+ ...TAX_RETURN_CATEGORIES.other.income,
39
+ ]);
40
+ }
41
+ get expense() {
42
+ return this.getReportItems([this.work, this.property, this.sole, this.other]).sumByCategories([
43
+ ...TAX_RETURN_CATEGORIES.work.expenses,
44
+ ...TAX_RETURN_CATEGORIES.property.expenses,
45
+ ...TAX_RETURN_CATEGORIES.sole.expenses,
46
+ ...TAX_RETURN_CATEGORIES.other.expenses,
47
+ ]);
48
+ }
49
+ get netCash() {
50
+ return this.workNetCash + this.propertyNetCash + this.soleNetCash + this.otherNetCash;
51
+ }
52
+ get netTotal() {
53
+ return this.workNetTotal + this.propertyNetTotal + this.soleNetTotal + this.otherNetTotal;
54
+ }
55
+ /**
56
+ * Work Net Total = Income - expenses - interest
57
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
58
+ */
59
+ get workNetTotal() {
60
+ const income = this.work.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.income, TaxSummarySectionEnum.WORK_TANK);
61
+ const expenses = this.work.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.expenses, TaxSummarySectionEnum.WORK_TANK);
62
+ const interest = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.interest, TaxSummarySectionEnum.WORK_TANK);
63
+ return income - Math.abs(expenses) - Math.abs(interest);
64
+ }
65
+ /**
66
+ * Property Net Cash (Cash Position) = Rental Income - expenses - interest
67
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
68
+ */
69
+ get propertyNetCash() {
70
+ const income = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.income, TaxSummarySectionEnum.PROPERTY_TANK);
71
+ const expenses = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.expenses, TaxSummarySectionEnum.PROPERTY_TANK);
72
+ const interest = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.interest, TaxSummarySectionEnum.PROPERTY_TANK);
73
+ return income - Math.abs(expenses) - Math.abs(interest);
74
+ }
75
+ /**
76
+ * Property Net Total (Tax Position) = Rental Income - expenses - interest - depreciation
77
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
78
+ */
79
+ get propertyNetTotal() {
80
+ const depreciation = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.depreciation, TaxSummarySectionEnum.PROPERTY_TANK);
81
+ const borrowingExpenses = this.property.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.BORROWING_EXPENSES], TaxSummarySectionEnum.PROPERTY_TANK);
82
+ return this.propertyNetCash - Math.abs(depreciation) - Math.abs(borrowingExpenses);
83
+ }
84
+ /**
85
+ * Other Net Cash = gross income – expenses – tax withheld - tax instalments
86
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
87
+ */
88
+ get otherNetCash() {
89
+ const income = this.other.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.income, TaxSummarySectionEnum.OTHER_TANK);
90
+ const expenses = this.other.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.expenses, TaxSummarySectionEnum.OTHER_TANK);
91
+ const taxWithheld = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_WITHHELD], TaxSummarySectionEnum.OTHER_TANK);
92
+ const taxInstalments = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_INSTALMENTS], TaxSummarySectionEnum.OTHER_TANK);
93
+ return income - Math.abs(expenses) - Math.abs(taxWithheld) - Math.abs(taxInstalments);
94
+ }
95
+ /**
96
+ * Other Net Total = Gross income - expenses + tax offsets + tax instalments + franking credits
97
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
98
+ */
99
+ get otherNetTotal() {
100
+ const income = this.other.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.income, TaxSummarySectionEnum.OTHER_TANK);
101
+ const expenses = this.other.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.expenses, TaxSummarySectionEnum.OTHER_TANK);
102
+ const taxOffsets = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_OFFSETS], TaxSummarySectionEnum.SUMMARY);
103
+ const taxInstallments = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_INSTALMENTS], TaxSummarySectionEnum.OTHER_TANK);
104
+ const frankingCredits = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.FRANKING_CREDITS], TaxSummarySectionEnum.OTHER_TANK);
105
+ return income - Math.abs(expenses) + Math.abs(taxOffsets) + Math.abs(taxInstallments) + Math.abs(frankingCredits);
106
+ }
107
+ /**
108
+ * Sole Net Cash = gross income – expenses
109
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
110
+ */
111
+ get soleNetCash() {
112
+ const depreciation = this.sole.items.sumByCategories(TAX_RETURN_CATEGORIES.sole.depreciation);
113
+ const loss = this.sole.items.sumByCategories(TAX_RETURN_CATEGORIES.sole.loss);
114
+ const lossCurrent = this.sole.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.sole.lossCurrent, TaxSummarySectionEnum.SOLE_TANK);
115
+ return this.soleNetTotal - depreciation - loss + lossCurrent;
116
+ }
117
+ /**
118
+ * Sole Net Total = Gross income - expenses
119
+ * https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
120
+ */
121
+ get soleNetTotal() {
122
+ // income + expenses + depreciation + loss
123
+ const profit = this.sole.items.sumByCategories([TaxReturnCategoryListEnum.BUSINESS_INCOME_OR_LOSS]);
124
+ const lossCurrent = this.sole.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.sole.lossCurrent, TaxSummarySectionEnum.SOLE_TANK);
125
+ return profit - lossCurrent;
126
+ }
127
+ getDeferredBusinessLoss(business) {
128
+ return this.sole.items
129
+ .findByCategory(TaxReturnCategoryListEnum.DEFERRED_BUSINESS_LOSSES).items
130
+ .findBy('title', `Item 15c - ${business.name}`)?.amount;
131
+ }
132
+ getBusinessCloseBalance(business) {
133
+ return this.sole.items
134
+ .findByCategory(TaxReturnCategoryListEnum.BUSINESS_INCOME_OR_LOSS).items
135
+ .findBy('title', `Item 15c - ${business.name}`)?.amount;
136
+ }
137
+ }
138
+ __decorate([
139
+ Type(() => TaxSummarySection)
140
+ ], TaxSummary.prototype, "work", void 0);
141
+ __decorate([
142
+ Type(() => TaxSummarySection)
143
+ ], TaxSummary.prototype, "property", void 0);
144
+ __decorate([
145
+ Type(() => TaxSummarySection)
146
+ ], TaxSummary.prototype, "other", void 0);
147
+ __decorate([
148
+ Type(() => TaxSummarySection)
149
+ ], TaxSummary.prototype, "sole", void 0);
150
+ __decorate([
151
+ Type(() => TaxSummarySection)
152
+ ], TaxSummary.prototype, "summary", void 0);
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXN1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3RheC1zdW1tYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHaEY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFrQnJCLElBQUksUUFBUTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsY0FBYyxDQUFDLFFBQTZCO1FBQzFDLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osd0RBQXdEO1FBQ3hELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUMzQixPQUFPLENBQUMsQ0FBQztTQUNWO1FBRUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUss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QUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzJDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGF4U3VtbWFyeVNlY3Rpb24gfSBmcm9tICcuL3RheC1zdW1tYXJ5LXNlY3Rpb24nO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFJlcG9ydEl0ZW1Db2xsZWN0aW9uLCBUQVhfUkVUVVJOX0NBVEVHT1JJRVMgfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVGF4U3VtbWFyeVNlY3Rpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGF4LXN1bW1hcnktc2VjdGlvbi5lbnVtJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzcyB9IGZyb20gJy4uL3NvbGUnO1xuXG4vKipcbiAqIEBUb2RvIHJlZmFjdG9yIHdpdGggYmFzZSBtb2RlbCB3aGVuIGl0IHdpbGwgYmUgcHJvdmlkZWRcbiAqIFRheCBzdW1tYXJ5IHJlcG9ydCBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNsYXNzIFRheFN1bW1hcnkge1xuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgd29yazogVGF4U3VtbWFyeVNlY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gVGF4U3VtbWFyeVNlY3Rpb24pXG4gIHByb3BlcnR5OiBUYXhTdW1tYXJ5U2VjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgb3RoZXI6IFRheFN1bW1hcnlTZWN0aW9uO1xuXG4gIEBUeXBlKCgpID0+IFRheFN1bW1hcnlTZWN0aW9uKVxuICBzb2xlOiBUYXhTdW1tYXJ5U2VjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgc3VtbWFyeTogVGF4U3VtbWFyeVNlY3Rpb247XG5cbiAgcHJvamVjdGVkVGF4UG9zaXRpb246IG51bWJlcjtcblxuICBnZXQgc2VjdGlvbnMoKTogVGF4U3VtbWFyeVNlY3Rpb25bXSB7XG4gICAgcmV0dXJuIFt0aGlzLndvcmssIHRoaXMucHJvcGVydHksIHRoaXMub3RoZXIsIHRoaXMuc29sZSwgdGhpcy5zdW1tYXJ5XTtcbiAgfVxuXG4gIGdldFJlcG9ydEl0ZW1zKHNlY3Rpb25zOiBUYXhTdW1tYXJ5U2VjdGlvbltdKTogUmVwb3J0SXRlbUNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgUmVwb3J0SXRlbUNvbGxlY3Rpb24oW10uY29uY2F0KC4uLnNlY3Rpb25zLm1hcCgoc2VjdGlvbikgPT4gc2VjdGlvbi5pdGVtcy50b0FycmF5KCkpKSk7XG4gIH1cblxuICBnZXQgdGF4UGVyY2VudCgpOiBudW1iZXIge1xuICAgIC8vIENoZWNrIGlmIG5ldEFtb3VudCBpcyBub3QgMCB0byBhdm9pZCBkaXZpc2lvbiBieSB6ZXJvXG4gICAgaWYgKCF0aGlzLnN1bW1hcnkubmV0QW1vdW50KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5zdW1tYXJ5Lml0ZW1zLmZpbmRCeUNhdGVnb3J5KFRheFJldHVybkNhdGVnb3J5TGlzdEVudW0uR1JPU1NfVEFYX1BBWUFCTEUpLmFtb3VudCAvIHRoaXMuc3VtbWFyeS5uZXRBbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogV29yayBOZXQgQ2FzaCA9IEluY29tZSAtIHRheCB3aXRoaGVsZCAtIGV4cGVuc2VzIC0gaW50ZXJlc3RcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCB3b3JrTmV0Q2FzaCgpOiBudW1iZXIge1xuICAgIGNvbnN0IHRheFdpdGhoZWxkOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMud29yay50YXhXaXRoaGVsZCwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLldPUktfVEFOSyk7XG5cbiAgICByZXR1cm4gdGhpcy53b3JrTmV0VG90YWwgLSBNYXRoLmFicyh0YXhXaXRoaGVsZCk7XG4gIH1cblxuICBnZXQgaW5jb21lKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0UmVwb3J0SXRlbXMoW3RoaXMud29yaywgdGhpcy5wcm9wZXJ0eSwgdGhpcy5zb2xlLCB0aGlzLm90aGVyXSkuc3VtQnlDYXRlZ29yaWVzKFtcbiAgICAgIC4uLlRBWF9SRVRVUk5fQ0FURUdPUklFUy53b3JrLmluY29tZSxcbiAgICAgIC4uLlRBWF9SRVRVUk5fQ0FURUdPUklFUy5wcm9wZXJ0eS5pbmNvbWUsXG4gICAgICAuLi5UQVhfUkVUVVJOX0NBVEVHT1JJRVMuc29sZS5pbmNvbWUsXG4gICAgICAuLi5UQVhfUkVUVVJOX0NBVEVHT1JJRVMub3RoZXIuaW5jb21lLFxuICAgIF0pO1xuICB9XG5cbiAgZ2V0IGV4cGVuc2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRSZXBvcnRJdGVtcyhbdGhpcy53b3JrLCB0aGlzLnByb3BlcnR5LCB0aGlzLnNvbGUsIHRoaXMub3RoZXJdKS5zdW1CeUNhdGVnb3JpZXMoW1xuICAgICAgLi4uVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsuZXhwZW5zZXMsXG4gICAgICAuLi5UQVhfUkVUVVJOX0NBVEVHT1JJRVMucHJvcGVydHkuZXhwZW5zZXMsXG4gICAgICAuLi5UQVhfUkVUVVJOX0NBVEVHT1JJRVMuc29sZS5leHBlbnNlcyxcbiAgICAgIC4uLlRBWF9SRVRVUk5fQ0FURUdPUklFUy5vdGhlci5leHBlbnNlcyxcbiAgICBdKTtcbiAgfVxuXG4gIGdldCBuZXRDYXNoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMud29ya05ldENhc2ggKyB0aGlzLnByb3BlcnR5TmV0Q2FzaCArIHRoaXMuc29sZU5ldENhc2ggKyB0aGlzLm90aGVyTmV0Q2FzaDtcbiAgfVxuXG4gIGdldCBuZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLndvcmtOZXRUb3RhbCArIHRoaXMucHJvcGVydHlOZXRUb3RhbCArIHRoaXMuc29sZU5ldFRvdGFsICsgdGhpcy5vdGhlck5ldFRvdGFsO1xuICB9XG5cbiAgLyoqXG4gICAqIFdvcmsgTmV0IFRvdGFsID0gSW5jb21lIC0gZXhwZW5zZXMgLSBpbnRlcmVzdFxuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IHdvcmtOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGluY29tZTogbnVtYmVyID0gdGhpcy53b3JrLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsuaW5jb21lLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uV09SS19UQU5LKTtcbiAgICBjb25zdCBleHBlbnNlczogbnVtYmVyID0gdGhpcy53b3JrLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsuZXhwZW5zZXMsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5XT1JLX1RBTkspO1xuICAgIGNvbnN0IGludGVyZXN0OiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMud29yay5pbnRlcmVzdCwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLldPUktfVEFOSyk7XG5cbiAgICByZXR1cm4gaW5jb21lIC0gTWF0aC5hYnMoZXhwZW5zZXMpIC0gTWF0aC5hYnMoaW50ZXJlc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IE5ldCBDYXNoIChDYXNoIFBvc2l0aW9uKSA9IFJlbnRhbCBJbmNvbWUgLSBleHBlbnNlcyAtIGludGVyZXN0XG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgcHJvcGVydHlOZXRDYXNoKCk6IG51bWJlciB7XG4gICAgY29uc3QgaW5jb21lOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnByb3BlcnR5LmluY29tZSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlBST1BFUlRZX1RBTkspO1xuICAgIGNvbnN0IGV4cGVuc2VzOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnByb3BlcnR5LmV4cGVuc2VzLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uUFJPUEVSVFlfVEFOSyk7XG4gICAgY29uc3QgaW50ZXJlc3Q6IG51bWJlciA9IHRoaXMucHJvcGVydHkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMucHJvcGVydHkuaW50ZXJlc3QsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5QUk9QRVJUWV9UQU5LKTtcblxuICAgIHJldHVybiBpbmNvbWUgLSBNYXRoLmFicyhleHBlbnNlcykgLSBNYXRoLmFicyhpbnRlcmVzdCk7XG4gIH1cblxuICAvKipcbiAgICogUHJvcGVydHkgTmV0IFRvdGFsIChUYXggUG9zaXRpb24pID0gUmVudGFsIEluY29tZSAtIGV4cGVuc2VzIC0gaW50ZXJlc3QgLSBkZXByZWNpYXRpb25cbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCBwcm9wZXJ0eU5ldFRvdGFsKCk6IG51bWJlciB7XG4gICAgY29uc3QgZGVwcmVjaWF0aW9uOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oXG4gICAgICBUQVhfUkVUVVJOX0NBVEVHT1JJRVMucHJvcGVydHkuZGVwcmVjaWF0aW9uLFxuICAgICAgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlBST1BFUlRZX1RBTktcbiAgICApO1xuXG4gICAgY29uc3QgYm9ycm93aW5nRXhwZW5zZXM6IG51bWJlciA9IHRoaXMucHJvcGVydHkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihcbiAgICAgIFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLkJPUlJPV0lOR19FWFBFTlNFU10sXG4gICAgICBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uUFJPUEVSVFlfVEFOS1xuICAgICk7XG5cbiAgICByZXR1cm4gdGhpcy5wcm9wZXJ0eU5ldENhc2ggLSBNYXRoLmFicyhkZXByZWNpYXRpb24pIC0gTWF0aC5hYnMoYm9ycm93aW5nRXhwZW5zZXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE90aGVyIE5ldCBDYXNoID0gZ3Jvc3MgaW5jb21lIOKAkyBleHBlbnNlcyDigJMgdGF4IHdpdGhoZWxkIC0gdGF4IGluc3RhbG1lbnRzXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgb3RoZXJOZXRDYXNoKCk6IG51bWJlciB7XG4gICAgY29uc3QgaW5jb21lOiBudW1iZXIgPSB0aGlzLm90aGVyLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLm90aGVyLmluY29tZSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX1RBTkspO1xuICAgIGNvbnN0IGV4cGVuc2VzOiBudW1iZXIgPSB0aGlzLm90aGVyLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLm90aGVyLmV4cGVuc2VzLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uT1RIRVJfVEFOSyk7XG4gICAgY29uc3QgdGF4V2l0aGhlbGQ6IG51bWJlciA9IHRoaXMuc3VtbWFyeS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLlRBWF9XSVRISEVMRF0sIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9UQU5LKTtcbiAgICBjb25zdCB0YXhJbnN0YWxtZW50czogbnVtYmVyID0gdGhpcy5zdW1tYXJ5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oW1RheFJldHVybkNhdGVnb3J5TGlzdEVudW0uVEFYX0lOU1RBTE1FTlRTXSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX1RBTkspO1xuXG4gICAgcmV0dXJuIGluY29tZSAtIE1hdGguYWJzKGV4cGVuc2VzKSAtIE1hdGguYWJzKHRheFdpdGhoZWxkKSAtIE1hdGguYWJzKHRheEluc3RhbG1lbnRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdGhlciBOZXQgVG90YWwgPSBHcm9zcyBpbmNvbWUgLSBleHBlbnNlcyArIHRheCBvZmZzZXRzICsgdGF4IGluc3RhbG1lbnRzICsgZnJhbmtpbmcgY3JlZGl0c1xuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IG90aGVyTmV0VG90YWwoKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbmNvbWU6IG51bWJlciA9IHRoaXMub3RoZXIuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMub3RoZXIuaW5jb21lLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uT1RIRVJfVEFOSyk7XG4gICAgY29uc3QgZXhwZW5zZXM6IG51bWJlciA9IHRoaXMub3RoZXIuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMub3RoZXIuZXhwZW5zZXMsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9UQU5LKTtcbiAgICBjb25zdCB0YXhPZmZzZXRzOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihbVGF4UmV0dXJuQ2F0ZWdvcnlMaXN0RW51bS5UQVhfT0ZGU0VUU10sIFRheFN1bW1hcnlTZWN0aW9uRW51bS5TVU1NQVJZKTtcbiAgICBjb25zdCB0YXhJbnN0YWxsbWVudHM6IG51bWJlciA9IHRoaXMuc3VtbWFyeS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLlRBWF9JTlNUQUxNRU5UU10sIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9UQU5LKTtcbiAgICBjb25zdCBmcmFua2luZ0NyZWRpdHM6IG51bWJlciA9IHRoaXMuc3VtbWFyeS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVFNdLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uT1RIRVJfVEFOSyk7XG5cbiAgICByZXR1cm4gaW5jb21lIC0gTWF0aC5hYnMoZXhwZW5zZXMpICsgTWF0aC5hYnModGF4T2Zmc2V0cykgKyBNYXRoLmFicyh0YXhJbnN0YWxsbWVudHMpICsgTWF0aC5hYnMoZnJhbmtpbmdDcmVkaXRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTb2xlIE5ldCBDYXNoID0gZ3Jvc3MgaW5jb21lIOKAkyBleHBlbnNlc1xuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IHNvbGVOZXRDYXNoKCk6IG51bWJlciB7XG4gICAgY29uc3QgZGVwcmVjaWF0aW9uOiBudW1iZXIgPSB0aGlzLnNvbGUuaXRlbXMuc3VtQnlDYXRlZ29yaWVzKFRBWF9SRVRVUk5fQ0FURUdPUklFUy5zb2xlLmRlcHJlY2lhdGlvbik7XG4gICAgY29uc3QgbG9zczogbnVtYmVyID0gdGhpcy5zb2xlLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllcyhUQVhfUkVUVVJOX0NBVEVHT1JJRVMuc29sZS5sb3NzKTtcbiAgICBjb25zdCBsb3NzQ3VycmVudDogbnVtYmVyID0gdGhpcy5zb2xlLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnNvbGUubG9zc0N1cnJlbnQsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5TT0xFX1RBTkspO1xuXG4gICAgcmV0dXJuIHRoaXMuc29sZU5ldFRvdGFsIC0gZGVwcmVjaWF0aW9uIC0gbG9zcyArIGxvc3NDdXJyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIFNvbGUgTmV0IFRvdGFsID0gR3Jvc3MgaW5jb21lIC0gZXhwZW5zZXNcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCBzb2xlTmV0VG90YWwoKTogbnVtYmVyIHtcbiAgICAvLyBpbmNvbWUgKyBleHBlbnNlcyArIGRlcHJlY2lhdGlvbiArIGxvc3NcbiAgICBjb25zdCBwcm9maXQ6IG51bWJlciA9IHRoaXMuc29sZS5pdGVtcy5zdW1CeUNhdGVnb3JpZXMoW1RheFJldHVybkNhdGVnb3J5TGlzdEVudW0uQlVTSU5FU1NfSU5DT01FX09SX0xPU1NdKTtcbiAgICBjb25zdCBsb3NzQ3VycmVudDogbnVtYmVyID0gdGhpcy5zb2xlLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnNvbGUubG9zc0N1cnJlbnQsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5TT0xFX1RBTkspO1xuXG4gICAgcmV0dXJuIHByb2ZpdCAtIGxvc3NDdXJyZW50O1xuICB9XG5cbiAgZ2V0RGVmZXJyZWRCdXNpbmVzc0xvc3MoYnVzaW5lc3M6IFNvbGVCdXNpbmVzcyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc29sZS5pdGVtc1xuICAgICAgLmZpbmRCeUNhdGVnb3J5KFRheFJldHVybkNhdGVnb3J5TGlzdEVudW0uREVGRVJSRURfQlVTSU5FU1NfTE9TU0VTKS5pdGVtc1xuICAgICAgLmZpbmRCeSgndGl0bGUnLCBgSXRlbSAxNWMgLSAke2J1c2luZXNzLm5hbWV9YCk/LmFtb3VudDtcbiAgfVxuXG4gIGdldEJ1c2luZXNzQ2xvc2VCYWxhbmNlKGJ1c2luZXNzOiBTb2xlQnVzaW5lc3MpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnNvbGUuaXRlbXNcbiAgICAgIC5maW5kQnlDYXRlZ29yeShUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLkJVU0lORVNTX0lOQ09NRV9PUl9MT1NTKS5pdGVtc1xuICAgICAgLmZpbmRCeSgndGl0bGUnLCBgSXRlbSAxNWMgLSAke2J1c2luZXNzLm5hbWV9YCk/LmFtb3VudDtcbiAgfVxufVxuIl19
@@ -0,0 +1,8 @@
1
+ export var ToastTypeEnum;
2
+ (function (ToastTypeEnum) {
3
+ ToastTypeEnum[ToastTypeEnum["INFO"] = 0] = "INFO";
4
+ ToastTypeEnum[ToastTypeEnum["SUCCESS"] = 1] = "SUCCESS";
5
+ ToastTypeEnum[ToastTypeEnum["WARNING"] = 2] = "WARNING";
6
+ ToastTypeEnum[ToastTypeEnum["ERROR"] = 3] = "ERROR";
7
+ })(ToastTypeEnum || (ToastTypeEnum = {}));
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QtdHlwZS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy90b2FzdC90b2FzdC10eXBlLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksYUFLWDtBQUxELFdBQVksYUFBYTtJQUN2QixpREFBSSxDQUFBO0lBQ0osdURBQU8sQ0FBQTtJQUNQLHVEQUFPLENBQUE7SUFDUCxtREFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUxXLGFBQWEsS0FBYixhQUFhLFFBS3hCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gVG9hc3RUeXBlRW51bSB7XG4gIElORk8sXG4gIFNVQ0NFU1MsXG4gIFdBUk5JTkcsXG4gIEVSUk9SXG59XG4iXX0=
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Common toast message class
3
+ */
4
+ export class Toast {
5
+ constructor() {
6
+ this.duration = 3000;
7
+ this.autoClose = true;
8
+ }
9
+ }
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RvYXN0L3RvYXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLEtBQUs7SUFBbEI7UUFJRSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2hCLGNBQVMsR0FBRyxJQUFJLENBQUM7SUFJbkIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVG9hc3RUeXBlRW51bSB9IGZyb20gJy4vdG9hc3QtdHlwZS5lbnVtJztcblxuLyoqXG4gKiBDb21tb24gdG9hc3QgbWVzc2FnZSBjbGFzc1xuICovXG5leHBvcnQgY2xhc3MgVG9hc3Qge1xuICB0eXBlOiBUb2FzdFR5cGVFbnVtO1xuICB0aXRsZTogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIGR1cmF0aW9uID0gMzAwMDtcbiAgYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgZGF0ZTogRGF0ZTtcbiAgb25DbG9zZUNsaWNrOiAoKSA9PiB7fTtcbiAgb25DVEFDbGljazogKCkgPT4ge307XG59XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { __decorate } from "tslib";
2
+ import { AllocationRuleCondition as AllocationRuleConditionBase } from '../../db/Models/transaction/allocation-rule-condition';
3
+ import { AllocationRuleConditionComparisonOperatorEnum, AllocationRuleConditionFieldEnum } from '../../db/Enums';
4
+ import { Transform } from 'class-transformer';
5
+ export class AllocationRuleCondition extends AllocationRuleConditionBase {
6
+ matchBankTransaction(bankTransaction) {
7
+ return this.field === AllocationRuleConditionFieldEnum.AMOUNT ? this.matchBankTransactionByAmount(bankTransaction) : this.matchBankTransactionByDescription(bankTransaction);
8
+ }
9
+ matchBankTransactionByAmount(bankTransaction) {
10
+ // Amount should be compared as number
11
+ const value = +this.value;
12
+ switch (this.comparisonOperator) {
13
+ case AllocationRuleConditionComparisonOperatorEnum.EQUALS:
14
+ return bankTransaction.amount === value;
15
+ case AllocationRuleConditionComparisonOperatorEnum.EQUALS_OR_LESS:
16
+ return bankTransaction.amount <= value;
17
+ case AllocationRuleConditionComparisonOperatorEnum.EQUALS_OR_GREATER:
18
+ return bankTransaction.amount >= value;
19
+ }
20
+ return false;
21
+ }
22
+ matchBankTransactionByDescription(bankTransaction) {
23
+ // Prepare value and description for comparison
24
+ const description = bankTransaction.description.toLowerCase();
25
+ const value = this.value.trim().toLowerCase();
26
+ switch (this.comparisonOperator) {
27
+ case AllocationRuleConditionComparisonOperatorEnum.EQUALS:
28
+ return description === value;
29
+ case AllocationRuleConditionComparisonOperatorEnum.CONTAINS:
30
+ return description.includes(value);
31
+ case AllocationRuleConditionComparisonOperatorEnum.STARTS:
32
+ return description.startsWith(value);
33
+ }
34
+ return false;
35
+ }
36
+ }
37
+ __decorate([
38
+ Transform(({ value }) => value.toString(), { toPlainOnly: true })
39
+ ], AllocationRuleCondition.prototype, "value", void 0);
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLWNvbmRpdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdHJhbnNhY3Rpb24vYWxsb2NhdGlvbi1ydWxlLWNvbmRpdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUNMLHVCQUF1QixJQUFJLDJCQUEyQixFQUN2RCxNQUFNLHVEQUF1RCxDQUFDO0FBRS9ELE9BQU8sRUFBRSw2Q0FBNkMsRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUU5QyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBSXRFLG9CQUFvQixDQUFDLGVBQWdDO1FBQ25ELE9BQU8sSUFBSSxDQUFDLEtBQUssS0FBSyxnQ0FBZ0MsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlDQUFpQyxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQy9LLENBQUM7SUFFRCw0QkFBNEIsQ0FBQyxlQUFnQztRQUMzRCxzQ0FBc0M7UUFDdEMsTUFBTSxLQUFLLEdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBRWxDLFFBQVEsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQy9CLEtBQUssNkNBQTZDLENBQUMsTUFBTTtnQkFDdkQsT0FBTyxlQUFlLENBQUMsTUFBTSxLQUFLLEtBQUssQ0FBQztZQUMxQyxLQUFLLDZDQUE2QyxDQUFDLGNBQWM7Z0JBQy9ELE9BQU8sZUFBZSxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUM7WUFDekMsS0FBSyw2Q0FBNkMsQ0FBQyxpQkFBaUI7Z0JBQ2xFLE9BQU8sZUFBZSxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUM7U0FDMUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxpQ0FBaUMsQ0FBQyxlQUFnQztRQUNoRSwrQ0FBK0M7UUFDL0MsTUFBTSxXQUFXLEdBQVcsZUFBZSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0RSxNQUFNLEtBQUssR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRXRELFFBQVEsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQy9CLEtBQUssNkNBQTZDLENBQUMsTUFBTTtnQkFDdkQsT0FBTyxXQUFXLEtBQUssS0FBSyxDQUFDO1lBQy9CLEtBQUssNkNBQTZDLENBQUMsUUFBUTtnQkFDekQsT0FBTyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JDLEtBQUssNkNBQTZDLENBQUMsTUFBTTtnQkFDdkQsT0FBTyxXQUFXLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBQ0Y7QUF0Q0M7SUFEQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLENBQUM7c0RBQ3BEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWxsb2NhdGlvblJ1bGVDb25kaXRpb24gYXMgQWxsb2NhdGlvblJ1bGVDb25kaXRpb25CYXNlXG59IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtY29uZGl0aW9uJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiB9IGZyb20gJy4uL2JhbmsnO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVDb25kaXRpb25Db21wYXJpc29uT3BlcmF0b3JFbnVtLCBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkZpZWxkRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCB7IFRyYW5zZm9ybSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uIGV4dGVuZHMgQWxsb2NhdGlvblJ1bGVDb25kaXRpb25CYXNlIHtcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZS50b1N0cmluZygpLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIHZhbHVlOiBzdHJpbmc7XG5cbiAgbWF0Y2hCYW5rVHJhbnNhY3Rpb24oYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5maWVsZCA9PT0gQWxsb2NhdGlvblJ1bGVDb25kaXRpb25GaWVsZEVudW0uQU1PVU5UID8gdGhpcy5tYXRjaEJhbmtUcmFuc2FjdGlvbkJ5QW1vdW50KGJhbmtUcmFuc2FjdGlvbikgOiB0aGlzLm1hdGNoQmFua1RyYW5zYWN0aW9uQnlEZXNjcmlwdGlvbihiYW5rVHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgbWF0Y2hCYW5rVHJhbnNhY3Rpb25CeUFtb3VudChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4ge1xuICAgIC8vIEFtb3VudCBzaG91bGQgYmUgY29tcGFyZWQgYXMgbnVtYmVyXG4gICAgY29uc3QgdmFsdWU6IG51bWJlciA9ICt0aGlzLnZhbHVlO1xuXG4gICAgc3dpdGNoICh0aGlzLmNvbXBhcmlzb25PcGVyYXRvcikge1xuICAgICAgY2FzZSBBbGxvY2F0aW9uUnVsZUNvbmRpdGlvbkNvbXBhcmlzb25PcGVyYXRvckVudW0uRVFVQUxTOlxuICAgICAgICByZXR1cm4gYmFua1RyYW5zYWN0aW9uLmFtb3VudCA9PT0gdmFsdWU7XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uQ29tcGFyaXNvbk9wZXJhdG9yRW51bS5FUVVBTFNfT1JfTEVTUzpcbiAgICAgICAgcmV0dXJuIGJhbmtUcmFuc2FjdGlvbi5hbW91bnQgPD0gdmFsdWU7XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uQ29tcGFyaXNvbk9wZXJhdG9yRW51bS5FUVVBTFNfT1JfR1JFQVRFUjpcbiAgICAgICAgcmV0dXJuIGJhbmtUcmFuc2FjdGlvbi5hbW91bnQgPj0gdmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgbWF0Y2hCYW5rVHJhbnNhY3Rpb25CeURlc2NyaXB0aW9uKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKTogYm9vbGVhbiB7XG4gICAgLy8gUHJlcGFyZSB2YWx1ZSBhbmQgZGVzY3JpcHRpb24gZm9yIGNvbXBhcmlzb25cbiAgICBjb25zdCBkZXNjcmlwdGlvbjogc3RyaW5nID0gYmFua1RyYW5zYWN0aW9uLmRlc2NyaXB0aW9uLnRvTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgdmFsdWU6IHN0cmluZyA9IHRoaXMudmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBzd2l0Y2ggKHRoaXMuY29tcGFyaXNvbk9wZXJhdG9yKSB7XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uQ29tcGFyaXNvbk9wZXJhdG9yRW51bS5FUVVBTFM6XG4gICAgICAgIHJldHVybiBkZXNjcmlwdGlvbiA9PT0gdmFsdWU7XG4gICAgICBjYXNlIEFsbG9jYXRpb25SdWxlQ29uZGl0aW9uQ29tcGFyaXNvbk9wZXJhdG9yRW51bS5DT05UQUlOUzpcbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0aW9uLmluY2x1ZGVzKHZhbHVlKTtcbiAgICAgIGNhc2UgQWxsb2NhdGlvblJ1bGVDb25kaXRpb25Db21wYXJpc29uT3BlcmF0b3JFbnVtLlNUQVJUUzpcbiAgICAgICAgcmV0dXJuIGRlc2NyaXB0aW9uLnN0YXJ0c1dpdGgodmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,4 @@
1
+ import { AllocationRuleTransactionMetaField as AllocationRuleTransactionMetaFieldBase } from '../../db/Models/transaction/allocation-rule-transaction-meta-field';
2
+ export class AllocationRuleTransactionMetaField extends AllocationRuleTransactionMetaFieldBase {
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLW1ldGEtZmllbGQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL2FsbG9jYXRpb24tcnVsZS10cmFuc2FjdGlvbi1tZXRhLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQ0FBa0MsSUFBSSxzQ0FBc0MsRUFBRSxNQUFNLG9FQUFvRSxDQUFDO0FBRWxLLE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSxzQ0FBc0M7Q0FDN0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uTWV0YUZpZWxkIGFzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGRCYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RyYW5zYWN0aW9uL2FsbG9jYXRpb24tcnVsZS10cmFuc2FjdGlvbi1tZXRhLWZpZWxkJztcblxuZXhwb3J0IGNsYXNzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGQgZXh0ZW5kcyBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uTWV0YUZpZWxkQmFzZSB7XG59XG4iXX0=
@@ -0,0 +1,110 @@
1
+ import { __decorate } from "tslib";
2
+ import { AllocationRuleTransaction as AllocationRuleTransactionBase } from '../../db/Models/transaction/allocation-rule-transaction';
3
+ import { ChartAccounts } from '../chart-accounts';
4
+ import { Transform, Type, plainToClass } from 'class-transformer';
5
+ import { AllocationRuleTransactionMetaField } from './allocation-rule-transaction-meta-field';
6
+ import { Loan, Property, SoleBusiness, Transaction } from '../../models';
7
+ import { IncomeSource } from '../income-source';
8
+ import { ChartAccountsListEnum } from '../../db/Enums';
9
+ import { TransactionOperationEnum } from '../../db/Enums/transaction-operation.enum';
10
+ import { TransactionSourceEnum } from '../../db/Enums/transaction-source.enum';
11
+ export class AllocationRuleTransaction extends AllocationRuleTransactionBase {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.claimPercent = 100;
15
+ this.tax = 0;
16
+ this.amount = null;
17
+ }
18
+ get amountPercentCoefficient() {
19
+ return this.amountPercent ? this.amountPercent / 100 : 1;
20
+ }
21
+ calculateClaimPercent() {
22
+ if (!this.chartAccounts) {
23
+ return null;
24
+ }
25
+ let claimPercent = this.chartAccounts.taxablePercent;
26
+ // Property claim (ownership% x shared%) for property expenses, taxable percent for others
27
+ if (this.chartAccounts?.isProperty() && this.property) {
28
+ if (this.chartAccounts.isPropertyExpense() && this.chartAccounts.id !== ChartAccountsListEnum.PLATFORM_FEES) {
29
+ claimPercent *= this.property?.claimCoefficient;
30
+ }
31
+ }
32
+ return claimPercent;
33
+ }
34
+ /**
35
+ * If rule transaction has amount then split enabled. There is 0 when split disabled
36
+ */
37
+ isSplit() {
38
+ return !!this.amountPercent;
39
+ }
40
+ /**
41
+ * Create Transaction instance based on passed bank transaction and rule transaction
42
+ */
43
+ toTransaction(bankTransaction = null) {
44
+ const transaction = bankTransaction ? bankTransaction.toTransaction(this.isGST) : plainToClass(Transaction, {});
45
+ Object.assign(transaction, {
46
+ isGST: this.isGST,
47
+ tax: this.tax,
48
+ claimPercent: this.claimPercent,
49
+ chartAccounts: this.chartAccounts,
50
+ property: this.property,
51
+ loan: this.loan,
52
+ incomeSource: this.incomeSource,
53
+ metaFields: this.metaFields,
54
+ business: this.business,
55
+ source: TransactionSourceEnum.BANK_TRANSACTION,
56
+ operation: TransactionOperationEnum.ALLOCATE,
57
+ transactions: [],
58
+ });
59
+ // split allocation
60
+ if (this.amountPercent) {
61
+ transaction.amount = bankTransaction.amount * this.amountPercentCoefficient / this.gstCoefficient;
62
+ }
63
+ // child transactions inherit most of the fields from parent transaction
64
+ this.childTransactions.forEach((childRuleTransaction) => {
65
+ const childTransaction = childRuleTransaction.toTransaction();
66
+ childTransaction.amount = childRuleTransaction.amount;
67
+ childTransaction.setParent(transaction);
68
+ transaction.transactions.push(childTransaction);
69
+ });
70
+ return transaction;
71
+ }
72
+ }
73
+ __decorate([
74
+ Type(() => ChartAccounts)
75
+ // @TODO Alex: Create custom decorator for this transform
76
+ ,
77
+ Transform(({ value }) => ({ id: value.id }), { toPlainOnly: true })
78
+ ], AllocationRuleTransaction.prototype, "chartAccounts", void 0);
79
+ __decorate([
80
+ Type(() => Property),
81
+ Transform(({ value }) => value ? { id: value.id } : null, { toPlainOnly: true })
82
+ ], AllocationRuleTransaction.prototype, "property", void 0);
83
+ __decorate([
84
+ Type(() => Loan),
85
+ Transform(({ value }) => value ? { id: value.id } : null, { toPlainOnly: true })
86
+ ], AllocationRuleTransaction.prototype, "loan", void 0);
87
+ __decorate([
88
+ Type(() => IncomeSource),
89
+ Transform(({ value }) => value ? { id: value.id } : null, { toPlainOnly: true })
90
+ ], AllocationRuleTransaction.prototype, "incomeSource", void 0);
91
+ __decorate([
92
+ Type(() => SoleBusiness),
93
+ Transform(({ value }) => value ? { id: value.id } : null, { toPlainOnly: true })
94
+ ], AllocationRuleTransaction.prototype, "business", void 0);
95
+ __decorate([
96
+ Type(() => AllocationRuleTransactionMetaField)
97
+ ], AllocationRuleTransaction.prototype, "metaFields", void 0);
98
+ __decorate([
99
+ Type(() => AllocationRuleTransaction)
100
+ ], AllocationRuleTransaction.prototype, "parentTransaction", void 0);
101
+ __decorate([
102
+ Type(() => AllocationRuleTransaction)
103
+ ], AllocationRuleTransaction.prototype, "childTransactions", void 0);
104
+ __decorate([
105
+ Type(() => Number)
106
+ ], AllocationRuleTransaction.prototype, "claimPercent", void 0);
107
+ __decorate([
108
+ Type(() => Number)
109
+ ], AllocationRuleTransaction.prototype, "tax", void 0);
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFDTCx5QkFBeUIsSUFBSSw2QkFBNkIsRUFDM0QsTUFBTSx5REFBeUQsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUYsT0FBTyxFQUFtQixJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXlCLE1BQU0sY0FBYyxDQUFDO0FBQ2pILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUVyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxNQUFNLE9BQU8seUJBQTBCLFNBQVEsNkJBQTZCO0lBQTVFOztRQStCc0IsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsUUFBRyxHQUFHLENBQUMsQ0FBQztRQUU1QixXQUFNLEdBQVcsSUFBSSxDQUFDO0lBa0V4QixDQUFDO0lBaEVDLElBQUksd0JBQXdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMs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REMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29FQUNTO0FBRTNCO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7K0RBQW9CO0FBQ25CO0lBQW5CLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7c0RBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uIGFzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25CYXNlXG59IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi9hbGxvY2F0aW9uLXJ1bGUtdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IFRyYW5zZm9ybSwgVHlwZSwgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbk1ldGFGaWVsZCB9IGZyb20gJy4vYWxsb2NhdGlvbi1ydWxlLXRyYW5zYWN0aW9uLW1ldGEtZmllbGQnO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uLCBMb2FuLCBQcm9wZXJ0eSwgU29sZUJ1c2luZXNzLCBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IG1lcmdlIGZyb20gJ2xvZGFzaC9tZXJnZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1vcGVyYXRpb24uZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU291cmNlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLXNvdXJjZS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb24gZXh0ZW5kcyBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IENoYXJ0QWNjb3VudHMpXG4gIC8vIEBUT0RPIEFsZXg6IENyZWF0ZSBjdXN0b20gZGVjb3JhdG9yIGZvciB0aGlzIHRyYW5zZm9ybVxuICBAVHJhbnNmb3JtKCh7IHZhbHVlIH0pID0+ICh7IGlkOiB2YWx1ZS5pZCB9KSwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5KVxuICBAVHJhbnNmb3JtKCh7IHZhbHVlIH0pID0+IHZhbHVlID8geyBpZDogdmFsdWUuaWQgfSA6IG51bGwsIHsgdG9QbGFpbk9ubHk6IHRydWUgfSlcbiAgcHJvcGVydHk6IFByb3BlcnR5O1xuXG4gIEBUeXBlKCgpID0+IExvYW4pXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gdmFsdWUgPyB7IGlkOiB2YWx1ZS5pZCB9IDogbnVsbCwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBsb2FuOiBMb2FuO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgQFRyYW5zZm9ybSgoeyB2YWx1ZSB9KSA9PiB2YWx1ZSA/IHsgaWQ6IHZhbHVlLmlkIH0gOiBudWxsLCB7IHRvUGxhaW5Pbmx5OiB0cnVlIH0pXG4gIGluY29tZVNvdXJjZT86IEluY29tZVNvdXJjZTtcblxuICBAVHlwZSgoKSA9PiBTb2xlQnVzaW5lc3MpXG4gIEBUcmFuc2Zvcm0oKHsgdmFsdWUgfSkgPT4gdmFsdWUgPyB7IGlkOiB2YWx1ZS5pZCB9IDogbnVsbCwgeyB0b1BsYWluT25seTogdHJ1ZSB9KVxuICBidXNpbmVzczogU29sZUJ1c2luZXNzO1xuXG4gIEBUeXBlKCgpID0+IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGQpXG4gIG1ldGFGaWVsZHM6IEFsbG9jYXRpb25SdWxlVHJhbnNhY3Rpb25NZXRhRmllbGRbXTtcblxuICBAVHlwZSgoKSA9PiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uKVxuICBwYXJlbnRUcmFuc2FjdGlvbjogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBBbGxvY2F0aW9uUnVsZVRyYW5zYWN0aW9uKVxuICBjaGlsZFRyYW5zYWN0aW9uczogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbltdO1xuXG4gIEBUeXBlKCgpID0+IE51bWJlcikgY2xhaW1QZXJjZW50ID0gMTAwO1xuICBAVHlwZSgoKSA9PiBOdW1iZXIpIHRheCA9IDA7XG5cbiAgYW1vdW50OiBudW1iZXIgPSBudWxsO1xuXG4gIGdldCBhbW91bnRQZXJjZW50Q29lZmZpY2llbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5hbW91bnRQZXJjZW50ID8gdGhpcy5hbW91bnRQZXJjZW50IC8gMTAwIDogMTtcbiAgfVxuXG4gIGNhbGN1bGF0ZUNsYWltUGVyY2VudCgpOiBudW1iZXIge1xuICAgIGlmICghdGhpcy5jaGFydEFjY291bnRzKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBsZXQgY2xhaW1QZXJjZW50ID0gdGhpcy5jaGFydEFjY291bnRzLnRheGFibGVQZXJjZW50O1xuXG4gICAgLy8gUHJvcGVydHkgY2xhaW0gKG93bmVyc2hpcCUgeCBzaGFyZWQlKSBmb3IgcHJvcGVydHkgZXhwZW5zZXMsIHRheGFibGUgcGVyY2VudCBmb3Igb3RoZXJzXG4gICAgaWYgKHRoaXMuY2hhcnRBY2NvdW50cz8uaXNQcm9wZXJ0eSgpICYmIHRoaXMucHJvcGVydHkpIHtcbiAgICAgIGlmICh0aGlzLmNoYXJ0QWNjb3VudHMuaXNQcm9wZXJ0eUV4cGVuc2UoKSAmJiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgIT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5QTEFURk9STV9GRUVTKSB7XG4gICAgICAgIGNsYWltUGVyY2VudCAqPSB0aGlzLnByb3BlcnR5Py5jbGFpbUNvZWZmaWNpZW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjbGFpbVBlcmNlbnQ7XG4gIH1cblxuICAvKipcbiAgICogSWYgcnVsZSB0cmFuc2FjdGlvbiBoYXMgYW1vdW50IHRoZW4gc3BsaXQgZW5hYmxlZC4gVGhlcmUgaXMgMCB3aGVuIHNwbGl0IGRpc2FibGVkXG4gICAqL1xuICBpc1NwbGl0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuYW1vdW50UGVyY2VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgVHJhbnNhY3Rpb24gaW5zdGFuY2UgYmFzZWQgb24gcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb24gYW5kIHJ1bGUgdHJhbnNhY3Rpb25cbiAgICovXG4gIHRvVHJhbnNhY3Rpb24oYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24gPSBudWxsKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gYmFua1RyYW5zYWN0aW9uID8gYmFua1RyYW5zYWN0aW9uLnRvVHJhbnNhY3Rpb24odGhpcy5pc0dTVCkgOiBwbGFpblRvQ2xhc3MoVHJhbnNhY3Rpb24sIHt9KTtcbiAgICBPYmplY3QuYXNzaWduKHRyYW5zYWN0aW9uLCB7XG4gICAgICBpc0dTVDogdGhpcy5pc0dTVCxcbiAgICAgIHRheDogdGhpcy50YXgsXG4gICAgICBjbGFpbVBlcmNlbnQ6IHRoaXMuY2xhaW1QZXJjZW50LFxuICAgICAgY2hhcnRBY2NvdW50czogdGhpcy5jaGFydEFjY291bnRzLFxuICAgICAgcHJvcGVydHk6IHRoaXMucHJvcGVydHksXG4gICAgICBsb2FuOiB0aGlzLmxvYW4sXG4gICAgICBpbmNvbWVTb3VyY2U6IHRoaXMuaW5jb21lU291cmNlLFxuICAgICAgbWV0YUZpZWxkczogdGhpcy5tZXRhRmllbGRzLFxuICAgICAgYnVzaW5lc3M6IHRoaXMuYnVzaW5lc3MsXG4gICAgICBzb3VyY2U6IFRyYW5zYWN0aW9uU291cmNlRW51bS5CQU5LX1RSQU5TQUNUSU9OLFxuICAgICAgb3BlcmF0aW9uOiBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uQUxMT0NBVEUsXG4gICAgICB0cmFuc2FjdGlvbnM6IFtdLFxuICAgIH0pO1xuXG4gICAgLy8gc3BsaXQgYWxsb2NhdGlvblxuICAgIGlmICh0aGlzLmFtb3VudFBlcmNlbnQpIHtcbiAgICAgIHRyYW5zYWN0aW9uLmFtb3VudCA9IGJhbmtUcmFuc2FjdGlvbi5hbW91bnQgKiB0aGlzLmFtb3VudFBlcmNlbnRDb2VmZmljaWVudCAvIHRoaXMuZ3N0Q29lZmZpY2llbnQ7XG4gICAgfVxuXG4gICAgLy8gY2hpbGQgdHJhbnNhY3Rpb25zIGluaGVyaXQgbW9zdCBvZiB0aGUgZmllbGRzIGZyb20gcGFyZW50IHRyYW5zYWN0aW9uXG4gICAgdGhpcy5jaGlsZFRyYW5zYWN0aW9ucy5mb3JFYWNoKChjaGlsZFJ1bGVUcmFuc2FjdGlvbjogQWxsb2NhdGlvblJ1bGVUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgY29uc3QgY2hpbGRUcmFuc2FjdGlvbiA9IGNoaWxkUnVsZVRyYW5zYWN0aW9uLnRvVHJhbnNhY3Rpb24oKTtcbiAgICAgIGNoaWxkVHJhbnNhY3Rpb24uYW1vdW50ID0gY2hpbGRSdWxlVHJhbnNhY3Rpb24uYW1vdW50O1xuICAgICAgY2hpbGRUcmFuc2FjdGlvbi5zZXRQYXJlbnQodHJhbnNhY3Rpb24pO1xuXG4gICAgICB0cmFuc2FjdGlvbi50cmFuc2FjdGlvbnMucHVzaChjaGlsZFRyYW5zYWN0aW9uKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB0cmFuc2FjdGlvbjtcbiAgfVxufVxuIl19