taxtank-core 0.16.13 → 0.17.2
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 +363 -383
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/bank-transaction.collection.js +1 -1
- package/esm2015/lib/collections/depreciation.collection.js +2 -2
- package/esm2015/lib/collections/exportable.collection.js +17 -0
- package/esm2015/lib/collections/loan/loan-payment.collection.js +31 -0
- package/esm2015/lib/collections/loan/loan.collection.js +18 -0
- package/esm2015/lib/collections/report/property/property-report-item-transaction.collection.js +1 -1
- package/esm2015/lib/collections/report/vehicle-expense/vehicle-expense.collection.js +1 -1
- package/esm2015/lib/collections/tax-summary/report-item.collection.js +50 -120
- package/esm2015/lib/collections/tax-summary/tax-return-categories.const.js +65 -0
- package/esm2015/lib/collections/transaction/transaction-allocation.collection.js +40 -0
- package/esm2015/lib/collections/transaction/transaction.collection.js +167 -0
- package/esm2015/lib/db/Enums/tax-return-category-list.enum.js +21 -7
- package/esm2015/lib/models/bank/bank-transaction.js +1 -1
- package/esm2015/lib/models/export/export-cell-type.enum.js +10 -0
- package/esm2015/lib/models/export/export-cell.js +6 -0
- package/esm2015/lib/models/export/export-data-table.js +1 -7
- package/esm2015/lib/models/income-source/income-source-chart-data.js +1 -1
- package/esm2015/lib/models/loan/loan-payment.js +2 -24
- package/esm2015/lib/models/logbook/vehicle-claim.js +1 -1
- package/esm2015/lib/models/property/property-equity-chart-data.js +1 -1
- package/esm2015/lib/models/property/property-sale/property-sale.js +10 -1
- package/esm2015/lib/models/report/property/property-report-item-transaction.js +1 -1
- package/esm2015/lib/models/tax-summary/report-item.js +8 -1
- package/esm2015/lib/models/tax-summary/tax-summary.js +28 -9
- package/esm2015/lib/models/transaction/transaction.js +1 -1
- package/esm2015/lib/services/account-setup/account-setup.service.js +2 -2
- package/esm2015/lib/services/bank/bank-account-calculation.service.js +1 -1
- package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +1 -1
- package/esm2015/lib/services/export/export-formatter.service.js +31 -0
- package/esm2015/lib/services/pdf/pdf.service.js +9 -4
- package/esm2015/lib/services/property/property-calculation/property-calculation.service.js +1 -1
- package/esm2015/lib/services/report/property/property-transaction-report.service.js +2 -2
- package/esm2015/lib/services/transaction/transaction-calculation.service.js +2 -2
- package/esm2015/public-api.js +8 -10
- package/fesm2015/taxtank-core.js +301 -286
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/bank-transaction.collection.d.ts +1 -1
- package/lib/collections/depreciation.collection.d.ts +1 -1
- package/lib/collections/exportable.collection.d.ts +9 -0
- package/lib/collections/loan/loan-payment.collection.d.ts +7 -0
- package/lib/collections/{loan.collection.d.ts → loan/loan.collection.d.ts} +2 -2
- package/lib/collections/report/property/property-report-item-transaction.collection.d.ts +1 -1
- package/lib/collections/report/vehicle-expense/vehicle-expense.collection.d.ts +1 -1
- package/lib/collections/tax-summary/report-item.collection.d.ts +17 -51
- package/lib/collections/tax-summary/tax-return-categories.const.d.ts +6 -0
- package/lib/collections/{transaction-allocation.collection.d.ts → transaction/transaction-allocation.collection.d.ts} +6 -6
- package/lib/collections/{transaction.collection.d.ts → transaction/transaction.collection.d.ts} +9 -5
- package/lib/db/Enums/tax-return-category-list.enum.d.ts +20 -6
- package/lib/models/bank/bank-transaction.d.ts +1 -1
- package/lib/models/export/export-cell-type.enum.d.ts +8 -0
- package/lib/models/export/export-cell.d.ts +8 -0
- package/lib/models/export/export-data-table.d.ts +3 -2
- package/lib/models/income-source/income-source-chart-data.d.ts +1 -1
- package/lib/models/loan/loan-payment.d.ts +1 -5
- package/lib/models/logbook/vehicle-claim.d.ts +1 -1
- package/lib/models/property/property-equity-chart-data.d.ts +1 -1
- package/lib/models/property/property-sale/property-sale.d.ts +3 -0
- package/lib/models/report/property/property-report-item-transaction.d.ts +1 -1
- package/lib/models/tax-summary/report-item.d.ts +3 -2
- package/lib/models/transaction/transaction.d.ts +1 -1
- package/lib/services/bank/bank-account-calculation.service.d.ts +1 -1
- package/lib/services/bank/bank-transaction-calculation.service.d.ts +1 -1
- package/lib/services/export/export-formatter.service.d.ts +11 -0
- package/lib/services/pdf/pdf.service.d.ts +3 -0
- package/lib/services/property/property-calculation/property-calculation.service.d.ts +2 -2
- package/lib/services/report/property/property-transaction-report.service.d.ts +1 -1
- package/lib/services/transaction/transaction-calculation.service.d.ts +2 -2
- package/package.json +1 -1
- package/public-api.d.ts +7 -9
- package/esm2015/lib/collections/loan.collection.js +0 -18
- package/esm2015/lib/collections/transaction-allocation.collection.js +0 -40
- package/esm2015/lib/collections/transaction.collection.js +0 -143
- package/esm2015/lib/interfaces/exportable.interface.js +0 -2
- package/esm2015/lib/services/data-table/data-table.service.js +0 -47
- package/esm2015/lib/services/property/property-holding-costs/property-holding-costs.service.js +0 -53
- package/lib/interfaces/exportable.interface.d.ts +0 -9
- package/lib/services/data-table/data-table.service.d.ts +0 -19
- package/lib/services/property/property-holding-costs/property-holding-costs.service.d.ts +0 -24
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
|
-
import { TaxReturnCategorySectionEnum } from '../../db/Enums/tax-return-category-section.enum';
|
|
3
2
|
import { TaxSummarySection } from './tax-summary-section';
|
|
4
3
|
import { Type } from 'class-transformer';
|
|
4
|
+
import { TAX_RETURN_CATEGORIES } from '../../collections/tax-summary/tax-return-categories.const';
|
|
5
|
+
import { TaxReturnCategoryListEnum } from '../../db/Enums/tax-return-category-list.enum';
|
|
6
|
+
import { TaxSummarySectionEnum } from '../../db/Enums/tax-summary-section.enum';
|
|
5
7
|
/**
|
|
6
8
|
* @Todo refactor with base model when it will be provided
|
|
7
9
|
* Tax summary report structure
|
|
@@ -11,49 +13,66 @@ export class TaxSummary {
|
|
|
11
13
|
return [this.work, this.property, this.otherIncome, this.summary];
|
|
12
14
|
}
|
|
13
15
|
get taxPercent() {
|
|
14
|
-
return this.summary.items.
|
|
16
|
+
return this.summary.items.findByCategory(TaxReturnCategoryListEnum.GROSS_TAX_PAYABLE).amount / this.summary.netAmount;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* Work Net Cash = Income - tax withheld - expenses - interest
|
|
18
20
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
19
21
|
*/
|
|
20
22
|
get workNetCash() {
|
|
21
|
-
|
|
23
|
+
const taxWithheld = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.taxWithheld, TaxSummarySectionEnum.WORK_TANK);
|
|
24
|
+
return this.workNetTotal - Math.abs(taxWithheld);
|
|
22
25
|
}
|
|
23
26
|
/**
|
|
24
27
|
* Work Net Total = Income - expenses - interest
|
|
25
28
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
26
29
|
*/
|
|
27
30
|
get workNetTotal() {
|
|
28
|
-
|
|
31
|
+
const income = this.work.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.income, TaxSummarySectionEnum.WORK_TANK);
|
|
32
|
+
const expenses = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.expenses, TaxSummarySectionEnum.WORK_TANK);
|
|
33
|
+
const interest = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.work.interest, TaxSummarySectionEnum.WORK_TANK);
|
|
34
|
+
return income - Math.abs(expenses) - Math.abs(interest);
|
|
29
35
|
}
|
|
30
36
|
/**
|
|
31
37
|
* Property Net Cash (Cash Position) = Rental Income - expenses - interest
|
|
32
38
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
33
39
|
*/
|
|
34
40
|
get propertyNetCash() {
|
|
35
|
-
|
|
41
|
+
const income = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.income, TaxSummarySectionEnum.PROPERTY_TANK);
|
|
42
|
+
const expenses = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.expenses, TaxSummarySectionEnum.PROPERTY_TANK);
|
|
43
|
+
const interest = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.interest, TaxSummarySectionEnum.PROPERTY_TANK);
|
|
44
|
+
return income - Math.abs(expenses) - Math.abs(interest);
|
|
36
45
|
}
|
|
37
46
|
/**
|
|
38
47
|
* Property Net Total (Tax Position) = Rental Income - expenses - interest - depreciation
|
|
39
48
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
40
49
|
*/
|
|
41
50
|
get propertyNetTotal() {
|
|
42
|
-
|
|
51
|
+
const depreciation = this.property.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.property.depreciation, TaxSummarySectionEnum.PROPERTY_TANK);
|
|
52
|
+
return this.propertyNetCash - Math.abs(depreciation);
|
|
43
53
|
}
|
|
44
54
|
/**
|
|
45
55
|
* Other Net Cash = gross income – expenses – tax withheld - tax instalments
|
|
46
56
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
47
57
|
*/
|
|
48
58
|
get otherNetCash() {
|
|
49
|
-
|
|
59
|
+
const income = this.otherIncome.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.income, TaxSummarySectionEnum.OTHER_INCOME);
|
|
60
|
+
const expenses = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.expenses, TaxSummarySectionEnum.OTHER_INCOME);
|
|
61
|
+
const taxWithheld = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_WITHHELD], TaxSummarySectionEnum.OTHER_INCOME);
|
|
62
|
+
const taxInstalments = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_INSTALMENTS], TaxSummarySectionEnum.OTHER_INCOME);
|
|
63
|
+
return income - Math.abs(expenses) - Math.abs(taxWithheld) - Math.abs(taxInstalments);
|
|
50
64
|
}
|
|
51
65
|
/**
|
|
52
66
|
* Other Net Total = Gross income - expenses + tax offsets + tax instalments + franking credits
|
|
53
67
|
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677990/Dashboard+Main
|
|
54
68
|
*/
|
|
55
69
|
get otherNetTotal() {
|
|
56
|
-
|
|
70
|
+
const income = this.otherIncome.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.income, TaxSummarySectionEnum.OTHER_INCOME);
|
|
71
|
+
const expenses = this.summary.items.sumByCategoriesAndSection(TAX_RETURN_CATEGORIES.other.expenses, TaxSummarySectionEnum.OTHER_INCOME);
|
|
72
|
+
const taxOffsets = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_OFFSETS], TaxSummarySectionEnum.SUMMARY);
|
|
73
|
+
const taxInstallments = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.TAX_INSTALMENTS], TaxSummarySectionEnum.OTHER_INCOME);
|
|
74
|
+
const frankingCredits = this.summary.items.sumByCategoriesAndSection([TaxReturnCategoryListEnum.FRANKING_CREDITS], TaxSummarySectionEnum.OTHER_INCOME);
|
|
75
|
+
return income - Math.abs(expenses) + Math.abs(taxOffsets) + Math.abs(taxInstallments) + Math.abs(frankingCredits);
|
|
57
76
|
}
|
|
58
77
|
}
|
|
59
78
|
__decorate([
|
|
@@ -68,4 +87,4 @@ __decorate([
|
|
|
68
87
|
__decorate([
|
|
69
88
|
Type(() => TaxSummarySection)
|
|
70
89
|
], TaxSummary.prototype, "summary", void 0);
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXN1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3RheC1zdW1tYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUMvRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFlckIsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDckUsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQ2pILENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUM5SSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyw0QkFBNEIsQ0FBQyxZQUFZLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdE8sQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksYUFBYTtRQUNmLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDdE8sQ0FBQztDQUNGO0FBcEVDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDO3dDQUNOO0FBR3hCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzRDQUNGO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDOytDQUNDO0FBRy9CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzJDQUNIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGF4UmV0dXJuQ2F0ZWdvcnlTZWN0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RheC1yZXR1cm4tY2F0ZWdvcnktc2VjdGlvbi5lbnVtJztcbmltcG9ydCB7IFRheFN1bW1hcnlTZWN0aW9uIH0gZnJvbSAnLi90YXgtc3VtbWFyeS1zZWN0aW9uJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbi8qKlxuICogQFRvZG8gcmVmYWN0b3Igd2l0aCBiYXNlIG1vZGVsIHdoZW4gaXQgd2lsbCBiZSBwcm92aWRlZFxuICogVGF4IHN1bW1hcnkgcmVwb3J0IHN0cnVjdHVyZVxuICovXG5leHBvcnQgY2xhc3MgVGF4U3VtbWFyeSB7XG4gIEBUeXBlKCgpID0+IFRheFN1bW1hcnlTZWN0aW9uKVxuICB3b3JrOiBUYXhTdW1tYXJ5U2VjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgcHJvcGVydHk6IFRheFN1bW1hcnlTZWN0aW9uO1xuXG4gIEBUeXBlKCgpID0+IFRheFN1bW1hcnlTZWN0aW9uKVxuICBvdGhlckluY29tZTogVGF4U3VtbWFyeVNlY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gVGF4U3VtbWFyeVNlY3Rpb24pXG4gIHN1bW1hcnk6IFRheFN1bW1hcnlTZWN0aW9uO1xuXG4gIHByb2plY3RlZFRheFBvc2l0aW9uOiBudW1iZXI7XG5cbiAgZ2V0IHNlY3Rpb25zKCk6IFRheFN1bW1hcnlTZWN0aW9uW10ge1xuICAgIHJldHVybiBbdGhpcy53b3JrLCB0aGlzLnByb3BlcnR5LCB0aGlzLm90aGVySW5jb21lLCB0aGlzLnN1bW1hcnldO1xuICB9XG5cbiAgZ2V0IHRheFBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdW1tYXJ5Lml0ZW1zLmdyb3NzVGF4UGF5YWJsZSAvIHRoaXMuc3VtbWFyeS5uZXRBbW91bnQ7XG4gIH1cblxuICAvKipcbiAgICogV29yayBOZXQgQ2FzaCA9IEluY29tZSAtIHRheCB3aXRoaGVsZCAtIGV4cGVuc2VzIC0gaW50ZXJlc3RcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCB3b3JrTmV0Q2FzaCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLndvcmtOZXRUb3RhbCAtIE1hdGguYWJzKHRoaXMuc3VtbWFyeS5pdGVtcy5nZXRUYXhXaXRoaGVsZChUYXhSZXR1cm5DYXRlZ29yeVNlY3Rpb25FbnVtLldPUktfVEFOSykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdvcmsgTmV0IFRvdGFsID0gSW5jb21lIC0gZXhwZW5zZXMgLSBpbnRlcmVzdFxuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IHdvcmtOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLndvcmsuaXRlbXMuc2FsYXJ5IC0gTWF0aC5hYnModGhpcy53b3JrLml0ZW1zLndvcmtFeHBlbnNlcyk7XG4gIH1cblxuICAvKipcbiAgICogUHJvcGVydHkgTmV0IENhc2ggKENhc2ggUG9zaXRpb24pID0gUmVudGFsIEluY29tZSAtIGV4cGVuc2VzIC0gaW50ZXJlc3RcbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCBwcm9wZXJ0eU5ldENhc2goKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wZXJ0eS5pdGVtcy5yZW50YWxJbmNvbWUgLSBNYXRoLmFicyh0aGlzLnByb3BlcnR5Lml0ZW1zLnJlbnRhbERlZHVjdGlvbnMpIC0gTWF0aC5hYnModGhpcy5wcm9wZXJ0eS5pdGVtcy5pbnRlcmVzdERlZHVjdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IE5ldCBUb3RhbCAoVGF4IFBvc2l0aW9uKSA9IFJlbnRhbCBJbmNvbWUgLSBleHBlbnNlcyAtIGludGVyZXN0IC0gZGVwcmVjaWF0aW9uXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgcHJvcGVydHlOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnByb3BlcnR5TmV0Q2FzaCAtIE1hdGguYWJzKHRoaXMucHJvcGVydHkuaXRlbXMucHJvcGVydHlEZXByZWNpYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdGhlciBOZXQgQ2FzaCA9IGdyb3NzIGluY29tZSDigJMgZXhwZW5zZXMg4oCTIHRheCB3aXRoaGVsZCAtIHRheCBpbnN0YWxtZW50c1xuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IG90aGVyTmV0Q2FzaCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm90aGVySW5jb21lLml0ZW1zLm90aGVySW5jb21lIC0gTWF0aC5hYnModGhpcy5vdGhlckluY29tZS5pdGVtcy5vdGhlckRlZHVjdGlvbnMpIC0gTWF0aC5hYnModGhpcy5zdW1tYXJ5Lml0ZW1zLmdldFRheFdpdGhoZWxkKFRheFJldHVybkNhdGVnb3J5U2VjdGlvbkVudW0uT1RIRVJfSU5DT01FKSkgLSBNYXRoLmFicyh0aGlzLnN1bW1hcnkuaXRlbXMudGF4SW5zdGFsbWVudHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE90aGVyIE5ldCBUb3RhbCA9IEdyb3NzIGluY29tZSAtIGV4cGVuc2VzICsgdGF4IG9mZnNldHMgKyB0YXggaW5zdGFsbWVudHMgKyBmcmFua2luZyBjcmVkaXRzXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgb3RoZXJOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLm90aGVySW5jb21lLml0ZW1zLm90aGVySW5jb21lIC0gTWF0aC5hYnModGhpcy5vdGhlckluY29tZS5pdGVtcy5vdGhlckRlZHVjdGlvbnMpICsgTWF0aC5hYnModGhpcy5zdW1tYXJ5Lml0ZW1zLnRheE9mZnNldHMpICsgTWF0aC5hYnModGhpcy5zdW1tYXJ5Lml0ZW1zLnRheEluc3RhbG1lbnRzKSArIE1hdGguYWJzKHRoaXMuc3VtbWFyeS5pdGVtcy5mcmFua2luZ0NyZWRpdHMpO1xuICB9XG59XG4iXX0=
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXN1bW1hcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3RheC1zdW1tYXJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkRBQTJELENBQUM7QUFDbEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFaEY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFVBQVU7SUFlckIsSUFBSSxRQUFRO1FBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMseUJBQXlCLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7SUFDeEgsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksV0FBVztRQUNiLE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLHlCQUF5QixDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFbEosT0FBTyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxD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Q0Y7QUEzRkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7d0NBQ047QUFHeEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7NENBQ0Y7QUFHNUI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7K0NBQ0M7QUFHL0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUM7MkNBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYXhTdW1tYXJ5U2VjdGlvbiB9IGZyb20gJy4vdGF4LXN1bW1hcnktc2VjdGlvbic7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVEFYX1JFVFVSTl9DQVRFR09SSUVTIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdGF4LXN1bW1hcnkvdGF4LXJldHVybi1jYXRlZ29yaWVzLmNvbnN0JztcbmltcG9ydCB7IFRheFJldHVybkNhdGVnb3J5TGlzdEVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YXgtcmV0dXJuLWNhdGVnb3J5LWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUYXhTdW1tYXJ5U2VjdGlvbkVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90YXgtc3VtbWFyeS1zZWN0aW9uLmVudW0nO1xuXG4vKipcbiAqIEBUb2RvIHJlZmFjdG9yIHdpdGggYmFzZSBtb2RlbCB3aGVuIGl0IHdpbGwgYmUgcHJvdmlkZWRcbiAqIFRheCBzdW1tYXJ5IHJlcG9ydCBzdHJ1Y3R1cmVcbiAqL1xuZXhwb3J0IGNsYXNzIFRheFN1bW1hcnkge1xuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgd29yazogVGF4U3VtbWFyeVNlY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gVGF4U3VtbWFyeVNlY3Rpb24pXG4gIHByb3BlcnR5OiBUYXhTdW1tYXJ5U2VjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUYXhTdW1tYXJ5U2VjdGlvbilcbiAgb3RoZXJJbmNvbWU6IFRheFN1bW1hcnlTZWN0aW9uO1xuXG4gIEBUeXBlKCgpID0+IFRheFN1bW1hcnlTZWN0aW9uKVxuICBzdW1tYXJ5OiBUYXhTdW1tYXJ5U2VjdGlvbjtcblxuICBwcm9qZWN0ZWRUYXhQb3NpdGlvbjogbnVtYmVyO1xuXG4gIGdldCBzZWN0aW9ucygpOiBUYXhTdW1tYXJ5U2VjdGlvbltdIHtcbiAgICByZXR1cm4gW3RoaXMud29yaywgdGhpcy5wcm9wZXJ0eSwgdGhpcy5vdGhlckluY29tZSwgdGhpcy5zdW1tYXJ5XTtcbiAgfVxuXG4gIGdldCB0YXhQZXJjZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3VtbWFyeS5pdGVtcy5maW5kQnlDYXRlZ29yeShUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLkdST1NTX1RBWF9QQVlBQkxFKS5hbW91bnQgLyB0aGlzLnN1bW1hcnkubmV0QW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIFdvcmsgTmV0IENhc2ggPSBJbmNvbWUgLSB0YXggd2l0aGhlbGQgLSBleHBlbnNlcyAtIGludGVyZXN0XG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgd29ya05ldENhc2goKTogbnVtYmVyIHtcbiAgICBjb25zdCB0YXhXaXRoaGVsZDogbnVtYmVyID0gdGhpcy5zdW1tYXJ5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsudGF4V2l0aGhlbGQsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5XT1JLX1RBTkspO1xuXG4gICAgcmV0dXJuIHRoaXMud29ya05ldFRvdGFsIC0gTWF0aC5hYnModGF4V2l0aGhlbGQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdvcmsgTmV0IFRvdGFsID0gSW5jb21lIC0gZXhwZW5zZXMgLSBpbnRlcmVzdFxuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IHdvcmtOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGluY29tZTogbnVtYmVyID0gdGhpcy53b3JrLml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsuaW5jb21lLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uV09SS19UQU5LKTtcbiAgICBjb25zdCBleHBlbnNlczogbnVtYmVyID0gdGhpcy5zdW1tYXJ5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLndvcmsuZXhwZW5zZXMsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5XT1JLX1RBTkspO1xuICAgIGNvbnN0IGludGVyZXN0OiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMud29yay5pbnRlcmVzdCwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLldPUktfVEFOSyk7XG5cbiAgICByZXR1cm4gaW5jb21lIC0gTWF0aC5hYnMoZXhwZW5zZXMpIC0gTWF0aC5hYnMoaW50ZXJlc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIFByb3BlcnR5IE5ldCBDYXNoIChDYXNoIFBvc2l0aW9uKSA9IFJlbnRhbCBJbmNvbWUgLSBleHBlbnNlcyAtIGludGVyZXN0XG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgcHJvcGVydHlOZXRDYXNoKCk6IG51bWJlciB7XG4gICAgY29uc3QgaW5jb21lOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnByb3BlcnR5LmluY29tZSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlBST1BFUlRZX1RBTkspO1xuICAgIGNvbnN0IGV4cGVuc2VzOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnByb3BlcnR5LmV4cGVuc2VzLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uUFJPUEVSVFlfVEFOSyk7XG4gICAgY29uc3QgaW50ZXJlc3Q6IG51bWJlciA9IHRoaXMucHJvcGVydHkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMucHJvcGVydHkuaW50ZXJlc3QsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5QUk9QRVJUWV9UQU5LKTtcblxuICAgIHJldHVybiBpbmNvbWUgLSBNYXRoLmFicyhleHBlbnNlcykgLSBNYXRoLmFicyhpbnRlcmVzdCk7XG4gIH1cblxuICAvKipcbiAgICogUHJvcGVydHkgTmV0IFRvdGFsIChUYXggUG9zaXRpb24pID0gUmVudGFsIEluY29tZSAtIGV4cGVuc2VzIC0gaW50ZXJlc3QgLSBkZXByZWNpYXRpb25cbiAgICogaHR0cHM6Ly90YXh0YW5rLmF0bGFzc2lhbi5uZXQvd2lraS9zcGFjZXMvVEFYVEFOSy9wYWdlcy8yMTc2Nzc5OTAvRGFzaGJvYXJkK01haW5cbiAgICovXG4gIGdldCBwcm9wZXJ0eU5ldFRvdGFsKCk6IG51bWJlciB7XG4gICAgY29uc3QgZGVwcmVjaWF0aW9uOiBudW1iZXIgPSB0aGlzLnByb3BlcnR5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oVEFYX1JFVFVSTl9DQVRFR09SSUVTLnByb3BlcnR5LmRlcHJlY2lhdGlvbiwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlBST1BFUlRZX1RBTkspO1xuXG4gICAgcmV0dXJuIHRoaXMucHJvcGVydHlOZXRDYXNoIC0gTWF0aC5hYnMoZGVwcmVjaWF0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdGhlciBOZXQgQ2FzaCA9IGdyb3NzIGluY29tZSDigJMgZXhwZW5zZXMg4oCTIHRheCB3aXRoaGVsZCAtIHRheCBpbnN0YWxtZW50c1xuICAgKiBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzIxNzY3Nzk5MC9EYXNoYm9hcmQrTWFpblxuICAgKi9cbiAgZ2V0IG90aGVyTmV0Q2FzaCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGluY29tZTogbnVtYmVyID0gdGhpcy5vdGhlckluY29tZS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFRBWF9SRVRVUk5fQ0FURUdPUklFUy5vdGhlci5pbmNvbWUsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9JTkNPTUUpO1xuICAgIGNvbnN0IGV4cGVuc2VzOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMub3RoZXIuZXhwZW5zZXMsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9JTkNPTUUpO1xuICAgIGNvbnN0IHRheFdpdGhoZWxkOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihbVGF4UmV0dXJuQ2F0ZWdvcnlMaXN0RW51bS5UQVhfV0lUSEhFTERdLCBUYXhTdW1tYXJ5U2VjdGlvbkVudW0uT1RIRVJfSU5DT01FKTtcbiAgICBjb25zdCB0YXhJbnN0YWxtZW50czogbnVtYmVyID0gdGhpcy5zdW1tYXJ5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oW1RheFJldHVybkNhdGVnb3J5TGlzdEVudW0uVEFYX0lOU1RBTE1FTlRTXSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX0lOQ09NRSk7XG5cbiAgICByZXR1cm4gaW5jb21lIC0gTWF0aC5hYnMoZXhwZW5zZXMpIC0gTWF0aC5hYnModGF4V2l0aGhlbGQpIC0gTWF0aC5hYnModGF4SW5zdGFsbWVudHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIE90aGVyIE5ldCBUb3RhbCA9IEdyb3NzIGluY29tZSAtIGV4cGVuc2VzICsgdGF4IG9mZnNldHMgKyB0YXggaW5zdGFsbWVudHMgKyBmcmFua2luZyBjcmVkaXRzXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L3dpa2kvc3BhY2VzL1RBWFRBTksvcGFnZXMvMjE3Njc3OTkwL0Rhc2hib2FyZCtNYWluXG4gICAqL1xuICBnZXQgb3RoZXJOZXRUb3RhbCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGluY29tZTogbnVtYmVyID0gdGhpcy5vdGhlckluY29tZS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFRBWF9SRVRVUk5fQ0FURUdPUklFUy5vdGhlci5pbmNvbWUsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9JTkNPTUUpO1xuICAgIGNvbnN0IGV4cGVuc2VzOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihUQVhfUkVUVVJOX0NBVEVHT1JJRVMub3RoZXIuZXhwZW5zZXMsIFRheFN1bW1hcnlTZWN0aW9uRW51bS5PVEhFUl9JTkNPTUUpO1xuICAgIGNvbnN0IHRheE9mZnNldHM6IG51bWJlciA9IHRoaXMuc3VtbWFyeS5pdGVtcy5zdW1CeUNhdGVnb3JpZXNBbmRTZWN0aW9uKFtUYXhSZXR1cm5DYXRlZ29yeUxpc3RFbnVtLlRBWF9PRkZTRVRTXSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLlNVTU1BUlkpO1xuICAgIGNvbnN0IHRheEluc3RhbGxtZW50czogbnVtYmVyID0gdGhpcy5zdW1tYXJ5Lml0ZW1zLnN1bUJ5Q2F0ZWdvcmllc0FuZFNlY3Rpb24oW1RheFJldHVybkNhdGVnb3J5TGlzdEVudW0uVEFYX0lOU1RBTE1FTlRTXSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX0lOQ09NRSk7XG4gICAgY29uc3QgZnJhbmtpbmdDcmVkaXRzOiBudW1iZXIgPSB0aGlzLnN1bW1hcnkuaXRlbXMuc3VtQnlDYXRlZ29yaWVzQW5kU2VjdGlvbihbVGF4UmV0dXJuQ2F0ZWdvcnlMaXN0RW51bS5GUkFOS0lOR19DUkVESVRTXSwgVGF4U3VtbWFyeVNlY3Rpb25FbnVtLk9USEVSX0lOQ09NRSk7XG5cbiAgICByZXR1cm4gaW5jb21lIC0gTWF0aC5hYnMoZXhwZW5zZXMpICsgTWF0aC5hYnModGF4T2Zmc2V0cykgKyBNYXRoLmFicyh0YXhJbnN0YWxsbWVudHMpICsgTWF0aC5hYnMoZnJhbmtpbmdDcmVkaXRzKTtcbiAgfVxufVxuIl19
|
|
@@ -222,4 +222,4 @@ __decorate([
|
|
|
222
222
|
__decorate([
|
|
223
223
|
Exclude({ toPlainOnly: true })
|
|
224
224
|
], Transaction.prototype, "file", void 0);
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENB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USxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbi8vIEBUT0RPIHJlZmFjdG9yIHdpdGggYmFzZU1vZGVsIGluIGNvbnN0cnVjdG9yXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlLCBJUmVjZWlwdCB7XG4gIC8vIGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zIChmZWVzKVxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIHByb3BlcnR5OiBQcm9wZXJ0eTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvblJlY2VpcHQpXG4gIHJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdDtcblxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzKVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25NZXRhZGF0YSlcbiAgbWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGFbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKHt0b1BsYWluT25seTogdHJ1ZX0pXG4gIGZpbGU6IEZpbGU7XG5cbiAgdGF4OiBudW1iZXIgPSAwO1xuICBvcGVyYXRpb246IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIHVuYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGNsYWltUGVyY2VudDogbnVtYmVyID0gMTAwO1xuICBhbW91bnQ6IG51bWJlciA9IDA7XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWwuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaGFzICdLbG1zIHRyYXZlbGxlZCBmb3Igd29yaycgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcnlcbiAgICovXG4gIGdldCBpc0tsbXNDaGFydEFjY291bnRzQ2F0ZWdvcnkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gdHlwZSBpcyB2ZWhpY2xlXG4gICAqL1xuICBpc1ZlaGljbGVUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlzVmVoaWNsZUV4cGVuc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV0IGFtb3VudCAoY2xlYW4gYW1vdW50IGFmdGVyIGFsbCBkZWR1Y3Rpb25zKVxuICAgKi9cbiAgZ2V0TmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5ORVQpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZ3Jvc3MgaW5jb21lIGFtb3VudFxuICAgKi9cbiAgZ2V0R3Jvc3NJbmNvbWUoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgdGF4RnJlZUNvbXBvbmVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5UQVhfRlJFRV9DT01QT05FTlQpO1xuICB9XG5cbiAgZ2V0IGZyYW5raW5nQ3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVCk7XG4gIH1cblxuICBnZXQgZWxpZ2libGVGb3JSZWR1Y3Rpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRUxJR0lCTEVfRk9SX1JFRFVDVElPTik7XG4gIH1cblxuICBnZXQgdW50YXhlZEVsZW1lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVU5UQVhFRF9FTEVNRU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiByZWNvbmNpbGUgb3BlcmF0aW9uIGlmIFRSQU5TRkVSXG4gICAqIEBUT0RPIGJhZCB1c2FnZSBvZiBnZXQgKGFuZCBhbGwgaXMqIG1ldGhvZHMpLCBnZXR0ZXIgc2hvdWxkIHNvdW5kIGxpa2UgYSBub3VuXG4gICAqL1xuICBnZXQgaXNUcmFuc2ZlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUjtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGFkYXRhIGZpZWxkXG4gICAqIEBwYXJhbSBmaWVsZCBmb3Igd2hpY2ggdmFsdWUgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldE1ldGFkYXRhRmllbGRWYWx1ZShmaWVsZDogQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhZGF0YS5maW5kKCh0cmFuc2FjdGlvbk1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25NZXRhZGF0YS5jaGFydEFjY291bnRzTWV0YWRhdGEuaWQgPT09IGZpZWxkO1xuICAgIH0pPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgTmV0IG9yIEdyb3NzIGluY29tZSBhbW91bnQgYmFzZWQgb24gcHJvdmlkZWQgaW5jb21lIHR5cGVcbiAgICogQHBhcmFtIGluY29tZVR5cGUgYnkgd2hpY2ggYW1vdW50IHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVBbW91bnRCeVR5cGUoaW5jb21lVHlwZTogSW5jb21lQW1vdW50VHlwZUVudW0pOiBudW1iZXIge1xuICAgIC8vIG1vZGlmaWVyIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSB2YWx1ZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGZpZWxkcyB3aWxsIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWRcbiAgICBjb25zdCBtb2RpZmllcjogbnVtYmVyID0gaW5jb21lVHlwZSA9PT0gSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MgPyAxIDogLTE7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgK1xuICAgICAgICAgICh0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciA9PiBzdW0gKyBNYXRoLmFicyh0cmFuc2FjdGlvbi5hbW91bnQpLCAwKSAqIG1vZGlmaWVyKTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArICgodGhpcy50YXggKyB0aGlzLmZyYW5raW5nQ3JlZGl0IC0gdGhpcy50YXhGcmVlQ29tcG9uZW50IC0gdGhpcy5lbGlnaWJsZUZvclJlZHVjdGlvbikgKiBtb2RpZmllcik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgfHwgMDtcbiAgICB9XG4gIH1cblxuICBpc0ludGVyZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIERlcHJlY2lhdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBUcmFuc2FjdGlvblxuICAgKi9cbiAgdG9EZXByZWNpYXRpb24oKTogRGVwcmVjaWF0aW9uIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbiwge1xuICAgICAgZGF0ZTogdGhpcy5kYXRlLFxuICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5ULFxuICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgY2FsY3VsYXRpb246IHRoaXMucHJvcGVydHkgPyB0aGlzLnByb3BlcnR5LmRlcHJlY2lhdGlvbkNhbGN1bGF0aW9uIDogRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLlBSSU1FX0NPU1RcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBpcyBjb21wbGV0ZWx5IGFsbG9jYXRlZFxuICAgKi9cbiAgaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBhbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyhbdGhpcy5pZF0pLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gdW5hbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|
|
225
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENB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USxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbi8vIEBUT0RPIHJlZmFjdG9yIHdpdGggYmFzZU1vZGVsIGluIGNvbnN0cnVjdG9yXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlLCBJUmVjZWlwdCB7XG4gIC8vIGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zIChmZWVzKVxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIHByb3BlcnR5OiBQcm9wZXJ0eTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvblJlY2VpcHQpXG4gIHJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdDtcblxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzKVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25NZXRhZGF0YSlcbiAgbWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGFbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKHt0b1BsYWluT25seTogdHJ1ZX0pXG4gIGZpbGU6IEZpbGU7XG5cbiAgdGF4OiBudW1iZXIgPSAwO1xuICBvcGVyYXRpb246IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIHVuYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGNsYWltUGVyY2VudDogbnVtYmVyID0gMTAwO1xuICBhbW91bnQ6IG51bWJlciA9IDA7XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWwuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaGFzICdLbG1zIHRyYXZlbGxlZCBmb3Igd29yaycgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcnlcbiAgICovXG4gIGdldCBpc0tsbXNDaGFydEFjY291bnRzQ2F0ZWdvcnkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gdHlwZSBpcyB2ZWhpY2xlXG4gICAqL1xuICBpc1ZlaGljbGVUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlzVmVoaWNsZUV4cGVuc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV0IGFtb3VudCAoY2xlYW4gYW1vdW50IGFmdGVyIGFsbCBkZWR1Y3Rpb25zKVxuICAgKi9cbiAgZ2V0TmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5ORVQpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZ3Jvc3MgaW5jb21lIGFtb3VudFxuICAgKi9cbiAgZ2V0R3Jvc3NJbmNvbWUoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgdGF4RnJlZUNvbXBvbmVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5UQVhfRlJFRV9DT01QT05FTlQpO1xuICB9XG5cbiAgZ2V0IGZyYW5raW5nQ3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVCk7XG4gIH1cblxuICBnZXQgZWxpZ2libGVGb3JSZWR1Y3Rpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRUxJR0lCTEVfRk9SX1JFRFVDVElPTik7XG4gIH1cblxuICBnZXQgdW50YXhlZEVsZW1lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVU5UQVhFRF9FTEVNRU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiByZWNvbmNpbGUgb3BlcmF0aW9uIGlmIFRSQU5TRkVSXG4gICAqIEBUT0RPIGJhZCB1c2FnZSBvZiBnZXQgKGFuZCBhbGwgaXMqIG1ldGhvZHMpLCBnZXR0ZXIgc2hvdWxkIHNvdW5kIGxpa2UgYSBub3VuXG4gICAqL1xuICBnZXQgaXNUcmFuc2ZlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUjtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGFkYXRhIGZpZWxkXG4gICAqIEBwYXJhbSBmaWVsZCBmb3Igd2hpY2ggdmFsdWUgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldE1ldGFkYXRhRmllbGRWYWx1ZShmaWVsZDogQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhZGF0YS5maW5kKCh0cmFuc2FjdGlvbk1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25NZXRhZGF0YS5jaGFydEFjY291bnRzTWV0YWRhdGEuaWQgPT09IGZpZWxkO1xuICAgIH0pPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgTmV0IG9yIEdyb3NzIGluY29tZSBhbW91bnQgYmFzZWQgb24gcHJvdmlkZWQgaW5jb21lIHR5cGVcbiAgICogQHBhcmFtIGluY29tZVR5cGUgYnkgd2hpY2ggYW1vdW50IHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVBbW91bnRCeVR5cGUoaW5jb21lVHlwZTogSW5jb21lQW1vdW50VHlwZUVudW0pOiBudW1iZXIge1xuICAgIC8vIG1vZGlmaWVyIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSB2YWx1ZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGZpZWxkcyB3aWxsIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWRcbiAgICBjb25zdCBtb2RpZmllcjogbnVtYmVyID0gaW5jb21lVHlwZSA9PT0gSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MgPyAxIDogLTE7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgK1xuICAgICAgICAgICh0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciA9PiBzdW0gKyBNYXRoLmFicyh0cmFuc2FjdGlvbi5hbW91bnQpLCAwKSAqIG1vZGlmaWVyKTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArICgodGhpcy50YXggKyB0aGlzLmZyYW5raW5nQ3JlZGl0IC0gdGhpcy50YXhGcmVlQ29tcG9uZW50IC0gdGhpcy5lbGlnaWJsZUZvclJlZHVjdGlvbikgKiBtb2RpZmllcik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgfHwgMDtcbiAgICB9XG4gIH1cblxuICBpc0ludGVyZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIERlcHJlY2lhdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBUcmFuc2FjdGlvblxuICAgKi9cbiAgdG9EZXByZWNpYXRpb24oKTogRGVwcmVjaWF0aW9uIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbiwge1xuICAgICAgZGF0ZTogdGhpcy5kYXRlLFxuICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5ULFxuICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgY2FsY3VsYXRpb246IHRoaXMucHJvcGVydHkgPyB0aGlzLnByb3BlcnR5LmRlcHJlY2lhdGlvbkNhbGN1bGF0aW9uIDogRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLlBSSU1FX0NPU1RcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBpcyBjb21wbGV0ZWx5IGFsbG9jYXRlZFxuICAgKi9cbiAgaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBhbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyhbdGhpcy5pZF0pLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gdW5hbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -9,7 +9,7 @@ import { AccountSetupItemCollection } from '../../collections/account-setup-item
|
|
|
9
9
|
import fromPairs from 'lodash/fromPairs';
|
|
10
10
|
import cloneDeep from 'lodash/cloneDeep';
|
|
11
11
|
import { plainToClass } from 'class-transformer';
|
|
12
|
-
import { TransactionCollection } from '../../collections/transaction.collection';
|
|
12
|
+
import { TransactionCollection } from '../../collections/transaction/transaction.collection';
|
|
13
13
|
import * as i0 from "@angular/core";
|
|
14
14
|
import * as i1 from "../http/firm/client-income/client-income-types.service";
|
|
15
15
|
import * as i2 from "../http/property/property.service";
|
|
@@ -151,4 +151,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
151
151
|
providedIn: 'root'
|
|
152
152
|
}]
|
|
153
153
|
}], ctorParameters: function () { return [{ type: i1.ClientIncomeTypesService }, { type: i2.PropertyService }, { type: i3.IncomeSourceService }, { type: i4.BankAccountService }, { type: i5.TransactionAllocationService }, { type: i6.VehicleClaimService }, { type: i7.TransactionService }]; } });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFLcEYsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7Ozs7Ozs7O0FBRWpGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJBQXdDLEVBQ3hDLGtCQUFzQztRQU50Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENB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QUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDeEY7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBcEtVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFDQ09VTlRfU0VUVVBfSVRFTVMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmNvbnN0JztcbmltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbXNFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC1pdGVtcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAvYmFuay9iYW5rLWFjY291bnQvYmFuay1hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbmNvbWUtdHlwZXMnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9maXJtL2NsaWVudC1pbmNvbWUvY2xpZW50LWluY29tZS10eXBlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFByb3BlcnR5U2VydmljZSB9IGZyb20gJy4uL2h0dHAvcHJvcGVydHkvcHJvcGVydHkuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9hY2NvdW50LXNldHVwLWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC92ZWhpY2xlL3ZlaGljbGUtY2xhaW0uc2VydmljZSc7XG5pbXBvcnQgZnJvbVBhaXJzIGZyb20gJ2xvZGFzaC9mcm9tUGFpcnMnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBTZXJ2aWNlIGhhbmRsaW5nIHVzZXIncyBhY2NvdW50IHNldHVwIHByb2Nlc3MuXG4gKiBDaGVja3MgcmVxdWlyZWQgc3RlcHMgYW5kIHRoZWlyIGNvbXBsZXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudFNldHVwU2VydmljZSB7XG4gIGNhY2hlOiBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPigxKTtcbiAgY2xpZW50SW5jb21lVHlwZXNJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlOiBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNlcnZpY2U6IFByb3BlcnR5U2VydmljZSxcbiAgICBwcml2YXRlIGluY29tZVNvdXJjZVNlcnZpY2U6IEluY29tZVNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudHNTZXJ2aWNlOiBCYW5rQWNjb3VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdmVoaWNsZUNsYWltU2VydmljZTogVmVoaWNsZUNsYWltU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFjY291bnQgc2V0dXAgaXRlbXMgZm9yIGN1cnJlbnQgdXNlclxuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oW10pO1xuXG4gICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzU2VydmljZS5nZXQoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAvLyB3ZSBuZWVkIGFjY291bnQgc2V0dXAgb25seSB3aGVuIHVzZXIgc2VsZWN0ZWQgYXQgbGVhc3Qgb25lIGluY29tZSB0eXBlXG4gICAgICAgICAgZmlsdGVyKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+ICEhaW5jb21lVHlwZXMubGVuZ3RoKSxcbiAgICAgICAgICBtZXJnZU1hcCgoaW5jb21lVHlwZXM6IENsaWVudEluY29tZVR5cGVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzSWQgPSBpbmNvbWVUeXBlcy5pZDtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQmF0Y2goaW5jb21lVHlwZXMpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoaXRlbXM6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlICF0aGlzLmNhY2hlOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmdldEJ5KCdpc0NvbXBsZXRlZCcsIHRydWUpLmxlbmd0aCAhPT0gaXRlbXMuZ2V0QnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmxlbmd0aCAhPT0gaXRlbXMubGVuZ3RoOlxuICAgICAgICAgICAgICB0aGlzLmNhY2hlID0gY2xvbmVEZWVwKGl0ZW1zKTtcbiAgICAgICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJlIGNsaWVudCBpbmNvbWUgdHlwZXMgdG8gdXBkYXRlIHRvIGhpZGUgZGVwZW5kZWQgYWNjb3VudCBzZXR1cCBpdGVtc1xuICAgKi9cbiAgcHJlcGFyZUluY29tZVR5cGVzKGl0ZW06IEFjY291bnRTZXR1cEl0ZW0pOiBDbGllbnRJbmNvbWVUeXBlcyB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIENsaWVudEluY29tZVR5cGVzLFxuICAgICAgT2JqZWN0LmFzc2lnbih7aWQ6IHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZH0sIGZyb21QYWlycyhpdGVtLmNsaWVudEluY29tZVR5cGVzLm1hcCgodHlwZTogc3RyaW5nKSA9PiBbdHlwZSwgZmFsc2VdKSkpXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNpbmdsZSBBY2NvdW50U2V0dXBJdGVtIGFuZCBjaGVjayBpdCdzIGNvbXBsZXRpb25cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGl0ZW1UeXBlOiBBY2NvdW50U2V0dXBJdGVtc0VudW0sIHJlcXVlc3Q6IE9ic2VydmFibGU8b2JqZWN0W10+KTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBvYmplY3RbXSk6IEFjY291bnRTZXR1cEl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBpdGVtOiBBY2NvdW50U2V0dXBJdGVtID0gQUNDT1VOVF9TRVRVUF9JVEVNU1tpdGVtVHlwZV07XG5cbiAgICAgICAgaWYgKHJlc3VsdC5sZW5ndGgpIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmF0Y2ggb2YgcmVxdWVzdHMgdG8gZ2V0IGxpc3Qgb2YgcmVxdWlyZWQgQWNjb3VudFNldHVwSXRlbSdzLlxuICAgKiBTb21lIGl0ZW1zIGFyZSBvcHRpb25hbCBhbmQgZGVwZW5kcyBvZiB1c2VyJ3MgY2xpZW50IGluY29tZSB0eXBlc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCYXRjaChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiB7XG4gICAgY29uc3QgYmF0Y2g6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT5bXSA9IFtdO1xuXG4gICAgLy8gU2FsYXJ5IGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBzYWxhcnkgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5zYWxhcnkpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5TQUxBUlksXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKHRydWUpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3RoZXIgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgb3RoZXIgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5kaXZpZGVuZHMgfHwgaW5jb21lVHlwZXMub3RoZXIpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5PVEhFUl9JTkNPTUUsXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZW50YWwgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgcHJvcGVydHlcbiAgICBpZiAoaW5jb21lVHlwZXMucHJvcGVydHkpIHtcbiAgICAgIGJhdGNoLnB1c2godGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLlBST1BFUlRZLCB0aGlzLnByb3BlcnR5U2VydmljZS5nZXQoKSkpO1xuICAgIH1cblxuICAgIC8vIEJhbmsgZmVlZHMgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBiYW5rIGFjY291bnQgKGJhc2lxIG9yIG1hbnVhbClcbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5CQU5LX0ZFRURTLCB0aGlzLmJhbmtBY2NvdW50c1NlcnZpY2UuZ2V0KCkpKTtcblxuICAgIC8vIExvZ2Jvb2sgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCBvbmUgdmVoaWNsZSBjbGFpbSB3aXRoIGFueSBtZXRob2QgKGtsbXMgb3IgbG9nYm9vaylcbiAgICBiYXRjaC5wdXNoKHRoaXMuZ2V0TG9nYm9va0l0ZW0oKSk7XG5cbiAgICAvLyBAVE9ETyB3YWl0aW5nIGZvciBzb2xlIHRhbmsgZm9yZWNhc3QgcGFnZVxuICAgIC8vIFNvbGUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBzb2xlIGluY29tZSBzb3VyY2VcbiAgICAvLyBpZiAoaW5jb21lVHlwZXMuc29sZVRyYWRlcikge1xuICAgIC8vICAgYmF0Y2gucHVzaChcbiAgICAvLyAgICAgdGhpcy5wcmVwYXJlSXRlbShcbiAgICAvLyAgICAgICBBY2NvdW50U2V0dXBJdGVtc0VudW0uU09MRV9JTkNPTUUsXG4gICAgLy8gICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzQnlUeXBlKEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEUpXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG4gICAgLy8gfVxuXG4gICAgLy8gQWxsb2NhdGlvbiBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25cbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5UUkFOU0FDVElPTiwgdGhpcy50cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLmdldCgpKSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChiYXRjaCkucGlwZShtYXAoKGl0ZW1zOiBBY2NvdW50U2V0dXBJdGVtW10pID0+IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihpdGVtcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiB3b3JrIHdpdGggY29sbGVjdGlvbiB3aGVuIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICogQFRPRE8gVmlrOiB3YWl0aW5nIGZvciBpbmNvbWUgc291cmNlcyByZWZhY3RvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVTb3VyY2VzKGlzU2FsYXJ5OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgY29uc3QgY29sbGVjdGlvbjogSW5jb21lU291cmNlQ29sbGVjdGlvbiA9IG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpO1xuICAgICAgICBpZiAoaXNTYWxhcnkpIHtcbiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbi5nZXRTYWxhcnkoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+ICFpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSAmJiAhaW5jb21lU291cmNlLmlzU29sZUluY29tZSgpKTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgbG9nYm9vayBpdGVtIHdoZW4gdXNlciBoYXMgYXQgbGVhc3QgMSB2ZWhpY2xlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldExvZ2Jvb2tJdGVtKCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIEBUT0RPIEFsZXg6IHJlbW92ZSBtYXAgd2hlbiBzZXJ2aWNlcyBzdGFydCB3b3JrIHdpdGggY29sbGVjdGlvbnNcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pID0+IG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odHJhbnNhY3Rpb25zKSksXG4gICAgICAgIG1lcmdlTWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbnMuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5XT1JLX0xPR0JPT0ssIHRoaXMudmVoaWNsZUNsYWltU2VydmljZS5nZXQoKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3VudC1zZXR1cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFFM0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFNUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFHNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFLcEYsT0FBTyxFQUFFLGFBQWEsRUFBYyxFQUFFLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBRTdGLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sU0FBUyxNQUFNLGtCQUFrQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQzs7Ozs7Ozs7O0FBRTdGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFLOUIsWUFDVSx3QkFBa0QsRUFDbEQsZUFBZ0MsRUFDaEMsbUJBQXdDLEVBQ3hDLG1CQUF1QyxFQUN2Qyw0QkFBMEQsRUFDMUQsbUJBQXdDLEVBQ3hDLGtCQUFzQztRQU50Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENB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QUFDLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7YUFDeEY7WUFFRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQzs7aUhBcEtVLG1CQUFtQjtxSEFBbkIsbUJBQW1CLGNBRmxCLE1BQU07NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFDQ09VTlRfU0VUVVBfSVRFTVMgfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW1zLmNvbnN0JztcbmltcG9ydCB7IEFjY291bnRTZXR1cEl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWNjb3VudC1zZXR1cC9hY2NvdW50LXNldHVwLWl0ZW0nO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbXNFbnVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjY291bnQtc2V0dXAvYWNjb3VudC1zZXR1cC1pdGVtcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50U2VydmljZSB9IGZyb20gJy4uL2h0dHAvYmFuay9iYW5rLWFjY291bnQvYmFuay1hY2NvdW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXMgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2xpZW50L2NsaWVudC1pbmNvbWUtdHlwZXMnO1xuaW1wb3J0IHsgQ2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9maXJtL2NsaWVudC1pbmNvbWUvY2xpZW50LWluY29tZS10eXBlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2luY29tZS1zb3VyY2UuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IFByb3BlcnR5U2VydmljZSB9IGZyb20gJy4uL2h0dHAvcHJvcGVydHkvcHJvcGVydHkuc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1hbGxvY2F0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBvZiwgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9hY2NvdW50LXNldHVwLWl0ZW0uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBWZWhpY2xlQ2xhaW1TZXJ2aWNlIH0gZnJvbSAnLi4vaHR0cC92ZWhpY2xlL3ZlaGljbGUtY2xhaW0uc2VydmljZSc7XG5pbXBvcnQgZnJvbVBhaXJzIGZyb20gJ2xvZGFzaC9mcm9tUGFpcnMnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2h0dHAvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBTZXJ2aWNlIGhhbmRsaW5nIHVzZXIncyBhY2NvdW50IHNldHVwIHByb2Nlc3MuXG4gKiBDaGVja3MgcmVxdWlyZWQgc3RlcHMgYW5kIHRoZWlyIGNvbXBsZXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQWNjb3VudFNldHVwU2VydmljZSB7XG4gIGNhY2hlOiBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbjtcbiAgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPigxKTtcbiAgY2xpZW50SW5jb21lVHlwZXNJZDogbnVtYmVyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2xpZW50SW5jb21lVHlwZXNTZXJ2aWNlOiBDbGllbnRJbmNvbWVUeXBlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcm9wZXJ0eVNlcnZpY2U6IFByb3BlcnR5U2VydmljZSxcbiAgICBwcml2YXRlIGluY29tZVNvdXJjZVNlcnZpY2U6IEluY29tZVNvdXJjZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudHNTZXJ2aWNlOiBCYW5rQWNjb3VudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSB0cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgdmVoaWNsZUNsYWltU2VydmljZTogVmVoaWNsZUNsYWltU2VydmljZSxcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uU2VydmljZTogVHJhbnNhY3Rpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBsaXN0IG9mIGFjY291bnQgc2V0dXAgaXRlbXMgZm9yIGN1cnJlbnQgdXNlclxuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBuZXcgQWNjb3VudFNldHVwSXRlbUNvbGxlY3Rpb24oW10pO1xuXG4gICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzU2VydmljZS5nZXQoKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICAvLyB3ZSBuZWVkIGFjY291bnQgc2V0dXAgb25seSB3aGVuIHVzZXIgc2VsZWN0ZWQgYXQgbGVhc3Qgb25lIGluY29tZSB0eXBlXG4gICAgICAgICAgZmlsdGVyKChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpID0+ICEhaW5jb21lVHlwZXMubGVuZ3RoKSxcbiAgICAgICAgICBtZXJnZU1hcCgoaW5jb21lVHlwZXM6IENsaWVudEluY29tZVR5cGVzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNsaWVudEluY29tZVR5cGVzSWQgPSBpbmNvbWVUeXBlcy5pZDtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlQmF0Y2goaW5jb21lVHlwZXMpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgoaXRlbXM6IEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uKSA9PiB7XG4gICAgICAgICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAgICAgICBjYXNlICF0aGlzLmNhY2hlOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmdldEJ5KCdpc0NvbXBsZXRlZCcsIHRydWUpLmxlbmd0aCAhPT0gaXRlbXMuZ2V0QnkoJ2lzQ29tcGxldGVkJywgdHJ1ZSkubGVuZ3RoOlxuICAgICAgICAgICAgY2FzZSB0aGlzLmNhY2hlLmxlbmd0aCAhPT0gaXRlbXMubGVuZ3RoOlxuICAgICAgICAgICAgICB0aGlzLmNhY2hlID0gY2xvbmVEZWVwKGl0ZW1zKTtcbiAgICAgICAgICAgICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmVwYXJlIGNsaWVudCBpbmNvbWUgdHlwZXMgdG8gdXBkYXRlIHRvIGhpZGUgZGVwZW5kZWQgYWNjb3VudCBzZXR1cCBpdGVtc1xuICAgKi9cbiAgcHJlcGFyZUluY29tZVR5cGVzKGl0ZW06IEFjY291bnRTZXR1cEl0ZW0pOiBDbGllbnRJbmNvbWVUeXBlcyB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhcbiAgICAgIENsaWVudEluY29tZVR5cGVzLFxuICAgICAgT2JqZWN0LmFzc2lnbih7aWQ6IHRoaXMuY2xpZW50SW5jb21lVHlwZXNJZH0sIGZyb21QYWlycyhpdGVtLmNsaWVudEluY29tZVR5cGVzLm1hcCgodHlwZTogc3RyaW5nKSA9PiBbdHlwZSwgZmFsc2VdKSkpXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHNpbmdsZSBBY2NvdW50U2V0dXBJdGVtIGFuZCBjaGVjayBpdCdzIGNvbXBsZXRpb25cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGl0ZW1UeXBlOiBBY2NvdW50U2V0dXBJdGVtc0VudW0sIHJlcXVlc3Q6IE9ic2VydmFibGU8b2JqZWN0W10+KTogT2JzZXJ2YWJsZTxBY2NvdW50U2V0dXBJdGVtPiB7XG4gICAgcmV0dXJuIHJlcXVlc3QucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBvYmplY3RbXSk6IEFjY291bnRTZXR1cEl0ZW0gPT4ge1xuICAgICAgICBjb25zdCBpdGVtOiBBY2NvdW50U2V0dXBJdGVtID0gQUNDT1VOVF9TRVRVUF9JVEVNU1tpdGVtVHlwZV07XG5cbiAgICAgICAgaWYgKHJlc3VsdC5sZW5ndGgpIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gdHJ1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBpdGVtLmlzQ29tcGxldGVkID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXRlbTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYmF0Y2ggb2YgcmVxdWVzdHMgdG8gZ2V0IGxpc3Qgb2YgcmVxdWlyZWQgQWNjb3VudFNldHVwSXRlbSdzLlxuICAgKiBTb21lIGl0ZW1zIGFyZSBvcHRpb25hbCBhbmQgZGVwZW5kcyBvZiB1c2VyJ3MgY2xpZW50IGluY29tZSB0eXBlc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCYXRjaChpbmNvbWVUeXBlczogQ2xpZW50SW5jb21lVHlwZXMpOiBPYnNlcnZhYmxlPEFjY291bnRTZXR1cEl0ZW1Db2xsZWN0aW9uPiB7XG4gICAgY29uc3QgYmF0Y2g6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT5bXSA9IFtdO1xuXG4gICAgLy8gU2FsYXJ5IGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBzYWxhcnkgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5zYWxhcnkpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5TQUxBUlksXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKHRydWUpXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gT3RoZXIgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgb3RoZXIgaW5jb21lIHNvdXJjZVxuICAgIGlmIChpbmNvbWVUeXBlcy5kaXZpZGVuZHMgfHwgaW5jb21lVHlwZXMub3RoZXIpIHtcbiAgICAgIGJhdGNoLnB1c2goXG4gICAgICAgIHRoaXMuY3JlYXRlKFxuICAgICAgICAgIEFjY291bnRTZXR1cEl0ZW1zRW51bS5PVEhFUl9JTkNPTUUsXG4gICAgICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzKClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAvLyBSZW50YWwgaW5jb21lIGl0ZW0gaXMgY29tcGxldGVkIHdoZW4gdXNlciBhZGRlZCBhdCBsZWFzdCBvbmUgcHJvcGVydHlcbiAgICBpZiAoaW5jb21lVHlwZXMucHJvcGVydHkpIHtcbiAgICAgIGJhdGNoLnB1c2godGhpcy5jcmVhdGUoQWNjb3VudFNldHVwSXRlbXNFbnVtLlBST1BFUlRZLCB0aGlzLnByb3BlcnR5U2VydmljZS5nZXQoKSkpO1xuICAgIH1cblxuICAgIC8vIEJhbmsgZmVlZHMgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBiYW5rIGFjY291bnQgKGJhc2lxIG9yIG1hbnVhbClcbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5CQU5LX0ZFRURTLCB0aGlzLmJhbmtBY2NvdW50c1NlcnZpY2UuZ2V0KCkpKTtcblxuICAgIC8vIExvZ2Jvb2sgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGhhcyBhdCBsZWFzdCBvbmUgdmVoaWNsZSBjbGFpbSB3aXRoIGFueSBtZXRob2QgKGtsbXMgb3IgbG9nYm9vaylcbiAgICBiYXRjaC5wdXNoKHRoaXMuZ2V0TG9nYm9va0l0ZW0oKSk7XG5cbiAgICAvLyBAVE9ETyB3YWl0aW5nIGZvciBzb2xlIHRhbmsgZm9yZWNhc3QgcGFnZVxuICAgIC8vIFNvbGUgaXRlbSBpcyBjb21wbGV0ZWQgd2hlbiB1c2VyIGFkZGVkIGF0IGxlYXN0IG9uZSBzb2xlIGluY29tZSBzb3VyY2VcbiAgICAvLyBpZiAoaW5jb21lVHlwZXMuc29sZVRyYWRlcikge1xuICAgIC8vICAgYmF0Y2gucHVzaChcbiAgICAvLyAgICAgdGhpcy5wcmVwYXJlSXRlbShcbiAgICAvLyAgICAgICBBY2NvdW50U2V0dXBJdGVtc0VudW0uU09MRV9JTkNPTUUsXG4gICAgLy8gICAgICAgdGhpcy5nZXRJbmNvbWVTb3VyY2VzQnlUeXBlKEluY29tZVNvdXJjZVR5cGVFbnVtLlNPTEUpXG4gICAgLy8gICAgIClcbiAgICAvLyAgICk7XG4gICAgLy8gfVxuXG4gICAgLy8gQWxsb2NhdGlvbiBpdGVtIGlzIGNvbXBsZXRlZCB3aGVuIHVzZXIgYWRkZWQgYXQgbGVhc3Qgb25lIHRyYW5zYWN0aW9uIGFsbG9jYXRpb25cbiAgICBiYXRjaC5wdXNoKHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5UUkFOU0FDVElPTiwgdGhpcy50cmFuc2FjdGlvbkFsbG9jYXRpb25TZXJ2aWNlLmdldCgpKSk7XG5cbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChiYXRjaCkucGlwZShtYXAoKGl0ZW1zOiBBY2NvdW50U2V0dXBJdGVtW10pID0+IG5ldyBBY2NvdW50U2V0dXBJdGVtQ29sbGVjdGlvbihpdGVtcykpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4OiB3b3JrIHdpdGggY29sbGVjdGlvbiB3aGVuIHNlcnZpY2VzIHJlZmFjdG9yZWRcbiAgICogQFRPRE8gVmlrOiB3YWl0aW5nIGZvciBpbmNvbWUgc291cmNlcyByZWZhY3RvcmluZ1xuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVTb3VyY2VzKGlzU2FsYXJ5OiBib29sZWFuID0gZmFsc2UpOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5jb21lU291cmNlU2VydmljZS5nZXQoKS5waXBlKFxuICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSk6IEluY29tZVNvdXJjZVtdID0+IHtcbiAgICAgICAgY29uc3QgY29sbGVjdGlvbjogSW5jb21lU291cmNlQ29sbGVjdGlvbiA9IG5ldyBJbmNvbWVTb3VyY2VDb2xsZWN0aW9uKGluY29tZVNvdXJjZXMpO1xuICAgICAgICBpZiAoaXNTYWxhcnkpIHtcbiAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbi5nZXRTYWxhcnkoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uLml0ZW1zLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+ICFpbmNvbWVTb3VyY2UuaXNTYWxhcnlJbmNvbWUoKSAmJiAhaW5jb21lU291cmNlLmlzU29sZUluY29tZSgpKTtcbiAgICAgIH0pXG4gICAgKVxuICB9XG5cbiAgLyoqXG4gICAqIFNob3cgbG9nYm9vayBpdGVtIHdoZW4gdXNlciBoYXMgYXQgbGVhc3QgMSB2ZWhpY2xlIHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIGdldExvZ2Jvb2tJdGVtKCk6IE9ic2VydmFibGU8QWNjb3VudFNldHVwSXRlbT4ge1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uU2VydmljZS5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIC8vIEBUT0RPIEFsZXg6IHJlbW92ZSBtYXAgd2hlbiBzZXJ2aWNlcyBzdGFydCB3b3JrIHdpdGggY29sbGVjdGlvbnNcbiAgICAgICAgbWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uW10pID0+IG5ldyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24odHJhbnNhY3Rpb25zKSksXG4gICAgICAgIG1lcmdlTWFwKCh0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbikgPT4ge1xuICAgICAgICAgIGlmICh0cmFuc2FjdGlvbnMuZ2V0VmVoaWNsZVRyYW5zYWN0aW9ucygpLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlKEFjY291bnRTZXR1cEl0ZW1zRW51bS5XT1JLX0xPR0JPT0ssIHRoaXMudmVoaWNsZUNsYWltU2VydmljZS5nZXQoKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -27,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
27
27
|
providedIn: 'root'
|
|
28
28
|
}]
|
|
29
29
|
}], ctorParameters: function () { return [{ type: i1.BankTransactionCalculationService }]; } });
|
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWNhbGN1bGF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvYmFuay9iYW5rLWFjY291bnQtY2FsY3VsYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFTM0MsTUFBTSxPQUFPLDZCQUE2QjtJQUN4QyxZQUNVLGlDQUFvRTtRQUFwRSxzQ0FBaUMsR0FBakMsaUNBQWlDLENBQW1DO0lBRTlFLENBQUM7SUFFRDs7T0FFRztJQUNILGlCQUFpQixDQUNmLFlBQW1DLEVBQ25DLGdCQUEyQyxFQUMzQyxXQUE0QztRQUU1QyxPQUFPLFlBQVksQ0FBQyxpQkFBaUIsRUFBRTtZQUNyQyxJQUFJLENBQUMsaUNBQWlDLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDekksQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUNaLFlBQW1DLEVBQ25DLGdCQUEyQyxFQUMzQyxXQUE0QztRQUU1QyxPQUFPLFlBQVksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxlQUFlLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUM3SCxDQUFDOzsySEEzQlUsNkJBQTZCOytIQUE3Qiw2QkFBNkIsY0FGNUIsTUFBTTs0RkFFUCw2QkFBNkI7a0JBSHpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFua0FjY291bnRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvYmFuay1hY2NvdW50LmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zL2JhbmstdHJhbnNhY3Rpb24uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbkNhbGN1bGF0aW9uU2VydmljZSB9IGZyb20gJy4vYmFuay10cmFuc2FjdGlvbi1jYWxjdWxhdGlvbi5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQmFua0FjY291bnRDYWxjdWxhdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGJhbmtUcmFuc2FjdGlvbkNhbGN1bGF0aW9uU2VydmljZTogQmFua1RyYW5zYWN0aW9uQ2FsY3VsYXRpb25TZXJ2aWNlXG4gICkge1xuICB9XG5cbiAgLyoqXG4gICAqIFN1bSBvZiBiYW5rIGFjY291bnRzIG9wZW5pbmcgYmFsYW5jZXMgYW5kIHRoZWlyIGJhbmsgdHJhbnNhY3Rpb25zIGFsbG9jYXRlZCBhbW91bnRzXG4gICAqL1xuICBnZXRUYXhUYW5rQmFsYW5jZShcbiAgICBiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50Q29sbGVjdGlvbixcbiAgICBiYW5rVHJhbnNhY3Rpb25zOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uLFxuICAgIGFsbG9jYXRpb25zOiBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uXG4gICk6IG51bWJlciB7XG4gICAgcmV0dXJuIGJhbmtBY2NvdW50cy5nZXRPcGVuaW5nQmFsYW5jZSgpICtcbiAgICAgIHRoaXMuYmFua1RyYW5zYWN0aW9uQ2FsY3VsYXRpb25TZXJ2aWNlLmdldEFsbG9jYXRlZEFtb3VudChiYW5rVHJhbnNhY3Rpb25zLmdldEJ5QmFua0FjY291bnRzSWRzKGJhbmtBY2NvdW50cy5nZXRJZHMoKSksIGFsbG9jYXRpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgZGlmZmVyZW5jZSBiZXR3ZWVuIHRvdGFsIGxvYW5zIGFtb3VudCBhbmQgdG90YWwgY2FzaCBhbW91bnRcbiAgICovXG4gIGdldE5ldFBvc2l0aW9uKFxuICAgIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uLFxuICAgIGJhbmtUcmFuc2FjdGlvbnM6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24sXG4gICAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb25cbiAgKTogbnVtYmVyIHtcbiAgICByZXR1cm4gYmFua0FjY291bnRzLmN1cnJlbnRCYWxhbmNlIC0gdGhpcy5nZXRUYXhUYW5rQmFsYW5jZShiYW5rQWNjb3VudHMuZ2V0TG9hbkFjY291bnRzKCksIGJhbmtUcmFuc2FjdGlvbnMsIGFsbG9jYXRpb25zKTtcbiAgfVxufVxuIl19
|
|
@@ -62,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
62
62
|
providedIn: 'root'
|
|
63
63
|
}]
|
|
64
64
|
}] });
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay10cmFuc2FjdGlvbi1jYWxjdWxhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2JhbmsvYmFuay10cmFuc2FjdGlvbi1jYWxjdWxhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0NBQStDLENBQUM7O0FBSTFGOztHQUVHO0FBSUgsTUFBTSxPQUFPLGlDQUFpQztJQUM1Qzs7T0FFRztJQUNILGtCQUFrQixDQUFDLGdCQUEyQyxFQUFFLFdBQTRDO1FBQzFHLE9BQU8sV0FBVyxDQUFDLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLHlCQUFvRCxFQUFFLFdBQTRDO1FBQ3JILE9BQU8seUJBQXlCLENBQUMsU0FBUyxFQUFFLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXLENBQUMsZUFBZ0MsRUFBRSxXQUE0QztRQUN4RixPQUFPLGVBQWUsQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUkseUJBQXlCLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzNILENBQUM7SUFFRDs7O09BR0c7SUFDSCw0QkFBNEIsQ0FBQyxnQkFBMkMsRUFBRSxXQUE0QztRQUNwSCxPQUFPLElBQUkseUJBQXlCLENBQ2xDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUFnQyxFQUFXLEVBQUU7WUFDMUUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUN4RCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7T0FHRztJQUNILDhCQUE4QixDQUFDLGdCQUEyQyxFQUFFLFdBQTRDO1FBQ3RILE9BQU8sSUFBSSx5QkFBeUIsQ0FDbEMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLGVBQWdDLEVBQVcsRUFBRTtZQUMxRSxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILGVBQWUsQ0FBQyxnQkFBMkMsRUFBRSxXQUE0QztRQUN2RyxPQUFPLFdBQVcsQ0FBQyx3QkFBd0IsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNuRyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxjQUFjLENBQUMsZ0JBQTJDLEVBQUUsV0FBNEM7UUFDdEcsT0FBTyxXQUFXLENBQUMsd0JBQXdCLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDbEcsQ0FBQzs7K0hBMURVLGlDQUFpQzttSUFBakMsaUNBQWlDLGNBRmhDLE1BQU07NEZBRVAsaUNBQWlDO2tCQUg3QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9iYW5rLXRyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2JhbmsvYmFuay10cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkFsbG9jYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5jb2xsZWN0aW9uJztcblxuLyoqXG4gKiBAVE9ETyBtb3ZlIHRvIGNvbGxlY3Rpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQmFua1RyYW5zYWN0aW9uQ2FsY3VsYXRpb25TZXJ2aWNlIHtcbiAgLyoqXG4gICAqIFN1bSBvZiBhbGxvY2F0aW9ucyBmb3IgcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYmFua1RyYW5zYWN0aW9uczogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeUJhbmtUcmFuc2FjdGlvbnNJZHMoYmFua1RyYW5zYWN0aW9ucy5nZXRJZHMoKSkuYW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIERpZmZlcmVuY2UgYmV0d2VlbiB0b3RhbCBiYW5rIHRyYW5zYWN0aW9ucyBhbW91bnQgYW5kIHN1bSBvZiBhbGxvY2F0aW9ucyBmb3IgcGFzc2VkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChiYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbikge1xuICAgIHJldHVybiBiYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uLmdldEFtb3VudCgpIC0gYWxsb2NhdGlvbnMuYW1vdW50O1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIGJhbmsgdHJhbnNhY3Rpb24gaXMgYWxsb2NhdGVkXG4gICAqL1xuICBpc0FsbG9jYXRlZChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gYmFua1RyYW5zYWN0aW9uLmFtb3VudCA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQobmV3IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24oW2JhbmtUcmFuc2FjdGlvbl0pLCBhbGxvY2F0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGNvbGxlY3Rpb24gb2YgYWxsb2NhdGVkIGJhbmsgdHJhbnNhY3Rpb25zXG4gICAqIEBUT0RPIEFsZXg6IGNvbnNpZGVyIHRvIG1vdmUgdG8gY29sbGVjdGlvblxuICAgKi9cbiAgZ2V0QWxsb2NhdGVkQmFua1RyYW5zYWN0aW9ucyhiYW5rVHJhbnNhY3Rpb25zOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIGJhbmtUcmFuc2FjdGlvbnMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0FsbG9jYXRlZChiYW5rVHJhbnNhY3Rpb24sIGFsbG9jYXRpb25zKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY29sbGVjdGlvbiBvZiB1bmFsbG9jYXRlZCBiYW5rIHRyYW5zYWN0aW9uc1xuICAgKiBAVE9ETyBBbGV4OiBjb25zaWRlciB0byBtb3ZlIHRvIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldFVuYWxsb2NhdGVkQmFua1RyYW5zYWN0aW9ucyhiYW5rVHJhbnNhY3Rpb25zOiBCYW5rVHJhbnNhY3Rpb25Db2xsZWN0aW9uLCBhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IEJhbmtUcmFuc2FjdGlvbkNvbGxlY3Rpb24ge1xuICAgIHJldHVybiBuZXcgQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbihcbiAgICAgIGJhbmtUcmFuc2FjdGlvbnMuaXRlbXMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbik6IGJvb2xlYW4gPT4ge1xuICAgICAgICByZXR1cm4gIXRoaXMuaXNBbGxvY2F0ZWQoYmFua1RyYW5zYWN0aW9uLCBhbGxvY2F0aW9ucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWxsb2NhdGVkIHN1bSBvZiBjcmVkaXQgdHJhbnNhY3Rpb25zXG4gICAqL1xuICBnZXRDcmVkaXRBbW91bnQoYmFua1RyYW5zYWN0aW9uczogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeUJhbmtUcmFuc2FjdGlvbnNJZHMoYmFua1RyYW5zYWN0aW9ucy5jcmVkaXRUcmFuc2FjdGlvbnMuZ2V0SWRzKCkpLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvY2F0ZWQgc3VtIG9mIGRlYml0IHRyYW5zYWN0aW9uc1xuICAgKi9cbiAgZ2V0RGViaXRBbW91bnQoYmFua1RyYW5zYWN0aW9uczogQmFua1RyYW5zYWN0aW9uQ29sbGVjdGlvbiwgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeUJhbmtUcmFuc2FjdGlvbnNJZHMoYmFua1RyYW5zYWN0aW9ucy5kZWJpdFRyYW5zYWN0aW9ucy5nZXRJZHMoKSkuYW1vdW50O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { ExportCellTypeEnum } from '../../models/export/export-cell-type.enum';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
export class ExportFormatterService {
|
|
6
|
+
constructor(currencyPipe, datePipe) {
|
|
7
|
+
this.currencyPipe = currencyPipe;
|
|
8
|
+
this.datePipe = datePipe;
|
|
9
|
+
}
|
|
10
|
+
format(rows) {
|
|
11
|
+
return rows.map((row) => row.map((column) => {
|
|
12
|
+
switch (column.type) {
|
|
13
|
+
case ExportCellTypeEnum.DATE:
|
|
14
|
+
return this.datePipe.transform(column.value, 'dd/MM/YYYY').toString();
|
|
15
|
+
case ExportCellTypeEnum.CURRENCY:
|
|
16
|
+
return this.currencyPipe.transform(column.value).toString();
|
|
17
|
+
default:
|
|
18
|
+
return column.value.toString();
|
|
19
|
+
}
|
|
20
|
+
}));
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
ExportFormatterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, deps: [{ token: i1.CurrencyPipe }, { token: i1.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
24
|
+
ExportFormatterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, providedIn: 'root' });
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, decorators: [{
|
|
26
|
+
type: Injectable,
|
|
27
|
+
args: [{
|
|
28
|
+
providedIn: 'root'
|
|
29
|
+
}]
|
|
30
|
+
}], ctorParameters: function () { return [{ type: i1.CurrencyPipe }, { type: i1.DatePipe }]; } });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LWZvcm1hdHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2V4cG9ydC9leHBvcnQtZm9ybWF0dGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7O0FBTS9FLE1BQU0sT0FBTyxzQkFBc0I7SUFDakMsWUFBb0IsWUFBMEIsRUFBVSxRQUFrQjtRQUF0RCxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUFVLGFBQVEsR0FBUixRQUFRLENBQVU7SUFBRyxDQUFDO0lBRTlFLE1BQU0sQ0FBQyxJQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFpQixFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBa0IsRUFBRSxFQUFFO1lBQ3BFLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtnQkFDbkIsS0FBSyxrQkFBa0IsQ0FBQyxJQUFJO29CQUMxQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsWUFBWSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3hFLEtBQUssa0JBQWtCLENBQUMsUUFBUTtvQkFDOUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQzlEO29CQUNFLE9BQU8sTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNsQztRQUFBLENBQUMsQ0FBQyxDQUNKLENBQUM7SUFDSixDQUFDOztvSEFkVSxzQkFBc0I7d0hBQXRCLHNCQUFzQixjQUZyQixNQUFNOzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFeHBvcnRDZWxsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4cG9ydC9leHBvcnQtY2VsbCc7XG5pbXBvcnQgeyBFeHBvcnRDZWxsVHlwZUVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXhwb3J0L2V4cG9ydC1jZWxsLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBDdXJyZW5jeVBpcGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRXhwb3J0Rm9ybWF0dGVyU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY3VycmVuY3lQaXBlOiBDdXJyZW5jeVBpcGUsIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlKSB7fVxuXG4gIGZvcm1hdChyb3dzOiBFeHBvcnRDZWxsW11bXSk6IHN0cmluZ1tdW10ge1xuICAgIHJldHVybiByb3dzLm1hcCgocm93OiBFeHBvcnRDZWxsW10pID0+IHJvdy5tYXAoKGNvbHVtbjogRXhwb3J0Q2VsbCkgPT4ge1xuICAgICAgc3dpdGNoIChjb2x1bW4udHlwZSkge1xuICAgICAgICBjYXNlIEV4cG9ydENlbGxUeXBlRW51bS5EQVRFOlxuICAgICAgICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShjb2x1bW4udmFsdWUsICdkZC9NTS9ZWVlZJykudG9TdHJpbmcoKTtcbiAgICAgICAgY2FzZSBFeHBvcnRDZWxsVHlwZUVudW0uQ1VSUkVOQ1k6XG4gICAgICAgICAgcmV0dXJuIHRoaXMuY3VycmVuY3lQaXBlLnRyYW5zZm9ybShjb2x1bW4udmFsdWUpLnRvU3RyaW5nKCk7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgcmV0dXJuIGNvbHVtbi52YWx1ZS50b1N0cmluZygpO1xuICAgICAgfX0pXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -3,10 +3,15 @@ import jsPDF from 'jspdf';
|
|
|
3
3
|
import autoTable from 'jspdf-autotable';
|
|
4
4
|
import { PDF_CONFIG } from '../../models/pdf/pdf-config';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../export/export-formatter.service";
|
|
6
7
|
/**
|
|
8
|
+
* @TODO vik refactor
|
|
7
9
|
* Service to work with PDF (generate, download, e.t.c.)
|
|
8
10
|
*/
|
|
9
11
|
export class PdfService {
|
|
12
|
+
constructor(formatter) {
|
|
13
|
+
this.formatter = formatter;
|
|
14
|
+
}
|
|
10
15
|
/**
|
|
11
16
|
* Export file from provided HTML tables
|
|
12
17
|
*/
|
|
@@ -29,7 +34,7 @@ export class PdfService {
|
|
|
29
34
|
this.setDocumentTitle(pdf, title);
|
|
30
35
|
this.setDocumentLogo(pdf);
|
|
31
36
|
dataTables.forEach((dataTable) => {
|
|
32
|
-
autoTable(pdf, Object.assign({ head: [dataTable.header], body: dataTable.
|
|
37
|
+
autoTable(pdf, Object.assign({ head: [dataTable.header], body: this.formatter.format(dataTable.body), foot: this.formatter.format(dataTable.footer) }, this.setTableOptions(pdf, dataTable.caption)));
|
|
33
38
|
});
|
|
34
39
|
return pdf;
|
|
35
40
|
}
|
|
@@ -83,12 +88,12 @@ export class PdfService {
|
|
|
83
88
|
doc.addImage(logo, 'PNG', doc.internal.pageSize.width - PDF_CONFIG.logo.positionX, PDF_CONFIG.logo.positionY, PDF_CONFIG.logo.width, PDF_CONFIG.logo.height);
|
|
84
89
|
}
|
|
85
90
|
}
|
|
86
|
-
PdfService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
91
|
+
PdfService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfService, deps: [{ token: i1.ExportFormatterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
87
92
|
PdfService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfService, providedIn: 'root' });
|
|
88
93
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfService, decorators: [{
|
|
89
94
|
type: Injectable,
|
|
90
95
|
args: [{
|
|
91
96
|
providedIn: 'root'
|
|
92
97
|
}]
|
|
93
|
-
}] });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvcGRmL3BkZi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sU0FBUyxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFRekQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sVUFBVTtJQUNyQjs7T0FFRztJQUNILFlBQVksQ0FBQyxNQUFvQyxFQUFFLFlBQXlCO1FBQzFFLE1BQU0sUUFBUSxHQUFVLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEUsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFVBQTZCLEVBQUUsWUFBeUI7UUFDM0UsTUFBTSxRQUFRLEdBQVUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEYsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNLLHNCQUFzQixDQUFDLFVBQTZCLEVBQUUsS0FBYTtRQUN6RSxNQUFNLEdBQUcsR0FBVSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRS9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztR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LEVBQUUsS0FBYztRQUNqRCxHQUFHLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO2FBQ3RDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUN4RixJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLGVBQWUsQ0FBQyxHQUFVO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztRQUMvQixHQUFHLENBQUMsUUFBUSxDQUNWLElBQUksRUFDSixLQUFLLEVBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUN2RCxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFDekIsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQ3JCLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUN2QixDQUFBO0lBQ0gsQ0FBQzs7d0dBM0dVLFVBQVU7NEdBQVYsVUFBVSxjQU5ULE1BQU07NEZBTVAsVUFBVTtrQkFQdEIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQganNQREYgZnJvbSAnanNwZGYnO1xuaW1wb3J0IGF1dG9UYWJsZSBmcm9tICdqc3BkZi1hdXRvdGFibGUnO1xuaW1wb3J0IHsgUERGX0NPTkZJRyB9IGZyb20gJy4uLy4uL21vZGVscy9wZGYvcGRmLWNvbmZpZyc7XG5pbXBvcnQgeyBFeHBvcnREYXRhVGFibGUgfSBmcm9tICcuLi8uLi9tb2RlbHMvZXhwb3J0L2V4cG9ydC1kYXRhLXRhYmxlJztcbmltcG9ydCB7IFBkZlNldHRpbmdzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BkZi9wZGYtc2V0dGluZ3MnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIHdvcmsgd2l0aCBQREYgKGdlbmVyYXRlLCBkb3dubG9hZCwgZS50LmMuKVxuICovXG5leHBvcnQgY2xhc3MgUGRmU2VydmljZSB7XG4gIC8qKlxuICAgKiBFeHBvcnQgZmlsZSBmcm9tIHByb3ZpZGVkIEhUTUwgdGFibGVzXG4gICAqL1xuICBleHBvcnRUYWJsZXModGFibGVzOiBOb2RlTGlzdE9mPEhUTUxUYWJsZUVsZW1lbnQ+LCBmaWxlU2V0dGluZ3M6IFBkZlNldHRpbmdzKTogdm9pZCB7XG4gICAgY29uc3QgZG9jdW1lbnQ6IGpzUERGID0gdGhpcy5nZW5lcmF0ZUZyb21UYWJsZXModGFibGVzLCBmaWxlU2V0dGluZ3MpO1xuICAgIGRvY3VtZW50LnNhdmUoYCR7ZmlsZVNldHRpbmdzLmZpbGVuYW1lfS5wZGZgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBvcnQgZmlsZSBmcm9tIHByb3ZpZGVkIGFycmF5LWxpa2UgdGFibGUgZGF0YVxuICAgKi9cbiAgZXhwb3J0RnJvbURhdGFUYWJsZXMoZGF0YVRhYmxlczogRXhwb3J0RGF0YVRhYmxlW10sIGZpbGVTZXR0aW5nczogUGRmU2V0dGluZ3MpOiB2b2lkIHtcbiAgICBjb25zdCBkb2N1bWVudDoganNQREYgPSB0aGlzLmdlbmVyYXRlRnJvbURhdGFUYWJsZXMoZGF0YVRhYmxlcywgZmlsZVNldHRpbmdzLnRpdGxlKTtcbiAgICBkb2N1bWVudC5zYXZlKGAke2ZpbGVTZXR0aW5ncy5maWxlbmFtZX0ucGRmYCk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGUgZmlsZSBmcm9tIGFycmF5LWxpa2UgdGFibGUgZGF0YVxuICAgKi9cbiAgcHJpdmF0ZSBnZW5lcmF0ZUZyb21EYXRhVGFibGVzKGRhdGFUYWJsZXM6IEV4cG9ydERhdGFUYWJsZVtdLCB0aXRsZTogc3RyaW5nKToganNQREYge1xuICAgIGNvbnN0IHBkZjoganNQREYgPSBuZXcganNQREYoKTtcblxuICAgIHRoaXMuc2V0RG9jdW1lbnRUaXRsZShwZGYsIHRpdGxlKTtcbiAgICB0aGlzLnNldERvY3VtZW50TG9nbyhwZGYpO1xuXG4gICAgZGF0YVRhYmxlcy5mb3JFYWNoKChkYXRhVGFibGU6IEV4cG9ydERhdGFUYWJsZSkgPT4ge1xuICAgICAgYXV0b1RhYmxlKFxuICAgICAgICBwZGYsIHtcbiAgICAgICAgICBoZWFkOiBbZGF0YVRhYmxlLmhlYWRlcl0sXG4gICAgICAgICAgYm9keTogZGF0YVRhYmxlLnJvd3MsXG4gICAgICAgICAgZm9vdDogW2RhdGFUYWJsZS5mb290ZXIgfHwgW11dLFxuICAgICAgICAgIC4uLnRoaXMuc2V0VGFibGVPcHRpb25zKHBkZiwgZGF0YVRhYmxlLmNhcHRpb24pXG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBkZjtcbiAgfVxuXG4gIHByaXZhdGUgZ2VuZXJhdGVGcm9tVGFibGVzKHRhYmxlczogTm9kZUxpc3RPZjxIVE1MVGFibGVFbGVtZW50PiwgZmlsZVNldHRpbmdzOiBQZGZTZXR0aW5ncyk6IGpzUERGIHtcbiAgICBjb25zdCBwZGY6IGpzUERGID0gbmV3IGpzUERGKGZpbGVTZXR0aW5ncy5vcmllbnRhdGlvbik7XG5cbiAgICB0aGlzLnNldERvY3VtZW50VGl0bGUocGRmLCBmaWxlU2V0dGluZ3MudGl0bGUpO1xuICAgIHRoaXMuc2V0RG9jdW1lbnRMb2dvKHBkZik7XG5cbiAgICB0YWJsZXMuZm9yRWFjaCgodGFibGU6IEhUTUxUYWJsZUVsZW1lbnQpID0+IHtcbiAgICAgIC8vIEFkZCB0YWJsZSBjYXB0aW9uIGlmIG5vdCBwcm92aWRlZFxuICAgICAgaWYgKCF0YWJsZS5jYXB0aW9uKSB7XG4gICAgICAgIHRhYmxlLmNyZWF0ZUNhcHRpb24oKTtcbiAgICAgICAgdGFibGUuY2FwdGlvbi5pbm5lclRleHQgPSAnJ1xuICAgICAgfVxuXG4gICAgICBhdXRvVGFibGUoXG4gICAgICAgIHBkZixcbiAgICAgICAge1xuICAgICAgICAgIGh0bWw6IHRhYmxlLFxuICAgICAgICAgIC4uLnRoaXMuc2V0VGFibGVPcHRpb25zKHBkZiwgdGFibGUuY2FwdGlvbi5pbm5lclRleHQpXG4gICAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHBkZjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYmFzaWMgb3B0aW9ucyBmb3IgUERGIHRhYmxlXG4gICAqL1xuICBwcml2YXRlIHNldFRhYmxlT3B0aW9ucyhwZGY6IGpzUERGLCB0YWJsZUNhcHRpb246IHN0cmluZyA9ICcnKTogb2JqZWN0IHtcbiAgICBjb25zdCBsYXN0VGFibGVDb29yZHMgPSBwZGZbJ2xhc3RBdXRvVGFibGUnXS5maW5hbFkgfHwgUERGX0NPTkZJRy5jb250ZW50Q29vcmRzLm1hcmdpblRvcDtcbiAgICAvLyBnZXQgY2FwdGlvbiBoZWlnaHQgYmFzZWQgb24gY2FwdGlvbiBjb250ZW50IGhlaWdodFxuICAgIGNvbnN0IGNhcHRpb25IZWlnaHQ6IG51bWJlciA9IHBkZi5nZXRUZXh0RGltZW5zaW9ucyhwZGYuc3BsaXRUZXh0VG9TaXplKHRhYmxlQ2FwdGlvbiwgcGRmLmludGVybmFsLnBhZ2VTaXplLndpZHRoKSkuaDtcbiAgICBwZGYudGV4dCh0YWJsZUNhcHRpb24sIFBERl9DT05GSUcuY29udGVudENvb3Jkcy5tYXJnaW5MZWZ0LCBsYXN0VGFibGVDb29yZHMgKyBQREZfQ09ORklHLmNvbnRlbnRDb29yZHMubWFyZ2luVG9wKTtcblxuICAgIHJldHVybiB7XG4gICAgICBoZWFkU3R5bGVzOiB7XG4gICAgICAgIGZpbGxDb2xvcjogUERGX0NPTkZJRy50ZXh0LmNvbG9yUHJpbWFyeSxcbiAgICAgIH0sXG4gICAgICBmb290U3R5bGVzOiB7XG4gICAgICAgIGZpbGxDb2xvcjogUERGX0NPTkZJRy50ZXh0LmNvbG9yV2hpdGUsXG4gICAgICAgIHRleHRDb2xvcjogUERGX0NPTkZJRy50ZXh0LmNvbG9yQmxhY2tcbiAgICAgIH0sXG4gICAgICBzdGFydFk6IGxhc3RUYWJsZUNvb3JkcyArIGNhcHRpb25IZWlnaHQgKyBQREZfQ09ORklHLmNvbnRlbnRUaXRsZUNvb3Jkcy5tYXJnaW5Ub3AsXG4gICAgICBkaWRQYXJzZUNlbGw6IChkYXRhKSA9PiB7XG4gICAgICAgIC8vIEFsaWduIGxhc3QgY29sdW1uIGNvbnRlbnQgdG8gcmlnaHRcbiAgICAgICAgaWYgKGRhdGEudGFibGUuY29sdW1ucy5sZW5ndGggPiAxICYmIChkYXRhLmNvbHVtbi5pbmRleCA9PT0gZGF0YS50YWJsZS5jb2x1bW5zLmxlbmd0aCAtIDEpKSB7XG4gICAgICAgICAgZGF0YS5jZWxsLnN0eWxlcy5oYWxpZ24gPSAncmlnaHQnXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldERvY3VtZW50VGl0bGUoZG9jOiBqc1BERiwgdGl0bGU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBkb2Muc2V0Rm9udFNpemUoUERGX0NPTkZJRy50ZXh0LmZvbnRTaXplKVxuICAgICAgLnNldEZvbnQoUERGX0NPTkZJRy50ZXh0LmZvbnROYW1lLCBQREZfQ09ORklHLnRleHQuZm9udFN0eWxlLCBQREZfQ09ORklHLnRleHQuZm9udFdlaWdodClcbiAgICAgIC50ZXh0KHRpdGxlLCBQREZfQ09ORklHLnRleHQucG9zaXRpb25YLCBQREZfQ09ORklHLnRleHQucG9zaXRpb25ZKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0RG9jdW1lbnRMb2dvKGRvYzoganNQREYpOiB2b2lkIHtcbiAgICBjb25zdCBsb2dvID0gbmV3IEltYWdlKCk7XG4gICAgbG9nby5zcmMgPSBQREZfQ09ORklHLmxvZ28uc3JjO1xuICAgIGRvYy5hZGRJbWFnZShcbiAgICAgIGxvZ28sXG4gICAgICAnUE5HJyxcbiAgICAgIGRvYy5pbnRlcm5hbC5wYWdlU2l6ZS53aWR0aCAtIFBERl9DT05GSUcubG9nby5wb3NpdGlvblgsXG4gICAgICBQREZfQ09ORklHLmxvZ28ucG9zaXRpb25ZLFxuICAgICAgUERGX0NPTkZJRy5sb2dvLndpZHRoLFxuICAgICAgUERGX0NPTkZJRy5sb2dvLmhlaWdodFxuICAgIClcbiAgfVxufVxuIl19
|
|
98
|
+
}], ctorParameters: function () { return [{ type: i1.ExportFormatterService }]; } });
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvcGRmL3BkZi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sU0FBUyxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7O0FBU3pEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBQ3JCLFlBQW9CLFNBQWlDO1FBQWpDLGNBQVMsR0FBVCxTQUFTLENBQXdCO0lBQ3JELENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxNQUFvQyxFQUFFLFlBQXlCO1FBQzFFLE1BQU0sUUFBUSxHQUFVLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDdEUsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNILG9CQUFvQixDQUFDLFVBQTZCLEVBQUUsWUFBeUI7UUFDM0UsTUFBTSxRQUFRLEdBQVUsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEYsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLE1BQU0sQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNLLHNCQUFzQixDQUFDLFVBQTZCLEVBQUUsS0FBYTtRQUN6RSxNQUFNLEdBQUcsR0FBVSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRS9CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLEVBQUUs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QUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFBO2lCQUNsQztZQUNILENBQUM7U0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEdBQVUsRUFBRSxLQUFjO1FBQ2pELEdBQUcsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDdEMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3hGLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU8sZUFBZSxDQUFDLEdBQVU7UUFDaEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO1FBQy9CLEdBQUcsQ0FBQyxRQUFRLENBQ1YsSUFBSSxFQUNKLEtBQUssRUFDTCxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQ3ZELFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUN6QixVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssRUFDckIsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQ3ZCLENBQUE7SUFDSCxDQUFDOzt3R0E5R1UsVUFBVTs0R0FBVixVQUFVLGNBUFQsTUFBTTs0RkFPUCxVQUFVO2tCQVJ0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBqc1BERiBmcm9tICdqc3BkZic7XG5pbXBvcnQgYXV0b1RhYmxlIGZyb20gJ2pzcGRmLWF1dG90YWJsZSc7XG5pbXBvcnQgeyBQREZfQ09ORklHIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3BkZi9wZGYtY29uZmlnJztcbmltcG9ydCB7IEV4cG9ydERhdGFUYWJsZSB9IGZyb20gJy4uLy4uL21vZGVscy9leHBvcnQvZXhwb3J0LWRhdGEtdGFibGUnO1xuaW1wb3J0IHsgUGRmU2V0dGluZ3MgfSBmcm9tICcuLi8uLi9tb2RlbHMvcGRmL3BkZi1zZXR0aW5ncyc7XG5pbXBvcnQgeyBFeHBvcnRGb3JtYXR0ZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZXhwb3J0L2V4cG9ydC1mb3JtYXR0ZXIuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuXG4vKipcbiAqIEBUT0RPIHZpayByZWZhY3RvclxuICogU2VydmljZSB0byB3b3JrIHdpdGggUERGIChnZW5lcmF0ZSwgZG93bmxvYWQsIGUudC5jLilcbiAqL1xuZXhwb3J0IGNsYXNzIFBkZlNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGZvcm1hdHRlcjogRXhwb3J0Rm9ybWF0dGVyU2VydmljZSkge1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9ydCBmaWxlIGZyb20gcHJvdmlkZWQgSFRNTCB0YWJsZXNcbiAgICovXG4gIGV4cG9ydFRhYmxlcyh0YWJsZXM6IE5vZGVMaXN0T2Y8SFRNTFRhYmxlRWxlbWVudD4sIGZpbGVTZXR0aW5nczogUGRmU2V0dGluZ3MpOiB2b2lkIHtcbiAgICBjb25zdCBkb2N1bWVudDoganNQREYgPSB0aGlzLmdlbmVyYXRlRnJvbVRhYmxlcyh0YWJsZXMsIGZpbGVTZXR0aW5ncyk7XG4gICAgZG9jdW1lbnQuc2F2ZShgJHtmaWxlU2V0dGluZ3MuZmlsZW5hbWV9LnBkZmApO1xuICB9XG5cbiAgLyoqXG4gICAqIEV4cG9ydCBmaWxlIGZyb20gcHJvdmlkZWQgYXJyYXktbGlrZSB0YWJsZSBkYXRhXG4gICAqL1xuICBleHBvcnRGcm9tRGF0YVRhYmxlcyhkYXRhVGFibGVzOiBFeHBvcnREYXRhVGFibGVbXSwgZmlsZVNldHRpbmdzOiBQZGZTZXR0aW5ncyk6IHZvaWQge1xuICAgIGNvbnN0IGRvY3VtZW50OiBqc1BERiA9IHRoaXMuZ2VuZXJhdGVGcm9tRGF0YVRhYmxlcyhkYXRhVGFibGVzLCBmaWxlU2V0dGluZ3MudGl0bGUpO1xuICAgIGRvY3VtZW50LnNhdmUoYCR7ZmlsZVNldHRpbmdzLmZpbGVuYW1lfS5wZGZgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBmaWxlIGZyb20gYXJyYXktbGlrZSB0YWJsZSBkYXRhXG4gICAqL1xuICBwcml2YXRlIGdlbmVyYXRlRnJvbURhdGFUYWJsZXMoZGF0YVRhYmxlczogRXhwb3J0RGF0YVRhYmxlW10sIHRpdGxlOiBzdHJpbmcpOiBqc1BERiB7XG4gICAgY29uc3QgcGRmOiBqc1BERiA9IG5ldyBqc1BERigpO1xuXG4gICAgdGhpcy5zZXREb2N1bWVudFRpdGxlKHBkZiwgdGl0bGUpO1xuICAgIHRoaXMuc2V0RG9jdW1lbnRMb2dvKHBkZik7XG5cbiAgICBkYXRhVGFibGVzLmZvckVhY2goKGRhdGFUYWJsZTogRXhwb3J0RGF0YVRhYmxlKSA9PiB7XG4gICAgICBhdXRvVGFibGUoXG4gICAgICAgIHBkZiwge1xuICAgICAgICAgIGhlYWQ6IFtkYXRhVGFibGUuaGVhZGVyXSxcbiAgICAgICAgICBib2R5OiB0aGlzLmZvcm1hdHRlci5mb3JtYXQoZGF0YVRhYmxlLmJvZHkpLFxuICAgICAgICAgIGZvb3Q6IHRoaXMuZm9ybWF0dGVyLmZvcm1hdChkYXRhVGFibGUuZm9vdGVyKSxcbiAgICAgICAgICAuLi50aGlzLnNldFRhYmxlT3B0aW9ucyhwZGYsIGRhdGFUYWJsZS5jYXB0aW9uKVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIHJldHVybiBwZGY7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRnJvbVRhYmxlcyh0YWJsZXM6IE5vZGVMaXN0T2Y8SFRNTFRhYmxlRWxlbWVudD4sIGZpbGVTZXR0aW5nczogUGRmU2V0dGluZ3MpOiBqc1BERiB7XG4gICAgY29uc3QgcGRmOiBqc1BERiA9IG5ldyBqc1BERihmaWxlU2V0dGluZ3Mub3JpZW50YXRpb24pO1xuXG4gICAgdGhpcy5zZXREb2N1bWVudFRpdGxlKHBkZiwgZmlsZVNldHRpbmdzLnRpdGxlKTtcbiAgICB0aGlzLnNldERvY3VtZW50TG9nbyhwZGYpO1xuXG4gICAgdGFibGVzLmZvckVhY2goKHRhYmxlOiBIVE1MVGFibGVFbGVtZW50KSA9PiB7XG4gICAgICAvLyBBZGQgdGFibGUgY2FwdGlvbiBpZiBub3QgcHJvdmlkZWRcbiAgICAgIGlmICghdGFibGUuY2FwdGlvbikge1xuICAgICAgICB0YWJsZS5jcmVhdGVDYXB0aW9uKCk7XG4gICAgICAgIHRhYmxlLmNhcHRpb24uaW5uZXJUZXh0ID0gJydcbiAgICAgIH1cblxuICAgICAgYXV0b1RhYmxlKFxuICAgICAgICBwZGYsXG4gICAgICAgIHtcbiAgICAgICAgICBodG1sOiB0YWJsZSxcbiAgICAgICAgICAuLi50aGlzLnNldFRhYmxlT3B0aW9ucyhwZGYsIHRhYmxlLmNhcHRpb24uaW5uZXJUZXh0KVxuICAgICAgICB9KTtcbiAgICB9KTtcblxuICAgIHJldHVybiBwZGY7XG4gIH1cblxuICAvKipcbiAgICogU2V0IGJhc2ljIG9wdGlvbnMgZm9yIFBERiB0YWJsZVxuICAgKi9cbiAgcHJpdmF0ZSBzZXRUYWJsZU9wdGlvbnMocGRmOiBqc1BERiwgdGFibGVDYXB0aW9uOiBzdHJpbmcgPSAnJyk6IG9iamVjdCB7XG4gICAgY29uc3QgbGFzdFRhYmxlQ29vcmRzID0gcGRmWydsYXN0QXV0b1RhYmxlJ10uZmluYWxZIHx8IFBERl9DT05GSUcuY29udGVudENvb3Jkcy5tYXJnaW5Ub3A7XG4gICAgLy8gZ2V0IGNhcHRpb24gaGVpZ2h0IGJhc2VkIG9uIGNhcHRpb24gY29udGVudCBoZWlnaHRcbiAgICBjb25zdCBjYXB0aW9uSGVpZ2h0OiBudW1iZXIgPSBwZGYuZ2V0VGV4dERpbWVuc2lvbnMocGRmLnNwbGl0VGV4dFRvU2l6ZSh0YWJsZUNhcHRpb24sIHBkZi5pbnRlcm5hbC5wYWdlU2l6ZS53aWR0aCkpLmg7XG4gICAgcGRmLnRleHQodGFibGVDYXB0aW9uLCBQREZfQ09ORklHLmNvbnRlbnRDb29yZHMubWFyZ2luTGVmdCwgbGFzdFRhYmxlQ29vcmRzICsgUERGX0NPTkZJRy5jb250ZW50Q29vcmRzLm1hcmdpblRvcCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaGVhZFN0eWxlczoge1xuICAgICAgICBmaWxsQ29sb3I6IFBERl9DT05GSUcudGV4dC5jb2xvclByaW1hcnksXG4gICAgICB9LFxuICAgICAgZm9vdFN0eWxlczoge1xuICAgICAgICBmaWxsQ29sb3I6IFBERl9DT05GSUcudGV4dC5jb2xvcldoaXRlLFxuICAgICAgICB0ZXh0Q29sb3I6IFBERl9DT05GSUcudGV4dC5jb2xvckJsYWNrXG4gICAgICB9LFxuICAgICAgc3RhcnRZOiBsYXN0VGFibGVDb29yZHMgKyBjYXB0aW9uSGVpZ2h0ICsgUERGX0NPTkZJRy5jb250ZW50VGl0bGVDb29yZHMubWFyZ2luVG9wLFxuICAgICAgZGlkUGFyc2VDZWxsOiAoZGF0YSkgPT4ge1xuICAgICAgICAvLyBBbGlnbiBsYXN0IGNvbHVtbiBjb250ZW50IHRvIHJpZ2h0XG4gICAgICAgIGlmIChkYXRhLnRhYmxlLmNvbHVtbnMubGVuZ3RoID4gMSAmJiAoZGF0YS5jb2x1bW4uaW5kZXggPT09IGRhdGEudGFibGUuY29sdW1ucy5sZW5ndGggLSAxKSkge1xuICAgICAgICAgIGRhdGEuY2VsbC5zdHlsZXMuaGFsaWduID0gJ3JpZ2h0J1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXREb2N1bWVudFRpdGxlKGRvYzoganNQREYsIHRpdGxlPzogc3RyaW5nKTogdm9pZCB7XG4gICAgZG9jLnNldEZvbnRTaXplKFBERl9DT05GSUcudGV4dC5mb250U2l6ZSlcbiAgICAgIC5zZXRGb250KFBERl9DT05GSUcudGV4dC5mb250TmFtZSwgUERGX0NPTkZJRy50ZXh0LmZvbnRTdHlsZSwgUERGX0NPTkZJRy50ZXh0LmZvbnRXZWlnaHQpXG4gICAgICAudGV4dCh0aXRsZSwgUERGX0NPTkZJRy50ZXh0LnBvc2l0aW9uWCwgUERGX0NPTkZJRy50ZXh0LnBvc2l0aW9uWSk7XG4gIH1cblxuICBwcml2YXRlIHNldERvY3VtZW50TG9nbyhkb2M6IGpzUERGKTogdm9pZCB7XG4gICAgY29uc3QgbG9nbyA9IG5ldyBJbWFnZSgpO1xuICAgIGxvZ28uc3JjID0gUERGX0NPTkZJRy5sb2dvLnNyYztcbiAgICBkb2MuYWRkSW1hZ2UoXG4gICAgICBsb2dvLFxuICAgICAgJ1BORycsXG4gICAgICBkb2MuaW50ZXJuYWwucGFnZVNpemUud2lkdGggLSBQREZfQ09ORklHLmxvZ28ucG9zaXRpb25YLFxuICAgICAgUERGX0NPTkZJRy5sb2dvLnBvc2l0aW9uWSxcbiAgICAgIFBERl9DT05GSUcubG9nby53aWR0aCxcbiAgICAgIFBERl9DT05GSUcubG9nby5oZWlnaHRcbiAgICApXG4gIH1cbn1cbiJdfQ==
|
|
@@ -118,4 +118,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
118
118
|
providedIn: 'root'
|
|
119
119
|
}]
|
|
120
120
|
}] });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktY2FsY3VsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9wcm9wZXJ0eS9wcm9wZXJ0eS1jYWxjdWxhdGlvbi9wcm9wZXJ0eS1jYWxjdWxhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBU3JDOzs7R0FHRztBQUlILE1BQU0sT0FBTywwQkFBMEI7SUFDckMsY0FBYyxDQUFDLFlBQW1DLEVBQUUsYUFBcUM7UUFDdkYsOEVBQThFO1FBQzlFLE9BQU8sWUFBWSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsZUFBZSxDQUNiLGFBQWdELEVBQ2hELGNBQWtEO1FBRWxELE9BQU8sYUFBYSxDQUFDO1lBQ25CLGFBQWE7WUFDYixjQUFjO1NBQ2YsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQWtELEVBQVUsRUFBRTtZQUM3RixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzFELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsVUFBOEIsRUFBRSxZQUFtQyxFQUFFLGFBQXFDO1FBQzFILE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzdFLHFEQUFxRDtRQUNyRCxJQUFJLENBQUMs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SUFFRCxpQkFBaUIsQ0FBQyxVQUE4QixFQUFFLFlBQW1DO1FBQ25GLDBEQUEwRDtRQUMxRCxPQUFPLFVBQVUsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxVQUE4QixFQUFFLFlBQW1DLEVBQUUsS0FBcUI7UUFDMUcsMERBQTBEO1FBQzFELE9BQU8sVUFBVSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7O3dIQWxKVSwwQkFBMEI7NEhBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzRGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9iYW5rLWFjY291bnQuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgTG9hbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9sb2FuLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgUHJvcGVydHlDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHkuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi5jb2xsZWN0aW9uJztcbmltcG9ydCB7IFByb3BlcnR5IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5JztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcblxuLyoqXG4gKiBTZXJ2aWNlIHdpdGggY2FsY3VsYXRpb25zIG1ldGhvZHMgZm9yIHByb3BlcnRpZXMgcmVsYXRlZCB3aXRoIG90aGVyIGVudGl0aWVzLlxuICogTG9naWMgaGVyZSB3b3JrcyBsaWtlIGNvbGxlY3Rpb25zIG1ldGhvZHMgYnV0IGZvciBzZXZlcmFsIGVudGl0aWVzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFByb3BlcnR5Q2FsY3VsYXRpb25TZXJ2aWNlIHtcbiAgZ2V0VGF4UG9zaXRpb24odHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24sIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIC8vIEBUT0RPIGhhY2s6IG1hdGggYWJzIGFkZGVkIGJlY2F1c2Ugd2UgaGF2ZSBtaXNtYXRjaGluZyBvZiByZWFsIHZhbHVlcyBzaWduc1xuICAgIHJldHVybiB0cmFuc2FjdGlvbnMuY2FzaFBvc2l0aW9uIC0gTWF0aC5hYnMoZGVwcmVjaWF0aW9ucy5jbGFpbUFtb3VudCk7XG4gIH1cblxuICBnZXRUYXhQb3NpdGlvbiQoXG4gICAgdHJhbnNhY3Rpb25zJDogT2JzZXJ2YWJsZTxUcmFuc2FjdGlvbkNvbGxlY3Rpb24+LFxuICAgIGRlcHJlY2lhdGlvbnMkOiBPYnNlcnZhYmxlPERlcHJlY2lhdGlvbkNvbGxlY3Rpb24+XG4gICk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgdHJhbnNhY3Rpb25zJCxcbiAgICAgIGRlcHJlY2lhdGlvbnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3RyYW5zYWN0aW9ucywgZGVwcmVjaWF0aW9uc106IFtUcmFuc2FjdGlvbkNvbGxlY3Rpb24sIERlcHJlY2lhdGlvbkNvbGxlY3Rpb25dKTogbnVtYmVyID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VGF4UG9zaXRpb24odHJhbnNhY3Rpb25zLCBkZXByZWNpYXRpb25zKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHRheFBvc2l0aW9uR3Jvd3RoKHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24sIGRlcHJlY2lhdGlvbnM6IERlcHJlY2lhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIGNvbnN0IHRheFBvc2l0aW9uOiBudW1iZXIgPSB0aGlzLmdldFRheFBvc2l0aW9uKHRyYW5zYWN0aW9ucywgZGVwcmVjaWF0aW9ucyk7XG4gICAgLy8gY2hlY2sgaWYgdGF4UG9zaXRpb24gPSAwIHRvIGF2b2lkIGRpdmlzaW9uIGJ5IHplcm9cbiAgICBpZiAoIXRheFBvc2l0aW9uKSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKHRheFBvc2l0aW9uIC0gcHJvcGVydGllcy5mb3JlY2FzdGVkVGF4UG9zaXRpb24pIC8gdGF4UG9zaXRpb247XG4gIH1cblxuICB0YXhQb3NpdGlvbkdyb3d0aCQoXG4gICAgcHJvcGVydGllcyQ6IE9ic2VydmFibGU8UHJvcGVydHlDb2xsZWN0aW9uPixcbiAgICB0cmFuc2FjdGlvbnMkOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uQ29sbGVjdGlvbj4sXG4gICAgZGVwcmVjaWF0aW9ucyQ6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uQ29sbGVjdGlvbj5cbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICBwcm9wZXJ0aWVzJCxcbiAgICAgIHRyYW5zYWN0aW9ucyQsXG4gICAgICBkZXByZWNpYXRpb25zJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtwcm9wZXJ0aWVzLCB0cmFuc2FjdGlvbnMsIGRlcHJlY2lhdGlvbnNdOiBbUHJvcGVydHlDb2xsZWN0aW9uLCBUcmFuc2FjdGlvbkNvbGxlY3Rpb24sIERlcHJlY2lhdGlvbkNvbGxlY3Rpb25dKTogbnVtYmVyID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGF4UG9zaXRpb25Hcm93dGgocHJvcGVydGllcywgdHJhbnNhY3Rpb25zLCBkZXByZWNpYXRpb25zKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldFJlbnRhbFJldHVybihwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdHJhbnNhY3Rpb25zLmNsYWltSW5jb21lIC8gcHJvcGVydGllcy5tYXJrZXRWYWx1ZTtcbiAgfVxuXG4gIGdldExvYW5BbW91bnQocHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLCBiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiwgbG9hbnM6IExvYW5Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gcHJvcGVydGllcy5pdGVtcy5yZWR1Y2UoKHRvdGFsQW1vdW50OiBudW1iZXIsIHByb3BlcnR5OiBQcm9wZXJ0eSk6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gdG90YWxBbW91bnQgKyBiYW5rQWNjb3VudHMuaXRlbXNcbiAgICAgICAgLnJlZHVjZSgocHJvcGVydHlBbW91bnQ6IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+IHtcbiAgICAgICAgICByZXR1cm4gcHJvcGVydHlBbW91bnQgKyBiYW5rQWNjb3VudC5nZXRQcm9wZXJ0eVBlcmNlbnRhZ2UocHJvcGVydHkuaWQpICogKGxvYW5zLmdldEJ5QmFua0FjY291bnRJZChiYW5rQWNjb3VudC5pZCk/LmFtb3VudCB8fCAwKTtcbiAgICAgICAgfSwgMCk7XG4gICAgfSwgMCk7XG4gIH1cblxuICBnZXRMb2FuVmFsdWUocHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLCBiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50Q29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHByb3BlcnRpZXMuaXRlbXMucmVkdWNlKCh0b3RhbEFtb3VudDogbnVtYmVyLCBwcm9wZXJ0eTogUHJvcGVydHkpOiBudW1iZXIgPT4ge1xuICAgICAgcmV0dXJuIHRvdGFsQW1vdW50ICsgYmFua0FjY291bnRzLml0ZW1zXG4gICAgICAgIC5yZWR1Y2UoKHByb3BlcnR5QW1vdW50OiBudW1iZXIsIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IG51bWJlciA9PiB7XG4gICAgICAgICAgcmV0dXJuIHByb3BlcnR5QW1vdW50ICsgYmFua0FjY291bnQuZ2V0UHJvcGVydHlCYWxhbmNlQW1vdW50KHByb3BlcnR5LmlkKTtcbiAgICAgICAgfSwgMCk7XG4gICAgfSwgMCk7XG4gIH1cblxuICAvKipcbiAgICogTFZSXG4gICAqL1xuXG4gIGdldEx2cihwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICAvLyBNYXRoIGFicyBpcyByZXF1aXJlZCBmb3IgY29ycmVjdCBwZXJjZW50YWdlIGNhbGN1bGF0aW9uXG4gICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuZ2V0TG9hblZhbHVlKHByb3BlcnRpZXMsIGJhbmtBY2NvdW50cykpIC8gcHJvcGVydGllcy5tYXJrZXRWYWx1ZTtcbiAgfVxuXG4gIGdldEx2ciQoXG4gICAgcHJvcGVydGllcyQ6IE9ic2VydmFibGU8UHJvcGVydHlDb2xsZWN0aW9uPixcbiAgICBiYW5rQWNjb3VudHMkOiBPYnNlcnZhYmxlPEJhbmtBY2NvdW50Q29sbGVjdGlvbj5cbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICBwcm9wZXJ0aWVzJCxcbiAgICAgIGJhbmtBY2NvdW50cyRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbcHJvcGVydGllcywgYmFua0FjY291bnRzXTogW1Byb3BlcnR5Q29sbGVjdGlvbiwgQmFua0FjY291bnRDb2xsZWN0aW9uXSk6IG51bWJlciA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEx2cihwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0THZyQ29tbWVuY2VtZW50KHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgbG9hbnM6IExvYW5Db2xsZWN0aW9uLCBiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50Q29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgLy8gTWF0aCBhYnMgaXMgcmVxdWlyZWQgZm9yIGNvcnJlY3QgcGVyY2VudGFnZSBjYWxjdWxhdGlvblxuICAgIHJldHVybiBNYXRoLmFicyh0aGlzLmdldExvYW5BbW91bnQocHJvcGVydGllcywgYmFua0FjY291bnRzLCBsb2FucykpIC8gcHJvcGVydGllcy5wdXJjaGFzZVByaWNlO1xuICB9XG5cbiAgZ2V0THZyQ29tbWVuY2VtZW50JChcbiAgICBwcm9wZXJ0aWVzJDogT2JzZXJ2YWJsZTxQcm9wZXJ0eUNvbGxlY3Rpb24+LFxuICAgIGJhbmtBY2NvdW50cyQ6IE9ic2VydmFibGU8QmFua0FjY291bnRDb2xsZWN0aW9uPixcbiAgICBsb2FucyQ6IE9ic2VydmFibGU8TG9hbkNvbGxlY3Rpb24+XG4gICk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgcHJvcGVydGllcyQsXG4gICAgICBiYW5rQWNjb3VudHMkLFxuICAgICAgbG9hbnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3Byb3BlcnRpZXMsIGJhbmtBY2NvdW50cywgbG9hbnNdOiBbUHJvcGVydHlDb2xsZWN0aW9uLCBCYW5rQWNjb3VudENvbGxlY3Rpb24sIExvYW5Db2xsZWN0aW9uXSk6IG51bWJlciA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEx2ckNvbW1lbmNlbWVudChwcm9wZXJ0aWVzLCBsb2FucywgYmFua0FjY291bnRzKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEx2ckdyb3d0aChwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uLCBsb2FuczogTG9hbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIGNvbnN0IGx2cjogbnVtYmVyID0gdGhpcy5nZXRMdnIocHJvcGVydGllcywgYmFua0FjY291bnRzKTtcbiAgICBpZiAoIWx2cikge1xuICAgICAgLy8gY2hlY2sgaWYgbHZyID0gMCB0byBhdm9pZCBkaXZpc2lvbiBieSB6ZXJvXG4gICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICByZXR1cm4gKGx2ciAtIHRoaXMuZ2V0THZyQ29tbWVuY2VtZW50KHByb3BlcnRpZXMsIGxvYW5zLCBiYW5rQWNjb3VudHMpKSAvIGx2cjtcbiAgfVxuXG4gIGdldEx2ckdyb3d0aCQoXG4gICAgcHJvcGVydGllcyQ6IE9ic2VydmFibGU8UHJvcGVydHlDb2xsZWN0aW9uPixcbiAgICBiYW5rQWNjb3VudHMkOiBPYnNlcnZhYmxlPEJhbmtBY2NvdW50Q29sbGVjdGlvbj4sXG4gICAgbG9hbnMkOiBPYnNlcnZhYmxlPExvYW5Db2xsZWN0aW9uPlxuICApOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHByb3BlcnRpZXMkLFxuICAgICAgYmFua0FjY291bnRzJCxcbiAgICAgIGxvYW5zJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMsIGxvYW5zXTogW1Byb3BlcnR5Q29sbGVjdGlvbiwgQmFua0FjY291bnRDb2xsZWN0aW9uLCBMb2FuQ29sbGVjdGlvbl0pOiBudW1iZXIgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRMdnJHcm93dGgocHJvcGVydGllcywgYmFua0FjY291bnRzLCBsb2Fucyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRFcXVpdHlQb3NpdGlvbihwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICAvLyBNYXRoIGFicyBpcyByZXF1aXJlZCBmb3IgY29ycmVjdCBwZXJjZW50YWdlIGNhbGN1bGF0aW9uXG4gICAgcmV0dXJuIHByb3BlcnRpZXMubWFya2V0VmFsdWUgLSBNYXRoLmFicyh0aGlzLmdldExvYW5WYWx1ZShwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMpKTtcbiAgfVxuXG4gIGdldFB1cmNoYXNlRXF1aXR5KHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgYmFua0FjY291bnRzOiBCYW5rQWNjb3VudENvbGxlY3Rpb24sIGxvYW5zOiBMb2FuQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgLy8gTWF0aCBhYnMgaXMgcmVxdWlyZWQgZm9yIGNvcnJlY3QgcGVyY2VudGFnZSBjYWxjdWxhdGlvblxuICAgIHJldHVybiBwcm9wZXJ0aWVzLnB1cmNoYXNlUHJpY2UgLSBNYXRoLmFicyh0aGlzLmdldExvYW5BbW91bnQocHJvcGVydGllcywgYmFua0FjY291bnRzLCBsb2FucykpO1xuICB9XG59XG4iXX0=
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHktY2FsY3VsYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9wcm9wZXJ0eS9wcm9wZXJ0eS1jYWxjdWxhdGlvbi9wcm9wZXJ0eS1jYWxjdWxhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBU3JDOzs7R0FHRztBQUlILE1BQU0sT0FBTywwQkFBMEI7SUFDckMsY0FBYyxDQUFDLFlBQW1DLEVBQUUsYUFBcUM7UUFDdkYsOEVBQThFO1FBQzlFLE9BQU8sWUFBWSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6RSxDQUFDO0lBRUQsZUFBZSxDQUNiLGFBQWdELEVBQ2hELGNBQWtEO1FBRWxELE9BQU8sYUFBYSxDQUFDO1lBQ25CLGFBQWE7WUFDYixjQUFjO1NBQ2YsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxhQUFhLENBQWtELEVBQVUsRUFBRTtZQUM3RixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzFELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsaUJBQWlCLENBQUMsVUFBOEIsRUFBRSxZQUFtQyxFQUFFLGFBQXFDO1FBQzFILE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQzdFLHFEQUFxRDtRQUNyRCxJQUFJLENBQUMs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SUFFRCxpQkFBaUIsQ0FBQyxVQUE4QixFQUFFLFlBQW1DO1FBQ25GLDBEQUEwRDtRQUMxRCxPQUFPLFVBQVUsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQ3hGLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxVQUE4QixFQUFFLFlBQW1DLEVBQUUsS0FBcUI7UUFDMUcsMERBQTBEO1FBQzFELE9BQU8sVUFBVSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7O3dIQWxKVSwwQkFBMEI7NEhBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzRGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9iYW5rLWFjY291bnQuY29sbGVjdGlvbic7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25Db2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vY29sbGVjdGlvbnMvZGVwcmVjaWF0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgTG9hbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9sb2FuL2xvYW4uY29sbGVjdGlvbic7XG5pbXBvcnQgeyBQcm9wZXJ0eUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi9jb2xsZWN0aW9ucy9wcm9wZXJ0eS9wcm9wZXJ0eS5jb2xsZWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uL2NvbGxlY3Rpb25zL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHsgQmFua0FjY291bnQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvYmFuay9iYW5rLWFjY291bnQnO1xuXG4vKipcbiAqIFNlcnZpY2Ugd2l0aCBjYWxjdWxhdGlvbnMgbWV0aG9kcyBmb3IgcHJvcGVydGllcyByZWxhdGVkIHdpdGggb3RoZXIgZW50aXRpZXMuXG4gKiBMb2dpYyBoZXJlIHdvcmtzIGxpa2UgY29sbGVjdGlvbnMgbWV0aG9kcyBidXQgZm9yIHNldmVyYWwgZW50aXRpZXNcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUHJvcGVydHlDYWxjdWxhdGlvblNlcnZpY2Uge1xuICBnZXRUYXhQb3NpdGlvbih0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiwgZGVwcmVjaWF0aW9uczogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gaGFjazogbWF0aCBhYnMgYWRkZWQgYmVjYXVzZSB3ZSBoYXZlIG1pc21hdGNoaW5nIG9mIHJlYWwgdmFsdWVzIHNpZ25zXG4gICAgcmV0dXJuIHRyYW5zYWN0aW9ucy5jYXNoUG9zaXRpb24gLSBNYXRoLmFicyhkZXByZWNpYXRpb25zLmNsYWltQW1vdW50KTtcbiAgfVxuXG4gIGdldFRheFBvc2l0aW9uJChcbiAgICB0cmFuc2FjdGlvbnMkOiBPYnNlcnZhYmxlPFRyYW5zYWN0aW9uQ29sbGVjdGlvbj4sXG4gICAgZGVwcmVjaWF0aW9ucyQ6IE9ic2VydmFibGU8RGVwcmVjaWF0aW9uQ29sbGVjdGlvbj5cbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICB0cmFuc2FjdGlvbnMkLFxuICAgICAgZGVwcmVjaWF0aW9ucyRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbdHJhbnNhY3Rpb25zLCBkZXByZWNpYXRpb25zXTogW1RyYW5zYWN0aW9uQ29sbGVjdGlvbiwgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbl0pOiBudW1iZXIgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5nZXRUYXhQb3NpdGlvbih0cmFuc2FjdGlvbnMsIGRlcHJlY2lhdGlvbnMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgdGF4UG9zaXRpb25Hcm93dGgocHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLCB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uQ29sbGVjdGlvbiwgZGVwcmVjaWF0aW9uczogRGVwcmVjaWF0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgY29uc3QgdGF4UG9zaXRpb246IG51bWJlciA9IHRoaXMuZ2V0VGF4UG9zaXRpb24odHJhbnNhY3Rpb25zLCBkZXByZWNpYXRpb25zKTtcbiAgICAvLyBjaGVjayBpZiB0YXhQb3NpdGlvbiA9IDAgdG8gYXZvaWQgZGl2aXNpb24gYnkgemVyb1xuICAgIGlmICghdGF4UG9zaXRpb24pIHtcbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIHJldHVybiAodGF4UG9zaXRpb24gLSBwcm9wZXJ0aWVzLmZvcmVjYXN0ZWRUYXhQb3NpdGlvbikgLyB0YXhQb3NpdGlvbjtcbiAgfVxuXG4gIHRheFBvc2l0aW9uR3Jvd3RoJChcbiAgICBwcm9wZXJ0aWVzJDogT2JzZXJ2YWJsZTxQcm9wZXJ0eUNvbGxlY3Rpb24+LFxuICAgIHRyYW5zYWN0aW9ucyQ6IE9ic2VydmFibGU8VHJhbnNhY3Rpb25Db2xsZWN0aW9uPixcbiAgICBkZXByZWNpYXRpb25zJDogT2JzZXJ2YWJsZTxEZXByZWNpYXRpb25Db2xsZWN0aW9uPlxuICApOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHByb3BlcnRpZXMkLFxuICAgICAgdHJhbnNhY3Rpb25zJCxcbiAgICAgIGRlcHJlY2lhdGlvbnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3Byb3BlcnRpZXMsIHRyYW5zYWN0aW9ucywgZGVwcmVjaWF0aW9uc106IFtQcm9wZXJ0eUNvbGxlY3Rpb24sIFRyYW5zYWN0aW9uQ29sbGVjdGlvbiwgRGVwcmVjaWF0aW9uQ29sbGVjdGlvbl0pOiBudW1iZXIgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy50YXhQb3NpdGlvbkdyb3d0aChwcm9wZXJ0aWVzLCB0cmFuc2FjdGlvbnMsIGRlcHJlY2lhdGlvbnMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0UmVudGFsUmV0dXJuKHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiB0cmFuc2FjdGlvbnMuY2xhaW1JbmNvbWUgLyBwcm9wZXJ0aWVzLm1hcmtldFZhbHVlO1xuICB9XG5cbiAgZ2V0TG9hbkFtb3VudChwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uLCBsb2FuczogTG9hbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBwcm9wZXJ0aWVzLml0ZW1zLnJlZHVjZSgodG90YWxBbW91bnQ6IG51bWJlciwgcHJvcGVydHk6IFByb3BlcnR5KTogbnVtYmVyID0+IHtcbiAgICAgIHJldHVybiB0b3RhbEFtb3VudCArIGJhbmtBY2NvdW50cy5pdGVtc1xuICAgICAgICAucmVkdWNlKChwcm9wZXJ0eUFtb3VudDogbnVtYmVyLCBiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBudW1iZXIgPT4ge1xuICAgICAgICAgIHJldHVybiBwcm9wZXJ0eUFtb3VudCArIGJhbmtBY2NvdW50LmdldFByb3BlcnR5UGVyY2VudGFnZShwcm9wZXJ0eS5pZCkgKiAobG9hbnMuZ2V0QnlCYW5rQWNjb3VudElkKGJhbmtBY2NvdW50LmlkKT8uYW1vdW50IHx8IDApO1xuICAgICAgICB9LCAwKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIGdldExvYW5WYWx1ZShwcm9wZXJ0aWVzOiBQcm9wZXJ0eUNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICByZXR1cm4gcHJvcGVydGllcy5pdGVtcy5yZWR1Y2UoKHRvdGFsQW1vdW50OiBudW1iZXIsIHByb3BlcnR5OiBQcm9wZXJ0eSk6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gdG90YWxBbW91bnQgKyBiYW5rQWNjb3VudHMuaXRlbXNcbiAgICAgICAgLnJlZHVjZSgocHJvcGVydHlBbW91bnQ6IG51bWJlciwgYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogbnVtYmVyID0+IHtcbiAgICAgICAgICByZXR1cm4gcHJvcGVydHlBbW91bnQgKyBiYW5rQWNjb3VudC5nZXRQcm9wZXJ0eUJhbGFuY2VBbW91bnQocHJvcGVydHkuaWQpO1xuICAgICAgICB9LCAwKTtcbiAgICB9LCAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMVlJcbiAgICovXG5cbiAgZ2V0THZyKHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgYmFua0FjY291bnRzOiBCYW5rQWNjb3VudENvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIC8vIE1hdGggYWJzIGlzIHJlcXVpcmVkIGZvciBjb3JyZWN0IHBlcmNlbnRhZ2UgY2FsY3VsYXRpb25cbiAgICByZXR1cm4gTWF0aC5hYnModGhpcy5nZXRMb2FuVmFsdWUocHJvcGVydGllcywgYmFua0FjY291bnRzKSkgLyBwcm9wZXJ0aWVzLm1hcmtldFZhbHVlO1xuICB9XG5cbiAgZ2V0THZyJChcbiAgICBwcm9wZXJ0aWVzJDogT2JzZXJ2YWJsZTxQcm9wZXJ0eUNvbGxlY3Rpb24+LFxuICAgIGJhbmtBY2NvdW50cyQ6IE9ic2VydmFibGU8QmFua0FjY291bnRDb2xsZWN0aW9uPlxuICApOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHByb3BlcnRpZXMkLFxuICAgICAgYmFua0FjY291bnRzJFxuICAgIF0pLnBpcGUoXG4gICAgICBtYXAoKFtwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHNdOiBbUHJvcGVydHlDb2xsZWN0aW9uLCBCYW5rQWNjb3VudENvbGxlY3Rpb25dKTogbnVtYmVyID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0THZyKHByb3BlcnRpZXMsIGJhbmtBY2NvdW50cyk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnZXRMdnJDb21tZW5jZW1lbnQocHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLCBsb2FuczogTG9hbkNvbGxlY3Rpb24sIGJhbmtBY2NvdW50czogQmFua0FjY291bnRDb2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICAvLyBNYXRoIGFicyBpcyByZXF1aXJlZCBmb3IgY29ycmVjdCBwZXJjZW50YWdlIGNhbGN1bGF0aW9uXG4gICAgcmV0dXJuIE1hdGguYWJzKHRoaXMuZ2V0TG9hbkFtb3VudChwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMsIGxvYW5zKSkgLyBwcm9wZXJ0aWVzLnB1cmNoYXNlUHJpY2U7XG4gIH1cblxuICBnZXRMdnJDb21tZW5jZW1lbnQkKFxuICAgIHByb3BlcnRpZXMkOiBPYnNlcnZhYmxlPFByb3BlcnR5Q29sbGVjdGlvbj4sXG4gICAgYmFua0FjY291bnRzJDogT2JzZXJ2YWJsZTxCYW5rQWNjb3VudENvbGxlY3Rpb24+LFxuICAgIGxvYW5zJDogT2JzZXJ2YWJsZTxMb2FuQ29sbGVjdGlvbj5cbiAgKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbXG4gICAgICBwcm9wZXJ0aWVzJCxcbiAgICAgIGJhbmtBY2NvdW50cyQsXG4gICAgICBsb2FucyRcbiAgICBdKS5waXBlKFxuICAgICAgbWFwKChbcHJvcGVydGllcywgYmFua0FjY291bnRzLCBsb2Fuc106IFtQcm9wZXJ0eUNvbGxlY3Rpb24sIEJhbmtBY2NvdW50Q29sbGVjdGlvbiwgTG9hbkNvbGxlY3Rpb25dKTogbnVtYmVyID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0THZyQ29tbWVuY2VtZW50KHByb3BlcnRpZXMsIGxvYW5zLCBiYW5rQWNjb3VudHMpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0THZyR3Jvd3RoKHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgYmFua0FjY291bnRzOiBCYW5rQWNjb3VudENvbGxlY3Rpb24sIGxvYW5zOiBMb2FuQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgY29uc3QgbHZyOiBudW1iZXIgPSB0aGlzLmdldEx2cihwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMpO1xuICAgIGlmICghbHZyKSB7XG4gICAgICAvLyBjaGVjayBpZiBsdnIgPSAwIHRvIGF2b2lkIGRpdmlzaW9uIGJ5IHplcm9cbiAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIHJldHVybiAobHZyIC0gdGhpcy5nZXRMdnJDb21tZW5jZW1lbnQocHJvcGVydGllcywgbG9hbnMsIGJhbmtBY2NvdW50cykpIC8gbHZyO1xuICB9XG5cbiAgZ2V0THZyR3Jvd3RoJChcbiAgICBwcm9wZXJ0aWVzJDogT2JzZXJ2YWJsZTxQcm9wZXJ0eUNvbGxlY3Rpb24+LFxuICAgIGJhbmtBY2NvdW50cyQ6IE9ic2VydmFibGU8QmFua0FjY291bnRDb2xsZWN0aW9uPixcbiAgICBsb2FucyQ6IE9ic2VydmFibGU8TG9hbkNvbGxlY3Rpb24+XG4gICk6IE9ic2VydmFibGU8bnVtYmVyPiB7XG4gICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgcHJvcGVydGllcyQsXG4gICAgICBiYW5rQWNjb3VudHMkLFxuICAgICAgbG9hbnMkXG4gICAgXSkucGlwZShcbiAgICAgIG1hcCgoW3Byb3BlcnRpZXMsIGJhbmtBY2NvdW50cywgbG9hbnNdOiBbUHJvcGVydHlDb2xsZWN0aW9uLCBCYW5rQWNjb3VudENvbGxlY3Rpb24sIExvYW5Db2xsZWN0aW9uXSk6IG51bWJlciA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldEx2ckdyb3d0aChwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMsIGxvYW5zKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEVxdWl0eVBvc2l0aW9uKHByb3BlcnRpZXM6IFByb3BlcnR5Q29sbGVjdGlvbiwgYmFua0FjY291bnRzOiBCYW5rQWNjb3VudENvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIC8vIE1hdGggYWJzIGlzIHJlcXVpcmVkIGZvciBjb3JyZWN0IHBlcmNlbnRhZ2UgY2FsY3VsYXRpb25cbiAgICByZXR1cm4gcHJvcGVydGllcy5tYXJrZXRWYWx1ZSAtIE1hdGguYWJzKHRoaXMuZ2V0TG9hblZhbHVlKHByb3BlcnRpZXMsIGJhbmtBY2NvdW50cykpO1xuICB9XG5cbiAgZ2V0UHVyY2hhc2VFcXVpdHkocHJvcGVydGllczogUHJvcGVydHlDb2xsZWN0aW9uLCBiYW5rQWNjb3VudHM6IEJhbmtBY2NvdW50Q29sbGVjdGlvbiwgbG9hbnM6IExvYW5Db2xsZWN0aW9uKTogbnVtYmVyIHtcbiAgICAvLyBNYXRoIGFicyBpcyByZXF1aXJlZCBmb3IgY29ycmVjdCBwZXJjZW50YWdlIGNhbGN1bGF0aW9uXG4gICAgcmV0dXJuIHByb3BlcnRpZXMucHVyY2hhc2VQcmljZSAtIE1hdGguYWJzKHRoaXMuZ2V0TG9hbkFtb3VudChwcm9wZXJ0aWVzLCBiYW5rQWNjb3VudHMsIGxvYW5zKSk7XG4gIH1cbn1cbiJdfQ==
|