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