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.
- package/.editorconfig +16 -0
- package/.eslintrc.json +106 -0
- package/.gitlab-ci.yml +42 -0
- package/.vscode/extensions.json +4 -0
- package/.vscode/launch.json +20 -0
- package/.vscode/tasks.json +42 -0
- package/README.md +108 -0
- package/angular.json +79 -0
- package/package.json +50 -0
- package/projects/tt-core/.eslintrc.json +20 -0
- package/projects/tt-core/README.md +5 -0
- package/projects/tt-core/common/index.ts +1 -0
- package/projects/tt-core/common/ng-package.json +6 -0
- package/projects/tt-core/common/public-api.ts +3 -0
- package/projects/tt-core/common/src/common.module.ts +30 -0
- package/projects/tt-core/common/src/db/enums/index.ts +1 -0
- package/projects/tt-core/common/src/db/enums/user/index.ts +1 -0
- package/projects/tt-core/common/src/db/enums/user/user-roles.enum.ts +17 -0
- package/projects/tt-core/common/src/db/index.ts +1 -0
- package/projects/tt-core/common/src/interceptors/interceptors.module.ts +15 -0
- package/projects/tt-core/common/src/interceptors/jwt-interceptor.ts +156 -0
- package/projects/tt-core/common/src/services/auth/auth-messages.enum.ts +3 -0
- package/projects/tt-core/common/src/services/auth/auth-tokens.interface.ts +7 -0
- package/projects/tt-core/common/src/services/auth/auth.service.ts +63 -0
- package/projects/tt-core/common/src/services/auth/index.ts +5 -0
- package/projects/tt-core/common/src/services/auth/jwt-decoded.interface.ts +8 -0
- package/projects/tt-core/common/src/services/auth/jwt.service.ts +58 -0
- package/projects/tt-core/common/src/services/index.ts +2 -0
- package/projects/tt-core/common/src/services/mixpanel.service.ts +61 -0
- package/projects/tt-core/index.ts +1 -0
- package/projects/tt-core/karma.conf.js +43 -0
- package/projects/tt-core/ng-package.json +7 -0
- package/projects/tt-core/package.json +44 -0
- package/projects/tt-core/public-api.ts +255 -0
- package/projects/tt-core/src/lib/collections/account-setup-item.collection.ts +33 -0
- package/projects/tt-core/src/lib/collections/allocation-group.collection.ts +11 -0
- package/projects/tt-core/src/lib/collections/allocation-rule.collection.ts +34 -0
- package/projects/tt-core/src/lib/collections/asset-sale.collection.ts +70 -0
- package/projects/tt-core/src/lib/collections/bank-account.collection.ts +168 -0
- package/projects/tt-core/src/lib/collections/bank-transaction.collection.ts +173 -0
- package/projects/tt-core/src/lib/collections/budget/budget-rule.collection.ts +39 -0
- package/projects/tt-core/src/lib/collections/budget/budget.collection.ts +4 -0
- package/projects/tt-core/src/lib/collections/budget/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/chart-accounts/chart-accounts-value.collection.ts +25 -0
- package/projects/tt-core/src/lib/collections/chart-accounts/index.ts +1 -0
- package/projects/tt-core/src/lib/collections/chart-accounts.collection.ts +30 -0
- package/projects/tt-core/src/lib/collections/chat/chat.collection.ts +9 -0
- package/projects/tt-core/src/lib/collections/chat/index.ts +3 -0
- package/projects/tt-core/src/lib/collections/chat/message-document.collection.ts +16 -0
- package/projects/tt-core/src/lib/collections/chat/message.collection.ts +39 -0
- package/projects/tt-core/src/lib/collections/client-invite.collection.ts +8 -0
- package/projects/tt-core/src/lib/collections/client-movement.collection.ts +63 -0
- package/projects/tt-core/src/lib/collections/client-portfolio-report.collection.ts +47 -0
- package/projects/tt-core/src/lib/collections/client.collection.ts +5 -0
- package/projects/tt-core/src/lib/collections/collection-dictionary.ts +155 -0
- package/projects/tt-core/src/lib/collections/collection.ts +238 -0
- package/projects/tt-core/src/lib/collections/depreciation-forecast.collection.ts +25 -0
- package/projects/tt-core/src/lib/collections/depreciation.collection.ts +162 -0
- package/projects/tt-core/src/lib/collections/document/document-folder.collection.ts +23 -0
- package/projects/tt-core/src/lib/collections/document/index.ts +1 -0
- package/projects/tt-core/src/lib/collections/exportable.collection.ts +27 -0
- package/projects/tt-core/src/lib/collections/financial-goal.collection.ts +47 -0
- package/projects/tt-core/src/lib/collections/firm/employee-invite.collection.ts +12 -0
- package/projects/tt-core/src/lib/collections/firm/employee.collection.ts +27 -0
- package/projects/tt-core/src/lib/collections/firm/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/holding/holding-sale.collection.ts +42 -0
- package/projects/tt-core/src/lib/collections/holding/holding-trade.collection.ts +104 -0
- package/projects/tt-core/src/lib/collections/holding/holding-type.collection.ts +14 -0
- package/projects/tt-core/src/lib/collections/holding/holding.collection.ts +53 -0
- package/projects/tt-core/src/lib/collections/holding/index.ts +4 -0
- package/projects/tt-core/src/lib/collections/home-office/home-office-claim.collection.ts +8 -0
- package/projects/tt-core/src/lib/collections/home-office/index.ts +1 -0
- package/projects/tt-core/src/lib/collections/income-source/income-source-forecast.collection.ts +13 -0
- package/projects/tt-core/src/lib/collections/income-source/income-source.collection.ts +52 -0
- package/projects/tt-core/src/lib/collections/income-source/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/index.ts +43 -0
- package/projects/tt-core/src/lib/collections/loan/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/loan/loan-payment.collection.ts +44 -0
- package/projects/tt-core/src/lib/collections/loan/loan.collection.ts +58 -0
- package/projects/tt-core/src/lib/collections/money/calendar-event-collection.ts +4 -0
- package/projects/tt-core/src/lib/collections/money/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/money/money-calendar-event-collection.ts +29 -0
- package/projects/tt-core/src/lib/collections/property/index.ts +6 -0
- package/projects/tt-core/src/lib/collections/property/property-category-movement.collection.ts +27 -0
- package/projects/tt-core/src/lib/collections/property/property-sale/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/property/property-sale/property-sale-tax-exemption-meta-field.collection.ts +25 -0
- package/projects/tt-core/src/lib/collections/property/property-sale/property-sale.collection.ts +15 -0
- package/projects/tt-core/src/lib/collections/property/property-share.collection.ts +22 -0
- package/projects/tt-core/src/lib/collections/property/property-valuation.collection.ts +16 -0
- package/projects/tt-core/src/lib/collections/property/property.collection.ts +181 -0
- package/projects/tt-core/src/lib/collections/property/tax-exemption.collection.ts +14 -0
- package/projects/tt-core/src/lib/collections/report/budget-report/budget-rule-item.collection.ts +71 -0
- package/projects/tt-core/src/lib/collections/report/budget-report/index.ts +1 -0
- package/projects/tt-core/src/lib/collections/report/depreciation/depreciation-lvp-report-item.collection.ts +17 -0
- package/projects/tt-core/src/lib/collections/report/depreciation/depreciation-report-item.collection.ts +15 -0
- package/projects/tt-core/src/lib/collections/report/income-expense/transaction-report-item.collection.ts +38 -0
- package/projects/tt-core/src/lib/collections/report/index.ts +8 -0
- package/projects/tt-core/src/lib/collections/report/property/property-report-item-depreciation.collection.ts +36 -0
- package/projects/tt-core/src/lib/collections/report/property/property-report-item-transaction.collection.ts +35 -0
- package/projects/tt-core/src/lib/collections/report/property/property-report-item.collection.ts +19 -0
- package/projects/tt-core/src/lib/collections/report/vehicle-expense/vehicle-expense.collection.ts +32 -0
- package/projects/tt-core/src/lib/collections/sole/index.ts +3 -0
- package/projects/tt-core/src/lib/collections/sole/sole-business-loss.collection.ts +52 -0
- package/projects/tt-core/src/lib/collections/sole/sole-invoice-item.collection.ts +13 -0
- package/projects/tt-core/src/lib/collections/sole/sole-invoice.collection.ts +61 -0
- package/projects/tt-core/src/lib/collections/subscription/index.ts +4 -0
- package/projects/tt-core/src/lib/collections/subscription/service-price.collection.ts +36 -0
- package/projects/tt-core/src/lib/collections/subscription/service-product.collection.ts +13 -0
- package/projects/tt-core/src/lib/collections/subscription/service-subscription.collection.ts +107 -0
- package/projects/tt-core/src/lib/collections/subscription/subscription-item.collection.ts +21 -0
- package/projects/tt-core/src/lib/collections/tax-review.collection.ts +55 -0
- package/projects/tt-core/src/lib/collections/tax-summary/index.ts +2 -0
- package/projects/tt-core/src/lib/collections/tax-summary/report-item.collection.ts +121 -0
- package/projects/tt-core/src/lib/collections/tax-summary/tax-return-categories.const.ts +129 -0
- package/projects/tt-core/src/lib/collections/transaction/index.ts +3 -0
- package/projects/tt-core/src/lib/collections/transaction/transaction-allocation.collection.ts +51 -0
- package/projects/tt-core/src/lib/collections/transaction/transaction-base.collection.ts +6 -0
- package/projects/tt-core/src/lib/collections/transaction/transaction.collection.ts +329 -0
- package/projects/tt-core/src/lib/collections/user/user.collection.ts +4 -0
- package/projects/tt-core/src/lib/collections/user-event-setting.collection.ts +11 -0
- package/projects/tt-core/src/lib/collections/user-event-type-collection.ts +12 -0
- package/projects/tt-core/src/lib/collections/vehicle/best-vehicle-logbook.collection.ts +116 -0
- package/projects/tt-core/src/lib/collections/vehicle/index.ts +3 -0
- package/projects/tt-core/src/lib/collections/vehicle/vehicle-claim.collection.ts +30 -0
- package/projects/tt-core/src/lib/collections/vehicle/vehicle-logbook.collection.ts +51 -0
- package/projects/tt-core/src/lib/core.module.ts +15 -0
- package/projects/tt-core/src/lib/db/Enums/address-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/annual-frequency.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-comparison-operator.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-field.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-condition-operator.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/allocation-rule-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/bank/allocation-rule/index.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-account-status.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-account-type.enum.ts +11 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-connection-badge-status.enum.ts +0 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-connection-status.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-popular.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-provider.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/bank/bank-transaction-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/index.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/index.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-bank-type.enum.ts +10 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-interest-type-label.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-interest-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-payout-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-repayment-type-label.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-repayment-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-type.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/bank/loan/loan-vehicle-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/budget/budget-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/budget/index.ts +1 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/business-chart-accounts.enum.ts +47 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-adjustment-included-list.enum.ts +17 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-category.enum.ts +18 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-etp.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-list.enum.ts +48 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-tax-deductible.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-taxable.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-heading-vehicle-list.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-holding-untaxed-income-list.enum.ts +9 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-keep-sign.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-list.enum.ts +60 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-list.enum.ts +17 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-meta-field-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-property-adjustments-list.enum.ts +48 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-salary-adjustments-list.enum.ts +15 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/chart-accounts-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/expense-category-by-type.ts +11 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/income-category-by-type.ts +11 -0
- package/projects/tt-core/src/lib/db/Enums/chart-accounts/index.ts +18 -0
- package/projects/tt-core/src/lib/db/Enums/chat-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/client/client-details-medicare-exemption.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/client/client-details-work-depreciation-calculation.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/client/client-details-working-holiday-maker.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/client/client-invite-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/client/client-invite-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/client/index.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/client/timezone.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/daily-frequency.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/date-formats.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/depreciation-calculation-percent.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/depreciation-calculation.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/depreciation-type.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/depreciation-write-off-amount.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/document-type.enum.ts +3 -0
- package/projects/tt-core/src/lib/db/Enums/file-type.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/firm/employee-invite-role.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/firm/firm-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/firm/index.ts +2 -0
- package/projects/tt-core/src/lib/db/Enums/holding/holding-trade-type.enum.ts +10 -0
- package/projects/tt-core/src/lib/db/Enums/holding/holding-type-category.enum.ts +16 -0
- package/projects/tt-core/src/lib/db/Enums/holding/holding-type-exchange-list.enum.ts +9 -0
- package/projects/tt-core/src/lib/db/Enums/holding/index.ts +3 -0
- package/projects/tt-core/src/lib/db/Enums/home-office/home-office-claim-method.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/home-office/index.ts +1 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-forecast-trust-type.enum.ts +13 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-holding.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-other.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-sole.enum.ts +3 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type-list-work.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/income-source-type.enum.ts +9 -0
- package/projects/tt-core/src/lib/db/Enums/income-source/index.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/index.ts +20 -0
- package/projects/tt-core/src/lib/db/Enums/invite-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/money/calendar-event-type.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/money/index.ts +1 -0
- package/projects/tt-core/src/lib/db/Enums/phone-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-category-list.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-corelogic-stats-confidence.type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-depreciation-calculation.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-sale/tax-exemption-meta-field.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-sale/tax-exemption.enum.ts +10 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-share-access.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/property/property-share-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/property-depreciation-calculation.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/registration-invite-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/service-notification-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/service-notification-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/setup-item-type.enum.ts +14 -0
- package/projects/tt-core/src/lib/db/Enums/sole/index.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/sole/sole-depreciation-method.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-state.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-statuses.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-tax-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/sole/sole-invoice-template-tax-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/spare-document-spare-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/index.ts +2 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-method-card-brand.enum.ts +10 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-method-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-payment-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-price-id.enum.ts +24 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-price-list.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-price-recurring-interval.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-price-type.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-product-id.enum.ts +10 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-product-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/subscription/service-subscription-status.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/tank-type.enum.ts +8 -0
- package/projects/tt-core/src/lib/db/Enums/tax-calculation-medicare-exemption.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/tax-calculation-type.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/tax-return/index.ts +3 -0
- package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-category-list.enum.ts +97 -0
- package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-category-section.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/tax-return/tax-return-item.enum.ts +18 -0
- package/projects/tt-core/src/lib/db/Enums/tax-review-status.enum.ts +11 -0
- package/projects/tt-core/src/lib/db/Enums/tax-summary-list.enum.ts +15 -0
- package/projects/tt-core/src/lib/db/Enums/tax-summary-section.enum.ts +9 -0
- package/projects/tt-core/src/lib/db/Enums/tax-summary-tax-summary.enum.ts +15 -0
- package/projects/tt-core/src/lib/db/Enums/ticket-feedback.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/ticket-status.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/ticket-types.enum.ts +3 -0
- package/projects/tt-core/src/lib/db/Enums/transaction-operation.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Enums/transaction-source.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/transaction-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/user/gender.enum.ts +12 -0
- package/projects/tt-core/src/lib/db/Enums/user/index.ts +1 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-status.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-type-client-type.enum.ts +27 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-type-employee-type.enum.ts +15 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-type-frequency.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-type-type.enum.ts +51 -0
- package/projects/tt-core/src/lib/db/Enums/user-event-type-user-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/user-medicare-exemption.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/user-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/user-title.enum.ts +7 -0
- package/projects/tt-core/src/lib/db/Enums/user-work-depreciation-calculation.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/user-working-holiday-maker.enum.ts +5 -0
- package/projects/tt-core/src/lib/db/Enums/vehicle-claim-details-method.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/vehicle-logbook-purpose.enum.ts +4 -0
- package/projects/tt-core/src/lib/db/Enums/youtube-videos.enum.ts +22 -0
- package/projects/tt-core/src/lib/db/Json/chart-accounts/chart-accounts-value.json +585 -0
- package/projects/tt-core/src/lib/db/Json/holding/holding-type-exchange.json +79 -0
- package/projects/tt-core/src/lib/db/Json/income-source/income_source_type.json +62 -0
- package/projects/tt-core/src/lib/db/Json/property/tax-exemption.json +47 -0
- package/projects/tt-core/src/lib/db/Json/tax-return/tax-return-item.json +1958 -0
- package/projects/tt-core/src/lib/db/Models/abstract-model.ts +21 -0
- package/projects/tt-core/src/lib/db/Models/address.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-account-balance.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-account-property.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-account.ts +40 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-connection.ts +19 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-transaction-import.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank-transaction.ts +18 -0
- package/projects/tt-core/src/lib/db/Models/bank/bank.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/bank/basiq-job-step.enum.ts +6 -0
- package/projects/tt-core/src/lib/db/Models/bank/basiq-job.ts +11 -0
- package/projects/tt-core/src/lib/db/Models/budget/budget-rule.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/budget/budget.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/budget/index.ts +2 -0
- package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-depreciation.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-heading.ts +8 -0
- package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-meta-field.ts +11 -0
- package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts-value.ts +13 -0
- package/projects/tt-core/src/lib/db/Models/chart-accounts/chart-accounts.ts +27 -0
- package/projects/tt-core/src/lib/db/Models/client/annual-client-details.ts +14 -0
- package/projects/tt-core/src/lib/db/Models/client/client-details.ts +27 -0
- package/projects/tt-core/src/lib/db/Models/client/index.ts +3 -0
- package/projects/tt-core/src/lib/db/Models/client/occupation.ts +6 -0
- package/projects/tt-core/src/lib/db/Models/country.ts +6 -0
- package/projects/tt-core/src/lib/db/Models/depreciation/depreciation-capital-project.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/depreciation/depreciation-forecast.ts +18 -0
- package/projects/tt-core/src/lib/db/Models/depreciation/depreciation.ts +48 -0
- package/projects/tt-core/src/lib/db/Models/document/document-folder.ts +11 -0
- package/projects/tt-core/src/lib/db/Models/document/folder-document.ts +8 -0
- package/projects/tt-core/src/lib/db/Models/file.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/firm/accountant/tax-review.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/firm/accountant/ticket.ts +21 -0
- package/projects/tt-core/src/lib/db/Models/firm/chat.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/firm/client-invite.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/firm/client-movement.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/firm/employee-invite.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/firm/firm-invite.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/firm/firm.ts +31 -0
- package/projects/tt-core/src/lib/db/Models/firm/message-document.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/firm/message.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/holding/holding-sale.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/holding/holding-trade-import.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/holding/holding-trade.ts +18 -0
- package/projects/tt-core/src/lib/db/Models/holding/holding-type-exchange.ts +14 -0
- package/projects/tt-core/src/lib/db/Models/holding/holding-type.ts +32 -0
- package/projects/tt-core/src/lib/db/Models/holding/index.ts +4 -0
- package/projects/tt-core/src/lib/db/Models/incomeSource/income-source-forecast.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/incomeSource/income-source-type.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/incomeSource/income-source.ts +23 -0
- package/projects/tt-core/src/lib/db/Models/incomeSource/salary-forecast.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/index.ts +111 -0
- package/projects/tt-core/src/lib/db/Models/loan/borrowing-expense-loan.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/loan/borrowing-expense.ts +8 -0
- package/projects/tt-core/src/lib/db/Models/loan/loan-payout.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/loan/loan.ts +48 -0
- package/projects/tt-core/src/lib/db/Models/observable-model.ts +22 -0
- package/projects/tt-core/src/lib/db/Models/phone.ts +13 -0
- package/projects/tt-core/src/lib/db/Models/property/borrowing-report.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/property/property-category-movement.ts +19 -0
- package/projects/tt-core/src/lib/db/Models/property/property-category.ts +15 -0
- package/projects/tt-core/src/lib/db/Models/property/property-forecast.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/property/property-sale/property-sale-tax-exemption-meta-field.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/property/property-sale/property-sale.ts +24 -0
- package/projects/tt-core/src/lib/db/Models/property/property-sale/tax-exemption-meta-field.ts +7 -0
- package/projects/tt-core/src/lib/db/Models/property/property-sale/tax-exemption.ts +8 -0
- package/projects/tt-core/src/lib/db/Models/property/property-share.ts +29 -0
- package/projects/tt-core/src/lib/db/Models/property/property-subscription.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/property/property-valuation.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/property/property.ts +66 -0
- package/projects/tt-core/src/lib/db/Models/service-notification.ts +14 -0
- package/projects/tt-core/src/lib/db/Models/setup-item.ts +19 -0
- package/projects/tt-core/src/lib/db/Models/sole/bas-report.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-business-activity.ts +6 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-business-allocation.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-business-loss-offset-rule.ts +7 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-business-loss.ts +11 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-business.ts +34 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-contact.ts +17 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-depreciation-method.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-details.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-forecast.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-invoice-item.ts +14 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-invoice-template.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/sole/sole-invoice.ts +21 -0
- package/projects/tt-core/src/lib/db/Models/spare/spare-document-category.ts +7 -0
- package/projects/tt-core/src/lib/db/Models/spare/spare-document.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-payment-method.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-payment.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-price.ts +19 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-product.ts +20 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-subscription-item.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/subscription/service-subscription.ts +24 -0
- package/projects/tt-core/src/lib/db/Models/tax-calculation.ts +19 -0
- package/projects/tt-core/src/lib/db/Models/tax-return/index.ts +3 -0
- package/projects/tt-core/src/lib/db/Models/tax-return/tax-return-category.ts +13 -0
- package/projects/tt-core/src/lib/db/Models/tax-return/tax-return-item.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/tax-return/tax-return.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-condition.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-transaction-meta-field.ts +9 -0
- package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule-transaction.ts +27 -0
- package/projects/tt-core/src/lib/db/Models/transaction/allocation-rule.ts +22 -0
- package/projects/tt-core/src/lib/db/Models/transaction/transaction-allocation.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/transaction/transaction-base.ts +111 -0
- package/projects/tt-core/src/lib/db/Models/transaction/transaction-meta-field.ts +12 -0
- package/projects/tt-core/src/lib/db/Models/transaction/transaction.ts +50 -0
- package/projects/tt-core/src/lib/db/Models/user/employee-details.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/user/registration-invite.ts +14 -0
- package/projects/tt-core/src/lib/db/Models/user/user-event-setting.ts +11 -0
- package/projects/tt-core/src/lib/db/Models/user/user-event-type-category.ts +5 -0
- package/projects/tt-core/src/lib/db/Models/user/user-event-type.ts +18 -0
- package/projects/tt-core/src/lib/db/Models/user/user-event.ts +16 -0
- package/projects/tt-core/src/lib/db/Models/user/user.ts +65 -0
- package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-claim-details.ts +10 -0
- package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-claim.ts +13 -0
- package/projects/tt-core/src/lib/db/Models/vehicle/vehicle-logbook.ts +18 -0
- package/projects/tt-core/src/lib/db/Models/vehicle/vehicle.ts +9 -0
- package/projects/tt-core/src/lib/db-static/chart-accounts/chart-accounts-values.ts +11 -0
- package/projects/tt-core/src/lib/forms/abstract.form.ts +224 -0
- package/projects/tt-core/src/lib/forms/address/address.form.ts +228 -0
- package/projects/tt-core/src/lib/forms/address/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/aussie/aussie-appointment.form.ts +16 -0
- package/projects/tt-core/src/lib/forms/aussie/aussie-confirmation.form.ts +13 -0
- package/projects/tt-core/src/lib/forms/aussie/aussie-store.form.ts +32 -0
- package/projects/tt-core/src/lib/forms/aussie/index.ts +3 -0
- package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-add-manual.form.ts +57 -0
- package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-allocation.form.ts +60 -0
- package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-import.form.ts +31 -0
- package/projects/tt-core/src/lib/forms/bank/bank-account/bank-account-properties.form.ts +78 -0
- package/projects/tt-core/src/lib/forms/bank/bank-account/bank-accounts-import.form.ts +82 -0
- package/projects/tt-core/src/lib/forms/bank/bank-transaction-comment.form.ts +12 -0
- package/projects/tt-core/src/lib/forms/bank/index.ts +6 -0
- package/projects/tt-core/src/lib/forms/budget/budget-rule.form.ts +56 -0
- package/projects/tt-core/src/lib/forms/budget/budget.form.ts +94 -0
- package/projects/tt-core/src/lib/forms/budget/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/chart-accounts/chart-accounts.form.ts +26 -0
- package/projects/tt-core/src/lib/forms/chart-accounts/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/chat/chat-filter.form.ts +50 -0
- package/projects/tt-core/src/lib/forms/chat/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/client/annual-client-details.form.ts +48 -0
- package/projects/tt-core/src/lib/forms/client/capital-loss.form.ts +12 -0
- package/projects/tt-core/src/lib/forms/client/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/collection.form.ts +37 -0
- package/projects/tt-core/src/lib/forms/depreciation/depreciation.form.ts +50 -0
- package/projects/tt-core/src/lib/forms/depreciation/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/document-folder/document-folder.form.ts +13 -0
- package/projects/tt-core/src/lib/forms/document-folder/document.form.ts +12 -0
- package/projects/tt-core/src/lib/forms/document-folder/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/financial-goal/financial-goal-filter.form.ts +57 -0
- package/projects/tt-core/src/lib/forms/financial-goal/financial-goal.form.ts +167 -0
- package/projects/tt-core/src/lib/forms/financial-goal/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/firm/client-invite-put.form.ts +18 -0
- package/projects/tt-core/src/lib/forms/firm/client-invite.form.ts +27 -0
- package/projects/tt-core/src/lib/forms/firm/client-movement.form.ts +22 -0
- package/projects/tt-core/src/lib/forms/firm/employee-details.form.ts +20 -0
- package/projects/tt-core/src/lib/forms/firm/employee-invite.form.ts +33 -0
- package/projects/tt-core/src/lib/forms/firm/firm-branch.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/firm/firm-invite.form.ts +27 -0
- package/projects/tt-core/src/lib/forms/firm/firm.form.ts +22 -0
- package/projects/tt-core/src/lib/forms/firm/index.ts +8 -0
- package/projects/tt-core/src/lib/forms/form-validations.enum.ts +10 -0
- package/projects/tt-core/src/lib/forms/holding/holding-reinvest.form.ts +97 -0
- package/projects/tt-core/src/lib/forms/holding/holding-trade/holding-trade-filter.form.ts +64 -0
- package/projects/tt-core/src/lib/forms/holding/holding-trade/holding-trade.form.ts +35 -0
- package/projects/tt-core/src/lib/forms/holding/holding-trade/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/holding/holding-trade-import.form.ts +32 -0
- package/projects/tt-core/src/lib/forms/holding/holding-type.form.ts +18 -0
- package/projects/tt-core/src/lib/forms/holding/index.ts +4 -0
- package/projects/tt-core/src/lib/forms/home-office/home-office-calculator.form.ts +37 -0
- package/projects/tt-core/src/lib/forms/home-office/home-office-claim.form.ts +50 -0
- package/projects/tt-core/src/lib/forms/home-office/home-office-log.form.ts +15 -0
- package/projects/tt-core/src/lib/forms/home-office/index.ts +3 -0
- package/projects/tt-core/src/lib/forms/index.ts +39 -0
- package/projects/tt-core/src/lib/forms/loan/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/loan/loan.form.ts +99 -0
- package/projects/tt-core/src/lib/forms/login/login.form.ts +11 -0
- package/projects/tt-core/src/lib/forms/money/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/money/money-schedule-filter.form.ts +95 -0
- package/projects/tt-core/src/lib/forms/phone/index.ts +1 -0
- package/projects/tt-core/src/lib/forms/phone/phone.form.ts +20 -0
- package/projects/tt-core/src/lib/forms/property/borrowing-report.form.ts +33 -0
- package/projects/tt-core/src/lib/forms/property/index.ts +9 -0
- package/projects/tt-core/src/lib/forms/property/property-add.form.ts +67 -0
- package/projects/tt-core/src/lib/forms/property/property-category-movement-form.ts +23 -0
- package/projects/tt-core/src/lib/forms/property/property-edit.form.ts +28 -0
- package/projects/tt-core/src/lib/forms/property/property-forecast.form.ts +36 -0
- package/projects/tt-core/src/lib/forms/property/property-sale/index.ts +3 -0
- package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-cost-base.form.ts +49 -0
- package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-cost-sale.form.ts +78 -0
- package/projects/tt-core/src/lib/forms/property/property-sale/property-sale-exemptions.form.ts +141 -0
- package/projects/tt-core/src/lib/forms/property/property-share.form.ts +16 -0
- package/projects/tt-core/src/lib/forms/property/property-valuation.form.ts +37 -0
- package/projects/tt-core/src/lib/forms/register/register-client.form.ts +23 -0
- package/projects/tt-core/src/lib/forms/register/register-firm.form.ts +27 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/index.ts +16 -0
- 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
- 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
- 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
- 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
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-cgt.form.ts +35 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-deductions.form.ts +98 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-dividends.form.ts +26 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-income-statements.form.ts +121 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-income-tests.form.ts +13 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-interest.form.ts +15 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-losses.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-medicare.form.ts +42 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-offsets.form.ts +13 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-other-income.form.ts +46 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-partnerships-and-trusts.form.ts +40 -0
- package/projects/tt-core/src/lib/forms/report/my-tax/my-tax-rent.form.ts +16 -0
- package/projects/tt-core/src/lib/forms/sole/bas-report.form.ts +74 -0
- package/projects/tt-core/src/lib/forms/sole/index.ts +11 -0
- package/projects/tt-core/src/lib/forms/sole/invoice-payment.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/sole/sole-business-allocations.form.ts +79 -0
- package/projects/tt-core/src/lib/forms/sole/sole-business-loss.form.ts +26 -0
- package/projects/tt-core/src/lib/forms/sole/sole-business.form.ts +82 -0
- package/projects/tt-core/src/lib/forms/sole/sole-contact.form.ts +22 -0
- package/projects/tt-core/src/lib/forms/sole/sole-depreciation-method.form.ts +13 -0
- package/projects/tt-core/src/lib/forms/sole/sole-details.form.ts +15 -0
- package/projects/tt-core/src/lib/forms/sole/sole-invoice-item.form.ts +20 -0
- package/projects/tt-core/src/lib/forms/sole/sole-invoice-template.form.ts +18 -0
- package/projects/tt-core/src/lib/forms/sole/sole-invoice.form.ts +192 -0
- package/projects/tt-core/src/lib/forms/tax-review/index.ts +2 -0
- package/projects/tt-core/src/lib/forms/tax-review/tax-review-filter-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/forms/tax-review/tax-review-filter.form.ts +65 -0
- package/projects/tt-core/src/lib/forms/transaction/allocation-rule-condition.form.ts +18 -0
- package/projects/tt-core/src/lib/forms/transaction/allocation-rule-transaction-meta-field.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/transaction/allocation-rule-transaction.form.ts +194 -0
- package/projects/tt-core/src/lib/forms/transaction/allocation-rule.form.ts +234 -0
- package/projects/tt-core/src/lib/forms/transaction/holding/holding-expense.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/transaction/holding/holding-income.form.ts +76 -0
- package/projects/tt-core/src/lib/forms/transaction/index.ts +10 -0
- package/projects/tt-core/src/lib/forms/transaction/messages.enum.ts +3 -0
- package/projects/tt-core/src/lib/forms/transaction/sole/sole-income.form.ts +22 -0
- package/projects/tt-core/src/lib/forms/transaction/sole/sole-transaction.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/transaction/transaction-base-filter.form.ts +100 -0
- package/projects/tt-core/src/lib/forms/transaction/transaction-base-filter.ts +10 -0
- package/projects/tt-core/src/lib/forms/transaction/transaction-base.form.ts +117 -0
- package/projects/tt-core/src/lib/forms/transaction/transaction.form.ts +85 -0
- package/projects/tt-core/src/lib/forms/transaction/work/work-expense.form.ts +67 -0
- package/projects/tt-core/src/lib/forms/transaction/work/work-income.form.ts +104 -0
- package/projects/tt-core/src/lib/forms/transaction/work/work-transaction.form.ts +63 -0
- package/projects/tt-core/src/lib/forms/user/client-details.form.ts +43 -0
- package/projects/tt-core/src/lib/forms/user/index.ts +6 -0
- package/projects/tt-core/src/lib/forms/user/mfa-details.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/user/password.form.ts +14 -0
- package/projects/tt-core/src/lib/forms/user/reset-password.form.ts +11 -0
- package/projects/tt-core/src/lib/forms/user/user-invite.form.ts +19 -0
- package/projects/tt-core/src/lib/forms/user/user.form.ts +29 -0
- package/projects/tt-core/src/lib/forms/vehicle/index.ts +4 -0
- package/projects/tt-core/src/lib/forms/vehicle/vehicle-claim-details.form.ts +18 -0
- package/projects/tt-core/src/lib/forms/vehicle/vehicle-claim.form.ts +31 -0
- package/projects/tt-core/src/lib/forms/vehicle/vehicle-logbook.form.ts +79 -0
- package/projects/tt-core/src/lib/forms/vehicle/vehicle.form.ts +19 -0
- package/projects/tt-core/src/lib/functions/array/index.ts +4 -0
- package/projects/tt-core/src/lib/functions/array/replace.ts +5 -0
- package/projects/tt-core/src/lib/functions/array/sort-deep.ts +19 -0
- package/projects/tt-core/src/lib/functions/array/sort.ts +8 -0
- package/projects/tt-core/src/lib/functions/array/to-array.ts +6 -0
- package/projects/tt-core/src/lib/functions/clone-deep.ts +4 -0
- package/projects/tt-core/src/lib/functions/create-date.ts +7 -0
- package/projects/tt-core/src/lib/functions/date/index.ts +1 -0
- package/projects/tt-core/src/lib/functions/date/recurring-dates.ts +45 -0
- package/projects/tt-core/src/lib/functions/enum-to-list.ts +16 -0
- package/projects/tt-core/src/lib/functions/get-doc-icon.ts +21 -0
- package/projects/tt-core/src/lib/functions/mat-options-functions.ts +15 -0
- package/projects/tt-core/src/lib/functions/mat-sort-options.ts +9 -0
- package/projects/tt-core/src/lib/interceptors/ad-block-error.interceptor.ts +40 -0
- package/projects/tt-core/src/lib/interceptors/adblock-error-html.token.ts +12 -0
- package/projects/tt-core/src/lib/interceptors/aussie.interceptor.ts +36 -0
- package/projects/tt-core/src/lib/interceptors/basiq-client-id.interceptor.ts +33 -0
- package/projects/tt-core/src/lib/interceptors/basiq-token.interceptor.ts +38 -0
- package/projects/tt-core/src/lib/interceptors/corelogic-interceptor.ts +48 -0
- package/projects/tt-core/src/lib/interceptors/financial-year-interceptor.ts +44 -0
- package/projects/tt-core/src/lib/interceptors/interceptors.module.ts +68 -0
- package/projects/tt-core/src/lib/interceptors/preloader.interceptor.ts +42 -0
- package/projects/tt-core/src/lib/interceptors/rewardful.interceptor.ts +47 -0
- package/projects/tt-core/src/lib/interceptors/user-switcher-interceptor.ts +45 -0
- package/projects/tt-core/src/lib/interfaces/asset-entity-type.enum.ts +10 -0
- package/projects/tt-core/src/lib/interfaces/asset-type.enum.ts +11 -0
- package/projects/tt-core/src/lib/interfaces/asset.interface.ts +18 -0
- package/projects/tt-core/src/lib/interfaces/calendar-event.interface.ts +5 -0
- package/projects/tt-core/src/lib/interfaces/chart-data.interface.ts +11 -0
- package/projects/tt-core/src/lib/interfaces/chart-serie.interface.ts +8 -0
- package/projects/tt-core/src/lib/interfaces/document.interface.ts +10 -0
- package/projects/tt-core/src/lib/interfaces/documentable.interface.ts +9 -0
- package/projects/tt-core/src/lib/interfaces/event-listener.interface.ts +10 -0
- package/projects/tt-core/src/lib/interfaces/expense.interface.ts +13 -0
- package/projects/tt-core/src/lib/interfaces/income-source-forecast.interface.ts +13 -0
- package/projects/tt-core/src/lib/interfaces/index.ts +14 -0
- package/projects/tt-core/src/lib/interfaces/option.interface.ts +4 -0
- package/projects/tt-core/src/lib/interfaces/tank.interface.ts +9 -0
- package/projects/tt-core/src/lib/interfaces/updatable.interface.ts +9 -0
- package/projects/tt-core/src/lib/local-storage/local-storage.ts +26 -0
- package/projects/tt-core/src/lib/local-storage/user-storage.ts +6 -0
- package/projects/tt-core/src/lib/messages/index.ts +1 -0
- package/projects/tt-core/src/lib/messages/messages.enum.ts +16 -0
- package/projects/tt-core/src/lib/models/account-setup/account-setup-item-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/account-setup/account-setup-item.ts +22 -0
- package/projects/tt-core/src/lib/models/account-setup/account-setup-items.enum.ts +49 -0
- package/projects/tt-core/src/lib/models/account-setup/index.ts +3 -0
- package/projects/tt-core/src/lib/models/address/address.ts +54 -0
- package/projects/tt-core/src/lib/models/address/country.ts +20 -0
- package/projects/tt-core/src/lib/models/address/index.ts +3 -0
- package/projects/tt-core/src/lib/models/address/states.enum.ts +10 -0
- package/projects/tt-core/src/lib/models/asset-sale.ts +11 -0
- package/projects/tt-core/src/lib/models/aussie/aussie-appointment.ts +13 -0
- package/projects/tt-core/src/lib/models/aussie/aussie-broker.ts +34 -0
- package/projects/tt-core/src/lib/models/aussie/aussie-store.interface.ts +7 -0
- package/projects/tt-core/src/lib/models/aussie/aussie-store.ts +11 -0
- package/projects/tt-core/src/lib/models/aussie/index.ts +4 -0
- package/projects/tt-core/src/lib/models/badge/badge-color.enum.ts +11 -0
- package/projects/tt-core/src/lib/models/badge/badge.ts +22 -0
- package/projects/tt-core/src/lib/models/bank/allocation-group.ts +88 -0
- package/projects/tt-core/src/lib/models/bank/bank-account-chart-data.ts +38 -0
- package/projects/tt-core/src/lib/models/bank/bank-account-property.ts +11 -0
- package/projects/tt-core/src/lib/models/bank/bank-account.ts +221 -0
- package/projects/tt-core/src/lib/models/bank/bank-connection.ts +121 -0
- package/projects/tt-core/src/lib/models/bank/bank-external-stats.ts +12 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction-chart-data.ts +126 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/bank-transaction-comment.interface.ts +10 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/bank-transaction-comment.ts +17 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction-comment/index.ts +2 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction-summary-fields.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/bank/bank-transaction.ts +85 -0
- package/projects/tt-core/src/lib/models/bank/bank.ts +39 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-config.ts +34 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-connection-data.interface.ts +8 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-connections-response.interface.ts +9 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-job-response.ts +17 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-job-step.ts +24 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-job.ts +4 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-token-response.interface.ts +9 -0
- package/projects/tt-core/src/lib/models/bank/basiq/basiq-token.ts +22 -0
- package/projects/tt-core/src/lib/models/bank/basiq/index.ts +8 -0
- package/projects/tt-core/src/lib/models/bank/index.ts +14 -0
- package/projects/tt-core/src/lib/models/bank/type-loan.const.ts +6 -0
- package/projects/tt-core/src/lib/models/borrowing-expense/borrowing-expense-loan.ts +4 -0
- package/projects/tt-core/src/lib/models/borrowing-expense/borrowing-expense.ts +4 -0
- package/projects/tt-core/src/lib/models/borrowing-expense/index.ts +2 -0
- package/projects/tt-core/src/lib/models/budget/budget-metadata.interface.ts +11 -0
- package/projects/tt-core/src/lib/models/budget/budget-rule/budget-rule.ts +89 -0
- package/projects/tt-core/src/lib/models/budget/budget.ts +46 -0
- package/projects/tt-core/src/lib/models/budget/index.ts +3 -0
- package/projects/tt-core/src/lib/models/chart/chart-data.ts +9 -0
- package/projects/tt-core/src/lib/models/chart/chart-serie.ts +8 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-categories.const.ts +123 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-category.e-collection.ts +64 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-depreciation.ts +16 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-heading.ts +6 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-meta-field.ts +23 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-tax-labels.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts-value.ts +4 -0
- package/projects/tt-core/src/lib/models/chart-accounts/chart-accounts.ts +377 -0
- package/projects/tt-core/src/lib/models/chart-accounts/index.ts +8 -0
- package/projects/tt-core/src/lib/models/chat/chat-view-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/chat/chat.ts +30 -0
- package/projects/tt-core/src/lib/models/chat/index.ts +4 -0
- package/projects/tt-core/src/lib/models/chat/message-document.ts +18 -0
- package/projects/tt-core/src/lib/models/chat/message.ts +44 -0
- package/projects/tt-core/src/lib/models/client/annual-client-details.ts +21 -0
- package/projects/tt-core/src/lib/models/client/capital-loss.interface.ts +6 -0
- package/projects/tt-core/src/lib/models/client/capital-loss.ts +15 -0
- package/projects/tt-core/src/lib/models/client/client-details.ts +35 -0
- package/projects/tt-core/src/lib/models/client/client-invite.ts +76 -0
- package/projects/tt-core/src/lib/models/client/client-movement.ts +25 -0
- package/projects/tt-core/src/lib/models/client/client-portfolio-chart-data.ts +63 -0
- package/projects/tt-core/src/lib/models/client/client-portfolio-report.ts +12 -0
- package/projects/tt-core/src/lib/models/client/index.ts +8 -0
- package/projects/tt-core/src/lib/models/color/alphabet-colors.enum.ts +28 -0
- package/projects/tt-core/src/lib/models/date-range.ts +12 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-capital-project.ts +7 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-forecast.ts +54 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-group-item.ts +25 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-group.enum.ts +8 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-group.ts +35 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-groups.const.ts +40 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation-lvp-rate.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/depreciation/depreciation.ts +201 -0
- package/projects/tt-core/src/lib/models/depreciation/index.ts +8 -0
- package/projects/tt-core/src/lib/models/dictionary/dictionary.ts +73 -0
- package/projects/tt-core/src/lib/models/dictionary/index.ts +1 -0
- package/projects/tt-core/src/lib/models/document/document-api-url-prefix.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/document/document-file-types.const.ts +22 -0
- package/projects/tt-core/src/lib/models/document/document-folder.ts +28 -0
- package/projects/tt-core/src/lib/models/document/document.ts +34 -0
- package/projects/tt-core/src/lib/models/document/index.ts +5 -0
- package/projects/tt-core/src/lib/models/document/tree-node-data.ts +19 -0
- package/projects/tt-core/src/lib/models/employee/employee-details.ts +15 -0
- package/projects/tt-core/src/lib/models/employee/employee-invite.ts +32 -0
- package/projects/tt-core/src/lib/models/endpoint/endpoint.ts +32 -0
- package/projects/tt-core/src/lib/models/endpoint/endpoints.const.ts +343 -0
- package/projects/tt-core/src/lib/models/event/app-event-type.enum.ts +58 -0
- package/projects/tt-core/src/lib/models/event/app-event.ts +21 -0
- package/projects/tt-core/src/lib/models/event/index.ts +2 -0
- package/projects/tt-core/src/lib/models/export/export-cell-type.enum.ts +9 -0
- package/projects/tt-core/src/lib/models/export/export-cell.ts +9 -0
- package/projects/tt-core/src/lib/models/export/export-data-table.ts +12 -0
- package/projects/tt-core/src/lib/models/export/export-format.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/export/export-row-data-type.enum.ts +8 -0
- package/projects/tt-core/src/lib/models/export/export-row.ts +9 -0
- package/projects/tt-core/src/lib/models/file/file.ts +17 -0
- package/projects/tt-core/src/lib/models/file/icons-file.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/file/index.ts +1 -0
- package/projects/tt-core/src/lib/models/financial-goal/financial-goal-status.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/financial-goal/financial-goal-type.enum.ts +6 -0
- package/projects/tt-core/src/lib/models/financial-goal/financial-goal.interface.ts +25 -0
- package/projects/tt-core/src/lib/models/financial-goal/financial-goal.ts +195 -0
- package/projects/tt-core/src/lib/models/financial-goal/index.ts +4 -0
- package/projects/tt-core/src/lib/models/financial-year/financial-year.ts +72 -0
- package/projects/tt-core/src/lib/models/financial-year/index.ts +4 -0
- package/projects/tt-core/src/lib/models/financial-year/month-name-short.enum.ts +19 -0
- package/projects/tt-core/src/lib/models/financial-year/month-number.enum.ts +19 -0
- package/projects/tt-core/src/lib/models/financial-year/months.const.ts +1 -0
- package/projects/tt-core/src/lib/models/firm/firm-branch.interface.ts +7 -0
- package/projects/tt-core/src/lib/models/firm/firm-branch.ts +17 -0
- package/projects/tt-core/src/lib/models/firm/firm.ts +25 -0
- package/projects/tt-core/src/lib/models/firm/index.ts +2 -0
- package/projects/tt-core/src/lib/models/fullcalendar/calendar-event.ts +26 -0
- package/projects/tt-core/src/lib/models/fullcalendar/index.ts +2 -0
- package/projects/tt-core/src/lib/models/fullcalendar/money-calendar-event.ts +35 -0
- package/projects/tt-core/src/lib/models/holding/holding-reinvest.ts +20 -0
- package/projects/tt-core/src/lib/models/holding/holding-sale.ts +52 -0
- package/projects/tt-core/src/lib/models/holding/holding-trade-import.ts +13 -0
- package/projects/tt-core/src/lib/models/holding/holding-trade-report-item.ts +28 -0
- package/projects/tt-core/src/lib/models/holding/holding-trade.ts +106 -0
- package/projects/tt-core/src/lib/models/holding/holding-type-exchange.ts +20 -0
- package/projects/tt-core/src/lib/models/holding/holding-type.ts +88 -0
- package/projects/tt-core/src/lib/models/holding/holding.ts +75 -0
- package/projects/tt-core/src/lib/models/holding/index.ts +8 -0
- package/projects/tt-core/src/lib/models/home-office/home-office-claim.interface.ts +22 -0
- package/projects/tt-core/src/lib/models/home-office/home-office-claim.ts +51 -0
- package/projects/tt-core/src/lib/models/home-office/home-office-log.interface.ts +10 -0
- package/projects/tt-core/src/lib/models/home-office/home-office-log.ts +20 -0
- package/projects/tt-core/src/lib/models/home-office/index.ts +4 -0
- package/projects/tt-core/src/lib/models/income-position/income-position.ts +13 -0
- package/projects/tt-core/src/lib/models/income-source/income-source-chart-data.ts +57 -0
- package/projects/tt-core/src/lib/models/income-source/income-source-forecast.ts +34 -0
- package/projects/tt-core/src/lib/models/income-source/income-source-type.ts +24 -0
- package/projects/tt-core/src/lib/models/income-source/income-source.ts +64 -0
- package/projects/tt-core/src/lib/models/income-source/index.ts +6 -0
- package/projects/tt-core/src/lib/models/income-source/salary-forecast.ts +38 -0
- package/projects/tt-core/src/lib/models/income-source/sole-forecast.ts +14 -0
- package/projects/tt-core/src/lib/models/index.ts +35 -0
- package/projects/tt-core/src/lib/models/loan/index.ts +4 -0
- package/projects/tt-core/src/lib/models/loan/loan-max-number-of-payments.enum.ts +9 -0
- package/projects/tt-core/src/lib/models/loan/loan-payment.ts +19 -0
- package/projects/tt-core/src/lib/models/loan/loan-payout.ts +13 -0
- package/projects/tt-core/src/lib/models/loan/loan.ts +99 -0
- package/projects/tt-core/src/lib/models/notification/index.ts +1 -0
- package/projects/tt-core/src/lib/models/notification/notification.ts +41 -0
- package/projects/tt-core/src/lib/models/pdf/pdf-orientation.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/pdf/pdf-settings.ts +15 -0
- package/projects/tt-core/src/lib/models/phone/phone.ts +15 -0
- package/projects/tt-core/src/lib/models/property/borrowing-report.ts +57 -0
- package/projects/tt-core/src/lib/models/property/calculation-form-item.ts +24 -0
- package/projects/tt-core/src/lib/models/property/calculation-form-type.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/property/capital-costs-itmes.const.ts +57 -0
- package/projects/tt-core/src/lib/models/property/corelogic-suggestion.ts +18 -0
- package/projects/tt-core/src/lib/models/property/index.ts +18 -0
- package/projects/tt-core/src/lib/models/property/property-category-movement.ts +22 -0
- package/projects/tt-core/src/lib/models/property/property-category.ts +13 -0
- package/projects/tt-core/src/lib/models/property/property-corelogic-stats.interface.ts +9 -0
- package/projects/tt-core/src/lib/models/property/property-equity-chart-data.ts +205 -0
- package/projects/tt-core/src/lib/models/property/property-equity-chart-item.ts +35 -0
- package/projects/tt-core/src/lib/models/property/property-equity-chart-type.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/property/property-forecast.ts +40 -0
- package/projects/tt-core/src/lib/models/property/property-sale/index.ts +5 -0
- package/projects/tt-core/src/lib/models/property/property-sale/property-sale-cost-base.ts +25 -0
- package/projects/tt-core/src/lib/models/property/property-sale/property-sale-tax-exemption-meta-field.ts +4 -0
- package/projects/tt-core/src/lib/models/property/property-sale/property-sale.ts +60 -0
- package/projects/tt-core/src/lib/models/property/property-sale/tax-exemption-meta-field.ts +4 -0
- package/projects/tt-core/src/lib/models/property/property-sale/tax-exemption.ts +8 -0
- package/projects/tt-core/src/lib/models/property/property-share.ts +50 -0
- package/projects/tt-core/src/lib/models/property/property-subscription.ts +11 -0
- package/projects/tt-core/src/lib/models/property/property-valuation.ts +27 -0
- package/projects/tt-core/src/lib/models/property/property.ts +328 -0
- package/projects/tt-core/src/lib/models/registration-invite/registration-invite.ts +16 -0
- package/projects/tt-core/src/lib/models/report/budget/budget-rule-item.ts +70 -0
- package/projects/tt-core/src/lib/models/report/budget/index.ts +2 -0
- package/projects/tt-core/src/lib/models/report/depreciation/depreciation-lvp-asset-type.enum.ts +8 -0
- package/projects/tt-core/src/lib/models/report/depreciation/depreciation-lvp-report-item.ts +21 -0
- package/projects/tt-core/src/lib/models/report/depreciation/depreciation-report-item.ts +27 -0
- package/projects/tt-core/src/lib/models/report/depreciation/index.ts +3 -0
- package/projects/tt-core/src/lib/models/report/income-expense/transaction-report-item.ts +25 -0
- package/projects/tt-core/src/lib/models/report/index.ts +9 -0
- package/projects/tt-core/src/lib/models/report/my-tax/ato-links.ts +10 -0
- package/projects/tt-core/src/lib/models/report/my-tax/index.ts +25 -0
- 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
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/business-type.enum.ts +9 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-business-income-or-losses/loss-type.enum.ts +14 -0
- 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
- 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
- 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
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-cgt/cgt-exemption-and-rollover-code.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-cgt/my-tax-cgt.ts +51 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-clothing-type.enum.ts +11 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-fields.const.ts +62 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/deduction-self-education-type.enum.ts +8 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.ts +146 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-dividends/my-tax-dividends.ts +26 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-estimate/my-tax-estimate.ts +59 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-income-statements/my-tax-income-statements.ts +125 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-income-tests/my-tax-income-tests.ts +11 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-interest/my-tax-interest.ts +20 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-losses/my-tax-losses.ts +26 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-offsets/my-tax-offsets.ts +11 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-other-income/my-tax-other-income.ts +68 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-partnerships-and-trusts/my-tax-partnerships-and-trusts.ts +51 -0
- package/projects/tt-core/src/lib/models/report/my-tax/my-tax-rent/my-tax-rent.ts +63 -0
- package/projects/tt-core/src/lib/models/report/property/index.ts +3 -0
- package/projects/tt-core/src/lib/models/report/property/property-report-item-depreciation.ts +33 -0
- package/projects/tt-core/src/lib/models/report/property/property-report-item-transaction.ts +19 -0
- package/projects/tt-core/src/lib/models/report/property/property-report-item.ts +50 -0
- package/projects/tt-core/src/lib/models/report/report.interface.ts +6 -0
- package/projects/tt-core/src/lib/models/report/report.ts +8 -0
- package/projects/tt-core/src/lib/models/report/reports.const.ts +114 -0
- package/projects/tt-core/src/lib/models/report/sole/index.ts +1 -0
- package/projects/tt-core/src/lib/models/report/sole/sole-business/sole-business-loss-report.ts +31 -0
- package/projects/tt-core/src/lib/models/report/vehicle-expense/vehicle-expense.ts +24 -0
- package/projects/tt-core/src/lib/models/service-subscription/index.ts +9 -0
- package/projects/tt-core/src/lib/models/service-subscription/module-url-list.const.ts +11 -0
- package/projects/tt-core/src/lib/models/service-subscription/payment-method-brand.enum.ts +10 -0
- package/projects/tt-core/src/lib/models/service-subscription/product-quantity-discount-percent.const.ts +8 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-payment-method.ts +37 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-payment.ts +23 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-price.ts +51 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-product-icons.enum.ts +9 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-product-roles.const.ts +11 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-product.ts +49 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-promo-code-duration.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-promo-code.ts +59 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-subscription-item.ts +26 -0
- package/projects/tt-core/src/lib/models/service-subscription/service-subscription.ts +193 -0
- package/projects/tt-core/src/lib/models/sharesight/index.ts +4 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-details-messages.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-details.interface.ts +12 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-details.ts +34 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/index.ts +3 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.interface.ts +8 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.messages.ts +3 -0
- package/projects/tt-core/src/lib/models/sharesight/sharesight-portfolio/sharesight-portfolio.ts +13 -0
- package/projects/tt-core/src/lib/models/sole/bas-report.ts +49 -0
- package/projects/tt-core/src/lib/models/sole/index.ts +12 -0
- package/projects/tt-core/src/lib/models/sole/sole-business-activity.ts +5 -0
- package/projects/tt-core/src/lib/models/sole/sole-business-allocation.ts +15 -0
- package/projects/tt-core/src/lib/models/sole/sole-business-loss-offset-rule.ts +7 -0
- package/projects/tt-core/src/lib/models/sole/sole-business-loss.ts +24 -0
- package/projects/tt-core/src/lib/models/sole/sole-business.ts +56 -0
- package/projects/tt-core/src/lib/models/sole/sole-contact.ts +29 -0
- package/projects/tt-core/src/lib/models/sole/sole-depreciation-method.ts +8 -0
- package/projects/tt-core/src/lib/models/sole/sole-details.ts +8 -0
- package/projects/tt-core/src/lib/models/sole/sole-invoice-item.ts +71 -0
- package/projects/tt-core/src/lib/models/sole/sole-invoice-template.ts +28 -0
- package/projects/tt-core/src/lib/models/sole/sole-invoice.ts +158 -0
- package/projects/tt-core/src/lib/models/tax-return/index.ts +3 -0
- package/projects/tt-core/src/lib/models/tax-return/tax-return-category.ts +17 -0
- package/projects/tt-core/src/lib/models/tax-return/tax-return-item.ts +39 -0
- package/projects/tt-core/src/lib/models/tax-return/tax-return.ts +8 -0
- package/projects/tt-core/src/lib/models/tax-review/tax-review.ts +109 -0
- package/projects/tt-core/src/lib/models/tax-summary/report-item-details.ts +15 -0
- package/projects/tt-core/src/lib/models/tax-summary/report-item.ts +36 -0
- package/projects/tt-core/src/lib/models/tax-summary/tax-summary-section.ts +34 -0
- package/projects/tt-core/src/lib/models/tax-summary/tax-summary-type.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/tax-summary/tax-summary.ts +237 -0
- package/projects/tt-core/src/lib/models/toast/toast-type.enum.ts +6 -0
- package/projects/tt-core/src/lib/models/toast/toast.ts +15 -0
- package/projects/tt-core/src/lib/models/transaction/allocation-rule-condition.ts +48 -0
- package/projects/tt-core/src/lib/models/transaction/allocation-rule-transaction-meta-field.ts +4 -0
- package/projects/tt-core/src/lib/models/transaction/allocation-rule-transaction.ts +115 -0
- package/projects/tt-core/src/lib/models/transaction/allocation-rule.ts +156 -0
- package/projects/tt-core/src/lib/models/transaction/income-amount-type.enum.ts +7 -0
- package/projects/tt-core/src/lib/models/transaction/index.ts +8 -0
- package/projects/tt-core/src/lib/models/transaction/transaction-allocation.ts +20 -0
- package/projects/tt-core/src/lib/models/transaction/transaction-category.enum.ts +6 -0
- package/projects/tt-core/src/lib/models/transaction/transaction-meta-field.ts +13 -0
- package/projects/tt-core/src/lib/models/transaction/transaction.ts +302 -0
- package/projects/tt-core/src/lib/models/user/index.ts +10 -0
- package/projects/tt-core/src/lib/models/user/mfa-details/index.ts +2 -0
- package/projects/tt-core/src/lib/models/user/mfa-details/mfa-details.interface.ts +6 -0
- package/projects/tt-core/src/lib/models/user/mfa-details/mfa-details.ts +15 -0
- package/projects/tt-core/src/lib/models/user/my-account-history-initiated-by.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/user/my-account-history-status.enum.ts +4 -0
- package/projects/tt-core/src/lib/models/user/my-account-history-type.enum.ts +5 -0
- package/projects/tt-core/src/lib/models/user/my-account-history.ts +12 -0
- package/projects/tt-core/src/lib/models/user/occupation.ts +4 -0
- package/projects/tt-core/src/lib/models/user/user-roles.const.ts +21 -0
- package/projects/tt-core/src/lib/models/user/user-to-register.ts +7 -0
- package/projects/tt-core/src/lib/models/user/user-work-position.const.ts +7 -0
- package/projects/tt-core/src/lib/models/user/user.ts +192 -0
- package/projects/tt-core/src/lib/models/user-event/user-event-setting-field.enum.ts +8 -0
- package/projects/tt-core/src/lib/models/user-event/user-event-setting.ts +11 -0
- package/projects/tt-core/src/lib/models/user-event/user-event-type-category.ts +4 -0
- package/projects/tt-core/src/lib/models/user-event/user-event-type.ts +24 -0
- package/projects/tt-core/src/lib/models/vehicle/index.ts +4 -0
- package/projects/tt-core/src/lib/models/vehicle/vehicle-claim-details.ts +25 -0
- package/projects/tt-core/src/lib/models/vehicle/vehicle-claim.ts +68 -0
- package/projects/tt-core/src/lib/models/vehicle/vehicle-logbook.ts +29 -0
- package/projects/tt-core/src/lib/models/vehicle/vehicle.ts +8 -0
- package/projects/tt-core/src/lib/pipes/app-currency.pipe.ts +18 -0
- package/projects/tt-core/src/lib/pipes/app-percent.pipe.ts +14 -0
- package/projects/tt-core/src/lib/pipes/index.ts +4 -0
- package/projects/tt-core/src/lib/pipes/relative-date.pipe.ts +30 -0
- package/projects/tt-core/src/lib/pipes/safe-url.pipe.ts +14 -0
- package/projects/tt-core/src/lib/resolvers/business/business.resolver.ts +12 -0
- package/projects/tt-core/src/lib/resolvers/business/sole-details.resolver.ts +13 -0
- package/projects/tt-core/src/lib/resolvers/index.ts +3 -0
- package/projects/tt-core/src/lib/services/account-setup/account-setup.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/account-setup/account-setup.service.ts +304 -0
- package/projects/tt-core/src/lib/services/account-setup/index.ts +1 -0
- package/projects/tt-core/src/lib/services/adblock-detector/adblock-detector.service.ts +17 -0
- package/projects/tt-core/src/lib/services/adblock-detector/index.ts +1 -0
- package/projects/tt-core/src/lib/services/asset/assets.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/asset/assets.service.ts +51 -0
- package/projects/tt-core/src/lib/services/asset/index.ts +1 -0
- package/projects/tt-core/src/lib/services/bank/bank-account-calculation.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/bank/bank-account-calculation.service.ts +36 -0
- package/projects/tt-core/src/lib/services/bank/index.ts +1 -0
- package/projects/tt-core/src/lib/services/data.service.ts +61 -0
- package/projects/tt-core/src/lib/services/event/event-dispatcher.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/event/event-dispatcher.service.ts +45 -0
- package/projects/tt-core/src/lib/services/event/index.ts +2 -0
- package/projects/tt-core/src/lib/services/event/sse.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/event/sse.service.ts +44 -0
- package/projects/tt-core/src/lib/services/export/export-formatter.service.ts +26 -0
- package/projects/tt-core/src/lib/services/export/index.ts +1 -0
- package/projects/tt-core/src/lib/services/firm/current-firm-branch.service.ts +22 -0
- package/projects/tt-core/src/lib/services/firm/index.ts +1 -0
- package/projects/tt-core/src/lib/services/header-title/header-title.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/header-title/header-title.service.ts +31 -0
- package/projects/tt-core/src/lib/services/header-title/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/address/address.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/address/address.service.ts +34 -0
- package/projects/tt-core/src/lib/services/http/address/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/aussie/aussie.service.ts +26 -0
- package/projects/tt-core/src/lib/services/http/aussie/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-account/bank-account.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-account/bank-account.service.ts +115 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-account/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection-messages.enum.ts +25 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-connection/bank-connection.service.ts +98 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-connection/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-transaction/bank-transaction.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-transaction/bank-transaction.service.ts +81 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-transaction/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-transaction-comment/bank-transaction-comment-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/bank/bank-transaction-comment/bank-transaction-comment.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/bank/bank.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/bank/bank.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-token.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/basiq-token.service.ts +35 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/basiq.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/basiq.service.ts +194 -0
- package/projects/tt-core/src/lib/services/http/bank/basiq/index.ts +3 -0
- package/projects/tt-core/src/lib/services/http/bank/index.ts +7 -0
- package/projects/tt-core/src/lib/services/http/budget/budget-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/budget/budget-rule/budget-rule.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/budget/budget.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/budget/budget.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/budget/index.ts +3 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-depreciations/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts-messages.enum.ts +7 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/chart-accounts.service.ts +55 -0
- package/projects/tt-core/src/lib/services/http/chart-accounts/index.ts +3 -0
- package/projects/tt-core/src/lib/services/http/chat/chat.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/chat/chat.service.ts +93 -0
- package/projects/tt-core/src/lib/services/http/chat/index.ts +3 -0
- package/projects/tt-core/src/lib/services/http/chat/message-document.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/chat/message-document.service.ts +89 -0
- package/projects/tt-core/src/lib/services/http/chat/message.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/chat/message.service.ts +35 -0
- package/projects/tt-core/src/lib/services/http/client/annual-client-details.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/client/capital-loss/capital-loss-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/client/capital-loss/capital-loss.service.ts +14 -0
- package/projects/tt-core/src/lib/services/http/client/capital-loss/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/client/client-coupon.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/client/client-coupon.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/client/index.ts +4 -0
- package/projects/tt-core/src/lib/services/http/client/occupation/occupation.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/client/occupation/occupation.service.ts +40 -0
- package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.ts +19 -0
- package/projects/tt-core/src/lib/services/http/depreciation/depreciation-capital-project/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/depreciation/depreciation.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/depreciation/depreciation.service.ts +119 -0
- package/projects/tt-core/src/lib/services/http/depreciation/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/document/document-folder/document-folder.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/document/document-folder/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/document/document-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/document/document.service.ts +40 -0
- package/projects/tt-core/src/lib/services/http/document/index.ts +4 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook-auth-options.interface.ts +11 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook-auth-response.interface.ts +11 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook-permission.ts +16 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook-permissions-response.interface.ts +9 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook-status-response.interface.ts +10 -0
- package/projects/tt-core/src/lib/services/http/facebook/facebook.service.ts +96 -0
- package/projects/tt-core/src/lib/services/http/facebook/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/file/file.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/file/file.service.ts +39 -0
- package/projects/tt-core/src/lib/services/http/file/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/financial-goal/financial-goal-messages.enum.ts +7 -0
- package/projects/tt-core/src/lib/services/http/financial-goal/financial-goal.service.ts +30 -0
- package/projects/tt-core/src/lib/services/http/financial-goal/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite-messages.enum.ts +13 -0
- package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/client-invite/client-invite.service.ts +119 -0
- package/projects/tt-core/src/lib/services/http/firm/client-invite/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/client-movement/client-movement.service.ts +102 -0
- package/projects/tt-core/src/lib/services/http/firm/client-movement/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/firm/employee/employee-messages.enum.ts +12 -0
- package/projects/tt-core/src/lib/services/http/firm/employee/employee.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/employee/employee.service.ts +48 -0
- package/projects/tt-core/src/lib/services/http/firm/employee/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/firm/employee-invite/employee-invite.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/employee-invite/employee-invite.service.ts +49 -0
- package/projects/tt-core/src/lib/services/http/firm/employee-invite/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/firm/firm-branch/firm-branch-messages.enum.ts +7 -0
- package/projects/tt-core/src/lib/services/http/firm/firm-branch/firm-branch.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/firm/firm-branch/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/firm/firm-messages.enum.ts +4 -0
- package/projects/tt-core/src/lib/services/http/firm/firm.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/firm.service.ts +68 -0
- package/projects/tt-core/src/lib/services/http/firm/index.ts +8 -0
- package/projects/tt-core/src/lib/services/http/firm/portfolio-report/client-portfolio-report.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/firm/portfolio-report/client-portfolio-report.service.ts +30 -0
- package/projects/tt-core/src/lib/services/http/firm/portfolio-report/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/google/google.service.ts +80 -0
- package/projects/tt-core/src/lib/services/http/google/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-sale.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-sale.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-trade-import/holding-trade-import-messages.enum.ts +7 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-trade-import/holding-trade-import.service.ts +46 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-trade-messages.enum.ts +8 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-trade.service.ts +38 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-type-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-type.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/holding/holding-type.service.ts +50 -0
- package/projects/tt-core/src/lib/services/http/holding/holding.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/holding/index.ts +8 -0
- package/projects/tt-core/src/lib/services/http/home-office/home-office-claim-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/home-office/home-office-claim.service.ts +16 -0
- package/projects/tt-core/src/lib/services/http/home-office/home-office-log-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/home-office/home-office-log.service.ts +28 -0
- package/projects/tt-core/src/lib/services/http/home-office/index.ts +4 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.ts +84 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source-forecast/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source-messages.enum.ts +8 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/income-source/income-source.service.ts +108 -0
- package/projects/tt-core/src/lib/services/http/income-source/index.ts +5 -0
- package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/salary-forecast.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/income-source/salary-forecast/salary-forecast.service.ts +83 -0
- package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/sole-forecast.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/income-source/sole-forecast/sole-forecast.service.ts +92 -0
- package/projects/tt-core/src/lib/services/http/index.ts +46 -0
- package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/borrowing-expense.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/borrowing-expense.service.ts +80 -0
- package/projects/tt-core/src/lib/services/http/loan/borrowing-expense/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/loan/index.ts +4 -0
- package/projects/tt-core/src/lib/services/http/loan/loan-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/loan/loan.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/loan/loan.service.ts +103 -0
- package/projects/tt-core/src/lib/services/http/pdf/pdf.service.ts +23 -0
- package/projects/tt-core/src/lib/services/http/property/borrowing-report/borrowing-report-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/property/borrowing-report/borrowing-report.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/property/borrowing-report/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/property/index.ts +9 -0
- package/projects/tt-core/src/lib/services/http/property/property-category/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/property/property-category/property-category.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/property/property-category/property-category.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/property/property-category-movement/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/property/property-category-movement/property-category-movement.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/property/property-category-movement/property-category-movement.service.ts +27 -0
- package/projects/tt-core/src/lib/services/http/property/property-messages.enum.ts +9 -0
- package/projects/tt-core/src/lib/services/http/property/property-sale/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/property/property-sale/property-sale.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/property/property-sale/property-sale.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/property/property-share/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/property/property-share/property-share.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/property/property-share/property-share.service.ts +72 -0
- package/projects/tt-core/src/lib/services/http/property/property-valuation/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/property/property-valuation/property-valuation.service.ts +16 -0
- package/projects/tt-core/src/lib/services/http/property/property.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/property/property.service.ts +175 -0
- package/projects/tt-core/src/lib/services/http/rest/http-error-messages.const.ts +13 -0
- package/projects/tt-core/src/lib/services/http/rest/http-method.type.ts +1 -0
- package/projects/tt-core/src/lib/services/http/rest/index.ts +4 -0
- package/projects/tt-core/src/lib/services/http/rest/rest-method.type.ts +1 -0
- package/projects/tt-core/src/lib/services/http/rest/rest-old.service.ts +310 -0
- package/projects/tt-core/src/lib/services/http/rest/rest.service.spec.ts +0 -0
- package/projects/tt-core/src/lib/services/http/rest/rest.service.ts +481 -0
- package/projects/tt-core/src/lib/services/http/rest-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/service-notification/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/service-notification/service-notification.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/service-notification/service-notification.service.ts +69 -0
- package/projects/tt-core/src/lib/services/http/setup-item/setup-item.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/setup-item/setup-item.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/sharesight/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/sharesight/sharesight-details.service.ts +22 -0
- package/projects/tt-core/src/lib/services/http/sharesight/sharesight-portfolio.service.ts +19 -0
- package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/bas-report/bas-report.service.ts +12 -0
- package/projects/tt-core/src/lib/services/http/sole/bas-report/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/sole/index.ts +10 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business-messages.enum.ts +3 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business/sole-business.service.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business-activity/sole-business-activity.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business-activity/sole-business-activity.service.ts +12 -0
- 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
- 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
- package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-business-loss/sole-business-loss.service.ts +36 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-contact/sole-contact.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-contact/sole-contact.service.ts +12 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-depreciation-method/sole-depreciation-method.service.ts +84 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-details/sole-details.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-details/sole-details.service.ts +27 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-invoice/sole-invoice.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-invoice/sole-invoice.service.ts +45 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.ts +12 -0
- package/projects/tt-core/src/lib/services/http/subscription/index.ts +6 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-payment/service-payment.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-payment/service-payment.service.ts +27 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-payment-method/service-payment-method.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-payment-method/service-payment-method.service.ts +46 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-price/service-price.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-product/service-product.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-product/service-product.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription-messages.enum.ts +8 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/subscription/service-subscription/subscription.service.ts +104 -0
- package/projects/tt-core/src/lib/services/http/tax-review/index.ts +3 -0
- package/projects/tt-core/src/lib/services/http/tax-review/tax-review-history/tax-review-history.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/tax-review/tax-review-history/tax-review-history.service.ts +40 -0
- package/projects/tt-core/src/lib/services/http/tax-review/tax-review-messages.enum.ts +18 -0
- package/projects/tt-core/src/lib/services/http/tax-review/tax-review.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/tax-review/tax-review.service.ts +115 -0
- package/projects/tt-core/src/lib/services/http/tax-summary/index.ts +1 -0
- package/projects/tt-core/src/lib/services/http/tax-summary/tax-summary.service.ts +71 -0
- package/projects/tt-core/src/lib/services/http/transaction/index.ts +6 -0
- package/projects/tt-core/src/lib/services/http/transaction/invoice-transactions.service.ts +22 -0
- package/projects/tt-core/src/lib/services/http/transaction/prior-transaction.service.ts +30 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/allocation-rule/allocation-rule.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.ts +137 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/transaction/transaction.service.ts +339 -0
- package/projects/tt-core/src/lib/services/http/user/financial-year/financial-year.service.ts +22 -0
- package/projects/tt-core/src/lib/services/http/user/index.ts +8 -0
- package/projects/tt-core/src/lib/services/http/user/mfa-details/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/user/mfa-details/mfa-details-messages.enum.ts +5 -0
- package/projects/tt-core/src/lib/services/http/user/mfa-details/mfa-details.service.ts +54 -0
- package/projects/tt-core/src/lib/services/http/user/user-event-setting/user-event-setting.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/user/user-event-setting/user-event-setting.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/user/user-event-type/user-event-type.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/user/user-event-type/user-event-type.service.ts +16 -0
- package/projects/tt-core/src/lib/services/http/user/user-messages.enum.ts +9 -0
- package/projects/tt-core/src/lib/services/http/user/user.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/user/user.service.ts +161 -0
- package/projects/tt-core/src/lib/services/http/user/users-invite/users-invite.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/user/users-invite/users-invite.service.ts +15 -0
- package/projects/tt-core/src/lib/services/http/vehicle/index.ts +5 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim-details.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim-details.service.ts +91 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-claim.service.ts +29 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-logbook/vehicle-logbook.service.ts +18 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle-messages.enum.ts +6 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/http/vehicle/vehicle.service.ts +17 -0
- package/projects/tt-core/src/lib/services/http/youtube/index.ts +2 -0
- package/projects/tt-core/src/lib/services/http/youtube/youtube-video.interface.ts +4 -0
- package/projects/tt-core/src/lib/services/http/youtube/youtube.service.ts +30 -0
- package/projects/tt-core/src/lib/services/index.ts +28 -0
- package/projects/tt-core/src/lib/services/intercom/index.ts +1 -0
- package/projects/tt-core/src/lib/services/intercom/intercom.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/intercom/intercom.service.ts +37 -0
- package/projects/tt-core/src/lib/services/json/chart-accounts/chart-accounts-value.service.ts +19 -0
- package/projects/tt-core/src/lib/services/json/holding/holding-type-exchange.service.ts +19 -0
- package/projects/tt-core/src/lib/services/json/income-source/income-source-type.service.ts +19 -0
- package/projects/tt-core/src/lib/services/json/index.ts +5 -0
- package/projects/tt-core/src/lib/services/json/tax-exemption/tax-exemption.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/json/tax-exemption/tax-exemption.service.ts +19 -0
- package/projects/tt-core/src/lib/services/json/tax-return/tax-return-item.service.ts +19 -0
- package/projects/tt-core/src/lib/services/pdf/index.ts +5 -0
- package/projects/tt-core/src/lib/services/pdf/js-pdf.ts +11 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/file-settings.ts +26 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.ts +100 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/file-settings.ts +35 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.ts +52 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.ts +60 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-table.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/pdf/pdf-from-table/pdf-from-table.service.ts +96 -0
- package/projects/tt-core/src/lib/services/preloader/index.ts +1 -0
- package/projects/tt-core/src/lib/services/preloader/preloader.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/preloader/preloader.service.ts +28 -0
- package/projects/tt-core/src/lib/services/property/corelogic/corelogic-messages.enum.ts +3 -0
- package/projects/tt-core/src/lib/services/property/corelogic/corelogic.service.spec.ts +12 -0
- package/projects/tt-core/src/lib/services/property/corelogic/corelogic.service.ts +48 -0
- package/projects/tt-core/src/lib/services/property/corelogic/index.ts +2 -0
- package/projects/tt-core/src/lib/services/property/equity-position-chart/equity-position-chart.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/property/equity-position-chart/equity-position-chart.service.ts +34 -0
- package/projects/tt-core/src/lib/services/property/equity-position-chart/index.ts +1 -0
- package/projects/tt-core/src/lib/services/property/index.ts +3 -0
- package/projects/tt-core/src/lib/services/property/property-calculation/index.ts +1 -0
- package/projects/tt-core/src/lib/services/property/property-calculation/property-calculation.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/property/property-calculation/property-calculation.service.ts +237 -0
- package/projects/tt-core/src/lib/services/report/index.ts +1 -0
- package/projects/tt-core/src/lib/services/report/property/property-transaction-report.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/report/property/property-transaction-report.service.ts +101 -0
- package/projects/tt-core/src/lib/services/toast/index.ts +1 -0
- package/projects/tt-core/src/lib/services/toast/toast.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/toast/toast.service.ts +57 -0
- package/projects/tt-core/src/lib/services/user/index.ts +1 -0
- package/projects/tt-core/src/lib/services/user/user-switcher.service.ts +48 -0
- package/projects/tt-core/src/lib/services/xlsx/index.ts +1 -0
- package/projects/tt-core/src/lib/services/xlsx/xlsx.service.spec.ts +16 -0
- package/projects/tt-core/src/lib/services/xlsx/xlsx.service.ts +114 -0
- package/projects/tt-core/src/lib/transformer/transformDate.ts +15 -0
- package/projects/tt-core/src/lib/validators/address-corelogic.validator.ts +24 -0
- package/projects/tt-core/src/lib/validators/at-least-one-enabled.validator.ts +10 -0
- package/projects/tt-core/src/lib/validators/at-least-one.validator.ts +10 -0
- package/projects/tt-core/src/lib/validators/autocomplete.validator.ts +9 -0
- package/projects/tt-core/src/lib/validators/conditional.validator.ts +35 -0
- package/projects/tt-core/src/lib/validators/current-fin-year.validator.ts +18 -0
- package/projects/tt-core/src/lib/validators/date/max-date.validator.ts +23 -0
- package/projects/tt-core/src/lib/validators/date/min-date.validator.ts +23 -0
- package/projects/tt-core/src/lib/validators/date-range.validator.ts +27 -0
- package/projects/tt-core/src/lib/validators/fields-sum.validator.ts +27 -0
- package/projects/tt-core/src/lib/validators/file.validator.ts +46 -0
- package/projects/tt-core/src/lib/validators/greater-than-control.validator.ts +17 -0
- package/projects/tt-core/src/lib/validators/greater-than.validator.ts +14 -0
- package/projects/tt-core/src/lib/validators/group.validator.ts +13 -0
- package/projects/tt-core/src/lib/validators/index.ts +15 -0
- package/projects/tt-core/src/lib/validators/less-than-control.validator.ts +18 -0
- package/projects/tt-core/src/lib/validators/match-sum.validator.ts +18 -0
- package/projects/tt-core/src/lib/validators/not-greater-than-control.validator.ts +17 -0
- package/projects/tt-core/src/lib/validators/password-match.validator.ts +20 -0
- package/projects/tt-core/src/lib/validators/password.validator.ts +24 -0
- package/projects/tt-core/src/lib/validators/phone-number.validator.ts +11 -0
- package/projects/tt-core/src/lib/validators/required-length.validator.ts +14 -0
- package/projects/tt-core/src/lib/validators/string/name.validator.ts +9 -0
- package/projects/tt-core/src/lib/validators/unique-email.validator.ts +19 -0
- package/projects/tt-core/tsconfig.lib.json +15 -0
- package/projects/tt-core/tsconfig.lib.prod.json +10 -0
- package/tsconfig.json +46 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { FormControl, Validators } from '@angular/forms';
|
|
2
|
+
import { BudgetRule } from '../../models';
|
|
3
|
+
import { AbstractForm } from '../abstract.form';
|
|
4
|
+
import { RxwebValidators } from '@rxweb/reactive-form-validators';
|
|
5
|
+
import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
|
|
6
|
+
import { conditionalValidator } from '../../validators';
|
|
7
|
+
import { IEventListener } from '../../interfaces';
|
|
8
|
+
|
|
9
|
+
export class BudgetRuleForm extends AbstractForm<BudgetRule> implements IEventListener {
|
|
10
|
+
constructor(rule: BudgetRule) {
|
|
11
|
+
super({
|
|
12
|
+
tankType: new FormControl(rule.chartAccounts?.tankType ?? TankTypeEnum.PERSONAL, [Validators.required]),
|
|
13
|
+
chartAccounts: new FormControl({ value: rule.chartAccounts, disabled: !!rule.chartAccounts?.category }, [Validators.required, RxwebValidators.unique()]),
|
|
14
|
+
amount: new FormControl(rule.amount, Validators.required),
|
|
15
|
+
startDate: new FormControl(rule.startDate, Validators.required),
|
|
16
|
+
endDate: new FormControl({ value: rule.endDate, disabled: !rule.frequency }),
|
|
17
|
+
inCalendar: new FormControl(rule.inCalendar),
|
|
18
|
+
frequency: new FormControl(rule.frequency),
|
|
19
|
+
description: new FormControl(rule.description),
|
|
20
|
+
bankAccount: new FormControl(rule.bankAccount, conditionalValidator(
|
|
21
|
+
(): boolean => !!this.value.inCalendar,
|
|
22
|
+
Validators.required
|
|
23
|
+
)),
|
|
24
|
+
property: new FormControl(rule.property, conditionalValidator(
|
|
25
|
+
(): boolean => this.value.tankType === TankTypeEnum.PROPERTY,
|
|
26
|
+
Validators.required
|
|
27
|
+
)),
|
|
28
|
+
business: new FormControl(rule.business, conditionalValidator(
|
|
29
|
+
(): boolean => this.value.tankType === TankTypeEnum.SOLE,
|
|
30
|
+
Validators.required
|
|
31
|
+
)),
|
|
32
|
+
incomeSource: new FormControl(rule.incomeSource, conditionalValidator(
|
|
33
|
+
(): boolean => this.value.chartAccounts?.isWorkIncome(),
|
|
34
|
+
Validators.required
|
|
35
|
+
)),
|
|
36
|
+
}, rule);
|
|
37
|
+
|
|
38
|
+
this.listenEvents();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
listenEvents(): void {
|
|
43
|
+
this.listenFrequency();
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
listenFrequency(): void {
|
|
47
|
+
this.get('frequency').valueChanges.subscribe((value: number) => {
|
|
48
|
+
if (value) {
|
|
49
|
+
this.get('endDate').enable();
|
|
50
|
+
} else {
|
|
51
|
+
this.get('endDate').disable();
|
|
52
|
+
}
|
|
53
|
+
})
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { UntypedFormArray, UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
|
|
2
|
+
import { Budget, BudgetRule, ChartAccounts } from '../../models';
|
|
3
|
+
import { AbstractForm } from '../abstract.form';
|
|
4
|
+
import { plainToClass } from 'class-transformer';
|
|
5
|
+
import { ChartAccountsCategoryEnum } from '../../db/Enums';
|
|
6
|
+
import { RxwebValidators } from '@rxweb/reactive-form-validators';
|
|
7
|
+
import { combineLatest } from 'rxjs';
|
|
8
|
+
import { startWith } from 'rxjs/operators';
|
|
9
|
+
import { Collection } from '../../collections';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @TODO TT-4522 remove after release
|
|
13
|
+
*/
|
|
14
|
+
export class BudgetForm extends AbstractForm<Budget> {
|
|
15
|
+
// @TODO uncomment when all properties exposed
|
|
16
|
+
// protected excludeExtraneousValues = true;
|
|
17
|
+
filteredRules: Map<number, UntypedFormGroup>;
|
|
18
|
+
total: number;
|
|
19
|
+
|
|
20
|
+
constructor(budget: Budget) {
|
|
21
|
+
super({
|
|
22
|
+
category: new UntypedFormControl(),
|
|
23
|
+
searchQuery: new UntypedFormControl(''),
|
|
24
|
+
rules: new UntypedFormArray((budget.rules || [plainToClass(BudgetRule, {})]).map(
|
|
25
|
+
(budgetRule: BudgetRule) => BudgetForm.createRuleFormGroup(budgetRule))
|
|
26
|
+
),
|
|
27
|
+
}, budget);
|
|
28
|
+
|
|
29
|
+
combineLatest([
|
|
30
|
+
this.get('category').valueChanges.pipe(startWith(null)),
|
|
31
|
+
this.get('searchQuery').valueChanges.pipe(startWith(null))
|
|
32
|
+
]).subscribe(() => this.filterRules());
|
|
33
|
+
|
|
34
|
+
this.total = budget.rulesCollection.sumBy('amount');
|
|
35
|
+
this.get('rules').valueChanges.subscribe((rules) => {
|
|
36
|
+
this.total = new Collection(rules).sumBy('amount');
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
get rulesArray(): UntypedFormArray {
|
|
41
|
+
return this.get('rules') as UntypedFormArray;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
filterRules(): void {
|
|
45
|
+
const category: ChartAccountsCategoryEnum = this.get('category').value;
|
|
46
|
+
const searchQuery: string = this.get('searchQuery').value;
|
|
47
|
+
let filteredRules: UntypedFormGroup[] = this.rulesArray.controls as UntypedFormGroup[];
|
|
48
|
+
|
|
49
|
+
if (searchQuery) {
|
|
50
|
+
filteredRules = filteredRules.filter((ruleGroup: UntypedFormGroup) => {
|
|
51
|
+
if (ruleGroup.invalid) {
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
const ruleAmount: string = ruleGroup.get('amount').value?.toString();
|
|
56
|
+
const chartAccountsName: string = ruleGroup.get('chartAccounts').value?.name.toLowerCase();
|
|
57
|
+
|
|
58
|
+
return chartAccountsName.includes(searchQuery) || ruleAmount.includes(searchQuery);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
if (category) {
|
|
63
|
+
filteredRules = filteredRules.filter((ruleGroup: UntypedFormGroup) => {
|
|
64
|
+
const chartAccounts: ChartAccounts = ruleGroup.get('chartAccounts').value;
|
|
65
|
+
|
|
66
|
+
if (!chartAccounts) {
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return chartAccounts.category === category;
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
this.filteredRules = new Map(filteredRules.map((rule) => [this.rulesArray.controls.indexOf(rule), rule]));
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
static createRuleFormGroup(budgetRule: BudgetRule): UntypedFormGroup {
|
|
78
|
+
return new UntypedFormGroup({
|
|
79
|
+
chartAccounts: new UntypedFormControl(budgetRule.chartAccounts, [Validators.required, RxwebValidators.unique()]),
|
|
80
|
+
amount: new UntypedFormControl(budgetRule.amount, Validators.required)
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
addRule(budgetRule: BudgetRule = plainToClass(BudgetRule, {})): void {
|
|
85
|
+
const rule = BudgetForm.createRuleFormGroup(budgetRule);
|
|
86
|
+
this.rulesArray.push(rule);
|
|
87
|
+
this.filteredRules.set(this.rulesArray.controls.indexOf(rule), rule);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
deleteRule(index: number): void {
|
|
91
|
+
this.rulesArray.removeAt(index);
|
|
92
|
+
this.filteredRules.delete(index);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { AbstractForm } from '../abstract.form';
|
|
2
|
+
import { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';
|
|
3
|
+
import { ChartAccounts } from '../../models';
|
|
4
|
+
import { plainToClass } from 'class-transformer';
|
|
5
|
+
|
|
6
|
+
export class ChartAccountsForm extends AbstractForm<ChartAccounts> {
|
|
7
|
+
constructor(private chartAccounts: ChartAccounts = plainToClass(ChartAccounts, {})) {
|
|
8
|
+
super({
|
|
9
|
+
name: new FormControl(chartAccounts.name, [Validators.required, Validators.maxLength(AbstractForm.inputMaxLength)]),
|
|
10
|
+
category: new FormControl(chartAccounts.category, [Validators.required]),
|
|
11
|
+
depreciations: new FormArray(
|
|
12
|
+
(chartAccounts.depreciations || []).map((depreciation) => new FormGroup({
|
|
13
|
+
effectiveLife: new FormControl(depreciation.effectiveLife),
|
|
14
|
+
}))
|
|
15
|
+
)
|
|
16
|
+
}, chartAccounts);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
get depreciationsArray(): FormArray {
|
|
20
|
+
return this.get('depreciations') as FormArray;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
addDepreciationGroup(): void {
|
|
24
|
+
this.depreciationsArray.push(new FormGroup({ effectiveLife: new FormControl() }));
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './chart-accounts.form';
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { FormControl, FormGroup } from '@angular/forms';
|
|
2
|
+
import { ControlsInterface } from '../abstract.form';
|
|
3
|
+
import { ChatCollection } from '../../collections';
|
|
4
|
+
import { IEventListener } from '../../interfaces';
|
|
5
|
+
import { debounceTime, distinctUntilChanged } from 'rxjs/operators';
|
|
6
|
+
import { ReplaySubject } from 'rxjs';
|
|
7
|
+
import { Chat } from '../../models';
|
|
8
|
+
|
|
9
|
+
interface IChatFilterControls extends ControlsInterface {
|
|
10
|
+
query: FormControl<string>;
|
|
11
|
+
myChats: FormControl<boolean>;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export class ChatFilterForm extends FormGroup<IChatFilterControls> implements IEventListener {
|
|
15
|
+
dataChanges: ReplaySubject<Chat[]> = new ReplaySubject(1);
|
|
16
|
+
|
|
17
|
+
constructor(private collection: ChatCollection) {
|
|
18
|
+
super({
|
|
19
|
+
query: new FormControl(),
|
|
20
|
+
myChats: new FormControl(true),
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
this.listenEvents();
|
|
24
|
+
this.updateValueAndValidity();
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
listenEvents() {
|
|
28
|
+
this.valueChanges.pipe(debounceTime(300), distinctUntilChanged())
|
|
29
|
+
.subscribe(() => {
|
|
30
|
+
this.filter();
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
filter(source?: ChatCollection): void {
|
|
35
|
+
if (source) {
|
|
36
|
+
this.collection = source;
|
|
37
|
+
}
|
|
38
|
+
const value = this.value;
|
|
39
|
+
|
|
40
|
+
let collection = this.collection;
|
|
41
|
+
if (value.query) {
|
|
42
|
+
collection = collection.filter(chat => chat.client.fullName.toLowerCase().includes(value.query));
|
|
43
|
+
}
|
|
44
|
+
if (value.myChats) {
|
|
45
|
+
collection = collection.filter(chat => chat.employee.id === +localStorage.getItem('userId'));
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
this.dataChanges.next(collection.toArray());
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './chat-filter.form';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { AbstractForm } from '../abstract.form';
|
|
2
|
+
import { UntypedFormControl, Validators } from '@angular/forms';
|
|
3
|
+
import { AnnualClientDetails } from '../../models';
|
|
4
|
+
import { plainToClass } from 'class-transformer';
|
|
5
|
+
import { conditionalValidator } from '../../validators';
|
|
6
|
+
|
|
7
|
+
export class AnnualClientDetailsForm extends AbstractForm<AnnualClientDetails> {
|
|
8
|
+
constructor(private annualClientDetails: AnnualClientDetails = plainToClass(AnnualClientDetails, {})) {
|
|
9
|
+
super({
|
|
10
|
+
privateHealthCare: new UntypedFormControl(annualClientDetails.privateHealthCare, Validators.required),
|
|
11
|
+
spouse: new UntypedFormControl(annualClientDetails.spouse, Validators.required),
|
|
12
|
+
spouseAnnualIncome: new UntypedFormControl(annualClientDetails.spouseAnnualIncome, conditionalValidator(
|
|
13
|
+
(): boolean => this.get('spouse').value,
|
|
14
|
+
Validators.required
|
|
15
|
+
)),
|
|
16
|
+
hasDependants: new UntypedFormControl(!!annualClientDetails.dependants, Validators.required),
|
|
17
|
+
dependants: new UntypedFormControl(annualClientDetails.dependants, conditionalValidator(
|
|
18
|
+
(): boolean => this.get('hasDependants').value,
|
|
19
|
+
Validators.required
|
|
20
|
+
)),
|
|
21
|
+
hasStudentLoan: new UntypedFormControl(!!annualClientDetails.studentLoanAmount, Validators.required),
|
|
22
|
+
studentLoanAmount: new UntypedFormControl(annualClientDetails.studentLoanAmount, conditionalValidator(
|
|
23
|
+
(): boolean => this.get('hasStudentLoan').value,
|
|
24
|
+
Validators.required
|
|
25
|
+
)),
|
|
26
|
+
reportableFringeBenefits: new UntypedFormControl(annualClientDetails.reportableFringeBenefits || 0),
|
|
27
|
+
exemptForeignEmploymentIncome: new UntypedFormControl(annualClientDetails.exemptForeignEmploymentIncome || 0),
|
|
28
|
+
}, annualClientDetails);
|
|
29
|
+
|
|
30
|
+
this.watchFieldForToggle('spouse', 'spouseAnnualIncome');
|
|
31
|
+
this.watchFieldForToggle('hasDependants', 'dependants');
|
|
32
|
+
this.watchFieldForToggle('hasStudentLoan', 'studentLoanAmount');
|
|
33
|
+
this.emitValues();
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
private watchFieldForToggle(field: string, dependantField: string): void {
|
|
37
|
+
this.get(field).valueChanges.subscribe((value: boolean) => this.toggleField(dependantField, !!value))
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
private toggleField(field: string, enable: boolean): void {
|
|
41
|
+
if (enable) {
|
|
42
|
+
this.get(field).enable();
|
|
43
|
+
} else {
|
|
44
|
+
this.get(field).setValue(0);
|
|
45
|
+
this.get(field).disable();
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { AbstractForm } from '../abstract.form';
|
|
2
|
+
import { UntypedFormControl, Validators } from '@angular/forms';
|
|
3
|
+
import { CapitalLoss } from '../../models';
|
|
4
|
+
import { plainToClass } from 'class-transformer';
|
|
5
|
+
|
|
6
|
+
export class CapitalLossForm extends AbstractForm<CapitalLoss> {
|
|
7
|
+
constructor(private capitalLoss: CapitalLoss = plainToClass(CapitalLoss, {})) {
|
|
8
|
+
super({
|
|
9
|
+
balance: new UntypedFormControl(capitalLoss.balance, Validators.required)
|
|
10
|
+
}, capitalLoss);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { FormArray } from '@angular/forms';
|
|
2
|
+
import { AbstractForm } from './';
|
|
3
|
+
import { AbstractModel } from '../db/Models';
|
|
4
|
+
|
|
5
|
+
export class CollectionForm<Form extends AbstractForm<Model>, Model extends AbstractModel> extends FormArray<Form> {
|
|
6
|
+
private args: any[];
|
|
7
|
+
includeDisabledFields = false;
|
|
8
|
+
|
|
9
|
+
constructor(private formConstructor: new (model?: Model, ...args: any[]) => Form, models: Model[] = [], ...args: any[]) {
|
|
10
|
+
super(models.map(model => new formConstructor(model, ...args)));
|
|
11
|
+
this.args = args;
|
|
12
|
+
if (!models.length) {
|
|
13
|
+
this.add();
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
createFormGroup(model?: Model): Form {
|
|
18
|
+
return new this.formConstructor(model, ...this.args);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
add(model?: Model): void {
|
|
22
|
+
super.push(this.createFormGroup(model));
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Submit form and return array of properties from form value
|
|
27
|
+
*/
|
|
28
|
+
submit(data: object = {}): Model[] {
|
|
29
|
+
this.markAllAsTouched();
|
|
30
|
+
const controls = this.includeDisabledFields ? this.controls : this.controls.filter((form: Form) => form.enabled);
|
|
31
|
+
if (!this.valid || !controls.length) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
return controls.map((form: Form): Model => form.submit(data));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { FormControl, Validators } from '@angular/forms';
|
|
2
|
+
import { TransactionBaseForm } from '../transaction';
|
|
3
|
+
import { ChartAccounts, Depreciation, FinancialYear } from '../../models';
|
|
4
|
+
|
|
5
|
+
export class DepreciationForm extends TransactionBaseForm<Depreciation> {
|
|
6
|
+
includeDisabledFields = true;
|
|
7
|
+
|
|
8
|
+
constructor(depreciation: Depreciation, registeredForGst: boolean) {
|
|
9
|
+
super(depreciation, registeredForGst, {
|
|
10
|
+
isCloseBalanceCorrect: new FormControl(true),
|
|
11
|
+
closeBalance: new FormControl({ value: depreciation.closeBalance || 0, disabled: true }, Validators.required),
|
|
12
|
+
financialYear: new FormControl(depreciation.financialYear || new FinancialYear().year),
|
|
13
|
+
claimStartDate: new FormControl({ value: depreciation.claimStartDate, disabled: !depreciation.chartAccounts?.isBuildingAtCost() }),
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
if (depreciation.id) {
|
|
17
|
+
// this.get('claimPercent').setValue(depreciation.currentYearForecast.claimPercent);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
// forbid to change chartAccounts/claimPercent for existing depreciations
|
|
21
|
+
if (depreciation.id) {
|
|
22
|
+
this.get('chartAccounts').disable({ emitEvent: false });
|
|
23
|
+
this.get('claimPercent').disable({ emitEvent: false });
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// @TODO should be watched?
|
|
27
|
+
// if depreciation has 'depreciationCapitalProject' value - set value and disable 'date' form control
|
|
28
|
+
if (depreciation.depreciationCapitalProject) {
|
|
29
|
+
this.get('date').setValue(depreciation.depreciationCapitalProject.effectiveDate);
|
|
30
|
+
this.get('date').disable();
|
|
31
|
+
} else {
|
|
32
|
+
this.get('date').setValue(depreciation.date);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
this.get('isCloseBalanceCorrect').valueChanges.subscribe((isSelected: boolean) => {
|
|
36
|
+
if (isSelected) {
|
|
37
|
+
this.get('closeBalance').disable();
|
|
38
|
+
} else {
|
|
39
|
+
this.get('closeBalance').enable();
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
watchChartAccounts(): void {
|
|
45
|
+
super.watchChartAccounts();
|
|
46
|
+
this.get('chartAccounts').valueChanges.subscribe((chartAccounts: ChartAccounts) => {
|
|
47
|
+
this.setEnabledState(this.get('claimStartDate'), chartAccounts.isBuildingAtCost());
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './depreciation.form';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FormControl, Validators } from '@angular/forms';
|
|
2
|
+
import { DocumentFolder } from '../../models';
|
|
3
|
+
import { AbstractForm } from '../abstract.form';
|
|
4
|
+
import { FormValidationsEnum } from '../form-validations.enum';
|
|
5
|
+
|
|
6
|
+
export class DocumentFolderForm extends AbstractForm<DocumentFolder> {
|
|
7
|
+
constructor(folder: DocumentFolder) {
|
|
8
|
+
super({
|
|
9
|
+
name: new FormControl(folder.name, [Validators.required, Validators.maxLength(FormValidationsEnum.INPUT_MAX_LENGTH)]),
|
|
10
|
+
parent: new FormControl(folder.parent),
|
|
11
|
+
}, folder);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { FormControl, Validators } from '@angular/forms';
|
|
2
|
+
import { AbstractForm } from '../abstract.form';
|
|
3
|
+
import { Document } from '../../models';
|
|
4
|
+
|
|
5
|
+
export class DocumentForm extends AbstractForm<Document> {
|
|
6
|
+
constructor(document: Document) {
|
|
7
|
+
super({
|
|
8
|
+
folder: new FormControl(document.folder, Validators.required),
|
|
9
|
+
file: new FormControl(document.file, Validators.required),
|
|
10
|
+
}, document)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { FormControl } from '@angular/forms';
|
|
2
|
+
import { AbstractForm, ControlsInterface } from '../abstract.form';
|
|
3
|
+
import { BankAccount, FinancialGoal, Property } from '../../models';
|
|
4
|
+
import { FinancialGoalCollection } from '../../collections';
|
|
5
|
+
import differenceBy from 'lodash/differenceBy';
|
|
6
|
+
|
|
7
|
+
interface FinancialGoalFilterControlsInterface extends ControlsInterface {
|
|
8
|
+
type: FormControl<number>,
|
|
9
|
+
bankAccount: FormControl<BankAccount>,
|
|
10
|
+
properties: FormControl<Property[]>,
|
|
11
|
+
inactiveHidden: FormControl<boolean>,
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export class FinancialGoalFilterForm extends AbstractForm<FinancialGoal, FinancialGoalFilterControlsInterface> {
|
|
15
|
+
filteredGoals: FinancialGoalCollection;
|
|
16
|
+
|
|
17
|
+
constructor(private goals: FinancialGoalCollection) {
|
|
18
|
+
super({
|
|
19
|
+
inactiveHidden: new FormControl(true),
|
|
20
|
+
type: new FormControl(),
|
|
21
|
+
properties: new FormControl(),
|
|
22
|
+
bankAccount: new FormControl(),
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
this.filter(this.goals);
|
|
26
|
+
this.valueChanges.subscribe(() => {
|
|
27
|
+
this.filter(this.goals);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
filter(goals: FinancialGoalCollection): FinancialGoalCollection {
|
|
32
|
+
this.filteredGoals = goals;
|
|
33
|
+
if (!goals.length) {
|
|
34
|
+
return goals;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const value = this.value;
|
|
38
|
+
|
|
39
|
+
if (value.inactiveHidden) {
|
|
40
|
+
this.filteredGoals = this.filteredGoals.getActive();
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
if (value.type) {
|
|
44
|
+
this.filteredGoals = this.filteredGoals.filterBy('type', value.type);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
if (value.properties) {
|
|
48
|
+
this.filteredGoals = this.filteredGoals.filter(goal => differenceBy(value.properties, goal.properties, 'id').length === 0);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
if (value.bankAccount) {
|
|
52
|
+
this.filteredGoals = this.filteredGoals.filter(goal => goal.bankAccount?.id === value.bankAccount.id);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
return this.filteredGoals;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
import { AbstractForm } from '../index';
|
|
2
|
+
import { Dictionary, FinancialGoal, FinancialGoalTypeEnum } from '../../models';
|
|
3
|
+
import { FormControl, Validators } from '@angular/forms';
|
|
4
|
+
import { BankAccount } from '../../db/Models';
|
|
5
|
+
import { IEventListener } from '../../interfaces';
|
|
6
|
+
import { conditionalValidator, greaterThanControlValidator, minDateValidator } from '../../validators';
|
|
7
|
+
import moment from 'moment';
|
|
8
|
+
import { BankAccountTypeEnum, DailyFrequencyEnum } from '../../db/Enums';
|
|
9
|
+
import round from 'lodash/round';
|
|
10
|
+
import { filter } from 'rxjs/operators';
|
|
11
|
+
import { lessThanControlValidator } from '../../validators/less-than-control.validator';
|
|
12
|
+
|
|
13
|
+
const END_DATE_VALIDATION_ERROR = 'Target date must be more than start date';
|
|
14
|
+
|
|
15
|
+
export class FinancialGoalForm extends AbstractForm<FinancialGoal> implements IEventListener {
|
|
16
|
+
includeDisabledFields = true;
|
|
17
|
+
bankAccountTypes: BankAccountTypeEnum[] = [];
|
|
18
|
+
|
|
19
|
+
constructor(goal: FinancialGoal, private equityByProperty?: Dictionary<number>, private lvrByProperty?: Dictionary<number>) {
|
|
20
|
+
super({
|
|
21
|
+
type: new FormControl({ value: goal.type ?? FinancialGoalTypeEnum.DEBIT, disabled: !!goal.id }, Validators.required),
|
|
22
|
+
name: new FormControl(goal.name, Validators.required),
|
|
23
|
+
bankAccount: new FormControl({ value: goal.bankAccount, disabled: !!goal.id }, [
|
|
24
|
+
conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
|
|
25
|
+
]),
|
|
26
|
+
targetValue: new FormControl(goal.targetValue, [
|
|
27
|
+
Validators.required,
|
|
28
|
+
conditionalValidator((): boolean => this.isLvrType(), lessThanControlValidator('initialValue', 'Start Value')),
|
|
29
|
+
conditionalValidator((): boolean => !this.isLvrType(), greaterThanControlValidator('initialValue', 'Start Value')),
|
|
30
|
+
]),
|
|
31
|
+
initialValue: new FormControl({ value: goal.initialValue, disabled: true }, Validators.required),
|
|
32
|
+
startDate: new FormControl({ value: goal.startDate, disabled: true }),
|
|
33
|
+
endDate: new FormControl(goal.endDate, [Validators.required, minDateValidator(goal.startDate, END_DATE_VALIDATION_ERROR)]),
|
|
34
|
+
paymentFrequency: new FormControl(goal.paymentFrequency, [
|
|
35
|
+
conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
|
|
36
|
+
]),
|
|
37
|
+
paymentAmount: new FormControl(goal.paymentAmount, [
|
|
38
|
+
conditionalValidator((): boolean => !this.isPropertyType(), Validators.required),
|
|
39
|
+
]),
|
|
40
|
+
inCalendar: new FormControl(goal.inCalendar),
|
|
41
|
+
file: new FormControl(goal.file),
|
|
42
|
+
description: new FormControl(goal.description),
|
|
43
|
+
properties: new FormControl({ value: goal.properties, disabled: !!goal.id }, [
|
|
44
|
+
conditionalValidator((): boolean => this.isPropertyType(), Validators.required),
|
|
45
|
+
]),
|
|
46
|
+
}, goal);
|
|
47
|
+
|
|
48
|
+
this.bankAccountTypes = this.getBankAccountTypes(goal.type);
|
|
49
|
+
this.listenEvents();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
listenEvents(): void {
|
|
53
|
+
this.listenTypeChanges();
|
|
54
|
+
this.listenBankAccountChanges();
|
|
55
|
+
this.listenPaymentChanges();
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
listenTypeChanges(): void {
|
|
59
|
+
this.get('type').valueChanges.subscribe((type: FinancialGoalTypeEnum) => {
|
|
60
|
+
this.get('bankAccount').setValue(null, { onlySelf: true });
|
|
61
|
+
this.get('properties').setValue([], { onlySelf: true, emitEvent: false });
|
|
62
|
+
this.get('initialValue').setValue(null, { onlySelf: true, emitEvent: false });
|
|
63
|
+
|
|
64
|
+
if (this.isPropertyType()) {
|
|
65
|
+
this.get('inCalendar').setValue(false, { onlySelf: true, emitEvent: false });
|
|
66
|
+
this.get('paymentFrequency').setValue(null, { onlySelf: true, emitEvent: false });
|
|
67
|
+
this.get('paymentAmount').setValue(null, { onlySelf: true, emitEvent: false });
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
this.bankAccountTypes = this.getBankAccountTypes(type);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Watch payment fields and auto-recalculate endDate when form is valid
|
|
76
|
+
*/
|
|
77
|
+
listenPaymentChanges(): void {
|
|
78
|
+
this.valueChanges.subscribe(() => {
|
|
79
|
+
const goal = this.getRawValue();
|
|
80
|
+
|
|
81
|
+
if (goal.targetValue === null || !goal.bankAccount || !goal.paymentFrequency || !goal.endDate
|
|
82
|
+
|| (this.get('paymentAmount').dirty && this.get('endDate').dirty)) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
this.get('paymentAmount').setValue(this.calculatePaymentAmount(), { emitEvent: false });
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
this.get('paymentAmount').valueChanges.subscribe(() => {
|
|
90
|
+
const goal = this.getRawValue();
|
|
91
|
+
if (goal.targetValue === null || !goal.bankAccount || !goal.paymentFrequency || !goal.paymentAmount) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
this.get('endDate').setValue(this.calculateEndDate(), { emitEvent: false });
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
listenBankAccountChanges(): void {
|
|
100
|
+
this.get('bankAccount').valueChanges
|
|
101
|
+
.pipe(filter((bankAccount: BankAccount | null) => !!bankAccount))
|
|
102
|
+
.subscribe(bankAccount => {
|
|
103
|
+
this.get('initialValue').setValue(bankAccount.currentBalance);
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* requires targetValue/initialValue/paymentAmount/paymentFrequency fields to be filled
|
|
109
|
+
* Derives the final goal completion date by adding all payment periods to the start date.
|
|
110
|
+
*/
|
|
111
|
+
calculateEndDate(): Date {
|
|
112
|
+
const goal = this.getRawValue();
|
|
113
|
+
const start = moment(goal.startDate);
|
|
114
|
+
const paymentsCount = this.calculatePaymentsByAmount();
|
|
115
|
+
|
|
116
|
+
switch (goal.paymentFrequency) {
|
|
117
|
+
case DailyFrequencyEnum.WEEKLY:
|
|
118
|
+
return start.add(paymentsCount, 'weeks').toDate();
|
|
119
|
+
|
|
120
|
+
case DailyFrequencyEnum.FORTNIGHTLY:
|
|
121
|
+
return start.add(paymentsCount * 2, 'weeks').toDate();
|
|
122
|
+
|
|
123
|
+
case DailyFrequencyEnum.MONTHLY:
|
|
124
|
+
return start.add(paymentsCount, 'month').toDate();
|
|
125
|
+
|
|
126
|
+
default:
|
|
127
|
+
return new Date();
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Computes the recurring payment amount required to hit the target by the chosen end date.
|
|
133
|
+
*/
|
|
134
|
+
calculatePaymentAmount(): number {
|
|
135
|
+
const goal = this.currentValue;
|
|
136
|
+
|
|
137
|
+
return round(goal.target / Math.max(1, goal.calculatePaymentsByDate(goal.endDate)), 2);
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* Returns total number of deposits needed to fully reach the goal at current paymentAmount.
|
|
142
|
+
*/
|
|
143
|
+
calculatePaymentsByAmount(): number {
|
|
144
|
+
const goal = this.currentValue;
|
|
145
|
+
|
|
146
|
+
return Math.round(goal.target / goal.paymentAmount);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
getBankAccountTypes(type: FinancialGoalTypeEnum): BankAccountTypeEnum[] {
|
|
150
|
+
switch (type) {
|
|
151
|
+
case FinancialGoalTypeEnum.CREDIT:
|
|
152
|
+
return [BankAccountTypeEnum.MORTGAGE, BankAccountTypeEnum.LOAN, BankAccountTypeEnum.CREDIT_CARD];
|
|
153
|
+
case FinancialGoalTypeEnum.DEBIT:
|
|
154
|
+
return [BankAccountTypeEnum.TRANSACTION, BankAccountTypeEnum.SAVINGS, BankAccountTypeEnum.OFFSET];
|
|
155
|
+
default:
|
|
156
|
+
return [];
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
isPropertyType(): boolean {
|
|
161
|
+
return [FinancialGoalTypeEnum.PROPERTY_EQUITY, FinancialGoalTypeEnum.PROPERTY_LVR].includes(this.getRawValue().type);
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
isLvrType(): boolean {
|
|
165
|
+
return this.getRawValue().type === FinancialGoalTypeEnum.PROPERTY_LVR;
|
|
166
|
+
}
|
|
167
|
+
}
|