taxtank-core 0.1.1 → 0.1.5
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/bundles/taxtank-core.umd.js +12028 -0
- package/bundles/taxtank-core.umd.js.map +1 -0
- package/esm2015/lib/collections/abstract.collection.js +67 -0
- package/esm2015/lib/collections/bank-account.collection.js +135 -0
- package/esm2015/lib/collections/bank-transaction.collection.js +119 -0
- package/esm2015/lib/collections/client-movement.collection.js +31 -0
- package/esm2015/lib/collections/client-portfolio-report.collection.js +40 -0
- package/esm2015/lib/collections/client.collection.js +4 -0
- package/esm2015/lib/collections/collection-dictionary.js +83 -0
- package/esm2015/lib/collections/depreciation-forecast.collection.js +19 -0
- package/esm2015/lib/collections/depreciation.collection.js +67 -0
- package/esm2015/lib/collections/employee.collection.js +12 -0
- package/esm2015/lib/collections/income-source.collection.js +38 -0
- package/esm2015/lib/collections/loan.collection.js +18 -0
- package/esm2015/lib/collections/logbook.collection.js +97 -0
- package/esm2015/lib/collections/message-document.collection.js +13 -0
- package/esm2015/lib/collections/message.collection.js +21 -0
- package/esm2015/lib/collections/property.collection.js +65 -0
- package/esm2015/lib/collections/service-price.collection.js +10 -0
- package/esm2015/lib/collections/service-subscription.collection.js +17 -0
- package/esm2015/lib/collections/tax-return-category-item.collection.js +141 -0
- package/esm2015/lib/collections/tax-review.collection.js +55 -0
- package/esm2015/lib/collections/transaction-allocation.collection.js +40 -0
- package/esm2015/lib/collections/transaction.collection.js +120 -0
- package/esm2015/lib/collections/user-event-setting.collection.js +62 -0
- package/esm2015/lib/db/Enums/address-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/bank-account-status.enum.js +6 -0
- package/esm2015/lib/db/Enums/bank-account-type.enum.js +12 -0
- package/esm2015/lib/db/Enums/bank-connection-status.enum.js +7 -0
- package/esm2015/lib/db/Enums/bank-transaction-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/chart-accounts-category.enum.js +15 -0
- package/esm2015/lib/db/Enums/chart-accounts-etp.enum.js +9 -0
- package/esm2015/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.js +8 -0
- package/esm2015/lib/db/Enums/chart-accounts-heading-taxable.enum.js +8 -0
- package/esm2015/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.js +6 -0
- package/esm2015/lib/db/Enums/chart-accounts-list.enum.js +21 -0
- package/esm2015/lib/db/Enums/chart-accounts-metadata-list.enum.js +16 -0
- package/esm2015/lib/db/Enums/chart-accounts-metadata-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/chart-accounts-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/chat-status.enum.js +6 -0
- package/esm2015/lib/db/Enums/client-details-medicare-exemption.enum.js +7 -0
- package/esm2015/lib/db/Enums/client-details-work-depreciation-calculation.enum.js +6 -0
- package/esm2015/lib/db/Enums/client-details-working-holiday-maker.enum.js +7 -0
- package/esm2015/lib/db/Enums/client-invite-status.enum.js +6 -0
- package/esm2015/lib/db/Enums/client-invite-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/depreciation-calculation-percent.enum.js +9 -0
- package/esm2015/lib/db/Enums/depreciation-calculation.enum.js +9 -0
- package/esm2015/lib/db/Enums/depreciation-type.enum.js +8 -0
- package/esm2015/lib/db/Enums/depreciation-write-off-amount.enum.js +6 -0
- package/esm2015/lib/db/Enums/firm-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/income-source-type-list-other.enum.js +8 -0
- package/esm2015/lib/db/Enums/income-source-type-list-salary.enum.js +5 -0
- package/esm2015/lib/db/Enums/income-source-type-list-work.enum.js +10 -0
- package/esm2015/lib/db/Enums/income-source-type.enum.js +7 -0
- package/esm2015/lib/db/Enums/invite-status.enum.js +7 -0
- package/esm2015/lib/db/Enums/loan-bank-type.enum.js +12 -0
- package/esm2015/lib/db/Enums/loan-frequency.enum.js +8 -0
- package/esm2015/lib/db/Enums/loan-interest-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/loan-payout-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/loan-repayment-frequency.enum.js +7 -0
- package/esm2015/lib/db/Enums/loan-repayment-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/loan-type.enum.js +14 -0
- package/esm2015/lib/db/Enums/loan-vehicle-type.enum.js +7 -0
- package/esm2015/lib/db/Enums/phone-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/property-depreciation-calculation.enum.js +6 -0
- package/esm2015/lib/db/Enums/property-owner-access.enum.js +6 -0
- package/esm2015/lib/db/Enums/property-owner-status.enum.js +7 -0
- package/esm2015/lib/db/Enums/registration-invite-status.enum.js +6 -0
- package/esm2015/lib/db/Enums/salary-forecast-frequency.enum.js +8 -0
- package/esm2015/lib/db/Enums/service-notification-status.enum.js +7 -0
- package/esm2015/lib/db/Enums/service-notification-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/service-payment-status.enum.js +6 -0
- package/esm2015/lib/db/Enums/service-price-recurring-interval.enum.js +8 -0
- package/esm2015/lib/db/Enums/service-price-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/service-subscription-status.enum.js +10 -0
- package/esm2015/lib/db/Enums/spare-document-spare-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/tank-type.enum.js +7 -0
- package/esm2015/lib/db/Enums/tax-calculation-medicare-exemption.enum.js +6 -0
- package/esm2015/lib/db/Enums/tax-calculation-type.enum.js +14 -0
- package/esm2015/lib/db/Enums/tax-return-category-list.enum.js +28 -0
- package/esm2015/lib/db/Enums/tax-return-category-section.enum.js +8 -0
- package/esm2015/lib/db/Enums/tax-review-status.enum.js +13 -0
- package/esm2015/lib/db/Enums/tax-summary-list.enum.js +17 -0
- package/esm2015/lib/db/Enums/tax-summary-section.enum.js +8 -0
- package/esm2015/lib/db/Enums/tax-summary-tax-summary.enum.js +17 -0
- package/esm2015/lib/db/Enums/ticket-feedback.enum.js +6 -0
- package/esm2015/lib/db/Enums/ticket-status.enum.js +9 -0
- package/esm2015/lib/db/Enums/ticket-types.enum.js +5 -0
- package/esm2015/lib/db/Enums/transaction-operation.enum.js +7 -0
- package/esm2015/lib/db/Enums/transaction-source.enum.js +6 -0
- package/esm2015/lib/db/Enums/transaction-type.enum.js +6 -0
- package/esm2015/lib/db/Enums/user-event-status.enum.js +8 -0
- package/esm2015/lib/db/Enums/user-event-type-frequency.enum.js +8 -0
- package/esm2015/lib/db/Enums/user-event-type-reminder-type.enum.js +8 -0
- package/esm2015/lib/db/Enums/user-event-type-reminder.enum.js +7 -0
- package/esm2015/lib/db/Enums/user-event-type-type.enum.js +35 -0
- package/esm2015/lib/db/Enums/user-medicare-exemption.enum.js +7 -0
- package/esm2015/lib/db/Enums/user-roles.enum.js +15 -0
- package/esm2015/lib/db/Enums/user-status.enum.js +8 -0
- package/esm2015/lib/db/Enums/user-title.enum.js +9 -0
- package/esm2015/lib/db/Enums/user-work-depreciation-calculation.enum.js +6 -0
- package/esm2015/lib/db/Enums/user-working-holiday-maker.enum.js +7 -0
- package/esm2015/lib/db/Enums/vehicle-claim-method.enum.js +6 -0
- package/esm2015/lib/db/Enums/vehicle-logbook-purpose.enum.js +6 -0
- package/esm2015/lib/db/Models/address.js +3 -0
- package/esm2015/lib/db/Models/bank-account-balance.js +3 -0
- package/esm2015/lib/db/Models/bank-account-property.js +3 -0
- package/esm2015/lib/db/Models/bank-account.js +3 -0
- package/esm2015/lib/db/Models/bank-connection.js +3 -0
- package/esm2015/lib/db/Models/bank-transaction-import.js +3 -0
- package/esm2015/lib/db/Models/bank-transaction.js +3 -0
- package/esm2015/lib/db/Models/bank.js +3 -0
- package/esm2015/lib/db/Models/basiq-job.js +3 -0
- package/esm2015/lib/db/Models/borrowing-expense-loan.js +3 -0
- package/esm2015/lib/db/Models/borrowing-expense.js +3 -0
- package/esm2015/lib/db/Models/capital-cost-property.js +3 -0
- package/esm2015/lib/db/Models/capital-cost.js +3 -0
- package/esm2015/lib/db/Models/chart-accounts-depreciation.js +3 -0
- package/esm2015/lib/db/Models/chart-accounts-heading.js +3 -0
- package/esm2015/lib/db/Models/chart-accounts-metadata.js +3 -0
- package/esm2015/lib/db/Models/chart-accounts-value.js +3 -0
- package/esm2015/lib/db/Models/chart-accounts.js +3 -0
- package/esm2015/lib/db/Models/chat.js +3 -0
- package/esm2015/lib/db/Models/client-details.js +3 -0
- package/esm2015/lib/db/Models/client-invite.js +3 -0
- package/esm2015/lib/db/Models/client-movement.js +3 -0
- package/esm2015/lib/db/Models/country.js +3 -0
- package/esm2015/lib/db/Models/depreciation-capital-project.js +3 -0
- package/esm2015/lib/db/Models/depreciation-forecast.js +3 -0
- package/esm2015/lib/db/Models/depreciation-receipt.js +3 -0
- package/esm2015/lib/db/Models/depreciation.js +4 -0
- package/esm2015/lib/db/Models/document-folder.js +3 -0
- package/esm2015/lib/db/Models/document.js +3 -0
- package/esm2015/lib/db/Models/employee-details.js +3 -0
- package/esm2015/lib/db/Models/employee-invite.js +3 -0
- package/esm2015/lib/db/Models/financial-data-system.js +3 -0
- package/esm2015/lib/db/Models/firm.js +3 -0
- package/esm2015/lib/db/Models/income-source-forecast.js +3 -0
- package/esm2015/lib/db/Models/income-source-type.js +3 -0
- package/esm2015/lib/db/Models/income-source.js +3 -0
- package/esm2015/lib/db/Models/loan-payout.js +3 -0
- package/esm2015/lib/db/Models/loan.js +3 -0
- package/esm2015/lib/db/Models/message-document.js +3 -0
- package/esm2015/lib/db/Models/message.js +3 -0
- package/esm2015/lib/db/Models/occupation.js +3 -0
- package/esm2015/lib/db/Models/phone.js +3 -0
- package/esm2015/lib/db/Models/property-capital-cost.js +3 -0
- package/esm2015/lib/db/Models/property-category-movement.js +3 -0
- package/esm2015/lib/db/Models/property-category.js +3 -0
- package/esm2015/lib/db/Models/property-document.js +3 -0
- package/esm2015/lib/db/Models/property-forecast.js +3 -0
- package/esm2015/lib/db/Models/property-owner.js +3 -0
- package/esm2015/lib/db/Models/property-sold.js +3 -0
- package/esm2015/lib/db/Models/property-subscription.js +3 -0
- package/esm2015/lib/db/Models/property-valuation.js +3 -0
- package/esm2015/lib/db/Models/property.js +3 -0
- package/esm2015/lib/db/Models/registration-invite.js +3 -0
- package/esm2015/lib/db/Models/salary-forecast.js +3 -0
- package/esm2015/lib/db/Models/service-notification.js +3 -0
- package/esm2015/lib/db/Models/service-payment.js +3 -0
- package/esm2015/lib/db/Models/service-price.js +3 -0
- package/esm2015/lib/db/Models/service-product.js +3 -0
- package/esm2015/lib/db/Models/service-subscription-item.js +3 -0
- package/esm2015/lib/db/Models/service-subscription.js +3 -0
- package/esm2015/lib/db/Models/tax-return-category.js +3 -0
- package/esm2015/lib/db/Models/tax-return-item.js +3 -0
- package/esm2015/lib/db/Models/tax-return.js +3 -0
- package/esm2015/lib/db/Models/tax-review.js +3 -0
- package/esm2015/lib/db/Models/ticket.js +3 -0
- package/esm2015/lib/db/Models/transaction-allocation.js +3 -0
- package/esm2015/lib/db/Models/transaction-base.js +20 -0
- package/esm2015/lib/db/Models/transaction-metadata.js +3 -0
- package/esm2015/lib/db/Models/transaction-receipt.js +3 -0
- package/esm2015/lib/db/Models/transaction.js +4 -0
- package/esm2015/lib/db/Models/user-event-setting.js +3 -0
- package/esm2015/lib/db/Models/user-event-type.js +3 -0
- package/esm2015/lib/db/Models/user-event.js +3 -0
- package/esm2015/lib/db/Models/user.js +3 -0
- package/esm2015/lib/db/Models/vehicle-claim.js +3 -0
- package/esm2015/lib/db/Models/vehicle-logbook.js +3 -0
- package/esm2015/lib/db/Models/vehicle.js +3 -0
- package/esm2015/lib/functions/array/index.js +4 -0
- package/esm2015/lib/functions/array/replace.js +6 -0
- package/esm2015/lib/functions/array/sort-deep.js +22 -0
- package/esm2015/lib/functions/array/sort.js +13 -0
- package/esm2015/lib/functions/clone-deep.js +5 -0
- package/esm2015/lib/functions/create-date.js +8 -0
- package/esm2015/lib/functions/enum-to-list.js +13 -0
- package/esm2015/lib/functions/get-doc-icon.js +18 -0
- package/esm2015/lib/functions/mat-options-functions.js +10 -0
- package/esm2015/lib/functions/mat-sort-options.js +10 -0
- package/esm2015/lib/functions/round-to.js +10 -0
- package/esm2015/lib/functions/tax-review-filter-predicate.js +10 -0
- package/esm2015/lib/interfaces/asset-entity-type.enum.js +12 -0
- package/esm2015/lib/interfaces/asset-type.enum.js +11 -0
- package/esm2015/lib/interfaces/asset.interface.js +2 -0
- package/esm2015/lib/interfaces/chart-data.interface.js +2 -0
- package/esm2015/lib/interfaces/chart-serie.interface.js +2 -0
- package/esm2015/lib/interfaces/document.interface.js +2 -0
- package/esm2015/lib/interfaces/documentable.interface.js +2 -0
- package/esm2015/lib/interfaces/event-listener.interface.js +2 -0
- package/esm2015/lib/interfaces/income-source-forecast.interface.js +2 -0
- package/esm2015/lib/interfaces/option.interface.js +2 -0
- package/esm2015/lib/interfaces/photoable.js +2 -0
- package/esm2015/lib/interfaces/receipt.interface.js +2 -0
- package/esm2015/lib/interfaces/salary-forecast.interface.js +2 -0
- package/esm2015/lib/interfaces/tank.interface.js +2 -0
- package/esm2015/lib/models/address/address.js +24 -0
- package/esm2015/lib/models/address/country.js +16 -0
- package/esm2015/lib/models/bank/bank-account-chart-data.js +34 -0
- package/esm2015/lib/models/bank/bank-account-property.js +10 -0
- package/esm2015/lib/models/bank/bank-account-types.const.js +15 -0
- package/esm2015/lib/models/bank/bank-account.js +122 -0
- package/esm2015/lib/models/bank/bank-connection.js +21 -0
- package/esm2015/lib/models/bank/bank-transaction-chart-data.js +106 -0
- package/esm2015/lib/models/bank/bank-transaction-summary-fields.enum.js +6 -0
- package/esm2015/lib/models/bank/bank-transaction.js +67 -0
- package/esm2015/lib/models/bank/bank.js +13 -0
- package/esm2015/lib/models/bank/basiq-job.js +4 -0
- package/esm2015/lib/models/bank/basiq-token.js +13 -0
- package/esm2015/lib/models/bank/type-loan.const.js +7 -0
- package/esm2015/lib/models/borrowing-expense/borrowing-expense-loan.js +4 -0
- package/esm2015/lib/models/borrowing-expense/borrowing-expense.js +4 -0
- package/esm2015/lib/models/chart/chart-data.js +13 -0
- package/esm2015/lib/models/chart/chart-serie.js +7 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts-categories.const.js +85 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts-depreciation.js +16 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts-heading.js +4 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts-metadata.js +14 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts-tax-labels.enum.js +7 -0
- package/esm2015/lib/models/chart-accounts/chart-accounts.js +120 -0
- package/esm2015/lib/models/chat/chat-view-type.enum.js +6 -0
- package/esm2015/lib/models/chat/chat.js +23 -0
- package/esm2015/lib/models/chat/message-document.js +20 -0
- package/esm2015/lib/models/chat/message.js +39 -0
- package/esm2015/lib/models/client/client-details.js +4 -0
- package/esm2015/lib/models/client/client-invite.js +67 -0
- package/esm2015/lib/models/client/client-movement.js +27 -0
- package/esm2015/lib/models/client/client-portfolio-chart-data.js +57 -0
- package/esm2015/lib/models/client/client-portfolio-report.js +6 -0
- package/esm2015/lib/models/depreciation/depreciation-capital-project.js +9 -0
- package/esm2015/lib/models/depreciation/depreciation-forecast.js +22 -0
- package/esm2015/lib/models/depreciation/depreciation-group-item.js +14 -0
- package/esm2015/lib/models/depreciation/depreciation-group.enum.js +9 -0
- package/esm2015/lib/models/depreciation/depreciation-group.js +15 -0
- package/esm2015/lib/models/depreciation/depreciation-groups.const.js +29 -0
- package/esm2015/lib/models/depreciation/depreciation-receipt.js +11 -0
- package/esm2015/lib/models/depreciation/depreciation.js +159 -0
- package/esm2015/lib/models/document/document-api-url-prefix.enum.js +9 -0
- package/esm2015/lib/models/document/document-file-types.const.js +23 -0
- package/esm2015/lib/models/document/document-folder.js +10 -0
- package/esm2015/lib/models/document/document.js +24 -0
- package/esm2015/lib/models/employee/employee-details.js +10 -0
- package/esm2015/lib/models/employee/employee-invite.js +14 -0
- package/esm2015/lib/models/endpoint/endpoint.js +23 -0
- package/esm2015/lib/models/endpoint/endpoints.const.js +142 -0
- package/esm2015/lib/models/event/app-event-type.enum.js +39 -0
- package/esm2015/lib/models/event/app-event.js +10 -0
- package/esm2015/lib/models/file/icons-file.enum.js +7 -0
- package/esm2015/lib/models/financial-year/financial-year.js +44 -0
- package/esm2015/lib/models/financial-year/month-name-short.enum.js +21 -0
- package/esm2015/lib/models/financial-year/month-number.enum.js +21 -0
- package/esm2015/lib/models/financial-year/months.const.js +2 -0
- package/esm2015/lib/models/firm/firm.js +30 -0
- package/esm2015/lib/models/income-position/income-position.js +9 -0
- package/esm2015/lib/models/income-source/income-source-chart-data.js +45 -0
- package/esm2015/lib/models/income-source/income-source-forecast.js +31 -0
- package/esm2015/lib/models/income-source/income-source-type.js +27 -0
- package/esm2015/lib/models/income-source/income-source.js +51 -0
- package/esm2015/lib/models/income-source/salary-forecast.js +14 -0
- package/esm2015/lib/models/loan/loan-max-number-of-payments.enum.js +10 -0
- package/esm2015/lib/models/loan/loan-payment.js +12 -0
- package/esm2015/lib/models/loan/loan-payout.js +11 -0
- package/esm2015/lib/models/loan/loan.js +39 -0
- package/esm2015/lib/models/logbook/default-vehicle-expense.js +20 -0
- package/esm2015/lib/models/logbook/logbook-period.js +11 -0
- package/esm2015/lib/models/logbook/logbook-purpose-options.const.js +6 -0
- package/esm2015/lib/models/logbook/vehicle-claim.js +26 -0
- package/esm2015/lib/models/logbook/vehicle-logbook.js +16 -0
- package/esm2015/lib/models/logbook/vehicle.js +39 -0
- package/esm2015/lib/models/notification/notification-event-types.const.js +43 -0
- package/esm2015/lib/models/notification/notification.js +63 -0
- package/esm2015/lib/models/phone/phone.js +12 -0
- package/esm2015/lib/models/property/calculation-form-item.js +17 -0
- package/esm2015/lib/models/property/calculation-form-type.enum.js +9 -0
- package/esm2015/lib/models/property/capital-costs-itmes.const.js +57 -0
- package/esm2015/lib/models/property/corelogic-suggestion.js +7 -0
- package/esm2015/lib/models/property/ownership-filter-options.enum.js +10 -0
- package/esm2015/lib/models/property/property-capital-cost.js +4 -0
- package/esm2015/lib/models/property/property-category-movement.js +20 -0
- package/esm2015/lib/models/property/property-category.js +8 -0
- package/esm2015/lib/models/property/property-document.js +17 -0
- package/esm2015/lib/models/property/property-equity-chart-data.js +155 -0
- package/esm2015/lib/models/property/property-equity-chart-item.js +24 -0
- package/esm2015/lib/models/property/property-equity-chart-type.enum.js +6 -0
- package/esm2015/lib/models/property/property-forecast.js +52 -0
- package/esm2015/lib/models/property/property-owner.js +48 -0
- package/esm2015/lib/models/property/property-sold.js +12 -0
- package/esm2015/lib/models/property/property-subscription.js +13 -0
- package/esm2015/lib/models/property/property-valuation.js +23 -0
- package/esm2015/lib/models/property/property.js +130 -0
- package/esm2015/lib/models/registration-invite/registration-invite.js +10 -0
- package/esm2015/lib/models/service-subscription/module-url-list.const.js +12 -0
- package/esm2015/lib/models/service-subscription/service-payment.js +10 -0
- package/esm2015/lib/models/service-subscription/service-price.js +10 -0
- package/esm2015/lib/models/service-subscription/service-product.js +10 -0
- package/esm2015/lib/models/service-subscription/service-subscription-item.js +13 -0
- package/esm2015/lib/models/service-subscription/service-subscription.js +128 -0
- package/esm2015/lib/models/service-subscription/subscription-description.const.js +8 -0
- package/esm2015/lib/models/service-subscription/subscription-title.const.js +8 -0
- package/esm2015/lib/models/service-subscription/subscription-type.enum.js +8 -0
- package/esm2015/lib/models/tax-review/tax-review.js +86 -0
- package/esm2015/lib/models/tax-summary/tax-return-category-item-details.js +9 -0
- package/esm2015/lib/models/tax-summary/tax-return-category-item.js +15 -0
- package/esm2015/lib/models/tax-summary/tax-summary-section.js +30 -0
- package/esm2015/lib/models/tax-summary/tax-summary-type.enum.js +9 -0
- package/esm2015/lib/models/tax-summary/tax-summary.js +71 -0
- package/esm2015/lib/models/transaction/income-amount-type.enum.js +9 -0
- package/esm2015/lib/models/transaction/transaction-allocation.js +21 -0
- package/esm2015/lib/models/transaction/transaction-metadata.js +10 -0
- package/esm2015/lib/models/transaction/transaction-receipt.js +11 -0
- package/esm2015/lib/models/transaction/transaction.js +214 -0
- package/esm2015/lib/models/user/my-account-history-initiated-by.enum.js +6 -0
- package/esm2015/lib/models/user/my-account-history-status.enum.js +6 -0
- package/esm2015/lib/models/user/my-account-history-type.enum.js +7 -0
- package/esm2015/lib/models/user/my-account-history.js +3 -0
- package/esm2015/lib/models/user/occupation.js +4 -0
- package/esm2015/lib/models/user/user-roles.const.js +13 -0
- package/esm2015/lib/models/user/user-to-register.js +6 -0
- package/esm2015/lib/models/user/user-work-position.const.js +7 -0
- package/esm2015/lib/models/user/user.js +138 -0
- package/esm2015/lib/models/user-event/user-event-category.enum.js +11 -0
- package/esm2015/lib/models/user-event/user-event-category.js +6 -0
- package/esm2015/lib/models/user-event/user-event-setting-field.enum.js +10 -0
- package/esm2015/lib/models/user-event/user-event-setting.js +18 -0
- package/esm2015/lib/models/user-event/user-event-type.js +24 -0
- package/esm2015/lib/services/address/address.service.js +39 -0
- package/esm2015/lib/services/asset/assets.service.js +51 -0
- package/esm2015/lib/services/auth/auth.service.js +46 -0
- package/esm2015/lib/services/auth/jwt.service.js +36 -0
- package/esm2015/lib/services/bank/bank-account-calculation.service.js +30 -0
- package/esm2015/lib/services/bank/bank-account.service.js +112 -0
- package/esm2015/lib/services/bank/bank-connection.service.js +43 -0
- package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +65 -0
- package/esm2015/lib/services/bank/bank-transaction.service.js +89 -0
- package/esm2015/lib/services/bank/bank.service.js +24 -0
- package/esm2015/lib/services/bank/basiq.service.js +94 -0
- package/esm2015/lib/services/base-rest.service.js +190 -0
- package/esm2015/lib/services/borrowing-expense/borrowing-expense.service.js +73 -0
- package/esm2015/lib/services/chart-accounts/chart-accounts-depreciations.service.js +38 -0
- package/esm2015/lib/services/chart-accounts/chart-accounts.service.js +89 -0
- package/esm2015/lib/services/chat/chat.service.js +77 -0
- package/esm2015/lib/services/chat/message-document.service.js +118 -0
- package/esm2015/lib/services/chat/message.service.js +65 -0
- package/esm2015/lib/services/client/client-invite.service.js +102 -0
- package/esm2015/lib/services/client/client-movement.service.js +98 -0
- package/esm2015/lib/services/client/client-portfolio-report.service.js +37 -0
- package/esm2015/lib/services/depreciation/capital-project.service.js +62 -0
- package/esm2015/lib/services/depreciation/depreciation.service.js +146 -0
- package/esm2015/lib/services/document/document-folder.service.js +84 -0
- package/esm2015/lib/services/employee/employee-invite.service.js +53 -0
- package/esm2015/lib/services/employee/employee.service.js +39 -0
- package/esm2015/lib/services/event/event-dispatcher.service.js +30 -0
- package/esm2015/lib/services/event/sse.service.js +46 -0
- package/esm2015/lib/services/firm/firm.service.js +79 -0
- package/esm2015/lib/services/header-title/header-title.service.js +28 -0
- package/esm2015/lib/services/income-source/income-source-forecast.service.js +90 -0
- package/esm2015/lib/services/income-source/income-source.service.js +109 -0
- package/esm2015/lib/services/income-source/salary-forecast.service.js +90 -0
- package/esm2015/lib/services/intercom/intercom.service.js +41 -0
- package/esm2015/lib/services/loan/loan.service.js +145 -0
- package/esm2015/lib/services/notification/notification.service.js +65 -0
- package/esm2015/lib/services/preloader/preloader.service.js +30 -0
- package/esm2015/lib/services/property/corelogic.service.js +46 -0
- package/esm2015/lib/services/property/property-calculation.service.js +121 -0
- package/esm2015/lib/services/property/property-capital-cost.service.js +46 -0
- package/esm2015/lib/services/property/property-category.service.js +23 -0
- package/esm2015/lib/services/property/property-document.service.js +68 -0
- package/esm2015/lib/services/property/property-owner.service.js +123 -0
- package/esm2015/lib/services/property/property-sold.service.js +23 -0
- package/esm2015/lib/services/property/property.service.js +115 -0
- package/esm2015/lib/services/subscription/subscription.service.js +138 -0
- package/esm2015/lib/services/tax-review/tax-review-history.service.js +41 -0
- package/esm2015/lib/services/tax-review/tax-review.service.js +103 -0
- package/esm2015/lib/services/tax-summary/tax-summary.service.js +71 -0
- package/esm2015/lib/services/transaction/transaction-allocation.service.js +85 -0
- package/esm2015/lib/services/transaction/transaction-calculation.service.js +47 -0
- package/esm2015/lib/services/transaction/transaction.service.js +319 -0
- package/esm2015/lib/services/user/occupation.service.js +45 -0
- package/esm2015/lib/services/user/user-switcher.service.js +37 -0
- package/esm2015/lib/services/user/user.service.js +124 -0
- package/esm2015/lib/services/user-event/user-event-setting.service.js +59 -0
- package/esm2015/lib/services/user-event/user-event-type.service.js +29 -0
- package/esm2015/lib/services/work/work-tank.service.js +236 -0
- package/esm2015/lib/tt-core.module.js +32 -0
- package/esm2015/public-api.js +337 -0
- package/esm2015/taxtank-core.js +5 -0
- package/fesm2015/taxtank-core.js +9781 -0
- package/fesm2015/taxtank-core.js.map +1 -0
- package/lib/collections/abstract.collection.d.ts +40 -0
- package/lib/collections/bank-account.collection.d.ts +67 -0
- package/lib/collections/bank-transaction.collection.d.ts +72 -0
- package/lib/collections/client-movement.collection.d.ts +17 -0
- package/lib/collections/client-portfolio-report.collection.d.ts +26 -0
- package/lib/collections/client.collection.d.ts +4 -0
- package/lib/collections/collection-dictionary.d.ts +44 -0
- package/lib/collections/depreciation-forecast.collection.d.ts +11 -0
- package/lib/collections/depreciation.collection.d.ts +27 -0
- package/lib/collections/employee.collection.d.ts +6 -0
- package/lib/collections/income-source.collection.d.ts +25 -0
- package/lib/collections/loan.collection.d.ts +14 -0
- package/lib/collections/logbook.collection.d.ts +19 -0
- package/lib/collections/message-document.collection.d.ts +11 -0
- package/lib/collections/message.collection.d.ts +14 -0
- package/lib/collections/property.collection.d.ts +33 -0
- package/lib/collections/service-price.collection.d.ts +6 -0
- package/lib/collections/service-subscription.collection.d.ts +8 -0
- package/lib/collections/tax-return-category-item.collection.d.ts +68 -0
- package/lib/collections/tax-review.collection.d.ts +35 -0
- package/lib/collections/transaction-allocation.collection.d.ts +23 -0
- package/lib/collections/transaction.collection.d.ts +76 -0
- package/lib/collections/user-event-setting.collection.d.ts +30 -0
- package/lib/db/Enums/address-type.enum.d.ts +4 -0
- package/lib/db/Enums/bank-account-status.enum.d.ts +4 -0
- package/lib/db/Enums/bank-account-type.enum.d.ts +10 -0
- package/lib/db/Enums/bank-connection-status.enum.d.ts +5 -0
- package/lib/db/Enums/bank-transaction-type.enum.d.ts +4 -0
- package/lib/db/Enums/chart-accounts-category.enum.d.ts +13 -0
- package/lib/db/Enums/chart-accounts-etp.enum.d.ts +7 -0
- package/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.d.ts +6 -0
- package/lib/db/Enums/chart-accounts-heading-taxable.enum.d.ts +6 -0
- package/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.d.ts +4 -0
- package/lib/db/Enums/chart-accounts-list.enum.d.ts +19 -0
- package/lib/db/Enums/chart-accounts-metadata-list.enum.d.ts +14 -0
- package/lib/db/Enums/chart-accounts-metadata-type.enum.d.ts +4 -0
- package/lib/db/Enums/chart-accounts-type.enum.d.ts +4 -0
- package/lib/db/Enums/chat-status.enum.d.ts +4 -0
- package/lib/db/Enums/client-details-medicare-exemption.enum.d.ts +5 -0
- package/lib/db/Enums/client-details-work-depreciation-calculation.enum.d.ts +4 -0
- package/lib/db/Enums/client-details-working-holiday-maker.enum.d.ts +5 -0
- package/lib/db/Enums/client-invite-status.enum.d.ts +4 -0
- package/lib/db/Enums/client-invite-type.enum.d.ts +4 -0
- package/lib/db/Enums/depreciation-calculation-percent.enum.d.ts +7 -0
- package/lib/db/Enums/depreciation-calculation.enum.d.ts +7 -0
- package/lib/db/Enums/depreciation-type.enum.d.ts +6 -0
- package/lib/db/Enums/depreciation-write-off-amount.enum.d.ts +4 -0
- package/lib/db/Enums/firm-type.enum.d.ts +4 -0
- package/lib/db/Enums/income-source-type-list-other.enum.d.ts +6 -0
- package/lib/db/Enums/income-source-type-list-salary.enum.d.ts +3 -0
- package/lib/db/Enums/income-source-type-list-work.enum.d.ts +8 -0
- package/lib/db/Enums/income-source-type.enum.d.ts +5 -0
- package/lib/db/Enums/invite-status.enum.d.ts +5 -0
- package/lib/db/Enums/loan-bank-type.enum.d.ts +10 -0
- package/lib/db/Enums/loan-frequency.enum.d.ts +6 -0
- package/lib/db/Enums/loan-interest-type.enum.d.ts +4 -0
- package/lib/db/Enums/loan-payout-type.enum.d.ts +4 -0
- package/lib/db/Enums/loan-repayment-frequency.enum.d.ts +5 -0
- package/lib/db/Enums/loan-repayment-type.enum.d.ts +4 -0
- package/lib/db/Enums/loan-type.enum.d.ts +12 -0
- package/lib/db/Enums/loan-vehicle-type.enum.d.ts +5 -0
- package/lib/db/Enums/phone-type.enum.d.ts +4 -0
- package/lib/db/Enums/property-depreciation-calculation.enum.d.ts +4 -0
- package/lib/db/Enums/property-owner-access.enum.d.ts +4 -0
- package/lib/db/Enums/property-owner-status.enum.d.ts +5 -0
- package/lib/db/Enums/registration-invite-status.enum.d.ts +4 -0
- package/lib/db/Enums/salary-forecast-frequency.enum.d.ts +6 -0
- package/lib/db/Enums/service-notification-status.enum.d.ts +5 -0
- package/lib/db/Enums/service-notification-type.enum.d.ts +4 -0
- package/lib/db/Enums/service-payment-status.enum.d.ts +4 -0
- package/lib/db/Enums/service-price-recurring-interval.enum.d.ts +6 -0
- package/lib/db/Enums/service-price-type.enum.d.ts +4 -0
- package/lib/db/Enums/service-subscription-status.enum.d.ts +8 -0
- package/lib/db/Enums/spare-document-spare-type.enum.d.ts +4 -0
- package/lib/db/Enums/tank-type.enum.d.ts +5 -0
- package/lib/db/Enums/tax-calculation-medicare-exemption.enum.d.ts +4 -0
- package/lib/db/Enums/tax-calculation-type.enum.d.ts +12 -0
- package/lib/db/Enums/tax-return-category-list.enum.d.ts +26 -0
- package/lib/db/Enums/tax-return-category-section.enum.d.ts +6 -0
- package/lib/db/Enums/tax-review-status.enum.d.ts +11 -0
- package/lib/db/Enums/tax-summary-list.enum.d.ts +15 -0
- package/lib/db/Enums/tax-summary-section.enum.d.ts +6 -0
- package/lib/db/Enums/tax-summary-tax-summary.enum.d.ts +15 -0
- package/lib/db/Enums/ticket-feedback.enum.d.ts +4 -0
- package/lib/db/Enums/ticket-status.enum.d.ts +7 -0
- package/lib/db/Enums/ticket-types.enum.d.ts +3 -0
- package/lib/db/Enums/transaction-operation.enum.d.ts +5 -0
- package/lib/db/Enums/transaction-source.enum.d.ts +4 -0
- package/lib/db/Enums/transaction-type.enum.d.ts +4 -0
- package/lib/db/Enums/user-event-status.enum.d.ts +6 -0
- package/lib/db/Enums/user-event-type-frequency.enum.d.ts +6 -0
- package/lib/db/Enums/user-event-type-reminder-type.enum.d.ts +6 -0
- package/lib/db/Enums/user-event-type-reminder.enum.d.ts +5 -0
- package/lib/db/Enums/user-event-type-type.enum.d.ts +33 -0
- package/lib/db/Enums/user-medicare-exemption.enum.d.ts +5 -0
- package/lib/db/Enums/user-roles.enum.d.ts +13 -0
- package/lib/db/Enums/user-status.enum.d.ts +6 -0
- package/lib/db/Enums/user-title.enum.d.ts +7 -0
- package/lib/db/Enums/user-work-depreciation-calculation.enum.d.ts +4 -0
- package/lib/db/Enums/user-working-holiday-maker.enum.d.ts +5 -0
- package/lib/db/Enums/vehicle-claim-method.enum.d.ts +4 -0
- package/lib/db/Enums/vehicle-logbook-purpose.enum.d.ts +4 -0
- package/lib/db/Models/address.d.ts +19 -0
- package/lib/db/Models/bank-account-balance.d.ts +12 -0
- package/lib/db/Models/bank-account-property.d.ts +8 -0
- package/lib/db/Models/bank-account.d.ts +33 -0
- package/lib/db/Models/bank-connection.d.ts +14 -0
- package/lib/db/Models/bank-transaction-import.d.ts +11 -0
- package/lib/db/Models/bank-transaction.d.ts +16 -0
- package/lib/db/Models/bank.d.ts +11 -0
- package/lib/db/Models/basiq-job.d.ts +8 -0
- package/lib/db/Models/borrowing-expense-loan.d.ts +14 -0
- package/lib/db/Models/borrowing-expense.d.ts +7 -0
- package/lib/db/Models/capital-cost-property.d.ts +13 -0
- package/lib/db/Models/capital-cost.d.ts +4 -0
- package/lib/db/Models/chart-accounts-depreciation.d.ts +10 -0
- package/lib/db/Models/chart-accounts-heading.d.ts +6 -0
- package/lib/db/Models/chart-accounts-metadata.d.ts +11 -0
- package/lib/db/Models/chart-accounts-value.d.ts +12 -0
- package/lib/db/Models/chart-accounts.d.ts +23 -0
- package/lib/db/Models/chat.d.ts +17 -0
- package/lib/db/Models/client-details.d.ts +29 -0
- package/lib/db/Models/client-invite.d.ts +16 -0
- package/lib/db/Models/client-movement.d.ts +12 -0
- package/lib/db/Models/country.d.ts +5 -0
- package/lib/db/Models/depreciation-capital-project.d.ts +13 -0
- package/lib/db/Models/depreciation-forecast.d.ts +18 -0
- package/lib/db/Models/depreciation-receipt.d.ts +11 -0
- package/lib/db/Models/depreciation.d.ts +42 -0
- package/lib/db/Models/document-folder.d.ts +9 -0
- package/lib/db/Models/document.d.ts +11 -0
- package/lib/db/Models/employee-details.d.ts +7 -0
- package/lib/db/Models/employee-invite.d.ts +9 -0
- package/lib/db/Models/financial-data-system.d.ts +9 -0
- package/lib/db/Models/firm.d.ts +28 -0
- package/lib/db/Models/income-source-forecast.d.ts +12 -0
- package/lib/db/Models/income-source-type.d.ts +8 -0
- package/lib/db/Models/income-source.d.ts +20 -0
- package/lib/db/Models/loan-payout.d.ts +12 -0
- package/lib/db/Models/loan.d.ts +33 -0
- package/lib/db/Models/message-document.d.ts +15 -0
- package/lib/db/Models/message.d.ts +15 -0
- package/lib/db/Models/occupation.d.ts +5 -0
- package/lib/db/Models/phone.d.ts +12 -0
- package/lib/db/Models/property-capital-cost.d.ts +13 -0
- package/lib/db/Models/property-category-movement.d.ts +17 -0
- package/lib/db/Models/property-category.d.ts +13 -0
- package/lib/db/Models/property-document.d.ts +13 -0
- package/lib/db/Models/property-forecast.d.ts +14 -0
- package/lib/db/Models/property-owner.d.ts +20 -0
- package/lib/db/Models/property-sold.d.ts +12 -0
- package/lib/db/Models/property-subscription.d.ts +9 -0
- package/lib/db/Models/property-valuation.d.ts +12 -0
- package/lib/db/Models/property.d.ts +41 -0
- package/lib/db/Models/registration-invite.d.ts +12 -0
- package/lib/db/Models/salary-forecast.d.ts +15 -0
- package/lib/db/Models/service-notification.d.ts +13 -0
- package/lib/db/Models/service-payment.d.ts +11 -0
- package/lib/db/Models/service-price.d.ts +15 -0
- package/lib/db/Models/service-product.d.ts +12 -0
- package/lib/db/Models/service-subscription-item.d.ts +9 -0
- package/lib/db/Models/service-subscription.d.ts +14 -0
- package/lib/db/Models/tax-return-category.d.ts +12 -0
- package/lib/db/Models/tax-return-item.d.ts +15 -0
- package/lib/db/Models/tax-return.d.ts +8 -0
- package/lib/db/Models/tax-review.d.ts +13 -0
- package/lib/db/Models/ticket.d.ts +19 -0
- package/lib/db/Models/transaction-allocation.d.ts +8 -0
- package/lib/db/Models/transaction-base.d.ts +22 -0
- package/lib/db/Models/transaction-metadata.d.ts +11 -0
- package/lib/db/Models/transaction-receipt.d.ts +11 -0
- package/lib/db/Models/transaction.d.ts +43 -0
- package/lib/db/Models/user-event-setting.d.ts +10 -0
- package/lib/db/Models/user-event-type.d.ts +15 -0
- package/lib/db/Models/user-event.d.ts +13 -0
- package/lib/db/Models/user.d.ts +51 -0
- package/lib/db/Models/vehicle-claim.d.ts +11 -0
- package/lib/db/Models/vehicle-logbook.d.ts +16 -0
- package/lib/db/Models/vehicle.d.ts +8 -0
- package/lib/functions/array/index.d.ts +3 -0
- package/lib/functions/array/replace.d.ts +1 -0
- package/lib/functions/array/sort-deep.d.ts +1 -0
- package/lib/functions/array/sort.d.ts +1 -0
- package/lib/functions/clone-deep.d.ts +1 -0
- package/lib/functions/create-date.d.ts +5 -0
- package/lib/functions/enum-to-list.d.ts +2 -0
- package/lib/functions/get-doc-icon.d.ts +7 -0
- package/lib/functions/mat-options-functions.d.ts +2 -0
- package/lib/functions/mat-sort-options.d.ts +7 -0
- package/lib/functions/round-to.d.ts +6 -0
- package/lib/functions/tax-review-filter-predicate.d.ts +7 -0
- package/lib/interfaces/asset-entity-type.enum.d.ts +10 -0
- package/lib/interfaces/asset-type.enum.d.ts +8 -0
- package/lib/interfaces/asset.interface.d.ts +17 -0
- package/lib/interfaces/chart-data.interface.d.ts +10 -0
- package/lib/interfaces/chart-serie.interface.d.ts +8 -0
- package/lib/interfaces/document.interface.d.ts +18 -0
- package/lib/interfaces/documentable.interface.d.ts +8 -0
- package/lib/interfaces/event-listener.interface.d.ts +9 -0
- package/lib/interfaces/income-source-forecast.interface.d.ts +7 -0
- package/lib/interfaces/option.interface.d.ts +4 -0
- package/lib/interfaces/photoable.d.ts +13 -0
- package/lib/interfaces/receipt.interface.d.ts +12 -0
- package/lib/interfaces/salary-forecast.interface.d.ts +16 -0
- package/lib/interfaces/tank.interface.d.ts +7 -0
- package/lib/models/address/address.d.ts +11 -0
- package/lib/models/address/country.d.ts +11 -0
- package/lib/models/bank/bank-account-chart-data.d.ts +17 -0
- package/lib/models/bank/bank-account-property.d.ts +5 -0
- package/lib/models/bank/bank-account-types.const.d.ts +7 -0
- package/lib/models/bank/bank-account.d.ts +72 -0
- package/lib/models/bank/bank-connection.d.ts +11 -0
- package/lib/models/bank/bank-transaction-chart-data.d.ts +30 -0
- package/lib/models/bank/bank-transaction-summary-fields.enum.d.ts +4 -0
- package/lib/models/bank/bank-transaction.d.ts +38 -0
- package/lib/models/bank/bank.d.ts +6 -0
- package/lib/models/bank/basiq-job.d.ts +3 -0
- package/lib/models/bank/basiq-token.d.ts +9 -0
- package/lib/models/bank/type-loan.const.d.ts +2 -0
- package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts +3 -0
- package/lib/models/borrowing-expense/borrowing-expense.d.ts +3 -0
- package/lib/models/chart/chart-data.d.ts +9 -0
- package/lib/models/chart/chart-serie.d.ts +8 -0
- package/lib/models/chart-accounts/chart-accounts-categories.const.d.ts +4 -0
- package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts +7 -0
- package/lib/models/chart-accounts/chart-accounts-heading.d.ts +5 -0
- package/lib/models/chart-accounts/chart-accounts-metadata.d.ts +8 -0
- package/lib/models/chart-accounts/chart-accounts-tax-labels.enum.d.ts +5 -0
- package/lib/models/chart-accounts/chart-accounts.d.ts +66 -0
- package/lib/models/chat/chat-view-type.enum.d.ts +4 -0
- package/lib/models/chat/chat.d.ts +10 -0
- package/lib/models/chat/message-document.d.ts +11 -0
- package/lib/models/chat/message.d.ts +20 -0
- package/lib/models/client/client-details.d.ts +3 -0
- package/lib/models/client/client-invite.d.ts +34 -0
- package/lib/models/client/client-movement.d.ts +12 -0
- package/lib/models/client/client-portfolio-chart-data.d.ts +11 -0
- package/lib/models/client/client-portfolio-report.d.ts +10 -0
- package/lib/models/depreciation/depreciation-capital-project.d.ts +5 -0
- package/lib/models/depreciation/depreciation-forecast.d.ts +8 -0
- package/lib/models/depreciation/depreciation-group-item.d.ts +10 -0
- package/lib/models/depreciation/depreciation-group.d.ts +11 -0
- package/lib/models/depreciation/depreciation-group.enum.d.ts +7 -0
- package/lib/models/depreciation/depreciation-groups.const.d.ts +9 -0
- package/lib/models/depreciation/depreciation-receipt.d.ts +8 -0
- package/lib/models/depreciation/depreciation.d.ts +69 -0
- package/lib/models/document/document-api-url-prefix.enum.d.ts +7 -0
- package/lib/models/document/document-file-types.const.d.ts +3 -0
- package/lib/models/document/document-folder.d.ts +7 -0
- package/lib/models/document/document.d.ts +21 -0
- package/lib/models/employee/employee-details.d.ts +5 -0
- package/lib/models/employee/employee-invite.d.ts +7 -0
- package/lib/models/endpoint/endpoint.d.ts +22 -0
- package/lib/models/endpoint/endpoints.const.d.ts +7 -0
- package/lib/models/event/app-event-type.enum.d.ts +37 -0
- package/lib/models/event/app-event.d.ts +9 -0
- package/lib/models/file/icons-file.enum.d.ts +5 -0
- package/lib/models/financial-year/financial-year.d.ts +19 -0
- package/lib/models/financial-year/month-name-short.enum.d.ts +19 -0
- package/lib/models/financial-year/month-number.enum.d.ts +19 -0
- package/lib/models/financial-year/months.const.d.ts +1 -0
- package/lib/models/firm/firm.d.ts +18 -0
- package/lib/models/income-position/income-position.d.ts +9 -0
- package/lib/models/income-source/income-source-chart-data.d.ts +14 -0
- package/lib/models/income-source/income-source-forecast.d.ts +22 -0
- package/lib/models/income-source/income-source-type.d.ts +8 -0
- package/lib/models/income-source/income-source.d.ts +27 -0
- package/lib/models/income-source/salary-forecast.d.ts +16 -0
- package/lib/models/loan/loan-max-number-of-payments.enum.d.ts +8 -0
- package/lib/models/loan/loan-payment.d.ts +13 -0
- package/lib/models/loan/loan-payout.d.ts +9 -0
- package/lib/models/loan/loan.d.ts +20 -0
- package/lib/models/logbook/default-vehicle-expense.d.ts +5 -0
- package/lib/models/logbook/logbook-period.d.ts +6 -0
- package/lib/models/logbook/logbook-purpose-options.const.d.ts +4 -0
- package/lib/models/logbook/vehicle-claim.d.ts +15 -0
- package/lib/models/logbook/vehicle-logbook.d.ts +6 -0
- package/lib/models/logbook/vehicle.d.ts +12 -0
- package/lib/models/notification/notification-event-types.const.d.ts +7 -0
- package/lib/models/notification/notification.d.ts +16 -0
- package/lib/models/phone/phone.d.ts +6 -0
- package/lib/models/property/calculation-form-item.d.ts +15 -0
- package/lib/models/property/calculation-form-type.enum.d.ts +7 -0
- package/lib/models/property/capital-costs-itmes.const.d.ts +2 -0
- package/lib/models/property/corelogic-suggestion.d.ts +18 -0
- package/lib/models/property/ownership-filter-options.enum.d.ts +8 -0
- package/lib/models/property/property-capital-cost.d.ts +3 -0
- package/lib/models/property/property-category-movement.d.ts +9 -0
- package/lib/models/property/property-category.d.ts +4 -0
- package/lib/models/property/property-document.d.ts +14 -0
- package/lib/models/property/property-equity-chart-data.d.ts +62 -0
- package/lib/models/property/property-equity-chart-item.d.ts +19 -0
- package/lib/models/property/property-equity-chart-type.enum.d.ts +4 -0
- package/lib/models/property/property-forecast.d.ts +28 -0
- package/lib/models/property/property-owner.d.ts +21 -0
- package/lib/models/property/property-sold.d.ts +5 -0
- package/lib/models/property/property-subscription.d.ts +6 -0
- package/lib/models/property/property-valuation.d.ts +9 -0
- package/lib/models/property/property.d.ts +55 -0
- package/lib/models/registration-invite/registration-invite.d.ts +6 -0
- package/lib/models/service-subscription/module-url-list.const.d.ts +6 -0
- package/lib/models/service-subscription/service-payment.d.ts +5 -0
- package/lib/models/service-subscription/service-price.d.ts +5 -0
- package/lib/models/service-subscription/service-product.d.ts +5 -0
- package/lib/models/service-subscription/service-subscription-item.d.ts +6 -0
- package/lib/models/service-subscription/service-subscription.d.ts +55 -0
- package/lib/models/service-subscription/subscription-description.const.d.ts +3 -0
- package/lib/models/service-subscription/subscription-title.const.d.ts +3 -0
- package/lib/models/service-subscription/subscription-type.enum.d.ts +6 -0
- package/lib/models/tax-review/tax-review.d.ts +52 -0
- package/lib/models/tax-summary/tax-return-category-item-details.d.ts +13 -0
- package/lib/models/tax-summary/tax-return-category-item.d.ts +18 -0
- package/lib/models/tax-summary/tax-summary-section.d.ts +12 -0
- package/lib/models/tax-summary/tax-summary-type.enum.d.ts +7 -0
- package/lib/models/tax-summary/tax-summary.d.ts +44 -0
- package/lib/models/transaction/income-amount-type.enum.d.ts +7 -0
- package/lib/models/transaction/transaction-allocation.d.ts +12 -0
- package/lib/models/transaction/transaction-metadata.d.ts +5 -0
- package/lib/models/transaction/transaction-receipt.d.ts +8 -0
- package/lib/models/transaction/transaction.d.ts +98 -0
- package/lib/models/user/my-account-history-initiated-by.enum.d.ts +4 -0
- package/lib/models/user/my-account-history-status.enum.d.ts +4 -0
- package/lib/models/user/my-account-history-type.enum.d.ts +5 -0
- package/lib/models/user/my-account-history.d.ts +11 -0
- package/lib/models/user/occupation.d.ts +3 -0
- package/lib/models/user/user-roles.const.d.ts +4 -0
- package/lib/models/user/user-to-register.d.ts +7 -0
- package/lib/models/user/user-work-position.const.d.ts +3 -0
- package/lib/models/user/user.d.ts +64 -0
- package/lib/models/user-event/user-event-category.d.ts +8 -0
- package/lib/models/user-event/user-event-category.enum.d.ts +9 -0
- package/lib/models/user-event/user-event-setting-field.enum.d.ts +8 -0
- package/lib/models/user-event/user-event-setting.d.ts +6 -0
- package/lib/models/user-event/user-event-type.d.ts +5 -0
- package/lib/services/address/address.service.d.ts +14 -0
- package/lib/services/asset/assets.service.d.ts +34 -0
- package/lib/services/auth/auth.service.d.ts +17 -0
- package/lib/services/auth/jwt.service.d.ts +16 -0
- package/lib/services/bank/bank-account-calculation.service.d.ts +19 -0
- package/lib/services/bank/bank-account.service.d.ts +47 -0
- package/lib/services/bank/bank-connection.service.d.ts +22 -0
- package/lib/services/bank/bank-transaction-calculation.service.d.ts +41 -0
- package/lib/services/bank/bank-transaction.service.d.ts +38 -0
- package/lib/services/bank/bank.service.d.ts +14 -0
- package/lib/services/bank/basiq.service.d.ts +42 -0
- package/lib/services/base-rest.service.d.ts +91 -0
- package/lib/services/borrowing-expense/borrowing-expense.service.d.ts +19 -0
- package/lib/services/chart-accounts/chart-accounts-depreciations.service.d.ts +19 -0
- package/lib/services/chart-accounts/chart-accounts.service.d.ts +37 -0
- package/lib/services/chat/chat.service.d.ts +31 -0
- package/lib/services/chat/message-document.service.d.ts +50 -0
- package/lib/services/chat/message.service.d.ts +31 -0
- package/lib/services/client/client-invite.service.d.ts +36 -0
- package/lib/services/client/client-movement.service.d.ts +40 -0
- package/lib/services/client/client-portfolio-report.service.d.ts +16 -0
- package/lib/services/depreciation/capital-project.service.d.ts +20 -0
- package/lib/services/depreciation/depreciation.service.d.ts +59 -0
- package/lib/services/document/document-folder.service.d.ts +40 -0
- package/lib/services/employee/employee-invite.service.d.ts +21 -0
- package/lib/services/employee/employee.service.d.ts +16 -0
- package/lib/services/event/event-dispatcher.service.d.ts +17 -0
- package/lib/services/event/sse.service.d.ts +16 -0
- package/lib/services/firm/firm.service.d.ts +27 -0
- package/lib/services/header-title/header-title.service.d.ts +11 -0
- package/lib/services/income-source/income-source-forecast.service.d.ts +36 -0
- package/lib/services/income-source/income-source.service.d.ts +48 -0
- package/lib/services/income-source/salary-forecast.service.d.ts +37 -0
- package/lib/services/intercom/intercom.service.d.ts +21 -0
- package/lib/services/loan/loan.service.d.ts +63 -0
- package/lib/services/notification/notification.service.d.ts +31 -0
- package/lib/services/preloader/preloader.service.d.ts +12 -0
- package/lib/services/property/corelogic.service.d.ts +15 -0
- package/lib/services/property/property-calculation.service.d.ts +33 -0
- package/lib/services/property/property-capital-cost.service.d.ts +20 -0
- package/lib/services/property/property-category.service.d.ts +13 -0
- package/lib/services/property/property-document.service.d.ts +31 -0
- package/lib/services/property/property-owner.service.d.ts +52 -0
- package/lib/services/property/property-sold.service.d.ts +13 -0
- package/lib/services/property/property.service.d.ts +50 -0
- package/lib/services/subscription/subscription.service.d.ts +47 -0
- package/lib/services/tax-review/tax-review-history.service.d.ts +19 -0
- package/lib/services/tax-review/tax-review.service.d.ts +44 -0
- package/lib/services/tax-summary/tax-summary.service.d.ts +31 -0
- package/lib/services/transaction/transaction-allocation.service.d.ts +43 -0
- package/lib/services/transaction/transaction-calculation.service.d.ts +29 -0
- package/lib/services/transaction/transaction.service.d.ts +92 -0
- package/lib/services/user/occupation.service.d.ts +20 -0
- package/lib/services/user/user-switcher.service.d.ts +20 -0
- package/lib/services/user/user.service.d.ts +60 -0
- package/lib/services/user-event/user-event-setting.service.d.ts +22 -0
- package/lib/services/user-event/user-event-type.service.d.ts +17 -0
- package/lib/services/work/work-tank.service.d.ts +93 -0
- package/lib/tt-core.module.d.ts +9 -0
- package/package.json +17 -10
- package/public-api.d.ts +336 -0
- package/taxtank-core.d.ts +5 -0
- package/.browserslistrc +0 -16
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -12
- package/src/lib/collections/abstract.collection.ts +0 -83
- package/src/lib/collections/bank-account.collection.ts +0 -171
- package/src/lib/collections/bank-transaction.collection.ts +0 -153
- package/src/lib/collections/client-movement.collection.ts +0 -42
- package/src/lib/collections/client-portfolio-report.collection.ts +0 -47
- package/src/lib/collections/client.collection.ts +0 -5
- package/src/lib/collections/collection-dictionary.ts +0 -112
- package/src/lib/collections/depreciation-forecast.collection.ts +0 -25
- package/src/lib/collections/depreciation.collection.ts +0 -113
- package/src/lib/collections/employee.collection.ts +0 -14
- package/src/lib/collections/income-source.collection.ts +0 -44
- package/src/lib/collections/loan.collection.ts +0 -22
- package/src/lib/collections/logbook.collection.ts +0 -129
- package/src/lib/collections/message-document.collection.ts +0 -16
- package/src/lib/collections/message.collection.ts +0 -27
- package/src/lib/collections/property.collection.ts +0 -88
- package/src/lib/collections/service-price.collection.ts +0 -13
- package/src/lib/collections/service-subscription.collection.ts +0 -20
- package/src/lib/collections/tax-return-category-item.collection.ts +0 -148
- package/src/lib/collections/tax-review.collection.ts +0 -64
- package/src/lib/collections/transaction-allocation.collection.ts +0 -54
- package/src/lib/collections/transaction.collection.ts +0 -170
- package/src/lib/collections/user-event-setting.collection.ts +0 -70
- package/src/lib/db/Enums/address-type.enum.ts +0 -4
- package/src/lib/db/Enums/bank-account-status.enum.ts +0 -4
- package/src/lib/db/Enums/bank-account-type.enum.ts +0 -10
- package/src/lib/db/Enums/bank-connection-status.enum.ts +0 -5
- package/src/lib/db/Enums/bank-transaction-type.enum.ts +0 -4
- package/src/lib/db/Enums/chart-accounts-category.enum.ts +0 -13
- package/src/lib/db/Enums/chart-accounts-etp.enum.ts +0 -7
- package/src/lib/db/Enums/chart-accounts-heading-tax-deductible.enum.ts +0 -6
- package/src/lib/db/Enums/chart-accounts-heading-taxable.enum.ts +0 -6
- package/src/lib/db/Enums/chart-accounts-heading-vehicle-list.enum.ts +0 -4
- package/src/lib/db/Enums/chart-accounts-list.enum.ts +0 -19
- package/src/lib/db/Enums/chart-accounts-metadata-list.enum.ts +0 -14
- package/src/lib/db/Enums/chart-accounts-metadata-type.enum.ts +0 -4
- package/src/lib/db/Enums/chart-accounts-type.enum.ts +0 -4
- package/src/lib/db/Enums/chat-status.enum.ts +0 -4
- package/src/lib/db/Enums/client-details-medicare-exemption.enum.ts +0 -5
- package/src/lib/db/Enums/client-details-work-depreciation-calculation.enum.ts +0 -4
- package/src/lib/db/Enums/client-details-working-holiday-maker.enum.ts +0 -5
- package/src/lib/db/Enums/client-invite-status.enum.ts +0 -4
- package/src/lib/db/Enums/client-invite-type.enum.ts +0 -4
- package/src/lib/db/Enums/depreciation-calculation-percent.enum.ts +0 -7
- package/src/lib/db/Enums/depreciation-calculation.enum.ts +0 -7
- package/src/lib/db/Enums/depreciation-type.enum.ts +0 -6
- package/src/lib/db/Enums/depreciation-write-off-amount.enum.ts +0 -4
- package/src/lib/db/Enums/firm-type.enum.ts +0 -4
- package/src/lib/db/Enums/income-source-type-list-other.enum.ts +0 -6
- package/src/lib/db/Enums/income-source-type-list-salary.enum.ts +0 -3
- package/src/lib/db/Enums/income-source-type-list-work.enum.ts +0 -8
- package/src/lib/db/Enums/income-source-type.enum.ts +0 -5
- package/src/lib/db/Enums/invite-status.enum.ts +0 -5
- package/src/lib/db/Enums/loan-bank-type.enum.ts +0 -10
- package/src/lib/db/Enums/loan-frequency.enum.ts +0 -6
- package/src/lib/db/Enums/loan-interest-type.enum.ts +0 -4
- package/src/lib/db/Enums/loan-payout-type.enum.ts +0 -4
- package/src/lib/db/Enums/loan-repayment-frequency.enum.ts +0 -5
- package/src/lib/db/Enums/loan-repayment-type.enum.ts +0 -4
- package/src/lib/db/Enums/loan-type.enum.ts +0 -12
- package/src/lib/db/Enums/loan-vehicle-type.enum.ts +0 -5
- package/src/lib/db/Enums/phone-type.enum.ts +0 -4
- package/src/lib/db/Enums/property-depreciation-calculation.enum.ts +0 -4
- package/src/lib/db/Enums/property-owner-access.enum.ts +0 -4
- package/src/lib/db/Enums/property-owner-status.enum.ts +0 -5
- package/src/lib/db/Enums/registration-invite-status.enum.ts +0 -4
- package/src/lib/db/Enums/salary-forecast-frequency.enum.ts +0 -6
- package/src/lib/db/Enums/service-notification-status.enum.ts +0 -5
- package/src/lib/db/Enums/service-notification-type.enum.ts +0 -4
- package/src/lib/db/Enums/service-payment-status.enum.ts +0 -4
- package/src/lib/db/Enums/service-price-recurring-interval.enum.ts +0 -6
- package/src/lib/db/Enums/service-price-type.enum.ts +0 -4
- package/src/lib/db/Enums/service-subscription-status.enum.ts +0 -8
- package/src/lib/db/Enums/spare-document-spare-type.enum.ts +0 -4
- package/src/lib/db/Enums/tank-type.enum.ts +0 -5
- package/src/lib/db/Enums/tax-calculation-medicare-exemption.enum.ts +0 -4
- package/src/lib/db/Enums/tax-calculation-type.enum.ts +0 -12
- package/src/lib/db/Enums/tax-return-category-list.enum.ts +0 -26
- package/src/lib/db/Enums/tax-return-category-section.enum.ts +0 -6
- package/src/lib/db/Enums/tax-review-status.enum.ts +0 -11
- package/src/lib/db/Enums/tax-summary-list.enum.ts +0 -15
- package/src/lib/db/Enums/tax-summary-section.enum.ts +0 -6
- package/src/lib/db/Enums/tax-summary-tax-summary.enum.ts +0 -15
- package/src/lib/db/Enums/ticket-feedback.enum.ts +0 -4
- package/src/lib/db/Enums/ticket-status.enum.ts +0 -7
- package/src/lib/db/Enums/ticket-types.enum.ts +0 -3
- package/src/lib/db/Enums/transaction-operation.enum.ts +0 -5
- package/src/lib/db/Enums/transaction-source.enum.ts +0 -4
- package/src/lib/db/Enums/transaction-type.enum.ts +0 -4
- package/src/lib/db/Enums/user-event-status.enum.ts +0 -6
- package/src/lib/db/Enums/user-event-type-frequency.enum.ts +0 -6
- package/src/lib/db/Enums/user-event-type-reminder-type.enum.ts +0 -6
- package/src/lib/db/Enums/user-event-type-reminder.enum.ts +0 -5
- package/src/lib/db/Enums/user-event-type-type.enum.ts +0 -33
- package/src/lib/db/Enums/user-medicare-exemption.enum.ts +0 -5
- package/src/lib/db/Enums/user-roles.enum.ts +0 -13
- package/src/lib/db/Enums/user-status.enum.ts +0 -6
- package/src/lib/db/Enums/user-title.enum.ts +0 -7
- package/src/lib/db/Enums/user-work-depreciation-calculation.enum.ts +0 -4
- package/src/lib/db/Enums/user-working-holiday-maker.enum.ts +0 -5
- package/src/lib/db/Enums/vehicle-claim-method.enum.ts +0 -4
- package/src/lib/db/Enums/vehicle-logbook-purpose.enum.ts +0 -4
- package/src/lib/db/Models/address.ts +0 -20
- package/src/lib/db/Models/bank-account-balance.ts +0 -13
- package/src/lib/db/Models/bank-account-property.ts +0 -9
- package/src/lib/db/Models/bank-account.ts +0 -34
- package/src/lib/db/Models/bank-connection.ts +0 -15
- package/src/lib/db/Models/bank-provider-account.ts +0 -13
- package/src/lib/db/Models/bank-transaction-import.ts +0 -12
- package/src/lib/db/Models/bank-transaction-rule.ts +0 -26
- package/src/lib/db/Models/bank-transaction.ts +0 -17
- package/src/lib/db/Models/bank.ts +0 -12
- package/src/lib/db/Models/basiq-job.ts +0 -9
- package/src/lib/db/Models/borrowing-expense-loan.ts +0 -15
- package/src/lib/db/Models/borrowing-expense.ts +0 -7
- package/src/lib/db/Models/capital-cost-property.ts +0 -14
- package/src/lib/db/Models/capital-cost.ts +0 -4
- package/src/lib/db/Models/chart-accounts-depreciation.ts +0 -11
- package/src/lib/db/Models/chart-accounts-heading.ts +0 -7
- package/src/lib/db/Models/chart-accounts-metadata.ts +0 -12
- package/src/lib/db/Models/chart-accounts-value.ts +0 -13
- package/src/lib/db/Models/chart-accounts.ts +0 -24
- package/src/lib/db/Models/chat.ts +0 -18
- package/src/lib/db/Models/client-details.ts +0 -30
- package/src/lib/db/Models/client-invite.ts +0 -17
- package/src/lib/db/Models/client-movement.ts +0 -13
- package/src/lib/db/Models/country.ts +0 -5
- package/src/lib/db/Models/depreciation-capital-project.ts +0 -14
- package/src/lib/db/Models/depreciation-forecast.ts +0 -19
- package/src/lib/db/Models/depreciation-receipt.ts +0 -12
- package/src/lib/db/Models/depreciation.ts +0 -43
- package/src/lib/db/Models/document-base.ts +0 -10
- package/src/lib/db/Models/document-folder.ts +0 -10
- package/src/lib/db/Models/document.ts +0 -12
- package/src/lib/db/Models/employee-details.ts +0 -8
- package/src/lib/db/Models/employee-invite.ts +0 -10
- package/src/lib/db/Models/financial-data-system.ts +0 -10
- package/src/lib/db/Models/firm-invite.ts +0 -15
- package/src/lib/db/Models/firm.ts +0 -29
- package/src/lib/db/Models/income-source-forecast.ts +0 -13
- package/src/lib/db/Models/income-source-type.ts +0 -9
- package/src/lib/db/Models/income-source.ts +0 -21
- package/src/lib/db/Models/loan-payout.ts +0 -13
- package/src/lib/db/Models/loan.ts +0 -34
- package/src/lib/db/Models/message-document.ts +0 -16
- package/src/lib/db/Models/message.ts +0 -16
- package/src/lib/db/Models/occupation.ts +0 -5
- package/src/lib/db/Models/phone.ts +0 -13
- package/src/lib/db/Models/property-capital-cost.ts +0 -14
- package/src/lib/db/Models/property-category-movement.ts +0 -18
- package/src/lib/db/Models/property-category.ts +0 -14
- package/src/lib/db/Models/property-document.ts +0 -14
- package/src/lib/db/Models/property-forecast.ts +0 -15
- package/src/lib/db/Models/property-owner.ts +0 -21
- package/src/lib/db/Models/property-sold.ts +0 -13
- package/src/lib/db/Models/property-subscription.ts +0 -10
- package/src/lib/db/Models/property-valuation.ts +0 -13
- package/src/lib/db/Models/property.ts +0 -42
- package/src/lib/db/Models/registration-invite.ts +0 -13
- package/src/lib/db/Models/salary-forecast.ts +0 -16
- package/src/lib/db/Models/service-notification.ts +0 -14
- package/src/lib/db/Models/service-payment.ts +0 -12
- package/src/lib/db/Models/service-price.ts +0 -16
- package/src/lib/db/Models/service-product.ts +0 -13
- package/src/lib/db/Models/service-subscription-item.ts +0 -10
- package/src/lib/db/Models/service-subscription.ts +0 -15
- package/src/lib/db/Models/spare-document-category.ts +0 -6
- package/src/lib/db/Models/spare-document.ts +0 -16
- package/src/lib/db/Models/tax-calculation.ts +0 -19
- package/src/lib/db/Models/tax-return-category.ts +0 -13
- package/src/lib/db/Models/tax-return-item.ts +0 -16
- package/src/lib/db/Models/tax-return.ts +0 -9
- package/src/lib/db/Models/tax-review.ts +0 -14
- package/src/lib/db/Models/ticket.ts +0 -20
- package/src/lib/db/Models/transaction-allocation.ts +0 -9
- package/src/lib/db/Models/transaction-base.ts +0 -33
- package/src/lib/db/Models/transaction-metadata.ts +0 -12
- package/src/lib/db/Models/transaction-receipt.ts +0 -12
- package/src/lib/db/Models/transaction.ts +0 -44
- package/src/lib/db/Models/user-event-setting.ts +0 -11
- package/src/lib/db/Models/user-event-type.ts +0 -16
- package/src/lib/db/Models/user-event.ts +0 -14
- package/src/lib/db/Models/user.ts +0 -52
- package/src/lib/db/Models/vehicle-claim.ts +0 -12
- package/src/lib/db/Models/vehicle-logbook.ts +0 -17
- package/src/lib/db/Models/vehicle.ts +0 -9
- package/src/lib/functions/array/index.ts +0 -3
- package/src/lib/functions/array/replace.ts +0 -5
- package/src/lib/functions/array/sort-deep.ts +0 -19
- package/src/lib/functions/array/sort.ts +0 -8
- package/src/lib/functions/clone-deep.ts +0 -4
- package/src/lib/functions/create-date.ts +0 -7
- package/src/lib/functions/enum-to-list.ts +0 -16
- package/src/lib/functions/get-doc-icon.ts +0 -21
- package/src/lib/functions/mat-options-functions.ts +0 -11
- package/src/lib/functions/mat-sort-options.ts +0 -9
- package/src/lib/functions/round-to.ts +0 -9
- package/src/lib/functions/tax-review-filter-predicate.ts +0 -11
- package/src/lib/interfaces/asset-entity-type.enum.ts +0 -10
- package/src/lib/interfaces/asset-type.enum.ts +0 -9
- package/src/lib/interfaces/asset.interface.ts +0 -18
- package/src/lib/interfaces/chart-data.interface.ts +0 -11
- package/src/lib/interfaces/chart-serie.interface.ts +0 -8
- package/src/lib/interfaces/document.interface.ts +0 -20
- package/src/lib/interfaces/documentable.interface.ts +0 -9
- package/src/lib/interfaces/event-listener.interface.ts +0 -9
- package/src/lib/interfaces/income-source-forecast.interface.ts +0 -7
- package/src/lib/interfaces/option.interface.ts +0 -4
- package/src/lib/interfaces/photoable.ts +0 -14
- package/src/lib/interfaces/receipt.interface.ts +0 -13
- package/src/lib/interfaces/salary-forecast.interface.ts +0 -17
- package/src/lib/interfaces/tank.interface.ts +0 -9
- package/src/lib/models/address/address.ts +0 -24
- package/src/lib/models/address/country.ts +0 -17
- package/src/lib/models/bank/bank-account-chart-data.ts +0 -42
- package/src/lib/models/bank/bank-account-property.ts +0 -8
- package/src/lib/models/bank/bank-account-types.const.ts +0 -15
- package/src/lib/models/bank/bank-account.ts +0 -136
- package/src/lib/models/bank/bank-connection.ts +0 -12
- package/src/lib/models/bank/bank-transaction-chart-data.ts +0 -132
- package/src/lib/models/bank/bank-transaction-summary-fields.enum.ts +0 -4
- package/src/lib/models/bank/bank-transaction.ts +0 -74
- package/src/lib/models/bank/bank.ts +0 -21
- package/src/lib/models/bank/basiq-job.ts +0 -4
- package/src/lib/models/bank/basiq-token.ts +0 -16
- package/src/lib/models/bank/type-loan.const.ts +0 -7
- package/src/lib/models/borrowing-expense/borrowing-expense-loan.ts +0 -4
- package/src/lib/models/borrowing-expense/borrowing-expense.ts +0 -4
- package/src/lib/models/chart/chart-data.ts +0 -13
- package/src/lib/models/chart/chart-serie.ts +0 -8
- package/src/lib/models/chart-accounts/chart-accounts-categories.const.ts +0 -85
- package/src/lib/models/chart-accounts/chart-accounts-depreciation.ts +0 -14
- package/src/lib/models/chart-accounts/chart-accounts-heading.ts +0 -6
- package/src/lib/models/chart-accounts/chart-accounts-metadata.ts +0 -15
- package/src/lib/models/chart-accounts/chart-accounts-tax-labels.enum.ts +0 -5
- package/src/lib/models/chart-accounts/chart-accounts.ts +0 -137
- package/src/lib/models/chat/chat-view-type.enum.ts +0 -4
- package/src/lib/models/chat/chat.ts +0 -23
- package/src/lib/models/chat/message-document.ts +0 -18
- package/src/lib/models/chat/message.ts +0 -40
- package/src/lib/models/client/client-details.ts +0 -4
- package/src/lib/models/client/client-invite.ts +0 -70
- package/src/lib/models/client/client-movement.ts +0 -25
- package/src/lib/models/client/client-portfolio-chart-data.ts +0 -65
- package/src/lib/models/client/client-portfolio-report.ts +0 -10
- package/src/lib/models/depreciation/depreciation-capital-project.ts +0 -10
- package/src/lib/models/depreciation/depreciation-forecast.ts +0 -31
- package/src/lib/models/depreciation/depreciation-group-item.ts +0 -20
- package/src/lib/models/depreciation/depreciation-group.enum.ts +0 -7
- package/src/lib/models/depreciation/depreciation-group.ts +0 -25
- package/src/lib/models/depreciation/depreciation-groups.const.ts +0 -35
- package/src/lib/models/depreciation/depreciation-receipt.ts +0 -9
- package/src/lib/models/depreciation/depreciation.ts +0 -174
- package/src/lib/models/document/document-api-url-prefix.enum.ts +0 -7
- package/src/lib/models/document/document-file-types.const.ts +0 -22
- package/src/lib/models/document/document-folder.ts +0 -11
- package/src/lib/models/document/document.ts +0 -29
- package/src/lib/models/employee/employee-details.ts +0 -8
- package/src/lib/models/employee/employee-invite.ts +0 -12
- package/src/lib/models/endpoint/endpoint.ts +0 -35
- package/src/lib/models/endpoint/endpoints.const.ts +0 -157
- package/src/lib/models/event/app-event-type.enum.ts +0 -37
- package/src/lib/models/event/app-event.ts +0 -9
- package/src/lib/models/file/icons-file.enum.ts +0 -5
- package/src/lib/models/financial-year/financial-year.ts +0 -57
- package/src/lib/models/financial-year/month-name-short.enum.ts +0 -19
- package/src/lib/models/financial-year/month-number.enum.ts +0 -19
- package/src/lib/models/financial-year/months.const.ts +0 -1
- package/src/lib/models/firm/firm.ts +0 -31
- package/src/lib/models/income-position/income-position.ts +0 -13
- package/src/lib/models/income-source/income-source-chart-data.ts +0 -57
- package/src/lib/models/income-source/income-source-forecast.ts +0 -35
- package/src/lib/models/income-source/income-source-type.ts +0 -30
- package/src/lib/models/income-source/income-source.ts +0 -57
- package/src/lib/models/income-source/salary-forecast.ts +0 -23
- package/src/lib/models/loan/loan-max-number-of-payments.enum.ts +0 -8
- package/src/lib/models/loan/loan-payment.ts +0 -17
- package/src/lib/models/loan/loan-payout.ts +0 -13
- package/src/lib/models/loan/loan.ts +0 -38
- package/src/lib/models/logbook/default-vehicle-expense.ts +0 -20
- package/src/lib/models/logbook/logbook-period.ts +0 -12
- package/src/lib/models/logbook/logbook-purpose-options.const.ts +0 -6
- package/src/lib/models/logbook/vehicle-claim.ts +0 -27
- package/src/lib/models/logbook/vehicle-logbook.ts +0 -16
- package/src/lib/models/logbook/vehicle.ts +0 -46
- package/src/lib/models/notification/notification-event-types.const.ts +0 -43
- package/src/lib/models/notification/notification.ts +0 -66
- package/src/lib/models/phone/phone.ts +0 -10
- package/src/lib/models/property/calculation-form-item.ts +0 -24
- package/src/lib/models/property/calculation-form-type.enum.ts +0 -7
- package/src/lib/models/property/capital-costs-itmes.const.ts +0 -57
- package/src/lib/models/property/corelogic-suggestion.ts +0 -18
- package/src/lib/models/property/ownership-filter-options.enum.ts +0 -8
- package/src/lib/models/property/property-capital-cost.ts +0 -4
- package/src/lib/models/property/property-category-movement.ts +0 -18
- package/src/lib/models/property/property-category.ts +0 -9
- package/src/lib/models/property/property-document.ts +0 -21
- package/src/lib/models/property/property-equity-chart-data.ts +0 -188
- package/src/lib/models/property/property-equity-chart-item.ts +0 -35
- package/src/lib/models/property/property-equity-chart-type.enum.ts +0 -4
- package/src/lib/models/property/property-forecast.ts +0 -55
- package/src/lib/models/property/property-owner.ts +0 -50
- package/src/lib/models/property/property-sold.ts +0 -10
- package/src/lib/models/property/property-subscription.ts +0 -11
- package/src/lib/models/property/property-valuation.ts +0 -24
- package/src/lib/models/property/property.ts +0 -157
- package/src/lib/models/registration-invite/registration-invite.ts +0 -12
- package/src/lib/models/service-subscription/module-url-list.const.ts +0 -11
- package/src/lib/models/service-subscription/service-payment.ts +0 -8
- package/src/lib/models/service-subscription/service-price.ts +0 -8
- package/src/lib/models/service-subscription/service-product.ts +0 -11
- package/src/lib/models/service-subscription/service-subscription-item.ts +0 -12
- package/src/lib/models/service-subscription/service-subscription.ts +0 -151
- package/src/lib/models/service-subscription/subscription-description.const.ts +0 -8
- package/src/lib/models/service-subscription/subscription-title.const.ts +0 -8
- package/src/lib/models/service-subscription/subscription-type.enum.ts +0 -6
- package/src/lib/models/tax-review/tax-review.ts +0 -96
- package/src/lib/models/tax-summary/tax-return-category-item-details.ts +0 -14
- package/src/lib/models/tax-summary/tax-return-category-item.ts +0 -22
- package/src/lib/models/tax-summary/tax-summary-section.ts +0 -32
- package/src/lib/models/tax-summary/tax-summary-type.enum.ts +0 -7
- package/src/lib/models/tax-summary/tax-summary.ts +0 -79
- package/src/lib/models/transaction/income-amount-type.enum.ts +0 -7
- package/src/lib/models/transaction/transaction-allocation.ts +0 -20
- package/src/lib/models/transaction/transaction-metadata.ts +0 -8
- package/src/lib/models/transaction/transaction-receipt.ts +0 -9
- package/src/lib/models/transaction/transaction.ts +0 -241
- package/src/lib/models/user/my-account-history-initiated-by.enum.ts +0 -4
- package/src/lib/models/user/my-account-history-status.enum.ts +0 -4
- package/src/lib/models/user/my-account-history-type.enum.ts +0 -5
- package/src/lib/models/user/my-account-history.ts +0 -12
- package/src/lib/models/user/occupation.ts +0 -4
- package/src/lib/models/user/user-roles.const.ts +0 -13
- package/src/lib/models/user/user-to-register.ts +0 -7
- package/src/lib/models/user/user-work-position.const.ts +0 -7
- package/src/lib/models/user/user.ts +0 -160
- package/src/lib/models/user-event/user-event-category.enum.ts +0 -9
- package/src/lib/models/user-event/user-event-category.ts +0 -9
- package/src/lib/models/user-event/user-event-setting-field.enum.ts +0 -8
- package/src/lib/models/user-event/user-event-setting.ts +0 -11
- package/src/lib/models/user-event/user-event-type.ts +0 -22
- package/src/lib/services/address/address.service.spec.ts +0 -12
- package/src/lib/services/address/address.service.ts +0 -36
- package/src/lib/services/asset/assets.service.spec.ts +0 -12
- package/src/lib/services/asset/assets.service.ts +0 -51
- package/src/lib/services/auth/auth.service.ts +0 -48
- package/src/lib/services/auth/jwt.service.ts +0 -37
- package/src/lib/services/bank/bank-account-calculation.service.spec.ts +0 -16
- package/src/lib/services/bank/bank-account-calculation.service.ts +0 -38
- package/src/lib/services/bank/bank-account.service.spec.ts +0 -12
- package/src/lib/services/bank/bank-account.service.ts +0 -120
- package/src/lib/services/bank/bank-connection.service.spec.ts +0 -12
- package/src/lib/services/bank/bank-connection.service.ts +0 -42
- package/src/lib/services/bank/bank-transaction-calculation.service.spec.ts +0 -16
- package/src/lib/services/bank/bank-transaction-calculation.service.ts +0 -71
- package/src/lib/services/bank/bank-transaction.service.spec.ts +0 -12
- package/src/lib/services/bank/bank-transaction.service.ts +0 -97
- package/src/lib/services/bank/bank.service.spec.ts +0 -12
- package/src/lib/services/bank/bank.service.ts +0 -16
- package/src/lib/services/bank/basiq.service.spec.ts +0 -12
- package/src/lib/services/bank/basiq.service.ts +0 -103
- package/src/lib/services/base-rest.service.spec.ts +0 -13
- package/src/lib/services/base-rest.service.ts +0 -229
- package/src/lib/services/borrowing-expense/borrowing-expense.service.spec.ts +0 -12
- package/src/lib/services/borrowing-expense/borrowing-expense.service.ts +0 -82
- package/src/lib/services/chart-accounts/chart-accounts-depreciations.service.spec.ts +0 -16
- package/src/lib/services/chart-accounts/chart-accounts-depreciations.service.ts +0 -34
- package/src/lib/services/chart-accounts/chart-accounts.service.spec.ts +0 -12
- package/src/lib/services/chart-accounts/chart-accounts.service.ts +0 -101
- package/src/lib/services/chat/chat.service.spec.ts +0 -16
- package/src/lib/services/chat/chat.service.ts +0 -79
- package/src/lib/services/chat/message-document.service.spec.ts +0 -16
- package/src/lib/services/chat/message-document.service.ts +0 -133
- package/src/lib/services/chat/message.service.spec.ts +0 -16
- package/src/lib/services/chat/message.service.ts +0 -61
- package/src/lib/services/client/client-invite.service.spec.ts +0 -16
- package/src/lib/services/client/client-invite.service.ts +0 -111
- package/src/lib/services/client/client-movement.service.spec.ts +0 -16
- package/src/lib/services/client/client-movement.service.ts +0 -114
- package/src/lib/services/client/client-portfolio-report.service.spec.ts +0 -16
- package/src/lib/services/client/client-portfolio-report.service.ts +0 -34
- package/src/lib/services/depreciation/capital-project.service.spec.ts +0 -16
- package/src/lib/services/depreciation/capital-project.service.ts +0 -69
- package/src/lib/services/depreciation/depreciation.service.spec.ts +0 -12
- package/src/lib/services/depreciation/depreciation.service.ts +0 -171
- package/src/lib/services/document/document-folder.service.spec.ts +0 -16
- package/src/lib/services/document/document-folder.service.ts +0 -95
- package/src/lib/services/employee/employee-invite.service.spec.ts +0 -16
- package/src/lib/services/employee/employee-invite.service.ts +0 -53
- package/src/lib/services/employee/employee.service.spec.ts +0 -16
- package/src/lib/services/employee/employee.service.ts +0 -35
- package/src/lib/services/event/event-dispatcher.service.spec.ts +0 -16
- package/src/lib/services/event/event-dispatcher.service.ts +0 -29
- package/src/lib/services/event/sse.service.spec.ts +0 -16
- package/src/lib/services/event/sse.service.ts +0 -42
- package/src/lib/services/firm/firm.service.spec.ts +0 -16
- package/src/lib/services/firm/firm.service.ts +0 -93
- package/src/lib/services/header-title/header-title.service.spec.ts +0 -12
- package/src/lib/services/header-title/header-title.service.ts +0 -31
- package/src/lib/services/income-source/income-source-forecast.service.spec.ts +0 -16
- package/src/lib/services/income-source/income-source-forecast.service.ts +0 -91
- package/src/lib/services/income-source/income-source.service.spec.ts +0 -12
- package/src/lib/services/income-source/income-source.service.ts +0 -127
- package/src/lib/services/income-source/salary-forecast.service.spec.ts +0 -16
- package/src/lib/services/income-source/salary-forecast.service.ts +0 -92
- package/src/lib/services/intercom/intercom.service.spec.ts +0 -16
- package/src/lib/services/intercom/intercom.service.ts +0 -37
- package/src/lib/services/loan/loan.service.spec.ts +0 -12
- package/src/lib/services/loan/loan.service.ts +0 -166
- package/src/lib/services/notification/notification.service.spec.ts +0 -12
- package/src/lib/services/notification/notification.service.ts +0 -60
- package/src/lib/services/preloader/preloader.service.spec.ts +0 -16
- package/src/lib/services/preloader/preloader.service.ts +0 -28
- package/src/lib/services/property/corelogic.service.spec.ts +0 -12
- package/src/lib/services/property/corelogic.service.ts +0 -47
- package/src/lib/services/property/property-calculation.service.spec.ts +0 -16
- package/src/lib/services/property/property-calculation.service.ts +0 -166
- package/src/lib/services/property/property-capital-cost.service.ts +0 -42
- package/src/lib/services/property/property-category.service.spec.ts +0 -16
- package/src/lib/services/property/property-category.service.ts +0 -15
- package/src/lib/services/property/property-document.service.spec.ts +0 -16
- package/src/lib/services/property/property-document.service.ts +0 -74
- package/src/lib/services/property/property-owner.service.spec.ts +0 -12
- package/src/lib/services/property/property-owner.service.ts +0 -134
- package/src/lib/services/property/property-sold.service.spec.ts +0 -16
- package/src/lib/services/property/property-sold.service.ts +0 -15
- package/src/lib/services/property/property.service.spec.ts +0 -12
- package/src/lib/services/property/property.service.ts +0 -136
- package/src/lib/services/subscription/subscription.service.spec.ts +0 -12
- package/src/lib/services/subscription/subscription.service.ts +0 -153
- package/src/lib/services/tax-review/tax-review-history.service.spec.ts +0 -16
- package/src/lib/services/tax-review/tax-review-history.service.ts +0 -35
- package/src/lib/services/tax-review/tax-review.service.spec.ts +0 -16
- package/src/lib/services/tax-review/tax-review.service.ts +0 -114
- package/src/lib/services/tax-summary/tax-summary.service.ts +0 -70
- package/src/lib/services/transaction/transaction-allocation.service.spec.ts +0 -12
- package/src/lib/services/transaction/transaction-allocation.service.ts +0 -92
- package/src/lib/services/transaction/transaction-calculation.service.spec.ts +0 -16
- package/src/lib/services/transaction/transaction-calculation.service.ts +0 -50
- package/src/lib/services/transaction/transaction.service.spec.ts +0 -12
- package/src/lib/services/transaction/transaction.service.ts +0 -374
- package/src/lib/services/user/occupation.service.spec.ts +0 -12
- package/src/lib/services/user/occupation.service.ts +0 -42
- package/src/lib/services/user/user-switcher.service.ts +0 -34
- package/src/lib/services/user/user.service.spec.ts +0 -12
- package/src/lib/services/user/user.service.ts +0 -140
- package/src/lib/services/user-event/user-event-setting.service.spec.ts +0 -16
- package/src/lib/services/user-event/user-event-setting.service.ts +0 -60
- package/src/lib/services/user-event/user-event-type.service.spec.ts +0 -16
- package/src/lib/services/user-event/user-event-type.service.ts +0 -24
- package/src/lib/services/work/work-tank.service.spec.ts +0 -12
- package/src/lib/services/work/work-tank.service.ts +0 -277
- package/src/lib/tt-core.module.ts +0 -22
- package/src/lib/tt-core.service.spec.ts +0 -16
- package/src/lib/tt-core.service.ts +0 -17
- package/src/public-api.ts +0 -425
- package/src/test.ts +0 -27
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { CollectionDictionary } from './collection-dictionary';
|
|
2
|
+
import first from 'lodash/first';
|
|
3
|
+
import last from 'lodash/last';
|
|
4
|
+
/**
|
|
5
|
+
* collection abstract class. Contains common properties and methods for all collections
|
|
6
|
+
*/
|
|
7
|
+
export class AbstractCollection {
|
|
8
|
+
constructor(items = []) {
|
|
9
|
+
this.items = items;
|
|
10
|
+
}
|
|
11
|
+
groupBy(prop) {
|
|
12
|
+
return new CollectionDictionary(this, prop);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Iterator that allow to iterate collection items
|
|
16
|
+
*/
|
|
17
|
+
[Symbol.iterator]() {
|
|
18
|
+
// .values() returns Iterator instance for array
|
|
19
|
+
return this.items.values();
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* get collection length
|
|
23
|
+
*/
|
|
24
|
+
get length() {
|
|
25
|
+
return this.items.length;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* method returns amount of fields from passed items
|
|
29
|
+
* @param field Name of field for calculation
|
|
30
|
+
* @param items (optional) Array of items need to be calculated. All collection's items by default
|
|
31
|
+
*/
|
|
32
|
+
getSummary(field, items = this.toArray()) {
|
|
33
|
+
return items.reduce((sum, item) => sum += item[field], 0);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get list of items ids
|
|
37
|
+
*/
|
|
38
|
+
getIds() {
|
|
39
|
+
return this.items.map((item) => item['id']);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Get single item by id
|
|
43
|
+
*/
|
|
44
|
+
getById(id) {
|
|
45
|
+
return this.items.find((item) => item['id'] === id);
|
|
46
|
+
}
|
|
47
|
+
getByIds(ids) {
|
|
48
|
+
return this.items.filter((item) => ids.includes(item['id']));
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Get total sum of items by field
|
|
52
|
+
* @param field Name of the field for sum
|
|
53
|
+
*/
|
|
54
|
+
sumBy(field) {
|
|
55
|
+
return +this.items.reduce((sum, item) => sum + Number(item[field]), 0).toFixed(2);
|
|
56
|
+
}
|
|
57
|
+
toArray() {
|
|
58
|
+
return [...this.items];
|
|
59
|
+
}
|
|
60
|
+
get first() {
|
|
61
|
+
return first(this.items);
|
|
62
|
+
}
|
|
63
|
+
get last() {
|
|
64
|
+
return last(this.items);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QuY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9hYnN0cmFjdC5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQy9ELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQztBQUNqQyxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFFL0I7O0dBRUc7QUFDSCxNQUFNLE9BQWdCLGtCQUFrQjtJQUl0QyxZQUNFLFFBQWlCLEVBQUU7UUFFbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFZO1FBQ2xCLE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO1FBQ2YsZ0RBQWdEO1FBQ2hELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO0lBQzNCLENBQUM7SUFFRDs7OztPQUlHO0lBQ08sVUFBVSxDQUFDLEtBQWEsRUFBRSxRQUFpQixJQUFJLENBQUMsT0FBTyxFQUFFO1FBQ2pFLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQVcsRUFBRSxJQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFXLEVBQVUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7T0FFRztJQUNILE9BQU8sQ0FBQyxFQUFVO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFXLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQVcsRUFBVyxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLLENBQUMsS0FBYTtRQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsSUFBVyxFQUFVLEVBQUUsQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRyxDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuL2NvbGxlY3Rpb24tZGljdGlvbmFyeSc7XHJcbmltcG9ydCBmaXJzdCBmcm9tICdsb2Rhc2gvZmlyc3QnO1xyXG5pbXBvcnQgbGFzdCBmcm9tICdsb2Rhc2gvbGFzdCc7XHJcblxyXG4vKipcclxuICogY29sbGVjdGlvbiBhYnN0cmFjdCBjbGFzcy4gQ29udGFpbnMgY29tbW9uIHByb3BlcnRpZXMgYW5kIG1ldGhvZHMgZm9yIGFsbCBjb2xsZWN0aW9uc1xyXG4gKi9cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q29sbGVjdGlvbjxNb2RlbCBleHRlbmRzIG9iamVjdD4gaW1wbGVtZW50cyBJdGVyYWJsZTxNb2RlbD4ge1xyXG4gIC8vIGxpc3Qgb2YgY29sbGVjdGlvbidzIGl0ZW1zXHJcbiAgaXRlbXM6IE1vZGVsW107XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgaXRlbXM6IE1vZGVsW10gPSBbXVxyXG4gICkge1xyXG4gICAgdGhpcy5pdGVtcyA9IGl0ZW1zO1xyXG4gIH1cclxuXHJcbiAgZ3JvdXBCeShwcm9wOiBzdHJpbmcpOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxBYnN0cmFjdENvbGxlY3Rpb248TW9kZWw+PiB7XHJcbiAgICByZXR1cm4gbmV3IENvbGxlY3Rpb25EaWN0aW9uYXJ5KHRoaXMsIHByb3ApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogSXRlcmF0b3IgdGhhdCBhbGxvdyB0byBpdGVyYXRlIGNvbGxlY3Rpb24gaXRlbXNcclxuICAgKi9cclxuICBbU3ltYm9sLml0ZXJhdG9yXSgpOiBJdGVyYXRvcjxNb2RlbD4ge1xyXG4gICAgLy8gLnZhbHVlcygpIHJldHVybnMgSXRlcmF0b3IgaW5zdGFuY2UgZm9yIGFycmF5XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy52YWx1ZXMoKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIGdldCBjb2xsZWN0aW9uIGxlbmd0aFxyXG4gICAqL1xyXG4gIGdldCBsZW5ndGgoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLmxlbmd0aDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIG1ldGhvZCByZXR1cm5zIGFtb3VudCBvZiBmaWVsZHMgZnJvbSBwYXNzZWQgaXRlbXNcclxuICAgKiBAcGFyYW0gZmllbGQgTmFtZSBvZiBmaWVsZCBmb3IgY2FsY3VsYXRpb25cclxuICAgKiBAcGFyYW0gaXRlbXMgKG9wdGlvbmFsKSBBcnJheSBvZiBpdGVtcyBuZWVkIHRvIGJlIGNhbGN1bGF0ZWQuIEFsbCBjb2xsZWN0aW9uJ3MgaXRlbXMgYnkgZGVmYXVsdFxyXG4gICAqL1xyXG4gIHByb3RlY3RlZCBnZXRTdW1tYXJ5KGZpZWxkOiBzdHJpbmcsIGl0ZW1zOiBNb2RlbFtdID0gdGhpcy50b0FycmF5KCkpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIGl0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IE1vZGVsKSA9PiBzdW0gKz0gaXRlbVtmaWVsZF0sIDApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogR2V0IGxpc3Qgb2YgaXRlbXMgaWRzXHJcbiAgICovXHJcbiAgZ2V0SWRzKCk6IG51bWJlcltdIHtcclxuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcCgoaXRlbTogTW9kZWwpOiBudW1iZXIgPT4gaXRlbVsnaWQnXSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBHZXQgc2luZ2xlIGl0ZW0gYnkgaWRcclxuICAgKi9cclxuICBnZXRCeUlkKGlkOiBudW1iZXIpOiBNb2RlbCB7XHJcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKChpdGVtOiBNb2RlbCk6IGJvb2xlYW4gPT4gaXRlbVsnaWQnXSA9PT0gaWQpO1xyXG4gIH1cclxuXHJcbiAgZ2V0QnlJZHMoaWRzOiBudW1iZXJbXSk6IE1vZGVsW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChpdGVtOiBNb2RlbCk6IGJvb2xlYW4gPT4gaWRzLmluY2x1ZGVzKGl0ZW1bJ2lkJ10pKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCB0b3RhbCBzdW0gb2YgaXRlbXMgYnkgZmllbGRcclxuICAgKiBAcGFyYW0gZmllbGQgTmFtZSBvZiB0aGUgZmllbGQgZm9yIHN1bVxyXG4gICAqL1xyXG4gIHN1bUJ5KGZpZWxkOiBzdHJpbmcpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuICt0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IE1vZGVsKTogbnVtYmVyID0+IHN1bSArIE51bWJlcihpdGVtW2ZpZWxkXSksIDApLnRvRml4ZWQoMik7XHJcbiAgfVxyXG5cclxuICB0b0FycmF5KCk6IE1vZGVsW10ge1xyXG4gICAgcmV0dXJuIFsuLi50aGlzLml0ZW1zXTtcclxuICB9XHJcblxyXG4gIGdldCBmaXJzdCgpOiBNb2RlbCB7XHJcbiAgICByZXR1cm4gZmlyc3QodGhpcy5pdGVtcyk7XHJcbiAgfVxyXG5cclxuICBnZXQgbGFzdCgpOiBNb2RlbCB7XHJcbiAgICByZXR1cm4gbGFzdCh0aGlzLml0ZW1zKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { AbstractCollection } from './abstract.collection';
|
|
2
|
+
import flatten from 'lodash/flatten';
|
|
3
|
+
import uniqBy from 'lodash/uniqBy';
|
|
4
|
+
import concat from 'lodash/concat';
|
|
5
|
+
import { TYPE_LOAN } from '../models/bank/type-loan.const';
|
|
6
|
+
/**
|
|
7
|
+
* Collection of bank accounts.
|
|
8
|
+
*/
|
|
9
|
+
export class BankAccountCollection extends AbstractCollection {
|
|
10
|
+
/**
|
|
11
|
+
* get list of bank accounts with passed types
|
|
12
|
+
*/
|
|
13
|
+
getByType(types, isExclude = false) {
|
|
14
|
+
// get types always as array (if only one passed)
|
|
15
|
+
const typesArray = concat(types);
|
|
16
|
+
return this.items.filter((bankAccount) => {
|
|
17
|
+
if (isExclude) {
|
|
18
|
+
return !typesArray.includes(bankAccount.type);
|
|
19
|
+
}
|
|
20
|
+
return typesArray.includes(bankAccount.type);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* get amount of initial loans
|
|
25
|
+
*/
|
|
26
|
+
getInitialLoanAmount() {
|
|
27
|
+
return this.getByType(TYPE_LOAN)
|
|
28
|
+
.reduce((sum, bankAccount) => {
|
|
29
|
+
return sum += bankAccount.balances.length ? bankAccount.getOpeningBalance() : 0;
|
|
30
|
+
}, 0);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* get amount of current loans
|
|
34
|
+
*/
|
|
35
|
+
getCurrentLoanAmount() {
|
|
36
|
+
return this.getByType(TYPE_LOAN)
|
|
37
|
+
.reduce((sum, bankAccount) => {
|
|
38
|
+
return sum += bankAccount.currentBalance;
|
|
39
|
+
}, 0);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* get collection filtered by property id
|
|
43
|
+
*/
|
|
44
|
+
getByPropertyId(id) {
|
|
45
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
46
|
+
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
47
|
+
return bankAccountProperty.property.id === id;
|
|
48
|
+
});
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* get collection filtered by properties ids
|
|
53
|
+
*/
|
|
54
|
+
getByPropertiesIds(ids) {
|
|
55
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
56
|
+
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
57
|
+
return ids.includes(bankAccountProperty.property.id);
|
|
58
|
+
});
|
|
59
|
+
}));
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* get collection of active bank accounts
|
|
63
|
+
*/
|
|
64
|
+
getActiveBankAccounts() {
|
|
65
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
66
|
+
return bankAccount.isActive();
|
|
67
|
+
}));
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* get reduction of loan (reduction of principle) percentage
|
|
71
|
+
*/
|
|
72
|
+
getPrincipleReductionPercent() {
|
|
73
|
+
const initialLoans = this.getInitialLoanAmount();
|
|
74
|
+
const currentLoans = this.getCurrentLoanAmount();
|
|
75
|
+
if (!initialLoans) {
|
|
76
|
+
return 0;
|
|
77
|
+
}
|
|
78
|
+
return (initialLoans - currentLoans) / initialLoans * 100;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get collection of loan bank accounts
|
|
82
|
+
*/
|
|
83
|
+
getLoanAccounts() {
|
|
84
|
+
return new BankAccountCollection(this.getByType(TYPE_LOAN));
|
|
85
|
+
}
|
|
86
|
+
getSavingsAccounts() {
|
|
87
|
+
return new BankAccountCollection(this.getByType(TYPE_LOAN, true));
|
|
88
|
+
}
|
|
89
|
+
getOpeningBalance() {
|
|
90
|
+
return this.items.reduce((sum, bankAccount) => sum + bankAccount.getOpeningBalance(), 0);
|
|
91
|
+
}
|
|
92
|
+
get currentBalance() {
|
|
93
|
+
return this.sumBy('currentBalance');
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Get Collection of bank accounts with property tank type
|
|
97
|
+
*/
|
|
98
|
+
getPropertyBankAccounts() {
|
|
99
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isPropertyTank()));
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Get Collection of bank accounts with work tank type
|
|
103
|
+
*/
|
|
104
|
+
getWorkBankAccounts() {
|
|
105
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isWorkTank()));
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Get Collection of bank accounts by tank type
|
|
109
|
+
*/
|
|
110
|
+
getByTankType(tankType) {
|
|
111
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.tankType === tankType));
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Get list of all bank account properties
|
|
115
|
+
*/
|
|
116
|
+
getBankAccountPropertiesList() {
|
|
117
|
+
return flatten(this.items.map((bankAccount) => {
|
|
118
|
+
return bankAccount.bankAccountProperties;
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Get lis of unique properties from all bank accounts properties
|
|
123
|
+
*/
|
|
124
|
+
getProperties() {
|
|
125
|
+
return uniqBy(this.getBankAccountPropertiesList().map((bankAccountProperty) => {
|
|
126
|
+
return bankAccountProperty.property;
|
|
127
|
+
}), 'id');
|
|
128
|
+
}
|
|
129
|
+
getPropertyBalanceAmount(propertyId) {
|
|
130
|
+
return this.items.reduce((sum, bankAccount) => {
|
|
131
|
+
return sum + bankAccount.getPropertyBalanceAmount(propertyId);
|
|
132
|
+
}, 0);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvYmFuay1hY2NvdW50LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFNM0QsT0FBTyxPQUFPLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sTUFBTSxNQUFNLGVBQWUsQ0FBQztBQUNuQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFM0Q7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsa0JBQStCO0lBQ3hFOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEtBQWtELEVBQUUsWUFBcUIsS0FBSztRQUN0RixpREFBaUQ7UUFDakQsTUFBTSxVQUFVLEdBQTBCLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO1lBQ3BELElBQUksU0FBUyxFQUFFO2dCQUNiLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMvQztZQUNELE9BQU8sVUFBVSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQzthQUM3QixNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsV0FBd0IsRUFBRSxFQUFFO1lBQ2hELE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxRQUFR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QUFDLENBQUM7UUFDaEUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb2xsZWN0aW9uIH0gZnJvbSAnLi9hYnN0cmFjdC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IEJhbmtBY2NvdW50VHlwZUVudW0gfSBmcm9tICcuLi9kYi9FbnVtcy9iYW5rLWFjY291bnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhbmtBY2NvdW50UHJvcGVydHkgfSBmcm9tICcuLi9tb2RlbHMvYmFuay9iYW5rLWFjY291bnQtcHJvcGVydHknO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcbmltcG9ydCBjb25jYXQgZnJvbSAnbG9kYXNoL2NvbmNhdCc7XG5pbXBvcnQgeyBUWVBFX0xPQU4gfSBmcm9tICcuLi9tb2RlbHMvYmFuay90eXBlLWxvYW4uY29uc3QnO1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgYmFuayBhY2NvdW50cy5cbiAqL1xuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50Q29sbGVjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29sbGVjdGlvbjxCYW5rQWNjb3VudD4ge1xuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgYmFuayBhY2NvdW50cyB3aXRoIHBhc3NlZCB0eXBlc1xuICAgKi9cbiAgZ2V0QnlUeXBlKHR5cGVzOiBCYW5rQWNjb3VudFR5cGVFbnVtIHwgQmFua0FjY291bnRUeXBlRW51bVtdLCBpc0V4Y2x1ZGU6IGJvb2xlYW4gPSBmYWxzZSk6IEJhbmtBY2NvdW50W10ge1xuICAgIC8vIGdldCB0eXBlcyBhbHdheXMgYXMgYXJyYXkgKGlmIG9ubHkgb25lIHBhc3NlZClcbiAgICBjb25zdCB0eXBlc0FycmF5OiBCYW5rQWNjb3VudFR5cGVFbnVtW10gPSBjb25jYXQodHlwZXMpO1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KSA9PiB7XG4gICAgICBpZiAoaXNFeGNsdWRlKSB7XG4gICAgICAgIHJldHVybiAhdHlwZXNBcnJheS5pbmNsdWRlcyhiYW5rQWNjb3VudC50eXBlKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0eXBlc0FycmF5LmluY2x1ZGVzKGJhbmtBY2NvdW50LnR5cGUpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBhbW91bnQgb2YgaW5pdGlhbCBsb2Fuc1xuICAgKi9cbiAgZ2V0SW5pdGlhbExvYW5BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeVR5cGUoVFlQRV9MT0FOKVxuICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4ge1xuICAgICAgICByZXR1cm4gc3VtICs9IGJhbmtBY2NvdW50LmJhbGFuY2VzLmxlbmd0aCA/IGJhbmtBY2NvdW50LmdldE9wZW5pbmdCYWxhbmNlKCkgOiAwO1xuICAgICAgfSwgMCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGFtb3VudCBvZiBjdXJyZW50IGxvYW5zXG4gICAqL1xuICBnZXRDdXJyZW50TG9hbkFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEJ5VHlwZShUWVBFX0xPQU4pXG4gICAgICAucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KSA9PiB7XG4gICAgICAgIHJldHVybiBzdW0gKz0gYmFua0FjY291bnQuY3VycmVudEJhbGFuY2U7XG4gICAgICB9LCAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBwcm9wZXJ0eSBpZFxuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0eUlkKGlkOiBudW1iZXIpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgIHJldHVybiBiYW5rQWNjb3VudC5iYW5rQWNjb3VudFByb3BlcnRpZXMuZmluZCgoYmFua0FjY291bnRQcm9wZXJ0eTogQmFua0FjY291bnRQcm9wZXJ0eSkgPT4ge1xuICAgICAgICByZXR1cm4gYmFua0FjY291bnRQcm9wZXJ0eS5wcm9wZXJ0eS5pZCA9PT0gaWQ7XG4gICAgICB9KTtcbiAgICB9KSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGNvbGxlY3Rpb24gZmlsdGVyZWQgYnkgcHJvcGVydGllcyBpZHNcbiAgICovXG4gIGdldEJ5UHJvcGVydGllc0lkcyhpZHM6IG51bWJlcltdKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgICAgcmV0dXJuIGJhbmtBY2NvdW50LmJhbmtBY2NvdW50UHJvcGVydGllcy5maW5kKChiYW5rQWNjb3VudFByb3BlcnR5OiBCYW5rQWNjb3VudFByb3BlcnR5KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGlkcy5pbmNsdWRlcyhiYW5rQWNjb3VudFByb3BlcnR5LnByb3BlcnR5LmlkKTtcbiAgICAgICAgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGNvbGxlY3Rpb24gb2YgYWN0aXZlIGJhbmsgYWNjb3VudHNcbiAgICovXG4gIGdldEFjdGl2ZUJhbmtBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgIHJldHVybiBiYW5rQWNjb3VudC5pc0FjdGl2ZSgpO1xuICAgIH0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgcmVkdWN0aW9uIG9mIGxvYW4gKHJlZHVjdGlvbiBvZiBwcmluY2lwbGUpIHBlcmNlbnRhZ2VcbiAgICovXG4gIGdldFByaW5jaXBsZVJlZHVjdGlvblBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICBjb25zdCBpbml0aWFsTG9hbnM6IG51bWJlciA9IHRoaXMuZ2V0SW5pdGlhbExvYW5BbW91bnQoKTtcbiAgICBjb25zdCBjdXJyZW50TG9hbnM6IG51bWJlciA9IHRoaXMuZ2V0Q3VycmVudExvYW5BbW91bnQoKTtcblxuICAgIGlmICghaW5pdGlhbExvYW5zKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKGluaXRpYWxMb2FucyAtIGN1cnJlbnRMb2FucykgLyBpbml0aWFsTG9hbnMgKiAxMDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgbG9hbiBiYW5rIGFjY291bnRzXG4gICAqL1xuICBnZXRMb2FuQWNjb3VudHMoKTogQmFua0FjY291bnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtBY2NvdW50Q29sbGVjdGlvbih0aGlzLmdldEJ5VHlwZShUWVBFX0xPQU4pKTtcbiAgfVxuXG4gIGdldFNhdmluZ3NBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKHRoaXMuZ2V0QnlUeXBlKFRZUEVfTE9BTiwgdHJ1ZSkpO1xuICB9XG5cbiAgZ2V0T3BlbmluZ0JhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBudW1iZXIgPT4gc3VtICsgYmFua0FjY291bnQuZ2V0T3BlbmluZ0JhbGFuY2UoKSwgMCk7XG4gIH1cblxuICBnZXQgY3VycmVudEJhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgnY3VycmVudEJhbGFuY2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgQ29sbGVjdGlvbiBvZiBiYW5rIGFjY291bnRzIHdpdGggcHJvcGVydHkgdGFuayB0eXBlXG4gICAqL1xuICBnZXRQcm9wZXJ0eUJhbmtBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IGJvb2xlYW4gPT4gYmFua0FjY291bnQuaXNQcm9wZXJ0eVRhbmsoKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBDb2xsZWN0aW9uIG9mIGJhbmsgYWNjb3VudHMgd2l0aCB3b3JrIHRhbmsgdHlwZVxuICAgKi9cbiAgZ2V0V29ya0JhbmtBY2NvdW50cygpOiBCYW5rQWNjb3VudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua0FjY291bnRDb2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IGJvb2xlYW4gPT4gYmFua0FjY291bnQuaXNXb3JrVGFuaygpKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IENvbGxlY3Rpb24gb2YgYmFuayBhY2NvdW50cyBieSB0YW5rIHR5cGVcbiAgICovXG4gIGdldEJ5VGFua1R5cGUodGFua1R5cGU6IFRhbmtUeXBlRW51bSk6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rQWNjb3VudENvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogYm9vbGVhbiA9PiBiYW5rQWNjb3VudC50YW5rVHlwZSA9PT0gdGFua1R5cGUpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGlzdCBvZiBhbGwgYmFuayBhY2NvdW50IHByb3BlcnRpZXNcbiAgICovXG4gIGdldEJhbmtBY2NvdW50UHJvcGVydGllc0xpc3QoKTogQmFua0FjY291bnRQcm9wZXJ0eVtdIHtcbiAgICByZXR1cm4gZmxhdHRlbihcbiAgICAgIHRoaXMuaXRlbXMubWFwKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBCYW5rQWNjb3VudFByb3BlcnR5W10gPT4ge1xuICAgICAgICByZXR1cm4gYmFua0FjY291bnQuYmFua0FjY291bnRQcm9wZXJ0aWVzO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXMgb2YgdW5pcXVlIHByb3BlcnRpZXMgZnJvbSBhbGwgYmFuayBhY2NvdW50cyBwcm9wZXJ0aWVzXG4gICAqL1xuICBnZXRQcm9wZXJ0aWVzKCk6IFByb3BlcnR5W10ge1xuICAgIHJldHVybiB1bmlxQnkoXG4gICAgICB0aGlzLmdldEJhbmtBY2NvdW50UHJvcGVydGllc0xpc3QoKS5tYXAoKGJhbmtBY2NvdW50UHJvcGVydHk6IEJhbmtBY2NvdW50UHJvcGVydHkpID0+IHtcbiAgICAgICAgcmV0dXJuIGJhbmtBY2NvdW50UHJvcGVydHkucHJvcGVydHk7XG4gICAgICB9KSxcbiAgICAgICdpZCdcbiAgICApO1xuICB9XG5cbiAgZ2V0UHJvcGVydHlCYWxhbmNlQW1vdW50KHByb3BlcnR5SWQ6IG51bWJlcik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBzdW0gKyBiYW5rQWNjb3VudC5nZXRQcm9wZXJ0eUJhbGFuY2VBbW91bnQocHJvcGVydHlJZCk7XG4gICAgfSwgMCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { TransactionOperationEnum } from '../db/Enums/transaction-operation.enum';
|
|
2
|
+
import { AbstractCollection } from './abstract.collection';
|
|
3
|
+
import { CollectionDictionary } from './collection-dictionary';
|
|
4
|
+
/**
|
|
5
|
+
* Maximal delay between transfer transactions
|
|
6
|
+
*/
|
|
7
|
+
const TRANSACTION_TRANSFER_DELAY = 96 * 3600 * 1000;
|
|
8
|
+
/**
|
|
9
|
+
* Collection of bank transactions.
|
|
10
|
+
* IMPORTANT: Create this collection based on bank transactions from TransactionAllocationService
|
|
11
|
+
* @TODO find way to accept interface with allocation instead of bankTransaction to prevent wrong usage
|
|
12
|
+
* because all amounts calculates with allocated amounts but not from bank transactions amounts.
|
|
13
|
+
*/
|
|
14
|
+
export class BankTransactionCollection extends AbstractCollection {
|
|
15
|
+
getAmount() {
|
|
16
|
+
return this.sumBy('amount');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Difference between total bank transactions amount and sum of allocations for passed bank transactions
|
|
20
|
+
*/
|
|
21
|
+
getUnallocatedAmount(allocations) {
|
|
22
|
+
return +(this.getAmount() - allocations.getByBankTransactionsIds(this.getIds()).amount).toFixed(2);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* get date of the last transaction
|
|
26
|
+
*/
|
|
27
|
+
getLastTransactionDate() {
|
|
28
|
+
return new Date(Math.max.apply(Math, this.items.map((bankTransaction) => bankTransaction.date)));
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* get list of credit transactions
|
|
32
|
+
*/
|
|
33
|
+
get creditTransactions() {
|
|
34
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => bankTransaction.isCredit()));
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* get list of debit transactions
|
|
38
|
+
*/
|
|
39
|
+
get debitTransactions() {
|
|
40
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => bankTransaction.isDebit()));
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* get difference between debit and credit transactions amounts
|
|
44
|
+
*/
|
|
45
|
+
get balanceAmount() {
|
|
46
|
+
return this.items.reduce((sum, bankTransaction) => sum + bankTransaction.balanceAmount, 0);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* get list of transactions for passed month
|
|
50
|
+
* @param monthIndex Month number from 0 to 11
|
|
51
|
+
*/
|
|
52
|
+
getTransactionsByMonth(monthIndex) {
|
|
53
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => bankTransaction.date.getMonth() === monthIndex));
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* get list of transactions by provided bank accounts
|
|
57
|
+
* @param bankAccounts by which transactions should be returned
|
|
58
|
+
*/
|
|
59
|
+
getByBankAccounts(bankAccounts) {
|
|
60
|
+
const bankAccountIds = bankAccounts.map((bankAccount) => bankAccount.id);
|
|
61
|
+
return this.items.filter((bankTransaction) => bankAccountIds.includes(bankTransaction.bankAccount.id));
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* get list of transactions by provided ids of bank accounts
|
|
65
|
+
* @param ids of bank accounts
|
|
66
|
+
*/
|
|
67
|
+
getByBankAccountsIds(ids) {
|
|
68
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => ids.includes(bankTransaction.bankAccount.id)));
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Find Bank Transaction available for transfer
|
|
72
|
+
*/
|
|
73
|
+
findTransfer(bankTransaction) {
|
|
74
|
+
return this.items.find((item) => {
|
|
75
|
+
return item.amount + bankTransaction.amount === 0 &&
|
|
76
|
+
Math.abs(bankTransaction.date.getTime() - item.date.getTime()) < TRANSACTION_TRANSFER_DELAY;
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Group bank transactions by transaction id.
|
|
81
|
+
* Each group is bank transaction collection and contains bank transactions related to transactions via allocations
|
|
82
|
+
*/
|
|
83
|
+
groupByTransaction(allocations) {
|
|
84
|
+
// Group allocations by transaction id
|
|
85
|
+
const allocationsByTransactions = new CollectionDictionary(allocations, 'transaction');
|
|
86
|
+
// Init an empty dictionary we will fill below
|
|
87
|
+
const bankTransactionsByTransactions = new CollectionDictionary(new BankTransactionCollection([]));
|
|
88
|
+
// Fill dictionary with the same keys as at allocationsByTransactions
|
|
89
|
+
allocationsByTransactions.keys.forEach((key) => {
|
|
90
|
+
bankTransactionsByTransactions.add(key, this.getByAllocations(allocationsByTransactions.get(key)));
|
|
91
|
+
});
|
|
92
|
+
return bankTransactionsByTransactions;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Get collection of bank transactions related with passed allocations
|
|
96
|
+
*/
|
|
97
|
+
getByAllocations(allocations) {
|
|
98
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => allocations.hasBankTransaction(bankTransaction)));
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Set allocate operation for bank transactions with amounts equal to salary
|
|
102
|
+
*/
|
|
103
|
+
preselectAllocateOperationForSalary(salaryIncomeSources) {
|
|
104
|
+
// incomeSource.salaryForecasts[0] because each income source has only one forecast for current fin year
|
|
105
|
+
const salaryAmounts = salaryIncomeSources.map((incomeSource) => { var _a; return ((_a = incomeSource.salaryForecasts[0]) === null || _a === void 0 ? void 0 : _a.netPay) || 0; });
|
|
106
|
+
this.items.forEach((bankTransaction) => {
|
|
107
|
+
if (salaryAmounts.includes(bankTransaction.amount)) {
|
|
108
|
+
bankTransaction.operation = TransactionOperationEnum.ALLOCATE;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Get collection of unallocated bankTransactions
|
|
114
|
+
*/
|
|
115
|
+
getUnallocatedBankTransactions(allocations) {
|
|
116
|
+
return new BankTransactionCollection(this.items.filter((bankTransaction) => !bankTransaction.isAllocated(allocations)));
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay10cmFuc2FjdGlvbi5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2JhbmstdHJhbnNhY3Rpb24uY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUtsRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUcvRDs7R0FFRztBQUNILE1BQU0sMEJBQTBCLEdBQVcsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7QUFFNUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsa0JBQW1DO0lBQ2hGLFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CLENBQUMsV0FBNEM7UUFDL0QsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxHQUFHLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDckcsQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0JBQXNCO1FBQ3BCLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLGtC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SCxPQUFPLDhCQUE4QixDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLFdBQTRDO1FBQzNELE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFXLEVBQUUsQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDbEgsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILG1DQUFtQyxDQUFDLG1CQUFtQztRQUNyRSx3R0FBd0c7UUFDeEcsTUFBTSxhQUFhLEdBQWEsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUMsWUFBMEIsRUFBVSxFQUFFLFdBQUMsT0FBQSxDQUFBLE1BQUEsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQSxFQUFBLENBQUMsQ0FBQztRQUU5SSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLGVBQWdDLEVBQVEsRUFBRTtZQUM1RCxJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNsRCxlQUFlLENBQUMsU0FBUyxHQUFHLHdCQUF3QixDQUFDLFFBQVEsQ0FBQzthQUMvRDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0gsOEJBQThCLENBQUMsV0FBNEM7UUFDekUsT0FBTyxJQUFJLHlCQUF5QixDQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWdDLEVBQVcsRUFBRSxDQUFDLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUM1RyxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25PcGVyYXRpb25FbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tb3BlcmF0aW9uLmVudW0nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2JhbmsvYmFuay10cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBNb250aE51bWJlckVudW0gfSBmcm9tICcuLi9tb2RlbHMvZmluYW5jaWFsLXllYXIvbW9udGgtbnVtYmVyLmVudW0nO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vbW9kZWxzL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCB9IGZyb20gJy4uL21vZGVscy9iYW5rL2JhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbGxlY3Rpb24gfSBmcm9tICcuL2Fic3RyYWN0LmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuL2NvbGxlY3Rpb24tZGljdGlvbmFyeSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuXG4vKipcbiAqIE1heGltYWwgZGVsYXkgYmV0d2VlbiB0cmFuc2ZlciB0cmFuc2FjdGlvbnNcbiAqL1xuY29uc3QgVFJBTlNBQ1RJT05fVFJBTlNGRVJfREVMQVk6IG51bWJlciA9IDk2ICogMzYwMCAqIDEwMDA7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiBiYW5rIHRyYW5zYWN0aW9ucy5cbiAqIElNUE9SVEFOVDogQ3JlYXRlIHRoaXMgY29sbGVjdGlvbiBiYXNlZCBvbiBiYW5rIHRyYW5zYWN0aW9ucyBmcm9tIFRyYW5zYWN0aW9uQWxsb2NhdGlvblNlcnZpY2VcbiAqIEBUT0RPIGZpbmQgd2F5IHRvIGFjY2VwdCBpbnRlcmZhY2Ugd2l0aCBhbGxvY2F0aW9uIGluc3RlYWQgb2YgYmFua1RyYW5zYWN0aW9uIHRvIHByZXZlbnQgd3JvbmcgdXNhZ2VcbiAqIGJlY2F1c2UgYWxsIGFtb3VudHMgY2FsY3VsYXRlcyB3aXRoIGFsbG9jYXRlZCBhbW91bnRzIGJ1dCBub3QgZnJvbSBiYW5rIHRyYW5zYWN0aW9ucyBhbW91bnRzLlxuICovXG5leHBvcnQgY2xhc3MgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29sbGVjdGlvbjxCYW5rVHJhbnNhY3Rpb24+IHtcbiAgZ2V0QW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ2Ftb3VudCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpZmZlcmVuY2UgYmV0d2VlbiB0b3RhbCBiYW5rIHRyYW5zYWN0aW9ucyBhbW91bnQgYW5kIHN1bSBvZiBhbGxvY2F0aW9ucyBmb3IgcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbikge1xuICAgIHJldHVybiArKHRoaXMuZ2V0QW1vdW50KCkgLSBhbGxvY2F0aW9ucy5nZXRCeUJhbmtUcmFuc2FjdGlvbnNJZHModGhpcy5nZXRJZHMoKSkuYW1vdW50KS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBkYXRlIG9mIHRoZSBsYXN0IHRyYW5zYWN0aW9uXG4gICAqL1xuICBnZXRMYXN0VHJhbnNhY3Rpb25EYXRlKCk6IERhdGUge1xuICAgIHJldHVybiBuZXcgRGF0ZShNYXRoLm1heC5hcHBseShNYXRoLCB0aGlzLml0ZW1zLm1hcCgoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pID0+IGJhbmtUcmFuc2FjdGlvbi5kYXRlKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIGNyZWRpdCB0cmFuc2FjdGlvbnNcbiAgICovXG4gIGdldCBjcmVkaXRUcmFuc2FjdGlvbnMoKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rVHJhbnNhY3Rpb24uaXNDcmVkaXQoKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIGRlYml0IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0IGRlYml0VHJhbnNhY3Rpb25zKCk6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gYmFua1RyYW5zYWN0aW9uLmlzRGViaXQoKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBkaWZmZXJlbmNlIGJldHdlZW4gZGViaXQgYW5kIGNyZWRpdCB0cmFuc2FjdGlvbnMgYW1vdW50c1xuICAgKi9cbiAgZ2V0IGJhbGFuY2VBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gc3VtICsgYmFua1RyYW5zYWN0aW9uLmJhbGFuY2VBbW91bnQsIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIHRyYW5zYWN0aW9ucyBmb3IgcGFzc2VkIG1vbnRoXG4gICAqIEBwYXJhbSBtb250aEluZGV4IE1vbnRoIG51bWJlciBmcm9tIDAgdG8gMTFcbiAgICovXG4gIGdldFRyYW5zYWN0aW9uc0J5TW9udGgobW9udGhJbmRleDogTW9udGhOdW1iZXJFbnVtKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKSA9PiBiYW5rVHJhbnNhY3Rpb24uZGF0ZS5nZXRNb250aCgpID09PSBtb250aEluZGV4KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgdHJhbnNhY3Rpb25zIGJ5IHByb3ZpZGVkIGJhbmsgYWNjb3VudHNcbiAgICogQHBhcmFtIGJhbmtBY2NvdW50cyBieSB3aGljaCB0cmFuc2FjdGlvbnMgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBnZXRCeUJhbmtBY2NvdW50cyhiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50W10pOiBCYW5rVHJhbnNhY3Rpb25bXSB7XG4gICAgY29uc3QgYmFua0FjY291bnRJZHM6IG51bWJlcltdID0gYmFua0FjY291bnRzLm1hcCgoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KSA9PiBiYW5rQWNjb3VudC5pZCk7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gYmFua0FjY291bnRJZHMuaW5jbHVkZXMoYmFua1RyYW5zYWN0aW9uLmJhbmtBY2NvdW50LmlkKSk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgdHJhbnNhY3Rpb25zIGJ5IHByb3ZpZGVkIGlkcyBvZiBiYW5rIGFjY291bnRzXG4gICAqIEBwYXJhbSBpZHMgb2YgYmFuayBhY2NvdW50c1xuICAgKi9cbiAgZ2V0QnlCYW5rQWNjb3VudHNJZHMoaWRzOiBudW1iZXJbXSk6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gaWRzLmluY2x1ZGVzKGJhbmtUcmFuc2FjdGlvbi5iYW5rQWNjb3VudC5pZCkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIEJhbmsgVHJhbnNhY3Rpb24gYXZhaWxhYmxlIGZvciB0cmFuc2ZlclxuICAgKi9cbiAgZmluZFRyYW5zZmVyKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKTogQmFua1RyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKChpdGVtOiBCYW5rVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiBpdGVtLmFtb3VudCArIGJhbmtUcmFuc2FjdGlvbi5hbW91bnQgPT09IDAgJiZcbiAgICAgICAgTWF0aC5hYnMoYmFua1RyYW5zYWN0aW9uLmRhdGUuZ2V0VGltZSgpIC0gaXRlbS5kYXRlLmdldFRpbWUoKSkgPCBUUkFOU0FDVElPTl9UUkFOU0ZFUl9ERUxBWTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcm91cCBiYW5rIHRyYW5zYWN0aW9ucyBieSB0cmFuc2FjdGlvbiBpZC5cbiAgICogRWFjaCBncm91cCBpcyBiYW5rIHRyYW5zYWN0aW9uIGNvbGxlY3Rpb24gYW5kIGNvbnRhaW5zIGJhbmsgdHJhbnNhY3Rpb25zIHJlbGF0ZWQgdG8gdHJhbnNhY3Rpb25zIHZpYSBhbGxvY2F0aW9uc1xuICAgKi9cbiAgZ3JvdXBCeVRyYW5zYWN0aW9uKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogQ29sbGVjdGlvbkRpY3Rpb25hcnk8QmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbj4ge1xuICAgIC8vIEdyb3VwIGFsbG9jYXRpb25zIGJ5IHRyYW5zYWN0aW9uIGlkXG4gICAgY29uc3QgYWxsb2NhdGlvbnNCeVRyYW5zYWN0aW9ucyA9IG5ldyBDb2xsZWN0aW9uRGljdGlvbmFyeShhbGxvY2F0aW9ucywgJ3RyYW5zYWN0aW9uJyk7XG4gICAgLy8gSW5pdCBhbiBlbXB0eSBkaWN0aW9uYXJ5IHdlIHdpbGwgZmlsbCBiZWxvd1xuICAgIGNvbnN0IGJhbmtUcmFuc2FjdGlvbnNCeVRyYW5zYWN0aW9uczogQ29sbGVjdGlvbkRpY3Rpb25hcnk8QmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbj4gPSBuZXcgQ29sbGVjdGlvbkRpY3Rpb25hcnkobmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oW10pKTtcblxuICAgIC8vIEZpbGwgZGljdGlvbmFyeSB3aXRoIHRoZSBzYW1lIGtleXMgYXMgYXQgYWxsb2NhdGlvbnNCeVRyYW5zYWN0aW9uc1xuICAgIGFsbG9jYXRpb25zQnlUcmFuc2FjdGlvbnMua2V5cy5mb3JFYWNoKChrZXk6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zLmFkZChrZXksIHRoaXMuZ2V0QnlBbGxvY2F0aW9ucyhhbGxvY2F0aW9uc0J5VHJhbnNhY3Rpb25zLmdldChrZXkpKSk7XG4gICAgfSk7XG5cbiAgICByZXR1cm4gYmFua1RyYW5zYWN0aW9uc0J5VHJhbnNhY3Rpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjb2xsZWN0aW9uIG9mIGJhbmsgdHJhbnNhY3Rpb25zIHJlbGF0ZWQgd2l0aCBwYXNzZWQgYWxsb2NhdGlvbnNcbiAgICovXG4gIGdldEJ5QWxsb2NhdGlvbnMoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IGFsbG9jYXRpb25zLmhhc0JhbmtUcmFuc2FjdGlvbihiYW5rVHJhbnNhY3Rpb24pKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGFsbG9jYXRlIG9wZXJhdGlvbiBmb3IgYmFuayB0cmFuc2FjdGlvbnMgd2l0aCBhbW91bnRzIGVxdWFsIHRvIHNhbGFyeVxuICAgKi9cbiAgcHJlc2VsZWN0QWxsb2NhdGVPcGVyYXRpb25Gb3JTYWxhcnkoc2FsYXJ5SW5jb21lU291cmNlczogSW5jb21lU291cmNlW10pOiB2b2lkIHtcbiAgICAvLyBpbmNvbWVTb3VyY2Uuc2FsYXJ5Rm9yZWNhc3RzWzBdIGJlY2F1c2UgZWFjaCBpbmNvbWUgc291cmNlIGhhcyBvbmx5IG9uZSBmb3JlY2FzdCBmb3IgY3VycmVudCBmaW4geWVhclxuICAgIGNvbnN0IHNhbGFyeUFtb3VudHM6IG51bWJlcltdID0gc2FsYXJ5SW5jb21lU291cmNlcy5tYXAoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKTogbnVtYmVyID0+IGluY29tZVNvdXJjZS5zYWxhcnlGb3JlY2FzdHNbMF0/Lm5ldFBheSB8fCAwKTtcblxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24pOiB2b2lkID0+IHtcbiAgICAgIGlmIChzYWxhcnlBbW91bnRzLmluY2x1ZGVzKGJhbmtUcmFuc2FjdGlvbi5hbW91bnQpKSB7XG4gICAgICAgIGJhbmtUcmFuc2FjdGlvbi5vcGVyYXRpb24gPSBUcmFuc2FjdGlvbk9wZXJhdGlvbkVudW0uQUxMT0NBVEU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgdW5hbGxvY2F0ZWQgYmFua1RyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0VW5hbGxvY2F0ZWRCYW5rVHJhbnNhY3Rpb25zKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGJhbmtUcmFuc2FjdGlvbjogQmFua1RyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiAhYmFua1RyYW5zYWN0aW9uLmlzQWxsb2NhdGVkKGFsbG9jYXRpb25zKSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AbstractCollection } from './abstract.collection';
|
|
2
|
+
import { EmployeeCollection } from './employee.collection';
|
|
3
|
+
import { FirmTypeEnum } from '../db/Enums/firm-type.enum';
|
|
4
|
+
/**
|
|
5
|
+
* Collection of tax review
|
|
6
|
+
*/
|
|
7
|
+
export class ClientMovementCollection extends AbstractCollection {
|
|
8
|
+
get active() {
|
|
9
|
+
return new ClientMovementCollection(this.items.filter((clientMovement) => !clientMovement.dateTo));
|
|
10
|
+
}
|
|
11
|
+
get employees() {
|
|
12
|
+
return new EmployeeCollection(this.items.map((clientMovement) => clientMovement.employee));
|
|
13
|
+
}
|
|
14
|
+
get clients() {
|
|
15
|
+
return new EmployeeCollection(this.items.map((clientMovement) => clientMovement.client));
|
|
16
|
+
}
|
|
17
|
+
get accountant() {
|
|
18
|
+
var _a;
|
|
19
|
+
return (_a = this.items.filter((clientMovement) => clientMovement.firm.type === FirmTypeEnum.ACCOUNTANT)[0]) !== null && _a !== void 0 ? _a : null;
|
|
20
|
+
}
|
|
21
|
+
get advisors() {
|
|
22
|
+
return new ClientMovementCollection(this.items.filter((clientMovement) => clientMovement.firm.type === FirmTypeEnum.ADVISOR));
|
|
23
|
+
}
|
|
24
|
+
getByEmployeeId(id) {
|
|
25
|
+
return new ClientMovementCollection(this.items.filter((clientMovement) => clientMovement.employee.id === id));
|
|
26
|
+
}
|
|
27
|
+
getByFirmType(firmType) {
|
|
28
|
+
return new ClientMovementCollection(this.items.filter((clientMovement) => clientMovement.firm.type === firmType));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW1vdmVtZW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvY2xpZW50LW1vdmVtZW50LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGtCQUFrQztJQUM5RSxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUE4QixFQUFFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3JILENBQUM7SUFFRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxjQUE4QixFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsY0FBOEIsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDM0csQ0FBQztJQUVELElBQUksVUFBVTs7UUFDWixPQUFPLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUE4QixFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLG1DQUFJLElBQUksQ0FBQztJQUNoSSxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLHdCQUF3QixDQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQThCLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FDekcsQ0FBQztJQUNKLENBQUM7SUFFRCxlQUFlLENBQUMsRUFBVTtRQUN4QixPQUFPLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxjQUE4QixFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hJLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBc0I7UUFDbEMsT0FBTyxJQUFJLHdCQUF3QixDQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGNBQThCLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUM3RixDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb2xsZWN0aW9uIH0gZnJvbSAnLi9hYnN0cmFjdC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50IH0gZnJvbSAnLi4vbW9kZWxzL2NsaWVudC9jbGllbnQtbW92ZW1lbnQnO1xuaW1wb3J0IHsgRW1wbG95ZWVDb2xsZWN0aW9uIH0gZnJvbSAnLi9lbXBsb3llZS5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENsaWVudENvbGxlY3Rpb24gfSBmcm9tICcuL2NsaWVudC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IEZpcm1UeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL2Zpcm0tdHlwZS5lbnVtJztcblxuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIHRheCByZXZpZXdcbiAqL1xuZXhwb3J0IGNsYXNzIENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29sbGVjdGlvbjxDbGllbnRNb3ZlbWVudD4ge1xuICBnZXQgYWN0aXZlKCk6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24odGhpcy5pdGVtcy5maWx0ZXIoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gIWNsaWVudE1vdmVtZW50LmRhdGVUbykpO1xuICB9XG5cbiAgZ2V0IGVtcGxveWVlcygpOiBFbXBsb3llZUNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRW1wbG95ZWVDb2xsZWN0aW9uKHRoaXMuaXRlbXMubWFwKChjbGllbnRNb3ZlbWVudDogQ2xpZW50TW92ZW1lbnQpID0+IGNsaWVudE1vdmVtZW50LmVtcGxveWVlKSk7XG4gIH1cblxuICBnZXQgY2xpZW50cygpOiBDbGllbnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IEVtcGxveWVlQ29sbGVjdGlvbih0aGlzLml0ZW1zLm1hcCgoY2xpZW50TW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KSA9PiBjbGllbnRNb3ZlbWVudC5jbGllbnQpKTtcbiAgfVxuXG4gIGdldCBhY2NvdW50YW50KCk6IENsaWVudE1vdmVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maWx0ZXIoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gY2xpZW50TW92ZW1lbnQuZmlybS50eXBlID09PSBGaXJtVHlwZUVudW0uQUNDT1VOVEFOVClbMF0gPz8gbnVsbDtcbiAgfVxuXG4gIGdldCBhZHZpc29ycygpOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gY2xpZW50TW92ZW1lbnQuZmlybS50eXBlID09PSBGaXJtVHlwZUVudW0uQURWSVNPUilcbiAgICApO1xuICB9XG5cbiAgZ2V0QnlFbXBsb3llZUlkKGlkOiBudW1iZXIpOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uKHRoaXMuaXRlbXMuZmlsdGVyKChjbGllbnRNb3ZlbWVudDogQ2xpZW50TW92ZW1lbnQpID0+IGNsaWVudE1vdmVtZW50LmVtcGxveWVlLmlkID09PSBpZCkpO1xuICB9XG5cbiAgZ2V0QnlGaXJtVHlwZShmaXJtVHlwZTogRmlybVR5cGVFbnVtKTogQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChjbGllbnRNb3ZlbWVudDogQ2xpZW50TW92ZW1lbnQpID0+IGNsaWVudE1vdmVtZW50LmZpcm0udHlwZSA9PT0gZmlybVR5cGUpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Collection of employee clients tax summary information
|
|
3
|
+
*/
|
|
4
|
+
import { AbstractCollection } from './abstract.collection';
|
|
5
|
+
export class ClientPortfolioReportCollection extends AbstractCollection {
|
|
6
|
+
get marketValue() {
|
|
7
|
+
return this.sumBy('marketValue');
|
|
8
|
+
}
|
|
9
|
+
get loanBalance() {
|
|
10
|
+
return this.sumBy('loanBalance');
|
|
11
|
+
}
|
|
12
|
+
get equityPosition() {
|
|
13
|
+
return this.sumBy('equityPosition');
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Get average market value if there are more than 1 item in the collection
|
|
17
|
+
*/
|
|
18
|
+
get averageMarketValue() {
|
|
19
|
+
return this.items.length > 1 ? this.marketValue / this.items.length : null;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get average loan balance if there are more than 1 item in the collection
|
|
23
|
+
*/
|
|
24
|
+
get averageLoanBalance() {
|
|
25
|
+
return this.items.length > 1 ? this.loanBalance / this.items.length : null;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Get average equity position if there are more than 1 item in the collection
|
|
29
|
+
*/
|
|
30
|
+
get averageEquityPosition() {
|
|
31
|
+
return this.items.length > 1 ? this.equityPosition / this.items.length : null;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Return report by provided category name
|
|
35
|
+
*/
|
|
36
|
+
getByCategoryName(name) {
|
|
37
|
+
return this.items.find((item) => item.category === name);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LXBvcnRmb2xpby1yZXBvcnQuY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy9jbGllbnQtcG9ydGZvbGlvLXJlcG9ydC5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHM0QsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGtCQUF5QztJQUM1RixJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksa0JBQWtCO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxrQkFBa0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM3RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLHFCQUFxQjtRQUN2QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUFDLElBQVk7UUFDNUIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTJCLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDM0YsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGVtcGxveWVlIGNsaWVudHMgdGF4IHN1bW1hcnkgaW5mb3JtYXRpb25cbiAqL1xuaW1wb3J0IHsgQWJzdHJhY3RDb2xsZWN0aW9uIH0gZnJvbSAnLi9hYnN0cmFjdC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENsaWVudFBvcnRmb2xpb1JlcG9ydCB9IGZyb20gJy4uL21vZGVscy9jbGllbnQvY2xpZW50LXBvcnRmb2xpby1yZXBvcnQnO1xuXG5leHBvcnQgY2xhc3MgQ2xpZW50UG9ydGZvbGlvUmVwb3J0Q29sbGVjdGlvbiBleHRlbmRzIEFic3RyYWN0Q29sbGVjdGlvbjxDbGllbnRQb3J0Zm9saW9SZXBvcnQ+IHtcbiAgZ2V0IG1hcmtldFZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ21hcmtldFZhbHVlJyk7XG4gIH1cblxuICBnZXQgbG9hbkJhbGFuY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgnbG9hbkJhbGFuY2UnKTtcbiAgfVxuXG4gIGdldCBlcXVpdHlQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN1bUJ5KCdlcXVpdHlQb3NpdGlvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhdmVyYWdlIG1hcmtldCB2YWx1ZSBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIDEgaXRlbSBpbiB0aGUgY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0IGF2ZXJhZ2VNYXJrZXRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmxlbmd0aCA+IDEgPyB0aGlzLm1hcmtldFZhbHVlIC8gdGhpcy5pdGVtcy5sZW5ndGggOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhdmVyYWdlIGxvYW4gYmFsYW5jZSBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIDEgaXRlbSBpbiB0aGUgY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0IGF2ZXJhZ2VMb2FuQmFsYW5jZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmxlbmd0aCA+IDEgPyB0aGlzLmxvYW5CYWxhbmNlIC8gdGhpcy5pdGVtcy5sZW5ndGggOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhdmVyYWdlIGVxdWl0eSBwb3NpdGlvbiBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIDEgaXRlbSBpbiB0aGUgY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0IGF2ZXJhZ2VFcXVpdHlQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmxlbmd0aCA+IDEgPyB0aGlzLmVxdWl0eVBvc2l0aW9uIC8gdGhpcy5pdGVtcy5sZW5ndGggOiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybiByZXBvcnQgYnkgcHJvdmlkZWQgY2F0ZWdvcnkgbmFtZVxuICAgKi9cbiAgZ2V0QnlDYXRlZ29yeU5hbWUobmFtZTogc3RyaW5nKTogQ2xpZW50UG9ydGZvbGlvUmVwb3J0IHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5maW5kKChpdGVtOiBDbGllbnRQb3J0Zm9saW9SZXBvcnQpOiBib29sZWFuID0+IGl0ZW0uY2F0ZWdvcnkgPT09IG5hbWUpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AbstractCollection } from './abstract.collection';
|
|
2
|
+
export class ClientCollection extends AbstractCollection {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvY2xpZW50LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHM0QsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGtCQUF3QjtDQUM3RCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29sbGVjdGlvbiB9IGZyb20gJy4vYWJzdHJhY3QuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vbW9kZWxzL3VzZXIvdXNlcic7XG5cbmV4cG9ydCBjbGFzcyBDbGllbnRDb2xsZWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb2xsZWN0aW9uPFVzZXI+IHtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import has from 'lodash/has';
|
|
2
|
+
import get from 'lodash/get';
|
|
3
|
+
import flatten from 'lodash/flatten';
|
|
4
|
+
/**
|
|
5
|
+
* List of collections grouped by passed property
|
|
6
|
+
*/
|
|
7
|
+
export class CollectionDictionary {
|
|
8
|
+
/**
|
|
9
|
+
* @param collection The Collection instance to be grouped
|
|
10
|
+
* @param path Path to the property to be grouped (Examples: 'transaction', 'property.category')
|
|
11
|
+
* @param prop Optional: Field to group by (Default 'id', Examples: 'id', 'amount', 'date')
|
|
12
|
+
*/
|
|
13
|
+
constructor(collection, path = '', prop = 'id') {
|
|
14
|
+
/**
|
|
15
|
+
* List of grouped collections
|
|
16
|
+
*/
|
|
17
|
+
this.items = {};
|
|
18
|
+
this.collectionConstructor = collection.constructor;
|
|
19
|
+
// Nothing to group when collection is empty
|
|
20
|
+
if (!collection.length) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
// Check if the first collection item has property by path
|
|
24
|
+
if (!has(collection.items[0], path) && path) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
this.groupItems(collection, path, prop);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* List of collections keys
|
|
31
|
+
*/
|
|
32
|
+
get keys() {
|
|
33
|
+
return Object.keys(this.items);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Get collection by key or return empty collection if key does not exist
|
|
37
|
+
*/
|
|
38
|
+
get(key) {
|
|
39
|
+
return this.items[key] ? this.items[key] : this.createCollection([]);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Add new item by key
|
|
43
|
+
*/
|
|
44
|
+
add(key, value) {
|
|
45
|
+
this.items[key] = value;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Join several collections by ids
|
|
49
|
+
*/
|
|
50
|
+
merge(keys) {
|
|
51
|
+
return this.createCollection(flatten(keys.map((id) => this.get(id.toString()).items)));
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Create instance of collection
|
|
55
|
+
*/
|
|
56
|
+
createCollection(items = []) {
|
|
57
|
+
return new this.collectionConstructor(items);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Group collection items by passed path into items object
|
|
61
|
+
*/
|
|
62
|
+
groupItems(collection, path, prop) {
|
|
63
|
+
// Create empty initial object for groups
|
|
64
|
+
const obj = {};
|
|
65
|
+
// Group collection items
|
|
66
|
+
collection.items.forEach((item) => {
|
|
67
|
+
let key = get(item, `${path ? path + '.' : ''}${prop}`);
|
|
68
|
+
// if object does not have property for grouping it will be grouped as 'other'
|
|
69
|
+
if (key === undefined) {
|
|
70
|
+
key = 'other';
|
|
71
|
+
}
|
|
72
|
+
if (!obj[key]) {
|
|
73
|
+
obj[key] = [];
|
|
74
|
+
}
|
|
75
|
+
obj[key].push(item);
|
|
76
|
+
});
|
|
77
|
+
// Create collections from groups
|
|
78
|
+
Object.keys(obj).forEach((key) => {
|
|
79
|
+
this.items[key] = this.createCollection(obj[key]);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1kaWN0aW9uYXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NvbGxlY3Rpb24tZGljdGlvbmFyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEdBQUcsTUFBTSxZQUFZLENBQUM7QUFDN0IsT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDO0FBQzdCLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBR3JDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG9CQUFvQjtJQVcvQjs7OztPQUlHO0lBQ0gsWUFDRSxVQUFzQixFQUN0QixPQUFlLEVBQUUsRUFDakIsT0FBZSxJQUFJO1FBbEJyQjs7V0FFRztRQUNLLFVBQUssR0FBa0MsRUFBRSxDQUFDO1FBaUJoRCxJQUFJLENBQUMscUJBQXFCLEdBQUcsVUFBVSxDQUFDLFdBQWtELENBQUM7UUFFM0YsNENBQTRDO1FBQzVDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFO1lBQ3RCLE9BQU87U0FDUjtRQUVELDBEQUEwRDtRQUMxRCxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFO1lBQzNDLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLElBQUk7UUFDTixPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRDs7T0FFRztJQUNILEdBQUcsQ0FBQyxHQUFvQjtRQUN0QixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHLENBQUMsR0FBb0IsRUFBRSxLQUFpQjtRQUN6QyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsSUFBYztRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FDMUIsT0FBTyxDQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFVLEVBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQ2xFLENBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILGdCQUFnQixDQUFDLFFBQWtCLEVBQUU7UUFDbkMsT0FBTyxJQUFJLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7O09BRUc7SUFDSyxVQUFVLENBQUMsVUFBc0IsRUFBRSxJQUFZLEVBQUUsSUFBWTtRQUNuRSx5Q0FBeUM7UUFDekMsTUFBTSxHQUFHLEdBQXFDLEVBQUUsQ0FBQztRQUVqRCx5QkFBeUI7UUFDekIsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFZLEVBQVEsRUFBRTtZQUM5QyxJQUFJLEdBQUcsR0FBVyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUVoRSw4RUFBOEU7WUFDOUUsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO2dCQUNyQixHQUFHLEdBQUcsT0FBTyxDQUFDO2FBQ2Y7WUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNiLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDZjtZQUVELEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7UUFFSCxpQ0FBaUM7UUFDakMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFXLEVBQVEsRUFBRTtZQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBoYXMgZnJvbSAnbG9kYXNoL2hhcyc7XG5pbXBvcnQgZ2V0IGZyb20gJ2xvZGFzaC9nZXQnO1xuaW1wb3J0IGZsYXR0ZW4gZnJvbSAnbG9kYXNoL2ZsYXR0ZW4nO1xuaW1wb3J0IHsgQWJzdHJhY3RDb2xsZWN0aW9uIH0gZnJvbSAnLi9hYnN0cmFjdC5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBMaXN0IG9mIGNvbGxlY3Rpb25zIGdyb3VwZWQgYnkgcGFzc2VkIHByb3BlcnR5XG4gKi9cbmV4cG9ydCBjbGFzcyBDb2xsZWN0aW9uRGljdGlvbmFyeTxDb2xsZWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb2xsZWN0aW9uPG9iamVjdD4+IHtcbiAgLyoqXG4gICAqIExpc3Qgb2YgZ3JvdXBlZCBjb2xsZWN0aW9uc1xuICAgKi9cbiAgcHJpdmF0ZSBpdGVtczogeyBba2V5OiBzdHJpbmddOiBDb2xsZWN0aW9uIH0gPSB7fTtcblxuICAvKipcbiAgICogQ29uc3RydWN0b3IgZnVuY3Rpb24gb2YgcGFzc2VkIGNvbGxlY3Rpb24gZm9yIGNyZWF0aW5nIG5ldyBpbnN0YW5jZXNcbiAgICovXG4gIHByaXZhdGUgY29sbGVjdGlvbkNvbnN0cnVjdG9yOiBuZXcgKGl0ZW1zOiBvYmplY3RbXSkgPT4gQ29sbGVjdGlvbjtcblxuICAvKipcbiAgICogQHBhcmFtIGNvbGxlY3Rpb24gVGhlIENvbGxlY3Rpb24gaW5zdGFuY2UgdG8gYmUgZ3JvdXBlZFxuICAgKiBAcGFyYW0gcGF0aCBQYXRoIHRvIHRoZSBwcm9wZXJ0eSB0byBiZSBncm91cGVkIChFeGFtcGxlczogJ3RyYW5zYWN0aW9uJywgJ3Byb3BlcnR5LmNhdGVnb3J5JylcbiAgICogQHBhcmFtIHByb3AgT3B0aW9uYWw6IEZpZWxkIHRvIGdyb3VwIGJ5IChEZWZhdWx0ICdpZCcsIEV4YW1wbGVzOiAnaWQnLCAnYW1vdW50JywgJ2RhdGUnKVxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgY29sbGVjdGlvbjogQ29sbGVjdGlvbixcbiAgICBwYXRoOiBzdHJpbmcgPSAnJyxcbiAgICBwcm9wOiBzdHJpbmcgPSAnaWQnXG4gICkge1xuICAgIHRoaXMuY29sbGVjdGlvbkNvbnN0cnVjdG9yID0gY29sbGVjdGlvbi5jb25zdHJ1Y3RvciBhcyBuZXcgKGl0ZW1zOiBvYmplY3RbXSkgPT4gQ29sbGVjdGlvbjtcblxuICAgIC8vIE5vdGhpbmcgdG8gZ3JvdXAgd2hlbiBjb2xsZWN0aW9uIGlzIGVtcHR5XG4gICAgaWYgKCFjb2xsZWN0aW9uLmxlbmd0aCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIENoZWNrIGlmIHRoZSBmaXJzdCBjb2xsZWN0aW9uIGl0ZW0gaGFzIHByb3BlcnR5IGJ5IHBhdGhcbiAgICBpZiAoIWhhcyhjb2xsZWN0aW9uLml0ZW1zWzBdLCBwYXRoKSAmJiBwYXRoKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5ncm91cEl0ZW1zKGNvbGxlY3Rpb24sIHBhdGgsIHByb3ApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgY29sbGVjdGlvbnMga2V5c1xuICAgKi9cbiAgZ2V0IGtleXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLml0ZW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY29sbGVjdGlvbiBieSBrZXkgb3IgcmV0dXJuIGVtcHR5IGNvbGxlY3Rpb24gaWYga2V5IGRvZXMgbm90IGV4aXN0XG4gICAqL1xuICBnZXQoa2V5OiBzdHJpbmcgfCBudW1iZXIpOiBDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtc1trZXldID8gdGhpcy5pdGVtc1trZXldIDogdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFtdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgbmV3IGl0ZW0gYnkga2V5XG4gICAqL1xuICBhZGQoa2V5OiBzdHJpbmcgfCBudW1iZXIsIHZhbHVlOiBDb2xsZWN0aW9uKSB7XG4gICAgdGhpcy5pdGVtc1trZXldID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogSm9pbiBzZXZlcmFsIGNvbGxlY3Rpb25zIGJ5IGlkc1xuICAgKi9cbiAgbWVyZ2Uoa2V5czogbnVtYmVyW10pOiBDb2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKFxuICAgICAgZmxhdHRlbihcbiAgICAgICAga2V5cy5tYXAoKGlkOiBudW1iZXIpOiBvYmplY3RbXSA9PiB0aGlzLmdldChpZC50b1N0cmluZygpKS5pdGVtcylcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBpbnN0YW5jZSBvZiBjb2xsZWN0aW9uXG4gICAqL1xuICBjcmVhdGVDb2xsZWN0aW9uKGl0ZW1zOiBvYmplY3RbXSA9IFtdKTogQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyB0aGlzLmNvbGxlY3Rpb25Db25zdHJ1Y3RvcihpdGVtcyk7XG4gIH1cblxuICAvKipcbiAgICogR3JvdXAgY29sbGVjdGlvbiBpdGVtcyBieSBwYXNzZWQgcGF0aCBpbnRvIGl0ZW1zIG9iamVjdFxuICAgKi9cbiAgcHJpdmF0ZSBncm91cEl0ZW1zKGNvbGxlY3Rpb246IENvbGxlY3Rpb24sIHBhdGg6IHN0cmluZywgcHJvcDogc3RyaW5nKTogdm9pZCB7XG4gICAgLy8gQ3JlYXRlIGVtcHR5IGluaXRpYWwgb2JqZWN0IGZvciBncm91cHNcbiAgICBjb25zdCBvYmo6IHsgW2tleTogc3RyaW5nXTogQXJyYXk8b2JqZWN0PiB9ID0ge307XG5cbiAgICAvLyBHcm91cCBjb2xsZWN0aW9uIGl0ZW1zXG4gICAgY29sbGVjdGlvbi5pdGVtcy5mb3JFYWNoKChpdGVtOiBvYmplY3QpOiB2b2lkID0+IHtcbiAgICAgIGxldCBrZXk6IHN0cmluZyA9IGdldChpdGVtLCBgJHtwYXRoID8gcGF0aCArICcuJyA6ICcnfSR7cHJvcH1gKTtcblxuICAgICAgLy8gaWYgb2JqZWN0IGRvZXMgbm90IGhhdmUgcHJvcGVydHkgZm9yIGdyb3VwaW5nIGl0IHdpbGwgYmUgZ3JvdXBlZCBhcyAnb3RoZXInXG4gICAgICBpZiAoa2V5ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAga2V5ID0gJ290aGVyJztcbiAgICAgIH1cblxuICAgICAgaWYgKCFvYmpba2V5XSkge1xuICAgICAgICBvYmpba2V5XSA9IFtdO1xuICAgICAgfVxuXG4gICAgICBvYmpba2V5XS5wdXNoKGl0ZW0pO1xuICAgIH0pO1xuXG4gICAgLy8gQ3JlYXRlIGNvbGxlY3Rpb25zIGZyb20gZ3JvdXBzXG4gICAgT2JqZWN0LmtleXMob2JqKS5mb3JFYWNoKChrZXk6IHN0cmluZyk6IHZvaWQgPT4ge1xuICAgICAgdGhpcy5pdGVtc1trZXldID0gdGhpcy5jcmVhdGVDb2xsZWN0aW9uKG9ialtrZXldKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { AbstractCollection } from './abstract.collection';
|
|
2
|
+
/**
|
|
3
|
+
* Collection of depreciations
|
|
4
|
+
*/
|
|
5
|
+
export class DepreciationForecastCollection extends AbstractCollection {
|
|
6
|
+
filterByYear(financialYear) {
|
|
7
|
+
return new DepreciationForecastCollection(this.items.filter((forecast) => forecast.financialYear === financialYear));
|
|
8
|
+
}
|
|
9
|
+
getClaimAmountByMonth(month) {
|
|
10
|
+
return this.items.reduce((sum, item) => sum + item.getClaimAmountByMonth(month), 0);
|
|
11
|
+
}
|
|
12
|
+
get amount() {
|
|
13
|
+
return this.getSummary('amount');
|
|
14
|
+
}
|
|
15
|
+
get claimAmount() {
|
|
16
|
+
return this.getSummary('claimAmount');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLWZvcmVjYXN0LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLWZvcmVjYXN0LmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFHM0Q7O0dBRUc7QUFDSCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsa0JBQXdDO0lBQzFGLFlBQVksQ0FBQyxhQUFxQjtRQUNoQyxPQUFPLElBQUksOEJBQThCLENBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBOEIsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLGFBQWEsS0FBSyxhQUFhLENBQUMsQ0FDaEcsQ0FBQztJQUNKLENBQUM7SUFFRCxxQkFBcUIsQ0FBQyxLQUFhO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsSUFBMEIsRUFBVSxFQUFFLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUM1SCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDeEMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb2xsZWN0aW9uIH0gZnJvbSAnLi9hYnN0cmFjdC5jb2xsZWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkZvcmVjYXN0IH0gZnJvbSAnLi4vbW9kZWxzL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24tZm9yZWNhc3QnO1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgZGVwcmVjaWF0aW9uc1xuICovXG5leHBvcnQgY2xhc3MgRGVwcmVjaWF0aW9uRm9yZWNhc3RDb2xsZWN0aW9uIGV4dGVuZHMgQWJzdHJhY3RDb2xsZWN0aW9uPERlcHJlY2lhdGlvbkZvcmVjYXN0PiB7XG4gIGZpbHRlckJ5WWVhcihmaW5hbmNpYWxZZWFyOiBudW1iZXIpOiBhbnkge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uRm9yZWNhc3RDb2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGZvcmVjYXN0OiBEZXByZWNpYXRpb25Gb3JlY2FzdCkgPT4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA9PT0gZmluYW5jaWFsWWVhcilcbiAgICApO1xuICB9XG5cbiAgZ2V0Q2xhaW1BbW91bnRCeU1vbnRoKG1vbnRoOiBudW1iZXIpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IERlcHJlY2lhdGlvbkZvcmVjYXN0KTogbnVtYmVyID0+IHN1bSArIGl0ZW0uZ2V0Q2xhaW1BbW91bnRCeU1vbnRoKG1vbnRoKSwgMCk7XG4gIH1cblxuICBnZXQgYW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0U3VtbWFyeSgnYW1vdW50Jyk7XG4gIH1cblxuICBnZXQgY2xhaW1BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRTdW1tYXJ5KCdjbGFpbUFtb3VudCcpO1xuICB9XG59XG4iXX0=
|