taxtank 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1249) hide show
  1. package/.editorconfig +16 -0
  2. package/.eslintrc.json +106 -0
  3. package/.gitlab-ci.yml +42 -0
  4. package/.vscode/extensions.json +4 -0
  5. package/.vscode/launch.json +20 -0
  6. package/.vscode/tasks.json +42 -0
  7. package/README.md +108 -0
  8. package/angular.json +79 -0
  9. package/package.json +50 -0
  10. package/projects/tt-core/.eslintrc.json +20 -0
  11. package/projects/tt-core/README.md +5 -0
  12. package/projects/tt-core/common/index.ts +1 -0
  13. package/projects/tt-core/common/ng-package.json +6 -0
  14. package/projects/tt-core/common/public-api.ts +3 -0
  15. package/projects/tt-core/common/src/common.module.ts +30 -0
  16. package/projects/tt-core/common/src/db/enums/index.ts +1 -0
  17. package/projects/tt-core/common/src/db/enums/user/index.ts +1 -0
  18. package/projects/tt-core/common/src/db/enums/user/user-roles.enum.ts +17 -0
  19. package/projects/tt-core/common/src/db/index.ts +1 -0
  20. package/projects/tt-core/common/src/interceptors/interceptors.module.ts +15 -0
  21. package/projects/tt-core/common/src/interceptors/jwt-interceptor.ts +156 -0
  22. package/projects/tt-core/common/src/services/auth/auth-messages.enum.ts +3 -0
  23. package/projects/tt-core/common/src/services/auth/auth-tokens.interface.ts +7 -0
  24. package/projects/tt-core/common/src/services/auth/auth.service.ts +63 -0
  25. package/projects/tt-core/common/src/services/auth/index.ts +5 -0
  26. package/projects/tt-core/common/src/services/auth/jwt-decoded.interface.ts +8 -0
  27. package/projects/tt-core/common/src/services/auth/jwt.service.ts +58 -0
  28. package/projects/tt-core/common/src/services/index.ts +2 -0
  29. package/projects/tt-core/common/src/services/mixpanel.service.ts +61 -0
  30. package/projects/tt-core/index.ts +1 -0
  31. package/projects/tt-core/karma.conf.js +43 -0
  32. package/projects/tt-core/ng-package.json +7 -0
  33. package/projects/tt-core/package.json +44 -0
  34. package/projects/tt-core/public-api.ts +255 -0
  35. package/projects/tt-core/src/lib/collections/account-setup-item.collection.ts +33 -0
  36. package/projects/tt-core/src/lib/collections/allocation-group.collection.ts +11 -0
  37. package/projects/tt-core/src/lib/collections/allocation-rule.collection.ts +34 -0
  38. package/projects/tt-core/src/lib/collections/asset-sale.collection.ts +70 -0
  39. package/projects/tt-core/src/lib/collections/bank-account.collection.ts +168 -0
  40. package/projects/tt-core/src/lib/collections/bank-transaction.collection.ts +173 -0
  41. package/projects/tt-core/src/lib/collections/budget/budget-rule.collection.ts +39 -0
  42. package/projects/tt-core/src/lib/collections/budget/budget.collection.ts +4 -0
  43. package/projects/tt-core/src/lib/collections/budget/index.ts +2 -0
  44. package/projects/tt-core/src/lib/collections/chart-accounts/chart-accounts-value.collection.ts +25 -0
  45. package/projects/tt-core/src/lib/collections/chart-accounts/index.ts +1 -0
  46. package/projects/tt-core/src/lib/collections/chart-accounts.collection.ts +30 -0
  47. package/projects/tt-core/src/lib/collections/chat/chat.collection.ts +9 -0
  48. package/projects/tt-core/src/lib/collections/chat/index.ts +3 -0
  49. package/projects/tt-core/src/lib/collections/chat/message-document.collection.ts +16 -0
  50. package/projects/tt-core/src/lib/collections/chat/message.collection.ts +39 -0
  51. package/projects/tt-core/src/lib/collections/client-invite.collection.ts +8 -0
  52. package/projects/tt-core/src/lib/collections/client-movement.collection.ts +63 -0
  53. package/projects/tt-core/src/lib/collections/client-portfolio-report.collection.ts +47 -0
  54. package/projects/tt-core/src/lib/collections/client.collection.ts +5 -0
  55. package/projects/tt-core/src/lib/collections/collection-dictionary.ts +155 -0
  56. package/projects/tt-core/src/lib/collections/collection.ts +238 -0
  57. package/projects/tt-core/src/lib/collections/depreciation-forecast.collection.ts +25 -0
  58. package/projects/tt-core/src/lib/collections/depreciation.collection.ts +162 -0
  59. package/projects/tt-core/src/lib/collections/document/document-folder.collection.ts +23 -0
  60. package/projects/tt-core/src/lib/collections/document/index.ts +1 -0
  61. package/projects/tt-core/src/lib/collections/exportable.collection.ts +27 -0
  62. package/projects/tt-core/src/lib/collections/financial-goal.collection.ts +47 -0
  63. package/projects/tt-core/src/lib/collections/firm/employee-invite.collection.ts +12 -0
  64. package/projects/tt-core/src/lib/collections/firm/employee.collection.ts +27 -0
  65. package/projects/tt-core/src/lib/collections/firm/index.ts +2 -0
  66. package/projects/tt-core/src/lib/collections/holding/holding-sale.collection.ts +42 -0
  67. package/projects/tt-core/src/lib/collections/holding/holding-trade.collection.ts +104 -0
  68. package/projects/tt-core/src/lib/collections/holding/holding-type.collection.ts +14 -0
  69. package/projects/tt-core/src/lib/collections/holding/holding.collection.ts +53 -0
  70. package/projects/tt-core/src/lib/collections/holding/index.ts +4 -0
  71. package/projects/tt-core/src/lib/collections/home-office/home-office-claim.collection.ts +8 -0
  72. package/projects/tt-core/src/lib/collections/home-office/index.ts +1 -0
  73. package/projects/tt-core/src/lib/collections/income-source/income-source-forecast.collection.ts +13 -0
  74. package/projects/tt-core/src/lib/collections/income-source/income-source.collection.ts +52 -0
  75. package/projects/tt-core/src/lib/collections/income-source/index.ts +2 -0
  76. package/projects/tt-core/src/lib/collections/index.ts +43 -0
  77. package/projects/tt-core/src/lib/collections/loan/index.ts +2 -0
  78. package/projects/tt-core/src/lib/collections/loan/loan-payment.collection.ts +44 -0
  79. package/projects/tt-core/src/lib/collections/loan/loan.collection.ts +58 -0
  80. package/projects/tt-core/src/lib/collections/money/calendar-event-collection.ts +4 -0
  81. package/projects/tt-core/src/lib/collections/money/index.ts +2 -0
  82. package/projects/tt-core/src/lib/collections/money/money-calendar-event-collection.ts +29 -0
  83. package/projects/tt-core/src/lib/collections/property/index.ts +6 -0
  84. package/projects/tt-core/src/lib/collections/property/property-category-movement.collection.ts +27 -0
  85. package/projects/tt-core/src/lib/collections/property/property-sale/index.ts +2 -0
  86. package/projects/tt-core/src/lib/collections/property/property-sale/property-sale-tax-exemption-meta-field.collection.ts +25 -0
  87. package/projects/tt-core/src/lib/collections/property/property-sale/property-sale.collection.ts +15 -0
  88. package/projects/tt-core/src/lib/collections/property/property-share.collection.ts +22 -0
  89. package/projects/tt-core/src/lib/collections/property/property-valuation.collection.ts +16 -0
  90. package/projects/tt-core/src/lib/collections/property/property.collection.ts +181 -0
  91. package/projects/tt-core/src/lib/collections/property/tax-exemption.collection.ts +14 -0
  92. package/projects/tt-core/src/lib/collections/report/budget-report/budget-rule-item.collection.ts +71 -0
  93. package/projects/tt-core/src/lib/collections/report/budget-report/index.ts +1 -0
  94. package/projects/tt-core/src/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.ts +17 -0
  95. package/projects/tt-core/src/lib/collections/report/depreciation/depreciation-report-item.collection.ts +15 -0
  96. package/projects/tt-core/src/lib/collections/report/income-expense/transaction-report-item.collection.ts +38 -0
  97. package/projects/tt-core/src/lib/collections/report/index.ts +8 -0
  98. package/projects/tt-core/src/lib/collections/report/property/property-report-item-depreciation.collection.ts +36 -0
  99. package/projects/tt-core/src/lib/collections/report/property/property-report-item-transaction.collection.ts +35 -0
  100. package/projects/tt-core/src/lib/collections/report/property/property-report-item.collection.ts +19 -0
  101. package/projects/tt-core/src/lib/collections/report/vehicle-expense/vehicle-expense.collection.ts +32 -0
  102. package/projects/tt-core/src/lib/collections/sole/index.ts +3 -0
  103. package/projects/tt-core/src/lib/collections/sole/sole-business-loss.collection.ts +52 -0
  104. package/projects/tt-core/src/lib/collections/sole/sole-invoice-item.collection.ts +13 -0
  105. package/projects/tt-core/src/lib/collections/sole/sole-invoice.collection.ts +61 -0
  106. package/projects/tt-core/src/lib/collections/subscription/index.ts +4 -0
  107. package/projects/tt-core/src/lib/collections/subscription/service-price.collection.ts +36 -0
  108. package/projects/tt-core/src/lib/collections/subscription/service-product.collection.ts +13 -0
  109. package/projects/tt-core/src/lib/collections/subscription/service-subscription.collection.ts +107 -0
  110. package/projects/tt-core/src/lib/collections/subscription/subscription-item.collection.ts +21 -0
  111. package/projects/tt-core/src/lib/collections/tax-review.collection.ts +55 -0
  112. package/projects/tt-core/src/lib/collections/tax-summary/index.ts +2 -0
  113. package/projects/tt-core/src/lib/collections/tax-summary/report-item.collection.ts +121 -0
  114. package/projects/tt-core/src/lib/collections/tax-summary/tax-return-categories.const.ts +129 -0
  115. package/projects/tt-core/src/lib/collections/transaction/index.ts +3 -0
  116. package/projects/tt-core/src/lib/collections/transaction/transaction-allocation.collection.ts +51 -0
  117. package/projects/tt-core/src/lib/collections/transaction/transaction-base.collection.ts +6 -0
  118. package/projects/tt-core/src/lib/collections/transaction/transaction.collection.ts +329 -0
  119. package/projects/tt-core/src/lib/collections/user/user.collection.ts +4 -0
  120. package/projects/tt-core/src/lib/collections/user-event-setting.collection.ts +11 -0
  121. package/projects/tt-core/src/lib/collections/user-event-type-collection.ts +12 -0
  122. package/projects/tt-core/src/lib/collections/vehicle/best-vehicle-logbook.collection.ts +116 -0
  123. package/projects/tt-core/src/lib/collections/vehicle/index.ts +3 -0
  124. package/projects/tt-core/src/lib/collections/vehicle/vehicle-claim.collection.ts +30 -0
  125. package/projects/tt-core/src/lib/collections/vehicle/vehicle-logbook.collection.ts +51 -0
  126. package/projects/tt-core/src/lib/core.module.ts +15 -0
  127. package/projects/tt-core/src/lib/db/Enums/address-type.enum.ts +4 -0
  128. package/projects/tt-core/src/lib/db/Enums/annual-frequency.enum.ts +7 -0
  129. package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-comparison-operator.enum.ts +7 -0
  130. package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-field.enum.ts +4 -0
  131. package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-operator.enum.ts +4 -0
  132. package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-type.enum.ts +5 -0
  133. package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/index.ts +4 -0
  134. package/projects/tt-core/src/lib/db/Enums/bank/bank-account-status.enum.ts +7 -0
  135. package/projects/tt-core/src/lib/db/Enums/bank/bank-account-type.enum.ts +11 -0
  136. package/projects/tt-core/src/lib/db/Enums/bank/bank-connection-badge-status.enum.ts +0 -0
  137. package/projects/tt-core/src/lib/db/Enums/bank/bank-connection-status.enum.ts +6 -0
  138. package/projects/tt-core/src/lib/db/Enums/bank/bank-popular.enum.ts +12 -0
  139. package/projects/tt-core/src/lib/db/Enums/bank/bank-provider.enum.ts +5 -0
  140. package/projects/tt-core/src/lib/db/Enums/bank/bank-transaction-type.enum.ts +4 -0
  141. package/projects/tt-core/src/lib/db/Enums/bank/index.ts +7 -0
  142. package/projects/tt-core/src/lib/db/Enums/bank/loan/index.ts +8 -0
  143. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-bank-type.enum.ts +10 -0
  144. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-interest-type-label.enum.ts +4 -0
  145. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-interest-type.enum.ts +4 -0
  146. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-payout-type.enum.ts +4 -0
  147. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.ts +4 -0
  148. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-repayment-type.enum.ts +4 -0
  149. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-type.enum.ts +12 -0
  150. package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-vehicle-type.enum.ts +5 -0
  151. package/projects/tt-core/src/lib/db/Enums/budget/budget-type.enum.ts +4 -0
  152. package/projects/tt-core/src/lib/db/Enums/budget/index.ts +1 -0
  153. package/projects/tt-core/src/lib/db/Enums/chart-accounts/business-chart-accounts.enum.ts +47 -0
  154. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-adjustment-included-list.enum.ts +17 -0
  155. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-category.enum.ts +18 -0
  156. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.ts +7 -0
  157. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.ts +48 -0
  158. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.ts +6 -0
  159. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.ts +6 -0
  160. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.ts +6 -0
  161. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-holding-untaxed-income-list.enum.ts +9 -0
  162. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.ts +8 -0
  163. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-list.enum.ts +60 -0
  164. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-list.enum.ts +17 -0
  165. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-type.enum.ts +4 -0
  166. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-property-adjustments-list.enum.ts +48 -0
  167. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.ts +15 -0
  168. package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-type.enum.ts +4 -0
  169. package/projects/tt-core/src/lib/db/Enums/chart-accounts/expense-category-by-type.ts +11 -0
  170. package/projects/tt-core/src/lib/db/Enums/chart-accounts/income-category-by-type.ts +11 -0
  171. package/projects/tt-core/src/lib/db/Enums/chart-accounts/index.ts +18 -0
  172. package/projects/tt-core/src/lib/db/Enums/chat-status.enum.ts +4 -0
  173. package/projects/tt-core/src/lib/db/Enums/client/client-details-medicare-exemption.enum.ts +5 -0
  174. package/projects/tt-core/src/lib/db/Enums/client/client-details-work-depreciation-calculation.enum.ts +4 -0
  175. package/projects/tt-core/src/lib/db/Enums/client/client-details-working-holiday-maker.enum.ts +5 -0
  176. package/projects/tt-core/src/lib/db/Enums/client/client-invite-status.enum.ts +4 -0
  177. package/projects/tt-core/src/lib/db/Enums/client/client-invite-type.enum.ts +4 -0
  178. package/projects/tt-core/src/lib/db/Enums/client/index.ts +6 -0
  179. package/projects/tt-core/src/lib/db/Enums/client/timezone.enum.ts +12 -0
  180. package/projects/tt-core/src/lib/db/Enums/daily-frequency.enum.ts +5 -0
  181. package/projects/tt-core/src/lib/db/Enums/date-formats.enum.ts +8 -0
  182. package/projects/tt-core/src/lib/db/Enums/depreciation-calculation-percent.enum.ts +7 -0
  183. package/projects/tt-core/src/lib/db/Enums/depreciation-calculation.enum.ts +8 -0
  184. package/projects/tt-core/src/lib/db/Enums/depreciation-type.enum.ts +6 -0
  185. package/projects/tt-core/src/lib/db/Enums/depreciation-write-off-amount.enum.ts +4 -0
  186. package/projects/tt-core/src/lib/db/Enums/document-type.enum.ts +3 -0
  187. package/projects/tt-core/src/lib/db/Enums/file-type.enum.ts +12 -0
  188. package/projects/tt-core/src/lib/db/Enums/firm/employee-invite-role.enum.ts +4 -0
  189. package/projects/tt-core/src/lib/db/Enums/firm/firm-type.enum.ts +5 -0
  190. package/projects/tt-core/src/lib/db/Enums/firm/index.ts +2 -0
  191. package/projects/tt-core/src/lib/db/Enums/holding/holding-trade-type.enum.ts +10 -0
  192. package/projects/tt-core/src/lib/db/Enums/holding/holding-type-category.enum.ts +16 -0
  193. package/projects/tt-core/src/lib/db/Enums/holding/holding-type-exchange-list.enum.ts +9 -0
  194. package/projects/tt-core/src/lib/db/Enums/holding/index.ts +3 -0
  195. package/projects/tt-core/src/lib/db/Enums/home-office/home-office-claim-method.enum.ts +5 -0
  196. package/projects/tt-core/src/lib/db/Enums/home-office/index.ts +1 -0
  197. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-forecast-trust-type.enum.ts +13 -0
  198. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-holding.enum.ts +7 -0
  199. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-other.enum.ts +7 -0
  200. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-sole.enum.ts +3 -0
  201. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-work.enum.ts +8 -0
  202. package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type.enum.ts +9 -0
  203. package/projects/tt-core/src/lib/db/Enums/income-source/index.ts +6 -0
  204. package/projects/tt-core/src/lib/db/Enums/index.ts +20 -0
  205. package/projects/tt-core/src/lib/db/Enums/invite-status.enum.ts +5 -0
  206. package/projects/tt-core/src/lib/db/Enums/money/calendar-event-type.enum.ts +7 -0
  207. package/projects/tt-core/src/lib/db/Enums/money/index.ts +1 -0
  208. package/projects/tt-core/src/lib/db/Enums/phone-type.enum.ts +4 -0
  209. package/projects/tt-core/src/lib/db/Enums/property/property-category-list.enum.ts +5 -0
  210. package/projects/tt-core/src/lib/db/Enums/property/property-corelogic-stats-confidence.type.enum.ts +5 -0
  211. package/projects/tt-core/src/lib/db/Enums/property/property-depreciation-calculation.enum.ts +4 -0
  212. package/projects/tt-core/src/lib/db/Enums/property/property-sale/tax-exemption-meta-field.enum.ts +7 -0
  213. package/projects/tt-core/src/lib/db/Enums/property/property-sale/tax-exemption.enum.ts +10 -0
  214. package/projects/tt-core/src/lib/db/Enums/property/property-share-access.enum.ts +4 -0
  215. package/projects/tt-core/src/lib/db/Enums/property/property-share-status.enum.ts +5 -0
  216. package/projects/tt-core/src/lib/db/Enums/property-depreciation-calculation.enum.ts +4 -0
  217. package/projects/tt-core/src/lib/db/Enums/registration-invite-status.enum.ts +4 -0
  218. package/projects/tt-core/src/lib/db/Enums/service-notification-status.enum.ts +5 -0
  219. package/projects/tt-core/src/lib/db/Enums/service-notification-type.enum.ts +4 -0
  220. package/projects/tt-core/src/lib/db/Enums/setup-item-type.enum.ts +14 -0
  221. package/projects/tt-core/src/lib/db/Enums/sole/index.ts +5 -0
  222. package/projects/tt-core/src/lib/db/Enums/sole/sole-depreciation-method.enum.ts +4 -0
  223. package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-state.enum.ts +8 -0
  224. package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-statuses.enum.ts +5 -0
  225. package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-tax-type.enum.ts +5 -0
  226. package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-template-tax-type.enum.ts +5 -0
  227. package/projects/tt-core/src/lib/db/Enums/spare-document-spare-type.enum.ts +4 -0
  228. package/projects/tt-core/src/lib/db/Enums/subscription/index.ts +2 -0
  229. package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-method-card-brand.enum.ts +10 -0
  230. package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-method-type.enum.ts +4 -0
  231. package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-status.enum.ts +4 -0
  232. package/projects/tt-core/src/lib/db/Enums/subscription/service-price-id.enum.ts +24 -0
  233. package/projects/tt-core/src/lib/db/Enums/subscription/service-price-list.enum.ts +6 -0
  234. package/projects/tt-core/src/lib/db/Enums/subscription/service-price-recurring-interval.enum.ts +6 -0
  235. package/projects/tt-core/src/lib/db/Enums/subscription/service-price-type.enum.ts +8 -0
  236. package/projects/tt-core/src/lib/db/Enums/subscription/service-product-id.enum.ts +10 -0
  237. package/projects/tt-core/src/lib/db/Enums/subscription/service-product-status.enum.ts +4 -0
  238. package/projects/tt-core/src/lib/db/Enums/subscription/service-subscription-status.enum.ts +8 -0
  239. package/projects/tt-core/src/lib/db/Enums/tank-type.enum.ts +8 -0
  240. package/projects/tt-core/src/lib/db/Enums/tax-calculation-medicare-exemption.enum.ts +4 -0
  241. package/projects/tt-core/src/lib/db/Enums/tax-calculation-type.enum.ts +12 -0
  242. package/projects/tt-core/src/lib/db/Enums/tax-return/index.ts +3 -0
  243. package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-category-list.enum.ts +97 -0
  244. package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-category-section.enum.ts +7 -0
  245. package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-item.enum.ts +18 -0
  246. package/projects/tt-core/src/lib/db/Enums/tax-review-status.enum.ts +11 -0
  247. package/projects/tt-core/src/lib/db/Enums/tax-summary-list.enum.ts +15 -0
  248. package/projects/tt-core/src/lib/db/Enums/tax-summary-section.enum.ts +9 -0
  249. package/projects/tt-core/src/lib/db/Enums/tax-summary-tax-summary.enum.ts +15 -0
  250. package/projects/tt-core/src/lib/db/Enums/ticket-feedback.enum.ts +4 -0
  251. package/projects/tt-core/src/lib/db/Enums/ticket-status.enum.ts +7 -0
  252. package/projects/tt-core/src/lib/db/Enums/ticket-types.enum.ts +3 -0
  253. package/projects/tt-core/src/lib/db/Enums/transaction-operation.enum.ts +6 -0
  254. package/projects/tt-core/src/lib/db/Enums/transaction-source.enum.ts +4 -0
  255. package/projects/tt-core/src/lib/db/Enums/transaction-type.enum.ts +4 -0
  256. package/projects/tt-core/src/lib/db/Enums/user/gender.enum.ts +12 -0
  257. package/projects/tt-core/src/lib/db/Enums/user/index.ts +1 -0
  258. package/projects/tt-core/src/lib/db/Enums/user-event-status.enum.ts +7 -0
  259. package/projects/tt-core/src/lib/db/Enums/user-event-type-client-type.enum.ts +27 -0
  260. package/projects/tt-core/src/lib/db/Enums/user-event-type-employee-type.enum.ts +15 -0
  261. package/projects/tt-core/src/lib/db/Enums/user-event-type-frequency.enum.ts +5 -0
  262. package/projects/tt-core/src/lib/db/Enums/user-event-type-type.enum.ts +51 -0
  263. package/projects/tt-core/src/lib/db/Enums/user-event-type-user-type.enum.ts +5 -0
  264. package/projects/tt-core/src/lib/db/Enums/user-medicare-exemption.enum.ts +5 -0
  265. package/projects/tt-core/src/lib/db/Enums/user-status.enum.ts +5 -0
  266. package/projects/tt-core/src/lib/db/Enums/user-title.enum.ts +7 -0
  267. package/projects/tt-core/src/lib/db/Enums/user-work-depreciation-calculation.enum.ts +4 -0
  268. package/projects/tt-core/src/lib/db/Enums/user-working-holiday-maker.enum.ts +5 -0
  269. package/projects/tt-core/src/lib/db/Enums/vehicle-claim-details-method.enum.ts +4 -0
  270. package/projects/tt-core/src/lib/db/Enums/vehicle-logbook-purpose.enum.ts +4 -0
  271. package/projects/tt-core/src/lib/db/Enums/youtube-videos.enum.ts +22 -0
  272. package/projects/tt-core/src/lib/db/Json/chart-accounts/chart-accounts-value.json +585 -0
  273. package/projects/tt-core/src/lib/db/Json/holding/holding-type-exchange.json +79 -0
  274. package/projects/tt-core/src/lib/db/Json/income-source/income_source_type.json +62 -0
  275. package/projects/tt-core/src/lib/db/Json/property/tax-exemption.json +47 -0
  276. package/projects/tt-core/src/lib/db/Json/tax-return/tax-return-item.json +1958 -0
  277. package/projects/tt-core/src/lib/db/Models/abstract-model.ts +21 -0
  278. package/projects/tt-core/src/lib/db/Models/address.ts +20 -0
  279. package/projects/tt-core/src/lib/db/Models/bank/bank-account-balance.ts +15 -0
  280. package/projects/tt-core/src/lib/db/Models/bank/bank-account-property.ts +12 -0
  281. package/projects/tt-core/src/lib/db/Models/bank/bank-account.ts +40 -0
  282. package/projects/tt-core/src/lib/db/Models/bank/bank-connection.ts +19 -0
  283. package/projects/tt-core/src/lib/db/Models/bank/bank-transaction-import.ts +12 -0
  284. package/projects/tt-core/src/lib/db/Models/bank/bank-transaction.ts +18 -0
  285. package/projects/tt-core/src/lib/db/Models/bank/bank.ts +15 -0
  286. package/projects/tt-core/src/lib/db/Models/bank/basiq-job-step.enum.ts +6 -0
  287. package/projects/tt-core/src/lib/db/Models/bank/basiq-job.ts +11 -0
  288. package/projects/tt-core/src/lib/db/Models/budget/budget-rule.ts +20 -0
  289. package/projects/tt-core/src/lib/db/Models/budget/budget.ts +9 -0
  290. package/projects/tt-core/src/lib/db/Models/budget/index.ts +2 -0
  291. package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-depreciation.ts +12 -0
  292. package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-heading.ts +8 -0
  293. package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-meta-field.ts +11 -0
  294. package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-value.ts +13 -0
  295. package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts.ts +27 -0
  296. package/projects/tt-core/src/lib/db/Models/client/annual-client-details.ts +14 -0
  297. package/projects/tt-core/src/lib/db/Models/client/client-details.ts +27 -0
  298. package/projects/tt-core/src/lib/db/Models/client/index.ts +3 -0
  299. package/projects/tt-core/src/lib/db/Models/client/occupation.ts +6 -0
  300. package/projects/tt-core/src/lib/db/Models/country.ts +6 -0
  301. package/projects/tt-core/src/lib/db/Models/depreciation/depreciation-capital-project.ts +15 -0
  302. package/projects/tt-core/src/lib/db/Models/depreciation/depreciation-forecast.ts +18 -0
  303. package/projects/tt-core/src/lib/db/Models/depreciation/depreciation.ts +48 -0
  304. package/projects/tt-core/src/lib/db/Models/document/document-folder.ts +11 -0
  305. package/projects/tt-core/src/lib/db/Models/document/folder-document.ts +8 -0
  306. package/projects/tt-core/src/lib/db/Models/file.ts +16 -0
  307. package/projects/tt-core/src/lib/db/Models/firm/accountant/tax-review.ts +17 -0
  308. package/projects/tt-core/src/lib/db/Models/firm/accountant/ticket.ts +21 -0
  309. package/projects/tt-core/src/lib/db/Models/firm/chat.ts +20 -0
  310. package/projects/tt-core/src/lib/db/Models/firm/client-invite.ts +20 -0
  311. package/projects/tt-core/src/lib/db/Models/firm/client-movement.ts +12 -0
  312. package/projects/tt-core/src/lib/db/Models/firm/employee-invite.ts +12 -0
  313. package/projects/tt-core/src/lib/db/Models/firm/firm-invite.ts +15 -0
  314. package/projects/tt-core/src/lib/db/Models/firm/firm.ts +31 -0
  315. package/projects/tt-core/src/lib/db/Models/firm/message-document.ts +12 -0
  316. package/projects/tt-core/src/lib/db/Models/firm/message.ts +17 -0
  317. package/projects/tt-core/src/lib/db/Models/holding/holding-sale.ts +16 -0
  318. package/projects/tt-core/src/lib/db/Models/holding/holding-trade-import.ts +9 -0
  319. package/projects/tt-core/src/lib/db/Models/holding/holding-trade.ts +18 -0
  320. package/projects/tt-core/src/lib/db/Models/holding/holding-type-exchange.ts +14 -0
  321. package/projects/tt-core/src/lib/db/Models/holding/holding-type.ts +32 -0
  322. package/projects/tt-core/src/lib/db/Models/holding/index.ts +4 -0
  323. package/projects/tt-core/src/lib/db/Models/incomeSource/income-source-forecast.ts +16 -0
  324. package/projects/tt-core/src/lib/db/Models/incomeSource/income-source-type.ts +9 -0
  325. package/projects/tt-core/src/lib/db/Models/incomeSource/income-source.ts +23 -0
  326. package/projects/tt-core/src/lib/db/Models/incomeSource/salary-forecast.ts +17 -0
  327. package/projects/tt-core/src/lib/db/Models/index.ts +111 -0
  328. package/projects/tt-core/src/lib/db/Models/loan/borrowing-expense-loan.ts +15 -0
  329. package/projects/tt-core/src/lib/db/Models/loan/borrowing-expense.ts +8 -0
  330. package/projects/tt-core/src/lib/db/Models/loan/loan-payout.ts +20 -0
  331. package/projects/tt-core/src/lib/db/Models/loan/loan.ts +48 -0
  332. package/projects/tt-core/src/lib/db/Models/observable-model.ts +22 -0
  333. package/projects/tt-core/src/lib/db/Models/phone.ts +13 -0
  334. package/projects/tt-core/src/lib/db/Models/property/borrowing-report.ts +12 -0
  335. package/projects/tt-core/src/lib/db/Models/property/property-category-movement.ts +19 -0
  336. package/projects/tt-core/src/lib/db/Models/property/property-category.ts +15 -0
  337. package/projects/tt-core/src/lib/db/Models/property/property-forecast.ts +17 -0
  338. package/projects/tt-core/src/lib/db/Models/property/property-sale/property-sale-tax-exemption-meta-field.ts +9 -0
  339. package/projects/tt-core/src/lib/db/Models/property/property-sale/property-sale.ts +24 -0
  340. package/projects/tt-core/src/lib/db/Models/property/property-sale/tax-exemption-meta-field.ts +7 -0
  341. package/projects/tt-core/src/lib/db/Models/property/property-sale/tax-exemption.ts +8 -0
  342. package/projects/tt-core/src/lib/db/Models/property/property-share.ts +29 -0
  343. package/projects/tt-core/src/lib/db/Models/property/property-subscription.ts +10 -0
  344. package/projects/tt-core/src/lib/db/Models/property/property-valuation.ts +17 -0
  345. package/projects/tt-core/src/lib/db/Models/property/property.ts +66 -0
  346. package/projects/tt-core/src/lib/db/Models/service-notification.ts +14 -0
  347. package/projects/tt-core/src/lib/db/Models/setup-item.ts +19 -0
  348. package/projects/tt-core/src/lib/db/Models/sole/bas-report.ts +16 -0
  349. package/projects/tt-core/src/lib/db/Models/sole/sole-business-activity.ts +6 -0
  350. package/projects/tt-core/src/lib/db/Models/sole/sole-business-allocation.ts +9 -0
  351. package/projects/tt-core/src/lib/db/Models/sole/sole-business-loss-offset-rule.ts +7 -0
  352. package/projects/tt-core/src/lib/db/Models/sole/sole-business-loss.ts +11 -0
  353. package/projects/tt-core/src/lib/db/Models/sole/sole-business.ts +34 -0
  354. package/projects/tt-core/src/lib/db/Models/sole/sole-contact.ts +17 -0
  355. package/projects/tt-core/src/lib/db/Models/sole/sole-depreciation-method.ts +10 -0
  356. package/projects/tt-core/src/lib/db/Models/sole/sole-details.ts +16 -0
  357. package/projects/tt-core/src/lib/db/Models/sole/sole-forecast.ts +10 -0
  358. package/projects/tt-core/src/lib/db/Models/sole/sole-invoice-item.ts +14 -0
  359. package/projects/tt-core/src/lib/db/Models/sole/sole-invoice-template.ts +12 -0
  360. package/projects/tt-core/src/lib/db/Models/sole/sole-invoice.ts +21 -0
  361. package/projects/tt-core/src/lib/db/Models/spare/spare-document-category.ts +7 -0
  362. package/projects/tt-core/src/lib/db/Models/spare/spare-document.ts +16 -0
  363. package/projects/tt-core/src/lib/db/Models/subscription/service-payment-method.ts +16 -0
  364. package/projects/tt-core/src/lib/db/Models/subscription/service-payment.ts +12 -0
  365. package/projects/tt-core/src/lib/db/Models/subscription/service-price.ts +19 -0
  366. package/projects/tt-core/src/lib/db/Models/subscription/service-product.ts +20 -0
  367. package/projects/tt-core/src/lib/db/Models/subscription/service-subscription-item.ts +10 -0
  368. package/projects/tt-core/src/lib/db/Models/subscription/service-subscription.ts +24 -0
  369. package/projects/tt-core/src/lib/db/Models/tax-calculation.ts +19 -0
  370. package/projects/tt-core/src/lib/db/Models/tax-return/index.ts +3 -0
  371. package/projects/tt-core/src/lib/db/Models/tax-return/tax-return-category.ts +13 -0
  372. package/projects/tt-core/src/lib/db/Models/tax-return/tax-return-item.ts +16 -0
  373. package/projects/tt-core/src/lib/db/Models/tax-return/tax-return.ts +9 -0
  374. package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-condition.ts +10 -0
  375. package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-transaction-meta-field.ts +9 -0
  376. package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-transaction.ts +27 -0
  377. package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule.ts +22 -0
  378. package/projects/tt-core/src/lib/db/Models/transaction/transaction-allocation.ts +10 -0
  379. package/projects/tt-core/src/lib/db/Models/transaction/transaction-base.ts +111 -0
  380. package/projects/tt-core/src/lib/db/Models/transaction/transaction-meta-field.ts +12 -0
  381. package/projects/tt-core/src/lib/db/Models/transaction/transaction.ts +50 -0
  382. package/projects/tt-core/src/lib/db/Models/user/employee-details.ts +10 -0
  383. package/projects/tt-core/src/lib/db/Models/user/registration-invite.ts +14 -0
  384. package/projects/tt-core/src/lib/db/Models/user/user-event-setting.ts +11 -0
  385. package/projects/tt-core/src/lib/db/Models/user/user-event-type-category.ts +5 -0
  386. package/projects/tt-core/src/lib/db/Models/user/user-event-type.ts +18 -0
  387. package/projects/tt-core/src/lib/db/Models/user/user-event.ts +16 -0
  388. package/projects/tt-core/src/lib/db/Models/user/user.ts +65 -0
  389. package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-claim-details.ts +10 -0
  390. package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-claim.ts +13 -0
  391. package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-logbook.ts +18 -0
  392. package/projects/tt-core/src/lib/db/Models/vehicle/vehicle.ts +9 -0
  393. package/projects/tt-core/src/lib/db-static/chart-accounts/chart-accounts-values.ts +11 -0
  394. package/projects/tt-core/src/lib/forms/abstract.form.ts +224 -0
  395. package/projects/tt-core/src/lib/forms/address/address.form.ts +228 -0
  396. package/projects/tt-core/src/lib/forms/address/index.ts +1 -0
  397. package/projects/tt-core/src/lib/forms/aussie/aussie-appointment.form.ts +16 -0
  398. package/projects/tt-core/src/lib/forms/aussie/aussie-confirmation.form.ts +13 -0
  399. package/projects/tt-core/src/lib/forms/aussie/aussie-store.form.ts +32 -0
  400. package/projects/tt-core/src/lib/forms/aussie/index.ts +3 -0
  401. package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-add-manual.form.ts +57 -0
  402. package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-allocation.form.ts +60 -0
  403. package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-import.form.ts +31 -0
  404. package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-properties.form.ts +78 -0
  405. package/projects/tt-core/src/lib/forms/bank/bank-account/bank-accounts-import.form.ts +82 -0
  406. package/projects/tt-core/src/lib/forms/bank/bank-transaction-comment.form.ts +12 -0
  407. package/projects/tt-core/src/lib/forms/bank/index.ts +6 -0
  408. package/projects/tt-core/src/lib/forms/budget/budget-rule.form.ts +56 -0
  409. package/projects/tt-core/src/lib/forms/budget/budget.form.ts +94 -0
  410. package/projects/tt-core/src/lib/forms/budget/index.ts +2 -0
  411. package/projects/tt-core/src/lib/forms/chart-accounts/chart-accounts.form.ts +26 -0
  412. package/projects/tt-core/src/lib/forms/chart-accounts/index.ts +1 -0
  413. package/projects/tt-core/src/lib/forms/chat/chat-filter.form.ts +50 -0
  414. package/projects/tt-core/src/lib/forms/chat/index.ts +1 -0
  415. package/projects/tt-core/src/lib/forms/client/annual-client-details.form.ts +48 -0
  416. package/projects/tt-core/src/lib/forms/client/capital-loss.form.ts +12 -0
  417. package/projects/tt-core/src/lib/forms/client/index.ts +2 -0
  418. package/projects/tt-core/src/lib/forms/collection.form.ts +37 -0
  419. package/projects/tt-core/src/lib/forms/depreciation/depreciation.form.ts +50 -0
  420. package/projects/tt-core/src/lib/forms/depreciation/index.ts +1 -0
  421. package/projects/tt-core/src/lib/forms/document-folder/document-folder.form.ts +13 -0
  422. package/projects/tt-core/src/lib/forms/document-folder/document.form.ts +12 -0
  423. package/projects/tt-core/src/lib/forms/document-folder/index.ts +2 -0
  424. package/projects/tt-core/src/lib/forms/financial-goal/financial-goal-filter.form.ts +57 -0
  425. package/projects/tt-core/src/lib/forms/financial-goal/financial-goal.form.ts +167 -0
  426. package/projects/tt-core/src/lib/forms/financial-goal/index.ts +2 -0
  427. package/projects/tt-core/src/lib/forms/firm/client-invite-put.form.ts +18 -0
  428. package/projects/tt-core/src/lib/forms/firm/client-invite.form.ts +27 -0
  429. package/projects/tt-core/src/lib/forms/firm/client-movement.form.ts +22 -0
  430. package/projects/tt-core/src/lib/forms/firm/employee-details.form.ts +20 -0
  431. package/projects/tt-core/src/lib/forms/firm/employee-invite.form.ts +33 -0
  432. package/projects/tt-core/src/lib/forms/firm/firm-branch.form.ts +14 -0
  433. package/projects/tt-core/src/lib/forms/firm/firm-invite.form.ts +27 -0
  434. package/projects/tt-core/src/lib/forms/firm/firm.form.ts +22 -0
  435. package/projects/tt-core/src/lib/forms/firm/index.ts +8 -0
  436. package/projects/tt-core/src/lib/forms/form-validations.enum.ts +10 -0
  437. package/projects/tt-core/src/lib/forms/holding/holding-reinvest.form.ts +97 -0
  438. package/projects/tt-core/src/lib/forms/holding/holding-trade/holding-trade-filter.form.ts +64 -0
  439. package/projects/tt-core/src/lib/forms/holding/holding-trade/holding-trade.form.ts +35 -0
  440. package/projects/tt-core/src/lib/forms/holding/holding-trade/index.ts +2 -0
  441. package/projects/tt-core/src/lib/forms/holding/holding-trade-import.form.ts +32 -0
  442. package/projects/tt-core/src/lib/forms/holding/holding-type.form.ts +18 -0
  443. package/projects/tt-core/src/lib/forms/holding/index.ts +4 -0
  444. package/projects/tt-core/src/lib/forms/home-office/home-office-calculator.form.ts +37 -0
  445. package/projects/tt-core/src/lib/forms/home-office/home-office-claim.form.ts +50 -0
  446. package/projects/tt-core/src/lib/forms/home-office/home-office-log.form.ts +15 -0
  447. package/projects/tt-core/src/lib/forms/home-office/index.ts +3 -0
  448. package/projects/tt-core/src/lib/forms/index.ts +39 -0
  449. package/projects/tt-core/src/lib/forms/loan/index.ts +1 -0
  450. package/projects/tt-core/src/lib/forms/loan/loan.form.ts +99 -0
  451. package/projects/tt-core/src/lib/forms/login/login.form.ts +11 -0
  452. package/projects/tt-core/src/lib/forms/money/index.ts +1 -0
  453. package/projects/tt-core/src/lib/forms/money/money-schedule-filter.form.ts +95 -0
  454. package/projects/tt-core/src/lib/forms/phone/index.ts +1 -0
  455. package/projects/tt-core/src/lib/forms/phone/phone.form.ts +20 -0
  456. package/projects/tt-core/src/lib/forms/property/borrowing-report.form.ts +33 -0
  457. package/projects/tt-core/src/lib/forms/property/index.ts +9 -0
  458. package/projects/tt-core/src/lib/forms/property/property-add.form.ts +67 -0
  459. package/projects/tt-core/src/lib/forms/property/property-category-movement-form.ts +23 -0
  460. package/projects/tt-core/src/lib/forms/property/property-edit.form.ts +28 -0
  461. package/projects/tt-core/src/lib/forms/property/property-forecast.form.ts +36 -0
  462. package/projects/tt-core/src/lib/forms/property/property-sale/index.ts +3 -0
  463. package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-cost-base.form.ts +49 -0
  464. package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-cost-sale.form.ts +78 -0
  465. package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-exemptions.form.ts +141 -0
  466. package/projects/tt-core/src/lib/forms/property/property-share.form.ts +16 -0
  467. package/projects/tt-core/src/lib/forms/property/property-valuation.form.ts +37 -0
  468. package/projects/tt-core/src/lib/forms/register/register-client.form.ts +23 -0
  469. package/projects/tt-core/src/lib/forms/register/register-firm.form.ts +27 -0
  470. package/projects/tt-core/src/lib/forms/report/my-tax/index.ts +16 -0
  471. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.form.ts +37 -0
  472. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.form.ts +86 -0
  473. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income-or-losses.form.ts +23 -0
  474. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.form.ts +84 -0
  475. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-cgt.form.ts +35 -0
  476. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-deductions.form.ts +98 -0
  477. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-dividends.form.ts +26 -0
  478. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-income-statements.form.ts +121 -0
  479. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-income-tests.form.ts +13 -0
  480. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-interest.form.ts +15 -0
  481. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-losses.form.ts +14 -0
  482. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-medicare.form.ts +42 -0
  483. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-offsets.form.ts +13 -0
  484. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-other-income.form.ts +46 -0
  485. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.ts +40 -0
  486. package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-rent.form.ts +16 -0
  487. package/projects/tt-core/src/lib/forms/sole/bas-report.form.ts +74 -0
  488. package/projects/tt-core/src/lib/forms/sole/index.ts +11 -0
  489. package/projects/tt-core/src/lib/forms/sole/invoice-payment.form.ts +14 -0
  490. package/projects/tt-core/src/lib/forms/sole/sole-business-allocations.form.ts +79 -0
  491. package/projects/tt-core/src/lib/forms/sole/sole-business-loss.form.ts +26 -0
  492. package/projects/tt-core/src/lib/forms/sole/sole-business.form.ts +82 -0
  493. package/projects/tt-core/src/lib/forms/sole/sole-contact.form.ts +22 -0
  494. package/projects/tt-core/src/lib/forms/sole/sole-depreciation-method.form.ts +13 -0
  495. package/projects/tt-core/src/lib/forms/sole/sole-details.form.ts +15 -0
  496. package/projects/tt-core/src/lib/forms/sole/sole-invoice-item.form.ts +20 -0
  497. package/projects/tt-core/src/lib/forms/sole/sole-invoice-template.form.ts +18 -0
  498. package/projects/tt-core/src/lib/forms/sole/sole-invoice.form.ts +192 -0
  499. package/projects/tt-core/src/lib/forms/tax-review/index.ts +2 -0
  500. package/projects/tt-core/src/lib/forms/tax-review/tax-review-filter-status.enum.ts +4 -0
  501. package/projects/tt-core/src/lib/forms/tax-review/tax-review-filter.form.ts +65 -0
  502. package/projects/tt-core/src/lib/forms/transaction/allocation-rule-condition.form.ts +18 -0
  503. package/projects/tt-core/src/lib/forms/transaction/allocation-rule-transaction-meta-field.form.ts +14 -0
  504. package/projects/tt-core/src/lib/forms/transaction/allocation-rule-transaction.form.ts +194 -0
  505. package/projects/tt-core/src/lib/forms/transaction/allocation-rule.form.ts +234 -0
  506. package/projects/tt-core/src/lib/forms/transaction/holding/holding-expense.form.ts +14 -0
  507. package/projects/tt-core/src/lib/forms/transaction/holding/holding-income.form.ts +76 -0
  508. package/projects/tt-core/src/lib/forms/transaction/index.ts +10 -0
  509. package/projects/tt-core/src/lib/forms/transaction/messages.enum.ts +3 -0
  510. package/projects/tt-core/src/lib/forms/transaction/sole/sole-income.form.ts +22 -0
  511. package/projects/tt-core/src/lib/forms/transaction/sole/sole-transaction.form.ts +14 -0
  512. package/projects/tt-core/src/lib/forms/transaction/transaction-base-filter.form.ts +100 -0
  513. package/projects/tt-core/src/lib/forms/transaction/transaction-base-filter.ts +10 -0
  514. package/projects/tt-core/src/lib/forms/transaction/transaction-base.form.ts +117 -0
  515. package/projects/tt-core/src/lib/forms/transaction/transaction.form.ts +85 -0
  516. package/projects/tt-core/src/lib/forms/transaction/work/work-expense.form.ts +67 -0
  517. package/projects/tt-core/src/lib/forms/transaction/work/work-income.form.ts +104 -0
  518. package/projects/tt-core/src/lib/forms/transaction/work/work-transaction.form.ts +63 -0
  519. package/projects/tt-core/src/lib/forms/user/client-details.form.ts +43 -0
  520. package/projects/tt-core/src/lib/forms/user/index.ts +6 -0
  521. package/projects/tt-core/src/lib/forms/user/mfa-details.form.ts +14 -0
  522. package/projects/tt-core/src/lib/forms/user/password.form.ts +14 -0
  523. package/projects/tt-core/src/lib/forms/user/reset-password.form.ts +11 -0
  524. package/projects/tt-core/src/lib/forms/user/user-invite.form.ts +19 -0
  525. package/projects/tt-core/src/lib/forms/user/user.form.ts +29 -0
  526. package/projects/tt-core/src/lib/forms/vehicle/index.ts +4 -0
  527. package/projects/tt-core/src/lib/forms/vehicle/vehicle-claim-details.form.ts +18 -0
  528. package/projects/tt-core/src/lib/forms/vehicle/vehicle-claim.form.ts +31 -0
  529. package/projects/tt-core/src/lib/forms/vehicle/vehicle-logbook.form.ts +79 -0
  530. package/projects/tt-core/src/lib/forms/vehicle/vehicle.form.ts +19 -0
  531. package/projects/tt-core/src/lib/functions/array/index.ts +4 -0
  532. package/projects/tt-core/src/lib/functions/array/replace.ts +5 -0
  533. package/projects/tt-core/src/lib/functions/array/sort-deep.ts +19 -0
  534. package/projects/tt-core/src/lib/functions/array/sort.ts +8 -0
  535. package/projects/tt-core/src/lib/functions/array/to-array.ts +6 -0
  536. package/projects/tt-core/src/lib/functions/clone-deep.ts +4 -0
  537. package/projects/tt-core/src/lib/functions/create-date.ts +7 -0
  538. package/projects/tt-core/src/lib/functions/date/index.ts +1 -0
  539. package/projects/tt-core/src/lib/functions/date/recurring-dates.ts +45 -0
  540. package/projects/tt-core/src/lib/functions/enum-to-list.ts +16 -0
  541. package/projects/tt-core/src/lib/functions/get-doc-icon.ts +21 -0
  542. package/projects/tt-core/src/lib/functions/mat-options-functions.ts +15 -0
  543. package/projects/tt-core/src/lib/functions/mat-sort-options.ts +9 -0
  544. package/projects/tt-core/src/lib/interceptors/ad-block-error.interceptor.ts +40 -0
  545. package/projects/tt-core/src/lib/interceptors/adblock-error-html.token.ts +12 -0
  546. package/projects/tt-core/src/lib/interceptors/aussie.interceptor.ts +36 -0
  547. package/projects/tt-core/src/lib/interceptors/basiq-client-id.interceptor.ts +33 -0
  548. package/projects/tt-core/src/lib/interceptors/basiq-token.interceptor.ts +38 -0
  549. package/projects/tt-core/src/lib/interceptors/corelogic-interceptor.ts +48 -0
  550. package/projects/tt-core/src/lib/interceptors/financial-year-interceptor.ts +44 -0
  551. package/projects/tt-core/src/lib/interceptors/interceptors.module.ts +68 -0
  552. package/projects/tt-core/src/lib/interceptors/preloader.interceptor.ts +42 -0
  553. package/projects/tt-core/src/lib/interceptors/rewardful.interceptor.ts +47 -0
  554. package/projects/tt-core/src/lib/interceptors/user-switcher-interceptor.ts +45 -0
  555. package/projects/tt-core/src/lib/interfaces/asset-entity-type.enum.ts +10 -0
  556. package/projects/tt-core/src/lib/interfaces/asset-type.enum.ts +11 -0
  557. package/projects/tt-core/src/lib/interfaces/asset.interface.ts +18 -0
  558. package/projects/tt-core/src/lib/interfaces/calendar-event.interface.ts +5 -0
  559. package/projects/tt-core/src/lib/interfaces/chart-data.interface.ts +11 -0
  560. package/projects/tt-core/src/lib/interfaces/chart-serie.interface.ts +8 -0
  561. package/projects/tt-core/src/lib/interfaces/document.interface.ts +10 -0
  562. package/projects/tt-core/src/lib/interfaces/documentable.interface.ts +9 -0
  563. package/projects/tt-core/src/lib/interfaces/event-listener.interface.ts +10 -0
  564. package/projects/tt-core/src/lib/interfaces/expense.interface.ts +13 -0
  565. package/projects/tt-core/src/lib/interfaces/income-source-forecast.interface.ts +13 -0
  566. package/projects/tt-core/src/lib/interfaces/index.ts +14 -0
  567. package/projects/tt-core/src/lib/interfaces/option.interface.ts +4 -0
  568. package/projects/tt-core/src/lib/interfaces/tank.interface.ts +9 -0
  569. package/projects/tt-core/src/lib/interfaces/updatable.interface.ts +9 -0
  570. package/projects/tt-core/src/lib/local-storage/local-storage.ts +26 -0
  571. package/projects/tt-core/src/lib/local-storage/user-storage.ts +6 -0
  572. package/projects/tt-core/src/lib/messages/index.ts +1 -0
  573. package/projects/tt-core/src/lib/messages/messages.enum.ts +16 -0
  574. package/projects/tt-core/src/lib/models/account-setup/account-setup-item-status.enum.ts +5 -0
  575. package/projects/tt-core/src/lib/models/account-setup/account-setup-item.ts +22 -0
  576. package/projects/tt-core/src/lib/models/account-setup/account-setup-items.enum.ts +49 -0
  577. package/projects/tt-core/src/lib/models/account-setup/index.ts +3 -0
  578. package/projects/tt-core/src/lib/models/address/address.ts +54 -0
  579. package/projects/tt-core/src/lib/models/address/country.ts +20 -0
  580. package/projects/tt-core/src/lib/models/address/index.ts +3 -0
  581. package/projects/tt-core/src/lib/models/address/states.enum.ts +10 -0
  582. package/projects/tt-core/src/lib/models/asset-sale.ts +11 -0
  583. package/projects/tt-core/src/lib/models/aussie/aussie-appointment.ts +13 -0
  584. package/projects/tt-core/src/lib/models/aussie/aussie-broker.ts +34 -0
  585. package/projects/tt-core/src/lib/models/aussie/aussie-store.interface.ts +7 -0
  586. package/projects/tt-core/src/lib/models/aussie/aussie-store.ts +11 -0
  587. package/projects/tt-core/src/lib/models/aussie/index.ts +4 -0
  588. package/projects/tt-core/src/lib/models/badge/badge-color.enum.ts +11 -0
  589. package/projects/tt-core/src/lib/models/badge/badge.ts +22 -0
  590. package/projects/tt-core/src/lib/models/bank/allocation-group.ts +88 -0
  591. package/projects/tt-core/src/lib/models/bank/bank-account-chart-data.ts +38 -0
  592. package/projects/tt-core/src/lib/models/bank/bank-account-property.ts +11 -0
  593. package/projects/tt-core/src/lib/models/bank/bank-account.ts +221 -0
  594. package/projects/tt-core/src/lib/models/bank/bank-connection.ts +121 -0
  595. package/projects/tt-core/src/lib/models/bank/bank-external-stats.ts +12 -0
  596. package/projects/tt-core/src/lib/models/bank/bank-transaction-chart-data.ts +126 -0
  597. package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/bank-transaction-comment.interface.ts +10 -0
  598. package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/bank-transaction-comment.ts +17 -0
  599. package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/index.ts +2 -0
  600. package/projects/tt-core/src/lib/models/bank/bank-transaction-summary-fields.enum.ts +4 -0
  601. package/projects/tt-core/src/lib/models/bank/bank-transaction.ts +85 -0
  602. package/projects/tt-core/src/lib/models/bank/bank.ts +39 -0
  603. package/projects/tt-core/src/lib/models/bank/basiq/basiq-config.ts +34 -0
  604. package/projects/tt-core/src/lib/models/bank/basiq/basiq-connection-data.interface.ts +8 -0
  605. package/projects/tt-core/src/lib/models/bank/basiq/basiq-connections-response.interface.ts +9 -0
  606. package/projects/tt-core/src/lib/models/bank/basiq/basiq-job-response.ts +17 -0
  607. package/projects/tt-core/src/lib/models/bank/basiq/basiq-job-step.ts +24 -0
  608. package/projects/tt-core/src/lib/models/bank/basiq/basiq-job.ts +4 -0
  609. package/projects/tt-core/src/lib/models/bank/basiq/basiq-token-response.interface.ts +9 -0
  610. package/projects/tt-core/src/lib/models/bank/basiq/basiq-token.ts +22 -0
  611. package/projects/tt-core/src/lib/models/bank/basiq/index.ts +8 -0
  612. package/projects/tt-core/src/lib/models/bank/index.ts +14 -0
  613. package/projects/tt-core/src/lib/models/bank/type-loan.const.ts +6 -0
  614. package/projects/tt-core/src/lib/models/borrowing-expense/borrowing-expense-loan.ts +4 -0
  615. package/projects/tt-core/src/lib/models/borrowing-expense/borrowing-expense.ts +4 -0
  616. package/projects/tt-core/src/lib/models/borrowing-expense/index.ts +2 -0
  617. package/projects/tt-core/src/lib/models/budget/budget-metadata.interface.ts +11 -0
  618. package/projects/tt-core/src/lib/models/budget/budget-rule/budget-rule.ts +89 -0
  619. package/projects/tt-core/src/lib/models/budget/budget.ts +46 -0
  620. package/projects/tt-core/src/lib/models/budget/index.ts +3 -0
  621. package/projects/tt-core/src/lib/models/chart/chart-data.ts +9 -0
  622. package/projects/tt-core/src/lib/models/chart/chart-serie.ts +8 -0
  623. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-categories.const.ts +123 -0
  624. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-category.e-collection.ts +64 -0
  625. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-depreciation.ts +16 -0
  626. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-heading.ts +6 -0
  627. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-meta-field.ts +23 -0
  628. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-tax-labels.enum.ts +5 -0
  629. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-value.ts +4 -0
  630. package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts.ts +377 -0
  631. package/projects/tt-core/src/lib/models/chart-accounts/index.ts +8 -0
  632. package/projects/tt-core/src/lib/models/chat/chat-view-type.enum.ts +4 -0
  633. package/projects/tt-core/src/lib/models/chat/chat.ts +30 -0
  634. package/projects/tt-core/src/lib/models/chat/index.ts +4 -0
  635. package/projects/tt-core/src/lib/models/chat/message-document.ts +18 -0
  636. package/projects/tt-core/src/lib/models/chat/message.ts +44 -0
  637. package/projects/tt-core/src/lib/models/client/annual-client-details.ts +21 -0
  638. package/projects/tt-core/src/lib/models/client/capital-loss.interface.ts +6 -0
  639. package/projects/tt-core/src/lib/models/client/capital-loss.ts +15 -0
  640. package/projects/tt-core/src/lib/models/client/client-details.ts +35 -0
  641. package/projects/tt-core/src/lib/models/client/client-invite.ts +76 -0
  642. package/projects/tt-core/src/lib/models/client/client-movement.ts +25 -0
  643. package/projects/tt-core/src/lib/models/client/client-portfolio-chart-data.ts +63 -0
  644. package/projects/tt-core/src/lib/models/client/client-portfolio-report.ts +12 -0
  645. package/projects/tt-core/src/lib/models/client/index.ts +8 -0
  646. package/projects/tt-core/src/lib/models/color/alphabet-colors.enum.ts +28 -0
  647. package/projects/tt-core/src/lib/models/date-range.ts +12 -0
  648. package/projects/tt-core/src/lib/models/depreciation/depreciation-capital-project.ts +7 -0
  649. package/projects/tt-core/src/lib/models/depreciation/depreciation-forecast.ts +54 -0
  650. package/projects/tt-core/src/lib/models/depreciation/depreciation-group-item.ts +25 -0
  651. package/projects/tt-core/src/lib/models/depreciation/depreciation-group.enum.ts +8 -0
  652. package/projects/tt-core/src/lib/models/depreciation/depreciation-group.ts +35 -0
  653. package/projects/tt-core/src/lib/models/depreciation/depreciation-groups.const.ts +40 -0
  654. package/projects/tt-core/src/lib/models/depreciation/depreciation-lvp-rate.enum.ts +7 -0
  655. package/projects/tt-core/src/lib/models/depreciation/depreciation.ts +201 -0
  656. package/projects/tt-core/src/lib/models/depreciation/index.ts +8 -0
  657. package/projects/tt-core/src/lib/models/dictionary/dictionary.ts +73 -0
  658. package/projects/tt-core/src/lib/models/dictionary/index.ts +1 -0
  659. package/projects/tt-core/src/lib/models/document/document-api-url-prefix.enum.ts +7 -0
  660. package/projects/tt-core/src/lib/models/document/document-file-types.const.ts +22 -0
  661. package/projects/tt-core/src/lib/models/document/document-folder.ts +28 -0
  662. package/projects/tt-core/src/lib/models/document/document.ts +34 -0
  663. package/projects/tt-core/src/lib/models/document/index.ts +5 -0
  664. package/projects/tt-core/src/lib/models/document/tree-node-data.ts +19 -0
  665. package/projects/tt-core/src/lib/models/employee/employee-details.ts +15 -0
  666. package/projects/tt-core/src/lib/models/employee/employee-invite.ts +32 -0
  667. package/projects/tt-core/src/lib/models/endpoint/endpoint.ts +32 -0
  668. package/projects/tt-core/src/lib/models/endpoint/endpoints.const.ts +343 -0
  669. package/projects/tt-core/src/lib/models/event/app-event-type.enum.ts +58 -0
  670. package/projects/tt-core/src/lib/models/event/app-event.ts +21 -0
  671. package/projects/tt-core/src/lib/models/event/index.ts +2 -0
  672. package/projects/tt-core/src/lib/models/export/export-cell-type.enum.ts +9 -0
  673. package/projects/tt-core/src/lib/models/export/export-cell.ts +9 -0
  674. package/projects/tt-core/src/lib/models/export/export-data-table.ts +12 -0
  675. package/projects/tt-core/src/lib/models/export/export-format.enum.ts +4 -0
  676. package/projects/tt-core/src/lib/models/export/export-row-data-type.enum.ts +8 -0
  677. package/projects/tt-core/src/lib/models/export/export-row.ts +9 -0
  678. package/projects/tt-core/src/lib/models/file/file.ts +17 -0
  679. package/projects/tt-core/src/lib/models/file/icons-file.enum.ts +5 -0
  680. package/projects/tt-core/src/lib/models/file/index.ts +1 -0
  681. package/projects/tt-core/src/lib/models/financial-goal/financial-goal-status.enum.ts +5 -0
  682. package/projects/tt-core/src/lib/models/financial-goal/financial-goal-type.enum.ts +6 -0
  683. package/projects/tt-core/src/lib/models/financial-goal/financial-goal.interface.ts +25 -0
  684. package/projects/tt-core/src/lib/models/financial-goal/financial-goal.ts +195 -0
  685. package/projects/tt-core/src/lib/models/financial-goal/index.ts +4 -0
  686. package/projects/tt-core/src/lib/models/financial-year/financial-year.ts +72 -0
  687. package/projects/tt-core/src/lib/models/financial-year/index.ts +4 -0
  688. package/projects/tt-core/src/lib/models/financial-year/month-name-short.enum.ts +19 -0
  689. package/projects/tt-core/src/lib/models/financial-year/month-number.enum.ts +19 -0
  690. package/projects/tt-core/src/lib/models/financial-year/months.const.ts +1 -0
  691. package/projects/tt-core/src/lib/models/firm/firm-branch.interface.ts +7 -0
  692. package/projects/tt-core/src/lib/models/firm/firm-branch.ts +17 -0
  693. package/projects/tt-core/src/lib/models/firm/firm.ts +25 -0
  694. package/projects/tt-core/src/lib/models/firm/index.ts +2 -0
  695. package/projects/tt-core/src/lib/models/fullcalendar/calendar-event.ts +26 -0
  696. package/projects/tt-core/src/lib/models/fullcalendar/index.ts +2 -0
  697. package/projects/tt-core/src/lib/models/fullcalendar/money-calendar-event.ts +35 -0
  698. package/projects/tt-core/src/lib/models/holding/holding-reinvest.ts +20 -0
  699. package/projects/tt-core/src/lib/models/holding/holding-sale.ts +52 -0
  700. package/projects/tt-core/src/lib/models/holding/holding-trade-import.ts +13 -0
  701. package/projects/tt-core/src/lib/models/holding/holding-trade-report-item.ts +28 -0
  702. package/projects/tt-core/src/lib/models/holding/holding-trade.ts +106 -0
  703. package/projects/tt-core/src/lib/models/holding/holding-type-exchange.ts +20 -0
  704. package/projects/tt-core/src/lib/models/holding/holding-type.ts +88 -0
  705. package/projects/tt-core/src/lib/models/holding/holding.ts +75 -0
  706. package/projects/tt-core/src/lib/models/holding/index.ts +8 -0
  707. package/projects/tt-core/src/lib/models/home-office/home-office-claim.interface.ts +22 -0
  708. package/projects/tt-core/src/lib/models/home-office/home-office-claim.ts +51 -0
  709. package/projects/tt-core/src/lib/models/home-office/home-office-log.interface.ts +10 -0
  710. package/projects/tt-core/src/lib/models/home-office/home-office-log.ts +20 -0
  711. package/projects/tt-core/src/lib/models/home-office/index.ts +4 -0
  712. package/projects/tt-core/src/lib/models/income-position/income-position.ts +13 -0
  713. package/projects/tt-core/src/lib/models/income-source/income-source-chart-data.ts +57 -0
  714. package/projects/tt-core/src/lib/models/income-source/income-source-forecast.ts +34 -0
  715. package/projects/tt-core/src/lib/models/income-source/income-source-type.ts +24 -0
  716. package/projects/tt-core/src/lib/models/income-source/income-source.ts +64 -0
  717. package/projects/tt-core/src/lib/models/income-source/index.ts +6 -0
  718. package/projects/tt-core/src/lib/models/income-source/salary-forecast.ts +38 -0
  719. package/projects/tt-core/src/lib/models/income-source/sole-forecast.ts +14 -0
  720. package/projects/tt-core/src/lib/models/index.ts +35 -0
  721. package/projects/tt-core/src/lib/models/loan/index.ts +4 -0
  722. package/projects/tt-core/src/lib/models/loan/loan-max-number-of-payments.enum.ts +9 -0
  723. package/projects/tt-core/src/lib/models/loan/loan-payment.ts +19 -0
  724. package/projects/tt-core/src/lib/models/loan/loan-payout.ts +13 -0
  725. package/projects/tt-core/src/lib/models/loan/loan.ts +99 -0
  726. package/projects/tt-core/src/lib/models/notification/index.ts +1 -0
  727. package/projects/tt-core/src/lib/models/notification/notification.ts +41 -0
  728. package/projects/tt-core/src/lib/models/pdf/pdf-orientation.enum.ts +4 -0
  729. package/projects/tt-core/src/lib/models/pdf/pdf-settings.ts +15 -0
  730. package/projects/tt-core/src/lib/models/phone/phone.ts +15 -0
  731. package/projects/tt-core/src/lib/models/property/borrowing-report.ts +57 -0
  732. package/projects/tt-core/src/lib/models/property/calculation-form-item.ts +24 -0
  733. package/projects/tt-core/src/lib/models/property/calculation-form-type.enum.ts +7 -0
  734. package/projects/tt-core/src/lib/models/property/capital-costs-itmes.const.ts +57 -0
  735. package/projects/tt-core/src/lib/models/property/corelogic-suggestion.ts +18 -0
  736. package/projects/tt-core/src/lib/models/property/index.ts +18 -0
  737. package/projects/tt-core/src/lib/models/property/property-category-movement.ts +22 -0
  738. package/projects/tt-core/src/lib/models/property/property-category.ts +13 -0
  739. package/projects/tt-core/src/lib/models/property/property-corelogic-stats.interface.ts +9 -0
  740. package/projects/tt-core/src/lib/models/property/property-equity-chart-data.ts +205 -0
  741. package/projects/tt-core/src/lib/models/property/property-equity-chart-item.ts +35 -0
  742. package/projects/tt-core/src/lib/models/property/property-equity-chart-type.enum.ts +4 -0
  743. package/projects/tt-core/src/lib/models/property/property-forecast.ts +40 -0
  744. package/projects/tt-core/src/lib/models/property/property-sale/index.ts +5 -0
  745. package/projects/tt-core/src/lib/models/property/property-sale/property-sale-cost-base.ts +25 -0
  746. package/projects/tt-core/src/lib/models/property/property-sale/property-sale-tax-exemption-meta-field.ts +4 -0
  747. package/projects/tt-core/src/lib/models/property/property-sale/property-sale.ts +60 -0
  748. package/projects/tt-core/src/lib/models/property/property-sale/tax-exemption-meta-field.ts +4 -0
  749. package/projects/tt-core/src/lib/models/property/property-sale/tax-exemption.ts +8 -0
  750. package/projects/tt-core/src/lib/models/property/property-share.ts +50 -0
  751. package/projects/tt-core/src/lib/models/property/property-subscription.ts +11 -0
  752. package/projects/tt-core/src/lib/models/property/property-valuation.ts +27 -0
  753. package/projects/tt-core/src/lib/models/property/property.ts +328 -0
  754. package/projects/tt-core/src/lib/models/registration-invite/registration-invite.ts +16 -0
  755. package/projects/tt-core/src/lib/models/report/budget/budget-rule-item.ts +70 -0
  756. package/projects/tt-core/src/lib/models/report/budget/index.ts +2 -0
  757. package/projects/tt-core/src/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.ts +8 -0
  758. package/projects/tt-core/src/lib/models/report/depreciation/depreciation-lvp-report-item.ts +21 -0
  759. package/projects/tt-core/src/lib/models/report/depreciation/depreciation-report-item.ts +27 -0
  760. package/projects/tt-core/src/lib/models/report/depreciation/index.ts +3 -0
  761. package/projects/tt-core/src/lib/models/report/income-expense/transaction-report-item.ts +25 -0
  762. package/projects/tt-core/src/lib/models/report/index.ts +9 -0
  763. package/projects/tt-core/src/lib/models/report/my-tax/ato-links.ts +10 -0
  764. package/projects/tt-core/src/lib/models/report/my-tax/index.ts +25 -0
  765. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/business-income-or-losses-categories.const.ts +27 -0
  766. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.ts +9 -0
  767. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.ts +14 -0
  768. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-details/my-tax-business-details.ts +30 -0
  769. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-income/my-tax-business-income.ts +108 -0
  770. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/my-tax-business-losses/my-tax-business-losses.ts +115 -0
  771. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.ts +7 -0
  772. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.ts +51 -0
  773. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.ts +11 -0
  774. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.ts +62 -0
  775. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.ts +8 -0
  776. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.ts +146 -0
  777. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.ts +26 -0
  778. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.ts +59 -0
  779. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.ts +125 -0
  780. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.ts +11 -0
  781. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-interest/my-tax-interest.ts +20 -0
  782. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-losses/my-tax-losses.ts +26 -0
  783. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.ts +11 -0
  784. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.ts +68 -0
  785. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.ts +51 -0
  786. package/projects/tt-core/src/lib/models/report/my-tax/my-tax-rent/my-tax-rent.ts +63 -0
  787. package/projects/tt-core/src/lib/models/report/property/index.ts +3 -0
  788. package/projects/tt-core/src/lib/models/report/property/property-report-item-depreciation.ts +33 -0
  789. package/projects/tt-core/src/lib/models/report/property/property-report-item-transaction.ts +19 -0
  790. package/projects/tt-core/src/lib/models/report/property/property-report-item.ts +50 -0
  791. package/projects/tt-core/src/lib/models/report/report.interface.ts +6 -0
  792. package/projects/tt-core/src/lib/models/report/report.ts +8 -0
  793. package/projects/tt-core/src/lib/models/report/reports.const.ts +114 -0
  794. package/projects/tt-core/src/lib/models/report/sole/index.ts +1 -0
  795. package/projects/tt-core/src/lib/models/report/sole/sole-business/sole-business-loss-report.ts +31 -0
  796. package/projects/tt-core/src/lib/models/report/vehicle-expense/vehicle-expense.ts +24 -0
  797. package/projects/tt-core/src/lib/models/service-subscription/index.ts +9 -0
  798. package/projects/tt-core/src/lib/models/service-subscription/module-url-list.const.ts +11 -0
  799. package/projects/tt-core/src/lib/models/service-subscription/payment-method-brand.enum.ts +10 -0
  800. package/projects/tt-core/src/lib/models/service-subscription/product-quantity-discount-percent.const.ts +8 -0
  801. package/projects/tt-core/src/lib/models/service-subscription/service-payment-method.ts +37 -0
  802. package/projects/tt-core/src/lib/models/service-subscription/service-payment.ts +23 -0
  803. package/projects/tt-core/src/lib/models/service-subscription/service-price.ts +51 -0
  804. package/projects/tt-core/src/lib/models/service-subscription/service-product-icons.enum.ts +9 -0
  805. package/projects/tt-core/src/lib/models/service-subscription/service-product-roles.const.ts +11 -0
  806. package/projects/tt-core/src/lib/models/service-subscription/service-product.ts +49 -0
  807. package/projects/tt-core/src/lib/models/service-subscription/service-promo-code-duration.enum.ts +5 -0
  808. package/projects/tt-core/src/lib/models/service-subscription/service-promo-code.ts +59 -0
  809. package/projects/tt-core/src/lib/models/service-subscription/service-subscription-item.ts +26 -0
  810. package/projects/tt-core/src/lib/models/service-subscription/service-subscription.ts +193 -0
  811. package/projects/tt-core/src/lib/models/sharesight/index.ts +4 -0
  812. package/projects/tt-core/src/lib/models/sharesight/sharesight-details-messages.enum.ts +7 -0
  813. package/projects/tt-core/src/lib/models/sharesight/sharesight-details.interface.ts +12 -0
  814. package/projects/tt-core/src/lib/models/sharesight/sharesight-details.ts +34 -0
  815. package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/index.ts +3 -0
  816. package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.interface.ts +8 -0
  817. package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.messages.ts +3 -0
  818. package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.ts +13 -0
  819. package/projects/tt-core/src/lib/models/sole/bas-report.ts +49 -0
  820. package/projects/tt-core/src/lib/models/sole/index.ts +12 -0
  821. package/projects/tt-core/src/lib/models/sole/sole-business-activity.ts +5 -0
  822. package/projects/tt-core/src/lib/models/sole/sole-business-allocation.ts +15 -0
  823. package/projects/tt-core/src/lib/models/sole/sole-business-loss-offset-rule.ts +7 -0
  824. package/projects/tt-core/src/lib/models/sole/sole-business-loss.ts +24 -0
  825. package/projects/tt-core/src/lib/models/sole/sole-business.ts +56 -0
  826. package/projects/tt-core/src/lib/models/sole/sole-contact.ts +29 -0
  827. package/projects/tt-core/src/lib/models/sole/sole-depreciation-method.ts +8 -0
  828. package/projects/tt-core/src/lib/models/sole/sole-details.ts +8 -0
  829. package/projects/tt-core/src/lib/models/sole/sole-invoice-item.ts +71 -0
  830. package/projects/tt-core/src/lib/models/sole/sole-invoice-template.ts +28 -0
  831. package/projects/tt-core/src/lib/models/sole/sole-invoice.ts +158 -0
  832. package/projects/tt-core/src/lib/models/tax-return/index.ts +3 -0
  833. package/projects/tt-core/src/lib/models/tax-return/tax-return-category.ts +17 -0
  834. package/projects/tt-core/src/lib/models/tax-return/tax-return-item.ts +39 -0
  835. package/projects/tt-core/src/lib/models/tax-return/tax-return.ts +8 -0
  836. package/projects/tt-core/src/lib/models/tax-review/tax-review.ts +109 -0
  837. package/projects/tt-core/src/lib/models/tax-summary/report-item-details.ts +15 -0
  838. package/projects/tt-core/src/lib/models/tax-summary/report-item.ts +36 -0
  839. package/projects/tt-core/src/lib/models/tax-summary/tax-summary-section.ts +34 -0
  840. package/projects/tt-core/src/lib/models/tax-summary/tax-summary-type.enum.ts +7 -0
  841. package/projects/tt-core/src/lib/models/tax-summary/tax-summary.ts +237 -0
  842. package/projects/tt-core/src/lib/models/toast/toast-type.enum.ts +6 -0
  843. package/projects/tt-core/src/lib/models/toast/toast.ts +15 -0
  844. package/projects/tt-core/src/lib/models/transaction/allocation-rule-condition.ts +48 -0
  845. package/projects/tt-core/src/lib/models/transaction/allocation-rule-transaction-meta-field.ts +4 -0
  846. package/projects/tt-core/src/lib/models/transaction/allocation-rule-transaction.ts +115 -0
  847. package/projects/tt-core/src/lib/models/transaction/allocation-rule.ts +156 -0
  848. package/projects/tt-core/src/lib/models/transaction/income-amount-type.enum.ts +7 -0
  849. package/projects/tt-core/src/lib/models/transaction/index.ts +8 -0
  850. package/projects/tt-core/src/lib/models/transaction/transaction-allocation.ts +20 -0
  851. package/projects/tt-core/src/lib/models/transaction/transaction-category.enum.ts +6 -0
  852. package/projects/tt-core/src/lib/models/transaction/transaction-meta-field.ts +13 -0
  853. package/projects/tt-core/src/lib/models/transaction/transaction.ts +302 -0
  854. package/projects/tt-core/src/lib/models/user/index.ts +10 -0
  855. package/projects/tt-core/src/lib/models/user/mfa-details/index.ts +2 -0
  856. package/projects/tt-core/src/lib/models/user/mfa-details/mfa-details.interface.ts +6 -0
  857. package/projects/tt-core/src/lib/models/user/mfa-details/mfa-details.ts +15 -0
  858. package/projects/tt-core/src/lib/models/user/my-account-history-initiated-by.enum.ts +4 -0
  859. package/projects/tt-core/src/lib/models/user/my-account-history-status.enum.ts +4 -0
  860. package/projects/tt-core/src/lib/models/user/my-account-history-type.enum.ts +5 -0
  861. package/projects/tt-core/src/lib/models/user/my-account-history.ts +12 -0
  862. package/projects/tt-core/src/lib/models/user/occupation.ts +4 -0
  863. package/projects/tt-core/src/lib/models/user/user-roles.const.ts +21 -0
  864. package/projects/tt-core/src/lib/models/user/user-to-register.ts +7 -0
  865. package/projects/tt-core/src/lib/models/user/user-work-position.const.ts +7 -0
  866. package/projects/tt-core/src/lib/models/user/user.ts +192 -0
  867. package/projects/tt-core/src/lib/models/user-event/user-event-setting-field.enum.ts +8 -0
  868. package/projects/tt-core/src/lib/models/user-event/user-event-setting.ts +11 -0
  869. package/projects/tt-core/src/lib/models/user-event/user-event-type-category.ts +4 -0
  870. package/projects/tt-core/src/lib/models/user-event/user-event-type.ts +24 -0
  871. package/projects/tt-core/src/lib/models/vehicle/index.ts +4 -0
  872. package/projects/tt-core/src/lib/models/vehicle/vehicle-claim-details.ts +25 -0
  873. package/projects/tt-core/src/lib/models/vehicle/vehicle-claim.ts +68 -0
  874. package/projects/tt-core/src/lib/models/vehicle/vehicle-logbook.ts +29 -0
  875. package/projects/tt-core/src/lib/models/vehicle/vehicle.ts +8 -0
  876. package/projects/tt-core/src/lib/pipes/app-currency.pipe.ts +18 -0
  877. package/projects/tt-core/src/lib/pipes/app-percent.pipe.ts +14 -0
  878. package/projects/tt-core/src/lib/pipes/index.ts +4 -0
  879. package/projects/tt-core/src/lib/pipes/relative-date.pipe.ts +30 -0
  880. package/projects/tt-core/src/lib/pipes/safe-url.pipe.ts +14 -0
  881. package/projects/tt-core/src/lib/resolvers/business/business.resolver.ts +12 -0
  882. package/projects/tt-core/src/lib/resolvers/business/sole-details.resolver.ts +13 -0
  883. package/projects/tt-core/src/lib/resolvers/index.ts +3 -0
  884. package/projects/tt-core/src/lib/services/account-setup/account-setup.service.spec.ts +16 -0
  885. package/projects/tt-core/src/lib/services/account-setup/account-setup.service.ts +304 -0
  886. package/projects/tt-core/src/lib/services/account-setup/index.ts +1 -0
  887. package/projects/tt-core/src/lib/services/adblock-detector/adblock-detector.service.ts +17 -0
  888. package/projects/tt-core/src/lib/services/adblock-detector/index.ts +1 -0
  889. package/projects/tt-core/src/lib/services/asset/assets.service.spec.ts +12 -0
  890. package/projects/tt-core/src/lib/services/asset/assets.service.ts +51 -0
  891. package/projects/tt-core/src/lib/services/asset/index.ts +1 -0
  892. package/projects/tt-core/src/lib/services/bank/bank-account-calculation.service.spec.ts +16 -0
  893. package/projects/tt-core/src/lib/services/bank/bank-account-calculation.service.ts +36 -0
  894. package/projects/tt-core/src/lib/services/bank/index.ts +1 -0
  895. package/projects/tt-core/src/lib/services/data.service.ts +61 -0
  896. package/projects/tt-core/src/lib/services/event/event-dispatcher.service.spec.ts +16 -0
  897. package/projects/tt-core/src/lib/services/event/event-dispatcher.service.ts +45 -0
  898. package/projects/tt-core/src/lib/services/event/index.ts +2 -0
  899. package/projects/tt-core/src/lib/services/event/sse.service.spec.ts +16 -0
  900. package/projects/tt-core/src/lib/services/event/sse.service.ts +44 -0
  901. package/projects/tt-core/src/lib/services/export/export-formatter.service.ts +26 -0
  902. package/projects/tt-core/src/lib/services/export/index.ts +1 -0
  903. package/projects/tt-core/src/lib/services/firm/current-firm-branch.service.ts +22 -0
  904. package/projects/tt-core/src/lib/services/firm/index.ts +1 -0
  905. package/projects/tt-core/src/lib/services/header-title/header-title.service.spec.ts +12 -0
  906. package/projects/tt-core/src/lib/services/header-title/header-title.service.ts +31 -0
  907. package/projects/tt-core/src/lib/services/header-title/index.ts +1 -0
  908. package/projects/tt-core/src/lib/services/http/address/address.service.spec.ts +12 -0
  909. package/projects/tt-core/src/lib/services/http/address/address.service.ts +34 -0
  910. package/projects/tt-core/src/lib/services/http/address/index.ts +1 -0
  911. package/projects/tt-core/src/lib/services/http/aussie/aussie.service.ts +26 -0
  912. package/projects/tt-core/src/lib/services/http/aussie/index.ts +1 -0
  913. package/projects/tt-core/src/lib/services/http/bank/bank-account/bank-account.service.spec.ts +12 -0
  914. package/projects/tt-core/src/lib/services/http/bank/bank-account/bank-account.service.ts +115 -0
  915. package/projects/tt-core/src/lib/services/http/bank/bank-account/index.ts +1 -0
  916. package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection-messages.enum.ts +25 -0
  917. package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection.service.spec.ts +12 -0
  918. package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection.service.ts +98 -0
  919. package/projects/tt-core/src/lib/services/http/bank/bank-connection/index.ts +2 -0
  920. package/projects/tt-core/src/lib/services/http/bank/bank-transaction/bank-transaction.service.spec.ts +12 -0
  921. package/projects/tt-core/src/lib/services/http/bank/bank-transaction/bank-transaction.service.ts +81 -0
  922. package/projects/tt-core/src/lib/services/http/bank/bank-transaction/index.ts +1 -0
  923. package/projects/tt-core/src/lib/services/http/bank/bank-transaction-comment/bank-transaction-comment-messages.enum.ts +6 -0
  924. package/projects/tt-core/src/lib/services/http/bank/bank-transaction-comment/bank-transaction-comment.service.ts +17 -0
  925. package/projects/tt-core/src/lib/services/http/bank/bank.service.spec.ts +12 -0
  926. package/projects/tt-core/src/lib/services/http/bank/bank.service.ts +18 -0
  927. package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-messages.enum.ts +5 -0
  928. package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-token.service.spec.ts +16 -0
  929. package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-token.service.ts +35 -0
  930. package/projects/tt-core/src/lib/services/http/bank/basiq/basiq.service.spec.ts +12 -0
  931. package/projects/tt-core/src/lib/services/http/bank/basiq/basiq.service.ts +194 -0
  932. package/projects/tt-core/src/lib/services/http/bank/basiq/index.ts +3 -0
  933. package/projects/tt-core/src/lib/services/http/bank/index.ts +7 -0
  934. package/projects/tt-core/src/lib/services/http/budget/budget-messages.enum.ts +6 -0
  935. package/projects/tt-core/src/lib/services/http/budget/budget-rule/budget-rule.service.ts +17 -0
  936. package/projects/tt-core/src/lib/services/http/budget/budget.service.spec.ts +16 -0
  937. package/projects/tt-core/src/lib/services/http/budget/budget.service.ts +17 -0
  938. package/projects/tt-core/src/lib/services/http/budget/index.ts +3 -0
  939. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.spec.ts +16 -0
  940. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.ts +18 -0
  941. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/index.ts +1 -0
  942. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-messages.enum.ts +7 -0
  943. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts.service.spec.ts +12 -0
  944. package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts.service.ts +55 -0
  945. package/projects/tt-core/src/lib/services/http/chart-accounts/index.ts +3 -0
  946. package/projects/tt-core/src/lib/services/http/chat/chat.service.spec.ts +16 -0
  947. package/projects/tt-core/src/lib/services/http/chat/chat.service.ts +93 -0
  948. package/projects/tt-core/src/lib/services/http/chat/index.ts +3 -0
  949. package/projects/tt-core/src/lib/services/http/chat/message-document.service.spec.ts +16 -0
  950. package/projects/tt-core/src/lib/services/http/chat/message-document.service.ts +89 -0
  951. package/projects/tt-core/src/lib/services/http/chat/message.service.spec.ts +16 -0
  952. package/projects/tt-core/src/lib/services/http/chat/message.service.ts +35 -0
  953. package/projects/tt-core/src/lib/services/http/client/annual-client-details.service.ts +15 -0
  954. package/projects/tt-core/src/lib/services/http/client/capital-loss/capital-loss-messages.enum.ts +5 -0
  955. package/projects/tt-core/src/lib/services/http/client/capital-loss/capital-loss.service.ts +14 -0
  956. package/projects/tt-core/src/lib/services/http/client/capital-loss/index.ts +2 -0
  957. package/projects/tt-core/src/lib/services/http/client/client-coupon.service.spec.ts +16 -0
  958. package/projects/tt-core/src/lib/services/http/client/client-coupon.service.ts +18 -0
  959. package/projects/tt-core/src/lib/services/http/client/index.ts +4 -0
  960. package/projects/tt-core/src/lib/services/http/client/occupation/occupation.service.spec.ts +12 -0
  961. package/projects/tt-core/src/lib/services/http/client/occupation/occupation.service.ts +40 -0
  962. package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.spec.ts +16 -0
  963. package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.ts +19 -0
  964. package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/index.ts +1 -0
  965. package/projects/tt-core/src/lib/services/http/depreciation/depreciation.service.spec.ts +12 -0
  966. package/projects/tt-core/src/lib/services/http/depreciation/depreciation.service.ts +119 -0
  967. package/projects/tt-core/src/lib/services/http/depreciation/index.ts +2 -0
  968. package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder-messages.enum.ts +6 -0
  969. package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder.service.spec.ts +16 -0
  970. package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder.service.ts +18 -0
  971. package/projects/tt-core/src/lib/services/http/document/document-folder/index.ts +2 -0
  972. package/projects/tt-core/src/lib/services/http/document/document-messages.enum.ts +6 -0
  973. package/projects/tt-core/src/lib/services/http/document/document.service.ts +40 -0
  974. package/projects/tt-core/src/lib/services/http/document/index.ts +4 -0
  975. package/projects/tt-core/src/lib/services/http/facebook/facebook-auth-options.interface.ts +11 -0
  976. package/projects/tt-core/src/lib/services/http/facebook/facebook-auth-response.interface.ts +11 -0
  977. package/projects/tt-core/src/lib/services/http/facebook/facebook-permission.ts +16 -0
  978. package/projects/tt-core/src/lib/services/http/facebook/facebook-permissions-response.interface.ts +9 -0
  979. package/projects/tt-core/src/lib/services/http/facebook/facebook-status-response.interface.ts +10 -0
  980. package/projects/tt-core/src/lib/services/http/facebook/facebook.service.ts +96 -0
  981. package/projects/tt-core/src/lib/services/http/facebook/index.ts +1 -0
  982. package/projects/tt-core/src/lib/services/http/file/file.service.spec.ts +16 -0
  983. package/projects/tt-core/src/lib/services/http/file/file.service.ts +39 -0
  984. package/projects/tt-core/src/lib/services/http/file/index.ts +1 -0
  985. package/projects/tt-core/src/lib/services/http/financial-goal/financial-goal-messages.enum.ts +7 -0
  986. package/projects/tt-core/src/lib/services/http/financial-goal/financial-goal.service.ts +30 -0
  987. package/projects/tt-core/src/lib/services/http/financial-goal/index.ts +2 -0
  988. package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite-messages.enum.ts +13 -0
  989. package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite.service.spec.ts +16 -0
  990. package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite.service.ts +119 -0
  991. package/projects/tt-core/src/lib/services/http/firm/client-invite/index.ts +2 -0
  992. package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement-messages.enum.ts +6 -0
  993. package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement.service.spec.ts +16 -0
  994. package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement.service.ts +102 -0
  995. package/projects/tt-core/src/lib/services/http/firm/client-movement/index.ts +2 -0
  996. package/projects/tt-core/src/lib/services/http/firm/employee/employee-messages.enum.ts +12 -0
  997. package/projects/tt-core/src/lib/services/http/firm/employee/employee.service.spec.ts +16 -0
  998. package/projects/tt-core/src/lib/services/http/firm/employee/employee.service.ts +48 -0
  999. package/projects/tt-core/src/lib/services/http/firm/employee/index.ts +2 -0
  1000. package/projects/tt-core/src/lib/services/http/firm/employee-invite/employee-invite.service.spec.ts +16 -0
  1001. package/projects/tt-core/src/lib/services/http/firm/employee-invite/employee-invite.service.ts +49 -0
  1002. package/projects/tt-core/src/lib/services/http/firm/employee-invite/index.ts +1 -0
  1003. package/projects/tt-core/src/lib/services/http/firm/firm-branch/firm-branch-messages.enum.ts +7 -0
  1004. package/projects/tt-core/src/lib/services/http/firm/firm-branch/firm-branch.service.ts +15 -0
  1005. package/projects/tt-core/src/lib/services/http/firm/firm-branch/index.ts +2 -0
  1006. package/projects/tt-core/src/lib/services/http/firm/firm-messages.enum.ts +4 -0
  1007. package/projects/tt-core/src/lib/services/http/firm/firm.service.spec.ts +16 -0
  1008. package/projects/tt-core/src/lib/services/http/firm/firm.service.ts +68 -0
  1009. package/projects/tt-core/src/lib/services/http/firm/index.ts +8 -0
  1010. package/projects/tt-core/src/lib/services/http/firm/portfolio-report/client-portfolio-report.service.spec.ts +16 -0
  1011. package/projects/tt-core/src/lib/services/http/firm/portfolio-report/client-portfolio-report.service.ts +30 -0
  1012. package/projects/tt-core/src/lib/services/http/firm/portfolio-report/index.ts +1 -0
  1013. package/projects/tt-core/src/lib/services/http/google/google.service.ts +80 -0
  1014. package/projects/tt-core/src/lib/services/http/google/index.ts +1 -0
  1015. package/projects/tt-core/src/lib/services/http/holding/holding-sale.service.spec.ts +16 -0
  1016. package/projects/tt-core/src/lib/services/http/holding/holding-sale.service.ts +17 -0
  1017. package/projects/tt-core/src/lib/services/http/holding/holding-trade-import/holding-trade-import-messages.enum.ts +7 -0
  1018. package/projects/tt-core/src/lib/services/http/holding/holding-trade-import/holding-trade-import.service.ts +46 -0
  1019. package/projects/tt-core/src/lib/services/http/holding/holding-trade-messages.enum.ts +8 -0
  1020. package/projects/tt-core/src/lib/services/http/holding/holding-trade.service.ts +38 -0
  1021. package/projects/tt-core/src/lib/services/http/holding/holding-type-messages.enum.ts +6 -0
  1022. package/projects/tt-core/src/lib/services/http/holding/holding-type.service.spec.ts +16 -0
  1023. package/projects/tt-core/src/lib/services/http/holding/holding-type.service.ts +50 -0
  1024. package/projects/tt-core/src/lib/services/http/holding/holding.service.spec.ts +16 -0
  1025. package/projects/tt-core/src/lib/services/http/holding/index.ts +8 -0
  1026. package/projects/tt-core/src/lib/services/http/home-office/home-office-claim-messages.enum.ts +6 -0
  1027. package/projects/tt-core/src/lib/services/http/home-office/home-office-claim.service.ts +16 -0
  1028. package/projects/tt-core/src/lib/services/http/home-office/home-office-log-messages.enum.ts +6 -0
  1029. package/projects/tt-core/src/lib/services/http/home-office/home-office-log.service.ts +28 -0
  1030. package/projects/tt-core/src/lib/services/http/home-office/index.ts +4 -0
  1031. package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.spec.ts +16 -0
  1032. package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.ts +84 -0
  1033. package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/index.ts +1 -0
  1034. package/projects/tt-core/src/lib/services/http/income-source/income-source-messages.enum.ts +8 -0
  1035. package/projects/tt-core/src/lib/services/http/income-source/income-source.service.spec.ts +12 -0
  1036. package/projects/tt-core/src/lib/services/http/income-source/income-source.service.ts +108 -0
  1037. package/projects/tt-core/src/lib/services/http/income-source/index.ts +5 -0
  1038. package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/index.ts +1 -0
  1039. package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/salary-forecast.service.spec.ts +16 -0
  1040. package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/salary-forecast.service.ts +83 -0
  1041. package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/index.ts +1 -0
  1042. package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/sole-forecast.service.spec.ts +16 -0
  1043. package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/sole-forecast.service.ts +92 -0
  1044. package/projects/tt-core/src/lib/services/http/index.ts +46 -0
  1045. package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/borrowing-expense.service.spec.ts +12 -0
  1046. package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/borrowing-expense.service.ts +80 -0
  1047. package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/index.ts +1 -0
  1048. package/projects/tt-core/src/lib/services/http/loan/index.ts +4 -0
  1049. package/projects/tt-core/src/lib/services/http/loan/loan-messages.enum.ts +6 -0
  1050. package/projects/tt-core/src/lib/services/http/loan/loan.service.spec.ts +12 -0
  1051. package/projects/tt-core/src/lib/services/http/loan/loan.service.ts +103 -0
  1052. package/projects/tt-core/src/lib/services/http/pdf/pdf.service.ts +23 -0
  1053. package/projects/tt-core/src/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.ts +5 -0
  1054. package/projects/tt-core/src/lib/services/http/property/borrowing-report/borrowing-report.service.ts +15 -0
  1055. package/projects/tt-core/src/lib/services/http/property/borrowing-report/index.ts +2 -0
  1056. package/projects/tt-core/src/lib/services/http/property/index.ts +9 -0
  1057. package/projects/tt-core/src/lib/services/http/property/property-category/index.ts +1 -0
  1058. package/projects/tt-core/src/lib/services/http/property/property-category/property-category.service.spec.ts +16 -0
  1059. package/projects/tt-core/src/lib/services/http/property/property-category/property-category.service.ts +18 -0
  1060. package/projects/tt-core/src/lib/services/http/property/property-category-movement/index.ts +1 -0
  1061. package/projects/tt-core/src/lib/services/http/property/property-category-movement/property-category-movement.service.spec.ts +16 -0
  1062. package/projects/tt-core/src/lib/services/http/property/property-category-movement/property-category-movement.service.ts +27 -0
  1063. package/projects/tt-core/src/lib/services/http/property/property-messages.enum.ts +9 -0
  1064. package/projects/tt-core/src/lib/services/http/property/property-sale/index.ts +2 -0
  1065. package/projects/tt-core/src/lib/services/http/property/property-sale/property-sale.service.spec.ts +16 -0
  1066. package/projects/tt-core/src/lib/services/http/property/property-sale/property-sale.service.ts +17 -0
  1067. package/projects/tt-core/src/lib/services/http/property/property-share/index.ts +1 -0
  1068. package/projects/tt-core/src/lib/services/http/property/property-share/property-share.service.spec.ts +12 -0
  1069. package/projects/tt-core/src/lib/services/http/property/property-share/property-share.service.ts +72 -0
  1070. package/projects/tt-core/src/lib/services/http/property/property-valuation/index.ts +2 -0
  1071. package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation-messages.enum.ts +5 -0
  1072. package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation.service.spec.ts +16 -0
  1073. package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation.service.ts +16 -0
  1074. package/projects/tt-core/src/lib/services/http/property/property.service.spec.ts +12 -0
  1075. package/projects/tt-core/src/lib/services/http/property/property.service.ts +175 -0
  1076. package/projects/tt-core/src/lib/services/http/rest/http-error-messages.const.ts +13 -0
  1077. package/projects/tt-core/src/lib/services/http/rest/http-method.type.ts +1 -0
  1078. package/projects/tt-core/src/lib/services/http/rest/index.ts +4 -0
  1079. package/projects/tt-core/src/lib/services/http/rest/rest-method.type.ts +1 -0
  1080. package/projects/tt-core/src/lib/services/http/rest/rest-old.service.ts +310 -0
  1081. package/projects/tt-core/src/lib/services/http/rest/rest.service.spec.ts +0 -0
  1082. package/projects/tt-core/src/lib/services/http/rest/rest.service.ts +481 -0
  1083. package/projects/tt-core/src/lib/services/http/rest-messages.enum.ts +5 -0
  1084. package/projects/tt-core/src/lib/services/http/service-notification/index.ts +1 -0
  1085. package/projects/tt-core/src/lib/services/http/service-notification/service-notification.service.spec.ts +12 -0
  1086. package/projects/tt-core/src/lib/services/http/service-notification/service-notification.service.ts +69 -0
  1087. package/projects/tt-core/src/lib/services/http/setup-item/setup-item.service.spec.ts +16 -0
  1088. package/projects/tt-core/src/lib/services/http/setup-item/setup-item.service.ts +15 -0
  1089. package/projects/tt-core/src/lib/services/http/sharesight/index.ts +2 -0
  1090. package/projects/tt-core/src/lib/services/http/sharesight/sharesight-details.service.ts +22 -0
  1091. package/projects/tt-core/src/lib/services/http/sharesight/sharesight-portfolio.service.ts +19 -0
  1092. package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report-messages.enum.ts +6 -0
  1093. package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report.service.spec.ts +16 -0
  1094. package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report.service.ts +12 -0
  1095. package/projects/tt-core/src/lib/services/http/sole/bas-report/index.ts +2 -0
  1096. package/projects/tt-core/src/lib/services/http/sole/index.ts +10 -0
  1097. package/projects/tt-core/src/lib/services/http/sole/sole-business/index.ts +2 -0
  1098. package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business-messages.enum.ts +3 -0
  1099. package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business.service.spec.ts +16 -0
  1100. package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business.service.ts +16 -0
  1101. package/projects/tt-core/src/lib/services/http/sole/sole-business-activity/sole-business-activity.service.spec.ts +16 -0
  1102. package/projects/tt-core/src/lib/services/http/sole/sole-business-activity/sole-business-activity.service.ts +12 -0
  1103. package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.spec.ts +16 -0
  1104. package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss-rules/sole-business-loss-offset-rule.service.ts +14 -0
  1105. package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss.service.spec.ts +16 -0
  1106. package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss.service.ts +36 -0
  1107. package/projects/tt-core/src/lib/services/http/sole/sole-contact/sole-contact.service.spec.ts +16 -0
  1108. package/projects/tt-core/src/lib/services/http/sole/sole-contact/sole-contact.service.ts +12 -0
  1109. package/projects/tt-core/src/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.spec.ts +16 -0
  1110. package/projects/tt-core/src/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.ts +84 -0
  1111. package/projects/tt-core/src/lib/services/http/sole/sole-details/sole-details.service.spec.ts +16 -0
  1112. package/projects/tt-core/src/lib/services/http/sole/sole-details/sole-details.service.ts +27 -0
  1113. package/projects/tt-core/src/lib/services/http/sole/sole-invoice/sole-invoice.service.spec.ts +16 -0
  1114. package/projects/tt-core/src/lib/services/http/sole/sole-invoice/sole-invoice.service.ts +45 -0
  1115. package/projects/tt-core/src/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.spec.ts +16 -0
  1116. package/projects/tt-core/src/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.ts +12 -0
  1117. package/projects/tt-core/src/lib/services/http/subscription/index.ts +6 -0
  1118. package/projects/tt-core/src/lib/services/http/subscription/service-payment/service-payment.service.spec.ts +16 -0
  1119. package/projects/tt-core/src/lib/services/http/subscription/service-payment/service-payment.service.ts +27 -0
  1120. package/projects/tt-core/src/lib/services/http/subscription/service-payment-method/service-payment-method.service.spec.ts +16 -0
  1121. package/projects/tt-core/src/lib/services/http/subscription/service-payment-method/service-payment-method.service.ts +46 -0
  1122. package/projects/tt-core/src/lib/services/http/subscription/service-price/service-price.service.ts +18 -0
  1123. package/projects/tt-core/src/lib/services/http/subscription/service-product/service-product.service.spec.ts +16 -0
  1124. package/projects/tt-core/src/lib/services/http/subscription/service-product/service-product.service.ts +15 -0
  1125. package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription-messages.enum.ts +8 -0
  1126. package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription.service.spec.ts +12 -0
  1127. package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription.service.ts +104 -0
  1128. package/projects/tt-core/src/lib/services/http/tax-review/index.ts +3 -0
  1129. package/projects/tt-core/src/lib/services/http/tax-review/tax-review-history/tax-review-history.service.spec.ts +16 -0
  1130. package/projects/tt-core/src/lib/services/http/tax-review/tax-review-history/tax-review-history.service.ts +40 -0
  1131. package/projects/tt-core/src/lib/services/http/tax-review/tax-review-messages.enum.ts +18 -0
  1132. package/projects/tt-core/src/lib/services/http/tax-review/tax-review.service.spec.ts +16 -0
  1133. package/projects/tt-core/src/lib/services/http/tax-review/tax-review.service.ts +115 -0
  1134. package/projects/tt-core/src/lib/services/http/tax-summary/index.ts +1 -0
  1135. package/projects/tt-core/src/lib/services/http/tax-summary/tax-summary.service.ts +71 -0
  1136. package/projects/tt-core/src/lib/services/http/transaction/index.ts +6 -0
  1137. package/projects/tt-core/src/lib/services/http/transaction/invoice-transactions.service.ts +22 -0
  1138. package/projects/tt-core/src/lib/services/http/transaction/prior-transaction.service.ts +30 -0
  1139. package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.spec.ts +16 -0
  1140. package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.ts +18 -0
  1141. package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.spec.ts +12 -0
  1142. package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.ts +137 -0
  1143. package/projects/tt-core/src/lib/services/http/transaction/transaction.service.spec.ts +12 -0
  1144. package/projects/tt-core/src/lib/services/http/transaction/transaction.service.ts +339 -0
  1145. package/projects/tt-core/src/lib/services/http/user/financial-year/financial-year.service.ts +22 -0
  1146. package/projects/tt-core/src/lib/services/http/user/index.ts +8 -0
  1147. package/projects/tt-core/src/lib/services/http/user/mfa-details/index.ts +2 -0
  1148. package/projects/tt-core/src/lib/services/http/user/mfa-details/mfa-details-messages.enum.ts +5 -0
  1149. package/projects/tt-core/src/lib/services/http/user/mfa-details/mfa-details.service.ts +54 -0
  1150. package/projects/tt-core/src/lib/services/http/user/user-event-setting/user-event-setting.service.spec.ts +16 -0
  1151. package/projects/tt-core/src/lib/services/http/user/user-event-setting/user-event-setting.service.ts +15 -0
  1152. package/projects/tt-core/src/lib/services/http/user/user-event-type/user-event-type.service.spec.ts +16 -0
  1153. package/projects/tt-core/src/lib/services/http/user/user-event-type/user-event-type.service.ts +16 -0
  1154. package/projects/tt-core/src/lib/services/http/user/user-messages.enum.ts +9 -0
  1155. package/projects/tt-core/src/lib/services/http/user/user.service.spec.ts +12 -0
  1156. package/projects/tt-core/src/lib/services/http/user/user.service.ts +161 -0
  1157. package/projects/tt-core/src/lib/services/http/user/users-invite/users-invite.service.spec.ts +16 -0
  1158. package/projects/tt-core/src/lib/services/http/user/users-invite/users-invite.service.ts +15 -0
  1159. package/projects/tt-core/src/lib/services/http/vehicle/index.ts +5 -0
  1160. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim-details.service.spec.ts +16 -0
  1161. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim-details.service.ts +91 -0
  1162. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim.service.spec.ts +16 -0
  1163. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim.service.ts +29 -0
  1164. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/index.ts +2 -0
  1165. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook-messages.enum.ts +6 -0
  1166. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook.service.spec.ts +16 -0
  1167. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook.service.ts +18 -0
  1168. package/projects/tt-core/src/lib/services/http/vehicle/vehicle-messages.enum.ts +6 -0
  1169. package/projects/tt-core/src/lib/services/http/vehicle/vehicle.service.spec.ts +12 -0
  1170. package/projects/tt-core/src/lib/services/http/vehicle/vehicle.service.ts +17 -0
  1171. package/projects/tt-core/src/lib/services/http/youtube/index.ts +2 -0
  1172. package/projects/tt-core/src/lib/services/http/youtube/youtube-video.interface.ts +4 -0
  1173. package/projects/tt-core/src/lib/services/http/youtube/youtube.service.ts +30 -0
  1174. package/projects/tt-core/src/lib/services/index.ts +28 -0
  1175. package/projects/tt-core/src/lib/services/intercom/index.ts +1 -0
  1176. package/projects/tt-core/src/lib/services/intercom/intercom.service.spec.ts +16 -0
  1177. package/projects/tt-core/src/lib/services/intercom/intercom.service.ts +37 -0
  1178. package/projects/tt-core/src/lib/services/json/chart-accounts/chart-accounts-value.service.ts +19 -0
  1179. package/projects/tt-core/src/lib/services/json/holding/holding-type-exchange.service.ts +19 -0
  1180. package/projects/tt-core/src/lib/services/json/income-source/income-source-type.service.ts +19 -0
  1181. package/projects/tt-core/src/lib/services/json/index.ts +5 -0
  1182. package/projects/tt-core/src/lib/services/json/tax-exemption/tax-exemption.service.spec.ts +16 -0
  1183. package/projects/tt-core/src/lib/services/json/tax-exemption/tax-exemption.service.ts +19 -0
  1184. package/projects/tt-core/src/lib/services/json/tax-return/tax-return-item.service.ts +19 -0
  1185. package/projects/tt-core/src/lib/services/pdf/index.ts +5 -0
  1186. package/projects/tt-core/src/lib/services/pdf/js-pdf.ts +11 -0
  1187. package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/file-settings.ts +26 -0
  1188. package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.spec.ts +16 -0
  1189. package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.ts +100 -0
  1190. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/file-settings.ts +35 -0
  1191. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.spec.ts +16 -0
  1192. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.ts +52 -0
  1193. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.spec.ts +16 -0
  1194. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.ts +60 -0
  1195. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-table.service.spec.ts +16 -0
  1196. package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-table.service.ts +96 -0
  1197. package/projects/tt-core/src/lib/services/preloader/index.ts +1 -0
  1198. package/projects/tt-core/src/lib/services/preloader/preloader.service.spec.ts +16 -0
  1199. package/projects/tt-core/src/lib/services/preloader/preloader.service.ts +28 -0
  1200. package/projects/tt-core/src/lib/services/property/corelogic/corelogic-messages.enum.ts +3 -0
  1201. package/projects/tt-core/src/lib/services/property/corelogic/corelogic.service.spec.ts +12 -0
  1202. package/projects/tt-core/src/lib/services/property/corelogic/corelogic.service.ts +48 -0
  1203. package/projects/tt-core/src/lib/services/property/corelogic/index.ts +2 -0
  1204. package/projects/tt-core/src/lib/services/property/equity-position-chart/equity-position-chart.service.spec.ts +16 -0
  1205. package/projects/tt-core/src/lib/services/property/equity-position-chart/equity-position-chart.service.ts +34 -0
  1206. package/projects/tt-core/src/lib/services/property/equity-position-chart/index.ts +1 -0
  1207. package/projects/tt-core/src/lib/services/property/index.ts +3 -0
  1208. package/projects/tt-core/src/lib/services/property/property-calculation/index.ts +1 -0
  1209. package/projects/tt-core/src/lib/services/property/property-calculation/property-calculation.service.spec.ts +16 -0
  1210. package/projects/tt-core/src/lib/services/property/property-calculation/property-calculation.service.ts +237 -0
  1211. package/projects/tt-core/src/lib/services/report/index.ts +1 -0
  1212. package/projects/tt-core/src/lib/services/report/property/property-transaction-report.service.spec.ts +16 -0
  1213. package/projects/tt-core/src/lib/services/report/property/property-transaction-report.service.ts +101 -0
  1214. package/projects/tt-core/src/lib/services/toast/index.ts +1 -0
  1215. package/projects/tt-core/src/lib/services/toast/toast.service.spec.ts +16 -0
  1216. package/projects/tt-core/src/lib/services/toast/toast.service.ts +57 -0
  1217. package/projects/tt-core/src/lib/services/user/index.ts +1 -0
  1218. package/projects/tt-core/src/lib/services/user/user-switcher.service.ts +48 -0
  1219. package/projects/tt-core/src/lib/services/xlsx/index.ts +1 -0
  1220. package/projects/tt-core/src/lib/services/xlsx/xlsx.service.spec.ts +16 -0
  1221. package/projects/tt-core/src/lib/services/xlsx/xlsx.service.ts +114 -0
  1222. package/projects/tt-core/src/lib/transformer/transformDate.ts +15 -0
  1223. package/projects/tt-core/src/lib/validators/address-corelogic.validator.ts +24 -0
  1224. package/projects/tt-core/src/lib/validators/at-least-one-enabled.validator.ts +10 -0
  1225. package/projects/tt-core/src/lib/validators/at-least-one.validator.ts +10 -0
  1226. package/projects/tt-core/src/lib/validators/autocomplete.validator.ts +9 -0
  1227. package/projects/tt-core/src/lib/validators/conditional.validator.ts +35 -0
  1228. package/projects/tt-core/src/lib/validators/current-fin-year.validator.ts +18 -0
  1229. package/projects/tt-core/src/lib/validators/date/max-date.validator.ts +23 -0
  1230. package/projects/tt-core/src/lib/validators/date/min-date.validator.ts +23 -0
  1231. package/projects/tt-core/src/lib/validators/date-range.validator.ts +27 -0
  1232. package/projects/tt-core/src/lib/validators/fields-sum.validator.ts +27 -0
  1233. package/projects/tt-core/src/lib/validators/file.validator.ts +46 -0
  1234. package/projects/tt-core/src/lib/validators/greater-than-control.validator.ts +17 -0
  1235. package/projects/tt-core/src/lib/validators/greater-than.validator.ts +14 -0
  1236. package/projects/tt-core/src/lib/validators/group.validator.ts +13 -0
  1237. package/projects/tt-core/src/lib/validators/index.ts +15 -0
  1238. package/projects/tt-core/src/lib/validators/less-than-control.validator.ts +18 -0
  1239. package/projects/tt-core/src/lib/validators/match-sum.validator.ts +18 -0
  1240. package/projects/tt-core/src/lib/validators/not-greater-than-control.validator.ts +17 -0
  1241. package/projects/tt-core/src/lib/validators/password-match.validator.ts +20 -0
  1242. package/projects/tt-core/src/lib/validators/password.validator.ts +24 -0
  1243. package/projects/tt-core/src/lib/validators/phone-number.validator.ts +11 -0
  1244. package/projects/tt-core/src/lib/validators/required-length.validator.ts +14 -0
  1245. package/projects/tt-core/src/lib/validators/string/name.validator.ts +9 -0
  1246. package/projects/tt-core/src/lib/validators/unique-email.validator.ts +19 -0
  1247. package/projects/tt-core/tsconfig.lib.json +15 -0
  1248. package/projects/tt-core/tsconfig.lib.prod.json +10 -0
  1249. package/tsconfig.json +46 -0
