taxtank-core 0.28.10 → 0.28.13
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 +1699 -1421
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/collection-dictionary.js +5 -2
- package/esm2015/lib/collections/sole/sole-invoice-item.collection.js +7 -0
- package/esm2015/lib/collections/transaction/transaction.collection.js +26 -1
- package/esm2015/lib/db/Enums/document-type.enum.js +5 -0
- package/esm2015/lib/db/Enums/index.js +3 -0
- package/esm2015/lib/db/Enums/sole-invoice-tax-type.enum.js +7 -0
- package/esm2015/lib/db/Enums/sole-invoice-template-tax-type.enum.js +4 -4
- package/esm2015/lib/db/Models/sole/sole-invoice-item.js +1 -1
- package/esm2015/lib/db/Models/sole/sole-invoice.js +1 -1
- package/esm2015/lib/forms/bank/bank-account/bank-account-add-manual.form.js +10 -6
- package/esm2015/lib/forms/bank/bank-account/bank-account-allocation.form.js +5 -4
- package/esm2015/lib/forms/sole/sole-business.form.js +21 -2
- package/esm2015/lib/forms/sole/sole-invoice-item.form.js +3 -31
- package/esm2015/lib/forms/sole/sole-invoice-template.form.js +4 -5
- package/esm2015/lib/forms/sole/sole-invoice.form.js +93 -18
- package/esm2015/lib/models/depreciation/depreciation.js +2 -2
- package/esm2015/lib/models/dictionary/dictionary.js +2 -2
- package/esm2015/lib/models/document/index.js +3 -0
- package/esm2015/lib/models/income-source/income-source.js +3 -3
- package/esm2015/lib/models/index.js +2 -1
- package/esm2015/lib/models/sole/sole-details.js +1 -3
- package/esm2015/lib/models/sole/sole-invoice-item.js +10 -2
- package/esm2015/lib/models/sole/sole-invoice-template.js +13 -10
- package/esm2015/lib/models/sole/sole-invoice.js +82 -28
- package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +1 -1
- package/esm2015/lib/services/http/document/document.service.js +20 -0
- package/esm2015/lib/services/http/document/index.js +3 -0
- package/esm2015/lib/services/http/income-source/income-source.service.js +2 -1
- package/esm2015/lib/services/http/index.js +2 -1
- package/esm2015/lib/services/http/rest/rest.service.js +23 -7
- package/esm2015/lib/services/http/sole/sole-invoice/sole-invoice.service.js +15 -1
- package/esm2015/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.js +17 -5
- package/esm2015/lib/services/transaction/transaction-calculation.service.js +13 -1
- package/esm2015/public-api.js +3 -2
- package/fesm2015/taxtank-core.js +1211 -972
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/sole/sole-invoice-item.collection.d.ts +5 -0
- package/lib/collections/transaction/transaction.collection.d.ts +7 -0
- package/lib/db/Enums/document-type.enum.d.ts +3 -0
- package/lib/db/Enums/index.d.ts +1 -0
- package/lib/db/Enums/sole-invoice-tax-type.enum.d.ts +5 -0
- package/lib/db/Enums/sole-invoice-template-tax-type.enum.d.ts +3 -3
- package/lib/db/Models/sole/sole-invoice-item.d.ts +3 -1
- package/lib/db/Models/sole/sole-invoice.d.ts +8 -5
- package/lib/forms/bank/bank-account/bank-account-add-manual.form.d.ts +3 -1
- package/lib/forms/bank/bank-account/bank-account-allocation.form.d.ts +4 -1
- package/lib/forms/sole/sole-business.form.d.ts +10 -1
- package/lib/forms/sole/sole-invoice-item.form.d.ts +2 -7
- package/lib/forms/sole/sole-invoice-template.form.d.ts +2 -3
- package/lib/forms/sole/sole-invoice.form.d.ts +19 -2
- package/lib/models/document/index.d.ts +2 -0
- package/lib/models/index.d.ts +1 -0
- package/lib/models/sole/sole-details.d.ts +0 -2
- package/lib/models/sole/sole-invoice-item.d.ts +7 -1
- package/lib/models/sole/sole-invoice-template.d.ts +10 -3
- package/lib/models/sole/sole-invoice.d.ts +49 -5
- package/lib/services/http/document/document.service.d.ts +10 -0
- package/lib/services/http/document/index.d.ts +2 -0
- package/lib/services/http/index.d.ts +1 -0
- package/lib/services/http/rest/rest.service.d.ts +13 -4
- package/lib/services/http/sole/sole-invoice/sole-invoice.service.d.ts +6 -1
- package/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.d.ts +5 -1
- package/lib/services/transaction/transaction-calculation.service.d.ts +6 -0
- package/package.json +1 -1
- package/public-api.d.ts +2 -1
|
@@ -5,48 +5,72 @@ import { SoleBusiness } from './sole-business';
|
|
|
5
5
|
import { SoleInvoiceItem } from './sole-invoice-item';
|
|
6
6
|
import { SoleContact } from './sole-contact';
|
|
7
7
|
import { SoleInvoiceTemplate } from './sole-invoice-template';
|
|
8
|
-
import {
|
|
8
|
+
import { Type } from 'class-transformer';
|
|
9
9
|
import { SoleInvoiceStatusesEnum } from '../../db/Enums/sole-invoice-statuses.enum';
|
|
10
|
-
import {
|
|
10
|
+
import { BankAccount } from '../bank/bank-account';
|
|
11
|
+
import { SoleInvoiceTaxTypeEnum } from '../../db/Enums/sole-invoice-tax-type.enum';
|
|
12
|
+
import { SoleInvoiceItemCollection } from '../../collections/sole/sole-invoice-item.collection';
|
|
11
13
|
export class SoleInvoice extends SoleInvoiceBase {
|
|
12
14
|
constructor() {
|
|
13
15
|
super(...arguments);
|
|
14
|
-
this.items = [plainToClass(SoleInvoiceItem, {})];
|
|
15
16
|
this.status = SoleInvoiceStatusesEnum.DRAFT;
|
|
17
|
+
this.taxType = SoleInvoiceTaxTypeEnum.NO_TAX;
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Get items array as collection
|
|
21
|
+
*/
|
|
22
|
+
get itemsCollection() {
|
|
23
|
+
return new SoleInvoiceItemCollection(this.items);
|
|
19
24
|
}
|
|
20
|
-
|
|
21
|
-
|
|
25
|
+
/**
|
|
26
|
+
* Total price of all items
|
|
27
|
+
*/
|
|
28
|
+
get price() {
|
|
29
|
+
return this.itemsCollection.sumBy('totalPrice');
|
|
22
30
|
}
|
|
23
|
-
|
|
24
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Total invoice price without GST
|
|
33
|
+
*/
|
|
34
|
+
get netPrice() {
|
|
35
|
+
if (this.isTaxInclusive()) {
|
|
36
|
+
return this.price - this.GSTAmount;
|
|
37
|
+
}
|
|
38
|
+
return this.price;
|
|
25
39
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Total final price (net + GST)
|
|
42
|
+
*/
|
|
43
|
+
get grossPrice() {
|
|
44
|
+
if (this.isTaxExclusive()) {
|
|
45
|
+
return this.price + this.GSTAmount;
|
|
30
46
|
}
|
|
31
|
-
return this.
|
|
47
|
+
return this.price;
|
|
32
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* Total GST amount
|
|
51
|
+
*/
|
|
33
52
|
get GSTAmount() {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
default:
|
|
53
|
+
switch (this.taxType) {
|
|
54
|
+
case SoleInvoiceTaxTypeEnum.TAX_INCLUSIVE:
|
|
55
|
+
return this.inclusiveGSTAmount;
|
|
56
|
+
case SoleInvoiceTaxTypeEnum.TAX_EXCLUSIVE:
|
|
57
|
+
return this.exclusiveGSTAmount;
|
|
58
|
+
case SoleInvoiceTaxTypeEnum.NO_TAX:
|
|
41
59
|
return 0;
|
|
42
60
|
}
|
|
43
61
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
return
|
|
62
|
+
/**
|
|
63
|
+
* When tax inclusive, GST amount is included to total price
|
|
64
|
+
*/
|
|
65
|
+
get inclusiveGSTAmount() {
|
|
66
|
+
const gstPrice = this.itemsCollection.gstPrice;
|
|
67
|
+
return +(gstPrice - (gstPrice / (1 + SoleInvoiceItem.GSTRatio))).toFixed(2);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* When tax exclusive, GST amount should be added additionally to total price
|
|
71
|
+
*/
|
|
72
|
+
get exclusiveGSTAmount() {
|
|
73
|
+
return +(this.itemsCollection.gstPrice * SoleInvoiceItem.GSTRatio).toFixed(2);
|
|
50
74
|
}
|
|
51
75
|
isDraft() {
|
|
52
76
|
return this.status === SoleInvoiceStatusesEnum.DRAFT;
|
|
@@ -66,7 +90,34 @@ export class SoleInvoice extends SoleInvoiceBase {
|
|
|
66
90
|
isUnpaid() {
|
|
67
91
|
return this.isPending() && this.dateTo >= new Date();
|
|
68
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* GST is not available for invoices without taxes
|
|
95
|
+
*/
|
|
96
|
+
isNoTax() {
|
|
97
|
+
return this.taxType === SoleInvoiceTaxTypeEnum.NO_TAX;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* GST amount is not included in items prices for invoices with tax exclusive,
|
|
101
|
+
* we should add GST amount additionaly to subtotal price to get total price
|
|
102
|
+
*/
|
|
103
|
+
isTaxExclusive() {
|
|
104
|
+
return this.taxType === SoleInvoiceTaxTypeEnum.TAX_EXCLUSIVE;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* GST amount already included in items prices for invoices with tax inclusive,
|
|
108
|
+
* we should subtract GST amount from total price to get subtotal price
|
|
109
|
+
*/
|
|
110
|
+
isTaxInclusive() {
|
|
111
|
+
return this.taxType === SoleInvoiceTaxTypeEnum.TAX_INCLUSIVE;
|
|
112
|
+
}
|
|
113
|
+
getNumber() {
|
|
114
|
+
return String(this.number).padStart(SoleInvoice.NUMBER_LENGTH, '0');
|
|
115
|
+
}
|
|
116
|
+
get name() {
|
|
117
|
+
return `invoice-${this.getNumber()}.pdf`;
|
|
118
|
+
}
|
|
69
119
|
}
|
|
120
|
+
SoleInvoice.NUMBER_LENGTH = 4;
|
|
70
121
|
__decorate([
|
|
71
122
|
Type(() => Date)
|
|
72
123
|
], SoleInvoice.prototype, "dateFrom", void 0);
|
|
@@ -88,4 +139,7 @@ __decorate([
|
|
|
88
139
|
__decorate([
|
|
89
140
|
Type(() => SoleInvoiceTemplate)
|
|
90
141
|
], SoleInvoice.prototype, "template", void 0);
|
|
91
|
-
|
|
142
|
+
__decorate([
|
|
143
|
+
Type(() => BankAccount)
|
|
144
|
+
], SoleInvoice.prototype, "bankAccount", void 0);
|
|
145
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zb2xlL3NvbGUtaW52b2ljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFdBQVcsSUFBSSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNwRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFFaEcsTUFBTSxPQUFPLFdBQVksU0FBUSxlQUFlO0lBQWhEOztRQTJCRSxXQUFNLEdBQTRCLHVCQUF1QixDQUFDLEtBQUssQ0FBQztRQUNoRSxZQUFPLEdBQTJCLHNCQUFzQixDQUFDLE1BQU0sQ0FBQztJQTBIbEUsQ0FBQztJQXhIQzs7T0FFRztJQUNILElBQUksZUFBZTtRQUNqQixPQUFPLElBQUkseUJBQXlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNILElBQVksS0FBSztRQUNm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QUFHLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxXQUFXLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQzNDLENBQUM7O0FBcEpNLHlCQUFhLEdBQUcsQ0FBQyxDQUFDO0FBR3pCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzs2Q0FDRjtBQUdmO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzsyQ0FDSjtBQUdiO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQzs2Q0FDRjtBQUd2QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7MENBQ0g7QUFHekI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzBDQUNMO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDOzZDQUNGO0FBRzlCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQztnREFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNvbGVJbnZvaWNlIGFzIFNvbGVJbnZvaWNlQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zb2xlL3NvbGUtaW52b2ljZSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcbmltcG9ydCB7IFNvbGVCdXNpbmVzcyB9IGZyb20gJy4vc29sZS1idXNpbmVzcyc7XG5pbXBvcnQgeyBTb2xlSW52b2ljZUl0ZW0gfSBmcm9tICcuL3NvbGUtaW52b2ljZS1pdGVtJztcbmltcG9ydCB7IFNvbGVDb250YWN0IH0gZnJvbSAnLi9zb2xlLWNvbnRhY3QnO1xuaW1wb3J0IHsgU29sZUludm9pY2VUZW1wbGF0ZSB9IGZyb20gJy4vc29sZS1pbnZvaWNlLXRlbXBsYXRlJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBTb2xlSW52b2ljZVN0YXR1c2VzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3NvbGUtaW52b2ljZS1zdGF0dXNlcy5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vYmFuay9iYW5rLWFjY291bnQnO1xuaW1wb3J0IHsgU29sZUludm9pY2VUYXhUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3NvbGUtaW52b2ljZS10YXgtdHlwZS5lbnVtJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlSXRlbUNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy9zb2xlL3NvbGUtaW52b2ljZS1pdGVtLmNvbGxlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgU29sZUludm9pY2UgZXh0ZW5kcyBTb2xlSW52b2ljZUJhc2Uge1xuICBzdGF0aWMgTlVNQkVSX0xFTkdUSCA9IDQ7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZUZyb206IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgZGF0ZVRvOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFVzZXIpXG4gIHVzZXI6IFVzZXI7XG5cbiAgQFR5cGUoKCkgPT4gU29sZUJ1c2luZXNzKVxuICBidXNpbmVzczogU29sZUJ1c2luZXNzO1xuXG4gIEBUeXBlKCgpID0+IFNvbGVJbnZvaWNlSXRlbSlcbiAgaXRlbXM6IFNvbGVJbnZvaWNlSXRlbVtdO1xuXG4gIEBUeXBlKCgpID0+IFNvbGVDb250YWN0KVxuICBwYXllcjogU29sZUNvbnRhY3Q7XG5cbiAgQFR5cGUoKCkgPT4gU29sZUludm9pY2VUZW1wbGF0ZSlcbiAgdGVtcGxhdGU6IFNvbGVJbnZvaWNlVGVtcGxhdGU7XG5cbiAgQFR5cGUoKCkgPT4gQmFua0FjY291bnQpXG4gIGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudDtcblxuICBzdGF0dXM6IFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtID0gU29sZUludm9pY2VTdGF0dXNlc0VudW0uRFJBRlQ7XG4gIHRheFR5cGU6IFNvbGVJbnZvaWNlVGF4VHlwZUVudW0gPSBTb2xlSW52b2ljZVRheFR5cGVFbnVtLk5PX1RBWDtcblxuICAvKipcbiAgICogR2V0IGl0ZW1zIGFycmF5IGFzIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldCBpdGVtc0NvbGxlY3Rpb24oKTogU29sZUludm9pY2VJdGVtQ29sbGVjdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTb2xlSW52b2ljZUl0ZW1Db2xsZWN0aW9uKHRoaXMuaXRlbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRvdGFsIHByaWNlIG9mIGFsbCBpdGVtc1xuICAgKi9cbiAgcHJpdmF0ZSBnZXQgcHJpY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtc0NvbGxlY3Rpb24uc3VtQnkoJ3RvdGFsUHJpY2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb3RhbCBpbnZvaWNlIHByaWNlIHdpdGhvdXQgR1NUXG4gICAqL1xuICBnZXQgbmV0UHJpY2UoKTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy5pc1RheEluY2x1c2l2ZSgpKSB7XG4gICAgICByZXR1cm4gdGhpcy5wcmljZSAtIHRoaXMuR1NUQW1vdW50O1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLnByaWNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFRvdGFsIGZpbmFsIHByaWNlIChuZXQgKyBHU1QpXG4gICAqL1xuICBnZXQgZ3Jvc3NQcmljZSgpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLmlzVGF4RXhjbHVzaXZlKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnByaWNlICsgdGhpcy5HU1RBbW91bnQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMucHJpY2U7XG4gIH1cblxuICAvKipcbiAgICogVG90YWwgR1NUIGFtb3VudFxuICAgKi9cbiAgZ2V0IEdTVEFtb3VudCgpOiBudW1iZXIge1xuICAgIHN3aXRjaCAodGhpcy50YXhUeXBlKSB7XG4gICAgICBjYXNlIFNvbGVJbnZvaWNlVGF4VHlwZUVudW0uVEFYX0lOQ0xVU0lWRTpcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5jbHVzaXZlR1NUQW1vdW50O1xuICAgICAgY2FzZSBTb2xlSW52b2ljZVRheFR5cGVFbnVtLlRBWF9FWENMVVNJVkU6XG4gICAgICAgIHJldHVybiB0aGlzLmV4Y2x1c2l2ZUdTVEFtb3VudDtcbiAgICAgIGNhc2UgU29sZUludm9pY2VUYXhUeXBlRW51bS5OT19UQVg6XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIHRheCBpbmNsdXNpdmUsIEdTVCBhbW91bnQgaXMgaW5jbHVkZWQgdG8gdG90YWwgcHJpY2VcbiAgICovXG4gIHByaXZhdGUgZ2V0IGluY2x1c2l2ZUdTVEFtb3VudCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGdzdFByaWNlID0gdGhpcy5pdGVtc0NvbGxlY3Rpb24uZ3N0UHJpY2U7XG5cbiAgICByZXR1cm4gKyhnc3RQcmljZSAtIChnc3RQcmljZSAvICgxICsgU29sZUludm9pY2VJdGVtLkdTVFJhdGlvKSkpLnRvRml4ZWQoMik7XG4gIH1cblxuICAvKipcbiAgICogV2hlbiB0YXggZXhjbHVzaXZlLCBHU1QgYW1vdW50IHNob3VsZCBiZSBhZGRlZCBhZGRpdGlvbmFsbHkgdG8gdG90YWwgcHJpY2VcbiAgICovXG4gIHByaXZhdGUgZ2V0IGV4Y2x1c2l2ZUdTVEFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiArKHRoaXMuaXRlbXNDb2xsZWN0aW9uLmdzdFByaWNlICogU29sZUludm9pY2VJdGVtLkdTVFJhdGlvKS50b0ZpeGVkKDIpXG4gIH1cblxuICBpc0RyYWZ0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gU29sZUludm9pY2VTdGF0dXNlc0VudW0uRFJBRlQ7XG4gIH1cblxuICBpc0NhbmNlbGxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtLkNBTkNFTEVEO1xuICB9XG5cbiAgaXNQZW5kaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gU29sZUludm9pY2VTdGF0dXNlc0VudW0uUEVORElORztcbiAgfVxuXG4gIGlzUGFpZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtLlBBSUQ7XG4gIH1cblxuICBpc092ZXJkdWUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNQZW5kaW5nKCkgJiYgdGhpcy5kYXRlVG8gPCBuZXcgRGF0ZSgpO1xuICB9XG5cbiAgaXNVbnBhaWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNQZW5kaW5nKCkgJiYgdGhpcy5kYXRlVG8gPj0gbmV3IERhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHU1QgaXMgbm90IGF2YWlsYWJsZSBmb3IgaW52b2ljZXMgd2l0aG91dCB0YXhlc1xuICAgKi9cbiAgaXNOb1RheCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50YXhUeXBlID09PSBTb2xlSW52b2ljZVRheFR5cGVFbnVtLk5PX1RBWDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHU1QgYW1vdW50IGlzIG5vdCBpbmNsdWRlZCBpbiBpdGVtcyBwcmljZXMgZm9yIGludm9pY2VzIHdpdGggdGF4IGV4Y2x1c2l2ZSxcbiAgICogd2Ugc2hvdWxkIGFkZCBHU1QgYW1vdW50IGFkZGl0aW9uYWx5IHRvIHN1YnRvdGFsIHByaWNlIHRvIGdldCB0b3RhbCBwcmljZVxuICAgKi9cbiAgaXNUYXhFeGNsdXNpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGF4VHlwZSA9PT0gU29sZUludm9pY2VUYXhUeXBlRW51bS5UQVhfRVhDTFVTSVZFO1xuICB9XG5cbiAgLyoqXG4gICAqIEdTVCBhbW91bnQgYWxyZWFkeSBpbmNsdWRlZCBpbiBpdGVtcyBwcmljZXMgZm9yIGludm9pY2VzIHdpdGggdGF4IGluY2x1c2l2ZSxcbiAgICogd2Ugc2hvdWxkIHN1YnRyYWN0IEdTVCBhbW91bnQgZnJvbSB0b3RhbCBwcmljZSB0byBnZXQgc3VidG90YWwgcHJpY2VcbiAgICovXG4gIGlzVGF4SW5jbHVzaXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnRheFR5cGUgPT09IFNvbGVJbnZvaWNlVGF4VHlwZUVudW0uVEFYX0lOQ0xVU0lWRTtcbiAgfVxuXG4gIGdldE51bWJlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiBTdHJpbmcodGhpcy5udW1iZXIpLnBhZFN0YXJ0KFNvbGVJbnZvaWNlLk5VTUJFUl9MRU5HVEgsICcwJyk7XG4gIH1cblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgaW52b2ljZS0ke3RoaXMuZ2V0TnVtYmVyKCl9LnBkZmA7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -73,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
73
73
|
providedIn: 'root'
|
|
74
74
|
}]
|
|
75
75
|
}] });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9kb2N1bWVudC9kb2N1bWVudC1mb2xkZXIvZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXRELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7QUFFN0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBK0M7SUFIMUY7O1FBSUUsUUFBRyxHQUFXLFNBQVMsQ0FBQztRQUN4QixlQUFVLEdBQTBCLGNBQWMsQ0FBQztLQWlFcEQ7SUEvREM7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFVLEVBQUUsTUFBc0I7UUFDNUMsNENBQTRDO1FBQzVDLE1BQU0sZ0JBQWdCLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUNsRCxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXRDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssWUFBWSxNQUFNLENBQUMsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQyxJ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QUFDLENBQUM7UUFDckMsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7O21IQWxFVSxxQkFBcUI7dUhBQXJCLHFCQUFxQixjQUZwQixNQUFNOzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb2N1bWVudEZvbGRlciBhcyBEb2N1bWVudEZvbGRlckJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvZG9jdW1lbnQvZG9jdW1lbnQtZm9sZGVyJztcbmltcG9ydCB7IERvY3VtZW50IGFzIERvY3VtZW50QmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy9kb2N1bWVudC9kb2N1bWVudCc7XG5pbXBvcnQgeyBEb2N1bWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscy9kb2N1bWVudC9kb2N1bWVudCc7XG5pbXBvcnQgeyByZXBsYWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgRG9jdW1lbnRGb2xkZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMvZG9jdW1lbnQvZG9jdW1lbnQtZm9sZGVyJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGhhbmRsZSBkb2N1bWVudC1mb2xkZXJzIGFuZCBkZXBlbmRpbmcgZG9jdW1lbnRzIGxvZ2ljXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50Rm9sZGVyU2VydmljZSBleHRlbmRzIFJlc3RTZXJ2aWNlPERvY3VtZW50Rm9sZGVyQmFzZSwgRG9jdW1lbnRGb2xkZXI+IHtcbiAgdXJsOiBzdHJpbmcgPSAnZm9sZGVycyc7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBEb2N1bWVudEZvbGRlciA9IERvY3VtZW50Rm9sZGVyO1xuXG4gIC8qKlxuICAgKiBBZGQgbmV3IGRvY3VtZW50IHRvIHRoZSBmb2xkZXJcbiAgICogQHBhcmFtIGZpbGUgdG8gYmUgdXBsb2FkZWQgdG8gdGhlIGZvbGRlclxuICAgKiBAcGFyYW0gZm9sZGVyIGZvciBkb2N1bWVudFxuICAgKi9cbiAgYWRkRG9jdW1lbnQoZmlsZTogRmlsZSwgZm9sZGVyOiBEb2N1bWVudEZvbGRlcik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIC8vIGNyZWF0ZSBmb3JtRGF0YSBvYmplY3Qgd2l0aCBwcm92aWRlZCBmaWxlXG4gICAgY29uc3QgZm9ybURhdGFEb2N1bWVudDogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBmb3JtRGF0YURvY3VtZW50LmFwcGVuZCgnZmlsZScsIGZpbGUpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2ZvbGRlcnMvJHtmb2xkZXIuaWR9L2RvY3VtZW50c2AsIGZvcm1EYXRhRG9jdW1lbnQpLnBpcGUoXG4gICAgICBtYXAoKHJlc3BvbnNlOiBEb2N1bWVudEJhc2UpID0+IHtcbiAgICAgICAgY29uc3QgdXBkYXRlZEZvbGRlcjogRG9jdW1lbnRGb2xkZXIgPSBPYmplY3QuYXNzaWduKHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwge30pLCBmb2xkZXIpO1xuICAgICAgICB1cGRhdGVkRm9sZGVyLmRvY3VtZW50cy5wdXNoKHBsYWluVG9DbGFzcyhEb2N1bWVudCwgcmVzcG9uc2UpKTtcblxuICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIHBsYWluVG9DbGFzcyhEb2N1bWVudEZvbGRlciwgdXBkYXRlZEZvbGRlcikpO1xuICAgICAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEVkaXQgZm9sZGVyIGRvY3VtZW50IGJ5IG1vdmluZyBpdCBmcm9tIG9uZSBmb2xkZXIgdG8gYW5vdGhlclxuICAgKiBAcGFyYW0gZWRpdGVkRG9jdW1lbnRcbiAgICogQHBhcmFtIHNlbGVjdGVkRm9sZGVyIHRvIG1vdmUgdGhlIGRvY3VtZW50IHRvXG4gICAqIEBwYXJhbSBvbGRGb2xkZXJJZDogaWQgb2Ygb2xkIGZvbGRlciBmcm9tIHdoaWNoIG5lZWQgdG8gcmVtb3ZlIHRoZSBkb2N1bWVudFxuICAgKi9cbiAgdXBkYXRlRG9jdW1lbnQoZWRpdGVkRG9jdW1lbnQ6IERvY3VtZW50LCBzZWxlY3RlZEZvbGRlcjogRG9jdW1lbnRGb2xkZXIsIG9sZEZvbGRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9mb2xkZXJzLyR7c2VsZWN0ZWRGb2xkZXIuaWR9L2RvY3VtZW50cy8ke2VkaXRlZERvY3VtZW50LmlkfWAsIGVkaXRlZERvY3VtZW50KS5waXBlKFxuICAgICAgbWFwKChyZXNwb25zZTogRG9jdW1lbnRCYXNlKSA9PiB7XG4gICAgICAgIGNvbnN0IG9sZEZvbGRlcjogRG9jdW1lbnRGb2xkZXIgPSB0aGlzLmNhY2hlLmZpbmQoKGZvbGRlcjogRG9jdW1lbnRGb2xkZXIpID0+IGZvbGRlci5pZCA9PT0gb2xkRm9sZGVySWQpO1xuICAgICAgICAvLyBSZW1vdmUgZG9jdW1lbnQgZnJvbSBvbGQgZm9sZGVyXG4gICAgICAgIG9sZEZvbGRlci5kb2N1bWVudHMgPSBvbGRGb2xkZXIuZG9jdW1lbnRzLmZpbHRlcigoZGVsZXRlZERvY3VtZW50OiBEb2N1bWVudCkgPT4gZGVsZXRlZERvY3VtZW50LmlkICE9PSByZXNwb25zZS5pZCk7XG5cbiAgICAgICAgLy8gdXBkYXRlIG9sZCBmb2xkZXIgYW5kIHJlcGxhY2UgaXQgaW4gY2FjaGVcbiAgICAgICAgcmVzcG9uc2UuZm9sZGVyID0gcGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCB7aWQ6IHNlbGVjdGVkRm9sZGVyLmlkLCBuYW1lOiBzZWxlY3RlZEZvbGRlci5uYW1lfSk7XG4gICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgcGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCBvbGRGb2xkZXIpKTtcblxuICAgICAgICAvLyB1cGRhdGUgbmV3IGRvY3VtZW50IGZvbGRlciBhbmQgcmVwbGFjZSBpdCBpbiBjYWNoZVxuICAgICAgICBzZWxlY3RlZEZvbGRlci5kb2N1bWVudHMucHVzaChwbGFpblRvQ2xhc3MoRG9jdW1lbnQsIHJlc3BvbnNlKSk7XG4gICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgcGxhaW5Ub0NsYXNzKERvY3VtZW50Rm9sZGVyLCBzZWxlY3RlZEZvbGRlcikpO1xuXG4gICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIGRvY3VtZW50IGZyb20gZm9sZGVyXG4gICAqIEBwYXJhbSBkb2N1bWVudCB0byByZW1vdmVcbiAgICogQHBhcmFtIGZvbGRlciBmcm9tIHdoaWNoIGRvY3VtZW50IHNob3VsZCBiZSByZW1vdmVkXG4gICAqL1xuICBkZWxldGVEb2N1bWVudChkb2N1bWVudDogRG9jdW1lbnQsIGZvbGRlcjogRG9jdW1lbnRGb2xkZXIpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS9mb2xkZXJzLyR7Zm9sZGVyLmlkfS9kb2N1bWVudHMvJHtkb2N1bWVudC5pZH1gKS5waXBlKFxuICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgZm9sZGVyLmRvY3VtZW50cyA9IGZvbGRlci5kb2N1bWVudHNcbiAgICAgICAgICAuZmlsdGVyKChkZWxldGVkRG9jdW1lbnQ6IERvY3VtZW50KSA9PiBkZWxldGVkRG9jdW1lbnQuaWQgIT09IGRvY3VtZW50LmlkKTtcbiAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCBwbGFpblRvQ2xhc3MoRG9jdW1lbnRGb2xkZXIsIGZvbGRlcikpO1xuXG4gICAgICAgIHRoaXMuY2FjaGVTdWJqZWN0Lm5leHQodGhpcy5jYWNoZSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Document } from '../../../models';
|
|
3
|
+
import { RestService } from '../rest/rest.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class DocumentService extends RestService {
|
|
6
|
+
constructor() {
|
|
7
|
+
super(...arguments);
|
|
8
|
+
this.url = 'documents';
|
|
9
|
+
this.modelClass = Document;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
DocumentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
13
|
+
DocumentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentService, providedIn: 'root' });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentService, decorators: [{
|
|
15
|
+
type: Injectable,
|
|
16
|
+
args: [{
|
|
17
|
+
providedIn: 'root'
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9odHRwL2RvY3VtZW50L2RvY3VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUtuRCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxXQUFtQztJQUh4RTs7UUFJRSxRQUFHLEdBQVcsV0FBVyxDQUFDO1FBQzFCLGVBQVUsR0FBb0IsUUFBUSxDQUFDO0tBQ3hDOzs2R0FIWSxlQUFlO2lIQUFmLGVBQWUsY0FGZCxNQUFNOzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRG9jdW1lbnQgYXMgRG9jdW1lbnRCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZGIvTW9kZWxzL2RvY3VtZW50L2RvY3VtZW50JztcbmltcG9ydCB7IERvY3VtZW50IH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEb2N1bWVudFNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxEb2N1bWVudEJhc2UsIERvY3VtZW50PiB7XG4gIHVybDogc3RyaW5nID0gJ2RvY3VtZW50cyc7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBEb2N1bWVudCA9IERvY3VtZW50O1xufVxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './document.service';
|
|
2
|
+
export * from './document-folder/document-folder.service';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9kb2N1bWVudC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2RvY3VtZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9kb2N1bWVudC1mb2xkZXIvZG9jdW1lbnQtZm9sZGVyLnNlcnZpY2UnO1xuIl19
|
|
@@ -97,6 +97,7 @@ export class IncomeSourceService extends RestService {
|
|
|
97
97
|
*/
|
|
98
98
|
listenSoleBusinessCreated() {
|
|
99
99
|
this.eventDispatcherService.on(AppEventTypeEnum.SOLE_BUSINESS_CREATED).subscribe(() => {
|
|
100
|
+
// @TODO Alex/Vik (TT-1777): we clear cache a lot, a better and easier way required, add todo and task to refactor
|
|
100
101
|
this.resetCache();
|
|
101
102
|
});
|
|
102
103
|
}
|
|
@@ -109,4 +110,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
109
110
|
providedIn: 'root'
|
|
110
111
|
}]
|
|
111
112
|
}] });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFHN0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsV0FBMkM7SUFIcEY7O1FBSUUsUUFBRyxHQUFXLGdCQUFnQixDQUFDO1FBQy9CLGVBQVUsR0FBRyxZQUFZLENBQUM7UUFFMUIsNEJBQXVCLEdBQXNDLElBQUksYUFBYSxDQUFxQixDQUFDLENBQUMsQ0FBQztLQXlHdkc7SUF2R0MsWUFBWTtRQUNWLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7O09BR0c7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dXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSBhcyBJbmNvbWVTb3VyY2VCYXNlIH0gZnJvbSAnLi4vLi4vLi4vZGIvTW9kZWxzL2luY29tZVNvdXJjZS9pbmNvbWUtc291cmNlJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSW5jb21lU291cmNlVHlwZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UtdHlwZSc7XG5pbXBvcnQgeyBTYWxhcnlGb3JlY2FzdCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL3NhbGFyeS1mb3JlY2FzdCc7XG5pbXBvcnQgeyByZXBsYWNlIH0gZnJvbSAnLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vZGIvRW51bXMvaW5jb21lLXNvdXJjZS10eXBlLmVudW0nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgSW5jb21lU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBBcHBFdmVudCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHsgQXBwRXZlbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9ldmVudC1saXN0ZW5lci5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgdG8gd29yayB3aXRoIGluY29tZSBzb3VyY2VzXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEluY29tZVNvdXJjZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxJbmNvbWVTb3VyY2VCYXNlLCBJbmNvbWVTb3VyY2U+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICB1cmw6IHN0cmluZyA9ICdpbmNvbWUtc291cmNlcyc7XG4gIG1vZGVsQ2xhc3MgPSBJbmNvbWVTb3VyY2U7XG4gIGluY29tZVNvdXJjZVR5cGVzOiBJbmNvbWVTb3VyY2VUeXBlW107XG4gIGluY29tZVNvdXJjZVR5cGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PEluY29tZVNvdXJjZVR5cGVbXT4gPSBuZXcgUmVwbGF5U3ViamVjdDxJbmNvbWVTb3VyY2VUeXBlW10+KDEpO1xuXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblNvbGVCdXNpbmVzc0NyZWF0ZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgaW5jb21lIHNvdXJjZXMgdGF4IGNhbGN1bGF0aW9uXG4gICAqIEBwYXJhbSBzYWxhcnlGb3JlY2FzdCBmb3Igd2hpY2ggdGF4IHNob3VsZCBiZSBjYWxjdWxhdGVkXG4gICAqL1xuICBnZXRUYXhDYWxjdWxhdGlvbihzYWxhcnlGb3JlY2FzdDogU2FsYXJ5Rm9yZWNhc3QpOiBPYnNlcnZhYmxlPFNhbGFyeUZvcmVjYXN0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9L3RheC1jYWxjdWxhdGlvbmAsIHNhbGFyeUZvcmVjYXN0KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgIHJldHVybiBwbGFpblRvQ2xhc3MoU2FsYXJ5Rm9yZWNhc3QsIHJlc3BvbnNlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGJhdGNoIG9mIGluY29tZSBzb3VyY2VzXG4gICAqIEBwYXJhbSBpbmNvbWVTb3VyY2VzIHRvIGFkZFxuICAgKi9cbiAgYWRkQmF0Y2goaW5jb21lU291cmNlczogSW5jb21lU291cmNlW10pOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgaW5jb21lU291cmNlcylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGFkZGVkSW5jb21lU291cmNlczogSW5jb21lU291cmNlQmFzZVtdKSA9PiB7XG4gICAgICAgICAgLy8gYXNzaWduIHJlc3BvbmQgaW5jb21lIHNvdXJjZXMgdG8gcHJvdmlkZWQgaW5jb21lIHNvdXJjZXNcbiAgICAgICAgICBjb25zdCBhc3NpZ25lZEluY29tZVNvdXJjZXM6IEluY29tZVNvdXJjZVtdID0gYWRkZWRJbmNvbWVTb3VyY2VzXG4gICAgICAgICAgICAubWFwKChpbmNvbWVTb3VyY2U6IEluY29tZVNvdXJjZSwgaW5kZXg6IG51bWJlcikgPT4gT2JqZWN0LmFzc2lnbihwbGFpblRvQ2xhc3MoSW5jb21lU291cmNlLCB7fSksIGluY29tZVNvdXJjZSwgaW5jb21lU291cmNlc1tpbmRleF0pKTtcblxuICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5JTkNPTUVfU09VUkNFU19DUkVBVEVELCBhc3NpZ25lZEluY29tZVNvdXJjZXMpKTtcblxuICAgICAgICAgIHRoaXMuY2FjaGUucHVzaCguLi5hc3NpZ25lZEluY29tZVNvdXJjZXMpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgICByZXR1cm4gYXNzaWduZWRJbmNvbWVTb3VyY2VzO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgYmF0Y2ggb2YgaW5jb21lIHNvdXJjZXNcbiAgICovXG5cbiAgdXBkYXRlQmF0Y2goaW5jb21lU291cmNlczogSW5jb21lU291cmNlW10sIHF1ZXJ5UGFyYW1zOiBvYmplY3QgPSB7fSk6IE9ic2VydmFibGU8SW5jb21lU291cmNlW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGluY29tZVNvdXJjZXMsIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXBkYXRlZEl0ZW1zOiBJbmNvbWVTb3VyY2VbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnN0YW5jZXM6IEluY29tZVNvdXJjZVtdID0gdXBkYXRlZEl0ZW1zLm1hcChcbiAgICAgICAgICAgIChpdGVtOiBJbmNvbWVTb3VyY2UpID0+IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh0aGlzLm1vZGVsQ2xhc3MsIGl0ZW0pXG4gICAgICAgICAgKTtcbiAgICAgICAgICB1cGRhdGVkSW5zdGFuY2VzLmZvckVhY2goKGluc3RhbmNlOiBJbmNvbWVTb3VyY2UpID0+IHtcbiAgICAgICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgaW5zdGFuY2UpO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKGluY29tZVNvdXJjZXNbMF0uZm9yZWNhc3RzLmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLklOQ09NRV9TT1VSQ0VTX1VQREFURUQsIGluY29tZVNvdXJjZXMpKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgcmV0dXJuIHVwZGF0ZWRJbnN0YW5jZXM7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBpbmNvbWUgc291cmNlcyBieSBwcm92aWRlZCB0eXBlc1xuICAgKiBAcGFyYW0gdHlwZXNcbiAgICovXG4gIGdldEJ5VHlwZXModHlwZXM6IEluY29tZVNvdXJjZVR5cGVFbnVtW10pOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGluY29tZVNvdXJjZXM6IEluY29tZVNvdXJjZVtdKSA9PiBpbmNvbWVTb3VyY2VzXG4gICAgICAgICAgLmZpbHRlcigoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UpID0+IHR5cGVzLmluY2x1ZGVzKGluY29tZVNvdXJjZS50eXBlKSkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgb3RoZXIgaW5jb21lcyB0eXBlc1xuICAgKi9cbiAgZ2V0SW5jb21lU291cmNlVHlwZXMoKTogT2JzZXJ2YWJsZTxJbmNvbWVTb3VyY2VUeXBlW10+IHtcbiAgICBpZiAoIXRoaXMuaW5jb21lU291cmNlVHlwZXMpIHtcbiAgICAgIHRoaXMuaW5jb21lU291cmNlVHlwZXMgPSBbXTtcbiAgICAgIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vaW5jb21lLXNvdXJjZS10eXBlc2ApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgocmVzcG9uc2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLm1hcCgoaXRlbTogYW55KSA9PiBwbGFpblRvQ2xhc3MoSW5jb21lU291cmNlVHlwZSwgaXRlbSkpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgob3RoZXJJbmNvbWVzVHlwZXM6IEluY29tZVNvdXJjZVR5cGVbXSkgPT4ge1xuICAgICAgICAgIHRoaXMuaW5jb21lU291cmNlVHlwZXMgPSBvdGhlckluY29tZXNUeXBlcztcbiAgICAgICAgICB0aGlzLmluY29tZVNvdXJjZVR5cGVTdWJqZWN0Lm5leHQodGhpcy5pbmNvbWVTb3VyY2VUeXBlcyk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmluY29tZVNvdXJjZVR5cGVTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNvbGUgYnVzaW5lc3NlcyBjcmVhdGUgdG9nZXRoZXIgd2l0aCBpbmNvbWUgc291cmNlXG4gICAqL1xuICBwcml2YXRlIGxpc3RlblNvbGVCdXNpbmVzc0NyZWF0ZWQoKSB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uU09MRV9CVVNJTkVTU19DUkVBVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
113
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5jb21lLXNvdXJjZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDcEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFHN0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsV0FBMkM7SUFIcEY7O1FBSUUsUUFBRyxHQUFXLGdCQUFnQixDQUFDO1FBQy9CLGVBQVUsR0FBRyxZQUFZLENBQUM7UUFFMUIsNEJBQXVCLEdBQXNDLElBQUksYUFBYSxDQUFxQixDQUFDLENBQUMsQ0FBQztLQTBHdkc7SUF4R0MsWUFBWTtRQUNWLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRDs7O09BR0c7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TTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2UgYXMgSW5jb21lU291cmNlQmFzZSB9IGZyb20gJy4uLy4uLy4uL2RiL01vZGVscy9pbmNvbWVTb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4uL3Jlc3QvcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IEluY29tZVNvdXJjZVR5cGUgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9pbmNvbWUtc291cmNlLXR5cGUnO1xuaW1wb3J0IHsgU2FsYXJ5Rm9yZWNhc3QgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvaW5jb21lLXNvdXJjZS9zYWxhcnktZm9yZWNhc3QnO1xuaW1wb3J0IHsgcmVwbGFjZSB9IGZyb20gJy4uLy4uLy4uL2Z1bmN0aW9ucy9hcnJheSc7XG5pbXBvcnQgeyBJbmNvbWVTb3VyY2VUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uL2RiL0VudW1zL2luY29tZS1zb3VyY2UtdHlwZS5lbnVtJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9pbmNvbWUtc291cmNlL2luY29tZS1zb3VyY2UnO1xuaW1wb3J0IHsgQXBwRXZlbnQgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50JztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIHdvcmsgd2l0aCBpbmNvbWUgc291cmNlc1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBJbmNvbWVTb3VyY2VTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8SW5jb21lU291cmNlQmFzZSwgSW5jb21lU291cmNlPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgdXJsOiBzdHJpbmcgPSAnaW5jb21lLXNvdXJjZXMnO1xuICBtb2RlbENsYXNzID0gSW5jb21lU291cmNlO1xuICBpbmNvbWVTb3VyY2VUeXBlczogSW5jb21lU291cmNlVHlwZVtdO1xuICBpbmNvbWVTb3VyY2VUeXBlU3ViamVjdDogUmVwbGF5U3ViamVjdDxJbmNvbWVTb3VyY2VUeXBlW10+ID0gbmV3IFJlcGxheVN1YmplY3Q8SW5jb21lU291cmNlVHlwZVtdPigxKTtcblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5Tb2xlQnVzaW5lc3NDcmVhdGVkKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluY29tZSBzb3VyY2VzIHRheCBjYWxjdWxhdGlvblxuICAgKiBAcGFyYW0gc2FsYXJ5Rm9yZWNhc3QgZm9yIHdoaWNoIHRheCBzaG91bGQgYmUgY2FsY3VsYXRlZFxuICAgKi9cbiAgZ2V0VGF4Q2FsY3VsYXRpb24oc2FsYXJ5Rm9yZWNhc3Q6IFNhbGFyeUZvcmVjYXN0KTogT2JzZXJ2YWJsZTxTYWxhcnlGb3JlY2FzdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS90YXgtY2FsY3VsYXRpb25gLCBzYWxhcnlGb3JlY2FzdClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKFNhbGFyeUZvcmVjYXN0LCByZXNwb25zZSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZCBiYXRjaCBvZiBpbmNvbWUgc291cmNlc1xuICAgKiBAcGFyYW0gaW5jb21lU291cmNlcyB0byBhZGRcbiAgICovXG4gIGFkZEJhdGNoKGluY29tZVNvdXJjZXM6IEluY29tZVNvdXJjZVtdKTogT2JzZXJ2YWJsZTxJbmNvbWVTb3VyY2VbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGluY29tZVNvdXJjZXMpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChhZGRlZEluY29tZVNvdXJjZXM6IEluY29tZVNvdXJjZUJhc2VbXSkgPT4ge1xuICAgICAgICAgIC8vIGFzc2lnbiByZXNwb25kIGluY29tZSBzb3VyY2VzIHRvIHByb3ZpZGVkIGluY29tZSBzb3VyY2VzXG4gICAgICAgICAgY29uc3QgYXNzaWduZWRJbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSA9IGFkZGVkSW5jb21lU291cmNlc1xuICAgICAgICAgICAgLm1hcCgoaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2UsIGluZGV4OiBudW1iZXIpID0+IE9iamVjdC5hc3NpZ24ocGxhaW5Ub0NsYXNzKEluY29tZVNvdXJjZSwge30pLCBpbmNvbWVTb3VyY2UsIGluY29tZVNvdXJjZXNbaW5kZXhdKSk7XG5cbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uSU5DT01FX1NPVVJDRVNfQ1JFQVRFRCwgYXNzaWduZWRJbmNvbWVTb3VyY2VzKSk7XG5cbiAgICAgICAgICB0aGlzLmNhY2hlLnB1c2goLi4uYXNzaWduZWRJbmNvbWVTb3VyY2VzKTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgcmV0dXJuIGFzc2lnbmVkSW5jb21lU291cmNlcztcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGJhdGNoIG9mIGluY29tZSBzb3VyY2VzXG4gICAqL1xuXG4gIHVwZGF0ZUJhdGNoKGluY29tZVNvdXJjZXM6IEluY29tZVNvdXJjZVtdLCBxdWVyeVBhcmFtczogb2JqZWN0ID0ge30pOiBPYnNlcnZhYmxlPEluY29tZVNvdXJjZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gLCBpbmNvbWVTb3VyY2VzLCBxdWVyeVBhcmFtcylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHVwZGF0ZWRJdGVtczogSW5jb21lU291cmNlW10pID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkSW5zdGFuY2VzOiBJbmNvbWVTb3VyY2VbXSA9IHVwZGF0ZWRJdGVtcy5tYXAoXG4gICAgICAgICAgICAoaXRlbTogSW5jb21lU291cmNlKSA9PiB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCBpdGVtKVxuICAgICAgICAgICk7XG4gICAgICAgICAgdXBkYXRlZEluc3RhbmNlcy5mb3JFYWNoKChpbnN0YW5jZTogSW5jb21lU291cmNlKSA9PiB7XG4gICAgICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIGluc3RhbmNlKTtcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGlmIChpbmNvbWVTb3VyY2VzWzBdLmZvcmVjYXN0cy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5kaXNwYXRjaChuZXcgQXBwRXZlbnQoQXBwRXZlbnRUeXBlRW51bS5JTkNPTUVfU09VUkNFU19VUERBVEVELCBpbmNvbWVTb3VyY2VzKSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW5zdGFuY2VzO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgaW5jb21lIHNvdXJjZXMgYnkgcHJvdmlkZWQgdHlwZXNcbiAgICogQHBhcmFtIHR5cGVzXG4gICAqL1xuICBnZXRCeVR5cGVzKHR5cGVzOiBJbmNvbWVTb3VyY2VUeXBlRW51bVtdKTogT2JzZXJ2YWJsZTxJbmNvbWVTb3VyY2VbXT4ge1xuICAgIHJldHVybiB0aGlzLmdldCgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChpbmNvbWVTb3VyY2VzOiBJbmNvbWVTb3VyY2VbXSkgPT4gaW5jb21lU291cmNlc1xuICAgICAgICAgIC5maWx0ZXIoKGluY29tZVNvdXJjZTogSW5jb21lU291cmNlKSA9PiB0eXBlcy5pbmNsdWRlcyhpbmNvbWVTb3VyY2UudHlwZSkpKSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG90aGVyIGluY29tZXMgdHlwZXNcbiAgICovXG4gIGdldEluY29tZVNvdXJjZVR5cGVzKCk6IE9ic2VydmFibGU8SW5jb21lU291cmNlVHlwZVtdPiB7XG4gICAgaWYgKCF0aGlzLmluY29tZVNvdXJjZVR5cGVzKSB7XG4gICAgICB0aGlzLmluY29tZVNvdXJjZVR5cGVzID0gW107XG4gICAgICB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2luY29tZS1zb3VyY2UtdHlwZXNgKVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKHJlc3BvbnNlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5tYXAoKGl0ZW06IGFueSkgPT4gcGxhaW5Ub0NsYXNzKEluY29tZVNvdXJjZVR5cGUsIGl0ZW0pKTtcbiAgICAgICAgICB9KVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKG90aGVySW5jb21lc1R5cGVzOiBJbmNvbWVTb3VyY2VUeXBlW10pID0+IHtcbiAgICAgICAgICB0aGlzLmluY29tZVNvdXJjZVR5cGVzID0gb3RoZXJJbmNvbWVzVHlwZXM7XG4gICAgICAgICAgdGhpcy5pbmNvbWVTb3VyY2VUeXBlU3ViamVjdC5uZXh0KHRoaXMuaW5jb21lU291cmNlVHlwZXMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5pbmNvbWVTb3VyY2VUeXBlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTb2xlIGJ1c2luZXNzZXMgY3JlYXRlIHRvZ2V0aGVyIHdpdGggaW5jb21lIHNvdXJjZVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Tb2xlQnVzaW5lc3NDcmVhdGVkKCkge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLlNPTEVfQlVTSU5FU1NfQ1JFQVRFRCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIC8vIEBUT0RPIEFsZXgvVmlrIChUVC0xNzc3KTogd2UgY2xlYXIgY2FjaGUgYSBsb3QsIGEgYmV0dGVyIGFuZCBlYXNpZXIgd2F5IHJlcXVpcmVkLCBhZGQgdG9kbyBhbmQgdGFzayB0byByZWZhY3RvclxuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './sole';
|
|
2
2
|
export * from './vehicle';
|
|
3
3
|
export * from './user';
|
|
4
|
-
|
|
4
|
+
export * from './document';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc29sZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZlaGljbGUnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VyJztcbmV4cG9ydCAqIGZyb20gJy4vZG9jdW1lbnQnO1xuIl19
|
|
@@ -53,10 +53,9 @@ export class RestService {
|
|
|
53
53
|
}
|
|
54
54
|
/**
|
|
55
55
|
* add new instance and update cache
|
|
56
|
-
* @TODO rename to post
|
|
57
56
|
*/
|
|
58
|
-
|
|
59
|
-
return this.http.post(`${this.environment.apiV2}/${this.url}`,
|
|
57
|
+
create(data, shouldUpdateCache = true) {
|
|
58
|
+
return this.http.post(`${this.environment.apiV2}/${this.url}`, data)
|
|
60
59
|
.pipe(map((newItem) => {
|
|
61
60
|
if (!shouldUpdateCache) {
|
|
62
61
|
return null;
|
|
@@ -72,11 +71,28 @@ export class RestService {
|
|
|
72
71
|
return newInstance;
|
|
73
72
|
}));
|
|
74
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* @TODO Alex TT-1777 rename to post
|
|
76
|
+
*/
|
|
77
|
+
add(model, shouldUpdateCache = true) {
|
|
78
|
+
return this.create(classToPlain(model), shouldUpdateCache);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* @TODO Alex TT-1777 rename to upload
|
|
82
|
+
*/
|
|
83
|
+
postForm(file, params = {}) {
|
|
84
|
+
const formData = new FormData();
|
|
85
|
+
formData.append('file', file);
|
|
86
|
+
for (let key in params) {
|
|
87
|
+
formData.append(key, params[key]);
|
|
88
|
+
}
|
|
89
|
+
return this.create(formData);
|
|
90
|
+
}
|
|
75
91
|
/**
|
|
76
92
|
* Add several new items
|
|
77
93
|
* @param models Array of new items for saving
|
|
78
94
|
* @param queryParams query parameters for request
|
|
79
|
-
* @TODO rename to postBatch
|
|
95
|
+
* @TODO Alex TT-1777 rename to postBatch
|
|
80
96
|
*/
|
|
81
97
|
addBatch(models, queryParams = {}) {
|
|
82
98
|
return this.http.post(`${this.environment.apiV2}/${this.url}`, classToPlain(models), queryParams)
|
|
@@ -96,7 +112,7 @@ export class RestService {
|
|
|
96
112
|
* Update item
|
|
97
113
|
* @param model Existing instance for updating
|
|
98
114
|
* @param queryParams query parameters for request
|
|
99
|
-
* @TODO rename to put
|
|
115
|
+
* @TODO Alex TT-1777 rename to put
|
|
100
116
|
*/
|
|
101
117
|
update(model, queryParams = {}) {
|
|
102
118
|
return this.http.put(`${this.environment.apiV2}/${this.url}/${model['id']}`, classToPlain(model), queryParams)
|
|
@@ -114,7 +130,7 @@ export class RestService {
|
|
|
114
130
|
* Update several items
|
|
115
131
|
* @param models Array of items for updating
|
|
116
132
|
* @param queryParams query parameters for request
|
|
117
|
-
* TODO rename to putBatch
|
|
133
|
+
* TODO Alex TT-1777 rename to putBatch
|
|
118
134
|
*/
|
|
119
135
|
updateBatch(models, queryParams = {}) {
|
|
120
136
|
return this.http.put(`${this.environment.apiV2}/${this.url}`, classToPlain(models), queryParams)
|
|
@@ -210,4 +226,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
210
226
|
type: Inject,
|
|
211
227
|
args: ['environment']
|
|
212
228
|
}] }, { type: i3.ToastService }]; } });
|
|
213
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvcmVzdC9yZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7O0FBSS9EOzs7Ozs7Ozs7O0dBVUc7QUFJSCxNQUFNLE9BQWdCLFdBQVc7SUFtQi9CLFlBQ1ksSUFBZ0IsRUFDaEIsc0JBQThDLEVBQ3ZCLFdBQWdCLEVBQ3ZDLFlBQTBCO1FBSDFCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUN2QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWZ0Qyw0QkFBNEI7UUFDbEIsaUJBQVksR0FBMkIsSUFBSSxhQUFhLENBQVUsQ0FBQyxDQUFDLENBQUM7UUFnQjdFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDMUI7UUFFRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFF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QUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ08sV0FBVztRQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxtQkFBbUIsQ0FBQyxLQUFrQyxFQUFFLFNBQW9CO1FBQ3BGLE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsRUFBRSxlQUFlLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxLQUFVLENBQUM7O3lHQTlPSCxXQUFXLGtGQXNCckIsYUFBYTs2R0F0QkgsV0FBVyxjQUZuQixNQUFNOzRGQUVFLFdBQVc7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkF1QkksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyByZXBsYWNlIH0gZnJvbSAnLi4vLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXZlbnQvZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IGNsYXNzVG9QbGFpbiwgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdG9hc3QvdG9hc3Quc2VydmljZSc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBBYnN0cmFjdCBiYXNlIHNlcnZpY2UgdGhhdCBpbXBsZW1lbnRzIGNvbW1vbiBzZXJ2aWNlcyBmdW5jdGlvbmFsaXR5XG4gKiBhbmQgZGVzY3JpYmUgYWJzdHJhY3QgbWV0aG9kcy9wcm9wZXJ0aWVzIHRoYXQgaGF2ZSB0byBiZSBpbXBsZW1lbnRlZCBpbiBjaGlsZCBzZXJ2aWNlc1xuICogTW9kZWwgLSBlbnRpdHkgc2VydmljZSBpcyB3b3JraW5nIHdpdGhcbiAqIEJhc2VNb2RlbCAtIGJhc2UgZW50aXR5IG1vZGVsIHRoYXQgZXh0ZW5kcyBieSBNb2RlbFxuICogQFRPRE8gVFQtMTc3NyBBbGV4OiByZWZhY3RvciBhbGwgc2VydmljZXMgZm9yIHdvcmsgd2l0aCBjb2xsZWN0aW9ucyBpbnN0ZWFkIG9mIGFycmF5c1xuICogQFRPRE8gVFQtMTc3NyBBbGV4OiBpbXBsZW1lbnQgc21hcnQgc3lzdGVtIG9mIGRlZmF1bHQgdG9hc3QgbWVzc2FnZXNcbiAqIEBUT0RPIFRULTE3NzcgQWxleDogd29yayBub3Qgb25seSB3aXRoIGFycmF5L2NvbGxlY3Rpb24gYnV0IHdpdGggc2luZ2xlIG9iamVjdHNcbiAqIEBUT0RPIFRULTE3NzcgQWxleDogYXV0b21hdGljIGV2ZW50cyBnZW5lcmF0aW9uIChldmVudERpc3BhdGNoZXIpXG4gKiBAVE9ETyBUVC0xNzc3IEFsZXg6IG9wdGlvbmFsIHJlc3QgbWV0aG9kcyAobm90IGFsbCBzZXJ2aWNlcyBoYXZlIGFsbCA0IG1ldGhvZHMpXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJlc3RTZXJ2aWNlPEJhc2VNb2RlbCwgTW9kZWwgZXh0ZW5kcyBCYXNlTW9kZWw+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICAvLyB1cmwgcGFydCBmb3Igc2VydmljZSBlbnRpdHkgQVBJLiBIYXZlIHRvIGJlIGRlZmluZWQgaW4gZXh0ZW5kZWQgY2xhc3Nlc1xuICBhYnN0cmFjdCB1cmw6IHN0cmluZztcbiAgLy8gTW9kZWwgY2xhc3MgZm9yIGluc3RhbmNlcyBjcmVhdGluZ1xuICBhYnN0cmFjdCBtb2RlbENsYXNzO1xuICAvLyBAVE9ETyBNYWtlIGNhY2hlIFJlYWRvbmx5XG4gIC8vIGNhY2hlZCBhcnJheSBvZiBzZXJ2aWNlIGNsYXNzIGluc3RhbmNlc1xuICBwcm90ZWN0ZWQgY2FjaGU6IE1vZGVsW107XG4gIC8vIHN1YmplY3QgZm9yIHNlcnZpY2UgY2FjaGVcbiAgcHJvdGVjdGVkIGNhY2hlU3ViamVjdDogUmVwbGF5U3ViamVjdDxNb2RlbFtdPiA9IG5ldyBSZXBsYXlTdWJqZWN0PE1vZGVsW10+KDEpO1xuICAvLyBmbGFnIGZvciB3b3JrIHdpdGggQVBJIHBsYXRmb3JtXG4gIHByb3RlY3RlZCBpc0h5ZHJhOiBib29sZWFuO1xuICBtZXNzYWdlQ3JlYXRlZDogc3RyaW5nO1xuICBtZXNzYWdlQ3JlYXRlZEJhdGNoOiBzdHJpbmc7XG4gIG1lc3NhZ2VVcGRhdGVkOiBzdHJpbmc7XG4gIG1lc3NhZ2VVcGRhdGVkQmF0Y2g6IHN0cmluZztcbiAgbWVzc2FnZURlbGV0ZWQ6IHN0cmluZztcbiAgbWVzc2FnZURlbGV0ZWRCYXRjaDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnksXG4gICAgcHJvdGVjdGVkIHRvYXN0U2VydmljZTogVG9hc3RTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGNhY2hlZCBsaXN0IG9mIGFsbCBpbnN0YW5jZXNcbiAgICovXG4gIGdldCgpOiBPYnNlcnZhYmxlPE1vZGVsW10+IHtcbiAgICBpZiAoIXRoaXMuY2FjaGUpIHtcbiAgICAgIHRoaXMuY2FjaGUgPSBbXTtcbiAgICAgIHRoaXMuZmV0Y2goKS5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5jYWNoZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGluc3RhbmNlIGJ5IGlkIGZyb20gY2FjaGVcbiAgICogQHBhcmFtIGlkIElEIG9mIHJlcXVpcmVkIGl0ZW1cbiAgICovXG4gIGZpbmRCeUlkKGlkOiBudW1iZXIpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGl0ZW1zOiBNb2RlbFtdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGl0ZW1zLmZpbmQoKGl0ZW06IE1vZGVsKSA9PiBpdGVtWydpZCddID09PSBpZCk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgZmluZChpZDogbnVtYmVyKTogTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNhY2hlLmZpbmQoKGl0ZW06IE1vZGVsKSA9PiBpdGVtWydpZCddID09PSBpZCk7XG4gIH1cblxuICAvKipcbiAgICogYWRkIG5ldyBpbnN0YW5jZSBhbmQgdXBkYXRlIGNhY2hlXG4gICAqIEBUT0RPIHJlbmFtZSB0byBwb3N0XG4gICAqL1xuICBhZGQobW9kZWw6IE1vZGVsLCBzaG91bGRVcGRhdGVDYWNoZTogYm9vbGVhbiA9IHRydWUpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgY2xhc3NUb1BsYWluKG1vZGVsKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKG5ld0l0ZW06IEJhc2VNb2RlbCkgPT4ge1xuICAgICAgICAgIGlmICghc2hvdWxkVXBkYXRlQ2FjaGUpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgbmV3SW5zdGFuY2U6IE1vZGVsID0gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHRoaXMubW9kZWxDbGFzcywgbmV3SXRlbSk7XG4gICAgICAgICAgaWYgKHRoaXMuY2FjaGUpIHtcbiAgICAgICAgICAgIHRoaXMuY2FjaGUucHVzaChuZXdJbnN0YW5jZSk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZUNyZWF0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tZXNzYWdlQ3JlYXRlZCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG5ld0luc3RhbmNlO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgc2V2ZXJhbCBuZXcgaXRlbXNcbiAgICogQHBhcmFtIG1vZGVscyBBcnJheSBvZiBuZXcgaXRlbXMgZm9yIHNhdmluZ1xuICAgKiBAcGFyYW0gcXVlcnlQYXJhbXMgcXVlcnkgcGFyYW1ldGVycyBmb3IgcmVxdWVzdFxuICAgKiBAVE9ETyByZW5hbWUgdG8gcG9zdEJhdGNoXG4gICAqL1xuICBhZGRCYXRjaChtb2RlbHM6IE1vZGVsW10sIHF1ZXJ5UGFyYW1zOiBvYmplY3QgPSB7fSk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGNsYXNzVG9QbGFpbihtb2RlbHMpLCBxdWVyeVBhcmFtcylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKG5ld0l0ZW1zOiBCYXNlTW9kZWxbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld0luc3RhbmNlczogTW9kZWxbXSA9IG5ld0l0ZW1zLm1hcCgoaXRlbTogQmFzZU1vZGVsKSA9PiB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCBpdGVtKSk7XG4gICAgICAgICAgaWYgKHRoaXMuY2FjaGUpIHtcbiAgICAgICAgICAgIHRoaXMuY2FjaGUucHVzaCguLi5uZXdJbnN0YW5jZXMpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLm1lc3NhZ2VDcmVhdGVkQmF0Y2gpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tZXNzYWdlQ3JlYXRlZEJhdGNoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gbmV3SW5zdGFuY2VzO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgaXRlbVxuICAgKiBAcGFyYW0gbW9kZWwgRXhpc3RpbmcgaW5zdGFuY2UgZm9yIHVwZGF0aW5nXG4gICAqIEBwYXJhbSBxdWVyeVBhcmFtcyBxdWVyeSBwYXJhbWV0ZXJzIGZvciByZXF1ZXN0XG4gICAqIEBUT0RPIHJlbmFtZSB0byBwdXRcbiAgICovXG4gIHVwZGF0ZShtb2RlbDogTW9kZWwsIHF1ZXJ5UGFyYW1zOiBvYmplY3QgPSB7fSk6IE9ic2VydmFibGU8TW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke21vZGVsWydpZCddfWAsIGNsYXNzVG9QbGFpbihtb2RlbCksIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXBkYXRlZEl0ZW06IEJhc2VNb2RlbCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnN0YW5jZTogTW9kZWwgPSB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCB1cGRhdGVkSXRlbSk7XG4gICAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCB1cGRhdGVkSW5zdGFuY2UpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcblxuICAgICAgICAgIGlmICh0aGlzLm1lc3NhZ2VVcGRhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKHRoaXMubWVzc2FnZVVwZGF0ZWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW5zdGFuY2U7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBzZXZlcmFsIGl0ZW1zXG4gICAqIEBwYXJhbSBtb2RlbHMgQXJyYXkgb2YgaXRlbXMgZm9yIHVwZGF0aW5nXG4gICAqIEBwYXJhbSBxdWVyeVBhcmFtcyBxdWVyeSBwYXJhbWV0ZXJzIGZvciByZXF1ZXN0XG4gICAqIFRPRE8gcmVuYW1lIHRvIHB1dEJhdGNoXG4gICAqL1xuICB1cGRhdGVCYXRjaChtb2RlbHM6IE1vZGVsW10sIHF1ZXJ5UGFyYW1zOiBvYmplY3QgPSB7fSk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgY2xhc3NUb1BsYWluKG1vZGVscyksIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXBkYXRlZEl0ZW1zOiBCYXNlTW9kZWxbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnN0YW5jZXM6IE1vZGVsW10gPSB1cGRhdGVkSXRlbXMubWFwKChpdGVtOiBCYXNlTW9kZWwpID0+IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh0aGlzLm1vZGVsQ2xhc3MsIGl0ZW0pKTtcbiAgICAgICAgICB1cGRhdGVkSW5zdGFuY2VzLmZvckVhY2goKGluc3RhbmNlOiBNb2RlbCkgPT4ge1xuICAgICAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCBpbnN0YW5jZSk7XG4gICAgICAgICAgfSk7XG5cbiAgICAgICAgICBpZiAodGhpcy5tZXNzYWdlVXBkYXRlZEJhdGNoKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKHRoaXMubWVzc2FnZVVwZGF0ZWRCYXRjaCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW5zdGFuY2VzO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBkZWxldGUgaW5zdGFuY2Ugb2YgY2xhc3NcbiAgICogQHBhcmFtIG1vZGVsIENsYXNzIGluc3RhbmNlIGZvciBkZWxldGluZ1xuICAgKi9cbiAgZGVsZXRlKG1vZGVsOiBNb2RlbCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlKGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7bW9kZWxbJ2lkJ119YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0aGlzLmNhY2hlLmZpbHRlcigoaXRlbTogTW9kZWwpID0+IGl0ZW1bJ2lkJ10gIT09IG1vZGVsWydpZCddKTtcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG5cbiAgICAgICAgICBpZiAodGhpcy5tZXNzYWdlRGVsZXRlZCkge1xuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2Vzcyh0aGlzLm1lc3NhZ2VEZWxldGVkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGRlbGV0ZSBtdWx0aXBsZSBpbnN0YW5jZXMgb2YgY2xhc3NcbiAgICogQHBhcmFtIG1vZGVscyBDbGFzcyBpbnN0YW5jZXMgYXJyYXkgZm9yIGRlbGV0aW5nXG4gICAqL1xuICBkZWxldGVCYXRjaChtb2RlbHM6IE1vZGVsW10pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH0vZGVsZXRlYCwgbW9kZWxzKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgaWRzOiBudW1iZXJbXSA9IG1vZGVscy5tYXAoKG1vZGVsOiBNb2RlbCk6IG51bWJlciA9PiBtb2RlbFsnaWQnXSk7XG4gICAgICAgICAgdGhpcy5jYWNoZSA9IHRoaXMuY2FjaGUuZmlsdGVyKChpdGVtOiBNb2RlbCkgPT4gIWlkcy5pbmNsdWRlcyhpdGVtWydpZCddKSk7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuXG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZURlbGV0ZWRCYXRjaCkge1xuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2Vzcyh0aGlzLm1lc3NhZ2VEZWxldGVkQmF0Y2gpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogY2xlYXIgc2VydmljZSBjYWNoZVxuICAgKi9cbiAgcmVzZXRDYWNoZSgpOiB2b2lkIHtcbiAgICB0aGlzLmZldGNoKCkuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgYmFzZSBjbGFzcyBpbnN0YW5jZXMgZGlyZWN0bHkgZnJvbSBiYWNrZW5kXG4gICAqL1xuICBwcm90ZWN0ZWQgZmV0Y2goKTogT2JzZXJ2YWJsZTxNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IEJhc2VNb2RlbFtdKTogTW9kZWxbXSA9PiB7XG4gICAgICAgICAgY29uc3QgaXRlbXM6IE1vZGVsW10gPSAodGhpcy5pc0h5ZHJhID8gcmVzcG9uc2VbJ2h5ZHJhOm1lbWJlciddIDogcmVzcG9uc2UpXG4gICAgICAgICAgICAubWFwKChpdGVtOiBCYXNlTW9kZWwpOiBNb2RlbCA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCBpdGVtKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSBpdGVtcztcbiAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgcmV0dXJuIGl0ZW1zO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgY2FjaGUgc3ViamVjdCB3aXRoIGN1cnJlbnQgY2FjaGUgYXJyYXkgdmFsdWVcbiAgICovXG4gIHByb3RlY3RlZCB1cGRhdGVDYWNoZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNhY2hlU3ViamVjdC5uZXh0KHRoaXMuY2FjaGUuc2xpY2UoKSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIG5ldyBpbnN0YW5jZSBvZiBjbGFzc1xuICAgKiBAcGFyYW0gbW9kZWwgVGhlIGNsYXNzIGZvciB3aGljaCB5b3Ugd2FudCB0byBjcmVhdGUgYW4gaW5zdGFuY2VcbiAgICogQHBhcmFtIGJhc2VNb2RlbCBiYXNlIG1vZGVsIGluc3RhbmNlIHRoYXQgd2Ugd2lsbCB1c2UgYXMgY29uc3RydWN0b3Igb3B0aW9uc1xuICAgKi9cbiAgcHJvdGVjdGVkIGNyZWF0ZU1vZGVsSW5zdGFuY2UobW9kZWw6IG5ldyhibTogQmFzZU1vZGVsKSA9PiBNb2RlbCwgYmFzZU1vZGVsOiBCYXNlTW9kZWwpOiBNb2RlbCB7XG4gICAgcmV0dXJuIHBsYWluVG9DbGFzcyhtb2RlbCwgYmFzZU1vZGVsLCB7IGV4Y2x1ZGVQcmVmaXhlczogWydAJ10gfSk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIHRoYXQgY2FsbCBhbGwgbGlzdGVuZXJzLiBFbXB0eSBieSBkZWZhdWx0LiBTaG91bGQgYmUgcmVkZWZpbmVkIGJ5IGNoaWxkIHNlcnZpY2VzIGlmIHJlcXVpcmVkXG4gICAqL1xuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7fVxufVxuIl19
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2h0dHAvcmVzdC9yZXN0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBR25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7O0FBSS9EOzs7Ozs7Ozs7O0dBVUc7QUFJSCxNQUFNLE9BQWdCLFdBQVc7SUFtQi9CLFlBQ1ksSUFBZ0IsRUFDaEIsc0JBQThDLEVBQ3ZCLFdBQWdCLEVBQ3ZDLFlBQTBCO1FBSDFCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUN2QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQWZ0Qyw0QkFBNEI7UUFDbEIsaUJBQVksR0FBMkIsSUFBSSxhQUFhLENBQVUsQ0FBQyxDQUFDLENBQUM7UUFnQjdFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxHQUFHO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDMUI7UUFFRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFF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SSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHJlcGxhY2UgfSBmcm9tICcuLi8uLi8uLi9mdW5jdGlvbnMvYXJyYXknO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9ldmVudC9ldmVudC1kaXNwYXRjaGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgY2xhc3NUb1BsYWluLCBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi90b2FzdC90b2FzdC5zZXJ2aWNlJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcy9ldmVudC1saXN0ZW5lci5pbnRlcmZhY2UnO1xuXG4vKipcbiAqIEFic3RyYWN0IGJhc2Ugc2VydmljZSB0aGF0IGltcGxlbWVudHMgY29tbW9uIHNlcnZpY2VzIGZ1bmN0aW9uYWxpdHlcbiAqIGFuZCBkZXNjcmliZSBhYnN0cmFjdCBtZXRob2RzL3Byb3BlcnRpZXMgdGhhdCBoYXZlIHRvIGJlIGltcGxlbWVudGVkIGluIGNoaWxkIHNlcnZpY2VzXG4gKiBNb2RlbCAtIGVudGl0eSBzZXJ2aWNlIGlzIHdvcmtpbmcgd2l0aFxuICogQmFzZU1vZGVsIC0gYmFzZSBlbnRpdHkgbW9kZWwgdGhhdCBleHRlbmRzIGJ5IE1vZGVsXG4gKiBAVE9ETyBUVC0xNzc3IEFsZXg6IHJlZmFjdG9yIGFsbCBzZXJ2aWNlcyBmb3Igd29yayB3aXRoIGNvbGxlY3Rpb25zIGluc3RlYWQgb2YgYXJyYXlzXG4gKiBAVE9ETyBUVC0xNzc3IEFsZXg6IGltcGxlbWVudCBzbWFydCBzeXN0ZW0gb2YgZGVmYXVsdCB0b2FzdCBtZXNzYWdlc1xuICogQFRPRE8gVFQtMTc3NyBBbGV4OiB3b3JrIG5vdCBvbmx5IHdpdGggYXJyYXkvY29sbGVjdGlvbiBidXQgd2l0aCBzaW5nbGUgb2JqZWN0c1xuICogQFRPRE8gVFQtMTc3NyBBbGV4OiBhdXRvbWF0aWMgZXZlbnRzIGdlbmVyYXRpb24gKGV2ZW50RGlzcGF0Y2hlcilcbiAqIEBUT0RPIFRULTE3NzcgQWxleDogb3B0aW9uYWwgcmVzdCBtZXRob2RzIChub3QgYWxsIHNlcnZpY2VzIGhhdmUgYWxsIDQgbWV0aG9kcylcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUmVzdFNlcnZpY2U8QmFzZU1vZGVsLCBNb2RlbCBleHRlbmRzIEJhc2VNb2RlbD4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIC8vIHVybCBwYXJ0IGZvciBzZXJ2aWNlIGVudGl0eSBBUEkuIEhhdmUgdG8gYmUgZGVmaW5lZCBpbiBleHRlbmRlZCBjbGFzc2VzXG4gIGFic3RyYWN0IHVybDogc3RyaW5nO1xuICAvLyBNb2RlbCBjbGFzcyBmb3IgaW5zdGFuY2VzIGNyZWF0aW5nXG4gIGFic3RyYWN0IG1vZGVsQ2xhc3M7XG4gIC8vIEBUT0RPIE1ha2UgY2FjaGUgUmVhZG9ubHlcbiAgLy8gY2FjaGVkIGFycmF5IG9mIHNlcnZpY2UgY2xhc3MgaW5zdGFuY2VzXG4gIHByb3RlY3RlZCBjYWNoZTogTW9kZWxbXTtcbiAgLy8gc3ViamVjdCBmb3Igc2VydmljZSBjYWNoZVxuICBwcm90ZWN0ZWQgY2FjaGVTdWJqZWN0OiBSZXBsYXlTdWJqZWN0PE1vZGVsW10+ID0gbmV3IFJlcGxheVN1YmplY3Q8TW9kZWxbXT4oMSk7XG4gIC8vIGZsYWcgZm9yIHdvcmsgd2l0aCBBUEkgcGxhdGZvcm1cbiAgcHJvdGVjdGVkIGlzSHlkcmE6IGJvb2xlYW47XG4gIG1lc3NhZ2VDcmVhdGVkOiBzdHJpbmc7XG4gIG1lc3NhZ2VDcmVhdGVkQmF0Y2g6IHN0cmluZztcbiAgbWVzc2FnZVVwZGF0ZWQ6IHN0cmluZztcbiAgbWVzc2FnZVVwZGF0ZWRCYXRjaDogc3RyaW5nO1xuICBtZXNzYWdlRGVsZXRlZDogc3RyaW5nO1xuICBtZXNzYWdlRGVsZXRlZEJhdGNoOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSxcbiAgICBwcm90ZWN0ZWQgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgY2FjaGVkIGxpc3Qgb2YgYWxsIGluc3RhbmNlc1xuICAgKi9cbiAgZ2V0KCk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIGlmICghdGhpcy5jYWNoZSkge1xuICAgICAgdGhpcy5jYWNoZSA9IFtdO1xuICAgICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNhY2hlU3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgaW5zdGFuY2UgYnkgaWQgZnJvbSBjYWNoZVxuICAgKiBAcGFyYW0gaWQgSUQgb2YgcmVxdWlyZWQgaXRlbVxuICAgKi9cbiAgZmluZEJ5SWQoaWQ6IG51bWJlcik6IE9ic2VydmFibGU8TW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoaXRlbXM6IE1vZGVsW10pID0+IHtcbiAgICAgICAgICByZXR1cm4gaXRlbXMuZmluZCgoaXRlbTogTW9kZWwpID0+IGl0ZW1bJ2lkJ10gPT09IGlkKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBmaW5kKGlkOiBudW1iZXIpOiBNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuY2FjaGUuZmluZCgoaXRlbTogTW9kZWwpID0+IGl0ZW1bJ2lkJ10gPT09IGlkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhZGQgbmV3IGluc3RhbmNlIGFuZCB1cGRhdGUgY2FjaGVcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlKGRhdGE6IG9iamVjdCwgc2hvdWxkVXBkYXRlQ2FjaGU6IGJvb2xlYW4gPSB0cnVlKTogT2JzZXJ2YWJsZTxNb2RlbD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGRhdGEpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChuZXdJdGVtOiBCYXNlTW9kZWwpID0+IHtcbiAgICAgICAgICBpZiAoIXNob3VsZFVwZGF0ZUNhY2hlKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbFxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IG5ld0luc3RhbmNlOiBNb2RlbCA9IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh0aGlzLm1vZGVsQ2xhc3MsIG5ld0l0ZW0pO1xuICAgICAgICAgIGlmICh0aGlzLmNhY2hlKSB7XG4gICAgICAgICAgICB0aGlzLmNhY2hlLnB1c2gobmV3SW5zdGFuY2UpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICh0aGlzLm1lc3NhZ2VDcmVhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKHRoaXMubWVzc2FnZUNyZWF0ZWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBuZXdJbnN0YW5jZTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gQWxleCBUVC0xNzc3IHJlbmFtZSB0byBwb3N0XG4gICAqL1xuICBhZGQobW9kZWw6IE1vZGVsLCBzaG91bGRVcGRhdGVDYWNoZTogYm9vbGVhbiA9IHRydWUpOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlKGNsYXNzVG9QbGFpbihtb2RlbCksIHNob3VsZFVwZGF0ZUNhY2hlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBBbGV4IFRULTE3NzcgcmVuYW1lIHRvIHVwbG9hZFxuICAgKi9cbiAgcG9zdEZvcm0oZmlsZTogRmlsZSwgcGFyYW1zOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge30pOiBPYnNlcnZhYmxlPE1vZGVsPiB7XG4gICAgY29uc3QgZm9ybURhdGE6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgZm9ybURhdGEuYXBwZW5kKCdmaWxlJywgZmlsZSk7XG4gICAgZm9yIChsZXQga2V5IGluIHBhcmFtcykge1xuICAgICAgZm9ybURhdGEuYXBwZW5kKGtleSwgcGFyYW1zW2tleV0pO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmNyZWF0ZShmb3JtRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIHNldmVyYWwgbmV3IGl0ZW1zXG4gICAqIEBwYXJhbSBtb2RlbHMgQXJyYXkgb2YgbmV3IGl0ZW1zIGZvciBzYXZpbmdcbiAgICogQHBhcmFtIHF1ZXJ5UGFyYW1zIHF1ZXJ5IHBhcmFtZXRlcnMgZm9yIHJlcXVlc3RcbiAgICogQFRPRE8gQWxleCBUVC0xNzc3IHJlbmFtZSB0byBwb3N0QmF0Y2hcbiAgICovXG4gIGFkZEJhdGNoKG1vZGVsczogTW9kZWxbXSwgcXVlcnlQYXJhbXM6IG9iamVjdCA9IHt9KTogT2JzZXJ2YWJsZTxNb2RlbFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YCwgY2xhc3NUb1BsYWluKG1vZGVscyksIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgobmV3SXRlbXM6IEJhc2VNb2RlbFtdKSA9PiB7XG4gICAgICAgICAgY29uc3QgbmV3SW5zdGFuY2VzOiBNb2RlbFtdID0gbmV3SXRlbXMubWFwKChpdGVtOiBCYXNlTW9kZWwpID0+IHRoaXMuY3JlYXRlTW9kZWxJbnN0YW5jZSh0aGlzLm1vZGVsQ2xhc3MsIGl0ZW0pKTtcbiAgICAgICAgICBpZiAodGhpcy5jYWNoZSkge1xuICAgICAgICAgICAgdGhpcy5jYWNoZS5wdXNoKC4uLm5ld0luc3RhbmNlcyk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZUNyZWF0ZWRCYXRjaCkge1xuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2Vzcyh0aGlzLm1lc3NhZ2VDcmVhdGVkQmF0Y2gpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBuZXdJbnN0YW5jZXM7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBpdGVtXG4gICAqIEBwYXJhbSBtb2RlbCBFeGlzdGluZyBpbnN0YW5jZSBmb3IgdXBkYXRpbmdcbiAgICogQHBhcmFtIHF1ZXJ5UGFyYW1zIHF1ZXJ5IHBhcmFtZXRlcnMgZm9yIHJlcXVlc3RcbiAgICogQFRPRE8gQWxleCBUVC0xNzc3IHJlbmFtZSB0byBwdXRcbiAgICovXG4gIHVwZGF0ZShtb2RlbDogTW9kZWwsIHF1ZXJ5UGFyYW1zOiBvYmplY3QgPSB7fSk6IE9ic2VydmFibGU8TW9kZWw+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke21vZGVsWydpZCddfWAsIGNsYXNzVG9QbGFpbihtb2RlbCksIHF1ZXJ5UGFyYW1zKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgodXBkYXRlZEl0ZW06IEJhc2VNb2RlbCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRJbnN0YW5jZTogTW9kZWwgPSB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCB1cGRhdGVkSXRlbSk7XG4gICAgICAgICAgcmVwbGFjZSh0aGlzLmNhY2hlLCB1cGRhdGVkSW5zdGFuY2UpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcblxuICAgICAgICAgIGlmICh0aGlzLm1lc3NhZ2VVcGRhdGVkKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKHRoaXMubWVzc2FnZVVwZGF0ZWQpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB1cGRhdGVkSW5zdGFuY2U7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBzZXZlcmFsIGl0ZW1zXG4gICAqIEBwYXJhbSBtb2RlbHMgQXJyYXkgb2YgaXRlbXMgZm9yIHVwZGF0aW5nXG4gICAqIEBwYXJhbSBxdWVyeVBhcmFtcyBxdWVyeSBwYXJhbWV0ZXJzIGZvciByZXF1ZXN0XG4gICAqIFRPRE8gQWxleCBUVC0xNzc3IHJlbmFtZSB0byBwdXRCYXRjaFxuICAgKi9cbiAgdXBkYXRlQmF0Y2gobW9kZWxzOiBNb2RlbFtdLCBxdWVyeVBhcmFtczogb2JqZWN0ID0ge30pOiBPYnNlcnZhYmxlPE1vZGVsW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfWAsIGNsYXNzVG9QbGFpbihtb2RlbHMpLCBxdWVyeVBhcmFtcylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHVwZGF0ZWRJdGVtczogQmFzZU1vZGVsW10pID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkSW5zdGFuY2VzOiBNb2RlbFtdID0gdXBkYXRlZEl0ZW1zLm1hcCgoaXRlbTogQmFzZU1vZGVsKSA9PiB0aGlzLmNyZWF0ZU1vZGVsSW5zdGFuY2UodGhpcy5tb2RlbENsYXNzLCBpdGVtKSk7XG4gICAgICAgICAgdXBkYXRlZEluc3RhbmNlcy5mb3JFYWNoKChpbnN0YW5jZTogTW9kZWwpID0+IHtcbiAgICAgICAgICAgIHJlcGxhY2UodGhpcy5jYWNoZSwgaW5zdGFuY2UpO1xuICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZVVwZGF0ZWRCYXRjaCkge1xuICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2Vzcyh0aGlzLm1lc3NhZ2VVcGRhdGVkQmF0Y2gpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgICByZXR1cm4gdXBkYXRlZEluc3RhbmNlcztcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogZGVsZXRlIGluc3RhbmNlIG9mIGNsYXNzXG4gICAqIEBwYXJhbSBtb2RlbCBDbGFzcyBpbnN0YW5jZSBmb3IgZGVsZXRpbmdcbiAgICovXG4gIGRlbGV0ZShtb2RlbDogTW9kZWwpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZShgJHt0aGlzLmVudmlyb25tZW50LmFwaVYyfS8ke3RoaXMudXJsfS8ke21vZGVsWydpZCddfWApXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKGl0ZW06IE1vZGVsKSA9PiBpdGVtWydpZCddICE9PSBtb2RlbFsnaWQnXSk7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuXG4gICAgICAgICAgaWYgKHRoaXMubWVzc2FnZURlbGV0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tZXNzYWdlRGVsZXRlZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBkZWxldGUgbXVsdGlwbGUgaW5zdGFuY2VzIG9mIGNsYXNzXG4gICAqIEBwYXJhbSBtb2RlbHMgQ2xhc3MgaW5zdGFuY2VzIGFycmF5IGZvciBkZWxldGluZ1xuICAgKi9cbiAgZGVsZXRlQmF0Y2gobW9kZWxzOiBNb2RlbFtdKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9L2RlbGV0ZWAsIG1vZGVscylcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IGlkczogbnVtYmVyW10gPSBtb2RlbHMubWFwKChtb2RlbDogTW9kZWwpOiBudW1iZXIgPT4gbW9kZWxbJ2lkJ10pO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0aGlzLmNhY2hlLmZpbHRlcigoaXRlbTogTW9kZWwpID0+ICFpZHMuaW5jbHVkZXMoaXRlbVsnaWQnXSkpO1xuICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcblxuICAgICAgICAgIGlmICh0aGlzLm1lc3NhZ2VEZWxldGVkQmF0Y2gpIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLnN1Y2Nlc3ModGhpcy5tZXNzYWdlRGVsZXRlZEJhdGNoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGNsZWFyIHNlcnZpY2UgY2FjaGVcbiAgICovXG4gIHJlc2V0Q2FjaGUoKTogdm9pZCB7XG4gICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBsaXN0IG9mIGJhc2UgY2xhc3MgaW5zdGFuY2VzIGRpcmVjdGx5IGZyb20gYmFja2VuZFxuICAgKi9cbiAgcHJvdGVjdGVkIGZldGNoKCk6IE9ic2VydmFibGU8TW9kZWxbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBCYXNlTW9kZWxbXSk6IE1vZGVsW10gPT4ge1xuICAgICAgICAgIGNvbnN0IGl0ZW1zOiBNb2RlbFtdID0gKHRoaXMuaXNIeWRyYSA/IHJlc3BvbnNlWydoeWRyYTptZW1iZXInXSA6IHJlc3BvbnNlKVxuICAgICAgICAgICAgLm1hcCgoaXRlbTogQmFzZU1vZGVsKTogTW9kZWwgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGVNb2RlbEluc3RhbmNlKHRoaXMubW9kZWxDbGFzcywgaXRlbSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB0aGlzLmNhY2hlID0gaXRlbXM7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiBpdGVtcztcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGNhY2hlIHN1YmplY3Qgd2l0aCBjdXJyZW50IGNhY2hlIGFycmF5IHZhbHVlXG4gICAqL1xuICBwcm90ZWN0ZWQgdXBkYXRlQ2FjaGUoKTogdm9pZCB7XG4gICAgdGhpcy5jYWNoZVN1YmplY3QubmV4dCh0aGlzLmNhY2hlLnNsaWNlKCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBuZXcgaW5zdGFuY2Ugb2YgY2xhc3NcbiAgICogQHBhcmFtIG1vZGVsIFRoZSBjbGFzcyBmb3Igd2hpY2ggeW91IHdhbnQgdG8gY3JlYXRlIGFuIGluc3RhbmNlXG4gICAqIEBwYXJhbSBiYXNlTW9kZWwgYmFzZSBtb2RlbCBpbnN0YW5jZSB0aGF0IHdlIHdpbGwgdXNlIGFzIGNvbnN0cnVjdG9yIG9wdGlvbnNcbiAgICovXG4gIHByb3RlY3RlZCBjcmVhdGVNb2RlbEluc3RhbmNlKG1vZGVsOiBuZXcoYm06IEJhc2VNb2RlbCkgPT4gTW9kZWwsIGJhc2VNb2RlbDogQmFzZU1vZGVsKTogTW9kZWwge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MobW9kZWwsIGJhc2VNb2RlbCwgeyBleGNsdWRlUHJlZml4ZXM6IFsnQCddIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB0aGF0IGNhbGwgYWxsIGxpc3RlbmVycy4gRW1wdHkgYnkgZGVmYXVsdC4gU2hvdWxkIGJlIHJlZGVmaW5lZCBieSBjaGlsZCBzZXJ2aWNlcyBpZiByZXF1aXJlZFxuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge31cbn1cbiJdfQ==
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { RestService } from '../../rest/rest.service';
|
|
3
3
|
import { SoleInvoice } from '../../../../models';
|
|
4
|
+
import { SoleInvoiceStatusesEnum } from '../../../../db/Enums/sole-invoice-statuses.enum';
|
|
5
|
+
import { plainToClass } from 'class-transformer';
|
|
6
|
+
import merge from 'lodash/merge';
|
|
4
7
|
import * as i0 from "@angular/core";
|
|
5
8
|
export class SoleInvoiceService extends RestService {
|
|
6
9
|
constructor() {
|
|
@@ -9,6 +12,17 @@ export class SoleInvoiceService extends RestService {
|
|
|
9
12
|
this.url = 'sole-invoices';
|
|
10
13
|
this.isHydra = true;
|
|
11
14
|
}
|
|
15
|
+
updateStatus(invoice, status) {
|
|
16
|
+
// use id only to avoid unexpected changes
|
|
17
|
+
return this.update(plainToClass(SoleInvoice, merge({}, { id: invoice.id }, { status })));
|
|
18
|
+
}
|
|
19
|
+
publish(invoice, document) {
|
|
20
|
+
// use id only to avoid unexpected changes
|
|
21
|
+
return this.update(merge({}, invoice, { document, status: SoleInvoiceStatusesEnum.PENDING }));
|
|
22
|
+
}
|
|
23
|
+
sendEmail(invoice) {
|
|
24
|
+
return this.http.post(`${this.environment.apiV2}/${this.url}/${invoice.id}/send`, {});
|
|
25
|
+
}
|
|
12
26
|
}
|
|
13
27
|
SoleInvoiceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SoleInvoiceService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
14
28
|
SoleInvoiceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SoleInvoiceService, providedIn: 'root' });
|
|
@@ -18,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
18
32
|
providedIn: 'root'
|
|
19
33
|
}]
|
|
20
34
|
}] });
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29sZS1pbnZvaWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9zb2xlL3NvbGUtaW52b2ljZS9zb2xlLWludm9pY2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsV0FBVyxFQUFZLE1BQU0sb0JBQW9CLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0saURBQWlELENBQUM7QUFFMUYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQzs7QUFLakMsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQXlDO0lBSGpGOztRQUlFLGVBQVUsR0FBdUIsV0FBVyxDQUFDO1FBQzdDLFFBQUcsR0FBVyxlQUFlLENBQUM7UUFDOUIsWUFBTyxHQUFZLElBQUksQ0FBQztLQWV6QjtJQWJDLFlBQVksQ0FBQyxPQUFvQixFQUFFLE1BQStCO1FBQ2hFLDBDQUEwQztRQUMxQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLEVBQUMsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQUMsRUFBRSxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxPQUFPLENBQUMsT0FBb0IsRUFBRSxRQUFrQjtRQUM5QywwQ0FBMEM7UUFDMUMsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUFvQjtRQUM1QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEdBQUcsSUFBSSxPQUFPLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDeEYsQ0FBQzs7Z0hBakJVLGtCQUFrQjtvSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdC9yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU29sZUludm9pY2UgYXMgU29sZUludm9pY2VCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvTW9kZWxzL3NvbGUvc29sZS1pbnZvaWNlJztcbmltcG9ydCB7IFNvbGVJbnZvaWNlLCBEb2N1bWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBTb2xlSW52b2ljZVN0YXR1c2VzRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL3NvbGUtaW52b2ljZS1zdGF0dXNlcy5lbnVtJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gvbWVyZ2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTb2xlSW52b2ljZVNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxTb2xlSW52b2ljZUJhc2UsIFNvbGVJbnZvaWNlPiB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBTb2xlSW52b2ljZSA9IFNvbGVJbnZvaWNlO1xuICB1cmw6IHN0cmluZyA9ICdzb2xlLWludm9pY2VzJztcbiAgaXNIeWRyYTogYm9vbGVhbiA9IHRydWU7XG5cbiAgdXBkYXRlU3RhdHVzKGludm9pY2U6IFNvbGVJbnZvaWNlLCBzdGF0dXM6IFNvbGVJbnZvaWNlU3RhdHVzZXNFbnVtKTogT2JzZXJ2YWJsZTxTb2xlSW52b2ljZT4ge1xuICAgIC8vIHVzZSBpZCBvbmx5IHRvIGF2b2lkIHVuZXhwZWN0ZWQgY2hhbmdlc1xuICAgIHJldHVybiB0aGlzLnVwZGF0ZShwbGFpblRvQ2xhc3MoU29sZUludm9pY2UsIG1lcmdlKHt9LCB7aWQ6IGludm9pY2UuaWR9LCB7c3RhdHVzfSkpKTtcbiAgfVxuXG4gIHB1Ymxpc2goaW52b2ljZTogU29sZUludm9pY2UsIGRvY3VtZW50OiBEb2N1bWVudCk6IE9ic2VydmFibGU8U29sZUludm9pY2U+IHtcbiAgICAvLyB1c2UgaWQgb25seSB0byBhdm9pZCB1bmV4cGVjdGVkIGNoYW5nZXNcbiAgICByZXR1cm4gdGhpcy51cGRhdGUobWVyZ2Uoe30sIGludm9pY2UsIHsgZG9jdW1lbnQsIHN0YXR1czogU29sZUludm9pY2VTdGF0dXNlc0VudW0uUEVORElORyB9KSk7XG4gIH1cblxuICBzZW5kRW1haWwoaW52b2ljZTogU29sZUludm9pY2UpIHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH0vJHtpbnZvaWNlLmlkfS9zZW5kYCwge30pO1xuICB9XG59XG4iXX0=
|
|
@@ -2,27 +2,39 @@ import { Injectable } from '@angular/core';
|
|
|
2
2
|
import { from } from 'rxjs';
|
|
3
3
|
import * as html2pdf from 'html2pdf.js';
|
|
4
4
|
import { FILE_SETTINGS } from './file-settings';
|
|
5
|
+
import merge from 'lodash/merge';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
6
7
|
/**
|
|
8
|
+
* @TODO mikhail better typehint
|
|
9
|
+
*
|
|
7
10
|
* Service to generate and export PDF file from provided HTML elements
|
|
8
11
|
* The file is generated using the html2pdf library in order to get a canvas at the output,
|
|
9
12
|
* in which all the styles that the user sees on the page will be saved
|
|
10
13
|
*/
|
|
11
14
|
export class PdfFromDomElementService {
|
|
12
|
-
|
|
15
|
+
init(elements, fileSettings) {
|
|
13
16
|
const options = FILE_SETTINGS;
|
|
14
|
-
|
|
17
|
+
if (fileSettings) {
|
|
18
|
+
merge(options, fileSettings);
|
|
19
|
+
}
|
|
15
20
|
// HTML container in which the exported DOM elements will be placed
|
|
16
21
|
const htmlWrapper = document.createElement('div');
|
|
17
22
|
elements.forEach((element) => {
|
|
18
23
|
htmlWrapper.append(element.cloneNode(true));
|
|
19
24
|
});
|
|
20
25
|
// Set PDF options, save file and return result as Observable
|
|
21
|
-
return
|
|
22
|
-
|
|
26
|
+
return html2pdf().from(htmlWrapper).set(options);
|
|
27
|
+
}
|
|
28
|
+
download(elements, fileSettings) {
|
|
29
|
+
return from(this.init(elements, fileSettings)
|
|
23
30
|
.save()
|
|
24
31
|
.then());
|
|
25
32
|
}
|
|
33
|
+
export(elements, filename = FILE_SETTINGS.filename) {
|
|
34
|
+
return from(this.init(elements)
|
|
35
|
+
.outputPdf('blob')
|
|
36
|
+
.then((blob) => new File([blob], filename, { type: 'application/pdf' })));
|
|
37
|
+
}
|
|
26
38
|
}
|
|
27
39
|
PdfFromDomElementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDomElementService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
28
40
|
PdfFromDomElementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDomElementService, providedIn: 'root' });
|
|
@@ -32,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
|
|
|
32
44
|
providedIn: 'root'
|
|
33
45
|
}]
|
|
34
46
|
}] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLWZyb20tZG9tLWVsZW1lbnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9wZGYvcGRmLWZyb20tZG9tLWVsZW1lbnQvcGRmLWZyb20tZG9tLWVsZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxJQUFJLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDeEMsT0FBTyxLQUFLLFFBQVEsTUFBTSxhQUFhLENBQUE7QUFDdkMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sS0FBSyxNQUFNLGNBQWMsQ0FBQzs7QUFFakM7Ozs7OztHQU1HO0FBSUgsTUFBTSxPQUFPLHdCQUF3QjtJQUMzQixJQUFJLENBQUMsUUFBaUMsRUFBRSxZQUEwQjtRQUN4RSxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUM7UUFDOUIsSUFBSSxZQUFZLEVBQUU7WUFDaEIsS0FBSyxDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztTQUM5QjtRQUVELG1FQUFtRTtRQUNuRSxNQUFNLFdBQVcsR0FBZ0IsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUvRCxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBb0IsRUFBRSxFQUFFO1lBQ3hDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO1FBRUgsNkRBQTZEO1FBQzdELE9BQU8sUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQWlDLEVBQUUsWUFBMEI7UUFDcEUsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsWUFBWSxDQUFDO2FBQzlCLElBQUksRUFBRTthQUNOLElBQUksRUFBRSxDQUNWLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQWlDLEVBQUUsV0FBbUIsYUFBYSxDQUFDLFFBQVE7UUFDakYsT0FBTyxJQUFJLENBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7YUFDaEIsU0FBUyxDQUFDLE1BQU0sQ0FBQzthQUNqQixJQUFJLENBQUMsQ0FBQyxJQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUNqRixDQUFDO0lBQ0osQ0FBQzs7c0hBaENVLHdCQUF3QjswSEFBeEIsd0JBQXdCLGNBRnZCLE1BQU07NEZBRVAsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBkZlNldHRpbmdzIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWxzL3BkZi9wZGYtc2V0dGluZ3MnO1xuaW1wb3J0IHsgZnJvbSwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0ICogYXMgaHRtbDJwZGYgZnJvbSAnaHRtbDJwZGYuanMnXG5pbXBvcnQgeyBGSUxFX1NFVFRJTkdTIH0gZnJvbSAnLi9maWxlLXNldHRpbmdzJztcbmltcG9ydCBtZXJnZSBmcm9tICdsb2Rhc2gvbWVyZ2UnO1xuXG4vKipcbiAqIEBUT0RPIG1pa2hhaWwgYmV0dGVyIHR5cGVoaW50XG4gKlxuICogU2VydmljZSB0byBnZW5lcmF0ZSBhbmQgZXhwb3J0IFBERiBmaWxlIGZyb20gcHJvdmlkZWQgSFRNTCBlbGVtZW50c1xuICogVGhlIGZpbGUgaXMgZ2VuZXJhdGVkIHVzaW5nIHRoZSBodG1sMnBkZiBsaWJyYXJ5IGluIG9yZGVyIHRvIGdldCBhIGNhbnZhcyBhdCB0aGUgb3V0cHV0LFxuICogaW4gd2hpY2ggYWxsIHRoZSBzdHlsZXMgdGhhdCB0aGUgdXNlciBzZWVzIG9uIHRoZSBwYWdlIHdpbGwgYmUgc2F2ZWRcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUGRmRnJvbURvbUVsZW1lbnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBpbml0KGVsZW1lbnRzOiBOb2RlTGlzdE9mPEhUTUxFbGVtZW50PiwgZmlsZVNldHRpbmdzPzogUGRmU2V0dGluZ3MpOiBhbnkge1xuICAgIGNvbnN0IG9wdGlvbnMgPSBGSUxFX1NFVFRJTkdTO1xuICAgIGlmIChmaWxlU2V0dGluZ3MpIHtcbiAgICAgIG1lcmdlKG9wdGlvbnMsIGZpbGVTZXR0aW5ncyk7XG4gICAgfVxuXG4gICAgLy8gSFRNTCBjb250YWluZXIgaW4gd2hpY2ggdGhlIGV4cG9ydGVkIERPTSBlbGVtZW50cyB3aWxsIGJlIHBsYWNlZFxuICAgIGNvbnN0IGh0bWxXcmFwcGVyOiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgZWxlbWVudHMuZm9yRWFjaCgoZWxlbWVudDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgIGh0bWxXcmFwcGVyLmFwcGVuZChlbGVtZW50LmNsb25lTm9kZSh0cnVlKSk7XG4gICAgfSk7XG5cbiAgICAvLyBTZXQgUERGIG9wdGlvbnMsIHNhdmUgZmlsZSBhbmQgcmV0dXJuIHJlc3VsdCBhcyBPYnNlcnZhYmxlXG4gICAgcmV0dXJuIGh0bWwycGRmKCkuZnJvbShodG1sV3JhcHBlcikuc2V0KG9wdGlvbnMpO1xuICB9XG5cbiAgZG93bmxvYWQoZWxlbWVudHM6IE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+LCBmaWxlU2V0dGluZ3M/OiBQZGZTZXR0aW5ncyk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy5pbml0KGVsZW1lbnRzLCBmaWxlU2V0dGluZ3MpXG4gICAgICAgIC5zYXZlKClcbiAgICAgICAgLnRoZW4oKVxuICAgICk7XG4gIH1cblxuICBleHBvcnQoZWxlbWVudHM6IE5vZGVMaXN0T2Y8SFRNTEVsZW1lbnQ+LCBmaWxlbmFtZTogc3RyaW5nID0gRklMRV9TRVRUSU5HUy5maWxlbmFtZSk6IE9ic2VydmFibGU8dW5rbm93bj4ge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy5pbml0KGVsZW1lbnRzKVxuICAgICAgICAub3V0cHV0UGRmKCdibG9iJylcbiAgICAgICAgLnRoZW4oKGJsb2I6IEJsb2IpID0+IG5ldyBGaWxlKFtibG9iXSwgZmlsZW5hbWUsIHsgdHlwZTogJ2FwcGxpY2F0aW9uL3BkZicgfSkpXG4gICAgKTtcbiAgfVxufVxuIl19
|