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,234 @@
1
+ import { AbstractForm } from '../abstract.form';
2
+ import { AllocationRule, AllocationRuleTransaction, CHART_ACCOUNTS_CATEGORIES, ChartAccounts } from '../../models';
3
+ import { plainToClass } from 'class-transformer';
4
+ import { FormArray, FormControl, Validators } from '@angular/forms';
5
+ import { AllocationRuleCondition } from '../../models/transaction/allocation-rule-condition';
6
+ import { AllocationRuleConditionForm } from './allocation-rule-condition.form';
7
+ import { AllocationRuleTransactionForm } from './allocation-rule-transaction.form';
8
+ import { AllocationRuleTypeEnum, ChartAccountsCategoryEnum } from '../../db/Enums';
9
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
10
+ import { IEventListener } from '../../interfaces';
11
+ import intersection from 'lodash/intersection';
12
+ import { RxwebValidators } from '@rxweb/reactive-form-validators';
13
+ import { AllocationRuleCollection } from '../../collections';
14
+
15
+ /**
16
+ * @TODO move aux methods like isSplittable/isTaxFieldHidden/etc (used in view with ngIf) to properties to improve perf
17
+ */
18
+ export class AllocationRuleForm extends AbstractForm<AllocationRule> implements IEventListener {
19
+ chartAccountsCategories: ChartAccountsCategoryEnum[];
20
+
21
+ constructor(rule: AllocationRule, rules: AllocationRuleCollection, private isGST: boolean) {
22
+ super({
23
+ type: new FormControl(rule.type, Validators.required),
24
+ name: new FormControl(rule.name, [
25
+ Validators.required,
26
+ RxwebValidators.noneOf({ matchValues: rules.remove([rule]).mapBy('name') })
27
+ ]),
28
+ conditionOperator: new FormControl(rule.conditionOperator, Validators.required),
29
+ conditions: new FormArray(
30
+ (rule.conditions || [plainToClass(AllocationRuleCondition, {})])
31
+ .map((condition: AllocationRuleCondition) => new AllocationRuleConditionForm(condition))
32
+ ),
33
+ transaction: new AllocationRuleTransactionForm(rule.transaction || plainToClass(AllocationRuleTransaction, {}), isGST),
34
+ transferBankAccount: new FormControl(rule.transferBankAccount, Validators.required),
35
+ autoAllocate: new FormControl(rule.autoAllocate || false, Validators.required),
36
+ }, rule);
37
+
38
+ this.listenEvents();
39
+ this.setupFieldsByType(rule.type);
40
+ this.setupFieldsByTankType(rule.transaction?.tankType);
41
+ this.updateChartAccountsCategories();
42
+
43
+ if (!this.transactionFormGroup.get('chartAccounts').value?.isClaimPercentEditable()) {
44
+ this.transactionFormGroup.get('claimPercent').disable();
45
+ }
46
+
47
+ // Disable transaction amount field when transaction has no amount (non-split)
48
+ if (!rule.transaction?.isSplit()) {
49
+ this.transactionFormGroup.get(['amountPercent']).disable();
50
+ }
51
+ }
52
+
53
+ get conditionsArray(): FormArray {
54
+ return this.get('conditions') as FormArray;
55
+ }
56
+
57
+ get childTransactionsArray(): FormArray {
58
+ return this.transactionFormGroup.get('childTransactions') as FormArray;
59
+ }
60
+
61
+ get transactionFormGroup(): AllocationRuleTransactionForm {
62
+ return this.get('transaction') as AllocationRuleTransactionForm;
63
+ }
64
+
65
+ addConditionForm(): void {
66
+ this.conditionsArray.push(new AllocationRuleConditionForm());
67
+ }
68
+
69
+ isTaxFieldHidden(): boolean {
70
+ const chartAccounts: ChartAccounts = this.transactionFormGroup.get('chartAccounts').value;
71
+
72
+ return !chartAccounts || !chartAccounts.hasTaxField();
73
+ }
74
+
75
+ /**
76
+ * TODO Alex: disable sole tank in form control when income selected
77
+ */
78
+ isTransactionFieldsHidden(): boolean {
79
+ return this.transactionFormGroup.get('tankType').value === null || this.currentValue.isSoleIncome();
80
+ }
81
+
82
+ submit(): AllocationRule {
83
+ const data = {
84
+ conditions: this.conditionsArray.controls.map((conditionForm: AllocationRuleConditionForm) => conditionForm.submit()),
85
+ transaction: null,
86
+ };
87
+
88
+ if (!this.currentValue.isTransfer()) {
89
+ data.transaction = this.transactionFormGroup.submit();
90
+ }
91
+
92
+ return super.submit(data);
93
+ }
94
+
95
+ isSplittable(): boolean {
96
+ return this.get('type').value === AllocationRuleTypeEnum.EXPENSE || this.transactionFormGroup.isPersonal();
97
+ }
98
+
99
+ listenEvents(): void {
100
+ this.listenTankTypeChanges();
101
+ this.listenTypeChanges();
102
+ }
103
+
104
+ private listenTypeChanges(): void {
105
+ this.get('type').valueChanges.subscribe((type: AllocationRuleTypeEnum) => {
106
+ this.setupFieldsByType(type);
107
+ this.updateChartAccountsCategories();
108
+
109
+ // we have different fields for different types
110
+ // @TODO separated reinit method if we need it anywhere else
111
+ this.transactionFormGroup.setValue(
112
+ new AllocationRuleTransactionForm(plainToClass(AllocationRuleTransaction, {}), this.isGST).getRawValue()
113
+ );
114
+ });
115
+ }
116
+
117
+ private listenTankTypeChanges(): void {
118
+ this.transactionFormGroup.get('tankType').valueChanges.subscribe((tankType: TankTypeEnum) => {
119
+ this.updateChartAccountsCategories();
120
+ this.setupFieldsByTankType(tankType);
121
+ });
122
+ }
123
+
124
+ /**
125
+ * Update list of chart accounts categories allowed for transaction
126
+ * Depends on transaction type and tank type
127
+ */
128
+ private updateChartAccountsCategories(): void {
129
+ // We use unique one Chart Accounts for transfer
130
+ if (this.currentValue.isTransfer()) {
131
+ this.chartAccountsCategories = null;
132
+ return;
133
+ }
134
+
135
+ const excludedCategories: ChartAccountsCategoryEnum[] = [...CHART_ACCOUNTS_CATEGORIES.depreciation];
136
+
137
+ this.chartAccountsCategories = intersection(CHART_ACCOUNTS_CATEGORIES[this.currentValue.typeLabel], CHART_ACCOUNTS_CATEGORIES[this.tankTypeLabel])
138
+ .filter((category: ChartAccountsCategoryEnum) => !excludedCategories.includes(category));
139
+ }
140
+
141
+ get tankTypeLabel(): string {
142
+ switch (this.transactionFormGroup.get('tankType').value) {
143
+ case TankTypeEnum.WORK:
144
+ return 'work';
145
+
146
+ case TankTypeEnum.PROPERTY:
147
+ return 'property';
148
+
149
+ case TankTypeEnum.SOLE:
150
+ return 'sole';
151
+
152
+ case TankTypeEnum.HOLDING:
153
+ return 'holding';
154
+
155
+ default:
156
+ return 'personal';
157
+ }
158
+ }
159
+
160
+ private setupFieldsByType(type: AllocationRuleTypeEnum): void {
161
+ switch (type) {
162
+ case AllocationRuleTypeEnum.EXPENSE:
163
+ case AllocationRuleTypeEnum.INCOME:
164
+ this.get('transaction').enable({ emitEvent: false });
165
+ this.get('transferBankAccount').disable({ emitEvent: false });
166
+
167
+ // disable transaction amount field when value is empty
168
+ // disable manually because code above enables this field
169
+ if (!this.transactionFormGroup.get(['amountPercent']).value) {
170
+ this.transactionFormGroup.get(['amountPercent']).disable();
171
+ }
172
+ break;
173
+ case AllocationRuleTypeEnum.TRANSFER:
174
+ this.get('transaction').disable({ emitEvent: false });
175
+ this.get('transferBankAccount').enable({ emitEvent: false });
176
+ return;
177
+ }
178
+ }
179
+
180
+ private setupFieldsByTankType(tankType: TankTypeEnum): void {
181
+ // First disable tankType-related fields, second enable for selected tank type
182
+ this.transactionFormGroup.get('property').disable({ emitEvent: false });
183
+ this.transactionFormGroup.get('business').disable({ emitEvent: false });
184
+ this.transactionFormGroup.get('incomeSource').disable({ emitEvent: false });
185
+
186
+ switch (tankType) {
187
+ case TankTypeEnum.WORK:
188
+ this.transactionFormGroup.get('incomeSource').enable({ emitEvent: false });
189
+ break;
190
+ case TankTypeEnum.PROPERTY:
191
+ this.transactionFormGroup.get('property').enable({ emitEvent: false });
192
+ break;
193
+ case TankTypeEnum.SOLE:
194
+ this.transactionFormGroup.get('business').enable({ emitEvent: false });
195
+ break;
196
+ }
197
+ }
198
+
199
+ isIncome(): boolean {
200
+ return this.get('type').value === AllocationRuleTypeEnum.INCOME;
201
+ }
202
+
203
+ isExpense(): boolean {
204
+ return this.get('type').value === AllocationRuleTypeEnum.EXPENSE;
205
+ }
206
+
207
+ isTransfer(): boolean {
208
+ return this.get('type').value === AllocationRuleTypeEnum.TRANSFER;
209
+ }
210
+
211
+ isPropertyTank(): boolean {
212
+ return this.get('transaction').get('tankType').value === TankTypeEnum.PROPERTY;
213
+ }
214
+
215
+ isWorkTank(): boolean {
216
+ return this.get('transaction').get('tankType').value === TankTypeEnum.WORK;
217
+ }
218
+
219
+ isSoleTank(): boolean {
220
+ return this.get('transaction').get('tankType').value === TankTypeEnum.SOLE;
221
+ }
222
+
223
+ isPropertyIncome(): boolean {
224
+ return this.isIncome() && this.isPropertyTank();
225
+ }
226
+
227
+ isWorkIncome(): boolean {
228
+ return this.isIncome() && this.isWorkTank();
229
+ }
230
+
231
+ isSoleIncome(): boolean {
232
+ return this.isIncome() && this.isSoleTank();
233
+ }
234
+ }
@@ -0,0 +1,14 @@
1
+ import { Transaction, TransactionAllocation } from '../../../models';
2
+ import { AbstractControl } from '@angular/forms';
3
+ import { TransactionForm } from '../transaction.form';
4
+
5
+ export class HoldingExpenseForm extends TransactionForm {
6
+ constructor(
7
+ transaction: Transaction,
8
+ registeredForGst: boolean,
9
+ allocations: TransactionAllocation[],
10
+ controls: { [key: string]: AbstractControl } = {}
11
+ ) {
12
+ super(transaction, registeredForGst, allocations, controls);
13
+ }
14
+ }
@@ -0,0 +1,76 @@
1
+ import { ChartAccounts, Transaction, TransactionAllocation } from '../../../models';
2
+ import { AbstractControl, FormArray, FormGroup, UntypedFormControl, Validators } from '@angular/forms';
3
+ import { IEventListener } from '../../../interfaces';
4
+ import { autocompleteValidator, conditionalValidator, matchSumValidator } from '../../../validators';
5
+ import { TransactionOperationEnum } from '../../../db/Enums/transaction-operation.enum';
6
+ import { WorkTransactionForm } from '../work/work-transaction.form';
7
+ import { ChartAccountsMetaFieldListEnum } from '../../../db/Enums';
8
+
9
+ export class HoldingIncomeForm extends WorkTransactionForm implements IEventListener {
10
+ /**
11
+ * @TODO vik partial copyPast from workIncomeForm
12
+ */
13
+ constructor(transaction: Transaction, registeredForGst: boolean, allocations: TransactionAllocation[]) {
14
+ super(transaction, registeredForGst, allocations, {
15
+ tax: new UntypedFormControl(transaction.tax, Validators.required),
16
+ incomeSource: new UntypedFormControl(transaction.incomeSource, [Validators.required, autocompleteValidator()]),
17
+ });
18
+
19
+ // transactionAmount=frankedAmount + unfrankedAmount
20
+ this.get('amount').setValidators([Validators.required, conditionalValidator(
21
+ (): boolean => this.get('chartAccounts').value && this.get('chartAccounts').value.isDividends(),
22
+ matchSumValidator(this.getAmountComponents, 'The Franked and Unfranked amounts entered do not equal the total Amount received. Please check and try again.')
23
+ )]);
24
+
25
+ // forbid to edit some fields for allocated transaction
26
+ if (allocations.length) {
27
+ this.get('chartAccounts').disable();
28
+ }
29
+ this.get('transactions').disable();
30
+ // amount changes are not available for transactions with allocations or during allocate process
31
+ if (allocations.length || transaction.operation === TransactionOperationEnum.ALLOCATE) {
32
+ this.get('amount').disable();
33
+ }
34
+ }
35
+
36
+ /**
37
+ * metafields components of transactionAmount
38
+ */
39
+ getAmountComponents(): AbstractControl[] {
40
+ return this.metaFields.controls.filter((formGroup: FormGroup) =>
41
+ [ChartAccountsMetaFieldListEnum.FRANKED, ChartAccountsMetaFieldListEnum.UNFRANKED].includes(formGroup.get('chartAccountsMetaField').value.id)
42
+ ).map(formGroup => formGroup.get('value'));
43
+ }
44
+
45
+ listenEvents(): void {
46
+ this.listenChartAccountsChanges();
47
+ }
48
+
49
+ get metaFields(): FormArray {
50
+ return this.get('metaFields') as FormArray;
51
+ }
52
+
53
+ get frankingCredit(): AbstractControl {
54
+ return this.metaFields.controls.find(
55
+ (group: FormGroup) => group.get('chartAccountsMetaField').value.isFrankingCredit()
56
+ )?.get('value');
57
+ }
58
+
59
+ /**
60
+ * @TODO Alex/Vik: probably we need some database changes related to metafields.
61
+ * Now we have the following custom metafields behaviour:
62
+ * - % of share field should be 100 by default (now handled by WorkTransactionForm)
63
+ * - Franked and Unfranked sum should be equal to transaction amount
64
+ * - Franked field has custom message (mat-hint) (now handled by HoldingIncomeFormComponent)
65
+ * - some metafields required, but some not (now handled by HoldingIncomeForm)
66
+ */
67
+ private listenChartAccountsChanges(): void {
68
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts: ChartAccounts) => {
69
+ if (!chartAccounts.isDividends()) {
70
+ return;
71
+ }
72
+
73
+ this.frankingCredit.setValidators(Validators.required);
74
+ })
75
+ }
76
+ }
@@ -0,0 +1,10 @@
1
+ export * from './allocation-rule.form';
2
+ export * from './transaction-base.form';
3
+ export * from './transaction.form';
4
+ export * from './sole/sole-income.form';
5
+ export * from './work/work-income.form';
6
+ export * from './work/work-expense.form';
7
+ export * from './holding/holding-income.form';
8
+ export * from './holding/holding-expense.form';
9
+ export * from './transaction-base-filter.form';
10
+ export * from './transaction-base-filter';
@@ -0,0 +1,3 @@
1
+ export enum MessagesEnum {
2
+ DATE_VALIDATION_ERROR = 'The transaction date is before the ownership date, please update the date to confirm'
3
+ }
@@ -0,0 +1,22 @@
1
+ import { Transaction, TransactionAllocation } from '../../../models';
2
+ import { TransactionOperationEnum } from '../../../db/Enums/transaction-operation.enum';
3
+ import { SoleTransactionForm } from './sole-transaction.form';
4
+
5
+ export class SoleIncomeForm extends SoleTransactionForm {
6
+ constructor(transaction: Transaction, allocations: TransactionAllocation[], registeredForGst: boolean) {
7
+
8
+ super(transaction, registeredForGst, allocations, {});
9
+
10
+ // @TODO Alex: copypasted from work income form
11
+
12
+ // forbid to edit some fields for allocated transaction
13
+ if (allocations.length) {
14
+ this.get('chartAccounts').disable();
15
+ }
16
+
17
+ // amount changes are not available for transactions with allocations or during allocate process
18
+ if (allocations.length || transaction.operation === TransactionOperationEnum.ALLOCATE) {
19
+ this.get('amount').disable();
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,14 @@
1
+ import { AbstractControl } from '@angular/forms';
2
+ import { Transaction, TransactionAllocation } from '../../../models';
3
+ import { TransactionForm } from '../transaction.form';
4
+
5
+ export class SoleTransactionForm extends TransactionForm {
6
+ constructor(
7
+ transaction: Transaction,
8
+ registeredForGst: boolean,
9
+ allocations: TransactionAllocation[],
10
+ controls: { [key: string]: AbstractControl } = {}
11
+ ) {
12
+ super(transaction, registeredForGst, allocations, Object.assign(controls, {}));
13
+ }
14
+ }
@@ -0,0 +1,100 @@
1
+ import { FormControl, FormGroup } from '@angular/forms';
2
+ import { ControlsInterface } from '../abstract.form';
3
+ import { BudgetRuleCollection, Collection } from '../../collections';
4
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
5
+ import { Property, SoleBusiness } from '../../models';
6
+ import { IEventListener } from '../../interfaces';
7
+ import { TransactionBase } from '../../db/Models';
8
+ import { TransactionBaseFilter } from './transaction-base-filter';
9
+ import { plainToClass } from 'class-transformer';
10
+
11
+ interface ITransactionBaseFilterControls extends ControlsInterface {
12
+ tankType: FormControl<TankTypeEnum>;
13
+ business: FormControl<SoleBusiness>;
14
+ properties: FormControl<Property[]>;
15
+ dateRange: FormControl<Date[]>;
16
+ chartAccounts: FormControl<string>;
17
+ }
18
+
19
+ export class TransactionBaseFilterForm extends FormGroup<ITransactionBaseFilterControls> implements IEventListener {
20
+ constructor(model = plainToClass(TransactionBaseFilter, {})) {
21
+ super({
22
+ tankType: new FormControl(model.tankType),
23
+ business: new FormControl({ value: model.business, disabled: true }),
24
+ properties: new FormControl({ value: model.properties, disabled: true }),
25
+ dateRange: new FormControl(model.dateRange),
26
+ chartAccounts: new FormControl(model.chartAccounts),
27
+ });
28
+
29
+ this.listenEvents();
30
+ }
31
+
32
+ listenEvents(): void {
33
+ this.get('tankType').valueChanges.subscribe(tankType => {
34
+ if (tankType === TankTypeEnum.SOLE) {
35
+ this.get('business').enable();
36
+ } else {
37
+ this.get('business').disable();
38
+ }
39
+
40
+ if (tankType === TankTypeEnum.PROPERTY) {
41
+ this.get('properties').enable();
42
+ } else {
43
+ this.get('properties').disable();
44
+ }
45
+ });
46
+ }
47
+
48
+ filter<ModelClass extends TransactionBase, CollectionClass extends Collection<ModelClass>>(collection: CollectionClass): CollectionClass {
49
+ if (!collection.length) {
50
+ return collection;
51
+ }
52
+ const value = this.value;
53
+ const [dateFrom, dateTo] = value.dateRange || [];
54
+
55
+ if (dateFrom) {
56
+ collection = collection.filter(transaction => transaction.date >= dateFrom);
57
+ }
58
+ if (dateTo) {
59
+ collection = collection.filter(transaction => transaction.date <= dateTo);
60
+ }
61
+ if (value.tankType) {
62
+ collection = collection.filterBy('tankType', value.tankType);
63
+ }
64
+ if (value.business) {
65
+ collection = collection.filterBy('business.id', value.business.id);
66
+ }
67
+ if (value.properties?.length) {
68
+ collection = collection.filterBy('property.id', value.properties.map(property => property.id));
69
+ }
70
+ if (value.chartAccounts) {
71
+ const searchQuery: string = value.chartAccounts.toLowerCase().trim();
72
+ collection = collection.filter(transaction => transaction.chartAccounts.name.toLowerCase().includes(searchQuery));
73
+ }
74
+
75
+ return collection;
76
+ }
77
+
78
+ filterBudgetRules(rules: BudgetRuleCollection): BudgetRuleCollection {
79
+ const value = this.value;
80
+ const [dateFrom, dateTo] = value.dateRange || [];
81
+
82
+ if (value.tankType) {
83
+ rules = rules.filterBy('chartAccounts.tankType', value.tankType);
84
+ }
85
+ if (value.chartAccounts) {
86
+ rules = rules.getByChartAccountsName(value.chartAccounts);
87
+ }
88
+ if (dateFrom || dateTo) {
89
+ rules = rules.getByDate(dateFrom, dateTo);
90
+ }
91
+ if (value.properties?.length) {
92
+ rules = rules.filterByProperties(value.properties);
93
+ }
94
+ if (value.business) {
95
+ rules = rules.filterBy('business.id', value.business.id);
96
+ }
97
+
98
+ return rules;
99
+ }
100
+ }
@@ -0,0 +1,10 @@
1
+ import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
2
+ import { Property, SoleBusiness } from '../../models';
3
+
4
+ export class TransactionBaseFilter {
5
+ tankType: TankTypeEnum;
6
+ business: SoleBusiness;
7
+ properties: Property[];
8
+ dateRange: Date[];
9
+ chartAccounts: string;
10
+ }
@@ -0,0 +1,117 @@
1
+ import { AbstractControl, UntypedFormControl, Validators } from '@angular/forms';
2
+ import { autocompleteValidator } from '../../validators';
3
+ import { AbstractForm } from '../abstract.form';
4
+ import { TransactionBase } from '../../db/Models';
5
+ import { ChartAccountsListEnum } from '../../db/Enums';
6
+ import { ChartAccounts } from '../../models';
7
+ import { FormValidationsEnum } from '../form-validations.enum';
8
+
9
+ /**
10
+ * @TODO refactor, move specific fields like property in separated forms
11
+ * @TODO remove useless getters
12
+ */
13
+ export class TransactionBaseForm<Model extends TransactionBase> extends AbstractForm<Model> {
14
+ registeredForGst: boolean;
15
+
16
+ constructor(transaction: Model, registeredForGst: boolean, controls: { [key: string]: AbstractControl } = {}) {
17
+ super(
18
+ Object.assign({
19
+ chartAccounts: new UntypedFormControl(transaction.chartAccounts, [Validators.required, autocompleteValidator()]),
20
+ claimPercent: new UntypedFormControl(
21
+ { value: transaction.claimPercent, disabled: true },
22
+ [Validators.required, Validators.min(0), Validators.max(100)]
23
+ ),
24
+ amount: new UntypedFormControl(transaction.amount, Validators.required),
25
+ amountWithGST: new UntypedFormControl(transaction.amountWithGst, Validators.required),
26
+ isGST: new UntypedFormControl({ value: transaction.isGST, disabled: !transaction.chartAccounts?.isGST || !registeredForGst }),
27
+ gstAmount: new UntypedFormControl({ value: transaction.gstAmount, disabled: true }, Validators.required),
28
+ date: new UntypedFormControl(transaction.date, [Validators.required]),
29
+ description: new UntypedFormControl(transaction.description, Validators.maxLength(FormValidationsEnum.TEXT_MAX_LENGTH)),
30
+ file: new UntypedFormControl(transaction.file),
31
+ property: new UntypedFormControl({ value: transaction.property, disabled: transaction.chartAccounts }),
32
+ }, controls),
33
+ transaction
34
+ );
35
+
36
+ this.registeredForGst = registeredForGst;
37
+ this.watchChartAccounts();
38
+ this.watchAmountWithGST();
39
+ this.watchIsGst();
40
+ }
41
+
42
+ private watchIsGst(): void {
43
+ this.get('isGST').valueChanges.subscribe((isGST: boolean) => {
44
+ this.updateAmount();
45
+ this.updateGstAmount();
46
+ });
47
+ }
48
+
49
+ private watchAmountWithGST(): void {
50
+ this.get('amountWithGST').valueChanges.subscribe(() => {
51
+ this.updateAmount();
52
+ this.updateGstAmount();
53
+ });
54
+ }
55
+
56
+ watchChartAccounts(): void {
57
+ this.get('chartAccounts').valueChanges.subscribe((chartAccounts: ChartAccounts) => {
58
+ // recalculate claim percent for selected chart accounts
59
+ this.updateClaimPercent(chartAccounts);
60
+ if (!this.isGstApplicable()) {
61
+ return;
62
+ }
63
+ // update gst if applicable
64
+ if (chartAccounts.isGST) {
65
+ this.get('isGST').enable();
66
+ this.get('isGST').patchValue(true);
67
+ } else {
68
+ this.get('isGST').patchValue(false);
69
+ this.get('isGST').disable();
70
+ }
71
+ });
72
+ }
73
+
74
+ private updateGstAmount(): void {
75
+ this.get('gstAmount').patchValue(this.amountWithGST - this.amount);
76
+ }
77
+
78
+ private updateAmount(): void {
79
+ this.patchField('amount', this.isGST ? this.amountWithGST / ChartAccounts.GSTCoefficient : this.amountWithGST);
80
+ }
81
+
82
+ private isGstApplicable(): boolean {
83
+ return !!this.registeredForGst && !!this.model.business;
84
+ }
85
+
86
+ private get amount(): number {
87
+ return this.get('amount').value;
88
+ }
89
+
90
+ private get amountWithGST(): number {
91
+ return this.get('amountWithGST').value;
92
+ }
93
+
94
+ private get isGST(): number {
95
+ return this.get('isGST').value;
96
+ }
97
+
98
+ /**
99
+ * propertyClaimPercent for propertyExpense (except platform fees, which already include claimPercent),
100
+ * taxablePercent for others
101
+ * can be adjusted only for property/sole expenses
102
+ */
103
+ private updateClaimPercent(chartAccounts: ChartAccounts): void {
104
+ if (chartAccounts.isClaimPercentEditable()) {
105
+ this.get('claimPercent').enable();
106
+ } else {
107
+ this.get('claimPercent').disable();
108
+ }
109
+
110
+ // property claim (ownership% x shared%) for property expenses, taxable percent for others
111
+ let claimPercent = chartAccounts.taxablePercent;
112
+ if (chartAccounts.isPropertyExpense() && chartAccounts.id !== ChartAccountsListEnum.PLATFORM_FEES) {
113
+ claimPercent *= this.get('property').value.claimCoefficient;
114
+ }
115
+ this.get('claimPercent').setValue(claimPercent);
116
+ }
117
+ }