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,98 @@
1
+ import { UntypedFormControl, Validators } from '@angular/forms';
2
+ import { autocompleteValidator } from '../../validators';
3
+ import { AbstractForm } from '../abstract.form';
4
+ import { ChartAccountsListEnum } from '../../db/Enums';
5
+ import { ChartAccounts } from '../../models';
6
+ import { FormValidationsEnum } from '../form-validations.enum';
7
+ /**
8
+ * @TODO refactor, move specific fields like property in separated forms
9
+ * @TODO remove useless getters
10
+ */
11
+ export class TransactionBaseForm extends AbstractForm {
12
+ constructor(transaction, registeredForGst, controls = {}) {
13
+ super(Object.assign({
14
+ chartAccounts: new UntypedFormControl(transaction.chartAccounts, [Validators.required, autocompleteValidator()]),
15
+ claimPercent: new UntypedFormControl({ value: transaction.claimPercent, disabled: true }, [Validators.required, Validators.min(0), Validators.max(100)]),
16
+ amount: new UntypedFormControl(transaction.amount, Validators.required),
17
+ amountWithGST: new UntypedFormControl(transaction.amountWithGst, Validators.required),
18
+ isGST: new UntypedFormControl({ value: transaction.isGST, disabled: !transaction.chartAccounts?.isGST || !registeredForGst }),
19
+ gstAmount: new UntypedFormControl({ value: transaction.gstAmount, disabled: true }, Validators.required),
20
+ date: new UntypedFormControl(transaction.date, [Validators.required]),
21
+ description: new UntypedFormControl(transaction.description, Validators.maxLength(FormValidationsEnum.TEXT_MAX_LENGTH)),
22
+ file: new UntypedFormControl(transaction.file),
23
+ property: new UntypedFormControl({ value: transaction.property, disabled: transaction.chartAccounts }),
24
+ }, controls), transaction);
25
+ this.registeredForGst = registeredForGst;
26
+ this.watchChartAccounts();
27
+ this.watchAmountWithGST();
28
+ this.watchIsGst();
29
+ }
30
+ watchIsGst() {
31
+ this.get('isGST').valueChanges.subscribe((isGST) => {
32
+ this.updateAmount();
33
+ this.updateGstAmount();
34
+ });
35
+ }
36
+ watchAmountWithGST() {
37
+ this.get('amountWithGST').valueChanges.subscribe(() => {
38
+ this.updateAmount();
39
+ this.updateGstAmount();
40
+ });
41
+ }
42
+ watchChartAccounts() {
43
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts) => {
44
+ // recalculate claim percent for selected chart accounts
45
+ this.updateClaimPercent(chartAccounts);
46
+ if (!this.isGstApplicable()) {
47
+ return;
48
+ }
49
+ // update gst if applicable
50
+ if (chartAccounts.isGST) {
51
+ this.get('isGST').enable();
52
+ this.get('isGST').patchValue(true);
53
+ }
54
+ else {
55
+ this.get('isGST').patchValue(false);
56
+ this.get('isGST').disable();
57
+ }
58
+ });
59
+ }
60
+ updateGstAmount() {
61
+ this.get('gstAmount').patchValue(this.amountWithGST - this.amount);
62
+ }
63
+ updateAmount() {
64
+ this.patchField('amount', this.isGST ? this.amountWithGST / ChartAccounts.GSTCoefficient : this.amountWithGST);
65
+ }
66
+ isGstApplicable() {
67
+ return !!this.registeredForGst && !!this.model.business;
68
+ }
69
+ get amount() {
70
+ return this.get('amount').value;
71
+ }
72
+ get amountWithGST() {
73
+ return this.get('amountWithGST').value;
74
+ }
75
+ get isGST() {
76
+ return this.get('isGST').value;
77
+ }
78
+ /**
79
+ * propertyClaimPercent for propertyExpense (except platform fees, which already include claimPercent),
80
+ * taxablePercent for others
81
+ * can be adjusted only for property/sole expenses
82
+ */
83
+ updateClaimPercent(chartAccounts) {
84
+ if (chartAccounts.isClaimPercentEditable()) {
85
+ this.get('claimPercent').enable();
86
+ }
87
+ else {
88
+ this.get('claimPercent').disable();
89
+ }
90
+ // property claim (ownership% x shared%) for property expenses, taxable percent for others
91
+ let claimPercent = chartAccounts.taxablePercent;
92
+ if (chartAccounts.isPropertyExpense() && chartAccounts.id !== ChartAccountsListEnum.PLATFORM_FEES) {
93
+ claimPercent *= this.get('property').value.claimCoefficient;
94
+ }
95
+ this.get('claimPercent').setValue(claimPercent);
96
+ }
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYmFzZS5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLWJhc2UuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW1CLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRS9EOzs7R0FHRztBQUNILE1BQU0sT0FBTyxtQkFBbUQsU0FBUSxZQUFtQjtJQUd6RixZQUFZLFdBQWtCLEVBQUUsZ0JBQXlCLEVBQUUsV0FBK0MsRUFBRTtRQUMxRyxLQUFLLENBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUNaLGFBQWEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLHFCQUFxQixFQUFFLENBQUMsQ0FBQztZQUNoSCxZQUFZLEVBQUUsSUFBSSxrQkFBa0IsQ0FDbEMsRUFBRSxLQUFLLEVBQUUsV0FBVyxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEVBQ25ELENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDOUQ7WUFDRCxNQUFNLEVBQUUs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SUFBSSxhQUFhLENBQUMsaUJBQWlCLEVBQUUsSUFBSSxhQUFhLENBQUMsRUFBRSxLQUFLLHFCQUFxQixDQUFDLGFBQWEsRUFBRTtZQUNqRyxZQUFZLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7U0FDN0Q7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGF1dG9jb21wbGV0ZVZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMnO1xuaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0xpc3RFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBGb3JtVmFsaWRhdGlvbnNFbnVtIH0gZnJvbSAnLi4vZm9ybS12YWxpZGF0aW9ucy5lbnVtJztcblxuLyoqXG4gKiBAVE9ETyByZWZhY3RvciwgbW92ZSBzcGVjaWZpYyBmaWVsZHMgbGlrZSBwcm9wZXJ0eSBpbiBzZXBhcmF0ZWQgZm9ybXNcbiAqIEBUT0RPIHJlbW92ZSB1c2VsZXNzIGdldHRlcnNcbiAqL1xuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQmFzZUZvcm08TW9kZWwgZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2U+IGV4dGVuZHMgQWJzdHJhY3RGb3JtPE1vZGVsPiB7XG4gIHJlZ2lzdGVyZWRGb3JHc3Q6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IodHJhbnNhY3Rpb246IE1vZGVsLCByZWdpc3RlcmVkRm9yR3N0OiBib29sZWFuLCBjb250cm9sczogeyBba2V5OiBzdHJpbmddOiBBYnN0cmFjdENvbnRyb2wgfSA9IHt9KSB7XG4gICAgc3VwZXIoXG4gICAgICBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgY2hhcnRBY2NvdW50czogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgYXV0b2NvbXBsZXRlVmFsaWRhdG9yKCldKSxcbiAgICAgICAgY2xhaW1QZXJjZW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAgICAgICAgIHsgdmFsdWU6IHRyYW5zYWN0aW9uLmNsYWltUGVyY2VudCwgZGlzYWJsZWQ6IHRydWUgfSxcbiAgICAgICAgICBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW4oMCksIFZhbGlkYXRvcnMubWF4KDEwMCldXG4gICAgICAgICksXG4gICAgICAgIGFtb3VudDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0cmFuc2FjdGlvbi5hbW91bnQsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBhbW91bnRXaXRoR1NUOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRyYW5zYWN0aW9uLmFtb3VudFdpdGhHc3QsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgICBpc0dTVDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiB0cmFuc2FjdGlvbi5pc0dTVCwgZGlzYWJsZWQ6ICF0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzPy5pc0dTVCB8fCAhcmVnaXN0ZXJlZEZvckdzdCB9KSxcbiAgICAgICAgZ3N0QW1vdW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHRyYW5zYWN0aW9uLmdzdEFtb3VudCwgZGlzYWJsZWQ6IHRydWUgfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICAgIGRhdGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uZGF0ZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICAgICAgZGVzY3JpcHRpb246IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uZGVzY3JpcHRpb24sIFZhbGlkYXRvcnMubWF4TGVuZ3RoKEZvcm1WYWxpZGF0aW9uc0VudW0uVEVYVF9NQVhfTEVOR1RIKSksXG4gICAgICAgIGZpbGU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uZmlsZSksXG4gICAgICAgIHByb3BlcnR5OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHsgdmFsdWU6IHRyYW5zYWN0aW9uLnByb3BlcnR5LCBkaXNhYmxlZDogdHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cyB9KSxcbiAgICAgIH0sIGNvbnRyb2xzKSxcbiAgICAgIHRyYW5zYWN0aW9uXG4gICAgKTtcblxuICAgIHRoaXMucmVnaXN0ZXJlZEZvckdzdCA9IHJlZ2lzdGVyZWRGb3JHc3Q7XG4gICAgdGhpcy53YXRjaENoYXJ0QWNjb3VudHMoKTtcbiAgICB0aGlzLndhdGNoQW1vdW50V2l0aEdTVCgpO1xuICAgIHRoaXMud2F0Y2hJc0dzdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSB3YXRjaElzR3N0KCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCdpc0dTVCcpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGlzR1NUOiBib29sZWFuKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUFtb3VudCgpO1xuICAgICAgdGhpcy51cGRhdGVHc3RBbW91bnQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgd2F0Y2hBbW91bnRXaXRoR1NUKCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCdhbW91bnRXaXRoR1NUJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLnVwZGF0ZUFtb3VudCgpO1xuICAgICAgdGhpcy51cGRhdGVHc3RBbW91bnQoKTtcbiAgICB9KTtcbiAgfVxuXG4gIHdhdGNoQ2hhcnRBY2NvdW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgnY2hhcnRBY2NvdW50cycpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHMpID0+IHtcbiAgICAgIC8vIHJlY2FsY3VsYXRlIGNsYWltIHBlcmNlbnQgZm9yIHNlbGVjdGVkIGNoYXJ0IGFjY291bnRzXG4gICAgICB0aGlzLnVwZGF0ZUNsYWltUGVyY2VudChjaGFydEFjY291bnRzKTtcbiAgICAgIGlmICghdGhpcy5pc0dzdEFwcGxpY2FibGUoKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICAvLyB1cGRhdGUgZ3N0IGlmIGFwcGxpY2FibGVcbiAgICAgIGlmIChjaGFydEFjY291bnRzLmlzR1NUKSB7XG4gICAgICAgIHRoaXMuZ2V0KCdpc0dTVCcpLmVuYWJsZSgpO1xuICAgICAgICB0aGlzLmdldCgnaXNHU1QnKS5wYXRjaFZhbHVlKHRydWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5nZXQoJ2lzR1NUJykucGF0Y2hWYWx1ZShmYWxzZSk7XG4gICAgICAgIHRoaXMuZ2V0KCdpc0dTVCcpLmRpc2FibGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlR3N0QW1vdW50KCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCdnc3RBbW91bnQnKS5wYXRjaFZhbHVlKHRoaXMuYW1vdW50V2l0aEdTVCAtIHRoaXMuYW1vdW50KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQW1vdW50KCk6IHZvaWQge1xuICAgIHRoaXMucGF0Y2hGaWVsZCgnYW1vdW50JywgdGhpcy5pc0dTVCA/IHRoaXMuYW1vdW50V2l0aEdTVCAvIENoYXJ0QWNjb3VudHMuR1NUQ29lZmZpY2llbnQgOiB0aGlzLmFtb3VudFdpdGhHU1QpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0dzdEFwcGxpY2FibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5yZWdpc3RlcmVkRm9yR3N0ICYmICEhdGhpcy5tb2RlbC5idXNpbmVzcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IGFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldCgnYW1vdW50JykudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGdldCBhbW91bnRXaXRoR1NUKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCdhbW91bnRXaXRoR1NUJykudmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGdldCBpc0dTVCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldCgnaXNHU1QnKS52YWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBwcm9wZXJ0eUNsYWltUGVyY2VudCBmb3IgcHJvcGVydHlFeHBlbnNlIChleGNlcHQgcGxhdGZvcm0gZmVlcywgd2hpY2ggYWxyZWFkeSBpbmNsdWRlIGNsYWltUGVyY2VudCksXG4gICAqIHRheGFibGVQZXJjZW50IGZvciBvdGhlcnNcbiAgICogY2FuIGJlIGFkanVzdGVkIG9ubHkgZm9yIHByb3BlcnR5L3NvbGUgZXhwZW5zZXNcbiAgICovXG4gIHByaXZhdGUgdXBkYXRlQ2xhaW1QZXJjZW50KGNoYXJ0QWNjb3VudHM6IENoYXJ0QWNjb3VudHMpOiB2b2lkIHtcbiAgICBpZiAoY2hhcnRBY2NvdW50cy5pc0NsYWltUGVyY2VudEVkaXRhYmxlKCkpIHtcbiAgICAgIHRoaXMuZ2V0KCdjbGFpbVBlcmNlbnQnKS5lbmFibGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5nZXQoJ2NsYWltUGVyY2VudCcpLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBwcm9wZXJ0eSBjbGFpbSAob3duZXJzaGlwJSB4IHNoYXJlZCUpIGZvciBwcm9wZXJ0eSBleHBlbnNlcywgdGF4YWJsZSBwZXJjZW50IGZvciBvdGhlcnNcbiAgICBsZXQgY2xhaW1QZXJjZW50ID0gY2hhcnRBY2NvdW50cy50YXhhYmxlUGVyY2VudDtcbiAgICBpZiAoY2hhcnRBY2NvdW50cy5pc1Byb3BlcnR5RXhwZW5zZSgpICYmIGNoYXJ0QWNjb3VudHMuaWQgIT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5QTEFURk9STV9GRUVTKSB7XG4gICAgICBjbGFpbVBlcmNlbnQgKj0gdGhpcy5nZXQoJ3Byb3BlcnR5JykudmFsdWUuY2xhaW1Db2VmZmljaWVudDtcbiAgICB9XG4gICAgdGhpcy5nZXQoJ2NsYWltUGVyY2VudCcpLnNldFZhbHVlKGNsYWltUGVyY2VudCk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,62 @@
1
+ import { Transaction } from '../../models';
2
+ import { TransactionBaseForm } from './transaction-base.form';
3
+ import { autocompleteValidator, currentFinYearValidator, minDateValidator } from '../../validators';
4
+ import { MessagesEnum } from './messages.enum';
5
+ import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
6
+ import { plainToClass } from 'class-transformer';
7
+ import { TransactionSourceEnum } from '../../db/Enums/transaction-source.enum';
8
+ export class TransactionForm extends TransactionBaseForm {
9
+ constructor(transaction, registeredForGst, allocations, controls = {}) {
10
+ super(transaction, registeredForGst, Object.assign(controls, {
11
+ transactions: new UntypedFormArray([]),
12
+ source: new UntypedFormControl(transaction.source || TransactionSourceEnum.BANK_TRANSACTION, Validators.required)
13
+ }));
14
+ this.get('date').addValidators([currentFinYearValidator()]);
15
+ // convert child transactions to controls
16
+ transaction.transactions.map((transaction) => {
17
+ this.addTransactionControl(transaction);
18
+ });
19
+ // forbid to add transactions before property ownership
20
+ if (transaction.property) {
21
+ this.get('date').addValidators(minDateValidator(transaction.property.myShare.fromDate, MessagesEnum.DATE_VALIDATION_ERROR));
22
+ }
23
+ // property income usually comes with fees, add empty control for new transactions
24
+ if (!transaction.id && transaction.property && !transaction.transactions.length && transaction.isCredit()) {
25
+ this.addTransactionControl();
26
+ }
27
+ // forbid to edit amount for allocated transactions to prevent wrong allocations
28
+ if (allocations.length) {
29
+ this.get('amount').disable();
30
+ this.get('date').disable();
31
+ }
32
+ }
33
+ addTransactionControl(transaction = plainToClass(Transaction, {})) {
34
+ const formGroup = new UntypedFormGroup({
35
+ id: new UntypedFormControl(transaction.id),
36
+ chartAccounts: new UntypedFormControl(transaction.chartAccounts, [Validators.required, autocompleteValidator()]),
37
+ amount: new UntypedFormControl(transaction.amount, [Validators.required]),
38
+ });
39
+ this.get('transactions').push(formGroup);
40
+ }
41
+ removeTransactionControl(index) {
42
+ this.get('transactions').removeAt(index);
43
+ }
44
+ /**
45
+ * income transactions might include adjustments (child transactions), like tips or fees.
46
+ * Adjustments inherit most of the fields from parent transaction
47
+ */
48
+ buildTransactions(transaction) {
49
+ return this.get('transactions').value.map((childTransaction) => Object.assign({
50
+ description: childTransaction.chartAccounts?.name,
51
+ date: transaction.date,
52
+ claimPercent: (transaction.claimPercent * childTransaction.chartAccounts?.taxablePercent) / 100,
53
+ source: TransactionSourceEnum.BANK_TRANSACTION,
54
+ incomeSource: transaction.incomeSource,
55
+ property: transaction.property
56
+ }, this.model.transactions.find((transaction) => transaction.id === childTransaction['id']) || {}, childTransaction));
57
+ }
58
+ submit(data = {}) {
59
+ return super.submit(Object.assign(data, { transactions: this.buildTransactions(this.currentValue) }), true);
60
+ }
61
+ }
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQXlCLE1BQU0sY0FBYyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSx1QkFBdUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQW1CLGdCQUFnQixFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUUvRSxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxtQkFBZ0M7SUFDbkUsWUFBWSxXQUF3QixFQUFFLGdCQUF5QixFQUFFLFdBQW9DLEVBQUUsV0FFbkcsRUFBRTtRQUNKLEtBQUssQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDM0QsWUFBWSxFQUFFLElBQUksZ0JBQWdCLENBQUMsRUFBRSxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxNQUFNLElBQUkscUJBQXFCLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNsSCxDQUFDLENBQUMsQ0FBQztRQUNKLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENB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RCxNQUFNLENBQUMsT0FBZSxFQUFFO1FBQ3RCLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5RyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25BbGxvY2F0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQmFzZUZvcm0gfSBmcm9tICcuL3RyYW5zYWN0aW9uLWJhc2UuZm9ybSc7XG5pbXBvcnQgeyBhdXRvY29tcGxldGVWYWxpZGF0b3IsIGN1cnJlbnRGaW5ZZWFyVmFsaWRhdG9yLCBtaW5EYXRlVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycyc7XG5pbXBvcnQgeyBNZXNzYWdlc0VudW0gfSBmcm9tICcuL21lc3NhZ2VzLmVudW0nO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBVbnR5cGVkRm9ybUFycmF5LCBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkZvcm0gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2VGb3JtPFRyYW5zYWN0aW9uPiB7XG4gIGNvbnN0cnVjdG9yKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdDogYm9vbGVhbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdLCBjb250cm9sczoge1xuICAgIFtrZXk6IHN0cmluZ106IEFic3RyYWN0Q29udHJvbFxuICB9ID0ge30pIHtcbiAgICBzdXBlcih0cmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdCwgT2JqZWN0LmFzc2lnbihjb250cm9scywge1xuICAgICAgdHJhbnNhY3Rpb25zOiBuZXcgVW50eXBlZEZvcm1BcnJheShbXSksXG4gICAgICBzb3VyY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uc291cmNlIHx8IFRyYW5zYWN0aW9uU291cmNlRW51bS5CQU5LX1RSQU5TQUNUSU9OLCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxuICAgIH0pKTtcbiAgICB0aGlzLmdldCgnZGF0ZScpLmFkZFZhbGlkYXRvcnMoW2N1cnJlbnRGaW5ZZWFyVmFsaWRhdG9yKCldKTtcblxuICAgIC8vIGNvbnZlcnQgY2hpbGQgdHJhbnNhY3Rpb25zIHRvIGNvbnRyb2xzXG4gICAgdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zLm1hcCgodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLmFkZFRyYW5zYWN0aW9uQ29udHJvbCh0cmFuc2FjdGlvbik7XG4gICAgfSk7XG5cbiAgICAvLyBmb3JiaWQgdG8gYWRkIHRyYW5zYWN0aW9ucyBiZWZvcmUgcHJvcGVydHkgb3duZXJzaGlwXG4gICAgaWYgKHRyYW5zYWN0aW9uLnByb3BlcnR5KSB7XG4gICAgICB0aGlzLmdldCgnZGF0ZScpLmFkZFZhbGlkYXRvcnMoXG4gICAgICAgIG1pbkRhdGVWYWxpZGF0b3IodHJhbnNhY3Rpb24ucHJvcGVydHkubXlTaGFyZS5mcm9tRGF0ZSwgTWVzc2FnZXNFbnVtLkRBVEVfVkFMSURBVElPTl9FUlJPUilcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gcHJvcGVydHkgaW5jb21lIHVzdWFsbHkgY29tZXMgd2l0aCBmZWVzLCBhZGQgZW1wdHkgY29udHJvbCBmb3IgbmV3IHRyYW5zYWN0aW9uc1xuICAgIGlmICghdHJhbnNhY3Rpb24uaWQgJiYgdHJhbnNhY3Rpb24ucHJvcGVydHkgJiYgIXRyYW5zYWN0aW9uLnRyYW5zYWN0aW9ucy5sZW5ndGggJiYgdHJhbnNhY3Rpb24uaXNDcmVkaXQoKSkge1xuICAgICAgdGhpcy5hZGRUcmFuc2FjdGlvbkNvbnRyb2woKTtcbiAgICB9XG5cbiAgICAvLyBmb3JiaWQgdG8gZWRpdCBhbW91bnQgZm9yIGFsbG9jYXRlZCB0cmFuc2FjdGlvbnMgdG8gcHJldmVudCB3cm9uZyBhbGxvY2F0aW9uc1xuICAgIGlmIChhbGxvY2F0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnQnKS5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmdldCgnZGF0ZScpLmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBhZGRUcmFuc2FjdGlvbkNvbnRyb2wodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uID0gcGxhaW5Ub0NsYXNzKFRyYW5zYWN0aW9uLCB7fSkpOiB2b2lkIHtcbiAgICBjb25zdCBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBpZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0cmFuc2FjdGlvbi5pZCksXG4gICAgICBjaGFydEFjY291bnRzOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRyYW5zYWN0aW9uLmNoYXJ0QWNjb3VudHMsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBhdXRvY29tcGxldGVWYWxpZGF0b3IoKV0pLFxuICAgICAgYW1vdW50OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHRyYW5zYWN0aW9uLmFtb3VudCwgW1ZhbGlkYXRvcnMucmVxdWlyZWRdKSxcbiAgICB9KTtcblxuICAgICh0aGlzLmdldCgndHJhbnNhY3Rpb25zJykgYXMgVW50eXBlZEZvcm1BcnJheSkucHVzaChmb3JtR3JvdXApO1xuICB9XG5cbiAgcmVtb3ZlVHJhbnNhY3Rpb25Db250cm9sKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAodGhpcy5nZXQoJ3RyYW5zYWN0aW9ucycpIGFzIFVudHlwZWRGb3JtQXJyYXkpLnJlbW92ZUF0KGluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBpbmNvbWUgdHJhbnNhY3Rpb25zIG1pZ2h0IGluY2x1ZGUgYWRqdXN0bWVudHMgKGNoaWxkIHRyYW5zYWN0aW9ucyksIGxpa2UgdGlwcyBvciBmZWVzLlxuICAgKiBBZGp1c3RtZW50cyBpbmhlcml0IG1vc3Qgb2YgdGhlIGZpZWxkcyBmcm9tIHBhcmVudCB0cmFuc2FjdGlvblxuICAgKi9cbiAgYnVpbGRUcmFuc2FjdGlvbnModHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogVHJhbnNhY3Rpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCd0cmFuc2FjdGlvbnMnKS52YWx1ZS5tYXAoKGNoaWxkVHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiBPYmplY3QuYXNzaWduKFxuICAgICAge1xuICAgICAgICBkZXNjcmlwdGlvbjogY2hpbGRUcmFuc2FjdGlvbi5jaGFydEFjY291bnRzPy5uYW1lLFxuICAgICAgICBkYXRlOiB0cmFuc2FjdGlvbi5kYXRlLFxuICAgICAgICBjbGFpbVBlcmNlbnQ6ICh0cmFuc2FjdGlvbi5jbGFpbVBlcmNlbnQgKiBjaGlsZFRyYW5zYWN0aW9uLmNoYXJ0QWNjb3VudHM/LnRheGFibGVQZXJjZW50KSAvIDEwMCxcbiAgICAgICAgc291cmNlOiBUcmFuc2FjdGlvblNvdXJjZUVudW0uQkFOS19UUkFOU0FDVElPTixcbiAgICAgICAgaW5jb21lU291cmNlOiB0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2UsXG4gICAgICAgIHByb3BlcnR5OiB0cmFuc2FjdGlvbi5wcm9wZXJ0eVxuICAgICAgfSxcbiAgICAgIHRoaXMubW9kZWwudHJhbnNhY3Rpb25zLmZpbmQoKHRyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5pZCA9PT0gY2hpbGRUcmFuc2FjdGlvblsnaWQnXSkgfHwge30sXG4gICAgICBjaGlsZFRyYW5zYWN0aW9uLFxuICAgICkpO1xuICB9XG5cbiAgc3VibWl0KGRhdGE6IG9iamVjdCA9IHt9KTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBzdXBlci5zdWJtaXQoT2JqZWN0LmFzc2lnbihkYXRhLCB7IHRyYW5zYWN0aW9uczogdGhpcy5idWlsZFRyYW5zYWN0aW9ucyh0aGlzLmN1cnJlbnRWYWx1ZSkgfSksIHRydWUpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,46 @@
1
+ import { WorkTransactionForm } from './work-transaction.form';
2
+ import { Collection } from '../../../collections';
3
+ import { ChartAccountsMetaFieldListEnum } from '../../../db/Enums';
4
+ export class WorkExpenseForm extends WorkTransactionForm {
5
+ constructor(transaction, registeredForGst, allocations, homeOfficeClaim, controls = {}) {
6
+ super(transaction, registeredForGst, allocations, controls);
7
+ this.homeOfficeClaim = homeOfficeClaim;
8
+ // amount set automatically for chartAccounts with hours meta field
9
+ if (transaction.getMetaFieldValue(ChartAccountsMetaFieldListEnum.HOURS)) {
10
+ this.get('amount').disable();
11
+ this.get('amountWithGST').disable();
12
+ }
13
+ }
14
+ listenEvents() {
15
+ this.watchChartAccountsMetaFields();
16
+ this.watchChartAccounts();
17
+ }
18
+ watchChartAccountsMetaFields() {
19
+ this.get('metaFields').valueChanges.subscribe((metaFields) => {
20
+ const hoursMetaField = new Collection(metaFields).findBy('chartAccountsMetaField.id', ChartAccountsMetaFieldListEnum.HOURS);
21
+ if (!hoursMetaField) {
22
+ return;
23
+ }
24
+ // for home office hours expense amount is a fixed rate per hour
25
+ const amount = this.get('chartAccounts').value.getCurrentYearValue().value * +hoursMetaField.value;
26
+ this.get('amount').reset();
27
+ this.get('amount').disable();
28
+ this.get('amount').setValue(amount);
29
+ this.get('amountWithGST').reset();
30
+ this.get('amountWithGST').disable();
31
+ this.get('amountWithGST').setValue(amount);
32
+ });
33
+ }
34
+ watchChartAccounts() {
35
+ super.watchChartAccounts();
36
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts) => {
37
+ if (!chartAccounts.isHomeOfficeExpense() || !this.homeOfficeClaim) {
38
+ return;
39
+ }
40
+ const claims = this.homeOfficeClaim.getChartAccountsClaims();
41
+ this.get('claimPercent').patchValue(claims.get(chartAccounts.id));
42
+ this.get('claimPercent').disable();
43
+ });
44
+ }
45
+ }
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1leHBlbnNlLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdHJhbnNhY3Rpb24vd29yay93b3JrLWV4cGVuc2UuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHbkUsTUFBTSxPQUFPLGVBQWdCLFNBQVEsbUJBQW1CO0lBQ3RELFlBQ0UsV0FBd0IsRUFDeEIsZ0JBQXlCLEVBQ3pCLFdBQW9DLEVBQzVCLGVBQWdDLEVBQ3hDLFdBQStDLEVBQUU7UUFFakQsS0FBSyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFIcEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBSXhDLG1FQUFtRTtRQUNuRSxJQUFJLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2RSxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyw0QkFBNEIsRUFBRSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCw0QkFBNEI7UUFDMUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBa0MsRUFBRSxFQUFFO1lBQ25GLE1BQU0sY0FBYyxHQUFHLElBQUksVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQywyQkFBMkIsRUFBRSw4QkFBOEIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1SCxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNuQixPQUFPO2FBQ1I7WUFFRCxnRUFBZ0U7WUFDaEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDO1lBQ25HLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTNCLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQTRCLEVBQUUsRUFBRTtZQUNoRixJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO2dCQUNqRSxPQUFPO2FBQ1I7WUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFFN0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNsRSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7XG4gIENoYXJ0QWNjb3VudHMsXG4gIEhvbWVPZmZpY2VDbGFpbSxcbiAgVHJhbnNhY3Rpb24sXG4gIFRyYW5zYWN0aW9uQWxsb2NhdGlvbixcbiAgVHJhbnNhY3Rpb25NZXRhRmllbGRcbn0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFdvcmtUcmFuc2FjdGlvbkZvcm0gfSBmcm9tICcuL3dvcmstdHJhbnNhY3Rpb24uZm9ybSc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFGaWVsZExpc3RFbnVtIH0gZnJvbSAnLi4vLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgY2xhc3MgV29ya0V4cGVuc2VGb3JtIGV4dGVuZHMgV29ya1RyYW5zYWN0aW9uRm9ybSBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY29uc3RydWN0b3IoXG4gICAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uLFxuICAgIHJlZ2lzdGVyZWRGb3JHc3Q6IGJvb2xlYW4sXG4gICAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdLFxuICAgIHByaXZhdGUgaG9tZU9mZmljZUNsYWltOiBIb21lT2ZmaWNlQ2xhaW0sXG4gICAgY29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogQWJzdHJhY3RDb250cm9sIH0gPSB7fVxuICApIHtcbiAgICBzdXBlcih0cmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdCwgYWxsb2NhdGlvbnMsIGNvbnRyb2xzKTtcbiAgICAvLyBhbW91bnQgc2V0IGF1dG9tYXRpY2FsbHkgZm9yIGNoYXJ0QWNjb3VudHMgd2l0aCBob3VycyBtZXRhIGZpZWxkXG4gICAgaWYgKHRyYW5zYWN0aW9uLmdldE1ldGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhRmllbGRMaXN0RW51bS5IT1VSUykpIHtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnQnKS5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmdldCgnYW1vdW50V2l0aEdTVCcpLmRpc2FibGUoKTtcbiAgICB9XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKSB7XG4gICAgdGhpcy53YXRjaENoYXJ0QWNjb3VudHNNZXRhRmllbGRzKCk7XG4gICAgdGhpcy53YXRjaENoYXJ0QWNjb3VudHMoKTtcbiAgfVxuXG4gIHdhdGNoQ2hhcnRBY2NvdW50c01ldGFGaWVsZHMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ21ldGFGaWVsZHMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChtZXRhRmllbGRzOiBUcmFuc2FjdGlvbk1ldGFGaWVsZFtdKSA9PiB7XG4gICAgICBjb25zdCBob3Vyc01ldGFGaWVsZCA9IG5ldyBDb2xsZWN0aW9uKG1ldGFGaWVsZHMpLmZpbmRCeSgnY2hhcnRBY2NvdW50c01ldGFGaWVsZC5pZCcsIENoYXJ0QWNjb3VudHNNZXRhRmllbGRMaXN0RW51bS5IT1VSUyk7XG4gICAgICBpZiAoIWhvdXJzTWV0YUZpZWxkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gZm9yIGhvbWUgb2ZmaWNlIGhvdXJzIGV4cGVuc2UgYW1vdW50IGlzIGEgZml4ZWQgcmF0ZSBwZXIgaG91clxuICAgICAgY29uc3QgYW1vdW50ID0gdGhpcy5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZS5nZXRDdXJyZW50WWVhclZhbHVlKCkudmFsdWUgKiAraG91cnNNZXRhRmllbGQudmFsdWU7XG4gICAgICB0aGlzLmdldCgnYW1vdW50JykucmVzZXQoKTtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnQnKS5kaXNhYmxlKCk7XG4gICAgICB0aGlzLmdldCgnYW1vdW50Jykuc2V0VmFsdWUoYW1vdW50KTtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnRXaXRoR1NUJykucmVzZXQoKTtcbiAgICAgIHRoaXMuZ2V0KCdhbW91bnRXaXRoR1NUJykuZGlzYWJsZSgpO1xuICAgICAgdGhpcy5nZXQoJ2Ftb3VudFdpdGhHU1QnKS5zZXRWYWx1ZShhbW91bnQpO1xuICAgIH0pO1xuICB9XG5cbiAgd2F0Y2hDaGFydEFjY291bnRzKCkge1xuICAgIHN1cGVyLndhdGNoQ2hhcnRBY2NvdW50cygpO1xuXG4gICAgdGhpcy5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKChjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzKSA9PiB7XG4gICAgICBpZiAoIWNoYXJ0QWNjb3VudHMuaXNIb21lT2ZmaWNlRXhwZW5zZSgpIHx8ICF0aGlzLmhvbWVPZmZpY2VDbGFpbSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGNsYWltcyA9IHRoaXMuaG9tZU9mZmljZUNsYWltLmdldENoYXJ0QWNjb3VudHNDbGFpbXMoKTtcblxuICAgICAgdGhpcy5nZXQoJ2NsYWltUGVyY2VudCcpLnBhdGNoVmFsdWUoY2xhaW1zLmdldChjaGFydEFjY291bnRzLmlkKSk7XG4gICAgICB0aGlzLmdldCgnY2xhaW1QZXJjZW50JykuZGlzYWJsZSgpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,90 @@
1
+ import { IncomeSource, } from '../../../models';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { autocompleteValidator } from '../../../validators';
4
+ import { Collection } from '../../../collections';
5
+ import { TransactionOperationEnum } from '../../../db/Enums/transaction-operation.enum';
6
+ import { WorkTransactionForm } from './work-transaction.form';
7
+ export class WorkIncomeForm extends WorkTransactionForm {
8
+ constructor(transaction, registeredForGst, allocations) {
9
+ super(transaction, registeredForGst, allocations, {
10
+ tax: new UntypedFormControl({
11
+ value: transaction.tax,
12
+ disabled: !transaction.chartAccounts || transaction.chartAccounts.isNRAS(),
13
+ }, Validators.required),
14
+ incomeSource: new UntypedFormControl(transaction.incomeSource, [Validators.required, autocompleteValidator()]),
15
+ });
16
+ // @TODO we use amount field as netAmount to avoid extra watcher for amount recalculation
17
+ if (transaction.id) {
18
+ this.get('amount').setValue(transaction.netAmount);
19
+ }
20
+ // forbid to edit some fields for allocated transaction
21
+ if (allocations.length) {
22
+ this.get('chartAccounts').disable();
23
+ }
24
+ // adjustments allowed only for salary
25
+ if (!transaction.chartAccounts?.isSalary()) {
26
+ this.get('transactions').disable();
27
+ }
28
+ // amount changes are not available for transactions with allocations or during allocate process
29
+ if (allocations.length || transaction.operation === TransactionOperationEnum.ALLOCATE) {
30
+ this.get('amount').disable();
31
+ }
32
+ // prefill tax value for preselected salary income source in case if we have at least 1 salaryForecast
33
+ if (!this.get('tax').value && transaction.incomeSource && transaction.incomeSource.isWorkIncome()
34
+ && transaction.incomeSource.salaryForecasts.length) {
35
+ this.updateTaxValue(transaction.incomeSource.salaryForecasts[0]);
36
+ }
37
+ this.listenEvents();
38
+ }
39
+ listenEvents() {
40
+ super.listenEvents();
41
+ this.watchIncomeSource();
42
+ }
43
+ watchIncomeSource() {
44
+ this.get('incomeSource').valueChanges.subscribe((incomeSource) => {
45
+ // prefill salary tax with its income source forecast in case if we have at least 1 salaryForecast
46
+ if (incomeSource instanceof IncomeSource && incomeSource.isWorkIncome() && !this.get('tax').value
47
+ && incomeSource.salaryForecasts.length) {
48
+ this.updateTaxValue(incomeSource.salaryForecasts[0]);
49
+ }
50
+ });
51
+ }
52
+ updateTaxValue(salaryForecast) {
53
+ this.get('tax').setValue(salaryForecast.taxWithheld);
54
+ }
55
+ watchChartAccounts() {
56
+ super.watchChartAccounts();
57
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts) => {
58
+ // tax make no sense for pre-paying tax category
59
+ if (chartAccounts.isNRAS()) {
60
+ this.get('tax').disable();
61
+ }
62
+ else {
63
+ this.get('tax').enable();
64
+ }
65
+ // adjustments possible only for salary chartAccounts
66
+ if (chartAccounts.isSalary()) {
67
+ this.get('transactions').enable();
68
+ }
69
+ else {
70
+ this.get('transactions').disable();
71
+ }
72
+ });
73
+ }
74
+ /**
75
+ * salary comes to bankAccount together with related transactions like tips (kind of salary, but reported in different tax summary section),
76
+ * adjustments used to clarify received payment by separating it into multiple transactions,
77
+ * netAmount always match received payment and includes related adjustments
78
+ * amount calculated as netAmount - salary included adjustments
79
+ * ie bankTransaction=1000$ with 900$ salary and 100$ tips will create 2 transactions with 900$ and 100$
80
+ */
81
+ getAmount() {
82
+ return this.get('amount').value - new Collection(this.currentValue.transactions)
83
+ .filter((t) => t.chartAccounts?.isAdjustmentIncluded())
84
+ .sumBy('amount');
85
+ }
86
+ submit(data = {}) {
87
+ return super.submit(Object.assign(data, { amount: this.getAmount() }));
88
+ }
89
+ }
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay1pbmNvbWUuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy90cmFuc2FjdGlvbi93b3JrL3dvcmstaW5jb21lLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFlBQVksR0FHYixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDeEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFOUQsTUFBTSxPQUFPLGNBQWUsU0FBUSxtQkFBbUI7SUFDckQsWUFBWSxXQUF3QixFQUFFLGdCQUF5QixFQUFFLFdBQW9DO1FBQ25HLEtBQUssQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFO1lBQ2hELEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDO2dCQUMxQixLQUFLLEVBQUUsV0FBVyxDQUFDLEdBQUc7Z0JBQ3RCLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxhQUFhLElBQUksV0FBVyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUU7YUFDM0UsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZCLFlBQVksRUFBRSxJQUFJLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLHFCQUFxQixFQUFFLENBQUMsQ0FBQztTQUMvRyxDQUFDLENBQUM7UUFDSCx5RkFBeUY7UUFDekYsSUFBSSxXQUFXLENBQUMs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QyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxHQUFHLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDO2FBQzdFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO2FBQ3RELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsTUFBTSxDQUFDLE9BQWUsRUFBRTtRQUN0QixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYXJ0QWNjb3VudHMsXG4gIEluY29tZVNvdXJjZSwgU2FsYXJ5Rm9yZWNhc3QsXG4gIFRyYW5zYWN0aW9uLFxuICBUcmFuc2FjdGlvbkFsbG9jYXRpb24sXG59IGZyb20gJy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgYXV0b2NvbXBsZXRlVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vLi4vdmFsaWRhdG9ycyc7XG5pbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgV29ya1RyYW5zYWN0aW9uRm9ybSB9IGZyb20gJy4vd29yay10cmFuc2FjdGlvbi5mb3JtJztcblxuZXhwb3J0IGNsYXNzIFdvcmtJbmNvbWVGb3JtIGV4dGVuZHMgV29ya1RyYW5zYWN0aW9uRm9ybSBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgY29uc3RydWN0b3IodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uLCByZWdpc3RlcmVkRm9yR3N0OiBib29sZWFuLCBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uW10pIHtcbiAgICBzdXBlcih0cmFuc2FjdGlvbiwgcmVnaXN0ZXJlZEZvckdzdCwgYWxsb2NhdGlvbnMsIHtcbiAgICAgIHRheDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7XG4gICAgICAgIHZhbHVlOiB0cmFuc2FjdGlvbi50YXgsXG4gICAgICAgIGRpc2FibGVkOiAhdHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cyB8fCB0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzLmlzTlJBUygpLFxuICAgICAgfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBpbmNvbWVTb3VyY2U6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodHJhbnNhY3Rpb24uaW5jb21lU291cmNlLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgYXV0b2NvbXBsZXRlVmFsaWRhdG9yKCldKSxcbiAgICB9KTtcbiAgICAvLyBAVE9ETyB3ZSB1c2UgYW1vdW50IGZpZWxkIGFzIG5ldEFtb3VudCB0byBhdm9pZCBleHRyYSB3YXRjaGVyIGZvciBhbW91bnQgcmVjYWxjdWxhdGlvblxuICAgIGlmICh0cmFuc2FjdGlvbi5pZCkge1xuICAgICAgdGhpcy5nZXQoJ2Ftb3VudCcpLnNldFZhbHVlKHRyYW5zYWN0aW9uLm5ldEFtb3VudCk7XG4gICAgfVxuXG4gICAgLy8gZm9yYmlkIHRvIGVkaXQgc29tZSBmaWVsZHMgZm9yIGFsbG9jYXRlZCB0cmFuc2FjdGlvblxuICAgIGlmIChhbGxvY2F0aW9ucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZ2V0KCdjaGFydEFjY291bnRzJykuZGlzYWJsZSgpO1xuICAgIH1cbiAgICAvLyBhZGp1c3RtZW50cyBhbGxvd2VkIG9ubHkgZm9yIHNhbGFyeVxuICAgIGlmICghdHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cz8uaXNTYWxhcnkoKSkge1xuICAgICAgdGhpcy5nZXQoJ3RyYW5zYWN0aW9ucycpLmRpc2FibGUoKTtcbiAgICB9XG4gICAgLy8gYW1vdW50IGNoYW5nZXMgYXJlIG5vdCBhdmFpbGFibGUgZm9yIHRyYW5zYWN0aW9ucyB3aXRoIGFsbG9jYXRpb25zIG9yIGR1cmluZyBhbGxvY2F0ZSBwcm9jZXNzXG4gICAgaWYgKGFsbG9jYXRpb25zLmxlbmd0aCB8fCB0cmFuc2FjdGlvbi5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5BTExPQ0FURSkge1xuICAgICAgdGhpcy5nZXQoJ2Ftb3VudCcpLmRpc2FibGUoKTtcbiAgICB9XG5cbiAgICAvLyBwcmVmaWxsIHRheCB2YWx1ZSBmb3IgcHJlc2VsZWN0ZWQgc2FsYXJ5IGluY29tZSBzb3VyY2UgaW4gY2FzZSBpZiB3ZSBoYXZlIGF0IGxlYXN0IDEgc2FsYXJ5Rm9yZWNhc3RcbiAgICBpZiAoIXRoaXMuZ2V0KCd0YXgnKS52YWx1ZSAmJiB0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2UgJiYgdHJhbnNhY3Rpb24uaW5jb21lU291cmNlLmlzV29ya0luY29tZSgpXG4gICAgICAmJiB0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2Uuc2FsYXJ5Rm9yZWNhc3RzLmxlbmd0aCkge1xuICAgICAgdGhpcy51cGRhdGVUYXhWYWx1ZSh0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2Uuc2FsYXJ5Rm9yZWNhc3RzWzBdKTtcbiAgICB9XG5cbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCkge1xuICAgIHN1cGVyLmxpc3RlbkV2ZW50cygpO1xuICAgIHRoaXMud2F0Y2hJbmNvbWVTb3VyY2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgd2F0Y2hJbmNvbWVTb3VyY2UoKTogdm9pZCB7XG4gICAgdGhpcy5nZXQoJ2luY29tZVNvdXJjZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGluY29tZVNvdXJjZTogc3RyaW5nIHwgSW5jb21lU291cmNlKTogdm9pZCA9PiB7XG4gICAgICAvLyBwcmVmaWxsIHNhbGFyeSB0YXggd2l0aCBpdHMgaW5jb21lIHNvdXJjZSBmb3JlY2FzdCBpbiBjYXNlIGlmIHdlIGhhdmUgYXQgbGVhc3QgMSBzYWxhcnlGb3JlY2FzdFxuICAgICAgaWYgKGluY29tZVNvdXJjZSBpbnN0YW5jZW9mIEluY29tZVNvdXJjZSAmJiBpbmNvbWVTb3VyY2UuaXNXb3JrSW5jb21lKCkgJiYgIXRoaXMuZ2V0KCd0YXgnKS52YWx1ZVxuICAgICAgICAmJiBpbmNvbWVTb3VyY2Uuc2FsYXJ5Rm9yZWNhc3RzLmxlbmd0aCkge1xuICAgICAgICB0aGlzLnVwZGF0ZVRheFZhbHVlKGluY29tZVNvdXJjZS5zYWxhcnlGb3JlY2FzdHNbMF0pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVUYXhWYWx1ZShzYWxhcnlGb3JlY2FzdDogU2FsYXJ5Rm9yZWNhc3QpOiB2b2lkIHtcbiAgICB0aGlzLmdldCgndGF4Jykuc2V0VmFsdWUoc2FsYXJ5Rm9yZWNhc3QudGF4V2l0aGhlbGQpO1xuICB9XG5cbiAgd2F0Y2hDaGFydEFjY291bnRzKCk6IHZvaWQge1xuICAgIHN1cGVyLndhdGNoQ2hhcnRBY2NvdW50cygpO1xuICAgIHRoaXMuZ2V0KCdjaGFydEFjY291bnRzJykudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoY2hhcnRBY2NvdW50czogQ2hhcnRBY2NvdW50cykgPT4ge1xuICAgICAgLy8gdGF4IG1ha2Ugbm8gc2Vuc2UgZm9yIHByZS1wYXlpbmcgdGF4IGNhdGVnb3J5XG4gICAgICBpZiAoY2hhcnRBY2NvdW50cy5pc05SQVMoKSkge1xuICAgICAgICB0aGlzLmdldCgndGF4JykuZGlzYWJsZSgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5nZXQoJ3RheCcpLmVuYWJsZSgpO1xuICAgICAgfVxuXG4gICAgICAvLyBhZGp1c3RtZW50cyBwb3NzaWJsZSBvbmx5IGZvciBzYWxhcnkgY2hhcnRBY2NvdW50c1xuICAgICAgaWYgKGNoYXJ0QWNjb3VudHMuaXNTYWxhcnkoKSkge1xuICAgICAgICB0aGlzLmdldCgndHJhbnNhY3Rpb25zJykuZW5hYmxlKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmdldCgndHJhbnNhY3Rpb25zJykuZGlzYWJsZSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIHNhbGFyeSBjb21lcyB0byBiYW5rQWNjb3VudCB0b2dldGhlciB3aXRoIHJlbGF0ZWQgdHJhbnNhY3Rpb25zIGxpa2UgdGlwcyAoa2luZCBvZiBzYWxhcnksIGJ1dCByZXBvcnRlZCBpbiBkaWZmZXJlbnQgdGF4IHN1bW1hcnkgc2VjdGlvbiksXG4gICAqIGFkanVzdG1lbnRzIHVzZWQgdG8gY2xhcmlmeSByZWNlaXZlZCBwYXltZW50IGJ5IHNlcGFyYXRpbmcgaXQgaW50byBtdWx0aXBsZSB0cmFuc2FjdGlvbnMsXG4gICAqIG5ldEFtb3VudCBhbHdheXMgbWF0Y2ggcmVjZWl2ZWQgcGF5bWVudCBhbmQgaW5jbHVkZXMgcmVsYXRlZCBhZGp1c3RtZW50c1xuICAgKiBhbW91bnQgY2FsY3VsYXRlZCBhcyBuZXRBbW91bnQgLSBzYWxhcnkgaW5jbHVkZWQgYWRqdXN0bWVudHNcbiAgICogaWUgYmFua1RyYW5zYWN0aW9uPTEwMDAkIHdpdGggOTAwJCBzYWxhcnkgYW5kIDEwMCQgdGlwcyB3aWxsIGNyZWF0ZSAyIHRyYW5zYWN0aW9ucyB3aXRoIDkwMCQgYW5kIDEwMCRcbiAgICovXG4gIGdldEFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldCgnYW1vdW50JykudmFsdWUgLSBuZXcgQ29sbGVjdGlvbih0aGlzLmN1cnJlbnRWYWx1ZS50cmFuc2FjdGlvbnMpXG4gICAgICAuZmlsdGVyKCh0KSA9PiB0LmNoYXJ0QWNjb3VudHM/LmlzQWRqdXN0bWVudEluY2x1ZGVkKCkpXG4gICAgICAuc3VtQnkoJ2Ftb3VudCcpO1xuICB9XG5cbiAgc3VibWl0KGRhdGE6IG9iamVjdCA9IHt9KTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiBzdXBlci5zdWJtaXQoT2JqZWN0LmFzc2lnbihkYXRhLCB7IGFtb3VudDogdGhpcy5nZXRBbW91bnQoKSB9KSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,38 @@
1
+ import { TransactionForm } from '../transaction.form';
2
+ import { FormArray, FormControl, FormGroup } from '@angular/forms';
3
+ export class WorkTransactionForm extends TransactionForm {
4
+ constructor(transaction, registeredForGst, allocations, controls = {}) {
5
+ super(transaction, registeredForGst, allocations, Object.assign(controls, {
6
+ // additional data related to work (like tax instalments)
7
+ metaFields: new FormArray((transaction.metaFields || []).map((transactionMetaField) => new FormGroup({
8
+ value: new FormControl(transactionMetaField.value),
9
+ chartAccountsMetaField: new FormControl(transactionMetaField.chartAccountsMetaField)
10
+ })))
11
+ }));
12
+ this.listenEvents();
13
+ }
14
+ listenEvents() {
15
+ this.watchChartAccounts();
16
+ }
17
+ watchChartAccounts() {
18
+ super.watchChartAccounts();
19
+ this.get('chartAccounts').valueChanges.subscribe(() => {
20
+ this.buildMetaFieldsForm();
21
+ });
22
+ }
23
+ /**
24
+ * depends on chartAccounts the form could include different extra fields
25
+ */
26
+ buildMetaFieldsForm() {
27
+ // Remove all controls in the FormArray before pushing
28
+ this.get('metaFields').clear();
29
+ // create form controls for each metaField object from selected chart accounts
30
+ (this.get('chartAccounts').value.metaFields).forEach((chartAccountsMetaField) => {
31
+ this.get('metaFields').push(new FormGroup({
32
+ value: new FormControl(chartAccountsMetaField.isSharePercentage() ? 100 : 0),
33
+ chartAccountsMetaField: new FormControl(chartAccountsMetaField),
34
+ }));
35
+ });
36
+ }
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29yay10cmFuc2FjdGlvbi5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3RyYW5zYWN0aW9uL3dvcmsvd29yay10cmFuc2FjdGlvbi5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQVF0RCxPQUFPLEVBQW1CLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFcEYsTUFBTSxPQUFnQixtQkFBb0IsU0FBUSxlQUFlO0lBQy9ELFlBQ0UsV0FBd0IsRUFDeEIsZ0JBQXlCLEVBQ3pCLFdBQW9DLEVBQ3BDLFdBQStDLEVBQUU7UUFFakQsS0FBSyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDeEUseURBQXlEO1lBQ3pELFVBQVUsRUFBRSxJQUFJLFNBQVMsQ0FDdkIsQ0FBQyxXQUFXLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLG9CQUEwQyxFQUFhLEVBQUUsQ0FBQyxJQUFJLFNBQVMsQ0FBQztnQkFDMUcsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQztnQkFDbEQsc0JBQXNCLEVBQUUsSUFBSSxXQUFXLENBQUMsb0JBQW9CLENBQUMsc0JBQXNCLENBQUM7YUFDckYsQ0FBQyxDQUFDLENBQ0o7U0FDRixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFFM0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNwRCxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNLLG1CQUFtQjtRQUN6QixzREFBc0Q7UUFDckQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUU5Qyw4RUFBOEU7UUFDOUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxzQkFBOEMsRUFBUSxFQUFFO1lBQzNHLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFlLENBQUMsSUFBSSxDQUN4QyxJQUFJLFNBQVMsQ0FBQztnQkFDWixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzVFLHNCQUFzQixFQUFFLElBQUksV0FBVyxDQUFDLHNCQUFzQixDQUFDO2FBQ2hFLENBQUMsQ0FDSCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbkZvcm0gfSBmcm9tICcuLi90cmFuc2FjdGlvbi5mb3JtJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQge1xuICBDaGFydEFjY291bnRzTWV0YUZpZWxkLFxuICBUcmFuc2FjdGlvbixcbiAgVHJhbnNhY3Rpb25BbGxvY2F0aW9uLFxuICBUcmFuc2FjdGlvbk1ldGFGaWVsZFxufSBmcm9tICcuLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBXb3JrVHJhbnNhY3Rpb25Gb3JtIGV4dGVuZHMgVHJhbnNhY3Rpb25Gb3JtIGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uLFxuICAgIHJlZ2lzdGVyZWRGb3JHc3Q6IGJvb2xlYW4sXG4gICAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdLFxuICAgIGNvbnRyb2xzOiB7IFtrZXk6IHN0cmluZ106IEFic3RyYWN0Q29udHJvbCB9ID0ge31cbiAgKSB7XG4gICAgc3VwZXIodHJhbnNhY3Rpb24sIHJlZ2lzdGVyZWRGb3JHc3QsIGFsbG9jYXRpb25zLCBPYmplY3QuYXNzaWduKGNvbnRyb2xzLCB7XG4gICAgICAvLyBhZGRpdGlvbmFsIGRhdGEgcmVsYXRlZCB0byB3b3JrIChsaWtlIHRheCBpbnN0YWxtZW50cylcbiAgICAgIG1ldGFGaWVsZHM6IG5ldyBGb3JtQXJyYXkoXG4gICAgICAgICh0cmFuc2FjdGlvbi5tZXRhRmllbGRzIHx8IFtdKS5tYXAoKHRyYW5zYWN0aW9uTWV0YUZpZWxkOiBUcmFuc2FjdGlvbk1ldGFGaWVsZCk6IEZvcm1Hcm91cCA9PiBuZXcgRm9ybUdyb3VwKHtcbiAgICAgICAgICB2YWx1ZTogbmV3IEZvcm1Db250cm9sKHRyYW5zYWN0aW9uTWV0YUZpZWxkLnZhbHVlKSxcbiAgICAgICAgICBjaGFydEFjY291bnRzTWV0YUZpZWxkOiBuZXcgRm9ybUNvbnRyb2wodHJhbnNhY3Rpb25NZXRhRmllbGQuY2hhcnRBY2NvdW50c01ldGFGaWVsZClcbiAgICAgICAgfSkpXG4gICAgICApXG4gICAgfSkpO1xuXG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIGxpc3RlbkV2ZW50cygpIHtcbiAgICB0aGlzLndhdGNoQ2hhcnRBY2NvdW50cygpO1xuICB9XG5cbiAgd2F0Y2hDaGFydEFjY291bnRzKCk6IHZvaWQge1xuICAgIHN1cGVyLndhdGNoQ2hhcnRBY2NvdW50cygpO1xuXG4gICAgdGhpcy5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuYnVpbGRNZXRhRmllbGRzRm9ybSgpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGRlcGVuZHMgb24gY2hhcnRBY2NvdW50cyB0aGUgZm9ybSBjb3VsZCBpbmNsdWRlIGRpZmZlcmVudCBleHRyYSBmaWVsZHNcbiAgICovXG4gIHByaXZhdGUgYnVpbGRNZXRhRmllbGRzRm9ybSgpOiB2b2lkIHtcbiAgICAvLyBSZW1vdmUgYWxsIGNvbnRyb2xzIGluIHRoZSBGb3JtQXJyYXkgYmVmb3JlIHB1c2hpbmdcbiAgICAodGhpcy5nZXQoJ21ldGFGaWVsZHMnKSBhcyBGb3JtQXJyYXkpLmNsZWFyKCk7XG5cbiAgICAvLyBjcmVhdGUgZm9ybSBjb250cm9scyBmb3IgZWFjaCBtZXRhRmllbGQgb2JqZWN0IGZyb20gc2VsZWN0ZWQgY2hhcnQgYWNjb3VudHNcbiAgICAodGhpcy5nZXQoJ2NoYXJ0QWNjb3VudHMnKS52YWx1ZS5tZXRhRmllbGRzKS5mb3JFYWNoKChjaGFydEFjY291bnRzTWV0YUZpZWxkOiBDaGFydEFjY291bnRzTWV0YUZpZWxkKTogdm9pZCA9PiB7XG4gICAgICAodGhpcy5nZXQoJ21ldGFGaWVsZHMnKSBhcyBGb3JtQXJyYXkpLnB1c2goXG4gICAgICAgIG5ldyBGb3JtR3JvdXAoe1xuICAgICAgICAgIHZhbHVlOiBuZXcgRm9ybUNvbnRyb2woY2hhcnRBY2NvdW50c01ldGFGaWVsZC5pc1NoYXJlUGVyY2VudGFnZSgpID8gMTAwIDogMCksXG4gICAgICAgICAgY2hhcnRBY2NvdW50c01ldGFGaWVsZDogbmV3IEZvcm1Db250cm9sKGNoYXJ0QWNjb3VudHNNZXRhRmllbGQpLFxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,35 @@
1
+ import { UntypedFormControl, Validators } from '@angular/forms';
2
+ import { autocompleteValidator } from '../../validators';
3
+ import { UserMedicareExemptionEnum } from '../../db/Enums/user-medicare-exemption.enum';
4
+ import { AbstractForm } from '../abstract.form';
5
+ export class ClientDetailsForm extends AbstractForm {
6
+ constructor(clientDetails) {
7
+ super({
8
+ isAustralianResident: new UntypedFormControl(clientDetails.isAustralianResident),
9
+ taxFileNumber: new UntypedFormControl({ value: clientDetails.taxFileNumber, disabled: !!clientDetails.taxFileNumber }, [Validators.minLength(8), Validators.maxLength(10)]),
10
+ occupation: new UntypedFormControl(clientDetails.occupation, autocompleteValidator()),
11
+ timezone: new UntypedFormControl(clientDetails.timezone, Validators.required),
12
+ medicareExemption: new UntypedFormControl({ value: clientDetails.medicareExemption, disabled: !clientDetails.medicareExemption }, Validators.required),
13
+ pensionersTax: new UntypedFormControl(clientDetails.pensionersTax),
14
+ workingHolidayMaker: new UntypedFormControl(clientDetails.workingHolidayMaker)
15
+ }), clientDetails;
16
+ }
17
+ toggleMedicareExemption(enabled) {
18
+ const control = this.get('medicareExemption');
19
+ // @TODO Alex/Vik: think about FormControl extension and implement control.toggle() method
20
+ // then we can optimize the code:
21
+ // control.setValue(enabled ? null : UserMedicareExemptionEnum.NO)
22
+ // control.toggle(enabled);
23
+ if (enabled) {
24
+ control.setValue(null);
25
+ control.enable();
26
+ return;
27
+ }
28
+ control.setValue(UserMedicareExemptionEnum.NO);
29
+ control.disable();
30
+ }
31
+ submit() {
32
+ return super.submit({}, true);
33
+ }
34
+ }
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWRldGFpbHMuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy91c2VyL2NsaWVudC1kZXRhaWxzLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsWUFBMkI7SUFDaEUsWUFBWSxhQUE0QjtRQUN0QyxLQUFLLENBQUM7WUFDSixvQkFBb0IsRUFBRSxJQUFJLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQztZQUNoRixhQUFhLEVBQUUsSUFBSSxrQkFBa0IsQ0FDbkMsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsRUFDL0UsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDcEQ7WUFDRCxVQUFVLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLHFCQUFxQixFQUFFLENBQUM7WUFDckYsUUFBUSxFQUFFLElBQUksa0JBQWtCLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzdFLGlCQUFpQixFQUFFLElBQUksa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsRUFBRSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDdEosYUFBYSxFQUFFLElBQUksa0JBQWtCLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQztZQUNsRSxtQkFBbUIsRUFBRSxJQUFJLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQztTQUMvRSxDQUFDLEVBQUUsYUFBYSxDQUFDO0lBQ3BCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxPQUFnQjtRQUN0QyxNQUFNLE9BQU8sR0FBdUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBdUIsQ0FBQztRQUV4RiwwRkFBMEY7UUFDMUYsaUNBQWlDO1FBQ2pDLGtFQUFrRTtRQUNsRSwyQkFBMkI7UUFFM0IsSUFBSSxPQUFPLEVBQUU7WUFDWCxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUVqQixPQUFPO1NBQ1I7UUFFRCxPQUFPLENBQUMsUUFBUSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2xpZW50RGV0YWlscyB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBhdXRvY29tcGxldGVWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzJztcbmltcG9ydCB7IFVzZXJNZWRpY2FyZUV4ZW1wdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy91c2VyLW1lZGljYXJlLWV4ZW1wdGlvbi5lbnVtJztcbmltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuXG5leHBvcnQgY2xhc3MgQ2xpZW50RGV0YWlsc0Zvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08Q2xpZW50RGV0YWlscz4ge1xuICBjb25zdHJ1Y3RvcihjbGllbnREZXRhaWxzOiBDbGllbnREZXRhaWxzKSB7XG4gICAgc3VwZXIoe1xuICAgICAgaXNBdXN0cmFsaWFuUmVzaWRlbnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY2xpZW50RGV0YWlscy5pc0F1c3RyYWxpYW5SZXNpZGVudCksXG4gICAgICB0YXhGaWxlTnVtYmVyOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKFxuICAgICAgICB7IHZhbHVlOiBjbGllbnREZXRhaWxzLnRheEZpbGVOdW1iZXIsIGRpc2FibGVkOiAhIWNsaWVudERldGFpbHMudGF4RmlsZU51bWJlciB9LFxuICAgICAgICBbVmFsaWRhdG9ycy5taW5MZW5ndGgoOCksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDEwKV1cbiAgICAgICksXG4gICAgICBvY2N1cGF0aW9uOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGNsaWVudERldGFpbHMub2NjdXBhdGlvbiwgYXV0b2NvbXBsZXRlVmFsaWRhdG9yKCkpLFxuICAgICAgdGltZXpvbmU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woY2xpZW50RGV0YWlscy50aW1lem9uZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBtZWRpY2FyZUV4ZW1wdGlvbjogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7IHZhbHVlOiBjbGllbnREZXRhaWxzLm1lZGljYXJlRXhlbXB0aW9uLCBkaXNhYmxlZDogIWNsaWVudERldGFpbHMubWVkaWNhcmVFeGVtcHRpb24gfSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBwZW5zaW9uZXJzVGF4OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGNsaWVudERldGFpbHMucGVuc2lvbmVyc1RheCksXG4gICAgICB3b3JraW5nSG9saWRheU1ha2VyOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKGNsaWVudERldGFpbHMud29ya2luZ0hvbGlkYXlNYWtlcilcbiAgICB9KSwgY2xpZW50RGV0YWlscztcbiAgfVxuXG4gIHRvZ2dsZU1lZGljYXJlRXhlbXB0aW9uKGVuYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBjb250cm9sOiBVbnR5cGVkRm9ybUNvbnRyb2wgPSB0aGlzLmdldCgnbWVkaWNhcmVFeGVtcHRpb24nKSBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XG5cbiAgICAvLyBAVE9ETyBBbGV4L1ZpazogdGhpbmsgYWJvdXQgRm9ybUNvbnRyb2wgZXh0ZW5zaW9uIGFuZCBpbXBsZW1lbnQgY29udHJvbC50b2dnbGUoKSBtZXRob2RcbiAgICAvLyB0aGVuIHdlIGNhbiBvcHRpbWl6ZSB0aGUgY29kZTpcbiAgICAvLyBjb250cm9sLnNldFZhbHVlKGVuYWJsZWQgPyBudWxsIDogVXNlck1lZGljYXJlRXhlbXB0aW9uRW51bS5OTylcbiAgICAvLyBjb250cm9sLnRvZ2dsZShlbmFibGVkKTtcblxuICAgIGlmIChlbmFibGVkKSB7XG4gICAgICBjb250cm9sLnNldFZhbHVlKG51bGwpO1xuICAgICAgY29udHJvbC5lbmFibGUoKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnRyb2wuc2V0VmFsdWUoVXNlck1lZGljYXJlRXhlbXB0aW9uRW51bS5OTyk7XG4gICAgY29udHJvbC5kaXNhYmxlKCk7XG4gIH1cblxuICBzdWJtaXQoKTogQ2xpZW50RGV0YWlscyB7XG4gICAgcmV0dXJuIHN1cGVyLnN1Ym1pdCh7fSwgdHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ export * from './password.form';
2
+ export * from './reset-password.form';
3
+ export * from './user-invite.form';
4
+ export * from './user.form';
5
+ export * from './client-details.form';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdXNlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wYXNzd29yZC5mb3JtJztcbmV4cG9ydCAqIGZyb20gJy4vcmVzZXQtcGFzc3dvcmQuZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL3VzZXItaW52aXRlLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi9jbGllbnQtZGV0YWlscy5mb3JtJztcbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { passwordValidator } from '../../validators/password.validator';
4
+ import { passwordMatchValidator } from '../../validators/password-match.validator';
5
+ // @TODO Alex: Create a model and handle request fields via class-transformer
6
+ export class PasswordForm extends AbstractForm {
7
+ constructor() {
8
+ super({
9
+ password: new UntypedFormControl(null, [Validators.required, passwordValidator()]),
10
+ confirm: new UntypedFormControl(null, Validators.required),
11
+ }, { password: null, confirm: null }, passwordMatchValidator('password', 'confirm'));
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFzc3dvcmQuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy91c2VyL3Bhc3N3b3JkLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUVuRiw2RUFBNkU7QUFDN0UsTUFBTSxPQUFPLFlBQWEsU0FBUSxZQUFpRDtJQUNqRjtRQUNFLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1lBQ2xGLE9BQU8sRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1NBQzNELEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUMsRUFBRSxzQkFBc0IsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNyRixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHBhc3N3b3JkVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycy9wYXNzd29yZC52YWxpZGF0b3InO1xuaW1wb3J0IHsgcGFzc3dvcmRNYXRjaFZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvcGFzc3dvcmQtbWF0Y2gudmFsaWRhdG9yJztcblxuLy8gQFRPRE8gQWxleDogQ3JlYXRlIGEgbW9kZWwgYW5kIGhhbmRsZSByZXF1ZXN0IGZpZWxkcyB2aWEgY2xhc3MtdHJhbnNmb3JtZXJcbmV4cG9ydCBjbGFzcyBQYXNzd29yZEZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08e3Bhc3N3b3JkOiBzdHJpbmcsIGNvbmZpcm06IHN0cmluZ30+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoe1xuICAgICAgcGFzc3dvcmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIHBhc3N3b3JkVmFsaWRhdG9yKCldKSxcbiAgICAgIGNvbmZpcm06IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgfSwge3Bhc3N3b3JkOiBudWxsLCBjb25maXJtOiBudWxsfSwgcGFzc3dvcmRNYXRjaFZhbGlkYXRvcigncGFzc3dvcmQnLCAnY29uZmlybScpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,11 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ // @TODO Alex: Create a model and handle request fields via class-transformer
4
+ export class ResetPasswordForm extends AbstractForm {
5
+ constructor() {
6
+ super({
7
+ email: new UntypedFormControl(null, [Validators.required, Validators.email]),
8
+ });
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzZXQtcGFzc3dvcmQuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy91c2VyL3Jlc2V0LXBhc3N3b3JkLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSw2RUFBNkU7QUFDN0UsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFlBQTZCO0lBQ2xFO1FBQ0UsS0FBSyxDQUFDO1lBQ0osS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0UsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vIEBUT0RPIEFsZXg6IENyZWF0ZSBhIG1vZGVsIGFuZCBoYW5kbGUgcmVxdWVzdCBmaWVsZHMgdmlhIGNsYXNzLXRyYW5zZm9ybWVyXG5leHBvcnQgY2xhc3MgUmVzZXRQYXNzd29yZEZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08e2VtYWlsOiBzdHJpbmd9PiB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKHtcbiAgICAgIGVtYWlsOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsXSksXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { RegistrationInvite } from '../../models/registration-invite/registration-invite';
3
+ import { UntypedFormControl, Validators } from '@angular/forms';
4
+ import { plainToClass } from 'class-transformer';
5
+ import { alphaSpaceValidator } from '../../validators';
6
+ /**
7
+ * Form for inviting an unregistered user
8
+ */
9
+ export class UserInviteForm extends AbstractForm {
10
+ constructor() {
11
+ super({
12
+ firstName: new UntypedFormControl(null, [Validators.required, alphaSpaceValidator()]),
13
+ email: new UntypedFormControl(null, [Validators.required, Validators.email]),
14
+ }, plainToClass(RegistrationInvite, {}));
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1pbnZpdGUuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy91c2VyL3VzZXItaW52aXRlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBZSxTQUFRLFlBQWdDO0lBQ2xFO1FBQ0UsS0FBSyxDQUFDO1lBQ0osU0FBUyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7WUFDckYsS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDN0UsRUFDRCxZQUFZLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQ25DLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IFJlZ2lzdHJhdGlvbkludml0ZSB9IGZyb20gJy4uLy4uL21vZGVscy9yZWdpc3RyYXRpb24taW52aXRlL3JlZ2lzdHJhdGlvbi1pbnZpdGUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgYWxwaGFTcGFjZVZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMnO1xuXG4vKipcbiAqIEZvcm0gZm9yIGludml0aW5nIGFuIHVucmVnaXN0ZXJlZCB1c2VyXG4gKi9cbmV4cG9ydCBjbGFzcyBVc2VySW52aXRlRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxSZWdpc3RyYXRpb25JbnZpdGU+IHtcbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoe1xuICAgICAgZmlyc3ROYW1lOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBhbHBoYVNwYWNlVmFsaWRhdG9yKCldKSxcbiAgICAgIGVtYWlsOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsXSksXG4gICAgfSxcbiAgICBwbGFpblRvQ2xhc3MoUmVnaXN0cmF0aW9uSW52aXRlLCB7fSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { FormControl, Validators } from '@angular/forms';
2
+ import { AbstractForm } from '../abstract.form';
3
+ import { alphaSpaceValidator } from '../../validators';
4
+ export class UserForm extends AbstractForm {
5
+ constructor(user) {
6
+ super({
7
+ title: new FormControl(user.title),
8
+ firstName: new FormControl(user.firstName, [Validators.required, alphaSpaceValidator()]),
9
+ lastName: new FormControl(user.lastName, [Validators.required, alphaSpaceValidator()]),
10
+ address: new FormControl(user.address),
11
+ phone: new FormControl(user.phone),
12
+ file: new FormControl(user.file),
13
+ dateOfBirth: new FormControl(user.dateOfBirth),
14
+ gender: new FormControl(user.gender),
15
+ }, user);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3VzZXIvdXNlci5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekQsT0FBTyxFQUFFLFlBQVksRUFBcUIsTUFBTSxrQkFBa0IsQ0FBQztBQUduRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQVV2RCxNQUFNLE9BQU8sUUFBUyxTQUFRLFlBQXlDO0lBQ3JFLFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUM7WUFDSixLQUFLLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNsQyxTQUFTLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1lBQ3hGLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7WUFDdEYsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDdEMsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7WUFDbEMsSUFBSSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDaEMsV0FBVyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDOUMsTUFBTSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDckMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNYLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQWRkcmVzcywgQXBwRmlsZSwgVXNlciB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBBYnN0cmFjdEZvcm0sIENvbnRyb2xzSW50ZXJmYWNlIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBVc2VyVGl0bGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdXNlci10aXRsZS5lbnVtJztcbmltcG9ydCB7IFBob25lIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3Bob25lL3Bob25lJztcbmltcG9ydCB7IGFscGhhU3BhY2VWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzJztcblxuaW50ZXJmYWNlIFVzZXJDb250cm9sc0ludGVyZmFjZSBleHRlbmRzIENvbnRyb2xzSW50ZXJmYWNlIHtcbiAgdGl0bGU6IEZvcm1Db250cm9sPFVzZXJUaXRsZUVudW0+O1xuICBmaXJzdE5hbWU6IEZvcm1Db250cm9sPHN0cmluZz47XG4gIGxhc3ROYW1lOiBGb3JtQ29udHJvbDxzdHJpbmc+O1xuICBhZGRyZXNzOiBGb3JtQ29udHJvbDxBZGRyZXNzPjtcbiAgcGhvbmU6IEZvcm1Db250cm9sPFBob25lPjtcbiAgZmlsZTogRm9ybUNvbnRyb2w8QXBwRmlsZT5cbn1cbmV4cG9ydCBjbGFzcyBVc2VyRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxVc2VyLCBVc2VyQ29udHJvbHNJbnRlcmZhY2U+IHtcbiAgY29uc3RydWN0b3IodXNlcjogVXNlcikge1xuICAgIHN1cGVyKHtcbiAgICAgIHRpdGxlOiBuZXcgRm9ybUNvbnRyb2wodXNlci50aXRsZSksXG4gICAgICBmaXJzdE5hbWU6IG5ldyBGb3JtQ29udHJvbCh1c2VyLmZpcnN0TmFtZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIGFscGhhU3BhY2VWYWxpZGF0b3IoKV0pLFxuICAgICAgbGFzdE5hbWU6IG5ldyBGb3JtQ29udHJvbCh1c2VyLmxhc3ROYW1lLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgYWxwaGFTcGFjZVZhbGlkYXRvcigpXSksXG4gICAgICBhZGRyZXNzOiBuZXcgRm9ybUNvbnRyb2wodXNlci5hZGRyZXNzKSxcbiAgICAgIHBob25lOiBuZXcgRm9ybUNvbnRyb2wodXNlci5waG9uZSksXG4gICAgICBmaWxlOiBuZXcgRm9ybUNvbnRyb2wodXNlci5maWxlKSxcbiAgICAgIGRhdGVPZkJpcnRoOiBuZXcgRm9ybUNvbnRyb2wodXNlci5kYXRlT2ZCaXJ0aCksXG4gICAgICBnZW5kZXI6IG5ldyBGb3JtQ29udHJvbCh1c2VyLmdlbmRlciksXG4gICAgfSwgdXNlcik7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ export * from './vehicle.form';
2
+ export * from './vehicle-claim.form';
3
+ export * from './vehicle-claim-details.form';
4
+ export * from './vehicle-logbook.form';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdmVoaWNsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi92ZWhpY2xlLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi92ZWhpY2xlLWNsYWltLmZvcm0nO1xuZXhwb3J0ICogZnJvbSAnLi92ZWhpY2xlLWNsYWltLWRldGFpbHMuZm9ybSc7XG5leHBvcnQgKiBmcm9tICcuL3ZlaGljbGUtbG9nYm9vay5mb3JtJztcbiJdfQ==
@@ -0,0 +1,17 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ /**
4
+ * Add/Edit vehicle claim details form
5
+ */
6
+ export class VehicleClaimDetailsForm extends AbstractForm {
7
+ constructor(vehicleClaimDetails, isBestPeriodExist) {
8
+ super({
9
+ method: new UntypedFormControl(vehicleClaimDetails.method, Validators.required),
10
+ isManual: new UntypedFormControl({
11
+ value: vehicleClaimDetails.isManual,
12
+ disabled: !isBestPeriodExist
13
+ }),
14
+ }, vehicleClaimDetails);
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS1kZXRhaWxzLmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvdmVoaWNsZS92ZWhpY2xlLWNsYWltLWRldGFpbHMuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFlBQWlDO0lBQzVFLFlBQVksbUJBQXdDLEVBQUUsaUJBQTBCO1FBQzlFLEtBQUssQ0FBQztZQUNKLE1BQU0sRUFBRSxJQUFJLGtCQUFrQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQy9FLFFBQVEsRUFBRSxJQUFJLGtCQUFrQixDQUFDO2dCQUMvQixLQUFLLEVBQUUsbUJBQW1CLENBQUMsUUFBUTtnQkFDbkMsUUFBUSxFQUFFLENBQUMsaUJBQWlCO2FBQzdCLENBQUM7U0FDSCxFQUFFLG1CQUFtQixDQUFDLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1EZXRhaWxzIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuLyoqXG4gKiBBZGQvRWRpdCB2ZWhpY2xlIGNsYWltIGRldGFpbHMgZm9ybVxuICovXG5leHBvcnQgY2xhc3MgVmVoaWNsZUNsYWltRGV0YWlsc0Zvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08VmVoaWNsZUNsYWltRGV0YWlscz4ge1xuICBjb25zdHJ1Y3Rvcih2ZWhpY2xlQ2xhaW1EZXRhaWxzOiBWZWhpY2xlQ2xhaW1EZXRhaWxzLCBpc0Jlc3RQZXJpb2RFeGlzdDogYm9vbGVhbikge1xuICAgIHN1cGVyKHtcbiAgICAgIG1ldGhvZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh2ZWhpY2xlQ2xhaW1EZXRhaWxzLm1ldGhvZCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBpc01hbnVhbDogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7XG4gICAgICAgIHZhbHVlOiB2ZWhpY2xlQ2xhaW1EZXRhaWxzLmlzTWFudWFsLFxuICAgICAgICBkaXNhYmxlZDogIWlzQmVzdFBlcmlvZEV4aXN0XG4gICAgICB9KSxcbiAgICB9LCB2ZWhpY2xlQ2xhaW1EZXRhaWxzKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,28 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl } from '@angular/forms';
3
+ import { FinancialYear } from '../../models';
4
+ /**
5
+ * Add/Edit Vehicle Claim form
6
+ */
7
+ export class VehicleClaimForm extends AbstractForm {
8
+ /**
9
+ * @param vehicleClaim required even for the new claim, because claim needs business for sole tank
10
+ * @param details required for form controls disabled state management
11
+ */
12
+ constructor(vehicleClaim, details) {
13
+ super({
14
+ kilometers: new UntypedFormControl({
15
+ value: vehicleClaim.kilometers,
16
+ disabled: !details.isManual || details.isLogbookMethod()
17
+ }),
18
+ workUsage: new UntypedFormControl({
19
+ value: vehicleClaim.workUsage,
20
+ disabled: !details.isManual || details.isKmsMethod()
21
+ })
22
+ }, vehicleClaim);
23
+ }
24
+ getAverageWeeklyKMS() {
25
+ return this.get('kilometers').value / FinancialYear.weeksInYear;
26
+ }
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5mb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2Zvcm1zL3ZlaGljbGUvdmVoaWNsZS1jbGFpbS5mb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTdDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFlBQTBCO0lBQzlEOzs7T0FHRztJQUNILFlBQVksWUFBMEIsRUFBRSxPQUE0QjtRQUNsRSxLQUFLLENBQUM7WUFDSixVQUFVLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQztnQkFDakMsS0FBSyxFQUFFLFlBQVksQ0FBQyxVQUFVO2dCQUM5QixRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxlQUFlLEVBQUU7YUFDekQsQ0FBQztZQUNGLFNBQVMsRUFBRSxJQUFJLGtCQUFrQixDQUFDO2dCQUNoQyxLQUFLLEVBQUUsWUFBWSxDQUFDLFNBQVM7Z0JBQzdCLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRTthQUNyRCxDQUFDO1NBQ0gsRUFBRSxZQUFZLENBQUMsQ0FBQztJQUNuQixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztJQUNsRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdEZvcm0gfSBmcm9tICcuLi9hYnN0cmFjdC5mb3JtJztcbmltcG9ydCB7IFZlaGljbGVDbGFpbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1EZXRhaWxzIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEZpbmFuY2lhbFllYXIgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuXG4vKipcbiAqIEFkZC9FZGl0IFZlaGljbGUgQ2xhaW0gZm9ybVxuICovXG5leHBvcnQgY2xhc3MgVmVoaWNsZUNsYWltRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxWZWhpY2xlQ2xhaW0+IHtcbiAgLyoqXG4gICAqIEBwYXJhbSB2ZWhpY2xlQ2xhaW0gcmVxdWlyZWQgZXZlbiBmb3IgdGhlIG5ldyBjbGFpbSwgYmVjYXVzZSBjbGFpbSBuZWVkcyBidXNpbmVzcyBmb3Igc29sZSB0YW5rXG4gICAqIEBwYXJhbSBkZXRhaWxzIHJlcXVpcmVkIGZvciBmb3JtIGNvbnRyb2xzIGRpc2FibGVkIHN0YXRlIG1hbmFnZW1lbnRcbiAgICovXG4gIGNvbnN0cnVjdG9yKHZlaGljbGVDbGFpbTogVmVoaWNsZUNsYWltLCBkZXRhaWxzOiBWZWhpY2xlQ2xhaW1EZXRhaWxzKSB7XG4gICAgc3VwZXIoe1xuICAgICAga2lsb21ldGVyczogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh7XG4gICAgICAgIHZhbHVlOiB2ZWhpY2xlQ2xhaW0ua2lsb21ldGVycyxcbiAgICAgICAgZGlzYWJsZWQ6ICFkZXRhaWxzLmlzTWFudWFsIHx8IGRldGFpbHMuaXNMb2dib29rTWV0aG9kKClcbiAgICAgIH0pLFxuICAgICAgd29ya1VzYWdlOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKHtcbiAgICAgICAgdmFsdWU6IHZlaGljbGVDbGFpbS53b3JrVXNhZ2UsXG4gICAgICAgIGRpc2FibGVkOiAhZGV0YWlscy5pc01hbnVhbCB8fCBkZXRhaWxzLmlzS21zTWV0aG9kKClcbiAgICAgIH0pXG4gICAgfSwgdmVoaWNsZUNsYWltKTtcbiAgfVxuXG4gIGdldEF2ZXJhZ2VXZWVrbHlLTVMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ2tpbG9tZXRlcnMnKS52YWx1ZSAvIEZpbmFuY2lhbFllYXIud2Vla3NJblllYXI7XG4gIH1cbn1cbiJdfQ==