@@ -0,0 +1,56 @@
1
+ import { FormControl, Validators } from '@angular/forms';
2
+ import { BudgetRule } from '../../models';
3
+ import { AbstractForm } from '../abstract.form';
4
+ import { RxwebValidators } from '@rxweb/reactive-form-validators';
5
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
6
+ import { conditionalValidator } from '../../validators';
7
+ import { IEventListener } from '../../interfaces';
8
+
9
+ export class BudgetRuleForm extends AbstractForm<BudgetRule> implements IEventListener {
10
+ constructor(rule: BudgetRule) {
11
+ super({
12
+ tankType: new FormControl(rule.chartAccounts?.tankType ?? TankTypeEnum.PERSONAL, [Validators.required]),
13
+ chartAccounts: new FormControl({ value: rule.chartAccounts, disabled: !!rule.chartAccounts?.category }, [Validators.required, RxwebValidators.unique()]),
14
+ amount: new FormControl(rule.amount, Validators.required),
15
+ startDate: new FormControl(rule.startDate, Validators.required),
16
+ endDate: new FormControl({ value: rule.endDate, disabled: !rule.frequency }),
17
+ inCalendar: new FormControl(rule.inCalendar),
18
+ frequency: new FormControl(rule.frequency),
19
+ description: new FormControl(rule.description),
20
+ bankAccount: new FormControl(rule.bankAccount, conditionalValidator(
21
+ (): boolean => !!this.value.inCalendar,
22
+ Validators.required
23
+ )),
24
+ property: new FormControl(rule.property, conditionalValidator(
25
+ (): boolean => this.value.tankType === TankTypeEnum.PROPERTY,
26
+ Validators.required
27
+ )),
28
+ business: new FormControl(rule.business, conditionalValidator(
29
+ (): boolean => this.value.tankType === TankTypeEnum.SOLE,
30
+ Validators.required
31
+ )),
32
+ incomeSource: new FormControl(rule.incomeSource, conditionalValidator(
33
+ (): boolean => this.value.chartAccounts?.isWorkIncome(),
34
+ Validators.required
35
+ )),
36
+ }, rule);
37
+
38
+ this.listenEvents();
39
+ }
40
+
41
+
42
+ listenEvents(): void {
43
+ this.listenFrequency();
44
+ }
45
+
46
+ listenFrequency(): void {
47
+ this.get('frequency').valueChanges.subscribe((value: number) => {
48
+ if (value) {
49
+ this.get('endDate').enable();
50
+ } else {
51
+ this.get('endDate').disable();
52
+ }
53
+ })
54
+ }
55
+ }
56
+
@@ -0,0 +1,94 @@
1
+ import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
2
+ import { Budget, BudgetRule, ChartAccounts } from '../../models';
3
+ import { AbstractForm } from '../abstract.form';
4
+ import { plainToClass } from 'class-transformer';
5
+ import { ChartAccountsCategoryEnum } from '../../db/Enums';
6
+ import { RxwebValidators } from '@rxweb/reactive-form-validators';
7
+ import { combineLatest } from 'rxjs';
8
+ import { startWith } from 'rxjs/operators';
9
+ import { Collection } from '../../collections';
10
+
11
+ /**
12
+ * @TODO TT-4522 remove after release
13
+ */
14
+ export class BudgetForm extends AbstractForm<Budget> {
15
+ // @TODO uncomment when all properties exposed
16
+ // protected excludeExtraneousValues = true;
17
+ filteredRules: Map<number, UntypedFormGroup>;
18
+ total: number;
19
+
20
+ constructor(budget: Budget) {
21
+ super({
22
+ category: new UntypedFormControl(),
23
+ searchQuery: new UntypedFormControl(''),
24
+ rules: new UntypedFormArray((budget.rules || [plainToClass(BudgetRule, {})]).map(
25
+ (budgetRule: BudgetRule) => BudgetForm.createRuleFormGroup(budgetRule))
26
+ ),
27
+ }, budget);
28
+
29
+ combineLatest([
30
+ this.get('category').valueChanges.pipe(startWith(null)),
31
+ this.get('searchQuery').valueChanges.pipe(startWith(null))
32
+ ]).subscribe(() => this.filterRules());
33
+
34
+ this.total = budget.rulesCollection.sumBy('amount');
35
+ this.get('rules').valueChanges.subscribe((rules) => {
36
+ this.total = new Collection(rules).sumBy('amount');
37
+ });
38
+ }
39
+
40
+ get rulesArray(): UntypedFormArray {
41
+ return this.get('rules') as UntypedFormArray;
42
+ }
43
+
44
+ filterRules(): void {
45
+ const category: ChartAccountsCategoryEnum = this.get('category').value;
46
+ const searchQuery: string = this.get('searchQuery').value;
47
+ let filteredRules: UntypedFormGroup[] = this.rulesArray.controls as UntypedFormGroup[];
48
+
49
+ if (searchQuery) {
50
+ filteredRules = filteredRules.filter((ruleGroup: UntypedFormGroup) => {
51
+ if (ruleGroup.invalid) {
52
+ return true;
53
+ }
54
+
55
+ const ruleAmount: string = ruleGroup.get('amount').value?.toString();
56
+ const chartAccountsName: string = ruleGroup.get('chartAccounts').value?.name.toLowerCase();
57
+
58
+ return chartAccountsName.includes(searchQuery) || ruleAmount.includes(searchQuery);
59
+ });
60
+ }
61
+
62
+ if (category) {
63
+ filteredRules = filteredRules.filter((ruleGroup: UntypedFormGroup) => {
64
+ const chartAccounts: ChartAccounts = ruleGroup.get('chartAccounts').value;
65
+
66
+ if (!chartAccounts) {
67
+ return true;
68
+ }
69
+
70
+ return chartAccounts.category === category;
71
+ });
72
+ }
73
+
74
+ this.filteredRules = new Map(filteredRules.map((rule) => [this.rulesArray.controls.indexOf(rule), rule]));
75
+ }
76
+
77
+ static createRuleFormGroup(budgetRule: BudgetRule): UntypedFormGroup {
78
+ return new UntypedFormGroup({
79
+ chartAccounts: new UntypedFormControl(budgetRule.chartAccounts, [Validators.required, RxwebValidators.unique()]),
80
+ amount: new UntypedFormControl(budgetRule.amount, Validators.required)
81
+ });
82
+ }
83
+
84
+ addRule(budgetRule: BudgetRule = plainToClass(BudgetRule, {})): void {
85
+ const rule = BudgetForm.createRuleFormGroup(budgetRule);
86
+ this.rulesArray.push(rule);
87
+ this.filteredRules.set(this.rulesArray.controls.indexOf(rule), rule);
88
+ }
89
+
90
+ deleteRule(index: number): void {
91
+ this.rulesArray.removeAt(index);
92
+ this.filteredRules.delete(index);
93
+ }
94
+ }
@@ -0,0 +1,2 @@
1
+ export * from './budget.form';
2
+ export * from './budget-rule.form';
@@ -0,0 +1,26 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';
3
+ import { ChartAccounts } from '../../models';
4
+ import { plainToClass } from 'class-transformer';
5
+
6
+ export class ChartAccountsForm extends AbstractForm<ChartAccounts> {
7
+ constructor(private chartAccounts: ChartAccounts = plainToClass(ChartAccounts, {})) {
8
+ super({
9
+ name: new FormControl(chartAccounts.name, [Validators.required, Validators.maxLength(AbstractForm.inputMaxLength)]),
10
+ category: new FormControl(chartAccounts.category, [Validators.required]),
11
+ depreciations: new FormArray(
12
+ (chartAccounts.depreciations || []).map((depreciation) => new FormGroup({
13
+ effectiveLife: new FormControl(depreciation.effectiveLife),
14
+ }))
15
+ )
16
+ }, chartAccounts);
17
+ }
18
+
19
+ get depreciationsArray(): FormArray {
20
+ return this.get('depreciations') as FormArray;
21
+ }
22
+
23
+ addDepreciationGroup(): void {
24
+ this.depreciationsArray.push(new FormGroup({ effectiveLife: new FormControl() }));
25
+ }
26
+ }
@@ -0,0 +1 @@
1
+ export * from './chart-accounts.form';
@@ -0,0 +1,50 @@
1
+ import { FormControl, FormGroup } from '@angular/forms';
2
+ import { ControlsInterface } from '../abstract.form';
3
+ import { ChatCollection } from '../../collections';
4
+ import { IEventListener } from '../../interfaces';
5
+ import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
6
+ import { ReplaySubject } from 'rxjs';
7
+ import { Chat } from '../../models';
8
+
9
+ interface IChatFilterControls extends ControlsInterface {
10
+ query: FormControl<string>;
11
+ myChats: FormControl<boolean>;
12
+ }
13
+
14
+ export class ChatFilterForm extends FormGroup<IChatFilterControls> implements IEventListener {
15
+ dataChanges: ReplaySubject<Chat[]> = new ReplaySubject(1);
16
+
17
+ constructor(private collection: ChatCollection) {
18
+ super({
19
+ query: new FormControl(),
20
+ myChats: new FormControl(true),
21
+ });
22
+
23
+ this.listenEvents();
24
+ this.updateValueAndValidity();
25
+ }
26
+
27
+ listenEvents() {
28
+ this.valueChanges.pipe(debounceTime(300), distinctUntilChanged())
29
+ .subscribe(() => {
30
+ this.filter();
31
+ });
32
+ }
33
+
34
+ filter(source?: ChatCollection): void {
35
+ if (source) {
36
+ this.collection = source;
37
+ }
38
+ const value = this.value;
39
+
40
+ let collection = this.collection;
41
+ if (value.query) {
42
+ collection = collection.filter(chat => chat.client.fullName.toLowerCase().includes(value.query));
43
+ }
44
+ if (value.myChats) {
45
+ collection = collection.filter(chat => chat.employee.id === +localStorage.getItem('userId'));
46
+ }
47
+
48
+ this.dataChanges.next(collection.toArray());
49
+ }
50
+ }
@@ -0,0 +1 @@
1
+ export * from './chat-filter.form';
@@ -0,0 +1,48 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { AnnualClientDetails } from '../../models';
4
+ import { plainToClass } from 'class-transformer';
5
+ import { conditionalValidator } from '../../validators';
6
+
7
+ export class AnnualClientDetailsForm extends AbstractForm<AnnualClientDetails> {
8
+ constructor(private annualClientDetails: AnnualClientDetails = plainToClass(AnnualClientDetails, {})) {
9
+ super({
10
+ privateHealthCare: new UntypedFormControl(annualClientDetails.privateHealthCare, Validators.required),
11
+ spouse: new UntypedFormControl(annualClientDetails.spouse, Validators.required),
12
+ spouseAnnualIncome: new UntypedFormControl(annualClientDetails.spouseAnnualIncome, conditionalValidator(
13
+ (): boolean => this.get('spouse').value,
14
+ Validators.required
15
+ )),
16
+ hasDependants: new UntypedFormControl(!!annualClientDetails.dependants, Validators.required),
17
+ dependants: new UntypedFormControl(annualClientDetails.dependants, conditionalValidator(
18
+ (): boolean => this.get('hasDependants').value,
19
+ Validators.required
20
+ )),
21
+ hasStudentLoan: new UntypedFormControl(!!annualClientDetails.studentLoanAmount, Validators.required),
22
+ studentLoanAmount: new UntypedFormControl(annualClientDetails.studentLoanAmount, conditionalValidator(
23
+ (): boolean => this.get('hasStudentLoan').value,
24
+ Validators.required
25
+ )),
26
+ reportableFringeBenefits: new UntypedFormControl(annualClientDetails.reportableFringeBenefits || 0),
27
+ exemptForeignEmploymentIncome: new UntypedFormControl(annualClientDetails.exemptForeignEmploymentIncome || 0),
28
+ }, annualClientDetails);
29
+
30
+ this.watchFieldForToggle('spouse', 'spouseAnnualIncome');
31
+ this.watchFieldForToggle('hasDependants', 'dependants');
32
+ this.watchFieldForToggle('hasStudentLoan', 'studentLoanAmount');
33
+ this.emitValues();
34
+ }
35
+
36
+ private watchFieldForToggle(field: string, dependantField: string): void {
37
+ this.get(field).valueChanges.subscribe((value: boolean) => this.toggleField(dependantField, !!value))
38
+ }
39
+
40
+ private toggleField(field: string, enable: boolean): void {
41
+ if (enable) {
42
+ this.get(field).enable();
43
+ } else {
44
+ this.get(field).setValue(0);
45
+ this.get(field).disable();
46
+ }
47
+ }
48
+ }
@@ -0,0 +1,12 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { UntypedFormControl, Validators } from '@angular/forms';
3
+ import { CapitalLoss } from '../../models';
4
+ import { plainToClass } from 'class-transformer';
5
+
6
+ export class CapitalLossForm extends AbstractForm<CapitalLoss> {
7
+ constructor(private capitalLoss: CapitalLoss = plainToClass(CapitalLoss, {})) {
8
+ super({
9
+ balance: new UntypedFormControl(capitalLoss.balance, Validators.required)
10
+ }, capitalLoss);
11
+ }
12
+ }
@@ -0,0 +1,2 @@
1
+ export * from './annual-client-details.form';
2
+ export * from './capital-loss.form';
@@ -0,0 +1,37 @@
1
+ import { FormArray } from '@angular/forms';
2
+ import { AbstractForm } from './';
3
+ import { AbstractModel } from '../db/Models';
4
+
5
+ export class CollectionForm<Form extends AbstractForm<Model>, Model extends AbstractModel> extends FormArray<Form> {
6
+ private args: any[];
7
+ includeDisabledFields = false;
8
+
9
+ constructor(private formConstructor: new (model?: Model, ...args: any[]) => Form, models: Model[] = [], ...args: any[]) {
10
+ super(models.map(model => new formConstructor(model, ...args)));
11
+ this.args = args;
12
+ if (!models.length) {
13
+ this.add();
14
+ }
15
+ }
16
+
17
+ createFormGroup(model?: Model): Form {
18
+ return new this.formConstructor(model, ...this.args);
19
+ }
20
+
21
+ add(model?: Model): void {
22
+ super.push(this.createFormGroup(model));
23
+ }
24
+
25
+ /**
26
+ * Submit form and return array of properties from form value
27
+ */
28
+ submit(data: object = {}): Model[] {
29
+ this.markAllAsTouched();
30
+ const controls = this.includeDisabledFields ? this.controls : this.controls.filter((form: Form) => form.enabled);
31
+ if (!this.valid || !controls.length) {
32
+ return null;
33
+ }
34
+
35
+ return controls.map((form: Form): Model => form.submit(data));
36
+ }
37
+ }
@@ -0,0 +1,50 @@
1
+ import { FormControl, Validators } from '@angular/forms';
2
+ import { TransactionBaseForm } from '../transaction';
3
+ import { ChartAccounts, Depreciation, FinancialYear } from '../../models';
4
+
5
+ export class DepreciationForm extends TransactionBaseForm<Depreciation> {
6
+ includeDisabledFields = true;
7
+
8
+ constructor(depreciation: Depreciation, registeredForGst: boolean) {
9
+ super(depreciation, registeredForGst, {
10
+ isCloseBalanceCorrect: new FormControl(true),
11
+ closeBalance: new FormControl({ value: depreciation.closeBalance || 0, disabled: true }, Validators.required),
12
+ financialYear: new FormControl(depreciation.financialYear || new FinancialYear().year),
13
+ claimStartDate: new FormControl({ value: depreciation.claimStartDate, disabled: !depreciation.chartAccounts?.isBuildingAtCost() }),
14
+ });
15
+
16
+ if (depreciation.id) {
17
+ // this.get('claimPercent').setValue(depreciation.currentYearForecast.claimPercent);
18
+ }
19
+
20
+ // forbid to change chartAccounts/claimPercent for existing depreciations
21
+ if (depreciation.id) {
22
+ this.get('chartAccounts').disable({ emitEvent: false });
23
+ this.get('claimPercent').disable({ emitEvent: false });
24
+ }
25
+
26
+ // @TODO should be watched?
27
+ // if depreciation has 'depreciationCapitalProject' value - set value and disable 'date' form control
28
+ if (depreciation.depreciationCapitalProject) {
29
+ this.get('date').setValue(depreciation.depreciationCapitalProject.effectiveDate);
30
+ this.get('date').disable();
31
+ } else {
32
+ this.get('date').setValue(depreciation.date);
33
+ }
34
+
35
+ this.get('isCloseBalanceCorrect').valueChanges.subscribe((isSelected: boolean) => {
36
+ if (isSelected) {
37
+ this.get('closeBalance').disable();
38
+ } else {
39
+ this.get('closeBalance').enable();
40
+ }
41
+ });
42
+ }
43
+
44
+ watchChartAccounts(): void {
45
+ super.watchChartAccounts();
46
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts: ChartAccounts) => {
47
+ this.setEnabledState(this.get('claimStartDate'), chartAccounts.isBuildingAtCost());
48
+ });
49
+ }
50
+ }
@@ -0,0 +1 @@
1
+ export * from './depreciation.form';
@@ -0,0 +1,13 @@
1
+ import { FormControl, Validators } from '@angular/forms';
2
+ import { DocumentFolder } from '../../models';
3
+ import { AbstractForm } from '../abstract.form';
4
+ import { FormValidationsEnum } from '../form-validations.enum';
5
+
6
+ export class DocumentFolderForm extends AbstractForm<DocumentFolder> {
7
+ constructor(folder: DocumentFolder) {
8
+ super({
9
+ name: new FormControl(folder.name, [Validators.required, Validators.maxLength(FormValidationsEnum.INPUT_MAX_LENGTH)]),
10
+ parent: new FormControl(folder.parent),
11
+ }, folder);
12
+ }
13
+ }
@@ -0,0 +1,12 @@
1
+ import { FormControl, Validators } from '@angular/forms';
2
+ import { AbstractForm } from '../abstract.form';
3
+ import { Document } from '../../models';
4
+
5
+ export class DocumentForm extends AbstractForm<Document> {
6
+ constructor(document: Document) {
7
+ super({
8
+ folder: new FormControl(document.folder, Validators.required),
9
+ file: new FormControl(document.file, Validators.required),
10
+ }, document)
11
+ }
12
+ }
@@ -0,0 +1,2 @@
1
+ export * from './document-folder.form';
2
+ export * from './document.form';
@@ -0,0 +1,57 @@
1
+ import { FormControl } from '@angular/forms';
2
+ import { AbstractForm, ControlsInterface } from '../abstract.form';
3
+ import { BankAccount, FinancialGoal, Property } from '../../models';
4
+ import { FinancialGoalCollection } from '../../collections';
5
+ import differenceBy from 'lodash/differenceBy';
6
+
7
+ interface FinancialGoalFilterControlsInterface extends ControlsInterface {
8
+ type: FormControl<number>,
9
+ bankAccount: FormControl<BankAccount>,
10
+ properties: FormControl<Property[]>,
11
+ inactiveHidden: FormControl<boolean>,
12
+ }
13
+
14
+ export class FinancialGoalFilterForm extends AbstractForm<FinancialGoal, FinancialGoalFilterControlsInterface> {
15
+ filteredGoals: FinancialGoalCollection;
16
+
17
+ constructor(private goals: FinancialGoalCollection) {
18
+ super({
19
+ inactiveHidden: new FormControl(true),
20
+ type: new FormControl(),
21
+ properties: new FormControl(),
22
+ bankAccount: new FormControl(),
23
+ });
24
+
25
+ this.filter(this.goals);
26
+ this.valueChanges.subscribe(() => {
27
+ this.filter(this.goals);
28
+ });
29
+ }
30
+
31
+ filter(goals: FinancialGoalCollection): FinancialGoalCollection {
32
+ this.filteredGoals = goals;
33
+ if (!goals.length) {
34
+ return goals;
35
+ }
36
+
37
+ const value = this.value;
38
+
39
+ if (value.inactiveHidden) {
40
+ this.filteredGoals = this.filteredGoals.getActive();
41
+ }
42
+
43
+ if (value.type) {
44
+ this.filteredGoals = this.filteredGoals.filterBy('type', value.type);
45
+ }
46
+
47
+ if (value.properties) {
48
+ this.filteredGoals = this.filteredGoals.filter(goal => differenceBy(value.properties, goal.properties, 'id').length === 0);
49
+ }
50
+
51
+ if (value.bankAccount) {
52
+ this.filteredGoals = this.filteredGoals.filter(goal => goal.bankAccount?.id === value.bankAccount.id);
53
+ }
54
+
55
+ return this.filteredGoals;
56
+ }
57
+ }
@@ -0,0 +1,167 @@
1
+ import { AbstractForm } from '../index';
2
+ import { Dictionary, FinancialGoal, FinancialGoalTypeEnum } from '../../models';
3
+ import { FormControl, Validators } from '@angular/forms';
4
+ import { BankAccount } from '../../db/Models';
5
+ import { IEventListener } from '../../interfaces';
6
+ import { conditionalValidator, greaterThanControlValidator, minDateValidator } from '../../validators';
7
+ import moment from 'moment';
8
+ import { BankAccountTypeEnum, DailyFrequencyEnum } from '../../db/Enums';
9
+ import round from 'lodash/round';
10
+ import { filter } from 'rxjs/operators';
11
+ import { lessThanControlValidator } from '../../validators/less-than-control.validator';
12
+
13
+ const END_DATE_VALIDATION_ERROR = 'Target date must be more than start date';
14
+
15
+ export class FinancialGoalForm extends AbstractForm<FinancialGoal> implements IEventListener {
16
+ includeDisabledFields = true;
17
+ bankAccountTypes: BankAccountTypeEnum[] = [];
18
+
19
+ constructor(goal: FinancialGoal, private equityByProperty?: Dictionary<number>, private lvrByProperty?: Dictionary<number>) {
20
+ super({
21
+ type: new FormControl({ value: goal.type ?? FinancialGoalTypeEnum.DEBIT, disabled: !!goal.id }, Validators.required),
22
+ name: new FormControl(goal.name, Validators.required),
23
+ bankAccount: new FormControl({ value: goal.bankAccount, disabled: !!goal.id }, [
24
+ conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
25
+ ]),
26
+ targetValue: new FormControl(goal.targetValue, [
27
+ Validators.required,
28
+ conditionalValidator((): boolean => this.isLvrType(), lessThanControlValidator('initialValue', 'Start Value')),
29
+ conditionalValidator((): boolean => !this.isLvrType(), greaterThanControlValidator('initialValue', 'Start Value')),
30
+ ]),
31
+ initialValue: new FormControl({ value: goal.initialValue, disabled: true }, Validators.required),
32
+ startDate: new FormControl({ value: goal.startDate, disabled: true }),
33
+ endDate: new FormControl(goal.endDate, [Validators.required, minDateValidator(goal.startDate, END_DATE_VALIDATION_ERROR)]),
34
+ paymentFrequency: new FormControl(goal.paymentFrequency, [
35
+ conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
36
+ ]),
37
+ paymentAmount: new FormControl(goal.paymentAmount, [
38
+ conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
39
+ ]),
40
+ inCalendar: new FormControl(goal.inCalendar),
41
+ file: new FormControl(goal.file),
42
+ description: new FormControl(goal.description),
43
+ properties: new FormControl({ value: goal.properties, disabled: !!goal.id }, [
44
+ conditionalValidator((): boolean => this.isPropertyType(), Validators.required),
45
+ ]),
46
+ }, goal);
47
+
48
+ this.bankAccountTypes = this.getBankAccountTypes(goal.type);
49
+ this.listenEvents();
50
+ }
51
+
52
+ listenEvents(): void {
53
+ this.listenTypeChanges();
54
+ this.listenBankAccountChanges();
55
+ this.listenPaymentChanges();
56
+ }
57
+
58
+ listenTypeChanges(): void {
59
+ this.get('type').valueChanges.subscribe((type: FinancialGoalTypeEnum) => {
60
+ this.get('bankAccount').setValue(null, { onlySelf: true });
61
+ this.get('properties').setValue([], { onlySelf: true, emitEvent: false });
62
+ this.get('initialValue').setValue(null, { onlySelf: true, emitEvent: false });
63
+
64
+ if (this.isPropertyType()) {
65
+ this.get('inCalendar').setValue(false, { onlySelf: true, emitEvent: false });
66
+ this.get('paymentFrequency').setValue(null, { onlySelf: true, emitEvent: false });
67
+ this.get('paymentAmount').setValue(null, { onlySelf: true, emitEvent: false });
68
+ }
69
+
70
+ this.bankAccountTypes = this.getBankAccountTypes(type);
71
+ });
72
+ }
73
+
74
+ /**
75
+ * Watch payment fields and auto-recalculate endDate when form is valid
76
+ */
77
+ listenPaymentChanges(): void {
78
+ this.valueChanges.subscribe(() => {
79
+ const goal = this.getRawValue();
80
+
81
+ if (goal.targetValue === null || !goal.bankAccount || !goal.paymentFrequency || !goal.endDate
82
+ || (this.get('paymentAmount').dirty && this.get('endDate').dirty)) {
83
+ return;
84
+ }
85
+
86
+ this.get('paymentAmount').setValue(this.calculatePaymentAmount(), { emitEvent: false });
87
+ });
88
+
89
+ this.get('paymentAmount').valueChanges.subscribe(() => {
90
+ const goal = this.getRawValue();
91
+ if (goal.targetValue === null || !goal.bankAccount || !goal.paymentFrequency || !goal.paymentAmount) {
92
+ return;
93
+ }
94
+
95
+ this.get('endDate').setValue(this.calculateEndDate(), { emitEvent: false });
96
+ });
97
+ }
98
+
99
+ listenBankAccountChanges(): void {
100
+ this.get('bankAccount').valueChanges
101
+ .pipe(filter((bankAccount: BankAccount | null) => !!bankAccount))
102
+ .subscribe(bankAccount => {
103
+ this.get('initialValue').setValue(bankAccount.currentBalance);
104
+ });
105
+ }
106
+
107
+ /**
108
+ * requires targetValue/initialValue/paymentAmount/paymentFrequency fields to be filled
109
+ * Derives the final goal completion date by adding all payment periods to the start date.
110
+ */
111
+ calculateEndDate(): Date {
112
+ const goal = this.getRawValue();
113
+ const start = moment(goal.startDate);
114
+ const paymentsCount = this.calculatePaymentsByAmount();
115
+
116
+ switch (goal.paymentFrequency) {
117
+ case DailyFrequencyEnum.WEEKLY:
118
+ return start.add(paymentsCount, 'weeks').toDate();
119
+
120
+ case DailyFrequencyEnum.FORTNIGHTLY:
121
+ return start.add(paymentsCount * 2, 'weeks').toDate();
122
+
123
+ case DailyFrequencyEnum.MONTHLY:
124
+ return start.add(paymentsCount, 'month').toDate();
125
+
126
+ default:
127
+ return new Date();
128
+ }
129
+ }
130
+
131
+ /**
132
+ * Computes the recurring payment amount required to hit the target by the chosen end date.
133
+ */
134
+ calculatePaymentAmount(): number {
135
+ const goal = this.currentValue;
136
+
137
+ return round(goal.target / Math.max(1, goal.calculatePaymentsByDate(goal.endDate)), 2);
138
+ }
139
+
140
+ /**
141
+ * Returns total number of deposits needed to fully reach the goal at current paymentAmount.
142
+ */
143
+ calculatePaymentsByAmount(): number {
144
+ const goal = this.currentValue;
145
+
146
+ return Math.round(goal.target / goal.paymentAmount);
147
+ }
148
+
149
+ getBankAccountTypes(type: FinancialGoalTypeEnum): BankAccountTypeEnum[] {
150
+ switch (type) {
151
+ case FinancialGoalTypeEnum.CREDIT:
152
+ return [BankAccountTypeEnum.MORTGAGE, BankAccountTypeEnum.LOAN, BankAccountTypeEnum.CREDIT_CARD];
153
+ case FinancialGoalTypeEnum.DEBIT:
154
+ return [BankAccountTypeEnum.TRANSACTION, BankAccountTypeEnum.SAVINGS, BankAccountTypeEnum.OFFSET];
155
+ default:
156
+ return [];
157
+ }
158
+ }
159
+
160
+ isPropertyType(): boolean {
161
+ return [FinancialGoalTypeEnum.PROPERTY_EQUITY, FinancialGoalTypeEnum.PROPERTY_LVR].includes(this.getRawValue().type);
162
+ }
163
+
164
+ isLvrType(): boolean {
165
+ return this.getRawValue().type === FinancialGoalTypeEnum.PROPERTY_LVR;
166
+ }
167
+ }
@@ -0,0 +1,2 @@
1
+ export * from './financial-goal.form';
2
+ export * from './financial-goal-filter.form';