taxtank-core 0.24.3 → 0.26.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/taxtank-core.umd.js +3067 -2561
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/client-invite.collection.js +1 -4
- package/esm2015/lib/collections/depreciation.collection.js +11 -1
- package/esm2015/lib/collections/index.js +3 -0
- package/esm2015/lib/collections/loan/loan-payment.collection.js +14 -1
- package/esm2015/lib/collections/loan/loan.collection.js +11 -1
- package/esm2015/lib/collections/report/vehicle-expense/vehicle-expense.collection.js +1 -1
- package/esm2015/lib/collections/transaction/transaction.collection.js +20 -1
- package/esm2015/lib/collections/vehicle/index.js +3 -0
- package/esm2015/lib/collections/vehicle/vehicle-claim.collection.js +27 -0
- package/esm2015/lib/collections/vehicle/vehicle-logbook.collection.js +106 -0
- package/esm2015/lib/db/Enums/bank-account-type.enum.js +3 -2
- package/esm2015/lib/db/Enums/vehicle-claim-details-method.enum.js +6 -0
- package/esm2015/lib/db/Models/sole/sole-business.js +1 -1
- package/esm2015/lib/db/Models/sole/sole-invoice-template.js +1 -1
- package/esm2015/lib/db/Models/transaction/transaction-base.js +15 -2
- package/esm2015/lib/db/Models/vehicle/vehicle-claim-details.js +4 -0
- package/esm2015/lib/db/Models/vehicle/vehicle-claim.js +1 -1
- package/esm2015/lib/db/Models/vehicle/vehicle-logbook.js +1 -1
- package/esm2015/lib/db/Models/vehicle/vehicle.js +1 -1
- package/esm2015/lib/forms/abstract.form.js +23 -1
- package/esm2015/lib/forms/bank/bank-account/bank-account-add-manual.form.js +8 -5
- package/esm2015/lib/forms/bank/bank-account/bank-account-allocation.form.js +16 -9
- package/esm2015/lib/forms/bank/bank-account/bank-account-import.form.js +8 -3
- package/esm2015/lib/forms/index.js +3 -4
- package/esm2015/lib/forms/loan/index.js +2 -0
- package/esm2015/lib/forms/loan/loan.form.js +86 -0
- package/esm2015/lib/forms/report/my-tax/my-tax-deductions.form.js +2 -2
- package/esm2015/lib/forms/sole/index.js +3 -1
- package/esm2015/lib/forms/sole/sole-business-allocations.form.js +65 -0
- package/esm2015/lib/forms/sole/sole-invoice-template.form.js +13 -0
- package/esm2015/lib/forms/vehicle/index.js +5 -0
- package/esm2015/lib/forms/vehicle/vehicle-claim-details.form.js +21 -0
- package/esm2015/lib/forms/vehicle/vehicle-claim.form.js +12 -102
- package/esm2015/lib/forms/vehicle/vehicle-logbook.form.js +56 -0
- package/esm2015/lib/forms/vehicle/vehicle.form.js +5 -2
- package/esm2015/lib/models/bank/bank-account-types.const.js +1 -2
- package/esm2015/lib/models/bank/bank-account.js +10 -5
- package/esm2015/lib/models/bank/type-loan.const.js +1 -2
- package/esm2015/lib/models/endpoint/endpoints.const.js +13 -4
- package/esm2015/lib/models/event/app-event-type.enum.js +7 -4
- package/esm2015/lib/models/index.js +2 -1
- package/esm2015/lib/models/loan/loan.js +36 -2
- package/esm2015/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.js +5 -5
- package/esm2015/lib/models/sole/sole-business.js +2 -2
- package/esm2015/lib/models/sole/sole-invoice-template.js +5 -2
- package/esm2015/lib/models/vehicle/index.js +6 -0
- package/esm2015/lib/models/vehicle/logbook-period.js +23 -0
- package/esm2015/lib/models/vehicle/vehicle-claim-details.js +26 -0
- package/esm2015/lib/models/vehicle/vehicle-claim.js +64 -0
- package/esm2015/lib/models/vehicle/vehicle-logbook.js +32 -0
- package/esm2015/lib/models/vehicle/vehicle.js +10 -0
- package/esm2015/lib/services/http/depreciation/depreciation.service.js +10 -5
- package/esm2015/lib/services/http/firm/client-invite/client-invite.service.js +15 -1
- package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +13 -10
- package/esm2015/lib/services/http/index.js +2 -1
- package/esm2015/lib/services/http/sole/index.js +2 -1
- package/esm2015/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.js +21 -0
- package/esm2015/lib/services/http/tax-review/tax-review.service.js +11 -3
- package/esm2015/lib/services/http/transaction/transaction.service.js +12 -1
- package/esm2015/lib/services/http/vehicle/index.js +5 -0
- package/esm2015/lib/services/http/vehicle/vehicle-claim-details.service.js +91 -0
- package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +65 -6
- package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +11 -47
- package/esm2015/lib/services/http/vehicle/vehicle.service.js +2 -52
- package/esm2015/lib/services/index.js +2 -1
- package/esm2015/lib/services/vehicle/index.js +2 -0
- package/esm2015/lib/services/vehicle/logbook-best-period.service.js +72 -0
- package/esm2015/lib/validators/index.js +3 -1
- package/esm2015/lib/validators/min-date/messages.enum.js +5 -0
- package/esm2015/lib/validators/min-date/min-date.validator.js +14 -0
- package/esm2015/public-api.js +3 -14
- package/fesm2015/taxtank-core.js +2253 -1814
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/client-invite.collection.d.ts +0 -3
- package/lib/collections/depreciation.collection.d.ts +6 -1
- package/lib/collections/index.d.ts +1 -0
- package/lib/collections/loan/loan-payment.collection.d.ts +4 -0
- package/lib/collections/loan/loan.collection.d.ts +6 -0
- package/lib/collections/report/vehicle-expense/vehicle-expense.collection.d.ts +1 -1
- package/lib/collections/transaction/transaction.collection.d.ts +9 -0
- package/lib/collections/vehicle/index.d.ts +2 -0
- package/lib/collections/vehicle/vehicle-claim.collection.d.ts +14 -0
- package/lib/collections/vehicle/vehicle-logbook.collection.d.ts +38 -0
- package/lib/db/Enums/bank-account-type.enum.d.ts +0 -1
- package/lib/db/Enums/vehicle-claim-details-method.enum.d.ts +4 -0
- package/lib/db/Models/sole/sole-business.d.ts +2 -0
- package/lib/db/Models/sole/sole-invoice-template.d.ts +1 -0
- package/lib/db/Models/transaction/transaction-base.d.ts +2 -0
- package/lib/db/Models/vehicle/vehicle-claim-details.d.ts +10 -0
- package/lib/db/Models/vehicle/vehicle-claim.d.ts +3 -5
- package/lib/db/Models/vehicle/vehicle-logbook.d.ts +3 -2
- package/lib/forms/abstract.form.d.ts +12 -0
- package/lib/forms/index.d.ts +2 -3
- package/lib/forms/loan/index.d.ts +1 -0
- package/lib/forms/loan/loan.form.d.ts +25 -0
- package/lib/forms/sole/index.d.ts +2 -0
- package/lib/forms/sole/sole-business-allocations.form.d.ts +17 -0
- package/lib/forms/sole/sole-invoice-template.form.d.ts +5 -0
- package/lib/forms/vehicle/index.d.ts +4 -0
- package/lib/forms/vehicle/vehicle-claim-details.form.d.ts +13 -0
- package/lib/forms/vehicle/vehicle-claim.form.d.ts +8 -38
- package/lib/forms/vehicle/vehicle-logbook.form.d.ts +20 -0
- package/lib/forms/vehicle/vehicle.form.d.ts +4 -1
- package/lib/models/bank/bank-account.d.ts +3 -2
- package/lib/models/event/app-event-type.enum.d.ts +6 -3
- package/lib/models/index.d.ts +1 -0
- package/lib/models/loan/loan.d.ts +26 -0
- package/lib/models/report/my-tax/my-tax-deductions/my-tax-deductions.d.ts +3 -2
- package/lib/models/sole/sole-business.d.ts +1 -1
- package/lib/models/sole/sole-invoice-template.d.ts +1 -0
- package/lib/models/vehicle/index.d.ts +5 -0
- package/lib/models/vehicle/logbook-period.d.ts +15 -0
- package/lib/models/vehicle/vehicle-claim-details.d.ts +8 -0
- package/lib/models/{logbook → vehicle}/vehicle-claim.d.ts +11 -17
- package/lib/models/vehicle/vehicle-logbook.d.ts +17 -0
- package/lib/models/{logbook → vehicle}/vehicle.d.ts +0 -5
- package/lib/services/http/depreciation/depreciation.service.d.ts +1 -1
- package/lib/services/http/firm/client-invite/client-invite.service.d.ts +7 -1
- package/lib/services/http/firm/client-movement/client-movement.service.d.ts +2 -4
- package/lib/services/http/index.d.ts +1 -0
- package/lib/services/http/sole/index.d.ts +1 -0
- package/lib/services/http/sole/sole-invoice-template/sole-invoice-template.service.d.ts +11 -0
- package/lib/services/http/tax-review/tax-review.service.d.ts +1 -0
- package/lib/services/http/transaction/transaction.service.d.ts +1 -0
- package/lib/services/http/vehicle/index.d.ts +4 -0
- package/lib/services/http/vehicle/vehicle-claim-details.service.d.ts +34 -0
- package/lib/services/http/vehicle/vehicle-claim.service.d.ts +22 -5
- package/lib/services/http/vehicle/vehicle-logbook.service.d.ts +6 -15
- package/lib/services/http/vehicle/vehicle.service.d.ts +2 -20
- package/lib/services/index.d.ts +1 -0
- package/lib/services/vehicle/index.d.ts +1 -0
- package/lib/services/vehicle/logbook-best-period.service.d.ts +28 -0
- package/lib/validators/index.d.ts +2 -0
- package/lib/validators/min-date/messages.enum.d.ts +3 -0
- package/lib/validators/min-date/min-date.validator.d.ts +5 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -13
- package/esm2015/lib/collections/vehicle-logbook.collection.js +0 -88
- package/esm2015/lib/collections/vehicle.collection.js +0 -9
- package/esm2015/lib/db/Enums/vehicle-claim-method.enum.js +0 -6
- package/esm2015/lib/forms/bank/bank-account/bank-account-loan.form.js +0 -23
- package/esm2015/lib/models/logbook/default-vehicle-expense.js +0 -20
- package/esm2015/lib/models/logbook/logbook-period.js +0 -18
- package/esm2015/lib/models/logbook/logbook-purpose-options.const.js +0 -6
- package/esm2015/lib/models/logbook/vehicle-claim.js +0 -94
- package/esm2015/lib/models/logbook/vehicle-logbook.js +0 -22
- package/esm2015/lib/models/logbook/vehicle.js +0 -17
- package/esm2015/lib/services/http/user/users-invite/users-invite.service.js +0 -23
- package/esm2015/lib/services/http/vehicle/messages.enum.js +0 -13
- package/lib/collections/vehicle-logbook.collection.d.ts +0 -30
- package/lib/collections/vehicle.collection.d.ts +0 -6
- package/lib/db/Enums/vehicle-claim-method.enum.d.ts +0 -4
- package/lib/forms/bank/bank-account/bank-account-loan.form.d.ts +0 -8
- package/lib/models/logbook/default-vehicle-expense.d.ts +0 -5
- package/lib/models/logbook/logbook-period.d.ts +0 -10
- package/lib/models/logbook/logbook-purpose-options.const.d.ts +0 -4
- package/lib/models/logbook/vehicle-logbook.d.ts +0 -12
- package/lib/services/http/user/users-invite/users-invite.service.d.ts +0 -13
- package/lib/services/http/vehicle/messages.enum.d.ts +0 -11
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import { Collection } from './collection';
|
|
2
|
-
/**
|
|
3
|
-
* Collection of tax review
|
|
4
|
-
*/
|
|
5
2
|
export class ClientInviteCollection extends Collection {
|
|
6
3
|
getPending() {
|
|
7
4
|
return this.filter((invite) => invite.isPending());
|
|
8
5
|
}
|
|
9
6
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LWludml0ZS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2NsaWVudC1pbnZpdGUuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzFDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUF3QjtJQUNsRSxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBb0IsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDbkUsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBDbGllbnRJbnZpdGUgfSBmcm9tICcuLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbnZpdGUnO1xuXG5leHBvcnQgY2xhc3MgQ2xpZW50SW52aXRlQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248Q2xpZW50SW52aXRlPiB7XG4gIGdldFBlbmRpbmcoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChpbnZpdGU6IENsaWVudEludml0ZSkgPT4gaW52aXRlLmlzUGVuZGluZygpKTtcbiAgfVxufVxuIl19
|
|
@@ -105,5 +105,15 @@ export class DepreciationCollection extends Collection {
|
|
|
105
105
|
toTransactions() {
|
|
106
106
|
return new TransactionCollection(this.items.map((item) => item.toTransaction()));
|
|
107
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Get depreciations by vehicle claim. Only vehicle depreciations may be related to vehicle claim
|
|
110
|
+
*/
|
|
111
|
+
getByVehicleClaim(vehicleClaim) {
|
|
112
|
+
return vehicleClaim.isSoleTank()
|
|
113
|
+
// sole tank may have multiple vehicle claims, so we need to filter by business.id
|
|
114
|
+
? this.getVehicleDepreciations().filterBy('business.id', vehicleClaim.business.id)
|
|
115
|
+
// work tank may have only one vehicle claim, so we need to filter by tank type
|
|
116
|
+
: this.getVehicleDepreciations().filterBy('tankType', TankTypeEnum.WORK);
|
|
117
|
+
}
|
|
108
118
|
}
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRzdFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUF3QjtJQUVsRTs7T0FFRztJQUNILElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsWUFBMEIsRUFBVSxFQUFFLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUcsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsWUFBMEIsRUFBRSxFQUFFO1lBQ25FLE9BQU8sR0FBRyxHQUFHLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUM7UUFDNUQsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELHNCQUFzQixDQUFDLE9BQWUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMxRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxF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QUMsTUFBTSxDQUFDLENBQUMsWUFBMEIsRUFBVyxFQUFFO1lBQ3hELE9BQU8sWUFBWSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsUUFBc0I7UUFDbEMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLFlBQTBCLEVBQVcsRUFBRTtZQUN4RCxRQUFRLFFBQVEsRUFBRTtnQkFDaEIsS0FBSyxZQUFZLENBQUMsUUFBUTtvQkFDeEIsT0FBTyxZQUFZLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZDLEtBQUssWUFBWSxDQUFDLElBQUk7b0JBQ3BCLE9BQU8sWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNuQyxLQUFLLFlBQVksQ0FBQyxJQUFJO29CQUNwQixPQUFPLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDbkMsb0NBQW9DO2dCQUNwQztvQkFDRSxPQUFPLEtBQUssQ0FBQzthQUNoQjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjO1FBQ1osT0FBTyxJQUFJLHFCQUFxQixDQUM5QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQWtCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUM3RCxDQUFDO0lBQ0osQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4vY29sbGVjdGlvbic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb24gfSBmcm9tICcuLi9tb2RlbHMvZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgdW5pcUJ5IGZyb20gJ2xvZGFzaC91bmlxQnknO1xuaW1wb3J0IGNvbXBhY3QgZnJvbSAnbG9kYXNoL2NvbXBhY3QnO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QgfSBmcm9tICcuLi9tb2RlbHMvZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbi1jYXBpdGFsLXByb2plY3QnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcblxuZXhwb3J0IGNsYXNzIERlcHJlY2lhdGlvbkNvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPERlcHJlY2lhdGlvbj4ge1xuXG4gIC8qKlxuICAgKiBHZXQgdG90YWwgYW1vdW50IG9mIGFsbCBkZXByZWNpYXRpb25zIGluIHRoZSBjb2xsZWN0aW9uXG4gICAqL1xuICBnZXQgYW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBudW1iZXIgPT4gc3VtICsgZGVwcmVjaWF0aW9uLmFtb3VudCwgMCk7XG4gIH1cblxuICBnZXQgY2xhaW1BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIHN1bSArIGRlcHJlY2lhdGlvbi5jdXJyZW50WWVhckZvcmVjYXN0LmNsYWltQW1vdW50O1xuICAgIH0sIDApO1xuICB9XG5cbiAgZ2V0Q2xhaW1lZEFtb3VudEJ5WWVhcih5ZWFyOiBudW1iZXIgPSArbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2ZpbmFuY2lhbFllYXInKSk6IG51bWJlciB7XG4gICAgcmV0dXJuICtNYXRoLnJvdW5kKHRoaXMuYW1vdW50IC0gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmdldENsb3NlQmFsYW5jZUJ5WWVhcih5ZWFyKTtcbiAgICB9LCAwKSkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIGdldENsYWltQW1vdW50QnlZZWFyKHllYXI6IG51bWJlciA9ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnZmluYW5jaWFsWWVhcicpKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmdldENsYWltQW1vdW50QnlZZWFyKHllYXIpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgZ2V0Q2xvc2VCYWxhbmNlQnlZZWFyKHllYXI6IG51bWJlciA9ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnZmluYW5jaWFsWWVhcicpKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmdldENsb3NlQmFsYW5jZUJ5WWVhcih5ZWFyKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIGdldEN1cnJlbnRZZWFyRm9yZWNhc3RBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmN1cnJlbnRZZWFyRm9yZWNhc3QuYW1vdW50O1xuICAgIH0sIDApO1xuICB9XG5cbiAgZ2V0IGNsb3NlQmFsYW5jZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN1bUJ5KCdjdXJyZW50WWVhckZvcmVjYXN0LmNsb3NlQmFsYW5jZScpO1xuICB9XG5cbiAgZ2V0QnlQcm9wZXJ0aWVzSWRzKGlkczogbnVtYmVyW10pOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+IGlkcy5pbmNsdWRlcyhkZXByZWNpYXRpb24ucHJvcGVydHk/LmlkKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0V2l0aENhcGl0YWxQcm9qZWN0KCk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gISFkZXByZWNpYXRpb24uZGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QpXG4gICAgKTtcbiAgfVxuXG4gIGdldFdpdGhvdXRDYXBpdGFsUHJvamVjdCgpOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+ICFkZXByZWNpYXRpb24uZGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QpXG4gICAgKTtcbiAgfVxuXG4gIGdldFdpdGhvdXRCb3Jyb3dpbmdFeHBlbnNlcygpOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+ICFkZXByZWNpYXRpb24uaXNCb3Jyb3dpbmdFeHBlbnNlKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldEJ5Q2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoY2F0ZWdvcmllczogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bVtdKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiBjYXRlZ29yaWVzLmluY2x1ZGVzKGRlcHJlY2lhdGlvbi5jaGFydEFjY291bnRzLmNhdGVnb3J5KSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QXNzZXRzKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigoZGVwcmVjaWF0aW9uKSA9PiBkZXByZWNpYXRpb24uaXNBc3NldCgpKTtcbiAgfVxuXG4gIGdldFBsYW50RXF1aXBtZW50KCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigoZGVwcmVjaWF0aW9uKSA9PiBkZXByZWNpYXRpb24uaXNQbGFudEVxdWlwbWVudCgpKTtcbiAgfVxuXG4gIGdldENhcGl0YWxEZXByZWNpYXRpb25zKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmZpbHRlcigoZGVwcmVjaWF0aW9uKSA9PiBkZXByZWNpYXRpb24uaXNDYXBpdGFsKCkpO1xuICB9XG5cbiAgZ2V0Qm9ycm93aW5nRXhwZW5zZURlcHJlY2lhdGlvbnMoKTogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBEZXByZWNpYXRpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiBkZXByZWNpYXRpb24uaXNCb3Jyb3dpbmdFeHBlbnNlKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldFdyaXR0ZW5PZmZEZXByZWNpYXRpb25zKCk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gZGVwcmVjaWF0aW9uLmlzV3JpdHRlbk9mZigpKVxuICAgICk7XG4gIH1cblxuICBnZXRMb3dWYWx1ZVBvb2xEZXByZWNpYXRpb25zKCk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gZGVwcmVjaWF0aW9uLmlzTG93VmFsdWVQb29sKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldENhcGl0YWxQcm9qZWN0cygpOiBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdFtdIHtcbiAgICByZXR1cm4gdW5pcUJ5KFxuICAgICAgY29tcGFjdChcbiAgICAgICAgdGhpcy5pdGVtcy5tYXAoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogRGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3QgPT4ge1xuICAgICAgICAgIHJldHVybiBkZXByZWNpYXRpb24uZGVwcmVjaWF0aW9uQ2FwaXRhbFByb2plY3Q7XG4gICAgICAgIH0pXG4gICAgICApLFxuICAgICAgJ2lkJ1xuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgbmV3IGNvbGxlY3Rpb24gb2YgZGVwcmVjaWF0aW9ucyByZWxhdGVkIHRvIHZlaGljbGVzXG4gICAqL1xuICBnZXRWZWhpY2xlRGVwcmVjaWF0aW9ucygpOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+IHtcbiAgICAgICAgcmV0dXJuIGRlcHJlY2lhdGlvbi5pc1ZlaGljbGVEZXByZWNpYXRpb24oKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEJ5VGFua1R5cGUodGFua1R5cGU6IFRhbmtUeXBlRW51bSk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICBzd2l0Y2ggKHRhbmtUeXBlKSB7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uUFJPUEVSVFk6XG4gICAgICAgICAgICByZXR1cm4gZGVwcmVjaWF0aW9uLmlzUHJvcGVydHlUYW5rKCk7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uV09SSzpcbiAgICAgICAgICAgIHJldHVybiBkZXByZWNpYXRpb24uaXNXb3JrVGFuaygpO1xuICAgICAgICAgIGNhc2UgVGFua1R5cGVFbnVtLlNPTEU6XG4gICAgICAgICAgICByZXR1cm4gZGVwcmVjaWF0aW9uLmlzU29sZVRhbmsoKTtcbiAgICAgICAgICAvLyBjYXNlIGZvciBvdGhlciB0YW5rIG9yIHNvbWUgZXh0cmFcbiAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIFRyYW5zYWN0aW9uQ29sbGVjdGlvbiBmcm9tIGRlcHJlY2lhdGlvbiBpdGVtc1xuICAgKi9cbiAgdG9UcmFuc2FjdGlvbnMoKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMubWFwKChpdGVtOiBEZXByZWNpYXRpb24pID0+IGl0ZW0udG9UcmFuc2FjdGlvbigpKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFMUMsT0FBTyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ25DLE9BQU8sT0FBTyxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBSTdFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxVQUF3QjtJQUVsRTs7T0FFRztJQUNILElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsWUFBMEIsRUFBVSxFQUFFLENBQUMsR0FBRyxHQUFHLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDOUcsQ0FBQztJQUVELElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFXLEVBQUUsWUFBMEIsRUFBRSxFQUFFO1lBQ25FLE9BQU8sR0FBRyxHQUFHLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUM7UUFDNUQsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELHNCQUFzQixDQUFDLE9BQWUsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMxRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxF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LEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vbW9kZWxzL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHVuaXFCeSBmcm9tICdsb2Rhc2gvdW5pcUJ5JztcbmltcG9ydCBjb21wYWN0IGZyb20gJ2xvZGFzaC9jb21wYWN0JztcbmltcG9ydCB7IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0IH0gZnJvbSAnLi4vbW9kZWxzL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24tY2FwaXRhbC1wcm9qZWN0JztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtIH0gZnJvbSAnLi4vZGIvRW51bXMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcnkuZW51bSc7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW0gfSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgY2xhc3MgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiBleHRlbmRzIENvbGxlY3Rpb248RGVwcmVjaWF0aW9uPiB7XG5cbiAgLyoqXG4gICAqIEdldCB0b3RhbCBhbW91bnQgb2YgYWxsIGRlcHJlY2lhdGlvbnMgaW4gdGhlIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldCBhbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IG51bWJlciA9PiBzdW0gKyBkZXByZWNpYXRpb24uYW1vdW50LCAwKTtcbiAgfVxuXG4gIGdldCBjbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKSA9PiB7XG4gICAgICByZXR1cm4gc3VtICsgZGVwcmVjaWF0aW9uLmN1cnJlbnRZZWFyRm9yZWNhc3QuY2xhaW1BbW91bnQ7XG4gICAgfSwgMCk7XG4gIH1cblxuICBnZXRDbGFpbWVkQW1vdW50QnlZZWFyKHllYXI6IG51bWJlciA9ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnZmluYW5jaWFsWWVhcicpKTogbnVtYmVyIHtcbiAgICByZXR1cm4gK01hdGgucm91bmQodGhpcy5hbW91bnQgLSB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBzdW0gKyBkZXByZWNpYXRpb24uZ2V0Q2xvc2VCYWxhbmNlQnlZZWFyKHllYXIpO1xuICAgIH0sIDApKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgZ2V0Q2xhaW1BbW91bnRCeVllYXIoeWVhcjogbnVtYmVyID0gK2xvY2FsU3RvcmFnZS5nZXRJdGVtKCdmaW5hbmNpYWxZZWFyJykpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBzdW0gKyBkZXByZWNpYXRpb24uZ2V0Q2xhaW1BbW91bnRCeVllYXIoeWVhcik7XG4gICAgfSwgMCk7XG4gIH1cblxuICBnZXRDbG9zZUJhbGFuY2VCeVllYXIoeWVhcjogbnVtYmVyID0gK2xvY2FsU3RvcmFnZS5nZXRJdGVtKCdmaW5hbmNpYWxZZWFyJykpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBzdW0gKyBkZXByZWNpYXRpb24uZ2V0Q2xvc2VCYWxhbmNlQnlZZWFyKHllYXIpO1xuICAgIH0sIDApO1xuICB9XG5cbiAgZ2V0Q3VycmVudFllYXJGb3JlY2FzdEFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiBzdW0gKyBkZXByZWNpYXRpb24uY3VycmVudFllYXJGb3JlY2FzdC5hbW91bnQ7XG4gICAgfSwgMCk7XG4gIH1cblxuICBnZXQgY2xvc2VCYWxhbmNlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtQnkoJ2N1cnJlbnRZZWFyRm9yZWNhc3QuY2xvc2VCYWxhbmNlJyk7XG4gIH1cblxuICBnZXRCeVByb3BlcnRpZXNJZHMoaWRzOiBudW1iZXJbXSk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gaWRzLmluY2x1ZGVzKGRlcHJlY2lhdGlvbi5wcm9wZXJ0eT8uaWQpKVxuICAgICk7XG4gIH1cblxuICBnZXRXaXRoQ2FwaXRhbFByb2plY3QoKTogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBEZXByZWNpYXRpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiAhIWRlcHJlY2lhdGlvbi5kZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdClcbiAgICApO1xuICB9XG5cbiAgZ2V0V2l0aG91dENhcGl0YWxQcm9qZWN0KCk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gIWRlcHJlY2lhdGlvbi5kZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdClcbiAgICApO1xuICB9XG5cbiAgZ2V0V2l0aG91dEJvcnJvd2luZ0V4cGVuc2VzKCk6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4gIWRlcHJlY2lhdGlvbi5pc0JvcnJvd2luZ0V4cGVuc2UoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QnlDaGFydEFjY291bnRzQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10pOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+IGNhdGVnb3JpZXMuaW5jbHVkZXMoZGVwcmVjaWF0aW9uLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkpKVxuICAgICk7XG4gIH1cblxuICBnZXRBc3NldHMoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChkZXByZWNpYXRpb24pID0+IGRlcHJlY2lhdGlvbi5pc0Fzc2V0KCkpO1xuICB9XG5cbiAgZ2V0UGxhbnRFcXVpcG1lbnQoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChkZXByZWNpYXRpb24pID0+IGRlcHJlY2lhdGlvbi5pc1BsYW50RXF1aXBtZW50KCkpO1xuICB9XG5cbiAgZ2V0Q2FwaXRhbERlcHJlY2lhdGlvbnMoKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChkZXByZWNpYXRpb24pID0+IGRlcHJlY2lhdGlvbi5pc0NhcGl0YWwoKSk7XG4gIH1cblxuICBnZXRCb3Jyb3dpbmdFeHBlbnNlRGVwcmVjaWF0aW9ucygpOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBib29sZWFuID0+IGRlcHJlY2lhdGlvbi5pc0JvcnJvd2luZ0V4cGVuc2UoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0V3JpdHRlbk9mZkRlcHJlY2lhdGlvbnMoKTogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBEZXByZWNpYXRpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiBkZXByZWNpYXRpb24uaXNXcml0dGVuT2ZmKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldExvd1ZhbHVlUG9vbERlcHJlY2lhdGlvbnMoKTogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBEZXByZWNpYXRpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiBkZXByZWNpYXRpb24uaXNMb3dWYWx1ZVBvb2woKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0Q2FwaXRhbFByb2plY3RzKCk6IERlcHJlY2lhdGlvbkNhcGl0YWxQcm9qZWN0W10ge1xuICAgIHJldHVybiB1bmlxQnkoXG4gICAgICBjb21wYWN0KFxuICAgICAgICB0aGlzLml0ZW1zLm1hcCgoZGVwcmVjaWF0aW9uOiBEZXByZWNpYXRpb24pOiBEZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdCA9PiB7XG4gICAgICAgICAgcmV0dXJuIGRlcHJlY2lhdGlvbi5kZXByZWNpYXRpb25DYXBpdGFsUHJvamVjdDtcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgICAnaWQnXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBuZXcgY29sbGVjdGlvbiBvZiBkZXByZWNpYXRpb25zIHJlbGF0ZWQgdG8gdmVoaWNsZXNcbiAgICovXG4gIGdldFZlaGljbGVEZXByZWNpYXRpb25zKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKChkZXByZWNpYXRpb246IERlcHJlY2lhdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICByZXR1cm4gZGVwcmVjaWF0aW9uLmlzVmVoaWNsZURlcHJlY2lhdGlvbigpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QnlUYW5rVHlwZSh0YW5rVHlwZTogVGFua1R5cGVFbnVtKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGRlcHJlY2lhdGlvbjogRGVwcmVjaWF0aW9uKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIHN3aXRjaCAodGFua1R5cGUpIHtcbiAgICAgICAgICBjYXNlIFRhbmtUeXBlRW51bS5QUk9QRVJUWTpcbiAgICAgICAgICAgIHJldHVybiBkZXByZWNpYXRpb24uaXNQcm9wZXJ0eVRhbmsoKTtcbiAgICAgICAgICBjYXNlIFRhbmtUeXBlRW51bS5XT1JLOlxuICAgICAgICAgICAgcmV0dXJuIGRlcHJlY2lhdGlvbi5pc1dvcmtUYW5rKCk7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uU09MRTpcbiAgICAgICAgICAgIHJldHVybiBkZXByZWNpYXRpb24uaXNTb2xlVGFuaygpO1xuICAgICAgICAgIC8vIGNhc2UgZm9yIG90aGVyIHRhbmsgb3Igc29tZSBleHRyYVxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgVHJhbnNhY3Rpb25Db2xsZWN0aW9uIGZyb20gZGVwcmVjaWF0aW9uIGl0ZW1zXG4gICAqL1xuICB0b1RyYW5zYWN0aW9ucygpOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5tYXAoKGl0ZW06IERlcHJlY2lhdGlvbikgPT4gaXRlbS50b1RyYW5zYWN0aW9uKCkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZGVwcmVjaWF0aW9ucyBieSB2ZWhpY2xlIGNsYWltLiBPbmx5IHZlaGljbGUgZGVwcmVjaWF0aW9ucyBtYXkgYmUgcmVsYXRlZCB0byB2ZWhpY2xlIGNsYWltXG4gICAqL1xuICBnZXRCeVZlaGljbGVDbGFpbSh2ZWhpY2xlQ2xhaW06IFZlaGljbGVDbGFpbSk6IHRoaXMge1xuICAgIHJldHVybiB2ZWhpY2xlQ2xhaW0uaXNTb2xlVGFuaygpXG4gICAgICAvLyBzb2xlIHRhbmsgbWF5IGhhdmUgbXVsdGlwbGUgdmVoaWNsZSBjbGFpbXMsIHNvIHdlIG5lZWQgdG8gZmlsdGVyIGJ5IGJ1c2luZXNzLmlkXG4gICAgICA/IHRoaXMuZ2V0VmVoaWNsZURlcHJlY2lhdGlvbnMoKS5maWx0ZXJCeSgnYnVzaW5lc3MuaWQnLCB2ZWhpY2xlQ2xhaW0uYnVzaW5lc3MuaWQpXG4gICAgICAvLyB3b3JrIHRhbmsgbWF5IGhhdmUgb25seSBvbmUgdmVoaWNsZSBjbGFpbSwgc28gd2UgbmVlZCB0byBmaWx0ZXIgYnkgdGFuayB0eXBlXG4gICAgICA6IHRoaXMuZ2V0VmVoaWNsZURlcHJlY2lhdGlvbnMoKS5maWx0ZXJCeSgndGFua1R5cGUnLCBUYW5rVHlwZUVudW0uV09SSyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
// @TODO Alex move here all collections
|
|
2
|
+
export * from './vehicle';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdUNBQXVDO0FBRXZDLGNBQWMsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQFRPRE8gQWxleCBtb3ZlIGhlcmUgYWxsIGNvbGxlY3Rpb25zXG5cbmV4cG9ydCAqIGZyb20gJy4vdmVoaWNsZSc7XG4iXX0=
|
|
@@ -2,6 +2,7 @@ import { ExportableCollection } from '../exportable.collection';
|
|
|
2
2
|
import { ExportCell } from '../../models/export/export-cell';
|
|
3
3
|
import { plainToClass } from 'class-transformer';
|
|
4
4
|
import { ExportCellTypeEnum } from '../../models/export/export-cell-type.enum';
|
|
5
|
+
import { FinancialYear } from '../../models/financial-year/financial-year';
|
|
5
6
|
export class LoanPaymentCollection extends ExportableCollection {
|
|
6
7
|
getExportHeader() {
|
|
7
8
|
return [
|
|
@@ -27,5 +28,17 @@ export class LoanPaymentCollection extends ExportableCollection {
|
|
|
27
28
|
];
|
|
28
29
|
});
|
|
29
30
|
}
|
|
31
|
+
get paymentDue() {
|
|
32
|
+
return this.sumBy('paymentDue');
|
|
33
|
+
}
|
|
34
|
+
getByFinYear(finYear = new FinancialYear()) {
|
|
35
|
+
return this.filter((payment) => {
|
|
36
|
+
return new Date(payment.date) >= finYear.startDate &&
|
|
37
|
+
new Date(payment.date) <= finYear.endDate;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
getForCurrentYear() {
|
|
41
|
+
return this.getByFinYear(new FinancialYear());
|
|
42
|
+
}
|
|
30
43
|
}
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi1wYXltZW50LmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvbG9hbi9sb2FuLXBheW1lbnQuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRy9FLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUUzRSxNQUFNLE9BQU8scUJBQXNCLFNBQVEsb0JBQWlDO0lBQzFFLGVBQWU7UUFDYixPQUFPO1lBQ0wsU0FBUztZQUNULE1BQU07WUFDTixhQUFhO1lBQ2Isa0JBQWtCO1lBQ2xCLGdCQUFnQjtZQUNoQixtQkFBbUI7WUFDbkIsUUFBUTtTQUNULENBQUM7SUFDSixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFvQixFQUFFLEVBQUU7WUFDN0MsT0FBTztnQkFDTCxZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLE1BQU0sRUFBQyxDQUFDO2dCQUNsRixZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLElBQUksRUFBQyxDQUFDO2dCQUM5RSxZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBQyxDQUFDO2dCQUN4RixZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBQyxDQUFDO2dCQUM3RixZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFFBQVEsRUFBQyxDQUFDO2dCQUMzRixZQUFZLENBQUMsVUFBVSxFQUFFLEVBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxFQUFDLENBQUM7Z0JBQzlGLFlBQVksQ0FBQyxVQUFVLEVBQUUsRUFBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsa0JBQWtCLENBQUMsUUFBUSxFQUFDLENBQUM7YUFDckYsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFVBQXlCLElBQUksYUFBYSxFQUFFO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQW9CLEVBQUUsRUFBRTtZQUMxQyxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUztnQkFDaEQsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDOUMsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksYUFBYSxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFeHBvcnRhYmxlQ29sbGVjdGlvbiB9IGZyb20gJy4uL2V4cG9ydGFibGUuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBFeHBvcnRDZWxsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4cG9ydC9leHBvcnQtY2VsbCc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBFeHBvcnRDZWxsVHlwZUVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXhwb3J0L2V4cG9ydC1jZWxsLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBMb2FuUGF5bWVudCB9IGZyb20gJy4uLy4uL21vZGVscy9sb2FuL2xvYW4tcGF5bWVudCc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2xvYW4vbG9hbic7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcblxuZXhwb3J0IGNsYXNzIExvYW5QYXltZW50Q29sbGVjdGlvbiBleHRlbmRzIEV4cG9ydGFibGVDb2xsZWN0aW9uPExvYW5QYXltZW50PiB7XG4gIGdldEV4cG9ydEhlYWRlcigpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgICdQbXQgTm8uJyxcbiAgICAgICdEYXRlJyxcbiAgICAgICdQYXltZW50IER1ZScsXG4gICAgICAnSW50ZXJlc3QgQWNjcnVlZCcsXG4gICAgICAnUHJpbmNpcGFsIFBhaWQnLFxuICAgICAgJ1ByaW5jaXBhbCBCYWxhbmNlJyxcbiAgICAgICdQYXlvdXQnXG4gICAgXTtcbiAgfVxuXG4gIGdldEV4cG9ydEJvZHkoKTogRXhwb3J0Q2VsbFtdW10ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLm1hcCgocGF5bWVudDogTG9hblBheW1lbnQpID0+IHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHBheW1lbnQubnVtYmVyLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uU1RSSU5HfSksXG4gICAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHBheW1lbnQuZGF0ZSwgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLkRBVEV9KSxcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogcGF5bWVudC5wYXltZW50RHVlLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1l9KSxcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogcGF5bWVudC5pbnRlcmVzdEFjY3J1ZWQsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5DVVJSRU5DWX0pLFxuICAgICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiBwYXltZW50LnByaW5jaXBhbFBhaWQsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5DVVJSRU5DWX0pLFxuICAgICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiBwYXltZW50LnByaW5jaXBhbEJhbGFuY2UsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5DVVJSRU5DWX0pLFxuICAgICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiBwYXltZW50LnBheW91dCwgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLkNVUlJFTkNZfSksXG4gICAgICBdO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IHBheW1lbnREdWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1CeSgncGF5bWVudER1ZScpO1xuICB9XG5cbiAgZ2V0QnlGaW5ZZWFyKGZpblllYXI6IEZpbmFuY2lhbFllYXIgPSBuZXcgRmluYW5jaWFsWWVhcigpKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuZmlsdGVyKChwYXltZW50OiBMb2FuUGF5bWVudCkgPT4ge1xuICAgICAgcmV0dXJuIG5ldyBEYXRlKHBheW1lbnQuZGF0ZSkgPj0gZmluWWVhci5zdGFydERhdGUgJiZcbiAgICAgICAgbmV3IERhdGUocGF5bWVudC5kYXRlKSA8PSBmaW5ZZWFyLmVuZERhdGU7XG4gICAgfSlcbiAgfVxuXG4gIGdldEZvckN1cnJlbnRZZWFyKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmdldEJ5RmluWWVhcihuZXcgRmluYW5jaWFsWWVhcigpKTtcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { Collection } from '../collection';
|
|
2
|
+
import { CollectionDictionary } from '../collection-dictionary';
|
|
3
|
+
import { LoanPaymentCollection } from './loan-payment.collection';
|
|
2
4
|
export class LoanCollection extends Collection {
|
|
3
5
|
/**
|
|
4
6
|
* Get new collection of loans filtered by bank accounts ids
|
|
@@ -14,5 +16,13 @@ export class LoanCollection extends Collection {
|
|
|
14
16
|
getByBankAccountId(id) {
|
|
15
17
|
return this.items.find((loan) => { var _a; return ((_a = loan.bankAccount) === null || _a === void 0 ? void 0 : _a.id) === id; });
|
|
16
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Get list of current fin year payments grouped by loan id
|
|
21
|
+
*/
|
|
22
|
+
groupCurrentYearPaymentsByLoans() {
|
|
23
|
+
const dictionary = new CollectionDictionary(new LoanPaymentCollection([]));
|
|
24
|
+
this.items.forEach((loan) => dictionary.add(loan.id, new LoanPaymentCollection(loan.payments).getForCurrentYear()));
|
|
25
|
+
return dictionary;
|
|
26
|
+
}
|
|
17
27
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hbi5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2xvYW4vbG9hbi5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsTUFBTSxPQUFPLGNBQWUsU0FBUSxVQUFnQjtJQUNsRDs7O09BR0c7SUFDSCxvQkFBb0IsQ0FBQyxHQUFhO1FBQ2hDLE9BQU8sSUFBSSxjQUFjLENBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBVSxFQUFXLEVBQUUsV0FBQyxPQUFBLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBQSxJQUFJLENBQUMsV0FBVywwQ0FBRSxFQUFFLENBQUMsQ0FBQSxFQUFBLENBQUMsQ0FDL0UsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxrQkFBa0IsQ0FBQyxFQUFVO1FBQzNCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFVLEVBQVcsRUFBRSxXQUFDLE9BQUEsQ0FBQSxNQUFBLElBQUksQ0FBQyxXQUFXLDBDQUFFLEVBQUUsTUFBSyxFQUFFLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsK0JBQStCO1FBQzdCLE1BQU0sVUFBVSxHQUFnRCxJQUFJLG9CQUFvQixDQUFDLElBQUkscUJBQXFCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4SCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFBO1FBRXpILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IExvYW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvbG9hbi9sb2FuJztcbmltcG9ydCB7IENvbGxlY3Rpb25EaWN0aW9uYXJ5IH0gZnJvbSAnLi4vY29sbGVjdGlvbi1kaWN0aW9uYXJ5JztcbmltcG9ydCB7IExvYW5QYXltZW50Q29sbGVjdGlvbiB9IGZyb20gJy4vbG9hbi1wYXltZW50LmNvbGxlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgTG9hbkNvbGxlY3Rpb24gZXh0ZW5kcyBDb2xsZWN0aW9uPExvYW4+IHtcbiAgLyoqXG4gICAqIEdldCBuZXcgY29sbGVjdGlvbiBvZiBsb2FucyBmaWx0ZXJlZCBieSBiYW5rIGFjY291bnRzIGlkc1xuICAgKiBAcGFyYW0gaWRzIGxpc3Qgb2YgYmFuayBhY2NvdW50cyBpZHMgZm9yIGZpbHRlclxuICAgKi9cbiAgZ2V0QnlCYW5rQWNjb3VudHNJZHMoaWRzOiBudW1iZXJbXSk6IExvYW5Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IExvYW5Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKGxvYW46IExvYW4pOiBib29sZWFuID0+IGlkcy5pbmNsdWRlcyhsb2FuLmJhbmtBY2NvdW50Py5pZCkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgc2luZ2xlIGxvYW4gYnkgYmFuayBhY2NvdW50IGlkXG4gICAqIEBwYXJhbSBpZCBpZCBvZiBiYW5rIGFjY291bnRcbiAgICovXG4gIGdldEJ5QmFua0FjY291bnRJZChpZDogbnVtYmVyKTogTG9hbiB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZCgobG9hbjogTG9hbik6IGJvb2xlYW4gPT4gbG9hbi5iYW5rQWNjb3VudD8uaWQgPT09IGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbGlzdCBvZiBjdXJyZW50IGZpbiB5ZWFyIHBheW1lbnRzIGdyb3VwZWQgYnkgbG9hbiBpZFxuICAgKi9cbiAgZ3JvdXBDdXJyZW50WWVhclBheW1lbnRzQnlMb2FucygpOiBDb2xsZWN0aW9uRGljdGlvbmFyeTxMb2FuUGF5bWVudENvbGxlY3Rpb24+IHtcbiAgICBjb25zdCBkaWN0aW9uYXJ5OiBDb2xsZWN0aW9uRGljdGlvbmFyeTxMb2FuUGF5bWVudENvbGxlY3Rpb24+ID0gbmV3IENvbGxlY3Rpb25EaWN0aW9uYXJ5KG5ldyBMb2FuUGF5bWVudENvbGxlY3Rpb24oW10pKTtcbiAgICB0aGlzLml0ZW1zLmZvckVhY2goKGxvYW46IExvYW4pID0+IGRpY3Rpb25hcnkuYWRkKGxvYW4uaWQsIG5ldyBMb2FuUGF5bWVudENvbGxlY3Rpb24obG9hbi5wYXltZW50cykuZ2V0Rm9yQ3VycmVudFllYXIoKSkpXG5cbiAgICByZXR1cm4gZGljdGlvbmFyeTtcbiAgfVxufVxuIl19
|
|
@@ -17,4 +17,4 @@ export class VehicleExpenseCollection extends Collection {
|
|
|
17
17
|
this.items.push(...[depreciationExpense, ...transactionExpenses]);
|
|
18
18
|
}
|
|
19
19
|
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1leHBlbnNlLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvcmVwb3J0L3ZlaGljbGUtZXhwZW5zZS92ZWhpY2xlLWV4cGVuc2UuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRXhGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBS25FLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxVQUEwQjtJQUN0RSxZQUNFLFlBQW1DLEVBQ25DLGFBQXFDLEVBQ3JDLFlBQTBCO1FBRTFCLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFTyxRQUFRLENBQUMsWUFBbUMsRUFBRSxhQUFxQyxFQUFFLFlBQTBCO1FBQ3JILElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBRWhCLE1BQU0sMkJBQTJCLEdBQWdELElBQUksb0JBQW9CLENBQ3ZHLFlBQVksRUFDWixvQkFBb0IsQ0FDckIsQ0FBQztRQUVGLE1BQU0sbUJBQW1CLEdBQXFCLDJCQUEyQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxpQkFBeUIsRUFBRSxFQUFFO1lBQy9HLE9BQU8sSUFBSSxjQUFjLENBQ3ZCLDJCQUEyQixDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLE1BQU0sRUFDekQsWUFBWSxDQUFDLFNBQVMsRUFDdEIsaUJBQWlCLENBQ2xCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVILGdEQUFnRDtRQUNoRCxNQUFNLG1CQUFtQixHQUFtQixJQUFJLGNBQWMsQ0FDNUQsYUFBYSxDQUFDLDRCQUE0QixFQUFFLEVBQzVDLFlBQVksQ0FBQyxTQUFTLEVBQ3RCLGNBQWMsQ0FDZixDQUFDO1FBRUYsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLG1CQUFtQixFQUFFLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IFZlaGljbGVFeHBlbnNlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3JlcG9ydC92ZWhpY2xlLWV4cGVuc2UvdmVoaWNsZS1leHBlbnNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ29sbGVjdGlvbkRpY3Rpb25hcnkgfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9uLWRpY3Rpb25hcnknO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2RlcHJlY2lhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbiB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9kZXByZWNpYXRpb24vZGVwcmVjaWF0aW9uJztcbmltcG9ydCB7IFZlaGljbGVDbGFpbSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy92ZWhpY2xlL3ZlaGljbGUtY2xhaW0nO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZUV4cGVuc2VDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxWZWhpY2xlRXhwZW5zZT4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbixcbiAgICBkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uLFxuICAgIHZlaGljbGVDbGFpbTogVmVoaWNsZUNsYWltXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zZXRJdGVtcyh0cmFuc2FjdGlvbnMsIGRlcHJlY2lhdGlvbnMsIHZlaGljbGVDbGFpbSk7XG4gIH1cblxuICBwcml2YXRlIHNldEl0ZW1zKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBkZXByZWNpYXRpb25zOiBEZXByZWNpYXRpb25Db2xsZWN0aW9uLCB2ZWhpY2xlQ2xhaW06IFZlaGljbGVDbGFpbSk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXMgPSBbXTtcblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uc0J5Q2hhcnRBY2NvdW50czogQ29sbGVjdGlvbkRpY3Rpb25hcnk8VHJhbnNhY3Rpb25Db2xsZWN0aW9uPiA9IG5ldyBDb2xsZWN0aW9uRGljdGlvbmFyeShcbiAgICAgIHRyYW5zYWN0aW9ucyxcbiAgICAgICdjaGFydEFjY291bnRzLm5hbWUnXG4gICAgKTtcblxuICAgIGNvbnN0IHRyYW5zYWN0aW9uRXhwZW5zZXM6IFZlaGljbGVFeHBlbnNlW10gPSB0cmFuc2FjdGlvbnNCeUNoYXJ0QWNjb3VudHMua2V5cy5tYXAoKGNoYXJ0QWNjb3VudHNOYW1lOiBzdHJpbmcpID0+IHtcbiAgICAgIHJldHVybiBuZXcgVmVoaWNsZUV4cGVuc2UoXG4gICAgICAgIHRyYW5zYWN0aW9uc0J5Q2hhcnRBY2NvdW50cy5nZXQoY2hhcnRBY2NvdW50c05hbWUpLmFtb3VudCxcbiAgICAgICAgdmVoaWNsZUNsYWltLndvcmtVc2FnZSxcbiAgICAgICAgY2hhcnRBY2NvdW50c05hbWVcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICAvLyBncm91cCBhbGwgZGVwcmVjaWF0aW9ucyBpbnRvIG9uZSBleHBlbnNlIGl0ZW1cbiAgICBjb25zdCBkZXByZWNpYXRpb25FeHBlbnNlOiBWZWhpY2xlRXhwZW5zZSA9IG5ldyBWZWhpY2xlRXhwZW5zZShcbiAgICAgIGRlcHJlY2lhdGlvbnMuZ2V0Q3VycmVudFllYXJGb3JlY2FzdEFtb3VudCgpLFxuICAgICAgdmVoaWNsZUNsYWltLndvcmtVc2FnZSxcbiAgICAgICdEZXByZWNpYXRpb24nXG4gICAgKTtcblxuICAgIHRoaXMuaXRlbXMucHVzaCguLi5bZGVwcmVjaWF0aW9uRXhwZW5zZSwgLi4udHJhbnNhY3Rpb25FeHBlbnNlc10pO1xuICB9XG59XG4iXX0=
|
|
@@ -4,6 +4,7 @@ import { plainToClass } from 'class-transformer';
|
|
|
4
4
|
import { ExportCell } from '../../models/export/export-cell';
|
|
5
5
|
import { ExportCellTypeEnum } from '../../models/export/export-cell-type.enum';
|
|
6
6
|
import { Collection } from '../collection';
|
|
7
|
+
import { ChartAccountsListEnum } from '../../db/Enums/chart-accounts-list.enum';
|
|
7
8
|
/**
|
|
8
9
|
* Collection of transactions
|
|
9
10
|
*/
|
|
@@ -167,5 +168,23 @@ export class TransactionCollection extends ExportableCollection {
|
|
|
167
168
|
];
|
|
168
169
|
});
|
|
169
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Get list of vehicle transactions filtered by vehicle claim
|
|
173
|
+
*/
|
|
174
|
+
getByVehicleClaim(vehicleClaim) {
|
|
175
|
+
return vehicleClaim.isSoleTank()
|
|
176
|
+
// sole tank may have multiple vehicle claims, so we need to filter by business.id
|
|
177
|
+
? this.getVehicleTransactions().filterBy('business.id', vehicleClaim.business.id)
|
|
178
|
+
// work tank may have only one vehicle claim, so we need to filter by tank type
|
|
179
|
+
: this.getVehicleTransactions().filterBy('tankType', TankTypeEnum.WORK);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Get list of vehicle transactions except KLMS transactions
|
|
183
|
+
*/
|
|
184
|
+
getLogbookTransactions() {
|
|
185
|
+
return this
|
|
186
|
+
.getVehicleTransactions()
|
|
187
|
+
.removeBy('chartAccounts.id', [ChartAccountsListEnum.KLMS_TRAVELLED_FOR_WORK, ChartAccountsListEnum.KLMS_TRAVELLED]);
|
|
188
|
+
}
|
|
170
189
|
}
|
|
171
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBRS9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsb0JBQWlDO0lBQzFFOztPQUVHO0lBQ0gsSUFBSSxNQUFNO1FBQ1IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLFdBQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxXQUFXLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFdBQTRDO1FBQy9ELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksWUFBWTtR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RSxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUMsQ0FBQztnQkFDdkYsWUFBWSxDQUFDLFVBQVUsRUFBRSxFQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUMsQ0FBQzthQUN6RixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWNhdGVnb3J5LmVudW0nO1xuaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1tZXRhZGF0YS1saXN0LmVudW0nO1xuaW1wb3J0IHsgRXhwb3J0YWJsZUNvbGxlY3Rpb24gfSBmcm9tICcuLi9leHBvcnRhYmxlLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgRXhwb3J0Q2VsbCB9IGZyb20gJy4uLy4uL21vZGVscy9leHBvcnQvZXhwb3J0LWNlbGwnO1xuaW1wb3J0IHsgRXhwb3J0Q2VsbFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4cG9ydC9leHBvcnQtY2VsbC10eXBlLmVudW0nO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tbWV0YWRhdGEnO1xuXG4vKipcbiAqIENvbGxlY3Rpb24gb2YgdHJhbnNhY3Rpb25zXG4gKi9cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gZXh0ZW5kcyBFeHBvcnRhYmxlQ29sbGVjdGlvbjxUcmFuc2FjdGlvbj4ge1xuICAvKipcbiAgICogR2V0IHRvdGFsIGFtb3VudCBvZiBhbGwgdHJhbnNhY3Rpb25zIGluIHRoZSBjb2xsZWN0aW9uXG4gICAqL1xuICBnZXQgYW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICt0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gc3VtICsgdHJhbnNhY3Rpb24uZ2V0TmV0QW1vdW50KCksIDApLnRvRml4ZWQoMik7XG4gIH1cblxuICAvKipcbiAgICogRGlmZmVyZW5jZSBiZXR3ZWVuIGFsbG9jYXRlZCBhbW91bnQgYW5kIHRvdGFsIGFtb3VudFxuICAgKi9cbiAgZ2V0VW5hbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiArKHRoaXMuYW1vdW50IC0gYWxsb2NhdGlvbnMuZ2V0QnlUcmFuc2FjdGlvbnNJZHModGhpcy5nZXRJZHMoKSkuYW1vdW50KS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjYXNoIHBvc2l0aW9uXG4gICAqIENhc2ggUG9zaXRpb24gPSBJbmNvbWUgLSBFeHBlbnNlc1xuICAgKiBDYXNoIHBvc2l0aW9uIGlzIGVxdWFsIHRvIFRvdGFsIEFtb3VudCBiZWNhdXNlIGluY29tZSBpcyBwb3NpdGl2ZSBhbmQgZXhwZW5zZSBpcyBuZWdhdGl2ZSxcbiAgICovXG4gIGdldCBjYXNoUG9zaXRpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5jbGFpbUFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgZGF0ZSBvZiB0aGUgbGFzdCB0cmFuc2FjdGlvblxuICAgKi9cbiAgZ2V0TGFzdFRyYW5zYWN0aW9uRGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gbmV3IERhdGUoTWF0aC5tYXguYXBwbHkoTWF0aCwgdGhpcy5pdGVtcy5tYXAoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gdHJhbnNhY3Rpb24uZGF0ZSkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgc3VtbWFyeSBvZiBjbGFpbSBhbW91bnRzXG4gICAqL1xuICBnZXQgY2xhaW1BbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHN1bSArIHRyYW5zYWN0aW9uLmNsYWltQW1vdW50LCAwKTtcbiAgfVxuXG4gIGdldCBncm9zc0Ftb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCB0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHN1bSArIHRyYW5zYWN0aW9uLmFtb3VudCwgMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIGdldEJ5Q2hhcnRBY2NvdW50c0NhdGVnb3JpZXMoY2F0ZWdvcmllczogQ2hhcnRBY2NvdW50c0NhdGVnb3J5RW51bVtdKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IGNhdGVnb3JpZXMuaW5jbHVkZXModHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cy5jYXRlZ29yeSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb25zIGJ5IG1vbnRoXG4gICAqIEBwYXJhbSBtb250aEluZGV4IGJ5IHdoaWNoIGRlc2lyZWQgbW9udGggc2hvdWxkIGJlIHRha2VuXG4gICAqL1xuICBnZXRCeU1vbnRoKG1vbnRoSW5kZXg6IG51bWJlcik6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT5cbiAgICAgIHRyYW5zYWN0aW9uLmRhdGUuZ2V0TW9udGgoKSA9PT0gbW9udGhJbmRleFxuICAgICkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjb2xsZWN0aW9uIG9mIHRyYW5zYWN0aW9ucyBtZXRhZGF0YVxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25zTWV0YWRhdGEoKTogQ29sbGVjdGlvbjxUcmFuc2FjdGlvbk1ldGFkYXRhPiB7XG4gICAgY29uc3QgbWV0YWRhdGFBcnJheTogVHJhbnNhY3Rpb25NZXRhZGF0YVtdID0gW107XG5cbiAgICB0aGlzLml0ZW1zLmZvckVhY2goKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgbWV0YWRhdGFBcnJheS5wdXNoKC4uLnRyYW5zYWN0aW9uLm1ldGFkYXRhKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgQ29sbGVjdGlvbjxUcmFuc2FjdGlvbk1ldGFkYXRhPihtZXRhZGF0YUFycmF5KTtcbiAgfVxuXG4gIGdldEluY29tZVRyYW5zYWN0aW9ucygpOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uaXNJbmNvbWUoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGNsYWltSW5jb21lKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SW5jb21lVHJhbnNhY3Rpb25zKCkuY2xhaW1BbW91bnQ7XG4gIH1cblxuICBnZXRFeHBlbnNlVHJhbnNhY3Rpb25zKCk6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5pc0V4cGVuc2UoKSAmJiAhdHJhbnNhY3Rpb24uaXNJbnRlcmVzdCgpKVxuICAgICk7XG4gIH1cblxuICBnZXQgY2xhaW1FeHBlbnNlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RXhwZW5zZVRyYW5zYWN0aW9ucygpLmNsYWltQW1vdW50O1xuICB9XG5cbiAgZ2V0SW50ZXJlc3RUcmFuc2FjdGlvbnMoKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmlzSW50ZXJlc3QoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGNsYWltSW50ZXJlc3QoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJbnRlcmVzdFRyYW5zYWN0aW9ucygpLmNsYWltQW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjb2xsZWN0aW9uIG9mIHRyYW5zYWN0aW9ucyBhbmQgcHJvcGVydGllcyBmaWx0ZXJlZCBieSBwcm9wZXJ0aWVzIGlkc1xuICAgKiBAcGFyYW0gaWRzIElkcyBvZiBwcm9wZXJ0aWVzIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldEJ5UHJvcGVydGllc0lkcyhpZHM6IG51bWJlcltdKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHtcbiAgICAgICAgcmV0dXJuIGlkcy5pbmNsdWRlcyh0cmFuc2FjdGlvbi5wcm9wZXJ0eT8uaWQpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXcgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBpbmNvbWUgc291cmNlIGlkXG4gICAqIEBwYXJhbSBpZCBpZCBvZiBpbmNvbWUgc291cmNlIGZvciBmaWx0ZXJcbiAgICovXG4gIGdldEJ5SW5jb21lU291cmNlSWQoaWQ6IG51bWJlcik6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5pbmNvbWVTb3VyY2U/LmlkID09PSBpZClcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXcgY29sbGVjdGlvbiBmaWx0ZXJlZCBieSBjaGFydCBhY2NvdW50cyBjYXRlZ29yeVxuICAgKiBAcGFyYW0gY2F0ZWdvcnkgQ2hhcnQgYWNjb3VudHMgY2F0ZWdvcnkgdmFsdWVcbiAgICovXG4gIGdldEJ5Q2hhcnRBY2NvdW50c0NhdGVnb3J5KGNhdGVnb3J5OiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmNoYXJ0QWNjb3VudHMuY2F0ZWdvcnkgPT09IGNhdGVnb3J5KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyBjb2xsZWN0aW9uIG9mIHByb3BlcnR5IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0UHJvcGVydHlUcmFuc2FjdGlvbnMoKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmlzUHJvcGVydHlUYW5rKCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldERlYml0VHJhbnNhY3Rpb25zKCk6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5pc0RlYml0KCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldENyZWRpdFRyYW5zYWN0aW9ucygpOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uaXNDcmVkaXQoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QnlBbGxvY2F0aW9ucyhhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiBhbGxvY2F0aW9ucy5oYXNUcmFuc2FjdGlvbih0cmFuc2FjdGlvbikpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb25zIHJlbGF0ZWQgdG8gVmVoaWNsZSBjYXRlZ29yeVxuICAgKi9cbiAgZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUoXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB7XG4gICAgICAgIHJldHVybiB0cmFuc2FjdGlvbi5pc1ZlaGljbGVUcmFuc2FjdGlvbigpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXcgdHJhbnNhY3Rpb24gY29sbGVjdGlvbiBmaWx0ZXJlZCBieSB0YW5rIHR5cGVcbiAgICovXG4gIGdldEJ5VGFua1R5cGUodGFua1R5cGU6IFRhbmtUeXBlRW51bSk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHtcbiAgICAgICAgc3dpdGNoICh0YW5rVHlwZSkge1xuICAgICAgICAgIGNhc2UgVGFua1R5cGVFbnVtLlBST1BFUlRZOlxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uLmlzUHJvcGVydHlUYW5rKCk7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uV09SSzpcbiAgICAgICAgICAgIHJldHVybiB0cmFuc2FjdGlvbi5pc1dvcmtUYW5rKCk7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uU09MRTpcbiAgICAgICAgICAgIHJldHVybiB0cmFuc2FjdGlvbi5pc1NvbGVUYW5rKCk7XG4gICAgICAgICAgLy8gVHJhbnNhY3Rpb24gbWF5IGJlIG5vdCByZWxhdGVkIHRvIGFueSB0YW5rIHR5cGUgKHBlcnNvbmFsKVxuICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEV4cG9ydEhlYWRlcigpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsnRGF0ZScsICdEZXNjcmlwdGlvbicsICdEZWJpdCcsICdDcmVkaXQnXTtcbiAgfVxuXG4gIGdldEV4cG9ydEZvb3RlcigpOiBFeHBvcnRDZWxsW10ge1xuICAgIHJldHVybiBbXG4gICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiAnVG90YWwnLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uU1RSSU5HfSksXG4gICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiAnJywgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLlNUUklOR30pLFxuICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogdGhpcy5zdW1CeSgnZGViaXQnKSwgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLkNVUlJFTkNZfSksXG4gICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiB0aGlzLnN1bUJ5KCdjcmVkaXQnKSwgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLkNVUlJFTkNZfSlcbiAgICBdO1xuICB9XG5cbiAgZ2V0RXhwb3J0Qm9keSgpOiBFeHBvcnRDZWxsW11bXSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMubWFwKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pID0+IHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHRyYW5zYWN0aW9uLmRhdGUsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5EQVRFfSksXG4gICAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHRyYW5zYWN0aW9uLmRlc2NyaXB0aW9uLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uU1RSSU5HfSksXG4gICAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHRyYW5zYWN0aW9uLmRlYml0LCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1l9KSxcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogdHJhbnNhY3Rpb24uY3JlZGl0LCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1l9KVxuICAgICAgXTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
190
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uY29sbGVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFaEY7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsb0JBQWlDO0lBQzFFOztPQUVHO0lBQ0gsSUFBSSxNQUFNO1FBQ1IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLFdBQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxXQUFXLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZILENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFdBQTRDO1FBQy9ELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMs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Q0FBQztnQkFDM0YsWUFBWSxDQUFDLFVBQVUsRUFBRSxFQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUMsQ0FBQztnQkFDdkYsWUFBWSxDQUFDLFVBQVUsRUFBRSxFQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxRQUFRLEVBQUMsQ0FBQzthQUN6RixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxpQkFBaUIsQ0FBQyxZQUEwQjtRQUMxQyxPQUFPLFlBQVksQ0FBQyxVQUFVLEVBQUU7WUFDOUIsa0ZBQWtGO1lBQ2xGLENBQUMsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1lBQ2pGLCtFQUErRTtZQUMvRSxDQUFDLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsc0JBQXNCO1FBQ3BCLE9BQU8sSUFBSTthQUNSLHNCQUFzQixFQUFFO2FBQ3hCLFFBQVEsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLHFCQUFxQixDQUFDLHVCQUF1QixFQUFFLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDekgsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEV4cG9ydGFibGVDb2xsZWN0aW9uIH0gZnJvbSAnLi4vZXhwb3J0YWJsZS5jb2xsZWN0aW9uJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEV4cG9ydENlbGwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXhwb3J0L2V4cG9ydC1jZWxsJztcbmltcG9ydCB7IEV4cG9ydENlbGxUeXBlRW51bSB9IGZyb20gJy4uLy4uL21vZGVscy9leHBvcnQvZXhwb3J0LWNlbGwtdHlwZS5lbnVtJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uTWV0YWRhdGEgfSBmcm9tICcuLi8uLi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tbWV0YWRhdGEnO1xuaW1wb3J0IHsgVmVoaWNsZUNsYWltIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiB0cmFuc2FjdGlvbnNcbiAqL1xuZXhwb3J0IGNsYXNzIFRyYW5zYWN0aW9uQ29sbGVjdGlvbiBleHRlbmRzIEV4cG9ydGFibGVDb2xsZWN0aW9uPFRyYW5zYWN0aW9uPiB7XG4gIC8qKlxuICAgKiBHZXQgdG90YWwgYW1vdW50IG9mIGFsbCB0cmFuc2FjdGlvbnMgaW4gdGhlIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldCBhbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gK3RoaXMuaXRlbXMucmVkdWNlKChzdW06IG51bWJlciwgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiBzdW0gKyB0cmFuc2FjdGlvbi5nZXROZXRBbW91bnQoKSwgMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBEaWZmZXJlbmNlIGJldHdlZW4gYWxsb2NhdGVkIGFtb3VudCBhbmQgdG90YWwgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuICsodGhpcy5hbW91bnQgLSBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyh0aGlzLmdldElkcygpKS5hbW91bnQpLnRvRml4ZWQoMik7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNhc2ggcG9zaXRpb25cbiAgICogQ2FzaCBQb3NpdGlvbiA9IEluY29tZSAtIEV4cGVuc2VzXG4gICAqIENhc2ggcG9zaXRpb24gaXMgZXF1YWwgdG8gVG90YWwgQW1vdW50IGJlY2F1c2UgaW5jb21lIGlzIHBvc2l0aXZlIGFuZCBleHBlbnNlIGlzIG5lZ2F0aXZlLFxuICAgKi9cbiAgZ2V0IGNhc2hQb3NpdGlvbigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNsYWltQW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBkYXRlIG9mIHRoZSBsYXN0IHRyYW5zYWN0aW9uXG4gICAqL1xuICBnZXRMYXN0VHJhbnNhY3Rpb25EYXRlKCk6IERhdGUge1xuICAgIHJldHVybiBuZXcgRGF0ZShNYXRoLm1heC5hcHBseShNYXRoLCB0aGlzLml0ZW1zLm1hcCgodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5kYXRlKSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBzdW1tYXJ5IG9mIGNsYWltIGFtb3VudHNcbiAgICovXG4gIGdldCBjbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gc3VtICsgdHJhbnNhY3Rpb24uY2xhaW1BbW91bnQsIDApO1xuICB9XG5cbiAgZ2V0IGdyb3NzQW1vdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuICt0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4gc3VtICsgdHJhbnNhY3Rpb24uYW1vdW50LCAwKS50b0ZpeGVkKDIpO1xuICB9XG5cbiAgZ2V0QnlDaGFydEFjY291bnRzQ2F0ZWdvcmllcyhjYXRlZ29yaWVzOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10pOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gY2F0ZWdvcmllcy5pbmNsdWRlcyh0cmFuc2FjdGlvbi5jaGFydEFjY291bnRzLmNhdGVnb3J5KSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbnMgYnkgbW9udGhcbiAgICogQHBhcmFtIG1vbnRoSW5kZXggYnkgd2hpY2ggZGVzaXJlZCBtb250aCBzaG91bGQgYmUgdGFrZW5cbiAgICovXG4gIGdldEJ5TW9udGgobW9udGhJbmRleDogbnVtYmVyKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbih0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PlxuICAgICAgdHJhbnNhY3Rpb24uZGF0ZS5nZXRNb250aCgpID09PSBtb250aEluZGV4XG4gICAgKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgdHJhbnNhY3Rpb25zIG1ldGFkYXRhXG4gICAqL1xuICBnZXRUcmFuc2FjdGlvbnNNZXRhZGF0YSgpOiBDb2xsZWN0aW9uPFRyYW5zYWN0aW9uTWV0YWRhdGE+IHtcbiAgICBjb25zdCBtZXRhZGF0YUFycmF5OiBUcmFuc2FjdGlvbk1ldGFkYXRhW10gPSBbXTtcblxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICBtZXRhZGF0YUFycmF5LnB1c2goLi4udHJhbnNhY3Rpb24ubWV0YWRhdGEpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBDb2xsZWN0aW9uPFRyYW5zYWN0aW9uTWV0YWRhdGE+KG1ldGFkYXRhQXJyYXkpO1xuICB9XG5cbiAgZ2V0SW5jb21lVHJhbnNhY3Rpb25zKCk6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5pc0luY29tZSgpKVxuICAgICk7XG4gIH1cblxuICBnZXQgY2xhaW1JbmNvbWUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJbmNvbWVUcmFuc2FjdGlvbnMoKS5jbGFpbUFtb3VudDtcbiAgfVxuXG4gIGdldEV4cGVuc2VUcmFuc2FjdGlvbnMoKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmlzRXhwZW5zZSgpICYmICF0cmFuc2FjdGlvbi5pc0ludGVyZXN0KCkpXG4gICAgKTtcbiAgfVxuXG4gIGdldCBjbGFpbUV4cGVuc2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRFeHBlbnNlVHJhbnNhY3Rpb25zKCkuY2xhaW1BbW91bnQ7XG4gIH1cblxuICBnZXRJbnRlcmVzdFRyYW5zYWN0aW9ucygpOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uaXNJbnRlcmVzdCgpKVxuICAgICk7XG4gIH1cblxuICBnZXQgY2xhaW1JbnRlcmVzdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldEludGVyZXN0VHJhbnNhY3Rpb25zKCkuY2xhaW1BbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgdHJhbnNhY3Rpb25zIGFuZCBwcm9wZXJ0aWVzIGZpbHRlcmVkIGJ5IHByb3BlcnRpZXMgaWRzXG4gICAqIEBwYXJhbSBpZHMgSWRzIG9mIHByb3BlcnRpZXMgZm9yIGZpbHRlclxuICAgKi9cbiAgZ2V0QnlQcm9wZXJ0aWVzSWRzKGlkczogbnVtYmVyW10pOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICByZXR1cm4gaWRzLmluY2x1ZGVzKHRyYW5zYWN0aW9uLnByb3BlcnR5Py5pZCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyBjb2xsZWN0aW9uIGZpbHRlcmVkIGJ5IGluY29tZSBzb3VyY2UgaWRcbiAgICogQHBhcmFtIGlkIGlkIG9mIGluY29tZSBzb3VyY2UgZm9yIGZpbHRlclxuICAgKi9cbiAgZ2V0QnlJbmNvbWVTb3VyY2VJZChpZDogbnVtYmVyKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmluY29tZVNvdXJjZT8uaWQgPT09IGlkKVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyBjb2xsZWN0aW9uIGZpbHRlcmVkIGJ5IGNoYXJ0IGFjY291bnRzIGNhdGVnb3J5XG4gICAqIEBwYXJhbSBjYXRlZ29yeSBDaGFydCBhY2NvdW50cyBjYXRlZ29yeSB2YWx1ZVxuICAgKi9cbiAgZ2V0QnlDaGFydEFjY291bnRzQ2F0ZWdvcnkoY2F0ZWdvcnk6IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0pOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uY2hhcnRBY2NvdW50cy5jYXRlZ29yeSA9PT0gY2F0ZWdvcnkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV3IGNvbGxlY3Rpb24gb2YgcHJvcGVydHkgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRQcm9wZXJ0eVRyYW5zYWN0aW9ucygpOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgVHJhbnNhY3Rpb25Db2xsZWN0aW9uKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4gdHJhbnNhY3Rpb24uaXNQcm9wZXJ0eVRhbmsoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0RGViaXRUcmFuc2FjdGlvbnMoKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHRyYW5zYWN0aW9uLmlzRGViaXQoKSlcbiAgICApO1xuICB9XG5cbiAgZ2V0Q3JlZGl0VHJhbnNhY3Rpb25zKCk6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24oXG4gICAgICB0aGlzLml0ZW1zLmZpbHRlcigodHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uKTogYm9vbGVhbiA9PiB0cmFuc2FjdGlvbi5pc0NyZWRpdCgpKVxuICAgICk7XG4gIH1cblxuICBnZXRCeUFsbG9jYXRpb25zKGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uKTogVHJhbnNhY3Rpb25Db2xsZWN0aW9uIHtcbiAgICByZXR1cm4gbmV3IFRyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IGFsbG9jYXRpb25zLmhhc1RyYW5zYWN0aW9uKHRyYW5zYWN0aW9uKSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbnMgcmVsYXRlZCB0byBWZWhpY2xlIGNhdGVnb3J5XG4gICAqL1xuICBnZXRWZWhpY2xlVHJhbnNhY3Rpb25zKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZShcbiAgICAgIHRoaXMuaXRlbXMuZmlsdGVyKCh0cmFuc2FjdGlvbjogVHJhbnNhY3Rpb24pOiBib29sZWFuID0+IHtcbiAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uLmlzVmVoaWNsZVRyYW5zYWN0aW9uKCk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyB0cmFuc2FjdGlvbiBjb2xsZWN0aW9uIGZpbHRlcmVkIGJ5IHRhbmsgdHlwZVxuICAgKi9cbiAgZ2V0QnlUYW5rVHlwZSh0YW5rVHlwZTogVGFua1R5cGVFbnVtKTogdGhpcyB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKFxuICAgICAgdGhpcy5pdGVtcy5maWx0ZXIoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICBzd2l0Y2ggKHRhbmtUeXBlKSB7XG4gICAgICAgICAgY2FzZSBUYW5rVHlwZUVudW0uUFJPUEVSVFk6XG4gICAgICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb24uaXNQcm9wZXJ0eVRhbmsoKTtcbiAgICAgICAgICBjYXNlIFRhbmtUeXBlRW51bS5XT1JLOlxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uLmlzV29ya1RhbmsoKTtcbiAgICAgICAgICBjYXNlIFRhbmtUeXBlRW51bS5TT0xFOlxuICAgICAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uLmlzU29sZVRhbmsoKTtcbiAgICAgICAgICAvLyBUcmFuc2FjdGlvbiBtYXkgYmUgbm90IHJlbGF0ZWQgdG8gYW55IHRhbmsgdHlwZSAocGVyc29uYWwpXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0RXhwb3J0SGVhZGVyKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gWydEYXRlJywgJ0Rlc2NyaXB0aW9uJywgJ0RlYml0JywgJ0NyZWRpdCddO1xuICB9XG5cbiAgZ2V0RXhwb3J0Rm9vdGVyKCk6IEV4cG9ydENlbGxbXSB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6ICdUb3RhbCcsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5TVFJJTkd9KSxcbiAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6ICcnLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uU1RSSU5HfSksXG4gICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiB0aGlzLnN1bUJ5KCdkZWJpdCcpLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1l9KSxcbiAgICAgIHBsYWluVG9DbGFzcyhFeHBvcnRDZWxsLCB7dmFsdWU6IHRoaXMuc3VtQnkoJ2NyZWRpdCcpLCB0eXBlOiBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1l9KVxuICAgIF07XG4gIH1cblxuICBnZXRFeHBvcnRCb2R5KCk6IEV4cG9ydENlbGxbXVtdIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5tYXAoKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikgPT4ge1xuICAgICAgcmV0dXJuIFtcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogdHJhbnNhY3Rpb24uZGF0ZSwgdHlwZTogRXhwb3J0Q2VsbFR5cGVFbnVtLkRBVEV9KSxcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogdHJhbnNhY3Rpb24uZGVzY3JpcHRpb24sIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5TVFJJTkd9KSxcbiAgICAgICAgcGxhaW5Ub0NsYXNzKEV4cG9ydENlbGwsIHt2YWx1ZTogdHJhbnNhY3Rpb24uZGViaXQsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5DVVJSRU5DWX0pLFxuICAgICAgICBwbGFpblRvQ2xhc3MoRXhwb3J0Q2VsbCwge3ZhbHVlOiB0cmFuc2FjdGlvbi5jcmVkaXQsIHR5cGU6IEV4cG9ydENlbGxUeXBlRW51bS5DVVJSRU5DWX0pXG4gICAgICBdO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIHZlaGljbGUgdHJhbnNhY3Rpb25zIGZpbHRlcmVkIGJ5IHZlaGljbGUgY2xhaW1cbiAgICovXG4gIGdldEJ5VmVoaWNsZUNsYWltKHZlaGljbGVDbGFpbTogVmVoaWNsZUNsYWltKTogdGhpcyB7XG4gICAgcmV0dXJuIHZlaGljbGVDbGFpbS5pc1NvbGVUYW5rKClcbiAgICAgIC8vIHNvbGUgdGFuayBtYXkgaGF2ZSBtdWx0aXBsZSB2ZWhpY2xlIGNsYWltcywgc28gd2UgbmVlZCB0byBmaWx0ZXIgYnkgYnVzaW5lc3MuaWRcbiAgICAgID8gdGhpcy5nZXRWZWhpY2xlVHJhbnNhY3Rpb25zKCkuZmlsdGVyQnkoJ2J1c2luZXNzLmlkJywgdmVoaWNsZUNsYWltLmJ1c2luZXNzLmlkKVxuICAgICAgLy8gd29yayB0YW5rIG1heSBoYXZlIG9ubHkgb25lIHZlaGljbGUgY2xhaW0sIHNvIHdlIG5lZWQgdG8gZmlsdGVyIGJ5IHRhbmsgdHlwZVxuICAgICAgOiB0aGlzLmdldFZlaGljbGVUcmFuc2FjdGlvbnMoKS5maWx0ZXJCeSgndGFua1R5cGUnLCBUYW5rVHlwZUVudW0uV09SSyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGxpc3Qgb2YgdmVoaWNsZSB0cmFuc2FjdGlvbnMgZXhjZXB0IEtMTVMgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRMb2dib29rVHJhbnNhY3Rpb25zKCk6IHRoaXMge1xuICAgIHJldHVybiB0aGlzXG4gICAgICAuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpXG4gICAgICAucmVtb3ZlQnkoJ2NoYXJ0QWNjb3VudHMuaWQnLCBbQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLLCBDaGFydEFjY291bnRzTGlzdEVudW0uS0xNU19UUkFWRUxMRURdKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './vehicle-claim.collection';
|
|
2
|
+
export * from './vehicle-logbook.collection';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvdmVoaWNsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3ZlaGljbGUtY2xhaW0uY29sbGVjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3ZlaGljbGUtbG9nYm9vay5jb2xsZWN0aW9uJztcbiJdfQ==
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Collection } from '../collection';
|
|
2
|
+
import { VehicleClaim } from '../../models';
|
|
3
|
+
export class VehicleClaimCollection extends Collection {
|
|
4
|
+
/**
|
|
5
|
+
* Get remaining kilometers limit. Total limit ({@link VehicleClaim.totalKmsLimit}) - claimed kilometers from other vehicle claims
|
|
6
|
+
* @param claim may not exist when user come to vehicle claim page 1st time and not created claim yet
|
|
7
|
+
*/
|
|
8
|
+
getKlmsLimitForClaim(claim) {
|
|
9
|
+
let collection = this;
|
|
10
|
+
if (claim) {
|
|
11
|
+
collection = collection.removeBy('id', claim.id);
|
|
12
|
+
}
|
|
13
|
+
return VehicleClaim.totalKmsLimit - collection.sumBy('kilometers');
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Get remaining work usage limit. Total limit ({@link VehicleClaim.totalWorkUsagePercent}) - claimed percent from other vehicle claims
|
|
17
|
+
* @param claim may not exist when user come to vehicle claim page 1st time and not created claim yet
|
|
18
|
+
*/
|
|
19
|
+
getWorkUsageLimitForClaim(claim) {
|
|
20
|
+
let collection = this;
|
|
21
|
+
if (claim) {
|
|
22
|
+
collection = collection.removeBy('id', claim.id);
|
|
23
|
+
}
|
|
24
|
+
return VehicleClaim.totalWorkUsagePercent - collection.sumBy('workUsage');
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL3ZlaGljbGUvdmVoaWNsZS1jbGFpbS5jb2xsZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU1QyxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsVUFBd0I7SUFDbEU7OztPQUdHO0lBQ0gsb0JBQW9CLENBQUMsS0FBb0I7UUFDdkMsSUFBSSxVQUFVLEdBQTJCLElBQUksQ0FBQztRQUU5QyxJQUFJLEtBQUssRUFBRTtZQUNULFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbEQ7UUFFRCxPQUFPLFlBQVksQ0FBQyxhQUFhLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gseUJBQXlCLENBQUMsS0FBb0I7UUFDNUMsSUFBSSxVQUFVLEdBQTJCLElBQUksQ0FBQztRQUU5QyxJQUFJLEtBQUssRUFBRTtZQUNULFVBQVUsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDbEQ7UUFFRCxPQUFPLFlBQVksQ0FBQyxxQkFBcUIsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IFZlaGljbGVDbGFpbSB9IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbmV4cG9ydCBjbGFzcyBWZWhpY2xlQ2xhaW1Db2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxWZWhpY2xlQ2xhaW0+IHtcbiAgLyoqXG4gICAqIEdldCByZW1haW5pbmcga2lsb21ldGVycyBsaW1pdC4gVG90YWwgbGltaXQgKHtAbGluayBWZWhpY2xlQ2xhaW0udG90YWxLbXNMaW1pdH0pIC0gY2xhaW1lZCBraWxvbWV0ZXJzIGZyb20gb3RoZXIgdmVoaWNsZSBjbGFpbXNcbiAgICogQHBhcmFtIGNsYWltIG1heSBub3QgZXhpc3Qgd2hlbiB1c2VyIGNvbWUgdG8gdmVoaWNsZSBjbGFpbSBwYWdlIDFzdCB0aW1lIGFuZCBub3QgY3JlYXRlZCBjbGFpbSB5ZXRcbiAgICovXG4gIGdldEtsbXNMaW1pdEZvckNsYWltKGNsYWltPzogVmVoaWNsZUNsYWltKTogbnVtYmVyIHtcbiAgICBsZXQgY29sbGVjdGlvbjogVmVoaWNsZUNsYWltQ29sbGVjdGlvbiA9IHRoaXM7XG5cbiAgICBpZiAoY2xhaW0pIHtcbiAgICAgIGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uLnJlbW92ZUJ5KCdpZCcsIGNsYWltLmlkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gVmVoaWNsZUNsYWltLnRvdGFsS21zTGltaXQgLSBjb2xsZWN0aW9uLnN1bUJ5KCdraWxvbWV0ZXJzJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHJlbWFpbmluZyB3b3JrIHVzYWdlIGxpbWl0LiBUb3RhbCBsaW1pdCAoe0BsaW5rIFZlaGljbGVDbGFpbS50b3RhbFdvcmtVc2FnZVBlcmNlbnR9KSAtIGNsYWltZWQgcGVyY2VudCBmcm9tIG90aGVyIHZlaGljbGUgY2xhaW1zXG4gICAqIEBwYXJhbSBjbGFpbSBtYXkgbm90IGV4aXN0IHdoZW4gdXNlciBjb21lIHRvIHZlaGljbGUgY2xhaW0gcGFnZSAxc3QgdGltZSBhbmQgbm90IGNyZWF0ZWQgY2xhaW0geWV0XG4gICAqL1xuICBnZXRXb3JrVXNhZ2VMaW1pdEZvckNsYWltKGNsYWltPzogVmVoaWNsZUNsYWltKTogbnVtYmVyIHtcbiAgICBsZXQgY29sbGVjdGlvbjogVmVoaWNsZUNsYWltQ29sbGVjdGlvbiA9IHRoaXM7XG5cbiAgICBpZiAoY2xhaW0pIHtcbiAgICAgIGNvbGxlY3Rpb24gPSBjb2xsZWN0aW9uLnJlbW92ZUJ5KCdpZCcsIGNsYWltLmlkKTtcbiAgICB9XG5cbiAgICByZXR1cm4gVmVoaWNsZUNsYWltLnRvdGFsV29ya1VzYWdlUGVyY2VudCAtIGNvbGxlY3Rpb24uc3VtQnkoJ3dvcmtVc2FnZScpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { FinancialYear } from '../../models/financial-year/financial-year';
|
|
2
|
+
import { plainToClass } from 'class-transformer';
|
|
3
|
+
import { Collection } from '../collection';
|
|
4
|
+
import { LogbookPeriod, VehicleLogbook } from '../../models';
|
|
5
|
+
import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
|
|
6
|
+
export class VehicleLogbookCollection extends Collection {
|
|
7
|
+
/**
|
|
8
|
+
* Best period may be calculated only when user has logbooks minimum for {@link VehicleLogbook.periodDuration}
|
|
9
|
+
* @TODO Vik: Best period: move this and related logic to backend
|
|
10
|
+
*/
|
|
11
|
+
isBestPeriodExist() {
|
|
12
|
+
if (this.items.length < 2) {
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
return VehicleLogbook.periodDuration < (this.last.date.getTime() - this.first.date.getTime());
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Get collection of non-personal logbooks (work-related, sole-related).
|
|
19
|
+
* @TODO Vik: Best period: move this and related logic to backend
|
|
20
|
+
*/
|
|
21
|
+
getClaimableLogbooks() {
|
|
22
|
+
return this.filterBy('isPersonal', false);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Logbook Period is the best when it has the biggest work usage percent
|
|
26
|
+
* Best period duration is defined as {@link VehicleLogbook.periodDuration} by the ATO
|
|
27
|
+
* @TODO Vik: Best period: move this and related logic to backend
|
|
28
|
+
*/
|
|
29
|
+
getBestPeriod() {
|
|
30
|
+
if (!this.isBestPeriodExist()) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
// declare best period variable
|
|
34
|
+
let bestPeriod;
|
|
35
|
+
// get list of all logbooks available for best period calculation
|
|
36
|
+
const claimableLogbooks = this.getClaimableLogbooks().toArray();
|
|
37
|
+
for (let i = 0; i < claimableLogbooks.length; i++) {
|
|
38
|
+
// no sense to check next logbooks because we already get the end of the year
|
|
39
|
+
if (bestPeriod && bestPeriod.isEndOfYear()) {
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
// get date range started from current handling logbook date
|
|
43
|
+
const dateRange = this.getPeriodRange(claimableLogbooks[i].date);
|
|
44
|
+
// get all logbooks included in current logbook period
|
|
45
|
+
const logbooksInRange = this.filterByRange('date', dateRange.from, dateRange.to);
|
|
46
|
+
const currentPeriod = plainToClass(LogbookPeriod, {
|
|
47
|
+
from: dateRange.from,
|
|
48
|
+
to: dateRange.to,
|
|
49
|
+
kilometers: logbooksInRange.getClaimableLogbooks().kilometers,
|
|
50
|
+
workUsage: logbooksInRange.getWorkUsage(),
|
|
51
|
+
logbooks: logbooksInRange
|
|
52
|
+
});
|
|
53
|
+
// compare with previous best period and overwrite if needs
|
|
54
|
+
if (!bestPeriod || currentPeriod.workUsage > bestPeriod.workUsage) {
|
|
55
|
+
bestPeriod = currentPeriod;
|
|
56
|
+
}
|
|
57
|
+
else if (currentPeriod.workUsage === bestPeriod.workUsage) {
|
|
58
|
+
// if work usage is the same then get period with the biggest work usage for work tank
|
|
59
|
+
const oldWorkUsage = bestPeriod.logbooks.filterBy('tankType', TankTypeEnum.WORK).getWorkUsage();
|
|
60
|
+
const currentWorkUsage = currentPeriod.logbooks.filterBy('tankType', TankTypeEnum.WORK).getWorkUsage();
|
|
61
|
+
if (oldWorkUsage < currentWorkUsage) {
|
|
62
|
+
bestPeriod = currentPeriod;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return bestPeriod;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Calculate total kilometers traveled
|
|
70
|
+
*/
|
|
71
|
+
get kilometers() {
|
|
72
|
+
return this.sumBy('kilometers');
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Calculate work usage (percent of business-related kilometers from total kilometers)
|
|
76
|
+
* @TODO Alex: TT-2089 replace with getter
|
|
77
|
+
*/
|
|
78
|
+
getWorkUsage() {
|
|
79
|
+
const workKilometers = this.getClaimableLogbooks().kilometers;
|
|
80
|
+
return Math.round(workKilometers / this.kilometers * 100);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get LOGBOOK_PERIOD_DURATION date range from passed start date
|
|
84
|
+
* @TODO Vik: Best period: move this and related logic to backend
|
|
85
|
+
*/
|
|
86
|
+
getPeriodRange(from) {
|
|
87
|
+
// set end date as VehicleLogbook.periodDuration after start date
|
|
88
|
+
let to = new Date(from.getTime() + VehicleLogbook.periodDuration);
|
|
89
|
+
const financialYear = new FinancialYear();
|
|
90
|
+
// set as period last VehicleLogbook.periodDuration of current year if period end date after end of current year
|
|
91
|
+
if (to > financialYear.endDate) {
|
|
92
|
+
to = financialYear.endDate;
|
|
93
|
+
from = new Date(to.getTime() - VehicleLogbook.periodDuration);
|
|
94
|
+
}
|
|
95
|
+
return { from, to };
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Get list of logbooks related to passed vehicle claim
|
|
99
|
+
*/
|
|
100
|
+
getByVehicleClaim(claim) {
|
|
101
|
+
return claim.isWorkTank()
|
|
102
|
+
? this.filterBy('tankType', TankTypeEnum.WORK)
|
|
103
|
+
: this.filterBy('business.id', claim.business.id);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1sb2dib29rLmNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvY29sbGVjdGlvbnMvdmVoaWNsZS92ZWhpY2xlLWxvZ2Jvb2suY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDM0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBZ0IsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU3RCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsVUFBMEI7SUFDdEU7OztPQUdHO0lBQ0gsaUJBQWlCO1FBQ2YsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDekIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELE9BQU8sY0FBYyxDQUFDLGNBQWMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVEOzs7T0FHRztJQUNILG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsYUFBYTtRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRTtZQUM3QixPQUFPLElBQUksQ0FBQztTQUNiO1FBRUQsK0JBQStCO1FBQy9CLElBQUks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QUUsRUFBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUFDLEtBQW1CO1FBQ25DLE9BQU8sS0FBSyxDQUFDLFVBQVUsRUFBRTtZQUN2QixDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLElBQUksQ0FBQztZQUM5QyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IExvZ2Jvb2tQZXJpb2QsIFZlaGljbGVDbGFpbSwgVmVoaWNsZUxvZ2Jvb2sgfSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgVGFua1R5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGFuay10eXBlLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgVmVoaWNsZUxvZ2Jvb2tDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxWZWhpY2xlTG9nYm9vaz4ge1xuICAvKipcbiAgICogQmVzdCBwZXJpb2QgbWF5IGJlIGNhbGN1bGF0ZWQgb25seSB3aGVuIHVzZXIgaGFzIGxvZ2Jvb2tzIG1pbmltdW0gZm9yIHtAbGluayBWZWhpY2xlTG9nYm9vay5wZXJpb2REdXJhdGlvbn1cbiAgICogQFRPRE8gVmlrOiBCZXN0IHBlcmlvZDogbW92ZSB0aGlzIGFuZCByZWxhdGVkIGxvZ2ljIHRvIGJhY2tlbmRcbiAgICovXG4gIGlzQmVzdFBlcmlvZEV4aXN0KCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aCA8IDIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICByZXR1cm4gVmVoaWNsZUxvZ2Jvb2sucGVyaW9kRHVyYXRpb24gPCAodGhpcy5sYXN0LmRhdGUuZ2V0VGltZSgpIC0gdGhpcy5maXJzdC5kYXRlLmdldFRpbWUoKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2Ygbm9uLXBlcnNvbmFsIGxvZ2Jvb2tzICh3b3JrLXJlbGF0ZWQsIHNvbGUtcmVsYXRlZCkuXG4gICAqIEBUT0RPIFZpazogQmVzdCBwZXJpb2Q6IG1vdmUgdGhpcyBhbmQgcmVsYXRlZCBsb2dpYyB0byBiYWNrZW5kXG4gICAqL1xuICBnZXRDbGFpbWFibGVMb2dib29rcygpOiB0aGlzIHtcbiAgICByZXR1cm4gdGhpcy5maWx0ZXJCeSgnaXNQZXJzb25hbCcsIGZhbHNlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dib29rIFBlcmlvZCBpcyB0aGUgYmVzdCB3aGVuIGl0IGhhcyB0aGUgYmlnZ2VzdCB3b3JrIHVzYWdlIHBlcmNlbnRcbiAgICogQmVzdCBwZXJpb2QgZHVyYXRpb24gaXMgZGVmaW5lZCBhcyB7QGxpbmsgVmVoaWNsZUxvZ2Jvb2sucGVyaW9kRHVyYXRpb259IGJ5IHRoZSBBVE9cbiAgICogQFRPRE8gVmlrOiBCZXN0IHBlcmlvZDogbW92ZSB0aGlzIGFuZCByZWxhdGVkIGxvZ2ljIHRvIGJhY2tlbmRcbiAgICovXG4gIGdldEJlc3RQZXJpb2QoKTogTG9nYm9va1BlcmlvZCB7XG4gICAgaWYgKCF0aGlzLmlzQmVzdFBlcmlvZEV4aXN0KCkpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIGRlY2xhcmUgYmVzdCBwZXJpb2QgdmFyaWFibGVcbiAgICBsZXQgYmVzdFBlcmlvZDogTG9nYm9va1BlcmlvZDtcblxuICAgIC8vIGdldCBsaXN0IG9mIGFsbCBsb2dib29rcyBhdmFpbGFibGUgZm9yIGJlc3QgcGVyaW9kIGNhbGN1bGF0aW9uXG4gICAgY29uc3QgY2xhaW1hYmxlTG9nYm9va3M6IFZlaGljbGVMb2dib29rW10gPSB0aGlzLmdldENsYWltYWJsZUxvZ2Jvb2tzKCkudG9BcnJheSgpO1xuXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbGFpbWFibGVMb2dib29rcy5sZW5ndGg7IGkgKyspIHtcbiAgICAgIC8vIG5vIHNlbnNlIHRvIGNoZWNrIG5leHQgbG9nYm9va3MgYmVjYXVzZSB3ZSBhbHJlYWR5IGdldCB0aGUgZW5kIG9mIHRoZSB5ZWFyXG4gICAgICBpZiAoYmVzdFBlcmlvZCAmJiBiZXN0UGVyaW9kLmlzRW5kT2ZZZWFyKCkpIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG5cbiAgICAgIC8vIGdldCBkYXRlIHJhbmdlIHN0YXJ0ZWQgZnJvbSBjdXJyZW50IGhhbmRsaW5nIGxvZ2Jvb2sgZGF0ZVxuICAgICAgY29uc3QgZGF0ZVJhbmdlOiB7ZnJvbTogRGF0ZSwgdG86IERhdGV9ID0gdGhpcy5nZXRQZXJpb2RSYW5nZShjbGFpbWFibGVMb2dib29rc1tpXS5kYXRlKTtcblxuICAgICAgLy8gZ2V0IGFsbCBsb2dib29rcyBpbmNsdWRlZCBpbiBjdXJyZW50IGxvZ2Jvb2sgcGVyaW9kXG4gICAgICBjb25zdCBsb2dib29rc0luUmFuZ2U6IFZlaGljbGVMb2dib29rQ29sbGVjdGlvbiA9IHRoaXMuZmlsdGVyQnlSYW5nZSgnZGF0ZScsIGRhdGVSYW5nZS5mcm9tLCBkYXRlUmFuZ2UudG8pO1xuXG4gICAgICBjb25zdCBjdXJyZW50UGVyaW9kOiBMb2dib29rUGVyaW9kID0gcGxhaW5Ub0NsYXNzKExvZ2Jvb2tQZXJpb2QsIHtcbiAgICAgICAgZnJvbTogZGF0ZVJhbmdlLmZyb20sXG4gICAgICAgIHRvOiBkYXRlUmFuZ2UudG8sXG4gICAgICAgIGtpbG9tZXRlcnM6IGxvZ2Jvb2tzSW5SYW5nZS5nZXRDbGFpbWFibGVMb2dib29rcygpLmtpbG9tZXRlcnMsXG4gICAgICAgIHdvcmtVc2FnZTogbG9nYm9va3NJblJhbmdlLmdldFdvcmtVc2FnZSgpLFxuICAgICAgICBsb2dib29rczogbG9nYm9va3NJblJhbmdlXG4gICAgICB9KTtcblxuICAgICAgLy8gY29tcGFyZSB3aXRoIHByZXZpb3VzIGJlc3QgcGVyaW9kIGFuZCBvdmVyd3JpdGUgaWYgbmVlZHNcbiAgICAgIGlmICghYmVzdFBlcmlvZCB8fCBjdXJyZW50UGVyaW9kLndvcmtVc2FnZSA+IGJlc3RQZXJpb2Qud29ya1VzYWdlKSB7XG4gICAgICAgIGJlc3RQZXJpb2QgPSBjdXJyZW50UGVyaW9kO1xuICAgICAgfSBlbHNlIGlmIChjdXJyZW50UGVyaW9kLndvcmtVc2FnZSA9PT0gYmVzdFBlcmlvZC53b3JrVXNhZ2UpIHtcbiAgICAgICAgLy8gaWYgd29yayB1c2FnZSBpcyB0aGUgc2FtZSB0aGVuIGdldCBwZXJpb2Qgd2l0aCB0aGUgYmlnZ2VzdCB3b3JrIHVzYWdlIGZvciB3b3JrIHRhbmtcbiAgICAgICAgY29uc3Qgb2xkV29ya1VzYWdlOiBudW1iZXIgPSBiZXN0UGVyaW9kLmxvZ2Jvb2tzLmZpbHRlckJ5KCd0YW5rVHlwZScsIFRhbmtUeXBlRW51bS5XT1JLKS5nZXRXb3JrVXNhZ2UoKTtcbiAgICAgICAgY29uc3QgY3VycmVudFdvcmtVc2FnZTogbnVtYmVyID0gY3VycmVudFBlcmlvZC5sb2dib29rcy5maWx0ZXJCeSgndGFua1R5cGUnLCBUYW5rVHlwZUVudW0uV09SSykuZ2V0V29ya1VzYWdlKCk7XG5cbiAgICAgICAgaWYgKG9sZFdvcmtVc2FnZSA8IGN1cnJlbnRXb3JrVXNhZ2UpIHtcbiAgICAgICAgICBiZXN0UGVyaW9kID0gY3VycmVudFBlcmlvZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBiZXN0UGVyaW9kO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZSB0b3RhbCBraWxvbWV0ZXJzIHRyYXZlbGVkXG4gICAqL1xuICBnZXQga2lsb21ldGVycygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN1bUJ5KCdraWxvbWV0ZXJzJyk7XG4gIH1cblxuICAvKipcbiAgICogQ2FsY3VsYXRlIHdvcmsgdXNhZ2UgKHBlcmNlbnQgb2YgYnVzaW5lc3MtcmVsYXRlZCBraWxvbWV0ZXJzIGZyb20gdG90YWwga2lsb21ldGVycylcbiAgICogQFRPRE8gQWxleDogVFQtMjA4OSByZXBsYWNlIHdpdGggZ2V0dGVyXG4gICAqL1xuICBnZXRXb3JrVXNhZ2UoKTogbnVtYmVyIHtcbiAgICBjb25zdCB3b3JrS2lsb21ldGVyczogbnVtYmVyID0gdGhpcy5nZXRDbGFpbWFibGVMb2dib29rcygpLmtpbG9tZXRlcnM7XG5cbiAgICByZXR1cm4gTWF0aC5yb3VuZCh3b3JrS2lsb21ldGVycyAvIHRoaXMua2lsb21ldGVycyAqIDEwMCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IExPR0JPT0tfUEVSSU9EX0RVUkFUSU9OIGRhdGUgcmFuZ2UgZnJvbSBwYXNzZWQgc3RhcnQgZGF0ZVxuICAgKiBAVE9ETyBWaWs6IEJlc3QgcGVyaW9kOiBtb3ZlIHRoaXMgYW5kIHJlbGF0ZWQgbG9naWMgdG8gYmFja2VuZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRQZXJpb2RSYW5nZShmcm9tOiBEYXRlKToge2Zyb206IERhdGUsIHRvOiBEYXRlfSB7XG4gICAgLy8gc2V0IGVuZCBkYXRlIGFzIFZlaGljbGVMb2dib29rLnBlcmlvZER1cmF0aW9uIGFmdGVyIHN0YXJ0IGRhdGVcbiAgICBsZXQgdG86IERhdGUgPSBuZXcgRGF0ZShmcm9tLmdldFRpbWUoKSArIFZlaGljbGVMb2dib29rLnBlcmlvZER1cmF0aW9uKTtcblxuICAgIGNvbnN0IGZpbmFuY2lhbFllYXIgPSBuZXcgRmluYW5jaWFsWWVhcigpO1xuXG4gICAgLy8gc2V0IGFzIHBlcmlvZCBsYXN0IFZlaGljbGVMb2dib29rLnBlcmlvZER1cmF0aW9uIG9mIGN1cnJlbnQgeWVhciBpZiBwZXJpb2QgZW5kIGRhdGUgYWZ0ZXIgZW5kIG9mIGN1cnJlbnQgeWVhclxuICAgIGlmICh0byA+IGZpbmFuY2lhbFllYXIuZW5kRGF0ZSkge1xuICAgICAgdG8gPSBmaW5hbmNpYWxZZWFyLmVuZERhdGU7XG4gICAgICBmcm9tID0gbmV3IERhdGUodG8uZ2V0VGltZSgpIC0gVmVoaWNsZUxvZ2Jvb2sucGVyaW9kRHVyYXRpb24pO1xuICAgIH1cblxuICAgIHJldHVybiB7ZnJvbSwgdG99O1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGxvZ2Jvb2tzIHJlbGF0ZWQgdG8gcGFzc2VkIHZlaGljbGUgY2xhaW1cbiAgICovXG4gIGdldEJ5VmVoaWNsZUNsYWltKGNsYWltOiBWZWhpY2xlQ2xhaW0pOiB0aGlzIHtcbiAgICByZXR1cm4gY2xhaW0uaXNXb3JrVGFuaygpXG4gICAgICA/IHRoaXMuZmlsdGVyQnkoJ3RhbmtUeXBlJywgVGFua1R5cGVFbnVtLldPUkspXG4gICAgICA6IHRoaXMuZmlsdGVyQnkoJ2J1c2luZXNzLmlkJywgY2xhaW0uYnVzaW5lc3MuaWQpO1xuICB9XG59XG4iXX0=
|
|
@@ -3,10 +3,11 @@ export var BankAccountTypeEnum;
|
|
|
3
3
|
BankAccountTypeEnum[BankAccountTypeEnum["TRANSACTION"] = 1] = "TRANSACTION";
|
|
4
4
|
BankAccountTypeEnum[BankAccountTypeEnum["SAVINGS"] = 2] = "SAVINGS";
|
|
5
5
|
BankAccountTypeEnum[BankAccountTypeEnum["CREDIT_CARD"] = 3] = "CREDIT_CARD";
|
|
6
|
-
|
|
6
|
+
// @TODO Alex: should be removed by backend (TT-2107)
|
|
7
|
+
// MORTGAGE = 4,
|
|
7
8
|
BankAccountTypeEnum[BankAccountTypeEnum["LOAN"] = 5] = "LOAN";
|
|
8
9
|
BankAccountTypeEnum[BankAccountTypeEnum["INVESTMENT"] = 6] = "INVESTMENT";
|
|
9
10
|
BankAccountTypeEnum[BankAccountTypeEnum["TERM_DEPOSIT"] = 7] = "TERM_DEPOSIT";
|
|
10
11
|
BankAccountTypeEnum[BankAccountTypeEnum["OFFSET"] = 10] = "OFFSET";
|
|
11
12
|
})(BankAccountTypeEnum || (BankAccountTypeEnum = {}));
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LXR5cGUuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9FbnVtcy9iYW5rLWFjY291bnQtdHlwZS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLG1CQVVYO0FBVkQsV0FBWSxtQkFBbUI7SUFDN0IsMkVBQWUsQ0FBQTtJQUNmLG1FQUFXLENBQUE7SUFDWCwyRUFBZSxDQUFBO0lBQ2YscURBQXFEO0lBQ3JELGdCQUFnQjtJQUNoQiw2REFBUSxDQUFBO0lBQ1IseUVBQWMsQ0FBQTtJQUNkLDZFQUFnQixDQUFBO0lBQ2hCLGtFQUFXLENBQUE7QUFDYixDQUFDLEVBVlcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQVU5QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIEJhbmtBY2NvdW50VHlwZUVudW0ge1xuICBUUkFOU0FDVElPTiA9IDEsXG4gIFNBVklOR1MgPSAyLFxuICBDUkVESVRfQ0FSRCA9IDMsXG4gIC8vIEBUT0RPIEFsZXg6IHNob3VsZCBiZSByZW1vdmVkIGJ5IGJhY2tlbmQgKFRULTIxMDcpXG4gIC8vIE1PUlRHQUdFID0gNCxcbiAgTE9BTiA9IDUsXG4gIElOVkVTVE1FTlQgPSA2LFxuICBURVJNX0RFUE9TSVQgPSA3LFxuICBPRkZTRVQgPSAxMCxcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export var VehicleClaimDetailsMethodEnum;
|
|
2
|
+
(function (VehicleClaimDetailsMethodEnum) {
|
|
3
|
+
VehicleClaimDetailsMethodEnum[VehicleClaimDetailsMethodEnum["KMS"] = 1] = "KMS";
|
|
4
|
+
VehicleClaimDetailsMethodEnum[VehicleClaimDetailsMethodEnum["LOGBOOK"] = 2] = "LOGBOOK";
|
|
5
|
+
})(VehicleClaimDetailsMethodEnum || (VehicleClaimDetailsMethodEnum = {}));
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS1kZXRhaWxzLW1ldGhvZC5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL0VudW1zL3ZlaGljbGUtY2xhaW0tZGV0YWlscy1tZXRob2QuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSw2QkFHWDtBQUhELFdBQVksNkJBQTZCO0lBQ3hDLCtFQUFPLENBQUE7SUFDUCx1RkFBVyxDQUFBO0FBQ1osQ0FBQyxFQUhXLDZCQUE2QixLQUE3Qiw2QkFBNkIsUUFHeEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBWZWhpY2xlQ2xhaW1EZXRhaWxzTWV0aG9kRW51bSB7XG5cdEtNUyA9IDEsXG5cdExPR0JPT0sgPSAyLFxufSJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { AbstractModel } from '../abstract-model';
|
|
2
2
|
export class SoleBusiness extends AbstractModel {
|
|
3
3
|
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1idXNpbmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9Nb2RlbHMvc29sZS9zb2xlLWJ1c2luZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdsRCxNQUFNLE9BQU8sWUFBYSxTQUFRLGFBQWE7Q0FpQjlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBTb2xlQnVzaW5lc3NBbGxvY2F0aW9uIH0gZnJvbSAnLi9zb2xlLWJ1c2luZXNzLWFsbG9jYXRpb24nO1xuaW1wb3J0IHsgU29sZUJ1c2luZXNzTG9zcyB9IGZyb20gJy4vc29sZS1idXNpbmVzcy1sb3NzJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlIH0gZnJvbSAnLi9zb2xlLWludm9pY2UnO1xuaW1wb3J0IHsgU29sZUludm9pY2VUZW1wbGF0ZSB9IGZyb20gJy4vc29sZS1pbnZvaWNlLXRlbXBsYXRlJztcbmltcG9ydCB7IFZlaGljbGVDbGFpbSB9IGZyb20gJy4uL3ZlaGljbGUvdmVoaWNsZS1jbGFpbSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IERlcHJlY2lhdGlvbiB9IGZyb20gJy4uL2RlcHJlY2lhdGlvbi9kZXByZWNpYXRpb24nO1xuaW1wb3J0IHsgQWJzdHJhY3RNb2RlbCB9IGZyb20gJy4uL2Fic3RyYWN0LW1vZGVsJztcbmltcG9ydCB7IFZlaGljbGVMb2dib29rIH0gZnJvbSAnLi4vdmVoaWNsZS92ZWhpY2xlLWxvZ2Jvb2snO1xuXG5leHBvcnQgY2xhc3MgU29sZUJ1c2luZXNzIGV4dGVuZHMgQWJzdHJhY3RNb2RlbCB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGNvZGU/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICB3ZWJzaXRlPzogc3RyaW5nO1xuICBsb2dvPzogc3RyaW5nO1xuICBpZD86IG51bWJlcjtcbiAgZGVsZXRlZEF0PzogRGF0ZTtcbiAgdXNlcj86IFVzZXI7XG4gIGFsbG9jYXRpb25zPzogU29sZUJ1c2luZXNzQWxsb2NhdGlvbltdO1xuICBsb3NzZXM/OiBTb2xlQnVzaW5lc3NMb3NzW107XG4gIGludm9pY2VzPzogU29sZUludm9pY2VbXTtcbiAgaW52b2ljZVRlbXBsYXRlcz86IFNvbGVJbnZvaWNlVGVtcGxhdGVbXTtcbiAgdmVoaWNsZUNsYWltcz86IFZlaGljbGVDbGFpbVtdO1xuICB2ZWhpY2xlTG9nYm9va3M/OiBWZWhpY2xlTG9nYm9va1tdO1xuICB0cmFuc2FjdGlvbnM/OiBUcmFuc2FjdGlvbltdO1xuICBkZXByZWNpYXRpb25zPzogRGVwcmVjaWF0aW9uW107XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { AbstractModel } from '../abstract-model';
|
|
2
2
|
export class SoleInvoiceTemplate extends AbstractModel {
|
|
3
3
|
}
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLXRlbXBsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL01vZGVscy9zb2xlL3NvbGUtaW52b2ljZS10ZW1wbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7Q0FPckQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTb2xlQnVzaW5lc3MgfSBmcm9tICcuL3NvbGUtYnVzaW5lc3MnO1xuaW1wb3J0IHsgQmFua0FjY291bnQgfSBmcm9tICcuLi9iYW5rL2JhbmstYWNjb3VudCc7XG5pbXBvcnQgeyBBYnN0cmFjdE1vZGVsIH0gZnJvbSAnLi4vYWJzdHJhY3QtbW9kZWwnO1xuXG5leHBvcnQgY2xhc3MgU29sZUludm9pY2VUZW1wbGF0ZSBleHRlbmRzIEFic3RyYWN0TW9kZWwge1xuICBuYW1lPzogc3RyaW5nO1xuICBpc1RheEluY2x1ZGVkPzogYm9vbGVhbjtcbiAgdGVybT86IG51bWJlcjtcbiAgaWQ/OiBudW1iZXI7XG4gIGJ1c2luZXNzPzogU29sZUJ1c2luZXNzO1xuICBiYW5rQWNjb3VudD86IEJhbmtBY2NvdW50O1xufVxuIl19
|
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { CHART_ACCOUNTS_CATEGORIES } from '../../../models/chart-accounts/chart-accounts-categories.const';
|
|
3
2
|
import { AbstractModel } from '../abstract-model';
|
|
4
3
|
import { Exclude, Transform, Type } from 'class-transformer';
|
|
4
|
+
import { TankTypeEnum } from '../../Enums/tank-type.enum';
|
|
5
|
+
import { CHART_ACCOUNTS_CATEGORIES } from '../../../models/chart-accounts/chart-accounts-categories.const';
|
|
5
6
|
export class TransactionBase extends AbstractModel {
|
|
7
|
+
get tankType() {
|
|
8
|
+
switch (true) {
|
|
9
|
+
case this.isPropertyTank():
|
|
10
|
+
return TankTypeEnum.PROPERTY;
|
|
11
|
+
case this.isWorkTank():
|
|
12
|
+
return TankTypeEnum.WORK;
|
|
13
|
+
case this.isSoleTank():
|
|
14
|
+
return TankTypeEnum.SOLE;
|
|
15
|
+
default:
|
|
16
|
+
return TankTypeEnum.OTHER;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
6
19
|
/**
|
|
7
20
|
* Check if current tank is Property
|
|
8
21
|
*/
|
|
@@ -43,4 +56,4 @@ __decorate([
|
|
|
43
56
|
return obj.file;
|
|
44
57
|
})
|
|
45
58
|
], TransactionBase.prototype, "file", void 0);
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9kYi9Nb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBRUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxELE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUUzRyxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxhQUFhO0lBb0JoRCxJQUFJLFFBQVE7UUFDVixRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssSUFBSSxDQUFDLGNBQWMsRUFBRTtnQkFDeEIsT0FBTyxZQUFZLENBQUMsUUFBUSxDQUFDO1lBQy9CLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDcEIsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQzNCLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtnQkFDcEIsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQzNCO2dCQUNFLE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQztTQUM3QjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixnREFBZ0Q7UUFDaEQsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLE9BQU8seUJBQXlCLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ2pGO1FBRUQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVOztRQUNSLGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDdEIsT0FBTyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQUEsSUFBSSxDQUFDLGFBQWEsMENBQUUsUUFBUSxDQUFDLENBQUM7U0FDOUU7UUFFRCxPQUFPLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7O1FBQ1IsZ0RBQWdEO1FBQ2hELElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixPQUFPLHlCQUF5QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBQSxJQUFJLENBQUMsYUFBYSwwQ0FBRSxRQUFRLENBQUMsQ0FBQztTQUM5RTtRQUVELE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztDQUNGO0FBbkRDO0lBTEMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO0lBQzVCLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDbEIsU0FBUyxDQUFDLENBQUMsRUFBQyxHQUFHLEVBQUMsRUFBRSxFQUFFO1FBQ25CLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQztJQUNsQixDQUFDLENBQUM7NkNBQ1MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9wZXJ0eSB9IGZyb20gJy4uL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHMgfSBmcm9tICcuLi9jaGFydC1hY2NvdW50cy9jaGFydC1hY2NvdW50cyc7XG5pbXBvcnQgeyBBYnN0cmFjdE1vZGVsIH0gZnJvbSAnLi4vYWJzdHJhY3QtbW9kZWwnO1xuaW1wb3J0IHsgU29sZUJ1c2luZXNzIH0gZnJvbSAnLi4vc29sZS9zb2xlLWJ1c2luZXNzJztcbmltcG9ydCB7IEV4Y2x1ZGUsIFRyYW5zZm9ybSwgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJhc2UgZXh0ZW5kcyBBYnN0cmFjdE1vZGVsIHtcbiAgaWQ/OiBudW1iZXI7XG4gIGFtb3VudD86IG51bWJlcjtcbiAgcHJvcGVydHk/OiBQcm9wZXJ0eTtcbiAgYnVzaW5lc3M/OiBTb2xlQnVzaW5lc3M7XG4gIGRhdGU/OiBEYXRlO1xuICBjaGFydEFjY291bnRzPzogQ2hhcnRBY2NvdW50cztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBjb3VsZCBiZSBGaWxlIHdoZW4ganVzdCBhZGRlZCBuZXcgaW1hZ2VcbiAgICogQFRPRE8gQWxleCBwbGFpblRvQ2xhc3MgZG9lc24ndCB3b3JrIHdpdGggRmlsZSB3aXRob3V0IHRoaXMgaGFjayBodHRwczovL2dpdGh1Yi5jb20vdHlwZXN0YWNrL2NsYXNzLXRyYW5zZm9ybWVyL2lzc3Vlcy8xMTc4XG4gICAqL1xuICBARXhjbHVkZSh7dG9QbGFpbk9ubHk6IHRydWV9KVxuICBAVHlwZSgoKSA9PiBPYmplY3QpXG4gIEBUcmFuc2Zvcm0oKHtvYmp9KSA9PiB7XG4gICAgcmV0dXJuIG9iai5maWxlO1xuICB9KVxuICBmaWxlOiBGaWxlO1xuICBjbGFpbVBlcmNlbnQ/OiBudW1iZXI7XG5cbiAgZ2V0IHRhbmtUeXBlKCk6IFRhbmtUeXBlRW51bSB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlIHRoaXMuaXNQcm9wZXJ0eVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIFRhbmtUeXBlRW51bS5QUk9QRVJUWTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiBUYW5rVHlwZUVudW0uV09SSztcbiAgICAgIGNhc2UgdGhpcy5pc1NvbGVUYW5rKCk6XG4gICAgICAgIHJldHVybiBUYW5rVHlwZUVudW0uU09MRTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBUYW5rVHlwZUVudW0uT1RIRVI7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGN1cnJlbnQgdGFuayBpcyBQcm9wZXJ0eVxuICAgKi9cbiAgaXNQcm9wZXJ0eVRhbmsoKTogYm9vbGVhbiB7XG4gICAgLy8gY2hhcnQgYWNjb3VudHMgbWF5IGJlIGVtcHR5IGZvciBuZXcgaW5zdGFuY2VzXG4gICAgaWYgKHRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucHJvcGVydHkuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gISF0aGlzLnByb3BlcnR5O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGN1cnJlbnQgdGFuayBpcyBXb3JrXG4gICAqL1xuICBpc1dvcmtUYW5rKCk6IGJvb2xlYW4ge1xuICAgIC8vIGNoYXJ0IGFjY291bnRzIG1heSBiZSBlbXB0eSBmb3IgbmV3IGluc3RhbmNlc1xuICAgIGlmICh0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLndvcmsuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzPy5jYXRlZ29yeSk7XG4gICAgfVxuXG4gICAgcmV0dXJuICF0aGlzLmlzUHJvcGVydHlUYW5rKCkgJiYgIXRoaXMuaXNTb2xlVGFuaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGN1cnJlbnQgdGFuayBpcyBTb2xlXG4gICAqL1xuICBpc1NvbGVUYW5rKCk6IGJvb2xlYW4ge1xuICAgIC8vIGNoYXJ0IGFjY291bnRzIG1heSBiZSBlbXB0eSBmb3IgbmV3IGluc3RhbmNlc1xuICAgIGlmICh0aGlzLmNoYXJ0QWNjb3VudHMpIHtcbiAgICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLnNvbGUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzPy5jYXRlZ29yeSk7XG4gICAgfVxuXG4gICAgcmV0dXJuICEhdGhpcy5idXNpbmVzcztcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AbstractModel } from '../abstract-model';
|
|
2
|
+
export class VehicleClaimDetails extends AbstractModel {
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1jbGFpbS1kZXRhaWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2RiL01vZGVscy92ZWhpY2xlL3ZlaGljbGUtY2xhaW0tZGV0YWlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGFBQWE7Q0FNckQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWZWhpY2xlQ2xhaW1EZXRhaWxzTWV0aG9kRW51bSB9IGZyb20gJy4uLy4uL0VudW1zL3ZlaGljbGUtY2xhaW0tZGV0YWlscy1tZXRob2QuZW51bSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcbmltcG9ydCB7IEFic3RyYWN0TW9kZWwgfSBmcm9tICcuLi9hYnN0cmFjdC1tb2RlbCc7XG5cbmV4cG9ydCBjbGFzcyBWZWhpY2xlQ2xhaW1EZXRhaWxzIGV4dGVuZHMgQWJzdHJhY3RNb2RlbCB7XG4gIGZpbmFuY2lhbFllYXI/OiBudW1iZXI7XG4gIG1ldGhvZD86IFZlaGljbGVDbGFpbURldGFpbHNNZXRob2RFbnVtO1xuICBpc01hbnVhbD86IGJvb2xlYW47XG4gIGlkPzogbnVtYmVyO1xuICB1c2VyPzogVXNlcjtcbn1cbiJdfQ==
|